:root{--green:#728967;--dark-green:#566d50;--light-green:#eef2e7;--ivory:#faf7f0;--cream:#fffdf8;--beige:#e7d7c2;--text:#473b33;--muted:#847a72;--line:#dddacf;--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;--sans:"Yu Gothic",Meiryo,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px;overflow-x:hidden}body{margin:0;color:var(--text);background:var(--cream);font-family:var(--sans);font-size:17px;line-height:1.95;overflow-x:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500}h2{font-size:clamp(30px,3vw,43px);line-height:1.65;letter-spacing:.08em}h3{font-size:24px;line-height:1.65}p+p{margin-top:18px}strong{font-weight:600}button:focus-visible,a:focus-visible{outline:3px solid #9f7c44;outline-offset:5px}button{border:0}.container{max-width:1160px;margin:auto;width:calc(100% - 96px)}.section{padding-top:86px;padding-bottom:86px;position:relative}.section-heading{text-align:center;margin-bottom:42px}.section-heading>p:last-child:not(.eyebrow){color:var(--muted);margin-top:14px}.eyebrow{font-size:14px;letter-spacing:.15em;color:var(--dark-green);font-family:Georgia,var(--sans);font-weight:400;margin-bottom:14px}.eyebrow span{font-family:var(--sans);margin-left:18px;font-size:15px;letter-spacing:.05em}.center{text-align:center}.subtle{color:var(--muted);font-size:16px}.small{font-size:15px;color:var(--muted);line-height:1.8}.header{height:88px;position:sticky;top:0;z-index:30;background:#fffdf8;display:flex;align-items:center;gap:24px;padding:0 3.3%;border-bottom:1px solid #ede8df}.brand{display:block;flex-shrink:0;width:266px}.brand img{width:100%;height:49px;object-fit:contain}.brand span{display:block;font-size:12px;letter-spacing:.13em;padding-left:48px;margin-top:-4px}.desktop-nav{display:flex;gap:18px;margin-left:auto;align-items:center;white-space:nowrap;font-size:14px}.desktop-nav a:hover,.footer a:hover{color:var(--green)}.button{display:inline-flex;justify-content:center;align-items:center;gap:14px;min-height:49px;padding:12px 24px;border-radius:50px;line-height:1.5;font-size:16px;letter-spacing:.05em;font-weight:600;transition:background .25s,transform .25s,box-shadow .25s;white-space:nowrap}.button>span{font-family:Arial;font-size:28px;line-height:.7;margin-left:auto}.primary{background:var(--green);color:white;border:1px solid var(--green);box-shadow:0 5px 12px #566d5010}.primary:hover{background:var(--dark-green);transform:translateY(-2px);box-shadow:0 8px 20px #566d5020}.line{background:var(--cream);border:1px solid var(--green);color:var(--dark-green)}.line:hover{background:var(--light-green);transform:translateY(-2px)}.line-icon{background:#06c755;color:white;font:700 11px Arial;border-radius:5px;padding:6px 3px;letter-spacing:0}.header-cta{font-size:14px;padding:12px 20px;min-height:42px}.menu-toggle{display:none}.mobile-menu[hidden]{display:none}.hero{position:relative;display:grid;grid-template-columns:49% 51%;min-height:640px;max-width:1600px;margin:auto;background:var(--ivory);overflow:hidden}.hero-copy{grid-column:1;grid-row:1;z-index:2;padding:68px 30px 56px max(48px,calc((100vw - 1160px)/2));align-self:center}.hero-photo{grid-column:2;grid-row:1;position:relative;overflow:hidden}.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:62% center;animation:hero-zoom 12s ease-out both}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--ivory),transparent 22%)}.hero h1{font-size:clamp(38px,3.6vw,57px);line-height:1.65;letter-spacing:.1em;margin-bottom:21px}.hero h1 em{color:var(--dark-green);font-style:normal}.hero-label{font:13px var(--sans);letter-spacing:.1em}.hero-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.hero-tags span{font-size:13px;color:var(--dark-green);border:1px solid #b9c3af;border-radius:3px;padding:2px 8px}.hero-description{font-size:16px;line-height:2.15}.actions{display:flex;gap:12px;margin-top:27px;flex-wrap:wrap}.hero .button{padding:13px 20px;font-size:15px}.hero-note{font-size:14px;color:var(--muted);margin-top:17px}.hero-note strong{color:var(--dark-green);font-size:18px}.photo-caption{position:absolute;right:35px;bottom:42px;z-index:2;font-family:var(--serif);color:white;text-shadow:0 2px 10px #473b3390;font-size:26px;line-height:1.8;letter-spacing:.1em}.welcome-strip{background:var(--light-green);display:flex;justify-content:center;gap:45px;padding:17px 25px;color:var(--dark-green);font-size:14px;letter-spacing:.04em}.welcome-strip span+span{border-left:1px solid #c2cbb8;padding-left:45px}.worries{background:#fff}.worry-grid{display:grid;grid-template-columns:repeat(5,1fr);max-width:1160px;width:calc(100% - 96px);margin:0 auto 30px}.worry-grid>div{text-align:center;padding:0 18px}.worry-grid>div+div{border-left:1px solid #eae4db}.worry-mark{display:flex;justify-content:center;align-items:center;width:66px;height:66px;margin:0 auto 15px;border-radius:50%;background:#f3eee4;color:var(--green);font:28px Georgia}.worry-grid h3{font-size:21px;margin-bottom:12px}.worry-grid p{font-size:15px;color:var(--muted);line-height:1.9}.concept{background:var(--light-green);overflow:hidden}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.concept-copy p:not(.eyebrow){margin-top:22px;line-height:2.1}.concept-image{position:relative}.concept-image img{aspect-ratio:1/1.12;object-fit:cover;object-position:60%;border-radius:160px 160px 5px 5px}.concept-image figcaption{position:absolute;bottom:-22px;right:15px;background:var(--cream);padding:15px 24px;font-family:var(--serif);font-size:22px;box-shadow:0 5px 15px #473b3306}.leaf{position:absolute;pointer-events:none;width:220px;opacity:.5}.leaf-concept{left:-20px;bottom:0;width:190px;opacity:.17;transform:rotate(20deg)}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.service-card{background:white;border:1px solid #eee7dc;border-radius:8px;overflow:hidden;box-shadow:0 4px 14px #473b3305;display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s}.service-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #473b3310}.service-card>img{aspect-ratio:4/3;object-fit:cover;transition:transform .4s}.service-card:hover>img{transform:scale(1.02)}.service-content{padding:23px 20px;display:flex;flex-direction:column;flex:1}.service-content .eyebrow{font-size:12px}.service-content h3{font-size:22px;margin-bottom:12px}.service-content h4{font-size:15px;line-height:1.8;margin-bottom:12px;font-weight:600}.service-content p,.service-content ul{font-size:15px;color:#74685e;line-height:1.9}.service-content ul{padding-left:17px;margin:14px 0 22px}.service-content .text-link{margin-top:auto;padding-top:20px}.text-link{display:flex;gap:30px;align-items:center;width:fit-content;color:var(--dark-green);border-bottom:1px solid #b7c3ae;padding-bottom:4px;font-size:15px}.text-link:hover{color:var(--text)}.reasons{background:linear-gradient(110deg,#f0f0e5,#e9eddf)}.six{font:italic 62px Georgia;color:var(--green);vertical-align:-4px}.reason-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 38px}.reason{text-align:center;position:relative;padding:20px 22px}.reason img,.reason-symbol{width:118px;height:118px;object-fit:contain;margin:0 auto 18px}.reason-symbol{display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--cream);font:60px var(--serif);color:#9e825e;border:1px solid #d3d6bd}.reason-number{position:absolute;top:20px;left:calc(50% - 78px);z-index:1;background:var(--green);color:white;width:30px;height:30px;border-radius:50%;font:16px/30px Georgia}.reason h3{font-size:22px;min-height:62px}.reason p{font-size:15px;line-height:1.9;color:#746c61;max-width:270px;margin:8px auto 0}.amenities{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin-top:35px;padding-top:26px;border-top:1px solid #cdd3bf;font-size:15px;color:var(--dark-green)}.amenities span:before{content:"✓";margin-right:7px}.price-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.first-price{border:1px solid #c5ab86;border-radius:8px;position:relative;text-align:center;padding:42px 28px 30px;background:var(--cream)}.price-ribbon{position:absolute;top:-15px;left:50%;transform:translateX(-50%);background:#a48c68;color:white;padding:5px 24px;font-size:14px;white-space:nowrap}.first-price h3{font-size:27px}.first-price p{font-size:15px;margin:10px 0 20px}.price-original{font-size:15px;color:var(--muted)}.price-amount{display:flex;align-items:baseline;justify-content:center;gap:12px;margin:8px 0}.price-amount>strong{font:65px Georgia;color:var(--dark-green)}.price-amount small{font-family:var(--serif);font-size:28px}.price-amount>span{font-size:15px}.first-price .button{width:100%}.regular-price h3{font-size:23px;margin-bottom:16px}.regular-price dl{margin:0 0 20px}.regular-price dl>div{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:15px 0;border-bottom:1px solid var(--line)}.regular-price dt{font-size:16px}.regular-price dd{margin:0;display:flex;gap:24px;align-items:center;white-space:nowrap}.regular-price dd span{font-size:14px;color:var(--muted)}.regular-price dd b{font-family:Georgia,var(--serif);font-size:22px;font-weight:400}.first{background:#f2eee5}.first p:not(.eyebrow){margin-top:24px}.first .text-link{margin-top:28px}.first-photo{position:relative}.first-photo img{aspect-ratio:1.05;object-fit:cover;border-radius:5px}.first-photo>div{position:absolute;bottom:20px;left:20px;background:var(--cream);padding:18px 25px;font-family:var(--serif);font-size:23px;line-height:1.8}.flow-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:20px}.flow-grid li{position:relative;border-top:1px solid #b8c3ac;padding-top:18px}.flow-grid li+li:before{content:"›";position:absolute;left:-15px;top:26px;color:#a5b397}.flow-grid li>span{font:36px Georgia;color:var(--green)}.flow-grid h3{font-size:18px;margin:15px 0 10px}.flow-grid p{font-size:14px;color:var(--muted);line-height:1.9}.staff{background:#fff}.staff-layout{display:grid;grid-template-columns:42% 1fr;gap:70px;align-items:center}.staff-photo{position:relative}.staff-photo img{border-radius:150px 150px 5px 5px;width:100%;aspect-ratio:3/4;object-fit:cover;object-position:50% 15%}.staff-photo>span{position:absolute;bottom:15px;right:-22px;font:19px Georgia;letter-spacing:.24em;background:var(--cream);padding:12px 25px}.staff-role{font-size:14px;color:var(--muted);margin-top:20px}.staff-name{font-size:35px;margin:10px 0 24px}.staff-name small{font:15px Georgia;color:var(--green);letter-spacing:.1em;margin-left:18px}.staff-copy h3{font-size:26px;margin-bottom:22px}.staff-copy p{font-size:16px}.staff-specialty{border-top:1px solid var(--line);padding-top:20px;margin-top:25px}.staff-specialty h4{font-size:15px;color:var(--dark-green)}.staff-specialty p{font-size:14px;color:var(--muted);margin-top:7px}.salon{background:#f1e7d8}.salon-gallery{display:grid;grid-template-columns:60% 40%;background:var(--cream);border-radius:8px;overflow:hidden}.salon-gallery>img{width:100%;height:100%;object-fit:cover}.salon-detail{padding:45px 36px}.salon-detail h3{font-size:30px;margin-bottom:25px}.salon-detail p{font-size:16px}.salon-detail .eyebrow{font-size:12px}.salon-detail .text-link{margin-top:26px}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;align-items:start}.faq-item{border:1px solid #e6e1d7;border-radius:5px;background:#fff}.faq-question{display:flex;align-items:center;text-align:left;width:100%;gap:13px;padding:19px 20px;color:var(--text);background:transparent;font-size:15px;line-height:1.7;font-weight:500}.q{font:21px Georgia;color:var(--green)}.faq-sign{margin-left:auto;color:var(--green);font-size:21px}.faq-answer{padding:0 20px 20px 49px;font-size:15px;color:var(--muted)}.final-cta{background:linear-gradient(110deg,#eef2e7,#faf7f0);text-align:center;overflow:hidden}.final-cta .leaf{left:15px;bottom:10px;width:260px;opacity:.28}.final-cta .container{position:relative}.final-cta h2{font-size:clamp(31px,3.2vw,47px);margin-bottom:28px}.final-cta p:not(.eyebrow){font-size:16px;line-height:2.15}.final-cta .actions{justify-content:center;margin-top:32px}.final-cta .button{min-width:250px}.final-cta .cta-note{font-size:14px;margin-top:20px;color:var(--dark-green)}.access-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px}.access-layout h3{font-size:27px;margin-bottom:22px}.information{margin:0}.information>div{display:grid;grid-template-columns:90px 1fr;padding:13px 0;border-bottom:1px solid #e5dfd4;gap:15px;font-size:15px}.information dt{color:var(--muted)}.information dd{margin:0}.information small{color:var(--muted)}.access-visual>img{width:100%;aspect-ratio:1.75;object-fit:cover;border-radius:6px 6px 0 0}.map-placeholder{text-align:center;background:#eef0e7;padding:24px 12px;border:1px solid #e3e7d9}.map-pin{font:38px Georgia;color:var(--green)}.map-placeholder p{font-family:var(--serif);font-size:23px;margin:5px 0 12px}.map-placeholder small{font-size:14px;color:var(--muted)}.footer{background:#f5f1e9;padding:36px 0 22px;border-top:1px solid #e8e1d6}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer nav{display:flex;flex-wrap:wrap;gap:15px;font-size:13px}.footer-actions{justify-content:center}.footer-actions .button{font-size:14px;min-height:42px}.copyright{text-align:center;font:13px Georgia;color:var(--muted);margin-top:30px}.back-top{position:fixed;bottom:24px;right:24px;width:47px;height:47px;background:var(--green);color:white;z-index:15;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;font-size:20px;line-height:1.2;box-shadow:0 3px 15px #473b3315}.back-top small{font:11px Georgia;margin-top:3px}.skip-link{position:fixed;left:10px;top:-60px;z-index:100;background:white;padding:10px}.skip-link:focus{top:10px}.mobile-menu{position:fixed;inset:72px 0 0;z-index:29;background:#fffdf8;padding:25px 30px;overflow-y:auto}.mobile-menu>a{display:block;border-bottom:1px solid var(--line);padding:9px 0;font-family:var(--serif);font-size:21px}.mobile-menu .button{width:100%;margin-top:15px}.menu-open{overflow:hidden}dialog{color:var(--text);background:var(--cream);border:1px solid var(--beige);border-radius:12px;padding:44px 35px 30px;max-width:480px;width:calc(100% - 40px);text-align:center;box-shadow:0 15px 90px #473b3340}dialog::backdrop{background:#29272070}dialog h2{font-size:28px;margin-bottom:22px}dialog>p:not(.eyebrow){font-size:16px}.dialog-close{position:absolute;top:10px;right:14px;font-size:30px;background:transparent;color:var(--text)}.dialog-price{background:var(--light-green);padding:18px;margin:24px 0;font-size:16px}.dialog-done{width:100%;margin-top:23px}.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease;transition-delay:var(--delay,0ms)}.js .reveal.visible{opacity:1;transform:translateY(0)}.hero-label,.hero h1,.hero-tags,.hero-description,.hero .actions,.hero-note{animation:fade-up .9s both}.hero-label{animation-delay:.15s}.hero h1{animation-delay:.3s}.hero-tags{animation-delay:.4s}.hero-description{animation-delay:.5s}.hero .actions{animation-delay:.65s}.hero-note{animation-delay:.75s}@keyframes fade-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-zoom{from{transform:scale(1.02)}to{transform:scale(1.04)}}
@media(min-width:1600px){.hero-copy{padding-left:110px}.hero{min-height:700px}}@media(max-width:1250px){.desktop-nav{gap:12px;font-size:13px}.header{gap:18px;padding:0 25px}.brand{width:225px}.header-cta{padding:12px 16px}.hero-copy{padding-left:40px}.hero .actions{gap:10px}.hero .button{padding:12px 15px;font-size:14px}.container{width:calc(100% - 70px)}.service-grid{gap:15px}.service-content{padding:22px 15px}.split,.staff-layout{gap:45px}.flow-grid{gap:16px}}
@media(max-width:1100px){.header{height:72px}.desktop-nav,.header-cta{display:none}.menu-toggle{display:block;margin-left:auto;width:45px;height:45px;background:transparent;padding:8px 6px;color:var(--dark-green)}.menu-toggle>span{display:block;height:1px;width:29px;background:var(--dark-green);margin:6px 0;transition:transform .25s}.menu-toggle small{font-size:11px;letter-spacing:.1em;display:block;margin-top:5px}.menu-toggle[aria-expanded=true]>span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true]>span:nth-child(2){transform:translateY(-3.5px) rotate(-45deg)}.hero{min-height:620px}.hero-copy{padding:50px 25px 50px 35px}.hero h1{font-size:40px}.hero .actions{flex-direction:column;align-items:flex-start}.hero .button{min-width:240px;font-size:15px}.welcome-strip{gap:20px}.welcome-strip span+span{padding-left:20px}.service-grid{grid-template-columns:1fr 1fr;gap:24px}.service-content{padding:26px}.price-layout{gap:35px}.regular-price dd{gap:15px}.flow-grid{grid-template-columns:repeat(4,1fr);gap:30px}.flow-grid h3{font-size:20px}.flow-grid p{font-size:15px}.flow-grid li:nth-child(5):before{display:none}.footer-top{flex-direction:column}.access-layout{gap:35px}.salon-detail{padding:30px 25px}.salon-gallery{grid-template-columns:55% 45%}.worry-grid{width:calc(100% - 50px)}.worry-grid>div{padding:0 10px}.worry-grid h3{font-size:19px}}
@media(max-width:767px){html{scroll-padding-top:82px}.header{padding:0 20px}.brand{width:235px;max-width:calc(100% - 65px)}.brand img{height:44px}.brand span{font-size:11px;padding-left:40px}.container{width:calc(100% - 40px)}.section{padding-top:58px;padding-bottom:58px}.section-heading{margin-bottom:30px}.section-heading>p:last-child:not(.eyebrow){font-size:15px}.eyebrow{font-size:13px;margin-bottom:12px}.hero{display:flex;flex-direction:column;min-height:0}.hero-photo{height:auto;aspect-ratio:4/3;width:100%}.hero-photo>img{object-fit:contain;object-position:center;animation:none;width:100%;height:100%}.hero-photo:after{display:none}.photo-caption{display:none}.hero-copy{padding:30px 24px 36px;align-self:stretch}.hero h1{font-size:38px;letter-spacing:.08em;line-height:1.6;margin-bottom:20px}.hero-label{font-size:12px;letter-spacing:.03em}.hero-description{font-size:15px;line-height:2}.hero .actions{display:grid;grid-template-columns:1fr;gap:12px;margin-top:24px}.hero .button{width:100%;font-size:16px;min-height:51px}.hero-note{text-align:center;font-size:13px}.hero-tags{gap:6px;margin-bottom:18px}.pc-only{display:none}.welcome-strip{padding:15px 20px;gap:5px;flex-direction:column;align-items:center;font-size:13px}.welcome-strip span+span{padding:0;border:0}.worry-grid{width:calc(100% - 40px);grid-template-columns:1fr 1fr;gap:25px 0;margin-bottom:25px}.worry-grid>div{padding:0 10px}.worry-grid>div+div{border:0}.worry-grid>div:nth-child(even){border-left:1px solid #eae4db}.worry-grid>div:last-child{grid-column:1/-1}.worry-mark{width:52px;height:52px;font-size:24px;margin-bottom:10px}.worry-grid h3{font-size:20px;margin-bottom:8px}.worry-grid p{font-size:14px}.worries .subtle{padding:0 25px;font-size:14px}.split{grid-template-columns:1fr;gap:35px}.concept h2{font-size:32px}.concept-copy p:not(.eyebrow){font-size:16px}.concept-image img{aspect-ratio:4/3;border-radius:90px 90px 4px 4px;object-position:center}.concept-image figcaption{font-size:19px;bottom:-15px;right:5px;padding:10px 16px}.service-grid{grid-template-columns:1fr;gap:24px}.service-card>img{aspect-ratio:4/3;object-fit:contain;width:100%}.service-content{padding:24px}.service-content h3{font-size:25px}.service-content .eyebrow{font-size:13px}.service-content p,.service-content ul{font-size:16px}.reason-grid{grid-template-columns:1fr 1fr;gap:20px 14px}.reason{padding:15px 0}.reason img,.reason-symbol{width:96px;height:96px}.reason-number{left:calc(50% - 57px);top:15px;width:25px;height:25px;line-height:25px;font-size:14px}.reason h3{font-size:18px;min-height:50px}.reason p{font-size:14px;line-height:1.85}.reason-symbol{font-size:47px}.reasons h2{font-size:28px}.six{font-size:48px}.amenities{font-size:13px;gap:8px 14px;margin-top:15px}.price-layout{grid-template-columns:1fr;gap:35px}.first-price{padding:36px 18px 25px}.first-price h3{font-size:25px}.price-amount{gap:8px}.price-amount>strong{font-size:59px}.regular-price dt{font-size:15px}.regular-price dd b{font-size:21px}.regular-price dd span{font-size:13px}.regular-price dd{gap:12px}.first h2{font-size:30px}.first p:not(.eyebrow){font-size:16px}.first-photo img{aspect-ratio:4/3}.first-photo>div{font-size:20px;padding:13px 20px;left:15px;bottom:15px}.flow-grid{grid-template-columns:1fr;gap:0}.flow-grid li{display:grid;grid-template-columns:50px 1fr;column-gap:16px;padding:22px 0;border-top:1px solid #dddacf}.flow-grid li+li:before{display:none}.flow-grid li>span{grid-row:1/3;font-size:36px;padding-top:3px}.flow-grid h3{margin:0 0 5px;font-size:21px}.flow-grid p{font-size:15px}.staff-layout{grid-template-columns:1fr;gap:36px}.staff-photo{width:90%;margin:0 auto}.staff-photo img{aspect-ratio:3/4}.staff-photo>span{right:-10px}.staff-name{font-size:32px}.staff-copy h3{font-size:24px}.salon-gallery{grid-template-columns:1fr}.salon-gallery>img{aspect-ratio:4/3;height:auto}.salon-detail{padding:28px 24px}.salon-detail h3{font-size:28px}.salon h2{font-size:28px;letter-spacing:.04em}.faq-grid{grid-template-columns:1fr;gap:10px}.faq-question{padding:18px 15px;font-size:15px;gap:10px}.faq-answer{padding:0 18px 18px 43px}.final-cta .leaf{width:140px;left:-5px;opacity:.16}.final-cta h2{font-size:31px}.final-cta p:not(.eyebrow){font-size:15px}.final-cta .actions{display:grid;grid-template-columns:1fr}.final-cta .button{min-width:0}.final-cta .cta-note{font-size:13px}.access-layout{grid-template-columns:1fr;gap:30px}.information>div{grid-template-columns:70px 1fr;gap:10px;font-size:15px}.footer{padding:30px 20px 25px}.footer-top{width:100%}.footer nav{justify-content:center;gap:10px 16px;font-size:13px}.footer-actions{display:grid;grid-template-columns:1fr;width:100%;max-width:360px;margin:25px auto 0}.back-top{width:40px;height:40px;right:12px;bottom:12px}.copyright{font-size:12px}.mobile-menu{padding:20px 25px 35px}.mobile-menu>a{font-size:19px;padding:9px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}
/* 人物の顔を優先し、写真の右端を保つ */
.hero-photo>img{object-position:right center;transform-origin:right center}
.concept-image img{aspect-ratio:4/3;object-position:right center}
@media(max-width:767px){.hero-photo>img{object-position:center;transform:none}}

/* 大きくした文字に合わせたレイアウト調整 */
@media(min-width:1101px){.desktop-nav{gap:13px;font-size:13px}.header{gap:18px}.brand{width:245px}.header-cta{font-size:14px;padding:12px 18px}}
@media(min-width:1101px) and (max-width:1399px){.desktop-nav,.header-cta{display:none}.menu-toggle{display:block;margin-left:auto;width:45px;height:45px;background:transparent;padding:8px 6px;color:var(--dark-green)}.menu-toggle>span{display:block;height:1px;width:29px;background:var(--dark-green);margin:6px 0}.menu-toggle small{font-size:11px;display:block}.mobile-menu{top:88px}}
.hero .button{font-size:15px}.hero-description{font-size:16px}.hero-note{font-size:14px}.service-content h3{font-size:22px}.service-content .eyebrow{font-size:12px}.regular-price dl>div{flex-wrap:wrap}.regular-price dd{margin-left:auto}.flow-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 24px}.flow-grid li:nth-child(5):before{display:none}.flow-grid h3{font-size:20px}.flow-grid p{font-size:15px}.brand span{font-size:12px;padding-left:25px;margin-top:0}.header{height:98px}.mobile-menu{top:98px}.hero .actions{gap:12px}.hero-copy{padding-right:24px}.hero .button{padding:13px 18px}.reason h3{min-height:72px}
@media(max-width:1100px){.header{height:82px}.mobile-menu{top:82px}.hero .actions{align-items:stretch}.hero .button{min-width:0}.hero-copy{padding-left:30px}.brand span{font-size:11px}}
@media(max-width:767px){.hero-copy{padding-left:24px}.hero .button{font-size:16px}.hero-description{font-size:16px}.hero-note{font-size:13px}.hero-label{font-size:12px;line-height:1.8}.hero-tags span{font-size:13px}.flow-grid{grid-template-columns:1fr;gap:0}.flow-grid p{font-size:15px}.flow-grid h3{font-size:21px}.reason h3{font-size:18px;min-height:64px}.reason p{font-size:14px}.information>div{grid-template-columns:74px 1fr}.price-amount>strong{font-size:59px}.price-amount>span{font-size:14px}.regular-price dt{font-size:15px}.regular-price dd b{font-size:21px}.regular-price dd span{font-size:13px}.first-price h3{font-size:24px}.brand{width:240px}.brand span{font-size:10px;padding-left:24px}.button{white-space:normal}.back-top small{font-size:10px}.copyright{line-height:1.6}}
