@charset "utf-8";

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
【 リセット 】
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

*,*:before,*:after { box-sizing: border-box; }
h1,h2,h3,h4,h5,h6 { font-weight: inherit; margin-top: 0; margin-bottom: 0; }
ol,ul { list-style: none; padding-left: 0; margin-top: 0; margin-bottom: 0; }
dl { margin-top: 0; margin-bottom: 0; }
dd { margin-left: 0; }
p { margin-top: 0; margin-bottom: 0; }
img { width: 100%; height: auto; vertical-align: top; }
a { word-break: break-all; }
a:link { outline: 0; }
table { border-collapse: collapse; }
table tr th { text-align: left; vertical-align: top; padding: 0; }
table tr td { vertical-align: top; padding: 0; }





/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
【 基礎スタイル 】
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

html { overflow: hidden; overflow-y: scroll; scroll-behavior: smooth; font-family: "Yu Mincho", "YuMincho", "ヒラギノ明朝 ProN", serif; font-size: 62.5%; line-height: 1; color: #603813; font-weight: 700; font-feature-settings: "palt"; }
a { color: #603813; text-decoration: none; }

@media screen and (min-width: 821px) {
	a:hover { text-decoration: underline; }
}





/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
【 汎用フォント関連 】
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

.fwN { font-weight: 500; }
.fwB { font-weight: 700; }
.fcR { color: #cc0000; }
.tdL { text-decoration: line-through; }
.tdU { text-decoration: underline; }
.wsN { white-space: nowrap; }
.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; }
.font20 { font-size: 2rem; line-height: 4rem; }

@media screen and (max-width: 767px) {
	.font14 { font-size: 1.2rem; line-height: 1.8rem; }
	.font20 { font-size: 1.5rem; line-height: 2.5rem; }
}



/* ――――――――――――――――――――――――――――――
［ commonAnn：注釈 ］
―――――――――――――――――――――――――――――― */

.commonAnn { display: table; }
.commonAnn dt,
.commonAnn dd { display: table-cell; }
.commonAnn dt { white-space: nowrap; }





/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
【 汎用レイアウト関連 】
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

/* ――――――――――――――――――――――――――――――
［ commonWrap：基準スペーサー ］
―――――――――――――――――――――――――――――― */

.commonWrap { padding-right: calc( 50 / 1100 * 100% ); padding-left: calc( 50 / 1100 * 100% ); }

@media screen and (max-width: 767px) {
	.commonWrap { padding-right: calc( 15 / 320 * 100% ); padding-left: calc( 15 / 320 * 100% ); }
}



/* ――――――――――――――――――――――――――――――
［ float：基本セット ］
―――――――――――――――――――――――――――――― */

.ofH { overflow: hidden; }
.flL,.flLOff { float: left; }
.flR,.flROff { float: right; }

@media screen and (max-width: 767px) {
	.flLOff { float: none; }
	.flROff { float: none; }
}



/* ――――――――――――――――――――――――――――――
［ mrlAuto：ブロック要素センタリング ］
―――――――――――――――――――――――――――――― */

.mrlAuto,.mrlAutoOff { margin-right: auto; margin-left: auto; }

@media screen and (max-width: 767px) {
	.mrlAutoOff { margin-right: 0; margin-left: 0; }
}



/* ――――――――――――――――――――――――――――――
［ maxW：max-width指定かつセンタリング ］
―――――――――――――――――――――――――――――― */

.maxW740 { max-width: 740px; margin-right: auto; margin-left: auto; }
.maxW780 { max-width: 780px; margin-right: auto; margin-left: auto; }
.maxW820 { max-width: 820px; margin-right: auto; margin-left: auto; }
.maxW900 { max-width: 900px; margin-right: auto; margin-left: auto; }
.maxW1000 { max-width: 1000px; margin-right: auto; margin-left: auto; }
.maxW1140 { max-width: 1140px; margin-right: auto; margin-left: auto; }

@media screen and (max-width: 767px) {
	.maxW740,
	.maxW780,
	.maxW820,
	.maxW900,
	.maxW1000,
	.maxW1140 { max-width: 500px; }
}



/* ――――――――――――――――――――――――――――――
［ 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; }
}





/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
【 汎用画像処理関連 】
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

/* ――――――――――――――――――――――――――――――
［ 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; }
}





/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
【 コンテンツ間隔 】
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

/* ――――――――――――――――――――――――――――――
［ margin-bottom ］
―――――――――――――――――――――――――――――― */

.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; }
}
