@charset "utf-8";
/* ////////////////////////////////////////
PC,SP
//////////////////////////////////////// */
*,body{
	word-wrap: break-word;
    overflow-wrap: break-word;
}
body{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	overflow-x: hidden;
	line-height: 1.78em;
    background-color: #fff;
	color:#1E1715;
}
.clear{
	clear:both;
}
.normal-text-lh{
	line-height: 1.7em;
}
.normal-text-lh-s{
	line-height: 1.5em;
}
/*スライドの青い線消す*/
.slick-slide{
	outline: none;
}
/*font*/
.noto-regular{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
}
.noto-medium{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
}
.noto-bold{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
}
.noto-black{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 900;
}
/* WordPress用の設定
----------------------------------------*/
.marker{
	background: #FFE91F;
	padding:0 2px 2px 2px;
}
.gray-box{
	border:1px solid #a0a0a0;
	padding:10px 20px;
	margin:10px 0;
}
/* CMS：レスポンシブ画像用 */
.text img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}
/* CMS：wysiwygの最後の要素の下余白は反映させない */
.wysiwyg>*:last-child{
	margin-bottom: 0;
}
/* CMS：wysiwygのテキストリンク */
.wysiwyg a{
	color: #006cb8;
	text-decoration: underline;
}
.wysiwyg a:hover{
	color: #43aedd;
	text-decoration:none;
}
.wysiwyg a[target="_blank"]{
    background-image:url('../img/common/icon-target.png');
	background-repeat:  no-repeat;
	background-position: right center;
	background-size: 13px 12.5px;
	padding-right:18px;
	margin-right:5px;
}
.wysiwyg a[target="_blank"]:has(img){/*子要素に画像がある場合*/
    background-image:none;
	padding-right:0;
	margin-right:0;
}
/* wp画像用 */
.wysiwyg img.alignright { display: block; margin: 0 0 0 auto; }/* 配置位置 右 */
.wysiwyg img.alignleft { display: block; margin: 0 auto 0 0; }/* 配置位置 左 */
.wysiwyg img.aligncenter { display: block; margin: 0 auto; }/* 配置位置 中央 */
.wysiwyg img.float-left { float:left; }/* 回り込み 左 */
.wysiwyg img.float-right { float:right; }/* 回り込み 右 */
.wysiwyg img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}
/* /wp画像用 */
/* /WordPress用の設定--------------------*/
/*youtube*/
.youtube {
 	position: relative;
    padding-bottom: 55.8%;
    padding-top: 0px;
    height: 0;
    overflow: hidden;
    margin-left: auto;
    margin-right: auto;
	max-width:1100px;
}
.youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}
/*googlemap*/
.google-map{
    position: relative;
    padding-bottom: 40%;
    height: 0;
    overflow: hidden;
}
.google-map iframe,
.google-map object,
.google-map embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
/*font-color*/
.text-main{
	color:#E3002D;
}
.text-orange{
	color:#ee7800;
}
.text-red{
	color:#FF0000;
}
.text-green{
	color:#5EAF00;
}
.text-green2{
	color:#146600;
}
.text-blgr{
	color:#079B9B;
}
/*バナー設定*/
.bnr{
	transition: opacity 0.3s;
}
.bnr:hover{
	opacity: 0.7;
}
/*黒丸*/
.list-disc li{
	list-style-type: disc;
	list-style-position: inside;
	padding-left: 1em;
  	text-indent: -1em;
}
@media screen and (min-width:1100px) {
  @supports (-webkit-appearance:none) and (not (-moz-appearance:none)) {
		/*Chromeの時で横幅1100px以上の時*/
		.list-disc li{
			padding-left: 1.3em;
			text-indent: -1.4em;
		}
	}
}
/*別窓：画像*/
.target-img{
	margin-left:5px;
	margin-right:10px;
	vertical-align: 10px;
}
/* ////////////////////////////////////////
アニメ―ション
//////////////////////////////////////// */
.anime-no{
    opacity: 0;
	transition: 0.8s;
	transform:translateY(40px);
}
.anime-no.anime-active{
    opacity: 1;
	transform:translateY(0);
}
/* ////////////////////////////////////////
IEのみ
//////////////////////////////////////// */
@media all and (-ms-high-contrast: none){
    .icon-target:after,.icon-target-white:after{
	   margin-top:-16px;
    }
}
/*other*/
.indent{
	padding-left: 1em;
  	text-indent: -1em;
}
.fullwidth{
		width:100%;
		height:auto;
}
.hidden{overflow: hidden;}
.child-middle > *{
	vertical-align: middle;
}
.child-top > *{
	vertical-align: top;
}
.child-bottom > *{
	vertical-align: bottom;
}
.f_left{
	float:left;
}
.aligncenter{
	text-align: center;
}
/* table */
.Wraptable{
	display: table;
	width:100%;
}
.Wraptable > *{
	display: table-cell;
}
/*　左float */
.WrapSbs:after{
	content:"";
	display:block;
	clear:both;
}
.WrapSbs > *{
	float: left;
	display: inline-block;
}
/* lr float */
.WrapLR:after{
	content:"";
	display:block;
	clear:both;
}
.WrapLR > *:first-child{
	float: left;
	display: inline-block;
}
.WrapLR > *:last-child{
	float: right;
	display: inline-block;
}
.b_bg {
	background: #222222;
}
.fc_w{
	color: #fff;
}
.bold{
	font-weight: bold;
}
.imgblock{
	display: block;
}
.relative{
	position: relative;
}
.invisible{visibility: hidden;}
.hover_op{
	opacity:1;
	transition: 0.8s ease opacity;
}
.hover_op:hover{
	opacity:0.6;
}
/*テキストリンク*/
a.text-link {
  text-decoration: underline;
}
a.text-link:hover{
  text-decoration: none;
}
/*右クリック禁止*/
.copy-guard {
  pointer-events: none;
}
/*IE用画像object-fit*/
.object_fit_img {
  	object-fit: cover;
	font-family: "object-fit:cover;";
}
/*IE用画像object-fit*/
.object_fit_img-center {
  	object-fit: cover;
	font-family: "object-fit:cover;";
    object-position: center center;
}
/*IE用画像object-fit*/
.object_fit_img_contain {
  	object-fit: contain;
	font-family: "object-fit:contain;";
}
/*IE用画像object-fit-bottom*/
.object_fit_img_contain-bottom {
  	object-fit: contain;
	font-family: "object-fit:contain;";
    object-position: center bottom;
}
/*下からふわっと表示*/
.js-animation {
  opacity: 0;
  visibility: hidden;
  transform: translateY(40px);
  transition: all 1s;
}
.js-animation.is-show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0px);
}
/* ////////////////////////////////////////
PC・印刷時のみ
//////////////////////////////////////// */
@media screen and (min-width:768px) , print{ 
	.sp{display: none;}
	.tab{display: none;}
	.tab-sp{display: none;}
	.wrap{
		width:1140px;
		margin-right:auto;
		margin-left:auto;
	}
	.pc_hidden{overflow: hidden;}
	.pc_f_left{float: left;}
	.pcaligncenter{
		text-align: center;
	}
	/*文字サイズ
	------------------------------*/
    .fs-5{
		font-size:0.3125rem;
    }
    .fs-6{
		font-size:0.375rem;
    }
    .fs-7{
		font-size:0.4375rem;
    }
    .fs-8{
		font-size:0.5rem;
    }
    .fs-9{
		font-size:0.5625rem;
    }
	.fs-10{
		font-size:0.625rem;
	}
	.fs-12{
		font-size:0.8rem;
	}
	.fs-13{
		font-size:0.8125rem;
	}
	.fs-15{
        font-size:0.9375rem;
    }
	.fs-14{
		font-size:0.875rem;
	}
	.fs-16{
		font-size:1rem;
	}
	.fs-17{
		font-size:1.0625rem;
	}
	.fs-18{
		font-size:1.125rem;
	}
	.fs-19{
		font-size:1.1875rem;
	}
	.fs-20{
		font-size:1.25rem;
	}
	.fs-21{
		font-size:1.3125rem;
	}
	.fs-22{
		font-size:1.375rem;
	}
	.fs-23{
        font-size:1.4375rem;
	}
	.fs-24{
		font-size:1.5rem;
	}
	.fs-25{
		font-size:1.5625rem;
	}
	.fs-26{
		font-size:1.625rem;
	}
	.fs-27{
		font-size:1.875rem;
	}
	.fs-28{
		font-size:2rem;
	}
	.fs-30{
		font-size:1.875rem;
	}
	.fs-31{
		font-size:1.9375rem;
	}
	.fs-32{
		 font-size:2rem;
	}
	.fs-34{
		 font-size:2.125rem;
	}
	.fs-36{
		 font-size:2.25rem;
	}
	.fs-38{
		 font-size:2.375rem;
	}
	.fs-40{
		 font-size:2.5rem;
	}
	.fs-41{
		 font-size:2.5625rem;
	}
	.fs-45{
		 font-size:2.8125rem;
	}
	.fs-46{
		 font-size:2.875rem;
	}
	.fs-48{
		 font-size:3rem;
	}
	.fs-49{
		 font-size:3.0625rem;
	}
	.fs-50{
		font-size:3.125rem;
	}
	.fs-56{
		font-size:3.5rem;
	}
	.fs-58{
		font-size:3.625rem;
	}
	.fs-60{
		 font-size:3.75rem;
	}
	.fs-62{
		 font-size:3.875rem;
	}
	.fs-67{
		 font-size:4.1875rem;
	}
	.fs-70{
		 font-size:4.375rem;
	}
	.fs-80{
		 font-size:5rem;
	}
	.fs-86{
		 font-size:5.375rem;
	}
	.fs-100{
		 font-size:6.25rem;
	}
	.pcalignright{
		text-align: right;
	}
	.pcfullwidth{
		width:100%;
		height:auto;
	}
	/* pctable */
	.pcWraptable{
		display: table;
		width:100%;
	}
	.pcWraptable > *{
		display: table-cell;
	}
	/* pctable-fix */
	.pcWraptable-fix{
		display: table;
		width:1080px;
	}
	.pcWraptable-fix > *{
		display: table-cell;
	}
	/* float */
	.pcWrapSbs:after{
		content:"";
		display:block;
		clear:both;
	}
	.pcWrapSbs > *{
		float: left;
		display: inline-block;
	}
	/* lr float */
	.pcWrapLR:after{
		content:"";
		display:block;
		clear:both;
	}
	.pcWrapLR > *:first-child{
		float: left;
		display: inline-block;
	}
	.pcWrapLR > *:last-child{
		float: right;
		display: inline-block;
	}
	/* rl float */
	.pcWrapRL:after{
		content:"";
		display:block;
		clear:both;
	}
	.pcWrapRL > *:first-child{
		float: right;
		display: inline-block;
	}
	.pcWrapRL > *:last-child{
		float: left;
		display: inline-block;
	}
}
/*タブレット以下*/
@media screen and (max-width: 1100px){
	.tab{display: block;}
	.tab-pc{display: block;}
	.tab-sp{display: block;}
	.pc{display: none;}
}
/*タブレット用*/
@media screen and (min-width:768px) and (max-width: 1099px) , print{ 
     /*文字サイズ
    -------------------------------*/
    .tab-fs-5{
		font-size:0.3125rem;
    }
    .tab-fs-6{
		font-size:0.375rem;
    }
    .tab-fs-7{
		font-size:0.4375rem;
    }
    .tab-fs-8{
		font-size:0.5rem;
    }
    .tab-fs-9{
		font-size:0.5625rem;
    }
    .tab-fs-10{
		font-size:0.625rem;
    }
    /*12px*/
    .tab-fs-12{
		font-size:0.8rem;
    }
	.tab-fs-13{
		font-size:0.8125rem;
	}
    /*14px*/
    .tab-fs-14{
        font-size:0.875rem;
    }
    /*15px*/
    .tab-fs-15{
        font-size:0.9375rem;
    }
    /*17px*/
    .tab-fs-17{
        font-size:1.0625rem;
    }
    /*18px*/
    .tab-fs-18{
        font-size:1.125rem;
    }
    /*16px*/
    .tab-fs-16{
        font-size:1rem;
    }
    /*19px*/
    .tab-fs-19{
        font-size:19px;
    }
    /*20px*/
    .tab-fs-20{
        font-size:1.25rem;
    }
    /*21px*/
    .tab-fs-21{
        font-size:1.3125rem;
    }
    /*22px*/
    .tab-fs-22{
        font-size:1.375rem;
    }
    /*23px*/
    .tab-fs-23{
        font-size:1.4375rem;
    }
    /*24px*/
    .tab-fs-24{
        font-size:1.5rem;
    }
    /*25px*/
    .tab-fs-25{
        font-size:1.5625rem;
    }
    /*26px*/
    .tab-fs-26{
        font-size:1.625rem;
    }
	.tab-fs-27{
		font-size:1.875rem;
	}
    /*28px*/
    .tab-fs-28{
        font-size:1.75rem;
    }
    .tab-fs-29{
        font-size:1.8125rem;
    }
    /*30px*/
    .tab-fs-30{
        font-size:1.875rem;
    }
    /*32px*/
    .tab-fs-32{
        font-size:2rem;
    }
    /*32px*/
    .tab-fs-33{
        font-size:2.0625rem;
    }
    /*36px*/
    .tab-fs-36{
        font-size:2.25rem;
    }
    /*40px*/
    .tab-fs-40{
        font-size:2.5rem;
    }
    /*45px*/
    .tab-fs-45{
        font-size:2.8125rem;
    }
    /*50px*/
    .tab-fs-50{
        font-size:3.125rem;
    }
    /*50px*/
    .tab-fs-56{
        font-size:3.5rem;
    }
    /*60px*/
    .tab-fs-60{
        font-size:3.75rem;
    }
    /*70px*/
    .tab-fs-70{
        font-size:4.375rem;
    }
}
/* ////////////////////////////////////////
SPのみ
//////////////////////////////////////// */
@media screen and (max-width: 767px){
    .tab{display: none;}
	.tab-pc{display: none;}
	/*ボタン：VIEW ABOUT*/
	.btn-detail,.btn-detail-w{
		width:184px;
	}
	.btn-detail a .anchor,.btn-detail-w a .anchor{
		padding-bottom:0;
	}
     /*文字サイズ
    -------------------------------*/
    .sp-fs-5{
		font-size:0.3125rem;
    }
    .sp-fs-6{
		font-size:0.375rem;
    }
    .sp-fs-7{
		font-size:0.4375rem;
    }
    .sp-fs-8{
		font-size:0.5rem;
    }
    .sp-fs-9{
		font-size:0.5625rem;
    }
    .sp-fs-10{
		font-size:0.625rem;
    }
    /*12px*/
    .sp-fs-12{
		font-size:0.8rem;
    }
	.sp-fs-13{
		font-size:0.8125rem;
	}
    /*14px*/
    .sp-fs-14{
        font-size:0.875rem;
		line-height: 1.78em;
    }
    /*15px*/
    .sp-fs-15{
        font-size:0.9375rem;
    }
    /*17px*/
    .sp-fs-17{
        font-size:1.0625rem;
    }
    /*18px*/
    .sp-fs-18{
        font-size:1.125rem;
    }
    /*16px*/
    .sp-fs-16{
        font-size:1rem;
    }
    /*19px*/
    .sp-fs-19{
        font-size:1.1875rem;
    }
    /*20px*/
    .sp-fs-20{
        font-size:1.25rem;
    }
    /*21px*/
    .sp-fs-21{
        font-size:1.3125rem;
    }
    /*22px*/
    .sp-fs-22{
        font-size:1.375rem;
    }
    /*23px*/
    .sp-fs-23{
        font-size:1.4375rem;
    }
    /*24px*/
    .sp-fs-24{
        font-size:1.5rem;
    }
    /*25px*/
    .sp-fs-25{
        font-size:1.5625rem;
    }
    /*26px*/
    .sp-fs-26{
        font-size:1.625rem;
    }
	.sp-fs-27{
		font-size:1.875rem;
	}
    /*28px*/
    .sp-fs-28{
        font-size:1.75rem;
    }
    .sp-fs-29{
        font-size:1.8125rem;
    }
    /*30px*/
    .sp-fs-30{
        font-size:1.875rem;
    }
    /*32px*/
    .sp-fs-32{
        font-size:2rem;
    }
    /*34px*/
    .sp-fs-34{
        font-size:2.125rem;
    }
    /*36px*/
    .sp-fs-36{
        font-size:2.25rem;
    }
    .sp-fs-38{
        font-size:2.375rem;
    }
    /*40px*/
    .sp-fs-40{
        font-size:2.5rem;
    }
    .sp-fs-41{
        font-size:2.5525rem;
    }
    /*45px*/
    .sp-fs-45{
        font-size:2.8125rem;
    }
    .sp-fs-46{
        font-size:2.875rem;
    }
    .sp-fs-48{
        font-size:3rem;
    }
    /*50px*/
    .sp-fs-50{
        font-size:3.125rem;
    }
    /*50px*/
    .sp-fs-56{
        font-size:3.5rem;
    }
    /*60px*/
    .sp-fs-60{
        font-size:3.75rem;
    }
    /*70px*/
    .sp-fs-70{
        font-size:4.375rem;
    }
	.spfullwidth{
			width:100%;
			height:auto;
	}
	.pc{display: none;}
  	.print{ display: none;}
	.spwrap{
		padding-right:5vw;
		padding-left:5vw;
	}
	.spaligncenter{
		text-align: center;
	}
	.spalignleft{
		text-align: left;
	}
	.fs_b1{
		font-size:1.2em;
	}
	/*table */
	.spWraptable{
		display: table;
		width:100%;
	}
	.spWraptable > *{
		display: table-cell;
	}
	/* lr float */
	.spWrapLR:after{
		content:"";
		display:block;
		clear:both;
	}
	.spWrapLR > *:first-child{
		float: left;
		display: inline-block;
	}
	.spWrapLR > *:last-child{
		float: right;
		display: inline-block;
	}
	/*左float */
	.spWrapSbs:after{
		content:"";
		display:block;
		clear:both;
	}
	.spWrapSbs > *{
		float: left;
		display: inline-block;
	}
	/* /左float */
	/* スマホ用テーブルスクロール */
	.table_box{
    	overflow-x:scroll;
		width:100%;
		height:auto;
	}
	.table_box:before{
		content:"→横スクロールしてご覧ください。";
		color:#7A7A7A;
	}
	.table_box>table{
		width:800px !important;
	}
}
/* ////////////////////////////////////////
SPのみ(小)
//////////////////////////////////////// */
@media screen and (max-width: 360px){
     /*文字サイズ
    -------------------------------*/
    .sm-fs-5{
		font-size:0.3125rem;
    }
    .sm-fs-6{
		font-size:0.375rem;
    }
    .sm-fs-7{
		font-size:0.4375rem;
    }
    .sm-fs-8{
		font-size:0.5rem;
    }
    .sm-fs-9{
		font-size:0.5625rem;
    }
    .sm-fs-10{
		font-size:0.625rem;
    }
    /*12px*/
    .sm-fs-12{
		font-size:0.8rem;
    }
	.sm-fs-13{
		font-size:0.8125rem;
	}
    /*14px*/
    .sm-fs-14{
        font-size:0.875rem;
    }
    /*15px*/
    .sm-fs-15{
        font-size:0.9375rem;
    }
    /*17px*/
    .sm-fs-17{
        font-size:1.0625rem;
    }
    /*18px*/
    .sm-fs-18{
        font-size:1.125rem;
    }
    /*16px*/
    .sm-fs-16{
        font-size:1rem;
    }
    /*19px*/
    .sm-fs-19{
        font-size:19px;
    }
    /*20px*/
    .sm-fs-20{
        font-size:1.25rem;
    }
    /*21px*/
    .sm-fs-21{
        font-size:1.3125rem;
    }
    /*22px*/
    .sm-fs-22{
        font-size:1.375rem;
    }
    /*23px*/
    .sm-fs-23{
        font-size:1.4375rem;
    }
    /*24px*/
    .sm-fs-24{
        font-size:1.5rem;
    }
    /*25px*/
    .sm-fs-25{
        font-size:1.5625rem;
    }
    .sm-fs-28{
        font-size:1.75rem;
    }
    .sm-fs-30{
        font-size:1.875rem;
    }
    .sm-fs-34{
        font-size:2.125rem;
    }
}