:root{--ink:#463c42;--muted:#746b70;--rose:#925269;--rose-dark:#754054;--pink:#f8edf1;--light:#fffafa;--line:#e7dce1;--white:#fff;--serif:'Noto Serif JP',serif;--latin:'Cormorant Garamond',Georgia,serif}
img{height:auto}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--white);font-family:'Noto Sans JP',sans-serif;font-size:16px;line-height:2;letter-spacing:.025em}h1,h2,h3,p,figure{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;object-fit:cover}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--rose);outline-offset:6px}::selection{background:#eed5de}.skip{position:fixed;top:-100px;left:20px;padding:12px;background:white;z-index:100}.skip:focus{top:12px}.wrap{width:min(1180px,calc(100% - 112px));margin-inline:auto}.section{padding-block:120px}.eyebrow{font-size:12px;font-weight:500;letter-spacing:.19em;color:var(--rose);line-height:1.6}h1,h2{font-family:var(--serif);font-weight:400}h2{font-size:clamp(25px,2.5vw,36px);line-height:1.9;letter-spacing:.06em}h2 span,h1 span{display:block}p{overflow-wrap:break-word}.header{height:100px;padding-inline:4.2vw;display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.brand{display:inline-flex;flex-direction:column;align-items:center;line-height:1}.brand-name{font-family:var(--latin);font-size:44px;letter-spacing:.14em}.brand-dot{color:var(--rose);letter-spacing:0}.brand-sub{font-size:10px;margin-top:7px;letter-spacing:.28em}.header nav{display:flex;gap:30px;align-items:center;font-size:14px}.header nav>a:not(.nav-book){position:relative}.header nav>a:not(.nav-book)::after{content:'';position:absolute;height:1px;left:0;right:100%;bottom:-7px;background:var(--rose);transition:right .3s}.header nav>a:hover::after,.header nav>a[aria-current]::after{right:0}.nav-book{display:flex;gap:26px;align-items:center;border:1px solid var(--rose);border-radius:2px;padding:10px 23px;color:var(--rose)}.nav-book:hover{background:var(--pink)}.nav-toggle{display:none}.hero{display:grid;grid-template-columns:44% 56%;min-height:640px;max-width:1600px;margin:auto;position:relative;background:var(--light)}.hero-copy{padding:68px 36px 55px max(56px,calc((100vw - 1180px)/2));display:flex;flex-direction:column;align-items:flex-start;justify-content:center;position:relative;z-index:1}.hero h1{font-size:clamp(32px,3.35vw,50px);line-height:1.8;letter-spacing:.07em;margin-top:28px;white-space:nowrap}.hero-lead{font-size:16px;line-height:2.2;margin:28px 0 30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:15px 28px;background:var(--rose);color:white;border:1px solid var(--rose);border-radius:2px;font-size:14px;font-weight:500;min-height:56px;transition:background .25s,transform .25s}.button:hover{background:var(--rose-dark);transform:translateY(-2px)}.button.outline{background:transparent;color:var(--rose)}.button.outline:hover{background:var(--pink)}.hero-image{position:relative;overflow:hidden;margin:28px 28px 28px 0;border-radius:44% 44% 2px 2px / 33% 33% 2px 2px}.hero-image img{height:100%;width:100%;object-position:55% center;animation:hero-settle 1.4s ease-out both}.hero-image figcaption{position:absolute;bottom:15px;right:18px;font-size:11px;letter-spacing:.17em;background:rgba(255,255,255,.85);padding:3px 10px;color:var(--ink)}.hero-scroll{font-size:11px;letter-spacing:.16em;margin-top:48px;display:flex;align-items:center;gap:25px}.salon-strip{display:flex;align-items:center;justify-content:center;gap:4vw;padding:20px 30px;border-bottom:1px solid var(--line);font-size:13px;line-height:1.8}.salon-strip strong{font-size:14px;font-weight:500;margin-left:8px}.salon-strip span{margin-left:12px;color:var(--muted);font-size:12px}.salon-strip>a{display:flex;gap:10px;align-items:center}.concept{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.concept-photo{position:relative;padding-bottom:35px}.concept-photo img{aspect-ratio:4/4.3;object-position:39% center}.concept-photo::before{content:'';position:absolute;z-index:-1;inset:40px -26px 0 30px;background:var(--pink)}.photo-note{display:block;font-size:11px;letter-spacing:.18em;padding-top:14px;color:var(--muted)}.concept-copy h2{font-size:clamp(24px,2.2vw,32px);margin:22px 0 30px}.concept-copy p:not(.eyebrow){font-size:16px;line-height:2.3;margin-top:20px}.footer{display:grid;grid-template-columns:1fr 1.3fr 1fr;align-items:center;padding-block:54px;gap:35px;border-top:1px solid var(--line)}.footer .brand{align-items:flex-start;width:fit-content}.footer p{font-size:14px}.footer small{text-align:right;font-size:12px;color:var(--muted)}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:55px}.section-heading h2{margin-top:17px}.section-heading>p{color:var(--muted);font-size:16px;line-height:2.2}.care{background:var(--pink)}.care-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.care-grid article{padding:24px 0 10px;border-top:1px solid #cbb5c0}.number{font-family:var(--latin);font-size:40px;color:var(--rose);line-height:1}.care-grid h3{font-family:var(--serif);font-size:19px;font-weight:500;margin:23px 0 18px;line-height:1.9}.care-grid p{font-size:16px;line-height:2.1;color:#65575f}.menu-preview{display:grid;grid-template-columns:1.05fr 1fr;gap:9%;align-items:center}.style-photo img{aspect-ratio:1.1;object-position:48% center;border-radius:45% 45% 0 0 / 38% 38% 0 0}.style-photo figcaption,.menu-sidebar figcaption{font-size:12px;color:var(--muted);margin-top:12px;line-height:1.7}.menu-preview-copy h2{margin:17px 0 28px}.price-preview{margin:0}.price-preview>div{display:flex;justify-content:space-between;gap:20px;padding:17px 0;border-bottom:1px solid var(--line)}.price-preview dt{font-size:16px}.price-preview dd{font-family:var(--latin);font-size:26px;margin:0;white-space:nowrap;line-height:1.4}.note{font-size:12px;color:var(--muted);line-height:1.9;margin-top:17px}.text-link{display:flex;align-items:center;justify-content:space-between;gap:25px;max-width:360px;font-size:14px;padding:18px 0 12px;border-bottom:1px solid var(--rose);margin-top:26px;color:var(--rose)}.text-link span{transition:transform .2s}.text-link:hover span{transform:translateX(5px)}.salon-preview{background:var(--light)}.salon-preview-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:9%;align-items:center}.salon-preview h2{margin-top:17px}.salon-preview p:not(.eyebrow){font-size:16px;line-height:2.2;margin-top:24px}.salon-preview img{aspect-ratio:1.15;object-position:48% center}.reservation{text-align:center;padding-inline:24px;background:linear-gradient(180deg,#fff 0%,#fff9fb 100%)}.reservation h2{margin-top:20px;font-size:clamp(23px,2.7vw,36px)}.reservation>p:not(.eyebrow):not(.note){font-size:16px;margin-top:18px}.reservation-actions{display:flex;gap:55px;justify-content:center;align-items:center;margin:36px auto}.phone-link{font-family:var(--latin);font-size:34px;line-height:1.3;letter-spacing:.04em}.phone-link span{font-family:'Noto Sans JP',sans-serif;font-size:12px;display:block;color:var(--muted);margin-bottom:8px;letter-spacing:.08em}.footer-nav{display:flex;gap:25px;font-size:14px;margin-top:17px}.footer-nav a:hover{text-decoration:underline}.page-heading{padding-top:30px;padding-bottom:64px}.breadcrumb{display:flex;gap:17px;font-size:12px;color:var(--muted);margin-bottom:50px}.breadcrumb a:hover{text-decoration:underline}.display-title{font-family:var(--latin);font-size:clamp(52px,6.5vw,88px);color:var(--rose);line-height:1.15;letter-spacing:-.025em}.page-heading h1{font-size:clamp(25px,2.65vw,36px);margin:21px 0;line-height:1.9;letter-spacing:.04em}.page-heading>p:last-child:not(.display-title){font-size:16px;color:var(--muted)}.menu-links{display:flex;gap:10px;flex-wrap:wrap;padding-bottom:20px;border-bottom:1px solid var(--line)}.menu-links a{font-size:14px;padding:8px 20px;background:var(--pink);border:1px solid transparent}.menu-links a:hover{border-color:var(--rose)}.menu-layout{display:grid;grid-template-columns:30% 1fr;gap:10%;padding-top:65px}.menu-sidebar img{width:100%;aspect-ratio:1;object-position:55% center;border-radius:46% 46% 0 0}.menu-sidebar>.eyebrow{margin-top:35px}.menu-sidebar h2{font-size:26px;margin:13px 0 24px}.menu-sidebar>p:not(.eyebrow){font-size:16px}.menu-notice{background:var(--light);border:1px solid var(--line);padding:22px;margin-top:32px;font-size:14px;line-height:2}.menu-notice p+p{margin-top:15px}.price-section{margin-bottom:65px;scroll-margin-top:105px}.price-title{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid #c9a8b7;padding-bottom:17px;gap:20px}.price-title h2{font-size:25px;letter-spacing:.04em;line-height:1.8}.price-title>span{font-family:var(--latin);color:var(--rose);font-size:26px}.menu-description{font-size:14px;color:var(--muted);margin:17px 0}.price-list{margin:0}.price-list>div{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.price-list dt{font-size:16px;min-width:0}.price-list small{display:block;color:var(--muted);font-size:12px;margin-top:4px;line-height:1.9}.price-list dd{font-family:var(--latin);font-size:27px;margin:0;white-space:nowrap;line-height:1.5}.price-source a{text-decoration:underline;text-underline-offset:3px}.products{background:var(--light)}.products-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.products-grid img{width:100%;aspect-ratio:4/4.5}.products-grid figcaption{font-size:14px;line-height:1.9;margin-top:20px}.access-cover{position:relative}.access-cover>img{width:100%;aspect-ratio:2.15;object-position:center 43%}.access-badge{position:absolute;bottom:-34px;right:40px;background:var(--pink);padding:24px 35px;box-shadow:0 6px 20px #463c4208}.access-badge>span{font-size:11px;letter-spacing:.1em;color:var(--rose)}.access-badge p{font-size:16px;line-height:1.5}.access-badge strong{font-family:var(--latin);font-size:48px;font-weight:400;margin:0 8px}.salon-info{display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.salon-info h2{margin-top:17px;font-family:var(--serif);font-size:30px}.salon-kana{display:block;font-size:14px;margin-top:2px;color:var(--muted)}.salon-intro{font-size:16px;line-height:2.3;margin-top:25px}.salon-detail{width:250px;aspect-ratio:4/4.8;object-position:center 60%;margin-top:35px}.info-list{margin:0}.info-list>div{display:grid;grid-template-columns:90px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:20px 0;font-size:16px}.info-list>div:first-child{padding-top:0}.info-list dt{color:var(--muted);font-size:14px;padding-top:3px}.info-list dd{margin:0}.info-list small{display:block;font-size:13px;color:var(--muted);margin-top:6px}.underlined{text-decoration:underline;text-underline-offset:5px}.map{width:100%;height:420px;border:0;background:var(--pink);display:block}.map-section{padding-bottom:60px}
@keyframes hero-settle{from{transform:scale(1.035);opacity:.5}to{transform:scale(1);opacity:1}}
@media(min-width:1600px){.hero-copy{padding-left:80px}}
@media(max-width:1050px){.header nav{gap:18px}.header{padding-inline:28px}.wrap{width:calc(100% - 64px)}.hero-copy{padding-left:32px}.hero h1{font-size:35px;letter-spacing:.02em}.hero .eyebrow{font-size:10px}.hero-image{margin-right:20px}.salon-strip{gap:20px;flex-wrap:wrap}.concept{gap:7%}.concept-copy h2{font-size:25px}}
@media(max-width:760px){html{scroll-padding-top:85px}.header{height:80px;padding-inline:22px}.brand-name{font-size:35px}.brand-sub{font-size:10px}.nav-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;background:none;border:0;width:60px;min-height:48px;gap:8px;padding:8px;color:var(--ink)}.toggle-lines{width:23px;height:10px;border-block:1px solid var(--ink)}.toggle-text{font-size:10px;line-height:1.2}.header nav{display:none;position:absolute;top:79px;left:0;right:0;padding:28px;background:white;border-bottom:1px solid var(--line);box-shadow:0 15px 25px #463c4210;gap:22px;align-items:stretch;font-size:15px}.header nav.is-open{display:flex;flex-direction:column}.header nav>a{padding:5px 4px}.header nav>.nav-book{padding:12px 20px;justify-content:space-between}.wrap{width:calc(100% - 44px)}.section{padding-block:75px}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:42px 26px 35px}.hero .eyebrow{font-size:10px}.hero h1{font-size:clamp(30px,8vw,43px);margin-top:18px;letter-spacing:.07em;line-height:1.7}.hero-lead{font-size:14px;line-height:2;margin:20px 0 22px}.hero-image{height:auto;aspect-ratio:1.2;width:calc(100% - 44px);margin:0 22px 25px;border-radius:42% 42% 2px 2px / 40% 40% 2px 2px}.hero-image figcaption{font-size:10px;bottom:10px;right:10px}.hero-scroll{display:none}.button{font-size:14px;padding:13px 23px;min-height:52px}.salon-strip{gap:10px;padding:20px 22px;display:grid;grid-template-columns:1fr;font-size:12px}.salon-strip strong{font-size:13px}.salon-strip span{font-size:11px}.salon-strip>a{padding-top:7px}.concept{display:flex;flex-direction:column-reverse;gap:35px;align-items:stretch}.concept-copy h2{font-size:25px;letter-spacing:.025em;margin-top:16px}.concept-copy p:not(.eyebrow){font-size:15px;line-height:2.2}.concept-photo{width:calc(100% - 18px);padding-bottom:22px}.concept-photo img{aspect-ratio:4/3}.concept-photo::before{right:-18px;left:18px;top:25px}.footer{grid-template-columns:1fr;gap:25px;padding-block:38px}.footer small{text-align:left}.footer p{font-size:14px}}
@media(max-width:1050px){.care-grid{grid-template-columns:repeat(2,1fr);gap:36px}.menu-layout{grid-template-columns:30% 1fr;gap:6%}.hero-image img{object-position:44% center}.price-title{gap:12px}.price-title>span{font-size:23px}}
@media(max-width:760px){.hero-image{aspect-ratio:1.28}.hero-image img{object-position:45% center}.hero-lead,.concept-copy p:not(.eyebrow){font-size:16px}.hero .eyebrow,.eyebrow{font-size:12px}.hero-image figcaption{font-size:12px}.section-heading{display:block;margin-bottom:34px}.section-heading>p{margin-top:24px;font-size:16px}.care-grid{grid-template-columns:1fr;gap:20px}.care-grid article{display:grid;grid-template-columns:40px 1fr;gap:5px 15px;padding-top:24px}.care-grid .number{grid-row:1/3;font-size:32px;margin-top:4px}.care-grid h3{margin:0 0 12px;font-size:19px}.care-grid p{font-size:16px;grid-column:2;line-height:2.1}.menu-preview{grid-template-columns:1fr;gap:35px}.style-photo{max-width:470px}.style-photo img{aspect-ratio:1.25}.menu-preview-copy h2{font-size:28px}.salon-preview-grid{display:flex;flex-direction:column;gap:34px;align-items:stretch}.salon-preview img{aspect-ratio:1.3}.reservation h2{font-size:23px;line-height:1.9;letter-spacing:.015em;text-wrap:balance}.reservation-actions{flex-direction:column;gap:30px;margin:30px auto}.reservation-actions .button{width:min(100%,330px)}.phone-link{font-size:33px}.reservation>p:not(.eyebrow):not(.note){font-size:16px}.page-heading{padding-top:22px;padding-bottom:40px}.breadcrumb{margin-bottom:36px;font-size:12px}.display-title{font-size:54px}.page-heading h1{font-size:24px;line-height:1.8;margin:20px 0;letter-spacing:.015em;text-wrap:balance}.page-heading>p:last-child{font-size:16px}.page-heading br{display:none}.menu-links{gap:8px;padding-bottom:25px}.menu-links a{font-size:14px;padding:6px 14px}.menu-layout{display:flex;flex-direction:column;gap:40px;padding-top:40px}.menu-sidebar{display:grid;grid-template-columns:110px 1fr;gap:8px 23px}.menu-sidebar figure{grid-row:1/4}.menu-sidebar img{aspect-ratio:1/1.3}.menu-sidebar figcaption{font-size:12px}.menu-sidebar>.eyebrow{margin-top:5px;font-size:12px}.menu-sidebar h2{font-size:23px;margin:0;line-height:1.65}.menu-sidebar>p:not(.eyebrow){grid-column:2;font-size:14px;line-height:1.9}.menu-notice{grid-column:1/-1;padding:18px;margin-top:20px}.menu-notice p+p{margin-top:8px}.price-section{margin-bottom:43px;scroll-margin-top:90px}.price-title h2{font-size:23px}.price-title>span{font-size:22px}.price-list>div{gap:12px;padding:18px 0}.price-list dt{font-size:15px}.price-list dd{font-size:25px}.price-list small{font-size:12px}.products-grid{grid-template-columns:1fr;gap:32px}.products-grid figure{display:grid;grid-template-columns:46% 1fr;gap:20px;align-items:center}.products-grid img{aspect-ratio:1/1.1}.products-grid figcaption{font-size:14px;margin:0}.access-cover>img{aspect-ratio:1.28;object-position:45% center}.access-badge{right:14px;bottom:-35px;padding:13px 21px}.access-badge>span{font-size:12px}.access-badge p{font-size:14px}.access-badge strong{font-size:37px}.salon-info{grid-template-columns:1fr;gap:40px;padding-top:80px}.salon-info>div{display:grid;grid-template-columns:1fr 90px;column-gap:15px}.salon-info .eyebrow,.salon-info h2,.salon-intro{grid-column:1}.salon-info h2{font-size:28px;line-height:1.7;margin-top:15px}.salon-detail{grid-column:2;grid-row:2/4;align-self:center;width:100%;aspect-ratio:1/1.6;margin:0}.salon-intro{font-size:15px;line-height:2.1;margin-top:20px}.salon-intro br{display:none}.info-list>div{grid-template-columns:70px 1fr;gap:14px;font-size:15px;padding:19px 0}.info-list dt{font-size:13px}.info-list small{font-size:12px}.map-section .section-heading .button{margin-top:24px}.map{height:340px}.map-section{padding-bottom:0}}
@media(max-width:360px){.header{padding-inline:18px}.hero-copy{padding-inline:22px}.hero h1{font-size:29px;letter-spacing:.03em}.hero .eyebrow{font-size:11px}.wrap{width:calc(100% - 36px)}.hero-image{width:calc(100% - 36px);margin-inline:18px}.price-title h2{font-size:21px}.price-title>span{font-size:20px}.price-list dd{font-size:23px}.price-list dt{font-size:14px}}
.access-directions{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding:48px;background:var(--pink)}.access-directions h3{font-family:var(--serif);font-weight:400;font-size:22px;line-height:1.9;margin:16px 0}.access-directions p:not(.eyebrow){font-size:15px;line-height:2.1}
.concept-promise{color:var(--rose-dark);font-weight:500;text-wrap:pretty}
.page-heading h1 .phrase{display:inline-block;white-space:nowrap}
@media(max-width:760px){.display-title{font-size:clamp(44px,13.8vw,54px)}}
@media(max-width:760px){.access-directions{grid-template-columns:1fr;gap:36px;padding:28px 23px}.access-directions h3{font-size:20px}.access-directions br{display:none}}
@media(max-width:760px){.concept-copy h2{font-size:clamp(20px,5.8vw,25px)}.concept-copy h2 span{white-space:nowrap}.page-heading h1 .phrase{display:block}.menu-sidebar{grid-template-columns:90px 1fr;column-gap:18px}.menu-sidebar h2{font-size:clamp(19px,5.8vw,23px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
