@charset "utf-8";
/* ////////////////////////////////////////
PC,SP
//////////////////////////////////////// */
/*YUGO-regular*/
@font-face {
	font-family: 'YUGO';
	src: url(../../../css/fonts/YuGothic-Regular-01.ttf) format('truetype');
    font-weight: 400;
    font-style: normal;
}
/*YUGO-medium*/
@font-face {
	font-family: 'YUGO';
	src: url(../../../css/fonts/YuGothic-Medium-01.ttf) format('truetype'),
		url(../../../css/fonts/YuGothicUI-Regular-02.ttf) format('truetype');
    font-weight: 500;
    font-style: normal;
}
/*YUGO-bold*/
@font-face {
	font-family: 'YUGO';
	src: url(../../../css/fonts/YuGothic-Bold-01.ttf) format('truetype'),
		 url(../../../css/fonts/YuGothicUI-Bold-02.ttf) format('truetype'),
		 url(../../../css/fonts/YuGothicUI-Semibold-03.ttf) format('truetype');
    font-weight: 700;
    font-style: normal;
}
*,body{
	font-family: /*YUGO,*/"Yu Gothic Medium", "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic ProN", "HiraKakuProN-W3", "Meiryo", sans-serif;
	word-wrap: break-word;
    overflow-wrap: break-word;
}
body{
	overflow-x: hidden;
	line-height: 1.78em;
	color:#3f3f3f;
}
.clear{
	clear:both;
}
.ie{display: none;}
/*▼▼Gtranslateで上部にGoogle翻訳ツールバーが表示されるので消す▼▼*/
.skiptranslate{
	display: none;
}
/*▲▲Gtranslateで上部にGoogle翻訳ツールバーが表示されるので消す▲▲*/
@media all and (-ms-high-contrast: none)and (min-width:768px){
	.ie{display: block;}
}
/*font*/
.din-regular{
	font-family: din-2014, sans-serif; 
	font-weight: 400; 
	font-style: normal; 
}
.din-regular-n{
	font-family: din-2014-narrow, sans-serif; 
	font-weight: 400; 
	font-style: normal; 
}
.Yugo-medium{
    font-weight: 500;
}
.tenmin{
	font-family: ten-mincho, serif; 
	font-weight: 400; 
	font-style: normal; 
}
.yumin{
	font-family: yu-mincho-pr6n,sans-serif;
	font-weight: 400;
	font-style: normal;
}
.italic{font-style:italic;}
/*line-height*/
.l-height-s2{
    line-height: 1.5em;
}
/*font-color*/
.text-main{
    color:#4b7394;
}
.text-gray{
	color:#424242;
}
.text-gray2{
	color:#393533;
}
/*bg-color*/
.bg-base1{
    background-color: #eeece9;
	background-image: url(../img/common/bg-main.jpg);
    background-size: 20px 20px;
}
.bg-base2{
	background-color:#4b7394;
}
/*link*/
a.link-w{
	text-decoration: underline;
	color:#fff;
}
a.link-w:hover{
	text-decoration: none;
}
a.link-b{
	text-decoration: underline;
	color:#4b7394;
}
a.link-b:hover{
	text-decoration: none;
}
a.link-d{
	text-decoration: underline;
	color:#414141;
}
a.link-d:hover{
	text-decoration: none;
}
.no-underline{
	text-decoration: none;
}
/* wp画像用 */
.visual img.alignright { display: block; margin: 0 0 0 auto; }/* 配置位置 右 */
.visual img.alignleft { display: block; margin: 0 auto 0 0; }/* 配置位置 左 */
.visual img.aligncenter { display: block; margin: 0 auto; }/* 配置位置 中央 */
.visual img.float-left { float:left; }/* 回り込み 左 */
.visual img.float-right { float:right; }/* 回り込み 右 */
.visual img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}
/* /wp画像用 */
/*icon*/
.right-icon{
	position: relative;
	padding-right:19px;
	display: inline-block;
}
.right-icon:before{
	background-image:url(../img/common/nav-next.png);
	background-repeat:no-repeat;
	background-size: contain;
	content: "";
	width: 10px;
	height:11px;
	position:absolute;
	top:50%;
	right:0;
	margin-top:-5.5px;
}
.right-icon-w{
	position: relative;
	padding-right:19px;
	display: inline-block;
}
.right-icon-w:before{
	background-image:url(../img/index/nav-next.png);
	background-repeat:no-repeat;
	background-size: contain;
	content: "";
	width: 10px;
	height:11px;
	position:absolute;
	top:50%;
	right:0;
	margin-top:-5.5px;
}
.right-icon-before{
	position: relative
}
.right-icon-before:before{
	background-image:url(../img/common/nav-next.png);
	background-repeat:no-repeat;
	background-size: contain;
	content: "";
	width: 10px;
	height:11px;
	position:absolute;
	top:50%;
	left:-19px;
	margin-top:-5.5px;
}
.right-icon2{
	position: relative;
	left:-10px;
}
.right-icon2:before{
	background-image:url(../img/common/icon-right2.png);
	background-repeat:no-repeat;
	background-size: contain;
	content: "";
	width: 5px;
	height:10px;
	position:absolute;
	top:50%;
	left:-10px;
	margin-top:-5px;
}
.icon-flower{
	position: relative;
	padding-left:30px;
	display: inline-block;
}
.icon-flower:before{
	background-image:url(../img/common/flower-b.png);
	background-repeat:no-repeat;
	background-size: contain;
	content: "";
	width: 21px;
	height:21px;
	position:absolute;
	top:50%;
	left:0px;
	margin-top:-10.5px;
}
/*/icon*/
.indent{
	padding-left: 1em;
  	text-indent: -1em;
}
.indent-en{
	padding-left: 1.3em;
  	text-indent: -1.3em;
}
.fullwidth{
		width:100%;
		height:auto;
}
.hidden{overflow: hidden;}
.child-middle > *{
	vertical-align: middle;
}
.child-top > *{
	vertical-align: top;
}
.relative{
	position: relative;
}
/* 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;
}
.invisible{visibility: hidden;}
/*右クリック禁止*/
.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_contain {
  	object-fit: contain;
	font-family: "object-fit:contain;";
}
/*下からふわっと表示*/
.js-animation {
  opacity: 0;
  visibility: hidden;
  transform: translateY(40px);
  transition: all 1s;
}
.js-animation.is-show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0px);
}
.title-l-height{
	line-height:1.6em;
	letter-spacing:-0.08em;
}
/* ////////////////////////////////////////
印刷
//////////////////////////////////////// */
@media print{
  body {
    width: 1200px;
    transform: scale(0.8);
    -moz-transform: scale(0.8);
    -webkit-transform: scale(0.8);
    transform-origin: 0 0;
  }
 .noprint{
	 display: none;
 }
 .print{
	 display: block;
 }
}
/* ////////////////////////////////////////
PC・印刷時のみ
//////////////////////////////////////// */
@media screen and (min-width:768px) , print{ 
	.sp{display: none;}
	.tab{display: none;}
	.tab-sp{display: none;}
	.wrap{
		width:1200px;
		margin-right:auto;
		margin-left:auto;
	}
	.wrap-s{
		width:1140px;
		margin-right:auto;
		margin-left:auto;
	}
	.pc_hidden{overflow: hidden;}
	.pc_f_left{float: left;}
	.pcaligncenter{
		text-align: center;
	}
	/*文字サイズ
	------------------------------*/
	.fs-12{
		font-size:0.8rem;
	}
	.fs-15{
        font-size:0.9375rem;
    }
	.fs-14{
		font-size:0.875rem;
	}
	.fs-16{
		font-size:1rem;
	}
	.fs-18{
		font-size:18px;
	}
	.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-26{
		font-size:1.625rem;
	}
	.fs-27-5{
		font-size:1.75rem;
	}
	.fs-27{
		font-size:1.875rem;
	}
	.fs-28{
		font-size:2rem;
	}
	.fs-30{
		font-size:1.875rem;
	}
	.fs-32{
		 font-size:2rem;
	}
	.fs-34{
		 font-size:2.125rem;
	}
	.fs-36{
		 font-size:36px;
	}
	.fs-40{
		 font-size:2.5rem;
	}
	.fs-45{
		 font-size:45px;
	}
	.fs-50{
		font-size:50px;
	}
	.fs-56{
		font-size:3.5rem;
	}
	.fs-58{
		font-size:3.625rem;
	}
	.fs-60{
		 font-size:60px;
	}
	.fs-70{
		 font-size:70px;
	}
	
	.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 (min-width: 768px) and (max-width: 1100px){
}
/*タブレット以下*/
@media screen and (max-width: 1100px){
	.tab{display: block;}
	.tab-pc{display: block;}
	.tab-sp{display: block;}
	.pc{display: none;}
}
/* ////////////////////////////////////////
SPのみ
//////////////////////////////////////// */
@media screen and (max-width: 767px){
	.tab{display: none;}
	.tab-pc{display: none;}
	.tab-pc2{display: none;}
	.spfullwidth{
			width:100%;
			height:auto;
	}
    .l-height-s{
        line-height: 1.7em;
    }
     /*文字サイズ
    -------------------------------*/
    /*12px*/
    .sp-fs-12{
		font-size:0.8rem;
    }
    /*14px*/
    .sp-fs-14{
        font-size:0.875rem;
    }
    /*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:19px;
    }
    /*20px*/
    .sp-fs-20{
        font-size:1.25rem;
    }
    /*21px*/
    .sp-fs-21{
        font-size:21px;
    }
    /*22px*/
    .sp-fs-22{
        font-size:22px;
    }
    /*23px*/
    .sp-fs-23{
        font-size:1.4375rem;
    }
    /*24px*/
    .sp-fs-24{
        font-size:1.5rem;
    }
    /*25px*/
    .sp-fs-25{
        font-size:25px;
    }
    /*26px*/
    .sp-fs-26{
        font-size:1.625rem;
    }
    /*30px*/
    .sp-fs-30{
        font-size:1.875rem;
    }
    /*36px*/
    .sp-fs-36{
        font-size:2.25rem;
    }
    /*40px*/
    .sp-fs-40{
        font-size:2.5rem;
    }
    /*45px*/
    .sp-fs-45{
        font-size:45px;
    }
    /*50px*/
    .sp-fs-50{
        font-size:50px;
    }
    /*50px*/
    .sp-fs-56{
        font-size:56px;
    }
    /*60px*/
    .sp-fs-60{
        font-size:60px;
    }
    /*70px*/
    .sp-fs-70{
        font-size:70px;
    }
    
	.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;
	}
	/*icon*/	
	.dousan-w:before{
		background-image:url(../img/common/dousan-w-sp.png);
	}
	/*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::after{
		content:"横スクロールしてご覧ください。";
	}
}