@charset "utf-8";
/*-----------------------------------------------
 *  font-family
 *  テキスト
 *  画像
 *  幅
 *  margin / padding
 *  横並びボックスサイズ
 *  テキストリンク
 *  テキストカラー
 *  線
 *  ブロック要素
 -----------------------------------------------*/

/*-----font-family-----*/
html{font-family:"メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}
.min{font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.notoserif{font-family: 'Noto Serif JP', serif;}
.wf-roundedmplus1c { font-family: "M PLUS Rounded 1c"; }
.wf-notosansjapanese { font-family: "Noto Sans JP"; }
.wf-sawarabimincho { font-family: "Sawarabi Mincho"; }
body{-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;}

/* -----テキスト----- */
.fwb {font-weight: bold;}
.fwn {font-weight: normal;}
.txtIn {padding-left: 1em;text-indent: -1em;}
.dip_inl {display: inline;}
.dip_inb {display: inline-block;}

.txtind2 {
		padding-left: 2.5em;
		text-indent: -2.5em;
	}
.txtind3 {
		padding-left: 3.5em;
		text-indent: -3.5em;
	}

/*pc */
@media print, screen and (min-width: 768px){
	.txtL,.txtLPc {text-align: left;}
	.txtC,.txtCPc {text-align: center;}
	.txtR,.txtRPc {text-align: right;}

	.fsXXXXL, .fsXXXXLPc {font-size: 32px; line-height: 1.4em;}
	.fsXXXL, .fsXXXLPc {font-size: 29px; line-height: 1.4em;}
	.fsXXLPc {font-size: 26px; line-height: 1.4em;}
	.fsXL,.fsXLPc {font-size: 24px; line-height: 1.4em;}
	.fsLL,.fsLLPc {font-size: 20px; line-height: 1.4em;}
	.fsL,.fsLPc {font-size: 18px;}
	.fsM,.fsMLPc {font-size: 16px;}
	.fsM,.fsMPc,.fsMPc a {font-size: 14px;}
	.fsS,.fsSPc {font-size: 13px;}
	.fsXS,.fsXSPc {font-size: 12px;}
	.fsXXS,.fsXXSPc {font-size: 11px;}

	.vaM,.vaMPc {vertical-align: middle;}

	.lh14,.lh14Pc {line-height: 1.4em;}
	.lh2,.lh2Pc {line-height: 2em;}
}

/*sp*/
@media only screen and (max-width: 767px){
	.SPfwb {font-weight: bold;}
	
	.txtL,.txtLSp {text-align: left;}
	.txtC,.txtCSp {text-align: center;}
	.txtR,.txtRSp {text-align: right;}
	
	.fsXXXL,.fsXXXLSp {font-size: 30px; line-height: 1.4em;}
	.fsXXL,.fsXXLSp {font-size: 28px; line-height: 1.4em;}
	.fsXLL,.fsXLLSp {font-size: 23px; line-height: 1.4em;}
	.fsXL,.fsXLSp {font-size: 21px; line-height: 1.4em;}
	.fsL,.fsLSp {font-size: 18px; line-height: 1.4em;}
	.fsM,.fsMSp {font-size: 15px;}
	.fsS,.fsSSp {font-size: 14px;}
	.fsXS,.fsXSSp {font-size: 12px;}
	
	.fs90 {font-size: 90%;}

	.vaM,.vaMSp {vertical-align: middle;}

	.lh14,.lh14Sp {line-height: 1.4em;}
	.lh2,.lh2Sp {line-height: 2em;}
}

/* -----画像----- */
.img_radius {
    border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
}
/*pc */
@media print, screen and (min-width: 768px){
	img {display: block;}
	.autoImg {width: 100%;height: auto;}
	.autoImg.fullPc {width: auto;max-width: 100%;height: auto;display: table;margin: 0 auto;}
	.autoImg.lgPc {width: 80%;margin: 0 auto;display: block;}
	.autoImg.mdPc {width: 50%;margin: 0 auto;display: block;}
	.autoImg.smPc {width: 30%;margin: 0 auto;display: block;}
}

/*sp*/
@media only screen and (max-width: 767px){
	img {width: 100%;height: auto;}
	.autoImgSp {width: 100%;height: auto;}
	.autoImg.fullSp {width: auto;max-width: 100%;height: auto;display: table;margin: 0 auto;}
	.autoImg.lgSp {width: 80%;margin: 0 auto;display: block;}
	.autoImg.mdSp , .autoImgSp.mdSp {width: 50%;margin: 0 auto;display: block;}
	.autoImg.smSp {width: 30%;margin: 0 auto;display: block;}
	
	.SPimg_radius {
    border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
}
}

/* -----幅----- */
/* PC */
@media print, screen and (min-width:768px){
	.w940Pc {width: 940px;margin: 0 auto;}
	.w345Pc {width: 345px;margin: 0;}
	.w400Pc {width: 400px;margin: 0;}
	.w420Pc {width: 425px;margin: 0;}
	.w435Pc {width: 435px;margin: 0;}
	.w480Pc {width: 475px;margin: 0;}
	.w500Pc {width: 502px;margin: 0;}
	
	.inner5, .PCinner5 {padding: 0 5px;}
	.inner10, .PCinner10 {padding: 0 10px;}
	.inner15, .PCinner15 {padding: 0 15px;}
	.inner20, .PCinner20 {padding: 0 20px;}
	.inner25, .PCinner25 {padding: 0 25px;}
	.inner86 {padding: 0 8px 0 6px;}
	.inner1015 {padding: 0 10px 0 15px;}
	
	.w60Pc {width: 61%;margin: 0;}
	.w70Pc {width: 70%;}
	.w80Pc {width: 80%;}
}
 /* SP */
@media screen and (max-width:767px){
	.w90Sp {width: 90%;margin: 0 auto;}
	.w80Sp {width: 80%;margin: 0 auto;}
	.w60Sp {width: 60%;margin: 0 auto;}
	
	.inner5, .SPinner5 {padding: 0 5px;}
	.inner10, .SPinner10 {padding: 0 10px;}
	.inner15, .SPinner15 {padding: 0 15px;}
	.inner86 {padding: 0 15px 0 10px;}
	.inner1015 {padding: 0 10px 0 25px;}
	
	.w80parSp {width: 80%;}
}

/* -----margin / padding----- */
.m0auto {margin: 0 auto !important;}

/*pc*/
@media print, only screen and (min-width: 768px){
	.m0, .PCm0 {margin: 0px !important;}
	.mt5px, .PCmt5px {margin-top: 5px;}
	.mt10px, .PCmt10px {margin-top: 10px;}
	.mt15px, .PCmt15px {margin-top: 15px;}
	.mt20px, .PCmt20px {margin-top: 20px;}
	.mt25px, .PCmt25px {margin-top: 25px;}
	.mt30px, .PCmt30px {margin-top: 30px;}
	.mt40px, .PCmt40px {margin-top: 40px;}
	
	.mb5px, .PCmb5px {margin-bottom: 5px;}
	.mb10px, .PCmb10px {margin-bottom: 10px;}
	.mb15px, .PCmb15px {margin-bottom: 15px;}
	.mb20px, .PCmb20px {margin-bottom: 20px;}
	.mb25px, .PCmb25px {margin-bottom: 25px;}
	.mb30px, .PCmb30px {margin-bottom: 30px;}
	.mb40px, .PCmb40px {margin-bottom: 40px;}
	.mb60px, .PCmb60px {margin-bottom: 60px;}
	
	.ml5px, .PCml5px {margin-left: 5px;}
	.ml10px, .PCml10px {margin-left: 10px;}
	.ml15px, .PCml15px {margin-left: 15px;}
	.ml20px, .PCml20px {margin-left: 20px;}
	.ml30px, .PCml30px {margin-left: 30px;}
	.ml35px, .PCml35px {margin-left: 35px;}
	.ml40px, .PCml40px {margin-left: 40px;}
	
	.mr5px, .PCmr5px {margin-right: 5px;}
	.mr10px, .PCmr10px {margin-right: 10px;}
	.mr15px, .PCmr15px {margin-right: 15px;}
	.mr20px, .PCmr20px {margin-right: 20px;}
	
	.mb05, .PCmb05 {margin-bottom: 0.5em;}
	.mb08, .PCmb08 {margin-bottom: 0.8em;}
	.mb1, .PCmb1 {margin-bottom: 1em;}
	.mb15, .PCmb15 {margin-bottom: 1.5em;}
	.mb2, .PCmb2 {margin-bottom: 2em;}
	
/* padding */
	.pt5px, .PCpt5px {padding-top: 5px;}
	.pt10px, .PCpt10px {padding-top: 10px;}
	.pt15px, .PCpt15px {padding-top: 15px;}
	.pt20px, .PCpt20px {padding-top: 20px;}
	.pt70px, .PCpt70px {padding-top: 70px;}
	.pt80px, .PCpt80px {padding-top: 80px;}
	
	.pb5px, .PCpb5px {padding-bottom: 5px;}
	.pb10px, .PCpb10px {padding-bottom: 10px;}
	.pb15px, .PCpb15px {padding-bottom: 15px;}
	.pb20px, .PCpb20px {padding-bottom: 20px;}
	.pb20px, .PCpb30px {padding-bottom: 30px;}
	.pb20px, .PCpb50px {padding-bottom: 50px;}
	
	.pl5px, .PCpl5px {padding-left: 5px;}
	.pl10px, .PCpl10px {padding-left: 10px;}
	.pl15px, .PCpl15px {padding-left: 15px;}
	.pl20px, .PCpl20px {padding-left: 20px;}
	
	.pr5px, .PCpr5px {padding-right: 5px;}
	.pr10px, .PCpr10px {padding-right: 10px;}
	.pr15px, .PCpr15px {padding-right: 15px;}
	.pr20px, .PCpr20px {padding-right: 20px;}
}

/*sp*/
@media only screen and (max-width: 767px){
	.m0, .SPm0 {margin: 0px !important;}
	.mt5px, .SPmt5px {margin-top: 5px;}
	.mt10px, .SPmt10px {margin-top: 10px;}
	.mt15px, .SPmt15px {margin-top: 15px;}
	.mt20px, .SPmt20px {margin-top: 20px;}
	.mt25px, .SPmt25px {margin-top: 25px;}
	.mt30px, .SPmt30px {margin-top: 30px;}
	
	.mb5px, .SPmb5px {margin-bottom: 5px;}
	.mb10px, .SPmb10px {margin-bottom: 10px;}
	.mb15px, .SPmb15px {margin-bottom: 15px;}
	.mb20px, .SPmb20px {margin-bottom: 20px;}
	.mb25px, .SPmb25px {margin-bottom: 25px;}
	.mb30px, .SPmb30px {margin-bottom: 30px;}
	
	.ml5px, .SPml5px {margin-left: 5px;}
	.ml10px, .SPml10px {margin-left: 10px;}
	.ml15px, .SPml15px {margin-left: 15px;}
	.ml20px, .SPml20px {margin-left: 20px;}
	
	.mr5px, .SPmr5px {margin-right: 5px;}
	.mr10px, .SPmr10px {margin-right: 10px;}
	.mr15px, .SPmr15px {margin-right: 15px;}
	.mr20px, .SPmr20px {margin-right: 20px;}
	
	.mb05, .SPmb05 {margin-bottom: 0.5em;}
	.mb1, .SPmb1 {margin-bottom: 1em;}
	.mb15, .SPmb15 {margin-bottom: 1.5em;}
	.mb2, .SPmb2 {margin-bottom: 2em;}
	.SPmb15 {margin-bottom: 14em;}
	
/* padding */
	.pt5px, .SPpt5px {padding-top: 5px;}
	.pt10px, .SPpt10px {padding-top: 10px;}
	.pt15px, .SPpt15px {padding-top: 15px;}
	.pt20px, .SPpt20px {padding-top: 20px;}
	
	.pb5px, .SPpb5px {padding-bottom: 5px;}
	.pb10px, .SPpb10px {padding-bottom: 10px;}
	.pb15px, .SPpb15px {padding-bottom: 15px;}
	.pb20px, .SPpb20px {padding-bottom: 20px;}
	.pb50px, .SPpb50px {padding-bottom: 50px;}
	
	.pl5px, .SPpl5px {padding-left: 5px;}
	.pl10px, .SPpl10px {padding-left: 10px;}
	.pl15px, .SPpl15px {padding-left: 15px;}
	.pl20px, .SPpl20px {padding-left: 20px;}
	
	.pr5px, .SPpr5px {padding-right: 5px;}
	.pr10px, .SPpr10px {padding-right: 10px;}
	.pr15px, .SPpr15px {padding-right: 15px;}
	.pr20px, .SPpr20px {padding-right: 20px;}
}


/* -----横並びボックスサイズ----- */
.fL{float:left;}
.fR{float:right;}
.flex{display: -webkit-flex; display: flex;
-webkit-flex-wrap: wrap; flex-wrap: wrap;
justify-content: space-between;
}

/*pc*/
@media print, only screen and (min-width: 768px){
	.fLPc{float:left;}
	.fRPc{float:right;}
	.flexPc{display: -webkit-flex; display: flex;
		-webkit-flex-wrap: wrap; flex-wrap: wrap;
		justify-content: space-between;
	}	
	.flex1of2,.flex1of2Pc{width: 494px;}
	.flex1of3Pc{width: 400px;}
	.flex2of3Pc{width: 590px;}
	.flex3Pc{width: 313px;}
}

/*sp*/
@media only screen and (max-width: 767px){
	.fLSp {float:left;}
	.fRSp {float:right;}
	.flexSp {display: -webkit-flex; display: flex;
		-webkit-flex-wrap: wrap; flex-wrap: wrap;
		justify-content: space-between;
	}	
}

/* -----テキストリンク----- */
a.underLine{text-decoration: underline;}
a.underLineH:hover{text-decoration: underline;}

/* -----テキストカラー----- */
.colorWhite{color: #fff;}
.colorBlack{color: #000;}
.colorRed{color: #e60012;}

/* ----- 線 ------*/
.bdnone{border: none !important;}

/* -----ブロック要素----- */
.db{display: block;}
.dinb{display: inline-block;}
.hidden{visibility:hidden}
.clr{clear:both;}
.clearfix:after {
content:"";
display:block;
clear:both;
height: 0px;
}

/* pc */
@media print, screen and (min-width: 768px){
	.dinbPc{display: inline-block;}
	.PCnone {display: none !important;}
	.PCclearfix:after {
		content:"";
		display:block;
		clear:both;
		height: 0px;
	}
	.SPbr {display: none;}
}

/* sp */
@media only screen and (max-width: 767px){
	.SPclearfix:after {
		content:"";
		display:block;
		clear:both;
		height: 0px;
	}
	.SPnone {display: none !important;}
	.PCbr {display: none;}
}




.top-mainImg, .sub-mainImg {
    width: 100%;
}
