:root{
  --ink:#26241f;
  --ink-soft:#4a463d;
  --paper:#faf8f3;
  --paper-2:#f2ede2;
  --kaki:#c96f3b;
  --line:#e2dccd;
  --forest:#1c2a24;
  --night:#191d24;
  --mist:#8a8578;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Zen Kaku Gothic New',sans-serif;background:var(--paper);color:var(--ink);line-height:1.95;font-weight:300;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:'Shippori Mincho',serif;font-weight:500;line-height:1.55}
a{color:var(--kaki);text-decoration:none}
a:hover{text-decoration:underline}

/* ヘッダー */
.doc-header{position:sticky;top:0;z-index:50;display:flex;justify-content:space-between;align-items:center;
  padding:14px 6vw;background:rgba(250,248,243,.92);backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
.doc-header .logoname{font-family:'Shippori Mincho',serif;font-size:17px;letter-spacing:.22em;font-weight:600;color:var(--ink)}
.doc-header .logoname small{display:block;font-size:8px;letter-spacing:.4em;opacity:.7;font-weight:400}
.doc-header .home{font-size:12px;letter-spacing:.12em;color:var(--ink-soft)}

/* 本文 */
.doc{max-width:780px;margin:0 auto;padding:8vh 6vw 14vh}
.doc .eyebrow{color:var(--kaki);font-size:11px;letter-spacing:.35em;font-weight:400}
.doc h1{font-size:clamp(26px,4vw,38px);letter-spacing:.06em;margin:14px 0 10px}
.doc .meta{font-size:12.5px;color:var(--mist);letter-spacing:.06em;margin-bottom:14px}
.doc .lead{font-size:14.5px;color:var(--ink-soft);padding:22px 0 6px;border-top:1px solid var(--line);margin-top:22px}

.doc h2{font-size:19px;letter-spacing:.04em;margin:52px 0 14px;padding-left:14px;border-left:3px solid var(--kaki)}
.doc h3{font-size:15px;letter-spacing:.03em;margin:28px 0 8px;color:var(--ink)}
.doc p{font-size:14px;color:var(--ink-soft);margin:10px 0}
.doc ul,.doc ol{margin:10px 0 10px 1.4em;font-size:14px;color:var(--ink-soft)}
.doc li{margin:7px 0}
.doc ul ul,.doc ol ul{margin:6px 0 6px 1.2em}
.doc strong{color:var(--ink);font-weight:500}

/* 定義・表 */
.doc table{width:100%;border-collapse:collapse;margin:18px 0;font-size:13.5px}
.doc th,.doc td{border:1px solid var(--line);padding:12px 14px;text-align:left;vertical-align:top}
.doc th{background:var(--paper-2);color:var(--ink);font-weight:500;white-space:nowrap;width:34%}
.doc td{color:var(--ink-soft)}

/* プレースホルダ（公開前に差し替える箇所） */
.fill{background:#ffe6c2;color:#8a4b1f;padding:1px 6px;border-radius:3px;border-bottom:1px dashed var(--kaki);font-weight:400;font-size:.95em}

/* 注意ボックス */
.note{background:var(--paper-2);border:1px solid var(--line);border-left:3px solid var(--kaki);padding:16px 20px;margin:22px 0;font-size:13px;color:var(--ink-soft);border-radius:0 4px 4px 0}
.note strong{color:var(--kaki)}

/* フッター */
.doc-footer{background:var(--night);color:#cfc9bd;padding:7vh 6vw 5vh;text-align:center}
.doc-footer .fname{font-family:'Shippori Mincho',serif;font-size:16px;letter-spacing:.28em;color:#fff}
.doc-footer .links{display:flex;justify-content:center;gap:24px;margin:24px 0 0;font-size:12px;letter-spacing:.1em;flex-wrap:wrap}
.doc-footer .links a{color:#cfc9bd}
.doc-footer .links a:hover{color:var(--kaki);text-decoration:none}
.doc-footer .copy{font-size:10px;opacity:.45;letter-spacing:.12em;margin-top:28px}

@media(max-width:640px){
  .doc th{white-space:normal;width:38%}
  .doc-header .logoname{font-size:15px}
}
