:root{--paper:#f6faf8;--ink:#3f6268;--muted:#627c7c;--line:#cbdad7;--mint:#eaf4ef;--blue:#edf4f7;--pink:#f5efeb;--white:#fff;--serif:"Yu Mincho","Hiragino Mincho ProN",Georgia,serif;--sans:"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;--gap:130px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/2.25 var(--sans);letter-spacing:.06em;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:2px solid #467d7a;outline-offset:6px}a:active{opacity:.72}p,h1,h2,h3,h4,figure,dl,dd{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:.12em;line-height:1.9}h2{font-size:29px}img{width:100%;height:auto;display:block}.wrap{width:min(1120px,calc(100% - 144px));margin-inline:auto}.section{padding-block:var(--gap)}.section-label{font-size:11px;letter-spacing:.2em;font-weight:500;display:flex;align-items:center;gap:17px;line-height:1.8}.section-label:before{content:"";width:27px;height:1px;background:#84aca1;transform:rotate(-35deg)}.mini-label{font-size:9px;letter-spacing:.2em;color:var(--muted)}.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}.skip{position:absolute;z-index:30;left:20px;top:-100px;background:white;padding:12px}.skip:focus{top:20px}
.header{position:absolute;top:0;left:0;width:100%;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:36px 5.5%;gap:30px}.logo{font:italic 31px/1.1 Georgia,serif;letter-spacing:.055em;display:inline-block}.logo span{font:8px/1.8 var(--sans);letter-spacing:.13em;display:block;margin-top:8px}.header-right{display:flex;align-items:center;gap:40px}.header-book{font-size:11px;display:flex;align-items:center;gap:23px;min-height:44px}.navigation summary{list-style:none;cursor:pointer;display:flex;gap:20px;align-items:center;min-height:48px;padding:8px 0;font-size:10px;letter-spacing:.15em}.navigation summary::-webkit-details-marker{display:none}.navigation summary i{width:36px;height:15px;border-block:1px solid var(--ink);position:relative}.navigation summary i:after{content:"";position:absolute;top:6px;right:0;width:24px;border-top:1px solid var(--ink)}.navigation[open] summary i{border:0}.navigation[open] summary i:before,.navigation[open] summary i:after{content:"";position:absolute;width:33px;top:7px;right:0;border-top:1px solid var(--ink);transform:rotate(35deg)}.navigation[open] summary i:after{transform:rotate(-35deg)}.navigation nav{position:absolute;right:5.5%;top:100px;width:340px;max-width:calc(100vw - 40px);padding:22px 30px;background:#fff;box-shadow:0 14px 55px #42656613;border:1px solid #e0eae5}.navigation nav a{display:flex;align-items:center;justify-content:space-between;font-size:12px;padding:17px 0;border-bottom:1px solid #e0eae5;gap:20px}.navigation nav a:last-child{border:0}.navigation nav a span{font-size:8px;letter-spacing:.1em}.navigation nav a:hover,.header-book:hover{color:#24484f}
.hero{position:relative;min-height:870px;min-height:min(980px,100svh);padding:180px 60px 90px;display:flex;align-items:center;justify-content:center;isolation:isolate}.watercolor{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;opacity:.8}.hero-center{text-align:center;position:relative}.hero-brand{font:italic 115px/1.15 Georgia,serif;letter-spacing:.035em;color:#426f73}.brand-sub{font-size:11px;letter-spacing:.25em;margin-top:9px}.hero h1{font-size:27px;font-weight:400;margin-top:45px;letter-spacing:.18em}.hero-lead{font-size:13px;letter-spacing:.13em;margin-top:13px}.hero-service{font-size:11px;color:#526d70;margin-top:28px;line-height:2.2}.hero-link{display:inline-flex;gap:22px;align-items:center;font-size:11px;border-bottom:1px solid #9fbab4;min-height:48px;margin-top:27px}.hero-margin{position:absolute;left:5.5%;top:48%;font-size:9px;letter-spacing:.18em;writing-mode:vertical-rl}.social-rail{position:absolute;right:5.5%;top:47%;writing-mode:vertical-rl;font-size:9px;letter-spacing:.19em;padding:14px}.hero-bottom{position:absolute;bottom:33px;font-size:10px;letter-spacing:.13em;text-align:center}.hero-bottom span{margin-inline:9px}.mobile-break{display:none}
.concept{padding-top:115px}.concept-opening{display:grid;grid-template-columns:.9fr 1.3fr 1fr;gap:35px;align-items:start;margin-bottom:65px}.concept-opening h2{font-size:30px;margin-top:-9px}.opening-note{font-size:12px;line-height:2.5;padding-top:30px}.concept-collage{display:grid;grid-template-columns:1.25fr .75fr;gap:0 85px;align-items:start;position:relative;padding-bottom:115px}.room-photo{position:relative;grid-column:1;grid-row:1}.room-photo:before{content:"";position:absolute;inset:-20px 45px 45px -22px;background:var(--mint);z-index:-1}.room-photo img{aspect-ratio:.98;object-fit:cover}.room-photo figcaption{font-size:8px;letter-spacing:.18em;margin-top:17px;color:var(--muted)}.concept-story{padding-top:28px;font-size:13px;line-height:2.6;grid-column:2;grid-row:1}.concept-story p+p{margin-top:25px}.line-link{display:inline-flex;justify-content:space-between;align-items:center;gap:34px;padding:11px 0;min-height:48px;border-bottom:1px solid var(--line);font-size:11px;line-height:1.8;transition:color .2s,border-color .2s}.line-link:hover{border-color:#3f6268;color:#254c50}.line-link span[aria-hidden]{font-size:19px}.concept-story .line-link{margin-top:27px}.detail-photo{grid-column:2;grid-row:2;width:100%;margin-top:65px;margin-left:-95px;max-width:330px}.detail-photo img{aspect-ratio:1.5;object-fit:cover}.concept-collage:after{content:"at your own pace.";position:absolute;bottom:55px;left:3%;font:italic 38px Georgia,serif;color:#7d9d92;letter-spacing:.03em}
.doorways{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding-bottom:115px}.doorways a{display:flex;align-items:center;gap:23px;padding:30px 0 25px;border-block:1px solid var(--line);position:relative;transition:color .2s}.doorways a:last-child{margin-top:55px;margin-bottom:-55px}.doorways a:hover{color:#254c50}.door-number{font:italic 23px Georgia,serif;color:#688d88;align-self:flex-start;margin-top:12px}.door-text{display:flex;flex-direction:column}.door-text small{font-size:11px}.door-text strong{font:normal 43px/1.5 Georgia,serif;letter-spacing:.02em}.door-text>span{font-size:11px;color:var(--muted)}.door-arrow{margin-left:auto;font-size:28px}
.menu{background:var(--blue);margin-top:55px}.menu-heading{display:grid;grid-template-columns:.9fr 1.3fr 1fr;align-items:center;gap:35px;margin-bottom:65px}.menu-heading h2{font-size:27px}.menu-heading>p:last-child{font-size:12px;line-height:2.5}.menus{display:grid;grid-template-columns:1fr 1fr;gap:100px}.menu-caption{border-bottom:1px solid #b8cdd1;padding-bottom:22px;margin-bottom:12px}.menu-caption>span{font-size:9px;letter-spacing:.2em;color:#526f74}.menu-caption h3{font-size:24px;margin:12px 0}.menu-caption p{font-size:12px;line-height:2.4}.menus h4{font-size:11px;font-weight:400;margin-top:23px}.prices>div{display:flex;justify-content:space-between;align-items:baseline;gap:18px;border-bottom:1px solid #d2e1e3;padding:19px 0;min-height:67px}.prices dt{font-size:13px;line-height:1.9}.prices dt small{font-size:10px;display:block;margin-top:5px;color:var(--muted)}.prices dd{font:20px/1.9 Georgia,serif;white-space:nowrap;letter-spacing:0}.menu-note{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:50px}.menu-note p{font-size:10px;color:var(--muted)}
.therapist{display:grid;grid-template-columns:1fr 1fr;gap:130px;align-items:center;padding-top:160px}.portrait-block{text-align:center}.portrait-block .section-label{justify-content:center}.portrait-mat{padding:45px 40px;background:var(--pink);margin:42px 0 30px;transform:rotate(-3deg)}.portrait-mat img{width:100%;max-width:285px;margin-inline:auto;border-radius:50%;aspect-ratio:1;object-fit:cover;transform:rotate(3deg)}.name{font:italic 40px/1.3 Georgia,serif}.name small{display:block;font:10px/2 var(--sans);letter-spacing:.15em;margin-top:6px}.therapist-story{padding-top:80px}.therapist-story h2{font-size:26px;margin:22px 0 32px;letter-spacing:.05em}.therapist-story>p:not(.mini-label){font-size:13px;line-height:2.6;margin-top:24px}.therapist-story .line-link{margin-top:25px}
.guide{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;padding-top:60px}.guide h2{font-size:27px;margin-top:22px}.guide-lead{font-size:12px;margin-top:20px}.faq{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line)}.faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:18px;cursor:pointer;font-size:12px;min-height:77px;padding:20px 0}.faq summary::-webkit-details-marker{display:none}.faq summary>span{font-size:17px;transition:transform .2s}.faq details[open] summary>span{transform:rotate(45deg)}.faq details>div{font-size:12px;padding:0 25px 26px 0;line-height:2.3}.faq summary:hover{color:#254c50}
.contact{background:#eaf3f0;padding-block:100px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:center}.contact figure{margin-top:25px}.contact figure img{aspect-ratio:1.4;object-fit:cover}.contact figcaption{font-size:8px;letter-spacing:.13em;margin-top:15px}.contact h2{font-size:30px;margin:26px 0 22px}.contact-copy>p:not(.section-label){font-size:12px;line-height:2.5}.button{display:flex;justify-content:space-between;align-items:center;gap:25px;background:#fff;border:1px solid #bbd3cb;border-radius:36px;padding:17px 27px;min-height:61px;max-width:370px;font-size:12px;margin-top:28px;transition:background .2s}.button:hover{background:#f6faf8}.button>span[aria-hidden]{font-size:20px}.contact-copy>small{display:block;margin-top:18px;font-size:10px}.footer{padding-block:65px;display:flex;justify-content:space-between;align-items:center;gap:35px}.footer nav{display:flex;gap:30px;font-size:11px}.footer nav a{padding-block:10px}.footer nav a:hover{color:#254c50}.footer>small{font-size:9px}
@media(max-width:1050px){:root{--gap:95px}.wrap{width:calc(100% - 100px)}.hero{min-height:800px}.concept-opening,.menu-heading{grid-template-columns:.75fr 1.25fr}.opening-note,.menu-heading>p:last-child{grid-column:2;padding-top:0}.concept-opening h2{font-size:27px}.concept-collage{gap:0 45px;padding-bottom:70px}.concept-story{font-size:12px;padding-top:0}.concept-story p+p{margin-top:20px}.detail-photo{margin-left:-50px;margin-top:40px;max-width:260px}.concept-collage:after{font-size:29px;bottom:55px}.doorways{gap:40px;padding-bottom:90px}.doorways a{gap:16px}.door-text strong{font-size:36px}.door-text>span{font-size:9px}.menus{gap:50px}.therapist{gap:65px;padding-top:100px}.portrait-mat{padding:32px 25px}.therapist-story h2{font-size:23px}.therapist-story>p:not(.mini-label){font-size:12px}.guide{gap:50px}.contact-layout{gap:60px}.contact h2{font-size:27px}}
@media(max-width:680px){:root{--gap:75px}body{font-size:13px;letter-spacing:.035em}.wrap{width:calc(100% - 52px)}.header{padding:24px 26px;align-items:start}.logo{font-size:27px}.logo span{font-size:7px;margin-top:6px}.header-book{display:none}.navigation summary{font-size:9px;gap:14px;min-height:44px}.navigation summary i{width:29px;height:13px}.navigation summary i:after{width:20px;top:5px}.navigation nav{right:26px;top:81px;width:calc(100vw - 52px);padding:15px 24px;max-width:360px}.navigation nav a{font-size:12px;padding-block:17px}.hero{min-height:760px;min-height:max(720px,94svh);padding:135px 26px 100px}.watercolor{object-position:12% center}.hero-margin{display:none}.social-rail{right:9px;top:50%;font-size:7px;padding:5px}.hero-brand{font-size:81px;letter-spacing:.025em}.brand-sub{font-size:9px;letter-spacing:.18em;margin-top:10px}.hero h1{font-size:24px;letter-spacing:.1em;line-height:1.9;margin-top:36px}.mobile-break{display:block}.hero-lead{font-size:11px;margin-top:17px}.hero-service{font-size:10px;margin-top:23px;line-height:2.4}.hero-link{font-size:10px;margin-top:25px;min-height:44px}.hero-bottom{font-size:8px;bottom:28px;letter-spacing:.05em}.hero-bottom span{margin-inline:2px}.section-label{font-size:10px;gap:13px;letter-spacing:.15em}.section-label:before{width:20px}.concept{padding-top:72px}.concept-opening{display:block;margin-bottom:39px}.concept-opening h2{font-size:26px;margin-top:24px;line-height:1.9}.opening-note{margin-top:22px;font-size:12px}.concept-collage{display:flex;flex-direction:column;gap:0;padding-bottom:0}.room-photo{width:calc(100% - 17px);margin-left:17px}.room-photo:before{inset:-14px 22px 28px -17px}.room-photo img{aspect-ratio:1.03}.room-photo figcaption{font-size:7px;margin-top:13px}.concept-story{padding-top:33px;font-size:12px;line-height:2.5}.concept-story p+p{margin-top:21px}.concept-story .line-link{margin-top:20px}.detail-photo{align-self:flex-end;width:66%;margin:37px 0 0;max-width:260px}.concept-collage:after{position:relative;left:0;bottom:auto;font-size:23px;margin-top:30px}.doorways{grid-template-columns:1fr;gap:27px;padding-bottom:65px}.doorways a{padding:23px 0;gap:20px}.doorways a:last-child{margin:0}.door-number{font-size:21px}.door-text small{font-size:10px}.door-text strong{font-size:35px;line-height:1.6}.door-text>span{font-size:10px}.door-arrow{font-size:24px}.menu{margin-top:0}.menu-heading{display:block;margin-bottom:44px}.menu-heading h2{font-size:24px;margin-top:23px}.menu-heading>p:last-child{font-size:12px;margin-top:20px}.menus{grid-template-columns:1fr;gap:55px}.menu-caption h3{font-size:23px}.menu-caption>span{font-size:9px}.menu-caption p{font-size:12px}.prices dt{font-size:12px}.prices dt small{font-size:10px}.prices dd{font-size:20px}.prices>div{gap:15px;padding:17px 0}.menus h4{font-size:11px}.menu-note{display:block;margin-top:33px}.menu-note .line-link{margin-top:20px;font-size:11px;gap:22px}.menu-note p{font-size:10px}.therapist{grid-template-columns:1fr;gap:39px;padding-top:75px}.portrait-block{max-width:290px;margin-inline:auto;width:100%}.portrait-mat{padding:32px;margin-top:33px;margin-bottom:23px}.portrait-mat img{max-width:216px}.name{font-size:36px}.therapist-story{padding-top:0}.therapist-story h2{font-size:23px;letter-spacing:.04em;margin:19px 0 25px}.therapist-story>p:not(.mini-label){font-size:12px;line-height:2.5}.therapist-story .line-link{font-size:10px;gap:20px}.guide{grid-template-columns:1fr;gap:32px;padding-top:10px}.guide h2{font-size:25px;margin-top:18px}.guide-lead{margin-top:17px}.faq summary{font-size:12px;letter-spacing:0;gap:14px;padding-block:20px}.faq details>div{padding-right:0;font-size:12px}.contact{padding-block:66px}.contact-layout{grid-template-columns:1fr;gap:38px}.contact figure{margin-top:0;margin-right:22px}.contact figure img{aspect-ratio:1.5}.contact figcaption{font-size:7px}.contact h2{font-size:28px;margin:21px 0}.contact-copy>p:not(.section-label){font-size:12px}.button{padding:17px 22px;font-size:11px;min-height:58px;gap:17px}.contact-copy>small{font-size:9px}.footer{display:grid;grid-template-columns:1fr auto;padding-block:40px;gap:27px}.footer nav{grid-column:1/-1;grid-row:2;gap:25px;font-size:10px}.footer>small{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
