.demo-root,.demo-root *,.demo-root :before,.demo-root :after{box-sizing:border-box;margin:0;padding:0}.demo-root{--navy:#0d2b6b;--blue:#0d47a1;--base:#e8f4fb;--grn:#15803d;--warn:#b45309;--warn-bg:#fff7ed;--bg:#fff;--ink:#1e293b;--sub:#46586e;--faint:#6b7d92;--rule:#c9d9e8;--rule-soft:#e2ecf5}@media (prefers-color-scheme:dark){.demo-root{--navy:#b7cdf5;--blue:#85b1f0;--base:#142038;--grn:#57c07a;--warn:#e8a35c;--warn-bg:#2a1a08;--bg:#0c1626;--ink:#e6edf6;--sub:#a7b8cc;--faint:#7e91a8;--rule:#2c3f5c;--rule-soft:#1d2e47}}.demo-root{font-family:var(--font-noto-sans-jp), "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;min-height:100vh;font-size:18px;line-height:1.9}.demo-root a{color:inherit;text-decoration:none}.demo-root a:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:4px}.demo-root .wrap{max-width:800px;margin:0 auto;padding:0 24px}.demo-root .site{border-bottom:1px solid var(--rule);padding:18px 0}.demo-root .logotype{color:var(--navy);letter-spacing:.04em;font-size:20px;font-weight:700}.demo-root .logotype small{color:var(--faint);letter-spacing:.1em;margin-left:10px;font-size:12px;font-weight:600}.demo-root .head{padding:56px 0 8px}.demo-root h1{color:var(--navy);text-wrap:balance;margin-bottom:12px;font-size:clamp(26px,4vw,33px);font-weight:700;line-height:1.5}.demo-root .lede{color:var(--sub);max-width:40em;font-size:17px}.demo-root .lede strong{color:var(--ink)}.demo-root .block{padding:44px 0 8px}.demo-root h2{color:var(--navy);margin-bottom:14px;font-size:22px}.demo-root h2:before{content:"";background:var(--blue);border-radius:2px;width:32px;height:4px;margin-bottom:12px;display:block}.demo-root .oklist{max-width:40em;list-style:none}.demo-root .oklist li{color:var(--sub);border-bottom:1px dashed var(--rule-soft);padding:8px 0 8px 26px;font-size:17px;position:relative}.demo-root .oklist li:last-child{border-bottom:none}.demo-root .oklist li:before{content:"✓";color:var(--grn);font-weight:700;position:absolute;left:0}.demo-root .warnbox{background:var(--warn-bg);border-left:4px solid var(--warn);max-width:44em;padding:20px 26px}.demo-root .warnbox li{color:var(--sub);padding:6px 0 6px 24px;font-size:16.5px;list-style:none;position:relative}.demo-root .warnbox li:before{content:"※";color:var(--warn);font-weight:700;position:absolute;left:0}.demo-root .warnbox li.strong{color:var(--warn);font-weight:700}.demo-root .cred{border:1px solid var(--rule);border-top:3px solid var(--navy);border-radius:0 8px 8px;max-width:480px;margin-top:6px}.demo-root .cred div{gap:18px;padding:14px 22px;font-size:17px;display:flex}.demo-root .cred div+div{border-top:1px solid var(--rule-soft)}.demo-root .cred dt{color:var(--navy);flex-shrink:0;width:7em;font-weight:700}.demo-root .cred dd{color:var(--ink);font-variant-numeric:tabular-nums;word-break:break-all}.demo-root .cred-note{color:var(--faint);margin-top:12px;font-size:15px}.demo-root .flow{counter-reset:flow;max-width:40em;list-style:none}.demo-root .flow li{counter-increment:flow;color:var(--sub);border-bottom:1px solid var(--rule-soft);padding:10px 0 10px 44px;font-size:17px;position:relative}.demo-root .flow li:last-child{border-bottom:none}.demo-root .flow li:before{content:counter(flow);background:var(--navy);width:30px;height:30px;color:var(--bg);font-variant-numeric:tabular-nums;border-radius:50%;justify-content:center;align-items:center;font-size:15px;font-weight:700;display:inline-flex;position:absolute;top:12px;left:0}.demo-root .contact{border-top:1px solid var(--rule);margin-top:44px}.demo-root .contact p{color:var(--sub);font-size:16.5px}.demo-root .contact .org strong{color:var(--ink)}.demo-root .contact-link{color:var(--blue);text-underline-offset:3px;font-weight:700;text-decoration:underline}.demo-root .start{text-align:center;padding:48px 0 64px}.demo-root .btn-b{background:var(--navy);color:var(--bg);border-radius:8px;padding:17px 40px;font-size:18px;font-weight:700;transition:opacity .15s;display:inline-block}.demo-root .btn-b:hover{opacity:.85}.demo-root .back{color:var(--sub);text-underline-offset:3px;margin-top:18px;font-size:15px;text-decoration:underline;display:block}.demo-root .back:hover{color:var(--blue)}@media (max-width:640px){.demo-root{font-size:16px}.demo-root .head{padding:40px 0 4px}.demo-root .block{padding:36px 0 4px}.demo-root .btn-b{text-align:center;display:block}}@media (prefers-reduced-motion:reduce){.demo-root .btn-b{transition:none}}
