@charset "UTF-8";
:root{--canvas:#fcfbf8;--surface:#fff;--warm:#f7f1ea;--ink:#071d3d;--body:#303842;--accent:#b97808;--line:#ddd9d2;--button:#062951;--focus:#c88817;--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;--sans:"Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans JP",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--canvas);color:var(--body);font-family:var(--sans);font-size:16px;line-height:1.9;overflow-x:hidden}img{display:block;width:100%;height:auto}a{color:var(--ink);text-decoration:none}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--focus);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--ink)}h2{font-family:var(--serif);font-size:36px;font-weight:600;line-height:1.5;letter-spacing:.03em}h3{font-family:var(--serif);font-size:24px;font-weight:600;line-height:1.5}svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.site-header{position:relative;z-index:20;height:72px;padding:0 32px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #eee}.brand,.footer-brand{font-family:var(--serif);font-weight:600;color:#111;letter-spacing:.01em}.brand{font-size:20px;white-space:nowrap}.global-nav{display:flex;align-items:center;gap:5px}.global-nav a{min-height:44px;padding:10px 9px;display:flex;align-items:center;font-size:14px;font-weight:600;white-space:nowrap}.global-nav a[aria-current="page"]{color:var(--accent)}.global-nav .nav-contact{padding:10px 20px;margin-left:5px;border-radius:999px;background:var(--button);color:#fff}.nav-toggle,.nav-button{display:none}.hero{position:relative;isolation:isolate;overflow:hidden}.hero>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center}.hero:after{content:"";position:absolute;z-index:-1;inset:0 auto 0 0;width:61%;background:linear-gradient(90deg,rgba(252,251,248,.98) 0%,rgba(252,251,248,.91) 58%,rgba(252,251,248,0) 100%);pointer-events:none}.home-hero{min-height:620px}.sub-hero{min-height:540px}.hero-copy{width:min(690px,49%);padding:88px 0 65px 56px}.hero-kicker,.eyebrow{font-size:13px;font-weight:700;line-height:1.5;letter-spacing:.13em;color:var(--ink)}.hero-kicker:after{content:"";display:block;width:46px;margin-top:13px;border-bottom:2px solid var(--accent)}.hero h1{margin:22px 0 20px;font-family:var(--serif);font-size:58px;font-weight:600;line-height:1.45;letter-spacing:.035em}.sub-hero h1{font-size:50px}.hero-emphasis{color:var(--accent)}.hero-lead{font-size:17px;font-weight:500;line-height:2}.hero-actions,.actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:27px}.button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:13px 28px;border:1px solid var(--button);border-radius:999px;background:var(--button);color:#fff;font-family:var(--sans);font-size:15px;font-weight:700;letter-spacing:.04em;cursor:pointer}.button:hover{background:#0b3d73;color:#fff}.button-outline{background:transparent;color:var(--button)}.text-link{display:inline-flex;min-height:44px;align-items:center;font-weight:700}.container{width:min(1280px,calc(100% - 96px));margin:auto}.container.narrow{max-width:900px}.section{padding:112px 0}.section-warm{background:var(--warm)}.section-title{display:flex;align-items:flex-start;gap:18px;margin-bottom:36px}.section-title svg{flex:0 0 44px;width:44px;color:var(--ink)}.section-title h2,.section-title p{margin-bottom:0}.entry-panel{position:relative;z-index:3;width:min(1380px,calc(100% - 60px));margin:-48px auto 0;padding:30px;background:#fff;border-radius:14px;box-shadow:0 14px 38px rgba(27,39,54,.08)}.entry-heading{display:flex;align-items:baseline;gap:28px;padding:0 8px 22px}.entry-heading h2{margin:0;font-size:30px}.entry-grid{display:grid;grid-template-columns:repeat(4,1fr)}.entry-grid>a{min-width:0;padding:18px;border-left:1px solid var(--line)}.entry-grid>a:first-child{border-left:0}.entry-grid svg{width:42px;height:42px;margin-bottom:12px}.entry-grid h3{margin-bottom:6px;font-size:26px}.entry-grid p{min-height:61px;font-size:14px;line-height:1.7}.entry-grid img{aspect-ratio:4/3;object-fit:cover;border-radius:8px}.selection-main{display:grid;grid-template-columns:7fr 5fr;align-items:center;gap:70px}.selection-main>img{aspect-ratio:3/2;object-fit:cover;border-radius:8px}.selection-detail{width:58%;margin:35px 0 0 auto;display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.selection-detail img{aspect-ratio:1;object-fit:cover;border-radius:8px}.selection-detail figcaption,.gallery-grid figcaption{padding-top:10px;color:var(--ink);font-size:14px}.space-section{padding-top:20px}.space-section .container{display:grid;grid-template-columns:5fr 7fr;gap:65px;align-items:center}.space-photo img{aspect-ratio:16/9;object-fit:cover;border-radius:8px}.visit-section{padding:55px 0;background:var(--warm)}.visit-section h2{margin-bottom:30px}.visit-grid{display:grid;grid-template-columns:repeat(3,1fr)}.visit-grid article{display:flex;gap:18px;padding:10px 30px;border-left:1px solid var(--line)}.visit-grid article:first-child{border-left:0;padding-left:0}.visit-grid svg{width:43px;flex:0 0 43px}.visit-grid h3{margin-bottom:5px;font-size:18px}.visit-grid p{margin-bottom:4px}.visit-grid a{font-weight:700}.faq-layout{display:grid;grid-template-columns:4fr 8fr;gap:70px}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{position:relative;display:flex;align-items:center;min-height:66px;padding:15px 48px 15px 5px;color:var(--ink);font-weight:700;cursor:pointer;list-style:none}.faq-list summary:after{content:"＋";position:absolute;right:12px;color:var(--accent);font-size:24px}.faq-list details[open] summary:after{content:"−"}.faq-list details p{padding:0 36px 20px 5px}.final-cta{padding:70px max(48px,calc((100% - 1280px)/2));display:flex;align-items:center;justify-content:space-between;gap:50px;background:var(--warm)}.final-cta h2{margin-bottom:10px}.editorial,.form-layout{display:grid;grid-template-columns:5fr 7fr;gap:80px}.warm-panel,.empty-notice{padding:38px;background:var(--warm);border-radius:14px}.check-list{padding-left:20px}.check-list li{margin:12px 0}.three-grid,.product-guide{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.three-grid article,.product-guide article{padding:35px;border-left:1px solid var(--line)}.three-grid article:first-child,.product-guide article:first-child{border-left:0}.product-guide svg{width:42px;height:42px;margin-bottom:18px;color:var(--ink)}.wide-lead{max-width:820px;margin-bottom:50px}.empty-notice{margin-top:60px;text-align:center}.fact-list{margin:0}.fact-list div{display:grid;grid-template-columns:180px 1fr;padding:24px 0;border-top:1px solid var(--line)}.fact-list div:last-child{border-bottom:1px solid var(--line)}.fact-list dt{font-weight:700;color:var(--ink)}.fact-list dd{margin:0;font-size:19px}.note{margin-top:24px}.contact-form{display:grid;gap:24px}.contact-form label{display:grid;gap:7px;color:var(--ink);font-weight:700}.contact-form label span{justify-self:start;padding:0 7px;background:var(--accent);color:#fff;font-size:11px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;min-height:50px;padding:11px 13px;border:1px solid #aaa;border-radius:4px;background:#fff;color:var(--body);font:inherit}.contact-form textarea{resize:vertical}.contact-form .confirm{display:flex;grid-template-columns:auto 1fr;align-items:center}.contact-form .confirm input{width:22px;min-height:22px}.phone-box{margin-top:35px;padding:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.phone-box a{font-family:var(--serif);font-size:28px}.form-message{padding:15px;background:var(--warm);color:var(--ink)}.store-rows{display:grid;gap:70px}.store-rows article{display:grid;grid-template-columns:7fr 5fr;align-items:center;gap:65px}.store-rows article:nth-child(even) .store-image{order:2}.store-image img{aspect-ratio:16/9;object-fit:cover;border-radius:8px}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}.gallery-grid figure{grid-column:span 5;margin:0}.gallery-grid .gallery-wide{grid-column:span 7}.gallery-grid .gallery-tall{grid-column:span 7}.gallery-grid img{height:360px;object-fit:cover;border-radius:8px}.gallery-grid .gallery-tall img{height:470px}.footer{padding:55px 48px;display:grid;grid-template-columns:1fr 1.4fr;gap:50px;border-top:1px solid var(--line);background:#fff}.footer-brand{font-size:22px}.footer nav{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 25px}.footer nav a{min-height:44px;display:flex;align-items:center}
@media (min-width:768px) and (max-width:1023px){.site-header{height:68px;padding:0 28px}.brand{font-size:18px}.nav-button{display:flex}.global-nav{display:none}.nav-toggle:checked~.global-nav{display:grid}.home-hero{min-height:650px}.sub-hero{min-height:600px}.hero:after{width:75%}.hero-copy{width:65%;padding:90px 0 60px 40px}.hero h1,.sub-hero h1{font-size:48px}.hero-lead{font-size:16px}.container{width:calc(100% - 56px)}.section{padding:88px 0}h2{font-size:32px}.entry-panel{width:calc(100% - 56px)}.entry-grid{grid-template-columns:repeat(2,1fr)}.entry-grid>a:nth-child(3){border-left:0}.selection-main{grid-template-columns:1fr;gap:35px}.selection-detail{width:100%}.space-section .container,.editorial,.form-layout,.faq-layout{grid-template-columns:1fr;gap:45px}.visit-grid{grid-template-columns:repeat(2,1fr)}.visit-grid article:nth-child(3){grid-column:1/-1;border:0;border-top:1px solid var(--line);margin-top:20px;padding:25px 0 0}.three-grid,.product-guide{grid-template-columns:repeat(2,1fr)}.three-grid article:last-child,.product-guide article:last-child{grid-column:1/-1;border-left:0;border-top:1px solid var(--line)}.store-rows article{gap:35px}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid figure,.gallery-grid .gallery-wide,.gallery-grid .gallery-tall{grid-column:span 1}.gallery-grid img,.gallery-grid .gallery-tall img{height:320px}.final-cta{padding:60px 28px}.footer{padding:48px 28px}}
@media (max-width:1023px){.nav-button{position:relative;z-index:31;width:50px;height:50px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--ink);cursor:pointer}.nav-button span{display:block;width:23px;border-top:2px solid currentColor}.nav-button b{font-size:9px;line-height:1}.global-nav{position:absolute;z-index:30;top:100%;left:0;width:100%;padding:18px 28px;background:#fff;border-top:1px solid var(--line);box-shadow:0 15px 25px rgba(0,0,0,.08)}.global-nav a{border-bottom:1px solid var(--line)}.global-nav .nav-contact{justify-content:center;margin:12px 0 0;border:0}.nav-toggle:checked+.nav-button span:nth-child(1){transform:translateY(6px) rotate(45deg)}.nav-toggle:checked+.nav-button span:nth-child(2){opacity:0}.nav-toggle:checked+.nav-button span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}}
@media (max-width:767px){body{font-size:16px;line-height:1.85}.site-header{height:60px;padding:0 16px}.brand{max-width:260px;font-size:16px}.global-nav{display:none;padding:14px 20px}.nav-toggle:checked~.global-nav{display:grid}.hero,.home-hero,.sub-hero{min-height:calc(100svh - 60px);aspect-ratio:4/5}.hero>img{object-position:62% center}.hero:after{width:100%;background:linear-gradient(90deg,rgba(252,251,248,.97) 0%,rgba(252,251,248,.85) 58%,rgba(252,251,248,.05) 100%)}.hero-copy{width:86%;padding:96px 0 45px 20px}.hero h1,.sub-hero h1{margin:18px 0;font-size:38px;line-height:1.45}.hero-lead{font-size:15px;line-height:1.9}.hero-actions,.actions{align-items:stretch;flex-direction:column;gap:12px}.button{width:100%}.container{width:calc(100% - 40px)}.section{padding:68px 0}h2{font-size:28px}h3{font-size:21px}.section-title{gap:13px}.section-title svg{flex-basis:38px;width:38px}.entry-panel{width:calc(100% - 32px);margin:-30px auto 0;padding:20px 16px}.entry-heading{display:block}.entry-heading h2{font-size:26px}.entry-grid{grid-template-columns:1fr}.entry-grid>a{display:grid;grid-template-columns:1fr 42%;gap:12px;align-items:center;border-left:0;border-top:1px solid var(--line);padding:18px 0}.entry-grid>a:first-child{border-top:0}.entry-grid p{min-height:0}.entry-grid img{aspect-ratio:3/2}.selection-main,.space-section .container,.editorial,.form-layout,.faq-layout,.store-rows article{grid-template-columns:1fr;gap:30px}.selection-detail{width:100%;grid-template-columns:1fr}.space-section{padding-top:0}.visit-grid{grid-template-columns:1fr}.visit-grid article,.visit-grid article:first-child,.visit-grid article:nth-child(3){grid-column:auto;margin:0;padding:25px 0;border:0;border-top:1px solid var(--line)}.visit-grid article:last-child{border-bottom:1px solid var(--line)}.three-grid,.product-guide{grid-template-columns:1fr}.three-grid article,.three-grid article:first-child,.three-grid article:last-child,.product-guide article,.product-guide article:first-child,.product-guide article:last-child{grid-column:auto;padding:27px 0;border:0;border-top:1px solid var(--line)}.three-grid article:last-child,.product-guide article:last-child{border-bottom:1px solid var(--line)}.fact-list div{grid-template-columns:1fr;gap:5px}.contact-form .button{width:100%}.store-rows article:nth-child(even) .store-image{order:0}.gallery-grid{grid-template-columns:1fr}.gallery-grid figure,.gallery-grid .gallery-wide,.gallery-grid .gallery-tall{grid-column:1}.gallery-grid img,.gallery-grid .gallery-tall img{height:auto;aspect-ratio:4/3}.final-cta{padding:55px 20px;display:block;text-align:center}.final-cta .button{margin-top:20px}.footer{padding:42px 20px;grid-template-columns:1fr}.footer nav{grid-template-columns:1fr}.footer nav a{border-bottom:1px solid var(--line)}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation: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}}
