*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f7f6f2;color:#071b36;font-family:"Yu Gothic","Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;font-size:16px;line-height:1.9;letter-spacing:.045em;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{transition:background-color .18s ease,color .18s ease,border-color .18s ease}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #d98219;outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{position:absolute;z-index:20;top:0;left:0;width:100%;height:76px;display:flex;align-items:center;padding-left:40px;color:#071b36}.site-header.scrolled{position:fixed;background:#fff;border-bottom:1px solid #d5d8da}.brand{font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;font-weight:600;font-size:24px;letter-spacing:.08em;white-space:nowrap}.global-nav{display:flex;align-items:center;justify-content:flex-end;gap:24px;margin-left:auto;padding:0 24px}.global-nav a{font-size:13px;font-weight:700;white-space:nowrap;border-bottom:2px solid transparent}.global-nav a:hover,.global-nav a[aria-current="page"]{border-color:#a36512}.header-contact{height:76px;min-width:238px;background:#062b53;color:#fff;display:flex;flex-direction:column;justify-content:center;padding:8px 25px;line-height:1.4}.header-contact strong{font-size:19px;letter-spacing:.08em}.header-contact small{font-size:11px}.menu-button{display:none}.hero{position:relative;width:100%;height:min(700px,49vw);min-height:620px;overflow:hidden;background:#a8d8f2}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 50%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.86) 22%,rgba(255,255,255,.35) 40%,rgba(255,255,255,0) 58%);pointer-events:none}.hero-content{position:relative;z-index:2;max-width:1320px;margin:0 auto;padding:134px 40px 45px}.hero-kicker{display:flex;align-items:center;gap:10px;color:#8a540c;font-weight:700;letter-spacing:.12em;margin:0 0 15px}.hero-kicker svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8}.hero h1{max-width:650px;margin:0;font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;font-size:60px;font-weight:600;line-height:1.35;letter-spacing:.045em;color:#071b36}.hero-emphasis{color:#a36512}.hero-lead{margin:16px 0 20px;font-size:16px;line-height:1.9;font-weight:500}.hero-actions{display:flex;align-items:center;gap:34px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:58px;padding:13px 24px;border:0;font-weight:700;letter-spacing:.07em;cursor:pointer}.button i,.text-link i{font-style:normal;margin-left:auto;transition:transform .18s ease}.button:hover i,.text-link:hover i{transform:translateX(6px)}.button.primary{background:#062b53;color:#fff;min-width:285px}.button.primary:hover{background:#0b416f}.button.light{background:#fff;color:#062b53;min-width:280px}.button.light:hover{background:#e8d5b6}.text-link{display:inline-flex;align-items:center;gap:20px;font-weight:700;border-bottom:1px solid #071b36;padding:10px 2px}.sub-hero{height:600px;min-height:600px}.sub-hero .hero-content{padding-top:150px}.sub-hero h1{font-size:54px}.sub-hero .hero-lead{max-width:670px}.section-wrap{max-width:1320px;margin:0 auto;padding-left:40px;padding-right:40px}.building-guide,.content-section{padding-top:88px;padding-bottom:88px}.section-intro{max-width:780px;margin-bottom:42px}.section-label{margin:0 0 8px;color:#a36512;font-size:12px;font-weight:700;letter-spacing:.16em}.section-intro h2,.final-cta h2,.split-section h2{font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;font-size:30px;line-height:1.45;letter-spacing:.045em;margin:0 0 12px}.section-intro>p:last-child{color:#3e4854;margin:0}.guide-grid{display:grid;grid-template-columns:7fr 5fr;border-top:1px solid #d5d8da}.service-side{padding:28px 34px 0 0;border-right:1px solid #d5d8da}.guide-details{padding:28px 0 0 34px}.icon-heading{display:flex;align-items:center;gap:10px;margin:0 0 20px;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:21px}.icon-heading svg{width:28px;height:28px;fill:none;stroke:#071b36;stroke-width:1.7}.service-mosaic{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.service-mosaic article{min-width:0}.service-mosaic img{width:100%;aspect-ratio:4/3;object-fit:cover}.service-mosaic h4{font-size:17px;margin:10px 0 4px}.service-mosaic p{font-size:14px;line-height:1.7;margin:0;color:#3e4854}.support-strip{display:grid;grid-template-columns:2fr 1.7fr 1.8fr;margin-top:20px}.support-strip img{width:100%;height:148px;object-fit:cover}.detail-photo{width:100%;height:125px;object-fit:cover;margin-bottom:15px}.detail-photo.compact{height:105px}.process-list{list-style:none;margin:0 0 12px;padding:0}.process-list li{display:grid;grid-template-columns:45px 1fr;gap:11px;padding:9px 0;border-top:1px solid #d5d8da;font-size:13px;line-height:1.6}.process-list b{color:#a36512;font-family:"Yu Mincho",serif;font-size:18px}.process-list strong{display:block;font-size:15px}.faq-preview{margin-top:34px;padding-top:28px;border-top:1px solid #d5d8da}.faq-preview dl{margin:0}.faq-preview dl>div{border-top:1px solid #d5d8da;padding:12px 0}.faq-preview dt{font-weight:700}.faq-preview dt:before{content:"Q. ";color:#a36512}.faq-preview dd{margin:5px 0 0;font-size:14px;color:#3e4854}.guide-details .text-link{font-size:14px}.final-cta{background:#062b53;color:#e7eef4;padding:58px max(40px,calc((100% - 1240px)/2));display:grid;grid-template-columns:2fr 1fr;gap:60px;align-items:center}.final-cta h2{color:#fff;margin-bottom:10px}.final-cta p{margin:0}.final-cta .section-label{color:#d6a35d}.final-actions{display:flex;flex-direction:column;align-items:stretch;gap:15px}.final-actions p{text-align:center}.final-actions a:not(.button){color:#fff;font-weight:700}.service-detail-list{border-top:1px solid #d5d8da}.service-detail-list article{display:grid;grid-template-columns:90px 1fr;gap:28px;padding:32px 0;border-bottom:1px solid #d5d8da}.service-detail-list svg,.process-detail svg{width:64px;height:64px;fill:none;stroke:#062b53;stroke-width:1.6}.service-detail-list h3,.process-detail h3,.empty-works h3{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:24px;margin:0 0 6px}.service-detail-list p{margin:0}.split-section{padding-top:68px;padding-bottom:68px;border-top:1px solid #d5d8da;display:grid;grid-template-columns:5fr 7fr;gap:60px}.line-list{list-style:none;margin:0;padding:0;border-top:1px solid #d5d8da}.line-list li{padding:14px 8px;border-bottom:1px solid #d5d8da}.line-list li:before{content:"—";color:#a36512;margin-right:14px}.empty-works{padding:70px 30px;text-align:center;border-top:1px solid #d5d8da;border-bottom:1px solid #d5d8da;background:#fff}.empty-works svg{width:70px;fill:none;stroke:#062b53;stroke-width:1.5;margin:0 auto 18px}.empty-works p{max-width:620px;margin:0 auto 24px}.process-detail{list-style:none;margin:0;padding:0;border-top:1px solid #d5d8da}.process-detail li{display:grid;grid-template-columns:70px 76px 1fr;align-items:center;gap:24px;padding:28px 0;border-bottom:1px solid #d5d8da}.process-detail>li>span{font-family:"Yu Mincho",serif;color:#a36512;font-size:26px}.process-detail h3{font-size:23px;margin:0}.process-detail p{margin:2px 0 0}.faq-list{border-top:1px solid #d5d8da}.faq-list details{border-bottom:1px solid #d5d8da;background:#fff}.faq-list summary{position:relative;cursor:pointer;list-style:none;padding:22px 58px 22px 22px;font-weight:700}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"＋";position:absolute;right:24px;color:#a36512;font-size:24px}.faq-list details[open] summary:after{content:"−"}.faq-list summary span{color:#a36512;margin-right:10px;font-family:"Yu Mincho",serif;font-size:20px}.faq-list details p{margin:0;padding:0 25px 24px 56px;color:#3e4854}.faq-list details p b{color:#a36512}.company-table{margin:0;border-top:1px solid #d5d8da}.company-table>div{display:grid;grid-template-columns:220px 1fr;border-bottom:1px solid #d5d8da}.company-table dt{padding:19px;font-weight:700;background:#fff}.company-table dd{padding:19px;margin:0}.access-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.access-grid h2{font-family:"Yu Mincho",serif;font-size:30px}.access-grid address{font-style:normal;font-size:18px}.access-grid address strong{font-size:23px}.access-phone{border-top:1px solid #d5d8da;margin-top:30px;padding-top:20px}.access-phone span{display:block;font-size:13px}.access-phone a{font-size:25px;font-weight:700}.map-placeholder{min-height:340px;background:#e8e7e1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px}.map-placeholder svg{width:76px;fill:none;stroke:#a36512;stroke-width:1.5}.form-layout{display:grid;grid-template-columns:4fr 7fr;gap:80px}.phone-box{margin-top:35px;padding:22px;border-top:1px solid #d5d8da;border-bottom:1px solid #d5d8da}.phone-box a{font-size:25px;font-weight:700}.contact-form{background:#fff;padding:36px}.form-field{margin-bottom:24px}.form-field label{display:block;font-weight:700;margin-bottom:6px}.form-field label span{font-size:11px;color:#fff;background:#a36512;padding:3px 7px;margin-left:8px}.form-field label em{font-style:normal;font-size:11px;color:#3e4854;margin-left:8px}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #9ca3a9;background:#fff;color:#071b36;padding:11px 13px;border-radius:0}.field-error{display:block;color:#a3271b;font-weight:700}.form-field.invalid input,.form-field.invalid select,.form-field.invalid textarea{border:2px solid #a3271b}.submit-button{width:100%}.form-status{font-weight:700;margin-bottom:0}.site-footer{background:#fff;border-top:1px solid #d5d8da;padding:34px max(40px,calc((100% - 1240px)/2));display:grid;grid-template-columns:1fr 2fr;gap:40px;align-items:center}.site-footer p{font-size:13px;line-height:1.8}.site-footer nav{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px 24px}.site-footer nav a{font-size:13px;font-weight:700}.site-footer nav a:hover{color:#a36512}
@media(max-width:1199px){.site-header{height:68px;padding:0 28px;background:#fff;position:absolute}.site-header.scrolled{position:fixed}.brand{font-size:20px}.header-contact{display:none}.menu-button{display:flex;width:44px;height:44px;margin-left:auto;border:0;background:transparent;flex-direction:column;justify-content:center;gap:5px;padding:8px}.menu-button>span:not(.sr-only){display:block;width:26px;height:2px;background:#071b36}.global-nav{display:none;position:absolute;top:68px;left:0;width:100%;background:#fff;padding:18px 28px 26px;grid-template-columns:repeat(2,1fr);gap:0;margin:0;border-top:1px solid #d5d8da;box-shadow:0 10px 18px rgba(7,27,54,.12)}.global-nav.open{display:grid}.global-nav a{padding:11px;border-bottom:1px solid #d5d8da}.hero{height:760px;min-height:680px}.hero>img{object-position:65% 50%}.hero-content{padding:138px 28px 40px}.hero h1{font-size:48px;max-width:580px}.hero-lead{font-size:16px}.sub-hero{height:680px}.sub-hero .hero-content{padding-top:145px}.sub-hero h1{font-size:48px}.section-wrap{padding-left:28px;padding-right:28px}.building-guide,.content-section{padding-top:68px;padding-bottom:68px}.guide-grid{grid-template-columns:1fr}.service-side{padding-right:0;border-right:0;border-bottom:1px solid #d5d8da;padding-bottom:36px}.guide-details{padding-left:0}.guide-details{display:grid;grid-template-columns:1fr 1fr;gap:30px}.faq-preview{margin:0;padding:0;border:0}.final-cta{padding:50px 28px;grid-template-columns:1fr;gap:28px}.final-actions{max-width:360px}.form-layout{grid-template-columns:1fr;gap:35px}.site-footer{padding:32px 28px}.access-grid{gap:35px}}
@media(max-width:767px){body{font-size:16px;line-height:1.8}.site-header{position:absolute;height:62px;padding:0 20px}.site-header.scrolled{position:fixed}.brand{font-size:17px}.global-nav{top:62px;padding:12px 20px 22px;grid-template-columns:1fr;max-height:calc(100vh - 62px);overflow:auto}.hero,.sub-hero{height:780px;min-height:720px}.hero>img{object-position:68% 50%}.hero-shade{background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.8) 57%,rgba(255,255,255,.08) 100%)}.hero-content,.sub-hero .hero-content{padding:128px 20px 34px}.hero-kicker{font-size:12px;line-height:1.6;max-width:310px}.hero-kicker svg{width:23px;min-width:23px}.hero h1,.sub-hero h1{font-size:38px;line-height:1.4;letter-spacing:.025em}.hero-lead{font-size:16px;line-height:1.85;margin-top:18px}.hero-lead br{display:none}.hero-actions{align-items:stretch;flex-direction:column;gap:12px;margin-top:24px}.button.primary{min-width:0;width:100%}.text-link{align-self:flex-start}.section-wrap{padding-left:20px;padding-right:20px}.building-guide,.content-section{padding-top:52px;padding-bottom:52px}.section-intro{margin-bottom:28px}.section-intro h2,.final-cta h2,.split-section h2{font-size:24px}.service-mosaic{grid-template-columns:1fr;gap:28px}.service-mosaic h4{font-size:19px}.service-mosaic p{font-size:16px}.support-strip{grid-template-columns:1fr;gap:8px}.support-strip img{height:auto;aspect-ratio:16/8}.guide-details{display:block}.faq-preview{margin-top:42px;padding-top:32px;border-top:1px solid #d5d8da}.detail-photo,.detail-photo.compact{height:auto;aspect-ratio:16/7}.process-list li{grid-template-columns:48px 1fr;font-size:15px;padding:13px 0}.final-cta{padding:44px 20px;text-align:center;display:block}.final-actions{margin:28px auto 0;max-width:none}.final-actions .button{width:100%;min-width:0}.service-detail-list article{grid-template-columns:58px 1fr;gap:15px}.service-detail-list svg{width:48px;height:48px}.service-detail-list h3{font-size:21px}.split-section{padding:52px 20px;grid-template-columns:1fr;gap:20px}.process-detail li{grid-template-columns:45px 52px 1fr;gap:10px}.process-detail svg{width:48px;height:48px}.process-detail h3{font-size:20px}.faq-list summary{padding:18px 45px 18px 15px}.faq-list details p{padding:0 18px 20px}.company-table>div{grid-template-columns:1fr}.company-table dt{padding:12px 15px}.company-table dd{padding:15px}.access-grid{grid-template-columns:1fr}.access-grid address strong{font-size:20px}.map-placeholder{min-height:260px}.contact-form{padding:24px 16px}.site-footer{padding:30px 20px;grid-template-columns:1fr}.site-footer nav{display:grid;grid-template-columns:repeat(2,1fr);justify-content:start}.empty-works{padding:50px 18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
.map-frame.access-map-primary{position:relative;width:100%;min-width:0;margin:0;overflow:hidden}.map-frame.access-map-primary iframe{display:block;width:100%;min-height:420px;border:0}.generated-map-pin{position:absolute;left:50%;top:50%;z-index:2;width:34px;height:34px;pointer-events:none;transform:translate(-50%,-100%);border-radius:50% 50% 50% 0;background:#d93025;box-shadow:0 3px 10px rgba(0,0,0,.35);rotate:-45deg}.generated-map-pin>span{position:absolute;left:50%;top:50%;width:12px;height:12px;border-radius:50%;background:#fff;transform:translate(-50%,-50%)}.location-panel.access-map-panel{padding:0;overflow:hidden}.location-panel.access-map-panel .map-frame{height:100%}.location-panel.access-map-panel iframe{height:100%;min-height:420px}@media(max-width:768px){.map-frame.access-map-primary iframe,.location-panel.access-map-panel iframe{min-height:360px}}

/* generated-support-layout-guard-v2 */.generated-support-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),360px));justify-content:center;gap:18px;margin:24px 0 32px}.generated-support-media{width:100%;max-width:360px;margin:0;aspect-ratio:4/3;overflow:hidden}.generated-support-media img{display:block;width:100%;height:100%;object-fit:cover}@media(max-width:768px){.generated-support-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 24px}}@media(max-width:520px){.generated-support-grid{grid-template-columns:1fr}.generated-support-media{max-width:none}}

.generated-category-icon{display:inline-flex;align-items:center;justify-content:center;width:2.25em;height:2.25em;margin:0 .55em .25em 0;border:1px solid currentColor;border-radius:50%;vertical-align:middle;flex:0 0 auto}.generated-category-icon svg{display:block;width:1.15em;height:1.15em}.editorial-strip .triptych{grid-template-columns:repeat(4,minmax(0,1fr))!important}.editorial-strip .triptych>.statement{min-width:0;padding-inline:clamp(18px,2.2vw,30px)}.editorial-strip .triptych>.statement h2{width:100%;max-width:none;word-break:normal;overflow-wrap:normal}.generated-hero-long-line{font-size:clamp(2.25rem,3.6vw,2.875rem)!important;line-height:1.38!important;letter-spacing:0!important}@media(max-width:1100px){.editorial-strip .triptych{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:640px){.editorial-strip .triptych{grid-template-columns:1fr!important}}@media(max-width:640px){.generated-hero-long-line{font-size:clamp(1.65rem,7vw,2rem)!important;line-height:1.4!important}}@media(max-width:520px){.generated-category-icon{width:2em;height:2em;margin-right:.4em}}
