:root{--ink:#666;--line:#dededb;--sidebar:26%;--mobile-header:74px;--wp-offset:0px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:#fff;color:var(--ink);font:14px/1.75 Arial,"Helvetica Neue","Noto Sans JP",sans-serif;-webkit-font-smoothing:antialiased}body.admin-bar{--wp-offset:32px}a{color:inherit;text-decoration:none}a:hover{color:#171717}a:focus-visible,button:focus-visible{outline:2px solid #40594e;outline-offset:5px}button,input,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;height:auto}figure{margin:0}h1,h2,h3,p{margin-top:0}button{color:inherit}ul{padding:0;list-style:none}address{font-style:normal}.screen-reader-text,.skip-link:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link:focus{position:fixed;left:12px;top:12px;z-index:200;background:#fff;padding:12px 22px}.site-sidebar{position:fixed;inset:var(--wp-offset) auto 0 0;width:var(--sidebar);padding:26px 26px 34px 5.8vw;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;background:#fff;z-index:40}.sidebar-brand{margin-bottom:36px}.brand{display:inline-block;line-height:1}.brand img{width:150px;height:auto;display:block}.custom-logo{width:150px;height:auto}.nav-title{font-size:11px;font-weight:400;margin-bottom:19px;letter-spacing:.04em}.nav-title span{border-bottom:1px solid #777;padding-bottom:3px}.nav-group{margin:0 0 18px}.nav-group h2{font-size:11px;line-height:1.4;font-weight:400;margin:0 0 3px}.nav-group ul{margin:0}.nav-group a,.social-links a{display:inline-block;font-size:12px;line-height:1.45;font-weight:700;padding:2px 0}.nav-group a[aria-current=page]{color:#111;text-decoration:underline;text-underline-offset:4px}.social-nav{margin-top:35px}.social-nav .nav-title{margin-bottom:15px}.social-links{margin:0}.utility-nav{margin-top:32px;font-size:11px}.utility-nav ul{display:flex;flex-wrap:wrap;gap:7px;margin:0}.utility-nav li+li::before{content:"|";margin-right:7px;color:#aaa}.site-main{margin-left:var(--sidebar);padding-right:5vw;min-height:calc(100vh - var(--wp-offset));outline:none}.mobile-header,.menu-backdrop{display:none}.hero{position:relative;height:calc(100svh - var(--wp-offset));min-height:460px;overflow:hidden;background:#f4f3ef}.hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1.1s,visibility 1.1s}.hero-slide.is-active{opacity:1;visibility:visible;z-index:1}.hero-slide a,.hero-slide picture{display:block;width:100%;height:100%}.hero-slide img{display:block;width:100%;height:100%;object-fit:cover}.hero-controls{position:absolute;bottom:17px;left:20px;display:flex;gap:8px;align-items:center;z-index:3;background:rgba(255,255,255,.88);padding:3px 8px;backdrop-filter:blur(8px);color:#3c3c39}.hero-controls button{border:0;background:none;min-width:40px;min-height:40px;font-size:18px}.slide-count{font-size:10px;letter-spacing:.13em;padding:0 5px}.empty-home{padding:100px 35px}.empty-home h2{font-size:22px;font-weight:400}.store-photo img{width:100%;display:block;height:auto}.store-details{max-width:980px;margin:auto;padding:90px 5% 90px;text-align:center}.store-details h1{font-size:18px;font-weight:500;letter-spacing:.025em;margin-bottom:45px;line-height:1.7;color:#555}.store-section{border-top:1px solid var(--line);padding:46px 0;margin:0}.store-section h2{font-size:16px;font-weight:400;letter-spacing:.025em;margin-bottom:30px}.store-section p,.store-section address{font-size:13px;line-height:1.9;margin:0}.access-english{margin-top:27px}.store-section .text-link{display:inline-block;margin-top:25px}.text-link{text-decoration:underline;text-underline-offset:5px}.store-map{width:100%;height:460px;border:0;display:block;margin-bottom:42px}.store-editorial{margin-bottom:50px}.store-gallery{display:grid;gap:22px;margin-bottom:45px}.store-gallery img{width:100%;height:auto}.store-notice{font-size:14px;white-space:normal}.store-salon{background:#40594e;color:#fff}.store-salon .store-details{padding:85px 6%;max-width:none}.store-salon h1{color:#fff}.store-salon a:hover{color:#dce5db}.store-salon .store-section{border-color:#9ba99f}.store-salon .entry-content{text-align:left}.store-salon .entry-content img{display:block;margin:25px auto}.store-salon .entry-content h2{text-align:center;margin:45px 0 22px}.store-salon .wp-block-columns{display:flex;gap:32px;margin:35px 0}.store-salon .wp-block-column{min-width:0;flex:1}.store-salon .entry-content{font-size:14px}.store-salon .entry-content p{line-height:1.9}.store-salon .entry-content figure{margin:30px auto}.content-page{max-width:1000px;padding:80px 5% 100px;margin:auto}.content-page h1{font-size:22px;font-weight:400;letter-spacing:.035em;margin-bottom:45px}.content-page h2{font-size:17px;font-weight:400;line-height:1.8}.entry-content{overflow-wrap:anywhere}.entry-content p{margin-bottom:1.5em}.entry-content img{height:auto;max-width:100%}.entry-content iframe{max-width:100%}.entry-content a:not(:has(img)){text-decoration:underline;text-underline-offset:4px}.entry-content hr{border:0;border-top:1px solid var(--line);margin:48px 0}.news-item{padding:0 0 48px;margin-bottom:48px;border-bottom:1px solid var(--line)}time{font-size:12px;letter-spacing:.06em}.news-item h2{margin-top:15px}.legacy-news h2{margin:14px 0 24px}.pagination{display:flex;gap:18px;margin-bottom:40px}.back-top{position:fixed;right:20px;bottom:18px;background:rgba(255,255,255,.92);padding:9px 11px;font-size:15px;z-index:20}.back-top span{font-size:9px;margin-left:3px}.edit-link{font-size:12px;padding:22px 0}.editor-notice{border:1px solid #ddd;padding:18px}.wpcf7 input:not([type=checkbox]):not([type=radio]),.wpcf7 textarea{width:100%;border:1px solid #ccc;background:#fff;padding:12px;border-radius:0}.wpcf7 label{display:block}.wpcf7 input[type=submit]{max-width:220px;cursor:pointer;background:#333!important;color:#fff;border:0!important}.wpcf7 .wpcf7-spinner{vertical-align:middle}@media(min-width:1800px){:root{--sidebar:24%}.site-sidebar{padding-left:6vw}.site-main{padding-right:6vw}}@media(min-width:768px) and (max-width:1100px){:root{--sidebar:30%}.site-sidebar{padding-left:3vw;padding-right:18px}.site-main{padding-right:3vw}.nav-group a,.social-links a{font-size:11px}.hero{min-height:400px}}@media(max-width:782px){body.admin-bar{--wp-offset:46px}}@media(max-width:767px){:root{--sidebar:100%}.mobile-header{display:flex;height:var(--mobile-header);align-items:center;position:sticky;top:var(--wp-offset);z-index:60;background:#fff;padding:0 18px}.menu-toggle{display:flex;position:relative;flex-direction:column;gap:6px;justify-content:center;align-items:center;width:44px;height:44px;border:0;background:none;padding:0}.menu-toggle span{display:block;background:#666;height:1px;width:29px;transition:transform .25s,opacity .25s}.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-brand{margin-left:auto;margin-right:2px;line-height:1}.mobile-brand img{width:142px}.site-sidebar{inset:calc(var(--mobile-header) + var(--wp-offset)) 0 0 0;width:100%;padding:24px 28px 60px;display:none;z-index:50}.site-sidebar.is-open{display:block}.sidebar-brand{display:none}.nav-group{margin-bottom:22px}.nav-group h2{font-size:12px}.nav-group a,.social-links a{font-size:14px;line-height:1.55;padding:9px 0;min-height:40px}.nav-title{font-size:12px;margin-bottom:22px}.utility-nav{font-size:12px;padding-bottom:20px}.utility-nav a{display:inline-block;padding:10px 0}.site-main{margin-left:0;padding-right:0;min-height:calc(100svh - var(--mobile-header) - var(--wp-offset))}.hero{height:calc(100svh - var(--mobile-header) - var(--wp-offset));min-height:360px;max-height:1100px}.hero-slide img{object-fit:cover}.hero-controls{bottom:16px;left:15px}.hero-controls button{min-width:44px;min-height:44px}.store-details{padding:46px 24px 60px}.store-details h1{font-size:17px;margin-bottom:32px}.store-section{padding:32px 0}.store-section h2{font-size:15px;margin-bottom:22px}.store-section p,.store-section address{font-size:13px;line-height:1.9}.store-map{height:340px;margin-bottom:25px}.content-page{padding:45px 24px 75px}.content-page h1{font-size:21px;margin-bottom:32px}.store-salon .store-details{padding:48px 24px}.store-salon .wp-block-columns{display:block}.store-salon .wp-block-column{margin-bottom:30px}.store-salon .wp-block-column img{max-width:100%;width:auto}.back-top{right:12px;bottom:12px}.menu-open{overflow:hidden}.store-editorial{margin-bottom:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-slide,.menu-toggle span{transition:none}}
:root{color-scheme:light}
.hero{background:#fff}
.hero-slide img{object-fit:contain}
@media(max-width:767px){.hero{height:auto;aspect-ratio:2/3;min-height:0;max-height:none}.hero-slide img{object-fit:contain}.nav-group a,.social-links a{min-height:44px;padding-top:11px;padding-bottom:11px}}

/* Store Instagram links use a scalable icon with a touch-friendly target. */
.store-instagram{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;text-decoration:none;color:inherit}
.store-instagram svg{display:block;width:28px;height:28px}
.store-salon .store-instagram:focus-visible{outline-color:currentColor}

/* Match the original navigation typography; ship fonts with the theme. */
@font-face{font-family:Lato;font-style:normal;font-weight:400;font-display:swap;src:url("fonts/Lato-Regular.ttf") format("truetype")}
@font-face{font-family:Lato;font-style:normal;font-weight:700;font-display:swap;src:url("fonts/Lato-Bold.ttf") format("truetype")}
@font-face{font-family:Roboto;font-style:normal;font-weight:300;font-display:swap;src:url("fonts/Roboto-Light.ttf") format("truetype")}
.site-sidebar{font-family:Lato,"Noto Sans JP","ヒラギノ角ゴ ProN","Hiragino Kaku Gothic ProN",メイリオ,Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;color:#555;scrollbar-width:none;-ms-overflow-style:none}
/* Keep wheel, touch and keyboard scrolling available without a visible bar. */
.site-sidebar::-webkit-scrollbar{display:none;width:0;height:0}
.nav-title{font-family:Roboto,sans-serif;font-weight:300;letter-spacing:normal}
@media(min-width:768px){
  .site-sidebar{padding-top:0;font-size:16px;line-height:normal}
  .sidebar-brand{height:44.8px;padding-top:17.33px;margin-bottom:32px;line-height:1}
  .site-sidebar>nav{display:flow-root}
  .nav-title{font-size:11px;line-height:normal;margin:0 0 20px}
  .nav-title span{border-bottom:1px solid #000;padding-bottom:0}
  .nav-group{margin:0 0 .55vw}
  .nav-group:nth-of-type(8){margin-bottom:1.1vw}
  .nav-group h2{font-size:10px;line-height:1;font-weight:400;margin:0;letter-spacing:normal}
  .nav-group ul,.nav-group li,.social-links,.social-links li{font-size:16px;line-height:16px;margin:0;padding:0}
  .nav-group a,.social-links a{display:inline;font-size:11px;line-height:1;font-weight:900;padding:0;min-height:0;color:#777;letter-spacing:normal}
  .nav-group a:hover,.social-links a:hover,.utility-nav a:hover{opacity:.5}
  .social-nav{margin-top:0}
  .social-nav .nav-title{font-size:11px;line-height:1;margin-bottom:20px}
  .utility-nav{margin-top:50px;font-size:16px;line-height:16px}
  .utility-nav a{font-size:11px;line-height:1;font-weight:400;color:#777}
  .utility-nav ul{gap:4px}
  .utility-nav li+li::before{font-size:11px;margin-right:4px;color:#555}
}

/* Original mobile drawer: logo inside the drawer, compact 14px rows. */
@media(max-width:767px){
  :root{--mobile-header:80px}
  .mobile-header{padding:0}
  .mobile-brand{display:none}
  .menu-toggle{position:fixed;top:var(--wp-offset);left:0;display:block;width:50px;height:50px;z-index:70;pointer-events:auto}
  .menu-toggle span{position:absolute;left:14px;width:32.5px;height:2px;border-radius:2px;background:#777}
  .menu-toggle span:nth-child(1){display:none}
  .menu-toggle span:nth-child(2){top:23px}
  .menu-toggle span:nth-child(3){top:31px}
  .menu-toggle[aria-expanded=true] span:nth-child(1){display:block;top:18px;left:18px;width:15px;transform:translateY(6px) rotate(-45deg)}
  .menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
  .menu-toggle[aria-expanded=true] span:nth-child(3){top:30px;left:18px;width:15px;transform:translateY(-6px) rotate(45deg)}
  .menu-open .mobile-header{background:transparent;pointer-events:none}
  .site-sidebar{inset:var(--wp-offset) auto 0 0;width:80%;padding:0 0 max(40px,env(safe-area-inset-bottom)) 12vw;font-size:14px;line-height:normal}
  .sidebar-brand{display:block;height:39.2px;padding-top:13.33px;margin-bottom:28px;line-height:1}
  .sidebar-brand img{width:min(150px,40vw);height:auto}
  .site-sidebar>nav{display:flow-root;width:40vw}
  .nav-title{font-size:11px;line-height:normal;margin:0 0 20px}
  .nav-title span{border-bottom:1px solid #000;padding-bottom:0}
  .nav-group{margin:0 0 2vw}
  .nav-group:nth-of-type(8){margin-bottom:4vw}
  .nav-group h2{font-size:10px;line-height:1;font-weight:400;margin:0;letter-spacing:normal}
  .nav-group ul,.nav-group li,.social-links,.social-links li{font-size:14px;line-height:14px;margin:0;padding:0}
  .nav-group a,.social-links a{display:inline;font-size:11px;line-height:1;font-weight:900;padding:0;min-height:0;color:#777;letter-spacing:normal}
  .social-nav{margin-top:0}
  .social-nav .nav-title{font-size:11px;line-height:1;margin-bottom:20px}
  .utility-nav{margin-top:50px;padding-bottom:0;font-size:14px;line-height:14px}
  .utility-nav a{display:inline;font-size:11px;line-height:1;font-weight:400;padding:0;color:#777}
  .utility-nav ul{gap:4px}
  .utility-nav li+li::before{font-size:11px;margin-right:4px;color:#555}
  .menu-backdrop:not([hidden]){display:block;position:fixed;inset:var(--wp-offset) 0 0 80%;border:0;padding:0;background:transparent;z-index:45}
}
