:root{--navy:#0f172a;--slate:#334155;--muted:#64748b;--blue:#3b82f6;--blue-strong:#2563eb;--teal:#14b8a6;--green:#10b981;--bg:#f8fafc;--border:#e6edf3;--card-shadow:0 1px 2px rgba(15,23,42,.04),0 8px 24px rgba(15,23,42,.05);--grad:linear-gradient(90deg,#2563eb,#14b8a6 60%,#10b981)}*{box-sizing:border-box}body,html{margin:0;padding:0;color:var(--navy);font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Noto Sans JP,sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased}body{min-height:100vh;background:radial-gradient(1200px 500px at 50% -200px,#d3f3ec 0,rgba(211,243,236,0) 60%),linear-gradient(180deg,#eef6ff 0,#ecfdf8 16%,var(--bg) 42%);background-repeat:no-repeat;overflow-x:hidden}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:hsla(0,0%,100%,.72);-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid rgba(226,232,240,.7)}.site-header-inner{max-width:960px;margin:0 auto;padding:14px 20px;display:flex;align-items:center;justify-content:space-between}.logo{font-size:1.2rem;font-weight:800;letter-spacing:-.02em;color:var(--navy);text-decoration:none}.logo span{color:var(--teal)}.container{max-width:600px;margin:0 auto;padding:28px 20px 80px}h1{font-size:1.6rem;font-weight:800;letter-spacing:-.02em;line-height:1.3}h3{font-size:1.1rem;font-weight:700;margin:6px 0}.eyebrow{display:block;color:var(--teal);font-size:.78rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:8px}.hero{padding:18px 0 8px}.hero .headline{font-size:clamp(2.2rem,8vw,3.1rem);font-weight:900;letter-spacing:-.03em;line-height:1.12;margin:14px 0 18px}.accent{color:var(--teal)}.lead{font-size:1.02rem}.badge,.lead{color:var(--slate)}.badge{display:inline-flex;align-items:center;gap:7px;padding:6px 14px;border-radius:999px;font-size:.8rem;font-weight:700;background:#fff;border:1px solid var(--border);box-shadow:var(--card-shadow)}.badge:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px rgba(16,185,129,.18)}.pill{display:flex;align-items:center;gap:10px;padding:14px 18px;border-radius:14px;font-weight:700;font-size:.92rem;color:var(--slate)}.card,.pill{background:#fff;border:1px solid var(--border);box-shadow:var(--card-shadow)}.card{border-radius:16px;padding:18px;margin:14px 0}.stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px;margin:18px 0}.stat{background:#fff;border:1px solid var(--border);border-radius:16px;padding:18px 10px;text-align:center;box-shadow:var(--card-shadow)}.stat-num{font-size:1.5rem;font-weight:900;letter-spacing:-.02em;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.stat-label{margin-top:4px;font-size:.78rem;color:var(--muted)}.stat-label,label{display:block;font-weight:600}label{font-size:.85rem;color:var(--slate);margin:14px 0 6px}input,select,textarea{width:100%;padding:12px 14px;border:1px solid #d7e0e8;border-radius:10px;font-size:1rem;background:#fff;color:var(--navy);transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(20,184,166,.16)}.btn,button{display:inline-block;width:100%;margin-top:18px;padding:14px 18px;background:var(--grad);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:700;text-align:center;text-decoration:none;cursor:pointer;box-shadow:0 8px 20px rgba(20,184,166,.25);transition:transform .12s ease,box-shadow .12s ease,opacity .12s}.btn:hover,button:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(20,184,166,.32)}button:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-lg{padding:18px 22px;font-size:1.08rem;border-radius:14px}.btn-pill{width:auto;margin:0;padding:9px 18px;font-size:.9rem;border-radius:999px;box-shadow:0 6px 16px rgba(20,184,166,.28)}.btn-secondary{background:#fff;color:var(--navy);border:1px solid var(--border)}.btn-secondary,.btn-secondary:hover{box-shadow:var(--card-shadow)}.muted{color:var(--muted);font-size:.92rem}a{color:var(--blue-strong);font-weight:600}.center,.sub{text-align:center}.sub{color:var(--muted);font-size:.85rem;margin-top:10px}ol.muted,ul.muted{padding-left:1.2em}ol.muted li,ul.muted li{margin:6px 0}