:root{--bg:#faf7f2;--panel:#fffdf9;--line:#e6ded0;--ink:#2a251d;--sub:#8a8172;--accent:#a08c5f}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:"Hiragino Sans","Noto Sans JP",system-ui,sans-serif;font-size:15px;line-height:1.85}
a{color:#7a6c4f}.wrap{max-width:720px;margin:0 auto;padding:0 20px 64px}
header.site{padding:30px 0 4px}.kicker{font-size:11px;letter-spacing:.3em;color:var(--accent);font-weight:700}
h1{font-size:25px;line-height:1.4;margin:8px 0 6px}h2{font-size:18px;margin:32px 0 8px;padding-bottom:6px;border-bottom:1px solid var(--line)}
.lede{color:var(--sub);font-size:14px}
nav.guide{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 24px}nav.guide a{padding:6px 14px;border:1px solid var(--line);border-radius:999px;color:var(--ink);text-decoration:none;font-size:13px;background:var(--panel)}
nav.guide a.on{border-color:var(--accent);color:var(--accent);font-weight:700}
ul,ol{margin:8px 0 8px 1.2em;padding:0}li{margin:4px 0}.small{font-size:13px;color:var(--sub)}
.cta{display:block;text-align:center;background:#2a251d;color:#faf7f2;font-weight:700;text-decoration:none;border-radius:12px;padding:14px;margin:28px 0 6px}
footer.site{margin-top:42px;padding-top:16px;border-top:1px solid var(--line);font-size:12px;color:var(--sub)}
table{border-collapse:collapse;width:100%;margin:12px 0;font-size:14px}th,td{border:1px solid var(--line);padding:8px 10px;text-align:left}th{background:var(--panel)}
