@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&family=Noto+Sans+JP:wght@400;500;600;700&display=swap');
:root{--navy:#132940;--blue:#0178af;--gold:#b69a54;--orange:#ff7000;--pale:#edf1f4;--ink:#132940;--paper:#fff;--surface:#f4f6f8;--surface-2:#edf1f4;--line:#ccd5dd;--accent:#132940;--accent-ink:#285e83;--ink-soft:#566575;--on-navy:#fff;--accent-contrast:#fff;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--navy);background:#fff;font:400 16px/1.9 'Noto Sans JP',sans-serif;letter-spacing:.02em}body.lock{overflow:hidden}a{color:inherit;text-decoration:none;transition:opacity .3s,background .3s}a:hover{opacity:.72}button{font:inherit;cursor:pointer}img{max-width:100%;display:block}figure,p,h1,h2,h3{margin:0}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:6px}[hidden]{display:none!important}.skip{position:fixed;left:20px;top:-100px;background:white;padding:12px;z-index:200}.skip:focus{top:10px}.en{font-family:Montserrat,Arial,sans-serif}.u-header{height:80px;background:rgba(255,255,255,.98);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:60;border-bottom:1px solid #1329400b}.u-brand{display:flex;align-items:center;gap:14px;margin-left:30px;min-width:186px;line-height:1.1}.u-brand .word{font-family:Georgia,serif;font-size:47px;letter-spacing:-.055em}.u-brand .descriptor{font-size:10px;letter-spacing:.12em;line-height:1.8}.u-nav{display:flex;gap:22px;align-items:center;margin-left:auto;padding:0 26px}.u-nav a{text-align:center;font-size:12px;white-space:nowrap}.u-nav small{display:block;font:500 9px Montserrat,sans-serif;letter-spacing:.1em;color:#667584;margin-top:4px}.u-book{height:80px;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column;width:170px;font-size:14px}.u-book small{font:10px Montserrat;letter-spacing:.13em}.menu-toggle{display:none;border:0;background:none;width:52px;height:48px;padding:12px;z-index:92}.menu-toggle i{display:block;height:1px;background:var(--navy);margin:6px 0;transition:transform .35s}.menu-toggle[aria-expanded=true] i:first-child{transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded=true] i:last-child{transform:translateY(-7px) rotate(-45deg)}.menu-toggle[aria-expanded=true] i:nth-child(2){opacity:0}.u-drawer{position:fixed;inset:80px 0 0;background:#fff;z-index:55;overflow:auto;padding:55px 24px 110px}.drawer-links{max-width:620px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:25px}.drawer-links a{font-size:15px;padding:10px 0}.drawer-links small{display:block;color:#76838e;font:10px Montserrat;margin-top:5px;letter-spacing:.1em}.u-drawer .action{margin:35px auto 0;max-width:620px;width:100%}.hero{height:50vw;min-height:640px;margin-top:-80px;position:relative;isolation:isolate;overflow:hidden}.hero picture,.hero picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}.hero-content{position:relative;width:87.5%;margin:auto;padding:15.97vw 4.1667vw 0}.hero h1{font-size:2.6389vw;font-weight:400;letter-spacing:.1em;line-height:1.85}.hero-brand{display:flex;align-items:center;gap:15px;margin-top:13px;font-size:15px;letter-spacing:.12em}.hero-brand b{font:58px/1 Georgia,serif;letter-spacing:-.05em}.hero-promises{display:flex;gap:24px;margin-top:48px;width:530px;max-width:48%}.hero-promises div{width:150px;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);padding:20px 0;color:#715c28;text-align:center;font-size:15px;font-weight:500;line-height:1.6}.hero-promises small{display:block;font:10px Montserrat;letter-spacing:.1em;margin-top:10px}.image-note{position:absolute;bottom:10px;right:16px;background:#ffffffdd;font-size:10px;padding:3px 8px;color:#526171;letter-spacing:.02em}.image-note.light{background:#132940c9;color:#fff}.photo-note{color:#667686;font-size:11px;margin-top:8px}.photo-strip{position:relative;overflow:hidden;background:#fff;padding:0}.photo-track{display:flex;width:max-content;gap:5px;animation:photo-flow 60s linear infinite}.photo-track figure{width:520px;height:345px;position:relative;flex-shrink:0}.photo-track img{width:100%;height:100%;object-fit:cover}.photo-track figure:nth-child(4n+3) img{object-position:center 40%}.strip-controls{position:absolute;bottom:15px;right:20px;display:flex;align-items:center;gap:10px;color:#fff;font-size:11px;background:#132940cd;padding:5px 10px}.strip-controls button{background:none;color:#fff;border:1px solid #ffffff70;padding:4px 12px;min-height:36px}.photo-strip.paused .photo-track,.photo-strip:focus-within .photo-track{animation-play-state:paused}@keyframes photo-flow{to{transform:translateX(-2100px)}}
.section-inner{max-width:1260px;margin:auto;padding:120px 60px}.section-title{font-size:18px;font-weight:400;letter-spacing:.1em;line-height:1.5;margin-bottom:60px}.section-title span{display:block;font:700 80px/1 Montserrat,Arial,sans-serif;letter-spacing:.04em;color:#ccd6de;margin-bottom:10px}.concept{background:#e9eef2}.concept .section-inner{padding-top:160px;padding-bottom:120px;display:flex;justify-content:space-between;gap:60px;min-height:560px}.concept-heading{position:relative;flex:1}.concept-heading .watermark{position:absolute;top:-75px;left:-4px;font:700 96px/1 Montserrat,sans-serif;letter-spacing:.025em;color:#fff8}.concept h2{position:relative;font-size:32px;font-weight:400;line-height:1.75;letter-spacing:.1em}.concept-copy{width:49%;line-height:2.5}.concept-copy p+p{margin-top:0}.service{background:linear-gradient(120deg,#f8fafc,#f0f3f5)}.service-layout{display:grid;grid-template-columns:461fr 580fr;gap:80px;align-items:start}.service-photo{position:relative}.service-photo img{width:100%;aspect-ratio:461/580;object-fit:cover}.service-copy h3{font-size:24px;font-weight:400;line-height:1.65}.service-copy p{line-height:2.5;margin-top:25px}.marker{background:linear-gradient(transparent 68%,#e8dcb8 68%,#e8dcb8 95%,transparent 95%)}.action{display:flex;justify-content:center;align-items:center;position:relative;background:var(--navy);color:white;width:300px;max-width:100%;min-height:70px;padding:20px 26px;border:1px solid var(--navy);font-size:14px;font-weight:500;text-align:center;line-height:1.6}.action:after{content:'';position:absolute;bottom:7px;right:7px;border-right:12px solid currentColor;border-top:12px solid transparent}.action.orange{background:var(--orange);border-color:var(--orange);color:var(--navy)}.action.outline{background:transparent;color:inherit;border-color:currentColor}.service .action{margin-top:40px}.duo{display:grid;grid-template-columns:1fr 1fr}.duo-panel:nth-child(2){background:#edf1f4}.duo-photo{position:relative}.duo-photo img{width:100%;aspect-ratio:16/9;object-fit:cover}.duo-copy{padding:30px 50px;min-height:510px}.duo-copy .section-title{margin-bottom:40px}.duo-copy p{max-width:580px;line-height:2}.duo-copy .action{margin:40px 0 0 auto}.menu-lines{border-top:1px solid var(--line);margin:22px 0 0}.menu-lines div{border-bottom:1px solid var(--line);padding:14px 0;display:flex;gap:16px;justify-content:space-between;font-size:14px}.menu-lines small{color:#687685}.salon-banner{background:var(--navy);color:#fff;position:relative;isolation:isolate;text-align:center;overflow:hidden}.salon-banner:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#132940ef,#132940c9),url('/assets/generated/consult.webp') center 46%/cover}.salon-banner .section-inner{padding-top:62px;padding-bottom:62px;min-height:531px}.salon-banner .section-title span{color:#fff}.salon-banner .section-title{margin-bottom:42px}.salon-banner .action{margin:45px auto 0}.salon-banner p{line-height:2}.salon-locations{font-size:13px;color:#d5dfe6;margin-top:20px}.consultation{background:#edf1f4}.consultation .section-title span{color:#fff}.consultation .intro{max-width:640px;line-height:2.2}.concern-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:60px}.concern-grid h3{font-size:18px;font-weight:500;padding:20px 12px;color:#fff;background:var(--navy);text-align:center}.concern-grid figure{position:relative}.concern-grid img{width:100%;height:280px;object-fit:cover}.concern-grid p{padding:26px 0;line-height:2;font-size:14px}.consultation-bottom{text-align:center;margin-top:65px}.consultation-bottom h3{font-size:27px;font-weight:400;line-height:1.8}.consultation-bottom p{margin-top:18px}.consultation-bottom .action{margin:34px auto 0}.assurances{background:var(--navy);color:#fff;text-align:center}.assurances .section-inner{padding-top:100px;padding-bottom:100px}.assurances .lead{font-size:23px;letter-spacing:.08em;line-height:1.8}.assurance-list{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:60px}.assurance-list div{border-top:1px solid #b69a5480;border-bottom:1px solid #b69a5480;padding:27px 0}.assurance-list small{color:#d1b974;font:11px Montserrat;letter-spacing:.14em}.assurance-list h3{font-size:22px;margin:15px 0;font-weight:400}.assurance-list p{font-size:13px;color:#d8e0e6}.recruit-section{background:#e9eef2}.recruit-layout{display:grid;grid-template-columns:461fr 540fr;gap:90px;align-items:center}.recruit-photo{position:relative}.recruit-photo img{width:100%;height:510px;object-fit:cover;object-position:70% center}.recruit-section .section-title span{color:#fff}.recruit-section .section-title{margin-bottom:38px}.recruit-section p{line-height:2.2}.recruit-section .action{margin-top:40px}.contact-section{background:#1d344a;color:#fff}.contact-layout{display:flex;gap:80px;justify-content:space-between;align-items:center;padding-top:100px;padding-bottom:100px}.contact-section .section-title{margin-bottom:35px}.contact-section .section-title span{color:#fff}.contact-section p{font-size:14px}.contact-actions{display:grid;gap:18px}.journal{background:var(--navy);color:white}.journal .section-inner{padding-top:110px;padding-bottom:110px;min-height:318px;display:flex;align-items:center;justify-content:space-between;gap:50px}.journal-label{font:32px Montserrat;letter-spacing:.1em}.journal p{font-size:13px;margin-top:10px}.journal .action{border-color:#ffffff70;background:transparent}.u-footer{background:#fff;padding:70px max(24px,calc((100vw - 1140px)/2)) 28px}.footer-main{display:grid;grid-template-columns:1fr 1fr;gap:70px}.footer-brand .word{font:76px/1 Georgia;letter-spacing:-.05em}.footer-brand p{font-size:12px;margin-top:20px;line-height:2}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:16px 40px;font-size:13px}.footer-bottom{border-top:1px solid var(--line);margin-top:50px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#677582}.fixed-book{position:fixed;right:0;bottom:12%;z-index:40;width:82px;background:var(--orange);color:var(--navy);padding:23px 19px;border:1px solid #fff7;box-shadow:0 3px 18px #13294014;font-weight:500;writing-mode:vertical-rl;letter-spacing:.15em;font-size:17px}.fixed-book small{writing-mode:horizontal-tb;font-size:10px;letter-spacing:0;margin-bottom:16px;text-align:center}.fixed-book b{font:26px Montserrat;margin-top:15px}.fixed-book[hidden]{display:none}.store-dialog{padding:0;border:0;width:min(860px,calc(100% - 40px));max-height:90dvh;color:var(--navy);background:#fff;box-shadow:0 30px 100px #0005}.store-dialog::backdrop{background:#0b1d32b8;backdrop-filter:blur(4px)}.dialog-top{position:sticky;top:0;background:white;padding:28px 40px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;z-index:1}.dialog-top h2{font-size:21px;font-weight:500}.dialog-top small{display:block;font:11px Montserrat;letter-spacing:.15em;color:var(--blue);margin-bottom:8px}.dialog-close{border:1px solid var(--line);background:white;font-size:25px;width:44px;height:44px}.dialog-body{padding:15px 40px 40px}.store-row{border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:26px 0}.store-row h3{font-size:21px;font-weight:500}.store-row p{font-size:12px;color:#677582;margin-top:7px}.store-row .action{width:200px;min-height:52px;font-size:13px;padding:14px}.store-row .detail{font-size:12px;text-decoration:underline;text-underline-offset:4px;display:inline-block;margin-top:8px}.store-row.pending .action{background:#edf1f4;border-color:#edf1f4;color:var(--navy)}.dialog-footnote{font-size:12px;line-height:1.9;margin-top:22px}.subpage{max-width:1040px;margin:auto;padding:100px 40px 130px}.subpage h1,.subpage h2{font-weight:500}.subpage h1{font-size:38px;margin-bottom:36px}.subpage h2{font-size:25px;margin:40px 0 20px}.subpage h3{font-size:19px;margin:25px 0 12px}.subpage p{margin:20px 0;line-height:2.1}.subpage a:not(.action){text-decoration:underline;text-underline-offset:5px}.subpage .section{margin:35px 0}.subpage table{width:100%;border-collapse:collapse;table-layout:fixed}.subpage th,.subpage td{padding:18px 10px;border-bottom:1px solid var(--line);text-align:left;overflow-wrap:anywhere}.subpage th{width:26%}.subpage .eyebrow{font:50px Montserrat;color:#ccd6de}.subpage .grid{display:block}.subpage .card,.subpage .panel{background:none;border:0;box-shadow:none;padding:0}.subpage .card+.card{margin-top:30px}.subpage .cta-row{margin-top:30px}.subpage .cta-btn{background:var(--navy);color:#fff;padding:17px 25px;display:inline-block}.subpage .btn,.subpage .btn-secondary{background:var(--navy);color:#fff;padding:16px 24px}.reveal{transition:opacity .8s ease,transform .8s ease}.motion-on .reveal.waiting{opacity:0;transform:translateY(22px)}.motion-on .reveal.seen{opacity:1;transform:none}
/* Existing ordinary URLs keep their content and metadata, and share the new visual system. */
body.renewed-child{background:#fff;color:var(--navy);font-family:'Noto Sans JP',sans-serif}.renewed-child main.wrap{max-width:1140px;padding-top:70px;padding-bottom:90px}.renewed-child .update-article,.renewed-child .panel,.renewed-child .card{background:#fff;color:var(--navy);border-color:var(--line);box-shadow:none;border-radius:0}.renewed-child h1,.renewed-child h2,.renewed-child h3{font-family:'Noto Sans JP',sans-serif;letter-spacing:.04em}.renewed-child h1{font-size:clamp(26px,3vw,42px);line-height:1.6}.renewed-child .cta-btn{background:var(--navy);color:white;border:0;border-radius:0;text-shadow:none;box-shadow:none;white-space:normal}.renewed-child .cta-btn.gold{background:var(--orange);color:var(--navy)}.renewed-child .quick-nav a{color:var(--navy)}.renewed-child .update-article p,.renewed-child .update-article li{color:var(--navy)}.renewed-child .update-article{padding:42px}.renewed-child .fact-table{table-layout:fixed;min-width:0}.renewed-child .fact-table td{overflow-wrap:anywhere}.renewed-child .u-header .word,.renewed-child .u-footer .word{font-family:Georgia,serif;color:var(--navy)}
@media(max-width:1349px){.u-nav{display:none}.menu-toggle{display:block;margin-right:24px}.u-book{margin-left:auto;margin-right:18px;width:145px}.hero-promises{gap:16px;margin-top:32px}.hero-promises div{font-size:13px}}
@media(max-width:1023px){html{scroll-padding-top:83px}.u-header{height:64px}.u-brand{margin-left:24px}.u-brand .word{font-size:40px}.u-book{display:none}.u-drawer{inset:64px 0 0}.hero{margin-top:-64px;min-height:510px}.section-inner{padding:75px 24px}.section-title{font-size:15px;margin-bottom:36px}.section-title span{font-size:clamp(40px,9vw,70px)}.concept .section-inner{flex-direction:column;padding:100px 24px 70px;gap:32px;min-height:0}.concept-copy{width:100%;line-height:2.1}.concept h2{font-size:25px}.concept-heading .watermark{font-size:72px;top:-48px}.service-layout{grid-template-columns:1fr;gap:35px}.service-photo{max-width:461px;margin:auto;width:100%}.service-copy h3{font-size:20px}.service-copy p{line-height:2.1;margin-top:25px}.service .action{margin-top:30px}.duo{grid-template-columns:1fr}.duo-copy{padding:32px 24px 55px;min-height:0}.duo-copy .section-title{margin-bottom:30px}.photo-track figure{width:260px;height:173px}.photo-track{animation-duration:32s}@keyframes photo-flow{to{transform:translateX(-1060px)}}.salon-banner .section-inner{padding:70px 24px;min-height:480px}.concern-grid{grid-template-columns:1fr;gap:32px;margin-top:40px}.concern-grid article{max-width:500px;margin:auto;width:100%}.concern-grid img{height:300px}.consultation-bottom h3{font-size:23px}.assurance-list{gap:18px}.assurance-list h3{font-size:17px}.assurance-list p{font-size:12px}.assurances .lead{font-size:21px}.recruit-layout{grid-template-columns:1fr;gap:40px}.recruit-photo img{height:auto;aspect-ratio:4/3}.contact-layout{flex-direction:column;align-items:stretch;gap:35px}.contact-actions .action{width:100%}.journal .section-inner{flex-direction:column;align-items:flex-start;gap:25px}.fixed-book{writing-mode:horizontal-tb;width:calc(100% - 40px);max-width:500px;left:50%;right:auto;transform:translateX(-50%);bottom:12px;padding:15px 20px;font-size:15px;display:flex;align-items:center;justify-content:center;gap:15px;letter-spacing:.04em}.fixed-book small{margin:0;font-size:10px}.fixed-book b{margin:0}.footer-main{grid-template-columns:1fr;gap:40px}.u-footer{padding:55px 24px 30px}.footer-bottom{flex-direction:column;gap:8px}}
@media(max-width:750px){body{font-size:14px}.u-brand{min-width:0}.u-brand .descriptor{font-size:9px}.menu-toggle{margin-right:16px}.hero{height:173.333vw;min-height:0;margin-top:0}.hero picture img{object-position:center}.hero-content{width:100%;padding:10.667vw 8.533vw 0}.hero h1{font-size:7.4667vw;line-height:1.65;letter-spacing:.075em}.hero-brand{margin-top:18px;font-size:11px;gap:13px;letter-spacing:.06em}.hero-brand b{font-size:48px}.hero-promises{position:absolute;left:6%;right:6%;top:139vw;width:88%;max-width:none;margin:0;gap:12px}.hero-promises div{width:33.333%;background:#ffffffd9;border-color:#b69a54aa;font-size:11px;line-height:1.6;padding:10px 1px}.hero-promises small{font-size:8px;letter-spacing:.03em;margin-top:4px}.hero .image-note{font-size:9px;bottom:5px;right:10px}.concept h2{font-size:clamp(20px,5.8vw,26px);letter-spacing:.06em}.concept-heading .watermark{font-size:clamp(44px,14vw,60px);top:-38px}.concept .section-inner{padding-top:95px}.section-title span{font-size:clamp(38px,12.8vw,65px)}.service-copy h3{font-size:18px}.action{width:100%;min-height:62px}.service-photo img{aspect-ratio:4/5}.salon-banner .section-title{margin-bottom:32px}.salon-banner p{text-align:left}.salon-locations{font-size:12px}.concern-grid img{height:auto;aspect-ratio:1.35}.consultation-bottom{margin-top:35px}.consultation-bottom h3{font-size:21px}.consultation-bottom p{font-size:13px;text-align:left}.assurances .section-inner{padding:65px 24px}.assurances .lead{font-size:19px;line-height:2}.assurance-list{grid-template-columns:1fr;margin-top:30px;gap:0}.assurance-list div{padding:25px 0;border-bottom:0}.assurance-list div:last-child{border-bottom:1px solid #b69a5480}.assurance-list h3{font-size:20px;margin:10px 0}.assurance-list p{font-size:13px}.recruit-section .section-title{margin-bottom:28px}.footer-links{gap:17px;font-size:12px}.dialog-top{padding:22px}.dialog-top h2{font-size:18px}.dialog-body{padding:0 22px 25px}.store-row{grid-template-columns:1fr;gap:12px;padding:22px 0}.store-row h3{font-size:19px}.store-row .action{width:100%}.store-dialog{width:calc(100% - 24px);max-height:92dvh}.subpage{padding:55px 24px 90px}.subpage h1{font-size:28px}.subpage .eyebrow{font-size:36px}.subpage h2{font-size:21px}.subpage th,.subpage td{font-size:12px;padding:15px 8px}.renewed-child .update-article{padding:23px}.renewed-child main.wrap{padding:42px 20px 70px}.strip-controls{right:12px;bottom:9px;font-size:9px;padding:2px 6px}.strip-controls button{padding:2px 8px;font-size:10px}.image-note{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-on .reveal.waiting{opacity:1;transform:none}}

@media(min-width:1024px){.hero>.image-note{right:100px}}
@media(max-width:1023px){.fixed-book span{white-space:nowrap}.fixed-book small{flex-shrink:0}.journal .section-inner{min-height:280px}}
@media(max-width:350px){.fixed-book small{display:none}.fixed-book{gap:20px}.menu-lines div{gap:8px;font-size:12px}.menu-lines small{font-size:10px}}
@media(max-width:750px){.concept-copy br,.service-copy p br{display:none}.concept-copy p+p{margin-top:18px}.dialog-close{flex-shrink:0}.dialog-top{gap:12px}}
/* The production host adds its badge after deployment. Keep booking above it. */
@media(max-width:1023px){body:has(#nl-badge-frame) .fixed-book{bottom:76px}}
