
@property --nav-mask{syntax: '<percentage>';inherits: false;initial-value: 0%;}
:root{--green: #79A476;--blue: #31bdd2;--green2: rgb(201,227,218);--blue2: #BBCFEE;--yellow: #EFE6BD;--mizuiro: #88D4D0;--gray: #f0f0f0;--gray2: #1d393f3e;--border: #c0bab581;--black: #36453a;--black2: #808981;--black3: #a5b1a7;--padding-top-bottom: 16rem;--sp-pad: 10rem;--transition: 0.6s;--sp_inner: 8%;--in: 84%;--font: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;--font-bold: "I-OTF新ゴシックPro M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;--letter: 0.03em;--letter2: 0.05em;--radius: 1rem;--radius2: 0.5rem;--gra: linear-gradient(to right,var(--blue) 0%,var(--green) 100%);--gra1: linear-gradient(135deg,var(--yellow) 0%,var(--green2) 100%);--gra2: linear-gradient(135deg,var(--blue2) 0%,var(--mizuiro) 100%);--gra3: linear-gradient(135deg,#ACE5FF 0%,#88D4BA 70%);--haba: 400px;--grade5: linear-gradient(135deg,#55a188 0%,#6fdcb9 100%);--gra-gray: linear-gradient(to bottom,var(--shibuya-main2) 0%,var(--shibuya-main3) 15%,var(--shibuya-main3) 85%,var(--shibuya-main2) 100%);--shibuya-main: #c6c3bf;--shibuya-main2: #e0ded8;--shibuya-main3: #edece9;--gra4: linear-gradient(to bottom,var(--shibuya-main2) 0%,var(--shibuya-main3) 15%,var(--shibuya-main3) 85%,var(--shibuya-main2) 100%);--gra5: linear-gradient(to bottom,var(--shibuya-main) 0%,var(--shibuya-main2) 30%,var(--shibuya-main2) 70%,var(--shibuya-main) 100%);--mo: #e8e6e3;--modal: #eaeaea;}
a,a:link,a:visited,a:hover,a:active{text-decoration: none;color: var(--black);-webkit-text-fill-color: currentColor !important;-webkit-tap-highlight-color: transparent;}
a.cta-button,a.cta-button:link,a.cta-button:visited,a.cta-button:hover,a.cta-button:active{color: #fff;}
a[href^="tel:"],a[href^="mailto:"]{color: inherit;-webkit-text-fill-color: currentColor !important;}
*,*::before,*::after{box-sizing: border-box;}
body,h1,h2,h3,h4,h5,p,figure,blockquote,dl,dd{margin: 0;padding: 0;border: none;outline: 0;font-size: 100%;vertical-align: baseline;background: transparent;}
a,ul,ol{list-style: none;}
html:focus-within{scroll-behavior: smooth;}
img,picture{max-width: 100%;width: 100%;display: block;}
input,button,textarea,select{font: inherit;}
html,body{overscroll-behavior-y: none;overscroll-behavior-x: none;}
h1,h2,h3,h4,h5,h6{margin: 0;padding: 0;}
*{letter-spacing: var(--letter2);margin: 0;padding: 0;}
.sp{display: none;}
.pc{display: block;}
@media (max-width: 480px){.sp{display: block;}
.pc{display: none;}
}
html{font-size: 62.5%;background-color: transparent;}
@media (max-width: 768px){html{font-size: min(calc(100vw / 37.5),calc(420px / 37.5));}
}
html::before{content: "";position: fixed;inset: 0;background-position: center top;background-size: cover;background-repeat: no-repeat;z-index: -1;pointer-events: none;}
html.is-bg-loaded::before{background-image: url(/salon/images/back-grade.webp);}
main,body{width: 100%;}
body{width: 100%;min-height: 100vh;text-rendering: optimizeSpeed;line-height: 1.5;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-feature-settings: "palt";-webkit-font-smoothing: antialiased;color: var(--black);position: relative;z-index: 100000;margin: 0;padding: 0;overflow-x: hidden;}
@media (max-width: 480px){body{background-color: transparent;}
}
main{overflow: clip;display: flow-root;}
.sec_inner{width: var(--in);margin: 0 auto;}
p{letter-spacing: 0.05em;line-height: 2;font-size: 1.4rem;color: var(--black2);}
h2,.shizuku{font-family: "Cardo","Zen Old Mincho",sans-serif;font-weight: 600;}
h1,h3,.serif{font-family: "Zen Old Mincho",sans-serif;font-weight: 600;}
h2{letter-spacing: 0;}
.fade{opacity: 0;filter: blur(1.6rem) brightness(2.8) saturate(1.15);transform: scale(1.05);transition:
opacity 2.2s cubic-bezier(0.19,1,0.22,1),filter 2.4s cubic-bezier(0.19,1,0.22,1),transform 2.2s cubic-bezier(0.19,1,0.22,1);will-change: opacity,transform,filter;}
.fade.is-animated{opacity: 1;filter: blur(0) brightness(1) saturate(1);transform: scale(1);}
.fade.is-animated{will-change: auto;}
body.is-member-signed-in .fade{opacity: 1 !important;filter: none !important;transform: none !important;transition: none !important;}
.fade:nth-child(2){transition-delay: 0.12s;}
.fade:nth-child(3){transition-delay: 0.24s;}
.fade:nth-child(4){transition-delay: 0.36s;}
#body-hikari-container{position: fixed;top: 0;left: 0;width: 100%;height: 100%;pointer-events: none;z-index: -999;overflow: hidden;}
@media (max-width: 480px){#body-hikari-container{display: none;}
}
.shizuku{position: absolute;right: -15rem;top: 0rem;display: inline-block;width: 20rem;height: 20rem;border-radius: 50%;background: rgba(255,255,255,0.05);box-shadow:
inset 0.625rem 1.25rem 1.875rem rgba(0,0,0,0.05),inset -0.3125rem -0.625rem 1.25rem rgba(255,255,255,0.6),0 1.25rem 2.5rem rgba(0,0,0,0.05);backdrop-filter: blur(0.3125rem);-webkit-backdrop-filter: blur(0.3125rem);transform-style: preserve-3d;}
.people-cate{position: static !important;display: flex;flex-wrap: wrap;justify-content: center;align-content: flex-start;align-items: flex-start;gap: 0.5rem;width: auto !important;margin: 0 0 1rem;}
.people-box .people-cate{justify-content: flex-start;}
.people-cate .shizuku,.people-cate .zyutu,.people-cate span{position: static !important;top: auto !important;right: auto !important;bottom: auto !important;left: auto !important;display: inline-flex !important;align-items: center;justify-content: center;width: auto !important;height: auto !important;padding: 0.3rem 1rem;background: rgba(255,255,255,0.55) !important;color: var(--black) !important;border: 1px solid rgba(255,255,255,0.45) !important;border-radius: 0.4rem !important;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif !important;font-size: 1.1rem !important;font-weight: 500 !important;letter-spacing: 0.04em !important;line-height: 1.4 !important;text-align: center;box-shadow: 0 0.15rem 0.4rem rgba(0,0,0,0.06) !important;backdrop-filter: blur(3px) saturate(140%) !important;-webkit-backdrop-filter: blur(3px) saturate(140%) !important;transform: none !important;filter: none !important;overflow: visible !important;white-space: nowrap;}
.people-cate .shizuku::before,.people-cate .shizuku::after,.people-cate span::before,.people-cate span::after{display: none !important;content: none !important;background: none !important;}
.people-cate .shizuku br,.people-cate span br{display: none;}
.shizuku::before{content: "";position: absolute;top: 15%;left: 20%;width: 2.5rem;height: 1.875rem;background: rgba(255,255,255,0.9);border-radius: 50%;filter: blur(0.125rem);transform: rotate(-15deg);z-index: 2;}
.shizuku::after{content: "";position: absolute;bottom: 20%;right: 25%;width: 1.25rem;height: 1.25rem;background: rgba(255,255,255,0.3);border-radius: 50%;filter: blur(0.25rem);z-index: 1;}
.cta-button{display: block;width: 85%;background: linear-gradient(135deg,#568958 0%,#89b585 90%);color: #fff;text-align: center;padding: 2rem 0;font-size: 1.4rem;border-radius: 40rem;position: relative;overflow: hidden;isolation: isolate;z-index: 1;line-height: 1;border: none;outline: none;appearance: none;-webkit-appearance: none;cursor: pointer;text-decoration: none;font-family: inherit;letter-spacing: 0.1em;}
.cta-button::before{content: "";position: absolute;top: 50%;left: 50%;width: 60%;aspect-ratio: 1;border-radius: 50%;background: radial-gradient(circle,rgba(255,255,255,0.55) 0%,rgba(255,255,255,0.35) 30%,rgba(255,255,255,0.15) 60%,rgba(255,255,255,0.04) 85%,rgba(255,255,255,0) 100%);filter: blur(0.4rem);transform: translate(-50%,-50%) scale(0.2);opacity: 0;pointer-events: none;z-index: -1;mix-blend-mode: screen;will-change: transform,opacity;backface-visibility: hidden;-webkit-backface-visibility: hidden;}
.cta-button:hover::before{animation: btnLightBloom 1.5s cubic-bezier(0.33,0,0.2,1) infinite;}
.arrow-white{position: absolute;right: 1.2rem;top: 50%;transform: translateY(-50%);background: url(/salon/images/arrow-white.webp) center / contain no-repeat;width: 2rem;height: 1.8rem;pointer-events: none;}
.button{width: fit-content;padding: 1.9rem 6rem;text-align: center;display: block;margin: 0 auto;font-size: 1.4rem;font-weight: 500;letter-spacing: 0.1em;line-height: 1;position: relative;border-radius: 40rem;cursor: pointer;overflow: hidden;isolation: isolate;transition: all 0.4s cubic-bezier(0.23,1,0.32,1);appearance: none;-webkit-appearance: none;outline: none;text-decoration: none;font-family: inherit;color: var(--green) !important;border: 1px solid var(--green);background: transparent;}
.button::before{content: "";position: absolute;top: 50%;left: 50%;width: 60%;aspect-ratio: 1;border-radius: 50%;background: radial-gradient(circle,rgba(255,255,255,0.55) 0%,rgba(255,255,255,0.35) 30%,rgba(255,255,255,0.15) 60%,rgba(255,255,255,0.04) 85%,rgba(255,255,255,0) 100%);filter: blur(0.4rem);transform: translate(-50%,-50%) scale(0.2);opacity: 0;pointer-events: none;z-index: -1;mix-blend-mode: screen;will-change: transform,opacity;backface-visibility: hidden;-webkit-backface-visibility: hidden;}
.button:hover::before{animation: btnLightBloom 1.5s cubic-bezier(0.33,0,0.2,1) infinite;}
.arrow-green{position: absolute;top: 50%;right: 1.2rem;transform: translateY(-50%);background: url(/salon/images/arrow-green.webp) center / contain no-repeat;width: 2rem;height: 1.8rem;pointer-events: none;}
.button.back .arrow-green{transform: translateY(-50%) scaleX(-1);right: initial;left: 2.5rem;}
.plus-mark{position: absolute;top: 50%;right: 1.5rem;transform: translateY(-50%);width: 1.4rem;height: 1.4rem;pointer-events: none;}
.plus-mark::before,.plus-mark::after{content: "";position: absolute;background: var(--green);border-radius: 1px;}
.cta-button .plus-mark::before,.cta-button .plus-mark::after{background: #fff;}
.plus-mark::before{left: 0;right: 0;top: 50%;height: 2px;transform: translateY(-50%);}
.plus-mark::after{top: 0;bottom: 0;left: 50%;width: 2px;transform: translateX(-50%);}
#page-cloud-overlay{position: fixed;top: 0;left: 0;width: 100%;height: 100%;z-index: 9999;pointer-events: none;opacity: 1;transition: opacity 0.2s ease;background:
radial-gradient(circle at 18% 26%,rgba(255,255,255,1) 8%,rgba(255,255,255,0.7) 30%,transparent 58%),radial-gradient(circle at 78% 22%,rgba(255,255,255,1) 6%,rgba(255,255,255,0.7) 32%,transparent 62%),radial-gradient(circle at 28% 75%,rgba(255,255,255,1) 8%,rgba(255,255,255,0.65) 34%,transparent 65%),radial-gradient(circle at 82% 78%,rgba(255,255,255,1) 6%,rgba(255,255,255,0.7) 30%,transparent 62%),radial-gradient(circle at 50% 50%,rgba(255,255,255,0.85),rgba(255,255,255,0.95)),#ffffff;filter: blur(0.6rem);-webkit-mask-image: radial-gradient(circle at 50% 50%,transparent 0%,transparent 0%,#000 2%,#000 100%);mask-image: radial-gradient(circle at 50% 50%,transparent 0%,transparent 0%,#000 2%,#000 100%);}
#page-cloud-overlay.is-faded{opacity: 0;}
#opening-decoration{position: fixed;inset: 0;z-index: 10000;pointer-events: none;overflow: hidden;opacity: 1;transition: opacity 0.25s ease;}
#opening-decoration.is-faded{opacity: 0;}
#opening-decoration .opening-glow{position: absolute;top: 50%;left: 50%;width: 90rem;height: 90rem;margin-left: -45rem;margin-top: -45rem;border-radius: 50%;background: radial-gradient(circle,rgba(255,250,230,0.7) 0%,rgba(255,245,210,0.4) 20%,rgba(255,235,195,0.22) 40%,rgba(220,230,255,0.12) 60%,transparent 80%);filter: blur(5rem);opacity: 0;transform: scale(0.4);mix-blend-mode: screen;animation: cloudGlow 3.4s cubic-bezier(0.22,1,0.36,1) 0.2s forwards;will-change: transform,opacity;}
@keyframes cloudGlow{0%{opacity: 0;transform: scale(0.4);}
45%{opacity: 1;transform: scale(1);}
100%{opacity: 0;transform: scale(1.6);}
}
#opening-decoration .opening-beams{position: absolute;top: 50%;left: 50%;width: 0;height: 0;}
#opening-decoration .opening-beams span{position: absolute;top: 50%;left: 50%;width: 26rem;height: 130vmax;margin-top: -65vmax;margin-left: -13rem;background: linear-gradient(to bottom,transparent 0%,rgba(255,250,220,0.12) 25%,rgba(255,245,210,0.22) 45%,rgba(255,245,210,0.22) 55%,rgba(255,250,220,0.12) 75%,transparent 100%);filter: blur(4rem);transform-origin: 50% 50%;opacity: 0;mix-blend-mode: screen;animation: cloudBeam 3.2s cubic-bezier(0.22,1,0.36,1) 0.4s forwards;will-change: transform,opacity;}
#opening-decoration .opening-beams span:nth-child(1){--rot: -18deg;}
#opening-decoration .opening-beams span:nth-child(2){--rot: 4deg;animation-delay: 0.55s;}
#opening-decoration .opening-beams span:nth-child(3){--rot: 22deg;animation-delay: 0.7s;}
@keyframes cloudBeam{0%{transform: rotate(var(--rot,0deg)) scaleY(0.3);opacity: 0;}
35%{opacity: 1;}
100%{transform: rotate(var(--rot,0deg)) scaleY(1.1);opacity: 0;}
}
#opening-decoration .opening-puffs span{position: absolute;top: 50%;left: 50%;width: 50rem;height: 50rem;margin-top: -25rem;margin-left: -25rem;border-radius: 50%;background: radial-gradient(circle at 50% 50%,rgba(255,255,255,0.92) 0%,rgba(255,255,255,0.55) 30%,rgba(255,255,255,0.25) 55%,transparent 78%);filter: blur(5rem);transform: translate(0,0) scale(0.45);opacity: 0;animation: cloudPuff 3.2s cubic-bezier(0.25,0.46,0.45,0.94) forwards;will-change: transform,opacity;}
#opening-decoration .opening-puffs span:nth-child(1){--tx: -60vw;--ty: -22vh;animation-delay: 0s;}
#opening-decoration .opening-puffs span:nth-child(2){--tx: 60vw;--ty: -22vh;animation-delay: 0.08s;}
#opening-decoration .opening-puffs span:nth-child(3){--tx: -62vw;--ty: 22vh;animation-delay: 0.16s;}
#opening-decoration .opening-puffs span:nth-child(4){--tx: 62vw;--ty: 22vh;animation-delay: 0.22s;}
#opening-decoration .opening-puffs span:nth-child(5){--tx: -8vw;--ty: -50vh;animation-delay: 0.30s;}
#opening-decoration .opening-puffs span:nth-child(6){--tx: 8vw;--ty: 50vh;animation-delay: 0.36s;}
#opening-decoration .opening-puffs span:nth-child(7){--tx: -35vw;--ty: 0vh;animation-delay: 0.42s;}
#opening-decoration .opening-puffs span:nth-child(8){--tx: 35vw;--ty: 0vh;animation-delay: 0.48s;}
@keyframes cloudPuff{0%{transform: translate(0,0) scale(0.45);opacity: 0;}
25%{opacity: 0.9;}
100%{transform: translate(var(--tx,50vw),var(--ty,0)) scale(1.3);opacity: 0;}
}
@media (prefers-reduced-motion: reduce){#opening-decoration{display: none;}
}
.breadcrumb-container{position: static;margin-top: 3rem;width: 100%;padding: 0;background: none;position: relative;z-index: 100;}
.footer-bottom .breadcrumb-container-footer{margin: 0 0 0.8rem;padding: 0;background: transparent;}
.footer-bottom .breadcrumb-container-footer .breadcrumb-list{font-size: 1.05rem;color: var(--black3);letter-spacing: 0.1em;opacity: 0.85;width: auto;margin: 0 auto;}
.footer-bottom .breadcrumb-container-footer .breadcrumb-item a{color: inherit;text-decoration: none;}
.footer-bottom .breadcrumb-container-footer .breadcrumb-item a:hover{text-decoration: underline;text-underline-offset: 0.25em;text-decoration-thickness: 0.5px;}
.breadcrumb-list{width: var(--in);max-width: 120rem;margin: 0 auto;display: flex;flex-wrap: wrap;align-items: center;justify-content: center;list-style: none;padding: 0;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","Helvetica Neue",Arial,sans-serif;font-weight: 400;font-size: 1.15rem;letter-spacing: 0.12em;color: var(--black2);text-align: center;}
.breadcrumb-item{display: flex;align-items: center;line-height: 1;margin-top: 1rem;}
.breadcrumb-item:not(:last-child)::after{content: "/";margin: 0 1.2rem;color: var(--black3);font-weight: 300;font-size: 1.1rem;}
.breadcrumb-item a{position: relative;text-decoration: none;color: var(--black2);padding: 0.2rem 0;opacity: 0.5;transition: color 0.4s ease,opacity 0.4s ease;}
.breadcrumb-item a::after{content: "";position: absolute;left: 0;bottom: -0.1rem;width: 100%;height: 1px;background: linear-gradient(to right,var(--green),var(--blue));transform: scaleX(0);transform-origin: left center;transition: transform 0.5s cubic-bezier(0.22,1,0.36,1);}
.breadcrumb-item a:hover{color: var(--green);opacity: 1;}
.breadcrumb-item a:hover::after{transform: scaleX(1);}
.breadcrumb-item[aria-current="page"]{color: var(--black);position: relative;font-size: 1rem;}
@media (max-width: 480px){.breadcrumb-container{padding: 1.8rem 0 1.2rem;}
.breadcrumb-list{font-size: 1rem;letter-spacing: 0.14em;}
.breadcrumb-item:not(:last-child)::after{margin: 0 0.9rem;}
.breadcrumb-item[aria-current="page"]{padding-left: 1rem;}
}
body{background-color: #ffffff00;}
.contents{max-width: 420px;min-height: 100vh;margin: 0 auto;box-shadow: 0 0 40px #aaaaaa41;position: relative;width: 100%;background: transparent;backdrop-filter: none;-webkit-backdrop-filter: none;z-index: 2;margin-top: 8rem;border-radius: 28rem 28rem 0 0;}
.title{font-size: 2rem;margin-bottom: 2rem;letter-spacing: 0.2em;line-height: 1.8;}
.title .small{font-size: 5.4rem;line-height: 1.2;letter-spacing: 0.3em;display: block;font-weight: 500;margin-bottom: 0.6rem;position: relative;width: fit-content;}
.section{padding: 12rem 0;}
.center h2 .small,.reserve h2 .small{padding-left: 1rem;}
.site-header{position: fixed;top: 0;left: 0;width: 100%;z-index: 1000;pointer-events: none;transition: transform 0.85s cubic-bezier(0.22,1,0.36,1),opacity 0.75s ease;}
.site-header::before{content: "";position: absolute;top: 0;left: 0;right: 0;bottom: auto;height: 9rem;background: rgba(255,255,255,0.82);backdrop-filter: blur(10px) saturate(140%);-webkit-backdrop-filter: blur(10px) saturate(140%);box-shadow: 0 2px 12px rgba(0,0,0,0.06);opacity: 0;transition: opacity 0.45s ease;pointer-events: none;z-index: -1;}
.site-header.is-scrolled::before{opacity: 1;}
@media (min-width: 769px){.site-header::before{display: none !important;}
}
@media (max-width: 768px){.home .site-header:not(.is-scrolled)::before{content: "";position: absolute;top: 0;left: 0;right: 0;bottom: auto;width: auto;height: 8rem;z-index: -1;background: rgba(255,255,255,0.55);backdrop-filter: blur(14px) saturate(150%);-webkit-backdrop-filter: blur(14px) saturate(150%);box-shadow: none;-webkit-mask-image: linear-gradient(to bottom,#000 0%,#000 40%,rgba(0,0,0,0.6) 70%,transparent 100%);mask-image: linear-gradient(to bottom,#000 0%,#000 40%,rgba(0,0,0,0.6) 70%,transparent 100%);filter: none;opacity: 1;}
}
@media (max-width: 768px){.site-header.is-hidden{transform: translateY(-110%);opacity: 0;pointer-events: none;}
body.voice-modal-open .site-header,body.assess-modal-open .site-header,body.people-modal-open .site-header,body.reserve-modal-open .site-header,body.store-modal-open .site-header{display: none;}
}
@media (min-width: 769px){body.voice-modal-open .site-header,body.assess-modal-open .site-header,body.people-modal-open .site-header,body.reserve-modal-open .site-header,body.store-modal-open .site-header{z-index: 100003;}
body.voice-modal-open .site-header .nav-list a,body.assess-modal-open .site-header .nav-list a,body.people-modal-open .site-header .nav-list a,body.reserve-modal-open .site-header .nav-list a,body.store-modal-open .site-header .nav-list a,body.site-login-menu-open .site-header .nav-list a,body.voice-modal-open .site-header .nav-sub-toggle,body.assess-modal-open .site-header .nav-sub-toggle,body.people-modal-open .site-header .nav-sub-toggle,body.reserve-modal-open .site-header .nav-sub-toggle,body.store-modal-open .site-header .nav-sub-toggle,body.site-login-menu-open .site-header .nav-sub-toggle{color: #fff;}
body.voice-modal-open .site-logo .logo,body.assess-modal-open .site-logo .logo,body.people-modal-open .site-logo .logo,body.reserve-modal-open .site-logo .logo,body.store-modal-open .site-logo .logo,body.site-login-menu-open .site-logo .logo{content: url(/salon/images/logo-meet-white.webp);}
}
.fixed-cta{display: none;}
body.voice-modal-open .fixed-cta,body.assess-modal-open .fixed-cta,body.people-modal-open .fixed-cta,body.store-modal-open .fixed-cta,body.reserve-modal-open .fixed-cta,body.site-login-menu-open .fixed-cta,body.site-login-menu-open .map-fix-btn,body.voice-modal-open .map-fix-btn,body.assess-modal-open .map-fix-btn,body.people-modal-open .map-fix-btn,body.store-modal-open .map-fix-btn,body.reserve-modal-open .map-fix-btn,body.map-modal-open .map-fix-btn{display: none !important;}
body.is-in-store-section .fixed-cta{opacity: 0;pointer-events: none;}
@media (max-width: 768px){.fixed-cta{display: inline-block;position: fixed;bottom: 1.6rem;right: 1.6rem;z-index: 999;width: auto;padding: 1.3rem 4rem 1.3rem 2.6rem;font-size: 1.5rem;letter-spacing: 0.2em;box-shadow: 0 0.8rem 1.8rem rgba(0,0,0,0.22);transition: transform 0.4s cubic-bezier(0.22,1,0.36,1),opacity 0.35s ease,box-shadow 0.35s ease;font-weight: 400;}
body.is-top:not(.is-past-fv) .fixed-cta{opacity: 0;transform: translateY(1.6rem);pointer-events: none;}
.fixed-cta .arrow-white{right: 1.2rem;scale: 0.8;top: 45%;}
.page-people-single-fixed-cta{padding: 1.3rem 4rem 1.3rem 2.6rem;}
.fixed-cta .en{font-family: "Cardo",serif;letter-spacing: 0.34em;font-size: 1.6rem;font-weight: 500;}
}
.site-header>*{pointer-events: auto;}
.site-logo{position: fixed;top: 50%;left: calc((50% - 240px) / 2);transform: translate(-50%,-50%);width: 10rem;display: block;transition: transform 0.4s ease,opacity 0.4s ease;}
.site-logo img{width: 100%;height: auto;display: block;}
.site-nav{position: fixed;top: 50%;right: calc((50% - 240px) / 2);transform: translate(50%,-50%);}
.nav-list{display: flex;flex-direction: column;gap: 1.4rem;list-style: none;margin: 0;padding: 0;}
.nav-list li{display: block;}
.nav-list a{position: relative;display: inline-block;font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.7rem;font-weight: 500;letter-spacing: 0.2em;color: var(--black);text-decoration: none;padding: 0.4rem 0;transition: color 0.4s ease;margin-left: 1.5rem;}
.nav-list a::after{display: none !important;content: none !important;}
.nav-list a:hover{color: var(--green);}
.phone-tel-link{display: inline-flex;align-items: center;justify-content: center;gap: 0.5rem;margin: 1rem auto 0;font-family: "Zen Old Mincho",serif;font-size: 1.6rem;font-weight: 600;letter-spacing: 0.06em;color: var(--green);text-decoration: none;line-height: 1.3;transition: opacity 0.2s ease;}
.phone-tel-link:hover{opacity: 0.75;}
.phone-tel-icon{width: 1.4rem;height: 1.4rem;display: inline-block;background: currentColor;flex-shrink: 0;margin-right: 1rem;-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/></svg>") center / contain no-repeat;mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/></svg>") center / contain no-repeat;}
.reserve .phone-tel-link{display: flex;width: 100%;letter-spacing: 0.2em;margin-top: 1.2rem;font-family: "Cardo","Zen Old Mincho",serif;color: var(--black);}
.reserve-modal-content .phone-tel-link{display: flex;width: 100%;}
.nav-list .nav-cta{margin-top: 1.6rem;}
@media (max-width: 768px){.nav-list .nav-cta-tel+.nav-cta{margin-top: -1.4rem;}
}
.nav-list .nav-cta .cta-button{font-size: 1.4rem;font-weight: 500;letter-spacing: 0.1em;font-family: "Zen Old Mincho","Hiragino Mincho ProN","Hiragino Mincho Pro","Noto Serif JP",serif;padding: 1.8rem 4rem;color: #fff;line-height: 1;margin-left: 0rem;width: 100%;}
.nav-list .nav-cta .cta-button .en{font-family: "Cardo",serif;letter-spacing: 0.04em;}
.nav-list .nav-cta-tel .button{font-size: 1.4rem;font-weight: 500;letter-spacing: 0.1em;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;padding: 1.8rem 4rem;line-height: 1;margin-left: 0;width: 100%;box-sizing: border-box;}
@media (min-width: 769px){.nav-cta-tel{display: none !important;}
.site-header .nav-list a,.site-header .nav-list .nav-sub-toggle{position: relative;}
.site-header .nav-list a::before,.site-header .nav-list .nav-sub-toggle::before{content: "";position: absolute;top: 50%;left: 50%;width: 130%;aspect-ratio: 1;border-radius: 50%;background: radial-gradient(circle,rgba(255,255,255,0.55) 0%,rgba(255,255,255,0.35) 30%,rgba(255,255,255,0.15) 60%,rgba(255,255,255,0.04) 85%,rgba(255,255,255,0) 100%);filter: blur(0.3rem);transform: translate(-50%,-50%) scale(0.2);opacity: 0;pointer-events: none;z-index: -1;mix-blend-mode: screen;will-change: transform,opacity;}
.site-header .nav-list a:hover::before,.site-header .nav-list a:focus-visible::before,.site-header .nav-list .nav-sub-toggle:hover::before,.site-header .nav-list .nav-sub-toggle:focus-visible::before{animation: btnLightBloom 1.2s cubic-bezier(0.33,0,0.2,1);}
.site-header .nav-sub a::before,.site-header .nav-sub a:hover::before,.site-header .nav-sub a:focus-visible::before{animation: none;background: var(--black);width: 0.5rem;height: 0.5rem;aspect-ratio: auto;border-radius: 50%;opacity: 0.4;top: 50%;left: 0;transform: translateY(-50%);filter: none;mix-blend-mode: normal;z-index: auto;box-shadow: none;transition: none;}
}
.hamburger-btn{display: none;}
@media (max-width: 1023px){
  .site-header::before,
  .home .site-header:not(.is-scrolled)::before{display: none !important;background: transparent !important;}
  .site-logo{width: 20rem;top: 1.2rem;left: 1.6rem;transform: translateX(0);}
  .site-nav{position: fixed;top: 0;left: 0;right: auto;bottom: auto;width: 100vw;height: 100vh;transform: none;margin: 0;background: radial-gradient(circle at center,rgba(120,113,102,0.88) 0%,rgba(82,76,68,0.96) 100%);backdrop-filter: blur(1rem);-webkit-backdrop-filter: blur(1rem);color: #fff;overflow: hidden;opacity: 0;transition: opacity 0.22s ease;display: flex;align-items: center;justify-content: center;z-index: 999;pointer-events: none;}
  .site-nav.is-open{opacity: 1;pointer-events: auto;}
  .site-nav .nav-list a,.site-nav .nav-sub-toggle,.site-nav .nav-sub a{color: #fff;}
  .hamburger-btn{display: block !important;position: fixed !important;top: 1.3rem !important;right: 1.6rem !important;width: 3.6rem !important;height: 3.6rem !important;padding: 0;border: 1px solid var(--border);border-radius: 50%;background: #fff;box-shadow: none;cursor: pointer;z-index: 10002 !important;}
  .hamburger-btn .btn-inner{position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);width: 1.6rem;height: 1rem;display: block;}
  .hamburger-btn .btn-inner span{position: absolute;right: 0;height: 1px;background: var(--black2);border-radius: 1px;}
  .hamburger-btn .btn-inner span:nth-child(1){top: 0;width: 100%;}
  .hamburger-btn .btn-inner span:nth-child(2){top: 50%;transform: translateY(-50%);width: 75%;}
  .hamburger-btn .btn-inner span:nth-child(3){top: 100%;transform: translateY(-100%);width: 50%;}
  .hamburger-btn.active .btn-inner span:nth-child(1){top: 50%;width: 55%;right: 22.5%;transform: translateY(-50%) rotate(45deg);}
  .hamburger-btn.active .btn-inner span:nth-child(2){opacity: 0;}
  .hamburger-btn.active .btn-inner span:nth-child(3){top: 50%;width: 55%;right: 22.5%;transform: translateY(-50%) rotate(-45deg);}
  .site-login{display: inline-flex !important;top: 1.3rem !important;right: 5.8rem !important;width: 3.6rem !important;height: 3.6rem !important;z-index: 10002 !important;}
  .site-phone{display: none !important;}
}
@media (max-width: 768px){.nav-list a{margin-left: 0;}
.site-logo{width: 20rem;top: 1.2rem;left: 1.6rem;transform: translateX(0);}
.site-nav{position: fixed;top: 0;left: 0;right: auto;bottom: auto;width: 100vw;height: 100vh;transform: none;margin: 0;background: radial-gradient(circle at center,rgba(120,113,102,0.88) 0%,rgba(82,76,68,0.96) 100%);backdrop-filter: blur(1rem);-webkit-backdrop-filter: blur(1rem);color: #fff;overflow: hidden;opacity: 0;transition: opacity 0.22s ease;display: flex;align-items: center;justify-content: center;z-index: 999;pointer-events: none;}
.site-nav.is-open{opacity: 1;pointer-events: auto;}
.site-nav .nav-list a,.site-nav .nav-sub-toggle,.site-nav .nav-sub a{color: #fff;}
.site-nav .nav-list a:hover,.site-nav .nav-sub-toggle:hover,.site-nav .nav-sub a:hover{color: var(--green2,#c9e3da);}
.site-nav .nav-sub-arrow{border-color: #fff;}
.site-nav .nav-list .nav-cta .button,.site-nav .nav-list .nav-cta .button:visited,.site-nav .nav-list .nav-cta .button:hover{background: transparent;color: #fff !important;border: 1px solid rgba(255,255,255,0.7);}
.site-nav .nav-list .nav-cta .button .arrow-green{filter: brightness(0) invert(1);}
.site-nav>*:not(.nav-rain){position: relative;z-index: 2;}
header .nav-cta-tel{margin-top: -2rem !important;}
header .nav-cta-tel a{scale: 0.9;margin-top: 2rem;}
}
.people-voice.center-h2 .slider-container{padding-bottom: 8rem !important;}
.people-voice.center-h2 .voice-2-wrap{padding-bottom: 4rem;}
.nav-rain{position: absolute;inset: 0;pointer-events: none;overflow: hidden;z-index: 1;}
.nav-rain-drop{position: absolute;top: -10vh;width: 1px;background: linear-gradient(to bottom,rgba(255,255,255,0) 0%,rgba(255,255,255,0.85) 70%,rgba(255,255,255,1) 100%);border-radius: 1px;transform: translate3d(0,0,0) rotate(8deg);animation: navRainFall linear infinite;will-change: transform;}
@keyframes navRainFall{0%{transform: translate3d(0,0,0) rotate(8deg);}
100%{transform: translate3d(0,120vh,0) rotate(8deg);}
}
[class*="-modal-backdrop"]>.nav-rain,[class*="-backdrop"]>.nav-rain{position: absolute;inset: 0;}
.voice-modal:not(.is-open) .nav-rain-drop,.assess-modal:not(.is-open) .nav-rain-drop,.people-modal:not(.is-open) .nav-rain-drop,.reserve-modal:not(.is-open) .nav-rain-drop,.store-modal:not(.is-open) .nav-rain-drop,.duration-modal:not(.is-open) .nav-rain-drop,.schedule-modal:not(.is-open) .nav-rain-drop,.phone-confirm-modal:not(.is-open) .nav-rain-drop,.login-modal:not(.is-open) .nav-rain-drop{animation-play-state: paused;}
@media (max-width: 768px){.site-nav>*:not(.nav-rain){position: relative;z-index: 2;}
.hamburger-btn.active,.hamburger-btn.active:hover{background: var(--green) !important;border-color: var(--green) !important;}
.hamburger-btn.active .btn-inner span{background: #fff !important;}
.site-nav::before{display: none;}
.site-nav .nav-list li{opacity: 1;transform: none;transition: none;}
.site-nav.is-open .nav-list li{opacity: 1;transform: none;}
.site-nav.is-open .nav-list li:nth-child(1),.site-nav.is-open .nav-list li:nth-child(2),.site-nav.is-open .nav-list li:nth-child(3),.site-nav.is-open .nav-list li:nth-child(4),.site-nav.is-open .nav-list li:nth-child(5),.site-nav.is-open .nav-list li:nth-child(6),.site-nav.is-open .nav-list li:nth-child(7){transition-delay: 0s;}
.nav-list{align-items: center;gap: 1.6rem;}
.nav-list a{font-size: 1.6rem;letter-spacing: 0.1em;}
.nav-list a::after{left: 50%;right: auto;transform: translateX(-50%) scaleX(0);transform-origin: center;}
.nav-list a:hover::after{transform: translateX(-50%) scaleX(1);}
.nav-list .nav-cta{margin-top: 2rem;}
.nav-cta .cta-button{margin-top: 0.6rem !important;}
.hamburger-btn{display: block;position: fixed;top: 1.3rem;right: 1.6rem;width: 3.6rem;height: 3.6rem;padding: 0;border: 1px solid var(--border);border-radius: 50%;background: #fff;backdrop-filter: none;-webkit-backdrop-filter: none;box-shadow: none;cursor: pointer;z-index: 1001;transition: transform 0.4s ease,border-color 0.2s ease,background 0.2s ease;}
.hamburger-btn:hover{border-color: var(--border);background: rgba(75,147,104,0.04);}
.hamburger-btn .btn-inner{position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);width: 1.6rem;height: 1rem;display: block;}
.hamburger-btn .btn-inner span{position: absolute;right: 0;height: 1px;background: var(--black2);border-radius: 1px;transition: width 0.4s cubic-bezier(0.22,1,0.36,1),transform 0.4s cubic-bezier(0.22,1,0.36,1),top 0.4s cubic-bezier(0.22,1,0.36,1),opacity 0.3s ease;}
.hamburger-btn .btn-inner span:nth-child(1){top: 0;width: 100%;}
.hamburger-btn .btn-inner span:nth-child(2){top: 50%;transform: translateY(-50%);width: 75%;}
.hamburger-btn .btn-inner span:nth-child(3){top: 100%;transform: translateY(-100%);width: 50%;}
.hamburger-btn.active .btn-inner span:nth-child(1){top: 50%;width: 55%;right: 22.5%;transform: translateY(-50%) rotate(45deg);}
.hamburger-btn.active .btn-inner span:nth-child(2){opacity: 0;}
.hamburger-btn.active .btn-inner span:nth-child(3){top: 50%;width: 55%;right: 22.5%;transform: translateY(-50%) rotate(-45deg);}
}
.fv{padding: 12rem 0;height: 88vh;position: relative;z-index: 1;overflow: hidden;isolation: isolate;border-radius: 22rem 22rem 0 0;clip-path: inset(0 round 22rem 22rem 0 0);}
.fv-slideshow{position: absolute;inset: 0;z-index: 0;overflow: hidden;pointer-events: none;}
.fv-slide{position: absolute;inset: 0;background-size: cover;background-position: center;background-repeat: no-repeat;opacity: 0;will-change: opacity,transform;backface-visibility: hidden;-webkit-backface-visibility: hidden;transform: translateZ(0);animation: fvSlideshow 30s linear infinite;}
img.fv-slide{width: 100%;height: 100%;object-fit: cover;object-position: center;display: block;}
.fv-slide-2{animation-delay: 5s;}
.fv-slide-3{animation-delay: 10s;}
.fv-slide-4{animation-delay: 15s;}
.fv-slide-5{animation-delay: 20s;}
.fv-slide-6{animation-delay: 25s;}
.fv-slideshow.is-single-slide .fv-slide{animation: none;opacity: 1;transform: none;}
@keyframes fvSlideshow{0%{opacity: 0;transform: scale(1.12);}
8.33%{opacity: 1;transform: scale(1.08);}
16.67%{opacity: 1;transform: scale(1.04);}
25%{opacity: 0;transform: scale(1);}
100%{opacity: 0;transform: scale(1.12);}
}
.fv-cloud-veil{display: none;}
@keyframes btnLightBloom{0%{transform: translate(-50%,-50%) scale(0.2);opacity: 0;}
20%{opacity: 1;}
100%{transform: translate(-50%,-50%) scale(3);opacity: 0;}
}
@media (prefers-reduced-motion: reduce){.fv-slide{animation: none;opacity: 1;}
.fv-slide-2,.fv-slide-3,.fv-slide-4,.fv-slide-5,.fv-slide-6{opacity: 0;}
.fv-cloud-veil{animation: none;opacity: 0;}
}
.fv h1,.fv p{z-index: 3;}
.fv h1{font-size: 3rem;letter-spacing: 0.2em;position: absolute;bottom: 10rem;left: 3rem;z-index: 100;font-weight: 500;}
.fv h1::after{content: "";width: 50rem;height: 44rem;position: absolute;bottom: -20rem;left: -10rem;z-index: -1;background: linear-gradient(to top,#fff 0%,#fff 25%,rgba(255,255,255,0.7) 50%,rgba(255,255,255,0.35) 75%,transparent 100%) !important;}
.fv p{font-size: 1.5rem;position: absolute;bottom: 5rem;left: 3rem;letter-spacing: 0.1em;color: var(--black);z-index: 100;font-family: "Zen Old Mincho",sans-serif;}
.fv p .box{background: var(--green);display: block;line-height: 1;padding: 0.4rem 0.8rem 0.3rem;letter-spacing: 0;width: fit-content;}
.top{background: #fff;padding-bottom: 20rem;padding-top: 0rem;position: relative;}
.top p{font-size: 1.5rem;line-height: 2.4;letter-spacing: 0.05em;}
.top-fix{height: 90rem;width: 100%;position: relative;z-index: 1;margin-top: -12rem;background-position: center;background-repeat: no-repeat;background-size: cover;clip-path: inset(0);}
.top-fix{background-image: url(/salon/images/top-fix.webp);}
.top-fix.top-fix-2{background-image: url(/salon/images/top-fix-2.webp);}
.top-fix.big-img{background-image: url(/salon/images/big-img.webp);}
.top-fix.top-fix-4{background-image: url(/salon/images/page-top-back.webp);background-color: #d9d4ce;}
.top-fix.has-bg-parallax{background-image: none !important;}
body.shibuya .has-bg-parallax .top-fix-bg .body-particle,body .has-bg-parallax .top-fix-bg .body-particle{z-index: 1;display: block !important;visibility: visible !important;opacity: 1 !important;animation-name: bodyParticleRise !important;animation-timing-function: linear !important;animation-iteration-count: infinite !important;animation-fill-mode: none !important;animation-direction: normal !important;}
.top-fix .top-fix-bg{position: fixed;top: 0;left: 50%;transform: translateX(-50%);width: min(100vw,420px);height: 100vh;background-position: center;background-repeat: no-repeat;background-size: cover;z-index: 0;pointer-events: none;clip-path: inset(var(--clip-top,100vh) var(--clip-right,0px) var(--clip-bottom,0px) var(--clip-left,0px));will-change: clip-path;}
.top-fix>*:not(.top-fix-bg){position: relative;z-index: 1;}
.top-fix::after{content: "";width: 100%;height: 40rem;background: url(/salon/images/kumo-2.webp);background-size: cover;position: absolute;bottom: -20rem;left: 0;z-index: 1;}
.top-fix.top-fix-4::after{background: url(/salon/images/shibuya-kumo-2.webp);background-size: cover;}
.top-fix::before{content: "";width: 100%;height: 40rem;background: url(/salon/images/kumo.webp);background-size: cover;position: absolute;top: -10rem;left: 0;z-index: 1;}
.top .sec_inner{position: relative;z-index: 2;}
.top-fix-2::before{top: 0;}
.top-fix-2{height: 90rem;margin-top: -12rem;}
.fv-bottom-img-box{display: flex;flex-wrap: wrap;gap: 4rem;margin-top: 6rem;padding-bottom: 12rem;position: relative;z-index: 5;}
.fv-bottom-img-box img{width: 80%;border-radius: 0 1rem 1rem 0;}
.fv-bottom-img-box img:nth-of-type(2){border-radius: 1rem 0 0 1rem;margin-left: 20%;}
.shizuku-1{right: -8rem;top: 20rem;}
.shizuku-2{right: initial;left: -8rem;top: 48rem;z-index: 100;}
.store{position: relative;padding-top: 0rem;padding-bottom: 5rem;margin-top: -10rem;z-index: 6;background: #fff;}
.store h2{margin-left: 8%;}
.shizuku-3{right: -10rem;top: -20rem;z-index: 100;}
.shizuku-4{right: 8rem;top: 20rem;width: 6rem;height: 6rem;}
.store-box img{border-radius: 1rem;}
.store-box h3{font-size: 2rem;margin-top: 1.2rem;margin-bottom: 0.4rem;letter-spacing: 0.1em;font-weight: 500;}
.store-box p{font-size: 1.25rem;line-height: 1.7;margin-bottom: 2.4rem;}
.store .sec_inner{width: 94%;margin-left: 8%;}
.people{background: url(/salon/images/people-back.webp);background-size: cover;position: relative;margin-top: 0rem;padding-top: 24rem;padding-bottom: 22rem;overflow: hidden;isolation: isolate;}
.people-shine{position: absolute;inset: 0;pointer-events: none;z-index: 2;overflow: hidden;}
.people-shine::before{content: "";position: absolute;top: -20%;left: -60%;width: 80%;height: 140%;background: linear-gradient(110deg,transparent 0%,rgba(255,255,255,0) 30%,rgba(255,255,255,0.55) 42%,rgba(255,255,255,0.85) 48%,rgba(255,255,255,1) 50%,rgba(255,255,255,0.85) 52%,rgba(255,255,255,0.55) 58%,rgba(255,255,255,0) 70%,transparent 100%);filter: blur(2.5rem);transform: translateX(0);opacity: 0;mix-blend-mode: screen;}
.people-shine.is-shining::before{animation: peopleShineSweep 4.5s cubic-bezier(0.33,0,0.4,1) forwards;}
@keyframes peopleShineSweep{0%{transform: translateX(0);opacity: 0;}
18%{opacity: 1;}
75%{opacity: 0.9;}
100%{transform: translateX(260%);opacity: 0;}
}
@media (prefers-reduced-motion: reduce){.people-shine.is-shining::before{animation: none;}
}
.people::after{content: "";width: 100%;height: 40rem;background: url(/salon/images/kumo.webp);background-size: cover;position: absolute;top: -22rem;left: 0;z-index: 1;}
.people::before{content: "";width: 100%;height: 40rem;background: url(/salon/images/kumo-2.webp);background-size: cover;position: absolute;bottom: -22rem;left: 0;z-index: 1;}
.people-wrap{display: flex;justify-content: space-between;flex-wrap: wrap;gap: 4rem 0;margin-bottom: 4rem;}
.people-box{width: calc(50% - 0.8rem);position: relative;display: grid;grid-template-columns: 1fr;grid-auto-rows: auto;row-gap: 0.6rem;}
.people-box>img{grid-column: 1;grid-row: 1;border-radius: 0.6rem;box-shadow: 0 0 4px #ccc;width: 100%;display: block;}
.people-box>.people-cate-2{grid-column: 1;grid-row: 1;align-self: end;justify-self: start;margin: 0;padding: 0.6rem;display: flex;gap: 0.4rem;z-index: 2;pointer-events: none;}
@media (max-width: 1023px){
  .people-box>.people-cate-2{position: absolute;top: 18.8rem;left: 0;grid-column: auto;grid-row: auto;align-self: auto;justify-self: auto;}
}
.people-box h3{font-size: 2rem;margin-top: 0.8rem;letter-spacing: 0.05em;display: block;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;max-width: 100%;min-width: 0;}
.people-box > p{display: none;}
.people-modal .people-box h3,.people-modal-name{white-space: normal;overflow: visible;text-overflow: clip;}
.people-box h3 .small{font-size: 1.2rem;}
.people-box .people-cate{display: flex;flex-wrap: wrap;gap: 0.4rem;margin-top: 0.4rem;position: static;width: auto;}
.people-box .people-cate .shizuku{position: static;width: auto;height: auto;display: inline-block;padding: 0.6rem 0.7rem;background: #f0f0ec;color: var(--black);border-radius: 0.4rem;font-size: 1.1rem;line-height: 1.3;text-align: center;box-shadow: none;backdrop-filter: none;-webkit-backdrop-filter: none;top: auto;left: auto;right: auto;bottom: auto;transform: none;}
.people-box .people-cate .shizuku::before,.people-box .people-cate .shizuku::after{display: none !important;}
.people-box .people-cate .shizuku br{display: none;}
.rank.section{background: #fff;padding-bottom: 3rem;padding-top: 6rem;position: relative;z-index: 6;}
.rank-menu-box{background: url(/salon/images/first-time-back.webp);background-size: cover;}
.rank-menu-box{display: flex;flex-wrap: wrap;margin-top: 1.6rem;position: relative;}
.rank-menu{display: flex;justify-content: space-between;align-items: center;width: 100%;padding: 0 0.8rem;}
.rank-price-sub{background: #e8e4dd;padding: 2rem;padding-top: 2rem;position: relative;margin-top: -2rem;}
.rank-price-sub h4{font-size: 1.7rem;letter-spacing: 0.1em;font-weight: 600;text-align: center;font-family: "Zen Old Mincho",sans-serif;margin-bottom: 1rem;}
.rank-price-sub p{line-height: 2;text-align: center;font-size: 1.2rem;letter-spacing: 0.05em;}
.minutes,.rank-menu .price{font-size: 1.6rem;font-family: "Cardo","Zen Old Mincho",sans-serif;}
.price{color: var(--green);}
.minutes .big,.rank-menu .price .big{font-size: 2.8rem;line-height: 1.7;letter-spacing: 0.05em;}
.minutes{position: relative;}
.minutes::after{content: "・・・";position: absolute;top: 53%;transform: translateY(-50%);left: 10.4rem;font-size: 1.2rem;color: var(--black2);}
.rank-section h3{font-size: 2.4rem;letter-spacing: 0.1em;border-bottom: 1px solid #ccc;padding-bottom: 0.6rem;}
.rank-section h3 .small{font-size: 1.2rem;}
.rank-wrap{margin-top: 6.4rem;display: flex;flex-wrap: wrap;gap: 8rem;}
.rank-menu-box h4{font-size: 2rem;font-family: "Zen Old Mincho",sans-serif;position: absolute;top: -1.4rem;left: 0;width: 100%;text-align: center;}
.rank-menu-box.bottom{margin-bottom: 4.8rem;background: #f0f0ec;padding: 2.5rem;}
body:not(.shibuya) .rank-menu-box.bottom,body:not(.shibuya) .rank-price-sub{background: url(/salon/images/rank-back.webp);background-size: cover;border-radius: 1rem;box-shadow: inset 0 1px 0 rgba(255,255,255,0.6);}
.rank-section{width: 100%;}
.rank-price-box{display: flex;flex-wrap: wrap;margin-top: 2rem;border: 1px solid #eee;position: relative;}
.rank-price-box::after{content: "";width: 1px;height: 100%;background: #eee;position: absolute;top: 0;left: calc(50% - 0.5px);}
.rank-price-box-box{display: flex;justify-content: space-between;align-items: center;width: 100%;padding: 1rem 0;}
.rank-price-box-box p{width: 50%;font-family: "Cardo","Zen Old Mincho",sans-serif;color: var(--black);}
.rank-price-box-box .rank{font-size: 1.6rem;text-align: center;background: none;font-weight: 600;letter-spacing: 0.1em;}
.rank-price-box-box .price{font-size: 1.4rem;text-align: center;letter-spacing: 0.1em;}
.rank-price-box-box .price .big{font-size: 2.4rem;letter-spacing: 0.1em;}
.rank-price-box-box .price .big-2{font-size: 1.6rem;padding-right: 0.8rem;letter-spacing: 0.1em;}
.b{font-weight: 500;color: var(--black);}
.rank-price-p{margin-top: 1.6rem;}
.gold{background: linear-gradient(to right,#f0e3ca 0%,#fff 50%,#f0e4ca 100%);}
.pratina{background: linear-gradient(to right,#b8dad0 0%,#fff 50%,#b2d7cb 100%);}
.crystal{background: linear-gradient(to right,#bacdbe 0%,#fff 50%,#bbcdbe 100%);}
.daiya{background: url(/salon/images/daiya.webp);background-size: cover;}
.eme{background: url(/salon/images/eme.webp);background-size: cover;padding: 1.4rem 0;}
.siro{padding: 1.4rem 0;border-bottom: 1px solid #eee;}
.rank-about h3{margin-bottom: 1.6rem;}
.reason{background: #fff;padding-top: 4rem;padding-bottom: 4rem;position: relative;z-index: 5;}
.reason h2{text-align: center;}
.reason h2 .small{width: 100%;text-align: center;}
.reason-box img{border-radius: 1rem;}
.reason-box h3{font-size: 2rem;margin-top: 2.4rem;margin-bottom: 1rem;letter-spacing: 0.1em;}
.reason-wrap{display: flex;flex-wrap: wrap;gap: 6.4rem;}
.reason-box{position: relative;}
.shizuku-7{width: 6.4rem;height: 6.4rem;position: absolute;top: -1.7rem;left: -1rem;display: flex;justify-content: center;align-items: center;font-size: 2.8rem;color: var(--black2);font-weight: 500;background: rgba(255,255,255,0.65);box-shadow: inset 0.625rem 1.25rem 1.875rem rgb(0 0 0 / 19%),inset -0.3125rem -0.625rem 1.25rem rgba(255,255,255,0.6),0 1.25rem 2.5rem rgba(0,0,0,0.05);backdrop-filter: blur(0.2rem);letter-spacing: 0;}
.shizuku-7::before{width: 1rem;height: 1rem;}
.people-2{background: url(/salon/images/people-2-back.webp);background-size: cover;position: relative;padding-top: 32rem;padding-bottom: 29rem;margin-top: -8rem;}
.people-2 .smallll{color: var(--black);}
.smalll{font-size: 2.8rem;margin-right: 0.2rem;}
.people-2 .small{margin-left: 50%;transform: translateX(-50%);margin-bottom: 1.2rem;display: block;width: fit-content;}
.people-2::before{content: "";width: 100%;height: 40rem;background: url(/salon/images/kumo-2.webp);background-size: cover;position: absolute;bottom: -24rem;left: 0;z-index: 1;}
.people-2::after{content: "";width: 100%;height: 40rem;background: url(/salon/images/kumo.webp);background-size: cover;position: absolute;top: -10rem;left: 0;z-index: 1;}
.style-box{width: calc(50% - 1rem);}
.style-box img{border-radius: 1rem;}
.style-box h3{font-size: 2rem;margin-top: 1.4rem;letter-spacing: 0.1em;opacity: 0;transform: translateY(0.8rem);transition:
opacity 0.7s cubic-bezier(0.19,1,0.22,1) 0.25s,transform 0.7s cubic-bezier(0.19,1,0.22,1) 0.25s;pointer-events: none;}
.style-box p{margin-top: 0.6rem;opacity: 0;transform: translateY(0.8rem);transition:
opacity 0.7s cubic-bezier(0.19,1,0.22,1) 0.4s,transform 0.7s cubic-bezier(0.19,1,0.22,1) 0.4s;pointer-events: none;}
.style-box.is-active h3{opacity: 1;transform: translateY(0);pointer-events: auto;}
.style-box.is-active p{opacity: 1;transform: translateY(0);pointer-events: auto;}
.smallll{font-size: 2.4rem;letter-spacing: 0;}
.people-2 .title{text-align: center;margin-bottom: 4rem;}
.voice{padding-top: 8rem;padding-bottom: 4rem;position: relative;z-index: 6;background: #fff;}
.voice h2,.voice-2 h2,.media h2{text-align: center;}
.voice-2 h2{margin-bottom: 0;}
.voice h2 span,.voice-2 h2 span,.media h2 span{margin-left: 52%;transform: translateX(-50%);}
.voice-name-box{display: flex;align-items: center;margin-top: 0.6rem;}
.voice-name-box .name{font-family: "Zen Old Mincho",sans-serif;font-size: 2.4rem;font-weight: 500;letter-spacing: 0.05em;color: var(--black);}
.voice-name-box .name .small{font-size: 1.6rem;}
.voice-name-box .cate{background: var(--black2);color: #fff;text-align: center;font-family: "Zen Old Mincho",sans-serif;font-weight: 600;font-size: 1.3rem;padding: 0.4rem 1rem 0.5rem;line-height: 1;margin-left: 0.6rem;}
.voice-box h3{font-family: "Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.5rem;font-weight: 400;letter-spacing: 0.05em;color: var(--black2);line-height: 1.75;display: -webkit-box;-webkit-line-clamp: 2;line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;text-overflow: ellipsis;}
.voice-box .women{font-size: 1.2rem;margin-top: 1rem;}
.voice-box img{border-radius: 1rem;}
.voice-box{cursor: pointer;}
.voice-modal{position: fixed;inset: 0;z-index: 100001;display: flex;align-items: center;justify-content: center;pointer-events: none;opacity: 0;transition: opacity 0.35s ease;padding: 2rem;}
.voice-modal.is-open{opacity: 1;pointer-events: auto;}
.voice-modal-backdrop{position: absolute;inset: 0;background: radial-gradient(circle at center,rgba(115,108,98,0.7),rgba(70,65,57,0.85) 80%);backdrop-filter: blur(4px) saturate(110%);-webkit-backdrop-filter: blur(4px) saturate(110%);cursor: pointer;}
.voice-modal-content{position: relative;width: 100%;max-width: 44rem;max-height: calc(100vh - 14rem);background: #f0f0ec;border-radius: 1rem;box-shadow: 0 30px 80px rgba(0,0,0,0.35),0 0 0 1px rgba(255,255,255,0.05);transform: translateY(2rem) scale(0.96);transition: transform 0.45s cubic-bezier(0.2,0.9,0.3,1.1);display: flex;flex-direction: column;overflow: hidden;}
.voice-modal-content .slider-prev,.voice-modal-content .slider-next{display: block;}
.voice-modal-content .slider-prev{top: 50%;left: -2.2rem;}
.voice-modal-content .slider-next{top: 50%;right: 1.8rem;}
.voice-modal.is-open .voice-modal-content{transform: translateY(0) scale(1);}
.voice-modal-inner{overflow-y: auto;-webkit-overflow-scrolling: touch;padding: 0 2.6rem 3.2rem;flex: 1 1 auto;min-height: 0;background: #f0f0ec;}
.voice-modal-close{position: absolute;top: 2rem;right: 1.2rem;width: 3.8rem;height: 3.8rem;background: var(--green);border: none;border-radius: 50%;font-size: 2.4rem;font-weight: 300;line-height: 1;color: #fff;cursor: pointer;z-index: 10;display: flex;align-items: center;justify-content: center;box-shadow: 0 2px 8px rgba(0,0,0,0.12);transition: background 0.2s ease,transform 0.2s ease;}
.voice-modal-close:hover{background: var(--green);}
.voice-modal-img{width: 100%;border-radius: 1rem;display: block;margin: 0 auto;}
.voice-modal-content .voice-name-box{margin-top: 1.2rem;justify-content: center;}
.voice-modal-title{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.7rem;font-weight: 500;letter-spacing: 0.05em;color: var(--black2);line-height: 1.75;margin-top: 1.6rem;padding-bottom: 1.4rem;border-bottom: 1px solid rgba(0,0,0,0.08);display: block;-webkit-line-clamp: unset;line-clamp: unset;overflow: visible;text-overflow: clip;}
.voice-modal-body{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.4rem;line-height: 2;color: var(--black2);margin-top: 1.6rem;letter-spacing: 0.04em;}
.voice-modal .women.voice-modal-meta{font-size: 1.2rem;margin-top: 1.8rem;color: var(--black2);opacity: 0.7;}
.voice-card-modal .voice-modal-inner{padding: 0;}
.voice-card-modal .voice-2-face{width: 100%;display: block;border-radius: 1rem;margin: 4rem auto 0rem;position: initial;transform: initial;}
.voice-card-modal .voice-2-box-bottom{padding: 3.6rem var(--sp_inner) 3.6rem;}
.voice-card-modal .voice-2-bottom h3{display: block;-webkit-line-clamp: none;line-clamp: none;-webkit-box-orient: initial;overflow: visible;text-overflow: clip;white-space: normal;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.35rem;line-height: 2;color: var(--black);margin-top: 1.4rem;margin-bottom: 0;letter-spacing: 0.04em;}
.voice-card-modal .voice-foot{display: flex;justify-content: space-between;align-items: center;gap: 0.8rem;margin-top: 1.6rem;}
.voice-card-modal .voice-meta{margin: 0;font-size: 1.15rem;letter-spacing: 0.04em;color: var(--black2);}
.voice-card-modal .voice-foot .time{margin: 0;padding: 0;white-space: nowrap;font-size: 1.15rem;color: var(--black2);opacity: 0.85;}
.voice-card-modal-buttons{display: flex;flex-direction: column;gap: 1rem;margin-top: 2rem;}
.voice-card-modal-buttons .button,.voice-card-modal-buttons .cta-button{width: 100%;margin: 0;font-size: 1.3rem;padding: 1.4rem 2rem;}
.voice-all-grid .voice-2-box{cursor: default;}
body.voice-modal-open{overflow: hidden;}
.assess-box{cursor: pointer;}
.assess-img-wrap{display: block;overflow: hidden;border-radius: 1rem;width: 100%;}
.assess-img-wrap img{display: block;width: 100%;height: auto;transition: transform 0.9s cubic-bezier(0.22,1,0.36,1);will-change: transform;}
.assess-box:hover .assess-img-wrap img{transform: scale(1.08);}
.assess-modal{position: fixed;inset: 0;z-index: 100001;display: flex;align-items: center;justify-content: center;pointer-events: none;opacity: 0;transition: opacity 0.35s ease;padding: 2rem;}
.assess-modal.is-open{opacity: 1;pointer-events: auto;}
.assess-modal-backdrop{position: absolute;inset: 0;background: radial-gradient(circle at center,rgba(115,108,98,0.7),rgba(70,65,57,0.85) 80%);backdrop-filter: blur(4px) saturate(110%);-webkit-backdrop-filter: blur(4px) saturate(110%);cursor: pointer;}
.assess-modal-content{position: relative;width: 100%;max-width: 34rem;max-height: calc(100vh - 14rem);background: #f0f0ec;border-radius: 1rem;box-shadow: 0 30px 80px rgba(0,0,0,0.35),0 0 0 1px rgba(255,255,255,0.05);transform: translateY(2rem) scale(0.96);transition: transform 0.45s cubic-bezier(0.2,0.9,0.3,1.1);display: flex;flex-direction: column;overflow: hidden;}
.assess-modal.is-open .assess-modal-content{transform: translateY(0) scale(1);}
.assess-modal-inner{overflow-y: auto;-webkit-overflow-scrolling: touch;padding: 0rem 3rem 3.2rem;flex: 1 1 auto;min-height: 0;}
.assess-modal-close{position: absolute;top: 2rem;right: 1.2rem;width: 3.8rem;height: 3.8rem;background: var(--green);border: none;border-radius: 50%;font-size: 2.4rem;font-weight: 300;line-height: 1;color: #fff;cursor: pointer;z-index: 10;display: flex;align-items: center;justify-content: center;box-shadow: 0 2px 8px rgba(0,0,0,0.12);transition: background 0.2s ease,transform 0.2s ease;}
.assess-modal-close:hover{background: var(--green);}
.assess-modal-img{width: 70%;margin: 0 auto;border-radius: 1rem;display: block;}
.assess-modal-title{font-size: 2rem;margin-top: 2rem;margin-bottom: -1rem;letter-spacing: 0.1em;display: block;-webkit-line-clamp: unset;line-clamp: unset;overflow: visible;text-overflow: clip;text-align: center;}
.assess-modal-body{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.35rem;line-height: 2;color: var(--black2);margin-top: 1.6rem;letter-spacing: 0.05em;text-align: center;}
.style-modal-body{text-align: center;}
body.assess-modal-open{overflow: hidden;}
.people-box{cursor: pointer;}
.people-modal{position: fixed;inset: 0;z-index: 100001;display: flex;align-items: center;justify-content: center;pointer-events: none;opacity: 0;transition: opacity 0.35s ease;padding: 2rem;}
.people-modal.is-open{opacity: 1;pointer-events: auto;}
.people-modal-backdrop{position: absolute;inset: 0;background: radial-gradient(circle at center,rgba(115,108,98,0.78),rgba(60,55,47,0.92) 80%);cursor: pointer;overflow: hidden;}
.people-modal-backdrop>.nav-rain{display: none !important;}
body .people-modal .people-modal-backdrop .body-particle{z-index: 1;display: block !important;visibility: visible !important;opacity: 1 !important;animation-name: bodyParticleRise !important;animation-timing-function: linear !important;animation-iteration-count: infinite !important;animation-fill-mode: none !important;animation-direction: normal !important;will-change: auto !important;filter: none !important;}
.people-modal:not(.is-open) .people-modal-backdrop .body-particle{animation-play-state: paused;}
.people-modal-content{position: relative;width: 100%;max-width: 44rem;max-height: calc(100vh - 14rem);background: #f0f0ec;border-radius: 1rem;box-shadow: 0 30px 80px rgba(0,0,0,0.35),0 0 0 1px rgba(255,255,255,0.05);transform: translateY(2rem) scale(0.96);transition: transform 0.45s cubic-bezier(0.2,0.9,0.3,1.1);display: flex;flex-direction: column;overflow: hidden;}
.people-modal.is-open .people-modal-content{transform: translateY(0) scale(1);}
.people-modal-inner{overflow-y: auto;-webkit-overflow-scrolling: touch;padding: 0rem 2.6rem 2.4rem;flex: 1 1 auto;min-height: 0;}
.people-modal-inner .slider-prev,.people-modal-inner .slider-next{display: block;}
.people-modal-inner .slider-prev{top: 48%;left: -2rem;}
.people-modal-inner .slider-next{top: 48%;right: 2rem;}
.people-modal-close{position: absolute;top: 2rem;right: 1.2rem;width: 3.8rem;height: 3.8rem;background: var(--green);border: none;border-radius: 50%;font-size: 2.4rem;font-weight: 300;line-height: 1;color: #fff;cursor: pointer;z-index: 10;display: flex;align-items: center;justify-content: center;box-shadow: 0 2px 8px rgba(0,0,0,0.12);transition: background 0.2s ease,transform 0.2s ease;}
.people-modal-close:hover{background: var(--green);}
.people-modal-img{width: 100%;aspect-ratio: 3 / 4;display: block;border-radius: 1rem;object-fit: cover;object-position: center top;margin: 0 auto;margin-bottom: 0.8rem;}
.people-modal-name{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 2.8rem;font-weight: 600;color: var(--black);margin-top: 1.8rem;letter-spacing: 0.05em;border-bottom: 1px solid #ddd;padding-bottom: 2rem;}
.people-modal-name .small{font-size: 1.4rem;margin-left: 0.4rem;color: var(--black2);}
.people-modal-img-wrap{position: relative;}
.people-modal-cate{position: absolute;left: 1rem;bottom: 1rem;display: flex;gap: 0.6rem;margin: 0;z-index: 2;}
.people-modal-cate span{display: flex;justify-content: center;align-items: center;text-align: center;width: 5.4rem;height: 5.4rem;border-radius: 50%;background: rgba(255,255,255,0.05);color: var(--black);font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.1rem;font-weight: 600;letter-spacing: 0.02em;line-height: 1.3;padding: 0;box-shadow:
inset 0.6rem 1.2rem 1.8rem rgba(0,0,0,0.05),inset -0.3rem -0.6rem 1.2rem rgba(255,255,255,0.6),0 1rem 2rem rgba(0,0,0,0.10);backdrop-filter: blur(0.3rem);-webkit-backdrop-filter: blur(0.3rem);position: relative;overflow: hidden;}
.people-modal-cate span::before{content: "";position: absolute;top: 15%;left: 20%;width: 1rem;height: 0.6rem;background: rgba(255,255,255,0.9);border-radius: 50%;filter: blur(0.125rem);transform: rotate(-15deg);z-index: 2;pointer-events: none;}
.people-modal-cate span::after{content: "";position: absolute;bottom: 20%;right: 25%;width: 0.8rem;height: 0.8rem;background: rgba(255,255,255,0.3);border-radius: 50%;filter: blur(0.2rem);z-index: 1;pointer-events: none;}
.people-modal-cate.is-simple{position: static;display: flex;flex-wrap: wrap;justify-content: center;gap: 0.6rem;margin: 0 auto 1.6rem;padding: 0;background: none;}
.people-modal-body{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.35rem;line-height: 2;color: var(--black2);margin-top: 1.6rem;letter-spacing: 0.04em;padding-top: 1.4rem;border-top: 1px solid #ddd;}
.people-modal-button{margin-top: 2.4rem;width: 100%;}
.people-modal-button.cta-button{margin-top: 1rem;}
body.people-modal-open{overflow: hidden;}
@media (min-width: 768px){.people-modal-content{max-width: 34rem;max-height: 84vh;border-radius: 1rem;}
}
.reserve-modal{position: fixed;inset: 0;z-index: 100002;display: flex;align-items: center;justify-content: center;pointer-events: none;opacity: 0;transition: opacity 0.3s ease;padding: 2rem;}
.reserve-modal.is-open{opacity: 1;pointer-events: auto;}
.reserve-modal-backdrop{position: absolute;inset: 0;background: radial-gradient(circle at center,rgba(115,108,98,0.7),rgba(70,65,57,0.85) 80%);backdrop-filter: blur(4px) saturate(110%);-webkit-backdrop-filter: blur(4px) saturate(110%);cursor: pointer;}
.reserve-modal-content{position: relative;width: 100%;max-width: 36rem;background: #f0f0ec;border-radius: 1rem;padding: 4rem 2.4rem 2.6rem;box-shadow: 0 30px 80px rgba(0,0,0,0.35),0 0 0 1px rgba(255,255,255,0.05);transform: translateY(2rem) scale(0.96);transition: transform 0.4s cubic-bezier(0.2,0.9,0.3,1.1);}
.reserve-modal.is-open .reserve-modal-content{transform: translateY(0) scale(1);}
.reserve-modal-close{position: absolute;top: 2rem;right: 0.8rem;width: 3.2rem;height: 3.2rem;background: var(--green);border: none;border-radius: 50%;font-size: 2.1rem;font-weight: 300;line-height: 1;color: #fff;cursor: pointer;z-index: 10;display: flex;align-items: center;justify-content: center;box-shadow: 0 2px 8px rgba(0,0,0,0.12);transition: background 0.2s ease,transform 0.2s ease;}
.reserve-modal-close:hover{background: var(--green);}
.reserve-modal-title{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.6rem;font-weight: 600;letter-spacing: 0.05em;text-align: center;color: var(--black);margin-bottom: 1.8rem;}
.reserve-modal-btn{width: 100%;margin-top: 1rem;}
body.reserve-modal-open{overflow: hidden;}
@media (min-width: 768px){.reserve-modal .button{display: none;}
}
.store-box{cursor: pointer;}
.store .button{margin: 0;width: 100%;}
.store .cta-button{width: 100%;}
.store-box .button+.cta-button{margin-top: 0.8rem;}
.store-modal{position: fixed;inset: 0;z-index: 100001;display: flex;align-items: center;justify-content: center;pointer-events: none;opacity: 0;transition: opacity 0.35s ease;padding: 2rem;}
.store-modal.is-open{opacity: 1;pointer-events: auto;}
.store-modal-backdrop{position: absolute;inset: 0;background: radial-gradient(circle at center,rgba(115,108,98,0.7),rgba(70,65,57,0.85) 80%);backdrop-filter: blur(4px) saturate(110%);-webkit-backdrop-filter: blur(4px) saturate(110%);cursor: pointer;}
.store-modal-content{position: relative;width: 100%;max-width: 44rem;max-height: calc(100vh - 14rem);background: #f0f0ec;border-radius: 1rem;box-shadow: 0 30px 80px rgba(0,0,0,0.35),0 0 0 1px rgba(255,255,255,0.05);transform: translateY(2rem) scale(0.96);transition: transform 0.45s cubic-bezier(0.2,0.9,0.3,1.1);display: flex;flex-direction: column;overflow: hidden;}
.store-modal.is-open .store-modal-content{transform: translateY(0) scale(1);}
.store-modal-inner{overflow-y: auto;-webkit-overflow-scrolling: touch;padding: 0rem 2.6rem 3.2rem;flex: 1 1 auto;min-height: 0;}
.store-modal-close{position: absolute;top: 2rem;right: 1.2rem;width: 3.8rem;height: 3.8rem;background: var(--green);border: none;border-radius: 50%;font-size: 2.4rem;font-weight: 300;line-height: 1;color: #fff;cursor: pointer;z-index: 10;display: flex;align-items: center;justify-content: center;box-shadow: 0 2px 8px rgba(0,0,0,0.12);transition: background 0.2s ease,transform 0.2s ease;}
.store-modal-close:hover{background: var(--green);}
.store-modal-slider-wrap{position: relative;border-radius: 1rem;overflow: hidden;background: #f3f3f5;}
.store-modal-slider{display: flex;align-items: flex-start;width: 100%;overflow-x: auto;scroll-snap-type: x mandatory;-webkit-overflow-scrolling: touch;scrollbar-width: none;}
.store-modal-slider::-webkit-scrollbar{display: none;}
.store-modal-slider img{flex: 0 0 100%;width: 100%;aspect-ratio: 1 / 1;height: auto;object-fit: cover;object-position: center;display: block;scroll-snap-align: start;scroll-snap-stop: always;}
.arrow-black{display: inline-block;width: 1.6rem;height: 1.9rem;background: url(/salon/images/arrow-black.webp) center / contain no-repeat;pointer-events: none;}
.store-modal-prev,.store-modal-next{position: absolute;top: 50%;transform: translateY(-50%);width: 3.6rem;height: 3.6rem;border: none;border-radius: 50%;background: rgba(255,255,255,0.92);cursor: pointer;z-index: 4;display: flex;align-items: center;justify-content: center;box-shadow: 0 2px 8px rgba(0,0,0,0.18);transition: background 0.2s ease,opacity 0.2s ease;padding: 0;}
.store-modal-prev .arrow-black{transform: scaleX(-1);}
.store-modal-prev{left: 0.8rem;}
.store-modal-next{right: 0.8rem;}
.store-modal-prev:hover,.store-modal-next:hover{background: #fff;}
.store-modal-prev[disabled],.store-modal-next[disabled]{opacity: 0;pointer-events: none;}
.store-modal-dots{display: flex;justify-content: center;gap: 0.6rem;margin-top: 1rem;}
.store-modal-dots span{width: 0.7rem;height: 0.7rem;border-radius: 50%;background: rgba(0,0,0,0.18);transition: background 0.25s ease,transform 0.25s ease;}
.store-modal-dots span.is-active{background: var(--green);transform: scale(1.15);}
.store-modal-name{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 2.4rem;font-weight: 600;color: var(--black);margin-top: 1.8rem;letter-spacing: 0.1em;}
.store-modal-info{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.4rem;line-height: 1.9;color: var(--black2);margin-top: 1rem;letter-spacing: 0.04em;}
.store-modal-actions{display: flex;flex-direction: column;gap: 1rem;margin-top: 2.2rem;}
.store-modal-actions .button,.store-modal-actions .cta-button{width: 100%;}
body.store-modal-open{overflow: hidden;}
@media (min-width: 768px){.store-modal-content{max-width: 36rem;max-height: 84vh;border-radius: 1rem;}
.store-modal-content::before{border-radius: 1rem;}
.store-modal-inner{padding: 3.6rem 3rem 2.6rem;}
.store-modal-close{width: 3.2rem;height: 3.2rem;font-size: 2.1rem;}
}
.voice-2{background: url(/salon/images/people-2-back.webp);background-size: cover;position: relative;padding-top: 22rem;padding-bottom: 22rem;}
.voice-2::after{content: "";width: 100%;height: 40rem;background: url(/salon/images/kumo.webp);background-size: cover;position: absolute;top: -21rem;left: 0;z-index: 1;}
.voice-2::before{content: "";width: 100%;height: 40rem;background: url(/salon/images/kumo-2.webp);background-size: cover;position: absolute;bottom: -22rem;left: 0;z-index: 1;}
.voice-2-box{border-radius: 1.6rem;position: relative;background:
radial-gradient(ellipse at 30% 18%,rgba(255,255,255,0.65) 0%,transparent 55%),radial-gradient(ellipse at 80% 95%,rgba(220,220,220,0.35) 0%,transparent 60%),linear-gradient(135deg,rgba(255,255,255,0.45) 0%,rgba(230,230,230,0.3) 100%);backdrop-filter: blur(1.6rem) saturate(150%);-webkit-backdrop-filter: blur(1.6rem) saturate(150%);border: none;box-shadow:
inset 0 1px 1px rgba(255,255,255,0.75),inset 0 -1px 2px rgba(255,255,255,0.35),0 0.8rem 2rem rgba(140,140,140,0.14);margin-bottom: 1rem;}
.voice-2-box .time{font-size: 1.2rem;padding: 0 !important;}
.voice-2-name-box{display: flex;align-items: center;justify-content: center;gap: 1rem;}
.voice-2-name-box .name{font-size: 2rem;font-family: "Zen Old Mincho",sans-serif;font-weight: 600;}
.voice-2-name-box .name span{font-size: 1.6rem;}
.voice-2-name-box .cate{display: block;background: var(--black2);color: #fff;text-align: center;padding: 0.5rem 1rem 0.4rem;width: fit-content;font-size: 1.2rem;line-height: 1;font-family: "Zen Old Mincho",sans-serif;}
.voice-2-box-bottom{padding: 2.5rem 2.5rem 3.2rem;position: relative;}
.people-voice.center-h2 .voice-2-box-bottom{padding-top: 6rem;}
.people-voice.center-h2 .voice-2-box-bottom::before{content: "";position: absolute;top: 0;left: 50%;transform: translate(-50%,-50%);width: 8rem;height: 8rem;background: url(/salon/images/people-review-img.webp) center / contain no-repeat;pointer-events: none;}
.people-voice.center-h2 .voice-2-box:nth-child(3n+2) .voice-2-box-bottom::before{background-image: url(/salon/images/people-review-img-2.webp);}
.people-voice.center-h2 .voice-2-box:nth-child(3n) .voice-2-box-bottom::before{background-image: url(/salon/images/people-review-img-3.webp);}
.voice-modal-review-img{display: block;width: 12rem;height: 12rem;margin: 0 auto 0rem;object-fit: contain;pointer-events: none;}
.login-modal{position: fixed;inset: 0;z-index: 200000;display: flex;align-items: center;justify-content: center;opacity: 0;pointer-events: none;transition: opacity 0.3s ease;}
.login-modal.is-open{opacity: 1;pointer-events: auto;}
.login-modal-backdrop{position: absolute;inset: 0;background: rgba(0,0,0,0.5);backdrop-filter: blur(4px);-webkit-backdrop-filter: blur(4px);cursor: pointer;}
.login-modal-content{position: relative;width: 90%;max-width: 38rem;background: #fff;border-radius: 1.2rem;padding: 3.6rem 2.6rem 2.8rem;box-shadow: 0 20px 50px rgba(0,0,0,0.25);max-height: calc(100vh - 4rem);overflow-y: auto;-webkit-overflow-scrolling: touch;}
.login-modal-close{position: absolute;top: 1rem;right: 1rem;appearance: none;-webkit-appearance: none;width: 3.2rem;height: 3.2rem;background: var(--green);border: none;border-radius: 50%;font-size: 2.1rem;font-weight: 300;line-height: 1;color: #fff;cursor: pointer;display: flex;align-items: center;justify-content: center;box-shadow: 0 2px 8px rgba(0,0,0,0.12);z-index: 10;}
.login-modal-title{font-family: "Zen Old Mincho",serif;font-size: 1.8rem;font-weight: 600;letter-spacing: 0.06em;text-align: center;margin: 2.4rem 0 0.6rem;color: var(--black);}
.login-modal-sub{font-size: 1.15rem;color: var(--black2);opacity: 0.75;text-align: center;margin: 0 0 2rem;line-height: 1.6;}
.login-modal-field{display: flex;flex-direction: column;gap: 0.4rem;margin-bottom: 1.2rem;}
.login-modal-label{font-size: 1.1rem;color: var(--black2);letter-spacing: 0.04em;}
.login-modal-input{appearance: none;-webkit-appearance: none;border: 1px solid var(--border);border-radius: 0.6rem;padding: 1.6rem 1.2rem;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.4rem;background: #fff;transition: border-color 0.2s ease;}
.login-modal-input:focus{outline: none;border-color: var(--green);}
.login-modal-error{background: rgba(209,87,106,0.08);border: 1px solid rgba(209,87,106,0.3);border-radius: 0.6rem;padding: 0.8rem 1.1rem;margin: 0 0 1.2rem;color: #b3445c;font-size: 1.15rem;line-height: 1.5;}
.login-modal-submit{width: 100%;margin: 0.4rem 0 1.4rem;padding: 2rem 1.6rem;font-size: 1.4rem;}
.login-modal-foot{font-size: 1.1rem;color: var(--black2);text-align: center;line-height: 1.7;}
.login-modal-foot a{color: var(--green);text-decoration: underline;}
.site-login{position: fixed;top: 1.8rem;right: 1.8rem;display: inline-flex;align-items: center;justify-content: center;gap: 0;width: 4rem;height: 4rem;padding: 0;border-radius: 50%;border: 1px solid var(--border);background: #fff;color: var(--black2);cursor: pointer;z-index: 10001;text-decoration: none;font-size: 1.2rem;letter-spacing: 0.04em;line-height: 1;transition: border-color 0.2s ease,color 0.2s ease,background 0.2s ease,transform 0.2s ease;}
.site-login:hover{background: rgba(75,147,104,0.04);transform: scale(1.04);}
.site-login-icon{width: 1.5rem;height: 1.5rem;display: inline-block;background: currentColor;-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/><circle cx='12' cy='7' r='4'/></svg>") center / contain no-repeat;mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/><circle cx='12' cy='7' r='4'/></svg>") center / contain no-repeat;flex-shrink: 0;}
.site-login-label{white-space: nowrap;font-weight: 500;}
.site-login.is-logged-in{}
.site-login.is-logged-in:hover{background: rgba(75,147,104,0.04);}
.site-login-avatar,.site-login-name{display: none !important;}
.site-login.is-logged-in .site-login-label{font-size: 1.2rem;font-weight: 600;letter-spacing: 0.02em;}
.site-login-name{display: none;align-items: baseline;gap: 0.1rem;font-weight: 600;white-space: nowrap;}
.site-login-name-text{font-size: 1.25rem;}
.site-login-name-suffix{font-size: 0.95rem;opacity: 0.7;margin-left: 0.15rem;}
@media (min-width: 769px){.site-login-name{display: inline-flex;}
}
.site-login-caret{font-size: 1rem;opacity: 0.55;line-height: 1;}
.site-login-menu{position: fixed;inset: 0;z-index: 100002;visibility: hidden;opacity: 0;pointer-events: none;transition: opacity 0.35s ease,visibility 0s 0.35s;}
.site-login-menu.is-open{visibility: visible;opacity: 1;pointer-events: auto;transition: opacity 0.35s ease,visibility 0s;}
.site-login-menu-backdrop{position: absolute;inset: 0;background: radial-gradient(circle at center,rgba(115,108,98,0.7),rgba(70,65,57,0.85) 80%);backdrop-filter: blur(4px) saturate(110%);-webkit-backdrop-filter: blur(4px) saturate(110%);cursor: pointer;overflow: hidden;}
.site-login-menu .site-login-menu-backdrop .body-particle{z-index: 1;display: block !important;visibility: visible !important;animation-name: bodyParticleRise !important;animation-timing-function: linear !important;animation-iteration-count: infinite !important;animation-fill-mode: none !important;animation-direction: normal !important;}
.site-login-menu-ripple{position: absolute;inset: 0;pointer-events: none;z-index: 1;}
.site-login-menu-ripple .ripple-group-click span{border-width: 0.5px;border-color: rgba(255,255,255,0.55);animation-delay: 0s !important;}
.site-login-menu-ripple .ripple-group-click span:nth-child(1){animation-duration: 4s;}
.site-login-menu-ripple .ripple-group-click span:nth-child(2){animation-duration: 5.3s;}
.site-login-menu-ripple .ripple-group-click span:nth-child(3){animation-duration: 6.6s;}
.site-login-menu-ripple .ripple-group-click span:nth-child(4){animation-duration: 8s;}
.site-login-menu-ripple .ripple-group:not(.ripple-group-click) span{border-width: 0.5px;border-color: rgba(255,255,255,0.22);}
.site-login-menu:not(.is-open) .site-login-menu-backdrop .body-particle,.site-login-menu:not(.is-open) .site-login-menu-ripple .ripple-group span{animation-play-state: paused;}
@media (min-width: 769px){body.site-login-menu-open .site-header{z-index: 100003;}
.site-login-menu{display: flex !important;flex-direction: row !important;align-items: flex-end !important;justify-content: center !important;padding: 0 !important;background: transparent !important;border: none !important;border-radius: 0 !important;box-shadow: none !important;min-width: 0 !important;}
.site-login-menu .site-login-menu-content{position: relative !important;left: auto !important;right: auto !important;top: auto !important;bottom: auto !important;margin: 0 !important;width: 100% !important;max-width: 420px !important;height: auto !important;max-height: 80vh !important;overflow: hidden;display: flex;flex-direction: column;border-radius: 2rem 2rem 0 0 !important;padding: 0 2rem 3.6rem !important;transform: translateY(100%) !important;opacity: 0;transition: transform 0.45s cubic-bezier(0.32,0.72,0,1),opacity 0.3s ease;box-shadow: 0 -1rem 4rem rgba(0,0,0,0.25),0 -0.2rem 0.6rem rgba(0,0,0,0.06) !important;}
.site-login-menu-content>.site-login-menu-view:not([hidden]){overflow-y: auto;flex: 1 1 auto;min-height: 0;will-change: scroll-position;overscroll-behavior: contain;-webkit-overflow-scrolling: touch;}
.site-login-menu-content{will-change: transform,opacity;backface-visibility: hidden;}
.site-login-menu-backdrop .body-particle{will-change: transform,opacity;}
.site-login-menu-content::after{content: '';position: absolute;top: 0;left: 0;right: 0;height: 5rem;background: #fff;z-index: 5;border-radius: 1.2rem 1.2rem 0 0;pointer-events: none;}
.site-login-menu-close{z-index: 10;}
.site-login-menu-content>.site-login-menu-view:not([hidden]){padding-top: 3rem;}
.site-login-menu-content .site-login-menu-back{position: absolute;top: 1.2rem;left: 2rem;margin: 0;padding: 0;background: transparent;z-index: 6;min-height: 3.2rem;line-height: 1;align-self: auto;}
.site-login-menu.is-open .site-login-menu-content{transform: translateY(0) !important;opacity: 1;}
}
.site-login-menu-content{position: absolute;left: 0;right: 0;bottom: 0;background: #fff;border-radius: 1.6rem 1.6rem 0 0;padding: 3rem 2.4rem 3.6rem;max-width: 42rem;margin: 0 auto;transform: translateY(110%);transition: transform 0.45s cubic-bezier(0.22,1,0.36,1);box-shadow: 0 -1rem 3rem rgba(255,255,255,0.503);}
.site-login-menu.is-open .site-login-menu-content{transform: translateY(0);}
.site-login-menu-close{position: absolute;top: 1.2rem;right: 1.2rem;width: 3.2rem;height: 3.2rem;border-radius: 50%;background: var(--green);color: #fff;border: none;font-size: 2rem;font-weight: 300;line-height: 1;cursor: pointer;z-index: 10;padding: 0 0 0.4rem;appearance: none;-webkit-appearance: none;}
.site-login-menu-title{font-size: 2rem;font-weight: 500;margin: 1rem 0 1.8rem;text-align: center;letter-spacing: 0.1em;color: var(--black2);font-family: "Zen Old Mincho",sans-serif;}
.site-login-menu-member{display: flex;flex-direction: column;gap: 0.7rem;margin: -0.4rem 0 1.4rem;padding: 1.2rem 1.4rem;background: rgba(75,147,104,0.06);border: 1px solid rgba(75,147,104,0.22);border-radius: 0.8rem;}
.site-login-menu-member[hidden]{display: none !important;}
.site-login-menu-member-row{display: grid;grid-template-columns: max-content minmax(0,1fr);gap: 0.4rem 0.8rem;align-items: baseline;margin: 0;}
.site-login-menu-member-row dt{font-size: 1.15rem;color: var(--black2);letter-spacing: 0.06em;white-space: nowrap;font-weight: 500;}
.site-login-menu-member-row dt::after{content: "：";}
.site-login-menu-member-row dd{margin: 0;min-width: 0;color: var(--black);font-size: 1.35rem;font-weight: 500;letter-spacing: 0.04em;overflow-wrap: anywhere;}
.site-login-menu-list{display: flex;flex-direction: column;gap: 0.6rem;}
.site-login-menu .site-login-menu-item{display: flex !important;align-items: center;gap: 1rem;width: 100%;padding: 1.4rem 1.6rem;background: #fff;border: 1px solid var(--border);border-radius: 0.8rem;color: var(--black);text-decoration: none;font-size: 1.3rem;font-weight: 500;letter-spacing: 0.1em;cursor: pointer;appearance: none;-webkit-appearance: none;text-align: left;font-family: inherit;transition: background 0.2s ease,border-color 0.2s ease;}
.site-login-menu .site-login-menu-item:hover{background: rgba(75,147,104,0.04);border-color: var(--green);}
.site-login-menu .site-login-menu-item[data-logout]{color: var(--black2);}
.site-login-menu-item-icon[data-icon="cancel"]{-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><line x1='4.93' y1='4.93' x2='19.07' y2='19.07'/></svg>") center / contain no-repeat;mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><line x1='4.93' y1='4.93' x2='19.07' y2='19.07'/></svg>") center / contain no-repeat;}
.site-login-menu-item-icon[data-icon="mail"]{-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='2' y='4' width='20' height='16' rx='2'/><path d='M22 6 L12 13 L2 6'/></svg>") center / contain no-repeat;mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='2' y='4' width='20' height='16' rx='2'/><path d='M22 6 L12 13 L2 6'/></svg>") center / contain no-repeat;}
.site-login-menu-email-form{display: flex;flex-direction: column;gap: 0.6rem;margin-top: 0.4rem;}
.site-login-menu-email-label{font-size: 1.15rem;color: var(--black2);letter-spacing: 0.04em;margin-top: 2.4rem;}
.site-login-menu-email-current{font-size: 1.4rem;color: var(--black);margin: 0 0 0.4rem;padding: 0.8rem 1.1rem;background: rgba(0,0,0,0.04);border-radius: 0.6rem;letter-spacing: 0.03em;}
.site-login-menu-email-input{width: 100%;padding: 1.2rem 1.2rem;font-size: 1.4rem;border: 1px solid var(--border);border-radius: 0.6rem;background: #fff;font-family: inherit;letter-spacing: 0.02em;outline: none;transition: border-color 0.2s ease;}
.site-login-menu-email-input:focus{border-color: var(--green);}
.site-login-menu-email-form .cta-button{margin-top: 1.2rem;width: 100%;padding: 2rem 1rem;font-size: 1.3rem;}
.site-login-menu-profile-form{display: flex;flex-direction: column;gap: 0.6rem;margin-top: 0.4rem;}
.site-login-menu-profile-grid{display: grid;grid-template-columns: minmax(0,1fr) minmax(0,1fr);gap: 1rem;}
.site-login-menu-profile-field{display: flex;flex-direction: column;gap: 0.6rem;min-width: 0;}
.site-login-menu-profile-field .site-login-menu-email-label{margin-top: 1.2rem;}
.site-login-menu-profile-form .cta-button{margin-top: 1.6rem;width: 100%;padding: 2rem 1rem;font-size: 1.3rem;}
@media (max-width: 420px){.site-login-menu-profile-grid{grid-template-columns: 1fr;gap: 0.2rem;}}
body.site-login-menu-open{overflow: hidden;}
.site-login-menu.is-open .site-login-menu-content .cta-button{width: 100%;margin-left: 0;margin-right: 0;}
.site-login-menu-view[hidden]{display: none !important;}
.site-login-menu-view.is-fade-in{animation: siteLoginMenuFadeIn 0.28s cubic-bezier(0.22,1,0.36,1);}
@keyframes siteLoginMenuFadeIn{0%{opacity: 0;transform: translateY(0.6rem);}
100%{opacity: 1;transform: translateY(0);}
}
.site-login-menu-back{display: inline-flex;align-items: center;gap: 0.6rem;background: none;border: none;color: var(--black2);font-size: 1.3rem;font-family: inherit;letter-spacing: 0.05em;cursor: pointer;padding: 0;margin: 0 0 1.2rem;appearance: none;-webkit-appearance: none;}
.site-login-menu-back-arrow{display: inline-block;width: 1.6rem;height: 1.4rem;background: url(/salon/images/arrow-green.webp) center / contain no-repeat;transform: scaleX(-1);flex-shrink: 0;}
.site-login-menu-back:hover{color: var(--green);}
.site-login-menu-subtitle{text-align: center;font-size: 1.2rem;color: var(--black2);margin: -0.8rem 0 1.4rem;letter-spacing: 0.05em;}
.site-login-menu-empty{text-align: center;color: var(--black2);font-size: 1.3rem;padding: 3rem 0;letter-spacing: 0.05em;}
.site-login-resv-list[hidden],.site-login-menu-empty[hidden]{display: none !important;}
.site-login-resv-list{display: flex;flex-direction: column;gap: 1rem;max-height: 50vh;overflow-y: auto;-webkit-overflow-scrolling: touch;}
.site-login-resv-card{background: #fff;border: 1px solid var(--border);border-radius: 0.8rem;padding: 1.4rem 1.6rem;}
.site-login-resv-card-head{display: flex;align-items: baseline;justify-content: space-between;gap: 0.6rem;margin-bottom: 0.6rem;padding-bottom: 0.6rem;border-bottom: 1px solid var(--border);}
.site-login-resv-date{font-size: 1.35rem;font-weight: 600;color: var(--black);letter-spacing: 0.04em;}
.site-login-resv-store{font-size: 1.15rem;color: var(--green);letter-spacing: 0.05em;}
.site-login-resv-card-body{display: flex;flex-direction: column;gap: 0.2rem;}
.site-login-resv-teacher{font-size: 1.4rem;font-weight: 500;color: var(--black);margin: 0;}
.site-login-resv-meta{font-size: 1.15rem;color: var(--black2);margin: 0;letter-spacing: 0.03em;}
.site-login-resv-cancel-btn{display: block;width: 100%;margin-top: 1rem;padding: 0.9rem 1rem;background: transparent;border: 1px solid var(--border);border-radius: 0.6rem;color: var(--black2);font-size: 1.2rem;font-family: inherit;letter-spacing: 0.05em;cursor: pointer;transition: background 0.2s ease,border-color 0.2s ease,color 0.2s ease;appearance: none;-webkit-appearance: none;}
.site-login-resv-cancel-btn:hover{background: rgba(0,0,0,0.04);border-color: var(--black2);color: var(--black);}
.site-login-resv-card-main{display: flex;gap: 2rem;align-items: flex-start;}
.site-login-resv-card-photo{width: 8.4rem;height: 8.4rem;flex-shrink: 0;border-radius: 50%;object-fit: cover;object-position: center 2%;border: 1px solid var(--border);background: #f0f0ec;}
.site-login-resv-card-info{flex: 1;min-width: 0;}
.site-login-resv-review-btn{display: block;width: 100%;margin-top: 1rem;padding: 0.9rem 1rem;background: transparent;border: 1px solid var(--green);border-radius: 0.6rem;color: var(--green);font-size: 1.2rem;font-family: inherit;letter-spacing: 0.05em;cursor: pointer;transition: background 0.2s ease,color 0.2s ease;appearance: none;-webkit-appearance: none;}
.site-login-resv-review-btn:hover{background: rgba(75,147,104,0.08);}
.site-login-menu-review-form{display: flex;flex-direction: column;gap: 0.6rem;margin-top: 0.4rem;}
.site-login-menu-review-textarea{width: 100%;padding: 1.2rem 1.2rem;font-size: 1.3rem;line-height: 1.7;border: 1px solid var(--border);border-radius: 0.6rem;background: #fff;font-family: inherit;letter-spacing: 0.02em;outline: none;resize: vertical;min-height: 10rem;transition: border-color 0.2s ease;}
.site-login-menu-review-textarea:focus{border-color: var(--green);}
.site-login-menu-review-form .cta-button{margin-top: 1.2rem;width: 100%;padding: 2rem 1rem;font-size: 1.3rem;}
.site-login-menu-item-icon[data-icon="review"]{-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/></svg>") center / contain no-repeat;mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/></svg>") center / contain no-repeat;}
.site-login-menu-item-icon[data-icon="review-history"]{-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M14 9V5a3 3 0 0 0-3-3l-4 9v11h11.28a2 2 0 0 0 2-1.7l1.38-9A2 2 0 0 0 19.7 9z'/><line x1='2' y1='13' x2='2' y2='22'/></svg>") center / contain no-repeat;mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M14 9V5a3 3 0 0 0-3-3l-4 9v11h11.28a2 2 0 0 0 2-1.7l1.38-9A2 2 0 0 0 19.7 9z'/><line x1='2' y1='13' x2='2' y2='22'/></svg>") center / contain no-repeat;}
.site-login-review-history-list{display: flex;flex-direction: column;gap: 2.4rem;max-height: 50vh;overflow-y: auto;-webkit-overflow-scrolling: touch;}
.site-login-review-history-card{background: #fff;border: 1px solid var(--border);border-radius: 0.8rem;padding: 2.5rem 2.5rem;}
.site-login-review-history-head{display: flex;align-items: center;gap: 1rem;margin-bottom: 0.8rem;padding-bottom: 0.8rem;border-bottom: 1px solid var(--border);}
.site-login-review-history-photo{width: 5.2rem;height: 5.2rem;flex-shrink: 0;border-radius: 50%;object-fit: cover;object-position: center 20%;border: 1px solid var(--border);background: #f0f0ec;}
.site-login-review-history-head-text{flex: 1;min-width: 0;display: flex;flex-direction: column;gap: 0.2rem;}
.site-login-review-history-teacher{background: none;border: none;padding: 0;font-family: inherit;font-size: 1.4rem;font-weight: 600;color: var(--black);text-decoration: underline;text-underline-offset: 0.3rem;cursor: pointer;letter-spacing: 0.03em;text-align: left;transition: color 0.2s ease;}
.site-login-review-history-teacher:hover{color: var(--green);}
.site-login-review-history-meta{display: flex;gap: 0.8rem;font-size: 1.1rem;color: var(--black2);letter-spacing: 0.03em;}
.site-login-review-history-store{color: var(--green);}
.site-login-review-history-comment{font-size: 1.3rem;line-height: 1.85;color: var(--black);margin: 0;letter-spacing: 0.02em;white-space: pre-line;}
.site-login-menu-fee-notice{font-size: 1.15rem;color: var(--black2);line-height: 1.7;margin: 1.4rem 0 1.8rem;letter-spacing: 0.03em;padding: 1rem 1.2rem;background: rgba(0,0,0,0.03);border-radius: 0.6rem;}
.site-login-menu-confirm-actions{display: flex;gap: 0.8rem;align-items: center;}
.site-login-menu-confirm-actions .button,.site-login-menu-confirm-actions .cta-button{flex: 1;width: auto;margin: 0;padding: 1.4rem 1rem;font-size: 1.3rem;}
.site-login-menu-head{display: flex;align-items: center;gap: 1rem;padding: 1.2rem 1.4rem;border-bottom: 1px solid var(--border);background: rgba(75,147,104,0.04);}
.site-login-menu-avatar{width: 2.4rem;height: 2.4rem;border-radius: 50%;background: linear-gradient(135deg,#4b9368,#6fb98a);color: #fff;display: flex;align-items: center;justify-content: center;font-weight: 700;font-size: 1.1rem;flex-shrink: 0;box-shadow:
inset 0 0 0 1px rgba(255,255,255,0.35),0 0.15rem 0.4rem rgba(75,147,104,0.3);}
.site-login-menu-info{display: flex;flex-direction: column;gap: 0.15rem;min-width: 0;}
.site-login-menu-name{font-size: 1.35rem;font-weight: 600;color: var(--black);white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}
.site-login-menu-email{font-size: 1.05rem;color: var(--black2);white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}
.site-login-menu-item{display: flex !important;align-items: center;gap: 0.8rem;}
.site-login-menu-item-icon{width: 1.5rem;height: 1.5rem;display: inline-block;background: currentColor;flex-shrink: 0;opacity: 0.7;}
.site-login-menu-item-icon[data-icon="mypage"]{-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/><circle cx='12' cy='7' r='4'/></svg>") center / contain no-repeat;mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/><circle cx='12' cy='7' r='4'/></svg>") center / contain no-repeat;}
.site-login-menu-item-icon[data-icon="reserve"]{-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='4' width='18' height='18' rx='2' ry='2'/><line x1='16' y1='2' x2='16' y2='6'/><line x1='8' y1='2' x2='8' y2='6'/><line x1='3' y1='10' x2='21' y2='10'/></svg>") center / contain no-repeat;mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='4' width='18' height='18' rx='2' ry='2'/><line x1='16' y1='2' x2='16' y2='6'/><line x1='8' y1='2' x2='8' y2='6'/><line x1='3' y1='10' x2='21' y2='10'/></svg>") center / contain no-repeat;}
.site-login-menu-item-icon[data-icon="logout"]{-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/><polyline points='16 17 21 12 16 7'/><line x1='21' y1='12' x2='9' y2='12'/></svg>") center / contain no-repeat;mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/><polyline points='16 17 21 12 16 7'/><line x1='21' y1='12' x2='9' y2='12'/></svg>") center / contain no-repeat;}
@media (max-width: 768px){.site-login{right: 5.8rem;top: 1.3rem;width: 3.6rem;height: 3.6rem;}
.site-login-icon{width: 1.3rem;height: 1.3rem;}
}
@media (min-width: 769px){.site-login{top: 2.2rem;right: 2.4rem;}
}
.site-phone{display: none;appearance: none;-webkit-appearance: none;position: fixed;top: 1.9rem;width: 4.2rem;height: 4.2rem;border: 1px solid var(--border);border-radius: 50%;background: #fff;color: var(--black2);cursor: pointer;z-index: 10001;align-items: center;justify-content: center;transition: border-color 0.2s ease,color 0.2s ease,background 0.2s ease,transform 0.2s ease;}
@media (min-width: 769px){.site-phone{display: inline-flex;right: 7rem;}
}
.site-phone:hover{border-color: var(--green);color: var(--green);background: rgba(75,147,104,0.04);transform: scale(1.05);}
.site-phone-icon{width: 1.8rem;height: 1.8rem;display: inline-block;background: currentColor;-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/></svg>") center / contain no-repeat;mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/></svg>") center / contain no-repeat;}
.site-phone-popup{background: #fff;border: 1px solid var(--border);border-radius: 1rem;box-shadow: 0 1rem 3rem rgba(0,0,0,0.18);padding: 1.8rem 2rem;min-width: 28rem;max-width: 32rem;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;}
.site-phone-popup[hidden]{display: none !important;}
.site-phone-popup-title{font-size: 1.15rem;color: var(--black2);letter-spacing: 0.06em;margin: 0 0 0.6rem;text-align: center;}
.site-phone-popup-number{display: block;font-family: "Zen Old Mincho",serif;font-size: 2.6rem;font-weight: 600;letter-spacing: 0.04em;color: var(--green);text-decoration: none;text-align: center;margin: 0 0 1.2rem;transition: opacity 0.2s ease;}
.site-phone-popup-number:hover{opacity: 0.8;}
.site-phone-popup-info{margin: 0 0 1rem;padding: 1rem 1.2rem;background: #fafaf9;border-radius: 0.6rem;font-size: 1.2rem;}
.site-phone-popup-row{display: flex;justify-content: space-between;align-items: baseline;gap: 0.8rem;padding: 0.3rem 0;}
.site-phone-popup-row dt{color: var(--black2);font-weight: 500;margin: 0;}
.site-phone-popup-row dd{margin: 0;color: var(--black);}
.site-phone-popup-note{font-size: 1rem;color: var(--black2);opacity: 0.7;line-height: 1.5;margin: 0;}
.site-phone-popup-multi{min-width: 30rem;max-width: 36rem;}
.site-phone-store-list{list-style: none;margin: 0 0 1rem;padding: 0;display: flex;flex-direction: column;gap: 0.6rem;}
.site-phone-store-item{display: grid;grid-template-columns: auto 1fr;grid-template-rows: auto auto;column-gap: 0.8rem;row-gap: 0.2rem;padding: 0.9rem 1rem;background: #fafaf9;border-radius: 0.6rem;align-items: baseline;}
.site-phone-store-name{grid-row: 1;grid-column: 1;font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-weight: 600;font-size: 1.3rem;color: var(--black);letter-spacing: 0.04em;}
.site-phone-store-tel{grid-row: 1;grid-column: 2;justify-self: end;font-family: "cardo",serif;font-size: 1.6rem;font-weight: 600;color: var(--green);text-decoration: none;letter-spacing: 0.15em;transition: opacity 0.2s ease;color: var(--black2) !important;}
.site-phone-store-tel:hover{opacity: 0.8;}
.site-phone-store-hours{grid-row: 2;grid-column: 1 / -1;font-size: 1.1rem;color: var(--black2);opacity: 0.72;letter-spacing: 0.03em;}
.site-login-menu{background: #fff;border: 1px solid var(--border);border-radius: 0.8rem;box-shadow: 0 0.6rem 1.6rem rgba(0,0,0,0.12);min-width: 14rem;padding: 0.4rem;display: flex;flex-direction: column;}
.site-login-menu[hidden]{display: none !important;}
.site-login-menu-item{appearance: none;-webkit-appearance: none;background: transparent;border: none;text-align: left;font-family: inherit;font-size: 1.25rem;color: var(--black);padding: 0.9rem 1.2rem;border-radius: 0.5rem;cursor: pointer;text-decoration: none;letter-spacing: 0.04em;transition: background 0.15s ease;}
.site-login-menu-item:hover{background: rgba(75,147,104,0.08);color: var(--green);}
.voice-2-teacher-img{display: block;width: 60%;height: 14rem;object-fit: cover;object-position: center 7%;border-radius: 0.6rem;margin: 0.8rem auto 1.2rem;}
#voice-2-modal .voice-2-teacher-img{width: 100%;height: auto;max-height: 22rem;border-radius: 1rem;margin: 0 auto 1.2rem;}
#voice-2-modal .voice-modal-body{display: none;}
#voice-2-modal .voice-modal-title{font-size: 1.35rem;line-height: 2;}
.voice-2-box-bottom h3{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.4rem;font-weight: 400;letter-spacing: 0.05em;margin-top: 1rem;line-height: 1.75;margin-bottom: 2rem;color: var(--black2);display: -webkit-box;-webkit-line-clamp: 2;line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;text-overflow: ellipsis;}
.voice-2-face{width: 12rem;position: absolute;top: -5rem;left: 50%;transform: translateX(-50%);}
.media{padding-bottom: 10rem;padding-top: 6rem;position: relative;z-index: 8;background: #fff;}
.media-box h3{font-size: 1.8rem;margin-bottom: 2rem;letter-spacing: 0.05em;margin-top: 2rem;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;}
.media-time-box{display: flex;gap: 1rem;align-items: center;}
.media-time-box .time{font-size: 1.2rem;color: var(--black2);}
.media-time-box .cate{font-size: 1.4rem;font-family: "Zen Old Mincho",sans-serif;border: 1px solid #ccc;padding: 0.2rem 1rem 0;}
.media-box img{border-radius: 1rem;}
.media .button,.voice-2 .button{margin-top: 2.4rem;}
.assess{padding-top: 6rem;padding-bottom: 8rem;position: relative;z-index: 10;background: #fff;}
.assess::before{content: "";width: 100%;height: 40rem;background: url(/salon/images/kumo.webp);background-size: cover;position: absolute;bottom: -18rem;left: 0;z-index: -1;}
.assess h2{text-align: center;}
.assess h2 span{width: 100% !important;text-align: center;padding-left: 1rem;}
.center-h2 h2{text-align: center;display: block;width: 100%;margin-bottom: 4rem;}
.assess .assess-wrap{position: relative;z-index: 600;}
.center-h2 h2 .small{padding-left: 1rem;display: block;width: 100%;font-size: 4.8rem;}
.assess-box img{border-radius: 1rem;}
.assess-box h3{font-size: 2rem;margin-top: 1.4rem;margin-bottom: 0.6rem;letter-spacing: 0.1em;display: -webkit-box;-webkit-line-clamp: 2;line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;text-overflow: ellipsis;}
.assess-box p{display: -webkit-box;-webkit-line-clamp: 2;line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;text-overflow: ellipsis;line-height: 1.75;}
.column{background: url(/salon/images/people-2-back.webp);background-size: cover;position: relative;padding-top: 22rem;padding-bottom: 22rem;z-index: 2;content-visibility: initial !important;}
.column::before{content: "";width: 100%;height: 40rem;background: url(/salon/images/kumo-2.webp);background-size: cover;position: absolute;bottom: -20rem;left: 0;z-index: 1;}
.shizuku-8{right: -6rem;top: -4rem;z-index: 100;display: none;}
.shizuku-9{right: 30rem;width: 12rem;height: 12rem;top: 8rem;z-index: 100;display: none;}
.column .button{margin-top: 4rem;}
.column h3{font-size: 1.5rem;letter-spacing: 0.05em;display: -webkit-box;-webkit-line-clamp: 2;line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;text-overflow: ellipsis;}
.column-box img{border-radius: 1rem;}
.column-cate-box{display: flex;gap: 0.6rem;align-items: center;margin-top: 1.4rem;margin-bottom: 1rem;}
.column-cate-box .cate-1{border: 0.6px solid var(--black3);padding: 0.4rem 1rem 0.5rem;line-height: 1;font-family: "Zen Old Mincho",sans-serif;letter-spacing: 0;font-size: 1.4rem;}
.column-cate-box .cate-2{background: var(--black2);text-align: center;color: #fff;padding: 0.38rem 1rem 0.48rem;line-height: 1;font-family: "Zen Old Mincho",sans-serif;letter-spacing: 0;font-size: 1.4rem;}
.column-cate-box .time{font-size: 1.4rem;}
.news-cate-box{display: flex;gap: 0.6rem;align-items: center;margin-bottom: 1rem;flex-wrap: wrap;}
.news-cate-box .cate-1{border: 0.6px solid;padding: 0.4rem 1rem 0.3rem;line-height: 1;font-family: "Zen Old Mincho",sans-serif;letter-spacing: 0;font-size: 1.3rem;}
.news-cate-box .cate-2{background: var(--black2);text-align: center;color: #fff;padding: 0.5rem 1rem 0.4rem;line-height: 1;font-family: "Zen Old Mincho",sans-serif;letter-spacing: 0;font-size: 1.3rem;}
.news-cate-box .time{font-size: 1.3rem;}
.news{background: #fff;position: relative;padding-top: 2rem;padding-bottom: 6rem;z-index: 9;content-visibility: initial !important;}
.news-wrap{display: flex;flex-wrap: wrap;gap: 2.4rem;margin-top: 4rem;}
.news-box{display: block;border-bottom: 1px solid #ccc;width: 100%;color: inherit;text-decoration: none;}
.news-box[hidden],.column-box[hidden]{display: none !important;}
.news-box h3{font-size: 1.6rem;font-weight: 600;margin-top: 0.8rem;padding-bottom: 0.6rem;letter-spacing: 0.05em;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 2;line-clamp: 2;overflow: hidden;max-width: 100%;min-width: 0;}
.news-box .cate{background: var(--black2);text-align: center;color: #fff;padding: 0.4rem 1rem 0.5rem;line-height: 1;font-family: "Zen Old Mincho",sans-serif;letter-spacing: 0;font-size: 1.4rem;margin-right: 0.4rem;}
.news-box .time{font-size: 1.2rem;letter-spacing: 0;color: var(--black2);}
.news .button{margin-top: 4rem;}
.faq{background: url(/salon/images/people-2-back.webp);background-size: cover;padding-top: 22rem;padding-bottom: 22rem;position: relative;z-index: 8;content-visibility: initial !important;}
.faq::after{content: "";width: 100%;height: 40rem;background: url(/salon/images/kumo.webp);background-size: cover;position: absolute;top: -22rem;left: 0;z-index: -1;}
.faq::before{content: "";width: 100%;height: 40rem;background: url(/salon/images/kumo-2.webp);background-size: cover;position: absolute;bottom: -21rem;left: 0;z-index: 1;}
.faq-wrap{width: 100%;display: flex;flex-wrap: wrap;gap: 2.4rem;margin-top: 4rem;}
.faq-box{background: #fff;width: 100%;padding: 1.2rem 2rem 1rem;position: relative;background: rgba(255,255,255,0.3);backdrop-filter: blur(1rem) saturate(180%);-webkit-backdrop-filter: blur(1rem) saturate(180%);border-radius: 0.6rem;border: 0.0625rem solid rgb(255,255,255);box-shadow:
0 0.5rem 0.5rem rgba(0,0,0,0.05),inset 0 0.0625rem 0 rgba(255,255,255,0.05),inset 0 -0.0625rem 0.125rem rgba(0,0,0,0.005);}
.faq-q{display: flex;align-items: center;padding: 1.25rem 0.5rem;cursor: pointer;font-size: 1.4rem;}
.q-txt{font-size: 3.2rem;position: absolute;top: -2rem;left: -1rem;font-family: "Cardo","Zen Old Mincho",sans-serif;}
.faq-q p{flex: 1;margin: 0;font-size: 1.5rem;line-height: 1.7;color: var(--black);font-weight: 500;font-family: "Zen Old Mincho",sans-serif;font-weight: 600;letter-spacing: 0;}
.icon{position: relative;width: 2.8rem;height: 2.8rem;background: var(--black2);border-radius: 50%;padding: 1rem;transform: translateX(0.8rem);}
.icon::before,.icon::after{content: "";position: absolute;background-color: #fff;top: 50%;left: 50%;transform: translate(-50%,-50%);transition: transform 0.3s ease,opacity 0.3s ease;}
.icon::before{width: 30%;height: 0.0625rem;}
.icon::after{width: 0.0625rem;height: 30%;}
.faq-box.is-open .icon::after{transform: translate(-50%,-50%) rotate(90deg);opacity: 0;}
.faq-a{display: grid;grid-template-rows: 0fr;transition: grid-template-rows 0.55s cubic-bezier(0.22,1,0.36,1),opacity 0.45s ease;overflow: hidden;opacity: 0;}
.faq-box.is-open .faq-a{grid-template-rows: 1fr;opacity: 1;}
.faq-a-inner{min-height: 0;overflow: hidden;padding: 1.6rem 0.5rem 1rem 0.5rem;border-top: 0.0625rem solid var(--gray2);font-size: 1.3rem;line-height: 2;letter-spacing: 0.05em;color: var(--black2);}
.faq-box:not(.is-open) .faq-a-inner{padding: 0;border-top: 0;}
.faq-a-inner a{color: var(--green);text-decoration: underline;text-underline-offset: 0.3em;text-decoration-thickness: 1px;}
.faq-a-inner a:hover{opacity: 0.7;}
.message{padding-top: 4rem;padding-bottom: 4rem;position: relative;z-index: 8;background: #fff;content-visibility: initial !important;}
.message p{line-height: 2.4;margin-bottom: 4rem;margin-top: 6.4rem;font-size: 1.6rem;letter-spacing: 0.1em;}
.reserve .sec_inner{position: absolute;top: 32rem;left: 8%;}
.reserve .title{padding: 0;text-align: center;letter-spacing: 0.2em;}
.reserve .title .small{margin-left: 52%;transform: translateX(-50%);color: var(--green);}
.reserve .button{width: 80%;margin: 0 auto;margin-bottom: 1.4rem;}
.reserve .cta-button{width: 80%;margin: 0 auto;}
.top-fix-4{margin-top: -14rem;height: 76rem;position: relative;z-index: 6;}
.footer{position: relative;background: var(--shibuya-main3);padding: 0rem 0 3rem;color: var(--black);}
.footer::before{content: "";position: absolute;bottom: 0;left: 0;right: 0;height: 1px;background: linear-gradient(to right,transparent,rgba(19,191,154,0.4),rgba(38,248,203,0.5),rgba(19,191,154,0.4),transparent);}
.footer-inner{width: var(--in);max-width: 110rem;margin: 0 auto;}
.footer-inner{width: var(--in);max-width: 64rem;margin: 0 auto;}
.footer-top{display: block;}
.footer-brand{text-align: center;padding-bottom: 3rem;border-bottom: 1px solid rgba(126,126,126,0.16);}
.footer-brand .footer-logo{width: 18rem;height: auto;margin: 0 auto 1.6rem;display: block;}
.footer-nav{display: block;}
.page-register .footer-nav,.page-review .footer-nav,.is-signup .footer-nav{display: none;}
.is-signup .site-header{display: none;}
.page-review .site-header{display: none;}
.is-signup-complete .site-header,.is-signup-complete .footer{display: none;}
.page-register .single-top h1{font-size: 4rem;}
.people-voice-more{display: block;width: 80%;max-width: 32rem;margin: 2rem auto 0;}
.voice-2-wrap>.voice-2-box[data-gender][data-pickup],.review-modal-list>.voice-2-box[data-gender][data-pickup],.voice-all-grid.is-teacher-filtered>.voice-2-box[data-gender][data-pickup]{order: -1;}
.voice-2-box[data-gender][data-pickup]::after{content: "PICK UP";position: absolute;bottom: 3.4rem;left: 2.5rem;background: var(--green);color: #fff;padding: 0.35rem 0.9rem 0.4rem;font-family: "Cardo","Zen Old Mincho",serif;font-size: 1.2rem;font-weight: 400;letter-spacing: 0.1em;line-height: 1;z-index: 2;pointer-events: none;box-shadow: 0 0.2rem 0.6rem rgba(121,164,118,0.35);}
.voice-2-box[data-teacher] .voice-2-name-box .name{cursor: pointer;display: inline-block;border-bottom: 1px solid var(--black3);padding-bottom: 0.2em;text-decoration: none;transition: color 0.2s ease,border-color 0.2s ease;}
.voice-2-box[data-teacher] .voice-2-name-box .name:hover{color: var(--green);border-bottom-color: var(--green);}
.voice-2-box[data-gender][data-pickup]{background:
radial-gradient(ellipse at 30% 18%,rgba(230,230,230,0.6) 0%,transparent 55%),radial-gradient(ellipse at 80% 95%,rgba(220,220,220,0.3) 0%,transparent 60%),linear-gradient(135deg,rgba(121,164,118,0.24) 0%,rgba(121,164,118,0.12) 100%) !important;}
.voice-all-grid .voice-2-box[data-gender][data-pickup]::after{bottom: 15.4rem;}
.voice-all-grid:not(.is-teacher-filtered) .voice-2-box[data-gender][data-pickup]::after{display: none;}
.voice-all-grid:not(.is-teacher-filtered) .voice-2-box[data-gender][data-pickup]{background:
radial-gradient(ellipse at 30% 18%,rgba(234,234,234,0.65) 0%,transparent 55%),radial-gradient(ellipse at 80% 95%,rgba(220,220,220,0.35) 0%,transparent 60%),linear-gradient(135deg,rgba(255,255,255,0.45) 0%,rgba(230,230,230,0.3) 100%) !important;}
.review-modal .voice-modal-inner{padding-top: 6rem;}
.review-modal-title{font-family: "Zen Old Mincho","Noto Serif JP",serif;font-size: 2rem;text-align: center;margin: 0 0 1rem;letter-spacing: 0.15em;color: var(--black);font-weight: 600;}
.review-modal-list{display: flex;flex-direction: column;gap: 7rem;padding: 5rem 0 0;}
.review-modal-list>.voice-2-box{flex: 0 0 auto;width: 100%;scroll-snap-align: none;margin-right: 0;}
.review-modal-more{display: block;width: 90%;max-width: 32rem;margin: 4rem auto 2rem;}
.page-review .single-top h1{font-size: 3.2rem;}
.page-review .single-top .review-ask-lead{font-family: "Zen Old Mincho","Noto Serif JP",serif;font-size: 1.5rem;line-height: 1.9;color: var(--black2);letter-spacing: 0.08em;text-align: center;margin: 1.6rem auto 0;}
.page-review .single-top .review-ask-lead strong{color: var(--green);font-weight: 600;letter-spacing: 0.12em;font-size: 1.55rem;}
.review-sticky-cta{position: fixed;left: 0;right: 0;bottom: 0;z-index: 100;display: flex;justify-content: center;padding: 1rem 1.4rem calc(1rem + env(safe-area-inset-bottom));background: linear-gradient(to top,rgba(255,255,255,0.96) 70%,rgba(255,255,255,0));pointer-events: none;}
.review-sticky-cta-button{pointer-events: auto;position: relative;display: inline-flex;align-items: center;justify-content: center;gap: 0.8rem;width: 92%;max-width: none;padding: 2rem 4rem;background: var(--green);color: #fff !important;font-size: 1.5rem;font-weight: 600;letter-spacing: 0.1em;text-decoration: none;border-radius: 999px;box-shadow: 0 0.6rem 1.8rem rgba(0,0,0,0.18);}
.review-sticky-cta-star{color: #fff;font-size: 1.6rem;line-height: 1;}
.page-review .footer{padding-bottom: calc(9rem + env(safe-area-inset-bottom));}
.page-review .reserve .cta-button{width: 100%;padding: 2.4rem 0;font-size: 1.6rem;}
.page-review .reserve .cta-button .review-sticky-cta-star{margin-right: 0.6rem;}
.page-review .reserve .title{font-size: 3.2rem;}
.page-review .single-top h1 img.small,.page-review .reserve .title img.small{display: block;width: auto;height: auto;max-width: 28rem;margin: 0 auto 1.6rem;transform: none;}
.page-review .review-voice-list .slider-container{width: calc(100vw - 6rem);margin-left: calc(-1 * (8vw - 3rem));padding-left: 0;}
.page-review .review-voice-list .voice-2-box{flex: 0 0 calc(100% / 1.1);width: calc(100% / 1.1);max-width: calc(100% / 1.1);scroll-snap-align: start;}
.page-review .review-voice-list .voice-2-wrap>*:last-child{margin-right: 0;}
.page-review .page-contact .review-voice-list .slider-container .slider-prev,.page-review .page-contact .review-voice-list .slider-container .slider-next{display: block;}
.page-review .review-voice-list .slider-prev{top: 20rem;left: -2rem;}
.page-review .review-voice-list .slider-next{top: 20rem;right: -2rem;}
@media (min-width: 481px){.page-review .review-voice-list .slider-container{width: calc(420px - 6rem);margin-left: calc((100% - (420px - 6rem)) / 2);}
.review-sticky-cta{left: 50%;right: auto;transform: translateX(-50%);width: 420px;max-width: 100vw;}
}
.page-review .top-fix.has-bg-parallax,.page-review .top-fix.top-fix-4{height: 92rem;}
.page-review .voice-2-box[data-gender] .voice-foot,.is-people-single .voice-2-box[data-gender] .voice-foot{border-bottom: none;padding-bottom: 0;margin-bottom: 0;}
.page-review .reserve .review-cta-lead{font-family: "Zen Old Mincho","Noto Serif JP",serif;font-size: 1.35rem;line-height: 2;color: var(--black);letter-spacing: 0.08em;text-align: center;margin: 1.6rem auto 2.4rem;}
.page-review .reserve .review-cta-note{font-size: 1.05rem;color: var(--black2);letter-spacing: 0.04em;line-height: 1.8;text-align: center;margin: 1.8rem auto 0;}
.footer-col{padding: 2.6rem 0;border-bottom: 1px solid rgba(126,126,126,0.16);text-align: center;}
.footer-col-title{font-family: "Zen Old Mincho",serif;font-size: 1.6rem;font-weight: 600;margin-bottom: 1.4rem;letter-spacing: 0.08em;text-align: center;}
.footer-col-title .en{display: block;font-family: sans-serif;font-size: 1rem;font-weight: 400;letter-spacing: 0.18em;color: var(--green);margin-top: 0.3rem;}
.footer-col-list{display: flex;flex-wrap: wrap;justify-content: center;gap: 0.6rem 3rem;margin: 0;padding: 0;list-style: none;}
.footer-col-list a{display: inline-block;font-size: 1.2rem;line-height: 1.7;letter-spacing: 0.05em;color: var(--black2);text-decoration: none;transition: color 0.4s ease,opacity 0.4s ease;}
.footer-col-list a:hover{color: var(--green);}
.footer-info{padding: 2.6rem 0;background: none;backdrop-filter: none;-webkit-backdrop-filter: none;border: none;border-bottom: 1px solid rgba(126,126,126,0.16);border-radius: 0;box-shadow: none;margin-bottom: 0;}
.footer-info-list{display: flex;flex-direction: column;gap: 0.6rem;width: max-content;max-width: 100%;margin: 0 auto;}
.footer-info-row{display: grid;grid-template-columns: auto auto;gap: 2.4rem;align-items: baseline;font-size: 1.2rem;line-height: 1.8;text-align: left;}
.footer-info-row dt{font-weight: 500;letter-spacing: 0.06em;font-size: 1.15rem;}
.footer-info-row dt::before{display: none;}
.footer-info-row dd{margin: 0;color: var(--black2);letter-spacing: 0.04em;}
.footer-info-row dd a{color: var(--black2);text-decoration: none;transition: color 0.4s ease;}
.footer-info-row dd a:hover{color: var(--green);}
.footer-bottom{padding-top: 2.4rem;text-align: center;border-top: none;}
.footer-copy{font-family: sans-serif;font-size: 1.05rem;letter-spacing: 0.2em;color: var(--black2);}
.error-page{position: relative;min-height: 60rem;display: flex;flex-wrap: wrap;align-items: center;justify-content: center;padding: 16rem 0 12rem !important;overflow: hidden;background: #fff;border-radius: 25rem 25rem 0 0 !important;}
@media (max-width: 768px){.error-page{border-radius: 0 !important;}
}
.error-page::before,.error-page::after{content: "";position: absolute;border-radius: 50%;background: radial-gradient(circle,rgba(255,255,255,0.85),rgba(255,255,255,0.4) 40%,transparent 70%);filter: blur(3rem);pointer-events: none;z-index: 0;}
.error-page::before{width: 40rem;height: 40rem;top: -10rem;left: -8rem;animation: errorCloudFloat 18s ease-in-out infinite;}
.error-page::after{width: 36rem;height: 36rem;bottom: -10rem;right: -6rem;animation: errorCloudFloat 22s ease-in-out infinite reverse;}
@keyframes errorCloudFloat{0%,100%{transform: translate(0,0) scale(1);}
50%{transform: translate(3rem,-1.5rem) scale(1.08);}
}
.error-page-inner{position: relative;z-index: 1;width: var(--in);margin: 0 auto;text-align: center;}
.error-en{font-family: sans-serif;font-size: 1.4rem;letter-spacing: 0.5em;color: var(--green);margin-bottom: 0.6rem;text-transform: uppercase;font-family: "cardo",serif;}
.error-code{font-family: "cardo",serif;font-size: 14rem;font-weight: 400;line-height: 1;letter-spacing: 0.2em;margin: 0 0 1rem;background-image: linear-gradient(110deg,var(--black) 0%,var(--black) 38%,#b88a3a 47%,#fff3b8 50%,#b88a3a 53%,var(--black) 62%,var(--black) 100%);background-size: 220% 100%;background-position: 100% 0;background-repeat: no-repeat;-webkit-background-clip: text;background-clip: text;-webkit-text-fill-color: transparent;color: transparent;animation: titleShimmer 7.5s ease-in-out infinite;margin-left: 1.5rem;}
.error-message{font-family: "Zen Old Mincho",serif;font-size: 1.6rem;line-height: 2;letter-spacing: 0.05em;color: var(--black);margin-bottom: 4rem;}
@media (max-width: 480px){html.is-bg-loaded::before{background: url(/salon/images/back-grade-sp.webp);}
.error-page{padding: 12rem 0 9rem;min-height: 60vh;}
.error-message{font-size: 1.3rem;line-height: 2;margin-bottom: 3rem;}
.error-back-btn{font-size: 1.3rem;padding: 1.6rem 4rem;}
}
.not-reserve .top-fix::before{top: -25rem;}
.not-reserve .top-fix-4{margin-top: 0;height: 58rem;}
.not-reserve .sec_inner{top: 12rem;}
.slider-container{position: relative;width: 100%;padding: 0 0;box-sizing: border-box;}
.slider-container>[class*="-wrap"]>*:last-child,.slider-container>[class*="-slider"]>*:last-child{margin-right: 8vw;}
.flow .slider-container>.flow-steps>*:last-child{margin-right: 8vw;}
.slider-container>[class*="-wrap"]:has(> *:only-child),.slider-container>[class*="-slider"]:has(> *:only-child){padding-left: 8%;padding-right: 8%;}
.slider-container>[class*="-wrap"]>*:only-child,.slider-container>[class*="-slider"]>*:only-child{flex: 0 0 100%;width: 100%;max-width: 100%;margin-right: 0;}
.slider-container:has(> [class*="-wrap"] > *:only-child) > .slider-prev,.slider-container:has(> [class*="-wrap"] > *:only-child) > .slider-next,.slider-container:has(> [class*="-slider"] > *:only-child) > .slider-prev,.slider-container:has(> [class*="-slider"] > *:only-child) > .slider-next{display: none !important;}
.slider-container:has(> [class*="-wrap"] > *:only-child),.slider-container:has(> [class*="-slider"] > *:only-child){padding-left: 0 !important;padding-right: 0 !important;margin-left: 0 !important;margin-right: 0 !important;}
.slider-container:has(> [class*="-wrap"] > *:only-child) > [class*="-wrap"],.slider-container:has(> [class*="-slider"] > *:only-child) > [class*="-slider"]{margin-left: 0 !important;margin-right: 0 !important;}
.media-wrap{display: flex;gap: 2rem;overflow-x: auto;scroll-snap-type: x mandatory;-webkit-overflow-scrolling: touch;scrollbar-width: none;}
.media-wrap::-webkit-scrollbar{display: none;}
.media-box{flex: 0 0 calc((100% - 2rem) / 1.2);scroll-snap-align: start;display: block;color: inherit;text-decoration: none;}
.slider-prev,.slider-next{display: none;position: absolute;top: 25%;transform: translateY(-50%);background: var(--black3);color: #fff;border: none;width: 4rem;height: 4rem;border-radius: 50%;cursor: pointer;z-index: 5;}
.slider-prev[hidden],.slider-next[hidden]{display: none !important;}
.slider-prev{left: 0.8rem;}
.slider-next{right: 4.8rem;}
@media (min-width: 1024px){.slider-prev,.slider-next{display: block;}
.media-box{flex: 0 0 calc((100% - 2rem) / 1.2);}
}
.voice-2-wrap{display: flex;gap: 2.5rem;overflow-x: auto;scroll-snap-type: x mandatory;scrollbar-width: none;-webkit-overflow-scrolling: touch;padding-top: 6rem;padding-bottom: 2rem;}
.voice-2-wrap::-webkit-scrollbar{display: none;}
.voice-2-box{flex: 0 0 calc((100% - 2rem) / 1.2);scroll-snap-align: start;box-sizing: border-box;border: 1px solid #fff;}
.voice-wrap{display: flex;gap: 2rem;padding-bottom: 1rem;overflow-x: auto;scroll-snap-type: x mandatory;scrollbar-width: none;-webkit-overflow-scrolling: touch;}
.voice-wrap::-webkit-scrollbar{display: none;}
.voice-box{flex: 0 0 calc((100% - 2rem) / 1.2);scroll-snap-align: start;}
.assess-tabs{display: grid;grid-template-columns: repeat(2,1fr);gap: 0.8rem 0.6rem;margin: 4rem auto 2.8rem;padding: 0 5%;max-width: 40rem;}
.assess-tab{appearance: none;-webkit-appearance: none;background: #fff;border: 1px solid var(--border);border-radius: 40rem;padding: 0.9rem 1.4rem;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.25rem;font-weight: 600;letter-spacing: 0.08em;color: var(--black2);cursor: pointer;outline: none;text-align: center;transition: background 0.25s ease,color 0.25s ease,border-color 0.25s ease,box-shadow 0.25s ease;}
.assess-tab:hover{border-color: var(--black2);color: var(--black2);}
.assess-tab.is-active{background: var(--black2);border-color: var(--black2);color: #fff;box-shadow: 0 0.3rem 0.8rem rgba(102,127,134,0.25);}
.assess-wrap{display: flex;gap: 2rem;overflow-x: auto;scroll-snap-type: x mandatory;scrollbar-width: none;-webkit-overflow-scrolling: touch;transition: opacity 0.28s ease,transform 0.28s ease;}
.assess-wrap.is-fading{opacity: 0;transform: translateY(0.8rem);pointer-events: none;}
.assess-wrap::-webkit-scrollbar{display: none;}
.assess-box{flex: 0 0 calc((100% - 2rem) / 1.2);scroll-snap-align: start;}
.assess .assess-wrap>.assess-box:not([hidden]):last-child,.assess .assess-wrap>.assess-box:not([hidden]):has(+ [hidden]){margin-right: 8vw;}
.page-column,.page-column{padding-top: 4rem !important;}
.page .news-wrap{margin-top: 4.8rem;}
.column-wrap{display: flex;gap: 2rem;overflow-x: auto;scroll-snap-type: x mandatory;scrollbar-width: none;-webkit-overflow-scrolling: touch;transition: opacity 0.28s ease,transform 0.28s ease;}
.column-wrap.is-fading{opacity: 0;transform: translateY(0.8rem);pointer-events: none;}
.column-wrap::-webkit-scrollbar{display: none;}
.column-box{flex: 0 0 calc((100% - 2rem) / 1.2);scroll-snap-align: start;text-decoration: none;color: inherit;}
.column-tabs,.news-tabs{display: flex;flex-wrap: wrap;justify-content: center;gap: 0.4rem;margin: 0 auto 2.8rem;padding: 0;}
.column-tab,.news-tab{appearance: none;-webkit-appearance: none;background: #fff;border: 1px solid var(--border);border-radius: 40rem;padding: 0.8rem 1.8rem;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.25rem;font-weight: 500;letter-spacing: 0.06em;color: var(--black2);cursor: pointer;outline: none;transition: background 0.25s ease,color 0.25s ease,border-color 0.25s ease,box-shadow 0.25s ease;}
.column-tab:hover,.news-tab:hover{border-color: var(--black2);color: var(--black2);}
.column-tab.is-active,.news-tab.is-active{background: var(--black2);border-color: var(--black2);color: #fff;font-weight: 600;box-shadow: 0 0.3rem 0.8rem rgba(102,127,134,0.25);}
.column-tabs:not(.column-cate-tabs),.news-tabs:not(.news-cate-tabs){margin-bottom: 2.4rem;}
.column-tabs:not(.column-cate-tabs) .column-tab,.news-tabs:not(.news-cate-tabs) .news-tab{padding: 0.8rem 1.8rem;font-size: 1.25rem;font-weight: 600;letter-spacing: 0.08em;}
.column-tabs:not(.column-cate-tabs) .column-tab.is-active,.news-tabs:not(.news-cate-tabs) .news-tab.is-active{background: var(--green);border-color: var(--green);color: #fff;box-shadow: 0 0.3rem 0.8rem rgba(75,147,104,0.25);}
.column-cate-tabs,.news-cate-tabs{gap: 0.4rem 0.8rem;margin-bottom: 3rem;}
.column-cate-tabs .column-tab,.news-cate-tabs .news-tab{background: transparent;border: none;padding: 0.45rem 0.9rem;font-size: 1.1rem;font-weight: 500;letter-spacing: 0.04em;color: var(--black2);border-radius: 0.4rem;position: relative;}
.column-cate-tabs .column-tab:hover,.news-cate-tabs .news-tab:hover{background: rgba(102,127,134,0.08);border-color: transparent;color: var(--black2);}
.column-cate-tabs .column-tab.is-active,.news-cate-tabs .news-tab.is-active{background: transparent;border-color: transparent;color: var(--black2);font-weight: 600;box-shadow: none;}
.column-cate-tabs .column-tab.is-active::after,.news-cate-tabs .news-tab.is-active::after{content: "";position: absolute;left: 0.9rem;right: 0.9rem;bottom: 0.1rem;height: 1px;background: var(--black2);}
.page .column-wrap,.page .news-wrap{flex-direction: column;overflow-x: visible;scroll-snap-type: none;}
.page .column-wrap .column-box,.page .news-wrap .news-box{flex: none;width: 100%;scroll-snap-align: none;}
.page .slider-container .slider-prev,.page .slider-container .slider-next{display: none;}
.page.related-column .column-wrap{flex-direction: row;overflow-x: auto;scroll-snap-type: x mandatory;gap: 2.4rem;}
.page.related-column .column-wrap .column-box{flex: 0 0 calc((100% - 2rem) / 1.2);width: auto;scroll-snap-align: start;}
.page.related-column .slider-container{width: calc(100% + min(8vw,33.6px));margin-left: 0;}
.page.related-column .slider-container .slider-prev,.page.related-column .slider-container .slider-next{display: none;top: 15rem;}
@media (min-width: 1024px){.page.related-column .slider-container .slider-prev,.page.related-column .slider-container .slider-next{display: block;}
}
.news-wrap{transition: opacity 0.28s ease,transform 0.28s ease;}
.news-wrap.is-fading{opacity: 0;transform: translateY(0.8rem);pointer-events: none;}
.column-pagination,.news-pagination{display: flex;align-items: center;justify-content: center;gap: 0.6rem;margin-top: 6.4rem;flex-wrap: wrap;margin-bottom: 2.4rem;}
.column-pagination button,.news-pagination button{appearance: none;-webkit-appearance: none;background: #fff;border: 1px solid rgba(0,0,0,0.15);border-radius: 0.6rem;padding: 0.8rem 1.2rem;min-width: 3.6rem;height: 3.6rem;font-family: inherit;font-size: 1.3rem;color: var(--black2);cursor: pointer;transition: background 0.2s ease,border-color 0.2s ease,color 0.2s ease;display: inline-flex;align-items: center;justify-content: center;}
.column-pagination button:hover,.news-pagination button:hover{border-color: var(--green);color: var(--green);}
.column-pagination button.is-active,.news-pagination button.is-active{background: var(--black2);color: #fff;border-color: var(--black2);}
.column-pagination button[disabled],.news-pagination button[disabled]{opacity: 0.35;pointer-events: none;}
.column-page-prev .arrow-black,.column-page-next .arrow-black,.news-page-prev .arrow-black,.news-page-next .arrow-black{width: 1.1rem;height: 1.3rem;}
.column-page-prev .arrow-black,.news-page-prev .arrow-black{transform: scaleX(-1);}
.column .slider-prev,.column .slider-next{top: 35%;}
.page-top-media h1{font-size: 3.8rem !important;}
.page-top h1 .small{padding-left: 1rem;}
.store .slider-container,.voice .slider-container,.voice-2 .slider-container,.media .slider-container,.column .slider-container,.news .slider-container,.assess .slider-container{padding-left: var(--sp_inner);}
.store .slider-prev,.store .slider-next{top: 15rem;}
.voice-2 .slider-prev,.voice-2 .slider-next{top: 21rem;}
.media .slider-prev,.media .slider-next{top: 30%;}
.people-voice-2 .slider-prev,.people-voice-2 .slider-next{top: 38%;}
.people-voice .voice-2-wrap{padding-top: 6rem;margin-top: -4rem;margin-bottom: -10rem;}
.people-voice .slider-prev,.people-voice .slider-next{top: 19rem;}
.assess .slider-prev,.assess .slider-next{top: 35%;z-index: 700;}
.voice .slider-prev,.voice .slider-next{top: 35%;}
.store-wrap,.gallery-wrap,.welcome-wrap{display: flex;gap: 2rem;overflow-x: auto;scroll-snap-type: x mandatory;scrollbar-width: none;-webkit-overflow-scrolling: touch;}
.store-wrap::-webkit-scrollbar,.gallery-wrap::-webkit-scrollbar,.welcome-wrap::-webkit-scrollbar{display: none;}
.store-box,.gallery-box,.welcome-box{flex: 0 0 calc((100% - 2rem) / 1.2);scroll-snap-align: start;box-sizing: border-box;}
.gallery-box img{width: 100%;height: 28rem;object-fit: cover;border-radius: 1rem;display: block;}
.gallery-box h3{margin: 1rem 0 0;font-size: 1.7rem;font-weight: 500;color: var(--black);letter-spacing: 0.1em;}
.welcome-box img{width: 100%;height: 28rem;object-fit: cover;border-radius: 1rem;display: block;}
.welcome-box h3{margin: 1.2rem 0 0.8rem;font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 2rem;font-weight: 600;color: var(--black);letter-spacing: 0.1em;}
.welcome-box p{margin: 0;font-size: 1.4rem;letter-spacing: 0.05em;line-height: 1.85;color: var(--black2);}
.welcome .slider-prev,.welcome .slider-next,.gallery .slider-prev,.gallery .slider-next{top: 14rem;}
.white h2 .small{color: #ffffff84;}
.white h3,.white p{color: #fff;}
.white h2{background-image: linear-gradient(110deg,#ffffff 0%,#ffffff 42%,#b88a3a 47%,#fff3b8 50%,#b88a3a 53%,#ffffff 58%,#ffffff 100%);}
.people-2 .slider-container{margin-left: 0;}
.people-2 .slider-prev{top: 16rem;left: 2.8rem !important;}
.people-2 .slider-next{top: 16rem;right: 2.8rem !important;}
.people-2 .style-slider-container{position: relative;width: 100%;margin-left: 0;margin-right: 0;padding: 0rem 0 2rem;}
.style-wrap{position: relative;display: block;width: 100%;height: 32rem;margin: 0;padding: 0;overflow: visible;scroll-snap-type: none;gap: 0;align-items: initial;}
.style-wrap::-webkit-scrollbar{display: none;}
.style-box{position: absolute;top: 0;left: 50%;width: 22rem;margin-left: -11rem;flex: none;scroll-snap-align: none;text-align: center;cursor: pointer;transform-origin: 50% 50%;transform: translate(0,0) rotate(0deg) scale(1);transition:
transform 0.9s cubic-bezier(0.22,1,0.36,1),opacity 0.7s ease;will-change: transform,opacity;backface-visibility: hidden;}
.style-box.is-active{z-index: 10;}
.style-box img{border-radius: 1rem;display: block;width: 100%;aspect-ratio: 2 / 3;object-fit: cover;}
.style-slider-container .slider-prev,.style-slider-container .slider-next{display: block;z-index: 20;}
.style-slider-container .slider-prev{left: 1rem;}
.style-slider-container .slider-next{right: 1rem;}
@media (max-width: 480px){.style-wrap{height: 36rem;}
.style-box{width: 58vw;margin-left: -29vw;}
}
.fv .rich-title{letter-spacing: 0.2em;}
.rich-title{background-image: linear-gradient(110deg,var(--black) 0%,var(--black) 42%,#b88a3a 47%,#fff3b8 50%,#b88a3a 53%,var(--black) 58%,var(--black) 100%);background-size: 220% 100%;background-position: 100% 0;background-repeat: no-repeat;-webkit-background-clip: text;background-clip: text;-webkit-text-fill-color: transparent;color: transparent;animation: titleShimmerOnce 5s linear infinite;}
.rich-title .small,.rich-title .smallll,.rich-title .green{background: none;-webkit-background-clip: initial;background-clip: initial;-webkit-text-fill-color: initial;color: var(--black3);}
@keyframes titleShimmer{0%,100%{background-position: 100% 0;}
50%{background-position: 0% 0;}
}
@supports not ((background-clip: text) or (-webkit-background-clip: text)){.rich-title{color: var(--black);-webkit-text-fill-color: initial;background-image: none;animation: none;}
}
@media (prefers-reduced-motion: reduce){.rich-title{animation: none !important;}
}
.fv h1 .rich-title{animation: titleShimmerOnce 6s linear 2s infinite;}
@keyframes titleShimmerOnce{0%{background-position: 100% 0;}
100%{background-position: 0% 0;}
}
#ripple-container,#ripple-system{position: fixed;inset: 0;width: 100%;height: 100%;pointer-events: none;z-index: 9000;overflow: hidden;}
.ripple{position: absolute;transform: translate(-50%,-50%) scale(0);pointer-events: none;border-radius: 50%;border: 0.5px solid rgba(160,160,160,0.12);opacity: 0;animation: rippleExpand 3s cubic-bezier(0.16,1,0.3,1) forwards;}
@keyframes rippleExpand{0%{transform: translate(-50%,-50%) scale(0);opacity: 0.35;}
100%{transform: translate(-50%,-50%) scale(1);opacity: 0;}
}
.ripple-group{position: absolute;width: 1px;height: 1px;pointer-events: none;}
.ripple-group span{position: absolute;top: 50%;left: 50%;width: 1rem;height: 1rem;margin: -0.5rem 0 0 -0.5rem;border-radius: 50%;border: 0.5px solid rgba(160,160,160,0.08);transform: scale(0);opacity: 0;animation: rippleGroupExpand 6.5s ease-out forwards;}
.ripple-group span:nth-child(1){animation-delay: 0s;}
.ripple-group span:nth-child(2){animation-delay: 0.6s;}
.ripple-group span:nth-child(3){animation-delay: 1.2s;}
.ripple-group span:nth-child(4){animation-delay: 1.8s;}
@keyframes rippleGroupExpand{0%{transform: scale(0);opacity: 0;}
20%{opacity: 0.22;}
100%{transform: scale(20);opacity: 0;}
}
.ripple-group-click span{animation-name: rippleClickExpand;animation-duration: 5s;animation-timing-function: cubic-bezier(0.22,1,0.36,1);}
.ripple-group-click span:nth-child(1){animation-delay: 0s;}
.ripple-group-click span:nth-child(2){animation-delay: 0.25s;}
.ripple-group-click span:nth-child(3){animation-delay: 0.5s;}
@keyframes rippleClickExpand{0%{transform: scale(0);opacity: 0.75;}
100%{transform: scale(20);opacity: 0;}
}
@media (prefers-reduced-motion: reduce){.ripple,.ripple-group span{animation: none;opacity: 0;}
}
#page-exit-shine{display: none !important;}
@keyframes pageExitWhite{0%{background-color: rgba(255,255,255,0);}
60%{background-color: rgba(255,255,255,0.55);}
100%{background-color: rgba(255,255,255,1);}
}
@media (prefers-reduced-motion: reduce){#page-exit-shine{display: none;}
}
.body-particles{position: fixed;inset: 0;width: 100%;height: 100vh;pointer-events: none;z-index: 1;overflow: hidden;contain: strict;}
.body-particle{position: absolute;bottom: -4rem;width: 0.4rem;height: 0.4rem;border-radius: 50%;background: radial-gradient(circle,rgba(255,255,255,1) 0%,rgba(255,255,255,0.6) 40%,transparent 75%);filter: blur(0.15rem);opacity: 0;will-change: transform,opacity;animation: bodyParticleRise linear infinite;}
@keyframes bodyParticleRise{0%{transform: translate3d(0,0,0);opacity: 0;}
10%{opacity: 1;}
90%{opacity: 0.9;}
100%{transform: translate3d(0,-110vh,0);opacity: 0;}
}
@media (max-width: 1023px){.body-particles{display: none;}
}
@media (prefers-reduced-motion: reduce){.body-particles{display: none;}
}
.store-box,.voice-box,.media-box,.assess-box,.rank-box,.people-box,.style-box,.rank-section{contain: content;}
.fv.is-out .fv-slide,.fv.is-out .fv-cloud-veil,.fv.is-out::before,.fv.is-out::after{animation-play-state: paused;}
.page{border-radius: 22rem 22rem 0 0;position: relative;z-index: 500;}
.body-kumo-top{display: none;position: fixed;top: 0rem;left: 0;width: 100%;height: auto;z-index: 1;pointer-events: none;user-select: none;}
.body-kumo-bottom{position: fixed;bottom: 0rem;left: 0;width: 100%;height: auto;z-index: 1;pointer-events: none;user-select: none;}
@media (min-width: 1280px){.body-kumo-top{display: block;}
}
.gogon-link{border-bottom: 0.6px solid;}
.page-top{background: linear-gradient(180deg,#f0eeea 0%,#b8b4b0 100%);padding: 12rem 0 22rem;border-radius: 25rem 25rem 0 0;position: relative;overflow: hidden;}
.page-top>.nav-rain .nav-rain-drop{background: linear-gradient(to bottom,rgba(255,255,255,0) 0%,rgba(255,255,255,0.95) 60%,rgba(255,255,255,1) 100%);opacity: 0.85 !important;}
.page-top::after{content: "";width: 100%;height: 40rem;background: url(/salon/images/kumo-2.webp);background-size: cover;position: absolute;bottom: -19rem;left: 0;z-index: 3;}
.page-top>*:not(.nav-rain){position: relative;z-index: 6;}
.page-top h1{font-size: 2rem;text-align: center;letter-spacing: 0.1em;margin-bottom: 4rem;}
.page-top h1 .small{letter-spacing: 0.3em;font-size: 5.4rem;display: block;color: var(--black3);font-weight: 500;font-family: "Cardo","Zen Old Mincho",serif;}
.page-top p{text-align: center;line-height: 1.75;margin-top: 1rem;}
.page{background: #fff;padding: 12rem 0;border-radius: 0;margin-top: -0.2rem;}
.page .column-box h3{font-size: 1.6rem;letter-spacing: 0.05em;}
.page .column-wrap{gap: 6.4rem;}
.single-top h1{font-size: 2.4rem;margin-bottom: 1.4rem;letter-spacing: 0.3em;}
.column-single-top h1,.single-top-news h1{letter-spacing: 0.1em;}
.single-top p{margin-bottom: 2rem;}
.single-top img{border-radius: 1rem;margin-bottom: 2.4rem;}
.column-single-top img{width: 80%;margin: 0 auto 2.4rem;}
.single-kizi{padding: 4rem 0 6rem;}
.single-kizi .sec_inner{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;color: var(--black2);line-height: 1.9;font-size: 1.4rem;letter-spacing: 0.03em;margin-top: -4rem;}
.single-kizi p{margin-bottom: 1.6rem;line-height: 1.95;font-size: 1.4rem;}
.single-kizi h2{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 2.2rem;font-weight: 600;color: var(--black);margin: 5rem 0 1.8rem;padding: 1.2rem 1.6rem 1.2rem 1.8rem;letter-spacing: 0.04em;line-height: 1.55;border-left: 0.4rem solid var(--green);background: linear-gradient(to right,rgba(13,140,87,0.1),rgba(14,141,99,0) 100%);}
.single-kizi h3{position: relative;font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.8rem;font-weight: 600;color: var(--black);margin: 3.6rem 0 1.2rem;padding-bottom: 0.8rem;letter-spacing: 0.03em;line-height: 1.55;border-bottom: 1px solid rgba(18,166,134,0.28);}
.single-kizi h3::before{content: "";display: inline-block;width: 0.7rem;height: 0.7rem;border-radius: 50%;background: var(--green);margin-right: 0.7rem;vertical-align: middle;transform: translateY(-0.15rem);}
.single-kizi h4{position: relative;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.55rem;font-weight: 700;color: var(--green);margin: 2.4rem 0 1rem;padding-left: 1.4rem;letter-spacing: 0.04em;line-height: 1.55;}
.single-kizi h4::before{content: "";position: absolute;left: 0;top: 50%;width: 0.8rem;height: 0.15rem;background: var(--green);transform: translateY(-50%);}
.single-kizi ul{margin: 1rem 0 2rem;padding-left: 0;list-style: none;}
.single-kizi ul li{position: relative;padding-left: 1.8rem;margin-bottom: 0.6rem;line-height: 1.85;font-size: 1.4rem;}
.single-kizi ul li::before{content: "";position: absolute;left: 0.3rem;top: 0.95em;width: 0.6rem;height: 0.6rem;border-radius: 50%;background: var(--green);transform: translateY(-50%);opacity: 0.7;}
.single-kizi strong{color: var(--green);font-weight: 700;}
.single-kizi a{color: var(--green);text-decoration: underline;text-underline-offset: 0.25em;}
.single-kizi img{display: block;width: 100%;height: auto;margin: 2.8rem auto;border-radius: 1rem;}
.single-kizi figure{margin: 2.8rem 0;}
.single-kizi figure img{margin: 0 0 0.8rem;}
.single-kizi figcaption{font-size: 1.2rem;color: var(--black2);text-align: center;opacity: 0.75;margin-top: 0.4rem;line-height: 1.6;}
.single-kizi ol{margin: 1rem 0 2rem;padding-left: 2.2rem;list-style: none;counter-reset: kizi-ol;}
.single-kizi ol li{position: relative;margin-bottom: 0.7rem;line-height: 1.85;font-size: 1.4rem;counter-increment: kizi-ol;}
.single-kizi ol li::before{content: counter(kizi-ol) ".";position: absolute;left: -2rem;color: var(--green);font-weight: 700;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;}
.single-kizi blockquote{margin: 2rem 0;padding: 1.6rem 1.8rem 1.6rem 2.4rem;background: rgba(18,166,134,0.06);border-left: 0.3rem solid var(--green);border-radius: 0.4rem;color: var(--black2);font-style: italic;line-height: 1.85;}
.single-kizi blockquote p:last-child{margin-bottom: 0;}
.single-kizi em{font-style: italic;color: var(--black);}
.single-kizi table{width: 100%;border-collapse: collapse;margin: 2rem 0;font-size: 1.3rem;}
.single-kizi table th,.single-kizi table td{padding: 0.9rem 1rem;border: 1px solid rgba(0,0,0,0.1);text-align: left;line-height: 1.7;vertical-align: top;}
.single-kizi table th{background: rgba(18,166,134,0.08);font-weight: 600;color: var(--black);}
.single-kizi hr{border: 0;height: 1px;background: rgba(0,0,0,0.1);margin: 3rem 0;}
.single-top-news{padding-bottom: 22rem;padding-top: 10rem !important;}
.page-news,.page-media{padding-top: 4rem;padding-bottom: 4rem;}
.page-top-people{position: relative;padding-bottom: 30rem;}
.page-top-voice,.page-top-people{background: url(/salon/images/people-back.webp) center center / cover no-repeat;}
.page-top-people-single .single-face-wrap{position: relative;width: 100%;margin: 0 auto;}
.page-top-people-single .face{width: 100%;height: auto;display: block;border-radius: 1rem;}
.page-top-people-single .page-top-people-single-top-top{position: relative;z-index: auto !important;}
.page-top-people-single .page-top-people-single-top-top>.people-cate-2{position: absolute;left: 50%;bottom: 9.6rem;transform: translateX(-50%);display: flex;justify-content: center;align-items: center;gap: 0.6rem;margin: 0;z-index: 50;white-space: nowrap;}
.page-top-people-single .page-top-people-single-top-bottom .people-cate{position: static;display: flex;flex-wrap: wrap;justify-content: center;gap: 0.5rem;margin: -2rem 0 4.6rem;width: auto;}
.page-top-people-single .page-top-people-single-top-bottom .people-cate .shizuku{position: static;top: auto;left: auto;right: auto;bottom: auto;width: auto;height: auto;display: inline-block;padding: 0.3rem 1rem;background: #f0f0ec;color: var(--black);border-radius: 0.4rem;font-size: 1.2rem;line-height: 1.4;text-align: center;box-shadow: none;backdrop-filter: none;-webkit-backdrop-filter: none;transform: none;}
.page-top-people-single .page-top-people-single-top-bottom .people-cate .shizuku::before,.page-top-people-single .page-top-people-single-top-bottom .people-cate .shizuku::after{display: none !important;}
.page-top-people-single .page-top-people-single-top-bottom .people-cate .shizuku br{display: none;}
.page-top-people::before{content: "";position: absolute;bottom: 2rem;left: 0rem;background: url(/salon/images/page-top-people-back.webp);background-size: cover;background-position: center;width: 41rem;height: 26.3rem;}
@media (max-width: 768px){.page-top-people::before{background-position: center;width: 37rem;height: 26.3rem;}}
.people-wrap > .people-box:nth-child(2) .people-cate > *:nth-child(n+3){display: none;}
.people-box .people-cate{min-height: 5rem;align-content: flex-start;}
.people-cate-2{margin-top: 1.6rem;display: flex;gap: 0.4rem;}
.lank{padding: 0.5rem 0.5rem 0.65rem;font-size: 1.2rem;line-height: 1;font-family: "Zen Old Mincho",sans-serif;letter-spacing: 0;font-weight: 700;}
.place{padding: 0.6rem 0.5rem 0.75rem;background: var(--black2);color: #fff;font-size: 1.2rem;line-height: 1;font-family: "Zen Old Mincho",sans-serif;letter-spacing: 0;font-weight: 600;}
.people-cate-2 .time{padding: 0.6rem 0.8rem;background: var(--black2);color: #fff;font-size: 1rem;line-height: 1.3;letter-spacing: 0.04em;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;}
.page-top-people-single h1{font-size: 2.8rem;margin-top: 1.6rem;}
.page-top-people-single h1 .small{font-size: 1.6rem;}
.page-top-people-single .people-cate-2{justify-content: center;}
.page-top-people-single{padding-top: 0rem !important;padding-bottom: 0 !important;background: none;}
.single-people-view{margin-top: 12rem;position: relative;}
.single-people-view .slider-container{padding-left: var(--sp_inner);}
.single-people-view .slider-prev,.single-people-view .slider-next{top: 15rem;}
.single-people-img-box{display: flex;gap: 2rem;margin: 2rem 0 0;overflow-x: auto;scroll-snap-type: x mandatory;scrollbar-width: none;-webkit-overflow-scrolling: touch;}
.single-people-img-box::-webkit-scrollbar{display: none;}
.single-people-img-box img{flex: none;width: calc((100% - 2rem) / 1.2);max-width: none;min-width: 0;scroll-snap-align: start;aspect-ratio: 3 / 3;object-fit: cover;border-radius: 1rem;margin: 0;display: block;}
.single-people-img-box>*:last-child{margin-right: 8vw;}
.single-face{width: 100%;}
.page-top-people-single::after{bottom: initial;top: 35rem;z-index: 11;}
.page-top-people-single-top-bottom{background: linear-gradient(to bottom,#ffffff00 0%,#fff 10%);padding: 0rem 0 8rem;position: relative;z-index: auto !important;}
.page-top-people-single-top-bottom>*,.page-top-people-single-top-bottom .sec_inner,.page-top-people-single-top-bottom .sec_inner>*{position: relative !important;z-index: 50 !important;}
.page-top-people-single-top-bottom h1{text-align: center;font-size: 2.8rem;margin-top: -4.8rem;}
.page-top-people-single-top-bottom h1 span{font-size: 1.8rem;}
.page-top-people-single-top-bottom .right{margin-left: 10%;border-radius: 1rem 0 0 1rem;position: relative;z-index: 100;}
.page-top-people-single-top-top{background: none;padding-top: 0rem;border-radius: 25rem 25rem 0 0;overflow: hidden;}
@media (max-width: 480px){.page-top-people-single-top-top{border-radius: 0;}
}
.page-people{padding-top: 4rem;}
.page-people-single{position: relative;margin-top: -12rem;background: var(--gra-gray);padding-top: 32rem;padding-bottom: 26rem;z-index: 1;}
.page.page-people-single.page-people-single-2.people-feature.center-h2,
.page-people-single-2.people-feature{position: relative;z-index: 2;}
.page-people-single::after{content: "";width: 100%;height: 40rem;background: url(/salon/images/kumo.webp);background-size: cover;position: absolute;top: -10rem;left: 0;z-index: 1;}
.page-people-single::before{content: "";width: 100%;height: 40rem;background: url(/salon/images/kumo-2.webp);background-size: cover;position: absolute;bottom: -10rem;left: 0;z-index: 1;}
.people-feature h2{margin-bottom: 6.4rem;}
.title .mini{font-size: 2.4rem;display: inline-block;}
.page-people-single h2,.page-people-single h2 span{text-align: center;display: block;width: 100% !important;}
.page-people-single h2{font-size: 1.8rem;letter-spacing: 0.1em;}
.page-people-single p,.page-people-single-h3{padding: 0 8%;}
.page-people-single p{margin-top: 1rem;}
.timetable-note{padding: 0 !important;}
.page-people-single img{margin-bottom: 2.4rem;}
.page-people-single-h3{position: relative;font-size: 2rem;letter-spacing: 0.2em;text-align: center;width: fit-content;margin: 0 auto;}
.page-people-single-h3::after{content: "";position: absolute;top: 1.6rem;left: -6rem;width: 7rem;height: 0.1rem;background: var(--black2);background-size: cover;}
.page-people-single-h3::before{content: "";position: absolute;top: 1.6rem;right: -6rem;width: 7rem;height: 0.1rem;background: var(--black2);background-size: cover;}
.page-people-single-section{margin-bottom: 8rem;}
.page-people-single-section img{width: 84%;margin-left: var(--sp_inner);border-radius: 1rem;}
.page-people-single-2{background: #fff;padding-top: 4rem;}
.page-people-single-2::after{display: none;}
.tell-section{margin-bottom: 8rem;position: relative;z-index: 2;}
.tell-wrap{display: flex;flex-wrap: nowrap;padding-left: 8% !important;scroll-padding-inline-start: 8%;gap: 2rem;margin: 2rem 0 0;overflow-x: auto;scroll-snap-type: x mandatory;scrollbar-width: none;-webkit-overflow-scrolling: touch;}
.tell-wrap::-webkit-scrollbar{display: none;}
.tell-box{display: flex;flex-direction: column;flex: 0 0 calc((100% - 2rem) / 1.2);scroll-snap-align: start;box-sizing: border-box;background: none;border: none;padding: 0;margin: 0;height: auto;overflow: visible;border-radius: 0;box-shadow: none;}
.tell-box::before{content: none;}
.tell-box>img{display: block;width: 100%;aspect-ratio: 1 / 1;object-fit: cover;border-radius: 1rem;margin-bottom: 1rem;}
.tell-box h4,.tell-box p{width: 100%;margin: 0;padding: 0;letter-spacing: 0.05em;background: none;}
.tell-box h4{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.6rem;font-weight: 500;color: var(--black);margin-bottom: 0.4rem;}
.tell-box p{font-size: 1.3rem;line-height: 1.7;color: var(--black2);}
.tell-wrap.tell-wrap-grid{display: grid;grid-template-columns: 1fr 1fr 1fr;gap: 2.4rem 1.2rem;overflow: visible;scroll-snap-type: none;padding: 0 var(--sp_inner) !important;}
.tell-wrap.tell-wrap-grid .tell-box{flex: 0 0 auto;width: 100%;scroll-snap-align: none;}
.tell-wrap.tell-wrap-grid .tell-box>img{display: block;width: 100%;aspect-ratio: 1 / 1;object-fit: cover;border-radius: 0.8rem;margin-bottom: 0.6rem;}
.tell-wrap.tell-wrap-grid .tell-box h4{font-size: 1.3rem;margin-bottom: 0.2rem;letter-spacing: 0.03em;}
.tell-section .slider-prev,.tell-section .slider-next{top: 15rem;}
.tell-section .slider-prev{left: 1.2rem;}
.tell-section .slider-next{right: 5rem;}
.tell-section .sec_inner{display: flex;flex-wrap: wrap;gap: 0.8rem;margin-top: 4rem;}
.tell-section a{width: 100% !important;padding: 2.4rem 0;}
.people-feature{padding-bottom: 0;}
.people-flow{margin-top: 8rem;padding-bottom: 2rem;background: var(--gra-gray);}
.flow-filter{margin: 0 8% 4rem;padding: 2.4rem 2rem;background: #fff;border: 1px solid var(--border);border-radius: var(--radius);box-shadow: 0 2px 12px rgba(29,57,63,0.04);}
.flow-filter-row{display: flex;flex-wrap: wrap;gap: 1.6rem;}
.flow-filter-item{flex: 1 1 calc(50% - 0.8rem);min-width: 0;}
.flow-filter-item label{display: block;font-size: 1.3rem;font-weight: 500;letter-spacing: var(--letter2);color: var(--black2);margin-bottom: 0.6rem;}
.flow-select-wrap{position: relative;}
.flow-select-wrap::after{content: "";position: absolute;right: 1.4rem;top: 50%;width: 0.8rem;height: 0.8rem;border-right: 1.5px solid var(--black);border-bottom: 1.5px solid var(--black);transform: translateY(-70%) rotate(45deg);pointer-events: none;}
.flow-select-wrap select{width: 100%;appearance: none;-webkit-appearance: none;-moz-appearance: none;background: var(--gray);border: 1px solid var(--border);border-radius: var(--radius2);padding: 1.4rem 3.6rem 1.4rem 1.4rem;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.2rem;color: var(--black);letter-spacing: var(--letter);cursor: pointer;transition: border-color 0.3s ease,background 0.3s ease;}
.flow-select-wrap select:hover,.flow-select-wrap select:focus{outline: none;border-color: var(--green);background: #fff;}
.flow-step-wrap{margin: 0;position: relative;display: flex;gap: 2rem;overflow-x: auto;scroll-snap-type: x mandatory;scrollbar-width: none;-webkit-overflow-scrolling: touch;padding-bottom: 1rem;}
.flow-step-wrap::-webkit-scrollbar{display: none;}
.flow-step-box{position: relative;display: flex;flex-direction: column;flex: 0 0 calc((100% - 2rem) / 1.2);scroll-snap-align: center;box-sizing: border-box;padding: 0;margin: 0;border-bottom: none;z-index: 1;transition: opacity 0.32s ease,transform 0.32s ease;}
.flow-step-box:last-child,.flow-step-box.is-last-visible{padding-bottom: 0;margin-bottom: 0;border-bottom: none;}
.people-flow .flow-step-wrap{padding-left: 8%;}
.people-flow .slider-prev,.people-flow .slider-next{top: 16rem;}
.people-flow .slider-prev{left: 2.4rem;}
.people-flow .slider-next{right: 4rem;}
.flow-step-box>.flow-body{display: contents;}
.flow-step-box.is-flow-fading,.flow-step.is-flow-fading{opacity: 0;transform: translateY(6px);pointer-events: none;}
.flow-step-box.is-flow-hidden,.flow-step.is-flow-hidden{display: none;}
.people-flow .flow-step-box>h3{order: 2;position: static;padding: 0 1rem !important;margin: 0 0 0.8rem !important;font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 2.4rem;font-weight: 500;color: var(--black);letter-spacing: 0.2em;line-height: 1.4;min-height: 0;display: block;}
.people-flow .flow-step-box>h3::after{display: none;}
.people-flow .flow-step-box>h3 .number{position: absolute;left: -0.5rem;top: 25rem;transform: none;width: 6.4rem;height: 6.4rem;border-radius: 50%;display: flex;align-items: center;justify-content: center;font-family: "Cardo","Zen Old Mincho",serif;font-size: 2.4rem;font-weight: 500;color: var(--black);background: rgba(255,255,255,0.8);backdrop-filter: blur(0.2rem);-webkit-backdrop-filter: blur(0.2rem);box-shadow:
inset 0.625rem 1.25rem 1.875rem rgb(0 0 0 / 19%),inset -0.3125rem -0.625rem 1.25rem rgba(255,255,255,0.6),0 1.25rem 2.5rem rgba(0,0,0,0.05);letter-spacing: 0;z-index: 2;}
@media (max-width: 768px){.people-flow .flow-step-box>h3 .number{top: 21.5rem;}
}
.flow-step-box .flow-image{order: 1;flex: none;width: 100%;max-width: 100%;min-width: 0;margin: 0 0 2rem;}
.flow-image img{width: 100%;height: auto;aspect-ratio: 1 / 1;object-fit: cover;border-radius: 1.2rem;margin: 0;display: block;}
.people-flow .flow-step-box .flow-body p,.people-flow .flow-body p{order: 3;flex: none;padding: 0 1rem !important;margin: 0 !important;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.4rem;line-height: 2;letter-spacing: 0.05em;color: var(--black2);word-break: break-word;overflow-wrap: anywhere;}
.people-flow{padding-top: 25rem;padding-bottom: 22rem;position: relative;}
.people-flow::after{content: "";width: 100%;height: 40rem;background: url(/salon/images/kumo.webp);background-size: cover;position: absolute;top: -20rem;left: 0;z-index: 1;}
.people-flow::before{content: "";width: 100%;height: 40rem;background: url(/salon/images/kumo-2.webp);background-size: cover;position: absolute;bottom: -20rem;left: 0;z-index: 1;}
.reserve-people .top-fix-4{height: 112rem;}
.reserve-people .top-fix-4::after{bottom: 10rem;}
@media (max-width: 480px){.contents{margin-top: 0;border-radius: 0;}
body{border-radius: 0;}
.fv{height: 100vh;border-radius: 0;clip-path: inset(0 round 0 0 0 0);}
.site-header::before{content: "";width: 115%;height: 9rem;position: absolute;top: 0;left: 0;z-index: -1;backdrop-filter: blur(14px) saturate(160%);-webkit-backdrop-filter: blur(14px) saturate(160%);-webkit-mask-image: linear-gradient(to bottom,#000 0%,#000 65%,transparent 100%);mask-image: linear-gradient(to bottom,#000 0%,#0000007d 65%,transparent 100%);box-shadow: 0 0.4rem 1.6rem rgba(80,100,130,0.06);background: linear-gradient(to bottom,#fff 0%,#ffffff00 100%);}
.logo{transform: translateY(-0.2rem);}
.site-header{height: 6rem;}
.top{padding-top: 4rem;}
.page-top{border-radius: 0 !important;}
.page-top{padding-top: 12rem;}
}
.people-filter-title{font-size: 2rem;font-weight: 500;letter-spacing: 0.1em;margin: 0 0 1rem;color: var(--black);text-align: center;}
.people-filter{background: rgba(255,255,255,0.55);backdrop-filter: blur(10px) saturate(160%);-webkit-backdrop-filter: blur(10px) saturate(160%);border: 1px solid rgba(0,0,0,0.18);border-radius: 1.4rem;padding: 1.8rem 1.8rem 1.4rem;margin: 0 0 6.4rem;}
.people-filter-group{display: flex;align-items: flex-start;gap: 0.8rem 1rem;padding: 1.6rem 0;border-bottom: 1px dashed rgba(0,0,0,0.08);}
.people-filter-group:last-of-type{border-bottom: none;}
.people-filter-label{flex: 0 0 5.2rem;font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.25rem;font-weight: 600;letter-spacing: 0.06em;color: var(--black);padding-top: 0.4rem;line-height: 1.4;}
.people-filter-options{flex: 1 1 auto;display: flex;flex-wrap: wrap;gap: 0.6rem;}
.people-filter-chip{appearance: none;-webkit-appearance: none;background: #fff;border: 1px solid rgba(0,0,0,0.14);border-radius: 40rem;padding: 0.5rem 1rem 0.45rem;font-family: inherit;font-size: 1.15rem;font-weight: 500;letter-spacing: 0.04em;color: var(--black2);cursor: pointer;line-height: 1.3;transition: background 0.2s ease,border-color 0.2s ease,color 0.2s ease;}
.people-filter-chip:hover{border-color: var(--green);color: var(--green);}
.people-filter-chip.is-active{background: var(--green);border-color: var(--green);color: #fff;}
.people-filter-actions{display: flex;justify-content: flex-end;margin-top: 0.6rem;}
.people-filter-reset{appearance: none;-webkit-appearance: none;background: transparent;border: none;font-family: inherit;font-size: 1.15rem;font-weight: 500;color: var(--black2);cursor: pointer;padding: 0.4rem 0.6rem;letter-spacing: 0.04em;text-decoration: underline;text-underline-offset: 0.3em;transition: color 0.2s ease;}
.people-filter-reset:hover{color: var(--green);}
.people-empty{text-align: center;font-size: 1.3rem;color: var(--black2);padding: 4rem 1rem;opacity: 0.7;}
.people-more-wrap{display: flex;justify-content: center;margin-top: 2rem;}
.related-more-wrap{display: flex;justify-content: center;margin-top: 3rem;}
.related-more-btn{min-width: 24rem;}
.single-cate-box{justify-content: center;margin: 1.6rem auto 1.6rem;}
.single-cate-box .cate-1,.single-cate-box .cate-2{text-decoration: none;transition: opacity 0.2s ease,transform 0.2s ease;cursor: pointer;color: inherit;}
.single-cate-box .cate-2{color: #fff;}
.single-cate-box .cate-1:hover,.single-cate-box .cate-2:hover{opacity: 0.85;transform: translateY(-1px);}
.single-top{text-align: center;}
.people-more-btn[hidden],.people-other-more-btn[hidden]{display: none !important;}
.people-box[hidden]{display: none !important;}
.people-wrap{transition: opacity 0.28s ease,transform 0.28s ease;}
.people-wrap.fade{transition:
opacity 2s cubic-bezier(0.19,1,0.22,1),filter 2.8s cubic-bezier(0.19,1,0.22,1),transform 2s cubic-bezier(0.19,1,0.22,1);}
.people-wrap.is-fading{opacity: 0;transform: translateY(0.8rem);pointer-events: none;transition: opacity 0.28s ease,transform 0.28s ease;}
.people-box{transition: opacity 0.45s ease,transform 0.45s ease;}
.people-box.is-revealing{opacity: 0;transform: translateY(1.2rem);}
.people-voice{position: relative;z-index: 2;background: #fff;padding: 4rem 0 6.4rem;}
.people-voice .voice-2-box{background: #f0f0ec;}
.people-voice-2{background: var(--gra-gray);padding-top: 24rem;padding-bottom: 24rem;position: relative;}
.people-voice-2::after{content: "";width: 100%;height: 40rem;position: absolute;top: -20rem;left: 0px;z-index: 1;background: url(/salon/images/kumo.webp) 0% 0% / cover;}
.people-voice-2::before{content: "";width: 100%;height: 40rem;background: url(/salon/images/kumo-2.webp);background-size: cover;position: absolute;bottom: -20rem;left: 0;z-index: 1;}
.people-voice-2 .voice-box h3{margin-top: 1.6rem;}
.people-voice-2 .voice-box .women{padding: 0;}
.people-voice .voice-2-box-bottom h3{-webkit-line-clamp: 6;}
.people-voice .voice-foot{display: flex;justify-content: space-between;align-items: center;gap: 0.8rem;margin-top: 1rem;}
.people-voice .voice-meta{margin: 0;font-size: 1.1rem;letter-spacing: 0.04em;color: var(--black2);}
.people-voice .voice-foot .time{margin: 0;white-space: nowrap;}
.people-media{position: relative;z-index: 2;padding-top: 2rem;padding-bottom: 4rem;background: #fff;}
.people-voice-2 .slider-container,.people-voice .slider-container,.people-media .slider-container{padding-left: var(--sp_inner);}
.people-store{position: relative;background: var(--gra-gray);padding: 23rem 0 22rem;}
.people-store::after{content: "";width: 100%;height: 40rem;position: absolute;top: -20rem;left: 0px;z-index: 1;background: url(/salon/images/kumo.webp) 0% 0% / cover;}
.people-store::before{content: "";width: 100%;height: 40rem;background: url(/salon/images/kumo-2.webp);background-size: cover;position: absolute;bottom: -20rem;left: 0;z-index: 1;}
.people-store .slider-container{position: relative;margin-left: 0;}
.people-store.is-empty .people-store-wrap{display: none;}
.people-store.is-empty h2{opacity: 0;}
.people-media.is-empty .sec_inner{display: none;}
.people-media.is-empty h2{opacity: 0;}
.people-store-wrap{display: flex;gap: 2rem;margin: 0 0 0 8%;padding: 0.6rem 0 1.2rem;overflow-x: auto;scroll-snap-type: x mandatory;scrollbar-width: none;-webkit-overflow-scrolling: touch;}
.people-store-wrap::-webkit-scrollbar{display: none;}
.people-store-box{flex: 0 0 calc((100% - 2rem) / 1.2);scroll-snap-align: start;overflow: hidden;display: flex;flex-direction: column;}
.people-store-body{padding: 2rem 1rem 2.4rem;display: flex;flex-direction: column;gap: 1.8rem;flex: 1 1 auto;}
.people-store-body h3{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 2.4rem;font-weight: 500;color: var(--black);margin: 0;margin-top: -0.4rem;}
.people-store-info{margin: 0;font-size: 1.25rem;line-height: 1.7;}
.people-store-row{display: flex;gap: 0.8rem;padding: 0.7rem 0;border-bottom: 1px solid rgba(0,0,0,0.1);}
.people-store-row:last-child{border-bottom: none;padding-bottom: 0;}
.people-store-row:first-child{padding-top: 0;}
.people-store-row dt{flex: 0 0 5.6rem;font-weight: 600;color: var(--black2);letter-spacing: var(--letter2);}
.people-store-row dd{margin: 0;flex: 1 1 auto;color: var(--black);}
.people-store-buttons{display: flex;flex-direction: column;gap: 1rem;margin-top: auto;}
.people-store-buttons .button,.people-store-buttons .cta-button{width: 100%;margin: 0;}
.people-store .slider-prev,.people-store .slider-next{top: 25%;}
.people-media .slider-next,.people-media .slider-prev{top: 36%;}
.people-store-box img{margin-bottom: 0rem;border-radius: 1.5rem;}
@media (max-width: 768px){.people-store-box{flex: 0 0 calc((100% - 2rem) / 1.2);}
}
.people-time{position: relative;padding: 3.2rem 0 12rem;background: #fff;z-index: 2;}
.people-time h2{margin-bottom: 4rem;}
.time-tabs{display: grid;grid-template-columns: repeat(3,1fr);gap: 0;margin: 0 var(--sp_inner);position: relative;z-index: 1;}
.time-tab{appearance: none;-webkit-appearance: none;background: #f0f0ec;border: 1px solid var(--border);border-bottom: none;border-radius: 0.6rem 0.6rem 0 0;padding: 1rem 0.6rem;font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.3rem;font-weight: 600;letter-spacing: 0.04em;color: var(--black2);cursor: pointer;transition: background 0.2s ease,color 0.2s ease;margin-bottom: -1px;text-align: center;}
.time-tab+.time-tab{border-left: none;}
.time-tab:hover{color: var(--green);}
.time-tab.is-active{background: #fff;color: var(--green);position: relative;z-index: 2;}
.time-panel{background: #fff;border: 1px solid var(--border);border-radius: 0 0 0.8rem 0.8rem;padding: 2.5rem;margin: 0 var(--sp_inner);position: relative;z-index: 0;}
.time-panel[hidden]{display: none !important;}
.calendar{background: #fff;border: 1px solid var(--border);border-radius: 1.6rem;padding: 2rem 1.6rem 1.6rem;box-shadow:
0 1px 2px rgba(0,0,0,0.04),0 0.8rem 2rem rgba(18,166,134,0.06);}
.calendar-title{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.8rem;font-weight: 500;letter-spacing: 0.06em;color: var(--black);}
.calendar-grid{display: grid;grid-template-columns: repeat(7,1fr);gap: 0.4rem;}
.calendar-day{position: relative;aspect-ratio: 1 / 1;display: flex;align-items: center;justify-content: center;font-size: 1.3rem;font-weight: 500;border-radius: 0.8rem;background: #fafafa;color: var(--black) !important;-webkit-text-fill-color: var(--black) !important;transition: background 0.25s ease,color 0.25s ease,transform 0.2s ease;-webkit-touch-callout: none;}
.calendar-day a,.calendar-day a[x-apple-data-detectors],.calendar-day a[x-apple-data-detectors] *,.calendar-day [x-apple-data-detectors],.calendar-day [x-apple-data-detectors] *,a[x-apple-data-detectors],a[x-apple-data-detectors] *{color: inherit !important;-webkit-text-fill-color: inherit !important;text-decoration: none !important;cursor: inherit !important;pointer-events: none !important;font-weight: inherit !important;background: transparent !important;}
.calendar-day.is-empty{background: transparent;pointer-events: none;}
.calendar-day.is-available{background: rgba(101,191,161,0.1);cursor: pointer;}
.calendar-day.is-available:hover{background: rgba(101,191,161,0.25);transform: translateY(-1px);}
.calendar-day.is-unavailable{background: #f0f0f0;color: #bcbcbc !important;-webkit-text-fill-color: #bcbcbc !important;cursor: not-allowed;text-decoration: line-through;text-decoration-color: rgba(0,0,0,0.18);}
.calendar-day.is-selected,.calendar-day.is-available.is-selected,.calendar-day.is-available.is-selected:hover{background: var(--black2);color: #fff !important;-webkit-text-fill-color: #fff !important;font-weight: 600;box-shadow: 0 0.4rem 1rem rgba(18,166,134,0.3);}
.calendar-day.is-available.is-selected:hover{transform: translateY(-1px);}
.timetable-wrap{margin-top: 3.2rem;}
.timetable-title{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.5rem;font-weight: 600;letter-spacing: 0.04em;margin-bottom: 1.4rem;color: var(--black);padding: 0 !important;}
.timetable{display: grid;grid-template-columns: repeat(auto-fill,minmax(8rem,1fr));gap: 0.8rem;}
.time-slot{display: flex;align-items: center;justify-content: center;padding: 1rem 0.4rem;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.3rem;letter-spacing: 0.04em;border-radius: 0.8rem;transition: background 0.25s ease,color 0.25s ease,transform 0.2s ease;text-decoration: none;}
.time-slot.is-available{background: #fff;border: 1px solid var(--green);color: var(--green);font-weight: 600;cursor: pointer;}
.time-slot.is-available:hover{background: var(--green);color: #fff;transform: translateY(-1px);}
.time-slot.is-unavailable{background: #f0f0f0;border: 1px solid transparent;color: #bcbcbc;cursor: not-allowed;text-decoration: line-through;text-decoration-color: rgba(0,0,0,0.15);}
.timetable-note{margin-top: 1.2rem;font-size: 1.15rem;color: var(--black2);letter-spacing: 0.03em;}
.people-time{position: relative;}
.people-other{position: relative;z-index: 1000;padding-bottom: 24rem;background: #fff;}
.people-other::after{content: "";width: 100%;height: 40rem;background: url(/salon/images/shibuya-kumo-2.webp);background-size: cover;position: absolute;bottom: -20rem;left: 0;z-index: 1;}
.people-other .people-cate-2 .place{display: none !important;}
.footer-2{margin-top: -26rem;position: relative;z-index: 1000;}
@media (max-width: 768px){.calendar{padding: 1.6rem 1rem 1.2rem;}
.calendar-grid{gap: 0.2rem;}
.calendar-day{font-size: 1.2rem;border-radius: 0.6rem;}
.timetable{grid-template-columns: repeat(3,1fr);}
}
.page-voice{position: relative;background: #fff;padding: 4rem 0 6rem;z-index: 7;}
.page-voice h2{letter-spacing: 0.1em;text-align: center;}
.page-voice .sec_inner{width: var(--in);max-width: 100rem;margin: 0 auto;}
.voice-filter{background: rgba(255,255,255,0.7);border: 1px solid var(--border);border-radius: 1.2rem;padding: 2.8rem 2.4rem;margin-bottom: 4rem;box-shadow:
0 1px 2px rgba(0,0,0,0.04),0 0.5rem 1.2rem rgba(18,166,134,0.05);}
.voice-filter.fade{filter: none;transform: none;transition: opacity 0.9s cubic-bezier(0.19,1,0.22,1);will-change: opacity;}
.voice-filter.fade.is-animated{opacity: 1;filter: none;transform: none;}
.voice-filter-row{display: grid;grid-template-columns: repeat(2,1fr);gap: 1.2rem 1.4rem;}
.voice-filter-item{min-width: 0;}
.voice-filter-item-full{grid-column: 1 / -1;}
.voice-filter-item label{display: block;font-size: 1.15rem;font-weight: 500;letter-spacing: 0.04em;color: var(--black2);margin-bottom: 0.5rem;padding-left: 0.2rem;}
.voice-filter .flow-select-wrap select{padding: 1.2rem 2.4rem 1.2rem 1.1rem;font-size: 1.25rem;border-radius: 0.8rem;}
.voice-filter .flow-select-wrap::after{right: 1rem;width: 0.6rem;height: 0.6rem;border-right-color: var(--black2);border-bottom-color: var(--black2);}
.voice-filter-submit{display: block;width: 100%;margin: 1.6rem 0 0;padding: 2rem 2rem;font-size: 1.4rem;letter-spacing: 0.1em;background: var(--black2);}
.voice-filter-submit .arrow-white{transform: translateY(-50%) rotate(90deg);}
.voice-all{margin-bottom: 5rem;}
.voice-all h2.title{margin-bottom: 1.4rem;}
.voice-all-count{font-size: 1.3rem;text-align: center;color: var(--black2);margin: 8rem 0 2.4rem;letter-spacing: 0.04em;}
.voice-all-grid{display: grid;grid-template-columns: repeat(auto-fit,minmax(28rem,1fr));gap: 10rem;margin-top: 8rem;}
.voice-all-grid{transition: opacity 0.28s ease;}
.voice-all-grid.is-filtering{opacity: 0;}
.voice-all-grid .voice-2-box{margin-bottom: 0;display: flex;flex-direction: column;}
.voice-all-grid .voice-2-box[hidden]{display: none !important;}
.voice-all-grid .voice-2-face{width: 12rem;height: 12rem;aspect-ratio: 1 / 1;display: block;}
.voice-all-grid .voice-meta{font-size: 1.1rem;letter-spacing: 0.04em;color: var(--black2);margin: 0;}
.voice-all-grid .voice-foot{display: flex;justify-content: space-between;align-items: center;gap: 0.8rem;margin-top: 1rem;}
.voice-all-grid .voice-foot .time{margin: 0;white-space: nowrap;}
.voice-empty{grid-column: 1 / -1;text-align: center;font-size: 1.3rem;color: var(--black2);padding: 3rem 0;letter-spacing: 0.04em;}
.voice-pagination{display: flex;justify-content: center;align-items: center;gap: 0.4rem;margin-top: 3.6rem;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.3rem;flex-wrap: wrap;position: relative;z-index: 10;}
.voice-page{display: inline-flex;align-items: center;justify-content: center;min-width: 3.6rem;padding: 0.8rem 1rem;border: 1px solid var(--border);border-radius: 0.6rem;color: var(--black);text-decoration: none;background: #fff;transition: background 0.25s ease,color 0.25s ease,border-color 0.25s ease;}
.voice-page:hover{border-color: var(--green);color: var(--green);}
.voice-page.is-current{background: var(--black2);border-color: transparent;color: #fff;font-weight: 600;}
.voice-page-disabled{color: #bcbcbc;cursor: not-allowed;}
.voice-page-ellipsis{padding: 0 0.6rem;color: var(--black2);}
.page-reserve{padding: 0 var(--sp_inner) 28rem;background: linear-gradient(to bottom,#fff 50%,#dedede 100%);position: relative;}
body:has(.page-reserve) .nav-list .nav-cta:not(.nav-cta-tel){display: none !important;}
.page-reserve::after{content: "";width: 50rem;height: 40rem;position: absolute;bottom: -17rem;left: -7rem;z-index: -1;background: url(/salon/images/shibuya-kumo-2.webp) 0% 0% / cover;}
.page-reserve:has(#reserve-step-input.is-active) .reserve-steps{display: none;}
.page-signup{position: relative;padding: 0rem 0 20rem;overflow: hidden;}
.page-signup::after{content: "";width: 50rem;height: 40rem;position: absolute;bottom: -17rem;left: -7rem;z-index: 1;background: url(/salon/images/shibuya-kumo-2.webp) 0% 0% / cover;}
.page-signup .cta-button{padding: 2rem 1.6rem !important;}
.signup-email-block{background: var(--gray);padding: 3rem 3rem 2rem;border-radius: 1rem;overflow: hidden;}
.signup-email-block .signup-steps{display: flex;align-items: flex-start;transition: transform 0.25s cubic-bezier(0.22,0.61,0.36,1),height 0.25s cubic-bezier(0.22,0.61,0.36,1);}
.signup-email-block .signup-step{flex: 0 0 100%;min-width: 0;}
.signup-email-block .signup-step-code{visibility: hidden;}
.signup-email-block.is-step-2 .signup-step-email{visibility: hidden;}
.signup-email-block.is-step-2 .signup-step-code{visibility: visible;}
.signup-email-block.is-step-2 .signup-steps{transform: translateX(-100%);}
.signup-step-info{display: flex;align-items: flex-start;gap: 0.7rem;background: rgba(121,164,118,0.12);color: var(--black);padding: 1rem 1.2rem;border-radius: 0.6rem;font-size: 1.2rem;line-height: 1.5;margin-bottom: 1.5rem;}
.signup-step-info-icon{display: inline-flex;align-items: center;justify-content: center;width: 1.8rem;height: 1.8rem;border-radius: 50%;background: var(--green);color: #fff;font-size: 1rem;flex: 0 0 auto;line-height: 1;}
.signup-step-info-text{flex: 1 1 auto;word-break: break-all;}
.signup-step-info-email{font-weight: 600;color: var(--green);}
.signup-step-back{background: none;border: none;color: var(--green);font-size: 1.2rem;letter-spacing: 0.04em;padding: 0;margin-top: 1.5rem;cursor: pointer;display: inline-block;text-decoration: underline;}
.signup-step-back:hover{opacity: 0.7;}
.signup-field-error{display: none;color: #e11d48;font-size: 1.15rem;margin: 0.5rem 0 0;letter-spacing: 0.04em;line-height: 1.4;}
.signup-field-error--show{display: block;}
[data-salon-registration-required-group].signup-group-invalid .reserve-input{border: 1px solid #e11d48;box-shadow: 0 0 0 3px rgba(225,29,72,0.12);background: #fff5f6;}
[data-salon-registration-traffic-source-group].signup-group-invalid .reserve-traffic-source-item{border-color:#e11d48;box-shadow:0 0 0 3px rgba(225,29,72,0.12);}
.signup-birthday{display: flex;gap: 0.6rem;align-items: center;}
.signup-birthday select{flex: 1 1 auto;min-width: 0;background: #fff;border: 1px solid var(--border);border-radius: 0.8rem;padding: 1.2rem 1rem;font-size: 1.3rem;color: var(--black);appearance: auto;-webkit-appearance: auto;}
.page-reserve .sec_inner{width: 100%;max-width: none;margin: 0;padding-top: 0rem;}
.reserve-steps{list-style: none;display: flex;justify-content: center;align-items: center;gap: 0.6rem;margin: 0 0 4rem;padding: 0;flex-wrap: nowrap;}
.reserve-steps-item{display: inline-flex;align-items: center;gap: 0.4rem;font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.2rem;color: var(--black2);letter-spacing: 0.04em;position: relative;padding-right: 1.2rem;white-space: nowrap;}
.reserve-steps-item:not(:last-child)::after{content: "›";position: absolute;right: 0;color: var(--black2);opacity: 0.4;}
.reserve-steps-num{display: inline-flex;align-items: center;justify-content: center;width: 2.4rem;height: 2.4rem;border-radius: 50%;background: var(--black2);color: #fff;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.2rem;line-height: 1;}
.reserve-steps-item.is-current{color: var(--black);font-weight: 600;}
.reserve-steps-item.is-current .reserve-steps-num{background: var(--green);color: #fff;box-shadow: 0 0.3rem 0.8rem rgba(75,147,104,0.3);}
.reserve-steps-item.is-passed{cursor: pointer;color: var(--black);}
.reserve-steps-item.is-passed .reserve-steps-num{background: #b8b8b8;color: #fff;}
.reserve-steps-item.is-passed:hover{opacity: 0.75;}
.reserve-step{display: none;}
.reserve-step.is-active{display: block;}
.reserve-block{background: #fff;border: 1px solid var(--border);border-radius: 1.6rem;padding: 4.8rem 2.5rem;margin-bottom: 4rem;box-shadow:
0 1px 2px rgba(0,0,0,0.04),0 0.6rem 1.6rem rgba(18,166,134,0.06);}
.reserve-submit-error{display: flex;flex-direction: column;gap: 0.8rem;background: rgba(209,87,106,0.08);border: 1px solid rgba(209,87,106,0.55);border-radius: 1.2rem;color: #b63f52;font-size: 1.25rem;line-height: 1.75;letter-spacing: 0.04em;margin: 0 0 1.8rem;padding: 1.4rem 1.6rem;}
.reserve-submit-error[hidden]{display: none;}
.reserve-submit-error-message{margin: 0;}
.reserve-submit-phone-guide{background: rgba(75,147,104,0.08);border: 1px solid rgba(75,147,104,0.48);border-radius: 1.2rem;color: var(--black2);margin: 0 0 1.8rem;padding: 1.4rem 1.6rem;}
.reserve-submit-phone-guide-title{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.35rem;font-weight: 900;letter-spacing: 0.05em;line-height: 1.5;margin: 0 0 0.5rem;color: #568598;}
.reserve-submit-phone-guide-text{font-size: 1.2rem;line-height: 1.75;letter-spacing: 0.04em;margin: 0;color: var(--black2);}
.reserve-submit-phone-guide-link{color: var(--black2);font-weight: 600;text-decoration: none;}
.reserve-submit-phone-guide-link:hover{opacity: 0.75;}
.reserve-block-title{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 2rem;font-weight: 600;letter-spacing: 0.04em;color: var(--black);margin: 0rem 0 2rem;text-align: center;display: block;}
.reserve-matrix-block>.reserve-block-title{display: block !important;margin: 2rem 0 1.6rem;}
#reserve-step-1 .reserve-block{background: transparent;border: none;border-radius: 0;padding: 0;box-shadow: none;}
.reserve-matrix-block.reserve-block{background: transparent;border: none;border-radius: 0;padding: 0;box-shadow: none;margin-top: 6.4rem;}
.reserve-teacher-block.reserve-block{background: transparent;border: none;border-radius: 0;padding: 0;padding-top: 4rem;box-shadow: none;width: 118%;margin-left: -9%;}
.reserve-teacher-block-d.reserve-block{background: #fff;border: 1px solid var(--border);border-radius: 1.6rem;padding: 4rem 2.5rem;box-shadow:
0 1px 2px rgba(0,0,0,0.04),0 0.6rem 1.6rem rgba(18,166,134,0.06);width: 100%;margin-left: 0;}
.reserve-stores{display: flex;flex-direction: column;gap: 1.2rem;}
.reserve-store{appearance: none;-webkit-appearance: none;background: #fff;border: 1px solid var(--border);border-radius: 1.2rem;padding: 1.2rem;cursor: pointer;overflow: hidden;text-align: left;transition: background 0.25s ease,border-color 0.25s ease;display: grid;grid-template-columns: 12rem 1fr;align-items: center;gap: 1.4rem;}
.reserve-store:hover{border-color: var(--green);}
.reserve-store.is-active{background: rgba(75,147,104,0.1);border-color: var(--green);}
.reserve-store img{width: 100%;height: 9rem;object-fit: cover;display: block;border-radius: 0.8rem;}
.reserve-store-info{padding: 0;min-width: 0;}
.reserve-store-name{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.6rem;font-weight: 600;letter-spacing: 0.04em;color: var(--black);margin: 0 0 0.6rem;}
.reserve-store-meta{font-size: 1.25rem;letter-spacing: 0.02em;color: var(--black2);margin: 0.2rem 0;line-height: 1.55;}
.reserve-store-hours{white-space: pre-line;}
.reserve-store-summary{background: rgba(102,127,134,0.06);border: 1px solid rgba(102,127,134,0.18);border-radius: 0.8rem;padding: 1rem 1.4rem;margin-bottom: 2.8rem;font-size: 1.3rem;color: var(--black2);display: flex;align-items: center;gap: 1rem;flex-wrap: wrap;}
.reserve-store-summary-label{font-weight: 600;color: var(--black);white-space: nowrap;}
.reserve-store-summary .flow-select-wrap{flex: 1 1 auto;min-width: 14rem;max-width: 26rem;}
.reserve-method-buttons{display: grid;grid-template-columns: repeat(auto-fit,minmax(20rem,1fr));gap: 1.2rem;}
.reserve-date-md{font-size: 1.4rem;font-weight: 600;color: var(--black);letter-spacing: 0.02em;}
.reserve-date-dow{font-size: 1.1rem;color: var(--black2);}
.reserve-none-date-tabs{display: block;margin: 0 0 1.2rem;width: 100%;}
.reserve-none-date-tabs .flow-select-wrap{width: 100%;}
.reserve-none-date-select{width: 100%;font-size: 1.6rem;padding: 1.2rem 3.6rem 1.2rem 1.6rem;font-weight: 500;}
.reserve-none-date-select option{font-size: 1.6rem;padding: 0.8rem 1rem;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;}
.reserve-none-grid-wrap{padding: 0;}
.reserve-people-list{display: block;}
.reserve-people-list>*+*{margin-top: 1rem;}
.reserve-people-list[hidden]{display: none !important;}
.reserve-empty{text-align: center;padding: 2.4rem 1rem;color: var(--black2);font-size: 1.3rem;}
.reserve-people-legend-wrap{display: flex;align-items: center;justify-content: space-between;flex-wrap: wrap;gap: 0.4rem 1.2rem;margin: 1rem 0 0.4rem;padding: 1.6rem 1.4rem;background: rgba(102,127,134,0.05);border-radius: 0.6rem;}
.reserve-people-legend{display: flex;flex-wrap: wrap;gap: 0.4rem 1.2rem;list-style: none;padding: 0;margin: 0;font-size: 1.15rem;color: var(--black2);}
.reserve-people-rank-link{appearance: none;-webkit-appearance: none;background: none;border: none;padding: 0.3rem 0;display: inline-flex;align-items: center;gap: 0.5rem;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.2rem;font-weight: 600;color: var(--green);letter-spacing: 0.1em;line-height: 1.4;cursor: pointer;text-decoration: underline;text-underline-offset: 0.3em;text-decoration-thickness: 0.5px;transition: color 0.2s ease;}
.reserve-people-rank-link-icon{display: inline-flex;align-items: center;justify-content: center;width: 1.8rem;height: 1.8rem;border-radius: 50%;background: var(--green);color: #fff;font-size: 1.05rem;font-weight: 700;line-height: 1;}
@media (hover: hover) and (pointer: fine){.reserve-people-rank-link:hover{color: var(--green);border-bottom-color: var(--green);}
}
.rank-price>.faq-a-rank-link-wrap{margin-top: 0.4rem;}
.reserve-people-legend li{display: inline-flex;align-items: center;gap: 0.3rem;}
.reserve-people-legend-mark{font-size: 1.3rem;line-height: 1;}
.reserve-people-legend-mark.is-available,.reserve-people-legend-mark.is-few{color: var(--green);background: rgba(75,147,104,0.1);width: 1.8rem;height: 1.8rem;border-radius: 50%;display: inline-flex;align-items: center;justify-content: center;font-size: 1.2rem;}
.reserve-people-legend-mark.is-full{color: #cccccc;font-size: 1.4rem;}
.reserve-people-legend-mark.is-phone{color: var(--black2);display: inline-flex;align-items: center;justify-content: center;}
.reserve-people-legend-mark.is-phone .reserve-people-grid-phone-icon{width: 1.4rem;height: 1.4rem;}
.reserve-people-grid-wrap{display: block;width: 110%;max-width: 110%;max-height: 70vh;overflow-x: auto;overflow-y: auto;overscroll-behavior: none;overscroll-behavior-x: none;overscroll-behavior-y: none;-webkit-overflow-scrolling: auto;touch-action: pan-y;border: 1px solid var(--border);border-radius: 0.8rem;background: #fff;position: relative;z-index: 0;transform: translateZ(0);backface-visibility: hidden;}
.reserve-people-grid-wrap::-webkit-scrollbar{height: 6px;}
.reserve-people-grid-wrap::-webkit-scrollbar-thumb{background: rgba(0,0,0,0.3);border-radius: 3px;}
.reserve-people-grid{border-collapse: separate;border-spacing: 0;width: max-content;min-width: 100%;table-layout: fixed;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;}
.reserve-people-grid thead th{background-color: #f4f5f6;background-clip: padding-box;font-size: 1.15rem;font-weight: 600;color: var(--black);padding: 0.7rem 0.6rem;border-bottom: 1px solid var(--border);position: sticky;top: 0;z-index: 2;}
.reserve-people-grid th.reserve-people-grid-corner{text-align: center;padding-left: 1rem;width: 11rem;min-width: 11rem;max-width: 11rem;left: 0;z-index: 4;background-color: #f4f5f6;background-clip: padding-box;box-shadow: 0.4rem 0 0.6rem rgba(0,0,0,0.04);}
.reserve-people-grid th.reserve-people-grid-hour{width: 5rem;min-width: 5rem;max-width: 5rem;white-space: nowrap;text-align: center;cursor: pointer;user-select: none;transition: background 0.2s ease,color 0.2s ease;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1rem;color: var(--black2);}
.reserve-people-grid th.reserve-people-grid-hour:hover{background: rgba(75,147,104,0.08);color: var(--green);}
.reserve-people-grid th.reserve-people-grid-hour.is-selected-col{background: rgba(75,147,104,0.12);color: var(--green);font-weight: 700;box-shadow:
inset 2px 0 0 var(--green),inset -2px 0 0 var(--green),inset 0 2px 0 var(--green);}
.reserve-people-grid-cell.is-in-selected-col{background: rgba(75,147,104,0.05);box-shadow:
inset 2px 0 0 var(--green),inset -2px 0 0 var(--green);}
.reserve-people-grid-cell.is-in-selected-col.is-col-last{box-shadow:
inset 2px 0 0 var(--green),inset -2px 0 0 var(--green),inset 0 -2px 0 var(--green);}
.reserve-people-grid thead th:last-child,.reserve-people-grid tbody td:last-child{padding-right: 2.4rem;}
.reserve-people-grid tbody th.reserve-people-grid-teacher{text-align: center;padding: 0.8rem 0.8rem;background: #fff;border-bottom: 1px solid rgba(0,0,0,0.05);position: sticky;left: 0;z-index: 1;cursor: pointer;width: 11rem;min-width: 11rem;max-width: 11rem;box-shadow: 0.4rem 0 0.6rem rgba(0,0,0,0.04);}
@media (hover: hover) and (pointer: fine){.reserve-people-grid tbody th.reserve-people-grid-teacher:hover{background: rgba(102,127,134,0.05);}
}
.reserve-people-grid tbody th.reserve-people-grid-teacher-none{cursor: default;}
.reserve-people-grid-teacher-inner{display: flex;flex-direction: column;align-items: center;gap: 0.5rem;}
.reserve-people-grid-img,.reserve-people-grid-img-spacer,.reserve-people-grid-img-wrap{width: 8.4rem;height: 11.4rem;flex-shrink: 0;}
.reserve-people-grid-img-wrap{position: relative;display: block;}
.reserve-people-grid-img-wrap .reserve-people-grid-img{width: 100%;height: 100%;}
.reserve-people-grid-img{object-fit: cover;object-position: center 5%;}
.reserve-people-grid-rank{position: absolute;left: 0.3rem;bottom: 0.3rem;z-index: 2;padding: 0.3rem 0.5rem 0.1rem;font-size: 1rem;letter-spacing: 0.04em;line-height: 1;border-radius: 0.3rem;pointer-events: none;box-shadow: 0 0.1rem 0.4rem rgba(0,0,0,0.18);}
.reserve-people-grid-name{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.25rem;font-weight: 500;color: var(--black);letter-spacing: 0.02em;line-height: 1.2;text-align: center;text-decoration: underline;text-underline-offset: 0.2em;cursor: pointer;}
.reserve-people-grid-cell{text-align: center;padding: 0.8rem 0.4rem;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.2rem;font-weight: 600;border-bottom: 1px solid rgba(0,0,0,0.05);border-left: 1px solid rgba(0,0,0,0.04);width: 5rem;min-width: 5rem;max-width: 5rem;cursor: pointer;transition: background 0.18s ease,color 0.18s ease;}
.reserve-people-grid-cell.is-available,.reserve-people-grid-cell.is-few{color: var(--green);background: rgba(75,147,104,0.1);}
.reserve-people-grid-cell.is-phone{color: var(--black2);cursor: pointer;background: rgba(75,147,104,0.1);}
.reserve-people-grid-cell.is-full,.reserve-people-grid-cell.is-off{color: #cccccc;cursor: not-allowed;}
@media (hover: hover) and (pointer: fine){.reserve-people-grid-cell.is-available:hover,.reserve-people-grid-cell.is-few:hover{background: var(--black);color: #fff;}
.reserve-people-grid-cell.is-phone:hover{background: rgba(75,147,104,0.2);}
}
.reserve-people-grid-phone-icon{width: 1.6rem;height: 1.6rem;display: inline-block;vertical-align: middle;object-fit: contain;}
.reserve-people-grid-cell.is-selected{background: var(--green);color: #fff;}
@media (max-width: 640px){.reserve-people-grid tbody th.reserve-people-grid-teacher,.reserve-people-grid th.reserve-people-grid-corner{width: 8.4rem;min-width: 8.4rem;max-width: 8.4rem;}
.reserve-people-grid-name{font-size: 1.1rem;}
}
.reserve-matrix-table th.reserve-matrix-teacher{white-space: nowrap;min-width: 8rem;background: rgba(101,191,161,0.04);font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-weight: 500;color: var(--black2);}
.reserve-matrix-table th.reserve-matrix-hour{white-space: nowrap;min-width: 5.4rem;}
.reserve-matrix-table th.reserve-matrix-corner{background: rgba(101,191,161,0.06);}
.reserve-matrix-table td.reserve-matrix-empty{padding: 2.4rem 1rem;color: var(--black2);font-size: 1.3rem;background: #fff;}
.reserve-segment{display: flex;flex-wrap: wrap;gap: 0.6rem;flex: 1 1 auto;}
.reserve-seg-btn{appearance: none;-webkit-appearance: none;background: #fff;border: 1px solid var(--border);border-radius: 40rem;padding: 0.7rem 1.4rem;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.2rem;letter-spacing: 0.04em;color: var(--black2);cursor: pointer;transition: background 0.25s ease,color 0.25s ease,border-color 0.25s ease;flex: 0 0 calc(50% - 0.3rem);text-align: center;}
.reserve-seg-btn:hover{border-color: var(--green);color: var(--green);}
.reserve-seg-btn.is-active{background: var(--black2);border-color: transparent;color: #fff;font-weight: 600;box-shadow: 0 0.3rem 0.8rem rgba(18,166,134,0.25);}
.reserve-teachers{display: grid;grid-template-columns: repeat(auto-fill,minmax(min(11rem,100%),1fr));gap: 0.8rem;width: 100%;max-width: 100%;}
.reserve-teacher{position: relative;display: flex;flex-direction: column;align-items: center;gap: 0.4rem;padding: 1.2rem 0.8rem;border: 1px solid var(--border);border-radius: 0.8rem;background: #fff;cursor: pointer;transition: border-color 0.25s ease,box-shadow 0.25s ease;text-align: center;min-width: 0;overflow: hidden;}
.reserve-teacher[hidden]{display: none !important;}
.reserve-teacher-none{justify-content: center;text-align: center;gap: 0.4rem;}
.reserve-teacher input{position: absolute;opacity: 0;pointer-events: none;}
.reserve-teacher:hover{border-color: var(--green);}
.reserve-teacher.is-active{border-color: var(--green);box-shadow: 0 0.3rem 0.9rem rgba(18,166,134,0.15);}
.reserve-teacher-img{width: 100%;aspect-ratio: 1 / 1;object-fit: cover;border-radius: 0.5rem;display: block;margin: 0 0 0.6rem;}
.reserve-teacher-name{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.3rem;font-weight: 500;color: var(--black);}
.reserve-teacher-fee{font-size: 1.1rem;color: var(--black2);display: none;}
.reserve-note{font-size: 1.15rem;color: var(--black2);margin: 0;letter-spacing: 0.04em;}
.reserve-teacher-tabs{display: grid;grid-template-columns: 1fr 1fr;gap: 0;width: 100%;margin-bottom: 0;position: relative;z-index: 1;}
.reserve-teacher-tab-panel{min-width: 0;width: 100%;background: transparent;border: none;border-radius: 0;padding: 0;margin-top: 1.6rem;position: relative;z-index: 0;}
.reserve-teacher-tab-panel[hidden]{display: none !important;}
.reserve-teacher-tab{appearance: none;-webkit-appearance: none;background: #f0f0ec;border: 1px solid var(--border);border-bottom: none;border-radius: 0.8rem 0.8rem 0 0;padding: 1.2rem 1rem;font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.4rem;font-weight: 600;letter-spacing: 0.04em;color: var(--black2);cursor: pointer;transition: background 0.2s ease,color 0.2s ease;margin-bottom: -1px;text-align: center;}
.reserve-teacher-tab+.reserve-teacher-tab{border-left: none;}
.reserve-teacher-tab:hover{color: var(--green);}
.reserve-teacher-tab.is-active{background: #fff;color: var(--green);position: relative;z-index: 2;}
.reserve-teacher-segment{display: flex;flex-wrap: wrap;gap: 0.6rem;grid-template-columns: none;width: 100%;margin-bottom: 1.6rem;justify-content: center;}
.reserve-teacher-segment .reserve-teacher-tab{background: #fff;border: 1px solid var(--border);border-bottom: 1px solid var(--border);border-radius: 40rem;padding: 1.2rem 2rem;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.2rem;font-weight: 500;letter-spacing: 0.04em;color: var(--black2);margin-bottom: 0;flex: 0 0 auto;text-align: center;}
.reserve-teacher-segment .reserve-teacher-tab+.reserve-teacher-tab{border-left: 1px solid var(--border);}
.reserve-teacher-segment .reserve-teacher-tab:hover{border-color: var(--green);color: var(--green);background: #fff;}
.reserve-teacher-segment .reserve-teacher-tab.is-active{background: var(--black2);border-color: transparent;color: #fff;font-weight: 600;box-shadow: 0 0.3rem 0.8rem rgba(18,166,134,0.25);}
.reserve-teacher-block-d .reserve-teacher-tab-panel{border: none;border-radius: 0;padding: 0;background: transparent;margin-top: 1.2rem;}
.reserve-teacher-tab-panel[hidden]{display: none !important;}
.reserve-teacher-tab-panel[data-tab-panel="with"] .reserve-teachers{display: grid;grid-template-columns: repeat(2,1fr);gap: 1rem;width: 100%;}
.rt-modal-tabs{display: grid;grid-template-columns: 1fr 1fr;gap: 0;width: 100%;margin: 1.6rem 0 0;position: relative;z-index: 1;}
.rt-modal-tab{appearance: none;-webkit-appearance: none;background: #f0f0ec;border: 1px solid var(--border);border-bottom: none;border-radius: 0.6rem 0.6rem 0 0;padding: 1rem 0.6rem;font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.3rem;font-weight: 600;letter-spacing: 0.04em;color: var(--black2);cursor: pointer;transition: background 0.2s ease,color 0.2s ease;margin-bottom: -1px;}
.rt-modal-tab+.rt-modal-tab{border-left: none;}
.rt-modal-tab.is-active{background: #fff;color: var(--green);position: relative;z-index: 2;}
.rt-modal-tab-panel{background: #fff;border: 1px solid var(--border);border-radius: 0 0 0.8rem 0.8rem;padding: 1.6rem 3rem 6rem;position: relative;z-index: 0;margin-bottom: 1.6rem;}
.rt-modal-tab-panel[hidden]{display: none !important;}
.rt-modal-calendar-title{font-size: 1.8rem !important;text-align: center;margin: 6rem 0 1.2rem !important;}
.rt-modal-calendar{margin: 0;}
.rt-modal-timetable-wrap{margin-top: 2.4rem;}
.rt-modal-timetable-title{text-align: center;}
.rt-modal-next{display: block;width: 100%;margin: 2.4rem 0 0;padding: 2.2rem 2rem;font-size: 1.4rem;letter-spacing: 0.04em;}
.rt-modal-next[disabled]{opacity: 0.5;cursor: not-allowed;}
.rt-modal-select-teacher{display: block;width: 100%;margin: 1.6rem 0 2rem;padding: 1.8rem 2rem;font-size: 1.4rem;letter-spacing: 0.04em;}
.rt-modal-select-teacher[hidden]{display: none !important;}
.reserve-teacher-modal.is-simple-profile .rt-modal-tab-panel[data-rt-tab-panel="profile"]{border: none;border-radius: 0;padding: 0;background: transparent;box-shadow: none;margin-bottom: 0;}
.reserve-teacher-modal.is-simple-profile .rt-modal-tabs{display: none !important;}
.reserve-teacher-modal .voice-modal-content{background: #fff;}
.duration-modal{position: fixed;inset: 0;z-index: 200000;display: flex;align-items: center;justify-content: center;opacity: 0;pointer-events: none;transition: opacity 0.3s ease;}
.duration-modal.is-open{opacity: 1;pointer-events: auto;}
.duration-modal-backdrop{position: absolute;inset: 0;background: rgba(0,0,0,0.5);backdrop-filter: blur(4px);-webkit-backdrop-filter: blur(4px);}
.duration-custom-native-wrap{position: absolute;width: 1px;height: 1px;overflow: hidden;clip: rect(0 0 0 0);pointer-events: none;opacity: 0;}
.duration-custom-select{position: relative;width: 100%;text-align: left;}
.duration-custom-trigger{appearance: none;-webkit-appearance: none;width: 100%;background: #fff;border: 1px solid var(--border);border-radius: 0.8rem;padding: 1.1rem 3rem 1.1rem 1.4rem;font-family: inherit;font-size: 1.4rem;color: var(--black);cursor: pointer;position: relative;display: flex;flex-direction: column;align-items: flex-start;gap: 0.2rem;text-align: left;transition: border-color 0.2s ease,box-shadow 0.2s ease;}
.duration-custom-trigger:hover,.duration-custom-trigger.is-open{border-color: var(--green);}
.duration-custom-trigger.is-open{box-shadow: 0 0 0 3px rgba(75,147,104,0.12);}
.duration-custom-trigger-main{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.4rem;font-weight: 400;letter-spacing: 0.04em;color: var(--black);line-height: 1.5;}
.duration-custom-trigger-sub{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1rem;color: var(--black2);opacity: 0.7;letter-spacing: 0.02em;line-height: 1.5;}
.duration-custom-trigger-arrow{position: absolute;right: 1.2rem;top: 50%;width: 0.7rem;height: 0.7rem;border-right: 2px solid var(--black2);border-bottom: 2px solid var(--black2);transform: translateY(-70%) rotate(45deg);transition: transform 0.2s ease;pointer-events: none;}
.duration-custom-trigger.is-open .duration-custom-trigger-arrow{transform: translateY(-30%) rotate(225deg);}
.duration-custom-list{position: absolute;top: calc(100% + 0.4rem);left: 0;right: 0;background: #fff;border: 1px solid var(--border);border-radius: 0.8rem;list-style: none;margin: 0;padding: 0.4rem;z-index: 10;box-shadow: 0 1.2rem 2.4rem rgba(0,0,0,0.12);max-height: 32rem;overflow-y: auto;}
.duration-custom-list.is-up{top: auto;bottom: calc(100% + 0.4rem);box-shadow: 0 -1.2rem 2.4rem rgba(0,0,0,0.12);}
.schedule-modal-content.is-select-open,.duration-modal-content.is-select-open{overflow: visible !important;}
.schedule-modal-content.is-select-open .schedule-modal-stages{overflow: visible !important;}
.duration-custom-option{display: flex;flex-direction: column;gap: 0.25rem;padding: 1rem 1.2rem;border-radius: 0.5rem;cursor: pointer;transition: background 0.15s ease;}
.duration-custom-option:hover{background: rgba(75,147,104,0.08);}
.duration-custom-option.is-selected{background: rgba(75,147,104,0.12);}
.duration-custom-option.is-disabled{background: rgba(0,0,0,0.06);color: var(--black2);cursor: not-allowed;opacity: 0.72;}
.duration-custom-option.is-disabled:hover{background: rgba(0,0,0,0.06);}
.duration-custom-option.is-disabled .duration-custom-option-main{color: var(--black2);}
.duration-custom-option.is-disabled .duration-custom-option-sub{color: var(--black2);opacity: 0.9;}
.duration-custom-option.is-phone-unavailable .duration-custom-option-sub{color: var(--green);opacity: 1;}
.schedule-modal-duration-select option:disabled{background: rgba(0,0,0,0.08);color: var(--black2);}
.duration-custom-option-main{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.35rem;font-weight: 400;letter-spacing: 0.04em;color: var(--black);line-height: 1.5;}
.duration-custom-option-sub{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1rem;color: var(--black2);opacity: 0.6;letter-spacing: 0.02em;line-height: 1.5;}
.duration-custom-option-sub[hidden]{display: none;}
.duration-modal-content{position: relative;width: 90%;max-width: 40rem;background: #fff;border-radius: 1.2rem;padding: 3.2rem 2rem 2.4rem;text-align: center;box-shadow: 0 20px 50px rgba(0,0,0,0.25);}
.duration-modal-content,.duration-modal.is-open .duration-modal-content{padding-top: 4rem !important;padding-bottom: 4rem !important;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;}
.duration-modal-close{position: absolute;top: 1rem;right: 1rem;appearance: none;-webkit-appearance: none;width: 3.2rem;height: 3.2rem;background: var(--green);border: none;border-radius: 50%;font-size: 2.1rem;font-weight: 300;line-height: 1;color: #fff;cursor: pointer;display: flex;align-items: center;justify-content: center;box-shadow: 0 2px 8px rgba(0,0,0,0.12);transition: background 0.2s ease,transform 0.2s ease;z-index: 10;}
.duration-modal-close:hover{background: var(--green);}
.duration-modal-info{background: transparent;border-radius: 0;padding: 1rem 0 1rem 1rem;margin: -0.8rem 0 1.6rem;text-align: left;}
.duration-modal-info-row{margin: 0;display: flex;align-items: baseline;gap: 0.6rem;font-size: 1.25rem;font-family: inherit;}
.duration-modal-info-row+.duration-modal-info-row{margin-top: 0;}
.duration-modal-naming-fee{margin: 0;display: flex;align-items: baseline;gap: 0.6rem;font-size: 1.25rem;font-family: inherit;}
.duration-modal-companion-note{margin: 0.4rem 0 0;padding: 0 0 0 0.2rem;font-family: inherit;font-size: 1rem;line-height: 1.6;color: var(--black2);letter-spacing: 0.04em;text-align: left;}
.duration-modal-info-label{font-family: inherit;font-weight: 500;color: var(--black2);letter-spacing: 0.04em;min-width: 8rem;}
*[x-apple-data-detectors],*[x-apple-data-detectors-type],a[x-apple-data-detectors],a[x-apple-data-detectors-type="calendar-event"],a[x-apple-data-detectors-type="link"],a[x-apple-data-detectors-type="phone-number"],span[x-apple-data-detectors],.x-apple-data-detectors{color: inherit !important;-webkit-text-fill-color: inherit !important;text-decoration: none !important;border-bottom: 0 !important;background: transparent !important;pointer-events: none !important;font: inherit !important;}
.duration-modal-info-value{font-family: inherit;font-weight: 500;color: var(--green);-webkit-text-fill-color: var(--green) !important;}
.duration-modal-info-value,.duration-modal-info-value *,.duration-modal-info-value a,.duration-modal-info-value a *,.duration-modal-info-value [x-apple-data-detectors],.duration-modal-info-value [x-apple-data-detectors] *,a[x-apple-data-detectors]{color: var(--green) !important;-webkit-text-fill-color: var(--green) !important;text-decoration: none !important;border-bottom: 0 !important;background: transparent !important;font-family: inherit !important;font-size: inherit !important;font-weight: inherit !important;pointer-events: none !important;}
.duration-modal-title{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.8rem;font-weight: 600;letter-spacing: 0.04em;margin: 0 0 1.6rem;color: var(--black);}
.duration-modal-options{display: flex;flex-direction: column;gap: 0.6rem;margin-bottom: 1.6rem;}
.duration-modal-options-label{display: block;text-align: left;font-size: 1.15rem;font-weight: 500;letter-spacing: 0.04em;color: var(--black2);margin-bottom: 0.2rem;padding-left: 0.2rem;}
.duration-modal-guests-block[hidden]{display: none !important;}
.duration-modal-options .reserve-seg-btn{padding: 1rem 1.4rem;font-size: 1.3rem;}
.duration-modal-next{width: 100%;padding: 0 1.6rem;font-size: 1.5rem;aspect-ratio: 8 / 1;min-height: 5rem;display: flex;align-items: center;justify-content: center;gap: 0.4rem;}
.duration-modal-phone-guide{margin-top: 1.2rem;text-align: center;}
.duration-modal-phone-guide[hidden]{display: none !important;}
.duration-modal-phone-guide-text{margin: 0 0 0.6rem;font-family: inherit;font-size: 1.1rem;line-height: 1.6;color: var(--black2);letter-spacing: 0.04em;}
.duration-modal-phone-link{display: inline-flex;align-items: center;justify-content: center;gap: 0.6rem;font-family: "Cardo",serif;font-size: 2rem;font-weight: 600;letter-spacing: 0.06em;color: var(--green) !important;text-decoration: none;transition: opacity 0.2s ease;}
.duration-modal-phone-link:hover{opacity: 0.85;}
.rt-modal-date-pulldown-wrap{display: flex;align-items: center;gap: 0.8rem;margin: 0 0 1.6rem;}
.rt-modal-date-pulldown-label{display: none;}
.rt-modal-date-pulldown-wrap .flow-select-wrap{flex: 1 1 auto;min-width: 0;}
.rt-modal-date-pulldown{width: 100%;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.2rem;}
.rt-modal-time-list{display: grid;grid-template-columns: repeat(2,1fr);gap: 0.4rem;}
.rt-modal-time-row{appearance: none;-webkit-appearance: none;background: #fff;border: 1px solid var(--border);border-radius: 0.6rem;padding: 1rem 1.4rem;display: flex;justify-content: space-between;align-items: center;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.2rem;color: var(--black2);-webkit-text-fill-color: var(--black2);cursor: pointer;transition: background 0.2s ease,border-color 0.2s ease;}
.rt-modal-time-row *,.rt-modal-time-row-slot,.rt-modal-time-row-mark{color: inherit;-webkit-text-fill-color: inherit;}
.rt-modal-time-row.is-available .rt-modal-time-row-mark{color: var(--green) !important;-webkit-text-fill-color: var(--green) !important;font-weight: 600;}
.rt-modal-time-row.is-available{background: rgba(75,147,104,0.1);}
.rt-modal-time-row.is-available:hover{border-color: var(--green);background: rgba(75,147,104,0.2);}
.rt-modal-time-row.is-unavailable{background: #f5f5f5;color: #bcbcbc;cursor: not-allowed;}
.rt-modal-time-row.is-phone{background: rgba(75,147,104,0.1);cursor: pointer;}
.rt-modal-time-row.is-phone:hover{border-color: var(--green);background: rgba(75,147,104,0.2);}
.rt-modal-time-row-phone{width: 1.6rem;height: 1.6rem;display: inline-block;vertical-align: middle;object-fit: contain;}
.rt-modal-time-row-slot{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.2rem;letter-spacing: 0.04em;}
.rt-modal-time-row-mark{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.2rem;font-weight: 600;}
.rt-modal-time-row.is-available .rt-modal-time-row-mark{color: var(--green);}
.rt-modal-time-row.is-unavailable .rt-modal-time-row-mark{color: #cccccc;}
.schedule-modal{position: fixed;inset: 0;z-index: 200000;display: flex;align-items: center;justify-content: center;opacity: 0;pointer-events: none;transition: opacity 0.3s ease;}
.schedule-modal.is-open{opacity: 1;pointer-events: auto;}
.schedule-modal-backdrop{position: absolute;inset: 0;background: rgba(0,0,0,0.5);backdrop-filter: blur(4px);-webkit-backdrop-filter: blur(4px);}
.schedule-modal-content{position: relative;width: 90%;max-width: 40rem;background: #fff;border-radius: 1.2rem;padding: 3.2rem 2rem 2.4rem;text-align: center;box-shadow: 0 20px 50px rgba(0,0,0,0.25);max-height: calc(100vh - 4rem);overflow-y: auto;-webkit-overflow-scrolling: touch;overscroll-behavior: contain;}
.schedule-modal-close{position: absolute;top: 1rem;right: 1rem;appearance: none;-webkit-appearance: none;width: 3.2rem;height: 3.2rem;background: var(--green);border: none;border-radius: 50%;font-size: 2.1rem;font-weight: 300;line-height: 1;color: #fff;cursor: pointer;display: flex;align-items: center;justify-content: center;box-shadow: 0 2px 8px rgba(0,0,0,0.12);transition: background 0.2s ease,transform 0.2s ease;z-index: 10;}
.schedule-modal-close:hover{background: var(--green);}
.schedule-modal-title{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 2rem;font-weight: 600;letter-spacing: 0.1em;margin: 0 0 1.6rem;color: var(--black);}
.schedule-modal-stages{position: relative;overflow: hidden;display: grid;grid-template-areas: "stack";}
.schedule-modal-stage{grid-area: stack;display: flex;flex-direction: column;gap: 1.2rem;transform: translateX(100%);opacity: 0;pointer-events: none;transition:
transform 0.45s cubic-bezier(0.32,0.72,0,1),opacity 0.3s ease;}
.schedule-modal-stage.is-active{transform: translateX(0);opacity: 1;pointer-events: auto;}
.schedule-modal-lead{font-size: 1.25rem;line-height: 1.85;color: var(--black2);margin: 0 0 0.4rem;letter-spacing: var(--letter);}
.schedule-modal-back-btn{appearance: none;-webkit-appearance: none;background: none;border: none;align-self: center;margin-top: 0.6rem;font-family: inherit;font-size: 1.2rem;color: var(--black2);letter-spacing: 0.04em;cursor: pointer;padding: 0.4rem 0.8rem;transition: color 0.2s ease;}
.schedule-modal-back-btn:hover{color: var(--black);}
.schedule-modal-duration{display: flex;align-items: center;gap: 0.8rem;margin: 0 0 1.2rem;}
.schedule-modal-duration-label{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.3rem;font-weight: 600;color: var(--black);white-space: nowrap;}
.schedule-modal-duration .flow-select-wrap{flex: 1 1 auto;min-width: 0;}
.schedule-modal-duration-select{width: 100%;}
.schedule-modal-info{background: #f8f8f8;border-radius: 0.6rem;padding: 1rem 1.2rem;margin: 0 0 1.6rem;text-align: left;}
.schedule-modal-info-row{margin: 0;display: flex;align-items: baseline;gap: 0.6rem;font-size: 1.2rem;}
.schedule-modal-info-row+.schedule-modal-info-row{margin-top: 0.4rem;}
.schedule-modal-info-label{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-weight: 600;color: var(--black2);letter-spacing: 0.04em;min-width: 5rem;}
.schedule-modal-info-value{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-weight: 500;color: var(--green);}
.schedule-modal-confirm{display: block;width: 100%;padding: 2rem 1.6rem;font-size: 1.4rem;letter-spacing: 0.04em;}
body.from-people-schedule .reserve-steps,body.from-people-schedule .reserve-nav .button.back{display: none !important;}
.phone-confirm-modal{position: fixed;inset: 0;z-index: 200000;display: flex;align-items: center;justify-content: center;opacity: 0;pointer-events: none;transition: opacity 0.3s ease;}
.phone-confirm-modal.is-open{opacity: 1;pointer-events: auto;}
.phone-confirm-backdrop{position: absolute;inset: 0;background: rgba(0,0,0,0.5);backdrop-filter: blur(4px);-webkit-backdrop-filter: blur(4px);}
.phone-confirm-content{position: relative;width: 90%;max-width: 36rem;background: #fff;border-radius: 1.2rem;padding: 6.8rem 2rem 2rem;text-align: center;box-shadow: 0 20px 50px rgba(0,0,0,0.25);}
.phone-confirm-text{font-size: 1.4rem;letter-spacing: 0.04em;line-height: 1.7;margin: 0 0 1.4rem;color: var(--black);}
.phone-confirm-close{position: absolute;top: 1rem;right: 1rem;appearance: none;-webkit-appearance: none;width: 3.2rem;height: 3.2rem;background: var(--green);border: none;border-radius: 50%;font-size: 2.1rem;font-weight: 300;line-height: 1;color: #fff;cursor: pointer;display: flex;align-items: center;justify-content: center;box-shadow: 0 2px 8px rgba(0,0,0,0.12);transition: background 0.2s ease,transform 0.2s ease;z-index: 10;}
.phone-confirm-close:hover{background: var(--green);}
.phone-confirm-number{display: inline-flex;align-items: center;justify-content: center;gap: 0.6rem;font-family: "Cardo",serif;font-size: 2.6rem;font-weight: 600;letter-spacing: 0.06em;color: var(--green) !important;text-decoration: none;margin: 0 auto 1.4rem;text-align: center;transition: opacity 0.2s ease,transform 0.2s ease;}
.phone-confirm-number:hover{opacity: 0.85;}
.phone-confirm-number-icon{width: 1.8rem;height: 1.8rem;display: inline-block;background: currentColor;-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/></svg>") center / contain no-repeat;mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/></svg>") center / contain no-repeat;}
@media (max-width: 768px){.phone-confirm-number{display: flex;width: 100%;max-width: 28rem;background: var(--green);color: #fff !important;padding: 1.4rem 1.6rem;border-radius: 2.8rem;font-size: 2.2rem;box-shadow: 0 0.6rem 1.4rem rgba(75,147,104,0.28);gap: 0.8rem;}
.phone-confirm-number:hover,.phone-confirm-number:active{opacity: 1;transform: scale(0.98);}
}
.phone-confirm-info{margin: 0 auto 1.2rem;padding: 1rem 1.4rem;background: #fafaf9;border-radius: 0.6rem;font-size: 1.2rem;max-width: 26rem;}
.phone-confirm-info-row{display: grid;grid-template-columns: 4.5em 1fr;align-items: baseline;gap: 0.8rem;padding: 0.3rem 0;}
.phone-confirm-info-row dt{color: var(--black2);font-weight: 500;margin: 0;}
.phone-confirm-info-row dd{margin: 0;color: var(--black);text-align: left;min-width: 0;}
.phone-confirm-info-row dt{white-space: nowrap;}
.phone-confirm-info-row dd[data-pc-business-hours]{white-space: pre-line;text-align: left;}
.phone-confirm-note{font-size: 1.05rem;color: var(--black2);opacity: 0.72;line-height: 1.6;margin: 0 0 1.6rem;text-align: center;}
.reserve-teacher-tab-panel[data-tab-panel="with"] .reserve-teachers,.reserve-none-teachers{display: grid;grid-template-columns: repeat(2,1fr);gap: 1rem;padding: 0.4rem 0;width: 100%;}
.reserve-teacher-tab-panel[data-tab-panel="with"] .reserve-teacher,.reserve-none-teachers .reserve-teacher{width: 100%;min-width: 0;}
.reserve-teacher-tab-panel[data-tab-panel="with"] .reserve-teacher .people-cate,.reserve-none-teachers .reserve-teacher .people-cate{position: static;top: auto;left: auto;width: 100%;aspect-ratio: auto;display: flex;flex-wrap: wrap;align-content: flex-start;justify-content: center;gap: 0.3rem;padding: 0.4rem 0 0;pointer-events: auto;z-index: auto;}
.reserve-teacher-tab-panel[data-tab-panel="with"] .reserve-teacher .reserve-teacher-zyutu,.reserve-none-teachers .reserve-teacher .reserve-teacher-zyutu{display: inline-block;padding: 0.15rem 0.6rem;font-size: 0.95rem;line-height: 1.3;background: #f3f3f3;color: var(--black);border-radius: 0.3rem;letter-spacing: 0.02em;}
.reserve-teacher-tab-panel[data-tab-panel="with"] .reserve-teacher .reserve-teacher-name-row,.reserve-none-teachers .reserve-teacher .reserve-teacher-name-row{display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 0.3rem;width: 100%;}
.reserve-teacher-tab-panel[data-tab-panel="with"] .reserve-teacher .reserve-teacher-name-row .people-cate-2,.reserve-none-teachers .reserve-teacher .reserve-teacher-name-row .people-cate-2{display: inline-flex;margin: 0;}
.reserve-teacher-profile-btn{width: 90%;padding: 0.8rem 2.2rem 0.8rem 0.8rem;font-size: 1.1rem;letter-spacing: 0.04em;margin: 2rem auto 1rem;display: block;line-height: 1.3;position: relative;background: transparent;border: 1px solid var(--green);color: var(--green) !important;}
.reserve-teacher-profile-btn::before{display: none;}
.reserve-teacher-profile-btn::after{content: '＋';position: absolute;right: 0.7rem;top: 50%;transform: translateY(-50%);font-size: 1.4rem;line-height: 1;}
.reserve-teacher-slider-wrap .slider-prev,.reserve-teacher-slider-wrap .slider-next{display: none !important;}
.reserve-customer-block .reserve-segment{justify-content: center;}
.reserve-customer-block .reserve-seg-btn{flex: 0 0 auto;padding: 0.7rem 2rem;}
.reserve-customer-note{margin: 1.4rem 0 0;padding: 2rem 2rem;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.3rem;line-height: 1.85;color: var(--black2);background: var(--gray);border-radius: 0.4rem;letter-spacing: 0.02em;}
.reserve-customer-note strong{font-family: inherit;font-weight: 600;color: var(--green);}
.reserve-matrix{margin-bottom: 3rem;margin-top: 0rem;}
.reserve-matrix-head{display: flex;justify-content: space-between;align-items: center;gap: 1.2rem;margin-bottom: 1rem;}
.reserve-week-nav{appearance: none;-webkit-appearance: none;background: #fff;border: 1px solid var(--border);width: 3.4rem;height: 3.4rem;border-radius: 50%;font-size: 1.8rem;color: var(--green);cursor: pointer;display: inline-flex;align-items: center;justify-content: center;line-height: 1;transition: background 0.25s ease,color 0.25s ease,border-color 0.25s ease;}
.reserve-week-nav:hover:not([disabled]){background: var(--green);border-color: var(--green);color: #fff;}
.reserve-week-nav[disabled]{opacity: 0.35;cursor: not-allowed;}
.reserve-week-label{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.4rem;letter-spacing: 0.04em;color: var(--black);}
.reserve-matrix-wrap{background: #fff;border: 1px solid var(--border);border-right: none;border-radius: 1.2rem 0 0 1.2rem;overflow-x: auto;-webkit-overflow-scrolling: touch;overscroll-behavior-x: contain;box-shadow:
0 1px 2px rgba(0,0,0,0.04),0 0.5rem 1.4rem rgba(18,166,134,0.05);margin-right: calc((100% - 100vw) / 2);}
.reserve-matrix-table{width: 100%;min-width: 64rem;border-collapse: collapse;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.2rem;}
.reserve-matrix-table th,.reserve-matrix-table td{border-bottom: 1px solid rgba(0,0,0,0.06);border-right: 1px solid rgba(0,0,0,0.06);padding: 0.8rem 0.8rem;text-align: center;vertical-align: middle;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;}
.reserve-matrix-table th:last-child,.reserve-matrix-table td:last-child{border-right: none;}
.reserve-matrix-table thead th{background: rgba(101,191,161,0.06);font-weight: 600;letter-spacing: 0.04em;color: var(--black);padding: 1rem 0.5rem;}
.reserve-matrix-table thead th:first-child{position: sticky;left: 0;z-index: 3;background: #fff;box-shadow: 0.4rem 0 0.6rem rgba(0,0,0,0.04);}
.reserve-matrix-table thead small{display: block;font-weight: 400;font-size: 1rem;margin-top: 0.2rem;}
.reserve-matrix-table th.reserve-matrix-sun,.reserve-matrix-table th.reserve-matrix-holiday{color: #d1576a;}
.reserve-matrix-table th.reserve-matrix-sat{color: #4a8fbf;}
.reserve-matrix-table tbody th{background: #fff;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-weight: 500;color: var(--black2);width: 8rem;position: sticky;left: 0;z-index: 1;box-shadow: 0.4rem 0 0.6rem rgba(0,0,0,0.04);}
.reserve-matrix-cell{font-size: 1.5rem;font-weight: 600;cursor: pointer;transition: background 0.2s ease,color 0.2s ease;}
.reserve-matrix-cell.is-available,.reserve-matrix-cell.is-few{color: var(--green);background: rgba(75,147,104,0.1);}
.reserve-matrix-cell.is-few{opacity: 0.8;}
.reserve-matrix-cell.is-phone{color: var(--black2);cursor: not-allowed;}
.reserve-matrix-cell.is-full{color: #cccccc;cursor: not-allowed;}
.reserve-matrix-cell.is-off{color: #e6e6e6;cursor: not-allowed;}
.reserve-matrix-cell.is-available:hover,.reserve-matrix-cell.is-few:hover{background: rgba(101,191,161,0.12);}
.reserve-matrix-cell.is-selected{background: var(--green);color: #fff;box-shadow: inset 0 0 0 1px rgba(255,255,255,0.3);}
.reserve-legend{list-style: none;display: flex;flex-wrap: wrap;gap: 1.4rem;padding: 1.2rem 0 0;margin: 0;font-size: 1.15rem;color: var(--black2);}
.reserve-legend li{display: inline-flex;align-items: center;gap: 0.4rem;}
.reserve-legend-available{color: var(--green);}
.reserve-legend-few{color: var(--green);opacity: 0.7;}
.reserve-legend-phone{color: var(--black2);}
.reserve-legend-full{color: #cccccc;}
.reserve-legend-off{color: #e6e6e6;}
.reserve-nav{display: flex;justify-content: center;margin-top: 3rem;}
.reserve-nav-2col{justify-content: space-between;gap: 1rem;flex-wrap: wrap;}
.reserve-nav .button,.reserve-nav .cta-button{margin: 0;}
.reserve-nav-2col .button,.reserve-nav-2col .cta-button{flex: 1 1 0;width: auto;min-width: 14rem;}
.reserve-nav .button.back{border: none !important;padding: 1.7rem 0.4rem 1.7rem 0;font-size: 1.4rem;letter-spacing: 0.02em;background: transparent;color: var(--black) !important;flex: 0 0 auto;min-width: 0;display: inline-flex;align-items: center;justify-content: flex-start;gap: 0.4rem;white-space: nowrap;}
.reserve-nav .button.back .arrow-green{position: static;top: auto;right: auto;left: auto;transform: scaleX(-1);filter: brightness(0);order: -1;}
.reserve-nav-2col .cta-button{display: inline-flex;align-items: center;justify-content: center;gap: 0.8rem;padding-left: 2rem;letter-spacing: 0.02em;}
.reserve-nav-2col .cta-button .arrow-white{position: static;top: auto;right: auto;transform: none;}
.reserve-next-btn[disabled]{opacity: 0.4;cursor: not-allowed;}
.page-reserve .cta-button[disabled],.page-reserve .cta-button:disabled{opacity: 0.4;cursor: not-allowed;pointer-events: none;}
.reserve-summary{background: linear-gradient(135deg,rgba(101,191,161,0.08) 0%,rgba(101,191,161,0.03) 100%);border: 1px solid rgba(101,191,161,0.25);border-radius: 1rem;padding: 2rem 2rem 1.8rem;margin-bottom: 2.4rem;}
.reserve-summary-title{margin: 0 0 1.4rem;padding: 0;text-align: center;}
.reserve-summary-title-text{display: inline-block;padding: 0;background: none;color: var(--green);font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.2rem;font-weight: 600;letter-spacing: 0.14em;border-radius: 0;line-height: 1.4;}
.reserve-summary-list{list-style: none;margin: 0;padding: 0;display: flex;flex-direction: column;gap: 0;}
.reserve-summary-list li{display: grid;grid-template-columns: 7rem 1fr;align-items: baseline;gap: 1rem;padding: 1rem 0;border-bottom: 1px solid rgba(101,191,161,0.18);}
.reserve-summary-list li:first-child{padding-top: 0.4rem;}
.reserve-summary-list li:last-child{border-bottom: none;}
.reserve-summary-label{font-size: 1.3rem;color: var(--black2);letter-spacing: 0.08em;font-weight: 500;}
.reserve-summary-value{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.35rem;color: var(--black);font-weight: 500;letter-spacing: 0.04em;text-align: right;}
.reserve-summary-total{padding-top: 1.6rem !important;margin-top: 0.4rem;border-bottom: none !important;}
.reserve-summary-total .reserve-summary-label{font-size: 1.45rem;color: var(--black);font-weight: 600;}
.reserve-summary-total .reserve-summary-value{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.8rem;font-weight: 500;color: var(--green);letter-spacing: 0.04em;line-height: 1.2;}
.reserve-tax-note{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 0.55em;font-weight: 400;color: inherit;letter-spacing: 0.02em;margin-left: 0.2em;vertical-align: 0.15em;}
.reserve-price-notice{margin: 1.2rem 0 0;padding: 1rem 1.2rem;border: 1px solid rgba(198, 146, 65, 0.35);border-radius: 0.8rem;background: rgba(198, 146, 65, 0.12);font-size: 1.05rem;line-height: 1.7;color: var(--black3);letter-spacing: 0.04em;text-align: left;}
.reserve-price-notice--inline{display: block;margin-top: 0.8rem;font-weight: 500;color: var(--black3);}
.reserve-summary-datetime-note{display: block;margin-top: 0.4rem;font-size: 1rem;color: var(--black2);letter-spacing: 0.02em;font-weight: 400;}
.reserve-input.is-locked,.reserve-input[readonly]{background: var(--gray);color: var(--black);box-shadow: none !important;outline: none;}
.reserve-form-locked-note{margin: 0.4rem 0 0;font-size: 1rem;color: var(--black2);letter-spacing: 0.02em;}
.reserve-form{background: #fff;border: 1px solid var(--border);border-radius: 1.6rem;padding: 2.4rem 2rem;margin-bottom: 0;box-shadow:
0 1px 2px rgba(0,0,0,0.04),0 0.6rem 1.6rem rgba(18,166,134,0.06);}
.signup-form{background: #fff;border: none;border-radius: 1.6rem;padding: 2.4rem 3rem 8rem;margin-bottom: 0;}
.reserve-form-group{margin-bottom: 2.8rem;}
.reserve-form-group:last-child{margin-bottom: 0;}
.reserve-form-label{display: block;font-size: 1.25rem;font-weight: 600;letter-spacing: 0.04em;color: var(--black);margin-bottom: 0.6rem;}
.reserve-required{display: inline-block;margin-left: 0.6rem;padding: 0.15rem 0.55rem 0.15rem;border-radius: 0.3rem;background: var(--green);color: #fff;font-size: 1rem;letter-spacing: 0.06em;font-weight: 500;vertical-align: middle;}
.reserve-input{width: 100%;appearance: none;-webkit-appearance: none;background: var(--gray);border: none;border-radius: 0.8rem;padding: 1.6rem;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.3rem;color: var(--black);letter-spacing: 0.04em;transition: background 0.25s ease,box-shadow 0.25s ease;}
.reserve-input.reserve-input--display{background: var(--gray);}
.schedule-modal.is-open .schedule-modal-content .reserve-form-group{margin-bottom: 0.8rem;}
.schedule-modal-title-big{font-size: 2.6rem;display: inline-block;margin-top: 0.4rem;line-height: 1.5;}
.schedule-modal-title-small{font-size: 1.6rem;display: inline-block;}
.reserve-form-birth select{border: none;}
.reserve-input:focus{outline: none;background: #fff;box-shadow: inset 0 0 0 2px var(--green);}
.reserve-textarea{resize: vertical;min-height: 8rem;line-height: 1.8;}
.reserve-form-birth{display: flex;gap: 0.8rem;}
.reserve-form-birth .flow-select-wrap{flex: 1 1 auto;}
.reserve-form-name{display: flex;gap: 0.8rem;}
.reserve-form-name .reserve-form-name-item{flex: 1 1 0;display: flex;flex-direction: column;gap: 0.4rem;}
.reserve-form-name .reserve-form-name-sub{font-size: 1.1rem;color: var(--black2);letter-spacing: 0.04em;}
.reserve-traffic-source-list{display: flex;flex-wrap: wrap;gap: 0.8rem;margin-top: 1rem;}
.reserve-traffic-source-item{display: inline-flex;align-items: center;gap: 0.6rem;min-height: 3.6rem;padding: 0.85rem 1.1rem;border: 1px solid var(--border);border-radius: 0.8rem;background: #fff;color: var(--black);font-size: 1.2rem;line-height: 1.4;letter-spacing: 0.04em;cursor: pointer;transition: border-color 0.2s ease,background 0.2s ease,box-shadow 0.2s ease;}
.reserve-traffic-source-item:has(.reserve-traffic-source-checkbox:checked){border-color: var(--green);background: rgba(75,147,104,0.08);box-shadow: inset 0 0 0 1px var(--green);}
.reserve-traffic-source-item:has(.reserve-traffic-source-checkbox.is-error){border-color:#d1576a;box-shadow:0 0 0 3px rgba(209,87,106,0.12);}
.reserve-traffic-source-checkbox{appearance: none;-webkit-appearance: none;width: 1.6rem;height: 1.6rem;border: 1px solid var(--black3);border-radius: 0.3rem;background: #fff;cursor: pointer;position: relative;flex-shrink: 0;transition: border-color 0.2s ease,background 0.2s ease;}
.reserve-traffic-source-checkbox:checked{background: var(--green);border-color: var(--green);}
.reserve-traffic-source-checkbox:checked::after{content: '';position: absolute;left: 0.42rem;top: 0.12rem;width: 0.42rem;height: 0.82rem;border-right: 2px solid #fff;border-bottom: 2px solid #fff;transform: rotate(45deg);}
.reserve-form-birth select{width: 100%;padding: 1.6rem 2.2rem 1.6rem 1rem;font-size: 1.25rem;border-radius: 0.8rem;}
.reserve-form-terms label{display: inline-flex;align-items: center;gap: 0.6rem;font-size: 1.25rem;color: var(--black);cursor: pointer;margin: 0.4rem 0;}
.reserve-form-terms a{color: var(--green);text-decoration: underline;}
.reserve-form-register{background: #fafaf9;border: 1px solid rgba(0,0,0,0.06);border-radius: 1.4rem;padding: 2rem 1.6rem;margin: 0 0 1.6rem;}
.reserve-form-register-header{display: flex;flex-direction: column;gap: 0.4rem;}
.reserve-form-register-title{display: inline-flex;align-items: center;gap: 0.6rem;font-size: 1.35rem;font-weight: 600;color: var(--black);letter-spacing: 0.04em;line-height: 1.4;}
.reserve-form-register-sub{font-size: 1.1rem;color: var(--black2);opacity: 0.72;letter-spacing: 0.04em;line-height: 1.5;}
.reserve-form-register-body{margin-top: 1.2rem;}
.reserve-form-register-body .reserve-form-group{margin: 0;}
.reserve-form-password{position: relative;margin-top: 0.6rem;}
.reserve-form-password-hint{font-size: 1.1rem;color: var(--black3);margin-top: 0.4rem;letter-spacing: 0.02em;line-height: 1.5;}
.reserve-form-password .reserve-input{padding-right: 4.4rem;background: #fff;}
.reserve-form-password-toggle{position: absolute;right: 0.4rem;top: 50%;transform: translateY(-50%);appearance: none;-webkit-appearance: none;background: transparent;border: none;padding: 0.8rem;cursor: pointer;color: var(--black2);display: flex;align-items: center;justify-content: center;border-radius: 50%;transition: background 0.2s ease,color 0.2s ease;}
.reserve-form-password-toggle:hover{background: rgba(75,147,104,0.08);color: var(--green);}
.reserve-form-password-toggle-eye{width: 2rem;height: 2rem;display: inline-block;background: currentColor;-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7-10-7-10-7Z'/><circle cx='12' cy='12' r='3'/></svg>") center / contain no-repeat;mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7-10-7-10-7Z'/><circle cx='12' cy='12' r='3'/></svg>") center / contain no-repeat;}
.reserve-form-password-toggle.is-on .reserve-form-password-toggle-eye{-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7-10-7-10-7Z'/><circle cx='12' cy='12' r='3'/><line x1='4' y1='4' x2='20' y2='20'/></svg>") center / contain no-repeat;mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7-10-7-10-7Z'/><circle cx='12' cy='12' r='3'/><line x1='4' y1='4' x2='20' y2='20'/></svg>") center / contain no-repeat;}
.login-modal-password{position: relative;}
.login-modal-password .login-modal-input{padding-right: 4.4rem;}
.login-modal-password-toggle{position: absolute;right: 0.4rem;top: 50%;transform: translateY(-50%);appearance: none;-webkit-appearance: none;background: transparent;border: none;padding: 0.8rem;cursor: pointer;color: var(--black2);display: flex;align-items: center;justify-content: center;border-radius: 50%;transition: background 0.2s ease,color 0.2s ease;}
.login-modal-password-toggle:hover{background: rgba(75,147,104,0.08);color: var(--green);}
.login-modal-password-toggle-eye{width: 2rem;height: 2rem;display: inline-block;background: currentColor;-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7-10-7-10-7Z'/><circle cx='12' cy='12' r='3'/></svg>") center / contain no-repeat;mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7-10-7-10-7Z'/><circle cx='12' cy='12' r='3'/></svg>") center / contain no-repeat;}
.login-modal-password-toggle.is-on .login-modal-password-toggle-eye{-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7-10-7-10-7Z'/><circle cx='12' cy='12' r='3'/><line x1='4' y1='4' x2='20' y2='20'/></svg>") center / contain no-repeat;mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7-10-7-10-7Z'/><circle cx='12' cy='12' r='3'/><line x1='4' y1='4' x2='20' y2='20'/></svg>") center / contain no-repeat;}
.reserve-form-error{margin: 0.5rem 0 0;font-size: 1.1rem;letter-spacing: 0.04em;color: #d1576a;}
.reserve-input.is-error{border-color: #d1576a;background: rgba(209,87,106,0.04);}
.reserve-form-birth.is-error .flow-select-wrap select{border-color: #d1576a;background: rgba(209,87,106,0.04);}
.reserve-form-terms.is-error label{color: #d1576a;}
.salon-registration-section-title{display: flex;flex-direction: column;align-items: center;gap: 0.3rem;font-family: "Zen Old Mincho","Noto Serif JP",serif;font-size: 2.2rem;font-weight: 500;letter-spacing: 0.08em;color: var(--black);line-height: 1.5;margin: 0 0 1.4rem;padding-bottom: 1.2rem;position: relative;text-align: center;}
.salon-registration-section-title::after{display: none;}
.salon-registration-section-title .small{display: none;}
.salon-registration-action-group{display: block;width: 100%;}
.salon-registration-action-group .reserve-input{width: 100%;display: block;background: #fff;border: 1px solid var(--border);box-shadow: inset 0 1px 2px rgba(0,0,0,0.06);}
.salon-registration-action-group .reserve-input:focus{outline: none;border-color: var(--green);box-shadow: inset 0 1px 2px rgba(0,0,0,0.06),0 0 0 3px rgba(121,164,118,0.18);}
.salon-registration-action-group .cta-button{display: flex;align-items: center;justify-content: center;gap: 0.4rem;width: 100%;margin: 1.4rem 0 0;padding: 1.4rem 1.6rem;font-size: 1.25rem;letter-spacing: 0.04em;white-space: nowrap;}
.salon-registration-action-group[data-invitation-code-entry]{display: grid;grid-template-columns: minmax(0,7fr) minmax(7.6rem,3fr);align-items: stretch;gap: 0.8rem;}
.salon-registration-action-group[data-invitation-code-entry] .reserve-input{min-width: 0;width: 100%;}
.salon-registration-action-group[data-invitation-code-entry] .cta-button{width: 100%;min-width: 0;margin: 0;padding-inline: 1.2rem;}
.salon-registration-submit{display: flex;align-items: center;justify-content: center;gap: 0.4rem;width: 100%;margin: 0;}
.salon-registration-action-group .cta-button:disabled,.salon-registration-submit:disabled{opacity: 0.4;cursor: not-allowed;pointer-events: none;}
.salon-registration-hidden{display: none !important;}
.reserve-invitation-code-row{display: grid;grid-template-columns: minmax(0,7fr) minmax(7.6rem,3fr);align-items: stretch;gap: 0.8rem;}
.reserve-invitation-code-row .reserve-input{min-width: 0;width: 100%;}
.reserve-invitation-code-apply{width: 100%;min-width: 0;padding-inline: 1.2rem;}
.salon-invitation-code-applied{display: flex;align-items: center;justify-content: space-between;gap: 1rem;margin-top: 1rem;padding: 1rem 1.2rem;border: 1px solid rgba(75,147,104,0.35);border-radius: 0.8rem;background: rgba(75,147,104,0.1);color: var(--green);font-size: 1.25rem;letter-spacing: 0.04em;line-height: 1.5;}
.salon-invitation-code-applied.hidden{display: none;}
.salon-invitation-code-applied-text{font-weight: 600;word-break: break-word;}
.salon-invitation-code-change{flex-shrink: 0;border: none;background: transparent;color: var(--green);font-family: inherit;font-size: 1.15rem;letter-spacing: 0.04em;text-decoration: underline;cursor: pointer;}
.salon-invitation-code-change:hover{opacity: 0.75;}
.salon-registration-verified-banner{display: flex;align-items: center;justify-content: center;gap: 0.8rem;margin: 1.2rem 0 0;padding: 1.2rem 1.4rem;border-radius: 0.8rem;background: rgba(75,147,104,0.1);border: 1px solid rgba(75,147,104,0.35);color: var(--green);font-size: 1.4rem;font-weight: 600;letter-spacing: 0.04em;line-height: 1.6;text-align: center;box-shadow: inset 0 1px 0 rgba(255,255,255,0.55);}
.salon-registration-verified-icon{display: inline-flex;align-items: center;justify-content: center;flex: 0 0 2rem;width: 2rem;height: 2rem;border-radius: 50%;background: var(--green);color: #fff;position: relative;}
.salon-registration-verified-icon::after{content: "";width: 0.8rem;height: 0.45rem;border-left: 2px solid currentColor;border-bottom: 2px solid currentColor;transform: translateY(-0.1rem) rotate(-45deg);}
.reserve-confirm-table{width: 100%;border-collapse: collapse;font-size: 1.4rem;}
.reserve-confirm-table th,.reserve-confirm-table td{text-align: left;padding: 1.2rem 0.4rem;border-bottom: 1px solid rgba(0,0,0,0.08);letter-spacing: 0.04em;font-size: 1.2rem;}
.reserve-confirm-table th{width: 13rem;font-weight: 600;color: var(--black2);}
.reserve-confirm-table td{color: var(--black);font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;}
.reserve-confirm-total th,.reserve-confirm-total td{border-bottom: none;padding-top: 1.6rem;}
.reserve-confirm-total th{font-size: 1.3rem;}
.reserve-confirm-total td{font-size: 1.3rem;font-weight: 600;color: var(--green);}
#cf-price{display: flex;flex-direction: column;gap: 0.4rem;}
.cf-price-row{display: grid;grid-template-columns: 2rem 5rem 1fr;align-items: baseline;gap: 0.6rem;font-weight: 400;color: var(--black2);font-size: 1.35rem;}
.cf-price-op{text-align: center;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;color: var(--black2);}
.cf-price-label{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;color: var(--black2);}
.cf-price-amount{text-align: right;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;color: var(--black);}
.cf-price-amount--discount{color: #dc2626;}
.cf-price-amount strong{font-weight: 500;}
.cf-price-total-row{margin-top: 0.4rem;padding-top: 0.8rem;border-top: 1px dashed rgba(0,0,0,0.12);}
.cf-price-total-row .cf-price-label,.cf-price-total-row .cf-price-amount,.cf-price-total-row .cf-price-op{color: var(--green);font-weight: 600;}
.cf-price-total-row .cf-price-amount{font-size: 1.5rem;}
.cf-price-tax-note{display: block;margin-top: 0.6rem;font-size: 1.05rem;color: var(--black3);letter-spacing: 0.06em;text-align: right;}
.reserve-coupon-group{margin-top: 2.4rem;}
.reserve-coupon-row{display: flex;align-items: center;gap: 0.8rem;margin-bottom: 0.8rem;}
.reserve-coupon-row:last-child{margin-bottom: 0;}
.reserve-coupon-row .reserve-input{flex: 1;}
.reserve-coupon-remove{flex-shrink: 0;display: inline-flex;align-items: center;justify-content: center;width: 3.2rem;height: 3.2rem;border-radius: 50%;border: 1px solid rgba(0,0,0,0.15);background: transparent;color: var(--black2);font-size: 1.4rem;line-height: 1;cursor: pointer;appearance: none;-webkit-appearance: none;font-family: inherit;transition: border-color 0.2s ease,color 0.2s ease;}
.reserve-coupon-remove:hover{border-color: #d1576a;color: #d1576a;}
#reserve-coupon-add{display: inline-flex;align-items: center;gap: 0.4rem;margin-top: 1rem;padding: 0;background: transparent;border: none;color: var(--green);font-size: 1.2rem;font-family: inherit;letter-spacing: 0.04em;cursor: pointer;appearance: none;-webkit-appearance: none;}
#reserve-coupon-add:hover{opacity: 0.75;}
.reserve-coupon-note{margin: 0.8rem 0 0;font-size: 1.05rem;color: var(--black3);letter-spacing: 0.04em;line-height: 1.7;}
.reserve-completion{text-align: center;padding: 5rem 0rem;}
.reserve-completion-icon{position: relative;display: inline-flex;align-items: center;justify-content: center;width: 9rem;height: 9rem;border-radius: 50%;background: linear-gradient(135deg,#568958 0%,#89b585 90%);color: transparent;margin-bottom: 2.4rem;font-size: 0;box-shadow:
inset 0 0 0 1px rgba(255,255,255,0.4),inset 0 -1.4rem 2.6rem rgba(0,0,0,0.08),0 0.6rem 1.6rem rgba(85,136,105,0.3),0 1.2rem 3.2rem rgba(133,218,163,0.25),0 0 0 0 rgba(133,218,163,0.45);animation: reserveCompletionPop 0.7s cubic-bezier(0.34,1.56,0.64,1) both,reserveCompletionPulse 2.4s ease-in-out 0.8s infinite;}
.reserve-completion-icon::before{content: "";position: absolute;inset: 0;background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");background-repeat: no-repeat;background-position: center;background-size: 55% 55%;filter: drop-shadow(0 0.2rem 0.4rem rgba(0,0,0,0.15));animation: reserveCompletionCheckIn 0.5s cubic-bezier(0.22,1,0.36,1) 0.3s both;opacity: 0;}
.reserve-completion-icon::after{content: "";position: absolute;inset: 0;border-radius: 50%;border: 2px solid rgba(133,218,163,0.6);opacity: 0;animation: reserveCompletionRipple 1.2s cubic-bezier(0.22,1,0.36,1) 0.6s both;pointer-events: none;}
@keyframes reserveCompletionPop{0%{transform: scale(0.4);opacity: 0;}
60%{transform: scale(1.08);opacity: 1;}
100%{transform: scale(1);opacity: 1;}
}
@keyframes reserveCompletionCheckIn{0%{opacity: 0;transform: scale(0.6);}
100%{opacity: 1;transform: scale(1);}
}
@keyframes reserveCompletionRipple{0%{transform: scale(1);opacity: 0.7;}
100%{transform: scale(1.8);opacity: 0;}
}
@keyframes reserveCompletionPulse{0%,100%{box-shadow:
inset 0 0 0 1px rgba(255,255,255,0.4),inset 0 -1.4rem 2.6rem rgba(0,0,0,0.08),0 0.6rem 1.6rem rgba(85,136,105,0.3),0 1.2rem 3.2rem rgba(133,218,163,0.25),0 0 0 0 rgba(133,218,163,0);}
50%{box-shadow:
inset 0 0 0 1px rgba(255,255,255,0.5),inset 0 -1.4rem 2.6rem rgba(0,0,0,0.08),0 0.6rem 2.2rem rgba(85,136,105,0.45),0 1.6rem 4rem rgba(133,218,163,0.35),0 0 0 0.8rem rgba(133,218,163,0.06);}
}
.reserve-completion-title{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.8rem;font-weight: 600;margin: 0 0 0.8rem;color: var(--black);text-align: center;}
.reserve-completion-title .small{display: block;font-size: 4rem;text-align: center;margin-bottom: 0.6rem;margin-left: 1.4rem;}
.reserve-completion-sub{font-size: 1.3rem;color: var(--black2);margin: 0 0 2rem;}
.reserve-completion-number{font-size: 1.3rem;margin-bottom: 1.6rem;letter-spacing: 0.04em;}
.reserve-completion-number strong{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.6rem;color: var(--green);}
.reserve-completion-note{font-size: 1.2rem;color: var(--black2);line-height: 1.9;margin: 0 0 2.4rem;}
.reserve-completion-buttons{display: flex;width: 100%;gap: 1rem;flex-wrap: wrap;justify-content: center;}
.page-sign-up-complete{padding-top: 8rem;background: #fff;border-radius: 22rem 22rem 0 0;}
@media (max-width: 480px){.page-sign-up-complete{border-radius: 0;}}
.page-sign-up-complete .signup-completion{max-width: 56rem;margin: 0 auto;}
.signup-completion-list{width: 100%;margin: 0 0 2.8rem;padding: 0;border-top: 1px solid rgba(0,0,0,0.08);text-align: left;}
.signup-completion-row{display: grid;grid-template-columns: 14rem 1fr;gap: 1.2rem;align-items: center;padding: 1.4rem 0;border-bottom: 1px solid rgba(0,0,0,0.08);}
.signup-completion-row dt{font-size: 1.2rem;font-weight: 600;color: var(--black2);letter-spacing: 0.05em;}
.signup-completion-row dd{margin: 0;font-size: 1.35rem;color: var(--black);letter-spacing: 0.04em;line-height: 1.6;word-break: break-word;}
.rt-modal-img-wrap{position: relative;margin-bottom: 1.6rem;border-radius: 1rem;overflow: hidden;}
.rt-modal-img{width: 70%;margin: 0 auto;object-fit: cover;border-radius: 1rem;display: block;}
.reserve-teacher-modal .rt-modal-img-wrap .people-cate,.people-modal .rt-modal-img-wrap .people-cate{position: absolute;left: 1rem;bottom: 1rem;margin-top: 0;z-index: 2;}
.people-modal .rt-modal-img{aspect-ratio: 4 / 5;object-position: center top;}
.people-modal .rt-modal-name{border-bottom: none;padding-bottom: 0;margin-top: 0;margin-bottom: 1rem;font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 2rem;}
.people-modal .rt-modal-name .small{font-size: 1.4rem;margin-left: 0.4rem;color: var(--black2);}
.people-modal .people-modal-button{display: none;}
.people-modal .people-modal-profile-link{margin-top: 2.4rem;width: 100%;text-align: center;padding-left: 0;padding-right: 0;margin-bottom: 2.4rem;}
.voice-card-modal .voice-card-modal-profile-link{display: inline-flex;align-items: center;justify-content: center;width: 100%;margin: 2rem 0 0;padding: 1.2rem 2rem;text-align: center;letter-spacing: 0.04em;font-size: 1.3rem;}
.voice-card-modal .voice-card-modal-profile-link .arrow-green{width: 1.4rem;height: 1.3rem;right: 1rem;}
.rt-modal-head{display: flex;align-items: center;justify-content: center;gap: 0.8rem;flex-wrap: wrap;margin-bottom: 4rem;}
.rt-modal-name{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 2rem;font-weight: 600;letter-spacing: 0.04em;margin: 0;color: var(--black);line-height: 1.3;}
.rt-modal-head .rt-modal-rank{font-size: 1.1rem;padding: 0.2rem 0.8rem;line-height: 1.4;display: inline-flex;align-items: center;}
.rt-modal-img-wrap .rt-modal-img-meta{position: absolute;left: 6rem;bottom: 1rem;z-index: 2;display: inline-flex;align-items: center;gap: 0.4rem;flex-wrap: wrap;}
.rt-modal-img-meta .rt-modal-rank{position: static;box-shadow: 0 0.2rem 0.6rem rgba(0,0,0,0.18);}
.rt-modal-img-meta .rt-modal-store{position: static;display: inline-flex;align-items: center;color: #fff;background: var(--black2);padding: 0.5rem 0.8rem 0.65rem;font-size: 1.3rem;line-height: 1;font-family: "Zen Old Mincho",sans-serif;letter-spacing: 0;font-weight: 700;}
.rt-modal-name{display: block;text-align: center;}
.rt-modal-name .rt-modal-name-main{display: inline;}
.rt-modal-name .rt-modal-name-furigana{font-size: 1.2rem;font-weight: 400;color: var(--black2);margin-left: 0.4rem;letter-spacing: 0.04em;opacity: 0.8;}
.rt-modal-zyutsus.is-simple{display: flex;flex-wrap: wrap;justify-content: center;gap: 0.5rem;position: static;margin: 0 0 1.6rem;padding: 0;background: none;}
.rt-modal-zyutu{display: inline-flex;align-items: center;justify-content: center;background: #f0f0ec;color: var(--black2);border: none;border-radius: 2rem;padding: 0.35rem 1rem;font-size: 1.1rem;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;letter-spacing: 0.04em;line-height: 1.3;white-space: nowrap;}
.rt-modal-head{flex-direction: column;margin-bottom: 1.6rem;gap: 0.2rem;}
.reserve-teacher-modal .people-cate{position: static;display: flex;gap: 0.6rem;justify-content: center;flex-wrap: wrap;margin-top: 1rem;}
.reserve-teacher-modal .people-cate .shizuku{position: static;display: flex;align-items: center;justify-content: center;text-align: center;width: 5.4rem;height: 5.4rem;min-width: 5.4rem;margin: 0;border-radius: 50%;background: rgba(255,255,255,0.05);color: var(--black);font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.1rem;font-weight: 600;letter-spacing: 0.02em;line-height: 1.3;box-shadow:
inset 0.6rem 1.2rem 1.8rem rgba(0,0,0,0.05),inset -0.3rem -0.6rem 1.2rem rgba(255,255,255,0.6),0 1rem 2rem rgba(0,0,0,0.1);backdrop-filter: blur(0.3rem);-webkit-backdrop-filter: blur(0.3rem);overflow: hidden;}
.reserve-teacher-modal .people-cate .shizuku::before{content: "";position: absolute;top: 15%;left: 20%;width: 1rem;height: 0.6rem;background: rgba(255,255,255,0.9);border-radius: 50%;filter: blur(0.125rem);transform: rotate(-15deg);z-index: 2;pointer-events: none;}
.reserve-teacher-modal .people-cate .shizuku::after{content: "";position: absolute;bottom: 20%;right: 25%;width: 0.8rem;height: 0.8rem;background: rgba(255,255,255,0.3);border-radius: 50%;filter: blur(0.2rem);z-index: 1;pointer-events: none;}
.rt-modal-select{display: block;width: 100%;margin: 0 0 2rem;padding: 1.4rem 2rem;font-size: 1.3rem;letter-spacing: 0.04em;}
.rt-modal-select .arrow-white{transform: translateY(-50%) rotate(90deg);}
.rt-modal-section-title{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 2rem;font-weight: 600;letter-spacing: 0.04em;margin: 3.2rem 0 0.4rem;color: var(--black);text-align: center;}
.rt-modal-slider-wrap{position: relative;margin-bottom: 0.6rem;}
.rt-modal-slider{display: flex;gap: 1rem;overflow-x: auto;scroll-snap-type: x mandatory;scrollbar-width: none;-webkit-overflow-scrolling: touch;padding-bottom: 0.4rem;}
.rt-modal-slider::-webkit-scrollbar{display: none;}
.rt-modal-slide{flex: 0 0 calc((100% - 1rem) / 1.15);scroll-snap-align: start;border-radius: 1rem;overflow: hidden;}
.rt-modal-slide img{width: 100%;aspect-ratio: 1 / 1;object-fit: cover;display: block;}
.rt-modal-desc{font-size: 1.4rem;line-height: 2;color: var(--black2);letter-spacing: 0.04em;margin: 0;}
.people-modal-section-title{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 2.2rem;font-weight: 500;letter-spacing: 0.05em;color: var(--black);margin: 2rem 0 1rem;}
.people-modal-slider-wrap{position: relative;margin-bottom: 2rem;}
.people-modal-slider{display: flex;gap: 1rem;overflow-x: auto;scroll-snap-type: x mandatory;scrollbar-width: none;-webkit-overflow-scrolling: touch;padding-bottom: 0.4rem;}
.people-modal-slider::-webkit-scrollbar{display: none;}
.people-modal-slide{flex: 0 0 calc((100% - 1rem) / 1.15);scroll-snap-align: start;border-radius: 1rem;overflow: hidden;}
.people-modal-slide img{width: 100%;aspect-ratio: 1 / 1;object-fit: cover;display: block;}
.nav-list .has-sub{position: relative;}
.nav-sub-toggle{appearance: none;-webkit-appearance: none;background: transparent;border: none;cursor: pointer;position: relative;display: inline-flex;justify-content: flex-start;align-items: center;gap: 0.6rem;font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.5rem;font-weight: 600;letter-spacing: 0.05em;color: var(--black);padding: 0.4rem 0;margin-left: 1.6rem;transition: color 0.4s ease;}
@media (max-width: 768px){.nav-sub-toggle{display: flex;justify-content: center;width: 100%;margin-left: 0;}
}
.nav-sub-toggle::after{display: none !important;content: none !important;}
.nav-sub-toggle:hover{color: var(--green);}
.nav-sub-arrow{display: inline-block;width: 0.6rem;height: 0.6rem;border-right: 1.5px solid currentColor;border-bottom: 1.5px solid currentColor;transform: translate(0.4rem,-0.2rem) rotate(45deg);transition: transform 0.3s ease;}
.has-sub.is-open .nav-sub-arrow{transform: translateY(0.1rem) rotate(-135deg);}
.nav-sub{list-style: none;margin: 0.4rem 0 0;padding: 0;max-height: 0;overflow: hidden;transition: max-height 0.4s cubic-bezier(0.22,1,0.36,1),opacity 0.3s ease;opacity: 0;}
.has-sub.is-open .nav-sub{max-height: 24rem;opacity: 1;}
.nav-sub li{display: block;}
.nav-sub a{position: relative;display: inline-block;font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.3rem;font-weight: 500;letter-spacing: 0.05em;color: var(--black);text-decoration: none;padding: 0.4rem 0 0.4rem 1.8rem;margin-left: 1.8rem;transition: color 0.4s ease;}
@media (max-width: 768px){.nav-sub{display: flex;flex-wrap: wrap;justify-content: center;gap: 0.4rem 1.4rem;}
.nav-sub li{display: inline-block;}
.nav-sub a{padding: 0.4rem 0;margin-left: 0;}
}
.nav-sub a::before{content: "";position: absolute;left: 0;top: 50%;width: 0.5rem;height: 0.5rem;border-radius: 50%;background: var(--black);opacity: 0.4;transform: translateY(-50%);transition: background 0.3s ease,opacity 0.3s ease,transform 0.3s ease;}
@media (max-width: 768px){.nav-sub a::before{background: #fff;}
}
.nav-sub a:hover{color: var(--green);}
.nav-sub a:hover::before{background: var(--green);opacity: 1;transform: translateY(-50%) scale(1.2);}
@media (max-width: 768px){.nav-sub-toggle{margin-left: 0;font-size: 1.7rem;letter-spacing: 0.1em;}
.nav-sub-toggle::after{left: 50%;right: auto;transform: translateX(-50%) scaleX(0);transform-origin: center;}
.nav-sub-toggle:hover::after{transform: translateX(-50%) scaleX(1);}
.nav-sub{text-align: center;}
.has-sub.is-open .nav-sub{max-height: 28rem;}
.nav-sub a{margin-left: 0;padding: 0.6rem 0 0.6rem 2rem;font-size: 1.5rem;}
}
.style-modal-slider{display: flex;flex-direction: column;gap: 2.8rem;margin-top: 6.4rem;}
.style-modal-slide img{width: 100%;height: auto;margin: 0 auto;border-radius: 1rem;display: block;}
.style-modal-slide h3{font-size: 1.7rem;font-weight: 600;letter-spacing: 0.06em;margin-top: 1.4rem;line-height: 1.7;}
.style-modal-slide p{margin-top: 0.8rem;font-size: 1.4rem;letter-spacing: 0.04em;line-height: 1.95;color: var(--black2);}
.style-box{transition: transform 0.4s cubic-bezier(0.22,1,0.36,1);}
.style-box:hover{transform: translateY(-0.3rem);}
.reserve-modal,.people-modal,.store-modal,.voice-modal,.assess-modal,.login-modal,.phone-confirm-modal,.duration-modal,.schedule-modal,.reserve-teacher-modal,.rt-modal,.style-modal,.voice-card-modal{align-items: flex-end !important;justify-content: center !important;padding: 0 !important;}
.reserve-modal-content,.people-modal-content,.store-modal-content,.voice-modal-content,.assess-modal-content,.login-modal-content,.phone-confirm-modal-content,.duration-modal-content,.schedule-modal-content,.reserve-teacher-modal-content,.rt-modal-content,.style-modal-content,.voice-card-modal-content{position: relative !important;width: 100% !important;max-width: 420px !important;max-height: 80vh !important;height: auto !important;border-radius: 2rem 2rem 0 0 !important;margin: 0 !important;transform: translateY(100%) !important;transition: transform 0.45s cubic-bezier(0.32,0.72,0,1) !important;box-shadow: 0 -1rem 4rem rgba(0,0,0,0.25),0 -0.2rem 0.6rem rgba(0,0,0,0.06) !important;padding-top: 5rem !important;padding-bottom: 3.6rem !important;}
.reserve-auth-modal-content,.schedule-modal-content{padding-left: 3rem !important;padding-right: 3rem !important;}
.reserve-modal-content::before,.people-modal-content::before,.store-modal-content::before,.voice-modal-content::before,.assess-modal-content::before,.login-modal-content::before,.phone-confirm-modal-content::before,.duration-modal-content::before,.schedule-modal-content::before,.reserve-teacher-modal-content::before,.rt-modal-content::before,.style-modal-content::before,.voice-card-modal-content::before,.site-login-menu-content::before{content: "";position: absolute;top: 0.8rem;left: 50%;width: 4rem;height: 0.4rem;background: rgba(0,0,0,0.18);border-radius: 0.4rem;transform: translateX(-50%);pointer-events: none;z-index: 10;}
.reserve-modal.is-open .reserve-modal-content,.people-modal.is-open .people-modal-content,.store-modal.is-open .store-modal-content,.voice-modal.is-open .voice-modal-content,.assess-modal.is-open .assess-modal-content,.login-modal.is-open .login-modal-content,.phone-confirm-modal.is-open .phone-confirm-modal-content,.duration-modal.is-open .duration-modal-content,.schedule-modal.is-open .schedule-modal-content,.reserve-teacher-modal.is-open .reserve-teacher-modal-content,.rt-modal.is-open .rt-modal-content,.style-modal.is-open .style-modal-content,.voice-card-modal.is-open .voice-card-modal-content{transform: translateY(0) !important;box-shadow: 0 0 40px #ffffff80 !important;}
.people-modal.is-open .people-modal-content{box-shadow: 0 0 40px var(--modal) !important;}
.reserve-modal-close,.people-modal-close,.store-modal-close,.voice-modal-close,.assess-modal-close,.login-modal-close,.phone-confirm-modal-close,.phone-confirm-close,.duration-modal-close,.schedule-modal-close,.reserve-teacher-modal-close,.rt-modal-close,.style-modal-close,.voice-card-modal-close,.reserve-auth-modal-close,.rank-info-modal-close{position: absolute !important;top: 2.2rem !important;right: 1.6rem !important;width: 3.8rem !important;height: 3.8rem !important;appearance: none !important;-webkit-appearance: none !important;background: var(--green) !important;border: none !important;border-radius: 50% !important;font-size: 2.4rem !important;font-weight: 300 !important;line-height: 1 !important;padding: 0 0 0.55rem !important;color: #fff !important;cursor: pointer !important;z-index: 11 !important;display: flex !important;align-items: center !important;justify-content: center !important;box-shadow: 0 2px 8px rgba(0,0,0,0.12) !important;transition: background-color 0.2s ease,opacity 0.2s ease !important;}
.reserve-modal-close:hover,.people-modal-close:hover,.store-modal-close:hover,.voice-modal-close:hover,.assess-modal-close:hover,.login-modal-close:hover,.phone-confirm-modal-close:hover,.phone-confirm-close:hover,.duration-modal-close:hover,.schedule-modal-close:hover,.reserve-teacher-modal-close:hover,.rt-modal-close:hover,.style-modal-close:hover,.voice-card-modal-close:hover,.reserve-auth-modal-close:hover,.rank-info-modal-close:hover{background: var(--green) !important;opacity: 0.85;}
@media (min-width: 769px){.reserve-modal-content,.people-modal-content,.store-modal-content,.voice-modal-content,.assess-modal-content,.login-modal-content,.phone-confirm-modal-content,.duration-modal-content,.schedule-modal-content,.reserve-teacher-modal-content,.rt-modal-content,.style-modal-content,.voice-card-modal-content{max-width: 420px !important;}
}
.reserve-modal-content,.people-modal-content,.store-modal-content,.voice-modal-content,.assess-modal-content,.login-modal-content,.phone-confirm-modal-content,.phone-confirm-content,.duration-modal-content,.schedule-modal-content,.reserve-teacher-modal-content,.rt-modal-content,.style-modal-content,.voice-card-modal-content{background: var(--modal) !important;}
.reserve-modal-inner,.people-modal-inner,.store-modal-inner,.voice-modal-inner,.assess-modal-inner,.login-modal-inner,.phone-confirm-modal-inner,.duration-modal-inner,.schedule-modal-inner,.reserve-teacher-modal-inner,.rt-modal-inner,.style-modal-inner,.voice-card-modal-inner,.voice-modal-body,.voice-card-modal-body{background: var(--modal) !important;}
.rt-modal-naming-fee{display: inline-flex;align-items: baseline;gap: 0.4rem;margin-top: 0rem;margin-bottom: 1rem;font-size: 1.2rem;font-weight: 400;color: #888;letter-spacing: 0.02em;}
.rt-modal-naming-fee-label{font-size: 1rem;font-weight: 400;color: #888;}
.rt-modal-naming-fee-label::after{content: '：';}
.rt-modal-naming-fee.is-locked,.rt-modal-naming-fee.is-locked .rt-modal-naming-fee-label{color: var(--black);text-decoration: line-through;text-decoration-color: var(--black);text-decoration-thickness: 1px;}
.rt-modal-naming-fee.is-first-free{display: inline-flex;align-items: baseline;gap: 0.4rem;}
.rt-modal-naming-fee-struck{color: #888;text-decoration: line-through;text-decoration-color: #888;text-decoration-thickness: 1px;margin-right: 0.2rem;}
.rt-modal-naming-fee-arrow{color: #888;font-weight: 400;}
.rt-modal-naming-fee-free{color: var(--green);font-weight: 700;font-family: "Zen Old Mincho",sans-serif;}
.reserve-people-grid-teacher.is-used,.reserve-teacher.is-used,.people-box.is-used{position: relative;}
.reserve-teacher-used-badge,.rt-modal-used-badge{display: inline-flex;align-items: center;justify-content: center;border-radius: 999px;font-weight: 500;line-height: 1;letter-spacing: 0;pointer-events: none;font-family: -apple-system,BlinkMacSystemFont,'Segoe UI','Hiragino Sans',sans-serif;}
.reserve-teacher-used-badge{position: absolute;top: 0.6rem;right: 0.6rem;z-index: 3;width: 2.2rem;height: 2.2rem;font-size: 0.8rem;color: #fff;background: linear-gradient(180deg,#f5c54a 0%,#c89026 100%);box-shadow:
0 0.2rem 0.5rem rgba(0,0,0,0.18),inset 0 0.05rem 0 rgba(255,255,255,0.45);}
.rt-modal-used-badge{width: 1.5rem;height: 1.5rem;margin-right: 0.45rem;font-size: 0.85rem;vertical-align: middle;flex-shrink: 0;color: #fff;background: linear-gradient(135deg,#f6e2a8 0%,#d9b56a 45%,#b58a3a 100%);text-shadow: 0 0 0.25rem rgba(255,248,220,0.55);box-shadow:
0 0.1rem 0.35rem rgba(181,138,58,0.35),inset 0 0.05rem 0 rgba(255,255,255,0.5);}
.amaterasu-toast{position: fixed;top: 8rem;left: 50%;transform: translateX(-50%) translateY(-1.2rem);display: inline-flex;align-items: center;gap: 0.7rem;padding: 1.2rem 2rem;max-width: calc(100vw - 4rem);background: var(--green);color: #fff;font-size: 1.3rem;font-weight: 600;letter-spacing: 0.04em;border-radius: 99rem;box-shadow:
0 0.6rem 2rem rgba(75,147,104,0.35),0 0 0 1px rgba(255,255,255,0.15) inset;z-index: 200001;opacity: 0;pointer-events: none;transition: transform 0.45s cubic-bezier(0.22,1,0.36,1),opacity 0.45s cubic-bezier(0.22,1,0.36,1);white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}
.amaterasu-toast.is-show{transform: translateX(-50%) translateY(0);opacity: 1;}
.amaterasu-toast-error{background: #c25a5a;box-shadow:
0 0.6rem 2rem rgba(194,90,90,0.35),0 0 0 1px rgba(255,255,255,0.15) inset;}
.amaterasu-toast-info{background: var(--black);box-shadow:
0 0.6rem 2rem rgba(29,57,63,0.35),0 0 0 1px rgba(255,255,255,0.15) inset;}
.amaterasu-toast-icon{width: 1.7rem;height: 1.7rem;display: inline-block;background: currentColor;flex-shrink: 0;-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>") center / contain no-repeat;mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>") center / contain no-repeat;}
.amaterasu-toast-error .amaterasu-toast-icon{-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'><line x1='6' y1='6' x2='18' y2='18'/><line x1='18' y1='6' x2='6' y2='18'/></svg>") center / contain no-repeat;mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'><line x1='6' y1='6' x2='18' y2='18'/><line x1='18' y1='6' x2='6' y2='18'/></svg>") center / contain no-repeat;}
.amaterasu-toast-info .amaterasu-toast-icon{-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><line x1='12' y1='8' x2='12' y2='12'/><line x1='12' y1='16' x2='12.01' y2='16'/></svg>") center / contain no-repeat;mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><line x1='12' y1='8' x2='12' y2='12'/><line x1='12' y1='16' x2='12.01' y2='16'/></svg>") center / contain no-repeat;}
@media (max-width: 768px){.amaterasu-toast{top: 7rem;font-size: 1.2rem;padding: 1rem 1.6rem;}
}
.amaterasu-screen-flash{display: none !important;}
@keyframes amaterasuScreenFlash{0%{opacity: 0;}
18%{opacity: 1;}
55%{opacity: 1;}
100%{opacity: 0;}
}
body.is-screen-flashing>.contents,body.is-screen-flashing>main,body.is-screen-flashing>#app,body.is-screen-flashing>.site-wrapper{animation: none !important;}
@keyframes amaterasuScreenFlashContent{0%{transform: scale(1);opacity: 1;}
30%{transform: scale(0.985);opacity: 0.6;}
55%{transform: scale(0.985);opacity: 0.6;}
100%{transform: scale(1);opacity: 1;}
}
@media (prefers-reduced-motion: reduce){.amaterasu-screen-flash{animation: none;opacity: 0;}
body.is-screen-flashing>.contents,body.is-screen-flashing>main,body.is-screen-flashing>#app,body.is-screen-flashing>.site-wrapper{animation: none;}
}
.single-kizi .legal-lead{margin: 0 0 3.2rem;color: var(--black2);font-size: 1.4rem;line-height: 1.95;letter-spacing: var(--letter);}
.single-kizi .legal-toc{background: #fff;border: 1px solid var(--border);border-radius: 1.2rem;padding: 3.2rem 3.6rem 4rem;margin: 0 0 5rem;position: relative;}
.single-kizi .legal-toc-title{display: flex;align-items: baseline;gap: 1.4rem;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.4rem;font-weight: 500;color: var(--black);margin: 0 0 1.6rem;padding: 0 0 1.8rem;border-bottom: 1px solid var(--border);letter-spacing: 0.08em;}
.single-kizi .legal-toc-title::before{content: 'Index';display: inline-block;width: auto;height: auto;margin: 0;background: transparent;vertical-align: baseline;font-family: serif;font-size: 1.6rem;font-weight: 400;font-style: italic;color: var(--green);letter-spacing: 0.15em;}
.single-kizi .legal-toc-list{list-style: none !important;padding: 0 !important;margin: 0 !important;display: grid;grid-template-columns: repeat(1,1fr);column-gap: 3.2rem;counter-reset: legal-toc;}
.single-kizi .legal-toc-list li{counter-increment: legal-toc;padding-left: 0 !important;margin: 0 !important;line-height: 1.5;font-size: 1.35rem;}
.single-kizi .legal-toc-list li::before{display: none !important;}
.single-kizi .legal-toc-list a{position: relative;display: flex;align-items: baseline;gap: 1.4rem;padding: 1.4rem 2.4rem 1.4rem 0.4rem;color: var(--black);text-decoration: none;border-bottom: 1px solid var(--border);transition: color 0.25s ease,padding-left 0.25s ease,background 0.25s ease;}
.single-kizi .legal-toc-list a::before{content: counter(legal-toc,decimal-leading-zero);flex-shrink: 0;min-width: 2.6rem;font-family: serif;font-size: 1.3rem;font-weight: 400;color: var(--green);letter-spacing: 0.1em;opacity: 0.9;}
.single-kizi .legal-toc-list a::after{content: '';position: absolute;right: 0.8rem;top: 50%;width: 0.55rem;height: 0.55rem;border-top: 1.5px solid var(--green);border-right: 1.5px solid var(--green);transform: translateY(-50%) rotate(45deg);opacity: 0;transition: opacity 0.25s ease,right 0.25s ease;}
@media (hover: hover) and (pointer: fine){.single-kizi .legal-toc-list a:hover{color: var(--green);padding-left: 1.4rem;background: rgba(75,147,104,0.04);}
.single-kizi .legal-toc-list a:hover::after{opacity: 1;right: 0.4rem;}
}
.single-kizi .legal-article{margin: 0 0 2rem;scroll-margin-top: 10rem;}
.single-kizi .legal-article .sub-items{list-style: none;margin: 0.8rem 0 0.8rem;padding-left: 1.4rem;}
.single-kizi .legal-article .sub-items li{position: relative;font-size: 1.3rem;line-height: 1.9;color: var(--black2);padding-left: 0;margin-bottom: 0.3rem;}
.single-kizi .legal-article .sub-items li::before{display: none;}
.single-kizi .placeholder{color: var(--black2);}
.single-kizi .legal-meta{margin-top: 5rem;padding-top: 2rem;border-top: 1px solid var(--border);font-size: 1.3rem;color: var(--black2);text-align: right;letter-spacing: var(--letter);}
.single-kizi .tokutei-table,.single-kizi .tokutei-table tbody,.page-tokutei .sec_inner>table,.page-tokutei .sec_inner>table tbody{display: block;width: 100%;margin: 0 0 3rem;}
.single-kizi .tokutei-table tr,.page-tokutei .sec_inner>table tr{display: block;width: 100%;padding: 2rem 0;border-bottom: 1px solid var(--border);border-top: none;}
.single-kizi .tokutei-table tr:first-child,.page-tokutei .sec_inner>table tr:first-child{border-top: 1px solid var(--border);}
.single-kizi .tokutei-table th,.single-kizi .tokutei-table td,.page-tokutei .sec_inner>table td{display: block;width: 100%;text-align: left;vertical-align: top;border: none;background: transparent;letter-spacing: var(--letter);padding: 0;}
.single-kizi .tokutei-table th,.page-tokutei .sec_inner>table td:first-child{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.4rem;font-weight: 600;color: var(--green);letter-spacing: 0.04em;margin-bottom: 0.8rem;padding-left: 1.2rem;border-left: 3px solid var(--green);line-height: 1.5;}
.single-kizi .tokutei-table td,.page-tokutei .sec_inner>table td:last-child{font-size: 1.4rem;color: var(--black2);line-height: 1.9;padding-left: 1.5rem;}
.single-kizi .tokutei-note{display: block;margin-top: 0.6rem;font-size: 1.2rem;color: var(--black2);opacity: 0.85;}
.single-kizi .legal-footnote{margin-top: 2rem;font-size: 1.2rem;color: var(--black2);line-height: 1.8;text-align: center;}
.page-tokutei .sec_inner>table+p{margin-top: 2rem;font-size: 1.2rem;color: var(--black2);line-height: 1.8;text-align: left;}
.single-top-legal h1{font-size: 2.2rem;}
.single-top-faq h1{font-size: 2.2rem;}
.single-top-faq{background: url(/salon/images/people-back.webp);background-size: cover;}
.faq .button{margin-top: 4rem;}
.page-faq .faq-section{margin-top: 8rem;}
.page-faq .faq-section:first-child{margin-top: 0;}
.page-faq .faq-section h2.title.center{text-align: center;font-size: 2rem;overflow: hidden;}
.page-faq .faq-section h2.title.center .small{display: flex;align-items: center;justify-content: center;margin: 0 auto 1.2rem;width: 4.4rem;height: 4.4rem;border-radius: 50%;background: var(--black2);color: #fff;-webkit-text-fill-color: #fff;font-size: 2rem;letter-spacing: 0.05em;padding: 0.5rem;padding-bottom: 0.15rem;position: relative;}
.page-faq .faq-section h2.title.center .small::before,.page-faq .faq-section h2.title.center .small::after{content: "";position: absolute;top: 50%;width: 100vw;height: 1px;background: var(--border);pointer-events: none;}
.page-faq .faq-section h2.title.center .small::before{right: 100%;margin-right: 1.4rem;}
.page-faq .faq-section h2.title.center .small::after{left: 100%;margin-left: 1.4rem;}
.page-faq .faq-wrap{margin-top: 3.2rem;}
.page-faq .faq-box{background: #fff;border: 1px solid var(--border);}
.page-faq{padding-top: 0;}
.page-contact .sec_inner{max-width: 80rem;}
.page-contact .contact-info-grid{margin: 4rem 0 0;}
.page-contact .contact-info-card{background: #fff;border: 1px solid var(--border);border-radius: 1.2rem;padding: 3rem 2.8rem;}
.page-contact .contact-info-eyebrow{display: flex;align-items: baseline;gap: 1rem;font-size: 1.4rem;font-weight: 500;color: var(--black);margin: 0 0 1.6rem;padding-bottom: 1.4rem;border-bottom: 1px solid var(--border);letter-spacing: 0.06em;}
.page-contact .contact-info-eyebrow .small{font-family: serif;font-style: italic;font-size: 1.4rem;color: var(--green);letter-spacing: 0.15em;}
.page-contact .contact-info-store{font-size: 1.2rem;color: var(--black2);margin: 0 0 0.6rem;letter-spacing: 0.04em;}
.page-contact .contact-info-tel{display: inline-block;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 3.2rem;font-weight: 500;color: var(--black);letter-spacing: 0.06em;margin: 0 0 0.6rem;line-height: 1.1;}
.page-contact .contact-info-hours{font-size: 1.2rem;color: var(--black2);margin: 0 0 1.6rem;letter-spacing: 0.04em;}
.page-contact .contact-info-note{font-size: 1.25rem;line-height: 1.85;color: var(--black2);margin: 0;letter-spacing: var(--letter);}
.page-contact .contact-form-wrap{margin-top: -8rem;}
.page-contact .contact-form-title{display: flex;align-items: baseline;justify-content: center;gap: 1.4rem;font-family: "Zen Old Mincho","Noto Serif JP",serif;font-size: 2.4rem;font-weight: 500;color: var(--black);margin: 0 0 1.2rem;padding-bottom: 1.6rem;letter-spacing: 0.08em;text-align: center;}
.page-contact .contact-form-title .small{font-family: serif;font-style: italic;font-size: 1.6rem;font-weight: 400;color: var(--green);letter-spacing: 0.15em;}
.page-contact .contact-form-intro{font-size: 1.2rem;color: var(--black2);margin: 0 0 2.6rem;letter-spacing: 0.04em;text-align: center;}
.page-contact .contact-required-marker{display: inline-block;margin-right: 0.4rem;padding: 0.1rem 0.5rem;border-radius: 0.3rem;background: var(--green);color: #fff;font-size: 1rem;font-weight: 500;vertical-align: middle;}
.page-contact .contact-form-group{margin-bottom: 2.4rem;}
.page-contact .contact-form-group:last-of-type{margin-bottom: 0;}
.page-contact .contact-select-wrap{position: relative;}
.page-contact .contact-select-wrap::after{content: '';position: absolute;right: 1.4rem;top: 50%;width: 0.6rem;height: 0.6rem;border-right: 1.5px solid var(--black);border-bottom: 1.5px solid var(--black);transform: translateY(-75%) rotate(45deg);pointer-events: none;}
.page-contact .contact-select{padding-right: 3.2rem;cursor: pointer;}
.page-contact .contact-textarea{min-height: 16rem;line-height: 1.85;}
.page-contact .contact-choice-list{display: grid;gap: 1rem;}
.page-contact .contact-choice-label{display: flex;align-items: center;gap: 0.8rem;font-size: 1.3rem;line-height: 1.7;color: var(--black);letter-spacing: 0.04em;cursor: pointer;}
.page-contact .contact-choice-label input{flex-shrink: 0;}
.page-contact .contact-form-agree{background: var(--gray);border-radius: 0.6rem;padding: 1.4rem 1.6rem;}
.page-contact .contact-agree-label{display: inline-flex;align-items: center;gap: 0.8rem;font-size: 1.3rem;color: var(--black);cursor: pointer;line-height: 1.7;letter-spacing: 0.04em;}
.page-contact .contact-agree-label input[type="checkbox"]{appearance: none;-webkit-appearance: none;width: 1.8rem;height: 1.8rem;border: 1px solid var(--black3);border-radius: 0.3rem;background: #fff;cursor: pointer;position: relative;flex-shrink: 0;transition: border-color 0.2s ease,background 0.2s ease;}
.page-contact .contact-agree-label input[type="checkbox"]:checked{background: var(--green);border-color: var(--green);}
.page-contact .contact-agree-label input[type="checkbox"]:checked::after{content: '';position: absolute;left: 0.45rem;top: 0.15rem;width: 0.5rem;height: 0.95rem;border-right: 2px solid #fff;border-bottom: 2px solid #fff;transform: rotate(45deg);}
.page-contact .contact-agree-label a{color: var(--green);text-decoration: underline;text-underline-offset: 0.2em;}
.page-contact .contact-form-foot-note{font-size: 1.15rem;color: var(--black2);line-height: 1.85;margin: 2.4rem 0 2.4rem;letter-spacing: var(--letter);}
.page-contact .contact-form-actions{text-align: center;margin-top: 1rem;}
.page-contact .contact-submit{min-width: 100%;padding: 2rem 3rem;font-size: 1.4rem;letter-spacing: 0.1em;}
.page-contact .contact-success{text-align: center;padding: 4rem 2rem 1rem;}
.page-contact .contact-success-eyebrow .small{font-family: serif;font-style: italic;font-size: 1.6rem;color: var(--green);letter-spacing: 0.2em;}
.page-contact .contact-success-title{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 2.2rem;font-weight: 600;color: var(--black);margin: 1.2rem 0 2rem;letter-spacing: 0.06em;}
.page-contact .contact-success-text{font-size: 1.4rem;line-height: 1.95;color: var(--black2);margin: 0 0 1.4rem;letter-spacing: var(--letter);}
.page-contact .contact-success-sub{font-size: 1.2rem;color: var(--black3);margin: 0 0 2.8rem;}
.page-contact .contact-success-back{width: 100%;min-width: 0;}
html:has(body.shibuya)::before{display: none !important;background: none !important;}
body.shibuya #body-hikari-container,body.shibuya .hikari-ball,body.shibuya .fv .hikari-ball,body.shibuya .cta .hikari-ball,body.shibuya span.hikari-ball,body.shibuya .body-particles,body.shibuya .body-particle{display: none !important;visibility: hidden !important;opacity: 0 !important;animation: none !important;}
.shibuya-bg-weather{position: fixed;inset: 0;z-index: 0;pointer-events: none;overflow: hidden;}
.shibuya-bg-weather>.nav-rain .nav-rain-drop{background: linear-gradient(to bottom,rgba(255,255,255,0) 0%,rgba(255,255,255,0.95) 60%,rgba(255,255,255,1) 100%);opacity: 0.85 !important;height: 34px !important;}
@media (min-width: 769px){.shibuya-bg-weather>.nav-rain .nav-rain-drop{opacity: 1 !important;height: 42px !important;width: 2px !important;}
}
.shibuya-bg-weather>.shibuya-bg-ripple{position: absolute !important;inset: 0;pointer-events: none;overflow: hidden;}
.shibuya-bg-weather>.shibuya-bg-ripple .ripple-group span{border-color: rgba(255,255,255,0.7);border-width: 1px;animation-name: shibuyaRippleExpand;animation-duration: 7s;}
@media (min-width: 769px){.shibuya-bg-weather>.shibuya-bg-ripple .ripple-group span{border-color: rgba(255,255,255,0.85);border-width: 1.5px;}
}
body.shibuya>.contents{position: relative;z-index: 1;}
body.shibuya .cate,body.shibuya .cate-2,body.shibuya .place{display: none !important;}
.voice-2-box[data-gender]{background:
radial-gradient(ellipse at 30% 18%,rgba(225,225,225,0.65) 0%,transparent 55%),radial-gradient(ellipse at 80% 95%,rgba(220,220,220,0.35) 0%,transparent 60%),linear-gradient(135deg,rgba(255,255,255,0.45) 0%,rgba(230,230,230,0.3) 100%) !important;backdrop-filter: blur(1.6rem) saturate(150%) !important;-webkit-backdrop-filter: blur(1.6rem) saturate(150%) !important;box-shadow:
inset 0 1px 1px rgba(255,255,255,0.75),inset 0 -1px 2px rgba(255,255,255,0.35),0 0.8rem 2rem rgba(140,140,140,0.3) !important;border: none !important;border-radius: 1.6rem !important;padding: 6rem 2.5rem 3rem !important;margin: 0;position: relative;display: grid;grid-template-columns: 1fr;grid-template-areas:
"illust"
"tags"
"h3"
"foot"
"face-name";row-gap: 1rem;align-items: center;justify-items: stretch;align-self: start;}
.voice-2-box[data-gender] .voice-2-face-name{grid-area: face-name;display: flex;align-items: center;justify-content: center;gap: 1.4rem;width: 100%;}
.voice-2-box[data-gender]::before{content: "";grid-area: illust;width: 8rem;height: 8rem;background: url(/salon/images/people-review-img.webp) center / contain no-repeat;pointer-events: none;position: absolute;top: -9rem;left: 50%;transform: translateX(-50%);}
body.home .voice-2-box[data-gender]::before{top: -3.5rem;}
.voice-2-box[data-gender][data-age*="30"]::before{background-image: url(/salon/images/people-review-img-2.webp);}
.voice-2-box[data-gender][data-age*="40"]::before,.voice-2-box[data-gender][data-age*="50"]::before,.voice-2-box[data-gender][data-age*="60"]::before,.voice-2-box[data-gender][data-age*="70"]::before{background-image: url(/salon/images/people-review-img-3.webp);}
.voice-2-box[data-gender][data-gender*="男"]::before{background-image: url(/salon/images/people-review-img-1-men.webp);}
.voice-2-box[data-gender][data-gender*="男"][data-age*="30"]::before{background-image: url(/salon/images/people-review-img-2-men.webp);}
.voice-2-box[data-gender][data-gender*="男"][data-age*="40"]::before,.voice-2-box[data-gender][data-gender*="男"][data-age*="50"]::before,.voice-2-box[data-gender][data-gender*="男"][data-age*="60"]::before,.voice-2-box[data-gender][data-gender*="男"][data-age*="70"]::before{background-image: url(/salon/images/people-review-img-3-men.webp);}
.voice-2-box[data-gender] .voice-2-box-bottom{display: contents;padding: 0;}
.voice-2-box[data-gender] .voice-2-face,.voice-2-box[data-gender] .voice-2-teacher-img{grid-area: face;position: static;width: 7rem;height: 7rem;border-radius: 50%;object-fit: cover;object-position: center 15%;margin: 0;transform: none;display: block;}
.voice-2-box[data-gender] .voice-2-name-box{grid-area: name;display: flex;flex-direction: column;align-items: flex-start;gap: 0.4rem;margin: 0;padding: 0;justify-self: start;}
.voice-2-box[data-gender] .voice-2-name-box .lank{padding: 0.4rem 0.7rem 0.45rem;font-size: 1rem;line-height: 1;}
.voice-2-box[data-gender] .voice-2-name-box .voice-2-badge-row{display: inline-flex;align-items: center;gap: 0.4rem;}
.voice-2-box[data-gender] .voice-2-name-box .cate{display: none;}
.voice-2-box[data-gender] .voice-2-store-badge{display: inline-flex;align-items: center;padding: 0.4rem 0.7rem 0.45rem;background: var(--black2);color: #fff;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1rem;line-height: 1;letter-spacing: 0.04em;}
.voice-2-box[data-gender] .voice-2-bottom{display: contents;}
.voice-2-box[data-gender] .voice-2-name-box .name{font-size: 2rem;font-weight: 500;font-family: "Zen Old Mincho",sans-serif;letter-spacing: 0.1em;}
.voice-2-box[data-gender] .voice-2-name-box .name .small{font-size: 1.1rem;font-weight: 400;margin-left: 0.3rem;color: var(--black);}
.voice-2-box[data-gender] .voice-2-tags{grid-area: tags;display: flex;flex-wrap: wrap;gap: 0.4rem 0.8rem;margin: 0;justify-content: center;width: 100%;}
.voice-2-box[data-gender] .voice-2-tag{display: inline;padding: 0;background: none !important;border-radius: 0 !important;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.1rem;letter-spacing: 0.04em;color: rgba(0,0,0,0.7);line-height: 1.4;}
.voice-2-box[data-gender] .voice-2-box-bottom h3{grid-area: h3;display: block;-webkit-line-clamp: unset;line-clamp: unset;overflow: visible;text-overflow: clip;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.4rem;font-weight: 400;line-height: 1.95;color: var(--black2);letter-spacing: 0.04em;margin: 0;justify-self: stretch;width: 100%;}
.voice-2-box[data-gender] .voice-foot{grid-area: foot;display: flex;justify-content: flex-end;align-items: center;justify-self: stretch;width: 100%;margin: 0 0 2rem;border-bottom: 1px solid #ddd;padding-bottom: 2rem;}
.voice-2-box[data-gender] .voice-meta{display: none;}
.voice-2-box[data-gender] .voice-foot .time{font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.15rem;color: var(--black2);letter-spacing: 0.06em;margin: 0;}
.voice-2-box[data-gender] .star-box{display: none;}
.voice-2-box[data-gender] .voice-2-box-bottom::before{display: none;content: none;}
.voice-2-box[data-gender]:not([data-teacher-slug]){grid-template-areas:
"illust illust illust illust"
"tags tags tags tags"
"h3 h3 h3 h3"
"foot foot foot foot";}
body.home .home-review .voice-2-box[data-gender]{display: block;padding: 0 !important;}
body.home .home-review .voice-2-box[data-gender] .voice-2-box-bottom{display: flex;flex-direction: column;padding: 6rem 2.5rem 3.2rem;}
body.home .home-review .voice-2-box[data-gender] .voice-2-bottom{display: flex;flex-direction: column;min-width: 0;width: 100%;}
body.home .home-review .voice-2-box[data-gender] .voice-2-box-bottom h3{display: -webkit-box;-webkit-line-clamp: 8;line-clamp: 8;-webkit-box-orient: vertical;overflow: hidden;text-overflow: ellipsis;width: auto;min-width: 0;margin: 0;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.4rem;font-weight: 400;line-height: 1.95;color: var(--black2);letter-spacing: 0.04em;}
body.home .home-review .voice-2-box[data-gender] .voice-2-tags{display: flex;flex-wrap: wrap;gap: 0.4rem 0.8rem;justify-content: flex-start;width: 100%;margin: 1rem 0 0;}
body.home .home-review .voice-2-box[data-gender] .voice-foot{display: flex;justify-content: flex-end;align-items: center;width: 100%;margin: 1.2rem 0 0;padding: 0 0 1.8rem;border-bottom: 1px solid #ddd;}
body.home .home-review .voice-2-box[data-gender] .voice-2-face-name{display: flex;align-items: center;justify-content: center;gap: 1.4rem;width: 100%;margin-top: 2rem;}
body.home .home-review .voice-2-box[data-gender] .voice-2-face,
body.home .home-review .voice-2-box[data-gender] .voice-2-teacher-img{position: static;width: 7rem;height: 7rem;border-radius: 50%;object-fit: cover;object-position: center 15%;margin: 0;transform: none;display: block;flex: 0 0 auto;}
body.home .home-review .voice-2-box[data-gender] .voice-2-name-box{display: flex;flex-direction: column;align-items: flex-start;gap: 0.4rem;margin: 0;padding: 0;min-width: 0;}
body.shibuya .top{position: relative;z-index: 1;margin-top: -0.3rem;background: linear-gradient(to bottom,#a9a69d 0%,#bdbab3 55%,#e9e7dd 100%);overflow: hidden;}
body.shibuya .top::after{content: "";position: absolute;left: 0;right: 0;bottom: 0;height: 40%;pointer-events: none;z-index: 1;background:
radial-gradient(ellipse 35% 80% at 20% 100%,rgba(255,130,180,0.32),transparent 70%),radial-gradient(ellipse 30% 75% at 45% 100%,rgba(255,220,130,0.32),transparent 70%),radial-gradient(ellipse 32% 80% at 65% 100%,rgba(130,230,180,0.32),transparent 70%),radial-gradient(ellipse 30% 75% at 85% 100%,rgba(180,140,255,0.32),transparent 70%);filter: blur(3rem);mix-blend-mode: screen;animation: shibuyaTopPrismFall 9s ease-in-out infinite;will-change: transform,opacity;}
@keyframes shibuyaTopPrismFall{0%,100%{transform: translateY(-12%) scale(1);opacity: 0.55;}
50%{transform: translateY(4%) scale(1.05);opacity: 0.9;}
}
body.shibuya .top>.nav-rain{z-index: 0;-webkit-mask-image: linear-gradient(to bottom,transparent 0%,rgba(0,0,0,0.2) 20%,rgba(0,0,0,0.6) 45%,#000 70%);mask-image: linear-gradient(to bottom,transparent 0%,rgba(0,0,0,0.2) 20%,rgba(0,0,0,0.6) 45%,#000 70%);}
body.shibuya .top>.shibuya-top-ripple{position: absolute !important;inset: 0;pointer-events: none;z-index: 0 !important;overflow: hidden;}
body.shibuya .top>.shibuya-top-ripple .ripple-group span{border-color: rgba(255,255,255,0.25);border-width: 1px;animation-name: shibuyaRippleExpand;animation-duration: 6s;}
@keyframes shibuyaRippleExpand{0%{transform: scale(0);opacity: 0;}
15%{opacity: 0.35;}
100%{transform: scale(16);opacity: 0;}
}
body.shibuya .top>.nav-rain .nav-rain-drop{background: linear-gradient(to bottom,rgba(255,255,255,0) 0%,rgba(255,255,255,0.7) 60%,rgba(255,255,255,0.85) 100%);opacity: 0.35 !important;height: 22px !important;}
body.shibuya .white2>.nav-rain{z-index: 0;-webkit-mask-image: linear-gradient(to bottom,transparent 0%,rgba(0,0,0,0.2) 12%,rgba(0,0,0,0.6) 28%,#000 45%,#000 75%,rgba(0,0,0,0.4) 92%,transparent 100%);mask-image: linear-gradient(to bottom,transparent 0%,rgba(0,0,0,0.2) 12%,rgba(0,0,0,0.6) 28%,#000 45%,#000 75%,rgba(0,0,0,0.4) 92%,transparent 100%);}
body.shibuya .white2>.nav-rain .nav-rain-drop{background: linear-gradient(to bottom,rgba(255,255,255,0) 0%,rgba(255,255,255,0.85) 60%,rgba(255,255,255,1) 100%);opacity: 0.65 !important;height: 26px !important;}
body.shibuya .white2>.shibuya-white2-ripple{position: absolute !important;inset: 0;pointer-events: none;z-index: 0 !important;overflow: hidden;}
body.shibuya .white2>.shibuya-white2-ripple .ripple-group span{border-color: rgba(255,255,255,0.55);border-width: 0.5px;animation-name: shibuyaRippleExpand;animation-duration: 7s;}
body.shibuya .white2>*:not(.nav-rain):not(.shibuya-white2-ripple){position: relative;z-index: 2;}
body.shibuya .top>*:not(.nav-rain){position: relative;z-index: 1;}
.shibuya{background: url(/salon/images/shibuya-back.webp);background-attachment: fixed;.fv h1{color: #fff;bottom: 22rem;}
.fv p{color: #fff;}
.top p{color: #fff;}
.fv p{position: absolute;top: initial;bottom: 14rem;left: 8%;font-size: 1.6rem;z-index: 100;}
.top{background: linear-gradient(to bottom,var(--shibuya-main) 0%,#686c6500 100%);padding-bottom: 12rem;position: relative;box-shadow: 0 40px 8px var(--shibuya-main);}
.fv .rich-title,.top .rich-title{background-image: linear-gradient(110deg,#ffffff 0%,#ffffff 42%,#b88a3a 47%,#fff3b8 50%,#b88a3a 53%,#ffffff 58%,#ffffff 100%);}
.fv h1::after{background: linear-gradient(to top,#a9a69d 0%,#a9a69d 25%,rgba(169,166,157,0.7) 50%,rgba(169,166,157,0.35) 75%,transparent 100%) !important;bottom: -22rem;}
.top-fix{background-image: url(/salon/images/shibuya-fix-1.webp);}
.top-fix.top-fix-2{background-image: url(/salon/images/shibuya-fix-2.webp);}
.top-fix.top-fix3,.top-fix.top-fix-3{background-image: url(/salon/images/shibuya-fix-3.webp);}
.top-fix.top-fix-4{background-image: url(/salon/images/page-top-back.webp);}
.top-fix.top-fix-4::before{background: url(/salon/images/kumo.webp);background-size: cover;top: -10rem;bottom: auto;}
.top-fix.top-fix-4::after{background: url(/salon/images/shibuya-kumo-2.webp);background-size: cover;bottom: -20rem;top: auto;}
.top-fix::before{display: none;}
.top-fix::after{background: linear-gradient(to bottom,#ffffff00 0,var(--shibuya-main3) 100%);bottom: -0.1rem;}
.top .sec_inner{padding-bottom: 12rem;}
.fv-slide{animation-duration: 30s;}
.fv-slide-2{animation-delay: 5s;}
.fv-slide-3{animation-delay: 10s;}
.fv-slide-4{animation-delay: 15s;}
.fv-slide-5{animation-delay: 20s;}
.fv-slide-6{display: none;}
.gallery{background: var(--shibuya-main3);padding-left: var(--sp_inner);padding-top: 6rem;padding-bottom: 4rem;position: relative;z-index: 10;}
.gallery::after{content: "";width: 110%;height: 40rem;background: url(/salon/images/shibuya-kumo-2.webp);background-size: cover;position: absolute;top: -20rem;left: -1rem;z-index: -1;}
.people::after{display: none;}
.welcome{background: var(--gra5);padding-left: var(--sp_inner);position: relative;padding-top: 22rem;padding-bottom: 22rem;}
.welcome::after{content: "";width: 100%;height: 40rem;background: url(/salon/images/shibuya-kumo.webp);background-size: cover;position: absolute;top: -20rem;left: 0;z-index: 1;}
.welcome::before{content: "";width: 100%;height: 40rem;background: url(/salon/images/shibuya-kumo-2.webp);background-size: cover;position: absolute;bottom: -20rem;left: 0;z-index: 1;}
.people{background: var(--shibuya-main3);padding-bottom: 8rem;padding-top: 4rem;margin-top: 0;position: relative;z-index: 5;}
.people::before{display: none;}
.rank.section{position: relative;padding-top: 22rem;background: var(--gra5);padding-bottom: 22rem;z-index: 2;}
.rank.section::after{content: "";width: 140%;height: 40rem;background: url(/salon/images/shibuya-kumo.webp) center / cover no-repeat;position: absolute;top: -20rem;left: -20%;z-index: 1;}
.rank.section::before{content: "";width: 140%;height: 40rem;background: url(/salon/images/shibuya-kumo-2.webp) center / cover no-repeat;position: absolute;bottom: -20rem;left: -20%;z-index: 1;}
.rank-menu-box.bottom,.rank-price-sub{background: #edece97d !important;backdrop-filter: blur(14px) saturate(140%);-webkit-backdrop-filter: blur(14px) saturate(140%);border-radius: 1rem;box-shadow: inset 0 1px 0 rgba(255,255,255,0.6);}
.hamburger-btn,.hamburger-btn:hover,.site-login,.site-login:link,.site-login:visited,.site-login:hover,.site-login:active{background: rgba(255,255,255,0.5) !important;backdrop-filter: blur(14px) saturate(140%) !important;-webkit-backdrop-filter: blur(14px) saturate(140%) !important;border-color: rgba(255,255,255,0.7) !important;box-shadow: inset 0 1px 0 rgba(255,255,255,0.6) !important;}
.assess-tab{background: rgba(255,255,255,0.55);backdrop-filter: blur(14px) saturate(140%);-webkit-backdrop-filter: blur(14px) saturate(140%);border-color: rgba(255,255,255,0.7);box-shadow: inset 0 1px 0 rgba(255,255,255,0.65);}
.assess-tab.is-active{background: rgba(75,147,104,0.1);border-color: rgba(75,147,104,0.45);color: var(--green);box-shadow: inset 0 1px 0 rgba(255,255,255,0.55);}
.top-fix-2::after{display: none;}
.flow{background: var(--shibuya-main3);position: relative;padding-top: 4rem;padding-bottom: 12rem;z-index: 100;}
.flow::after{content: "";width: 140%;height: 40rem;background: url(/salon/images/shibuya-kumo.webp) center / cover no-repeat;position: absolute;bottom: -20rem;left: -20%;z-index: 1;}
.flow-lead{font-size: 1.3rem;line-height: 1.95;color: var(--black2);margin: 0 0 3rem;letter-spacing: var(--letter);}
.flow-lead strong{color: var(--green);font-weight: 600;}
.flow-selector{position: relative;background: linear-gradient(180deg,rgba(255,255,255,0.55) 0%,rgba(255,255,255,0.32) 100%);backdrop-filter: blur(24px) saturate(150%);-webkit-backdrop-filter: blur(24px) saturate(150%);border: 1px solid rgba(255,255,255,0.75);border-radius: 1rem;padding: 3rem 2.6rem;margin: 0 0 4rem;display: flex;flex-direction: column;gap: 2rem;box-shadow:
0 1.2rem 3.6rem rgba(60,50,35,0.08),inset 0 1px 0 rgba(255,255,255,0.75);}
.flow-segment{display: grid;grid-template-columns: 8rem 1fr;align-items: start;gap: 1.2rem;}
.flow-segment-label{font-size: 1.4rem;font-weight: 500;color: var(--green);letter-spacing: 0.1em;padding-top: 1rem;}
.flow-selector .flow-select-wrap select,.flow-selector .flow-select{background: rgba(255,255,255,0.55);backdrop-filter: blur(14px) saturate(140%);-webkit-backdrop-filter: blur(14px) saturate(140%);border: 1px solid rgba(255,255,255,0.7);border-radius: 999px;padding: 1rem 3.6rem 1rem 1.6rem;font-family: inherit;font-size: 1.2rem;font-weight: 500;color: var(--black);letter-spacing: 0.06em;box-shadow:
0 0.2rem 0.6rem rgba(60,50,35,0.05),inset 0 1px 0 rgba(255,255,255,0.7);transition:
background 0.3s cubic-bezier(0.22,1,0.36,1),border-color 0.3s cubic-bezier(0.22,1,0.36,1),box-shadow 0.3s cubic-bezier(0.22,1,0.36,1);}
.flow-selector .flow-select-wrap select:hover,.flow-selector .flow-select-wrap select:focus,.flow-selector .flow-select:hover,.flow-selector .flow-select:focus{outline: none;background: rgba(255,255,255,0.78);border-color: rgba(255,255,255,0.95);box-shadow:
0 0.5rem 1.4rem rgba(60,50,35,0.08),inset 0 1px 0 rgba(255,255,255,0.85);}
.flow-selector .flow-select-wrap::after{border-color: var(--black);}
.flow-steps{list-style: none;margin: 0 0 4rem;margin-right: calc((min(100vw,420px) - 100%) / -2);padding: 0;display: flex;gap: 2rem;overflow-x: auto;scroll-snap-type: x mandatory;scrollbar-width: none;-webkit-overflow-scrolling: touch;}
.flow-steps::-webkit-scrollbar{display: none;}
.flow .slider-prev,.flow .slider-next{top: 33%;}
.flow .slider-prev{left: -2.2rem;}
.flow .slider-next{right: 1.8rem;}
.flow-step{flex: 0 0 calc((100% - 2rem) / 1.2);scroll-snap-align: start;box-sizing: border-box;background: none;border: none;padding: 0;position: relative;}
.flow-step-img{position: relative;margin: 0 0 2.4rem;}
.flow-step-img img{width: 100%;aspect-ratio: 3 / 3;height: auto;object-fit: cover;border-radius: 1.2rem;display: block;}
.flow-step-num{position: absolute;left: -0.5rem;top: 25rem;z-index: 2;width: 6.4rem;height: 6.4rem;border-radius: 50%;display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 0.1rem;line-height: 1;color: var(--black2);font-weight: 500;letter-spacing: 0;overflow: visible;background: rgba(255,255,255,0.8);backdrop-filter: blur(0.2rem);-webkit-backdrop-filter: blur(0.2rem);box-shadow:
inset 0.625rem 1.25rem 1.875rem rgb(0 0 0 / 19%),inset -0.3125rem -0.625rem 1.25rem rgba(255,255,255,0.6),0 1.25rem 2.5rem rgba(0,0,0,0.05);}
@media (max-width: 768px){.flow-step-num{top: 22rem;left: -0.8rem;}
}
.flow-step-num::before{content: "";position: absolute;top: 15%;left: 20%;width: 1rem;height: 1rem;background: rgba(255,255,255,0.9);border-radius: 50%;filter: blur(0.125rem);transform: rotate(-15deg);z-index: 2;pointer-events: none;}
.flow-step-num::after{content: "";position: absolute;bottom: 20%;right: 25%;width: 0.7rem;height: 0.7rem;background: rgba(255,255,255,0.3);border-radius: 50%;filter: blur(0.25rem);z-index: 1;pointer-events: none;}
.flow-step-num .flow-step-label,.flow-step-num .flow-step-no{position: relative;z-index: 3;color: var(--black);}
.flow-step-label{font-family: serif;font-size: 1rem;color: var(--black2);letter-spacing: 0.15em;text-transform: uppercase;line-height: 1;}
.flow-step-no{font-family: "cardo","Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 2.4rem;font-weight: 500;color: var(--black2);letter-spacing: 0;line-height: 1;}
.flow-step-text{padding: 0 1rem;}
.flow-step-text h3{margin: 0 0 0.8rem;font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 2.4rem;font-weight: 500;color: var(--black);letter-spacing: 0.2em;line-height: 1.4;}
.flow-step-text p{margin: 0;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.4rem;line-height: 2;color: var(--black2);letter-spacing: 0.05em;}
.flow-step-text strong{color: var(--green);font-weight: 500;}
.flow-schedule{background: transparent;padding-bottom: 0rem;}
.flow-schedule .time-tabs{grid-template-columns: 1fr;}
.flow-schedule .time-tab{background: rgba(255,255,255,0.35);backdrop-filter: blur(14px) saturate(140%);-webkit-backdrop-filter: blur(14px) saturate(140%);border-color: rgba(255,255,255,0.6);box-shadow: inset 0 1px 0 rgba(255,255,255,0.55);}
.flow-schedule .time-tab.is-active{background: rgba(255,255,255,0.6);color: var(--green);font-size: 1.7rem;}
.flow-schedule .time-panel{background: rgba(255,255,255,0.42);backdrop-filter: blur(20px) saturate(150%);-webkit-backdrop-filter: blur(20px) saturate(150%);border: 1px solid rgba(255,255,255,0.7);padding: 3rem 2.5rem 2rem;box-shadow:
0 1rem 3rem rgba(60,50,35,0.06),inset 0 1px 0 rgba(255,255,255,0.6);}
.center-h2 h2{text-align: center;}
.flow .sec_inner{position: relative;z-index: 100;}
.people-time h2{margin-bottom: 2rem;padding-left: var(--sp_inner);}
.reason{padding-top: 16rem;padding-bottom: 4rem;background: var(--shibuya-main3);position: relative;z-index: 100;}
.reason::after{content: "";width: 140%;height: 40rem;background: url(/salon/images/shibuya-kumo-2.webp) center / cover no-repeat;position: absolute;top: -20rem;left: -20%;z-index: -1;}
.reason .sec_inner{margin-top: -8rem;}
.voice{background: var(--gra5);padding-top: 22rem;padding-bottom: 22rem;}
.voice::before{content: "";width: 140%;height: 40rem;background: url(/salon/images/shibuya-kumo.webp) center / cover no-repeat;position: absolute;top: -20rem;left: -20%;z-index: -1;}
.voice::after{content: "";width: 140%;height: 40rem;background: url(/salon/images/shibuya-kumo-2.webp) center / cover no-repeat;position: absolute;bottom: -20rem;left: -20%;z-index: 1;}
.voice-2::after{display: none;}
.voice-2{padding-top: 4rem;padding-bottom: 8rem;background: var(--shibuya-main3);position: relative;z-index: 10;}
.voice-2::before{display: none;}
.media{background: var(--gra5);padding: 22rem 0;}
.media::after{content: "";width: 140%;height: 40rem;background: url(/salon/images/shibuya-kumo-2.webp) center / cover no-repeat;position: absolute;bottom: -20rem;left: -20%;z-index: 1;}
.media::before{content: "";width: 140%;height: 40rem;background: url(/salon/images/shibuya-kumo.webp) center / cover no-repeat;position: absolute;top: -20rem;left: -20%;z-index: -1;}
.access{background: var(--shibuya-main3);padding-bottom: 4rem;padding-top: 4rem;position: relative;z-index: 100;}
.store-view .store-view-embed{position: relative;width: 100%;aspect-ratio: 16 / 16;margin: 2.4rem 0 0;border-radius: 1rem;overflow: hidden;background: rgba(255,255,255,0.35);backdrop-filter: blur(14px) saturate(140%);-webkit-backdrop-filter: blur(14px) saturate(140%);border: 1px solid rgba(255,255,255,0.6);box-shadow: inset 0 1px 0 rgba(255,255,255,0.55);}
.store-view .store-view-iframe{position: absolute;inset: 0;width: 100%;height: 100%;border: 0;display: block;}
.store-view .store-view-placeholder{position: absolute;inset: 0;display: flex;align-items: center;justify-content: center;text-align: center;color: var(--black2);font-size: 1.2rem;line-height: 1.7;letter-spacing: 0.06em;}
.store-view .store-view-placeholder[hidden]{display: none !important;}
.access .access-info{margin: 0 0 3.6rem;display: flex;flex-direction: column;gap: 2rem;}
.access .access-map{position: relative;display: flex;align-items: center;justify-content: center;width: 100%;aspect-ratio: 1 / 1;min-height: 32rem;background: rgba(255,255,255,0.45);backdrop-filter: blur(14px) saturate(140%);-webkit-backdrop-filter: blur(14px) saturate(140%);border: 1px solid rgba(255,255,255,0.7);border-radius: 1rem;color: var(--black2);font-size: 1.2rem;letter-spacing: 0.06em;box-shadow: inset 0 1px 0 rgba(255,255,255,0.6);overflow: hidden;}
.access .access-map iframe,.access .access-map #sub-frame-error{position: absolute;inset: 0;width: 100%;height: 100%;border: 0;}
.access .access-info-list{margin: 0;padding: 0;background: transparent;border: none;border-radius: 0;overflow: visible;box-shadow: none;backdrop-filter: none;-webkit-backdrop-filter: none;}
.access .access-info-row{display: grid;grid-template-columns: 8rem 1fr;gap: 1rem;padding: 1.2rem 0;border-bottom: 1px solid var(--border);align-items: start;}
.access .access-info-row:last-child{border-bottom: none;}
.access .access-panel[data-access-panel="bus"] .access-info-row,.access .access-panel[data-access-panel="car"] .access-info-row{grid-template-columns: 14rem 1fr;}
.access .access-info-row dt{margin: 0;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.3rem;font-weight: 600;color: var(--green);letter-spacing: 0.06em;padding-top: 0.2rem;}
.access .access-info-row dd{margin: 0;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.3rem;line-height: 1.85;color: var(--black);letter-spacing: var(--letter);}
.access .access-info-row dd a{color: var(--black);border-bottom: 1px solid var(--border);}
.access .access-subtitle{margin: 8rem 0 1.8rem;padding: 0;font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 2rem;font-weight: 600;color: var(--black);letter-spacing: 0.1em;}
.access .access-subtitle .small{display: inline-block;font-family: serif;font-size: 1.2rem;color: var(--green);letter-spacing: 0.18em;line-height: 1;}
.access .access-tabs{display: flex;flex-wrap: wrap;gap: 0.6rem;margin: 0 0 2rem;padding: 0;}
.access .access-tabs--sub{margin-top: -1rem;margin-bottom: 2.4rem;}
.access .access-station-select{margin: 0 0 2rem;}
.access .access-tab{appearance: none;-webkit-appearance: none;background: rgba(255,255,255,0.55);backdrop-filter: blur(14px) saturate(140%);-webkit-backdrop-filter: blur(14px) saturate(140%);border: 1px solid rgba(255,255,255,0.7);border-radius: 999px;padding: 0.8rem 1.6rem;font-family: inherit;font-size: 1.2rem;font-weight: 500;color: var(--black);letter-spacing: 0.06em;cursor: pointer;transition: background 0.3s ease,border-color 0.3s ease,color 0.3s ease;box-shadow: inset 0 1px 0 rgba(255,255,255,0.65);width: 32%;}
.access .access-tabs--sub .access-tab{padding: 0.8rem 1.2rem;font-size: 1.15rem;}
.access .access-tab.is-active{background: rgba(75,147,104,0.1);border-color: rgba(75,147,104,0.45);color: var(--green);font-weight: 600;}
.access .access-panel{margin: 0 0 1.6rem;transition: opacity 0.22s ease,transform 0.22s ease;}
.access .access-panel[hidden]{display: none !important;}
.access .access-panel.is-fading-out{opacity: 0;transform: translateY(0.4rem);}
.access .access-panel.is-fading-in{opacity: 0;transform: translateY(-0.4rem);transition: none;}
.access .access-route-title{margin: 0 0 1.4rem;padding: 0 0 0 1.2rem;border-left: 3px solid var(--green);font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.45rem;font-weight: 600;color: var(--black);letter-spacing: 0.06em;line-height: 1.4;}
.access .access-steps-wrap{display: flex;gap: 1.4rem;overflow-x: auto;scroll-snap-type: x mandatory;scrollbar-width: none;-webkit-overflow-scrolling: touch;margin: 0 0 1.6rem;margin-right: calc((min(100vw,420px) - 100%) / -2);}
.access .slider-container>.slider-prev,.access .slider-container>.slider-next{top: 16rem;}
.access .slider-container>.slider-prev{left: -1.6rem;}
.access .slider-container>.slider-next{right: 1.4rem;}
.access .access-steps-wrap::-webkit-scrollbar{display: none;}
.access .access-step-card{position: relative;flex: 0 0 calc((100% - 1.4rem) / 1.2);scroll-snap-align: start;box-sizing: border-box;background: rgba(255,255,255,0.55);backdrop-filter: blur(14px) saturate(140%);-webkit-backdrop-filter: blur(14px) saturate(140%);border: 1px solid rgba(255,255,255,0.7);border-radius: 1rem;padding: 1.6rem 1.4rem;box-shadow: inset 0 1px 0 rgba(255,255,255,0.65);}
.access .access-step-no{position: absolute;top: 1rem;left: 0.4rem;z-index: 3;display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 0.2rem;width: 6.4rem;height: 6.4rem;border-radius: 50%;color: var(--black2);font-family: "Cardo","Zen Old Mincho",sans-serif;font-weight: 500;letter-spacing: 0;line-height: 1;overflow: visible;background: rgba(255,255,255,0.85);backdrop-filter: blur(0.2rem);-webkit-backdrop-filter: blur(0.2rem);box-shadow:
inset 0.625rem 1.25rem 1.875rem rgb(0 0 0 / 19%),inset -0.3125rem -0.625rem 1.25rem rgba(255,255,255,0.6),0 1.25rem 2.5rem rgba(0,0,0,0.05);}
.access .access-step-no::before{content: "";position: absolute;top: 15%;left: 20%;width: 1rem;height: 1rem;background: rgba(255,255,255,0.9);border-radius: 50%;filter: blur(0.125rem);transform: rotate(-15deg);z-index: 2;pointer-events: none;}
.access .access-step-no::after{content: "";position: absolute;bottom: 20%;right: 25%;width: 0.7rem;height: 0.7rem;background: rgba(255,255,255,0.3);border-radius: 50%;filter: blur(0.25rem);z-index: 1;pointer-events: none;}
.access .access-step-no-label{position: relative;z-index: 3;font-size: 1rem;color: var(--black);letter-spacing: 0.15em;text-transform: uppercase;line-height: 1;}
.access .access-step-no-num{position: relative;z-index: 3;font-size: 2.4rem;font-weight: 500;color: var(--black);letter-spacing: 0;line-height: 1;}
.access .access-step-img{display: block;width: 100%;aspect-ratio: 4 / 3;object-fit: cover;border-radius: 0.3rem;margin: 0 0 1.2rem;}
.access .access-step-card h5{margin: 0 0 0.6rem;font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.7rem;font-weight: 600;color: var(--black);letter-spacing: 0.06em;line-height: 1.5;}
.access .access-step-card p{margin: 0;font-size: 1.2rem;line-height: 1.85;color: var(--black2);letter-spacing: var(--letter);}
.access .access-summary-list{list-style: none;margin: 0 0 1.2rem;}
.access .access-summary-list li{position: relative;padding-left: 1.4rem;margin: 0 0 0.4rem;font-size: 1.2rem;line-height: 1.85;letter-spacing: var(--letter);}
.access .access-summary-list li::before{content: "";position: absolute;left: 0.2rem;top: 0.9em;width: 0.5rem;height: 0.5rem;border-radius: 50%;background: var(--green);opacity: 0.65;transform: translateY(-50%);}
.access .access-summary-list li:last-child{margin-bottom: 0;}
.access .access-park-summary{margin: 0 0 2rem;font-size: 1.2rem;line-height: 1.9;color: var(--black2);letter-spacing: var(--letter);}
.access .access-park-list{list-style: none;margin: 0 0 1.2rem;padding: 0;}
.access .access-park-item{display: grid;grid-template-columns: minmax(0, 1fr) minmax(0, 1.7fr);gap: 1.6rem;padding: 1.2rem 0;border-bottom: 1px solid rgba(75,147,104,0.22);font-size: 1.2rem;line-height: 1.8;letter-spacing: var(--letter);}
.access .access-park-item:first-child{border-top: 1px solid rgba(75,147,104,0.22);}
.access .access-park-name{font-weight: 600;color: var(--green);}
.access .access-park-body{color: var(--black);}
.access .access-text{margin: 0 0 1.4rem;font-size: 1.3rem;line-height: 1.85;color: var(--black2);letter-spacing: var(--letter);}
.top-fix{height: 80rem;}
.store-view{background: var(--gra5);padding-bottom: 22rem;padding-top: 22rem;position: relative;z-index: 5;}
.store-view::after{content: "";width: 140%;height: 40rem;background: url(/salon/images/shibuya-kumo.webp) center / cover no-repeat;position: absolute;top: -20rem;left: -20%;z-index: -1;}
.store-view::before{content: "";width: 140%;height: 40rem;background: url(/salon/images/shibuya-kumo-2.webp) center / cover no-repeat;position: absolute;bottom: -20rem;left: -20%;z-index: 1;}
.top-fix3::before{background: linear-gradient(to top,#ffffff00 0,var(--shibuya-main2) 100%);}
.top-fix3::after{content: "";width: 140%;height: 40rem;background: url(/salon/images/shibuya-kumo-2.webp) center / cover no-repeat;position: absolute;bottom: -20rem;left: -20%;z-index: 1;}
.assess{background: var(--shibuya-main3);padding-bottom: 4rem;margin-top: -0.3rem;z-index: 10;}
.column{margin-top: 0;padding-top: 22rem;padding-bottom: 22rem;background: var(--gra5);border-radius: 0;}
.column::before{display: none;}
.assess::before{background: url(/salon/images/shibuya-kumo.webp) center / cover no-repeat;}
.column::after{content: "";width: 140%;height: 40rem;background: url(/salon/images/shibuya-kumo-2.webp) center / cover no-repeat;position: absolute;top: initial;bottom: -20rem;left: -20%;z-index: -1;}
.news{background: var(--shibuya-main3);padding-top: 4rem;padding-bottom: 8rem;}
.news::after{content: "";width: 140%;height: 40rem;background: url(/salon/images/shibuya-kumo.webp) center / cover no-repeat;position: absolute;bottom: -14rem;left: -20%;z-index: -1;}
.faq::before{display: none;}
.faq{border-radius: 0;padding-bottom: 12rem;padding-top: 4rem;background: var(--shibuya-main3);position: relative;z-index: 5;}
.faq::after{content: "";width: 140%;height: 40rem;background: url(/salon/images/shibuya-kumo.webp) center / cover no-repeat;position: absolute;top: initial;bottom: -20rem;left: -20%;z-index: -1;}
.voice h2,.voice-2 h2,.media h2{text-align: left;padding-left: var(--sp_inner);}
.voice h2 span,.voice-2 h2 span,.media h2 span{margin-left: 0rem;transform: translate(0);}
.white2 h2 .small{color: #7e887e6b;}
.rank-section h3{border-bottom: 1px solid #999;}
.siro{background: #ffffff80;}
.rank-price-box{border: none;}
}
.reserve-auth-modal{position: fixed;inset: 0;z-index: 200001;display: flex;align-items: flex-end;justify-content: center;padding: 0;background: rgba(0,0,0,0);visibility: hidden;transition: background 0.3s ease,visibility 0s linear 0.3s;}
.reserve-auth-modal.is-open{background: rgba(0,0,0,0.45);visibility: visible;transition: background 0.3s ease,visibility 0s linear 0s;}
.reserve-auth-modal-backdrop{position: absolute;inset: 0;cursor: pointer;}
.reserve-auth-modal-content{position: relative;width: 100%;max-width: 420px;max-height: 85vh;height: auto;overflow-y: auto;background: var(--modal);border-radius: 2rem 2rem 0 0;padding: 5rem 3rem 3.6rem;transform: translateY(100%);transition: transform 0.45s cubic-bezier(0.32,0.72,0,1);box-shadow: 0 -1rem 4rem rgba(0,0,0,0.25);}
.reserve-auth-modal-content::before{content: "";position: absolute;top: 0.8rem;left: 50%;width: 4rem;height: 0.4rem;background: rgba(0,0,0,0.18);border-radius: 0.4rem;transform: translateX(-50%);pointer-events: none;}
.reserve-auth-modal.is-open .reserve-auth-modal-content{transform: translateY(0);}
.reserve-auth-modal-close{position: absolute;top: 1.4rem;right: 1.6rem;appearance: none;-webkit-appearance: none;background: none;border: none;font-size: 2.2rem;line-height: 1;cursor: pointer;color: var(--black2);}
.reserve-auth-modal-panel{display: flex;flex-direction: column;gap: 1.2rem;}
.reserve-auth-modal-panel[hidden]{display: none !important;}
.reserve-auth-modal .reserve-form-group{margin-bottom: 0;}
.reserve-auth-modal-send,.reserve-auth-modal-confirm{margin-top: -0.4rem;}
.rank-info-modal{position: fixed;inset: 0;z-index: 200001;display: flex;align-items: flex-end;justify-content: center;padding: 0;background: rgba(0,0,0,0);visibility: hidden;transition: background 0.3s ease,visibility 0s linear 0.3s;}
.rank-info-modal.is-open{background: rgba(0,0,0,0.7);visibility: visible;transition: background 0.3s ease,visibility 0s linear 0s;}
.rank-info-modal-backdrop{position: absolute;inset: 0;cursor: pointer;}
.rank-info-modal-content{position: relative;width: 100%;max-width: 420px;max-height: 85vh;height: auto;overflow-y: auto;background: var(--modal);border-radius: 2rem 2rem 0 0;padding: 5rem 3rem 3.6rem;transform: translateY(100%);transition: transform 0.45s cubic-bezier(0.32,0.72,0,1);box-shadow:
0 30px 80px rgba(0,0,0,0.35),0 0 0 1px rgba(255,255,255,0.08),0 0 40px rgba(255,255,255,0.06);}
.rank-info-modal-content::before{content: "";position: absolute;top: 0.8rem;left: 50%;width: 4rem;height: 0.4rem;background: rgba(0,0,0,0.18);border-radius: 0.4rem;transform: translateX(-50%);pointer-events: none;}
.rank-info-modal.is-open .rank-info-modal-content{transform: translateY(0);}
.rank-info-modal-close{position: absolute;top: 1.4rem;right: 1.6rem;appearance: none;-webkit-appearance: none;background: none;border: none;font-size: 2.2rem;line-height: 1;cursor: pointer;color: var(--black2);}
.rank-info-modal-title{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 2.4rem;font-weight: 600;color: var(--black);letter-spacing: 0.08em;margin: 1.4rem 0 2rem;text-align: center;}
.rank-info-modal-lead{font-size: 1.2rem;line-height: 1.85;color: var(--black2);margin: 0 0 1.4rem;letter-spacing: var(--letter);}
.rank-info-modal-highlight{display: flex;align-items: center;gap: 1rem;margin: 0 0 2rem;padding: 1.2rem 1.4rem;background: rgba(255,255,255,0.45);backdrop-filter: blur(10px) saturate(120%);-webkit-backdrop-filter: blur(10px) saturate(120%);border: 1px solid rgba(255,255,255,0.6);border-radius: 0.6rem;box-shadow: 0 4px 14px rgba(0,0,0,0.04);font-family: "Zen Old Mincho","Noto Serif JP",serif;}
.rank-info-modal-highlight-badge{flex-shrink: 0;display: inline-flex;align-items: center;justify-content: center;padding: 0.35rem 0.8rem;background: var(--green);color: #fff;font-family: "Zen Old Mincho","Noto Serif JP",serif;font-size: 1rem;font-weight: 500;letter-spacing: 0.15em;border-radius: 0.3rem;line-height: 1;}
.rank-info-modal-highlight-text{font-family: "Zen Old Mincho","Noto Serif JP",serif;font-size: 1.3rem;color: var(--black);letter-spacing: 0.04em;line-height: 1.5;}
.rank-info-modal-highlight-text strong{font-family: "Zen Old Mincho","Noto Serif JP",serif;font-size: 1.7rem;font-weight: 600;color: var(--green);letter-spacing: 0.04em;margin-left: 0.2rem;}
.rank-info-modal-list{list-style: none;padding: 0;margin: 0;display: flex;flex-direction: column;gap: 1.4rem;}
.rank-info-modal-item{display: grid;grid-template-columns: 10.4rem 1fr;gap: 2rem;align-items: start;padding: 1.2rem 0;border-bottom: 1px solid var(--border);}
.rank-info-modal-item:last-child{border-bottom: none;}
.rank-info-modal-item .lank{display: inline-flex;align-items: center;justify-content: center;padding: 1rem 0.5rem 0.9rem;}
.rank-info-modal-detail{display: flex;flex-direction: column;gap: 0.4rem;}
.rank-info-modal-fee{margin: 0;font-family: "Zen Old Mincho","Noto Serif JP",serif;font-size: 1.6rem;font-weight: 500;letter-spacing: 0.04em;line-height: 1.6;color: var(--black);}
.rank-info-modal-desc{margin: 0;font-size: 1.2rem;line-height: 1.85;color: var(--black2);letter-spacing: var(--letter);}
.rank-info-modal-note{margin: 1.6rem 0 0;padding: 1.2rem 1.4rem;background: var(--gray);border-radius: 0.6rem;font-size: 1.1rem;line-height: 1.8;color: var(--black2);letter-spacing: var(--letter);}
@media (max-width: 768px){.rank-info-modal-highlight{flex-direction: column;align-items: center;text-align: center;gap: 0.8rem;}
}
.reserve-terms-link{appearance: none;-webkit-appearance: none;background: none;border: none;padding: 0;margin: 0;font: inherit;color: var(--green);text-decoration: underline;text-underline-offset: 0.2rem;cursor: pointer;letter-spacing: inherit;}
.reserve-terms-link:hover{opacity: 0.75;}
.terms-modal{position: fixed;inset: 0;z-index: 200002;display: flex;align-items: flex-end;justify-content: center;padding: 0;background: rgba(0,0,0,0);visibility: hidden;transition: background 0.3s ease,visibility 0s linear 0.3s;}
.terms-modal.is-open{background: rgba(0,0,0,0.45);visibility: visible;transition: background 0.3s ease,visibility 0s linear 0s;}
.terms-modal-backdrop{position: absolute;inset: 0;cursor: pointer;}
.terms-modal-content{position: relative;width: 100%;max-width: 460px;max-height: 88vh;overflow-y: auto;background: var(--modal);border-radius: 2rem 2rem 0 0;padding: 5rem 2rem 3.6rem;transform: translateY(100%);transition: transform 0.45s cubic-bezier(0.32,0.72,0,1);box-shadow: 0 -1rem 4rem rgba(0,0,0,0.25);}
.terms-modal-content::before{content: "";position: absolute;top: 0.8rem;left: 50%;width: 4rem;height: 0.4rem;background: rgba(0,0,0,0.18);border-radius: 0.4rem;transform: translateX(-50%);pointer-events: none;}
.terms-modal.is-open .terms-modal-content{transform: translateY(0);}
.terms-modal-header{position: sticky;top: 0;height: 0;z-index: 11;pointer-events: none;}
.terms-modal-close{position: absolute;top: 0.6rem;right: 1.6rem;width: 3.6rem;height: 3.6rem;display: inline-flex;align-items: center;justify-content: center;appearance: none;-webkit-appearance: none;background: var(--green);border: none;border-radius: 50%;font-size: 2rem;font-weight: 300;line-height: 1;color: #fff;cursor: pointer;pointer-events: auto;}
.terms-modal-close:hover{opacity: 0.85;}
.terms-modal-title{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.8rem;font-weight: 600;color: var(--black);letter-spacing: 0.1em;margin: 1rem 0 1.2rem;text-align: center;position: relative;padding-bottom: 1.2rem;}
.terms-modal-title::after{content: "";position: absolute;left: 50%;bottom: 0;width: 3.6rem;height: 1px;background: var(--green);transform: translateX(-50%);}
.terms-modal-lead{font-size: 1.2rem;line-height: 1.9;color: var(--black2);margin: 0 0 1.8rem;letter-spacing: var(--letter);}
.terms-modal-list{list-style: none;padding: 0;margin: 0;counter-reset: terms-counter;display: flex;flex-direction: column;gap: 1.6rem;}
.terms-modal-item{padding: 1.4rem 1.4rem 1.4rem;background: var(--gray);border-radius: 0.6rem;border-left: 3px solid var(--green);}
.terms-modal-item-title{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.3rem;font-weight: 600;color: var(--black);letter-spacing: 0.06em;margin: 0 0 0.8rem;}
.terms-modal-item-text{margin: 0;font-size: 1.2rem;line-height: 1.9;color: var(--black2);letter-spacing: var(--letter);}
.terms-modal-sub-list{margin: 0.8rem 0 0;padding-left: 1.4rem;list-style: disc;font-size: 1.15rem;line-height: 1.9;color: var(--black2);letter-spacing: var(--letter);}
.terms-modal-sub-list li{margin: 0.2rem 0;}
.terms-modal-note{margin: 1.6rem 0 2rem;padding-top: 1.2rem;border-top: 1px dashed var(--border);text-align: right;font-size: 1.05rem;color: var(--black2);letter-spacing: var(--letter);}
.terms-modal-agree{display: block;margin: 0 auto;padding: 0.7rem 2.2rem;background: transparent;border: 1px solid var(--border);border-radius: 2rem;font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.2rem;font-weight: 400;color: var(--black2);letter-spacing: 0.06em;cursor: pointer;transition: background 0.2s ease,color 0.2s ease,border-color 0.2s ease;}
.terms-modal-agree:hover{background: var(--gray);color: var(--black);border-color: var(--black2);}
.reserve-auth-modal-title{font-family: "Zen Old Mincho","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",serif;font-size: 1.7rem;font-weight: 600;color: var(--black);letter-spacing: 0.08em;margin: 0;text-align: center;}
.reserve-auth-modal-lead{font-size: 1.25rem;line-height: 1.85;color: var(--black2);margin: 0;letter-spacing: var(--letter);}
.reserve-auth-modal-paths{display: flex;flex-direction: column;gap: 1rem;margin-top: 0.6rem;}
.reserve-auth-modal-path{width: 100%;text-align: center;justify-content: center;}
.reserve-auth-modal-send{align-self: flex-start;width: 100%;margin-top: 0.2rem;}
.reserve-auth-modal-stages{position: relative;overflow: hidden;display: grid;grid-template-areas: "stack";}
.reserve-auth-modal-stage{grid-area: stack;display: flex;flex-direction: column;gap: 1.2rem;transition:
transform 0.45s cubic-bezier(0.32,0.72,0,1),opacity 0.3s ease;}
.reserve-auth-modal-stage[data-ra-stage="contact"]{transform: translateX(0);opacity: 1;}
.reserve-auth-modal-stage[data-ra-stage="code"]{transform: translateX(100%);opacity: 0;pointer-events: none;}
.reserve-auth-modal-stages.is-code .reserve-auth-modal-stage[data-ra-stage="contact"]{transform: translateX(-100%);opacity: 0;pointer-events: none;}
.reserve-auth-modal-stages.is-code .reserve-auth-modal-stage[data-ra-stage="code"]{transform: translateX(0);opacity: 1;pointer-events: auto;}
.reserve-auth-modal-back-btn{appearance: none;-webkit-appearance: none;background: none;border: none;align-self: center;margin-top: 0.6rem;font-family: inherit;font-size: 1.2rem;color: var(--black2);letter-spacing: 0.04em;cursor: pointer;padding: 0.4rem 0.8rem;transition: color 0.2s ease;}
.reserve-auth-modal-back-btn:hover{color: var(--black);}
.reserve-auth-modal-confirm{width: 100%;text-align: center;justify-content: center;}
.reserve-auth-modal-back{align-self: flex-start;appearance: none;-webkit-appearance: none;background: none;border: none;font-size: 1.2rem;color: var(--black2);cursor: pointer;padding: 0.4rem 0;letter-spacing: 0.04em;margin-top: 0.4rem;}
.reserve-auth-modal .reserve-form-hint{font-size: 1.15rem;color: var(--black3);margin: 0.4rem 0 0;letter-spacing: var(--letter);}
select,select option,select optgroup{color: var(--black) !important;-webkit-text-fill-color: var(--black) !important;background-color: #fff;}
.rt-modal-date-pulldown,.tell-reserve-date-pulldown,.people-modal-date-pulldown,.people-schedule-date{color: var(--black) !important;-webkit-text-fill-color: var(--black) !important;}
.page-top-ripple{position: absolute !important;inset: 0;pointer-events: none;z-index: 0;overflow: hidden;}
.page-top-ripple .ripple-group span{border-color: rgba(255,255,255,0.5);border-width: 1px;}
.page-top>*:not(.page-top-ripple){position: relative;z-index: 6;}
.shizuku.shizuku-1,.shizuku.shizuku-2,.shizuku.shizuku-3,.shizuku.shizuku-4,.shizuku.shizuku-7{transform: translate3d(0,var(--parallax-y,0px),0) !important;transition: transform 0s linear !important;}
.shizuku.shizuku-1.fade,.shizuku.shizuku-2.fade,.shizuku.shizuku-3.fade,.shizuku.shizuku-4.fade,.shizuku.shizuku-7.fade{transform: translate3d(0,var(--parallax-y,0px),0) scale(1.05) !important;}
.shizuku.shizuku-1.fade.is-animated,.shizuku.shizuku-2.fade.is-animated,.shizuku.shizuku-3.fade.is-animated,.shizuku.shizuku-4.fade.is-animated,.shizuku.shizuku-7.fade.is-animated{transform: translate3d(0,var(--parallax-y,0px),0) scale(1) !important;}
.map-fix-btn{position: fixed;bottom: 1.75rem;left: 1.6rem;z-index: 999;transition: transform 0.85s cubic-bezier(0.22,1,0.36,1),opacity 0.75s ease;display: inline-flex;align-items: center;gap: 0.5rem;padding: 1.1rem 2.5rem 1.1rem 2.1rem;background: rgba(255,255,255,0.55);backdrop-filter: blur(14px) saturate(160%);-webkit-backdrop-filter: blur(14px) saturate(160%);border: none;border-radius: 40rem;color: var(--green);-webkit-text-fill-color: var(--green);font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.5rem;font-weight: 500;line-height: 1;letter-spacing: 0.1em;box-shadow:
inset 0 1px 0 rgba(255,255,255,0.55),0 0.8rem 1.8rem rgba(0,0,0,0.15);cursor: pointer;appearance: none;-webkit-appearance: none;white-space: nowrap;}
@media (min-width: 769px){.map-fix-btn{display: none !important;}
}
.map-fix-btn.is-hidden{transform: translateY(150%);opacity: 0;pointer-events: none;}
.fixed-cta.is-hidden{opacity: 0;transform: translateY(150%);pointer-events: none;}
.review-fix-btn.is-hidden{transform: none;opacity: 1;pointer-events: auto;}
.page-people-single-fixed-cta .arrow-white{background: none;display: inline-flex;align-items: center;justify-content: center;width: 1.8rem;height: 1.8rem;font-size: 1.8rem;font-weight: 400;line-height: 1;color: #fff;}
.page-people-single-fixed-cta .arrow-white::before{content: "＋";}
.map-fix-btn-plus{display: inline-flex;align-items: center;justify-content: center;width: 1.8rem;height: 1.8rem;border-radius: 50%;background: var(--green);color: #fff;-webkit-text-fill-color: #fff;font-size: 1.4rem;font-weight: 400;line-height: 1;padding-bottom: 0.15rem;}
.map-modal{position: fixed;inset: 0;z-index: 1100;visibility: hidden;opacity: 0;transition: visibility 0.4s,opacity 0.4s ease;pointer-events: none;}
.map-modal.is-open{visibility: visible;opacity: 1;pointer-events: auto;}
.map-modal-content::before{content: "";position: sticky;top: 0;left: 50%;display: block;width: 4.4rem;height: 0.4rem;margin: 0.8rem auto 0;border-radius: 99px;background: rgba(0,0,0,0.25);z-index: 12;pointer-events: none;transform: translateX(-50%);}
.map-modal-backdrop{position: absolute;inset: 0;background: radial-gradient(circle at center,rgba(105,102,96,0.7),rgba(62,60,55,0.85) 80%);cursor: pointer;}
.map-modal-content{position: absolute;left: 0;right: 0;bottom: 0;height: 80vh;max-height: 80vh;overflow-y: auto;overflow-x: hidden;overscroll-behavior: contain;-webkit-overflow-scrolling: touch;background: var(--shibuya-main3);border-radius: 1.6rem 1.6rem 0 0;transform: translateY(100%);transition: transform 0.45s cubic-bezier(0.22,1,0.36,1);box-shadow: 0 -0.4rem 1.6rem rgba(0,0,0,0.15);}
.map-modal.is-open .map-modal-content{transform: translateY(0);}
@media (min-width: 769px){.map-modal-content{max-width: 42rem;left: 50%;transform: translate(-50%,100%);}
.map-modal.is-open .map-modal-content{transform: translate(-50%,0);}
}
.map-modal-close{position: absolute;top: calc(25vh + 0.2rem);right: 2.2rem;width: 3.8rem;height: 3.8rem;background: var(--green);border: none;border-radius: 50%;color: #fff;-webkit-text-fill-color: #fff;font-size: 2.4rem;font-weight: 300;line-height: 1;padding: 0 0 0.3rem;display: flex;align-items: center;justify-content: center;cursor: pointer;z-index: 12;box-shadow: 0 2px 8px rgba(0,0,0,0.18);}
@media (min-width: 769px){.map-modal-close{right: calc(50% - 21rem + 1.2rem);top: calc(25vh + -1.2rem);}
}
.map-modal-inner{padding: 8rem 0rem 4rem;overflow-x: hidden;}
.map-modal-inner .access{background: transparent !important;padding: 0 !important;margin: 0 !important;z-index: auto !important;}
.map-modal-inner .title .small{display: none !important;}
.map-modal-inner .title,.map-modal-inner .access-subtitle{text-align: center;}
body.map-modal-open{overflow: hidden;}
.store-box,.voice-box,.assess-img-wrap{position: relative;}
.store-box::after,.people-box::after,.voice-box::after,.style-box::after,.assess-img-wrap::after{content: "+";position: absolute;top: 0.8rem;right: 0.6rem;width: 3.2rem;height: 3.2rem;display: flex;align-items: center;justify-content: center;border-radius: 50%;background: rgba(255,255,255,0.55);backdrop-filter: blur(8px) saturate(160%);-webkit-backdrop-filter: blur(8px) saturate(160%);color: var(--black2);-webkit-text-fill-color: var(--black2);font-family: "FOT-ニューセザンヌ ProN M","Hiragino Sans","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",sans-serif;font-size: 1.6rem;font-weight: 300;line-height: 1;padding-bottom: 0.35rem;box-shadow:
inset 0 1px 0 rgba(255,255,255,0.55),0 0.3rem 0.8rem rgba(0,0,0,0.12);z-index: 3;pointer-events: none;}
.people-box::after{width: 2.4rem;height: 2.4rem;}
.single-top-contact-store h1{font-size: 2rem;letter-spacing: 0.3em;font-family: "cardo","Zen Old Mincho",sans-serif;margin-bottom: 2rem;font-weight: 500 !important;}
.single-top-contact-store h1 .small{margin-bottom: 1rem;display: block;}
.single-top-contact-store p{line-height: 2;}
.single-top-contact-store{background: url(/salon/images/people-back.webp);background-size: cover;padding-top: 8rem;}
@media (min-width: 769px){.single-top-contact,.single-top-contact-store{padding-top: 12rem;}
}
.one .page-contact{margin-top: -4.8rem;}
@media (prefers-reduced-data: reduce){*{backdrop-filter: none !important;-webkit-backdrop-filter: none !important;}
}
@media (prefers-reduced-motion: reduce){.body-particle,.nav-rain-drop,.ripple-group span{animation: none !important;}
}
.body-kumo-top,.body-kumo-bottom{content-visibility: auto;contain-intrinsic-size: auto 30rem;}

.salon-registration-verified-text {
  font-size: 1.4rem;
  color: var(--green);
}
.salon-registration-action-group {
  margin-bottom: 2rem;
}
.salon-registration-section-description {
  margin-bottom: 1rem;
  font-size: 1.35rem !important;
}

.store-reservation-calendar{margin-top: 7rem;position: relative;z-index: 120;isolation: isolate;}
.store-reservation-calendar .time-panel{width: var(--in);margin: 0 auto;padding: 2.4rem 2rem 2.8rem;border-radius: 1rem;position: relative;z-index: 1;}
.store-reservation-calendar-form{display: flex;flex-direction: column;gap: 1.8rem;}
.store-reservation-calendar-hidden-control{display: none;}
.store-reservation-calendar-controls{display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: 1.2rem;}
.store-reservation-calendar-control{display: flex;flex-direction: column;gap: 0.6rem;min-width: 0;color: var(--black);font-size: 1.2rem;letter-spacing: var(--letter);}
.store-reservation-calendar-control .flow-select-wrap{width: 100%;}
.store-reservation-calendar-control select,.store-reservation-calendar-control input[type="date"]{width: 100%;height: 4.4rem;border: 1px solid rgba(255,255,255,0.7);border-radius: 0.8rem;background: rgba(255,255,255,0.72);color: var(--black);padding: 0 1.2rem;font-size: 1.3rem;letter-spacing: var(--letter);outline: none;}
.store-reservation-calendar-selected{display: flex;flex-wrap: wrap;gap: 0.8rem 1.2rem;color: var(--black2);font-size: 1.2rem;line-height: 1.7;}
.store-reservation-calendar-board{border: 1px solid rgba(255,255,255,0.7);border-radius: 1rem;background: rgba(255,255,255,0.55);padding: 1rem;overflow: hidden;}
.store-reservation-calendar-placeholder{border-radius: 0.8rem;background: rgba(255,255,255,0.62);padding: 4rem 1.2rem;text-align: center;color: var(--black2);font-size: 1.2rem;line-height: 1.8;}
.store-reservation-calendar-actions{display: flex;justify-content: center;position: relative;z-index: 2;}
.store-reservation-calendar-actions .cta-button{width: min(100%,28rem);}
.page-store-show [data-salon-reservation-calendar].hidden,.page-store-show [data-salon-reservation-calendar-placeholder].hidden{display: none !important;}
.page-store-show .salon-reservation-table-wrapper{width: 100%;overflow-x: auto;}
.page-store-show .salon-reservation-table{width: 100%;border-collapse: collapse;font-size: 1.2rem;color: var(--black);}
.page-store-show .salon-reservation-table th,.page-store-show .salon-reservation-table td{border: 1px solid rgba(120,132,124,0.24);text-align: center;padding: 0.8rem 0.4rem;min-width: 4.8rem;vertical-align: middle;}
.page-store-show .salon-reservation-corner,.page-store-show .salon-reservation-col-head,.page-store-show .salon-reservation-row-head{background: rgba(255,255,255,0.68);font-weight: 600;white-space: nowrap;}
.page-store-show .salon-reservation-col-head-selected{background: rgba(121,164,118,0.18);color: var(--green);}
.page-store-show .salon-reservation-cell{background: rgba(255,255,255,0.74);font-weight: 600;user-select: none;}
.page-store-show .salon-reservation-cell-open{color: var(--green);background: rgba(121,164,118,0.1);}
.page-store-show .salon-reservation-cell-partial{color: #b58a2b;background: rgba(239,230,189,0.46);cursor: not-allowed;}
.page-store-show .salon-reservation-cell-phone-only{color: var(--green);background: rgba(121,164,118,0.18);cursor: pointer;}
.page-store-show .salon-reservation-cell-full{color: #a85b5b;background: rgba(255,235,235,0.64);cursor: not-allowed;}
.page-store-show .salon-reservation-cell-off-shift,.page-store-show .salon-reservation-cell-closed{background: rgba(255,255,255,0.35);color: var(--black3);cursor: not-allowed;}
.page-store-show .salon-reservation-cell-clickable{cursor: pointer;transition: background-color 0.15s ease,color 0.15s ease;}
.page-store-show .salon-reservation-cell-clickable:hover{background: rgba(121,164,118,0.22);}
.page-store-show .salon-reservation-cell-phone-clickable:hover{background: rgba(121,164,118,0.3);}
.page-store-show .salon-reservation-cell-selected{background: var(--green) !important;color: #fff !important;box-shadow: inset 0 0 0 2px rgba(54,69,58,0.36);}
.page-store-show .salon-reservation-week-nav-wrapper{display: flex;flex-direction: column;gap: 0.4rem;padding: 0.8rem 0;}
.page-store-show .salon-reservation-week-nav{display: flex;align-items: center;gap: 0.6rem;flex-wrap: wrap;}
.page-store-show .salon-reservation-week-nav-btn{border: 1px solid rgba(121,164,118,0.36);background: rgba(255,255,255,0.62);border-radius: 999px;padding: 0.5rem 1.2rem;font-size: 1.1rem;color: var(--black);cursor: pointer;}
.page-store-show .salon-reservation-week-nav-btn:hover{background: rgba(121,164,118,0.12);}
.page-store-show .salon-reservation-week-nav-title{font-weight: 600;color: var(--black);font-size: 1.3rem;}
.page-store-show .salon-reservation-week-nav-label,.page-store-show .salon-reservation-day-title{color: var(--black2);font-size: 1.15rem;}
.page-store-show .salon-reservation-day-title{text-align: center;margin: 0.4rem 0 1rem;font-weight: 600;}
.page-store-show .salon-reservation-day-sunday{color: #b85a5a;}
.page-store-show .salon-reservation-day-saturday{color: #4f7aa0;}
.page-store-show .salon-reservation-legend{display: flex;flex-wrap: wrap;gap: 0.8rem 1.2rem;margin-top: 1.2rem;color: var(--black2);font-size: 1.1rem;}
.page-store-show .salon-reservation-legend-item{display: inline-flex;align-items: center;gap: 0.4rem;}
.page-store-show .salon-reservation-legend-marker{display: inline-flex;align-items: center;justify-content: center;width: 1.8rem;height: 1.8rem;border-radius: 999px;background: rgba(255,255,255,0.75);font-weight: 600;line-height: 1;}
.page-store-show .salon-reservation-legend-open{color: var(--green);}
.page-store-show .salon-reservation-legend-partial{color: #b58a2b;}
.page-store-show .salon-reservation-legend-full{color: #a85b5b;}
.page-store-show .salon-reservation-legend-closed{color: var(--black3);}
.page-store-show .salon-reservation-empty{padding: 2rem 1rem;text-align: center;color: var(--black2);font-size: 1.2rem;}
@media (max-width: 768px){.store-reservation-calendar .time-panel{width: calc(100% - var(--sp_inner) * 2);padding: 2rem 1.2rem;}
.store-reservation-calendar-controls{grid-template-columns: 1fr;}
.page-store-show .salon-reservation-table{font-size: 1.1rem;}
}

@media (max-width: 768px){
.store-reservation-calendar{margin-top:4.8rem;padding-bottom:8.8rem;}
.store-reservation-calendar .time-panel{width:100%;padding:1.8rem 1rem 2rem;border-radius:1rem;}
.store-reservation-calendar-form{gap:1.4rem;}
.store-reservation-calendar-board{padding:0.8rem;overflow:visible;}
.page-store-show .salon-reservation-table-wrapper{max-height:34rem;overflow:auto;-webkit-overflow-scrolling:touch;}
.page-store-show .salon-reservation-table{min-width:46rem;width:max-content;}
.store-reservation-calendar-actions{position:relative;z-index:3;padding:0.4rem 0 1.6rem;}
.store-reservation-calendar-actions .cta-button{width:min(100%,30rem);opacity:1;visibility:visible;pointer-events:auto;}
}
.grecaptcha-badge{visibility:hidden;}
.salon-recaptcha-disclosure{margin:0.8rem 0 0;font-size:1.1rem;line-height:1.6;color:var(--black3);letter-spacing:0.03em;text-align:center;}
