@charset "UTF-8";
:root{--navy:#082b58;--navy2:#0e3e77;--teal:#087d83;--orange:#eb5b1b;--ink:#14263d;--muted:#5c6e82;--line:#dbe4ed;--soft:#f3f7fb;--ok:#16794a;--danger:#b42318;--shadow:0 12px 34px rgba(8,43,88,.10);--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;line-height:1.75;background:#fff}img{max-width:100%;display:block}a{color:inherit}.wrap{width:min(calc(100% - 40px),var(--max));margin:auto}.site-header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.head{min-height:76px;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:11px;color:var(--navy);font-weight:950;font-size:1.45rem;text-decoration:none;letter-spacing:-.02em;white-space:nowrap}.brand svg{width:45px;height:45px}.nav{margin-left:auto;display:flex;gap:23px;align-items:center;font-size:.9rem;font-weight:800}.nav a{text-decoration:none}.header-actions{display:flex;gap:9px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:11px 20px;border:2px solid var(--navy);border-radius:9px;text-decoration:none;font-weight:900;cursor:pointer;background:#fff;color:var(--navy);font:inherit}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--orange);border-color:var(--orange);color:#fff}.btn-teal{background:var(--teal);border-color:var(--teal);color:#fff}.btn-ghost{background:#fff}.btn-danger{background:#fff;border-color:var(--danger);color:var(--danger)}.hero{background:linear-gradient(100deg,#eef7ff 0,#fff 52%,#e4f3fb 100%)}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;min-height:595px}.hero-copy{padding:70px 30px 55px 0}.eyebrow,.kicker{color:var(--teal);font-weight:900;letter-spacing:.06em}.hero h1{font-size:clamp(2.8rem,5.1vw,4.65rem);line-height:1.14;color:var(--navy);letter-spacing:-.045em;margin:.15em 0 .35em}.hero-lead{font-size:1.18rem;font-weight:700;margin:0 0 19px}.hero-points{display:flex;gap:9px;flex-wrap:wrap;margin:22px 0}.pill{display:inline-flex;gap:7px;align-items:center;border:1px solid #b9d6e8;background:#fff;border-radius:999px;padding:7px 13px;font-weight:850;color:var(--navy)}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.hero-media{position:relative;background:url('hero-house.jpg') center/cover;min-height:595px}.hero-media:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#eef7ff 0,rgba(238,247,255,.2) 25%,transparent 45%)}.report-mock{position:absolute;right:6%;bottom:35px;width:220px;background:#14212b;border:7px solid #14212b;border-radius:28px;box-shadow:0 24px 48px rgba(0,0,0,.3)}.report-screen{background:#fff;border-radius:20px;padding:14px 12px}.report-screen h3{font-size:.84rem;text-align:center;color:var(--navy);margin:3px}.report-thumb{height:80px;border-radius:7px;background:url('hero-house.jpg') center/cover}.report-line{font-size:.68rem;border-top:1px solid var(--line);padding:7px 0;font-weight:750}.trust{background:linear-gradient(90deg,#062955,#0b4380);color:#fff}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-item{padding:25px 21px;border-right:1px solid rgba(255,255,255,.2)}.trust-item strong{display:block;font-size:1.03rem}.trust-item span{opacity:.9;font-size:.84rem}.section{padding:75px 0}.section-soft{background:var(--soft)}.section-title{max-width:820px;margin:0 auto 35px;text-align:center}.section h2,.page-hero h1{font-size:clamp(1.85rem,3.1vw,2.7rem);line-height:1.28;color:var(--navy);letter-spacing:-.025em}.section-title p{color:var(--muted)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.card,.panel{border:1px solid var(--line);border-radius:13px;background:#fff;padding:27px;box-shadow:0 7px 24px rgba(8,43,88,.055)}.card h3,.panel h2,.panel h3{color:var(--navy)}.card p{color:var(--muted)}.icon-circle{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;border:2px solid var(--teal);color:var(--teal);font-weight:950;font-size:1.3rem}.service-price{margin-top:35px;padding:22px;border:1px solid var(--line);border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:20px}.service-price .price{font-size:1.05rem}.service-price .price b{font-size:2rem;color:var(--navy)}.muted{color:var(--muted)}.small{font-size:.86rem}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.step{text-align:center}.step-num{width:38px;height:38px;border-radius:50%;background:var(--teal);color:#fff;font-weight:900;display:grid;place-items:center;margin:0 auto 10px}.step strong{display:block;color:var(--navy)}.page-hero{background:linear-gradient(115deg,#eef7ff,#fff);padding:54px 0;border-bottom:1px solid var(--line)}.page-hero p{max-width:780px}.form-shell{max-width:820px;margin:auto}.form-section{margin-bottom:22px}.form-section h2{font-size:1.25rem}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{margin-bottom:16px}.field label,.field legend{display:block;font-weight:850;color:var(--navy);margin-bottom:6px}.required{color:var(--danger);font-size:.78rem;margin-left:5px}.field input,.field select,.field textarea{width:100%;border:1px solid #bfcbd8;border-radius:8px;padding:12px 13px;font:inherit;background:#fff;color:var(--ink)}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid rgba(8,125,131,.18);border-color:var(--teal)}.field textarea{min-height:115px;resize:vertical}.choice-list{display:grid;gap:9px}.choice{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:9px;padding:12px;background:#fff}.choice input{width:auto;margin-top:6px}.notice{border-left:5px solid var(--teal);background:#edf9f8;padding:15px 17px;border-radius:8px}.warning{border-left-color:var(--orange);background:#fff5ee}.error{color:var(--danger);font-weight:800;margin-top:8px}.success{color:var(--ok);font-weight:800}.form-actions{display:flex;gap:12px;justify-content:flex-end;align-items:center;margin-top:25px}.status-box{display:none;margin-top:17px;padding:14px 16px;border-radius:9px}.status-box.show{display:block}.status-box.ok{background:#eaf7f0;color:#0d6039}.status-box.bad{background:#fff0ee;color:#8f1e16}.dashboard-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.dashboard-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.meta{background:var(--soft);border-radius:10px;padding:15px}.meta b{display:block;color:var(--navy)}.history{width:100%;border-collapse:collapse}.history th,.history td{padding:12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.history th{color:var(--navy);background:var(--soft)}details{border:1px solid var(--line);border-radius:10px;padding:15px 18px;background:#fff;margin:11px 0}summary{font-weight:900;color:var(--navy);cursor:pointer}.legal h2{margin-top:2em}.legal h3{margin-top:1.5em}.legal li{margin:.45em 0}.footer{background:#061e3d;color:#dbe8f7;padding:48px 0 85px;margin-top:0}.foot{display:grid;grid-template-columns:1.3fr .8fr .8fr;gap:28px}.footer a{color:#fff}.footer .brand{color:#fff}.mobile-bar{display:none}.hidden{display:none!important}.check-page{background:#f8fafc}.audit-table{width:100%;border-collapse:collapse;background:#fff}.audit-table th,.audit-table td{border:1px solid var(--line);padding:9px;vertical-align:top}.audit-table th{background:var(--navy);color:#fff}.audit-done{color:var(--ok);font-weight:900}.audit-block{color:#9a3412;font-weight:900}
@media(max-width:960px){.nav{display:none}.hero-grid{grid-template-columns:1fr}.hero-media{min-height:400px}.trust-grid{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.dashboard-meta{grid-template-columns:1fr 1fr}}
@media(max-width:660px){body{padding-bottom:70px}.wrap{width:min(calc(100% - 24px),var(--max))}.head{min-height:66px}.brand{font-size:1.13rem}.brand svg{width:38px;height:38px}.header-actions .btn-primary{display:none}.hero-copy{padding:38px 0 28px}.hero h1{font-size:2.35rem}.hero-lead{font-size:1rem}.hero-actions{display:grid}.hero-media{min-height:290px}.report-mock{width:155px;right:3%;bottom:12px;border-width:5px}.report-thumb{height:48px}.trust-item{padding:17px 10px;text-align:center}.section{padding:54px 0}.grid-3,.grid-2,.field-grid,.foot,.dashboard-meta{grid-template-columns:1fr}.service-price{display:block}.service-price .btn{width:100%;margin-top:12px}.steps{grid-template-columns:1fr}.step{display:grid;grid-template-columns:46px 1fr;text-align:left}.step-num{grid-row:1/3}.form-actions{display:grid}.form-actions .btn{width:100%}.dashboard-head{display:block}.history{font-size:.84rem}.mobile-bar{display:grid;grid-template-columns:1fr 1.25fr;gap:7px;position:fixed;z-index:50;bottom:0;left:0;right:0;background:#fff;padding:7px;border-top:1px solid var(--line)}.mobile-bar .btn{padding:8px 6px;font-size:.82rem}}

.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}

/* 2026-08-08 sales-ready patch: remove half-cut phone/report mock from hero */
.report-mock{display:none!important}

/* CSP-safe spacing/overflow utilities */
.mt-17{margin-top:17px}.mt-18{margin-top:18px}.mt-22{margin-top:22px}.mt-24{margin-top:24px}.mt-25{margin-top:25px}.overflow-auto{overflow:auto}

/* Final responsive typography guard */
h1,h2{text-wrap:balance}
