:root{color-scheme:light;--paper:#f1ecdf;--sheet:#fffdf5;--ink:#27241f;--muted:#655d50;--gold:#a78a43;--rule:#d9cba6;font-family:system-ui,-apple-system,"Segoe UI","Yu Gothic",Meiryo,sans-serif;font-synthesis:none}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.85}
a{color:#69500f;text-underline-offset:.2em;overflow-wrap:anywhere}
a:hover{text-decoration-thickness:2px}
a:focus-visible{outline:3px solid #6f4b00;outline-offset:4px;border-radius:2px}
.skip{position:absolute;left:16px;top:-80px;background:var(--sheet);padding:8px 14px;z-index:1}
.skip:focus{top:8px}
.wrap{width:min(760px,calc(100% - 32px));margin-inline:auto}
.site-header{padding-block:22px 16px;border-bottom:1px solid var(--gold)}
.brand{display:inline-block;color:var(--ink);font-family:"Yu Gothic",Meiryo,sans-serif;font-size:1.45rem;font-weight:900;letter-spacing:.06em;text-decoration:none}
.site-nav{display:flex;flex-wrap:wrap;gap:6px 20px;margin-top:12px;font-size:.9rem;line-height:1.6}
.site-nav a{padding-block:6px;color:var(--muted)}
.site-nav [aria-current=page]{color:var(--ink);font-weight:700;text-decoration-thickness:2px}
main{margin-block:28px 36px;padding:clamp(20px,5vw,40px);border:1px solid var(--rule);border-top:4px double var(--gold);background:var(--sheet)}
h1,h2,h3{line-height:1.5;overflow-wrap:anywhere}
h1{margin:0 0 24px;font-family:"Yu Gothic",Meiryo,sans-serif;font-size:clamp(1.65rem,5vw,2.2rem);font-weight:900;letter-spacing:.02em}
h2{margin:34px 0 12px;padding-top:18px;border-top:1px solid var(--rule);font-size:1.2rem}
h3{margin:22px 0 8px;font-size:1.05rem}
p{margin:12px 0}
.lead{font-size:1.08rem}
.note,.updated{color:var(--muted);font-size:.9rem}
.updated{margin-top:-12px}
ol{padding-left:1.5em}
li+li{margin-top:12px}
table{width:100%;margin:20px 0;border-collapse:collapse;table-layout:fixed;font-size:.9rem;line-height:1.7}
caption{text-align:left;font-weight:700;margin-bottom:8px}
th,td{padding:10px 7px;border:1px solid var(--rule);text-align:left;overflow-wrap:anywhere}
th{background:#eee7d4;font-weight:700}
th:first-child{width:23%}
kbd{font:inherit;font-weight:700}
.return{display:inline-block;margin-top:22px;padding:10px 20px;background:#29251f;border:1px solid var(--gold);color:#fff8df;font-weight:700;text-decoration:none}
.return:hover{background:#443b2a}
.contact{margin:20px 0;padding:15px 18px;border-left:3px solid var(--gold);background:#f4efdf;overflow-wrap:anywhere}
.contact p{margin:4px 0}
.policy-links{padding-left:1.25em}
.site-footer{padding-block:0 30px;color:var(--muted);font-size:.85rem}
.site-footer p{margin:0}
@media(max-width:380px){.wrap{width:calc(100% - 24px)}main{padding:20px 14px}.site-nav{gap:4px 14px}th,td{padding:8px 5px}.contact{padding:12px}}
