:root{color-scheme:light;--bg:#f8faf7;--surface:#fff;--surface-soft:#eef6f1;--ink:#18201c;--muted:#5c6c62;--line:#dce6df;--accent:#16735f;--accent-strong:#0f5949;--warning:#b45309;--danger:#b42318;--ok:#15803d;--shadow:0 18px 45px rgba(24,32,28,.11)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;overflow-x:hidden}a{color:inherit}button,input,select{font:inherit}.page{min-height:100vh;overflow-x:hidden}.hero{position:relative;display:grid;min-height:92vh;overflow:hidden;color:#fff;background:linear-gradient(90deg,rgba(10,41,35,.88),rgba(10,41,35,.48)),url(https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=1800&q=80) 50%/cover}.hero,.nav{align-items:center}.nav{position:absolute;inset:0 0 auto;z-index:2;display:flex;justify-content:space-between;padding:22px clamp(20px,6vw,84px)}.brand{font-weight:800;letter-spacing:0}.navLinks{display:flex;gap:22px;color:hsla(0,0%,100%,.88);font-size:14px}.heroInner{width:min(1120px,calc(100% - 40px));margin:0 auto;padding-top:56px}.heroCopy{width:min(720px,100%)}.eyebrow{margin:0 0 16px;color:hsla(0,0%,100%,.78);font-size:14px;font-weight:700}h1,h2,h3,p{letter-spacing:0}h1{margin:0;font-size:clamp(40px,6vw,76px);line-height:1.04}.lead{max-width:620px;margin:22px 0 0;color:hsla(0,0%,100%,.88);font-size:18px;line-height:1.9}.heroActions,.resultActions,.shareRow{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:8px;padding:12px 18px;color:#fff;background:var(--accent);font-weight:800;text-decoration:none;cursor:pointer;transition:background .18s ease,transform .18s ease}.button:hover{background:var(--accent-strong);transform:translateY(-1px)}.button.secondary{border-color:hsla(0,0%,100%,.45);background:hsla(0,0%,100%,.12)}.button.light{color:var(--accent-strong);background:#fff;border-color:var(--line)}.button.warning{background:var(--warning)}.button:disabled{opacity:.65;cursor:not-allowed;transform:none}.belowHero{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1px;gap:1px;background:var(--line)}.stat{min-height:116px;padding:24px clamp(20px,4vw,48px);background:#fff}.stat strong{display:block;margin-bottom:8px;color:var(--accent-strong);font-size:24px}.section{padding:76px clamp(20px,6vw,84px)}.sectionInner{width:min(1120px,100%);margin:0 auto}.sectionHeader{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}.sectionHeader h2{margin:0;font-size:clamp(28px,4vw,44px)}.sectionHeader p{max-width:560px;margin:0;color:var(--muted);line-height:1.8}.flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:16px;gap:16px}.ctaBand,.flowStep,.formPanel,.notice,.premiumBox,.resultPanel{border:1px solid var(--line);border-radius:8px;background:var(--surface)}.flowStep{padding:22px}.iconCircle{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:999px;color:var(--accent);background:var(--surface-soft)}.flowStep h3{margin:18px 0 8px}.flowStep p{margin:0;color:var(--muted);line-height:1.7}.diagnosisWrap{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);grid-gap:22px;gap:22px;align-items:start}.formPanel,.resultPanel{padding:clamp(20px,3vw,30px);box-shadow:var(--shadow)}.formGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.field{display:grid;grid-gap:8px;gap:8px}.field label{color:#29362f;font-size:14px;font-weight:800}.field input,.field select{width:100%;min-height:46px;border:1px solid #cfdad3;border-radius:8px;padding:10px 12px;background:#fff;font-size:16px}.field input:focus,.field select:focus{outline:3px solid rgba(22,115,95,.16);border-color:var(--accent)}.full{grid-column:1/-1}.errorBox,.successBox{margin-top:14px;border-radius:8px;padding:12px 14px;line-height:1.6}.errorBox{color:var(--danger);background:#fff1f0}.successBox{color:var(--ok);background:#effaf2}.resultPanel{position:-webkit-sticky;position:sticky;top:18px}.scoreRing{width:148px;height:148px;place-items:center;margin:4px 0 18px;background:conic-gradient(var(--accent) calc(var(--score) * 1%),#e5eee8 0)}.scoreRing,.scoreRing span{display:grid;border-radius:999px}.scoreRing span{width:112px;height:112px;place-items:center;background:#fff;font-size:34px;font-weight:900}.riskLabel{display:inline-flex;border-radius:999px;padding:7px 12px;color:#fff;background:var(--accent);font-size:13px;font-weight:800}.riskLabel.high{background:var(--danger)}.riskLabel.medium{background:var(--warning)}.metrics{display:grid;grid-gap:10px;gap:10px;margin:22px 0}.metric{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);padding-bottom:10px}.metric span{color:var(--muted)}.metric strong{text-align:right}.suggestions{padding-left:18px;color:#26352d;line-height:1.75}.notice{margin-top:18px;padding:16px;color:var(--muted);font-size:13px;line-height:1.8;background:#fffdf7}.ctaBand{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:24px;gap:24px;align-items:center;padding:clamp(24px,5vw,44px);background:#103d35;color:#fff}.ctaBand p{color:hsla(0,0%,100%,.78);line-height:1.8}.premiumGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.premiumBox{padding:24px}.premiumBox h3{margin-top:0}.premiumBox p{color:var(--muted);line-height:1.75}.footer{padding:34px clamp(20px,6vw,84px);color:var(--muted);background:#edf3ef;font-size:13px;line-height:1.8}.legalPage{min-height:100vh;background:var(--bg);padding:42px clamp(16px,5vw,72px) 72px}.legalInner{width:min(880px,100%);margin:0 auto}.legalBack{color:var(--accent-strong);font-weight:800;text-decoration:none}.legalHeader{margin:36px 0}.legalHeader h1{color:var(--ink);font-size:clamp(34px,6vw,56px)}.legalHeader p,.legalSection li,.legalSection p{color:var(--muted);line-height:1.9}.legalSection{border-top:1px solid var(--line);padding:26px 0}.legalSection h2{margin:0 0 12px;font-size:22px}.legalSection ul{padding-left:22px}@media (max-width:900px){.navLinks{display:none}.belowHero,.ctaBand,.diagnosisWrap,.flow,.premiumGrid{grid-template-columns:1fr}.sectionHeader{align-items:start;flex-direction:column}.resultPanel{position:static}}@media (max-width:620px){.hero{min-height:86vh}.heroInner{width:min(100% - 32px,1120px)}h1{font-size:34px;line-height:1.12}.lead{font-size:16px;line-height:1.75}.section{padding:54px 16px}.formGrid{grid-template-columns:1fr}.button{width:100%}}