/* Trustage サイト点検 — 国内SaaS/ホスティング系LPの文法（xserver 等を参照） */
:root{--ink:#2F334C;--ink2:#555;--mute:#888;--line:#DDE1E6;--bg:#F8F8F8;--bg2:#EEF3F8;--blue:#286ED3;--navy:#1F3C88;--navy2:#162B61;--teal:#1B8CA7;--orange:#F7790B;--orange2:#E06C05;--yellow:#FFF3B0;--red:#D64545;--green:#2E9E5B}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Roboto,"Noto Sans JP","Hiragino Kaku Gothic ProN","Helvetica Neue",Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.6;font-size:15.5px}
a{color:var(--blue)}img{max-width:100%}code{font-family:Menlo,Consolas,monospace;background:var(--bg);padding:2px 5px;border-radius:3px;font-size:.92em;word-break:break-all}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}.small{font-size:13px}.mute{color:var(--mute)}.hidden{display:none}.center{text-align:center;margin:28px 0 0}
.sp{display:none}
/* topbar + header */
.topbar{background:var(--navy2);color:#fff;font-size:12px}.topbar-in{display:flex;justify-content:space-between;height:28px;align-items:center}.tb-r{opacity:.85}
header.site{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 1px 4px rgba(0,0,0,.05)}.hd-in{display:flex;justify-content:space-between;align-items:center;height:64px}
.logo{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink)}.logo-img{height:34px;width:auto}.logo-txt{font-weight:700;font-size:15px}.logo-txt small{display:block;font-size:10px;color:var(--mute);font-weight:400;line-height:1}
header nav{display:flex;gap:22px;align-items:center}header nav a{color:var(--ink);text-decoration:none;font-weight:500;font-size:14px}
/* buttons */
.cta{display:inline-block;background:var(--orange);color:#fff;border:0;border-radius:3px;padding:14px 26px;font-weight:700;font-size:16px;text-decoration:none;cursor:pointer;box-shadow:0 2px 0 var(--orange2);white-space:nowrap}.cta:hover{background:var(--orange2)}.cta span{margin-left:6px}.cta.full{display:block;text-align:center}
.btn-o{background:var(--orange);color:#fff;border-radius:3px;padding:9px 16px;font-weight:700;font-size:13px;text-decoration:none}
.btn-b{display:inline-block;background:var(--navy);color:#fff;border:0;border-radius:3px;padding:12px 22px;font-weight:700;font-size:14px;text-decoration:none;cursor:pointer}.btn-b.full{display:block;text-align:center}
.btn{display:inline-block;background:var(--navy);color:#fff;border:0;border-radius:3px;padding:11px 20px;font-weight:700;text-decoration:none;cursor:pointer;font-size:14px}.btn.sm{padding:7px 12px;font-size:13px}.btn.lg{padding:14px 26px;font-size:16px;width:100%;background:var(--orange);box-shadow:0 2px 0 var(--orange2)}.btn.ghost{background:#fff;color:var(--navy);border:1px solid var(--navy)}.btn[disabled]{opacity:.4;cursor:not-allowed}
button.link{background:none;border:0;color:var(--blue);text-decoration:underline;cursor:pointer;padding:0;font-size:14px}button.link.danger{color:var(--red)}
/* hero (dark, competitor-like structure, v5 palette) */
.hero-dark{background:#1C2140;color:#fff;position:relative;overflow:hidden}
.hero-dark::before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,#1C2140 0 52%,#1F3C88 52% 100%)}
.hero-dark::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(-45deg,rgba(255,255,255,.03) 0 30px,transparent 30px 60px);pointer-events:none}
.hero-in{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:20px;align-items:end;min-height:640px}
.hero-copy{padding:70px 0 70px}.hero h1{font-size:46px;line-height:1.3;margin:0 0 20px;font-weight:700;white-space:nowrap}.hero h1 .em{color:#FFE066}
.hero-lead{font-size:16px;color:#D9DEEC;max-width:520px;margin:0 0 26px;line-height:1.8}
.domain-form{display:flex;gap:0;max-width:560px}.domain-form input{flex:1;font-size:16px;padding:14px 16px;border:0;border-radius:3px 0 0 3px;background:#fff;color:var(--ink);min-width:0}.domain-form input:focus{outline:2px solid #FFE066}.domain-form .cta{border-radius:0 3px 3px 0;box-shadow:none}
.hero-checks{list-style:none;padding:0;margin:14px 0 0;display:flex;gap:16px;flex-wrap:wrap;font-size:13px;color:#D9DEEC}.hero-checks li::before{content:"✓ ";color:#FFE066;font-weight:700}
.err{color:#FFD0D0;font-weight:700;margin:8px 0 0}
.hero-visual{position:relative;height:640px;perspective:900px}.hv-layer{position:absolute;inset:0;will-change:transform;transition:transform .12s linear}.guardian{position:absolute;left:10px;bottom:0;height:600px;width:auto;filter:drop-shadow(0 20px 40px rgba(0,0,0,.5));transform-origin:50% 100%;animation:guardin 1s ease both,breathe 4.5s ease-in-out 1s infinite}@keyframes breathe{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-6px) scale(1.012)}}
.hero-mark{position:absolute;right:20px;top:50px;font-size:260px;font-weight:900;line-height:1;color:#1C2140;opacity:.9;font-family:Roboto,sans-serif}
.grid-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:40px 40px;mask-image:radial-gradient(60% 60% at 60% 60%,#000,transparent);animation:griddrift 18s linear infinite}@keyframes griddrift{to{background-position:40px 40px,40px 40px}}
.ring{position:absolute;left:50%;top:58%;border-radius:50%;border:1px solid rgba(255,224,102,.35);transform:translate(-50%,-50%);animation:ringpulse 4s ease-out infinite}.r1{width:420px;height:420px}.r2{width:520px;height:520px;animation-delay:1.3s;border-color:rgba(255,255,255,.18)}.r3{width:620px;height:620px;animation-delay:2.6s;border-color:rgba(255,224,102,.18);border-style:dashed}@keyframes ringpulse{0%{opacity:0;transform:translate(-50%,-50%) scale(.92)}30%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) scale(1.06)}}
.eye{position:absolute;width:10px;height:6px;border-radius:50%;background:#FFB300;box-shadow:0 0 10px 3px rgba(255,179,0,.8);opacity:0;animation:eyes 6s ease-in-out 1.5s infinite}.e1{left:201px;top:97px}.e2{left:236px;top:100px}@keyframes eyes{0%,70%,100%{opacity:0}75%,95%{opacity:.9}}
.pk{position:absolute;width:6px;height:6px;border-radius:50%;background:#FFE066;box-shadow:0 0 8px #FFE066;opacity:0;animation:pkt 3.6s linear infinite}.p1{left:20%;top:30%}.p2{left:60%;top:20%;animation-delay:.9s}.p3{left:75%;top:70%;animation-delay:1.8s}.p4{left:35%;top:80%;animation-delay:2.7s}@keyframes pkt{0%{opacity:0;transform:translate(0,0)}10%{opacity:1}100%{opacity:0;transform:translate(-120px,-80px)}}
.hud{position:absolute;background:rgba(14,18,40,.85);border:1px solid rgba(255,224,102,.4);color:#D9DEEC;font-family:Menlo,Consolas,monospace;font-size:11px;padding:6px 10px;border-radius:3px;opacity:0;animation:hudin .6s ease both}.hud b{display:block;color:#FFE066;font-size:9.5px;letter-spacing:.15em}.hud em{font-style:normal;color:#FFB347}.hud1{right:30px;top:170px;animation-delay:1.2s}.hud2{right:60px;top:330px;animation-delay:1.8s}.hud3{right:20px;top:470px;animation-delay:2.4s}@keyframes hudin{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:none}}
.hud::before{content:"";position:absolute;left:-40px;top:50%;width:40px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,224,102,.6))}
/* sections */
.sec{padding:64px 0}.sec-white{background:#fff}.sec-gray{background:var(--bg)}.sec-blue{background:var(--bg2)}
.h-c{text-align:center;font-size:28px;font-weight:700;margin:0 0 40px;position:relative;padding-bottom:16px;line-height:1.5}.h-c::after{content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:40px;height:3px;background:var(--blue)}.h-c b{color:var(--blue);font-size:36px}.h-c.light{color:var(--ink)}
.h-lead{text-align:center;margin:-24px 0 32px;color:var(--ink2)}
.kicker-c{text-align:center;color:var(--blue);font-weight:700;font-size:14px;margin:0 0 6px}.kicker-l{color:var(--blue);font-weight:700;font-size:14px;margin:0 0 6px}.kicker-l.light{color:#9DB8F0}
.h-l{font-size:30px;font-weight:700;margin:0 0 20px;line-height:1.45}.h-l.light{color:#fff}.light-p{color:#C9D3E6;font-size:15px}
.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat-grid>div{border:1px solid var(--line);border-radius:4px;padding:22px 22px 18px;border-top:3px solid var(--navy)}.stat-grid b{font-size:40px;color:var(--navy);display:block;line-height:1.1;font-family:Roboto,sans-serif}.stat-grid small{font-size:16px;margin-left:3px}.stat-grid p{margin:8px 0 0;font-size:13.5px;color:var(--ink2)}
.stat-lead{margin:22px auto 0;max-width:820px;text-align:center;font-size:15.5px;color:var(--ink2)}.stat-lead b{color:var(--ink)}
.pain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.pain-grid>div{background:#fff;border:2px solid var(--navy);border-radius:4px;padding:24px}.pi{display:grid;place-items:center;width:46px;height:46px;background:var(--bg2);color:var(--navy);border-radius:4px;font-style:normal;font-size:20px;margin-bottom:12px}.pain-grid h3{font-size:19px;color:var(--navy);margin:0 0 6px}.pain-grid p{margin:0;font-size:14px;color:var(--ink2)}
.steps4{list-style:none;padding:0;margin:0}.steps4 li{display:grid;grid-template-columns:70px 1fr;gap:4px 20px;padding:24px 0;border-bottom:1px solid var(--line)}.steps4 small{grid-column:1/-1;font-size:12px;color:var(--mute);font-weight:700}.steps4 span{font-family:Roboto,sans-serif;font-size:30px;font-weight:700;color:var(--blue);line-height:1.1}.steps4 h3{font-size:22px;margin:0 0 6px}.steps4 p{margin:0;color:var(--ink2);font-size:14.5px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}
.rep-list{list-style:none;padding:0;margin:0;display:grid;gap:14px}.rep-list li{padding-left:18px;border-left:3px solid var(--blue)}.rep-list b{display:block;font-size:16px}.rep-list span{color:var(--ink2);font-size:13.5px}
.rep-sample{background:#fff;border:1px solid var(--line);border-radius:4px;padding:22px;box-shadow:0 8px 30px rgba(47,51,76,.12);font-size:12px}.rs-head{display:flex;align-items:center;gap:10px;border-bottom:3px solid var(--ink);padding-bottom:8px;margin-bottom:8px}.rs-head b{font-size:17px}.rs-dom{color:var(--blue);font-weight:700}.rs-badge{margin-left:auto;background:var(--orange);color:#fff;font-weight:700;font-size:10px;padding:2px 8px;border-radius:2px}.rs-note{color:var(--mute);margin:0 0 12px;font-size:11px}
.rs-sum{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:8px;margin-bottom:12px}.rs-txt{background:var(--bg);padding:10px;font-size:11px;line-height:1.6;border-radius:3px}.rs-c{border:1px solid var(--line);border-radius:3px;padding:8px 10px;color:var(--mute);font-size:11px}.rs-c b{display:block;font-size:22px}.c-red{color:var(--red)}.c-org{color:var(--orange)}.c-grn{color:var(--green)}
.rs-rows{display:grid;gap:6px}.rs-rows>div{border:1px solid var(--line);border-radius:3px;padding:8px 10px;display:flex;justify-content:space-between;align-items:center}.rs-rows em{font-style:normal;font-size:10px;padding:1px 8px;border-radius:2px;color:#fff}.t-org{background:var(--orange)}.t-blu{background:var(--blue)}.rs-foot{text-align:center;color:var(--mute);margin:12px 0 0;font-weight:700}
.trace{background:#1C2140;color:#fff;padding:72px 0;position:relative;overflow:hidden}.trace::before{content:"";position:absolute;right:0;top:0;bottom:0;width:40%;background:#1F3C88;clip-path:polygon(16% 0,100% 0,100% 100%,0 100%)}.trace .wrap{position:relative}
.trace-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.trace-list li{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:4px;padding:14px 18px;font-weight:700;font-size:15px}.trace-list li::before{content:"◆ ";color:#FFE066}
.plan-desc{font-size:13.5px;color:var(--ink2);margin:0;padding:12px 20px 0}.plan.hl{border:2px solid var(--orange)}
.cases-lead{color:var(--ink2);margin:0 0 24px;max-width:760px}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.case{background:#fff;border:1px solid var(--line);border-radius:4px;padding:22px;display:flex;flex-direction:column;gap:10px}.case small{display:flex;justify-content:space-between;color:var(--blue);font-weight:700;font-size:12px}.case small em{font-style:normal;color:var(--mute);font-weight:500}.case h3{font-size:17px;margin:0;line-height:1.5}.case p{margin:0;font-size:13.5px;color:var(--ink2);flex:1}.more{color:var(--blue);font-weight:700;text-decoration:none;font-size:13.5px}
.final-in{display:grid;grid-template-columns:200px 1fr;gap:36px;align-items:center;text-align:left}.final-art{height:220px;width:auto;justify-self:center}.final h2{font-size:26px}.final p{margin:0 0 16px;color:#C9D3E6}
/* reasons */
.reason-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.reason{position:relative;background:#fff;border:1px solid var(--line);border-radius:4px;padding:28px 24px 24px 24px;display:grid;grid-template-columns:1fr 120px;gap:16px;box-shadow:0 2px 8px rgba(47,51,76,.06)}
.rno{position:absolute;left:0;top:0;background:var(--navy);color:#fff;font-size:11px;padding:4px 10px 4px 10px;border-radius:4px 0 4px 0;line-height:1.2;text-align:center}.rno b{display:block;font-size:20px;font-weight:700}
.r-body{padding-top:14px}.r-body h3{font-size:19px;margin:0 0 10px;color:var(--navy)}.r-body ul{margin:0;padding:0;list-style:none;font-size:13.5px;color:var(--ink2);display:grid;gap:5px}.r-body li::before{content:"✓";color:var(--blue);font-weight:700;margin-right:6px}
.r-tile{align-self:center;height:110px;background:var(--bg2);border-radius:4px;display:grid;place-items:center}
.tile-prog{display:grid;gap:8px;width:70%}.tile-prog i{display:block;height:8px;background:#fff;border-radius:4px}.tile-prog i.on{background:var(--blue)}
.tile-shield,.tile-fix{font-weight:700;color:var(--navy);font-size:15px;border:2px solid var(--navy);padding:8px 14px;border-radius:3px;background:#fff;text-align:center;line-height:1.3}
.tile-doc{display:grid;grid-template-columns:34px 1fr;gap:6px 8px;align-items:center;width:70%}.tile-doc b{grid-row:span 3;width:34px;height:34px;background:var(--red);color:#fff;display:grid;place-items:center;border-radius:4px;font-size:18px}.tile-doc i{display:block;height:6px;background:#fff;border-radius:3px}
/* worries */
.worry-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.worry-grid>div{background:#fff;border-left:4px solid var(--blue);padding:16px 20px;border-radius:0 4px 4px 0;box-shadow:0 1px 4px rgba(0,0,0,.05)}.worry-grid b{display:block;font-size:16px;margin-bottom:6px}.worry-grid p{margin:0;font-size:13.5px;color:var(--ink2)}
/* items */
.item-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.item-grid>div{border:1px solid var(--line);border-top:3px solid var(--navy);padding:18px 16px;border-radius:0 0 4px 4px;background:#fff}.ino{font-size:12px;color:var(--blue);font-weight:700}.item-grid h3{font-size:16px;margin:4px 0 8px}.item-grid p{margin:0;font-size:13px;color:var(--ink2)}
/* plans */
.plan-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:start}.plan{position:relative;background:#fff;border:1px solid var(--line);border-radius:4px;overflow:hidden}.plan.rec{border:2px solid var(--orange);transform:translateY(-8px)}
.plan-tag{background:var(--orange);color:#fff;text-align:center;font-weight:700;font-size:13px;padding:5px}.plan-h{text-align:center;font-weight:700;font-size:20px;padding:18px 16px 6px;color:var(--navy)}.plan-h small{display:block;font-size:12px;color:var(--mute);font-weight:400}
.plan-price{text-align:center;padding:4px 16px 14px;border-bottom:1px solid var(--line);margin:0 16px}.plan-price b{font-size:26px;color:var(--ink);background:linear-gradient(transparent 55%,var(--yellow) 55%);padding:0 6px}
.plan-list{list-style:none;margin:0;padding:16px 20px;display:grid;gap:8px;font-size:14px;min-height:190px}.plan-list li::before{content:"○";color:var(--blue);margin-right:8px;font-weight:700}.plan-list li.plus::before{content:"＋";color:var(--orange)}
.plan .cta,.plan .btn-b{margin:0 16px 18px}.plan-note{text-align:center;font-size:12px;color:var(--mute);margin:22px 0 0}
/* flow */
.flow{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative}.flow::before{content:"";position:absolute;left:12.5%;right:12.5%;top:18px;height:2px;background:var(--blue)}.flow li{text-align:center;position:relative;padding:0 14px}.flow span{display:inline-grid;place-items:center;width:36px;height:36px;background:var(--blue);color:#fff;font-weight:700;border-radius:3px;margin-bottom:12px;position:relative}.flow b{display:block;font-size:17px;margin-bottom:6px}.flow p{margin:0;font-size:13px;color:var(--ink2)}
/* data */
.data-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.data-grid>div{background:#fff;border:1px solid var(--line);border-radius:4px;padding:22px;text-align:center}.data-grid b{font-size:34px;color:var(--navy);display:block}.data-grid small{font-size:14px}.data-grid p{margin:8px 0 0;font-size:13px;color:var(--ink2);text-align:left}
.src{font-size:11.5px;color:var(--mute);margin:16px 0 0;text-align:center}
/* faq */
.faq details{border:1px solid var(--line);border-radius:4px;margin-bottom:10px;background:#fff}.faq summary{cursor:pointer;font-weight:700;font-size:16px;padding:16px 18px;list-style:none;display:flex;gap:12px;align-items:center}.faq summary::after{content:"＋";margin-left:auto;color:var(--blue);font-weight:700}.faq details[open] summary::after{content:"−"}.faq i{font-style:normal;display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--navy);color:#fff;font-size:13px;font-weight:700;flex-shrink:0}.faq details>div{display:flex;gap:12px;padding:0 18px 16px;align-items:flex-start}.faq details>div i{background:var(--orange)}.faq p{margin:2px 0 0;font-size:14px;color:var(--ink2)}
/* final */
.final{background:var(--navy);color:#fff;padding:56px 0}
/* footer */
footer.site{background:#fff;color:var(--ink);padding:40px 0 20px;border-top:1px solid var(--line)}.ft-in{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:30px}.ft-logo{height:36px;width:auto;margin-bottom:10px}.ft-brand p{color:var(--mute);font-size:12.5px;margin:0}.ft-col{display:grid;gap:8px;align-content:start}.ft-col b{color:var(--ink);font-size:13px;border-left:3px solid var(--blue);padding-left:8px}.ft-col a{color:var(--ink);text-decoration:none;font-size:13.5px}.ft-col a::before{content:"› ";color:var(--blue)}
.ft-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:30px;padding-top:14px;font-size:12px;color:var(--mute)}.ft-bottom a{color:var(--blue);text-decoration:none;font-weight:700}
/* inner pages */
.inner main{background:var(--bg);min-height:60vh;padding:36px 0 60px}
.card-page{max-width:720px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:4px;padding:36px 40px}.card-page h1{font-size:24px;margin:0 0 8px;border-left:5px solid var(--navy);padding-left:12px}.lead{color:var(--ink2);font-size:15px;margin:0 0 20px}.eyebrow{display:none}
.alert{background:#FDECEC;border-left:4px solid var(--red);padding:10px 14px;font-size:14px}.info{background:var(--bg2);border-left:4px solid var(--blue);padding:10px 14px;font-size:14px}
.form{display:grid;gap:16px;margin-top:8px}.form label{display:grid;gap:5px;font-weight:700;font-size:14px}.form input:not([type=checkbox]):not([type=radio]),.sel,textarea{font-size:15px;padding:11px 12px;border:1px solid #BBB;border-radius:3px;font-weight:400;background:#fff;font-family:inherit;width:100%}.form input:focus,textarea:focus,.sel:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 2px rgba(40,110,211,.15)}.form small{font-weight:400;color:var(--mute);font-size:12.5px}.req{justify-self:start;font-size:11px;background:var(--red);color:#fff;padding:1px 6px;border-radius:2px;margin-left:6px}.form label.check{display:block;font-weight:400;line-height:1.7}
.progress{height:10px;background:var(--bg);border-radius:5px;overflow:hidden;margin:18px 0;border:1px solid var(--line)}.bar{height:100%;background:var(--blue);transition:width .6s}
.stages{list-style:none;padding:0;margin:0;display:grid;gap:4px}.stages li{padding:9px 12px 9px 34px;position:relative;color:var(--mute);font-size:14px;background:var(--bg);border-radius:3px}.stages li::before{content:"";position:absolute;left:12px;top:14px;width:10px;height:10px;border-radius:50%;border:2px solid #CCC;background:#fff}.stages li.now{color:var(--ink);font-weight:700;background:var(--bg2)}.stages li.now::before{border-color:var(--blue)}.stages li.ok{color:var(--ink)}.stages li.ok::before{background:var(--green);border-color:var(--green)}
.done{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center;border:2px solid var(--green);background:#F0FAF4;border-radius:4px;padding:18px;margin-top:20px}.mini-gauge{width:60px;height:60px;border-radius:4px;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:28px;font-weight:700;flex-shrink:0}
/* member — competitor-like: header card + icon tabs + stepper */
.mh{max-width:960px;margin:0 auto 14px;background:#fff;border:1px solid var(--line);border-radius:4px;padding:22px 28px}.mh small{color:var(--mute);font-size:12px;font-weight:700}.mh h1{font-size:30px;margin:2px 0 14px;font-family:Roboto,"Noto Sans JP",sans-serif}
.mh-stat{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.mh-stat>div{padding:12px 16px 0 0}.mh-stat>div+div{border-left:1px solid var(--line);padding-left:16px}.mh-stat small{display:block;color:var(--mute);font-size:12px}.mh-stat b{font-size:15px}.mh-stat b.ok::before{content:"✓ ";color:var(--green)}.mh-stat b.warn::before{content:"! ";color:var(--orange)}.mh-stat b.pend::before{content:"◔ ";color:var(--blue)}
.mtabs{max-width:960px;margin:0 auto 14px;display:flex;gap:4px;border-bottom:2px solid var(--line)}.mtabs a{padding:10px 16px;text-decoration:none;color:var(--mute);font-weight:700;font-size:14px;border-bottom:3px solid transparent;margin-bottom:-2px;display:flex;gap:6px;align-items:center}.mtabs a i{font-style:normal;font-size:13px}.mtabs a.on{color:var(--ink);border-color:var(--navy)}
.panel{max-width:960px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:4px;padding:26px 30px}.panel h2{font-size:19px;margin:0 0 18px;display:flex;gap:8px;align-items:center}.panel h2 i{font-style:normal;color:var(--blue)}.panel h3{font-size:15px;margin:24px 0 8px;border-left:4px solid var(--navy);padding-left:10px}
.stepper{display:grid;grid-template-columns:repeat(3,1fr);position:relative;margin:8px 0 24px}.stepper::before{content:"";position:absolute;left:16%;right:16%;top:18px;height:2px;background:var(--line)}.stepper>div{text-align:center;position:relative;font-size:13px;font-weight:700}.stepper i{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--line);color:#fff;margin:0 auto 6px;font-style:normal;font-weight:700}.stepper .on i{background:#1C2140}
.rcards{display:grid;grid-template-columns:1fr 1fr;gap:14px}.rcard{border:1px solid var(--line);border-radius:4px;padding:16px;display:grid;grid-template-columns:52px 1fr;gap:14px;align-items:start}.rcard .ri{width:52px;height:52px;border-radius:4px;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:22px}.rcard.dim .ri{background:var(--bg);color:var(--mute)}.rcard b{display:block;font-size:16px}.rcard span{display:block;color:var(--mute);font-size:13px;margin-bottom:10px}.lnk-u{color:var(--blue);font-weight:700;font-size:13.5px;margin-left:8px}
.scorebar{display:flex;gap:14px;align-items:center;margin:22px 0 0;padding:14px;background:var(--bg);border-radius:4px}.scorebar b{font-size:20px}
.k-grade{width:48px;height:48px;border-radius:4px;display:grid;place-items:center;color:#fff;font-size:24px;font-weight:700;flex-shrink:0;background:var(--navy)}.k-grade.g-A{background:#2E9E5B}.k-grade.g-B{background:#5BB36A}.k-grade.g-C{background:#E8A317}.k-grade.g-D{background:#E8742C}.k-grade.g-E{background:#D64545}
table.findings{width:100%;border-collapse:collapse;font-size:14px;margin-top:8px}table.findings td,table.findings th{padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:top;text-align:left}table.findings th{font-size:12px;color:var(--mute);background:var(--bg)}table.findings td:first-child{width:18px}table.findings i{display:block;width:8px;height:8px;border-radius:50%;margin-top:7px}
.sev-critical i,.sev-high i{background:var(--red)}.sev-medium i{background:var(--orange)}.sev-low i{background:var(--blue)}.sev-info i{background:#BBB}
.k-token{background:var(--navy);color:#fff;padding:12px 16px;display:flex;gap:14px;align-items:center;margin:14px 0;border-radius:3px}.k-token small{opacity:.85}.k-token code{background:rgba(255,255,255,.15);color:#FFE066;font-size:15px;padding:5px 9px}
.k-methods{display:grid;gap:10px;margin-bottom:16px}.k-methods>div{border:1px solid var(--line);border-radius:3px;padding:12px 14px}.k-methods b{display:block;font-size:15px}.k-methods b span{background:var(--orange);color:#fff;font-size:10px;padding:1px 7px;border-radius:2px;margin-left:8px;vertical-align:middle}.k-methods p{margin:6px 0 4px;font-size:13px}.k-methods small{color:var(--mute);font-size:12px}
.plan-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.plan-grid3>div{border:1px solid var(--line);border-radius:4px;padding:16px;text-align:center}.plan-grid3 .cur{border:2px solid var(--navy);background:var(--bg2)}.plan-grid3 small{display:block;color:var(--mute);font-size:12px}.plan-grid3 b{display:block;font-size:18px;margin:4px 0}.plan-grid3 span{font-size:13px;color:var(--ink2)}
.nsteps{list-style:none;padding:0;margin:14px 0 18px;display:grid;gap:10px}.nsteps li{display:grid;grid-template-columns:30px 1fr;gap:12px;align-items:start}.nsteps b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--navy);color:#fff;font-size:14px}.nsteps div{font-weight:700;font-size:15px}.nsteps small{display:block;font-weight:400;color:var(--ink2);font-size:13px}
/* onboarding modal */
.onb{position:fixed;inset:0;background:rgba(28,33,64,.55);z-index:50;display:grid;place-items:center;padding:20px}.onb-card{background:#fff;border-radius:6px;width:min(680px,100%);overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.4)}
.onb-head{background:linear-gradient(105deg,#1C2140 0 55%,#1F3C88 55% 100%);color:#fff;padding:26px 28px;display:grid;grid-template-columns:1fr 140px;align-items:center;min-height:150px}.onb-bubble b{display:block;font-size:20px}.onb-bubble span{font-size:13px;color:#D9DEEC}.onb-art img{height:150px;width:auto;justify-self:end}
.onb-steps{list-style:none;padding:0;margin:0;display:flex;justify-content:space-around;border-bottom:1px solid var(--line);font-size:12px;color:var(--mute);font-weight:700}.onb-steps li{padding:12px 0;position:relative}.onb-steps li.on{color:var(--ink)}.onb-steps li.on::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--navy)}
.onb-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:22px 28px 10px}.onb-cards>div{border:1px solid var(--line);border-radius:4px;padding:16px 10px;text-align:center}.onb-cards>div.on{border:2px solid var(--navy)}.onb-cards i{font-style:normal;display:block;font-size:22px;color:var(--navy)}.onb-cards b{display:block;font-size:15px;margin:6px 0 2px}.onb-cards span{display:block;font-size:12px;color:var(--mute)}.onb-cards em{display:block;font-style:normal;font-size:11px;color:var(--blue);margin-top:6px}
.onb-note{text-align:center;background:var(--bg);margin:10px 28px;padding:8px;border-radius:3px;font-size:13px;color:var(--ink2)}.onb-note span{font-weight:700;color:var(--ink)}
.onb-actions{display:flex;justify-content:space-between;align-items:center;padding:14px 28px 22px}
.inline{display:inline}.check.inline{display:inline-flex;gap:6px;align-items:center}.dom-sel{font-size:14px;padding:6px 8px;border:1px solid var(--line);border-radius:3px;width:100%}
@media (max-width:900px){.sp{display:block}.scan-card{display:none}.scanline{display:none}.hud,.ring,.pk,.grid-bg{display:none}.hv-layer{transform:none!important}.hero-in{min-height:0;grid-template-columns:1fr}.hero h1{font-size:34px;white-space:normal}.hero-visual{height:320px}.guardian{height:300px;left:auto;right:0}.hero-mark{display:none}.stat-grid,.pain-grid,.two-col,.case-grid,.final-in{grid-template-columns:1fr}.steps4 li{grid-template-columns:1fr}.rs-sum{grid-template-columns:1fr 1fr}.h-l{font-size:24px}.hero-in,.reason-grid,.worry-grid,.plan-cards,.data-grid,.ft-in{grid-template-columns:1fr}.item-grid{grid-template-columns:1fr 1fr}.flow{grid-template-columns:1fr 1fr;gap:20px}.flow::before{display:none}.hero h1{font-size:28px}.hero h1 .em{font-size:34px}.hero-visual{display:none}.hero-badges{flex-wrap:wrap}.domain-form{flex-direction:column}.plan.rec{transform:none}.reason{grid-template-columns:1fr}.r-tile{display:none}.mh-stat,.rcards,.plan-grid3,.onb-cards{grid-template-columns:1fr}.mh-stat>div+div{border-left:0;padding-left:0}.mtabs{overflow-x:auto}.onb-head{grid-template-columns:1fr}.onb-art{display:none}.panel,.card-page{padding:18px}.logo-txt small{display:none}.topbar .tb-r{display:none}}

/* motion */
[data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}[data-reveal].is-in{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){[data-reveal]{opacity:1;transform:none;transition:none}}
.hero-fine{font-size:11px;color:#9AA3C0;margin:10px 0 0;max-width:560px}
.scanline{position:absolute;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#FFE066,transparent);opacity:.7;animation:scan 4s linear infinite;pointer-events:none}@keyframes scan{0%{top:0}100%{top:100%}}
.scan-card{position:absolute;left:0;bottom:60px;width:260px;background:rgba(14,18,40,.92);border:1px solid rgba(255,255,255,.18);border-radius:4px;padding:12px 14px;font-family:Menlo,Consolas,monospace;font-size:11.5px;color:#D9DEEC;box-shadow:0 10px 30px rgba(0,0,0,.4);backdrop-filter:blur(4px)}
.sc-h{display:flex;align-items:center;gap:8px;font-weight:700;letter-spacing:.1em;color:#FFE066;margin-bottom:8px;font-size:10.5px}.sc-h .dot{width:7px;height:7px;border-radius:50%;background:#F7790B;animation:blink 1s infinite}@keyframes blink{50%{opacity:.2}}.sc-dom{margin-left:auto;color:#9AA3C0;letter-spacing:0}
.sc-list{list-style:none;padding:0;margin:0;display:grid;gap:5px}.sc-list li{display:flex;justify-content:space-between;opacity:.25;transform:translateX(-6px);transition:opacity .35s,transform .35s;border-bottom:1px dashed rgba(255,255,255,.12);padding-bottom:4px}.sc-list li.on{opacity:1;transform:none}.sc-list em{font-style:normal;color:#7ED39A}.sc-list em.warn{color:#FFB347}
.sc-bar{height:3px;background:rgba(255,255,255,.12);margin-top:8px;border-radius:2px;overflow:hidden}.sc-bar i{display:block;height:100%;width:0;background:#FFE066}
.hero-mark{animation:markin 1.2s ease both}@keyframes markin{from{opacity:0;transform:translateY(20px)}to{opacity:.9;transform:none}}.guardian{animation:guardin 1s ease both}@keyframes guardin{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:none}}
.sticky-cta{position:fixed;left:0;right:0;bottom:0;padding:10px 16px;background:rgba(28,33,64,.95);display:none;z-index:30;text-align:center}.sticky-cta .cta{width:100%;max-width:520px}.sticky-cta.show{display:block}@media (min-width:901px){.sticky-cta{display:none!important}}
/* waiting page motion */
.stages li.now::before{animation:pulse2 1s infinite}@keyframes pulse2{50%{box-shadow:0 0 0 6px rgba(40,110,211,.15)}}
.done{animation:popin .5s ease both}@keyframes popin{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}
.stepper .on i{animation:popin .4s ease both}

@media (prefers-reduced-motion: reduce){.guardian,.ring,.pk,.eye,.hud,.grid-bg,.scanline,.hero-mark{animation:none!important}.hud{opacity:1}}
/* legal pages */
.legal{max-width:760px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:4px;padding:40px 44px;font-size:14.5px;line-height:1.9;color:var(--ink)}.legal h1{font-size:24px;margin:0 0 6px;border-left:5px solid var(--navy);padding-left:12px}.legal .upd{color:var(--ink2);font-size:13px;margin:0 0 26px}.legal h2{font-size:16px;margin:30px 0 8px;padding-bottom:6px;border-bottom:1px solid var(--line)}.legal ol,.legal ul{padding-left:1.4em;margin:6px 0}.legal li{margin:3px 0}.legal table{width:100%;border-collapse:collapse;margin:8px 0 16px}.legal th,.legal td{border:1px solid var(--line);padding:9px 12px;text-align:left;vertical-align:top}.legal th{background:var(--bg2);width:30%;font-weight:600}.legal .note{background:var(--bg2);border-left:4px solid var(--blue);padding:10px 14px;margin:14px 0}@media(max-width:900px){.legal{padding:20px 18px}.legal th{width:36%}}
