:root{--navy:#1e293b;--ink:#1e293b;--muted:#626d7a;--line:#dde2e6;--paper:#f5f7f8;--primary:#e11d48;--copper:#1e293b;--gold:#a8b4bd;--header-height:96px;--sticky-height:0px;font-family:'Noto Sans JP',sans-serif;color:var(--ink);background:white;font-size:16px;line-height:1.8;color-scheme:light}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}img{width:100%;height:auto;display:block}h1,h2,h3,h4,p,figure{margin:0}h1{font-size:2.75rem;line-height:1.45;letter-spacing:.035em;font-weight:700}h2{font-size:2.25rem;line-height:1.55;letter-spacing:.025em;font-weight:700}h3{font-size:1.25rem;line-height:1.65}p{font-size:1rem}a,button,summary,input{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #1671a9;outline-offset:4px}[hidden]{display:none!important}.container{width:min(1200px,calc(100% - 96px));margin-inline:auto}.section{padding-block:112px}section[id],article[id]{scroll-margin-top:calc(var(--header-height) + 24px)}.eyebrow{font-family:'Plus Jakarta Sans','Noto Sans JP',sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.14em;color:var(--muted);margin-bottom:23px}.small{font-size:.8125rem;color:var(--muted)}.skip-link{position:fixed;top:0;left:16px;transform:translateY(-150%);background:white;padding:12px;z-index:100}.skip-link:focus{transform:translateY(0)}.site-header{position:sticky;top:0;z-index:40;background:#fffffff7;border-bottom:1px solid #e8ecef}.header-inner{width:min(1440px,calc(100% - 64px));min-height:96px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand-symbol{display:grid;place-items:center;background:var(--navy);color:white;width:40px;height:40px;font-size:24px;font-weight:700;line-height:1}.brand-text{font-size:24px;font-weight:700;line-height:1.35;letter-spacing:.04em}.brand-text>span{font-size:12px;margin-left:5px;letter-spacing:0}.brand-text small{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:8px;letter-spacing:.14em;margin-top:6px;font-weight:600}.site-header nav{display:flex;gap:27px;font-size:.875rem;white-space:nowrap}.site-header nav a{padding-block:14px;position:relative}.site-header nav a:after{content:'';position:absolute;left:0;bottom:7px;width:0;height:1px;background:var(--navy);transition:width .2s}.site-header nav a:hover:after,.site-header nav [aria-current='page']:after{width:100%}.header-actions{display:flex;align-items:center;gap:23px}.header-phone{display:flex;flex-direction:column;line-height:1.5}.header-phone strong{font-family:'Plus Jakarta Sans',sans-serif;font-size:1.125rem;white-space:nowrap}.header-phone small{font-size:.625rem;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:18px 27px;min-height:60px;border:1px solid transparent;border-radius:3px;font-size:.9375rem;line-height:1.6;font-weight:700;transition:background .2s,box-shadow .2s;text-align:center}.button>span{font-size:1.2rem;line-height:1}.button.primary,.button.copper{color:white;background:var(--primary)}.button.primary:hover,.button.copper:hover{background:#bd163d;box-shadow:0 7px 16px #e11d481c}.button.navy{background:var(--navy);color:white}.header-reserve{padding:12px 18px;min-height:48px;font-size:.8125rem;gap:15px}.menu-toggle{padding:9px 12px;background:white;border:1px solid var(--line);color:var(--navy);font-size:.8125rem;min-height:44px}.hero{padding-block:64px 48px}.hero-top{display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:center}.hero-copy .eyebrow{font-size:.8125rem;letter-spacing:.03em;margin-bottom:30px}.hero h1{margin-bottom:28px;line-height:1.6}.hero-why{color:var(--muted);line-height:1.9}.hero-visual{height:410px;overflow:hidden}.hero-visual img{height:100%;object-fit:cover;object-position:50% 56%}.hero-bottom{border-top:1px solid var(--line);margin-top:38px;padding-top:30px;display:flex;justify-content:space-between;align-items:center;gap:30px}.proof{display:flex;align-items:center;gap:25px;font-size:.8125rem;color:var(--muted)}.proof-year{font-family:'Plus Jakarta Sans',sans-serif;font-size:2.25rem;line-height:1.4;color:var(--navy);letter-spacing:-.02em;padding-right:25px;border-right:1px solid var(--line)}.proof-year small{font-size:.6875rem;display:block;font-family:'Noto Sans JP',sans-serif;text-align:center;letter-spacing:.12em}.proof strong{font-weight:500;color:var(--navy)}.hero-primary{min-width:320px}.concerns{background:var(--paper)}.pas-grid{display:grid;grid-template-columns:.95fr 1fr;gap:100px;align-items:start}.concern-list{list-style:none;padding:0;margin:0 0 27px;border-bottom:1px solid var(--line)}.concern-list li{padding:13px 0;border-top:1px solid var(--line);display:flex;align-items:center;gap:14px;font-size:1rem}.concern-list li:before{content:'✓';font-size:1rem;color:var(--navy)}.pas-grid>div>p:not(.eyebrow){color:var(--muted);line-height:1.9}.pas-grid .pas-solution{color:var(--ink)!important;font-weight:500;margin:19px 0 25px}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:10px 0 9px;border-bottom:1px solid #9ba7b2;font-size:.875rem;font-weight:500;line-height:1.7}.text-link>span{font-size:1.1rem}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:36px;margin-bottom:45px}.section-heading .text-link{flex-shrink:0}.section-heading>p{max-width:360px;color:var(--muted);line-height:1.9}.strength-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.strength-card{padding:30px 26px 32px;border:1px solid var(--line);background:white}.number{font-family:'Plus Jakarta Sans',sans-serif;font-size:.875rem;color:var(--muted);display:block;margin-bottom:27px}.strength-card h3{margin-bottom:23px}.strength-card p{color:var(--muted);line-height:1.9}.lift{transition:transform .25s,box-shadow .25s}.works-pickup{background:var(--paper)}.sample-note{font-size:.8125rem;color:var(--muted);margin-bottom:30px}.pickup-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.pickup-card{min-width:0}.pickup-card>a{display:flex;flex-direction:column;height:100%}.pickup-photo{height:245px;position:relative;margin-bottom:22px;overflow:hidden}.pickup-photo img{height:100%;object-fit:cover}.pickup-photo>span{position:absolute;bottom:10px;left:10px;padding:3px 9px;background:#fffffff2;font-size:.6875rem}.pickup-card h3{margin:9px 0 14px}.pickup-card p:not(.small){color:var(--muted);margin-bottom:21px;line-height:1.9}.pickup-card .text-link{width:100%;margin-top:auto}.diagnosis-section{background:white}.diagnosis-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:76px;align-items:start}.outline-label{display:inline-block;padding:5px 13px;border:1px solid var(--line);font-size:.8125rem;margin-bottom:25px}.diagnosis-intro h2{margin-bottom:25px}.diagnosis-intro>p:not(.eyebrow){font-size:.875rem;margin-bottom:12px}.diagnosis-intro>small{font-size:.8125rem;line-height:1.9;color:var(--muted);display:block}.diagnosis-phone{margin-top:32px;border-top:1px solid var(--line);padding-top:26px;display:flex;flex-direction:column;gap:5px}.diagnosis-phone>span{font-size:.8125rem}.diagnosis-phone>a{font-family:'Plus Jakarta Sans',sans-serif;font-size:1.6rem;font-weight:700;overflow-wrap:anywhere}.diagnosis-phone>small{font-size:.75rem;color:var(--muted)}.site-footer{background:var(--paper);padding:64px 0 0;border-top:1px solid var(--line)}.footer-main{display:grid;grid-template-columns:1fr 1fr;gap:70px}.footer-main .brand{margin-bottom:25px}.footer-main p{font-size:.875rem;color:var(--muted)}.footer-phone{display:block;margin-top:15px;font-family:'Plus Jakarta Sans',sans-serif;font-size:1.4rem;font-weight:700}.footer-main nav{display:grid;grid-template-columns:1fr 1fr;align-content:start;gap:13px 35px;padding-top:10px}.footer-main nav a{padding:8px 0;border-bottom:1px solid var(--line);font-size:.875rem}.footer-bottom{margin-top:50px;padding-block:25px;border-top:1px solid var(--line);font-size:.6875rem;display:flex;justify-content:space-between;align-items:center;gap:24px;color:var(--muted)}.footer-bottom small{font-size:inherit;flex-shrink:0}.footer-bottom>div{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.mobile-sticky{display:none}.page-hero{border-bottom:1px solid var(--line)}.breadcrumb{display:block;font-size:.8125rem;color:var(--muted);margin-bottom:40px}.breadcrumb:after{content:' /';margin-left:15px;color:#9aa5b0}.page-hero h1{margin-bottom:28px}.page-lead{color:var(--muted);max-width:700px}.closing{background:var(--paper)}.closing>.container{display:flex;align-items:center;justify-content:space-between;gap:45px}.closing h2{margin-bottom:20px}.closing p:not(.eyebrow){color:var(--muted)}.closing .button{flex-shrink:0}.services-section{background:#fff}.services-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px 32px}.service-card{border:1px solid var(--line);display:flex;flex-direction:column;background:white}.service-image{position:relative}.service-image img{height:280px;object-fit:cover}.service-image>span{position:absolute;bottom:14px;left:18px;background:white;padding:3px 11px;font-family:'Plus Jakarta Sans',sans-serif;font-size:.8125rem}.service-body{padding:30px;display:flex;flex-direction:column;flex:1}.category{font-size:.8125rem;color:var(--muted);margin-bottom:8px}.service-body h3{font-size:1.5rem;margin-bottom:18px}.service-body>p:not(.category){color:var(--muted);margin-bottom:25px}.service-body>a{font-size:.875rem;border-top:1px solid var(--line);padding-top:17px;display:flex;justify-content:space-between;margin-top:auto}.other-concerns{margin-top:35px;color:var(--muted)}.materials-heading{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:35px}.materials-heading h3{font-size:2.25rem;line-height:1.55}.materials-heading p{color:var(--muted)}.materials-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.material-card{border:1px solid var(--line);background:var(--paper)}.material-card>img{height:260px;object-fit:cover}.material-card>div{padding:30px}.material-card h4{font-size:1.5rem;margin-bottom:20px}.material-card h4>span{display:block;font-size:1rem;font-weight:400;margin-top:8px}.material-card p:not(.eyebrow){color:var(--muted)}.tags{display:flex;list-style:none;flex-wrap:wrap;gap:8px;padding:0;margin:22px 0}.tags li{border:1px solid #cbd4dc;padding:4px 12px;font-size:.8125rem;background:white}.material-details summary{padding-block:16px;border-top:1px solid var(--line);cursor:pointer;font-size:.875rem}.material-details p{padding-bottom:14px}.flow-section{background:var(--paper)}.flow-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;list-style:none;padding:0;margin:0}.flow-grid li{position:relative;padding:28px;background:white;border:1px solid var(--line)}.step-number{font-family:'Plus Jakarta Sans',sans-serif;font-size:1.75rem;color:#647585}.free{position:absolute;top:30px;right:24px;background:var(--paper);border:1px solid var(--line);padding:2px 10px;font-size:.75rem}.flow-grid h3{margin:23px 0 15px;font-size:1.125rem}.flow-grid p{color:var(--muted)}.faq-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.faq-section>div>p:not(.eyebrow){color:var(--muted);margin-top:25px}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;position:relative;list-style:none;gap:14px;cursor:pointer;padding:23px 35px 23px 0;font-size:1rem}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'＋';position:absolute;right:0}.faq-list details[open] summary:after{content:'−'}.faq-list summary>span{font-family:'Plus Jakarta Sans',sans-serif;color:var(--muted)}.faq-answer{padding:0 22px 25px 32px;color:var(--muted)}.sample-notice{display:flex;gap:30px;align-items:baseline;background:var(--paper);border-left:2px solid #8c9ca9;padding:22px 25px;margin-bottom:64px;font-size:.8125rem;color:var(--muted)}.sample-notice strong{flex-shrink:0;color:var(--ink)}.works-grid{display:grid;gap:80px}.work-card{display:grid;grid-template-columns:1fr 1fr;gap:55px;padding-bottom:80px;border-bottom:1px solid var(--line)}.work-card:last-child{padding-bottom:0;border:0}.work-image{position:relative}.work-image img{height:440px;object-fit:cover}.work-image>span{position:absolute;top:16px;left:16px;background:white;padding:5px 12px;font-size:.75rem}.work-image>small{position:absolute;bottom:16px;right:16px;background:#fffffff2;padding:3px 10px;font-size:.75rem}.work-body h3{font-size:1.5rem;margin:10px 0 28px}.location{color:var(--muted);font-size:.8125rem}.before-after p{color:var(--muted)}.before-after p>span{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:.75rem;letter-spacing:.1em;color:var(--navy);margin-bottom:8px}.before-after p+p{margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}.work-metrics{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid var(--line);padding-block:20px;margin-block:25px}.work-metrics dt{color:var(--muted);font-size:.8125rem}.work-metrics dd{margin:0;font-size:.875rem}.work-metrics strong{font-family:'Plus Jakarta Sans',sans-serif;font-size:2rem;font-weight:600;margin-right:5px}.work-body>a{font-size:.875rem;display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line)}.footnote{font-size:.8125rem;color:var(--muted);margin-top:45px}.about-story{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.about-story>img{height:560px;object-fit:cover}.about-story h2{margin-bottom:32px}.about-story p:not(.eyebrow){margin-top:20px;color:var(--muted)}.company-section{background:var(--paper)}.company-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px}.company-grid dl{margin:0 0 30px}.company-grid dl>div{display:grid;grid-template-columns:115px 1fr;gap:22px;padding:19px 0;border-top:1px solid var(--line)}.company-grid dl>div:last-child{border-bottom:1px solid var(--line)}.company-grid dt{color:var(--muted);font-size:.875rem}.company-grid dd{margin:0;font-size:1rem}.company-grid dd a{text-decoration:underline;text-underline-offset:4px}
.form-panel{padding:36px 38px;background:#fff;color:var(--ink);border-top:3px solid var(--gold);box-shadow:0 15px 40px #00000020}.form-demo-label{font-size:.68rem;letter-spacing:.12em;color:var(--copper);font-weight:700;margin-bottom:25px}.form-demo-label>span{font-size:.68rem;letter-spacing:0;font-weight:400;color:var(--muted);margin-left:8px}.form-progress{display:grid;grid-template-columns:1fr 1fr;list-style:none;padding:0;margin:0 0 32px;position:relative}.form-progress li{font-size:.8rem;color:#6a737c;display:flex;align-items:center;gap:10px;padding-bottom:17px;border-bottom:2px solid #dfe3e7}.form-progress li>span{border:1px solid #cfd5dc;border-radius:50%;width:28px;height:28px;display:grid;place-items:center;font-size:.75rem;flex-shrink:0}.form-progress .current{border-bottom-color:var(--copper);color:var(--copper);font-weight:700}.form-progress .current>span{background:var(--copper);color:white;border-color:var(--copper)}fieldset{border:0;padding:0;margin:0;min-width:0}legend{font-size:1.06rem;font-weight:700;padding:0;width:100%;margin-bottom:7px}.form-help{font-size:.78rem;color:var(--muted);margin-bottom:23px}.symptom-options{display:grid;gap:12px}.symptom-options label{display:flex;align-items:center;gap:14px;border:1px solid #cbd3d8;padding:17px;cursor:pointer;transition:border-color .2s,background .2s}.symptom-options label:hover{background:#faf6f3;border-color:var(--copper)}.symptom-options label:has(input:checked){border-color:var(--copper);background:#fbf2ee}.symptom-options input{width:18px;height:18px;accent-color:var(--copper);margin:0;flex-shrink:0}.symptom-options strong{display:block;font-size:.87rem}.symptom-options small{display:block;font-size:.72rem;color:var(--muted);margin-top:3px}.symptom-options b{margin-left:auto;color:var(--copper);font-weight:400}.selection-summary{background:#f4f5f6;border-left:3px solid var(--copper);padding:14px 17px;margin-bottom:25px;position:relative}.selection-summary>span{display:block;font-size:.7rem;color:var(--muted)}.selection-summary>strong{display:block;font-size:.84rem;margin:4px 60px 0 0}.selection-summary>button{position:absolute;right:14px;top:50%;transform:translateY(-50%);border:0;border-bottom:1px solid var(--muted);background:none;padding:5px 0;font-size:.7rem;color:var(--muted);min-height:44px}.field{margin-bottom:21px}.field>label{display:flex;align-items:center;gap:12px;font-size:.82rem;font-weight:600;margin-bottom:8px}.field>label>span{background:#f6eae4;padding:1px 7px;color:var(--copper);font-size:.62rem}.field>input{border:1px solid #bfc8cf;border-radius:2px;display:block;min-height:51px;width:100%;padding:10px 13px;font-size:1rem;color:var(--ink);background:#fff}.field>input::placeholder{color:#7a838b}.field>input[aria-invalid="true"]{border:2px solid #b02b24;background:#fff8f7}.field>small{display:block;color:var(--muted);font-size:.69rem;margin-top:6px}.field-error{font-size:.76rem;color:#a62922;margin-top:5px}.consent{display:flex;gap:10px;align-items:flex-start;font-size:.75rem;cursor:pointer}.consent input{width:18px;height:18px;flex-shrink:0;margin:3px 0 0;accent-color:var(--copper)}.submit-button{width:100%;margin-top:24px;font-size:.88rem}.submit-note{font-size:.68rem;text-align:center;margin-top:10px;color:var(--muted)}.form-status{font-size:.76rem;color:var(--copper);margin-top:12px}.form-status:empty{display:none}.privacy-note{border-top:1px solid var(--line);padding-top:20px;margin-top:26px;font-size:.68rem;color:var(--muted);line-height:1.95}.privacy-note .demo-storage-note{color:var(--copper);margin-top:8px}.text-button{border:0;border-bottom:1px solid currentColor;background:transparent;color:inherit;padding:3px 0;font:inherit;cursor:pointer}.privacy-note .text-button{margin-top:10px;min-height:36px;font-size:.73rem}.noscript-note{font-size:.85rem;color:var(--copper);margin-top:20px}dialog{border:0;max-width:min(620px,calc(100% - 32px));width:620px;max-height:calc(100dvh - 48px);padding:45px 40px;color:var(--ink);overflow-y:auto;box-shadow:0 20px 80px #00000050;overscroll-behavior:contain}dialog::backdrop{background:#111c2dda;backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:14px;top:10px;border:0;background:#f1f3f5;color:var(--ink);font-size:1.6rem;width:44px;height:44px;line-height:1;display:grid;place-items:center}.success-mark{margin:auto auto 25px;width:62px;height:62px;background:var(--navy);color:white;border-radius:50%;display:grid;place-items:center;font-size:1.8rem}#success-dialog{text-align:center}#success-dialog .eyebrow{justify-content:center;font-size:.65rem;margin-bottom:14px}dialog h2{font-size:1.6rem;margin-bottom:20px}#success-description{font-size:.93rem}.dialog-demo-note{background:#f9eee8;border-left:3px solid var(--copper);padding:17px 15px;margin:25px 0;font-size:.84rem;text-align:left;line-height:1.9}.dialog-demo-note strong{color:var(--copper)}#success-symptom{font-size:.78rem;color:var(--muted);margin-bottom:24px}#success-dialog .button{width:100%}#privacy-dialog .eyebrow{font-size:.6rem;padding-right:30px}#privacy-dialog h3{font-size:1rem;margin:22px 0 10px}#privacy-dialog p,#privacy-dialog address{font-size:.85rem;line-height:2;color:var(--muted)}#privacy-dialog .policy-intro{background:#f5ede6;padding:14px;color:#793d2c}#privacy-dialog address{font-style:normal}#privacy-dialog .button{margin-top:28px;width:100%}body.dialog-open{overflow:hidden}html{scroll-padding-bottom:calc(var(--sticky-height) + 20px)}
/* Shared form retains its behavior, with the v3 visual hierarchy. */
.form-panel{border:1px solid var(--line);border-top:1px solid var(--line);padding:34px;box-shadow:none;background:var(--paper)}.form-demo-label{color:var(--muted)}.form-progress .current{border-bottom-color:var(--navy);color:var(--navy)}.form-progress .current>span{background:var(--navy)}.symptom-options label{background:white}.symptom-options label:hover,.symptom-options label:has(input:checked){background:#edf2f5;border-color:var(--navy)}.form-panel legend{font-size:1.125rem}.form-panel input{accent-color:var(--navy)}.selection-summary{background:white}.field>label>span{background:#e4eaf0;color:var(--navy)}.dialog-demo-note{background:var(--paper);border-color:var(--navy)}.dialog-demo-note strong{color:var(--navy)}#privacy-dialog .policy-intro{background:var(--paper);color:var(--navy)}.privacy-note .demo-storage-note{color:var(--muted)}.form-panel .button.copper{background:var(--primary);border-color:var(--primary);color:white}.form-panel .button.copper:hover{background:#bd163d}.dialog-close{min-height:44px}.mobile-sticky{display:none}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.lift:hover{transform:translateY(-4px);box-shadow:0 12px 24px #1e293b0e}}
@media(max-width:1200px){.header-inner{width:calc(100% - 40px);gap:18px}.site-header nav{gap:18px;font-size:.8125rem}.header-phone{display:none}.hero-top{gap:40px}.hero-visual{height:370px}.pas-grid{gap:60px}.diagnosis-grid{gap:45px}.strength-grid{gap:20px}.strength-card{padding:26px 21px}.pickup-grid{gap:22px}.pickup-photo{height:210px}.section-heading{gap:25px}.section-heading h2{max-width:750px}.about-story{gap:45px}}
@media(max-width:900px){.container{width:calc(100% - 64px)}.header-inner{min-height:84px}.hero-top{gap:30px;grid-template-columns:1.05fr 1fr}.hero h1{font-size:2.5rem}.hero-copy .eyebrow{font-size:.75rem}.hero-visual{height:350px}.hero-why br{display:none}.hero-primary{min-width:270px}.hero-bottom{gap:25px}.proof{gap:15px}.proof-year{padding-right:15px}.strength-grid{grid-template-columns:1fr}.strength-card{display:grid;grid-template-columns:35px 1fr 1.1fr;gap:25px;align-items:start;padding:30px}.strength-card h3{margin:0}.strength-card .number{margin:4px 0 0}.pickup-grid{gap:20px}.pickup-photo{height:180px}.pickup-card h3{font-size:1.1rem}.diagnosis-grid{grid-template-columns:1fr 1fr;gap:30px}.form-panel{padding:24px}.section-heading{align-items:flex-start;flex-direction:column}.pas-grid{gap:45px}.materials-heading{flex-direction:column;align-items:flex-start;gap:20px}.flow-grid{grid-template-columns:1fr 1fr}.faq-section{gap:40px;grid-template-columns:.8fr 1.2fr}.work-card{gap:35px}.work-image img{height:390px}.footer-bottom{align-items:flex-start;flex-direction:column}.closing>.container{align-items:flex-start;flex-direction:column}.company-grid{grid-template-columns:1fr;gap:40px}}
@media(max-width:850px){.header-inner{flex-wrap:wrap;gap:0;padding-block:13px;min-height:76px}.header-actions{display:none}.menu-toggle:not([hidden]){display:block}.site-header nav{width:100%;display:grid;grid-template-columns:repeat(4,1fr);margin-top:13px;border-top:1px solid var(--line);padding-top:5px;gap:0}.site-header nav a{text-align:center;white-space:normal}.site-header nav a:after{display:none}.site-header nav [aria-current='page']{font-weight:700}.diagnosis-grid{grid-template-columns:1fr;gap:45px}.diagnosis-intro{max-width:600px}.form-panel{padding:35px}.hero h1{font-size:2.25rem}.hero-primary{min-width:250px}.proof strong{font-size:.75rem}.faq-section{grid-template-columns:1fr;gap:40px}.about-story{grid-template-columns:1fr;gap:45px}.about-story>img{height:450px}.sample-notice{flex-direction:column;gap:12px}.work-card{grid-template-columns:1fr}.work-image img{height:430px}.footer-main{gap:45px}}
@media(max-width:600px){:root{--sticky-height:104px;--header-height:74px}.container{width:calc(100% - 40px)}body{padding-bottom:var(--sticky-height)}.section{padding-block:96px}h1,.hero h1{font-size:2rem}h2{font-size:1.75rem;line-height:1.6}h3{font-size:1.1875rem}p{font-size:1rem;line-height:1.8}.eyebrow{font-size:.6875rem;margin-bottom:22px}.header-inner{width:calc(100% - 32px);min-height:74px}.brand-symbol{width:34px;height:34px;font-size:22px}.brand-text{font-size:21px}.brand-text>span{font-size:10px}.brand-text small{font-size:7px}.site-header nav{grid-template-columns:1fr 1fr}.hero{padding-block:38px 42px}.hero-top{display:flex;flex-direction:column;gap:29px;align-items:stretch}.hero-copy .eyebrow{font-size:.75rem;letter-spacing:0;margin-bottom:22px}.hero h1{line-height:1.5;margin-bottom:20px}.hero-why{font-size:1rem}.hero-visual{height:178px}.hero-visual img{object-position:50% 49%}.hero-bottom{margin-top:25px;padding-top:22px;flex-direction:column;align-items:stretch;gap:22px}.proof{gap:18px;align-items:center;font-size:.8125rem}.proof-year{font-size:1.75rem;padding-right:18px}.proof-year small{font-size:.625rem}.proof strong{font-size:.8125rem}.hero-primary{width:100%;min-width:0;min-height:58px;font-size:.9375rem}.pas-grid{grid-template-columns:1fr;gap:36px}.concern-list li{font-size:1rem}.pas-solution{margin-top:22px!important}.text-link{font-size:.8125rem;gap:18px}.section-heading{margin-bottom:35px;gap:24px}.strength-grid{gap:20px}.strength-card{display:block;padding:27px 24px}.strength-card .number{margin-bottom:20px;font-size:.8125rem}.strength-card h3{margin-bottom:21px;font-size:1.25rem}.strength-card p{font-size:1rem}.pickup-grid{grid-template-columns:1fr;gap:42px}.pickup-photo{height:230px;margin-bottom:21px}.pickup-card h3{font-size:1.25rem}.pickup-card p:not(.small){font-size:1rem}.pickup-card .small{font-size:.8125rem}.pickup-card .text-link{font-size:.875rem;min-height:44px}.sample-note{font-size:.8125rem}.diagnosis-grid{gap:36px}.diagnosis-intro h2{font-size:1.75rem}.diagnosis-intro>p:not(.eyebrow){font-size:.875rem}.outline-label{font-size:.75rem}.diagnosis-phone>a{font-size:1.45rem}.form-panel{padding:26px 20px}.form-demo-label,.form-demo-label>span{font-size:.625rem}.form-progress{margin-bottom:25px}.form-progress li{font-size:.75rem;gap:8px}.form-progress li>span{width:26px;height:26px;font-size:.75rem}.form-panel legend{font-size:1rem}.symptom-options label{padding:15px 10px;gap:10px}.symptom-options strong{font-size:.8rem}.symptom-options small{font-size:.6875rem}.symptom-options b{font-size:.8rem}.symptom-options input{width:17px;height:17px}.form-help{font-size:.75rem}.selection-summary{padding:13px}.selection-summary>strong{font-size:.75rem;margin-right:52px}.selection-summary>button{right:9px;font-size:.625rem}.field>label{font-size:.8125rem}.field>small{font-size:.6875rem}.consent{font-size:.75rem}.submit-button{font-size:.8125rem;gap:12px;padding-inline:12px}.privacy-note{font-size:.6875rem}.submit-note{font-size:.6875rem}.privacy-note .text-button{font-size:.75rem}.page-hero{padding-block:96px}.breadcrumb{margin-bottom:32px;font-size:.8125rem}.page-lead{font-size:1rem}.services-grid{grid-template-columns:1fr;gap:35px}.service-image img{height:225px}.service-body{padding:27px 24px}.service-body h3{font-size:1.5rem}.category{font-size:.8125rem}.service-body p:not(.category){font-size:1rem}.service-body>a{font-size:.8125rem}.materials-heading h3{font-size:1.75rem}.materials-grid{grid-template-columns:1fr;gap:32px}.material-card>img{height:210px}.material-card>div{padding:25px}.material-card h4{font-size:1.5rem}.flow-grid{grid-template-columns:1fr;gap:20px}.flow-grid li{padding:27px}.flow-grid h3{font-size:1.1875rem}.faq-list summary{font-size:1rem;padding-right:28px;gap:10px}.faq-answer{padding-left:26px;padding-right:8px}.faq-answer p{font-size:1rem}.sample-notice{padding:20px;font-size:.8125rem;margin-bottom:45px}.works-grid{gap:60px}.work-card{gap:28px;padding-bottom:60px}.work-image img{height:255px}.work-image>span{font-size:.625rem;top:12px;left:12px}.work-image>small{font-size:.6875rem;bottom:12px;right:12px}.work-body h3{font-size:1.5rem}.before-after p{font-size:1rem}.work-body>a{font-size:.875rem}.footnote{font-size:.8125rem}.about-story>img{height:360px}.company-grid dl>div{grid-template-columns:75px 1fr;gap:15px}.company-grid dd{font-size:1rem;overflow-wrap:anywhere}.company-grid dt{font-size:.8125rem}.site-footer{padding-top:50px}.footer-main{grid-template-columns:1fr;gap:35px}.footer-main nav{gap:10px 25px}.footer-main p{font-size:.875rem}.footer-main nav a{font-size:.8125rem}.footer-bottom{margin-top:35px;font-size:.625rem;gap:15px}.footer-bottom>div{gap:12px}.footer-bottom>div>span{width:100%}.mobile-sticky{position:fixed;bottom:0;left:0;right:0;z-index:50;display:block;background:white;border-top:1px solid var(--line);padding:7px 12px calc(9px + env(safe-area-inset-bottom,0px));box-shadow:0 -3px 15px #1e293b0a}.mobile-sticky>p{font-size:.625rem;color:var(--muted);text-align:center;margin-bottom:6px}.mobile-sticky>div{display:grid;grid-template-columns:1.1fr 1fr;gap:8px}.mobile-sticky a{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:56px;line-height:1.5;border-radius:2px}.sticky-phone{background:var(--navy);color:white}.sticky-phone>span{font-size:.625rem}.sticky-phone strong{font-family:'Plus Jakarta Sans',sans-serif;font-size:.9375rem}.sticky-reserve{background:var(--primary);color:white}.sticky-reserve strong{font-size:.8125rem}.sticky-reserve>span{font-size:.625rem}a,button,input,summary,legend{scroll-margin-top:calc(var(--header-height) + 20px);scroll-margin-bottom:calc(var(--sticky-height) + 24px)}dialog{padding:44px 23px 28px;max-height:calc(100dvh - 32px)}dialog h2{font-size:1.375rem}.dialog-demo-note{font-size:.8125rem}.dialog-close{width:44px;height:44px}#privacy-dialog p,#privacy-dialog address{font-size:.875rem}}
@media(max-width:359px){.container{width:calc(100% - 32px)}.brand-text{font-size:19px}.brand-symbol{width:32px;height:32px}.hero-copy .eyebrow{font-size:.6875rem}.form-panel{padding:24px 16px}.symptom-options label{gap:8px;padding-inline:8px}.symptom-options strong{font-size:.75rem}.symptom-options small{font-size:.625rem}.proof strong{font-size:.75rem}.proof{font-size:.75rem;gap:12px}.proof-year{padding-right:12px}.sticky-reserve strong{font-size:.75rem}.sticky-phone strong{font-size:.875rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.lift:hover{transform:none!important}}
@media print{body{padding:0}.site-header{position:static}.mobile-sticky,.menu-toggle,.header-actions,dialog{display:none!important}.container{width:100%}.section{padding-block:30px}.work-card,.strength-card,.pickup-card{break-inside:avoid}}
/* v4: photography-led, quiet editorial composition inspired by the supplied reference. */
:root{--navy:#514c46;--ink:#514c46;--muted:#77716b;--line:#d9d4ce;--paper:#f3f1ec;--primary:#8c7762;--copper:#76624f;--gold:#b79e83}
h1,h2,h3,h4,.brand-text{font-family:'Noto Serif JP',serif;font-weight:500}h1{font-weight:500}h2{font-size:2rem;letter-spacing:.13em}.eyebrow{color:#9b7958;letter-spacing:.17em;font-size:.75rem}.site-header{background:#fffffff5}.header-inner{width:calc(100% - 48px);min-height:92px;gap:20px}.brand-symbol{border-radius:50%;background:transparent;border:3px double #666159;color:#666159;width:45px;height:45px;font-family:'Noto Serif JP',serif;font-size:25px}.brand-text{font-size:24px}.brand-text small{font-size:8px}.site-header nav{font-family:'Noto Serif JP',serif;font-size:.875rem;letter-spacing:.06em;gap:26px}.header-actions{align-self:stretch;gap:26px}.header-phone{justify-content:center}.header-phone strong{font-family:'Noto Serif JP',serif;font-size:1.35rem;font-weight:500}.header-reserve{border-radius:0;min-height:110px;width:144px;flex-direction:column;gap:3px;margin-bottom:-18px;z-index:2;font-family:'Noto Serif JP',serif;letter-spacing:.08em;background:#a68f77!important;color:white}.header-reserve .mail-icon{font-size:28px;font-weight:400}.button.primary,.button.copper,.form-panel .button.copper,.sticky-reserve{background:#8c7762;border-color:#8c7762}.button.primary:hover,.button.copper:hover,.form-panel .button.copper:hover{background:#75614f;box-shadow:0 7px 18px #514c4615}.reference-hero{position:relative;width:calc(100% - 160px);max-width:1440px;margin:0 auto 50px}.reference-hero figure{height:min(71vw,730px);min-height:570px}.reference-hero img{height:100%;object-fit:cover;object-position:center 60%}.hero-ribbons{position:absolute;right:-45px;bottom:80px;max-width:620px}.hero-ribbons>p{font-family:'Noto Serif JP',serif;color:#fff;background:#887560e8;padding:9px 25px;display:table;font-size:.875rem;margin:0 0 12px auto;letter-spacing:.12em}.hero-ribbons h1{text-align:right;line-height:1.65;font-size:2.75rem;letter-spacing:.17em;color:white}.hero-ribbons h1>span{display:table;margin:8px 0 8px auto;background:#ad9780ed;padding:6px 30px 10px}.hero-ribbons>a{display:flex;justify-content:space-between;gap:30px;background:#fffef9eb;color:#5b5044;font-size:.875rem;padding:13px 23px;margin:18px 0 0 auto;max-width:400px;letter-spacing:.05em;border-bottom:1px solid #bcaa97}.heritage-note{position:absolute;bottom:-24px;left:0;background:white;padding:21px 28px 18px 0;display:flex;align-items:center;gap:23px}.heritage-note strong{font-family:'Plus Jakarta Sans',sans-serif;background:#af9881;color:white;padding:4px 11px;font-size:.6875rem;letter-spacing:.12em;font-weight:400}.heritage-note>span{font-size:.8125rem;letter-spacing:.04em}.reference-reason{position:relative;padding-bottom:130px;isolation:isolate}.reference-reason:before{content:'';position:absolute;left:0;bottom:0;width:89%;height:250px;background:var(--paper);z-index:-1}.reason-heading{display:grid;grid-template-columns:.65fr 1.35fr;gap:80px;margin-bottom:65px}.reason-heading .eyebrow{margin-bottom:12px}.reason-heading h3{color:#9b7958;font-size:1.4rem;letter-spacing:.08em;margin-bottom:22px}.reason-heading p:not(.eyebrow){font-size:.9375rem;line-height:2.2;color:#68625c}.photo-reasons{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;padding-left:25px}.photo-reasons article:nth-child(2){padding-top:38px}.photo-reasons article:nth-child(3){padding-top:76px}.reason-picture{position:relative;padding-left:25px}.reason-picture img{height:355px;object-fit:cover}.reason-picture h3{position:absolute;writing-mode:vertical-rl;top:-28px;left:0;background:white;padding:19px 10px;max-height:330px;border-top:1px solid #b59574;border-left:1px solid #b59574;font-size:1.2rem;letter-spacing:.15em;line-height:1.8;font-weight:400}.reason-picture h3 span{color:#9b7958}.photo-reasons article>p{font-size:.875rem;line-height:2.1;margin:24px 0 12px;padding-left:25px}.photo-reasons article>.text-link{margin-left:25px;font-size:.8125rem}.reference-works{position:relative;background:linear-gradient(0deg,var(--paper) 0%,var(--paper) 41%,white 41%);padding-bottom:80px}.wide-container{width:min(1320px,calc(100% - 112px));margin:auto}.case-slide{display:grid;grid-template-columns:1.55fr 1fr;gap:78px;align-items:start}.case-photo{position:relative;display:block}.case-photo img{height:480px;object-fit:cover}.case-photo>span{position:absolute;bottom:14px;right:14px;background:#fffffff0;font-size:.6875rem;padding:3px 9px}.case-copy .eyebrow{margin:0 0 13px}.case-copy h2{margin-bottom:28px}.outlined-link{border:1px solid #a19991;display:flex;justify-content:space-between;padding:12px 20px;max-width:270px;font-size:.8125rem;letter-spacing:.05em}.case-description{margin-top:45px}.case-number{font-family:'Noto Serif JP',serif;font-style:italic;font-size:.875rem;color:#9f8a76}.case-description h3{font-size:1.35rem;letter-spacing:.04em;margin:12px 0 16px}.case-description p{font-size:.875rem;line-height:2;color:var(--muted);max-width:355px}.case-location{display:table;font-size:.6875rem;padding:4px 10px;background:#aaa298;color:white;margin:20px 0 11px}.case-description .text-link{font-size:.8125rem}.case-controls{display:flex;align-items:center;gap:25px;justify-content:center;width:59%;margin:20px 0 0}.case-controls>div{display:flex;gap:10px}.case-controls button{background:transparent;border:1px solid #c4bcb2;color:#766c60;min-width:36px;min-height:36px;font-size:.75rem}.case-controls button[aria-pressed='true']{background:#8c7762;color:white;border-color:#8c7762}.case-controls>button{font-size:1.1rem}.case-status{font-size:.6875rem;width:59%;text-align:center;margin-top:10px;color:var(--muted)}.reference-works .sample-note{margin:30px 0 0;font-size:.75rem;text-align:center}.reference-links{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding-block:90px}.reference-links>a{display:grid;grid-template-columns:1.1fr 1fr;border:1px solid #aaa199;min-height:180px;position:relative;overflow:hidden}.reference-links>a>div{padding:27px 24px;z-index:1}.reference-links h2{font-size:1.4rem;letter-spacing:.07em;white-space:nowrap;margin:9px 0}.reference-links>a>div>span:first-child{font-family:'Plus Jakarta Sans',sans-serif;font-size:.6875rem;letter-spacing:.13em;color:#9b7958}.reference-links img{height:100%;object-fit:cover;clip-path:polygon(25% 0,100% 0,100% 100%,0 100%)}.link-arrow{font-size:1.2rem;color:#99816a}.diagnosis-section{background:linear-gradient(#54493d57,#54493d57),url('assets/sekishu.webp') center/cover;padding-block:92px}.diagnosis-grid{background:#fffffff2;padding:55px;grid-template-columns:.9fr 1.1fr;gap:55px}.diagnosis-intro h2{font-size:2rem;letter-spacing:.15em}.diagnosis-intro .outline-label{margin-top:0}.form-panel{background:#fff;border:1px solid #d9d2ca;padding:28px}.site-footer{background:white;border:0}.footer-main{display:flex;flex-direction:column;align-items:center;gap:25px;text-align:center}.footer-main .brand{justify-content:center}.footer-main p{font-size:.8125rem}.footer-main nav{display:flex;flex-wrap:wrap;justify-content:center;gap:25px;padding:0}.footer-main nav a{border:0;font-family:'Noto Serif JP',serif}.footer-bottom{background:#5a554f;color:#fff;width:100%;padding:20px 32px;margin-top:45px}.footer-bottom>div{font-size:.625rem}.page-hero{background:#f7f5f1;border:0;width:100%;padding-left:max(48px,calc((100% - 1200px)/2));padding-right:max(48px,calc((100% - 1200px)/2))}.page-hero h1{letter-spacing:.12em}.closing{background:var(--paper)}.mobile-sticky .sticky-phone{background:#625a52}.form-progress .current>span{background:#8c7762}.dialog-demo-note{background:var(--paper)}
@media(max-width:1200px){.header-inner{width:calc(100% - 36px)}.header-reserve{width:128px}.site-header nav{gap:18px}.reference-hero{width:calc(100% - 100px)}.hero-ribbons{right:-30px}.reason-heading{gap:45px}.photo-reasons{gap:35px}.reason-picture img{height:320px}.case-slide{gap:48px}.case-photo img{height:460px}.diagnosis-grid{padding:38px;gap:35px}}
@media(max-width:900px){.reference-hero{width:calc(100% - 64px)}.reference-hero figure{min-height:550px}.hero-ribbons{right:-18px;bottom:70px}.hero-ribbons h1{font-size:2.4rem}.photo-reasons{gap:25px;padding-left:0}.reason-picture{padding-left:20px}.reason-picture img{height:300px}.reason-picture h3{font-size:1rem;padding-inline:8px}.photo-reasons article>p,.photo-reasons article>.text-link{padding-left:0;margin-left:0}.reason-heading{grid-template-columns:1fr 1.7fr;gap:30px}.case-slide{grid-template-columns:1.2fr 1fr;gap:32px}.case-photo img{height:440px}.case-description{margin-top:30px}.case-controls,.case-status{width:53%}.wide-container{width:calc(100% - 64px)}.reference-links{gap:22px}.reference-links>a{min-height:150px}.reference-links>a>div{padding:24px 16px}.reference-links h2{font-size:1.15rem}.diagnosis-grid{grid-template-columns:1fr;gap:35px}.footer-main nav{gap:18px}}
@media(max-width:850px){.header-inner{min-height:76px}.site-header nav{gap:0}.reference-links{grid-template-columns:1fr}.reference-links>a{height:180px;grid-template-columns:1fr 1fr}.reference-links h2{font-size:1.5rem}.reference-links>a>div{padding:28px}.footer-bottom{align-items:center;text-align:center}.footer-bottom>div{justify-content:center}}
@media(max-width:600px){h2{font-size:1.75rem}.site-header nav{font-size:.875rem}.header-inner{min-height:74px}.brand-symbol{width:35px;height:35px;font-size:21px}.brand-text{font-size:22px}.reference-hero{width:calc(100% - 32px);margin-bottom:40px}.reference-hero figure{height:535px;min-height:0}.reference-hero img{object-position:43% center}.hero-ribbons{right:-8px;left:12px;bottom:48px;max-width:none}.hero-ribbons>p{font-size:.6875rem;padding:8px 12px;letter-spacing:.06em;margin-bottom:9px}.hero-ribbons h1{font-size:1.875rem;letter-spacing:.1em;line-height:1.65}.hero-ribbons h1>span{padding:4px 15px 7px;margin-block:6px}.hero-ribbons>a{font-size:.75rem;padding:12px 15px;margin-top:14px;gap:15px;max-width:310px}.heritage-note{bottom:-36px;left:0;padding:15px 14px 10px 0;gap:10px;max-width:100%;align-items:center}.heritage-note strong{font-size:.5625rem;padding:4px 7px;white-space:nowrap}.heritage-note>span{font-size:.625rem;letter-spacing:0}.reference-reason{padding-block:85px 80px}.reference-reason:before{height:65%;width:92%}.reason-heading{display:block;margin-bottom:62px}.reason-heading h2{margin-bottom:27px}.reason-heading h3{font-size:1.15rem;margin-bottom:19px}.reason-heading p:not(.eyebrow){font-size:.9375rem;line-height:2}.reason-heading br{display:none}.photo-reasons{grid-template-columns:1fr;gap:58px;padding-left:15px;padding-right:12px}.photo-reasons article:nth-child(2),.photo-reasons article:nth-child(3){padding-top:0}.photo-reasons article:nth-child(2){margin-left:22px;margin-right:-12px}.reason-picture{padding-left:25px}.reason-picture img{height:350px}.reason-picture h3{font-size:1.15rem;top:-22px;max-height:300px;left:0;padding:17px 9px}.photo-reasons article>p{font-size:.9375rem;margin:22px 0 9px;padding-left:25px}.photo-reasons article>.text-link{margin-left:25px;font-size:.8125rem}.reference-works{padding-block:82px 55px;background:linear-gradient(0deg,var(--paper) 0%,var(--paper) 62%,white 62%)}.wide-container{width:calc(100% - 40px)}.case-slide{display:flex;flex-direction:column;gap:32px}.case-photo{width:100%}.case-photo img{height:270px}.case-copy{width:100%}.case-copy .eyebrow{margin-bottom:10px}.case-copy h2{margin-bottom:20px}.outlined-link{max-width:100%;font-size:.8125rem}.case-description{margin-top:28px}.case-description h3{font-size:1.3rem}.case-description p{font-size:.9375rem}.case-controls,.case-status{width:100%}.case-controls{margin-top:26px}.case-controls button{min-width:42px;min-height:42px}.reference-works .sample-note{font-size:.75rem;text-align:left;margin-top:22px}.reference-links{padding-block:65px;gap:22px}.reference-links>a{height:155px;min-height:0;grid-template-columns:1.25fr 1fr}.reference-links>a>div{padding:21px 18px}.reference-links h2{font-size:1.1rem;white-space:normal}.reference-links>a>div>span:first-child{font-size:.625rem}.diagnosis-section{padding-block:58px}.diagnosis-grid{width:calc(100% - 28px);padding:30px 18px;gap:30px}.diagnosis-intro h2{font-size:1.75rem}.diagnosis-intro .outline-label{font-size:.6875rem}.diagnosis-intro>p:not(.eyebrow){font-size:.8125rem}.form-panel{padding:24px 16px}.form-demo-label,.form-demo-label>span{font-size:.5625rem}.form-progress li{font-size:.6875rem;gap:6px}.form-panel legend{font-size:.9375rem}.symptom-options label{padding:13px 8px;gap:8px}.symptom-options strong{font-size:.75rem}.symptom-options small{font-size:.625rem}.submit-button{font-size:.75rem;gap:8px}.footer-main{gap:22px}.footer-main nav{gap:10px 20px}.footer-main nav a{font-size:.75rem}.footer-bottom{padding:20px 16px}.footer-bottom>div>span{width:100%}.page-hero{padding-inline:20px}.page-hero h1{font-size:2rem;letter-spacing:.08em}.mobile-sticky{background:#fff}.sticky-reserve strong{font-size:.8125rem}.reference-hero h1{font-weight:400}}
@media(max-width:359px){.hero-ribbons h1{font-size:1.625rem}.reference-hero figure{height:510px}.hero-ribbons>a{font-size:.6875rem}.heritage-note>span{font-size:.5625rem}.reference-links h2{font-size:1rem}.diagnosis-grid{padding-inline:13px}.form-panel{padding-inline:13px}.symptom-options strong{font-size:.6875rem}.symptom-options small{font-size:.5625rem}.sticky-reserve strong{font-size:.75rem}}
/* A clear path from first contact to a considered contract. */
.contract-flow{background:#fff;border-top:1px solid #eee9e2}
.contract-heading{display:grid;grid-template-columns:.65fr 1.35fr;gap:80px;align-items:start;margin-bottom:54px}
.contract-heading .eyebrow{margin-bottom:12px}
.contract-heading h3{font-size:1.35rem;letter-spacing:.07em;color:#85684d;margin-bottom:18px}
.contract-heading p:not(.eyebrow){font-size:.9375rem;line-height:2.1;color:var(--muted)}
.contract-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.contract-steps li{border-top:1px solid #b7a08a;padding:25px 0 0;position:relative}
.contract-steps li+li:before{content:'→';position:absolute;top:-14px;left:-24px;background:#fff;color:#aa9580;font-size:1rem;padding:0 3px}
.contract-step-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:22px}
.contract-number{font-family:'Noto Serif JP',serif;font-size:2rem;line-height:1;color:#94785c;font-weight:400}
.contract-free,.contract-agreement{font-size:.6875rem;letter-spacing:.05em;color:#776352;background:#f3f0ea;padding:4px 10px}
.contract-steps h3{font-size:1.15rem;margin-bottom:18px;letter-spacing:.03em}
.contract-steps p{font-size:.9375rem;line-height:2;color:var(--muted)}
.contract-bottom{border-top:1px solid var(--line);margin-top:42px;padding-top:28px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.contract-bottom p{font-size:.8125rem;color:var(--muted)}
.contract-bottom .outlined-link{max-width:none;flex-shrink:0;gap:25px}
:root{--primary:#856e57}
.button.primary,.button.copper,.form-panel .button.copper,.sticky-reserve{background:#856e57;border-color:#856e57}
.header-reserve{color:#fff;background:#856e57!important}
.hero-ribbons h1>span{background:#8a735bed}
.hero-ribbons>p{background:#78644feF}
@media(max-width:1250px){.header-inner{gap:16px}.site-header nav{gap:18px}.header-actions{gap:16px}.header-phone strong{font-size:1.18rem}.brand-text{font-size:22px}.header-reserve{width:128px}.contract-heading{gap:45px}}
@media(max-width:1080px){.header-phone{display:none}.site-header nav{gap:16px;font-size:.8125rem}.header-reserve{width:116px}.contract-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 32px}.contract-steps li:nth-child(3):before{display:none}.contract-bottom{align-items:flex-start;flex-direction:column;gap:20px}}
@media(max-width:850px){.site-header nav{grid-template-columns:repeat(3,1fr)}.contract-heading{grid-template-columns:1fr;gap:25px}.contract-heading h2 br{display:none}}
@media(max-width:600px){.site-header nav{grid-template-columns:repeat(2,1fr);gap:0;font-size:.875rem}.site-header nav a{min-height:44px}.contract-flow{padding-block:78px}.contract-heading{margin-bottom:38px;gap:25px}.contract-heading h3{font-size:1.125rem;line-height:1.8}.contract-heading p:not(.eyebrow){font-size:.9375rem;line-height:2}.contract-heading br{display:none}.contract-steps{grid-template-columns:1fr;gap:30px}.contract-steps li{padding:24px 0 28px 64px;border:0;border-bottom:1px solid var(--line)}.contract-steps li+li:before{content:'↓';display:block!important;top:-21px;left:12px;font-size:1rem;background:none}.contract-number{position:absolute;left:0;top:24px;font-size:1.8rem}.contract-step-top{justify-content:flex-start;margin-bottom:13px;min-height:26px}.contract-steps h3{font-size:1.2rem;margin-bottom:14px}.contract-steps p{font-size:1rem;line-height:1.9}.contract-free,.contract-agreement{font-size:.6875rem}.contract-bottom{margin-top:8px;padding-top:22px;border:0;gap:20px}.contract-bottom p{font-size:.8125rem;line-height:1.9}.contract-bottom .outlined-link{font-size:.8125rem;gap:15px;width:100%}}

@media(max-width:600px){.contract-heading h2 br{display:block}}

/* v4.1: contained hero, deliberate vertical columns and distinct section boundaries. */
.header-reserve{min-height:92px;margin-bottom:0;align-self:stretch}
.header-phone:link,.header-phone:visited,.header-phone strong{color:var(--ink);text-decoration:none;-webkit-text-fill-color:var(--ink)}
a[x-apple-data-detectors]{color:inherit!important;text-decoration:none!important}
.hero-scene{position:relative;display:grid}
.reference-hero{margin-bottom:0}
.reference-hero figure{grid-area:1/1;height:auto;min-height:570px}
.reference-hero figure img{position:absolute;inset:0;height:100%}
.hero-ribbons{position:relative;grid-area:1/1;align-self:end;justify-self:end;right:auto;left:auto;bottom:auto;width:fit-content;max-width:calc(100% - 64px);margin:240px 32px 48px;z-index:1}
.hero-ribbons h1>span,.hero-ribbons>p{max-width:100%;overflow-wrap:anywhere}
.hero-ribbons>a{max-width:100%;width:400px}
.heritage-note{position:relative;left:auto;bottom:auto;padding:24px 0;flex-wrap:wrap;max-width:100%;background:white}
.reason-picture{padding-left:42px}
.reason-picture img{height:clamp(20rem,28vw,24rem)}
.reason-picture h3{writing-mode:horizontal-tb;display:flex;flex-direction:row-reverse;align-items:flex-start;gap:7px;max-height:none;padding:18px 12px;line-height:1.65;font-size:1.125rem;letter-spacing:.12em}
.reason-picture h3>span{display:block;writing-mode:vertical-rl;white-space:nowrap}
.reason-picture h3 .reason-title-main{color:var(--ink)}
.reference-reason{background:#fff}
.reference-reason:before{display:none}
.reference-works{background:var(--paper);border-block:1px solid #e5dfd6}
.closing.section{background:#62574c;color:#fff;padding-block:80px;border-top:1px solid #53483d}
.closing .eyebrow{color:#e1cdb6}
.closing h2,.closing p{color:#fff}
.closing .button.primary{background:#fff!important;color:#514c46;border-color:#fff}
.closing .button.primary:hover{background:#f0e9df!important}
@media(min-width:901px){.hero-scene{min-height:min(71vw,730px)}}
@media(max-width:900px){.hero-ribbons{max-width:calc(100% - 48px);margin:230px 24px 40px}.reference-hero figure{min-height:550px}.reason-picture{padding-left:34px}.reason-picture h3{font-size:1rem;padding:16px 9px;gap:4px}}
@media(max-width:600px){.hero-ribbons{max-width:calc(100% - 32px);margin:230px 16px 28px}.reference-hero figure{height:auto;min-height:510px}.heritage-note{padding:18px 0;gap:8px;flex-wrap:nowrap}.reason-picture{padding-left:42px}.reason-picture h3{font-size:1.125rem;padding:17px 10px;gap:6px}.reason-picture img{height:22rem}.reference-works{background:var(--paper)}.closing.section{padding-block:64px}}
.hero-scene{grid-template-columns:minmax(0,1fr)}
.hero-ribbons{min-width:0;width:calc(100% - 64px);max-width:620px}
@media(max-width:900px){.hero-ribbons{width:calc(100% - 48px);max-width:620px}}
@media(max-width:600px){.hero-ribbons{width:calc(100% - 32px);max-width:620px}}
.closing p:not(.eyebrow){color:#f2eae2}
.site-header{background:#fff}
