*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-sans),Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.block{display:block}.table{display:table}.hidden{display:none}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{--primary:#2d5a4e;--secondary:#4a8c7a;--bg:#f8f6f2;--text:#1a1a1a;--card:#fff;--sans:var(--font-sans),"Hiragino Sans","Hiragino Kaku Gothic ProN","Meiryo",sans-serif;--en:var(--font-en),"Helvetica Neue",sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--sans);background:var(--bg);color:var(--text);line-height:1.8;overflow-x:hidden;font-weight:400}.site-header{position:fixed;top:0;left:0;width:100%;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:20px clamp(20px,5vw,60px);transition:all .4s ease}.site-header.scrolled{background:hsla(40,30%,96%,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 2px 24px rgba(26,26,26,.06);padding:14px clamp(20px,5vw,60px)}.logo-text{font-family:var(--en);font-weight:300;font-size:1.35rem;letter-spacing:.12em;text-decoration:none;color:#fff;transition:color .4s ease}.site-header.scrolled .logo-text{color:var(--primary)}@media (max-width:760px){.logo-text{font-size:1.15rem}}.site-nav{display:flex;gap:28px}.site-nav a{font-family:var(--en);font-size:.78rem;letter-spacing:.1em;text-decoration:none;color:hsla(0,0%,100%,.75);transition:color .3s,opacity .3s}.site-header.scrolled .site-nav a{color:var(--text);opacity:.6}.site-nav a:hover{color:var(--primary)!important;opacity:1!important}@media (max-width:760px){.site-nav{display:none}}.hero{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:0 24px;overflow:hidden}.hero-bg{position:absolute;inset:0;z-index:0}.hero-bg img{-o-object-fit:cover;object-fit:cover;-o-object-position:center 40%;object-position:center 40%}.hero:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(10,20,18,.28),rgba(10,20,18,.52))}.hero-inner{position:relative;z-index:3;color:#fff;max-width:860px}.hero-en{font-size:clamp(.75rem,1.4vw,.9rem);letter-spacing:.35em;text-transform:uppercase;opacity:.8;margin-bottom:20px;display:block}.hero h1,.hero-en{font-family:var(--en);font-weight:300}.hero h1{font-size:clamp(2.4rem,7vw,5rem);line-height:1.2;text-shadow:0 4px 30px rgba(0,0,0,.15);margin-bottom:16px}.hero h1,.hero-sub{letter-spacing:.08em}.hero-sub{font-family:var(--sans);font-size:clamp(.88rem,1.8vw,1.05rem);font-weight:300;margin-bottom:48px;opacity:.88;text-shadow:0 2px 14px rgba(0,0,0,.12)}.btn{display:inline-block;font-family:var(--en);font-weight:400;font-size:.82rem;letter-spacing:.2em;text-transform:uppercase;padding:16px 44px;border-radius:2px;text-decoration:none;background:transparent;color:#fff;border:1px solid hsla(0,0%,100%,.6);transition:background .3s,border-color .3s,color .3s}.btn:hover{background:hsla(0,0%,100%,.12);border-color:#fff}.scroll-ind{position:absolute;bottom:80px;left:50%;transform:translateX(-50%);z-index:3;text-align:center;color:hsla(0,0%,100%,.7);animation:bounce 2.4s ease-in-out infinite}.scroll-ind span{font-family:var(--en);font-size:.62rem;letter-spacing:.35em;display:block;margin-bottom:10px}.scroll-ind svg{display:block;margin:0 auto}@keyframes bounce{0%,to{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(10px)}}.wave{position:absolute;bottom:-2px;left:0;width:100%;line-height:0;z-index:2}.wave svg{display:block;width:100%;height:auto}.wave-1 path{animation:waveMove1 9s ease-in-out infinite alternate}.wave-2{opacity:.5}.wave-2 path{animation:waveMove2 14s ease-in-out infinite alternate}@keyframes waveMove1{0%{transform:translateX(0)}to{transform:translateX(-50px)}}@keyframes waveMove2{0%{transform:translateX(-40px)}to{transform:translateX(20px)}}section{padding:clamp(70px,11vw,130px) clamp(20px,6vw,80px);position:relative}.hero{padding-top:0;padding-bottom:0}.section-label{font-size:.72rem;letter-spacing:.35em;color:var(--secondary);margin-bottom:12px;text-transform:uppercase}.section-label,.section-title{font-family:var(--en);text-align:center}.section-title{font-weight:300;font-size:clamp(1.8rem,4vw,2.8rem);margin-bottom:56px;letter-spacing:.12em;color:var(--text)}.container{max-width:1080px;margin:0 auto}.about-text{max-width:700px;margin:0 auto 60px;text-align:center;font-size:clamp(.95rem,1.8vw,1.05rem);color:#3a3a3a;line-height:2}.stats{display:flex;justify-content:center;gap:clamp(30px,6vw,80px);flex-wrap:wrap;margin-bottom:0}.stat{text-align:center}.stat-num{font-family:var(--en);font-weight:300;font-size:clamp(2.2rem,5vw,3.2rem);color:var(--primary);letter-spacing:.04em;line-height:1;margin-bottom:8px}.stat-label{font-size:.82rem;color:#666;letter-spacing:.06em}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px}.card{position:relative;background:var(--card);border-radius:4px;padding:40px 32px;box-shadow:0 2px 20px rgba(26,26,26,.05);transition:transform .35s ease,box-shadow .35s ease;border-top:2px solid transparent}.card:hover{transform:translateY(-6px);box-shadow:0 14px 40px rgba(45,90,78,.12);border-top-color:var(--primary)}.card-icon{width:40px;height:40px;margin-bottom:20px;color:var(--primary)}.card h3{font-family:var(--en);font-weight:400;font-size:1.15rem;letter-spacing:.06em;margin-bottom:10px;color:var(--text)}.card .desc{font-size:.88rem;color:#666;margin-bottom:22px;line-height:1.9}.card .price{font-family:var(--en);font-weight:500;color:var(--primary);font-size:1rem;letter-spacing:.04em}.stylist-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:40px;max-width:720px;margin:0 auto}.stylist-card{background:var(--card);border-radius:4px;padding:40px 32px;box-shadow:0 2px 20px rgba(26,26,26,.05);text-align:center}.stylist-avatar{width:100px;height:100px;border-radius:50%;margin:0 auto 22px;overflow:hidden;background:#e8ede9}.stylist-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.stylist-role{font-family:var(--en);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--secondary);margin-bottom:6px}.stylist-name{font-family:var(--sans);font-size:1.15rem;font-weight:500;margin-bottom:4px;color:var(--text)}.stylist-name-en{font-family:var(--en);font-size:.82rem;color:#999;letter-spacing:.06em;margin-bottom:18px}.stylist-specialty{font-size:.85rem;color:#555;line-height:1.9;text-align:left}.stylist-specialty span{display:inline-block;background:rgba(45,90,78,.08);color:var(--primary);font-size:.75rem;padding:3px 12px;border-radius:20px;margin:3px 3px 3px 0;letter-spacing:.04em}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media (max-width:760px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}.gallery-item{aspect-ratio:3/4;overflow:hidden;border-radius:2px;background:#e8ede9}.gallery-item img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .5s ease}.gallery-item:hover img{transform:scale(1.06)}.flow{display:flex;align-items:flex-start;justify-content:center;gap:6px;flex-wrap:wrap}.flow-step{flex:1;min-width:130px;text-align:center}.flow-arrow{display:flex;align-items:center;justify-content:center;color:var(--primary);opacity:.35;padding-top:18px;flex:0 0 auto}.flow-arrow svg{width:26px;height:26px}@media (max-width:760px){.flow{flex-direction:column;align-items:center}.flow-step{width:100%;max-width:280px}.flow-arrow{transform:rotate(90deg);padding:2px 0}}.flow-num{width:60px;height:60px;border-radius:50%;margin:0 auto 18px;display:flex;align-items:center;justify-content:center;font-family:var(--en);font-weight:300;font-size:1.35rem;color:#fff;background:var(--primary)}.flow-step h4{font-family:var(--sans);font-size:.95rem;font-weight:500;margin-bottom:6px}.flow-step p{font-size:.82rem;color:#777}.price-wrap{max-width:640px;margin:0 auto}table{width:100%;border-collapse:collapse;background:#fff;border-radius:4px;overflow:hidden;box-shadow:0 2px 20px rgba(26,26,26,.05)}td,th{padding:16px 24px;text-align:left;border-bottom:1px solid rgba(26,26,26,.05)}th{background:var(--primary);color:#fff;letter-spacing:.08em;font-weight:400;font-size:.82rem}td:last-child,th{font-family:var(--en)}td:last-child{text-align:right;font-weight:500;color:var(--primary);white-space:nowrap}tr:last-child td{border-bottom:none}tr:hover td{background:rgba(45,90,78,.035)}.price-note{text-align:center;font-size:.82rem;color:#888;margin-top:20px}.faq-list{max-width:720px;margin:0 auto}.faq-item{border-bottom:1px solid rgba(26,26,26,.08);overflow:hidden}.faq-q{width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:22px 0;font-family:var(--sans);font-size:.95rem;color:var(--text);display:flex;justify-content:space-between;align-items:center;gap:16px;line-height:1.6}.faq-q .faq-icon{flex:0 0 auto;width:20px;height:20px;position:relative;transition:transform .3s ease}.faq-q .faq-icon:after,.faq-q .faq-icon:before{content:"";position:absolute;background:var(--primary);border-radius:2px}.faq-q .faq-icon:before{top:9px;left:0;width:20px;height:1.5px}.faq-q .faq-icon:after{top:0;left:9px;width:1.5px;height:20px;transition:transform .3s ease,opacity .3s ease}.faq-item.open .faq-icon:after{transform:rotate(90deg);opacity:0}.faq-a-inner{padding:0 0 22px;color:#666;font-size:.9rem;line-height:1.95}.contact{background:#fff;border-radius:4px;text-align:center;padding:clamp(50px,8vw,80px) clamp(24px,5vw,60px);max-width:820px;margin:0 auto;box-shadow:0 2px 20px rgba(26,26,26,.05)}.contact p.lead{font-size:clamp(.9rem,1.8vw,1rem);color:#555;margin-bottom:40px;max-width:520px;margin-left:auto;margin-right:auto;line-height:2}.contact-form{max-width:480px;margin:0 auto;text-align:left}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:.82rem;color:#555;margin-bottom:6px;letter-spacing:.04em}.form-group input,.form-group textarea{width:100%;padding:12px 16px;border:1px solid rgba(26,26,26,.15);border-radius:2px;background:var(--bg);font-family:var(--sans);font-size:.92rem;color:var(--text);outline:none;transition:border-color .3s}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary)}.form-group textarea{resize:vertical;min-height:120px}.btn-contact{display:block;width:100%;font-family:var(--en);font-weight:400;font-size:.85rem;letter-spacing:.2em;text-transform:uppercase;padding:16px 32px;border-radius:2px;border:none;cursor:not-allowed;color:#fff;background:var(--primary);opacity:.6;margin-top:8px}.demo-notice{margin-top:16px;font-size:.82rem;color:#999;text-align:center;padding:10px 16px;background:rgba(26,26,26,.03);border-radius:2px}.site-footer{text-align:center;padding:40px 20px;border-top:1px solid rgba(26,26,26,.06);font-size:.78rem;color:#aaa;line-height:2}.site-footer .footer-brand{display:block;font-family:var(--en);font-weight:300;font-size:1.1rem;letter-spacing:.15em;color:var(--primary);margin-bottom:12px}.site-footer .shima-credit{display:block;margin-top:10px;font-size:.76rem;color:#bbb}.site-footer .shima-credit a{color:var(--secondary);text-decoration:none}.site-footer .shima-credit a:hover{text-decoration:underline}.modal-overlay{position:fixed;inset:0;background:rgba(26,26,26,.45);z-index:200;display:flex;align-items:center;justify-content:center;padding:24px}.modal{background:#fff;border-radius:4px;max-width:600px;width:100%;max-height:80vh;overflow-y:auto;padding:clamp(30px,5vw,48px);position:relative;box-shadow:0 30px 80px rgba(0,0,0,.2)}.modal h3{font-size:1.3rem;margin-bottom:18px}.modal h4{font-weight:700;font-size:.95rem;margin:20px 0 8px;color:var(--primary)}.modal p{font-size:.88rem;color:#555;margin-bottom:10px}.modal-close{position:absolute;top:18px;right:20px;background:none;border:none;font-size:1.5rem;color:#aaa;cursor:pointer}.modal-close:hover{color:var(--primary)}.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:90;display:none;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:hsla(40,30%,96%,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 -4px 20px rgba(26,26,26,.07)}.sticky-cta a{display:block;text-align:center;font-family:var(--en);font-weight:500;font-size:.85rem;letter-spacing:.15em;text-transform:uppercase;padding:14px;border-radius:2px;text-decoration:none;color:#fff;background:var(--primary)}@media (max-width:760px){.sticky-cta{display:block}}.intro{position:fixed;inset:0;z-index:100000;background:var(--bg);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;cursor:pointer}.intro-name{font-family:var(--en);font-weight:300;font-size:clamp(2rem,6vw,3.2rem);letter-spacing:.25em;color:var(--primary);will-change:opacity,transform}.intro-tagline{font-family:var(--en);font-size:.7rem;letter-spacing:.35em;text-transform:uppercase;color:#aaa;will-change:opacity}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}