@charset "utf-8";

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
【 リセット 】
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

.content { max-width: none; padding-right: 0; padding-left: 0; }





/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
【 基礎スタイル 】
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

html { scroll-behavior: smooth; }
#baseWarp { font-size: 62.5%; line-height: 1; color: #333333; font-weight: 500; font-feature-settings: "palt"; }
#baseWarp img { width: 100%; height: auto; vertical-align: top; }





/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
【 汎用フォント関連 】
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

.fwN { font-weight: 500; }
.fwB { font-weight: 700; }
.fcR { color: #cc0000; }
.tdL { text-decoration: line-through; }
.tdU { text-decoration: underline; }
.wsN { white-space: nowrap; }
.ffsP { font-feature-settings: "palt"; }
.taR,
.taRL,
.taRC { text-align: right; }
.taC,
.taCL { text-align: center; }

@media screen and (max-width: 767px) {
	.taRL,
	.taCL { text-align: left; }
	.taLC,
	.taRC { text-align: center; }
}



/* ――――――――――――――――――――――――――――――
［ font：文字サイズ個別指定 ］
―――――――――――――――――――――――――――――― */

.font12 { font-size: 1.2rem; line-height: 1.8rem; }
.font14 { font-size: 1.4rem; line-height: 2rem; }
.font18 { font-size: 1.8rem; line-height: 3.6rem; }
.font18 p { text-indent: 1em; }
.font20 { font-size: 2rem; line-height: 3.8rem; }
.font30 { font-size: 3rem; line-height: 5rem; }

@media screen and (max-width: 767px) {
	.font18 { font-size: 1.6rem; line-height: 2.6rem; }
	.font20 { font-size: 1.8rem; line-height: 2.8rem; }
	.font30 { font-size: 2rem; line-height: 3rem; }
}



/* ――――――――――――――――――――――――――――――
［ commonAnn：注釈 ］
―――――――――――――――――――――――――――――― */

.commonAnn { display: table; }
.commonAnn dt,
.commonAnn dd { display: table-cell; }
.commonAnn dt { white-space: nowrap; }

/* 複数 */
.commonAnn dl { display: table-row; }
.commonAnn dl:not(:last-child) dt,
.commonAnn dl:not(:last-child) dd { padding-bottom: 8px; }



/* ――――――――――――――――――――――――――――――
［ commonPara：段落行間 ］
―――――――――――――――――――――――――――――― */

.commonPara15 p:not(:last-child) { margin-bottom: 15px; }
.commonPara20 p:not(:last-child) { margin-bottom: 20px; }
.commonPara25 p:not(:last-child) { margin-bottom: 25px; }
.commonPara30 p:not(:last-child) { margin-bottom: 30px; }
.commonPara35 p:not(:last-child) { margin-bottom: 35px; }
.commonPara40 p:not(:last-child) { margin-bottom: 40px; }

@media screen and (max-width: 767px) {
	.commonPara15 p:not(:last-child) { margin-bottom: 10px; }
	.commonPara20 p:not(:last-child) { margin-bottom: 10px; }
	.commonPara25 p:not(:last-child) { margin-bottom: 12px; }
	.commonPara30 p:not(:last-child) { margin-bottom: 15px; }
	.commonPara35 p:not(:last-child) { margin-bottom: 18px; }
	.commonPara40 p:not(:last-child) { margin-bottom: 20px; }
}





/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
【 汎用レイアウト関連 】
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

/* ――――――――――――――――――――――――――――――
［ maxW：max-width指定かつセンタリング ］
―――――――――――――――――――――――――――――― */

.maxW500 { max-width: 500px; margin-right: auto; margin-left: auto; }
.maxW580 { max-width: 580px; margin-right: auto; margin-left: auto; }
.maxW740 { max-width: 740px; margin-right: auto; margin-left: auto; }
.maxW800 { max-width: 800px; margin-right: auto; margin-left: auto; }
.maxW840 { max-width: 840px; margin-right: auto; margin-left: auto; }



/* ――――――――――――――――――――――――――――――
［ diB：各種 display inline-block ］
―――――――――――――――――――――――――――――― */

.diIB { display: inline; }
.diB  { display: inline-block; }
.diBI { display: inline-block; }
.diBB { display: inline-block; }
.dbI  { display: block; }
.dbIB { display: block; }

@media screen and (max-width: 767px) {
	.diIB { display: inline-block; }
	.diB  { display: inline-block; }
	.diBI { display: inline; }
	.diBB { display: block; }
	.dbI  { display: inline; }
	.dbIB { display: inline-block; }
}



/* ――――――――――――――――――――――――――――――
［ float：基本セット ］
―――――――――――――――――――――――――――――― */

.ofH { overflow: hidden; }
.flL,.flLOff { float: left; }
.flR,.flROff { float: right; }

@media screen and (max-width: 767px) {
	.flLOff { float: none; }
	.flROff { float: none; }
}



/* ――――――――――――――――――――――――――――――
［ imgR：角丸 ］
―――――――――――――――――――――――――――――― */

.imgR20 { overflow: hidden; border-radius: 20px; }

@media screen and (max-width: 767px) {
	.imgR20 { border-radius: 10px; }
}





/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
【 changeImg：2点の画像入れ替え 】
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

.changeImg img:nth-child(2) { display: none; }

@media screen and (max-width: 767px) {
	.changeImg img:nth-child(1) { display: none; }
	.changeImg img:nth-child(2) { display: block; }
}





/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
【 コンテンツ間隔 】
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

.mb05 { margin-bottom: 5px; }
.mb06 { margin-bottom: 6px; }
.mb10 { margin-bottom: 10px; }
.mb15 { margin-bottom: 15px; }
.mb20 { margin-bottom: 20px; }
.mb25 { margin-bottom: 25px; }
.mb30 { margin-bottom: 30px; }
.mb35 { margin-bottom: 35px; }
.mb40 { margin-bottom: 40px; }
.mb50 { margin-bottom: 50px; }
.mb60 { margin-bottom: 60px; }
.mb70 { margin-bottom: 70px; }
.mb80 { margin-bottom: 80px; }
.mb90 { margin-bottom: 90px; }
.mb100 { margin-bottom: 100px; }
.mb120 { margin-bottom: 120px; }
.mb140 { margin-bottom: 140px; }
.mb160 { margin-bottom: 160px; }
.mb180 { margin-bottom: 180px; }
.mb200 { margin-bottom: 200px; }

@media screen and (max-width: 767px) {
	.mb10 { margin-bottom: 5px; }
	.mb15 { margin-bottom: 10px; }
	.mb20 { margin-bottom: 10px; }
	.mb25 { margin-bottom: 15px; }
	.mb30 { margin-bottom: 20px; }
	.mb35 { margin-bottom: 20px; }
	.mb40 { margin-bottom: 20px; }
	.mb50 { margin-bottom: 25px; }
	.mb60 { margin-bottom: 30px; }
	.mb70 { margin-bottom: 35px; }
	.mb80 { margin-bottom: 40px; }
	.mb90 { margin-bottom: 45px; }
	.mb100 { margin-bottom: 50px; }
	.mb120 { margin-bottom: 60px; }
	.mb140 { margin-bottom: 70px; }
	.mb160 { margin-bottom: 80px; }
	.mb180 { margin-bottom: 90px; }
	.mb200 { margin-bottom: 100px; }
}
