@charset "utf-8";
/* ══════════════════════════════════════════════════════════════════════
   page-doc.css — 文章主体の下層ページ共通スタイル
   （/access/ アクセス、/informative_matter/ ご利用にあたって、
     /privacy/ プライバシーポリシー ほか）
   下層ページの器（.page:not(.ska-flush)）が上余白・中央寄せ・本文幅を持つ。
   箱で囲わず、罫線と余白で区切る。色は theme.css の変数のみ（白基調）。
   ══════════════════════════════════════════════════════════════════════ */

.doc{width:100%}
.doc-in{padding-inline:clamp(20px,3.4vw,52px)}

/* ── 導入文 ── */
.doc-lead{margin:clamp(16px,2.2vw,26px) 0 0;max-width:44em;
 font-family:var(--f-body);font-size:14px;line-height:2.1;letter-spacing:.04em;color:var(--moji)}

/* ── 節（見出し＋本文）。上に細い罫線で区切る ── */
.doc-sec{margin:clamp(34px,4.4vw,56px) 0 0;padding-top:clamp(20px,2.6vw,30px);border-top:1px solid var(--keisen);
 scroll-margin-top:calc(var(--topH) + 24px)}
.doc-sec:first-of-type{border-top:0;padding-top:0}
.doc-h{margin:0 0 clamp(10px,1.4vw,16px);display:flex;align-items:baseline;gap:.7em;
 font-family:var(--f-disp);font-weight:600;font-size:clamp(17px,2.1vw,22px);letter-spacing:.06em;color:var(--midashi)}
.doc-h::before{content:"";flex:0 0 auto;width:22px;height:1px;background:var(--kogane);transform:translateY(-.32em)}
/* 番号付き見出し（規約・プライバシー）の番号。読みやすいよう大きめの明朝・臙脂で。 */
.doc-h-no{font-family:var(--f-disp);font-weight:700;font-size:1.15em;letter-spacing:.02em;color:var(--enji);line-height:1}
/* 番号がある見出しでは、金の罫線を省いて番号を頭の目印にする。 */
.doc-h:has(.doc-h-no)::before{display:none}

/* 本文 */
.doc-sec p,.doc-body p{margin:0 0 1em;font-family:var(--f-body);font-size:13.5px;line-height:2.05;letter-spacing:.03em;color:var(--moji)}
.doc-sec p:last-child,.doc-body p:last-child{margin-bottom:0}
.doc-sec a.u,.doc-body a.u,.doc dd a.u{color:var(--kogane-moji)}

/* 箇条書き（罫線ドット） */
.doc-list{margin:0;padding:0;list-style:none}
.doc-list li{position:relative;padding:7px 0 7px 18px;
 font-family:var(--f-body);font-size:13.5px;line-height:1.95;letter-spacing:.03em;color:var(--moji);
 border-bottom:1px solid var(--keisen)}
.doc-list li:last-child{border-bottom:0}
/* 飾り線は本文1行目の中心に合わせる（＝上パディング7px＋行高の半分0.95em）。
   1.05em 固定では文字の上端付近に来て高く見えていた。 */
.doc-list li::before{content:"";position:absolute;left:0;top:calc(7px + 0.95em);width:8px;height:1px;background:var(--kogane)}
.doc-list li b{font-weight:600;color:var(--midashi)}

/* 補足（小さめ・沈めた色） */
.doc-note{margin:1em 0 0;font-size:12px;line-height:1.95;color:var(--moji-2)}

/* ── 定義リスト（店舗概要など）── */
.doc-dl{margin:0;display:grid;grid-template-columns:6.5em 1fr;gap:0}
.doc-dl dt{padding:11px 0;font-family:var(--f-disp);font-weight:600;font-size:13px;letter-spacing:.08em;color:var(--midashi);
 border-top:1px solid var(--keisen)}
.doc-dl dd{margin:0;padding:11px 0;font-family:var(--f-body);font-size:13.5px;line-height:1.9;letter-spacing:.03em;color:var(--moji);
 border-top:1px solid var(--keisen)}
.doc-dl dt:first-of-type,.doc-dl dd:nth-of-type(1){border-top:0}
/* 法務ページ（特商法など）はラベルが長いので見出し列を広げる。 */
.doc-legal .doc-dl{grid-template-columns:8.5em 1fr}
.doc-legal .doc-dl dt{line-height:1.7}

/* ── アクセス：概要＋地図の二段組み ── */
.doc-access-grid{margin-top:clamp(18px,2.4vw,28px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);
 gap:clamp(22px,3vw,44px);align-items:start}
.doc-map{margin:0;aspect-ratio:4/3;background:var(--ji-2);border:1px solid var(--keisen);overflow:hidden}
.doc-map iframe{display:block;width:100%;height:100%;border:0;filter:var(--chizu)}
.doc-map-none{display:flex;align-items:center;justify-content:center;height:100%;padding:20px;
 font-size:12px;color:var(--moji-2);text-align:center}
.doc-maplink{margin:10px 0 0;font-size:12.5px;letter-spacing:.06em}

/* ── 末尾のご予約ボタン ── */
.doc-end{margin:clamp(44px,6vw,78px) 0 0;padding-inline:clamp(20px,3.4vw,52px);display:flex}

@media (max-width:720px){
	.doc-access-grid{grid-template-columns:1fr;gap:20px}
	.doc-map{order:-1}
}
@media (max-width:520px){
	.doc-dl{grid-template-columns:5.5em 1fr}
}
