@font-face{font-family:Telop;src:url('assets/telop-mincho.woff') format('woff');font-display:swap;font-weight:400}
:root{--forest:#203e36;--deep:#142d27;--ink:#263a33;--ivory:#f5f2eb;--paper:#eae6da;--gold:#d5bd8d;--line:#c9c9b8;--serif:Telop,'Yu Mincho','Hiragino Mincho ProN',serif;--sans:'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);font-size:14px;-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,summary{touch-action:manipulation}button{cursor:pointer;color:inherit}a,button,summary,.check-item{position:relative;-webkit-tap-highlight-color:transparent}button{border:0}img{display:block;width:100%;height:100%;object-fit:cover}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h2{font-size:clamp(31px,3.4vw,50px);line-height:1.62;letter-spacing:.05em}h2 em,h1 em{font-style:normal}p{line-height:2.1}em{font-style:normal}small{font-size:11px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #bc9650;outline-offset:6px}::selection{background:#c7b286;color:#183c32}[hidden]{display:none!important}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip-link{position:fixed;top:-80px;left:15px;z-index:1000;padding:14px 20px;background:var(--ivory)}.skip-link:focus{top:10px}.section-pad{padding:105px max(6.7vw,24px)}.section-kicker{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:19px;margin-bottom:60px;font-size:10px;letter-spacing:.13em}.section-kicker span:first-child{font-family:Georgia,serif;font-size:12px;letter-spacing:.18em}.section-kicker.light{border-color:#678075;color:#e3e8dc}.eyebrow{font-size:10px;letter-spacing:.17em;line-height:1.7}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:22px 29px;min-height:66px;border-radius:2px 16px 2px 16px;overflow:hidden;font-size:12px;letter-spacing:.04em;transition:transform .25s,box-shadow .25s,background .25s}.button svg{width:21px;flex:none}.button-light{background:linear-gradient(135deg,#f9f6e9,#e4ddcd);color:var(--deep);box-shadow:0 5px 0 #b3aa90,0 12px 30px #081a2440}.button-gold{background:linear-gradient(120deg,#e8d9b5,#c6a66f 90%);color:#1d352c;box-shadow:0 5px 0 #987d4f,0 12px 30px #071b2850}.button-outline{color:#fff;border:1px solid #d6e0d0;background:linear-gradient(120deg,#ffffff14,#ffffff05);box-shadow:0 4px 0 #0e292777;backdrop-filter:blur(8px)}.button:hover{transform:translateY(-3px);box-shadow:0 8px 0 #8d876c,0 16px 30px #071b2430}.text-link{display:inline-flex;align-items:center;gap:40px;border-bottom:1px solid;padding:12px 0;font-size:12px;overflow:hidden}.text-link svg{width:20px;transition:transform .3s}.text-link:hover svg{transform:translateX(5px)}.circle-button{border:1px solid #687b68;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;flex:none;background:linear-gradient(140deg,#f9f7f0,#e4e4d5);box-shadow:0 3px 0 #9ca28e;overflow:hidden;transition:transform .3s,background .3s}.circle-button:hover{transform:rotate(-35deg);background:#d9dfcb}.site-header{position:absolute;top:0;left:0;width:100%;z-index:60;display:flex;align-items:center;justify-content:space-between;padding:28px 4.3vw;color:#fff;border-bottom:1px solid #ffffff35;gap:24px;transition:background .3s,padding .3s}.site-header.scrolled{position:fixed;padding-top:14px;padding-bottom:14px;background:#f5f2ebf5;color:var(--ink);border-color:#cccdbd;backdrop-filter:blur(12px);box-shadow:0 3px 18px #14291d0c}.brand{flex-shrink:0;display:flex;flex-direction:column;align-items:center;overflow:hidden}.brand-en{font-family:Georgia,'Times New Roman',serif;font-size:30px;font-style:italic;letter-spacing:-1px;line-height:1.05}.brand-ja{font-size:9px;letter-spacing:.24em;margin-top:8px}.desktop-nav{display:flex;gap:27px;align-items:center}.desktop-nav a{font-size:11px;letter-spacing:.05em;padding:10px 0;overflow:hidden}.desktop-nav a::after{content:'';position:absolute;bottom:2px;left:0;right:100%;height:1px;background:currentColor;transition:right .3s}.desktop-nav a:hover::after{right:0}.header-actions{display:flex;align-items:center;gap:23px}.sound-toggle{background:transparent;display:flex;align-items:center;gap:8px;color:inherit;padding:8px 4px;font-size:9px;white-space:nowrap;overflow:hidden}.sound-bars{display:flex;align-items:center;gap:2px;height:15px}.sound-bars i{height:6px;width:1px;background:currentColor}.sound-bars i:nth-child(2){height:13px}.sound-bars i:nth-child(3){height:9px}.sound-toggle[aria-pressed=false] .sound-bars i{height:2px}.header-book{display:flex;align-items:center;gap:20px;font-size:11px;padding:14px 20px;border:1px solid #ffffff70;box-shadow:0 3px 0 #ffffff12;background:linear-gradient(130deg,#ffffff0a,#ffffff22);border-radius:1px 10px 1px 10px;overflow:hidden}.header-book svg{width:18px}.scrolled .header-book{background:var(--forest);border-color:var(--forest);color:#fff}.nav-toggle{display:none;background:transparent;width:34px;height:38px;padding:8px 3px}.nav-toggle>span:nth-child(-n+2){display:block;height:1px;background:currentColor;margin:7px 0;transition:transform .3s}.nav-toggle[aria-expanded=true]>span:first-child{transform:translateY(4px) rotate(45deg)}.nav-toggle[aria-expanded=true]>span:nth-child(2){transform:translateY(-4px) rotate(-45deg)}.mobile-nav{position:fixed;z-index:55;top:78px;left:0;width:100%;max-height:calc(100svh - 78px);overflow:auto;background:#f5f2eb;color:var(--forest);padding:30px 7vw 45px;box-shadow:0 18px 30px #112d2740}.mobile-nav a{display:block;padding:16px 4px;border-bottom:1px solid #cdd2c6;font-family:var(--serif);font-size:21px}
.hero{position:relative;min-height:790px;height:100svh;max-height:1120px;background:#314138;color:#fff;overflow:hidden}.hero-image{position:absolute;inset:0 0 0 18%;transform:scale(1.09);transition:transform 2.8s cubic-bezier(.12,.57,.18,1)}.hero-image img{object-position:57% 50%;filter:brightness(.77) saturate(.7)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#122b23f5 0%,#203e36c9 23%,#233a3348 62%,#162e2820 100%),linear-gradient(0deg,#112c25c9,transparent 40%,transparent 76%,#1d332974)}.hero-halo{position:absolute;width:800px;height:800px;border:1px solid #dfd4ac26;border-radius:50%;left:-220px;top:8%;transform:scale(.75);opacity:0;transition:transform 2.5s,opacity 2.5s}.hero-halo::after{content:'';position:absolute;inset:45px;border:1px solid #dfd4ac15;border-radius:50%}.hero-content{position:relative;z-index:2;padding:181px 8.2vw 160px;max-width:870px}.hero-eyebrow{display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:.21em;color:#e5ddc6;margin-bottom:28px}.hero-eyebrow span{width:25px;height:1px;background:#c6bc97}.hero h1{font-size:clamp(48px,5.15vw,82px);line-height:1.44;letter-spacing:.06em;white-space:nowrap;text-shadow:0 3px 30px #08271d30}.hero h1 span{display:block}.hero h1 em{color:#e5cca0}.hero-copy{font-size:13px;letter-spacing:.1em;line-height:2.1;margin-top:25px;color:#f0f0e5}.hero-cta{margin-top:30px}.hero-bottom{position:absolute;bottom:34px;left:4.3vw;right:4.3vw;display:flex;justify-content:space-between;align-items:flex-end;font-size:10px;letter-spacing:.1em;line-height:1.9;color:#e2e4d8}.hero-bottom b{font-weight:400;font-size:10px}.scroll-cue{display:flex;align-items:center;gap:24px;font-size:9px;letter-spacing:.18em;overflow:hidden}.scroll-cue i{display:grid;place-items:center;width:46px;height:46px;border:1px solid #ffffff5a;border-radius:50%;font-style:normal;font-size:20px}.hero-index{font:italic 18px Georgia,serif}.hero-index i{font-style:normal;display:inline-block;margin:0 15px;color:#c0ba99}.hero-side{position:absolute;right:27px;top:40%;writing-mode:vertical-rl;font:10px Georgia,serif;letter-spacing:.22em;color:#f3f4e2}.hero.is-ready .hero-image{transform:scale(1)}.hero.is-ready .hero-halo{transform:scale(1);opacity:1}.hero.is-ready h1 span{animation:heroText 1.5s cubic-bezier(.14,.73,.16,1) both}.hero.is-ready h1 span:nth-child(2){animation-delay:.13s}.hero.is-ready h1 span:nth-child(3){animation-delay:.25s}.hero.is-ready .hero-copy,.hero.is-ready .hero-cta{animation:softRise 1.3s .5s both}.welcome-strip{display:flex;justify-content:center;align-items:center;gap:50px;background:#e8e8dd;padding:24px 5%;font-size:11px;letter-spacing:.1em}.welcome-strip i{width:4px;height:4px;border-radius:50%;background:#98a28b}
.philosophy-grid{display:grid;grid-template-columns:1fr .98fr;gap:11%}.philosophy-photo{position:relative;margin-right:30px;height:620px}.philosophy-photo::before{content:'';position:absolute;inset:26px -28px -26px 28px;border:1px solid #afb9a6}.philosophy-photo img{position:relative;filter:saturate(.75)}.photo-caption{display:block;position:absolute;left:20px;bottom:24px;color:#fff;font-size:11px;letter-spacing:.08em;text-shadow:0 1px 10px #000}.photo-number{font:italic 96px Georgia,serif;position:absolute;bottom:30px;right:-95px;color:#e8dfc9;text-shadow:0 1px 1px #556b3430}.philosophy-copy{padding-top:20px}.philosophy-copy h2{margin:18px 0 30px}.philosophy-copy h2 em{font-size:.85em}.philosophy-copy>p:not(.eyebrow){line-height:2.25;font-size:12px;letter-spacing:.06em;margin-bottom:20px}.philosophy-copy .philosophy-sign{font-family:var(--serif);font-size:19px!important;margin:29px 0 20px!important}.philosophy-copy .text-link{margin-top:6px}
.care-section{position:relative;background:var(--forest);color:#eaf0e3;overflow:hidden}.care-background{position:absolute;inset:0;background:radial-gradient(ellipse at 10% 80%,#6a7a5855,transparent 53%),radial-gradient(ellipse at 90% 20%,#68857240,transparent 45%),linear-gradient(125deg,#122e2720,#29453c);pointer-events:none}.care-section>*:not(.care-background){position:relative}.care-grid{display:grid;grid-template-columns:.85fr 1.1fr;gap:12%}.care-intro h2{font-size:56px;line-height:1.6;margin:20px 0 28px}.care-intro h2 em{color:#dbc998}.care-intro>p{font-size:12px;letter-spacing:.06em}.care-orbit{position:relative;width:270px;height:250px;display:grid;place-items:center;margin:30px 0 10px}.orbit-ring{position:absolute;inset:15px 30px;border:1px solid #d5cba443;border-radius:50%;transform:rotate(-30deg)}.ring-two{inset:36px 10px;transform:rotate(30deg)}.ring-three{inset:38px 46px;transform:rotate(70deg)}.care-orbit svg{width:85px;height:85px;color:#d4c6a2;stroke-width:.6}.care-orbit span{position:absolute;bottom:25px;font:9px Georgia,serif;letter-spacing:.22em;color:#c6cdae}.micro-copy{color:#bccaba;font-size:10px!important;line-height:1.9}.check-panel{border-top:1px solid #8f9e85;padding-top:13px}.check-top{display:flex;justify-content:space-between;align-items:center;color:#e9e1c8;font-size:10px;letter-spacing:.15em}.check-top b{font:italic 48px Georgia,serif}.check-top i{font-style:normal;font-size:11px;color:#c3cdbd}.check-progress{height:2px;background:#71846b55;margin:14px 0 15px;overflow:hidden}.check-progress::before{content:'';display:block;height:100%;width:var(--progress);background:#dcc492;box-shadow:0 0 20px #e8d7ac;transition:width .8s cubic-bezier(.15,.6,.2,1)}.check-item{position:relative;display:flex;align-items:center;gap:22px;padding:23px 14px 23px 6px;border-bottom:1px solid #ffffff26;cursor:pointer;overflow:hidden;transition:background .35s,padding .35s}.check-item input{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.check-item:has(input:focus-visible){outline:2px solid #e9d4a6;outline-offset:3px}.check-number{font:italic 17px Georgia,serif;color:#a4b59b}.check-text{font-size:13px;line-height:1.85;flex:1;pointer-events:none}.check-text b{font-weight:400}.check-mark{width:28px;height:28px;border:1px solid #95a68a;border-radius:50%;flex:none;display:grid;place-items:center;pointer-events:none;transition:background .3s,box-shadow .3s}.check-item.selected{background:linear-gradient(100deg,#aabb7726,#ffffff04);padding-left:16px}.selected .check-mark{border-color:#d6c693;background:#d6c693;color:var(--forest);box-shadow:0 0 20px #d1c69a33}.selected .check-mark::after{content:'';width:10px;height:5px;border:solid var(--forest);border-width:0 0 1.5px 1.5px;transform:rotate(-45deg);margin-top:-2px}.check-feedback{padding-top:25px}.check-feedback>p{font-family:var(--serif);font-size:17px;color:#e8dec0}.check-empty,.check-note{font-size:10px;line-height:1.8;color:#b9c9b9;margin-top:9px}.recommendation{display:grid;grid-template-columns:1fr 20px;column-gap:15px;padding:14px 0;border-bottom:1px solid #b2bc9c33;overflow:hidden}.recommendation-title{font-size:12px;color:#e7dfc5}.recommendation-text{grid-column:1;font-size:10px;line-height:1.8;color:#c1cdba;margin-top:5px}.recommendation-arrow{grid-column:2;grid-row:1/3;align-self:center;color:#ddc593}.check-reset{margin-top:17px;padding:8px 0;background:transparent;color:#bacbb9;font-size:10px;overflow:hidden}.check-complete{text-align:center;padding:30px 10px;margin-top:20px;background:radial-gradient(ellipse at 50% 20%,#e3c88922,transparent 70%);border:1px solid #d1b67a66;animation:completionBloom 1.3s both}.check-complete>svg{width:50px;height:50px;color:var(--gold)}.check-complete p{font-family:var(--serif);font-size:20px;margin:10px 0 25px}.check-complete strong{font-weight:400;color:#eddaae}.check-complete .button{font-size:11px;padding:18px 24px;min-height:52px}.check-pop .check-mark{animation:checkBloom .65s both}
.section-title-row{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:58px}.section-title-row p{font-size:11px;letter-spacing:.03em;padding-bottom:12px;line-height:2}.section-title-row h2 em{font-size:.92em}.feature-menus{display:grid;grid-template-columns:1fr 1fr;gap:40px}.treatment:nth-child(2){padding-top:82px}.treatment-image{position:relative;height:360px;overflow:hidden}.treatment-image img{filter:saturate(.75);transition:transform 1.5s}.treatment:hover .treatment-image img{transform:scale(1.045)}.treatment-tag{position:absolute;top:20px;left:20px;background:#f0eedbe3;padding:7px 11px;font-size:8px;letter-spacing:.14em}.treatment-num{position:absolute;bottom:13px;right:20px;font:italic 55px Georgia,serif;color:#fff;opacity:.9}.treatment-content{padding:26px 3px}.treatment-content h3{font-size:29px;line-height:1.55;margin:12px 0 15px}.treatment-content>p:not(.eyebrow){font-size:11px;line-height:2}.treatment-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:20px}.price-note{font-size:10px;line-height:1.8}.other-menus{margin-top:50px}.menu-row{display:flex;gap:30px;align-items:center;padding:23px 0;border-top:1px solid #c9cdbc;scroll-margin-top:110px}.menu-row:last-child{border-bottom:1px solid #c9cdbc}.row-number{font:italic 18px Georgia,serif;color:#85917a}.menu-row img{width:145px;height:103px;filter:saturate(.65)}.menu-row>div{flex:1}.menu-row h3{font-size:25px;margin:9px 0 8px}.menu-row p{font-size:11px;line-height:1.7}.menu-row .circle-button{margin:0 10px 0 20px}.menu-footnote{text-align:right;font-size:10px;color:#6b796a;margin-top:20px}
.breath-section{position:relative;min-height:490px;padding:85px 9vw;display:flex;align-items:center;justify-content:space-between;gap:70px;overflow:hidden;color:#fff}.breath-section>img{position:absolute;inset:0;filter:saturate(.45);object-position:50% 42%}.breath-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#153a2dea,#193429b3)}.breath-copy{position:relative;max-width:580px}.breath-copy h2{font-size:39px;margin:18px 0 23px}.breath-copy p:not(.eyebrow){font-size:11px;margin-bottom:25px;color:#dce4d6}.breath-copy .button{min-height:55px;padding:17px 25px;font-size:11px}.breath-visual{position:relative;display:flex;flex-direction:column;align-items:center;padding:20px 30px;flex-shrink:0}.breath-orb{width:200px;height:200px;border-radius:50%;border:1px solid #d8d4b0;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#d6d1a033,#e2ddb805 70%);box-shadow:0 0 0 22px #dad4b809,0 0 0 44px #dad4b807,0 0 50px #d3d3a918;transition:transform 4s ease,box-shadow 4s;transform:scale(.88)}.breath-orb span{font-family:var(--serif);font-size:21px;letter-spacing:.06em;text-align:center;padding:15px}.breath-orb.breathing[data-phase=inhale]{transform:scale(1.13);box-shadow:0 0 0 24px #dad4b817,0 0 0 50px #dad4b80b,0 0 70px #d3d3a938}.breath-orb.breathing[data-phase=exhale]{transform:scale(.8);transition-duration:5s}.breath-caption{font-size:8px;letter-spacing:.22em;margin-top:60px;color:#d1d8c2}
.voices-section{background:#edece2}.voice-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:42px}.voice{position:relative;border-top:1px solid #b4bca7;padding:29px 5px 10px}.quote-mark{font:70px Georgia,serif;color:#8e9a7e;display:block;height:55px}.voice figcaption{font-size:10px;letter-spacing:.07em;margin-bottom:20px}.voice blockquote{margin:0;min-height:165px;font-family:var(--serif);font-size:22px;line-height:1.85;letter-spacing:.01em}.voice-source{font-size:9px;color:#5a6d5a;display:block;margin-top:25px}.owner-section{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center;padding-top:110px;padding-bottom:110px}.owner-image{position:relative;margin:0 30px 0 60px;height:460px}.owner-image img{object-position:50% 48%;filter:saturate(.55);border-radius:46% 46% 0 0}.owner-image::before{content:'';position:absolute;inset:18px -18px -18px 18px;border:1px solid #bbc1aa;border-radius:46% 46% 0 0}.owner-image>span{position:absolute;left:-28px;top:15px;writing-mode:vertical-rl;font-size:9px;letter-spacing:.3em;color:#8b987f}.owner-copy h2{font-size:33px;margin:20px 0 25px;line-height:1.75}.owner-copy>p:not(.eyebrow){font-size:12px;margin-bottom:20px;line-height:2.1}.owner-sign{margin-top:30px;border-top:1px solid #ccd1bf;padding-top:20px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.owner-sign>span{font-size:9px}.owner-sign strong{font-family:var(--serif);font-size:26px;font-weight:400}.owner-sign small{font:italic 13px Georgia,serif;color:#7f8e75}.faq-section{background:#e9eadd;display:grid;grid-template-columns:.8fr 1.25fr;gap:10%;padding-top:85px;padding-bottom:85px}.faq-intro h2{font-size:40px;margin:20px 0}.faq-intro>p:not(.eyebrow){font-size:12px}.faq-intro .text-link{font-size:11px;margin-top:25px}.faq-list details{border-top:1px solid #aab8a1}.faq-list details:last-child{border-bottom:1px solid #aab8a1}.faq-list summary{list-style:none;display:flex;align-items:center;gap:17px;min-height:91px;cursor:pointer;font-size:12px;overflow:hidden;padding:18px 3px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font:italic 15px Georgia,serif;color:#74876d}.faq-list summary svg{margin-left:auto;width:18px;flex-shrink:0;transition:transform .3s}.faq-list details[open] summary svg{transform:rotate(45deg)}.faq-list details p{font-size:11px;line-height:2;padding:0 20px 25px 35px;animation:softRise .45s both}.visit-section{padding-top:75px;padding-bottom:75px}.visit-section .section-kicker{margin-bottom:40px}.visit-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px}.visit-steps>div{border-right:1px solid #cbd0bc;padding-right:25px}.visit-steps>div:last-child{border:0}.visit-steps span{font:italic 36px Georgia,serif;color:#8b987c}.visit-steps h3{font-size:22px;margin:15px 0 12px}.visit-steps p{font-size:11px;line-height:1.9}
.access-section{background:radial-gradient(ellipse at 0% 80%,#53664a55,transparent 70%),linear-gradient(130deg,#1c3e32,#1d342e);color:#e6e9db;padding-bottom:25px}.access-grid{display:grid;grid-template-columns:1.08fr .85fr;gap:14%;padding-bottom:75px}.access-invitation h2{font-size:53px;line-height:1.55}.access-invitation h2 em{color:#dfc99c}.access-invitation>p{font-size:12px;margin:24px 0 35px;color:#c6d4c2}.book-large{display:flex;max-width:390px;padding:24px 28px}.book-large>span{font-family:var(--serif);font-size:23px}.book-large small{display:block;font-family:var(--sans);font-size:9px;margin-bottom:7px}.book-large svg{width:30px}.phone-link{display:block;max-width:390px;margin-top:25px;padding:15px 0;overflow:hidden}.phone-link small{font-size:10px;display:block;margin-bottom:10px;color:#bfcdb9}.phone-link>span{font-family:Georgia,serif;font-size:32px;display:flex;align-items:center;gap:32px;letter-spacing:.02em}.phone-link svg{width:22px}.access-details{padding-top:25px}.access-brand{font:italic 43px Georgia,serif;letter-spacing:-1px}.access-brand span{display:block;font:11px var(--sans);letter-spacing:.17em;margin-top:14px}.access-details dl{margin-top:35px}.access-details dl>div{display:flex;gap:25px;padding:18px 0;border-bottom:1px solid #cbd4b633}.access-details dt{font-size:8px;letter-spacing:.15em;width:60px;flex:none;margin-top:5px;color:#c4d0b5}.access-details dd{margin:0;font-size:12px;line-height:1.9}.access-links{display:flex;justify-content:space-between;gap:20px;margin-top:20px}.access-links .text-link{font-size:10px}.footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:25px;border-top:1px solid #cbd4b638}.footer-logo{font:italic 23px Georgia,serif}.footer>span,.back-top{font-size:8px;letter-spacing:.13em}.mobile-book{display:none}
.menu-dialog{width:min(700px,calc(100% - 32px));max-height:87svh;border:0;padding:0;color:var(--ink);background:var(--ivory);box-shadow:0 20px 100px #0005}.menu-dialog::backdrop{background:#142b26b8;backdrop-filter:blur(7px)}.dialog-top{position:sticky;top:0;z-index:2;background:#f5f2ebf2;display:flex;justify-content:space-between;align-items:center;padding:17px 26px;border-bottom:1px solid #c9cdbc}.dialog-top>span{font:italic 23px Georgia,serif}.dialog-close{width:38px;height:38px;border:1px solid #8d9a81;background:transparent;border-radius:50%;font-size:20px;overflow:hidden}.dialog-body{padding:33px 35px 40px}.dialog-body>h2{font-size:30px;margin-bottom:12px}.dialog-body>p{font-size:12px;margin:12px 0 25px}.dialog-body h3{font-size:22px;margin:28px 0 12px}.price-table{width:100%;border-collapse:collapse;font-size:12px}.price-table th,.price-table td{padding:16px 6px;border-bottom:1px solid #c4cbbb;text-align:left;line-height:1.8;font-weight:400}.price-table thead{font-size:10px;color:#596c51}.price-table td:not(:first-child),.price-table th:not(:first-child){text-align:right;white-space:nowrap}.price-table th:first-child{width:55%}.dialog-note{font-size:10px!important;color:#66785d}.dialog-body .button{margin-top:20px;width:100%;font-size:12px;min-height:60px}.dialog-body .text-link{font-size:10px;display:flex;justify-content:space-between;gap:20px;margin-top:15px}.dialog-source{font-size:9px!important;margin-top:25px!important}
.tap-ripple{pointer-events:none;position:absolute;z-index:10;width:20px;height:20px;left:var(--ripple-x);top:var(--ripple-y);border-radius:50%;border:1px solid currentColor;background:radial-gradient(circle,transparent 45%,#bdbb8050);transform:translate(-50%,-50%);animation:waterRipple .8s ease-out forwards}.is-pressed{animation:tactilePress .45s ease-out!important}.celebration{position:fixed;inset:0;z-index:95;pointer-events:none;overflow:hidden}.petal{position:absolute;left:var(--x);top:-6vh;width:15px;height:26px;border-radius:90% 0 90% 0;background:linear-gradient(130deg,#fff5d0,#c6a658);box-shadow:0 0 17px #e4c48160;animation:petalFall 3.5s var(--delay) ease-out both}.petal:nth-child(3n){background:linear-gradient(130deg,#eee8c5,#879e66);width:11px;height:20px}.reveal{opacity:1;transform:none}.js-motion .reveal{opacity:0;transform:translateY(38px);transition:opacity 1s ease,transform 1.1s cubic-bezier(.15,.65,.25,1)}.js-motion .reveal.in-view{opacity:1;transform:translateY(0)}
@keyframes heroText{from{opacity:0;transform:translateY(60px);filter:blur(7px);clip-path:inset(100% 0 0)}to{opacity:1;transform:translateY(0);filter:blur(0);clip-path:inset(-15% -10% -15%)}}@keyframes softRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes waterRipple{to{opacity:0;transform:translate(-50%,-50%) scale(18)}}@keyframes tactilePress{0%{transform:translateY(0) scale(1)}30%{transform:translateY(3px) scale(.975);box-shadow:inset 0 3px 12px #152a2733}65%{transform:translateY(-2px) scale(1.008)}100%{transform:translateY(0) scale(1)}}@keyframes checkBloom{40%{transform:scale(1.3);box-shadow:0 0 0 13px #d5c49730,0 0 25px #e6d29990}100%{transform:scale(1)}}@keyframes completionBloom{0%{opacity:0;transform:scale(.95);box-shadow:0 0 80px #ddc89300}65%{box-shadow:0 0 90px #ddc89344}100%{opacity:1;transform:scale(1);box-shadow:0 0 35px #ddc89311}}@keyframes petalFall{0%{opacity:0;transform:translate3d(0,0,0) rotate(0)}10%{opacity:1}80%{opacity:1}100%{opacity:0;transform:translate3d(var(--drift),107vh,0) rotate(var(--rotate))}}
@media(min-width:1600px){.section-pad{padding-left:max(9vw,calc((100vw - 1360px)/2));padding-right:max(9vw,calc((100vw - 1360px)/2))}.hero-content{padding-top:205px}.hero h1{font-size:85px}.hero-copy{font-size:15px}}
@media(max-width:1200px){.desktop-nav{gap:18px}.desktop-nav a{font-size:10px}.header-actions{gap:12px}.header-book{padding:12px 15px;gap:10px}.hero{min-height:760px}.hero-content{padding-top:160px}.philosophy-grid{gap:8%}.philosophy-photo{height:570px}.photo-number{font-size:77px;right:-65px}.care-grid{gap:7%}.care-intro h2{font-size:49px}.menu-row{gap:23px}.owner-section{gap:9%}.owner-image{margin-left:25px;height:410px}.visit-steps{gap:22px}.visit-steps h3{font-size:18px}}
@media(max-width:980px){.desktop-nav{display:none}.nav-toggle{display:block}.site-header{padding:22px 5vw}.header-actions{gap:23px}.site-header.scrolled{padding-top:13px;padding-bottom:13px}.hero{height:90svh;min-height:760px}.hero h1{font-size:63px}.hero-content{padding-left:7vw;padding-top:165px}.hero-side{right:18px}.hero-image{inset:0 0 0 5%}.section-pad{padding:78px 6vw}.section-kicker{margin-bottom:45px}.philosophy-grid{gap:7%}.philosophy-photo{height:550px;margin-right:15px}.philosophy-copy h2{font-size:32px}.philosophy-copy>p:not(.eyebrow){font-size:11px}.philosophy-copy .philosophy-sign{font-size:16px!important}.care-grid{gap:6%;grid-template-columns:.75fr 1fr}.care-intro h2{font-size:42px}.care-orbit{width:220px;height:220px}.check-item{gap:14px;padding-top:22px;padding-bottom:22px}.check-text{font-size:11px}.check-mark{width:25px;height:25px}.section-title-row{align-items:flex-start;gap:25px}.section-title-row h2{font-size:34px}.section-title-row p{max-width:250px;font-size:10px;padding-top:15px}.feature-menus{gap:28px}.treatment-image{height:280px}.treatment:nth-child(2){padding-top:62px}.treatment-content h3{font-size:24px}.treatment-content>p:not(.eyebrow){font-size:10px}.treatment-content br{display:none}.price-note{font-size:9px}.menu-row h3{font-size:22px}.menu-row img{width:123px;height:88px}.breath-section{padding:65px 7vw;gap:45px;min-height:450px}.breath-copy h2{font-size:32px}.breath-visual{padding:10px}.breath-orb{width:170px;height:170px}.voice-grid{gap:25px}.voice blockquote{font-size:19px;min-height:200px}.owner-section{gap:7%;grid-template-columns:.9fr 1fr}.owner-image{height:375px;margin-right:15px;margin-left:15px}.owner-copy h2{font-size:28px}.owner-copy>p:not(.eyebrow){font-size:11px}.owner-sign{gap:10px}.owner-sign strong{font-size:23px}.faq-section{grid-template-columns:.75fr 1fr;gap:7%}.faq-intro h2{font-size:32px}.faq-list summary{font-size:11px;gap:10px}.visit-steps{gap:18px}.visit-steps>div{padding-right:15px}.visit-steps h3{font-size:16px}.visit-steps p{font-size:10px}.access-grid{gap:9%;grid-template-columns:1fr 1fr}.access-invitation h2{font-size:43px}.access-brand{font-size:37px}.access-details dl>div{gap:14px}.access-details dd{font-size:11px}.welcome-strip{gap:23px;font-size:10px}}
@media(max-width:680px){html{scroll-padding-top:88px}.site-header{padding:23px 22px;gap:10px}.site-header.scrolled{padding:16px 22px}.brand-en{font-size:26px}.brand-ja{font-size:8px;margin-top:7px;letter-spacing:.18em}.header-book{display:none}.header-actions{gap:15px}.sound-toggle{font-size:8px;gap:5px}.sound-bars{gap:2px}.nav-toggle{width:27px}.hero{height:calc(100svh - 35px);min-height:740px;max-height:960px}.hero-image{inset:0}.hero-image img{object-position:58% 46%;filter:brightness(.81) saturate(.75)}.hero-shade{background:linear-gradient(90deg,#143127d9 0%,#1b342b77 65%,#19332845),linear-gradient(0deg,#163128df,transparent 60%,#162f2799)}.hero-content{padding:154px 8vw 130px;max-width:100%}.hero-eyebrow{font-size:8px;letter-spacing:.12em;margin-bottom:27px;gap:10px}.hero-eyebrow span{width:15px}.hero h1{font-size:clamp(39px,10.7vw,65px);line-height:1.54;letter-spacing:.055em}.hero-copy{font-size:11px;line-height:2.05;margin-top:25px;letter-spacing:.06em}.hero-cta{font-size:10px;padding:19px 20px;min-height:56px;gap:23px;margin-top:27px;max-width:100%}.hero-cta svg{width:17px}.hero-bottom{bottom:27px;left:8vw;right:8vw;align-items:center}.hero-bottom>span:first-child{font-size:8px;line-height:1.85}.hero-bottom b{font-size:8px}.hero-index,.hero-side{display:none}.scroll-cue{gap:10px}.scroll-cue>span:not(.tap-ripple):not(.tap-petal){display:none}.scroll-cue i{width:37px;height:37px;font-size:17px}.hero-halo{width:560px;height:560px;left:-230px;top:13%}.welcome-strip{gap:13px;flex-wrap:wrap;padding:19px 17px;font-size:9px;letter-spacing:.025em;row-gap:8px}.welcome-strip span:first-child{width:100%;text-align:center;letter-spacing:.08em;font-family:var(--serif);font-size:15px;margin-bottom:5px}.welcome-strip i:nth-child(2){display:none}.welcome-strip i{width:3px;height:3px}.section-pad{padding:63px 7vw}.section-kicker{margin-bottom:35px;padding-bottom:15px;gap:15px;font-size:8px;letter-spacing:.02em}.section-kicker span:first-child{font-size:8px;letter-spacing:.1em}h2{font-size:31px;letter-spacing:.02em}.philosophy-grid{grid-template-columns:1fr;gap:37px}.philosophy-photo{height:390px;margin-right:25px}.philosophy-photo::before{inset:16px -17px -17px 17px}.philosophy-photo img{object-position:50% 35%}.photo-caption{font-size:9px;bottom:18px;left:17px}.photo-number{font-size:75px;right:-43px;bottom:25px}.philosophy-copy{padding:6px 0 0 8px}.philosophy-copy h2{font-size:35px;margin:18px 0 26px;line-height:1.65}.philosophy-copy h2 em{font-size:.82em}.philosophy-copy>p:not(.eyebrow){font-size:12px;letter-spacing:.02em;margin-bottom:19px}.philosophy-copy .philosophy-sign{font-size:18px!important}.eyebrow{font-size:9px}.philosophy-copy .text-link{margin-top:3px;font-size:11px}.care-grid{grid-template-columns:1fr;gap:31px}.care-intro{position:relative}.care-intro h2{font-size:38px;line-height:1.55;margin:15px 0 20px}.care-intro h2 br:nth-child(2){display:none}.care-intro>p{font-size:11px}.care-orbit{position:absolute;right:-27px;top:17px;width:180px;height:180px;opacity:.56;margin:0;pointer-events:none}.care-orbit svg{width:52px;height:52px}.care-orbit span{display:none}.orbit-ring{inset:15px 28px}.ring-two{inset:36px 7px}.ring-three{inset:39px 38px}.micro-copy{margin-top:14px;font-size:9px!important}.check-panel{padding-top:9px}.check-top{font-size:9px}.check-top b{font-size:40px}.check-progress{margin-bottom:6px}.check-item{padding:21px 7px 21px 2px;gap:15px}.check-number{font-size:16px}.check-text{font-size:12px;line-height:1.85}.check-mark{width:25px;height:25px}.check-item.selected{padding-left:10px}.check-feedback>p{font-size:17px}.check-complete p{font-size:21px}.check-complete .button{font-size:10px;gap:15px}.section-title-row{display:block;margin-bottom:33px}.section-title-row h2{font-size:32px;line-height:1.65}.section-title-row p{max-width:none;font-size:10px;padding:0;margin-top:20px}.feature-menus{grid-template-columns:1fr;gap:29px}.treatment:nth-child(2){padding:0}.treatment-image{height:290px}.treatment-content{padding:23px 0 6px}.treatment-content h3{font-size:28px;margin:10px 0 13px}.treatment-content>p:not(.eyebrow){font-size:11px}.treatment-content br{display:block}.treatment-bottom{margin-top:17px}.price-note{font-size:10px}.treatment-tag{top:15px;left:15px;font-size:7px}.circle-button{width:45px;height:45px}.circle-button svg{width:20px}.other-menus{margin-top:41px}.menu-row{position:relative;flex-wrap:wrap;gap:13px;padding:22px 0}.row-number{position:absolute;left:0;top:24px;font-size:12px;display:none}.menu-row img{width:79px;height:88px}.menu-row>div{width:calc(100% - 135px);padding-right:33px}.menu-row h3{font-size:18px;line-height:1.6;margin:6px 0 5px}.menu-row .eyebrow{font-size:7px;letter-spacing:.08em}.menu-row p{font-size:9px;line-height:1.8}.menu-row .circle-button{position:absolute;right:0;top:50%;transform:translateY(-50%);margin:0;width:33px;height:33px}.menu-row .circle-button svg{width:15px}.menu-row .circle-button.is-pressed{animation:mobileCirclePress .45s!important}.menu-footnote{text-align:left;font-size:9px}.breath-section{padding:63px 8vw 65px;flex-direction:column;align-items:flex-start;gap:35px;min-height:auto}.breath-section>img{object-position:38%}.breath-copy h2{font-size:29px;margin:16px 0 18px}.breath-copy>p:not(.eyebrow){font-size:10px}.breath-copy .button{padding:16px 21px;min-height:52px;font-size:10px}.breath-visual{width:100%;padding-top:25px}.breath-orb{width:159px;height:159px}.breath-orb span{font-size:18px}.breath-caption{margin-top:47px;font-size:8px}.voice-grid{grid-template-columns:1fr;gap:31px}.voice{padding:20px 3px 0;display:grid;grid-template-columns:36px 1fr;column-gap:12px}.quote-mark{grid-column:1;grid-row:1/4;font-size:55px;height:40px}.voice figcaption{font-size:9px;margin:9px 0 15px}.voice blockquote{font-size:22px;min-height:0;line-height:1.75;grid-column:2}.voice-source{font-size:8px;margin-top:18px;grid-column:2}.owner-section{grid-template-columns:1fr;gap:39px}.owner-image{height:365px;margin:0 40px 0 23px}.owner-image img{object-position:50% 35%}.owner-image>span{left:-22px;font-size:8px}.owner-copy{padding:0 7px}.owner-copy h2{font-size:29px;margin-top:15px;line-height:1.65}.owner-copy>p:not(.eyebrow){font-size:12px;line-height:2}.owner-sign{gap:15px;margin-top:25px;padding-top:19px}.owner-sign>span{font-size:8px}.owner-sign strong{font-size:25px}.owner-sign small{font-size:12px}.faq-section{grid-template-columns:1fr;gap:31px}.faq-intro h2{font-size:33px;margin:15px 0 17px}.faq-intro p br{display:none}.faq-intro>p:not(.eyebrow){font-size:11px}.faq-intro .text-link{margin-top:10px;font-size:10px;gap:28px}.faq-list summary{min-height:79px;font-size:12px;padding:20px 1px;gap:13px;line-height:1.8}.faq-list summary span{font-size:13px}.faq-list details p{font-size:11px;padding:0 6px 22px 27px}.visit-steps{grid-template-columns:1fr 1fr;gap:30px 18px}.visit-steps>div{padding-right:12px}.visit-steps>div:nth-child(2){border:0}.visit-steps span{font-size:32px}.visit-steps h3{font-size:18px;margin:13px 0 9px}.visit-steps p{font-size:10px}.access-section{padding-bottom:88px}.access-grid{grid-template-columns:1fr;gap:43px;padding-bottom:44px}.access-invitation h2{font-size:44px;line-height:1.6}.access-invitation>p{font-size:11px;margin:21px 0 29px}.book-large{max-width:none;width:100%;padding:22px 25px}.book-large>span{font-size:24px}.phone-link{margin-top:19px;padding:12px 0}.phone-link>span{font-size:31px;gap:30px}.phone-link small{font-size:9px}.access-details{border-top:1px solid #cbd4b644;padding-top:32px}.access-brand{font-size:39px}.access-brand span{font-size:10px;margin-top:13px}.access-details dl{margin:26px 0 16px}.access-details dl>div{padding:16px 0;gap:20px}.access-details dd{font-size:11px}.access-details dt{font-size:8px;width:63px}.access-links{justify-content:flex-start;gap:35px;margin-top:0}.footer{gap:15px;padding-top:24px;flex-wrap:wrap}.footer-logo{font-size:20px}.footer>span{font-size:7px;margin-left:auto}.back-top{font-size:7px;width:100%;text-align:right;margin-top:4px;padding:8px 0}.mobile-book{position:fixed;bottom:0;left:0;right:0;z-index:50;display:grid;grid-template-columns:1fr 1.7fr;box-shadow:0 -3px 25px #142a2526;padding-bottom:env(safe-area-inset-bottom);background:#d5bd8d}.mobile-book a{font-size:11px;letter-spacing:.03em;padding:19px 12px;text-align:center;overflow:hidden;background:linear-gradient(135deg,#f4f1e6,#e9e6d6);border-top:1px solid #b9bdaa}.mobile-book a:last-child{background:linear-gradient(120deg,#d9c59b,#c8ac78);display:flex;align-items:center;justify-content:center;gap:30px;border-color:#bda47b}.mobile-book svg{width:18px;height:18px}.dialog-body{padding:25px 20px 30px}.dialog-body>h2{font-size:26px;line-height:1.7}.dialog-top{padding:14px 20px}.dialog-top>span{font-size:23px}.price-table{font-size:10px}.price-table th,.price-table td{padding:13px 4px}.price-table thead{font-size:9px}.price-table th:first-child{width:auto}.dialog-body .button{padding:17px 20px}.menu-dialog{max-height:85svh}.js-motion .reveal{transform:translateY(25px)}}
@media(max-width:370px){.hero{min-height:690px}.hero-content{padding-top:150px}.hero h1{font-size:39px}.hero-cta{font-size:9px;gap:12px;padding:18px 15px}.check-text{font-size:11px}.check-item{gap:11px}.care-intro h2{font-size:35px}.philosophy-copy h2{font-size:31px}.menu-row h3{font-size:16px}.visit-steps h3{font-size:16px}.owner-copy h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.hero-image,.hero-halo,.js-motion .reveal{transform:none!important;opacity:1!important}.breath-orb{transform:none!important}.tap-ripple,.petal{display:none}}

@keyframes mobileCirclePress{0%,100%{transform:translateY(-50%) scale(1)}35%{transform:translateY(-45%) scale(.93)}70%{transform:translateY(-53%) scale(1.03)}}
