@charset "UTF-8";
/* =========================================================
   rem基準（リキッド）：1rem = 10px 相当（各デザイン基準幅で）
   - PC(≧768): 100vw / 136.6 → 1366幅で font-size:10px（大画面でも比例拡大）
   - SP(≦767): 100vw / 37.5  → 375幅で font-size:10px（画面幅いっぱいに比例拡大）
   全pxは px/10 で rem 化済み。header 側の JS が clientWidth 基準で font-size を
   上書きし、スクロールバー分の横ズレ（横スクロール）を防ぐ（このvwは非JS時の保険）。
   ========================================================= */
html {
	font-size: calc(100vw / 136.6);
	-webkit-text-size-adjust: 100%;
}
@media only screen and (max-width: 767px) {
	html { font-size: calc(100vw / 37.5); }
}
/* オープニング前のちらつき防止：opening.jsがoverlayを設置するまで本文を隠し、紺で覆う。
   head内の即時スクリプトが初回描画前に .op-cover を付与、opening.jsが設置後に解除する。 */
html.op-cover { background: #0f2f62; }
html.op-cover .l-wrap { visibility: hidden; }
/* 共通土台：中央寄せインナー（デザイン基準幅=136.6rem／SPは37.5rem。rem連動で画面幅にフィット） */
body {
	background: #ffffff;
}
.l-wrap {
	position: relative;
	width: 136.6rem;
	margin: 0 auto;
	overflow: hidden;
	background: #ffffff;
}
@media only screen and (max-width: 767px){
	/* SPメインコンテンツは37.5rem固定・中央寄せ（狭い端末では端末幅まで） */
	.l-wrap {
		width: 37.5rem;
		max-width: 100%;
	}
}
.l-wrap img {
	display: block;
	max-width: none;
}
