:root{--olive:#506237;--olive-dark:#344429;--cream:#f6f2e9;--paper:#fffefb;--terra:#b74e2e;--ink:#302e27;--muted:#68665c;--line:#168344;--border:#d9dace;--serif:'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',serif;--sans:'Yu Gothic','Hiragino Kaku Gothic ProN','Noto Sans JP',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.85;-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--serif);font-weight:600;line-height:1.55;letter-spacing:.025em;text-wrap:balance}h1{font-size:clamp(2.5rem,4.25vw,4.1rem)}h2{font-size:clamp(1.8rem,3vw,2.8rem)}h3{font-size:1.17rem;line-height:1.65}p+p{margin-top:1rem}em{font-style:normal;color:var(--terra)}a{color:inherit;text-underline-offset:5px}a,button{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button,a{touch-action:manipulation}:focus-visible{outline:3px solid var(--terra);outline-offset:5px}img{display:block;max-width:100%;height:auto}small{font-size:.875rem}ul{padding-left:1.3em}.container{width:min(1160px,calc(100% - 96px));margin-inline:auto}.narrow{max-width:850px}.section{padding:92px 0}.tinted{background:var(--cream)}.eyebrow{font-family:var(--sans);font-size:.88rem;letter-spacing:.09em;font-weight:700;color:var(--olive);margin-bottom:16px}.section-top{display:flex;justify-content:space-between;align-items:center;gap:50px;margin-bottom:38px}.section-top>p{max-width:480px;color:var(--muted)}.section-intro{max-width:720px;margin-top:24px}.note{font-size:.85rem;color:var(--muted);line-height:1.85}.number{font-size:1rem;color:var(--terra);display:block;font-weight:600;margin-bottom:14px;letter-spacing:.12em}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:56px;padding:14px 26px;border-radius:5px;text-decoration:none;font-weight:700;font-size:1rem;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button.line{background:var(--line);color:white}.button.line:hover{background:#116b37}.button span{font-size:1.25rem}.text-link{color:var(--olive);font-weight:700;font-size:.95rem}.header{position:sticky;top:0;z-index:20;background:rgba(255,254,251,.98);min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:26px;padding:15px 4vw;border-bottom:1px solid #e7e5dd}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:1.45rem;font-weight:700;letter-spacing:.04em;line-height:1.4;white-space:nowrap}.brand-mark{background:var(--olive);color:#fff;border-radius:3px;display:grid;place-items:center;width:42px;height:44px;font-family:var(--serif);font-size:1.6rem}.brand small{display:block;font-size:.69rem;font-weight:500;letter-spacing:.1em;margin-top:3px}.desktop-nav{display:flex;gap:25px;align-items:center;margin-left:auto}.desktop-nav a{font-size:.875rem;text-decoration:none}.desktop-nav a:hover{color:var(--terra)}.header-cta{min-height:45px;padding:10px 18px;font-size:.875rem}.menu-toggle{display:none}.mobile-menu[hidden]{display:none}.mobile-menu{position:absolute;top:100%;left:0;right:0;background:var(--paper);box-shadow:0 10px 15px #0001;padding:20px;max-height:calc(100dvh - 145px);overflow:auto;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.mobile-menu a{padding:13px 4px;border-bottom:1px solid var(--border);text-decoration:none;font-size:.95rem}.hero{position:relative;overflow:hidden;background:#f6f2e9;min-height:720px;display:flex;align-items:center}.hero-image{position:absolute;inset:0 0 0 43%;background-image:url('kitchen.png');background-size:cover;background-position:75% center}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f6f2e9 0%,#f6f2e9 40%,#f6f2e9f2 44%,#f6f2e900 61%);pointer-events:none}.hero-content{position:relative;z-index:1;padding:54px 0 64px}.hero .eyebrow{font-size:.8rem;letter-spacing:.04em}.hero h1{color:#43392c;font-size:clamp(2.8rem,4.3vw,4.1rem);line-height:1.52}.hero-lead{font-size:1rem;margin-top:20px;color:#595449}.hero-price{margin-top:22px;max-width:400px;padding-top:16px;border-top:1px solid #a99f86}.hero-price>small{font-size:.8rem}.hero-price p{display:flex;align-items:baseline;gap:24px;line-height:1.3}.hero-price p>span{font-size:.85rem;font-weight:700}.hero-price strong{font-family:Georgia,serif;font-weight:400;font-size:3.7rem;color:var(--terra)}.hero-price strong small{font-family:var(--sans);font-size:1.5rem;font-weight:700;margin-left:4px}.hero-price>a{font-size:.8rem}.hero-action{margin-top:25px;display:flex;align-items:center;gap:16px}.hero-action>span{font-size:.75rem;color:#514c41}.image-note{position:absolute;bottom:12px;right:18px;background:#fffdf1dd;padding:4px 10px;font-size:.7rem;color:#575243;z-index:2}.role-strip{background:var(--olive-dark);color:white}.role-strip .container{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:22px;font-size:.9rem}.role-strip small{display:block;opacity:.8;font-size:.75rem}.role-strip b{margin-right:10px;font-size:1.1rem}.role-strip a{font-size:.8rem;white-space:nowrap}.quick-consult{padding-block:64px}.quick-consult h2{font-size:2rem}.photo-list{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--border);padding:26px 0;margin-bottom:26px}.photo-list>div{padding:0 30px;border-right:1px solid var(--border)}.photo-list>div:first-child{padding-left:0}.photo-list>div:last-child{border:0}.photo-list .number{margin-bottom:4px}.photo-list p{font-size:.875rem;color:var(--muted);margin-top:5px}.photo-list h3{font-size:1.25rem}.consult-row{display:flex;align-items:center;justify-content:space-between;gap:25px}.mini-flow{display:flex;align-items:center;gap:22px;font-size:.95rem}.mini-flow>span{color:var(--terra)}.quick-consult .note{margin-top:16px}.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.price-card{position:relative;background:var(--paper);border:1px solid #d6c9b3;padding:38px 42px 32px;border-radius:8px}.price-card.primary{border-top:5px solid var(--terra);padding-top:34px}.price-label{position:absolute;top:28px;right:28px;font-size:.78rem;padding:3px 10px;background:#f1e4d6;color:#794f32;border-radius:3px}.maker{font-size:.95rem;color:var(--muted)}.price-card h3{font-size:2.15rem;margin-top:8px;line-height:1.4}.price-card h3 span{font-size:.8rem;display:block;font-weight:400;margin-top:4px}.price-amount{font:5rem/1.35 Georgia,serif;color:var(--terra);margin-top:16px}.price-amount small{font-size:1.6rem;font-family:var(--sans);font-weight:700;margin-left:10px}.price-includes{font-size:1rem;font-weight:700;margin-top:0}.price-card>p:not([class]){font-size:.95rem;color:var(--muted);margin-top:16px}.price-card .text-link{display:inline-block;margin-top:25px}.price-notes{padding-top:28px}.price-notes h3{color:var(--olive);font-size:1.25rem}.price-notes>p{font-size:.95rem;margin-top:5px}.price-notes ul{font-size:.82rem;color:var(--muted);margin:18px 0 0;line-height:1.9}.cost-detail{display:grid;grid-template-columns:1fr 1.65fr;gap:42px;margin-top:45px;padding-top:35px;border-top:1px solid #cecaba}.cost-detail h3{font-size:1.55rem;font-family:var(--serif)}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px;margin-bottom:17px}.tags span{font-size:.8rem;border:1px solid #ccd1be;border-radius:3px;padding:4px 12px;background:#fff9}.reason-layout{display:grid;grid-template-columns:1fr 1.08fr;gap:80px}.reason-list article{display:flex;gap:23px;padding:24px 0;border-top:1px solid var(--border)}.reason-list article:first-child{padding-top:4px;border-top:0}.reason-list article>span{font:1.7rem Georgia,serif;color:var(--terra)}.reason-list p{margin-top:9px;font-size:.95rem;color:var(--muted)}.team-section{background:#edf0e6}.person{display:grid;grid-template-columns:330px 1fr;gap:65px;align-items:center;padding:38px;background:var(--paper);border-radius:8px;margin-top:34px}.portrait{aspect-ratio:4/5;overflow:hidden;border-radius:4px;background:#e5e7df}.portrait img{width:100%;height:100%;object-fit:cover;object-position:center 22%}.placeholder{display:flex;align-items:center;justify-content:center;flex-direction:column;color:#6f755f;border:1px dashed #a5ad97}.placeholder-mark{font:3.8rem var(--serif);color:#a1a98f;border:1px solid #adb59b;border-radius:4px;padding:10px 22px;line-height:1.4;margin-bottom:24px}.placeholder p{text-align:center;font-size:1rem}.person h3{font-size:1.8rem}.person h3 small{font-size:.95rem;font-weight:400;display:inline-block;margin-left:18px}.person-highlight{font-family:var(--serif);font-size:1.5rem;line-height:1.7;margin:18px 0}.person-highlight strong{color:var(--olive);font-weight:600}.person-copy>p:not([class]){font-size:.95rem}.person .note{margin-top:18px}.hiratsuka{grid-template-columns:240px 1fr;gap:55px}.hiratsuka .portrait{aspect-ratio:4/5}.hiratsuka .person-highlight{font-size:1.3rem}.installation{display:grid;grid-template-columns:1fr 1.4fr;gap:60px;margin-top:50px;padding-top:30px;border-top:1px solid #c9d0bf}.installation h3{font-family:var(--serif);font-size:1.5rem}.installation p{font-size:.95rem}.installation .note{font-size:.8rem}.warranty-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin:45px 0 32px}.warranty-grid article{border-top:3px solid var(--olive);padding-top:22px}.warranty-grid p{font-size:.95rem;color:var(--muted);margin-top:12px}.warranty-example{display:grid;grid-template-columns:1.1fr 1fr;gap:45px;background:var(--cream);border-radius:6px;padding:30px 34px;margin-bottom:20px}.warranty-example .eyebrow{display:block;margin-bottom:8px}.warranty-example h3{font-size:1rem}.warranty-example strong{display:block;font-size:1.7rem;color:var(--terra);line-height:1.8}.warranty-example .text-link{display:inline-block;margin-top:14px;font-size:.8rem}.flow-list{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 55px;counter-reset:flow}.flow-list li{display:flex;gap:20px;padding:24px 0;border-bottom:1px solid #d4d0c4}.step-num{font:1.8rem Georgia,serif;flex:0 0 38px;color:var(--terra);line-height:1.5}.flow-list p{font-size:.9rem;margin-top:6px;color:var(--muted)}.empty-works{border:1px dashed #bac1ad;border-radius:6px;text-align:center;padding:48px 24px;background:#f8f9f4}.empty-works h3{font-size:1.3rem}.empty-works p{color:var(--muted);font-size:.95rem;margin-top:12px}.area-section{background:var(--olive-dark);color:white}.area-section .eyebrow{color:#d6ddc6}.area-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:75px;align-items:center}.area-layout h2{font-size:2rem}.area-layout p{font-size:.95rem;margin-top:22px;color:#e0e5d6}.prefectures{display:grid;grid-template-columns:1fr 1fr;gap:12px}.prefectures span{border:1px solid #829071;padding:20px;text-align:center;font-size:1.25rem;border-radius:4px}.prefectures p{grid-column:1/-1;text-align:center;font-size:.85rem;margin-top:8px}.faq-list{margin-top:34px}details{border-bottom:1px solid var(--border)}details:first-child{border-top:1px solid var(--border)}summary{list-style:none;cursor:pointer;padding:25px 0;display:flex;justify-content:space-between;gap:30px;align-items:center;font-weight:700;font-size:1rem}summary::-webkit-details-marker{display:none}summary span{color:var(--olive);font-size:1.3rem;flex-shrink:0}details[open] summary span{transform:rotate(45deg)}details p{padding:0 35px 26px 0;color:var(--muted);font-size:.95rem}.company-layout{display:grid;grid-template-columns:.85fr 1.6fr;gap:75px}.company-layout p{margin-top:20px;color:var(--muted)}.company-info{margin:0}.company-info>div{display:grid;grid-template-columns:165px 1fr;border-bottom:1px solid #d2d0c5;padding:17px 0;font-size:.9rem}.company-info dt{font-weight:700}.company-info dd{margin:0}.contact-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:50px;align-items:center}.final-consult{background:#edf1e5}.final-consult h2{font-size:2.7rem}.final-consult h2+p{margin:22px 0}.final-consult .button{min-width:330px}.reassurance{color:var(--olive);font-weight:700;font-size:.95rem;margin-top:14px}.final-consult .note{max-width:480px}.phone-link{display:block;margin-top:25px;font-size:1.5rem;text-decoration:none;font-weight:700;letter-spacing:.04em}.phone-link small{display:block;font-weight:400;font-size:.8rem}.qr-block{justify-self:center;background:var(--paper);padding:26px;text-align:center;border-radius:6px}.qr-block img{width:190px;height:190px;margin:auto}.qr-block p{font-size:.95rem;margin-top:14px;font-weight:700;line-height:1.7}.qr-block small{font-size:.7rem;color:var(--muted)}.footer{background:#fdfcf8;padding:55px 0 20px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:50px;font-size:.9rem}.footer-grid p{margin-top:16px}.footer-grid .footer-label{font-size:.75rem;color:var(--muted);margin:0}.footer-label+p{margin:0 0 12px}.footer-grid nav{display:flex;flex-direction:column;gap:12px}.footer nav a{font-size:.85rem;text-decoration:none}.footer-grid .brand{font-size:1.35rem}.copyright{font-size:.75rem;color:var(--muted);border-top:1px solid var(--border);padding-top:20px;margin-top:40px}.mobile-cta,.mobile-only{display:none}.skip{position:fixed;top:-100px;left:15px;z-index:99;background:#fff;padding:15px}.skip:focus{top:15px}.page-heading{min-height:60vh}.breadcrumb{font-size:.8rem;color:var(--muted);display:inline-block;margin-bottom:32px}.page-heading>div>p:not(.eyebrow){margin-top:20px}.filter-list{display:flex;flex-wrap:wrap;gap:10px;margin:35px 0}.filter-list button{padding:8px 18px;border:1px solid var(--olive);border-radius:30px;background:white;color:var(--olive);font-size:.9rem}.filter-list button[aria-pressed=true]{background:var(--olive);color:white}.works-contact{margin-top:70px;text-align:center}.works-contact .button{margin-top:26px}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.case-card{border:1px solid var(--border);border-radius:6px;overflow:hidden}.case-card img{aspect-ratio:4/3;width:100%;object-fit:cover}.case-card>div{padding:20px}.case-card p{font-size:.9rem;margin-top:10px}.policy h1{font-size:2.3rem;margin-bottom:28px}.policy h2{font-size:1.35rem;margin-top:35px;margin-bottom:12px}.policy>p{margin-top:15px}.policy .note{margin-top:40px}
@media(min-width:1500px){.hero-content{width:1160px}.hero-image{left:42%}.hero:after{background:linear-gradient(90deg,#f6f2e9 0%,#f6f2e9 39%,#f6f2e9ee 43%,transparent 58%)}}
@media(max-width:1100px){.desktop-nav{gap:17px}.desktop-nav a{font-size:.8rem}.header{gap:18px}.brand{font-size:1.2rem}.container{width:calc(100% - 64px)}.person{grid-template-columns:270px 1fr;gap:35px}.hiratsuka{grid-template-columns:220px 1fr}.hero-action{align-items:flex-start;flex-direction:column;gap:8px}.hero{min-height:740px}.reason-layout{gap:40px}.person-copy h3 small{display:block;margin-left:0}.area-layout{gap:40px}.section-top{gap:30px}}
@media(max-width:900px){.desktop-nav{display:none}.header-cta{margin-left:auto}.menu-toggle{display:flex;gap:10px;align-items:center;border:0;background:none;padding:10px 0 10px 12px;font-size:.8rem;color:var(--olive)}.menu-toggle span{font-size:1.3rem}.reason-layout{grid-template-columns:1fr;gap:32px}.reason-layout h2 br:nth-child(2){display:none}.reason-list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.reason-list article{display:block;padding-top:15px!important;border-top:1px solid var(--border)!important}.reason-list article>span{display:block;margin-bottom:12px}.reason-list h3{font-size:1rem}.warranty-example{gap:25px;padding:28px}.company-layout{gap:30px}.company-info>div{grid-template-columns:130px 1fr}.footer-grid{gap:30px;grid-template-columns:1fr 1fr}.footer-grid nav{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;gap:24px}.hero .eyebrow{max-width:300px}.hero h1{font-size:3rem}.section-top{align-items:flex-start;flex-direction:column;gap:18px}.hero-image{left:35%}.hero:after{background:linear-gradient(90deg,#f6f2e9 0%,#f6f2e9 35%,#f6f2e9bb 47%,transparent 80%)}.price-card{padding:30px 26px}.price-label{top:20px;right:20px}.price-card h3{font-size:1.8rem}.price-amount{font-size:4.5rem}.person{grid-template-columns:200px 1fr;padding:26px}.person-highlight{font-size:1.3rem}.warranty-grid{gap:20px}.warranty-grid h3{font-size:1rem}.area-layout{grid-template-columns:1.5fr 1fr;gap:25px}.area-layout h2{font-size:1.7rem}.prefectures span{padding:16px 10px;font-size:1.1rem}.qr-block{padding:20px}.qr-block small{display:block;max-width:220px}}
@media(max-width:640px){html{scroll-padding-top:85px}.container{width:calc(100% - 40px)}body{padding-bottom:76px;font-size:16px;line-height:1.85}.section{padding:58px 0}h1{font-size:2.2rem}h2{font-size:1.85rem;line-height:1.6}h3{font-size:1.1rem}.eyebrow{font-size:.8rem;letter-spacing:.04em;margin-bottom:12px}.section-top{gap:18px;margin-bottom:26px}.section-top p{font-size:.95rem}.header{min-height:72px;padding:13px 20px;gap:12px}.brand{font-size:1.2rem;gap:9px}.brand-mark{width:35px;height:39px;font-size:1.45rem}.brand small{font-size:.62rem;letter-spacing:.04em}.header-cta{display:none}.menu-toggle{margin-left:auto;font-size:.75rem;flex-direction:column;gap:0;line-height:1.4;padding:0;min-width:45px;min-height:44px}.menu-toggle span{order:-1;font-size:1.3rem}.hero{display:block;min-height:0;padding-top:0}.hero-image{inset:0 0 auto;height:250px;left:0;background-position:72% 48%;background-size:auto 320px}.hero:after{background:linear-gradient(0deg,#f6f2e9 0%,#f6f2e9 59%,#f6f2e900 88%);inset:0;z-index:0}.hero-content{padding:206px 0 26px;z-index:1}.hero .eyebrow{max-width:100%;font-size:.72rem;white-space:normal;line-height:1.8;margin-bottom:13px}.hero h1{font-size:2.45rem;line-height:1.5;letter-spacing:.01em}.hero h1 br:nth-child(2){display:none}.hero h1 em{display:block}.hero-lead{font-size:.91rem;margin-top:16px}.hero-price{max-width:none;margin-top:20px;padding-top:14px}.hero-price>small{font-size:.75rem}.hero-price p{gap:24px;justify-content:space-between}.hero-price strong{font-size:3.3rem}.hero-price strong small{font-size:1.3rem}.hero-price p>span{font-size:.8rem}.hero-price>a{font-size:.75rem}.hero-action{margin-top:22px;gap:8px}.hero-action .button{width:100%;min-height:55px}.hero-action>span{align-self:center}.image-note{bottom:auto;top:9px;right:9px;font-size:.63rem;padding:2px 6px;max-width:85%}.role-strip .container{padding-block:20px;display:grid;grid-template-columns:1fr 1fr;gap:14px;font-size:.75rem}.role-strip b{display:block;font-size:.95rem;margin-right:0}.role-strip small{font-size:.65rem}.role-strip a{grid-column:1/-1;text-align:center;font-size:.75rem;border-top:1px solid #ffffff30;padding-top:12px}.quick-consult h2{font-size:1.9rem}.mobile-only{display:block}.quick-consult{padding-block:46px}.photo-list{grid-template-columns:1fr;padding:0;gap:0;margin-top:28px;margin-bottom:24px}.photo-list>div{position:relative;border-right:0;border-bottom:1px solid var(--border);padding:18px 0 18px 50px!important}.photo-list>div:last-child{border-bottom:0}.photo-list .number{position:absolute;left:0;top:20px}.photo-list h3{font-size:1.14rem}.photo-list p{font-size:.82rem}.consult-row{display:block}.mini-flow{font-size:.85rem;gap:12px;justify-content:space-between;margin-bottom:20px}.consult-row .button{width:100%}.note{font-size:.8rem}.price-grid{grid-template-columns:1fr;gap:18px}.price-card{padding:28px}.price-card.primary{padding-top:27px}.price-card h3{font-size:2rem;margin-top:8px}.price-card h3 span{display:inline-block;margin-left:10px}.price-amount{font-size:4.8rem;margin-top:12px}.price-card>p:not([class]){font-size:.9rem}.price-label{top:23px;right:20px;font-size:.75rem}.maker{font-size:.85rem}.price-includes{font-size:.9rem}.price-notes h3{font-size:1.12rem}.price-notes>p{font-size:.9rem}.price-notes ul{font-size:.8rem}.cost-detail{grid-template-columns:1fr;gap:20px;margin-top:30px;padding-top:28px}.cost-detail h3 br{display:none}.cost-detail h3{font-size:1.4rem}.cost-detail p{font-size:.9rem}.tags{gap:6px}.tags span{font-size:.76rem;padding:3px 9px}.reason-layout{gap:26px}.reason-layout h2{font-size:1.9rem}.reason-layout h2 br:nth-child(2){display:block}.section-intro{font-size:.95rem;margin-top:18px}.reason-list{display:block}.reason-list article{display:flex;padding:22px 0!important;gap:20px}.reason-list article>span{font-size:1.5rem}.reason-list h3{font-size:1.05rem}.reason-list p{font-size:.9rem}.person{display:block;padding:24px;margin-top:25px}.person .portrait{width:100%;max-width:220px;aspect-ratio:5/4;margin:0 auto 26px}.person .placeholder{max-width:none;aspect-ratio:2/1}.placeholder-mark{font-size:2.6rem;padding:4px 14px;margin-bottom:6px}.placeholder p{font-size:.8rem;line-height:1.5}.placeholder p small{font-size:.7rem}.person h3{font-size:1.65rem}.person h3 small{display:inline-block;margin-left:12px;font-size:.85rem}.person-highlight{font-size:1.33rem;margin:15px 0}.person-copy>p:not([class]){font-size:.9rem}.person .note{font-size:.78rem}.hiratsuka .portrait{max-width:none;width:150px;height:185px;float:left;aspect-ratio:auto;margin:0 20px 15px 0}.hiratsuka:after{content:'';display:block;clear:both}.hiratsuka .person-copy .eyebrow{font-size:.73rem}.hiratsuka .person-copy h3{padding-top:5px;font-size:1.4rem}.hiratsuka .person-copy h3 small{display:block;margin:4px 0 0}.hiratsuka .person-highlight{clear:both;padding-top:10px;font-size:1.22rem}.installation{grid-template-columns:1fr;gap:20px;margin-top:34px;padding-top:28px}.installation h3{font-size:1.5rem}.installation p{font-size:.9rem}.installation .note{font-size:.77rem}.warranty-grid{display:block;margin:28px 0}.warranty-grid article{margin-top:24px;padding-top:18px}.warranty-grid .number{display:inline-block;margin:0 12px 0 0}.warranty-grid h3{display:inline;font-size:1.13rem}.warranty-grid p{font-size:.9rem;margin-top:10px}.warranty-example{grid-template-columns:1fr;gap:24px;padding:23px}.warranty-example strong{font-size:1.55rem}.warranty-example>div+div{border-top:1px solid var(--border);padding-top:18px}.warranty-example p{font-size:.9rem}.warranty-example .note{font-size:.8rem}.flow-list{grid-template-columns:1fr;gap:0}.flow-list li{padding:21px 0;gap:15px}.flow-list h3{font-size:1.05rem}.flow-list p{font-size:.88rem}.step-num{font-size:1.5rem;flex-basis:32px}.empty-works{padding:34px 21px}.empty-works h3{font-size:1.18rem}.empty-works p{font-size:.88rem}.empty-works br{display:none}.area-layout{display:block}.area-layout h2{font-size:1.78rem}.area-layout>div>p{font-size:.9rem}.prefectures{margin-top:28px;gap:10px}.prefectures span{padding:17px;font-size:1.2rem}.prefectures p{font-size:.85rem}.faq-list{margin-top:25px}summary{font-size:.93rem;padding:21px 0;gap:15px;line-height:1.7}details p{font-size:.9rem;padding:0 8px 23px 0}.company-layout{display:block}.company-layout>div>p{font-size:.9rem}.company-info{margin-top:25px}.company-info>div{grid-template-columns:115px 1fr;font-size:.83rem;gap:10px;padding:15px 0}.company-info small{font-size:.75rem}.contact-layout{display:block}.final-consult h2{font-size:2.2rem}.final-consult h2+p{font-size:.95rem}.final-consult .button{min-width:0;width:100%;font-size:.96rem}.final-consult .note{font-size:.78rem}.qr-block{display:none}.phone-link{font-size:1.5rem;margin-top:22px}.footer{padding:40px 0 20px}.footer-grid{display:block}.footer-grid>div+div{margin-top:28px}.footer-grid nav{margin-top:30px;display:grid;grid-template-columns:1fr 1fr;gap:15px}.footer-grid nav a{font-size:.8rem}.copyright{margin-top:25px}.mobile-cta{position:fixed;bottom:0;left:0;right:0;z-index:25;display:grid;grid-template-columns:1fr 1.7fr;gap:10px;padding:9px 12px calc(9px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--paper);box-shadow:0 -3px 14px #00000008}.mobile-cta>a:first-child{display:flex;align-items:center;justify-content:center;flex-direction:column;text-decoration:none;font-size:.8rem;line-height:1.5}.mobile-cta small{font-size:.65rem}.mobile-cta .button{padding:8px 12px;min-height:48px;font-size:.9rem;gap:8px}.filter-list{gap:8px;margin:25px 0}.filter-list button{font-size:.8rem;padding:7px 14px;min-height:42px}.case-grid{grid-template-columns:1fr}.works-contact{margin-top:45px}.works-contact h2{font-size:1.6rem}.policy h1{font-size:1.85rem}.policy h2{font-size:1.25rem}.policy p{font-size:.95rem}.breadcrumb{margin-bottom:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.header,.mobile-cta,.menu-toggle{position:static}.mobile-cta{display:none}.section{padding:25px 0}.hero{min-height:620px}body{padding:0}.button{border:1px solid #777}.container{width:94%}details p{display:block}a{text-decoration:none}}

/* Readability and keyboard access refinements. */
[hidden]{display:none!important}
.anchor-alias{display:block;height:0}
:focus-visible{outline:3px solid var(--olive);outline-offset:4px}
.area-section :focus-visible,.role-strip :focus-visible{outline-color:#fff}
.person.placeholder{border-style:solid}
.company-info dd,.person-copy{min-width:0;overflow-wrap:anywhere}
@media(max-width:640px){
 body{padding-bottom:calc(84px + env(safe-area-inset-bottom))}
 .note,.person .note,.installation .note,.price-notes ul,.company-info small,.image-note,.brand small,.role-strip small,.mobile-cta small{font-size:.75rem}
 .photo-list p,.hero-price>a,.hero-price>small,.hero-price p>span,.role-strip .container,.role-strip a,.tags span,.company-info>div,.footer-grid nav a,.filter-list button,.menu-toggle{font-size:.875rem}
 .person-copy>p:not([class]),.reason-list p,.flow-list p,.faq-list details p,.price-card>p:not([class]),.area-layout>div>p,.installation p,.warranty-grid p,.empty-works p,.policy p{font-size:1rem}
 .price-label{position:static;display:inline-block;margin-bottom:10px}
 .hero-price p{flex-wrap:wrap;gap:4px 16px}
 .mobile-menu{grid-template-columns:1fr}
}
