@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600&family=Noto+Serif+JP:wght@400;500;600&display=swap');
:root{--wine:#1689b8;--dark:#263f4b;--paper:#fff;--soft:#f0f9fc;--line:#cde5ef;--gold:#478ca6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--dark);font-family:'Noto Sans JP',sans-serif;font-size:16px;line-height:1.95}a{color:inherit;text-decoration:none}button{font:inherit}h1,h2,h3,p{margin:0}h1,h2{font-family:'Noto Serif JP',serif;font-weight:500;letter-spacing:.055em}h2{font-size:clamp(1.8rem,3.1vw,2.7rem);line-height:1.65}h3{font-weight:500}p{overflow-wrap:anywhere}.header{height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;border-bottom:1px solid var(--line)}.brand{font-family:Georgia,serif;font-size:1.5rem;line-height:1.15;letter-spacing:.02em}.brand span{display:block;font-family:'Noto Sans JP',sans-serif;font-size:.75rem;letter-spacing:.24em;margin-top:8px}.header nav{display:flex;align-items:center;gap:32px;font-size:.875rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:56px;background:var(--wine);color:#fff;padding:14px 30px;letter-spacing:.055em;transition:background .2s,transform .2s}.button:hover{background:#08789f;transform:translateY(-2px)}.button.small{min-height:42px;padding:10px 22px;font-size:.875rem}.eyebrow{font-size:.875rem;font-weight:500;letter-spacing:.16em;color:var(--wine);margin-bottom:26px}.hero{position:relative;display:grid;grid-template-columns:1fr 1fr;max-width:1440px;margin:auto;min-height:760px;padding-bottom:56px}.hero-copy{padding:82px 30px 40px 11%}.hero h1{font-size:clamp(2.35rem,4.2vw,4rem);line-height:1.7;color:var(--wine);margin-bottom:27px}.hero-lead{font-size:1.2rem;line-height:2;margin-bottom:20px}.hero-desc{font-size:.95rem;color:#526b77;margin-bottom:32px}.hero-meta{display:flex;gap:20px;margin-top:27px;font-size:.875rem;color:#526b77}.hero-meta span+span{border-left:1px solid var(--line);padding-left:20px}.hero-visual{position:relative;margin:26px 7% 0 0;min-height:650px;background:#d9d3d0;overflow:hidden}.hero-visual img{display:block;width:100%;height:100%;position:absolute;object-fit:cover;object-position:center 38%}.image-label{position:absolute;right:25px;bottom:30px;color:white;font-family:Georgia,serif;letter-spacing:.16em;text-shadow:0 1px 10px #263f4b;font-size:.875rem;text-align:right}.image-label span{display:block;font-family:'Noto Serif JP',serif;font-size:1.1rem;margin-top:7px;letter-spacing:.06em}.hero-index{position:absolute;bottom:15px;left:5.5%;right:5.5%;display:flex;justify-content:space-between;color:#647d87;font-size:.75rem;letter-spacing:.2em}.section{padding:95px max(6%,calc((100vw - 1160px)/2))}.section-intro>p:last-child:not(.eyebrow){margin-top:23px;color:#526b77}.concerns{display:grid;grid-template-columns:1fr 1.15fr;gap:70px;background:var(--soft)}.concern-list p{border-bottom:1px solid var(--line);padding:19px 0;font-size:1.05rem}.concern-list span{font-family:Georgia,serif;font-style:italic;font-size:1.4rem;color:var(--gold);margin-right:24px}.care{text-align:center}.treatment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:52px;text-align:left}.treatment-grid article{border-top:2px solid var(--wine);padding:28px 0}.treatment-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:38px;color:var(--wine)}.treatment-top span:first-child{font:italic 2.8rem Georgia,serif}.treatment-top span:last-child{font-size:.75rem;letter-spacing:.12em}.treatment-grid h3{font-size:1.4rem;letter-spacing:.02em;white-space:normal}.treatment-sub{font-size:1rem;margin:12px 0 20px;color:var(--wine)}.treatment-grid article>p:last-child{color:#526b77}.note{font-size:.875rem;color:#647d87;margin-top:22px}.focus{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;background:var(--wine);color:white}.focus .eyebrow{color:#dcf5ff}.focus>div>p:last-child{font-size:.95rem;margin-top:26px;color:#eafaff}.focus-panel{border:1px solid #85c8df;padding:32px}.focus-tabs{display:flex;border-bottom:1px solid #85c8df;gap:0}.focus-tabs button{flex:1;color:#d8f2fc;background:transparent;border:0;padding:14px 4px;font-size:.9rem;cursor:pointer}.focus-tabs button[aria-selected=true]{color:white;box-shadow:inset 0 -2px #dcf5ff}.focus-content{padding:35px 0 25px;min-height:235px}.focus-en{font:italic 1.4rem Georgia,serif;letter-spacing:.06em;color:#dcf5ff}.focus-content h3{font-family:'Noto Serif JP',serif;font-size:1.35rem;margin:12px 0 15px}.focus-content p{color:#eafaff}.text-link{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:5px;font-size:.95rem}.private{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;background:#f0f9fc}.private-word{font:italic clamp(4.5rem,9vw,8rem)/1.1 Georgia,serif;color:#9bd3e6;align-self:center;letter-spacing:-.05em}.private-copy>p:not(.eyebrow){margin-top:25px}.private-details{margin-top:33px}.private-details>div{position:relative;padding:20px 0 20px 45px;border-top:1px solid var(--line)}.private-details span{position:absolute;left:0;top:23px;font:italic 1.2rem Georgia,serif;color:var(--gold)}.private-details h3{font-size:1.05rem;margin-bottom:7px}.private-details p{font-size:.95rem;color:#526b77}.flow-list{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:28px;padding:0;margin:45px 0 0}.flow-list li{border-top:1px solid var(--line);padding-top:20px}.flow-list span{font:italic 2rem Georgia,serif;color:var(--gold)}.flow-list h3{font-size:1.05rem;margin:20px 0 14px}.flow-list p{font-size:.95rem;color:#526b77}.faq{display:grid;grid-template-columns:.85fr 1.2fr;gap:70px;border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:20px 0}details:first-child{padding-top:0}summary{cursor:pointer;font-weight:500;list-style:none;position:relative;padding-right:30px}summary::-webkit-details-marker{display:none}summary:after{content:'＋';position:absolute;right:0;color:var(--wine)}details[open] summary:after{content:'−'}details p{font-size:.95rem;color:#526b77;margin-top:16px;padding-right:15px}.booking{text-align:center;background:var(--wine);color:white;padding:85px 6%}.booking .eyebrow{color:#dcf5ff}.booking h2{font-size:clamp(2rem,3.4vw,3rem)}.booking>p:not(.eyebrow){margin:25px 0}.button.light{background:white;color:var(--wine);margin-top:8px}.button.light:hover{background:#e4f5fc}.booking .booking-note{font-size:.875rem;color:#d6f0fa;margin-bottom:0}.access{display:grid;grid-template-columns:1fr 1.1fr;gap:70px}.access-info h3{font:1.8rem Georgia,serif;margin-bottom:20px}.access dl{margin:25px 0}.access dl>div{display:grid;grid-template-columns:100px 1fr;border-top:1px solid var(--line);padding:13px 0;font-size:.95rem}.access dt{color:#647d87}.access dd{margin:0}footer{display:flex;align-items:center;justify-content:space-between;background:var(--soft);padding:32px 6%}footer p{font-size:.75rem;color:#647d87}.mobile-cta{display:none}:focus-visible{outline:3px solid #1689b8;outline-offset:5px}@media(min-width:1600px){.hero-copy{padding-left:10%}}@media(max-width:1000px){.header nav{gap:18px}.hero{min-height:660px}.hero-copy{padding-top:60px;padding-left:10%}.hero-visual{min-height:600px}.hero-meta{gap:10px;font-size:.8rem}.hero-meta span+span{padding-left:10px}.section{padding:75px 6%}.concerns,.focus,.private,.faq,.access{gap:40px}.treatment-grid{gap:20px}.treatment-grid h3{font-size:1.2rem}.flow-list{grid-template-columns:repeat(2,1fr);gap:36px}.focus-panel{padding:22px}}@media(max-width:700px){html{scroll-padding-top:20px}.header{height:82px;padding:0 6%}.brand{font-size:1.25rem}.brand span{font-size:.65rem}.header nav>a:not(.button){display:none}.header nav{gap:0}.button.small{padding:9px 15px}.hero{display:flex;flex-direction:column;padding-bottom:40px;min-height:0}.hero-copy{padding:42px 7% 35px;position:relative;z-index:1}.hero .eyebrow{font-size:.8rem;margin-bottom:18px}.hero h1{font-size:2.5rem;line-height:1.6;margin-bottom:22px}.hero-lead{font-size:1.05rem}.hero-desc{font-size:.9rem;line-height:1.9;margin-bottom:24px}.hero .button{width:100%}.hero-meta{justify-content:center;font-size:.8rem;margin-top:22px}.hero-visual{min-height:430px;margin:0 6%;height:430px}.hero-visual img{object-position:center 39%}.hero-index{bottom:9px;font-size:.65rem}.section{padding:60px 7%}.eyebrow{margin-bottom:18px;font-size:.8rem}.concerns,.focus,.private,.faq,.access{grid-template-columns:1fr;gap:30px}h2{font-size:1.85rem}.concern-list p{font-size:.95rem;padding:17px 0}.concern-list span{margin-right:14px}.care{text-align:left}.section-intro>p:last-child:not(.eyebrow){font-size:.95rem}.treatment-grid{grid-template-columns:1fr;margin-top:34px;gap:14px}.treatment-grid article{padding:22px 0 18px}.treatment-top{margin-bottom:16px}.treatment-top span:first-child{font-size:2.25rem}.treatment-grid h3{font-size:1.35rem}.treatment-sub{margin:8px 0 14px}.treatment-grid article>p:last-child{font-size:.95rem}.note{font-size:.8rem}.focus-panel{padding:22px}.focus-content{min-height:255px;padding-top:24px}.focus-tabs button{font-size:.85rem}.focus-content h3{font-size:1.15rem}.focus-content p{font-size:.95rem}.private-word{font-size:5rem;line-height:1;opacity:.8}.private-word br{display:none}.private-copy>p:not(.eyebrow){font-size:.95rem}.private-details>div{padding-left:36px}.flow-list{grid-template-columns:1fr;gap:24px;margin-top:30px}.flow-list li{position:relative;padding:20px 0 0 47px}.flow-list span{position:absolute;left:0;top:22px;font-size:1.6rem}.flow-list h3{margin:0 0 10px}.faq{gap:32px}summary{font-size:.95rem}.booking{padding:60px 7%}.booking h2{font-size:2rem}.booking .button{width:100%;padding:16px;font-size:.95rem}.booking>p:not(.eyebrow){font-size:.95rem}.booking .booking-note{font-size:.8rem}.access{gap:28px}.access dl>div{grid-template-columns:84px 1fr;font-size:.9rem}footer{padding:28px 7% 112px;align-items:flex-start;gap:20px}footer .brand{font-size:1.05rem}footer .brand span{font-size:.6rem}footer p{font-size:.65rem}.mobile-cta{position:fixed;z-index:20;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:12px 6% max(12px,env(safe-area-inset-bottom));background:#fffffff5;border-top:1px solid var(--line);box-shadow:0 -4px 20px #263f4b08}.mobile-cta>span{font-size:.8rem}.mobile-cta .button{min-width:130px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Supplied manuscript and course imagery */
[hidden]{display:none!important}.offer-hero{background:#eefaff;min-height:680px;grid-template-columns:1.2fr 1fr}.offer-hero .hero-copy{padding-top:54px;padding-left:9%}.offer-hero h1{font-size:clamp(1.9rem,3.1vw,3rem);line-height:1.65;margin-bottom:23px}.offer-hero h1>span{display:block;font-size:clamp(2.45rem,4.1vw,3.9rem);margin-top:14px}.offer-tag{display:inline-block;border-top:1px solid #94cde1;border-bottom:1px solid #94cde1;padding:12px 25px;margin-bottom:24px;color:var(--wine);font-size:1.05rem;line-height:1.8}.offer-tag strong{font-weight:500;font-size:1.35rem}.hero-terms{font-size:.875rem;color:#526b77;margin-top:17px}.supplied-hero{margin:0;min-height:600px;background:#cdada0;align-self:stretch}.supplied-hero img{height:100%;width:200%;max-width:none;object-fit:fill;left:-100%;object-position:right;position:absolute}.offer-hero .hero-index{bottom:14px}.introduction{display:grid;grid-template-columns:.8fr 1.3fr;gap:70px}.intro-text>p+p{margin-top:19px}.intro-text strong{font-weight:600;color:var(--wine)}.check-box{background:var(--soft);padding:26px;margin-top:28px;border-left:3px solid var(--wine)}.check-box h3{font-size:1.05rem}.check-box p{font-size:.95rem;margin:12px 0 22px}.check-box .button{font-size:.9rem}.overview{text-align:center;background:var(--soft)}.wide-copy{max-width:800px;margin:28px auto 35px;text-align:left}.overview-poster{width:100%;max-width:880px;height:auto;display:block;margin:auto;border:1px solid var(--line)}.machine-care .section-intro{text-align:center}.machine-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px;margin-top:48px}.machine-number{font-size:.875rem;color:var(--gold);letter-spacing:.12em}.machine-grid h3{font-size:1.2rem;color:var(--wine);margin:15px 0}.machine-grid article>p{margin-bottom:25px;color:#526b77}.machine-grid img{display:block;width:100%;height:auto;border:1px solid var(--line)}.cellulite{display:grid;grid-template-columns:1.2fr 1fr;gap:50px;background:var(--wine);color:white;align-items:center}.cellulite .eyebrow{color:#dcf5ff}.cellulite p:not(.eyebrow){margin-top:25px;color:#eafaff}.cellulite>img{width:100%;height:auto}.result{text-align:center;background:var(--soft)}.result figure{max-width:600px;margin:35px auto 0}.result img{width:100%;height:auto;display:block}.result figcaption{font-size:.8rem;line-height:1.9;text-align:left;color:#647d87;margin-top:16px}.flow-list.three{grid-template-columns:repeat(3,1fr)}.flow-list img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;margin:0 0 14px;display:block}.courses{background:#f0f9fc}.courses>.section-intro{text-align:center}.course-group{margin-top:55px}.group-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;border-bottom:1px solid #a5d4e5;padding-bottom:25px}.group-label{display:inline-block;font-size:.875rem;color:var(--wine);border:1px solid #a5d4e5;padding:4px 13px;margin-bottom:15px}.group-heading h3{font:500 1.65rem/1.7 'Noto Serif JP',serif;letter-spacing:.04em}.group-price{display:flex;gap:13px;align-items:baseline;white-space:nowrap}.group-price>span{font-size:1rem}.group-price del{color:#647d87;font-size:.875rem}.group-price strong{font:500 2.6rem Georgia,serif;color:var(--wine)}.group-price small{font:1rem 'Noto Sans JP',sans-serif;margin-left:4px}.group-note{font-size:.95rem;color:#526b77;margin:22px 0 30px}.course-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.course-card{background:#fff;display:flex;flex-direction:column;border:1px solid #d5eaf2}.course-card>img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block}.course-card-body{padding:25px 28px;display:flex;flex-direction:column;flex:1}.course-code{font-size:.75rem;letter-spacing:.15em;color:var(--gold);margin-bottom:10px}.course-card h4{font:500 1.22rem/1.65 'Noto Serif JP',serif;color:var(--wine);margin:0 0 18px;padding-bottom:15px;border-bottom:1px solid var(--line)}.course-card-body>p:not(.card-price){font-size:1rem;line-height:1.9;flex:1}.card-price{margin-top:23px;border-top:1px solid var(--line);padding-top:14px;color:#526b77;display:flex;justify-content:space-between;align-items:center}.card-price strong{font:500 1.45rem 'Noto Sans JP',sans-serif;color:var(--wine)}.course-select{margin-top:19px;padding:13px 15px;min-height:48px;border:1px solid var(--wine);color:var(--wine);background:white;font-size:.95rem;cursor:pointer}.course-select:hover{background:var(--wine);color:white}.precautions{background:var(--soft);display:grid;grid-template-columns:.85fr 1.2fr;gap:60px}.precautions-body h3{font-size:1.1rem;color:var(--wine);margin:30px 0 13px}.precautions-body h3:first-child{margin-top:0}.precautions-body p,.precautions-body li{font-size:.95rem}.precautions-body ul{padding-left:22px}.precautions-body .button{margin-top:27px;font-size:.95rem}.booking-link{margin-top:20px!important}#selected-course{max-width:800px;margin:25px auto}.booking #selection-guide{font-size:.85rem}.booking #copy-course{font-size:.9rem;min-height:45px}
@media(max-width:1000px){.group-price{flex-wrap:wrap;max-width:230px;gap:6px 12px;justify-content:flex-end}.introduction{gap:35px}.group-heading h3{font-size:1.35rem}.group-price strong{font-size:2.25rem}.machine-grid{gap:23px}.precautions{gap:35px}.supplied-hero img{object-fit:cover;object-position:right}}
@media(max-width:700px){.offer-hero .hero-copy{padding:35px 7% 30px}.offer-hero h1{font-size:1.8rem}.offer-hero h1>span{font-size:2.45rem;margin-top:12px}.offer-tag{font-size:.95rem;padding:10px 18px}.offer-tag strong{font-size:1.15rem}.supplied-hero{height:370px;min-height:370px;margin:0 6%;aspect-ratio:1/1}.supplied-hero img{object-fit:fill;width:200%;height:100%;left:-100%}.offer-hero .hero-index{font-size:.55rem;letter-spacing:.13em}.introduction,.machine-grid,.cellulite,.precautions{grid-template-columns:1fr;gap:30px}.intro-text{font-size:.95rem}.check-box{padding:22px}.check-box .button{width:100%;padding:12px 10px;font-size:.85rem}.wide-copy{font-size:.95rem;margin-top:25px}.machine-grid{margin-top:30px}.machine-grid h3{font-size:1.15rem}.machine-grid article>p{font-size:.95rem}.cellulite p:not(.eyebrow){font-size:.95rem}.result figure{margin-top:30px}.flow-list.three{grid-template-columns:1fr}.flow-list.three img{max-width:100%;margin-top:14px}.group-heading{display:block;padding-bottom:20px}.group-label{font-size:.8rem;margin-bottom:12px}.group-heading h3{font-size:1.3rem}.group-price{max-width:none;justify-content:flex-start;gap:12px;margin-top:16px}.group-price>span{font-size:.95rem}.group-price strong{font-size:2.5rem}.group-note{font-size:.9rem}.course-group{margin-top:35px}.course-grid{grid-template-columns:1fr;gap:27px}.course-card-body{padding:23px}.course-card h4{font-size:1.16rem}.course-card-body>p:not(.card-price){font-size:1rem}.course-card>img{aspect-ratio:4/3;object-position:center}.precautions-body li{margin:6px 0}.precautions-body .button{width:100%}.booking #copy-course{width:100%}.hero-terms{font-size:.8rem}.booking-link{margin-top:20px!important}}

/* LINE reservation and simultaneous output presentation */
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.line-button{background:#06a744;color:#fff;border:0;min-width:220px;font-weight:600}.line-button:hover{background:#008e39}.line-button:disabled{cursor:default;opacity:1;transform:none}.inline-line-cta{display:flex;justify-content:center;margin:38px 0 15px}.line-pending{font-size:.85rem;color:#d6f0fa!important;margin:17px 0 0!important}.booking>.line-button{margin-top:30px}.mobile-cta>.line-button{min-width:145px;min-height:44px;padding:10px 17px;font-size:.875rem}.course-card-body>p:not(.card-price){flex:initial}.overview .section-intro h2{color:var(--wine)}.overview .section-intro .overview-subtitle{margin-top:23px;font-size:1rem;color:#526b77}.output-combos{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:44px auto 35px;max-width:1000px;text-align:left}.output-combo{background:white;border:1px solid var(--line);display:grid;grid-template-columns:42% 58%;overflow:hidden}.combo-photo{position:relative;min-height:285px;background:#69523f}.combo-photo img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:42% center}.combo-photo>span{position:absolute;left:18px;top:16px;color:white;font:italic 2rem Georgia,serif;text-shadow:0 1px 8px #31261d}.combo-body{padding:30px 22px}.combo-tag{font-size:.8rem;letter-spacing:.12em;color:#8f7050}.combo-body h3{font:500 1.13rem/1.7 'Noto Serif JP',serif;color:var(--wine);margin:16px 0}.combo-times{display:block;color:var(--gold);font:1.3rem Georgia,serif;margin:6px 0}.combo-body p{font-size:.875rem;color:#526b77;margin-bottom:19px}.simultaneous{display:inline-block;padding:5px 15px;background:var(--wine);color:white;font-size:.8rem;letter-spacing:.12em}.overview .wide-copy{margin-top:30px}.result figure{margin-bottom:0}
@media(max-width:1000px){.output-combo{display:block}.combo-photo{min-height:210px}.combo-body h3{font-size:1.2rem}.combo-body{padding:25px}.combo-times{display:inline;margin:0 9px}.hero-actions>.button{font-size:.875rem;padding:14px 18px}}
@media(max-width:700px){.hero-actions{gap:11px}.hero-actions>.button{width:100%}.output-combos{grid-template-columns:1fr;gap:22px;margin-top:30px}.output-combo{display:grid;grid-template-columns:37% 63%}.combo-photo{min-height:245px}.combo-body{padding:22px 18px}.combo-body h3{font-size:1.08rem}.combo-times{display:block;margin:4px 0}.combo-body p{font-size:.85rem}.combo-tag{font-size:.75rem;letter-spacing:.05em}.simultaneous{font-size:.75rem}.inline-line-cta{margin:29px 0 6px}.inline-line-cta>.line-button{width:100%}.booking>.line-button{margin-top:28px}.mobile-cta>.line-button{width:auto;min-width:145px;font-size:.85rem}.line-pending{font-size:.8rem!important}.flow-list.three img{background:#634731}}

/* Manuscript restoration and treatment hero */
.treatment-hero img{width:100%;height:100%;left:0;object-fit:cover;object-position:40% center}.offer-hero h1{font-size:clamp(2.4rem,4.3vw,4rem);margin:30px 0 35px}.manuscript-copy{max-width:850px;margin:30px auto;text-align:left}.manuscript-copy p+p,.precautions-body p+p,.course-card-body p+p{margin-top:18px}.cellulite h2{font-size:clamp(1.7rem,2.5vw,2.2rem)}.precautions h2{font-size:clamp(1.65rem,2.5vw,2.2rem)}.combo-body{align-self:center}.group-note p+p{margin-top:10px}@media(max-width:700px){.offer-hero h1{font-size:2.35rem;margin:18px 0 25px}.treatment-hero{height:370px;min-height:370px;margin:0 6%}.treatment-hero img{width:100%;left:0;object-fit:cover;object-position:38% center}.manuscript-copy{font-size:1rem}.cellulite h2,.precautions h2{font-size:1.8rem}}

/* Two simultaneous-output machines, one bold introduction */
.machine-showcase{background:#f0faff;padding-top:85px;padding-bottom:75px}.showcase-heading{text-align:center;margin-bottom:48px}.showcase-heading .eyebrow{margin-bottom:20px}.double-output{display:inline-block;background:#1689b8;color:#fff;padding:8px 25px;font-weight:600;letter-spacing:.1em}.showcase-heading h2{font:600 clamp(1.2rem,2.3vw,2rem)/1.6 'Noto Sans JP',sans-serif;color:#1689b8;margin-top:24px;letter-spacing:.03em}.showcase-heading h2 strong{display:block;font:600 clamp(2.8rem,6vw,5rem)/1.3 'Noto Serif JP',serif;color:#179ecb;margin-top:10px;letter-spacing:.04em}.showcase-heading h2 strong span{color:#478ca6}.showcase-lead{margin-top:18px;font-size:1.1rem}.machine-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.machine-feature{background:white;border:1px solid #bde3f0;box-shadow:0 14px 35px #1689b80c;overflow:hidden}.feature-title{position:relative;text-align:center;padding:30px 15px 24px;background:#179ecb;color:#fff;overflow:hidden}.cyclo-feature .feature-title{background:#1689b8}.feature-number{position:absolute;right:8px;top:-26px;font:italic 9rem/1 Georgia,serif;opacity:.1;pointer-events:none}.feature-label{position:relative;display:inline-block;color:#dcf8ff;font:600 1.5rem/1.4 'Noto Serif JP',serif;letter-spacing:.1em;border-bottom:1px solid #ffffff66;padding-bottom:7px}.feature-title h3{position:relative;font:600 clamp(2rem,3.3vw,3rem)/1.5 'Noto Serif JP',serif;margin:8px 0 5px;letter-spacing:.035em}.feature-combo{position:relative;font-size:.9rem;letter-spacing:.04em}.feature-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.feature-explanation{padding:28px}.feature-explanation>p{font-size:1rem;line-height:2;color:#263f4b;margin-top:23px}.machine-diagram{position:relative;aspect-ratio:466/297;max-width:320px;margin:auto;overflow:hidden;background:#f0f9fc}.machine-diagram img{position:absolute;width:253.43%;height:auto;max-width:none;left:-18.67%;top:-252.53%}.cyclo-feature .machine-diagram img{width:251.61%;left:-16.77%;top:-253.2%}.showcase-copy{margin-top:45px;margin-bottom:0}.showcase-copy p+p{margin-top:18px}.cellulite{background:#f1fafc;color:#263f4b}.cellulite p:not(.eyebrow){color:#263f4b}.cellulite .eyebrow{color:#1689b8}.cellulite-visuals{display:grid;gap:26px}.cellulite-visuals img{display:block;width:100%;height:auto}.cellulite-diagram{margin:0;padding:15px;background:white;border:1px solid #cde5ef}.cellulite-diagram img{width:100%}.cellulite-visuals>img{border:1px solid #cde5ef}@media(max-width:700px){.machine-showcase{padding-top:55px;padding-bottom:55px}.showcase-heading{margin-bottom:30px}.double-output{font-size:.85rem;padding:8px 15px;letter-spacing:.05em}.showcase-heading h2{font-size:1.05rem;line-height:1.8}.showcase-heading h2 strong{font-size:2.6rem}.showcase-lead{font-size:.95rem}.machine-feature-grid{grid-template-columns:1fr;gap:30px}.feature-title{padding:25px 12px 20px}.feature-label{font-size:1.35rem}.feature-title h3{font-size:2.15rem}.feature-combo{font-size:.85rem}.feature-explanation{padding:24px}.feature-explanation>p{font-size:1rem}.cellulite-diagram{padding:10px}.showcase-copy{margin-top:30px}.cellulite-visuals{gap:20px}}

.feature-photo{position:relative;aspect-ratio:8/5;overflow:hidden}.feature-photo img{aspect-ratio:8/5}.cyclo-feature .feature-photo img{position:absolute;width:115.04%;max-width:none;height:auto;aspect-ratio:auto;left:-7.67%;top:-10.97%}

/* Stable in-page navigation and seven course shortcuts */
html{scroll-behavior:auto;scroll-padding-top:0}
[id]{scroll-margin-top:20px}
.course-shortcuts{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:28px 0 38px}
.course-shortcuts a{display:inline-flex;align-items:center;gap:8px;padding:10px 15px;background:#fff;border:1px solid #a5d4e5;color:#1689b8;font-size:.875rem;font-weight:500;line-height:1.5;min-height:44px;transition:background .15s,color .15s}
.course-shortcuts a span{display:inline-flex;align-items:center;justify-content:center;min-width:23px;height:23px;background:#1689b8;color:white;font:500 .8rem/1 Georgia,serif}
.course-shortcuts a:hover,.course-shortcuts a:focus-visible{background:#1689b8;color:white}
.course-shortcuts a:hover span{background:white;color:#1689b8}
@media(max-width:700px){.course-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:24px 0 30px}.course-shortcuts a{padding:10px;font-size:.875rem}.course-shortcuts a:last-child{grid-column:1/-1;justify-self:center}[id]{scroll-margin-top:16px}}

/* One persistent reservation button on every screen size. */
body{padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}
.mobile-cta{position:fixed;z-index:20;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:24px;padding:12px 6% max(12px,env(safe-area-inset-bottom));background:#fffffff5;border-top:1px solid var(--line);box-shadow:0 -4px 20px #263f4b08}
.mobile-cta>.line-button{width:min(100%,360px);min-height:48px;padding:12px 20px;font-size:1rem}
@media(max-width:700px){.mobile-cta{gap:14px;padding-left:5%;padding-right:5%}.mobile-cta>span{font-size:.75rem;max-width:100px}.mobile-cta>.line-button{flex:1;width:auto;min-width:0}}

/* Bold, warm photographic top banner. */
.hero.offer-hero{position:relative;isolation:isolate;background:linear-gradient(125deg,#54bde0,#8ad6ee 62%,#b3e8f5);color:#fff;grid-template-columns:1fr 1fr;min-height:0;margin:24px auto 0;width:calc(100% - 48px);max-width:1300px;padding:0;overflow:hidden;border:1px solid #9ed9ed;border-radius:5px;box-shadow:0 16px 44px #1689b820}.offer-hero:before{content:'';position:absolute;inset:12px;border:1px solid #a4dcef66;pointer-events:none;z-index:3}.offer-hero .hero-copy{position:relative;z-index:2;padding:58px 30px 58px 55px}.hero-kicker{font:500 13px/1.5 Georgia,serif;letter-spacing:.3em;color:#176681;margin-bottom:18px}.offer-hero h1{font:600 clamp(48px,5vw,70px)/1.3 'Noto Serif JP','Yu Mincho',serif;color:#fff;margin:0 0 18px;letter-spacing:.08em;text-shadow:none}.offer-hero h1>span{display:block;font:500 32px/1.5 'Noto Serif JP','Yu Mincho',serif;letter-spacing:.2em;margin-top:4px;color:white}.hero-statement{font:500 20px/1.8 'Noto Serif JP','Yu Mincho',serif;letter-spacing:.07em;margin:0 0 24px;color:#1d607b}.offer-hero .offer-tag{display:block;width:fit-content;border:1px solid #b1deed;padding:12px 23px;background:linear-gradient(115deg,#e9faff,#fff,#d9f2fa);color:#176c8c;margin:0 0 25px;box-shadow:0 4px 18px #1f091819}.offer-tag>span{display:block;font-size:14px;line-height:1.6;letter-spacing:.1em}.offer-hero .offer-tag strong{display:block;font:600 23px/1.6 'Noto Serif JP','Yu Mincho',serif;letter-spacing:.04em}.offer-hero .hero-actions .button{background:#fff;color:#1689b8;border:1px solid #bee4f1;font-weight:600;gap:22px;min-width:280px}.offer-hero .hero-visual.treatment-hero{margin:0;min-height:0;height:auto;align-self:stretch;background:#d9f3fc;position:relative}.offer-hero .treatment-hero img{width:100%;height:100%;left:0;object-fit:cover;object-position:43% center}.offer-hero .treatment-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#56b4d166,transparent 40%),linear-gradient(0deg,#175b76aa,transparent 55%);pointer-events:none}.hero-photo-caption{position:absolute;z-index:2;bottom:36px;left:30px;right:25px;color:#e3f8ff;font:500 12px/1.8 Georgia,serif;letter-spacing:.15em}.hero-photo-caption span{color:white;font:500 20px/1.6 'Noto Serif JP','Yu Mincho',serif;letter-spacing:.04em}
@media(max-width:700px){.hero.offer-hero{width:calc(100% - 28px);margin-top:14px;display:flex;flex-direction:column;padding:0}.offer-hero:before{inset:8px}.offer-hero .hero-copy{padding:30px 26px 25px;text-align:center}.hero-kicker{font-size:11px;margin-bottom:12px}.offer-hero h1{font-size:42px;line-height:1.3;margin:0 0 13px;letter-spacing:.08em}.offer-hero h1>span{font-size:24px;margin-top:3px;letter-spacing:.2em}.hero-statement{font-size:17px;line-height:1.7;margin-bottom:17px}.offer-hero .offer-tag{margin:0 auto 18px;padding:9px 20px}.offer-tag>span{font-size:13px}.offer-hero .offer-tag strong{font-size:21px}.offer-hero .hero-actions .button{min-width:0;width:100%;min-height:49px;padding:11px 12px;font-size:15px}.offer-hero .hero-visual.treatment-hero{height:205px;min-height:205px;width:100%;margin:0;aspect-ratio:auto}.offer-hero .treatment-hero img{object-position:43% 47%}.hero-photo-caption{left:23px;bottom:19px;font-size:10px}.hero-photo-caption span{font-size:16px}.offer-hero .treatment-hero:after{background:linear-gradient(0deg,#175b76b3,transparent 68%)}}

/* A fresh sky-blue and pastel system across the whole LP. */
:root{--wine:#1689b8;--dark:#263f4b;--paper:#fff;--soft:#f0f9fc;--line:#cde5ef;--gold:#478ca6}.header{border-color:#d5edf5;background:#fff}.brand{color:#22627e}.hero.offer-hero{background:linear-gradient(125deg,#dff5ff,#b9e9f9 60%,#e8faff);border-color:#93d3e9;box-shadow:0 14px 36px #2a8db514;color:#225a74}.offer-hero:before{border-color:#ffffffb3}.offer-hero h1{color:#147eaa}.offer-hero h1>span{color:#286b87}.hero-kicker{color:#3c7c96}.hero-statement{color:#386c83}.offer-hero .offer-tag{background:linear-gradient(110deg,#fff,#f3fcff,#dff6ff);color:#186c90;border-color:#a9d9ea;box-shadow:0 4px 16px #288ab510}.offer-hero .hero-actions .button{background:#159acb;color:#fff;border-color:#159acb;box-shadow:0 5px 16px #1186b422}.offer-hero .hero-actions .button:hover{background:#087eab}.offer-hero .treatment-hero:after{background:linear-gradient(90deg,#b9e9f933,transparent 45%),linear-gradient(0deg,#17668399,transparent 55%)}.hero-photo-caption{color:#e8faff}.hero-photo-caption span{color:white}.machine-showcase{background:linear-gradient(180deg,#f2fbff,#e9f8fe)}.feature-title{background:linear-gradient(120deg,#2eadd7,#63c8e7)}.cyclo-feature .feature-title{background:linear-gradient(120deg,#369ac4,#86cce9)}.feature-label{color:#fff}.feature-title h3,.feature-combo{color:white}.machine-feature{border-color:#b7e0ef;box-shadow:0 10px 28px #1689b810}.double-output,.simultaneous{background:#1689b8}.showcase-heading h2 strong{color:#1499c7}.showcase-heading h2 strong span{color:#6fc7df}.cellulite{background:#f1fbfe}.course-group{border-color:#cde5ef}.group-label{background:#eaf8fe;color:#176e91;border-color:#b3ddec}.course-card{border-color:#cce6f1;box-shadow:0 7px 22px #2983a508}.course-code{color:#438eaa}.course-select{border-color:#69b5d2;color:#137eaa;border-radius:4px}.course-select:hover{background:#1689b8;color:white}.group-price strong,.card-price strong{color:#148fbe}.check-box,.precautions{background:#f0f9fc}.precautions-body h3{color:#177a9f}.faq{background:#fff}.button:not(.line-button){border-radius:4px}.focus,.booking{background:#209ac0}.access{background:#fff}.mobile-cta{border-color:#cde5ef;background:#fffffff5}.mobile-cta>span{color:#32677b}
@media(max-width:700px){.offer-hero .treatment-hero:after{background:linear-gradient(0deg,#176683aa,transparent 68%)}}

/* Hot machine accents against the fresh sky-blue page. */
.cavi-feature{border-color:#f6b0a9;background:#fff8f6}
.cavi-feature .feature-title{background:radial-gradient(ellipse at 85% 5%,#ff8740 0,transparent 55%),linear-gradient(125deg,#bd0820,#ed242d 60%,#ff5034);box-shadow:inset 0 -1px 0 #ffffff40}
.cyclo-feature{border-color:#f3c69f;background:#fffaf5}
.cyclo-feature .feature-title{background:radial-gradient(ellipse at 85% 5%,#ffcf62 0,transparent 55%),linear-gradient(125deg,#e86205,#ff8a16 65%,#ffae33);box-shadow:inset 0 -1px 0 #ffffff40}
.cavi-feature .feature-label,.cyclo-feature .feature-label{color:#fff}
.feature-title h3{text-shadow:0 2px 8px #70250030}
.cavi-feature .feature-explanation,.cyclo-feature .feature-explanation{background:transparent}

/* Large lettering: white outline, ocean gradient, and a graphic underline. */
.offer-hero h1.designed-title{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin:0 0 24px;isolation:isolate;transform:rotate(-3deg);font-family:'Noto Sans JP','Yu Gothic',sans-serif;font-weight:900;line-height:1.2;letter-spacing:-.055em}
.offer-hero h1.designed-title .title-main{display:block;position:relative;margin:0;font:900 clamp(64px,6.5vw,94px)/1.2 'Noto Sans JP','Yu Gothic',sans-serif;letter-spacing:-.055em;color:#067bad;background:linear-gradient(180deg,#12b9e5 5%,#078bbd 50%,#065a96 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;-webkit-text-stroke:1px #087aaa;filter:drop-shadow(3px 3px 0 #fff) drop-shadow(-2px -2px 0 #fff) drop-shadow(0 7px 0 #69c7e13d)}
.offer-hero h1.designed-title .title-sub{display:block;position:relative;margin:0 0 0 5px;font:900 clamp(34px,3.5vw,48px)/1.3 'Noto Sans JP','Yu Gothic',sans-serif;letter-spacing:.12em;color:#095f89;text-shadow:2px 2px 0 #fff,-1px -1px 0 #fff;padding:0 16px 5px 0}
.offer-hero h1.designed-title .title-sub:after{content:'';position:absolute;z-index:-1;left:-4px;right:0;bottom:2px;height:14px;background:linear-gradient(90deg,#fff,#ffffff20);transform:skewX(-18deg)}
@media(max-width:1000px) and (min-width:701px){.offer-hero h1.designed-title .title-main{font-size:clamp(48px,6.4vw,64px)}.offer-hero h1.designed-title .title-sub{font-size:32px}}
@media(max-width:700px){.offer-hero h1.designed-title{align-items:center;margin:0 0 22px;gap:4px}.offer-hero h1.designed-title .title-main{font-size:clamp(53px,15vw,76px)}.offer-hero h1.designed-title .title-sub{font-size:32px;margin:0;letter-spacing:.12em;padding:0 10px 5px}.offer-hero .hero-copy{padding-left:20px;padding-right:20px}}

/* Red identity for the standalone slimming category and its three menus. */
.slimming-red{--wine:#d52b35;--gold:#d52b35;--line:#f1b9bd;border-color:#ee9da4}
.slimming-red .group-heading{border-color:#ed9fa7}
.slimming-red .group-heading h3,.slimming-red .group-price>span,.slimming-red .group-price del,.slimming-red .group-price strong{color:#d52b35}
.slimming-red .group-label{background:#fff0f1;border-color:#efb0b6;color:#d52b35}
.slimming-red .course-card{border-color:#efafb6;box-shadow:0 7px 22px #d52b350c;background:#fffafa;border-top:1px solid #efafb6}
.slimming-red .course-card h4,.slimming-red .course-code,.slimming-red .card-price strong{color:#d52b35}
.slimming-red .course-select{border-color:#d52b35;color:#d52b35}
.slimming-red .course-select:hover{background:#d52b35;color:#fff}
.course-shortcuts a[href="#course-f"],.course-shortcuts a[href="#course-g"],.course-shortcuts a[href="#course-h"]{border-color:#efafb6;color:#d52b35;background:#fffafa}
.course-shortcuts a[href="#course-f"] span,.course-shortcuts a[href="#course-g"] span,.course-shortcuts a[href="#course-h"] span{background:#d52b35;color:#fff}
.course-shortcuts a[href="#course-f"]:hover,.course-shortcuts a[href="#course-g"]:hover,.course-shortcuts a[href="#course-h"]:hover{background:#d52b35;color:#fff}

/* Clear eligibility boxes beneath each category's price. */
.course-group .course-notice{margin:22px 0 28px;padding:20px 24px;border:1px solid #91cee3;border-left:5px solid #1689b8;border-radius:6px;background:#edf9fe;color:#225970;font-size:1rem;font-weight:500;line-height:1.9}
.course-group .course-notice p+p{margin-top:10px}
.slimming-red .course-notice{border-color:#f0a5ad;border-left-color:#d52b35;background:#fff0f2;color:#9c2630}
@media(max-width:700px){.course-group .course-notice{padding:17px 18px;margin:20px 0 25px;font-size:1rem;line-height:1.85}}

/* A fiery introduction that bridges the red and orange machine panels. */
.machine-showcase{background:linear-gradient(180deg,#fff8f2 0%,#fff0e8 48%,#fffaf7 100%)}
.showcase-heading{position:relative;padding:32px 20px 30px;background:radial-gradient(ellipse at 15% 80%,#ff493b12,transparent 55%),radial-gradient(ellipse at 85% 20%,#ffac341c,transparent 55%),#fffaf6;border-top:3px solid #ee4031;border-bottom:1px solid #f4bc9d}
.showcase-heading:after{content:'';display:block;width:100px;height:5px;margin:24px auto 0;border-radius:3px;background:linear-gradient(90deg,#d5182c,#ff8b16)}
.showcase-heading .eyebrow{color:#cc2630;font-weight:600;letter-spacing:.13em}
.showcase-heading .double-output{background:linear-gradient(110deg,#ce162b,#ee3d26 50%,#ff941f);color:#fff;border:1px solid #ffffff80;border-radius:4px;box-shadow:0 5px 15px #e84d2420}
.showcase-heading h2{color:#a53123;font-weight:600}
.showcase-heading h2 strong{color:#e32c24;background:linear-gradient(100deg,#c7102d 5%,#ef3627 43%,#ff8514 78%,#e85c0a 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 0 #fff);font-weight:600}
.showcase-heading h2 strong span{color:#ee6520;-webkit-text-fill-color:#ee6520}
.showcase-heading .showcase-lead{color:#b44725;font-weight:500}
@media(max-width:700px){.showcase-heading{padding:25px 12px 24px}.showcase-heading:after{margin-top:20px;width:80px}.showcase-heading h2 strong{font-size:clamp(2.5rem,10vw,3rem)}}

/* Orange-to-red hero, coordinated with the two machine panels. */
.hero.offer-hero{background:radial-gradient(ellipse at 8% 4%,#ffca74 0,transparent 58%),linear-gradient(125deg,#ff922b 0%,#f85b30 52%,#d61e35 100%);border-color:#f37a4d;box-shadow:0 14px 36px #d84a2420;color:#fff}
.offer-hero:before{border-color:#ffffff70}
.offer-hero .hero-kicker{color:#fff4e5}
.offer-hero h1.designed-title .title-main{color:#fff;background:linear-gradient(180deg,#fff 5%,#fff8df 50%,#ffe2ac 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;-webkit-text-stroke:1px #fff7e8;filter:drop-shadow(3px 3px 0 #b52922) drop-shadow(0 7px 0 #a8272226)}
.offer-hero h1.designed-title .title-sub{color:#fff;text-shadow:2px 2px 0 #bd3829,-1px -1px 0 #bd382944}
.offer-hero h1.designed-title .title-sub:after{background:linear-gradient(90deg,#ffcf6680,#ffcf660a)}
.offer-hero .hero-statement{color:#fff;font-weight:600;text-shadow:0 1px 3px #a42e2130}
.offer-hero .offer-tag{background:linear-gradient(110deg,#fff9ef,#fff,#ffecd5);color:#b63125;border-color:#ffd09b;box-shadow:0 4px 16px #8f211b18}
.offer-hero .hero-actions .button{background:#fff;color:#c73527;border-color:#ffe1c6;box-shadow:0 5px 16px #a3292025}
.offer-hero .hero-actions .button:hover{background:#fff0de;color:#ac251d}
.offer-hero .hero-visual.treatment-hero{background:#ffe8d4}
.offer-hero .treatment-hero:after{background:linear-gradient(90deg,#f85b3033,transparent 45%),linear-gradient(0deg,#8e2d2699,transparent 55%)}
.hero-photo-caption{color:#fff0dc}
.hero-photo-caption span{color:#fff}
@media(max-width:700px){.offer-hero .treatment-hero:after{background:linear-gradient(0deg,#8e2d26aa,transparent 68%)}}

/* Editorial hero: restrained typography, vivid warmth and a full-height photo. */
.hero.offer-hero{width:calc(100% - 48px);max-width:1320px;grid-template-columns:1.05fr 1fr;border:0;border-radius:0;background:radial-gradient(ellipse at 0% 0%,#fca35f55,transparent 65%),linear-gradient(120deg,#ed742e 0%,#e14b2c 55%,#c52e32 100%);box-shadow:none;overflow:hidden}
.offer-hero:before{display:none}
.offer-hero .hero-copy{padding:58px 38px 52px 54px}
.offer-hero .hero-kicker{display:flex;align-items:center;gap:15px;font:500 11px/1.7 'Noto Sans JP',sans-serif;letter-spacing:.2em;color:#fff2e8;margin:0 0 32px}
.offer-hero .hero-kicker:before{content:'';width:36px;height:1px;background:#fff8eacc;flex-shrink:0}
.offer-hero .hero-statement{font:500 18px/1.8 'Noto Serif JP','Yu Mincho',serif;color:#fff5ed;letter-spacing:.1em;text-shadow:none;margin:0 0 10px}
.offer-hero h1.designed-title{display:block;transform:none;isolation:auto;margin:0 0 30px;line-height:1.15}
.offer-hero h1.designed-title .title-main{display:block;position:static;margin:0;background:none;color:#fff;-webkit-text-fill-color:#fff;-webkit-text-stroke:0;filter:none;text-shadow:none;font:600 clamp(64px,6.8vw,96px)/1.25 'Noto Serif JP','Yu Mincho',serif;letter-spacing:.025em;white-space:nowrap}
.offer-hero h1.designed-title .title-sub{display:block;position:static;margin:12px 0 0;padding:0;font:500 clamp(18px,1.8vw,24px)/1.6 'Noto Serif JP','Yu Mincho',serif;letter-spacing:.14em;color:#fff6ef;text-shadow:none}
.offer-hero h1.designed-title .title-sub:after{display:none}
.offer-hero .offer-tag{display:block;width:100%;margin:0 0 26px;padding:18px 0;background:none;border:0;border-top:1px solid #ffffff60;border-bottom:1px solid #ffffff60;box-shadow:none;color:#fff}
.offer-hero .offer-tag>span{font:500 12px/1.6 'Noto Sans JP',sans-serif;letter-spacing:.13em;color:#ffe8da}
.offer-hero .offer-tag strong{font:500 21px/1.7 'Noto Serif JP','Yu Mincho',serif;letter-spacing:.09em;margin-top:3px}
.offer-hero .hero-actions .button{display:flex;justify-content:space-between;gap:30px;min-width:0;width:100%;max-width:350px;padding:14px 20px;background:#fffaf5;color:#ae3928;border:0;border-radius:0;box-shadow:none;font-size:15px;letter-spacing:.05em}
.offer-hero .hero-actions .button:hover{background:#fff;color:#84271e;transform:none}
.offer-hero .hero-visual.treatment-hero{background:#ebcab5}
.offer-hero .treatment-hero img{object-position:43% center}
.offer-hero .treatment-hero:after{background:linear-gradient(0deg,#53251ca6,transparent 55%)}
.hero-photo-caption{bottom:30px;left:30px;right:25px;color:#fff0e5;font:400 10px/1.8 Georgia,serif;letter-spacing:.16em}
.hero-photo-caption span{display:block;font:500 18px/1.7 'Noto Serif JP','Yu Mincho',serif;color:#fff;letter-spacing:.08em;margin-top:4px}
@media(max-width:1000px) and (min-width:701px){.offer-hero .hero-copy{padding:40px 26px}.offer-hero h1.designed-title .title-main{font-size:clamp(52px,6.5vw,68px)}.offer-hero .hero-statement{font-size:15px}.offer-hero .hero-kicker{font-size:9px;gap:10px;letter-spacing:.12em}.offer-hero h1.designed-title .title-sub{font-size:17px;letter-spacing:.07em}}
@media(max-width:700px){.hero.offer-hero{width:calc(100% - 24px);margin-top:12px}.offer-hero .hero-copy{padding:30px 25px;text-align:left}.offer-hero .hero-kicker{font-size:9px;letter-spacing:.13em;margin-bottom:22px;justify-content:flex-start}.offer-hero .hero-kicker:before{width:26px}.offer-hero .hero-statement{font-size:15px;letter-spacing:.08em;margin-bottom:8px}.offer-hero h1.designed-title{display:block;margin:0 0 24px;transform:none}.offer-hero h1.designed-title .title-main{font-size:clamp(57px,16vw,78px);line-height:1.25;letter-spacing:.02em}.offer-hero h1.designed-title .title-sub{font-size:17px;letter-spacing:.12em;margin-top:9px;padding:0}.offer-hero .offer-tag{margin:0 0 20px;padding:14px 0}.offer-hero .offer-tag>span{font-size:11px}.offer-hero .offer-tag strong{font-size:19px}.offer-hero .hero-actions .button{max-width:none;min-height:48px;padding:12px 17px;font-size:14px}.offer-hero .hero-visual.treatment-hero{height:220px;min-height:220px}.offer-hero .treatment-hero img{object-position:43% 47%}.offer-hero .treatment-hero:after{background:linear-gradient(0deg,#53251ca6,transparent 65%)}.hero-photo-caption{left:25px;bottom:20px;font-size:9px}.hero-photo-caption span{font-size:16px}}

/* Restore the supplied treatment photo and clarify the two existing diagrams. */
.cavi-feature .feature-photo{aspect-ratio:8/5}
.cavi-feature .feature-photo img{position:absolute;display:block;width:115.22%;max-width:none;height:auto;aspect-ratio:auto;left:-7.71%;top:-10.77%;object-fit:initial;filter:none}
.cavi-feature .machine-diagram,.cyclo-feature .machine-diagram{background:#fff}
.cavi-feature .machine-diagram img,.cyclo-feature .machine-diagram img{filter:brightness(1.07) contrast(1.17) saturate(1.38)}

/* Same supplied Cyclone treatment photograph; retain the flow's 4:3 sizing. */
.flow-list.three .flow-cyclo-photo{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;margin:0 0 14px;background:#fff}
.flow-list.three .flow-cyclo-photo img{position:absolute;display:block;width:137.65%;max-width:none;height:auto;aspect-ratio:auto;object-fit:initial;left:-18.41%;top:-10.82%;margin:0;background:transparent}
@media(max-width:700px){.flow-list.three .flow-cyclo-photo{margin-top:14px}.flow-list.three .flow-cyclo-photo img{margin:0;max-width:none}}

/* Shared salon page navigation */
.header.shared-header{position:sticky;top:0;z-index:900;height:auto;min-height:96px;background:#fff;gap:24px;padding:21px max(32px,calc((100% - 1080px)/2))}
.shared-header .brand{font-family:'Noto Serif JP',serif;font-size:25px;font-weight:700;color:#5b4141;white-space:nowrap}
.header.shared-header .page-switch,footer .page-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:min(470px,100%)}
.page-switch a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:10px 8px;background:#fff;color:#454b48;border:1px solid #d4d9d6;border-radius:0;box-shadow:none;font:700 15px/1.6 'Noto Serif JP',serif;text-align:center}
.page-switch a:focus-visible{outline:2px solid #55776d;outline-offset:3px}
footer .page-switch{margin:24px auto}
@media(max-width:760px){.header.shared-header{display:flex;flex-direction:column;gap:24px;padding:15px 16px}.header.shared-header .brand{font-size:23px}.header.shared-header .page-switch{display:grid;width:100%;max-width:420px}html{scroll-padding-top:155px}}

/* Keep all shared navigation buttons visible on mobile */
.header.shared-header nav.page-switch>a{display:flex;min-width:0;width:100%;height:46px;white-space:nowrap;padding:8px 4px}
footer{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;background:#fff;padding:32px 16px 112px;text-align:center}
footer>.brand{font-family:'Noto Serif JP',serif;font-size:23px;font-weight:700;color:#5b4141}
footer>.brand span{display:none}
footer nav.page-switch{width:min(470px,100%);margin:24px auto 0;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
footer nav.page-switch>a{display:flex;min-width:0;width:100%;height:46px;white-space:nowrap;padding:8px 4px;background:#fff;border:1px solid #d4d9d6;border-radius:0;font-size:15px}
