*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f8f4ec;color:#241b16;font-family:"Yu Gothic","Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;font-size:16px;line-height:1.9;overflow-x:hidden}body.nav-open{overflow:hidden}img{display:block;width:100%;max-width:100%;object-fit:cover}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}svg{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #c7933e;outline-offset:3px}.site-header{position:absolute;z-index:20;top:0;left:0;width:100%;height:84px;padding:0 48px;display:flex;align-items:center;justify-content:space-between;color:#fffdf8;border-bottom:1px solid rgba(255,255,255,.18)}.site-header.sub-header{position:relative;background:#17120f;border-color:#4b4038}.brand{display:flex;align-items:baseline;gap:12px;white-space:nowrap;font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;letter-spacing:.08em}.brand small{font-size:14px}.brand span{font-size:27px;font-weight:600}.global-nav{display:flex;align-items:center;gap:28px;font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;font-size:15px;letter-spacing:.05em}.global-nav>a{min-height:44px;display:flex;align-items:center;position:relative}.global-nav>a:not(.nav-contact)::after{content:"";position:absolute;left:0;right:100%;bottom:4px;height:1px;background:#e2b65e;transition:right 180ms ease}.global-nav>a:hover::after,.global-nav>a[aria-current="page"]::after{right:0}.nav-contact{padding:0 19px;background:#c7933e;color:#fffdf8}.nav-contact svg{width:20px;height:20px;margin-right:9px}.menu-toggle{display:none;background:transparent;border:0;color:#fffdf8;min-width:52px;min-height:52px;padding:6px;position:relative}.menu-toggle span{display:block;width:27px;height:1px;background:currentColor;margin:6px auto}.menu-toggle b{font-size:10px;font-weight:400}.hero{height:min(720px,68vh);min-height:620px;background-image:url("assets/images/hero.png");background-size:cover;background-position:center center;position:relative;color:#fffdf8;display:flex;align-items:center}.hero::before{content:"";position:absolute;left:0;top:0;bottom:0;width:58%;background:linear-gradient(90deg,rgba(15,10,7,.88) 0%,rgba(15,10,7,.62) 72%,rgba(15,10,7,0) 100%)}.hero-copy{position:relative;width:550px;margin-left:clamp(48px,5.5vw,88px);padding-top:65px}.kicker,.eyebrow{font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;letter-spacing:.12em}.kicker{display:flex;align-items:center;gap:10px;margin:0 0 10px}.kicker svg{width:22px;height:22px;color:#e2b65e}.hero h1,.final-cta h2,.page-hero h1{font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;font-weight:600;letter-spacing:.06em}.hero h1{font-size:56px;line-height:1.28;margin:0 0 14px;text-shadow:0 2px 12px rgba(0,0,0,.25)}.hero-emphasis,.page-hero h1 span{color:#e2b65e}.hero-lead{font-size:16px;line-height:1.9;margin:0 0 17px}.hero-actions{display:flex;align-items:center;gap:30px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:8px 30px;font-weight:600;transition:color 180ms ease,background-color 180ms ease}.button.primary{color:#fffdf8;background:#c7933e;border:1px solid #c7933e}.button.primary:hover{background:#a8752c;border-color:#a8752c}.text-link{display:inline-flex;align-items:center;gap:15px;min-height:44px;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;border-bottom:1px solid #cdbA9b}.text-link.light{border-color:rgba(255,255,255,.55)}.section{padding:0}.section-inner{width:min(1280px,calc(100% - 96px));margin:0 auto}.enjoy{background:#fffdf8;padding:18px 0 16px}.eyebrow{margin:0 0 12px;color:#8b642c;font-size:14px}.editorial-grid{display:grid;grid-template-columns:repeat(3,1fr)}.editorial-item{display:grid;grid-template-columns:46% 54%;min-height:190px;padding:0 20px;border-left:1px solid #cdba9b;align-items:stretch}.editorial-item:first-child{border-left:0;padding-left:0}.editorial-item:last-child{padding-right:0}.editorial-copy{padding:9px 18px 6px 0}.editorial-item h3,.visit-layout h2,.gallery-heading h2,.icon-heading{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:600;letter-spacing:.05em}.editorial-item h3{font-size:21px;line-height:1.5;margin:0 0 10px;display:flex;align-items:center;gap:8px}.editorial-item h3 svg{width:30px;height:30px;color:#a8752c;flex:0 0 auto}.editorial-item p{font-size:14px;line-height:1.8;margin:0 0 8px}.editorial-item img{height:100%;min-height:175px}.visit-band{background:#efe7da;padding:24px 0}.visit-layout{display:grid;grid-template-columns:31% 23% 46%;border:1px solid #cdba9b;background:#f8f4ec}.visit-info,.faq-preview{padding:18px 24px}.visit-layout h2{font-size:23px;margin:0 0 10px;display:flex;align-items:center;gap:10px}.visit-layout h2 svg{width:28px;height:28px;color:#9d6f2d}.info-table{margin:0 0 7px}.info-table div,.access-table div{display:grid;grid-template-columns:92px 1fr;border-top:1px solid #cdba9b;padding:6px 0}.info-table dt,.access-table dt{color:#74685c}.info-table dd,.access-table dd{margin:0}.entrance-figure{margin:0}.entrance-figure img{height:100%}.faq-preview{border-left:1px solid #cdba9b}.faq-preview dl{margin:0 0 7px}.faq-preview dl div{border-top:1px solid #cdba9b;padding:7px 0}.faq-preview dt{font-family:"Yu Mincho",serif;font-weight:600}.faq-preview dt::before{content:"Q";color:#9d6f2d;margin-right:9px}.faq-preview dd{margin:2px 0 0 26px;font-size:14px}.gallery-heading{padding:16px max(48px,calc((100% - 1280px)/2));background:#f8f4ec;display:flex;align-items:center;justify-content:space-between}.gallery-heading h2{font-size:27px;margin:0;display:flex;align-items:center;gap:10px}.gallery-heading h2 svg{width:30px;height:30px;color:#9d6f2d}.gallery-placeholder{min-height:180px;background:#241b16;color:#efe7da;display:grid;place-items:center;padding:30px}.gallery-placeholder p{max-width:700px;text-align:center;margin:0;font-family:"Yu Mincho",serif;font-size:19px}.final-cta{background:#241b16;color:#fffdf8;padding:42px 0}.final-layout{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:60px}.final-cta .kicker{color:#e2b65e}.final-cta h2{font-size:34px;line-height:1.45;margin:4px 0}.final-cta p{margin:8px 0}.final-actions{display:flex;align-items:center;justify-content:flex-end;gap:25px}.phone-link{font-family:"Yu Mincho",serif;font-size:23px}.phone-link small{display:block;font-family:"Yu Gothic",sans-serif;font-size:13px}.page-hero{min-height:330px;background:#241b16;color:#fffdf8;display:flex;align-items:center;position:relative;overflow:hidden}.page-hero::after{content:"";position:absolute;right:-8%;top:-50%;width:46%;height:190%;border:1px solid rgba(226,182,94,.25);transform:rotate(22deg)}.page-hero>div{width:min(1280px,calc(100% - 96px));margin:0 auto;position:relative;z-index:1}.page-hero .eyebrow{color:#e2b65e;margin:0}.page-hero h1{font-size:46px;line-height:1.35;margin:4px 0 10px}.page-hero p:last-child{max-width:610px;margin:0}.content-section{padding:68px 0 78px}.narrow,.form-wrap{width:min(880px,calc(100% - 96px));margin:0 auto}.icon-heading{font-size:32px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #cdba9b;padding-bottom:13px;margin:0 0 28px}.icon-heading svg{width:34px;height:34px;color:#9d6f2d}.large-copy{font-family:"Yu Mincho",serif;font-size:25px;line-height:1.9;margin:30px 0 48px}.concept-lines article{display:grid;grid-template-columns:230px 1fr;gap:45px;padding:28px 0;border-top:1px solid #cdba9b}.concept-lines h3{font-family:"Yu Mincho",serif;font-size:23px;margin:0}.concept-lines p{margin:0}.center-link{text-align:center;margin-top:42px}.menu-list{border-top:1px solid #cdba9b}.menu-list article{display:grid;grid-template-columns:90px 1fr;gap:28px;padding:34px 4%;border-bottom:1px solid #cdba9b}.menu-list article>svg{width:58px;height:58px;color:#9d6f2d}.menu-list h2{font-family:"Yu Mincho",serif;font-size:27px;margin:0 0 5px}.menu-list p{margin:0}.note{background:#efe7da;border-left:3px solid #c7933e;padding:16px 20px;margin:34px 0}.photo-mosaic{display:grid;grid-template-columns:1.25fr .8fr 1fr;grid-auto-rows:250px;gap:3px}.photo-mosaic figure{margin:0;position:relative;overflow:hidden}.photo-mosaic .wide{grid-column:span 2}.photo-mosaic .tall{grid-row:span 2}.photo-mosaic img{height:100%}.photo-mosaic figcaption{position:absolute;left:0;bottom:0;background:#241b16;color:#fffdf8;padding:5px 12px;font-size:14px}.access-address{font-family:"Yu Mincho",serif;font-size:27px;font-style:normal;margin:10px 0 30px}.access-table{margin:0}.access-table div{grid-template-columns:150px 1fr;padding:15px 0}.faq-list{border-top:1px solid #cdba9b}.faq-list details{border-bottom:1px solid #cdba9b;padding:0 18px}.faq-list summary{cursor:pointer;list-style:none;font-family:"Yu Mincho",serif;font-size:19px;font-weight:600;padding:19px 42px 19px 0;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:"＋";position:absolute;right:3px;color:#9d6f2d}.faq-list details[open] summary::after{content:"−"}.faq-list details p{margin:0 0 19px;padding:0 0 0 28px}.field{margin:0 0 24px}.field label{display:block;font-weight:600;margin-bottom:7px}.field em{font-style:normal;font-size:12px;background:#8d3f32;color:#fff;padding:3px 7px;margin-left:8px}.field input,.field textarea{width:100%;border:1px solid #998b79;background:#fffdf8;color:#241b16;padding:11px 13px;border-radius:0}.field input{min-height:48px}.field textarea{resize:vertical}.form-note{color:#63584d}.submit-button{width:100%}.form-status{font-weight:600;color:#6e4b16}.phone-box{text-align:center;border-top:1px solid #cdba9b;margin-top:45px;padding-top:28px}.phone-box p{margin:0}.phone-box a{display:block;font-family:"Yu Mincho",serif;font-size:30px}.phone-box small{display:block}.site-footer{background:#17120f;color:#f8f4ec;padding:42px 48px 17px}.footer-inner{max-width:1280px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:50px}.footer-brand{font-family:"Yu Mincho",serif;font-size:25px;margin:0 0 10px}.footer-brand small{font-size:14px}.site-footer address{font-style:normal;color:#d8cebf}.site-footer nav{display:grid;grid-template-columns:repeat(2,1fr);align-content:start;gap:2px 30px}.site-footer nav a{min-height:44px;display:flex;align-items:center;border-bottom:1px solid #473b33}.copyright{max-width:1280px;margin:28px auto 0;color:#a99c8d;font-size:12px}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1150px){.site-header{height:72px;padding:0 28px}.global-nav{gap:17px;font-size:13px}.brand span{font-size:23px}.hero{height:650px;min-height:650px;background-position:62% center}.hero::before{width:68%}.hero-copy{margin-left:28px;width:52%;padding-top:55px}.hero h1{font-size:46px}.editorial-item{grid-template-columns:1fr}.editorial-item img{min-height:140px}.visit-layout{grid-template-columns:38% 25% 37%}.final-layout{grid-template-columns:1fr}.final-actions{justify-content:flex-start}}
@media(max-width:900px){.menu-toggle{display:block}.global-nav{display:none;position:fixed;inset:72px 0 0;background:#17120f;padding:22px 28px 40px;overflow:auto;flex-direction:column;align-items:stretch;gap:0;font-size:16px}.global-nav.is-open{display:flex}.global-nav>a{min-height:54px;border-bottom:1px solid #4b4038}.global-nav .nav-contact{justify-content:center;margin-top:18px}.section-inner{width:calc(100% - 56px)}.editorial-grid{grid-template-columns:1fr 1fr}.editorial-item:first-child{grid-column:1/-1;border-bottom:1px solid #cdba9b;padding:0 0 16px;grid-template-columns:1fr 1fr}.editorial-item:nth-child(2){border-left:0;padding-left:0}.visit-layout{grid-template-columns:60% 40%}.faq-preview{grid-column:1/-1;border-left:0;border-top:1px solid #cdba9b}.page-hero>div{width:calc(100% - 56px)}.narrow,.form-wrap{width:calc(100% - 56px)}.photo-mosaic{grid-template-columns:1fr 1fr}.photo-mosaic .wide{grid-column:span 1}.photo-mosaic .tall{grid-row:span 1}.footer-inner{grid-template-columns:1fr}}
@media(max-width:599px){body{font-size:16px;line-height:1.8}.site-header{height:64px;padding:0 20px}.brand{gap:7px}.brand small{font-size:11px}.brand span{font-size:20px}.global-nav{inset:64px 0 0;padding:18px 20px 35px}.hero{height:700px;min-height:700px;background-position:62% center;align-items:flex-start}.hero::before{top:64px;width:96%;height:440px;bottom:auto;background:linear-gradient(90deg,rgba(15,10,7,.9) 0%,rgba(15,10,7,.61) 78%,rgba(15,10,7,0) 100%)}.hero-copy{width:calc(100% - 40px);margin:0 20px;padding-top:120px}.hero h1{font-size:38px;line-height:1.28;letter-spacing:.035em;margin-bottom:12px}.hero-lead{font-size:15px;line-height:1.75}.hero-actions{align-items:flex-start;flex-direction:column;gap:8px}.hero-actions .button{width:100%}.section-inner{width:calc(100% - 40px)}.enjoy{padding:24px 0}.editorial-grid{display:block}.editorial-item,.editorial-item:first-child{display:flex;flex-direction:column;padding:18px 0;border-left:0;border-bottom:1px solid #cdba9b}.editorial-item img{height:auto;aspect-ratio:4/3}.editorial-copy{padding:0 0 12px}.visit-band{padding:20px 0}.visit-layout{display:flex;flex-direction:column}.visit-info,.faq-preview{padding:18px}.entrance-figure img{aspect-ratio:5/4}.faq-preview{border-top:1px solid #cdba9b}.gallery-heading{padding:16px 20px;display:block}.gallery-heading h2{font-size:24px;margin-bottom:8px}.gallery-placeholder{min-height:210px}.final-cta{padding:38px 0}.final-layout{gap:28px;text-align:center}.final-cta h2{font-size:28px}.final-actions{display:flex;flex-direction:column}.final-actions .button{width:100%}.page-hero{min-height:290px}.page-hero>div{width:calc(100% - 40px)}.page-hero h1{font-size:38px}.content-section{padding:48px 0 58px}.narrow,.form-wrap{width:calc(100% - 40px)}.icon-heading{font-size:25px}.large-copy{font-size:21px;margin:24px 0 38px}.concept-lines article{display:block;padding:24px 0}.concept-lines h3{margin-bottom:10px}.menu-list article{grid-template-columns:58px 1fr;gap:15px;padding:25px 0}.menu-list article>svg{width:47px;height:47px}.menu-list h2{font-size:23px}.photo-mosaic{display:block}.photo-mosaic figure{margin-bottom:3px}.photo-mosaic img{height:auto;aspect-ratio:4/3}.photo-mosaic figure:nth-child(4){display:none}.access-address{font-size:22px}.access-table div{grid-template-columns:100px 1fr}.faq-list details{padding:0 4px}.faq-list summary{font-size:17px}.site-footer{padding:38px 20px 15px}.site-footer nav{grid-template-columns:1fr}.footer-inner{gap:26px}.copyright{margin-top:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.map-frame.access-map-primary{width:100%;min-width:0;margin:0;overflow:hidden}.map-frame.access-map-primary iframe{display:block;width:100%;min-height:420px;border:0}.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}}
