:root{--navy:#102b3b;--green:#087d5b;--mint:#51e1ad;--ink:#183443;--muted:#58707b;--line:#dbe5e5;--tint:#f0f5f3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.9 -apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",Meiryo,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,select,textarea{outline-offset:5px}a:focus-visible,button:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #0aaa7e}a:hover{color:var(--green)}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:5}.brand{font-size:32px;font-weight:850;line-height:1;letter-spacing:-2px}.brand span{display:block;font-size:9px;letter-spacing:1.8px;margin-top:10px}nav{display:flex;align-items:center;gap:28px;font-size:13px;font-weight:600}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;border:0;border-radius:3px;background:var(--green);color:white;padding:17px 26px;font-weight:700;cursor:pointer;line-height:1.6}.button:hover{background:#08664c;color:white}.button.small{padding:12px 18px}.menu{display:none}.skip{position:absolute;top:-80px;left:10px;z-index:20;background:white;padding:10px}.skip:focus{top:0}section{padding:100px max(6%,calc((100vw - 1200px)/2));scroll-margin-top:0}.hero{padding-top:85px;padding-bottom:85px;background:var(--navy);color:white;display:grid;grid-template-columns:1.2fr 1fr;gap:30px;min-height:650px;overflow:hidden}.eyebrow{font-size:11px;font-weight:750;letter-spacing:2px;color:var(--green);margin:0 0 25px}.hero .eyebrow,.diagnosis .eyebrow,.contact .eyebrow{color:var(--mint)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(44px,5.8vw,80px);font-weight:750;line-height:1.32;letter-spacing:-2px;margin-bottom:28px}h1 span{color:var(--mint)}h2{font-size:clamp(27px,3vw,40px);line-height:1.55;letter-spacing:-1px;margin-bottom:30px}h3{font-size:21px;line-height:1.6}.lead{font-size:17px;line-height:2}.hero .lead{color:#d3e1e6}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:32px}.hero .button{background:var(--mint);color:var(--navy)}.text-link{display:inline-block;font-size:14px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:3px}.note{font-size:12px;color:var(--muted);margin:18px 0 0;line-height:1.9}.hero .note{color:#b6cbd1}.field{position:relative;min-height:420px;align-self:center;background-image:radial-gradient(#517278 1px,transparent 1px);background-size:23px 23px;isolation:isolate}.field-label,.field-bottom{position:absolute;font-size:9px;letter-spacing:2px;color:#b0c8cc}.field-label{top:8px;left:15px}.field-bottom{bottom:5px;right:5px}.orbit{border:1px solid #31555d;border-radius:50%;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.o1{width:290px;height:290px}.o2{width:390px;height:390px}.core{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:180px;width:180px;border-radius:50%;background:#183e49;border:1px solid #51e1ad;box-shadow:0 0 70px #51e1ad20;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--mint);font-size:64px;line-height:1.2}.core span{font-size:8px;letter-spacing:2px;color:#d2e7e3;margin-top:14px}.node{position:absolute;background:#f0faf6;color:var(--navy);padding:12px 18px;font-size:13px;font-weight:700;border-left:3px solid var(--mint);box-shadow:0 10px 25px #00192344}.n1{top:65px;left:0}.n2{right:0;top:200px}.n3{bottom:42px;left:15px}.strip{display:flex;justify-content:center;gap:45px;flex-wrap:wrap;padding:24px 5%;background:#e9f2ef;font-size:13px;font-weight:700}.strip i{font-style:normal;color:var(--green)}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px}.grid{display:grid;gap:25px;margin-top:45px}.three{grid-template-columns:repeat(3,1fr)}.grid article{border-top:2px solid var(--green);padding:25px 10px 0 0}.grid p{font-size:14px;color:var(--muted)}.num{font-size:15px;letter-spacing:2px;color:var(--green);display:block;margin-bottom:20px}.tint{background:var(--tint)}.section-head{display:flex;justify-content:space-between;align-items:center;gap:30px}.tag{font-size:10px!important;color:var(--green)!important;font-weight:750;letter-spacing:1.4px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:45px}.steps article{border-top:1px solid var(--line);padding-top:20px}.steps span{color:var(--green);font-size:13px}.steps h3{margin-top:12px}.steps p{font-size:14px;color:var(--muted)}.diagnosis{background:var(--navy);color:#fff}.diagnosis .note{color:#bed0d5}.diagnosis form{background:white;color:var(--ink);padding:32px;border-radius:5px}label{display:block;font-size:14px;font-weight:650;margin-bottom:20px}select,textarea{display:block;width:100%;border:1px solid #a6bbbf;background:white;border-radius:3px;color:var(--ink);padding:12px;margin-top:10px;line-height:1.6}textarea{resize:vertical}form .button{width:100%}#diagnosis-result{border-top:1px solid var(--line);margin-top:25px;padding-top:25px;font-size:14px}#diagnosis-result h3{font-size:22px}details{border-bottom:1px solid var(--line);padding:22px 5px}summary{cursor:pointer;font-weight:650;list-style:none;padding-right:32px;position:relative}summary::after{content:'+';position:absolute;right:4px;color:var(--green);font-size:22px}details[open] summary::after{content:'−'}details p{margin:18px 0 0;color:var(--muted);font-size:15px}.contact{background:#e5f3ed;text-align:center}.contact .eyebrow{color:var(--green)}.contact form{text-align:left;max-width:660px;margin:32px auto 0}.contact .note{margin-bottom:20px}#contact-output{margin-top:30px;font-size:14px}.compact{padding-top:60px;padding-bottom:60px}.compact h2{font-size:22px}.compact p{font-size:13px;max-width:900px}footer{padding:50px 6%;background:var(--navy);color:#c4d3d8;display:flex;align-items:flex-start;gap:32px;flex-wrap:wrap}footer .brand{color:white}footer p{font-size:13px}footer nav{flex-wrap:wrap;margin-left:auto}footer small{width:100%;font-size:11px}.page-intro{background:var(--tint);padding-top:70px;padding-bottom:65px}.page-intro h1{font-size:clamp(34px,4.5vw,58px)}.page-intro .lead{max-width:800px}.case{display:grid;grid-template-columns:100px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:35px 0 50px}.case:first-child{padding-top:0}.case h2{font-size:30px}.case h3{font-size:15px;margin-bottom:8px;color:var(--green)}.case p{max-width:830px}.end-cta{background:var(--tint);text-align:center}.end-cta a{margin:10px}.article-list{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.article-list>a{padding:30px;background:var(--tint);border-top:3px solid var(--green)}.article-list h2{font-size:23px;margin-top:20px}.article-list a>span:last-child{font-size:13px}.prose{max-width:820px;margin:70px auto;padding:0 25px}.prose h2{font-size:27px;margin-top:50px}.prose p{line-height:2.2}.prose a{text-decoration:underline}[hidden]{display:none!important}@media(max-width:1000px){nav{gap:16px}.hero{grid-template-columns:1fr 0.8fr}.actions{gap:15px}.split{gap:35px}.strip{gap:20px}footer nav{margin:0}}@media(max-width:760px){header{height:80px;padding:0 6%}.menu{display:block;background:white;border:1px solid var(--line);padding:8px 12px;border-radius:3px;font-size:12px}header nav{display:none;position:absolute;top:80px;left:0;right:0;background:white;padding:25px 6%;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch}header nav.open{display:flex}section{padding:65px 6%}.hero{grid-template-columns:1fr;padding-top:55px;gap:35px}h1{font-size:56px}.hero .lead{font-size:15px}.field{min-height:360px;width:100%;max-width:480px;margin:auto}.o2{width:320px;height:320px}.o1{width:250px;height:250px}.n1{top:35px}.n2{top:170px}.n3{bottom:25px}.core{width:155px;height:155px;font-size:56px}.strip{gap:10px;font-size:11px;padding:20px 3%}.split,.three,.steps,.article-list{grid-template-columns:1fr}.split{gap:22px}.grid{gap:25px;margin-top:30px}.grid article{padding-top:20px}.steps{gap:15px}.steps article{padding-top:15px}.steps h3{margin-bottom:8px}.section-head{align-items:flex-start;flex-direction:column;gap:0}.section-head .text-link{margin-bottom:10px}.diagnosis form{padding:22px}.case{grid-template-columns:1fr;gap:0}.case .num{margin-bottom:10px}.page-intro h1{font-size:36px;letter-spacing:-1px}.article-list{gap:20px}footer{gap:25px}footer nav{gap:18px;font-size:12px}.contact h2{font-size:27px}.button{font-size:14px}.actions .button{width:100%}.actions .text-link{font-size:13px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

input:not([type=checkbox]):not([type=hidden]){display:block;width:100%;padding:12px;border:1px solid #a6bbbf;border-radius:3px;margin-top:10px}input[type=checkbox]{margin-right:8px}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}dd{margin:0 0 24px;overflow-wrap:anywhere}dt{font-weight:700}
