@font-face{font-family:sans;src:url(/_next/static/media/1231af96db18399c.p.woff2) format("woff2");font-display:swap;font-weight:400 700}.__className_2092ba{font-family:sans,Yu Gothic,Hiragino Kaku Gothic ProN,sans-serif}.__variable_2092ba{--font-sans:"sans",Yu Gothic,Hiragino Kaku Gothic ProN,sans-serif}@font-face{font-family:"serif";src:url(/_next/static/media/086c1be61a133c85.p.woff2) format("woff2");font-display:swap;font-weight:500}.__className_34c6de{font-family:"serif",Yu Mincho,Hiragino Mincho ProN,serif;font-weight:500}.__variable_34c6de{--font-serif:"serif",Yu Mincho,Hiragino Mincho ProN,serif}:root{--cream:#f9f6ef;--paper:#fffdf8;--green:#213f36;--ink:#293b33;--muted:#646b62;--line:#d6d8ca;--gold:#805b2f;--soft:#edeede;--serif:var(--font-serif),"Yu Mincho",serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font-sans),"Yu Gothic",sans-serif;font-size:15px;line-height:1.9;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a,button,input,summary{-webkit-tap-highlight-color:transparent}a,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}button{font:inherit}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500}h2{font-size:clamp(25px,2.65vw,40px);line-height:1.7;letter-spacing:.065em}p+p{margin-top:20px}.wrap{width:min(1160px,calc(100% - 96px));margin-inline:auto}.section{padding-top:100px;padding-bottom:100px}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.18em;color:var(--gold);margin-bottom:22px}.topline{height:34px;background:var(--green);color:var(--cream);font-size:10px;letter-spacing:.08em;padding:5px max(32px,calc((100% - 1280px) / 2));display:flex;justify-content:space-between}.header{min-height:100px;display:flex;align-items:center;gap:34px;padding:20px 4%;background:var(--cream);border-bottom:1px solid var(--line);position:relative;z-index:20}.brand{display:flex;flex-direction:column;line-height:1.5;flex-shrink:0}.brand-en{font-family:Georgia,serif;font-size:29px;letter-spacing:.16em}.brand-ja{font-size:10px;letter-spacing:.12em;margin-top:5px}.desktop-nav{display:flex;gap:28px;font-size:12px;margin-left:auto;white-space:nowrap}.desktop-nav a:hover{color:var(--gold)}.button{display:inline-flex;align-items:center;justify-content:center;gap:35px;padding:17px 26px;background:var(--green);color:var(--paper);font-size:13px;font-weight:500;min-height:54px;transition:background .2s}.button:hover{background:#36594a}.button span{font-size:19px}.header-book{padding:12px 20px;gap:24px;white-space:nowrap}.mobile-menu{display:none}.hero{display:grid;grid-template-columns:48% 52%;min-height:660px}.hero-copy{padding:75px 9% 52px 12%;align-self:center}.hero-context{font-family:var(--font-sans),sans-serif;display:block;font-size:13px;letter-spacing:.07em;margin-bottom:24px}.hero h1{font-size:clamp(32px,3.45vw,51px);line-height:1.7;letter-spacing:.05em;white-space:nowrap}.hero-description{margin-top:24px;font-size:14px;color:var(--muted);line-height:2.1}.hero-photo{position:relative;min-height:660px;overflow:hidden}.hero-photo>img{height:100%;object-fit:cover;object-position:64% center}.hero-photo:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(24,40,28,.66));pointer-events:none}.photo-label{position:absolute;z-index:1;bottom:44px;left:40px;color:white;display:grid;grid-gap:5px;gap:5px}.photo-label span{font-family:var(--serif);font-weight:500;font-size:23px;letter-spacing:.08em}.photo-label small{font-size:10px;letter-spacing:.17em}.hero-price{margin-top:28px;display:flex;align-items:baseline;gap:18px;flex-wrap:wrap}.hero-price>span{font-size:12px}.hero-price strong{font-family:Georgia,serif;font-size:33px;font-weight:400;white-space:nowrap}.hero-price small{font:12px var(--font-sans),sans-serif;margin:0 3px}.hero-price i{font-style:normal;color:#aab09e;font-size:18px;margin-inline:5px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:27px}.text-link{display:inline-flex;gap:22px;align-items:center;font-size:12px;border-bottom:1px solid var(--ink);padding:9px 0;min-height:44px}.text-link:hover{color:var(--gold)}.hero-hours{font-size:11px;letter-spacing:.05em;margin-top:19px;color:var(--muted)}.hero-hours span{margin-left:20px}.mobile-break{display:none}.quick-info{display:flex;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line);padding-block:28px;font-size:12px;letter-spacing:.04em}.quick-info b{font-family:Georgia,serif;color:var(--gold);font-weight:400;margin-right:15px;font-size:17px}.intro{display:grid;grid-template-columns:1fr 1fr;grid-gap:10%;gap:10%;align-items:center}.intro>div:last-child{line-height:2.2;color:var(--muted)}.intro .text-link{margin-top:25px;color:var(--ink)}.menu-section{background:var(--soft)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:42px}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:30px;gap:30px}.course-image{display:block;position:relative;aspect-ratio:1.4;overflow:hidden}.course-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.course-image:hover img{transform:scale(1.035)}.course-number{position:absolute;left:0;bottom:0;background:var(--soft);padding:9px 19px 0 0;font-family:Georgia,serif;font-size:25px;color:var(--gold)}.course-copy{padding-top:26px}.course-copy .eyebrow{margin-bottom:9px;font-size:10px}.course h3{font-size:23px;letter-spacing:.02em;margin-bottom:14px}.course p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:2}.price-line{display:flex;align-items:center;gap:15px;border-top:1px solid #cccebd;margin-top:24px;padding-top:17px}.price-line>span{font-size:13px}.price-line strong{font-size:29px;font-weight:400;font-family:Georgia,serif}.price-line small{font-size:11px;margin-left:3px}.price-line a{font-size:11px;margin-left:auto}.space{display:grid;grid-template-columns:1.1fr 1fr;grid-gap:9%;gap:9%;align-items:center}.space-image{position:relative;padding-bottom:28px}.space-image img{width:100%;height:420px;object-fit:cover}.space-image span{position:absolute;bottom:0;left:0;font-size:9px;letter-spacing:.2em;color:var(--gold)}.space p:not(.eyebrow){margin-top:26px;color:var(--muted);font-size:14px}.space .text-link{margin-top:30px}.access-section{background:var(--soft)}.access-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:7%;gap:7%;align-items:center}.access-grid figure{margin:0}.access-grid figure img{height:420px;width:100%;object-fit:cover}.access-grid figcaption{font-size:11px;color:var(--muted);margin-top:13px}.store-details{font-size:13px;margin-top:26px}.store-details>div{display:grid;grid-template-columns:88px 1fr;border-bottom:1px solid var(--line);padding:14px 0;grid-gap:16px;gap:16px}.store-details dt{color:var(--muted)}.store-details dd{margin:0}.store-details a{text-decoration:underline;text-underline-offset:4px}.faq-section{display:grid;grid-template-columns:1fr 1.8fr;grid-gap:7%;gap:7%}.faq-section>div>p:not(.eyebrow){color:var(--muted);font-size:13px;margin-top:14px}.faq-section .text-link{margin-top:25px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;align-items:center;gap:18px;padding:24px 0;list-style:none;cursor:pointer;font-size:14px}.faq-list summary::-webkit-details-marker{display:none}.q{font:22px Georgia,serif;color:var(--gold)}.expand{margin-left:auto;font-size:19px;flex-shrink:0}.faq-list details[open] .expand{transform:rotate(45deg)}.faq-list details>p{padding:0 32px 24px;color:var(--muted);font-size:13px;line-height:2}.booking{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:70px max(48px,calc((100% - 1160px) / 2));background:var(--green);color:var(--paper)}.booking .eyebrow{color:#d4bc8f}.booking h2{font-size:30px}.booking p:not(.eyebrow){font-size:13px;margin-top:15px;color:#d5dccf}.booking-actions{display:flex;flex-direction:column;text-align:center;flex-shrink:0}.phone{font:35px Georgia,serif;letter-spacing:.05em}.booking-actions>span{font-size:11px;margin-top:8px;color:#d5dccf}.line-link{font-size:12px;border:1px solid #829581;padding:13px 30px;margin-top:20px;display:flex;justify-content:space-between;gap:40px}.footer{padding:65px max(48px,calc((100% - 1160px) / 2)) 25px;display:grid;grid-template-columns:1fr 1fr;grid-gap:40px;gap:40px}.footer address{font-size:12px;font-style:normal;color:var(--muted);margin-top:22px}.footer-nav{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px 30px;gap:10px 30px;font-size:12px;align-content:start}.footer small{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px;font-size:10px;color:var(--muted);letter-spacing:.1em}.mobile-contact{display:none}.breadcrumb{padding-top:26px;display:flex;gap:12px;font-size:11px;color:var(--muted)}.breadcrumb span:last-child{overflow-wrap:anywhere}.page-intro{padding-top:60px;padding-bottom:55px}.page-intro h1{font-size:clamp(30px,4vw,48px);line-height:1.6}.lead{font-size:15px;color:var(--muted);max-width:720px;margin-top:25px}.page-body{padding-bottom:90px}.course-full{display:grid;grid-template-columns:1fr 1fr;grid-gap:48px 70px;gap:48px 70px}.course-full .course{border-top:1px solid var(--line);scroll-margin-top:35px}.course-full .course-copy{padding-top:30px}.price-table{width:100%;border-collapse:collapse;margin-top:25px}.price-table td,.price-table th{padding:14px 0;border-bottom:1px solid var(--line);font-weight:400}.price-table thead{font-size:11px;color:var(--muted)}.price-table th{text-align:left}.price-table td,.price-table th:last-child{text-align:right}.price-table td{font:24px Georgia,serif}.price-table small{font:11px Noto Sans JP,sans-serif;margin-left:5px}.note{font-size:12px;color:var(--muted);margin-top:30px}.two-column{display:grid;grid-template-columns:1fr 1fr;grid-gap:65px;gap:65px;align-items:start}.two-column img{width:100%;height:auto}.prose{max-width:800px;margin-inline:auto}.prose h2{font-size:27px;margin:45px 0 18px}.prose h3{font-size:21px;margin:30px 0 14px}.prose p{margin-block:20px;line-height:2.1}.prose a{text-decoration:underline;text-underline-offset:4px}.prose ul{padding-left:1.5em}.gallery{display:grid;grid-template-columns:1fr 1fr;grid-gap:36px;gap:36px}.gallery figure{margin:0}.gallery figure:first-child{grid-column:1/-1}.gallery img{width:100%;object-fit:cover}.gallery figcaption{font-size:12px;color:var(--muted);margin-top:12px}.review-summary{display:flex;align-items:center;gap:35px;padding:36px;background:var(--soft);margin-bottom:25px}.review-score{font:64px Georgia,serif}.review-stars{color:var(--gold);letter-spacing:.1em;font-size:20px}.guide-list{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 50px;gap:0 50px}.guide-list a{border-top:1px solid var(--line);padding:23px 0;display:flex;gap:15px;justify-content:space-between;font-family:var(--serif);font-size:17px;font-weight:500}.guide-list a:hover{color:var(--gold)}.skip{position:fixed;top:-100px;left:16px;background:var(--paper);padding:12px 20px;z-index:99}.skip:focus{top:15px}.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}@media (min-width:1600px){.hero-copy{padding-left:max(12%,calc((100vw - 1280px) / 2))}.hero,.hero-photo{min-height:720px}}@media (max-width:1100px){.header{gap:20px}.desktop-nav{gap:15px;font-size:11px}.header-book{gap:15px}.brand-en{font-size:25px}.brand-ja{font-size:9px}.hero-copy{padding:50px 8%}.hero h1{font-size:35px}.hero,.hero-photo{min-height:600px}.actions{gap:16px}.hero .actions .text-link{font-size:11px}.wrap{width:calc(100% - 64px)}.course-grid{gap:20px}.course h3{font-size:20px}.section{padding-block:75px}.price-line{gap:9px}.price-line strong{font-size:25px}}@media (max-width:760px){html{scroll-padding-top:20px}.topline{height:28px;padding:4px 20px;font-size:9px}.topline>span{display:none}.header{padding:18px 20px;min-height:80px;justify-content:space-between}.brand-en{font-size:23px}.brand-ja{font-size:8px}.desktop-nav,.header-book{display:none}.mobile-menu{display:block;font-size:11px}.mobile-menu summary{list-style:none;padding:12px 0 12px 12px;cursor:pointer}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{margin-left:5px}.mobile-menu nav{position:absolute;top:100%;left:0;right:0;display:grid;padding:18px 24px 28px;background:var(--cream);box-shadow:0 15px 18px #213f3612;border-bottom:1px solid var(--line)}.mobile-menu nav a{padding:12px;border-bottom:1px solid var(--line)}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:42px 24px 36px}.hero .eyebrow{font-size:9px;margin-bottom:20px}.hero-context{font-size:11px;margin-bottom:17px}.hero h1{font-size:35px;line-height:1.65;letter-spacing:.04em;white-space:normal}.hero-description{font-size:13px;margin-top:20px;line-height:2}.hero-price{gap:16px;margin-top:21px}.hero-price strong{font-size:31px}.hero-price>span{font-size:11px}.hero .actions{margin-top:21px;gap:19px}.button{padding:15px 18px;gap:19px;font-size:12px;min-height:52px}.hero-hours{font-size:10px;margin-top:15px}.hero-photo{min-height:330px;width:100%}.hero-photo>img{object-position:50% 55%}.photo-label{bottom:24px;left:24px}.photo-label span{font-size:19px}.photo-label small{font-size:9px}.wrap{width:calc(100% - 48px)}.quick-info{display:grid;grid-template-columns:1fr;padding-block:22px;grid-gap:12px;gap:12px;font-size:11px}.quick-info b{margin-right:12px;font-size:14px}.section{padding-block:60px}.access-grid,.faq-section,.intro,.space,.two-column{grid-template-columns:1fr;gap:30px}.intro h2{font-size:29px}.intro>div:last-child{font-size:14px}.desktop-break{display:none}.eyebrow{font-size:10px;margin-bottom:15px}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:26px}.section-heading>.text-link{margin-top:17px}.course-grid{grid-template-columns:1fr;gap:38px}.course-image{aspect-ratio:1.65}.course-copy{padding-top:20px}.course h3{font-size:23px}.course p:not(.eyebrow){font-size:13px}.price-line{margin-top:18px;padding-top:12px;gap:17px}.price-line strong{font-size:29px}.price-line a{font-size:12px}.space-image img{height:300px}.space .text-link,.space p:not(.eyebrow){margin-top:18px}.access-grid figure img{height:280px}.store-details{font-size:12px}.store-details>div{grid-template-columns:75px 1fr;gap:12px}.access-grid .actions{gap:15px}.faq-list summary{font-size:13px;gap:12px;padding:21px 0}.faq-list details>p{padding-left:0;padding-right:12px}.faq-section .text-link{margin-top:15px}.booking{display:block;padding:48px 24px}.booking h2{font-size:25px}.booking-actions{text-align:left;margin-top:28px;align-items:flex-start}.phone{font-size:32px}.line-link{width:100%;justify-content:space-between}.footer{grid-template-columns:1fr;padding:42px 24px 90px;gap:30px}.footer-nav{font-size:12px;gap:13px 25px}.mobile-contact{display:grid;position:fixed;bottom:0;left:0;right:0;grid-template-columns:.8fr 1.2fr;z-index:30;background:var(--green);padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -2px 12px #213f3615}.mobile-contact a{min-height:58px;display:flex;align-items:center;justify-content:center;font-size:12px;gap:14px;color:var(--cream)}.mobile-contact a:first-child{background:#eceedd;color:var(--green)}.breadcrumb{padding-top:20px;font-size:10px}.page-intro{padding-top:35px;padding-bottom:35px}.page-intro h1{font-size:31px}.lead{font-size:13px;margin-top:17px}.page-body{padding-bottom:60px}.course-full{grid-template-columns:1fr;gap:35px}.prose{font-size:14px}.prose h2{font-size:23px}.gallery{grid-template-columns:1fr;gap:28px}.review-summary{padding:26px;gap:24px}.review-score{font-size:52px}.guide-list{grid-template-columns:1fr}.guide-list a{font-size:16px}.mobile-break{display:block}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}.article-next{margin-top:48px;border-top:1px solid var(--line);padding-top:25px;display:flex;flex-wrap:wrap;gap:20px;font-size:13px}@media (max-width:760px){.hero h1{font-size:clamp(25px,7.4vw,32px)}.hero .actions{gap:15px}.hero .actions .button{font-size:11px;padding:14px;gap:12px}.hero .actions .text-link{font-size:11px}}.analytics-settings{border:0;background:none;color:inherit;font:inherit;padding:0;text-align:left;cursor:pointer}.hero-assurance{margin-top:22px;font-size:11px;color:var(--muted)}.welcome-facts{display:grid;grid-template-columns:1fr 1fr;grid-gap:40px;gap:40px;margin-bottom:40px}.welcome-facts strong{font-family:var(--serif);font-size:22px;font-weight:500}.welcome-facts p{margin-top:12px;color:var(--muted)}.visit-steps{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:28px;gap:28px;list-style:none;padding:0;margin:0}.visit-steps li{padding:26px;border:1px solid var(--line);background:var(--paper)}.visit-steps li>span{display:block;color:var(--gold);font:28px Georgia,serif;margin-bottom:22px}.visit-steps h3{font-size:18px;margin-bottom:15px}.visit-steps p{font-size:13px;color:var(--muted)}.prose .visit-steps{grid-template-columns:1fr;margin-bottom:48px}.course-guide{padding-bottom:48px}.course-guide h2{font-size:25px;margin-bottom:24px}.course-choices{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:20px;gap:20px}.course-choices a{border:1px solid var(--line);background:var(--paper);padding:22px;display:flex;flex-direction:column;gap:10px}.course-choices a:hover{border-color:var(--green)}.course-choices strong{font-size:15px;font-weight:500}.course-choices span{font-size:12px;color:var(--muted)}.review-invitation{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:0 0 90px}.review-invitation p:not(.eyebrow){margin-top:20px;color:var(--muted)}@media (max-width:760px){.course-choices,.visit-steps,.welcome-facts{grid-template-columns:1fr;gap:20px}.welcome-facts strong{font-size:20px}.visit-steps li{padding:24px}.visit-steps li>span{margin-bottom:12px}.review-invitation{flex-direction:column;align-items:flex-start;padding-bottom:60px;gap:24px}.hero-description{font-size:12px}}.consent{position:fixed;bottom:24px;left:24px;z-index:40;width:min(360px,calc(100% - 48px));padding:20px;background:var(--paper);border:1px solid var(--line);box-shadow:0 4px 25px #213f3620;font-size:12px}.consent p{font-family:inherit;line-height:1.8}.consent>a{text-decoration:underline;font-size:11px}.consent>div{display:flex;gap:12px;margin-top:14px}.consent button{flex:1 1;padding:10px;border:1px solid var(--green);background:var(--paper);font-size:12px;cursor:pointer;color:var(--green)}.consent button:last-child{background:var(--green);color:var(--paper)}@media (max-width:760px){.consent{bottom:76px;left:20px;width:calc(100% - 40px)}}