
:root{color-scheme:light;--ink:#203044;--dark:#0d1d31;--primary:#167265;--muted:#4e6173}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,"Noto Sans JP","Yu Gothic",sans-serif;color:var(--ink);background:#f8fafc;line-height:1.88}
a{color:#0a7064;text-underline-offset:3px}a:hover{text-decoration-thickness:2px}a:focus-visible{outline:3px solid #ef9d31;outline-offset:3px}
header{background:var(--dark);color:#f9fcff;padding:22px max(20px,calc((100vw - 940px)/2)) 19px}header .brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:21px}header .brand span{display:inline-grid;place-items:center;background:#48c9b1;color:#0d1d31;width:39px;height:39px;border-radius:10px}
header a{color:#e6f7f3}nav.toplinks{display:flex;gap:14px 22px;flex-wrap:wrap;margin-top:12px;font-size:14px}
main{max-width:940px;margin:auto;padding:28px 20px 50px}.eyebrow{color:var(--primary);font-weight:700;font-size:14px}.intro{font-size:18px;color:#36495b;max-width:790px}
h1{font-size:clamp(26px,4vw,37px);line-height:1.42;margin:10px 0 14px;color:#142940}h2{font-size:24px;margin:38px 0 15px;border-left:5px solid #1e9c86;padding-left:13px;line-height:1.4}h3{font-size:18px;margin:23px 0 9px}p{margin:12px 0}ul,ol{padding-left:24px}li{margin:7px 0}
.btn{display:inline-block;background:#0b7568;color:white;border-radius:10px;padding:12px 20px;font-weight:800;text-decoration:none;margin:13px 10px 10px 0}.btn:hover{background:#064a44}.secondary-btn{background:#1b334d}
.bento{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:20px 0}.box{background:white;border:1px solid #dce6eb;border-radius:12px;padding:20px;box-shadow:0 1px 4px #1730450b}.box h3{margin:0 0 8px}.subtext{font-size:14px;color:var(--muted)}.faq{border-bottom:1px solid #dce5e9;padding:10px 0 13px}.faq h3{margin:10px 0 5px}.faq p{margin:5px 0}
.toc{background:#edf5f2;border:1px solid #bfd7cd;padding:12px 17px;border-radius:10px}.toc a{margin-right:14px}.notice{background:#fffdf7;border-left:4px solid #d99d39;padding:16px 19px;margin:23px 0}.related{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(225px,1fr));gap:10px}.related li{background:#fff;border:1px solid #dce6eb;border-radius:10px;padding:14px}.related strong,.related small{display:block}.related small{color:var(--muted);font-size:12px}
footer{background:#e9eff3;color:#405469;padding:23px 20px;margin-top:14px}footer>div{max-width:940px;margin:auto;font-size:13px}.crumb{font-size:13px;color:#526e7c;margin-bottom:10px}
@media(max-width:560px){main{padding:22px 15px 35px}h2{font-size:21px}header{padding:15px}nav.toplinks{gap:7px 14px;font-size:13px}.intro{font-size:16px}}
