:root{color-scheme:light;--ink:#193b38;--muted:#50635e;--line:#d8e0d9;--paper:#faf9f5;--accent:#216550}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.9 "Segoe UI","Yu Gothic",Meiryo,sans-serif;overflow-wrap:anywhere}
a{color:var(--accent);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}a:focus-visible{outline:3px solid #ba6d26;outline-offset:5px}
.wrap{max-width:1080px;margin:auto;padding:0 36px}header{border-bottom:1px solid var(--line)}header .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:94px}
.brand{font-size:18px;font-weight:750;letter-spacing:-.03em;text-decoration:none;color:var(--ink)}nav{display:flex;gap:24px;flex-wrap:wrap;font-size:14px}nav a[aria-current=page]{font-weight:700;text-decoration-thickness:2px}
main{padding-top:42px!important;padding-bottom:60px!important}.notice{font-size:14px;background:#f5ecdb;border:1px solid #e3d2b2;padding:12px 18px;border-radius:6px;margin-bottom:38px;color:#624920}
.eyebrow{font-size:12px;letter-spacing:.16em;font-weight:700;color:var(--accent);margin-bottom:16px}h1{font-size:clamp(34px,4.5vw,54px);line-height:1.3;letter-spacing:-.045em;margin:0 0 24px}h2{font-size:22px;line-height:1.6;margin:38px 0 12px}p{margin:0 0 18px}.lead{font-size:21px;max-width:780px;line-height:1.8}.muted,.meta{color:var(--muted);font-size:14px}.meta{padding-bottom:24px;border-bottom:1px solid var(--line)}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:36px 0}.card{background:#fff;border:1px solid var(--line);padding:26px;border-radius:10px}.card h2{margin:0 0 14px}.card p:last-child{margin-bottom:0}.number{font-size:12px;font-weight:700;letter-spacing:.13em;color:var(--accent);display:block;margin-bottom:14px}.policy{max-width:800px}.policy li{margin-bottom:12px}ul,ol{padding-left:24px}.status{border-left:3px solid var(--accent);padding:16px 22px;background:#edf2ec;margin:28px 0}code{font-size:.94em}
footer{border-top:1px solid var(--line);font-size:14px;color:var(--muted);padding:30px 0 40px}footer p{margin-bottom:8px}.skip{position:absolute;left:-9999px}.skip:focus{position:fixed;left:16px;top:12px;padding:12px;background:white;z-index:2}
@media(max-width:700px){.wrap{padding:0 22px}header .wrap{align-items:flex-start;flex-direction:column;gap:12px;padding-top:20px;padding-bottom:20px}nav{gap:18px;font-size:13px}main{padding-top:26px!important}.grid{grid-template-columns:1fr}.lead{font-size:18px}.card{padding:22px}h2{font-size:20px}.notice{margin-bottom:28px}}
