:root{
  --brand:#ed4c5c;
  --brand-dark:#d83f50;
  --brand-soft:#fff1f3;
  --ink:#222222;
  --text:#3f3f3f;
  --muted:#6a6a6a;
  --line:#dddddd;
  --line-soft:#ebebeb;
  --soft:#f7f7f7;
  --white:#ffffff;
  --radius-sm:8px;
  --radius-md:14px;
  --radius-lg:20px;
  --radius-pill:999px;
  --shadow:rgba(0,0,0,.02) 0 0 0 1px,rgba(0,0,0,.04) 0 2px 6px,rgba(0,0,0,.10) 0 4px 8px;
  --max:1180px;
  --article:860px;
  --header:76px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 18px)}
body{margin:0;background:var(--white);color:var(--ink);font-family:Inter,"Noto Sans JP",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,video{display:block;max-width:100%} a{color:inherit;text-decoration:none} button,input,select{font:inherit} button{color:inherit}
::selection{background:#ffd8de;color:var(--ink)}
.container{width:min(calc(100% - 48px),var(--max));margin-inline:auto}.container.narrow{max-width:960px}.article-container{width:min(calc(100% - 48px),var(--article));margin-inline:auto}
.section{padding:84px 0}.section-tight{padding:64px 0}.section-soft{background:var(--soft)}
.skip-link{position:fixed;z-index:9999;top:8px;left:8px;transform:translateY(-160%);padding:10px 14px;border-radius:8px;background:var(--ink);color:#fff}.skip-link:focus{transform:translateY(0)}
.material-symbols-rounded{font-variation-settings:'FILL' 0,'wght' 500,'GRAD' 0,'opsz' 24;font-size:1.18em;line-height:1;vertical-align:-.15em}

/* header */
.site-header{position:sticky;top:0;z-index:1000;height:var(--header);border-bottom:1px solid var(--line-soft);background:rgba(255,255,255,.96);backdrop-filter:blur(14px)}
.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:10px;min-width:max-content}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--brand);color:#fff;font-weight:700;font-size:15px}.brand-text{display:grid;line-height:1.08}.brand-name{font-size:16px;font-weight:700}.brand-area{margin-top:3px;color:var(--muted);font-size:9px;font-weight:600;letter-spacing:.08em}.site-header .header-brand{display:flex;align-items:center;height:100%;padding-right:6px}.site-header .header-brand .brand-name{font-family:"Noto Sans JP",sans-serif;font-size:20px;font-weight:700;line-height:1;letter-spacing:-.045em}
.nav{height:100%;display:flex;align-items:center;gap:4px}.nav a{height:100%;display:flex;align-items:center;padding:0 11px;color:var(--text);font-size:14px;font-weight:500;position:relative}.nav a::after{content:"";position:absolute;left:12px;right:12px;bottom:0;height:2px;background:var(--ink);transform:scaleX(0);transition:.18s}.nav a:hover::after,.nav a:focus-visible::after,.nav a[aria-current="page"]::after{transform:scaleX(1)}
.header-actions{display:flex;align-items:center;gap:8px}.menu-button{display:none;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:#fff;cursor:pointer}

/* buttons */
.btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 22px;border:1px solid transparent;border-radius:var(--radius-sm);font-size:15px;font-weight:600;line-height:1.2;transition:background-color .15s,border-color .15s,box-shadow .15s}.btn:focus-visible{outline:3px solid rgba(237,76,92,.2);outline-offset:2px}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover{background:var(--brand-dark)}.btn-outline{border-color:var(--ink);background:#fff}.btn-outline:hover{background:var(--soft)}.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{background:#000}.btn-small{min-height:42px;padding:10px 16px;border-radius:var(--radius-pill);font-size:14px}.btn-wide{width:100%}
.text-link{display:inline-flex;align-items:center;gap:5px;font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:3px}

/* type */
.eyebrow{display:inline-block;margin-bottom:10px;color:var(--brand);font-size:12px;font-weight:700;letter-spacing:.04em}.heading-xl,.heading-lg,.heading-md{margin:0;font-family:Inter,"Noto Sans JP",sans-serif;letter-spacing:-.025em;text-wrap:balance}.heading-xl{font-size:clamp(2.35rem,5vw,4.55rem);line-height:1.15;font-weight:700}.heading-lg{font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.35;font-weight:700}.heading-md{font-size:clamp(1.2rem,2vw,1.5rem);line-height:1.45;font-weight:600}.lead{max-width:720px;margin:14px 0 0;color:var(--muted);font-size:16px;line-height:1.8}.section-head{margin-bottom:34px}.section-head.center{text-align:center;margin-inline:auto}.section-head.center .lead{margin-inline:auto}

/* home hero */
.hero{padding:56px 0 34px}.hero-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:50px;align-items:center}.hero-copy{max-width:530px}.hero-copy .heading-xl{font-size:clamp(2.5rem,5.2vw,4.8rem)}.hero-copy .lead{margin-top:20px;color:var(--text)}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.hero-meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:24px;color:var(--muted);font-size:13px}.hero-meta span{display:inline-flex;align-items:center;gap:5px}.hero-media{position:relative;overflow:hidden;border-radius:var(--radius-lg);background:#eee;aspect-ratio:4/3}.hero-media video{width:100%;height:100%;object-fit:cover}.hero-media::after{content:"";position:absolute;inset:auto 0 0;height:36%;background:linear-gradient(to top,rgba(0,0,0,.48),transparent);pointer-events:none}.video-tag{position:absolute;z-index:2;left:22px;right:22px;bottom:18px;display:flex;align-items:end;justify-content:space-between;gap:18px;color:#fff}.video-tag strong{font-size:17px;font-weight:600}.video-tag span{font-size:11px;opacity:.86}.video-badge{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;padding:0;border:1px solid rgba(255,255,255,.72);border-radius:50%;background:rgba(255,255,255,.94);color:var(--ink);font-size:24px;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.14);transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease}.video-badge:hover{background:#fff}.video-badge:focus-visible{outline:3px solid rgba(255,255,255,.95);outline-offset:3px}.video-badge:active{transform:scale(.96)}
.proof-bar{margin-top:34px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.proof-grid{display:grid;grid-template-columns:repeat(3,1fr)}.proof-item{padding:21px 22px}.proof-item+ .proof-item{border-left:1px solid var(--line)}.proof-item strong{display:block;font-size:16px}.proof-item span{display:block;margin-top:2px;color:var(--muted);font-size:13px}

/* audience */
.problem-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.problem-card{padding:26px 24px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff}.problem-icon{display:grid;place-items:center;width:42px;height:42px;margin-bottom:32px;border-radius:50%;background:var(--brand-soft);color:var(--brand)}.problem-card h3{margin:0 0 9px;font-size:17px;line-height:1.5}.problem-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.75}

/* reasons - one clear story per row */
.reason-list{border-top:1px solid var(--line)}.reason-row{display:grid;grid-template-columns:110px 1fr 1fr;gap:34px;padding:38px 0;border-bottom:1px solid var(--line);align-items:center}.reason-no{align-self:start;color:var(--brand);font-size:12px;font-weight:700}.reason-copy h3{margin:0 0 10px;font-size:22px;line-height:1.45}.reason-copy p{margin:0;color:var(--muted);font-size:14px;line-height:1.8}.reason-visual{overflow:hidden;border-radius:var(--radius-md);background:var(--soft);aspect-ratio:16/9}.reason-visual img{width:100%;height:100%;object-fit:cover}.reason-fact{display:flex;align-items:baseline;gap:8px;margin-top:18px}.reason-fact strong{font-size:28px;line-height:1.1}.reason-fact span{color:var(--muted);font-size:12px}

/* price */
.price-shell{display:grid;grid-template-columns:.78fr 1.22fr;gap:50px;align-items:start}.price-intro{position:sticky;top:calc(var(--header) + 28px)}.price-intro .lead{font-size:15px}.price-options{display:grid;gap:12px}.price-option{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding:26px 28px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff}.price-option h3{margin:0;font-size:17px}.price-option p{margin:5px 0 0;color:var(--muted);font-size:13px}.price-number{text-align:right}.price-number strong{font-size:28px;line-height:1.15}.price-number span{display:block;color:var(--muted);font-size:12px}.price-action{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding:22px 0 0;border-top:1px solid var(--line)}.price-action p{margin:0;color:var(--muted);font-size:13px}

/* works */
.works-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-template-rows:1fr 1fr;gap:14px;min-height:540px}.work-card{position:relative;overflow:hidden;border-radius:var(--radius-md);background:var(--soft);margin:0}.work-card:first-child{grid-row:1/3}.work-card img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.work-card:hover img{transform:scale(1.018)}.work-card figcaption{position:absolute;left:12px;bottom:12px;padding:6px 10px;border-radius:var(--radius-pill);background:rgba(255,255,255,.92);font-size:12px;font-weight:600}.works-note{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-top:18px;color:var(--muted);font-size:13px}.works-note p{margin:0;max-width:720px}

/* truth teaser */
.truth-teaser{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-lg)}.truth-copy{padding:44px}.truth-copy p{margin:14px 0 0;color:var(--muted);font-size:15px;line-height:1.8}.truth-copy .btn{margin-top:24px}.truth-points{padding:38px;background:var(--ink);color:#fff}.truth-points ol{margin:0;padding:0;list-style:none;counter-reset:truth}.truth-points li{display:grid;grid-template-columns:38px 1fr;gap:10px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.16);font-size:15px}.truth-points li:last-child{border-bottom:0}.truth-points li::before{counter-increment:truth;content:"0" counter(truth);color:#ff8d9b;font-size:11px;font-weight:700}

/* faq */
.faq-list{max-width:860px;margin-inline:auto;border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{display:flex;align-items:center;gap:14px;padding:22px 2px;cursor:pointer;list-style:none;font-size:15px;font-weight:600}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::before{content:"Q";display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:50%;background:var(--soft);font-size:12px}.faq-item summary::after{content:"+";margin-left:auto;font-size:20px;font-weight:400}.faq-item[open] summary::after{content:"−"}.faq-answer{padding:0 46px 22px;color:var(--muted);font-size:14px;line-height:1.8}.faq-answer p{margin:0}

/* CTA/footer */
.cta-section{padding:0 0 84px}.cta-panel{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding:38px 40px;border-radius:var(--radius-lg);background:var(--brand);color:#fff}.cta-panel h2{margin:0;font-size:clamp(1.55rem,2.8vw,2.2rem);line-height:1.4}.cta-panel p{margin:9px 0 0;color:rgba(255,255,255,.87);font-size:14px}.cta-actions{display:flex;gap:10px}.cta-panel .btn-outline{border-color:#fff;background:#fff;color:var(--ink)}.cta-panel .btn-dark{background:var(--ink)}
.site-footer{padding:48px 0 24px;border-top:1px solid var(--line);background:#fff}.footer-grid{display:grid;grid-template-columns:1.4fr .65fr .65fr;gap:54px}.footer-about{max-width:430px;margin:15px 0 0;color:var(--muted);font-size:13px}.footer-title{margin:0 0 13px;font-size:13px;font-weight:700}.footer-links{display:grid;gap:9px}.footer-links a,.footer-links span{color:var(--muted);font-size:13px}.footer-links a:hover{text-decoration:underline;color:var(--ink)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:40px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}

/* inner pages */
.page-hero{padding:48px 0 44px;border-bottom:1px solid var(--line-soft)}.page-hero .container{max-width:960px}.breadcrumb{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px;color:var(--muted);font-size:12px}.breadcrumb a:hover{text-decoration:underline}.page-hero .heading-xl{font-size:clamp(2.15rem,4.4vw,3.55rem)}.page-hero p{max-width:700px;margin:16px 0 0;color:var(--muted);font-size:15px;line-height:1.8}

/* estimate */
.estimate-focus{padding:52px 0 82px}.estimate-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:20px;align-items:start}.estimate-panel,.estimate-result{border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff}.estimate-panel{padding:34px}.step-label{display:flex;align-items:center;gap:9px;margin:0 0 12px;font-size:13px;font-weight:700}.step-label b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--ink);color:#fff;font-size:11px}.form-block+.form-block{margin-top:28px;padding-top:28px;border-top:1px solid var(--line)}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice{position:relative}.choice input{position:absolute;opacity:0;pointer-events:none}.choice label{min-height:64px;display:flex;align-items:center;gap:10px;padding:13px 14px;border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;font-size:14px;font-weight:600}.choice label:hover{border-color:#aaa}.choice input:checked+label{padding:12px 13px;border:2px solid var(--ink);background:var(--soft)}.choice input:checked+label .material-symbols-rounded{color:var(--brand)}.choice input:focus-visible+label{outline:3px solid rgba(237,76,92,.2);outline-offset:2px}.select-wrap{position:relative}.select-wrap select{width:100%;height:58px;appearance:none;padding:0 46px 0 14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--ink);cursor:pointer}.select-wrap .material-symbols-rounded{position:absolute;right:14px;top:50%;transform:translateY(-50%);pointer-events:none}.helper{margin:10px 0 0;color:var(--muted);font-size:12px;line-height:1.65}
.estimate-result{position:sticky;top:calc(var(--header) + 24px);overflow:hidden}.result-top{padding:34px;background:var(--ink);color:#fff}.result-kicker{display:block;color:#cfcfcf;font-size:12px}.result-type{margin-top:10px;font-size:14px}.result-price{margin-top:8px;font-size:clamp(2.35rem,5vw,4.15rem);line-height:1.12;font-weight:700;letter-spacing:-.04em}.result-body{padding:28px 30px}.result-body p{margin:0;color:var(--muted);font-size:13px;line-height:1.75}.result-body .btn{margin-top:20px}.estimate-next{margin-top:16px;padding-top:16px;border-top:1px solid var(--line);display:grid;gap:8px}.estimate-next span{display:flex;gap:8px;align-items:flex-start;color:var(--text);font-size:12px}
.price-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-md)}.price-table{width:100%;border-collapse:collapse;min-width:650px}.price-table th,.price-table td{padding:17px 18px;border-bottom:1px solid var(--line);text-align:left;font-size:14px}.price-table th{background:var(--soft);font-size:12px}.price-table tr:last-child td{border-bottom:0}.price-table td:not(:first-child){font-weight:600}.notice{padding:16px 18px;border-radius:var(--radius-sm);background:var(--soft);color:var(--muted);font-size:12px;line-height:1.7}
.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.compare-card{padding:28px;border:1px solid var(--line);border-radius:var(--radius-md)}.compare-card h3{margin:0 0 14px;font-size:17px}.check-list{display:grid;gap:11px;margin:0;padding:0;list-style:none}.check-list li{display:flex;gap:9px;color:var(--text);font-size:13px}.check-list .material-symbols-rounded{margin-top:3px;color:var(--brand)}

/* truth article */
.truth-intro-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:start;margin-bottom:54px}.article-note{padding:24px;border-radius:var(--radius-md);background:var(--soft);color:var(--muted);font-size:13px;line-height:1.8}.truth-menu{border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden}.truth-menu a{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:8px;padding:15px 16px;border-bottom:1px solid var(--line);font-size:13px;font-weight:600}.truth-menu a:last-child{border-bottom:0}.truth-menu a b{color:var(--brand);font-size:11px}.truth-menu a:hover{background:var(--soft)}
.article{color:var(--text)}.truth-section{padding:54px 0;border-top:1px solid var(--line)}.truth-section:first-of-type{border-top:0}.section-number{display:inline-block;margin-bottom:12px;color:var(--brand);font-size:11px;font-weight:700}.truth-section h2{margin:0 0 22px;color:var(--ink);font-size:clamp(1.55rem,3vw,2.1rem);line-height:1.45;letter-spacing:-.02em}.truth-section p{margin:0 0 18px;font-size:15px;line-height:1.95}.truth-section strong{color:var(--ink)}.summary-box{margin:28px 0;padding:24px;border:1px solid var(--line);border-radius:var(--radius-md)}.summary-box h3{margin:0 0 15px;font-size:16px}.money-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:10px;margin:30px 0}.money-node{padding:22px 12px;border:1px solid var(--line);border-radius:var(--radius-md);text-align:center}.money-node span{display:block;color:var(--muted);font-size:11px}.money-node strong{display:block;margin-top:5px;font-size:23px}.money-arrow{color:#aaa}.cost-tags{display:flex;flex-wrap:wrap;gap:7px;margin:22px 0}.cost-tags span{padding:7px 10px;border:1px solid var(--line);border-radius:var(--radius-pill);font-size:12px}.quote-card{margin:28px 0;padding:28px;border-left:4px solid var(--brand);background:var(--soft);font-size:14px;line-height:1.8}.quote-card strong{display:block;margin-bottom:8px;font-size:22px}.style-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0}.style-card{padding:22px;border:1px solid var(--line);border-radius:var(--radius-md)}.style-card>.material-symbols-rounded{display:grid;place-items:center;width:38px;height:38px;margin-bottom:18px;border-radius:50%;background:var(--brand-soft);color:var(--brand)}.style-card h3{margin:0 0 7px;font-size:15px}.style-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.75}.contact-strip{padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--soft)}.contact-strip-inner{display:flex;justify-content:space-between;align-items:center;gap:24px}.contact-strip p{margin:0}.contact-strip strong{display:block}.contact-strip span{display:block;margin-top:2px;color:var(--muted);font-size:13px}

/* 404 */
.error-page{min-height:70vh;display:grid;place-items:center;text-align:center;padding:80px 24px}.error-page strong{font-size:72px;letter-spacing:-.05em}.error-page h1{margin:6px 0 10px;font-size:24px}.error-page p{margin:0 0 24px;color:var(--muted)}

@media (max-width:980px){
  .nav{position:fixed;top:var(--header);left:0;right:0;height:auto;display:none;padding:10px 24px 18px;border-bottom:1px solid var(--line);background:#fff}.nav.is-open{display:grid}.nav a{height:auto;padding:13px 4px;border-bottom:1px solid var(--line-soft)}.nav a:last-child{border-bottom:0}.nav a::after{display:none}.menu-button{display:grid;place-items:center}.header-actions>.btn{display:none}
  .hero-grid{grid-template-columns:1fr;gap:32px}.hero-copy{max-width:760px}.hero-media{aspect-ratio:16/9}.reason-row{grid-template-columns:70px 1fr}.reason-visual{grid-column:2}.price-shell{grid-template-columns:1fr}.price-intro{position:static}.truth-teaser{grid-template-columns:1fr}.estimate-layout{grid-template-columns:1fr}.estimate-result{position:static}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.truth-intro-grid{grid-template-columns:1fr}
}
@media (max-width:744px){
  :root{--header:68px}.container,.article-container{width:min(calc(100% - 32px),var(--max))}.section{padding:64px 0}.section-tight{padding:52px 0}.site-header{height:var(--header)}.brand-mark{width:32px;height:32px}.brand-area{display:none}
  .hero{padding:34px 0 24px}.hero-copy .heading-xl{font-size:clamp(2.25rem,11vw,3.5rem)}.hero-actions{display:grid;grid-template-columns:1fr}.hero-actions .btn{width:100%}.hero-media{border-radius:var(--radius-md);aspect-ratio:4/3}.video-tag{left:16px;right:16px;bottom:14px}.video-tag strong{font-size:14px}.proof-grid{grid-template-columns:1fr}.proof-item+ .proof-item{border-left:0;border-top:1px solid var(--line)}.proof-item{display:flex;justify-content:space-between;gap:18px;padding:15px 2px}.proof-item span{text-align:right}
  .problem-grid{grid-template-columns:1fr}.problem-card{padding:22px}.problem-icon{margin-bottom:24px}
  .reason-row{grid-template-columns:1fr;gap:16px;padding:30px 0}.reason-no{margin-bottom:0}.reason-visual{grid-column:auto;order:2}.reason-copy{order:3}.reason-fact strong{font-size:25px}
  .price-option{grid-template-columns:1fr;padding:22px}.price-number{text-align:left}.price-action{display:grid}.price-action .btn{width:100%}
  .works-grid{grid-template-columns:1fr 1fr;grid-template-rows:260px 180px 180px;min-height:0}.work-card:first-child{grid-column:1/-1;grid-row:auto}.work-card:nth-child(4),.work-card:nth-child(5){display:none}.works-note{display:grid}.truth-copy,.truth-points{padding:28px}.truth-points li{grid-template-columns:32px 1fr}
  .cta-section{padding-bottom:64px}.cta-panel{grid-template-columns:1fr;padding:28px}.cta-actions{display:grid}.cta-actions .btn{width:100%}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{display:grid}
  .page-hero{padding:34px 0 36px}.estimate-focus{padding:34px 0 64px}.estimate-panel{padding:24px}.choice-grid{grid-template-columns:1fr}.result-top{padding:28px}.result-body{padding:24px}.compare-grid{grid-template-columns:1fr}
  .truth-intro-grid{margin-bottom:30px}.truth-section{padding:42px 0}.money-flow{grid-template-columns:1fr}.money-arrow{transform:rotate(90deg);justify-self:center}.style-grid{grid-template-columns:1fr}.contact-strip-inner{display:grid}.contact-strip .btn{width:100%}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* estimate v4 — simplified decision flow */
.estimate-container{max-width:1040px}.estimate-hero{padding:48px 0 76px}.estimate-hero .breadcrumb{margin-bottom:34px}.estimate-hero-copy{max-width:760px;margin-bottom:38px}.estimate-hero-copy .heading-xl{font-size:clamp(2.2rem,4.8vw,3.9rem);line-height:1.24}.estimate-hero-copy p{max-width:650px;margin:18px 0 0;color:var(--muted);font-size:15px;line-height:1.85}.estimate-calculator{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow)}.estimate-field{margin:0;padding:30px 34px;border:0;border-bottom:1px solid var(--line-soft)}.estimate-field legend{float:left;width:100%;display:flex;align-items:center;gap:10px;margin:0 0 16px;padding:0;color:var(--ink);font-size:14px;font-weight:700}.estimate-field legend+*{clear:both}.estimate-field legend span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--ink);color:#fff;font:600 11px/1 Inter,sans-serif}.service-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.service-option{display:block;cursor:pointer}.service-option input,.size-options input{position:absolute;opacity:0;pointer-events:none}.service-option-body{min-height:82px;display:grid;grid-template-columns:38px 1fr 24px;align-items:center;gap:12px;padding:15px 16px;border:1px solid var(--line);border-radius:14px;background:#fff;transition:border-color .15s,background-color .15s}.service-option-body>.material-symbols-rounded:first-child{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--soft);color:var(--ink)}.service-option-body strong{display:block;font-size:15px}.service-option-body small{display:block;margin-top:4px;color:var(--muted);font-size:12px}.option-check{color:transparent}.service-option input:checked+.service-option-body{border:2px solid var(--ink);padding:14px 15px;background:var(--soft)}.service-option input:checked+.service-option-body .option-check{color:var(--brand)}.service-option input:focus-visible+.service-option-body,.size-options input:focus-visible+span{outline:3px solid rgba(237,76,92,.18);outline-offset:2px}.size-options{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.size-options label{cursor:pointer}.size-options span{min-height:48px;display:grid;place-items:center;padding:8px;border:1px solid var(--line);border-radius:var(--radius-pill);background:#fff;color:var(--text);font-size:12px;font-weight:600;text-align:center}.size-options input:checked+span{border-color:var(--ink);background:var(--ink);color:#fff}.estimate-answer{display:grid;grid-template-columns:1fr 310px;gap:38px;align-items:center;padding:34px;background:var(--soft)}.result-kicker{display:block;color:var(--muted);font-size:11px;font-weight:600}.answer-condition{margin:7px 0 0;color:var(--text);font-size:14px}.answer-price{margin:5px 0 0;color:var(--ink);font:700 clamp(2.45rem,5vw,4rem)/1.13 Inter,"Noto Sans JP",sans-serif;letter-spacing:-.04em}.answer-note{max-width:540px;margin:12px 0 0;color:var(--muted);font-size:12px;line-height:1.7}.answer-action>span{display:block;margin-top:10px;color:var(--muted);font-size:11px;text-align:center}.estimate-price-section{border-top:1px solid var(--line-soft);background:#fff}.estimate-section-title{display:grid;grid-template-columns:1fr 360px;gap:40px;align-items:end;margin-bottom:30px}.estimate-section-title p{margin:0;color:var(--muted);font-size:14px;line-height:1.8}.price-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.price-card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff}.price-card-head{display:flex;align-items:center;gap:13px;padding:22px 24px;border-bottom:1px solid var(--line-soft)}.price-card-head>.material-symbols-rounded{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--brand-soft);color:var(--brand)}.price-card-head h3{margin:0;font-size:16px}.price-card-head p{margin:3px 0 0;color:var(--muted);font-size:11px}.price-list{margin:0;padding:0 24px}.price-list>div{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--line-soft)}.price-list>div:last-child{border-bottom:0}.price-list dt{color:var(--muted);font-size:13px}.price-list dd{margin:0;color:var(--ink);font-size:14px;font-weight:700}.price-caution{display:flex;gap:8px;align-items:flex-start;margin:18px 0 0;color:var(--muted);font-size:11px;line-height:1.7}.price-caution .material-symbols-rounded{font-size:18px}.estimate-detail-section{padding-top:72px}.estimate-detail-intro{max-width:700px}.estimate-detail-list{margin-top:34px;border-top:1px solid var(--line)}.estimate-detail-list>div{display:grid;grid-template-columns:70px 1fr;gap:18px;padding:24px 0;border-bottom:1px solid var(--line)}.estimate-detail-list>div>span{padding-top:3px;color:var(--brand);font:700 11px/1 Inter,sans-serif}.estimate-detail-list strong{font-size:15px}.estimate-detail-list p{margin:5px 0 0;color:var(--muted);font-size:13px;line-height:1.75}.estimate-detail-link{margin-top:24px}
@media(max-width:980px){.estimate-answer{grid-template-columns:1fr}.answer-action{max-width:420px}.estimate-section-title{grid-template-columns:1fr}.size-options{grid-template-columns:repeat(3,1fr)}}
@media(max-width:744px){.estimate-hero{padding:30px 0 58px}.estimate-hero .breadcrumb{margin-bottom:24px}.estimate-hero-copy{margin-bottom:28px}.estimate-hero-copy .heading-xl{font-size:clamp(2rem,10vw,3.1rem)}.estimate-field{padding:24px 20px}.service-options{grid-template-columns:1fr}.size-options{grid-template-columns:repeat(2,1fr)}.estimate-answer{padding:26px 20px;gap:24px}.answer-price{font-size:clamp(2.15rem,12vw,3.2rem)}.answer-action{max-width:none}.estimate-section-title{gap:12px}.price-card-grid{grid-template-columns:1fr}.price-card-head{padding:20px}.price-list{padding:0 20px}.estimate-detail-list>div{grid-template-columns:44px 1fr}.estimate-detail-section{padding-top:60px}}

/* v5 — reasons without waterproof-photo dependency */
.reason-head{max-width:760px}.reason-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.reason-card{display:flex;flex-direction:column;min-height:100%;padding:28px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff}.reason-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:38px}.reason-card .reason-no{align-self:auto}.reason-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--brand-soft);color:var(--brand);font-size:22px}.reason-card h3{margin:0 0 10px;font-size:19px;line-height:1.5}.reason-card>p{margin:0;color:var(--muted);font-size:14px;line-height:1.8}.reason-detail{margin-top:auto;padding-top:24px}.reason-detail strong{display:block;font-size:14px}.reason-detail span{display:block;margin-top:4px;color:var(--muted);font-size:12px;line-height:1.6}.reason-flow{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:18px;padding:20px 24px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;color:var(--text);font-size:13px;font-weight:600}.reason-flow>.material-symbols-rounded{color:var(--muted);font-size:18px}

/* v5 — case studies preview */
.works-heading-row{display:flex;align-items:end;justify-content:space-between;gap:40px}.works-heading-row .section-head{max-width:760px}.works-all-link{margin-bottom:38px;white-space:nowrap}.case-preview-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:14px}.case-preview{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;transition:box-shadow .18s ease}.case-preview:hover{box-shadow:var(--shadow)}.case-preview-image{position:relative;overflow:hidden;aspect-ratio:4/3;background:#e9e9e9}.case-preview-main .case-preview-image{aspect-ratio:16/10}.case-preview-image img{width:100%;height:100%;object-fit:cover;transition:transform .22s ease}.case-preview:hover .case-preview-image img{transform:scale(1.018)}.case-badge{position:absolute;left:12px;top:12px;padding:6px 10px;border-radius:var(--radius-pill);background:rgba(255,255,255,.94);font-size:11px;font-weight:600}.case-preview-body{display:flex;align-items:start;justify-content:space-between;gap:18px;padding:18px}.case-preview-body>.material-symbols-rounded{font-size:20px}.case-type{display:block;margin-bottom:5px;color:var(--muted);font-size:11px}.case-preview-body h3{margin:0;font-size:15px;line-height:1.55}.works-context{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;margin-top:18px;padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff}.works-context>.material-symbols-rounded{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--brand-soft);color:var(--brand)}.works-context p{margin:0;color:var(--muted);font-size:12px;line-height:1.7}.works-context p strong{color:var(--text)}

/* v5 — works page */
.works-page-hero .container{max-width:1040px}.works-intro-section{border-bottom:1px solid var(--line-soft)}.works-intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.works-intro-copy>p{margin:0;color:var(--muted);font-size:15px;line-height:1.9}.works-keypoints{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.works-keypoints>span{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid var(--line);border-radius:var(--radius-pill);font-size:12px;font-weight:600;background:#fff}.works-keypoints .material-symbols-rounded{color:var(--brand)}.works-case-section{padding:88px 0}.works-case{display:grid;grid-template-columns:.74fr 1.26fr;gap:64px;align-items:center}.works-case-reverse{grid-template-columns:1.26fr .74fr}.works-case-reverse .works-case-copy{order:2}.works-case-reverse .works-case-gallery{order:1}.works-case-copy{max-width:440px}.case-index{display:block;color:var(--brand);font:700 11px/1 Inter,sans-serif;letter-spacing:.06em}.case-category{display:inline-flex;margin-top:14px;padding:6px 10px;border-radius:var(--radius-pill);background:var(--brand-soft);color:var(--brand-dark);font-size:11px;font-weight:700}.works-case-copy h2{margin:15px 0 0;font-size:clamp(1.65rem,3vw,2.35rem);line-height:1.4;letter-spacing:-.025em}.works-case-copy>p{margin:16px 0 0;color:var(--muted);font-size:14px;line-height:1.9}.case-facts{margin:26px 0 0;padding-top:18px;border-top:1px solid var(--line)}.case-facts>div{display:flex;justify-content:space-between;gap:20px;padding:9px 0}.case-facts dt{color:var(--muted);font-size:12px}.case-facts dd{margin:0;font-size:12px;font-weight:600}.works-case-gallery{display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:1fr 1fr;gap:12px;min-height:520px}.case-photo{position:relative;overflow:hidden;margin:0;border-radius:var(--radius-md);background:#ddd}.case-photo-large{grid-row:1/3}.case-photo img{width:100%;height:100%;object-fit:cover}.case-photo figcaption{position:absolute;left:12px;bottom:12px;padding:6px 9px;border-radius:var(--radius-pill);background:rgba(255,255,255,.94);font-size:11px;font-weight:600}.works-case-gallery-two{grid-template-columns:1fr 1fr;grid-template-rows:1fr}.works-case-gallery-two .case-photo-large{grid-row:auto}.case-photo-tall img,.case-photo-portrait img{object-position:center}.works-next-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}.works-next-list{border-top:1px solid var(--line)}.works-next-list>div{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:20px 0;border-bottom:1px solid var(--line)}.works-next-list>.material-symbols-rounded{font-size:24px}.works-next-list>div>.material-symbols-rounded{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--soft);color:var(--ink)}.works-next-list strong{font-size:14px}.works-next-list p{margin:3px 0 0;color:var(--muted);font-size:12px;line-height:1.65}

@media(max-width:980px){.reason-cards{grid-template-columns:1fr}.reason-card{min-height:0}.reason-card-top{margin-bottom:24px}.reason-detail{margin-top:24px}.reason-flow{justify-content:flex-start;overflow-x:auto}.case-preview-grid{grid-template-columns:1fr 1fr}.case-preview-main{grid-column:1/-1}.works-intro-grid,.works-case,.works-case-reverse,.works-next-grid{grid-template-columns:1fr;gap:36px}.works-case-copy{max-width:680px}.works-case-reverse .works-case-copy,.works-case-reverse .works-case-gallery{order:initial}.works-case-gallery{min-height:480px}}
@media(max-width:744px){.works-heading-row{display:block}.works-all-link{margin:-12px 0 26px}.case-preview-grid{grid-template-columns:1fr}.case-preview-main{grid-column:auto}.case-preview-image,.case-preview-main .case-preview-image{aspect-ratio:16/10}.works-context{grid-template-columns:auto 1fr}.works-context .text-link{grid-column:1/-1}.reason-flow{display:grid;grid-template-columns:1fr;justify-content:stretch;text-align:center}.reason-flow>.material-symbols-rounded{justify-self:center;transform:rotate(90deg)}.works-case-section{padding:64px 0}.works-case-gallery{grid-template-columns:1fr 1fr;grid-template-rows:260px 180px;min-height:0}.case-photo-large{grid-column:1/-1;grid-row:auto}.works-case-gallery-two{grid-template-columns:1fr 1fr;grid-template-rows:310px;min-height:0}.works-case-gallery-two .case-photo-large{grid-column:auto}.works-case-copy h2{font-size:clamp(1.55rem,8vw,2rem)}}

@media(max-width:744px){.site-header .header-brand .brand-name{font-size:18px;letter-spacing:-.04em}}

/* subsidy information — prominent near top without competing with hero */
.subsidy-section{padding:22px 0 18px}.subsidy-card{display:grid;grid-template-columns:.92fr 1.08fr;gap:34px;align-items:center;padding:28px;border:1px solid #f1dfb5;border-radius:var(--radius-lg);background:linear-gradient(135deg,#fffdf6 0%,#fff9e8 100%)}.subsidy-copy{padding:6px 0 6px 8px}.subsidy-label{display:inline-flex;align-items:center;gap:7px;margin-bottom:13px;color:#246b32;font-size:12px;font-weight:700}.subsidy-label .material-symbols-rounded{font-size:19px}.subsidy-copy h2{margin:0;color:var(--ink);font-size:clamp(1.5rem,2.5vw,2.12rem);line-height:1.45;letter-spacing:-.025em}.subsidy-copy>p{margin:14px 0 0;color:var(--text);font-size:14px;line-height:1.85}.subsidy-copy>p strong{color:#f05a28}.subsidy-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:22px}.subsidy-stats>div{min-width:0;padding:14px 12px;border:1px solid rgba(236,177,50,.34);border-radius:12px;background:rgba(255,255,255,.8)}.subsidy-stats span{display:block;color:var(--muted);font-size:10px;font-weight:600}.subsidy-stats strong{display:block;margin-top:5px;color:#f05a28;font-size:16px;line-height:1.35}.subsidy-stats small{display:block;margin-top:3px;color:var(--muted);font-size:9px;line-height:1.4}.subsidy-note{display:flex;gap:8px;align-items:flex-start;margin-top:15px;color:var(--muted)}.subsidy-note .material-symbols-rounded{flex:0 0 auto;margin-top:1px;font-size:17px}.subsidy-note p{margin:0;font-size:10px;line-height:1.65}.subsidy-cta{margin-top:18px}.subsidy-visual{overflow:hidden;margin:0;border-radius:14px;background:#fff;box-shadow:0 1px 0 rgba(0,0,0,.03)}.subsidy-visual img{display:block;width:100%;height:auto}.subsidy-visual:hover img{transform:none}
@media(max-width:980px){.subsidy-card{grid-template-columns:1fr;gap:24px}.subsidy-copy{padding:2px}.subsidy-visual{max-width:760px}}
@media(max-width:744px){.subsidy-section{padding:14px 0 4px}.subsidy-card{gap:20px;padding:20px;border-radius:var(--radius-md)}.subsidy-copy h2{font-size:clamp(1.4rem,7vw,1.8rem)}.subsidy-stats{grid-template-columns:1fr}.subsidy-stats>div{display:grid;grid-template-columns:86px 1fr;align-items:center;gap:8px;padding:12px}.subsidy-stats strong{margin-top:0}.subsidy-stats small{grid-column:2}.subsidy-cta{width:100%}.subsidy-visual{border-radius:10px}}


/* v5.1 — supplied photos: clearer wall / roof / detail examples */
.image-focus-roof{object-position:32% center!important}
.works-case-gallery-single{display:block;min-height:0}
.works-case-gallery-single .case-photo{min-height:440px;aspect-ratio:16/10}
.works-case-gallery-single .case-photo img{display:block}
.estimate-detail-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:48px;align-items:start}
.estimate-detail-visual{position:sticky;top:calc(var(--header) + 28px);overflow:hidden;margin:0;border-radius:var(--radius-lg);background:var(--soft)}
.estimate-detail-visual img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.estimate-detail-visual figcaption{padding:10px 12px;color:var(--muted);font-size:10px;line-height:1.5;background:#fff}
@media(max-width:980px){.estimate-detail-grid{grid-template-columns:1fr;gap:30px}.estimate-detail-visual{position:static;max-width:760px}.works-case-gallery-single .case-photo{min-height:0}}
@media(max-width:744px){.works-case-gallery-single{grid-template-columns:1fr;grid-template-rows:auto}.works-case-gallery-single .case-photo{min-height:0;aspect-ratio:4/3}.estimate-detail-grid{gap:24px}.estimate-detail-visual{border-radius:var(--radius-md)}}

/* v5.2 — readability & motion polish (2026-09-07)
   40〜50代の方にも読みやすい文字サイズを基準にし、
   動きは「次に見る場所が分かる」程度に抑えています。 */
:root{--muted:#595959}
body{font-size:17px;line-height:1.72}
.nav a{font-size:15px}.brand-area{font-size:11px}
.btn{min-height:50px;font-size:16px}.btn-small{min-height:44px;font-size:15px}.text-link{font-size:15px}
.eyebrow{font-size:13px}.lead{font-size:17px;line-height:1.85}
.hero-meta{font-size:14px}.video-tag span{font-size:12px}.proof-item span{font-size:14px}
.problem-card p,.reason-copy p{font-size:15px}.reason-no{font-size:13px}.reason-fact span{font-size:14px}
.price-intro .lead{font-size:17px}.price-option p,.price-action p{font-size:14px}.price-number span{font-size:13px}
.work-card figcaption{font-size:13px}.works-note{font-size:14px}
.truth-copy p,.truth-points li{font-size:16px}.truth-points li::before{font-size:12px}
.faq-item summary{font-size:16px}.faq-item summary::before{font-size:13px}.faq-answer{font-size:16px;line-height:1.85}
.cta-panel p{font-size:15px;line-height:1.75}
.footer-about,.footer-title,.footer-links a,.footer-links span{font-size:14px}.footer-bottom{font-size:13px}
.breadcrumb{font-size:13px}.page-hero p{font-size:16px;line-height:1.85}
.step-label{font-size:14px}.step-label b{font-size:12px}.choice label{font-size:15px}.helper{font-size:14px}
.result-kicker{font-size:13px}.result-type{font-size:15px}.result-body p{font-size:15px}.estimate-next span{font-size:14px}
.price-table th{font-size:13px}.price-table th,.price-table td{font-size:15px}.notice{font-size:14px}.check-list li{font-size:14px}
.article-note{font-size:15px}.truth-menu a{font-size:14px}.truth-menu a b,.section-number{font-size:12px}
.truth-section p{font-size:16px}.money-node span{font-size:13px}.cost-tags span{font-size:13px}.quote-card{font-size:16px}.style-card h3{font-size:16px}.style-card p{font-size:15px}.contact-strip span{font-size:14px}
.estimate-hero-copy p{font-size:16px}.estimate-field legend{font-size:15px}.estimate-field legend span{font-size:12px}
.service-option-body strong{font-size:16px}.service-option-body small{font-size:14px}.size-options span{font-size:14px}
.answer-condition{font-size:15px}.answer-note{font-size:14px}.answer-action>span{font-size:13px}
.estimate-section-title p{font-size:15px}.price-card-head h3{font-size:17px}.price-card-head p{font-size:13px}
.price-list dt{font-size:14px}.price-list dd{font-size:15px}.price-caution{font-size:13px}
.estimate-detail-list>div>span{font-size:13px}.estimate-detail-list strong{font-size:16px}.estimate-detail-list p{font-size:15px}
.reason-card>p{font-size:15px}.reason-detail strong{font-size:15px}.reason-detail span{font-size:14px}.reason-flow{font-size:14px}
.case-badge,.case-type{font-size:13px}.case-preview-body h3{font-size:16px}.works-context p{font-size:14px}
.works-intro-copy>p{font-size:16px}.works-keypoints>span{font-size:14px}.case-index,.case-category{font-size:13px}
.works-case-copy>p{font-size:16px}.case-facts dt,.case-facts dd{font-size:14px}.case-photo figcaption{font-size:13px}
.works-next-list strong{font-size:15px}.works-next-list p{font-size:14px}
.subsidy-label{font-size:14px}.subsidy-copy>p{font-size:16px}.subsidy-stats span{font-size:13px}.subsidy-stats strong{font-size:18px}.subsidy-stats small{font-size:12px}.subsidy-note p{font-size:13px}
.estimate-detail-visual figcaption{font-size:13px}

/* クリック領域と読みやすい余白 */
.faq-item summary{min-height:64px}.footer-links a{padding-block:2px}.works-keypoints>span{line-height:1.45}

/* スクロール時のヘッダー状態 */
.site-header{transition:box-shadow .25s ease,background-color .25s ease,border-color .25s ease}
.site-header.is-scrolled{border-bottom-color:transparent;background:rgba(255,255,255,.985);box-shadow:0 8px 28px rgba(0,0,0,.06)}

/* JSが有効な場合のみ、スクロール連動の段階表示を使う */
.motion-ready .reveal-item{opacity:0;transform:translate3d(0,22px,0);transition:opacity .62s cubic-bezier(.22,1,.36,1),transform .62s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0ms);will-change:opacity,transform}
.motion-ready .reveal-item.reveal-soft{transform:translate3d(0,14px,0) scale(.99)}
.motion-ready .reveal-item.is-visible{opacity:1;transform:translate3d(0,0,0) scale(1);will-change:auto}

/* ファーストビューは視線の流れに沿って短く表示 */
.motion-ready .hero-copy>.reveal-item{transition-duration:.68s}.motion-ready .hero-media.reveal-item{transition-duration:.78s}.motion-ready .proof-item.reveal-item{transition-duration:.52s}

/* FAQは開いた答えだけを自然に表示 */
.faq-item[open] .faq-answer{animation:faq-answer-in .28s cubic-bezier(.22,1,.36,1)}
@keyframes faq-answer-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}

/* マウス操作時だけ、押せる要素に軽い反応を付ける */
@media(hover:hover) and (pointer:fine){
  .btn{transition:transform .18s ease,background-color .18s,border-color .18s,box-shadow .18s}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,0,0,.08)}
  .btn .material-symbols-rounded,.text-link .material-symbols-rounded,.case-preview-body>.material-symbols-rounded{transition:transform .2s ease}
  .btn:hover .material-symbols-rounded,.text-link:hover .material-symbols-rounded{transform:translateX(3px)}
  .case-preview{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.case-preview:hover{transform:translateY(-4px);border-color:#d4d4d4;box-shadow:0 12px 30px rgba(0,0,0,.08)}
  .case-preview:hover .case-preview-image img{transform:scale(1.035)}.case-preview:hover .case-preview-body>.material-symbols-rounded{transform:translate(2px,-2px)}
  .reason-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.reason-card:hover{transform:translateY(-3px);border-color:#d4d4d4;box-shadow:0 10px 26px rgba(0,0,0,.06)}
  .price-option{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.price-option:hover{transform:translateX(4px);border-color:#d4d4d4;box-shadow:0 8px 22px rgba(0,0,0,.05)}
  .faq-item summary:hover{color:var(--brand-dark)}
}

@media(max-width:744px){
  body{font-size:16px;line-height:1.72}
  .lead{font-size:16px}.nav a{font-size:16px}.btn{font-size:16px;min-height:52px}
  .hero-meta,.proof-item span,.price-option p,.price-action p{font-size:14px}
  .subsidy-copy>p,.works-intro-copy>p,.works-case-copy>p,.truth-section p,.faq-answer{font-size:15px}
  .footer-about,.footer-links a,.footer-links span{font-size:14px}
  .motion-ready .reveal-item{transform:translate3d(0,16px,0)}
}

@media(prefers-reduced-motion:reduce){
  .motion-ready .reveal-item,.motion-ready .reveal-item.reveal-soft{opacity:1!important;transform:none!important;transition:none!important}
  .faq-item[open] .faq-answer{animation:none!important}
}

/* 見積もり条件を変えた時、金額が更新されたことを視覚的に伝える */
.estimate-answer.is-updating .answer-price{animation:estimate-price-update .34s cubic-bezier(.22,1,.36,1)}
@keyframes estimate-price-update{0%{opacity:.45;transform:translateY(5px)}100%{opacity:1;transform:translateY(0)}}


/* v5.3 — 公開前調整：動画の再生/停止操作 */
@media(max-width:744px){.video-badge{flex-basis:46px;width:46px;height:46px;font-size:23px}}
@media(prefers-reduced-motion:reduce){.video-badge{transition:none!important}}

/* v5.4 — subsidy status note: secondary, but still readable for 40–50s users */
.subsidy-note p strong{color:var(--text);font-weight:700}
.subsidy-note a{color:var(--ink);font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.subsidy-note a:hover{opacity:.72}
.subsidy-visual figcaption{padding:9px 12px;color:var(--muted);font-size:12px;line-height:1.6;background:#fff}
