:root{--bg:#f5f5f7;--surface:#fff;--surface-soft:#f2f2f7;--text:#1d1d1f;--muted:#6e6e73;--line:#d2d2d7;--green:#06c755;--green-dark:#05a546;--green-soft:#e8f9ee;--max:760px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue","Noto Sans JP",sans-serif;line-height:1.9;letter-spacing:.01em}a{color:inherit}.container{width:min(calc(100% - 48px),var(--max));margin:auto}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:12px;top:12px;z-index:10;padding:8px 12px;background:#fff;border-radius:10px}header{position:sticky;top:0;z-index:5;border-bottom:1px solid rgba(210,210,215,.8);background:rgba(255,255,255,.84);backdrop-filter:saturate(180%) blur(18px)}.header-inner{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{font-size:14px;font-weight:750;text-decoration:none}.brand span,.back{color:var(--green-dark)}.back{font-size:13px;font-weight:650;text-decoration:none}.hero{padding:76px 0 62px;background:var(--surface)}.eyebrow{display:inline-block;margin:0 0 16px;padding:4px 10px;color:var(--green-dark);background:var(--green-soft);border-radius:999px;font-size:12px;font-weight:700}.hero h1{margin:0;max-width:720px;font-size:clamp(32px,5vw,48px);line-height:1.25;letter-spacing:-.045em}.lead{margin:18px 0 0;color:var(--muted);font-size:17px}.meta{margin:20px 0 0;color:var(--muted);font-size:12px}.article{padding:54px 0 72px}.toc,.callout,.checklist,.source{padding:24px 26px;background:var(--surface);border:1px solid var(--line);border-radius:18px}.toc{margin-bottom:42px}.toc h2,.callout h2,.checklist h2{margin:0 0 10px;font-size:18px}.toc ol{margin:0;padding-left:22px}.toc a{color:var(--green-dark);text-decoration:none}.article h2{margin:54px 0 16px;font-size:27px;line-height:1.4;letter-spacing:-.03em}.article h3{margin:28px 0 8px;font-size:19px}.article p,.article li{font-size:15px}.article p{margin:0 0 16px}.article ul,.article ol{padding-left:22px}.article li+li{margin-top:7px}.failure{margin:22px 0;padding:24px 26px;background:var(--surface);border-left:3px solid var(--green);border-radius:0 16px 16px 0}.failure h3{margin:0 0 8px}.failure p:last-child{margin-bottom:0}.callout{margin-top:28px;background:var(--green-soft);border-color:#c9efd6}.checklist{margin-top:26px}.checklist li::marker{color:var(--green-dark)}.cta{margin-top:48px;padding:34px;border-radius:22px;background:#1d1d1f;color:#fff}.cta h2{margin:0 0 10px;font-size:25px}.cta p{color:#d2d2d7}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 18px;border-radius:999px;background:var(--green);color:#fff;font-size:14px;font-weight:750;text-decoration:none}.source{margin-top:42px;color:var(--muted);font-size:12px}.source h2{margin:0 0 8px;font-size:16px;color:var(--text)}.source ul{margin:0;padding-left:19px}footer{padding:32px 0;background:#1d1d1f;color:#d2d2d7;font-size:12px}@media(max-width:600px){.container{width:min(calc(100% - 28px),var(--max))}.header-inner{min-height:58px}.hero{padding:54px 0 42px}.article{padding-top:40px}.toc,.callout,.checklist,.source{padding:20px}.article h2{margin-top:42px;font-size:24px}.article p,.article li{font-size:14px}.cta{padding:27px 23px}}
