:root{--navy:#0b3042;--blue:#0E9AB4;--sky:#e8f8ff;--sky2:#f5fbfe;--orange:#ff6500;--orange2:#fff0e5;--green:#00a86b;--green2:#e9fbf3;--yellow:#ffd45a;--text:#102f3e;--muted:#58717d;--line:#cfe3ec;--white:#fff;--shadow:0 14px 40px rgba(11,48,66,.10);--radius:24px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-weight:600;line-height:1.85;background:#fff}img{display:block;max-width:100%;height:auto}a{color:inherit}p{margin:0 0 1em}h1,h2,h3{margin:0 0 .55em;line-height:1.35;letter-spacing:.015em}h1{font-size:clamp(1.9rem,3.4vw,2.85rem);font-weight:900}h2{font-size:clamp(1.55rem,2.6vw,2.1rem);font-weight:900}h3{font-size:clamp(1.15rem,2vw,1.45rem);font-weight:900}.container{width:min(1180px,calc(100% - 40px));margin:auto}.narrow{width:min(850px,calc(100% - 40px));margin:auto}.eyebrow{display:inline-flex;gap:.55em;align-items:center;color:#0078ad;font-size:.83rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;margin-bottom:16px}.eyebrow:before{content:"";width:28px;height:4px;border-radius:9px;background:var(--orange)}.orange{color:var(--orange)}.green{color:var(--green)}.lead{font-size:clamp(1.05rem,1.7vw,1.25rem);font-weight:700;color:#365966}.note{font-size:.85rem;color:var(--muted);font-weight:600}.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.head-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{text-decoration:none;font-size:1.3rem;font-weight:900;line-height:1.15}.brand small{display:block;font-size:.68rem;color:var(--muted);margin-top:4px}.nav{display:flex;align-items:center;gap:20px;font-size:.9rem;font-weight:900}.nav a{text-decoration:none}.head-cta{display:flex;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 25px;border-radius:13px;text-decoration:none;font-weight:900;border:2px solid var(--blue);background:#fff;color:var(--navy);box-shadow:0 8px 18px rgba(11,48,66,.08);transition:.2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--orange);border-color:var(--orange);color:#fff}.btn-line{background:var(--green);border-color:var(--green);color:#fff}.btn-dark{background:var(--navy);border-color:var(--navy);color:#fff}.hero{padding:76px 0 54px;background:linear-gradient(135deg,#effbff 0%,#dff6ff 58%,#fff8ed 100%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:44px}.hero-copy .lead{max-width:690px}.hero-visual{border-radius:28px;overflow:hidden;background:#fff;box-shadow:var(--shadow);border:1px solid rgba(0,159,227,.2)}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:28px 0 18px}.trust-row{display:flex;gap:10px;flex-wrap:wrap}.trust{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;background:#fff;border-radius:999px;border:1px solid var(--line);font-size:.8rem;font-weight:900}.trust:before{content:"✓";color:var(--green)}.subnav{background:var(--navy);color:#fff}.subnav .container{display:flex;gap:0;overflow-x:auto}.subnav a{white-space:nowrap;text-decoration:none;padding:15px 17px;font-size:.84rem;font-weight:900;border-bottom:4px solid transparent}.subnav a:hover,.subnav a[aria-current="page"]{background:rgba(255,255,255,.08);border-color:var(--orange)}.section{padding:86px 0}.section-sky{background:var(--sky2)}.section-blue{background:var(--sky)}.section-dark{background:var(--navy);color:#fff}.center{text-align:center}.section-head{max-width:780px;margin:0 auto 38px}.grid{display:grid;gap:22px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:27px;box-shadow:0 10px 30px rgba(11,48,66,.055)}.card-accent{border-top:7px solid var(--blue)}.card-orange{border-top-color:var(--orange)}.card-green{border-top-color:var(--green)}.num{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--blue);color:#fff;font-weight:900;margin-bottom:15px}.icon{font-size:2rem;margin-bottom:8px}.decision{background:#fff;border:3px solid var(--orange);border-radius:28px;padding:34px;box-shadow:var(--shadow)}.figure{background:#fff;border-radius:26px;padding:18px;border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden}.figure img{width:100%;border-radius:17px}.caption{margin:12px 5px 0;color:var(--muted);font-size:.82rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}.checklist{list-style:none;padding:0;margin:18px 0}.checklist li{position:relative;padding:10px 0 10px 34px;border-bottom:1px solid var(--line)}.checklist li:before{content:"✓";position:absolute;left:0;top:10px;color:var(--green);font-weight:900}.caution{background:var(--orange2);border:2px solid #ffb276;border-radius:18px;padding:20px;color:#6b3106}.good{background:var(--green2);border:2px solid #82dcb8;border-radius:18px;padding:20px;color:#064d36}.table-wrap{overflow-x:auto;border-radius:20px;border:1px solid var(--line);background:#fff}.table{width:100%;border-collapse:collapse;min-width:700px}.table th,.table td{padding:18px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.table th{background:var(--navy);color:#fff}.table tr:last-child td{border-bottom:0}.link-card{text-decoration:none;display:block;height:100%;transition:.2s}.link-card:hover{transform:translateY(-4px);border-color:var(--blue)}.link-card .arrow{color:var(--orange);font-weight:900}.product-tag{display:inline-block;padding:6px 10px;border-radius:999px;background:var(--sky);color:#006a98;font-size:.78rem;font-weight:900;margin-bottom:10px}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.fact{background:var(--sky2);border:1px solid var(--line);padding:17px;border-radius:16px}.fact strong{display:block;font-size:1.45rem;color:var(--navy)}.steps{counter-reset:step}.step{display:grid;grid-template-columns:70px 1fr;gap:18px;padding:23px 0;border-bottom:1px solid var(--line)}.step:before{counter-increment:step;content:counter(step);display:grid;place-items:center;width:54px;height:54px;background:var(--orange);color:#fff;border-radius:50%;font-size:1.2rem;font-weight:900}.faq details{background:#fff;border:1px solid var(--line);border-radius:14px;margin:10px 0;padding:0 20px}.faq summary{cursor:pointer;list-style:none;padding:19px 42px 19px 0;font-weight:900;position:relative}.faq summary:after{content:"＋";position:absolute;right:0;color:var(--blue)}.faq details[open] summary:after{content:"－"}.faq details p{padding:0 0 20px;color:#365966}.cta{padding:64px 0;background:linear-gradient(135deg,#DFF4F8,#fff0e2)}.cta-box{background:#fff;border:3px solid var(--blue);border-radius:30px;padding:38px;text-align:center;box-shadow:var(--shadow)}.cta-actions{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px;margin-top:24px}.footer{background:#0B6F81;color:#fff;padding:48px 0 100px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:35px}.footer a{color:#fff}.footer small{color:#c2d9e3}.mobile-fixed{display:none}.breadcrumbs{font-size:.8rem;color:var(--muted);padding:13px 0}.breadcrumbs a{color:#087cad}.source-list{font-size:.86rem;color:var(--muted)}.source-list li{margin:.6em 0}.badge-live{display:inline-block;background:#fff4cc;color:#6b5100;border:1px solid #ecd36b;border-radius:8px;padding:4px 8px;font-size:.76rem}.hero-small{padding:54px 0;background:linear-gradient(135deg,#effbff,#fff6e9)}.hero-small h1{font-size:clamp(1.8rem,3vw,2.5rem)}
@media(max-width:900px){.nav{display:none}.hero-grid,.split{grid-template-columns:1fr}.hero-visual{order:-1}.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}.cta-actions{grid-template-columns:1fr}.facts{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.head-cta .btn:first-child{display:none}}
@media(max-width:620px){body{font-weight:600}.container,.narrow{width:min(100% - 28px,1180px)}.head-inner{height:65px}.brand{font-size:1.06rem}.brand small{font-size:.58rem}.head-cta .btn{min-height:44px;padding:0 13px;font-size:.82rem}.hero{padding:38px 0 36px}.hero-small{padding:34px 0}.hero-grid{gap:24px}.hero-actions .btn{width:100%}.section{padding:62px 0}.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}.card{padding:22px}.decision{padding:23px}.figure{padding:8px;border-radius:18px}.footer-grid{grid-template-columns:1fr}.mobile-fixed{display:grid;grid-template-columns:1fr 1fr;position:fixed;z-index:60;bottom:0;left:0;right:0;padding:8px;background:rgba(255,255,255,.97);box-shadow:0 -8px 25px rgba(11,48,66,.15)}.mobile-fixed .btn{border-radius:10px;min-height:51px;padding:0 8px;font-size:.82rem}.cta-box{padding:24px 18px}.subnav a{padding:12px 14px}.step{grid-template-columns:52px 1fr}.step:before{width:44px;height:44px}.hero-visual img{min-height:230px;object-fit:cover}.caption{font-size:.75rem}}

/* === a11y overrides v1.1 (2026-08-24): WCAG AA 実測是正 ===
   白文字×オレンジ/ブルー/グリーンの不足、オレンジ文字×白の不足、
   インラインリンクのタップ領域を site 共通規格へ合わせる */
.orange{color:#A64000}
.eyebrow{color:#0B6F81}
.btn-primary,.btn-primary:hover{color:#102F40}
.btn-line,.btn-line:hover{background:#00805A;border-color:#00805A;color:#fff}
.num{background:#0B6F81}
.step:before{background:#FF6B00;color:#102F40}
.link-card .arrow{color:#A64000}
a.text-link{color:#0B6F81;display:inline-flex;align-items:center;min-height:44px}
.source-list a{display:inline-flex;align-items:center;min-height:44px}
.breadcrumbs a{color:#0B6F81}
a.arrow{display:inline-flex;align-items:center;min-height:44px;color:#A64000;font-weight:900}

/* v1.2: HUB navigation and decision-led product presentation */
.subnav{position:sticky;top:0;z-index:45;border-bottom:1px solid var(--line)}
.subnav .container{scrollbar-width:thin;scrollbar-color:#9fcfe2 transparent;overscroll-behavior-x:contain}
.subnav .container:after{content:"→";position:sticky;right:0;display:grid;place-items:center;min-width:42px;color:#0B6F81;background:linear-gradient(90deg,rgba(255,255,255,0),#fff 42%);pointer-events:none}
.subnav a[aria-current="page"]{font-weight:900}
.recommendation{border:3px solid var(--orange);background:linear-gradient(145deg,#fff 0%,#fff8f0 100%);position:relative}
.recommendation:before{content:"第一候補として比較";display:inline-block;margin-bottom:10px;padding:6px 11px;border-radius:999px;background:var(--orange);color:#102F40;font-size:.78rem;font-weight:900}
.subsidy-panel{background:#fff;border:2px solid var(--blue);border-radius:22px;padding:26px;box-shadow:var(--shadow)}
.subsidy-panel .amount{font-size:clamp(1.45rem,3vw,2.2rem);font-weight:900;color:#0B6F81;line-height:1.35}
.source-status{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border-radius:999px;background:var(--green2);color:#064d36;font-size:.78rem;font-weight:900}
.source-status:before{content:"✓"}
@media(max-width:620px){.subnav{position:relative}.subnav .container:after{min-width:34px}.recommendation:before{font-size:.72rem}}
