/* site-core-1c5e18254741.css: original cascade order */
/* Source: base.css; original cascade order retained. */
:root{--ink:#284b49;--muted:#657875;--green:#287b70;--pale:#edf6f3;--line:#dbe7e2;--orange:#b76b42;--white:#fff;--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:155px}body{margin:0;color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic",sans-serif;font-size:16px;line-height:1.9;background:#fff}a{color:inherit;text-decoration:none}a:hover{color:var(--green)}a:focus-visible,button:focus-visible{outline:3px solid #eab36e;outline-offset:5px}button{font:inherit;cursor:pointer}img{max-width:100%;height:auto;vertical-align:middle}p{margin:0 0 1.3em}h1,h2,h3,h4,h5,h6{line-height:1.6;letter-spacing:.04em;margin:0 0 24px}ul{list-style:none;margin:0;padding:0}dl,dd,figure{margin:0}address{font-style:normal}.sp{display:none}.skip{position:fixed;top:-100px}.skip:focus{top:0;z-index:99;background:white;padding:10px}.site-header{position:sticky;top:0;background:#fffffffa;z-index:30;border-bottom:1px solid var(--line)}.header-inner{max-width:1240px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:22px 32px 18px;gap:24px}.brand{display:block}.brand img{width:340px}.brand>span{display:block;font-size:12px;letter-spacing:.14em;margin-top:8px}.header-actions{display:flex;gap:25px;align-items:center}.phone{font-size:23px;letter-spacing:.04em;font-weight:600;line-height:1.5}.phone small{display:block;font-size:12px;font-weight:400;letter-spacing:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:15px 28px;border-radius:100px;font-size:15px;font-weight:600;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.primary{background:var(--green);color:white}.primary:hover{background:#1d6259;color:white}.secondary{border:1px solid #aec8c0;background:white}.site-header nav{display:flex;justify-content:center;gap:38px;padding:13px 24px;font-size:14px;font-weight:600;border-top:1px solid #eff2ee}.menu-toggle{display:none}.home-hero{max-width:1320px;display:grid;grid-template-columns:1.12fr 1fr;gap:32px;margin:26px auto 0;padding:0 40px 42px;align-items:center}.hero-copy{padding:38px 16px 24px 36px}.eyebrow{font-size:12px;letter-spacing:.18em;color:var(--green);font-weight:600;margin-bottom:24px}.home-hero h1{font-size:max(var(--site-readable-min, 0px), clamp(30px,3.4vw,48px));line-height:1.7;letter-spacing:.08em;margin-bottom:26px;font-weight:600}.home-hero h1 span{background:linear-gradient(transparent 76%,#e1efe7 0)}.hero-intro{max-width:480px;font-size:16px;line-height:2.1}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.hero-hours{font-size:13px;color:var(--muted);line-height:1.8}.hero-photo{height:535px;position:relative;border-radius:100px 24px 100px 24px;overflow:hidden;background:#f4f1e8}.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:center 36%}.photo-caption{position:absolute;bottom:28px;left:24px;right:24px;padding:14px 20px;border-radius:15px;background:#fffef6ed;text-align:center;font-size:15px;letter-spacing:.06em}.home main>section:not(.home-hero){padding:75px max(32px,calc((100% - 1120px)/2))}.home main>.top-information{background:#f1f7f4;padding-top:25px!important;padding-bottom:25px!important}.top-information-content{display:grid;grid-template-columns:180px 1fr;gap:45px}.top-information-title .en{font-size:12px;letter-spacing:.14em;color:var(--green);display:block}.top-information-title .jp{font-size:21px;font-weight:bold}.top-information-title{margin:0 0 8px}.top-information-more{font-size:13px}.top-information-items li a{display:flex;align-items:center;gap:30px;padding:12px 0;border-bottom:1px solid var(--line)}.top-information-items li:last-child a{border:0}.top-information-item-head{display:flex;gap:15px;align-items:center;font-size:13px}.top-information-item-tag{font-size:12px;background:white;padding:1px 12px;border-radius:30px}.top-information-item-title{margin:0;font-size:15px}.top-campaign-head{display:flex;align-items:center;gap:50px;margin-bottom:35px}.top-campaign-title,.top-search-title,.top-clinic-title{font-size:30px;font-weight:600}.top-campaign-title .en,.top-search-title .en,.top-clinic-title .en{display:block;font-size:12px;letter-spacing:.16em;color:var(--green);margin-bottom:7px}.top-campaign-title{min-width:250px;margin:0}.top-campaign-head-comment{font-size:14px;line-height:2;margin:0}.top-campaign-items,.campaign-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.top-campaign-item{border:1px solid var(--line);border-radius:20px;background:white;overflow:hidden;display:flex;flex-direction:column}.top-campaign-item-image{width:100%;height:160px;object-fit:cover}.top-campaign-item-text{padding:20px;display:flex;flex-direction:column;flex:1}.top-campaign-tag-items{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:14px}.top-campaign-tag-items li{background:var(--pale);border-radius:4px;padding:2px 7px;font-size:12px}.top-campaign-item-title .sub{font-size:12px;color:var(--muted);display:block;margin-bottom:9px}.top-campaign-item-title>.title{font-size:18px;font-weight:bold;display:block;line-height:1.65}.top-campaign-item-title>.title>span{font-size:14px;display:block}.top-campaign-item-title{margin:0 0 12px}.top-campaign-item-comment{font-size:13px}.top-campaign-item-comment p{margin-bottom:4px}.top-campaign-item-price{margin-top:auto}.top-campaign-item-price p{display:flex;justify-content:space-between;align-items:center;margin:0}.standard{font-size:13px;color:var(--muted)}.campaign .title{font-size:13px;background:#fff0e4;color:#935128;border-radius:5px;padding:0 9px}.campaign .price{font-size:25px;font-weight:600;color:var(--orange)}.top-campaign-item-more{font-size:13px;padding-top:15px;border-top:1px solid var(--line);margin-top:16px;display:block}.top-campaign-more{display:block;margin:28px auto 0;text-align:center}.top-search{background:#f4f8f5}.top-search-title{text-align:center}.top-search-tab-items{display:flex;justify-content:center;margin:30px 0;gap:12px}.top-search-tab-items li{padding:12px 35px;border:1px solid #b8cec7;border-radius:100px;background:white;cursor:pointer}.top-search-tab-items li.active{background:var(--green);color:white}.search-panel[hidden]{display:none}.top-search-content-item-content{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.top-search-concerns-list{background:white;border-radius:20px;overflow:hidden;padding:22px}.top-search-concerns-title{font-weight:600;font-size:17px}.top-search-concerns-list>img{border-radius:12px;margin-bottom:20px}.namelist li{border-bottom:1px solid var(--line)}.namelist a{display:block;padding:11px 0;font-size:14px}.namelist a:hover{text-decoration:underline}.search-panel>.top-search-content-item-content>.namelist{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:10px 35px}.top-clinic-title{text-align:center}.top-clinic-content{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.top-clinic-image img{width:100%;border-radius:28px}.top-clinic-name{font-size:22px;font-weight:600}.top-clinic-tel{font-size:29px;display:block;margin:16px 0}.hours-table{border-collapse:collapse;width:100%;font-size:13px}.hours-table td,.hours-table th{padding:12px 7px;text-align:center;border-bottom:1px solid var(--line);font-weight:400}.hours-table thead{background:var(--pale)}.hours-foot{font-size:13px;margin-top:9px}.top-clinic-more{font-size:14px;text-decoration:underline}.home-message{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;background:#eef5f2}.home-message h2{font-size:27px}.top-hero-comment{font-size:15px;line-height:2.2}.top-hero-sign{text-align:right;font-size:14px}.site-footer{padding:65px max(32px,calc((100% - 1120px)/2)) 20px;background:#fff}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.site-footer .brand{margin-bottom:25px}.site-footer p{font-size:14px}.footer-phone{font-size:26px}.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:10px 25px;align-content:start;font-size:14px}.copyright{font-size:12px!important;margin:40px 0 0;padding-top:20px;border-top:1px solid var(--line);color:var(--muted)}.mobile-book{display:none}.page-heading{background:var(--pale);padding:32px max(32px,calc((100% - 1120px)/2)) 45px}.breadcrumbs{font-size:12px;margin-bottom:22px;display:flex;gap:14px}.page-heading h1{font-size:32px;margin:0;overflow-wrap:anywhere}.inner main{max-width:1120px;margin:60px auto 80px;padding:0 25px}.inner .second-text{width:100%}.inner h2{font-size:27px}.inner h3,.inner h4,.inner h5,.inner h6{font-size:23px}.en{color:var(--green);font-size:13px;letter-spacing:.12em}.midashi01,.midashi03{margin:50px 0 30px}.midashi01 span,.midashi03 span{display:block}.midashi01 .en,.midashi03 .en{font-size:12px;margin-top:8px}.midashi03 .jp{font-size:24px}.inner .intro{display:flex;gap:40px;align-items:flex-start;margin-bottom:50px}.inner .intro>img{width:40%;border-radius:20px}.inner .intro .text{flex:1}.inner .intro .lead{font-size:24px}.marker{background:linear-gradient(transparent 70%,#e1efe7 0)}.worry{padding:30px;background:var(--pale);border-radius:20px;margin:35px 0}.worry .ttl{font-size:20px;font-weight:600}.worry ul{display:grid;grid-template-columns:1fr 1fr;gap:10px}.worry li:before{content:'✓';margin-right:10px;color:var(--green)}.price-tbl{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;margin:0 0 35px;font-size:15px}.price-tbl td,.price-tbl th{padding:15px 20px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);text-align:center}.price-tbl th{background:var(--green);color:white;font-size:18px;text-align:left}.price-tbl .ttl{background:#eef6f2}.price-tbl .sub{background:#fafbf9;font-size:14px}.price-tbl .price{font-size:20px;font-weight:600}.price-tbl tr:last-child td{border-bottom:0}.scroll{overflow-x:auto}.tab,.link,.route{display:flex;gap:15px;margin:25px 0 40px;flex-wrap:wrap}.tab a,.link a,.route a{display:block;border:1px solid var(--line);border-radius:100px;padding:12px 28px;background:white}.tab .current a,.link li:last-child a{background:var(--green);color:white}.tab a span{font-size:12px;margin-right:10px}.treatment-list{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.treatment-list li{border:1px solid var(--line);border-radius:18px;overflow:hidden}.treatment-list img{width:100%;height:190px;object-fit:cover}.treatment-list dl{padding:22px}.treatment-list dt{font-size:19px;font-weight:600;margin-bottom:10px}.treatment-list dt span{font-size:14px}.treatment-list dd{font-size:14px}.inner .campaign-list{grid-template-columns:repeat(3,1fr);margin-bottom:55px}.inner .message>li{border-top:1px solid var(--line);padding:40px 0}.message .icon{display:block;margin-bottom:15px}.close{padding:35px;background:var(--pale);border-radius:20px}.map{height:440px;border-radius:20px;overflow:hidden}.map iframe{width:100%;height:100%;border:0}.wp_posts .wp_post{display:flex;gap:30px;padding:28px 0;border-bottom:1px solid var(--line)}.wp_post_thum{width:170px;flex-shrink:0}.wp_post_thum img{border-radius:15px}.wp_post_date,.wp_post_cats{font-size:13px}.wp_post_ttl{margin:10px 0}.contact-handoff{background:var(--pale);border-radius:20px;padding:40px;margin-top:30px}.contact-handoff p:last-child{margin:25px 0 0}.mb40{margin-bottom:40px}.mb60{margin-bottom:60px}.mb80{margin-bottom:65px}.mb100{margin-bottom:75px}.inner main a:not(.button):hover{text-decoration:underline}
@media(max-width:1000px){.header-inner{padding:18px 24px}.brand img{width:280px}.phone{display:none}.site-header nav{gap:20px;font-size:13px}.home-hero{padding:0 25px 35px;gap:20px}.hero-copy{padding:25px 0}.home-hero h1{font-size:35px}.hero-photo{height:490px}.hero-buttons{gap:10px}.button{padding:13px 21px}.top-campaign-items{grid-template-columns:repeat(2,1fr)}.top-search-content-item-content{grid-template-columns:repeat(2,1fr)}.top-clinic-content{gap:30px}.home-message{gap:35px}}
@media(max-width:680px){html{scroll-padding-top:100px}.header-inner{padding:17px 18px;gap:8px}.brand img{width:225px}.brand>span{font-size:max(var(--site-readable-min, 0px), 10px);margin-top:5px}.header-actions>.button{display:none}.menu-toggle{display:block;background:var(--pale);border:0;border-radius:10px;font-size:12px;padding:10px}.site-header nav{display:none;padding:15px 22px}.site-header nav.open{display:grid;grid-template-columns:1fr 1fr;gap:16px}.home-hero{display:flex;flex-direction:column;padding:0 20px 28px;margin-top:0;gap:8px}.hero-copy{padding:32px 4px 10px}.eyebrow{font-size:max(var(--site-readable-min, 0px), 10px);margin-bottom:17px}.home-hero h1{font-size:32px;line-height:1.65;margin-bottom:20px}.hero-intro{font-size:14px;line-height:2}.hero-buttons{margin:20px 0 16px;flex-wrap:nowrap}.button{font-size:13px;padding:13px 19px;gap:10px}.hero-hours{font-size:12px;margin:0}.hero-photo{width:100%;height:340px;border-radius:55px 18px 55px 18px}.hero-photo>img{object-position:center 31%}.photo-caption{font-size:12px;bottom:18px;left:18px;right:18px;padding:10px}.home main>section:not(.home-hero){padding:45px 22px}.top-information-content{display:block}.top-information-head{display:flex;align-items:center;justify-content:space-between}.top-information-title .en{font-size:max(var(--site-readable-min, 0px), 10px)}.top-information-title .jp{font-size:19px}.top-information-items li a{display:block;padding:12px 0}.top-information-item-head{font-size:12px;margin-bottom:5px}.top-information-item-title{font-size:14px}.top-campaign-head{display:block}.top-campaign-title{font-size:25px;margin-bottom:20px}.top-campaign-head-comment{font-size:14px}.top-campaign-items,.campaign-list,.inner .campaign-list{grid-template-columns:1fr;gap:20px}.top-campaign-item{display:grid;grid-template-columns:115px 1fr;align-items:stretch}.top-campaign-item-image{height:100%;min-height:220px;object-position:center}.top-campaign-item-text{padding:16px}.top-campaign-item-title>.title{font-size:17px}.campaign .price{font-size:24px}.top-search-title,.top-clinic-title{font-size:25px}.top-search-tab-items{gap:8px}.top-search-tab-items li{padding:10px 14px;font-size:13px;flex:1;text-align:center}.top-search-content-item-content{grid-template-columns:1fr 1fr;gap:12px}.top-search-concerns-list{padding:15px;border-radius:15px}.top-search-concerns-title{font-size:14px}.top-search-concerns-list img{margin-bottom:9px}.namelist a{font-size:12px}.search-panel>.top-search-content-item-content>.namelist{grid-template-columns:1fr;gap:0}.top-clinic-content,.home-message,.footer-grid{grid-template-columns:1fr;gap:25px}.top-clinic-name{font-size:19px}.top-clinic-tel{font-size:26px}.home-message h2{font-size:23px}.top-hero-comment{font-size:14px}.site-footer{padding:40px 22px 90px}.footer-nav{font-size:13px;gap:15px}.copyright{font-size:max(var(--site-readable-min, 0px), 10px) !important}.mobile-book{position:fixed;bottom:0;left:0;right:0;z-index:25;background:white;display:grid;grid-template-columns:1fr 1fr;padding:10px 12px max(10px,env(safe-area-inset-bottom));gap:8px;border-top:1px solid var(--line)}.mobile-book a{padding:9px;text-align:center;border-radius:100px;font-size:14px;border:1px solid var(--green)}.mobile-book a:last-child{background:var(--green);color:white}.page-heading{padding:25px 22px}.page-heading h1{font-size:25px}.breadcrumbs{font-size:max(var(--site-readable-min, 0px), 11px)}.inner main{margin:30px auto 45px;padding:0 20px}.inner .intro{flex-direction:column;gap:24px}.inner .intro>img{width:100%}.inner .intro .lead{font-size:21px}.inner h2{font-size:23px}.inner p{font-size:15px}.worry{padding:23px}.worry ul{grid-template-columns:1fr;font-size:14px}.price-tbl td,.price-tbl th{padding:13px 10px}.price-tbl th{font-size:16px}.price-tbl .price{font-size:17px}.price-tbl .sub{font-size:12px}.tab{gap:10px}.tab a{padding:10px 17px;font-size:14px}.tab a span{display:none}.treatment-list{grid-template-columns:1fr;gap:20px}.treatment-list a{display:grid;grid-template-columns:110px 1fr}.treatment-list img{height:100%;min-height:165px}.treatment-list dl{padding:16px}.treatment-list dt{font-size:17px}.treatment-list dd{font-size:13px}.map{height:330px}.wp_posts .wp_post{gap:15px}.wp_post_thum{width:90px}.wp_post_ttl{font-size:18px!important}.contact-handoff{padding:25px}.pc{display:none}.sp{display:block}br.sp{display:inline}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}


/* Source: compat.css; original cascade order retained. */
/* Source-parity, readability, and keyboard/mobile corrections (2026-09-28). */
.header-inner > .brand, .header-actions, .home-hero > *, .top-clinic-content > * { min-width: 0; }
.header-contact { white-space: nowrap; font-size: 14px; padding: 12px 18px; }
.header-actions { gap: 14px; }
.header-social { display: flex; align-items: center; gap: 8px; flex: none; }
.brand-round { display: grid; place-items: center; width: 50px; height: 50px; flex: none; border: 1px solid #d1ddd8; border-radius: 50%; background: #fff; transition: border-color .16s ease-out, box-shadow .16s ease-out; }
.brand-round:hover { border-color: var(--green); box-shadow: 0 3px 12px #284b4918; }
.brand-round img { display: block; max-width: none; object-fit: contain; }
.brand-round:first-child img { width: 28px; height: 28px; }
.brand-round:last-child img { width: 43px; height: 37px; }
.header-actions > .branded-line { gap: 8px; padding: 10px 15px; background: #06c755; white-space: nowrap; }
.header-actions > .branded-line:hover { background: #06c755; color: #fff; transform: none; }
.branded-line img { display: block; width: 26px; height: 26px; flex: none; }
.site-header nav { flex-wrap: wrap; }
.site-header nav .nav-contact.sp { display: none; }
.site-header a:focus-visible, .site-header button:focus-visible,
.top-search-tab-item:focus-visible, select:focus-visible, .mobile-book a:focus-visible {
  outline: 3px solid #b76b42; outline-offset: 3px;
}
.hero-photo picture, .hero-photo picture img { display: block; width: 100%; height: 100%; }
.hero-photo picture img { object-fit: cover; object-position: center 36%; }
.top-clinic-more { display: inline-block; margin-top: 18px; padding: 5px 0; }
.hours-box { max-width: 100%; overflow-x: auto; }
.breadcrumbs { flex-wrap: wrap; overflow-wrap: anywhere; }
.breadcrumbs a { white-space: nowrap; }
.page-heading h1, .inner main h2, .inner main h3, .inner main h4,
.inner main h5, .inner main h6, .wp_post_ttl, .treatment-list dt {
  overflow-wrap: anywhere;
}
.inner .second-text p, .single_content_texts p { line-height: 1.95; }
.wp_single .single_ttl { font-size: max(var(--site-readable-min, 0px), clamp(22px, 2.5vw, 29px)); line-height: 1.55; }
.wp_single .single_content_texts { max-width: 74ch; overflow-wrap: anywhere; }
.wp_posts .wp_post > *, .wp_single_content > * { min-width: 0; }
.wp_posts .wp_post_thum img { width: 100%; height: auto; object-fit: contain; }
.price-tbl { max-width: 100%; font-variant-numeric: tabular-nums; }
.price-tbl td, .price-tbl th { overflow-wrap: anywhere; line-height: 1.6; }
.scroll { max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; }
.sitemap-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; }
.sitemap-group { min-width: 0; padding: 23px 26px; border: 1px solid var(--line); border-radius: 18px; background: #fcfefd; }
.sitemap-group h3 { margin: 0 0 12px; padding-bottom: 10px; border-bottom: 2px solid var(--line); color: var(--green); font-size: 20px; }
.sitemap-group a { display: block; padding: 8px 4px; border-radius: 6px; overflow-wrap: anywhere; line-height: 1.6; }
.sitemap-group a:hover, .sitemap-group a:focus-visible { background: var(--pale); }
.privacy-document { display: block; width: 100%; max-width: 100%; min-height: 600px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.not-found { max-width: 850px; margin: 75px auto 120px; padding: 28px; text-align: center; }
.not-found h1 { font-size: max(var(--site-readable-min, 0px), clamp(26px, 5vw, 40px)); }
.not-found p { margin-bottom: 30px; }
.home-social { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: 50px; align-items: center; background: #fff; }
.home-social .eyebrow { margin: 0 0 13px; }
.home-social h2 { font-size: max(var(--site-readable-min, 0px), clamp(24px,2.4vw,31px)); margin-bottom: 14px; }
.home-social .social-intro > p:last-child { max-width: 36em; margin-bottom: 0; }
.social-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.social-card { display: flex; flex-direction: column; justify-content: space-between; gap: 14px; min-width: 0; min-height: 180px; padding: 25px; border: 1px solid var(--line); border-radius: 20px; box-shadow: 0 8px 24px #284b490d; transition: transform .16s ease-out, box-shadow .16s ease-out; overflow-wrap: anywhere; }
.social-card:hover { transform: translateY(-3px); box-shadow: 0 12px 28px #284b4920; }
.social-instagram { background: linear-gradient(145deg,#fffaf7,#f4f8f5); }
.social-youtube { background: linear-gradient(145deg,#f0f8f6,#fff); }
.social-platform { display: flex; align-items: center; gap: 10px; min-height: 30px; font-size: 13px; font-weight: 600; letter-spacing: .1em; color: var(--green); }
.social-platform img { display: block; width: auto; height: 28px; object-fit: contain; }
.social-card strong { display: block; font-size: 19px; line-height: 1.5; }
.social-card strong span { margin-left: 4px; }
.social-handle { color: var(--muted); font-size: 12px; }
@media (max-width:1000px) {
  .header-inner { flex-wrap: wrap; }
  .header-actions { margin-left: auto; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
  .header-social { gap: 6px; }
  .header-actions > .branded-line { padding: 10px 12px; }
  .header-actions > .button { padding: 11px 17px; }
  .home-social { grid-template-columns: minmax(0,1fr); gap: 25px; }
}
@media (max-width:680px) {
  body { padding-bottom: calc(170px + env(safe-area-inset-bottom)); }
  .header-social { display: none; }
  .site-header nav.open { max-height: calc(100dvh - 100px); overflow-y: auto; }
  .site-header nav .nav-contact.sp { display: block; }
  .brand > span { overflow-wrap: anywhere; }
  .hero-photo picture img { object-position: center 31%; }
  .hours-table { min-width: 340px; }
  .midashi01 .jp small { display: block; font-size: max(var(--site-readable-min, 0px), .7em); overflow-wrap: anywhere; white-space: normal; }
  .sitemap-grid { grid-template-columns: minmax(0,1fr); gap: 16px; }
  .sitemap-group { padding: 18px 20px; }
  .social-links { grid-template-columns: minmax(0,1fr); gap: 12px; }
  .social-card { min-height: 133px; padding: 19px 21px; }
  .social-card strong { font-size: 18px; }
  .top-campaign-item-image, .treatment-list img {
    object-fit: contain; object-position: center; background: #f1f6f3;
  }
  .treatment-list img { min-height: 0; height: 100%; }
  .mobile-book {
    left: 8px; right: 8px;
    bottom: calc(76px + env(safe-area-inset-bottom));
    grid-template-columns: minmax(56px,.65fr) minmax(98px,1.4fr) 50px 50px;
    gap: 4px; align-items: center;
    padding: 6px; border: 1px solid var(--line); border-radius: 16px;
    box-shadow: 0 8px 24px #284b4920;
  }
  .mobile-book a { display: flex; align-items: center; justify-content: center; min-width: 0; min-height: 50px; height: 50px; padding: 0 4px; line-height: 1.2; font-size: 14px; font-weight: 600; white-space: nowrap; }
  .mobile-book .mobile-phone { border-color: #aec8c0; background: #fff; color: var(--ink); }
  .mobile-book .mobile-line { gap: 4px; border-color: #06c755; background: #06c755; color: #fff; }
  .mobile-book .mobile-line img { width: 40px; height: 40px; flex: none; }
  .mobile-book .mobile-social, .mobile-book a:last-child { width: 50px; height: 50px; padding: 0; border: 1px solid #d1ddd8; border-radius: 50%; background: #fff; color: var(--ink); }
  .mobile-book .mobile-instagram img { width: 28px; height: 28px; }
  .mobile-book .mobile-youtube img { width: 43px; height: 37px; }
}
@media (max-width:380px) {
  .header-inner { flex-wrap: nowrap; }
  .header-inner > .brand { flex: 1 1 auto; max-width: calc(100% - 84px); }
  .header-actions { flex: 0 0 auto; margin-left: 0; }
  .brand img { width: min(195px,100%); }
  .brand > span { letter-spacing: .04em; }
  .menu-toggle { max-width: 72px; line-height: 1.35; }
  .home-hero h1 { font-size: 28px; }
  .hero-buttons { flex-wrap: wrap; }
  .hero-buttons .button { flex: 1 1 130px; min-width: 0; }
}


/* Source: redesign.css; original cascade order retained. */
/* Ogawa / Warm Architecture — original visual system, 2026 */
:root{--ink:#39332e;--muted:#766c61;--green:#725843;--pale:#ede7dd;--line:#d8cfc2;--orange:#855c3a;--radius:3px;--paper:#f8f5ef;--dark:#332d27}
html{scroll-padding-top:140px}body{background:var(--paper);color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:15px;line-height:2;letter-spacing:.025em}h1,h2,h3,h4,h5,h6{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:400;letter-spacing:.045em}a,button{transition:color .2s,background .2s,border-color .2s}a:hover{color:#9a6d44}::selection{background:#dcc8af;color:#332d27}img{display:inline-block}a:focus-visible,button:focus-visible,[role=tab]:focus-visible{outline:3px solid #b78654;outline-offset:5px}.site-header{background:#f8f5eff5;border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.header-inner{max-width:1440px;padding:18px 4.5%;gap:20px}.brand{display:flex;align-items:center;gap:13px;flex:none}.brand>span{margin:0;letter-spacing:normal}.brand-symbol{width:44px;height:55px;display:flex!important;align-items:center;justify-content:center;border:1px solid #9c8165;border-radius:24px 24px 0 0;font-family:Georgia,serif;font-size:34px!important;line-height:1;letter-spacing:-6px!important;padding-right:7px;color:#725843}.brand-symbol>span{font-size:25px;padding-top:12px}.brand-name{font-family:"Yu Mincho",serif;font-size:19px!important;line-height:1.5}.brand-name small{display:block;font-size:12px;letter-spacing:.12em}.brand-name small span{display:block;font-family:Arial,sans-serif;font-size:max(var(--site-readable-min, 0px), 8px);letter-spacing:.14em;margin-top:3px}.phone{font-family:Georgia,serif;font-size:21px;font-weight:400}.phone small{font-family:sans-serif;font-size:max(var(--site-readable-min, 0px), 10px)}.header-social{gap:6px}.brand-round{width:35px;height:35px;border:0;background:none}.brand-round:first-child img{width:20px;height:20px}.brand-round:last-child img{width:28px;height:auto}.header-contact{display:none}.button{border-radius:2px;min-height:50px;font-size:13px;font-weight:400;padding:15px 23px;letter-spacing:.06em}.primary,.header-actions>.branded-line{background:#725843;border:1px solid #725843;color:white}.primary:hover,.header-actions>.branded-line:hover{background:#4c3d30;color:white}.secondary{border-color:#b9aa96;background:transparent}.secondary:hover{background:#e8dfd2;color:#39332e}.site-header nav{justify-content:flex-end;max-width:1440px;margin:auto;padding:10px 4.5%;gap:29px;border:0;border-top:1px solid #e4ddd2;font-size:12px;font-weight:400;letter-spacing:.06em}.site-header nav a[aria-current=page]{color:#795737;text-decoration:underline;text-underline-offset:7px}.home-hero{position:relative;display:grid;grid-template-columns:minmax(390px,.88fr) minmax(0,1.3fr);align-items:stretch;gap:0;max-width:1440px;margin:0 auto;padding:0;background:var(--dark);color:#f7f1e7;min-height:620px}.hero-copy{padding:76px 40px 65px 12%;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:1}.eyebrow{color:#947451;font-size:max(var(--site-readable-min, 0px), 10px);letter-spacing:.19em;font-weight:400}.hero-copy .eyebrow{color:#d1b693;font-size:max(var(--site-readable-min, 0px), 10px);margin-bottom:31px}.home-hero h1{font-size:max(var(--site-readable-min, 0px), clamp(32px,3.4vw,48px));font-weight:400;line-height:1.85;letter-spacing:.02em;white-space:nowrap;margin-bottom:24px}.home-hero h1 span{background:none;color:#ebd6b9}.hero-intro{font-size:13px;line-height:2.25;color:#dfd6cb;max-width:370px}.hero-buttons{margin:23px 0 24px;gap:10px}.hero-buttons .primary{background:#e8d9c4;color:#342c24;border-color:#e8d9c4}.hero-buttons .secondary{color:#f3e8d9;border-color:#88735e}.hero-buttons .secondary:hover{background:#665445}.hero-hours{color:#c6b9aa;font-size:max(var(--site-readable-min, 0px), 11px)}.hero-photo{height:auto;min-height:620px;border-radius:0;background:#8e7d62;position:relative}.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:48% center}.photo-index{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;gap:15px;background:#30281fbd;color:#f6e7d1;padding:16px 23px;font-size:max(var(--site-readable-min, 0px), 9px);letter-spacing:.12em}.home main>section:not(.home-hero){padding:100px max(5%,calc((100% - 1200px)/2))}.home main>.top-information{background:#e9e2d7;padding-top:21px!important;padding-bottom:21px!important}.top-information-content{grid-template-columns:160px 1fr;gap:45px}.top-information-title .jp{font-family:"Yu Mincho",serif;font-size:19px;font-weight:400}.top-information-title .en{font-size:max(var(--site-readable-min, 0px), 9px)}.top-information-items li a{padding:7px 0;font-size:12px;gap:25px}.top-information-item-title{font-size:12px}.top-information-item-head{font-size:max(var(--site-readable-min, 0px), 11px)}.top-information-item-tag{background:transparent;border:1px solid #cabdad;border-radius:0;font-size:max(var(--site-readable-min, 0px), 9px)}.top-information-more{font-size:max(var(--site-readable-min, 0px), 10px)}.home main>.home-message{background:var(--paper);grid-template-columns:1fr 1fr;gap:55px 75px}.home-message h2{font-size:31px;line-height:1.9}.home-message .top-hero-comment{font-size:14px;line-height:2.3;padding-top:22px}.home-message .button{margin-top:10px}.space-gallery{grid-column:1/-1;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:22px;margin-top:10px}.space-gallery img{width:100%;height:260px;object-fit:cover}.space-gallery figure:first-child img{border-radius:120px 120px 0 0}.space-gallery figcaption,.message-photo figcaption,.about-photo figcaption,.access-building figcaption,.interior-strip figcaption{font-size:max(var(--site-readable-min, 0px), 10px);color:var(--muted);padding-top:10px;letter-spacing:.12em}.top-campaign{background:#eee8de}.top-campaign-title,.top-search-title,.top-clinic-title{font-size:33px;line-height:1.6;font-weight:400}.top-campaign-title .en,.top-search-title .en,.top-clinic-title .en{font-family:Arial,sans-serif;font-size:max(var(--site-readable-min, 0px), 10px);font-weight:400;letter-spacing:.18em}.top-campaign-title{min-width:270px}.top-campaign-head-comment{font-size:12px}.top-campaign-items{gap:22px}.top-campaign-item{border:0;border-radius:0;background:#f9f6f0;box-shadow:none}.top-campaign-item-image{height:185px;object-fit:cover!important;object-position:center 35%;background:#e6dbcd}.top-campaign-item-text{padding:24px 19px}.top-campaign-tag-items li{border:1px solid #d7ccbd;background:transparent;border-radius:0;font-size:max(var(--site-readable-min, 0px), 10px)}.top-campaign-item-title>.title{font-size:17px;font-weight:500;line-height:1.65}.top-campaign-item-title .sub{font-size:max(var(--site-readable-min, 0px), 11px)}.campaign .title{background:#e8ddce;color:#6c5138;border-radius:0}.campaign .price{font-family:Georgia,serif;font-size:29px;font-weight:400}.standard{font-size:12px}.top-campaign-item-more{font-size:max(var(--site-readable-min, 0px), 11px)}.top-campaign-more{font-size:12px;width:max-content;border-bottom:1px solid #84715d;padding:6px 22px;margin-top:32px}.top-search{background:var(--paper)}.top-search-title{text-align:left}.top-search-tab-items{justify-content:flex-start;border-bottom:1px solid var(--line);gap:0;margin:25px 0 38px}.top-search-tab-items li{border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;padding:13px 28px;min-width:180px}.top-search-tab-items li.active{background:none;border-color:#70543b;color:#70543b}.top-search-tab-item-title{margin:0;font-size:13px}.top-search-tab-item-title .en{font-size:max(var(--site-readable-min, 0px), 9px);margin-left:12px}.top-search-concerns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}.top-search-concerns-list{border-radius:0;padding:0;background:transparent}.top-search-concerns-title{font-family:"Yu Mincho",serif;font-size:18px;font-weight:400;border-bottom:1px solid #b7a58f;padding-bottom:16px}.top-search-concerns-list>img{border-radius:60px 60px 0 0;height:155px;width:100%;object-fit:cover;object-position:center 30%;margin-bottom:16px}.namelist a{font-size:12px;padding:12px 0}.top-clinic{background:#eae3d8}.top-clinic-title{text-align:left}.top-clinic-content{gap:60px}.top-clinic-image img{border-radius:0;aspect-ratio:1.3;object-fit:cover}.top-clinic-name{font-family:"Yu Mincho",serif;font-weight:400}.top-clinic-address{font-size:13px}.hours-table thead{background:#dfd3c2}.top-clinic-tel{font-family:Georgia,serif;font-size:31px}.home-social{background:var(--paper);gap:60px}.home-social h2{font-size:29px}.social-intro p:last-child{font-size:13px}.social-card{border-radius:0;background:transparent;box-shadow:none;min-height:170px;padding:25px 20px}.social-card:hover{box-shadow:none;background:#efe8dd}.social-card strong{font-size:15px;font-weight:400}.social-platform{font-size:max(var(--site-readable-min, 0px), 11px)}.site-footer{background:#332d27;color:#eee6da;padding-top:65px}.site-footer .brand-symbol{color:#dac5a6;border-color:#9f886b}.site-footer .brand-name{color:#eee6da}.site-footer p,.footer-nav{font-size:12px;color:#d2c5b6}.footer-nav{gap:14px 24px}.footer-phone{font-family:Georgia,serif;font-size:28px}.copyright{border-color:#594e42;color:#b6a898;font-size:max(var(--site-readable-min, 0px), 10px) !important}.page-heading{background:#e9e1d6;padding-top:26px;padding-bottom:44px;position:relative;overflow:hidden}.page-heading:after{content:'';position:absolute;right:8%;top:30px;width:100px;height:140px;border:1px solid #c6b396;border-radius:60px 60px 0 0;pointer-events:none}.page-heading h1{font-size:35px;font-weight:400;max-width:85%;position:relative;z-index:1}.breadcrumbs{font-size:max(var(--site-readable-min, 0px), 10px)}.inner main{max-width:1240px;margin:70px auto 90px;padding:0 40px}.inner .intro{gap:50px}.inner .intro>img{border-radius:120px 120px 2px 2px;max-height:430px;object-fit:cover;aspect-ratio:1/1}.inner .intro .lead{font-size:26px;font-weight:400}.inner .second-text p{font-size:14px;line-height:2.2}.marker{background:none;border-bottom:1px solid #baa181}.worry{border-radius:0;background:#ece5da;padding:32px 38px;border-left:2px solid #a4855e}.worry .ttl{font-family:"Yu Mincho",serif;font-weight:400}.worry li{font-size:13px}.price-tbl{border-radius:0;background:#fffdf8}.price-tbl th{background:#66523e;font-weight:400;font-size:17px}.price-tbl .ttl{background:#eee4d7}.price-tbl .sub{background:#f6f1e9}.price-tbl .price{font-size:18px;font-weight:400}.price-tbl td,.price-tbl th{padding:15px}.tab a,.link a,.route a{border-radius:0;border-color:#bba990;background:transparent;font-size:13px}.treatment-list{gap:28px}.treatment-list li{border-radius:0;background:#fffaf2;border:0}.treatment-list img{height:220px;object-fit:cover!important;object-position:center 35%}.treatment-list dt{font-family:"Yu Mincho",serif;font-size:21px;font-weight:400}.treatment-list dd{font-size:13px}.inner .campaign-list{gap:25px}.midashi01{border-bottom:1px solid var(--line);padding-bottom:26px}.midashi03{border-bottom:1px solid var(--line);padding-bottom:18px}.midashi03 .en{font-family:sans-serif;letter-spacing:.2em}.contact-handoff{border-radius:0;background:#e9e1d5;padding:45px}.sitemap-group{border-radius:0;background:#fdfaf5}.sitemap-group h3{font-family:"Yu Mincho",serif;font-weight:400}.map{border-radius:0}.wp_post_thum img{border-radius:0}.about-page .intro{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:65px;margin-bottom:65px}.about-page .intro h2{font-size:32px;line-height:1.95}.about-page .intro .en{font-family:Arial,sans-serif;font-size:max(var(--site-readable-min, 0px), 10px);display:block;margin-bottom:25px}.about-photo img{width:100%;height:425px;object-fit:cover;border-radius:170px 170px 0 0}.about-page .second>.second-text{max-width:850px;margin:0 auto 90px;padding-left:30px;border-left:1px solid #ae9678}.about-page .second-text br.pc{display:none}.about-page .message>li{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;align-items:center;padding:60px 0}.about-page .message>li:nth-child(even){grid-template-columns:1.15fr .85fr}.about-page .message>li:nth-child(even) .message-photo{order:2}.message-photo img{width:100%;height:340px;object-fit:cover}.about-page .message .lead{font-size:25px;line-height:1.85}.message-number{display:block;font-family:Georgia,serif;font-size:50px;font-weight:400;line-height:1;color:#aa8b64;margin-bottom:20px}.about-page .message p{font-size:13px;line-height:2.2}.close{border-radius:0;background:#e9e0d3;padding:50px 60px;margin-top:40px}.close p{font-size:14px;line-height:2.3}.close br.pc{display:none}.access-building{max-width:800px;margin:60px auto}.access-building img{width:100%}.illustration-note{max-width:1200px;margin:32px auto!important;padding:0 25px;font-size:max(var(--site-readable-min, 0px), 10px) !important;color:#786d62;line-height:1.7}.interior-strip{margin:65px 0 30px;border-top:1px solid var(--line);padding-top:30px}.interior-strip>div{display:grid;grid-template-columns:1fr 1fr;gap:24px}.interior-strip img{height:230px;object-fit:cover;width:100%}.interior-strip h2{font-size:22px}.clinic-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:65px 0}.clinic-gallery img{width:100%;height:260px;object-fit:cover}.clinic-gallery figcaption{font-size:max(var(--site-readable-min, 0px), 11px);margin-top:8px;color:var(--muted)}
@media(min-width:1500px){.home-hero{margin:25px auto 0}.hero-photo{min-height:660px}}
@media(max-width:1100px){.header-social{display:none}.header-actions{gap:15px}.site-header nav{gap:18px}.home-hero{grid-template-columns:1fr 1.12fr;min-height:550px}.hero-copy{padding:55px 28px 50px 9%}.home-hero h1{font-size:34px}.hero-photo{min-height:550px}.hero-buttons{flex-wrap:wrap}.top-campaign-items{grid-template-columns:repeat(2,minmax(0,1fr))}.top-campaign-item-image{height:230px}.home-message h2{font-size:27px}.about-page .intro h2{font-size:28px}.space-gallery img{height:230px}}
@media(max-width:760px){html{scroll-padding-top:90px}body{padding-bottom:80px}.header-inner{padding:14px 20px;flex-wrap:nowrap}.brand-symbol{width:34px;height:44px;font-size:28px!important}.brand-symbol>span{font-size:21px}.brand{gap:10px;min-width:0;flex:1}.brand-name{font-size:16px!important}.brand-name small{font-size:max(var(--site-readable-min, 0px), 10px)}.brand-name small span{font-size:max(var(--site-readable-min, 0px), 6px)}.header-actions{flex:none;margin:0}.header-actions>.button,.header-actions .phone{display:none}.menu-toggle{display:block;border:1px solid #c4b29b;border-radius:0;background:transparent;padding:9px 11px;font-size:max(var(--site-readable-min, 0px), 11px);line-height:1.5}.site-header nav{display:none}.site-header nav.open{display:grid;grid-template-columns:1fr 1fr;padding:18px 22px;gap:20px;font-size:12px;max-height:70dvh;overflow:auto}.site-header nav .nav-contact.sp{display:block}.home-hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:39px 25px 27px;order:2}.hero-copy .eyebrow{font-size:max(var(--site-readable-min, 0px), 9px);margin-bottom:16px}.home-hero h1{font-size:30px;line-height:1.7;white-space:normal;margin-bottom:17px}.hero-intro{font-size:12px;max-width:none;line-height:2.05}.hero-photo{order:1;width:100%;height:300px;min-height:0;border-radius:0}.hero-photo>img{height:100%;object-position:center}.photo-index{padding:10px 16px;font-size:max(var(--site-readable-min, 0px), 7px)}.hero-buttons{margin:13px 0 20px;flex-wrap:nowrap}.hero-buttons .button{font-size:max(var(--site-readable-min, 0px), 11px);padding:12px 13px;min-height:44px;gap:8px}.hero-hours{font-size:max(var(--site-readable-min, 0px), 10px);line-height:1.8}.home main>section:not(.home-hero){padding:55px 24px}.home main>.top-information{padding:21px 24px!important}.top-information-content{display:block}.top-information-head{display:flex}.top-information-title .jp{font-size:18px}.top-information-items li a{padding:10px 0}.top-information-item-title{font-size:12px}.top-information-item-head{font-size:max(var(--site-readable-min, 0px), 10px)}.home main>.home-message{display:block}.home-message h2{font-size:25px;line-height:1.9}.home-message .top-hero-comment{font-size:13px;padding-top:28px}.space-gallery{display:grid;grid-template-columns:1fr 1fr;gap:18px 14px;margin-top:33px}.space-gallery figure:first-child{grid-column:1/-1}.space-gallery figure:first-child img{height:280px;border-radius:110px 110px 0 0}.space-gallery img{height:160px}.space-gallery figcaption{font-size:max(var(--site-readable-min, 0px), 9px)}.top-campaign-head{display:block}.top-campaign-title,.top-search-title,.top-clinic-title{font-size:28px}.top-campaign-head-comment{font-size:12px}.top-campaign-title{margin-bottom:18px}.top-campaign-items,.inner .campaign-list{grid-template-columns:1fr;gap:23px}.top-campaign-item{display:grid;grid-template-columns:35% 65%}.top-campaign-item-image{height:100%;min-height:230px;object-position:center!important}.top-campaign-item-text{padding:20px 15px}.top-campaign-item-title>.title{font-size:16px}.top-campaign-item-title .sub{font-size:max(var(--site-readable-min, 0px), 10px)}.top-campaign-tag-items li{font-size:max(var(--site-readable-min, 0px), 9px)}.campaign .price{font-size:27px}.top-search-tab-items li{min-width:0;flex:1;padding:12px;font-size:12px}.top-search-tab-item-title{font-size:12px}.top-search-tab-item-title .en{font-size:max(var(--site-readable-min, 0px), 8px)}.top-search-concerns{grid-template-columns:1fr 1fr;gap:28px 18px}.top-search-concerns-list>img{height:135px;border-radius:45px 45px 0 0}.top-search-concerns-title{font-size:14px;margin-bottom:14px;padding-bottom:12px}.namelist a{font-size:max(var(--site-readable-min, 0px), 11px);line-height:1.8}.top-clinic-content{display:block}.top-clinic-image{margin-bottom:30px}.top-clinic-image img{aspect-ratio:1.5}.top-clinic-name{font-size:19px}.hours-table{min-width:300px;font-size:max(var(--site-readable-min, 0px), 11px)}.top-clinic-tel{font-size:28px}.home-social{display:block}.social-links{margin-top:25px;grid-template-columns:1fr}.social-card{min-height:140px;gap:12px}.social-card strong{font-size:15px}.site-footer{padding:45px 24px 30px}.footer-grid{display:block}.footer-nav{margin-top:35px;font-size:max(var(--site-readable-min, 0px), 11px)}.footer-grid .brand{margin-bottom:28px}.mobile-book{position:fixed;display:grid;bottom:0;left:0;right:0;border-radius:0;grid-template-columns:.9fr 1.4fr 42px 42px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));gap:6px;background:#f8f5effa;border-top:1px solid #d1c5b6;box-shadow:0 -4px 22px #332d2712;z-index:40}.mobile-book a{height:44px;min-height:44px;border-radius:2px!important;font-size:12px}.mobile-book .mobile-phone{border-color:#b49a7d;color:#463727;background:transparent}.mobile-book .mobile-line{background:#71583e;border-color:#71583e}.mobile-book .mobile-line img{width:29px;height:29px}.mobile-book .mobile-social,.mobile-book a:last-child{width:42px;height:44px;background:transparent;border-color:#d8cbb9}.mobile-book .mobile-instagram img{width:23px;height:23px}.mobile-book .mobile-youtube img{width:31px;height:auto}.page-heading{padding:23px 24px 32px}.page-heading h1{font-size:27px;max-width:93%}.page-heading:after{right:20px;top:50px;width:65px;height:95px;opacity:.5}.breadcrumbs{font-size:max(var(--site-readable-min, 0px), 9px);margin-bottom:16px}.inner main{padding:0 24px;margin:38px auto 55px}.inner .intro{display:flex;flex-direction:column;gap:27px}.inner .intro>img{width:100%;height:280px;max-height:none;aspect-ratio:auto;border-radius:90px 90px 0 0;object-position:center 33%}.inner .intro .lead{font-size:22px}.inner .second-text p{font-size:13px}.worry{padding:25px 22px}.worry .ttl{font-size:18px}.price-tbl .price{font-size:16px}.price-tbl td,.price-tbl th{padding:13px 9px}.price-tbl th{font-size:15px}.tab a,.link a{padding:12px 17px;font-size:12px}.treatment-list{grid-template-columns:1fr;gap:23px}.treatment-list a{display:grid;grid-template-columns:35% 65%}.treatment-list img{height:100%;min-height:160px}.treatment-list dt{font-size:18px}.treatment-list dd{font-size:12px}.treatment-list dl{padding:19px 15px}.about-page .intro{display:flex;gap:26px}.about-page .intro h2{font-size:25px;line-height:1.9}.about-photo{width:100%}.about-photo img{height:310px;border-radius:110px 110px 0 0}.about-page .second>.second-text{padding-left:19px;margin-bottom:40px}.about-page .message>li,.about-page .message>li:nth-child(even){display:flex;flex-direction:column;gap:27px;padding:35px 0}.about-page .message>li:nth-child(even) .message-photo{order:0}.message-photo{width:100%}.message-photo img{height:240px}.about-page .message .lead{font-size:22px}.message-number{font-size:39px;margin-bottom:16px}.about-page .message p{font-size:13px}.close{padding:30px 24px;margin-top:25px}.close p{font-size:13px}.interior-strip>div{gap:13px}.interior-strip img{height:150px}.interior-strip h2{font-size:20px}.clinic-gallery{grid-template-columns:1fr 1fr;gap:23px 14px;margin:35px 0}.clinic-gallery img{height:170px}.clinic-gallery figcaption{font-size:max(var(--site-readable-min, 0px), 10px)}.pc{display:none}.sp{display:block}.top-information-more.sp{margin-top:10px}br.sp{display:inline}.sitemap-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Readability and simple mobile booking */
.hero-intro{font-size:14px}.inner .second-text p,.about-page .message p,.close p{font-size:15px}.home-message .top-hero-comment{font-size:15px}.philosophy-quote{grid-column:1/-1;font-family:"Yu Mincho",serif;font-size:21px;line-height:1.9;text-align:center;padding:25px 0 0;color:#6c5138}.mobile-price{border:1px solid #b49a7d!important;color:#463727!important;background:transparent!important}.mobile-book .mobile-line{width:auto!important;border-radius:2px!important}.inner .illustration-note{margin-top:45px!important}.site-header .brand-name small span{font-family:Arial,sans-serif}
@media(max-width:760px){.hero-photo{height:245px}.hero-copy{padding:30px 24px 26px}.hero-intro{font-size:14px;line-height:2}.hero-copy .eyebrow{margin-bottom:14px}.home-hero h1{font-size:29px}.hero-hours{font-size:max(var(--site-readable-min, 0px), 11px)}.hero-buttons .button{font-size:12px;padding:12px 14px}.mobile-book{grid-template-columns:1fr 1fr 1.45fr;gap:7px}.mobile-book a{font-size:13px}.mobile-book .mobile-line{background:#71583e!important;color:white!important;border-color:#71583e!important}.home-message .top-hero-comment,.inner .second-text p,.about-page .message p,.close p{font-size:15px;line-height:2.05}.hero-buttons{margin-top:12px}.top-campaign-head-comment{font-size:14px}.top-information-item-title{font-size:13px}.top-information-item-head{font-size:max(var(--site-readable-min, 0px), 11px)}.namelist a{font-size:13px;min-height:44px}.treatment-list dd{font-size:14px}.top-campaign-item-title .sub{font-size:12px}.top-campaign-tag-items li{font-size:max(var(--site-readable-min, 0px), 11px)}.top-search-concerns{grid-template-columns:1fr}.top-search-concerns-list{display:grid;grid-template-columns:94px 1fr;gap:0 19px}.top-search-concerns-title{grid-column:1/-1;font-size:18px;margin-bottom:15px}.top-search-concerns-list>img{height:125px;border-radius:48px 48px 0 0}.top-search-concerns-list .namelist{margin-top:-8px}.top-clinic-address,.social-intro p:last-child{font-size:14px}.top-search-tab-items li{padding:12px 6px}.philosophy-quote{font-size:18px;padding:20px 0}.interior-strip figcaption{font-size:max(var(--site-readable-min, 0px), 11px)}.page-heading .breadcrumbs{font-size:max(var(--site-readable-min, 0px), 11px)}.footer-nav{font-size:13px}.site-footer p{font-size:13px}}
.about-page .intro h2 .phrase{display:inline-block}.about-page .intro h2{line-height:1.8}@media(max-width:760px){.about-page .intro h2{font-size:24px;line-height:1.85}}
.duplicate-heading{border:0;padding:0;margin:0 0 25px!important}.duplicate-heading .jp{display:none}.duplicate-heading .en{font-family:Arial,sans-serif;font-size:max(var(--site-readable-min, 0px), 11px) !important;color:#8d7458;text-transform:uppercase;letter-spacing:.18em}


/* Source: refinement.css; original cascade order retained. */
/* V2 — clinic ivory, pearl greige, champagne; clear category navigation. */
:root{--ink:#454747;--muted:#767872;--green:#858271;--pale:#f4f2ed;--line:#e4e1da;--orange:#9e8763;--paper:#fffefd;--dark:#555851}
body{background:#fffefd;color:#454747}.site-header{background:#fffffffa;border-color:#ebe8e1;backdrop-filter:blur(12px)}.header-inner{padding-top:15px;padding-bottom:15px}.brand-symbol{color:#9d937c;border-color:#c5bda9}.brand-name{color:#545650}.phone{color:#585b55}.site-header nav{border-top:1px solid #f0eee9}.site-header nav a:hover,.site-header nav a[aria-current=page]{color:#8d7e62}.button{border-radius:6px}.primary,.header-actions>.branded-line{background:#8a8878;border-color:#8a8878;color:white}.primary:hover,.header-actions>.branded-line:hover{background:#737568}.secondary{border-color:#cfc9b9;background:white;color:#64665e}.secondary:hover{background:#f2f1eb;color:#4a5149}.home-hero{max-width:1440px;margin:0 auto;grid-template-columns:1fr 1.16fr;min-height:590px;background:#f6f5f0;color:#4d514b;overflow:hidden}.hero-copy{padding:55px 40px 48px 11%;position:relative;background:linear-gradient(120deg,#fcfbf7,#f6f5f0)}.hero-copy .eyebrow{color:#9b917b;font-size:max(var(--site-readable-min, 0px), 11px)}.home-hero h1{font-size:max(var(--site-readable-min, 0px), clamp(33px,3.4vw,47px));line-height:1.7;letter-spacing:.01em;color:#4a4e48}.home-hero h1 span{color:#968767;background:none}.hero-intro{color:#686d65;font-size:14px;line-height:2.1}.hero-buttons .primary{background:#8c8b79;color:#fff;border-color:#8c8b79}.hero-buttons .secondary{color:#6a6c63;background:#fff;border-color:#cdc8b8}.hero-buttons .secondary:hover{background:#f0eee5}.hero-hours{color:#7f8175}.hero-photo{min-height:590px;background:#f5f5f0;overflow:visible}.hero-photo>.hero-model{width:100%;height:100%;object-fit:cover;object-position:38% center}.hero-space{position:absolute;bottom:26px;right:25px;width:240px;border:6px solid white;border-radius:6px;overflow:hidden;box-shadow:0 8px 26px #55544416;background:white}.hero-space img{display:block;width:100%;height:132px;object-fit:cover}.hero-space figcaption{color:#696c60;font-size:max(var(--site-readable-min, 0px), 9px);padding:6px 3px;text-align:center;letter-spacing:.05em}.quick-nav{display:grid;grid-template-columns:repeat(4,1fr);max-width:1150px;margin:28px auto;padding:0 24px;gap:14px}.quick-nav a{border:1px solid #e3dfd4;border-radius:8px;padding:19px 20px;display:flex;align-items:center;gap:16px;background:#fff;box-shadow:0 2px 8px #514b4211;font-size:14px;color:#62665d}.quick-nav a:hover{background:#f8f6f0;border-color:#b5ad95}.quick-nav svg{width:35px;height:35px;color:#a89b7a;flex:none}.quick-nav b{font-size:20px;font-weight:400;margin-left:auto;color:#9a988b}.home main>.top-information{background:#f8f7f3;padding-top:18px!important;padding-bottom:18px!important}.top-information-item-tag{background:white;border-color:#e7e1d5;border-radius:3px;color:#8d8677}.top-information-content{gap:30px}.home main>section:not(.home-hero){padding-top:75px;padding-bottom:75px}.top-search-title,.top-campaign-title,.top-clinic-title{font-size:30px;color:#555c52}.top-search{background:white}.top-search-tab-items{border:0;gap:12px;margin:25px 0 32px}.top-search-tab-items li{background:#f4f3ef;border:1px solid #e3e0d7;border-radius:6px;color:#7d7e72;min-width:230px}.top-search-tab-items li.active{background:#8c8d7d;color:#fff;border-color:#8c8d7d}.top-search-tab-items li.active .en{color:#f2f3ec}.top-search-concerns{gap:22px}.top-search-concerns-list{padding:22px 18px;border:1px solid #ece9e1;border-radius:10px;background:#fcfbf8}.top-search-concerns-title{font-family:"Hiragino Kaku Gothic ProN",sans-serif;font-size:17px;font-weight:500;border-bottom:1px solid #dfd9cb;padding-bottom:14px;color:#646859}.top-search-concerns-list>img{height:145px;border-radius:8px;object-fit:cover;object-position:center 30%}.namelist li{border-color:#e8e4da}.namelist a{font-size:13px}.top-campaign{background:#f8f6f0}.top-campaign-head-comment{color:#717569}.top-campaign-item{border-radius:8px;background:white;box-shadow:0 3px 16px #615c480a;border:1px solid #ece8dd}.top-campaign-items{gap:20px}.top-campaign-item-image{height:175px;object-fit:cover!important;object-position:center!important}.top-campaign-item-image.device-composite{object-fit:contain!important;background:#fbfbf8}.top-campaign-item-text{padding:22px 18px}.top-campaign-tag-items li{border:0;background:#f3f1e9;border-radius:3px;color:#8b8069;font-size:max(var(--site-readable-min, 0px), 11px)}.campaign .price{color:#a28a62}.campaign .title{background:#f4ecdb;color:#937f5e;border-radius:3px}.top-campaign-item-title>.title{font-size:17px;font-weight:500;color:#4f584c}.top-campaign-item-more{color:#92927a}.top-campaign-more{border-color:#b9b4a1}.home main>.home-message{background:#fff}.home-message h2{font-size:29px;color:#606558}.eyebrow,.en{color:#a3967a}.space-gallery img{border-radius:8px}.space-gallery figure:first-child img{border-radius:70px 70px 8px 8px}.philosophy-quote{color:#97927d}.top-clinic{background:#f7f5ef}.top-clinic-image img{border-radius:8px}.hours-table thead{background:#eeeade}.hours-table td,.hours-table th{border-color:#e4dece}.home-social{background:#fff}.social-card{border-radius:8px;border-color:#e4dfd3;background:#fcfbf8}.social-card:hover{background:#f5f2e9}.site-footer{background:#edede6;color:#646b60}.site-footer .brand-name{color:#646b60}.site-footer .brand-symbol{color:#a39980;border-color:#bdb49b}.site-footer p,.footer-nav{color:#777b71}.copyright{color:#8a8d82;border-color:#d9d9cb}.page-heading{background:linear-gradient(100deg,#f4f1e8,#fbfaf6);border-bottom:1px solid #eee9dc}.page-heading:after{border-color:#e4ddca;opacity:.75}.page-heading h1{color:#5e6359}.breadcrumbs{color:#979887}.inner .intro>img{border-radius:10px}.inner .intro.with-device{display:grid;grid-template-columns:.95fr 1.05fr;gap:45px;align-items:start}.inner .intro.with-device>img{width:100%;height:auto;aspect-ratio:5/3;max-height:none;border-radius:8px;object-fit:contain;background:#fafaf6;margin-top:10px}.device-feature{position:relative;min-width:0}.device-feature>img{display:block;width:100%;height:360px;object-fit:cover;border-radius:8px}.device-feature figcaption{font-size:max(var(--site-readable-min, 0px), 11px);color:#888b7f;padding:10px 2px}.device-feature.machine-caresys>img{object-position:85% 80%;height:430px}.device-feature.machine-density>img{object-position:right center}.device-feature.machine-neovoir>img{object-position:right center}.device-feature.machine-ruby>img{height:430px;object-position:25% 65%}.device-feature.machine-gentle>img{object-position:right center}.device-card-photo{overflow:hidden;position:relative;height:185px;background:#fafaf6}.device-card-photo img{width:100%;height:100%;object-fit:cover!important;max-width:none}.device-card-photo.machine-caresys img{transform:scale(1.7);transform-origin:78% 83%;object-position:70% 85%}.device-card-photo.machine-density img{transform:scale(1.8);transform-origin:85% 67%;object-position:85% 67%}.device-card-photo.machine-neovoir img{transform:scale(1.65);transform-origin:84% 62%;object-position:right 60%}.device-card-photo.machine-gentle img{transform:scale(1.55);transform-origin:83% 65%;object-position:right 60%}.device-card-photo.machine-ruby img{transform:scale(1.3);transform-origin:23% 62%;object-position:23% 65%}.equipment-section{background:#faf9f5}.section-heading{text-align:center;margin-bottom:30px}.section-heading .eyebrow{margin-bottom:12px}.section-heading h2{font-size:29px;font-weight:400;color:#626858}.equipment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.equipment-card{background:white;border:1px solid #e9e5d9;border-radius:8px;overflow:hidden}.equipment-card>span{display:flex;justify-content:space-between;align-items:center;padding:15px 18px;font-size:14px;color:#737a67}.equipment-card b{font-weight:400}.worry{background:#f6f4ed;border-radius:8px;border-left:3px solid #c5ba9b}.worry .ttl{color:#7a816c}.price-tbl{border-radius:6px;border-color:#e6e0d1}.price-tbl th{background:#a4a18b;color:white}.price-tbl .ttl{background:#f0ecdf;color:#717963}.price-tbl .sub{background:#faf8f1}.price-tbl td,.price-tbl th{border-color:#e7e1d2}.midashi01,.midashi03{border-color:#dfd8c7}.tab a,.link a,.route a{border-radius:5px;border-color:#ded5bf}.tab .current a,.link li:last-child a{background:#959580;color:white}.treatment-list li{background:#fdfcf8;border:1px solid #ebe5d7;border-radius:8px}.treatment-list img{height:215px}.treatment-list .device-composite{object-fit:contain!important;background:#fdfcf8}.treatment-list .device-card-photo{height:215px}.treatment-list .device-card-photo img{height:100%}.treatment-list dt{color:#666c5c}.marker{border-color:#c7bc9f}.close{border-radius:8px;background:#f6f3e9}.message-number{color:#bdb08f}.about-photo img{border-radius:90px 90px 8px 8px}.contact-handoff{background:#f6f3e9;border-radius:8px}.sitemap-group{background:#fdfcf8;border-radius:8px}.clinic-gallery img,.message-photo img,.interior-strip img{border-radius:8px}.mobile-book{background:#fffffffa;border-color:#e7e1d2}.mobile-book .mobile-phone,.mobile-price{border-color:#d3c8ac!important;color:#817d6a!important;background:#fdfbf7!important}.mobile-book .mobile-line{background:#98937c!important;border-color:#98937c!important}.menu-toggle{border-color:#d8d1bc;border-radius:5px;color:#8a8674;background:#fdfcf8}
@media(max-width:1100px){.home-hero{grid-template-columns:1fr 1.1fr;min-height:540px}.hero-photo{min-height:540px}.home-hero h1{font-size:36px}.hero-copy{padding-left:8%;padding-right:25px}.hero-space{width:180px;right:16px;bottom:20px}.hero-space img{height:100px}.equipment-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.header-inner{padding:13px 20px}.home-hero{display:flex;flex-direction:column;min-height:0;background:#fbfaf6}.hero-photo{order:0;min-height:0;height:265px;border-radius:0}.hero-photo>.hero-model{object-position:35% 24%}.hero-space{width:120px;right:12px;bottom:12px;border-width:4px;box-shadow:0 4px 14px #74706014}.hero-space img{height:64px}.hero-space figcaption{font-size:max(var(--site-readable-min, 0px), 6px);padding:4px 0}.hero-copy{order:1;padding:29px 24px 27px;background:#fbfaf6}.hero-copy .eyebrow{font-size:max(var(--site-readable-min, 0px), 9px);margin-bottom:14px}.home-hero h1{font-size:29px;line-height:1.65;margin-bottom:20px}.hero-intro{font-size:14px;line-height:1.95}.hero-buttons{margin:10px 0 19px;gap:8px}.hero-buttons .button{font-size:12px;padding:12px 13px}.hero-hours{font-size:max(var(--site-readable-min, 0px), 11px)}.quick-nav{grid-template-columns:1fr 1fr;gap:10px;margin:20px auto;padding:0 20px}.quick-nav a{padding:13px 12px;gap:9px;font-size:13px;min-height:63px;border-radius:7px}.quick-nav svg{width:29px;height:29px}.quick-nav b{font-size:18px}.home main>section:not(.home-hero){padding-top:48px;padding-bottom:48px}.top-search-title,.top-campaign-title,.top-clinic-title{font-size:26px}.top-search-tab-items{gap:8px}.top-search-tab-items li{min-width:0;flex:1;padding:13px 5px}.top-search-tab-item-title{font-size:12px}.top-search-tab-item-title .en{font-size:max(var(--site-readable-min, 0px), 8px);margin-left:5px}.top-search-concerns{grid-template-columns:1fr;gap:16px}.top-search-concerns-list{display:grid;grid-template-columns:84px 1fr;gap:0 15px;padding:19px 16px}.top-search-concerns-title{font-size:16px;padding-bottom:12px;margin-bottom:17px}.top-search-concerns-list>img{height:105px;border-radius:6px}.top-search-concerns-list .namelist{margin-top:-8px}.namelist a{font-size:12px;min-height:42px}.top-campaign-item{display:flex;flex-direction:column;border-radius:8px}.top-campaign-item-image{height:190px;min-height:0;width:100%;object-fit:cover!important}.top-campaign-item-image.device-composite{object-fit:contain!important}.top-campaign-item .device-card-photo{height:190px;flex:none}.top-campaign-item .device-card-photo img{min-height:0}.top-campaign-item-text{padding:21px}.top-campaign-item-title>.title{font-size:19px}.top-campaign-item-title .sub{font-size:13px}.top-campaign-item-more{font-size:13px}.top-campaign-head-comment{font-size:14px}.top-campaign-items{gap:20px}.equipment-grid{grid-template-columns:1fr 1fr;gap:15px}.equipment-card .device-card-photo{height:160px}.equipment-card>span{padding:12px 10px;font-size:12px}.section-heading h2{font-size:25px}.home-message h2{font-size:25px}.home-message .top-hero-comment{font-size:15px}.space-gallery figure:first-child img{border-radius:70px 70px 8px 8px}.space-gallery img{border-radius:6px}.site-footer{padding-bottom:35px}.page-heading{padding:24px 24px 32px}.page-heading h1{font-size:25px}.inner .intro.with-device{display:flex;flex-direction:column;gap:23px}.inner .intro.with-device>img{width:100%;height:auto;aspect-ratio:5/3;border-radius:8px;object-fit:contain;margin-top:0}.device-feature{width:100%}.device-feature>img{height:280px}.device-feature.machine-caresys>img{height:330px}.device-feature.machine-ruby>img{height:340px}.treatment-list a{display:flex;flex-direction:column}.treatment-list img{width:100%;height:190px;min-height:0;object-fit:cover!important}.treatment-list .device-composite{object-fit:contain!important}.treatment-list .device-card-photo{width:100%;height:190px}.treatment-list .device-card-photo img{height:100%}.treatment-list dl{padding:20px}.treatment-list dt{font-size:20px}.treatment-list dd{font-size:14px}.worry{padding:25px 22px}.about-page .intro h2{font-size:24px}.about-photo img{border-radius:85px 85px 8px 8px}.mobile-book .mobile-line{background:#96937c!important;color:white!important;border-color:#96937c!important}.mobile-book a{border-radius:5px!important}.top-clinic-image img{border-radius:8px}.duplicate-heading{margin-bottom:20px!important}.close p{font-size:15px}.social-card{background:#fcfbf7}.clinic-gallery{gap:22px 14px}}
.device-card-photo.machine-caresys img{transform:scale(1.6) translateY(-13%);transform-origin:53% 75%;object-position:center!important}.device-feature.machine-caresys>img{object-position:53% center;height:340px}


/* Source: editorial.css; original cascade order retained. */
/* V3: airy editorial composition with a complete facial/body directory. */
:root{--ink:#414743;--muted:#747970;--line:#e3e5dd;--paper:#fff;--green:#757d6d}body{background:#fff;color:var(--ink)}a:hover{color:#697661}a:focus-visible,button:focus-visible,[role=tab]:focus-visible{outline-color:#737e69}.header-inner{padding-top:12px;padding-bottom:12px}.site-header nav{padding-top:9px;padding-bottom:9px}.site-header .brand-symbol{border-color:#aab09f;color:#798170}.site-header nav a{font-size:12px}.primary,.header-actions>.branded-line{background:#737d69;border-color:#737d69}.home-hero{display:block;position:relative;max-width:1600px;min-height:560px;height:560px;background:#f5f5ef;margin:20px 28px 0;border-radius:3px;isolation:isolate}.hero-photo{position:absolute;inset:0;min-height:0;width:100%;height:100%;z-index:-2}.hero-photo>.hero-model{width:100%;height:100%;object-fit:cover;object-position:center 44%}.home-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f8f8f1e8 0%,#f8f8f1a6 28%,#f8f8f100 58%);z-index:-1}.hero-copy{width:52%;height:100%;padding:42px 0 42px 6%;background:none;justify-content:center}.hero-copy .eyebrow{font-size:max(var(--site-readable-min, 0px), 10px);letter-spacing:.22em;color:#848a7a}.home-hero h1{font-size:max(var(--site-readable-min, 0px), clamp(32px,3.7vw,52px));line-height:1.6;color:#414b42;margin:12px 0 22px;letter-spacing:.07em}.home-hero h1 span{color:#828971}.hero-intro{max-width:345px;color:#646d60;font-size:13px;line-height:2}.hero-buttons{margin:17px 0}.hero-buttons .primary{background:#737d69;border-color:#737d69}.hero-buttons .secondary{background:#ffffffaa;border-color:#b7bead}.hero-hours{font-size:max(var(--site-readable-min, 0px), 10px)}.button{border-radius:2px}.clinic-ribbon{max-width:1224px;margin:28px auto 0;display:grid;grid-template-columns:.75fr 1.2fr 1.2fr 1.2fr;gap:14px;padding:0 28px}.clinic-ribbon figure{margin:0;position:relative;overflow:hidden}.clinic-ribbon img{width:100%;height:150px;object-fit:cover;filter:brightness(1.07) saturate(.82);display:block;transition:transform .5s}.clinic-ribbon figure:hover img{transform:scale(1.035)}.clinic-ribbon figcaption{position:absolute;bottom:10px;left:13px;color:white;letter-spacing:.18em;font-size:max(var(--site-readable-min, 0px), 9px);text-shadow:0 1px 5px #222}.ribbon-caption{padding:8px 0;display:flex;flex-direction:column;justify-content:space-between}.ribbon-caption>span{font-size:max(var(--site-readable-min, 0px), 9px);letter-spacing:.19em;color:#939c88}.ribbon-caption p{font-family:"Yu Mincho",serif;font-size:18px;line-height:1.6;margin:7px 0}.ribbon-caption a{font-size:max(var(--site-readable-min, 0px), 11px);color:#7d8672}.ribbon-caption b{margin-left:16px}.quick-nav{box-shadow:none;max-width:1224px;margin:25px auto 30px;gap:0}.quick-nav a{border:0;border-right:1px solid #e1e4db;border-radius:0;box-shadow:none;justify-content:center;padding:12px}.quick-nav a:last-child{border-right:0}.quick-nav b{margin-left:10px}.quick-nav svg{width:29px;height:29px;color:#8c9781}.home main>.top-information{background:white;border-top:1px solid #eef0e9;border-bottom:1px solid #eef0e9}.home main>section:not(.home-hero){padding-top:88px;padding-bottom:88px}.top-search-title,.top-campaign-title,.top-clinic-title{font-size:34px;letter-spacing:.1em;color:#46513f}.top-search-title .en,.top-campaign-title .en,.top-clinic-title .en{letter-spacing:.25em;color:#94a08a}.category-gateway{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:35px 0}.category-gateway a{position:relative;display:grid;grid-template-columns:1fr auto;gap:4px;background:#f4f5ef;border:1px solid #e7eadf;padding:24px 30px}.category-gateway a:nth-child(2){background:#f6f3ee;border-color:#ece6dc}.category-gateway span{font-family:Arial,sans-serif;font-size:max(var(--site-readable-min, 0px), 10px);letter-spacing:.18em;color:#8b957e;grid-column:1}.category-gateway strong{font-family:"Yu Mincho",serif;font-size:30px;font-weight:400;grid-column:1}.category-gateway small{font-size:max(var(--site-readable-min, 0px), 11px);color:#92978b;grid-column:1}.category-gateway b{grid-column:2;grid-row:1/4;align-self:center;font-size:27px;font-weight:400;color:#89937d}.top-search-tab-items{gap:0;border-bottom:1px solid #dce1d4;margin-top:42px}.top-search-tab-items li{background:none;border:0;border-bottom:2px solid transparent;border-radius:0;padding:16px 30px}.top-search-tab-items li.active{background:none;border-color:#758268;color:#59634f}.top-search-tab-items li.active .en{color:#8a947f}.top-search-concerns-list{background:white;border:0;border-radius:0;padding:0}.top-search-concerns-list>img{height:178px;border-radius:3px;filter:saturate(.75)}.top-search-concerns-title{font-size:17px;color:#5e6755;font-weight:400}.namelist a{font-size:13px;line-height:1.8;padding:13px 0}.search-panel:has(.menu-directory){display:grid;grid-template-columns:1fr 1fr;gap:34px}.search-panel[hidden]{display:none!important}.directory-heading{position:relative;display:flex;align-items:center;background:#f4f5ef;overflow:hidden;min-height:150px}.directory-heading img{width:52%;height:170px;object-fit:cover;object-position:right}.directory-heading>div{padding:12px 20px}.directory-heading span{font-size:max(var(--site-readable-min, 0px), 10px);letter-spacing:.18em;color:#939c87}.directory-heading h3{font-size:25px;margin:3px 0 8px}.directory-heading a{font-size:max(var(--site-readable-min, 0px), 11px);border-bottom:1px solid #adb6a0;padding-bottom:4px}.menu-directory .namelist{display:grid;grid-template-columns:1fr;gap:0}.menu-directory .namelist li{margin:0}.top-campaign{background:#f5f6f1}.top-campaign-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.top-campaign-item{display:grid;grid-template-columns:43% 57%;border:1px solid #e7e9df;border-radius:3px;box-shadow:none;overflow:hidden}.top-campaign-item-image,.top-campaign-item .device-card-photo{width:100%;height:100%;min-height:260px}.top-campaign-item-image{object-fit:cover!important}.top-campaign-item-image.device-composite{object-fit:cover!important;object-position:70% center!important}.top-campaign-item-text{padding:26px 22px}.top-campaign-item-title>.title{font-size:18px}.campaign .price{color:#798566;font-size:31px}.campaign .title{background:#eef1e5;color:#7f8b6b}.top-campaign-tag-items li{background:#f2f4eb;color:#858f76}.home-message h2{font-size:32px;line-height:1.85;color:#57634d}.space-gallery{grid-template-columns:1.5fr 1fr 1fr;gap:18px}.space-gallery img,.space-gallery figure:first-child img{border-radius:2px;height:280px;filter:brightness(1.06) saturate(.85)}.philosophy-quote{color:#87947a;border-top:1px solid #e3e8db;margin-top:25px;padding-top:35px}.equipment-section{background:#f7f8f3}.equipment-card{border-radius:2px;border-color:#e2e7d9}.equipment-card .device-card-photo{height:210px}.equipment-card>span{color:#67765b}.section-heading h2{color:#59664f}.top-clinic{background:#f1f4ed}.site-footer{background:#edf0e7}.page-heading{background:#f5f7f0;border-color:#e6eadf}.page-heading h1{color:#505e45}.page-heading:after{border-color:#d6dfcc}.treatment-list{gap:30px;grid-template-columns:repeat(3,minmax(0,1fr))}.treatment-list li{border:1px solid #e5e9df;border-radius:3px;background:#fff;overflow:hidden;transition:box-shadow .25s,transform .25s}.treatment-list li:hover{transform:translateY(-3px);box-shadow:0 10px 30px #52634212}.treatment-list a{position:relative;display:flex;flex-direction:column;height:100%}.treatment-number{position:absolute;z-index:2;top:12px;left:12px;background:#ffffffef;border-radius:50%;width:29px;height:29px;display:grid;place-items:center;font:11px Georgia,serif;font-size:max(var(--site-readable-min, 0px), 11px);color:#7a876c}.treatment-list img,.treatment-list .device-card-photo{height:210px;width:100%;border-radius:0}.treatment-list dl{padding:23px}.treatment-list dt{font-size:21px;color:#5e6c51}.treatment-list dd{font-size:13px;line-height:1.9;color:#7b8274}.tab{gap:0;border-bottom:1px solid #dfe6d6}.tab a{border:0;border-radius:0;padding:15px 32px;background:#f6f7f2}.tab .current a{background:#7c896e}.price-tbl th{background:#8d9a7f}.price-tbl .ttl{background:#edf1e6;color:#637454}.price-tbl td,.price-tbl th{border-color:#e1e6d8}.worry{background:#f5f7ee;border-color:#abb99a}.mobile-book .mobile-line{background:#758469!important;border-color:#758469!important}.mobile-book .mobile-phone,.mobile-price{color:#6c7b5f!important;border-color:#c1cbb6!important}.clinic-gallery img,.interior-strip img,.about-photo img,.message-photo img{filter:brightness(1.04) saturate(.87)}
@media(min-width:1600px){.home-hero{margin-left:auto;margin-right:auto}}
@media(max-width:1000px){.home-hero{margin:15px 18px 0;height:530px;min-height:530px}.hero-copy{width:55%;padding-left:5%}.home-hero h1{font-size:36px}.treatment-list{grid-template-columns:1fr 1fr}.top-campaign-item{display:flex}.top-campaign-item-image,.top-campaign-item .device-card-photo{height:220px;min-height:220px}.top-campaign-item-image.device-composite{object-fit:contain!important}.clinic-ribbon img{height:130px}.ribbon-caption p{font-size:15px}}
@media(max-width:760px){.header-inner{padding:12px 20px}.home-hero{margin:0;min-height:0;height:auto;padding-top:285px;background:#f7f8f2;overflow:hidden;display:block}.hero-photo{height:310px;min-height:0;position:absolute;top:0;left:0;right:0}.hero-photo>.hero-model{object-position:73% center;object-fit:cover}.home-hero:after{inset:240px 0 auto;height:70px;background:linear-gradient(0deg,#f7f8f2,#f7f8f200)}.hero-copy{width:100%;height:auto;padding:18px 24px 27px;background:#f7f8f2}.hero-copy .eyebrow{font-size:max(var(--site-readable-min, 0px), 8px);margin-bottom:10px}.home-hero h1{font-size:31px;line-height:1.55;margin:5px 0 15px;letter-spacing:.035em}.hero-intro{font-size:13px;max-width:none;line-height:1.9}.hero-buttons{margin:13px 0 12px}.hero-hours{font-size:max(var(--site-readable-min, 0px), 10px);margin:0}.clinic-ribbon{margin:22px 0 0;padding:0 20px;grid-template-columns:1fr 1fr;gap:12px}.ribbon-caption{padding:3px 0}.ribbon-caption p{font-size:17px}.clinic-ribbon img{height:135px}.clinic-ribbon figure:nth-child(3),.clinic-ribbon figure:nth-child(4){display:none}.quick-nav{padding:0 20px;margin:23px auto;gap:10px;grid-template-columns:1fr 1fr}.quick-nav a{justify-content:flex-start;border:1px solid #e1e6d8;padding:11px 12px;font-size:12px;min-height:54px}.quick-nav a:last-child{border-right:1px solid #e1e6d8}.quick-nav svg{width:24px;height:24px}.quick-nav b{margin-left:auto}.home main>section:not(.home-hero){padding-top:52px;padding-bottom:52px}.top-search-title,.top-campaign-title,.top-clinic-title{font-size:27px}.category-gateway{gap:12px;margin:25px 0}.category-gateway a{padding:18px 14px;gap:7px}.category-gateway span{font-size:max(var(--site-readable-min, 0px), 8px)}.category-gateway strong{font-size:21px;white-space:nowrap}.category-gateway small{display:none}.category-gateway b{font-size:18px}.top-search-tab-items{margin-top:30px}.top-search-tab-items li{padding:13px 4px}.top-search-concerns{gap:26px}.top-search-concerns-list{grid-template-columns:85px 1fr;gap:0 17px}.top-search-concerns-list>img{height:116px}.search-panel:has(.menu-directory){grid-template-columns:1fr;gap:32px}.directory-heading img{height:150px}.directory-heading h3{font-size:25px}.top-campaign-items{grid-template-columns:1fr;gap:22px}.top-campaign-item{display:grid;grid-template-columns:40% 60%}.top-campaign-item-image,.top-campaign-item .device-card-photo{height:100%;min-height:255px}.top-campaign-item-image.device-composite{object-fit:cover!important;object-position:68% center!important}.top-campaign-item-text{padding:21px 16px}.top-campaign-item-title>.title{font-size:16px}.top-campaign-item-title .sub{font-size:max(var(--site-readable-min, 0px), 11px)}.top-campaign-tag-items li{font-size:max(var(--site-readable-min, 0px), 9px)}.campaign .price{font-size:27px}.home-message h2{font-size:26px}.space-gallery{grid-template-columns:1fr 1fr}.space-gallery figure:first-child img{height:240px;border-radius:2px}.space-gallery img{height:155px}.equipment-card .device-card-photo{height:170px}.equipment-grid{gap:12px}.treatment-list{grid-template-columns:1fr;gap:24px}.treatment-list img,.treatment-list .device-card-photo{height:205px}.treatment-list dl{padding:22px}.treatment-list dt{font-size:22px}.treatment-list dd{font-size:14px}.page-heading h1{font-size:24px}.tab a{padding:12px 17px}.inner .intro .lead{font-size:23px}.top-clinic-content{gap:30px}}

.hero-photo>.hero-model{object-position:center 8%}@media(max-width:760px){.hero-photo>.hero-model{object-position:75% 20%}}
.category-gateway{grid-template-columns:repeat(2,minmax(0,1fr))}.category-gateway a{min-width:0}.top-campaign-item-image.device-composite{object-fit:contain!important}@media(max-width:380px){.category-gateway a{padding:15px 10px;gap:4px}.category-gateway strong{font-size:18px}.category-gateway b{font-size:14px}.hours-table{min-width:0;width:100%;font-size:max(var(--site-readable-min, 0px), 10px)}.hours-table td,.hours-table th{padding:8px 3px}.top-campaign-item{display:flex}.top-campaign-item-image,.top-campaign-item .device-card-photo{height:180px;min-height:180px}.top-campaign-item-image.device-composite{object-fit:contain!important}}
.treatment-index main{margin-top:35px}.treatment-index .tab{margin-bottom:25px}.treatment-index .midashi01{margin:0 0 12px!important;padding:0;border:0;font-size:19px}.treatment-index .midashi01 .en{display:inline;margin-left:15px;font-size:max(var(--site-readable-min, 0px), 10px)}.treatment-index .midashi01 .jp{display:inline}.treatment-index .midashi03{margin:0 0 28px;padding-bottom:16px}.treatment-index .midashi03 .en{display:none}.treatment-index .midashi03 .jp{font-size:22px}


/* Source: campaign-polish.css; original cascade order retained. */
/* Complete portrait + device compositions: never crop either subject. */
.campaign-image-wrap{width:100%;aspect-ratio:3/2;background:#faf8f4;overflow:hidden}.campaign-image-wrap>img,.treatment-list img.campaign-visual,.top-campaign-item img.campaign-visual,.equipment-card img.campaign-visual{display:block;width:100%;height:auto!important;min-height:0!important;max-height:none;aspect-ratio:3/2;object-fit:contain!important;object-position:center!important;transform:none!important;border-radius:0}.top-campaign-item{display:flex;flex-direction:column}.top-campaign-item-image.device-composite{height:auto!important;min-height:0!important;aspect-ratio:3/2;object-fit:contain!important}.top-campaign-item .campaign-image-wrap{height:auto;min-height:0}.top-campaign-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.top-campaign-item-text{padding:25px 28px}.top-campaign-item-title>.title{font-size:22px}.top-campaign-item-title .sub{font-size:12px}.campaign-feature{margin:0;width:100%;min-width:0}.campaign-feature img{display:block;width:100%;height:auto!important;aspect-ratio:3/2;object-fit:contain!important;max-height:none}.campaign-feature figcaption{font-size:max(var(--site-readable-min, 0px), 10px);color:#90917f;padding:9px 0}.inner .intro.with-device{grid-template-columns:1.05fr 1fr;gap:38px}.inner .intro>img.campaign-visual{height:auto!important;max-height:none;aspect-ratio:3/2;object-fit:contain!important;border-radius:3px;width:100%}.treatment-list .campaign-image-wrap{height:auto!important}.treatment-list img.campaign-visual{height:auto!important}.equipment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.equipment-card>span{padding:20px 22px;font-size:17px}.equipment-card .campaign-image-wrap{height:auto!important}.hero-photo>.hero-model{object-fit:cover;object-position:center 10%}.home-hero{height:600px;min-height:600px}.hero-copy{padding-left:6%;width:51%}.hero-copy h1{font-size:max(var(--site-readable-min, 0px), clamp(34px,3.6vw,49px))}.home-hero:after{background:linear-gradient(90deg,#fbfaf4c9,#fbfaf460 34%,transparent 58%)}
@media(max-width:760px){.top-campaign-items{grid-template-columns:1fr;gap:25px}.top-campaign-item{display:flex;flex-direction:column}.top-campaign-item .campaign-image-wrap,.top-campaign-item-image.device-composite{min-height:0!important;height:auto!important}.top-campaign-item-text{padding:23px}.top-campaign-item-title>.title{font-size:21px}.equipment-grid{grid-template-columns:1fr;gap:22px}.equipment-card>span{padding:16px 20px;font-size:16px}.inner .intro.with-device{gap:23px}.inner .intro>img.campaign-visual{width:100%;height:auto!important;max-height:none}.home-hero{height:auto;min-height:0;padding-top:300px}.hero-photo{height:310px}.hero-photo>.hero-model{object-position:85% 5%}.hero-copy{width:100%;padding:21px 24px 27px}.hero-copy h1{font-size:30px}.home-hero:after{inset:270px 0 auto;height:40px;background:linear-gradient(0deg,#f7f8f2,transparent)}}
@media(min-width:761px){.hero-photo{background:#fcf9f3}.hero-photo>.hero-model{object-fit:contain;object-position:right center}.home-hero{height:560px;min-height:560px}}
/* Symptom cards depict the local skin concern, distinct from treatment portraits. */
.top-search-concerns-list>img.concern-detail{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:center;border-radius:3px;filter:none;margin-bottom:18px}@media(max-width:760px){.top-search-concerns-list{grid-template-columns:108px minmax(0,1fr);gap:0 16px}.top-search-concerns-list>img.concern-detail{height:108px;aspect-ratio:1;object-fit:cover}.top-search-concerns-title{grid-column:1/-1}}@media(max-width:360px){.top-search-concerns-list{grid-template-columns:88px minmax(0,1fr);gap:0 12px}.top-search-concerns-list>img.concern-detail{height:88px}.top-search-concerns-list .namelist a{font-size:12px}}
img.service-visual{object-fit:contain!important;object-position:center!important}.inner .intro>img.service-visual{width:48%;height:auto!important;max-height:none;aspect-ratio:3/2;border-radius:3px}.campaign-list>li>img.service-visual{display:block;width:100%;height:auto!important;min-height:0!important;aspect-ratio:3/2;object-fit:contain!important}.campaign-sub-image{display:block;width:100%;height:auto;aspect-ratio:3/2;margin:26px 0 12px;border-top:1px solid #e6e8de;padding-top:15px}.campaign-detail-link{display:block;margin-top:24px;padding-top:16px;border-top:1px solid #e4e8dc;color:#738363;font-size:13px}.inner .campaign-list{align-items:start}.treatment-list img.service-visual{width:100%;height:auto!important;aspect-ratio:3/2;min-height:0!important}.treatment-list .campaign-image-wrap{height:auto}@media(max-width:760px){.inner .intro>img.service-visual{width:100%}.inner .campaign-list{grid-template-columns:1fr}}

.inner .intro.with-device>img.service-visual{width:100%}

/* A restrained hover response for clinic interiors, clipped to the photo. */
.interior-photo-frame{overflow:hidden;border-radius:8px;isolation:isolate}
.interior-photo-frame>img{display:block;transform:scale(1);transition:transform 650ms cubic-bezier(.2,.65,.3,1)}
.space-gallery .interior-photo-frame{border-radius:2px}
.clinic-ribbon .interior-photo-frame{border-radius:0}
.about-photo .interior-photo-frame{border-radius:90px 90px 8px 8px}
.clinic-ribbon figure:hover img{transform:scale(1)}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .interior-photo-frame:hover>img,.clinic-ribbon figure:hover .interior-photo-frame>img{transform:scale(1.04)}
}
@media(max-width:760px){.about-photo .interior-photo-frame{border-radius:85px 85px 8px 8px}}
@media(prefers-reduced-motion:reduce){.interior-photo-frame>img{transition:none}}
/* Campaign catalogue: one treatment per card, consistent visual hierarchy. */
.campaign-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;list-style:none;padding:0;margin:0 0 72px;align-items:stretch}
.offer-card{min-width:0;display:flex;flex-direction:column;border:1px solid #e4e7dd;border-radius:5px;overflow:hidden;background:#fff}
.offer-image{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;background:#fafaf6}
.offer-content{padding:24px;display:flex;flex-direction:column;flex:1}
.offer-heading{min-height:142px;padding-bottom:20px}
.offer-subtitle{font-size:max(var(--site-readable-min, 0px), 11px);color:#858b7d;line-height:1.8;margin:0 0 9px}
.offer-heading h3{font-family:inherit;font-size:21px;font-weight:500;line-height:1.6;letter-spacing:.02em;margin:0;color:#4c5748;overflow-wrap:anywhere}
.offer-tags{display:flex;gap:5px;flex-wrap:wrap;list-style:none;padding:0;margin:12px 0 0}
.offer-tags li{font-size:max(var(--site-readable-min, 0px), 10px);line-height:1.5;padding:4px 7px;background:#f3f5ee;color:#7c866e}
.offer-variants{border-top:1px solid #e9ece2}
.offer-variant{padding:17px 0;border-bottom:1px solid #e9ece2}
.offer-label{font-size:12px;line-height:1.7;color:#596451;margin:0 0 9px}
.offer-prices{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px}
.offer-prices p{margin:0;display:flex;align-items:baseline;gap:8px;white-space:nowrap}
.offer-standard{font-size:max(var(--site-readable-min, 0px), 11px);color:#959b90}.offer-standard strong{font-size:14px;font-weight:400}
.offer-special span{font-size:max(var(--site-readable-min, 0px), 10px);color:#71815f;background:#f0f3e9;padding:3px 6px}.offer-special strong{font-family:Georgia,serif;font-size:29px;font-weight:400;color:#6b7a5d;letter-spacing:-.02em}
.offer-detail{display:block;margin-top:auto;padding-top:22px;font-size:12px;color:#6f7e61;line-height:1.7}.offer-detail:hover{color:#46573a;text-decoration:underline}
@media(min-width:761px) and (max-width:1100px){.campaign-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.campaign-catalog{grid-template-columns:1fr;gap:24px;margin-bottom:48px}.offer-content{padding:22px}.offer-heading{min-height:0;padding-bottom:20px}.offer-heading h3{font-size:21px}.offer-detail{padding-top:19px}}
.inner .offer-subtitle{font-size:max(var(--site-readable-min, 0px), 11px);line-height:1.8}.inner .offer-label{font-size:12px;line-height:1.7}.inner .offer-standard{font-size:max(var(--site-readable-min, 0px), 11px)}.inner .offer-special{font-size:12px}.offer-machine{display:block;font-size:14px;line-height:1.8;margin-top:3px}
/* Compact desktop campaign overview; one column only on phone-sized screens. */
.campaign-catalog{max-width:1080px;margin-left:auto;margin-right:auto;gap:24px;grid-template-columns:repeat(3,minmax(0,1fr))}
.offer-content{padding:20px}.offer-heading{min-height:130px;padding-bottom:16px}.offer-heading h3{font-size:19px}.offer-variant{padding:14px 0}.offer-special strong{font-size:27px}.offer-detail{padding-top:18px}
@media(min-width:600px) and (max-width:1050px){.campaign-catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}}
@media(max-width:599px){.campaign-catalog{grid-template-columns:1fr;max-width:420px;gap:22px}.offer-heading{min-height:0}.offer-heading h3{font-size:20px}}
@media(min-width:600px){.offer-heading{display:grid;grid-template-rows:36px auto 30px;align-content:start;gap:0;min-height:146px}.offer-heading h3{grid-row:2}.offer-subtitle{grid-row:1}.offer-tags{grid-row:3;align-self:start}.offer-variant:not(:has(.offer-label))::before{content:"";display:block;height:20px;margin-bottom:9px}}
/* Homepage overview: four compact cards instead of oversized two-column photos. */
.home .home-offers{max-width:1160px;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:32px auto}
.home-offers .offer-content{padding:17px}.home-offers .offer-heading{min-height:156px}.home-offers .offer-heading h3{font-size:17px}.home-offers .offer-prices{align-items:flex-start;flex-direction:column;gap:6px}.home-offers .offer-special strong{font-size:27px}.home-offers .offer-subtitle{font-size:max(var(--site-readable-min, 0px), 10px)}
.home .equipment-grid{max-width:1160px;margin:0 auto;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.home .equipment-card>span{font-size:15px;padding:17px 15px}.treatment-browse{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:30px}
@media(min-width:600px) and (max-width:1149px){.home .home-offers,.home .equipment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-offers .offer-heading{min-height:138px}.home-offers .offer-prices{flex-direction:row;align-items:center}}
@media(max-width:599px){.home .home-offers,.home .equipment-grid{grid-template-columns:1fr;max-width:420px}.home-offers .offer-heading{min-height:0}.home-offers .offer-heading h3{font-size:20px}.home-offers .offer-prices{flex-direction:row;align-items:center}.treatment-browse{flex-direction:column;align-items:stretch}.treatment-browse a{text-align:center}}
/* Bright, quiet clinic identity and a browsable treatment collection. */
.home main>.equipment-section{background:linear-gradient(120deg,#f6faf8,#fcfaf8);overflow:hidden}
.equipment-section .section-heading{text-align:left;max-width:1160px;margin:0 auto 18px}
.treatment-controls{max-width:1160px;margin:0 auto 22px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.treatment-controls p{font-size:13px;color:#788578;margin:0}.treatment-buttons{display:flex;gap:10px;flex-shrink:0}
.treatment-buttons button{width:46px;height:46px;border:1px solid #ccd8cb;border-radius:50%;background:#fff;color:#526f59;font-size:22px;cursor:pointer;transition:background .2s}
.treatment-buttons button:hover:not(:disabled){background:#e8f1e9}.treatment-buttons button:disabled{opacity:.35;cursor:default}
.treatment-track{display:flex;gap:22px;max-width:1160px;margin:0 auto;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:2px 2px 18px;scrollbar-width:thin;scrollbar-color:#a8baa9 #e5ede6;overscroll-behavior-x:contain}
.treatment-track.edge-auto-scrolling{scroll-snap-type:none;scroll-behavior:auto}
.treatment-track.edge-auto-settled{scroll-snap-type:x proximity;scroll-behavior:auto}
.treatment-slide{flex:0 0 calc((100% - 66px)/3.35);min-width:0;scroll-snap-align:start;display:flex;flex-direction:column;background:#fff;border:1px solid #e1e9df;border-radius:10px;overflow:hidden;box-shadow:0 4px 16px #53644b06;color:#4c5d4c}
.treatment-slide>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;background:#fcfbf8}
.treatment-slide-text{padding:21px 19px;display:flex;flex-direction:column;flex:1}.treatment-slide small{font-size:max(var(--site-readable-min, 0px), 9px);letter-spacing:.1em;color:#839483}.treatment-slide h3{font-size:17px;font-weight:500;line-height:1.7;margin:12px 0 20px}.treatment-slide-text>span{margin-top:auto;font-size:max(var(--site-readable-min, 0px), 11px);color:#708770}
.treatment-slide:hover{border-color:#afc4af}.treatment-slide:focus-visible,.treatment-track:focus-visible,.treatment-buttons button:focus-visible{outline:2px solid #6e9278;outline-offset:3px}
.treatment-position{max-width:1160px;margin:13px auto 0;font-size:max(var(--site-readable-min, 0px), 11px);color:#839080;text-align:right;font-variant-numeric:tabular-nums}
.home main>.home-message{background:linear-gradient(145deg,#fff 35%,#fbf7f5 70%,#f5faf5);border-top:1px solid #f1f2eb}.home-message .philosophy-quote{color:#879884}.space-heading{grid-column:1/-1;margin-top:18px}.space-heading .eyebrow{margin-bottom:8px}.space-heading h3{font-size:23px;font-weight:400;color:#586a59;margin:0}.home .space-gallery{margin-top:0}.home .space-gallery img{height:230px!important}.home .space-gallery figure:first-child img{height:230px!important}
.about-page .page-heading{background:linear-gradient(100deg,#f5faf6,#fdf8f5)}
.about-page .about-welcome{display:grid;grid-template-columns:.95fr 1.15fr;gap:42px;align-items:center;background:linear-gradient(130deg,#f5faf5,#fff8f5);padding:32px;border-radius:14px;margin:0 0 64px}
.about-welcome>.text{width:100%!important;padding:15px}.about-welcome h2{font-size:max(var(--site-readable-min, 0px), clamp(26px,2.7vw,37px));line-height:1.8;color:#546957}.about-welcome .en{color:#91a58e;letter-spacing:.18em;font-size:max(var(--site-readable-min, 0px), 11px)}
.about-welcome-photo{margin:0!important;width:100%;min-width:0}.about-welcome-photo img{display:block;width:100%;height:auto;aspect-ratio:6/5;object-fit:cover;object-position:38% center;border-radius:90px 12px 12px 12px}.about-welcome-photo figcaption{font-size:max(var(--site-readable-min, 0px), 11px);color:#8c9989;letter-spacing:.06em;padding:12px 4px 0}
.about-page .second-text>.center{max-width:860px;margin-left:auto;margin-right:auto;text-align:left}.about-page .second-text>.center p{line-height:2.15}
.about-page .clinic-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:60px 0;padding:0;list-style:none}
.about-page .clinic-values>li{display:block!important;background:#f7faf5;border:1px solid #e7eee2;border-radius:12px;padding:28px;margin:0!important;min-width:0}.about-page .clinic-values>li:nth-child(2){background:#fcf8f5;border-color:#f1e9e1}.about-page .clinic-values>li:nth-child(3){background:#f3f9f8;border-color:#e2eeeb}
.about-page .clinic-values .text{width:100%!important}.about-page .clinic-values .lead{font-size:21px;line-height:1.8;margin:0 0 20px}.about-page .clinic-values .message-number{display:block;font-family:Georgia,serif;font-size:32px;color:#a7bca0;margin-bottom:16px;font-weight:400}.about-page .clinic-values p{font-size:14px;line-height:2.1}.about-page .close{background:#fffaf7;border-radius:14px;padding:42px;margin-bottom:64px}.clinic-space-section{padding-top:12px}.clinic-space-section h2{font-size:27px;font-weight:400;color:#596c57}.clinic-space-section .clinic-gallery{margin-top:28px}.about-page .marker{background:linear-gradient(transparent 65%,#e7f0dd 65%)}
@media(max-width:1000px){.treatment-slide{flex-basis:calc((100% - 38px)/2.3)}.about-page .clinic-values{grid-template-columns:1fr}.about-page .clinic-values>li{padding:30px}.about-page .about-welcome{gap:22px;padding:22px}}
@media(max-width:760px){.about-page .about-welcome{grid-template-columns:1fr;gap:20px;padding:22px;margin-bottom:35px}.about-welcome>.text{padding:0}.about-welcome h2{font-size:27px}.about-welcome-photo img{aspect-ratio:4/3;border-radius:55px 8px 8px 8px}.about-page .clinic-values{margin:36px 0;gap:20px}.about-page .clinic-values>li{padding:25px}.about-page .close{padding:25px;margin-bottom:40px}.space-heading h3{font-size:20px}.home .space-gallery{grid-template-columns:1fr 1fr}.home .space-gallery img{height:155px!important}.home .space-gallery figure:first-child img{height:220px!important}}
@media(max-width:599px){.treatment-slide{flex-basis:83%}.treatment-track{gap:15px}.treatment-controls p{font-size:max(var(--site-readable-min, 0px), 11px);line-height:1.8}.treatment-buttons button{width:40px;height:40px}.treatment-slide h3{font-size:18px}.treatment-slide-text{padding:18px}.equipment-section .section-heading h2{font-size:25px}.treatment-controls{gap:10px}}
@media(prefers-reduced-motion:reduce){.treatment-track{scroll-behavior:auto}.treatment-buttons button{transition:none}}
/* Text-led introduction, with a modest supporting portrait. */
.about-page .about-welcome-refined{grid-template-columns:minmax(0,1fr) 280px;gap:50px;padding:40px 44px;background:linear-gradient(110deg,#fff,#f7faf6);border:1px solid #e9eee5;border-radius:8px;align-items:center}
.about-welcome-refined h2{font-size:32px;line-height:1.85;margin:16px 0 0}.about-welcome-refined .text{padding:0}.about-welcome-refined .about-welcome-photo img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center;border-radius:55px 6px 6px 6px}.about-welcome-refined .about-welcome-photo figcaption{font-size:max(var(--site-readable-min, 0px), 9px);text-align:right;color:#92998d;padding-top:8px}
.clinic-map-block{max-width:1160px;margin:48px auto 0;min-width:0}.clinic-map-heading{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-bottom:22px}.clinic-map-heading h2{font-size:23px;line-height:1.6;font-weight:400;color:#536650;margin:0 0 9px}.clinic-map-heading .eyebrow{font-size:max(var(--site-readable-min, 0px), 10px);margin:0 0 8px}.clinic-map-heading p{font-size:13px;line-height:1.9;margin:0;color:#75806f}.map-actions{display:flex;gap:10px;flex-wrap:wrap;flex-shrink:0}.map-actions a{font-size:12px;padding:12px 16px;background:#fff;border:1px solid #d6e0d0;border-radius:4px;color:#617858}.map-actions a:hover{background:#eef4e9}.clinic-map-frame{display:block;width:100%;height:380px;border:1px solid #e3e9dd;border-radius:8px;background:#f3f6ef}.about-page .clinic-map-block{margin-bottom:52px}.inner .clinic-map-heading p{font-size:13px}.inner .clinic-map-heading .eyebrow{font-size:max(var(--site-readable-min, 0px), 10px)}
@media(max-width:900px){.about-page .about-welcome-refined{grid-template-columns:minmax(0,1fr) 220px;gap:24px;padding:28px}.about-welcome-refined h2{font-size:27px}.clinic-map-heading{align-items:flex-start;flex-direction:column;gap:17px}}
@media(max-width:599px){.about-page .about-welcome-refined{grid-template-columns:1fr;padding:25px;gap:22px}.about-welcome-refined h2{font-size:25px}.about-welcome-refined .about-welcome-photo{width:190px;margin-left:auto!important}.clinic-map-frame{height:300px}.clinic-map-heading h2{font-size:21px}.clinic-map-heading p{font-size:12px}.map-actions{gap:8px}.map-actions a{font-size:max(var(--site-readable-min, 0px), 11px);padding:11px 13px}}
/* Original photographic botanical accents, kept behind open space. */
.about-page .page-heading{background-image:linear-gradient(90deg,#fafcf9 20%,#fafcf9b8 58%,#fafcf940),url('/speed-assets/beauty-botanical-v12.10575206c23533ab.webp');background-size:cover;background-position:center 60%}
.about-page .close{background-image:linear-gradient(90deg,#fffdfbef 0%,#fffdfbee 72%,#fffdfbbf),url('/speed-assets/beauty-botanical-v12.10575206c23533ab.webp');background-size:cover;background-position:right center;border:1px solid #f0eee6}
.home main>.equipment-section{background-image:linear-gradient(90deg,#f7faf8f5 0%,#f7faf8f0 70%,#f7faf8c9),url('/speed-assets/beauty-botanical-v12.10575206c23533ab.webp');background-size:cover;background-position:right top}
.about-welcome-refined .about-welcome-photo{max-width:280px}
.about-welcome-refined .about-welcome-photo img{object-position:85% center}
.beauty-moment{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:42px;margin:52px 0 64px;padding:28px;background:#f8faf6;border-radius:10px}.beauty-moment figure{margin:0;min-width:0}.beauty-moment img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:6px}.beauty-moment figcaption{font-size:max(var(--site-readable-min, 0px), 9px);line-height:1.7;color:#8d9587;margin-top:9px}.beauty-moment h2{font-size:25px;font-weight:400;line-height:1.8;color:#5c6d55}.beauty-moment p{font-size:13px;color:#85907d}.beauty-moment .eyebrow{font-size:max(var(--site-readable-min, 0px), 9px);letter-spacing:.12em}
@media(max-width:760px){.beauty-moment{grid-template-columns:1fr;gap:18px;padding:20px;margin:36px 0}.beauty-moment h2{font-size:22px;margin:10px 0}.beauty-moment>div{padding:0 3px}}
/* Room to breathe, with carefully set editorial numerals. */
:root{--number-ink:#6d8265;--number-line:#dce5d5}
@media(min-width:761px){.home main>section:not(.home-hero):not(.top-information){padding-top:96px;padding-bottom:96px}.inner main{margin-top:88px;margin-bottom:108px}.home .home-offers{gap:24px;margin-top:44px;margin-bottom:42px}.offer-content{padding:26px}.home-offers .offer-content{padding:22px 18px}.offer-variant{padding-top:19px;padding-bottom:19px}.offer-detail{padding-top:24px}.home .home-message{gap:68px 85px}.about-page .about-welcome-refined{padding:50px;margin-bottom:84px}.about-page .clinic-values{gap:28px;margin-top:76px;margin-bottom:76px}.about-page .clinic-values>li{padding:34px 29px}.about-page .clinic-values .lead{margin-bottom:27px}.about-page .clinic-values p{line-height:2.2;margin-bottom:22px}.beauty-moment{padding:36px;gap:50px;margin:76px 0}.about-page .close{padding:54px;margin-bottom:80px}.clinic-space-section .clinic-gallery{gap:32px;margin-top:36px}.clinic-map-block{margin-top:68px}.inner .intro{gap:50px}.price-tbl td,.price-tbl th{padding:20px 16px}}
.offer-card,.treatment-slide{position:relative}.collection-number{position:absolute;top:14px;left:14px;z-index:1;display:flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 8px;background:#fffffff0;border:1px solid #ffffff;border-radius:2px 14px 2px 2px;color:var(--number-ink);font:italic 24px/1 Georgia,'Times New Roman',serif;font-variant-numeric:lining-nums;letter-spacing:-.06em;box-shadow:0 2px 8px #52634707;pointer-events:none}
.about-page .clinic-values .message-number{font:italic 58px/.95 Georgia,'Times New Roman',serif;letter-spacing:-.065em;color:#9bad8e;margin:0 0 28px;display:flex;align-items:center;gap:20px}.about-page .clinic-values .message-number:after{content:'';width:48px;height:1px;background:var(--number-line);display:block}
.treatment-number{top:14px;left:14px;width:42px;height:42px;border-radius:2px 14px 2px 2px;font:italic 24px/1 Georgia,serif;letter-spacing:-.06em;border:1px solid #fff}
.offer-special strong{font:400 32px/1.2 Georgia,'Times New Roman',serif;letter-spacing:-.035em;font-variant-numeric:lining-nums tabular-nums}.home-offers .offer-special strong{font-size:30px}.price-currency{font-size:max(var(--site-readable-min, 0px), .55em);vertical-align:baseline;margin-right:.17em;font-weight:400}.price-value{font-family:Georgia,'Times New Roman',serif;font-variant-numeric:lining-nums tabular-nums;letter-spacing:-.025em}.price-tbl tr.price td:has(.price-value){font-size:26px;color:var(--number-ink);line-height:1.4}.offer-special span.price-value{font-size:inherit;background:none;padding:0;color:inherit}.offer-special span.price-currency{background:none;padding:0;color:inherit;font-size:max(var(--site-readable-min, 0px), .55em)}.treatment-position{letter-spacing:.08em;font-family:Georgia,serif}
@media(max-width:760px){.home main>section:not(.home-hero):not(.top-information){padding-top:62px;padding-bottom:62px}.inner main{margin-top:45px;margin-bottom:70px}.about-page .clinic-values{gap:26px;margin-top:44px;margin-bottom:46px}.about-page .clinic-values>li{padding:29px 25px}.about-page .clinic-values .message-number{font-size:46px;margin-bottom:24px}.beauty-moment{margin:44px 0;padding:23px}.offer-content{padding:25px 22px}.offer-detail{padding-top:23px}.collection-number{width:38px;height:38px;font-size:22px}.price-tbl tr.price td:has(.price-value){font-size:21px}.clinic-map-block{margin-top:48px}}
@media(prefers-reduced-motion:no-preference){.offer-card,.treatment-slide{transition:box-shadow .3s,border-color .3s}.offer-card:hover,.treatment-slide:hover{box-shadow:0 8px 26px #5464470c}}
/* Shared botanical identity: light at the heading, quieter behind navigation. */
.page-heading{background-color:#fafcf9;background-image:linear-gradient(90deg,#fafcf9 12%,#fafcf9e8 42%,#fafcf980 72%,#fafcf930),url('/speed-assets/beauty-botanical-v12.10575206c23533ab.webp');background-size:cover;background-position:right 56%;border-bottom:1px solid #e8eee3}
.page-heading:after{display:none}
.page-heading h1{position:relative;z-index:1;color:#52624c}.page-heading .breadcrumbs{position:relative;z-index:1}
.site-footer{background-color:#f7f9f3;background-image:linear-gradient(90deg,#f7f9f3fa 0%,#f7f9f3f5 46%,#f7f9f3df 74%,#f7f9f3ac),url('/speed-assets/beauty-botanical-v12.10575206c23533ab.webp');background-size:cover;background-position:right center;border-top:1px solid #e7eddf}
.home main>.top-search{background-image:linear-gradient(90deg,#fff 0%,#fffffff5 72%,#ffffffdc),url('/speed-assets/beauty-botanical-v12.10575206c23533ab.webp');background-repeat:no-repeat;background-position:right top;background-size:auto,620px auto}
.home main>.top-campaign{background-color:#f7f9f3;background-image:linear-gradient(90deg,#f7f9f3f7,#f7f9f3f0 65%,#f7f9f3c9),url('/speed-assets/beauty-botanical-v12.10575206c23533ab.webp');background-size:cover;background-position:right top}
.inner .interior-strip{background:linear-gradient(110deg,#fcfdfb,#f6f9f2);padding:32px;border-radius:8px;border-top:1px solid #e6eddf}
@media(max-width:760px){.page-heading{background-position:72% center;background-image:linear-gradient(90deg,#fafcf9f5 10%,#fafcf9ce 70%,#fafcf98c),url('/speed-assets/beauty-botanical-v12.10575206c23533ab.webp')}.site-footer{background-position:75% bottom;background-image:linear-gradient(180deg,#f7f9f3fc 0%,#f7f9f3f0 75%,#f7f9f3bd),url('/speed-assets/beauty-botanical-v12.10575206c23533ab.webp')}.inner .interior-strip{padding:24px 18px}.home main>.top-search{background-size:auto,380px auto}}
/* A soft floral veil beside the opening message. */
.home-hero::before{content:"";position:absolute;inset:0 auto 0 0;width:55%;background:url('/speed-assets/beauty-botanical-v12.10575206c23533ab.webp') right center/cover no-repeat;opacity:.29;z-index:-1;pointer-events:none;mask-image:linear-gradient(90deg,#000 0%,#000 66%,transparent 100%)}
@media(max-width:760px){.home-hero::before{display:none}.home-hero .hero-copy{position:relative;isolation:isolate;background:#f7f8f2}.home-hero .hero-copy::before{content:"";position:absolute;inset:0;background:url('/speed-assets/beauty-botanical-v12.10575206c23533ab.webp') right center/cover no-repeat;opacity:.21;z-index:-1;pointer-events:none}}
/* Crisp opening copy over the soft floral background. */
.home-hero .hero-copy h1{color:#303b32;font-weight:500;text-shadow:0 1px 3px #ffffffd9}
.home-hero .hero-copy h1 span{color:#52634b;text-shadow:0 1px 3px #ffffffd9}
.home-hero .hero-intro{color:#3f493e;font-weight:500;text-shadow:0 1px 2px #ffffffed}
.home-hero .hero-copy .eyebrow,.home-hero .hero-hours{color:#576250;text-shadow:0 1px 2px #ffffffed}

/* Dock-like lift for treatment cards and a restrained zoom for concern images. */
.home .category-gateway{overflow:visible}
.home .category-gateway a{z-index:0;transform:translateY(0) scale(1);transform-origin:center}
.home .category-gateway a:focus-visible{outline:2px solid #6e9278;outline-offset:4px;box-shadow:0 0 0 4px #fff}
.treatment-slide{transform:translateY(0) scale(1);transform-origin:center bottom}
.treatment-slide:first-child{transform-origin:left bottom}
.treatment-slide:last-child{transform-origin:right bottom}
.treatment-slide.edge-dock-left{transform-origin:left bottom}
.treatment-slide.edge-dock-right{transform-origin:right bottom}
.home .home-offers{overflow:visible}
.home .home-offers .offer-card{transform:translateY(0) scale(1);transform-origin:center}
.top-search-concerns-list{overflow:visible}
.top-search-concerns-list>img.concern-detail{position:relative;z-index:0;transform:scale(1);transform-origin:center}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .home .category-gateway a{transition:transform 280ms cubic-bezier(.2,.75,.25,1),box-shadow 280ms ease,border-color 280ms ease;will-change:transform}
 .home .category-gateway a:hover{transform:translateY(-4px) scale(1.02);z-index:1;border-color:#aebfad;box-shadow:0 12px 26px #45574418}
 .treatment-track{padding-top:54px;padding-bottom:30px}
 .treatment-slide{transition:transform 260ms cubic-bezier(.2,.75,.25,1),box-shadow 260ms ease,border-color 260ms ease;will-change:transform}
 .treatment-slide:hover,.treatment-slide:focus-visible,.treatment-slide.edge-dock-active{transform:translateY(-8px) scale(1.10);z-index:2;border-color:#aebfad;box-shadow:0 16px 34px #45574420}
 .treatment-track.edge-dock-mode .treatment-slide:hover:not(.edge-dock-active){transform:translateY(0) scale(1);z-index:1;border-color:#e1e9df;box-shadow:0 4px 16px #53644b06}
 .top-search-concerns-list>img.concern-detail{transition:transform 260ms cubic-bezier(.2,.75,.25,1),box-shadow 260ms ease;will-change:transform}
 .top-search-concerns-list>img.concern-detail:hover,.top-search-concerns-list:focus-within>img.concern-detail{transform:scale(1.04);z-index:1;box-shadow:0 10px 24px #45574418}
}
@media(prefers-reduced-motion:reduce){
 .home .category-gateway a,.treatment-slide,.home .home-offers .offer-card,.top-search-concerns-list>img.concern-detail{transition:none!important;transform:none!important}
}

/* Homepage campaign cards use the same horizontal rail language as treatments. */
.home .campaign-controls{margin-top:24px;margin-bottom:0}
.home .campaign-hint-mobile{display:none}
.home .home-offers{display:flex;grid-template-columns:none;align-items:stretch;gap:22px;max-width:1160px;margin:0 auto 18px;padding:2px 2px 18px;list-style:none;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#a8baa9 #e5ede6;overscroll-behavior-x:contain}
.home .home-offers.edge-auto-scrolling{scroll-snap-type:none;scroll-behavior:auto}
.home .home-offers.edge-auto-settled{scroll-snap-type:x proximity;scroll-behavior:auto}
.home .home-offers .offer-card{flex:0 0 calc((100% - 66px)/3.35);min-width:0;align-self:stretch;scroll-snap-align:start;border-color:#e1e9df;border-radius:10px;box-shadow:0 4px 16px #53644b06;transform:translateY(0) scale(1);transform-origin:center center}
.home .home-offers .offer-card:first-child{transform-origin:left center}
.home .home-offers .offer-card:last-child{transform-origin:right center}
.home .home-offers .offer-card.edge-dock-left{transform-origin:left center}
.home .home-offers .offer-card.edge-dock-right{transform-origin:right center}
.home .home-offers .offer-content{padding:21px 19px}
.home .campaign-position{max-width:1160px;margin:0 auto 18px;font:11px/1.7 Georgia,serif;font-size:max(var(--site-readable-min, 0px), 11px);color:#839080;text-align:right;font-variant-numeric:tabular-nums;letter-spacing:.08em}
.home .campaign-buttons button:focus-visible,.home .home-offers:focus-visible,.home .home-offers .offer-detail:focus-visible{outline:2px solid #6e9278;outline-offset:3px}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .home .home-offers{padding-top:66px;padding-bottom:64px}
 .home .home-offers .offer-card{transition:transform 260ms cubic-bezier(.2,.75,.25,1),box-shadow 260ms ease,border-color 260ms ease;will-change:transform}
 .home .home-offers .offer-card:hover,.home .home-offers .offer-card:focus-within,.home .home-offers .offer-card.edge-dock-active{transform:translateY(-8px) scale(1.10);z-index:2;border-color:#aebfad;box-shadow:0 16px 34px #45574420}
 .home .home-offers.edge-dock-mode .offer-card:hover:not(.edge-dock-active){transform:translateY(0) scale(1);z-index:1;border-color:#e1e9df;box-shadow:0 4px 16px #53644b06}
}
@media(max-width:1000px){.home .home-offers .offer-card{flex-basis:calc((100% - 38px)/2.3)}}

/* Campaign listing page: match the treatment-card lift without affecting other pages. */
.campaign-list-page .campaign-catalog>.offer-card{position:relative;z-index:0;transform:translateY(0) scale(1);transform-origin:center}
.campaign-list-page .campaign-catalog .offer-detail:focus-visible{outline:2px solid #6e9278;outline-offset:3px}
@media(min-width:768px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .campaign-list-page .campaign-catalog{row-gap:24px;padding-top:0;overflow:visible}
 .campaign-list-page .campaign-catalog>.offer-card{transition:box-shadow .25s,transform .25s;will-change:transform}
 .campaign-list-page .campaign-catalog>.offer-card:hover,.campaign-list-page .campaign-catalog>.offer-card:focus-within,.campaign-list-page .campaign-catalog>.offer-card.edge-dock-active{transform:translateY(-3px);z-index:2;box-shadow:0 10px 30px #52634212}
}
@media(max-width:767px){
 .campaign-list-page .campaign-catalog{padding-top:0}
 .campaign-list-page .campaign-catalog>.offer-card,.campaign-list-page .campaign-catalog>.offer-card:hover,.campaign-list-page .campaign-catalog>.offer-card:focus-within{transform:none!important;transition:none!important}
}
@media(prefers-reduced-motion:reduce){
 .campaign-list-page .campaign-catalog>.offer-card{transform:none!important;transition:none!important}
}

/* Mobile overview: all content is visible through ordinary vertical scrolling. */
html.menu-open,body.menu-open{overscroll-behavior:none}
@media(max-width:767px){
 body{padding-bottom:calc(92px + env(safe-area-inset-bottom))}
 body.menu-open{overflow:hidden}
 html.menu-open .site-header{backdrop-filter:none;-webkit-backdrop-filter:none}
 .header-inner{gap:10px}
 .header-inner .brand{min-width:0}
 .menu-toggle{display:block;flex:0 0 auto;min-width:max-content;min-height:48px;padding:10px 12px;font-size:max(var(--site-readable-min, 0px), .8125rem);white-space:nowrap;word-break:keep-all}
 .site-header nav{display:none}
 .site-header nav.open{position:fixed;top:var(--mobile-header-height,72px);right:0;bottom:var(--mobile-book-height,72px);left:0;z-index:45;display:grid;grid-template-columns:1fr 1fr;align-content:start;gap:12px 18px;max-width:none;max-height:none;margin:0;padding:18px 22px;overflow:hidden;overscroll-behavior:contain;background:#fffffff7;box-shadow:0 12px 30px #35402e14;font-size:max(var(--site-readable-min, 0px), 1rem);touch-action:pinch-zoom}
 .site-header nav.open.menu-scrollable{overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y pinch-zoom}
 .site-header nav.open a{display:flex;align-items:center;min-height:44px;padding:8px 0;font-size:max(var(--site-readable-min, 0px), 1rem);line-height:1.5}
 .site-header nav.open .nav-line-booking{grid-column:1/-1;justify-content:center;min-height:48px;margin-top:2px;padding:12px 16px;border-radius:5px;background:#758469;color:#fff}
 .mobile-book{position:fixed;display:grid;grid-template-columns:.85fr 1fr 1.25fr .95fr;gap:7px;right:0;bottom:0;left:0;z-index:40;padding:8px 12px calc(8px + env(safe-area-inset-bottom));border-top:1px solid #d1c5b6;border-radius:0;background:#f8f5effa;box-shadow:0 -4px 22px #332d2712}
 .mobile-book a,.mobile-book button{display:flex;align-items:center;justify-content:center;min-width:0;width:auto!important;height:48px;min-height:48px;padding:6px 8px;border:1px solid #b49a7d;border-radius:5px!important;background:#fff;color:#52604d;font-family:inherit;font-size:max(var(--site-readable-min, 0px), .8125rem);font-weight:500;line-height:1.25;letter-spacing:.02em;text-align:center;cursor:pointer}
 .mobile-book .mobile-line{gap:4px;padding-right:7px;padding-left:5px}
 .mobile-book .mobile-line img{width:25px;height:25px;flex:0 0 auto}
 .mobile-book .mobile-menu-toggle[aria-expanded="true"]{border-color:#758469;background:#eef3e9;color:#53634d}

 .home .campaign-controls{display:block;margin-top:22px}
 .home .campaign-controls p{font-size:max(var(--site-readable-min, 0px), .875rem);line-height:1.7}
 .home .campaign-hint-desktop,.home .campaign-buttons,.home .campaign-position{display:none}
 .home .campaign-hint-mobile{display:inline}
 .home .home-offers,.home .home-offers.edge-auto-scrolling,.home .home-offers.edge-auto-settled{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:18px;max-width:420px;margin:0 auto 14px;padding:0;overflow:visible;scroll-snap-type:none;scroll-behavior:auto;scrollbar-width:auto;overscroll-behavior:auto;touch-action:auto}
 .home .home-offers .offer-card,.home .home-offers .offer-card:hover,.home .home-offers .offer-card:focus-within,.home .home-offers .offer-card.edge-dock-active{display:flex;flex:none;align-self:start;width:100%;min-width:0;transform:none!important;transition:none;scroll-snap-align:none;border:1px solid #e1e9df;border-radius:10px;box-shadow:0 4px 16px #53644b08}
 .home .home-offers .offer-content{padding:24px 22px}
 .home .home-offers .offer-heading{min-height:0;padding-bottom:20px}
 .home .home-offers .offer-subtitle{font-size:max(var(--site-readable-min, 0px), 1rem);line-height:1.75;margin-bottom:10px}
 .home .home-offers .offer-heading h3{font-size:max(var(--site-readable-min, 0px), 1.3125rem);line-height:1.65}
 .home .home-offers .offer-machine{font-size:max(var(--site-readable-min, 0px), 1rem);line-height:1.65}
 .home .home-offers .offer-tags{gap:7px;margin-top:13px}
 .home .home-offers .offer-tags li{padding:5px 8px;font-size:max(var(--site-readable-min, 0px), .875rem);line-height:1.5}
 .home .home-offers .offer-variant{padding:18px 0}
 .home .home-offers .offer-label,.home .home-offers .offer-standard{font-size:max(var(--site-readable-min, 0px), 1rem);line-height:1.7}
 .home .home-offers .offer-standard strong{font-size:max(var(--site-readable-min, 0px), 1rem)}
 .home .home-offers .offer-special span{font-size:max(var(--site-readable-min, 0px), .875rem)}
 .home .home-offers .offer-special strong{font-size:max(var(--site-readable-min, 0px), 1.875rem)}
 .home .home-offers .offer-detail{min-height:48px;padding-top:20px;font-size:max(var(--site-readable-min, 0px), 1rem);line-height:1.7}

 .home-hero .hero-intro{font-size:max(var(--site-readable-min, 0px), 1rem);line-height:1.95}
 .home-hero .hero-hours{font-size:max(var(--site-readable-min, 0px), .75rem);line-height:1.8}
 .inner .second-text p,.about-page .message p,.close p{font-size:max(var(--site-readable-min, 0px), .9375rem);line-height:2.05}
 .illustration-note{font-size:max(var(--site-readable-min, 0px), .75rem) !important;line-height:1.8}
 .offer-standard,.offer-label{color:#596451}

 .price-tbl td:has(.price-value){padding-right:clamp(4px,2vw,9px);padding-left:clamp(4px,2vw,9px);font-size:max(var(--site-readable-min, 0px), clamp(12px,4vw,18px)) !important;line-height:1.35;letter-spacing:-.035em;white-space:nowrap}
 .price-tbl td:has(.price-value) .price-currency,.price-tbl td:has(.price-value) .price-value{display:inline;white-space:nowrap}
 .price-tbl td:has(.price-value) .price-currency{margin-right:.08em}
 .offer-prices strong,.offer-standard strong,.offer-special strong{white-space:nowrap}

 .equipment-section .treatment-controls,.equipment-section .treatment-position{display:none}
 .treatment-track,.treatment-track.edge-auto-scrolling,.treatment-track.edge-auto-settled{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));gap:16px 14px;max-width:680px;margin:0 auto;padding:0;overflow:visible;scroll-snap-type:none;scroll-behavior:auto;scrollbar-width:auto}
 .treatment-slide,.treatment-slide:hover,.treatment-slide:focus-visible,.treatment-slide.edge-dock-active{display:flex;flex:none;width:100%;min-width:0;transform:none!important;transition:none;scroll-snap-align:none;border:1px solid #e1e9df;border-radius:10px;box-shadow:0 4px 16px #53644b08}
 .treatment-slide>img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
 .treatment-slide-text{min-width:0;padding:15px 13px 16px}
 .treatment-slide small{font-size:max(var(--site-readable-min, 0px), .75rem);line-height:1.55;letter-spacing:.06em}
 .treatment-slide h3{font-size:max(var(--site-readable-min, 0px), 1rem);line-height:1.65;margin:9px 0 14px;overflow-wrap:anywhere;word-break:normal}
 .treatment-slide-text>span{min-height:44px;display:flex;align-items:center;font-size:max(var(--site-readable-min, 0px), .875rem);line-height:1.55}
 .treatment-slide .collection-number{top:9px;left:9px;min-width:36px;width:36px;height:36px;padding:0;font-size:20px}
}
@media(max-width:359px){
 .header-inner{padding-right:12px;padding-left:12px;gap:7px}
 .brand{gap:7px}
 .brand-symbol{width:31px;height:41px;font-size:25px!important}
 .brand-symbol>span{font-size:19px}
 .brand-name{font-size:14px!important}
 .brand-name small{font-size:max(var(--site-readable-min, 0px), 8px)}
 .menu-toggle{padding-right:9px;padding-left:9px;font-size:12px}
 .site-header nav.open{grid-template-columns:1fr}
 .mobile-book{grid-template-columns:.8fr .95fr 1.2fr .95fr;gap:5px;padding-right:8px;padding-left:8px}
 .mobile-book a,.mobile-book button{padding-right:4px;padding-left:4px;font-size:max(var(--site-readable-min, 0px), .75rem)}
 .mobile-book .mobile-line img{width:22px;height:22px}
 .treatment-track{grid-template-columns:1fr;gap:18px}
 .treatment-slide h3{font-size:max(var(--site-readable-min, 0px), 1.125rem)}
 .treatment-slide-text{padding:18px}
}
@media(max-width:767px) and (prefers-reduced-motion:reduce){.home .home-offers{scroll-behavior:auto}}

/* Desktop: keep the hero actions, but remove the redundant four-item quick navigation. */
@media(min-width:761px){
 .home .quick-nav{display:none}
 .home main>.top-information{margin-top:28px}
}

/* Telephone digits only: stable, legible lining figures without changing labels or hours. */
.phone-number{font-family:Arial,'Helvetica Neue',sans-serif!important;font-variant-numeric:lining-nums tabular-nums;font-feature-settings:'lnum' 1,'tnum' 1;font-weight:500;letter-spacing:.025em;white-space:nowrap}


/* Mobile category cards: reserve a real arrow column so no child can escape the card. */
@media(max-width:767px){
 .home .category-gateway{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .home .category-gateway a{display:grid;grid-template-columns:minmax(0,1fr) 22px;grid-template-rows:auto auto auto;column-gap:8px;min-width:0;padding:17px 13px 16px 14px}
 .home .category-gateway span,.home .category-gateway strong,.home .category-gateway small{grid-column:1;min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
 .home .category-gateway span{font-size:max(var(--site-readable-min, 0px), .625rem);line-height:1.5}
 .home .category-gateway strong{font-size:max(var(--site-readable-min, 0px), clamp(1.0625rem,4.65vw,1.25rem));line-height:1.45}
 .home .category-gateway small{display:block;font-size:max(var(--site-readable-min, 0px), .6875rem);line-height:1.55}
 .home .category-gateway b{grid-column:2;grid-row:1/4;align-self:center;justify-self:end;display:grid;place-items:center;width:22px;height:22px;margin:0;font-size:max(var(--site-readable-min, 0px), 1rem);line-height:1;color:#718168}
}

/* Complete mobile navigation: original information hierarchy, current botanical identity. */
.nav-mobile-shell{display:none}
@media(max-width:767px){
 .site-header nav.open{display:block;padding:0;overflow:hidden;background-color:#f8faf5;background-image:linear-gradient(120deg,#fbfcf8f2 10%,#f5f8f0e8 62%,#faf7f3dd),url('/speed-assets/beauty-botanical-v12.10575206c23533ab.webp');background-size:auto,cover;background-position:center,72% center;box-shadow:0 14px 36px #34402e1c;font-size:max(var(--site-readable-min, 0px), 1rem)}
 .site-header nav.open.menu-scrollable{overflow-y:auto;-webkit-overflow-scrolling:touch}
 .site-header nav.open>a{display:none!important}
 .site-header nav.open .nav-mobile-shell{display:flex;flex-direction:column;gap:11px;min-height:100%;padding:15px 18px 17px}
 .nav-mobile-heading{display:flex;align-items:baseline;gap:12px;padding:0 2px 8px;border-bottom:1px solid #dfe6d9}
 .nav-mobile-heading span{font:500 .625rem/1 Arial,sans-serif;letter-spacing:.2em;color:#829078}
 .nav-mobile-heading strong{font-size:max(var(--site-readable-min, 0px), 1rem);font-weight:500;letter-spacing:.05em;color:#4f5d4d}
 .nav-mobile-section{margin:0}
 .nav-mobile-section>p{margin:0 0 5px;padding:0 2px;font-size:max(var(--site-readable-min, 0px), .6875rem);line-height:1.4;letter-spacing:.12em;color:#7b8974}
 .nav-mobile-treatment-grid,.nav-mobile-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #dbe3d5}
 .site-header nav.open .nav-mobile-treatment,.site-header nav.open .nav-mobile-link{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 18px;align-content:center;min-width:0;min-height:47px;padding:7px 8px 7px 14px;border-bottom:1px solid #dbe3d5;color:#4d5b4b}
 .nav-mobile-treatment:nth-child(odd),.nav-mobile-link:nth-child(odd){border-right:1px solid #dbe3d5}
 .nav-mobile-treatment::before,.nav-mobile-link::before{content:"";position:absolute;top:50%;left:3px;width:4px;height:4px;border-radius:50%;background:#99aa8e;transform:translateY(-50%)}
 .nav-mobile-treatment small{grid-column:1;font:500 .5625rem/1.35 Arial,sans-serif;letter-spacing:.11em;color:#87957f}
 .nav-mobile-treatment strong{grid-column:1;min-width:0;font-size:max(var(--site-readable-min, 0px), .9375rem);font-weight:500;line-height:1.45;overflow-wrap:anywhere}
 .nav-mobile-treatment b,.nav-mobile-link b{grid-column:2;grid-row:1/3;align-self:center;justify-self:end;font-size:max(var(--site-readable-min, 0px), .875rem);font-weight:400;color:#83917b}
 .nav-mobile-link span{min-width:0;font-size:max(var(--site-readable-min, 0px), .8125rem);line-height:1.45;overflow-wrap:anywhere}
 .nav-mobile-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:1px}
 .site-header nav.open .nav-mobile-action{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:7px;align-items:center;min-width:0;min-height:50px;padding:8px 11px;border:1px solid #bac7b4;border-radius:6px;background:#fff;color:#51604f;font-size:max(var(--site-readable-min, 0px), .875rem);font-weight:500;line-height:1.3}
 .site-header nav.open .nav-mobile-line{background:#718268;border-color:#718268;color:#fff}
 .nav-mobile-action img{display:block;flex:none;object-fit:contain}
 .nav-mobile-action span{min-width:0;white-space:nowrap}
 .nav-mobile-action b{font-size:max(var(--site-readable-min, 0px), .8125rem);font-weight:400}
 .nav-mobile-info{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:7px 2px;border-top:1px solid #dfe6d9;border-bottom:1px solid #dfe6d9}
 .site-header nav.open .nav-mobile-phone{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:baseline;min-width:0;min-height:44px;padding:5px 0;color:#455443}
 .nav-mobile-phone small{font:500 max(var(--site-readable-min, 0px), .5625rem)/1 Arial,sans-serif;letter-spacing:.12em;color:#83917b}
 .nav-mobile-phone .phone-number{font-size:max(var(--site-readable-min, 0px), 1.1875rem)}
 .nav-mobile-info p{margin:0;text-align:right;color:#5d695a;line-height:1.35}
 .nav-mobile-info p span,.nav-mobile-info p small{display:block;font-size:max(var(--site-readable-min, 0px), .6875rem);white-space:nowrap}
 .nav-mobile-social{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .site-header nav.open .nav-mobile-social a{display:flex;align-items:center;justify-content:center;gap:9px;min-width:0;min-height:44px;padding:6px 10px;border:1px solid #d9e1d4;border-radius:100px;background:#fffffff0;color:#566453;font:500 .8125rem/1.3 Arial,sans-serif}
 .nav-mobile-social img{display:block;flex:none;max-width:36px;object-fit:contain}
}
@media(max-width:340px){
 .site-header nav.open .nav-mobile-shell{padding-right:13px;padding-left:13px}
 .nav-mobile-action span{font-size:max(var(--site-readable-min, 0px), .8125rem)}
 .nav-mobile-phone .phone-number{font-size:max(var(--site-readable-min, 0px), 1.0625rem)}
}


/* Mobile-only legibility pass: stronger text and controls while preserving the pale floral palette. */
@media(max-width:767px){
 body{color:#30382f}
 .hero-copy .eyebrow,.hero-hours,.top-information-title .en,.top-search-title .en,.top-campaign-title .en,.top-clinic-title .en,.section-heading .eyebrow,.page-heading .en{color:#53634f;font-weight:500}
 .hero-intro,.top-campaign-head-comment,.top-hero-comment,.home-message p,.top-clinic-address,.hours-foot,.close p,.inner .second-text p,.about-page .message p{color:#343d33;font-weight:450}
 .top-information-item-time,.top-information-item-tag,.top-information-item-title,.top-information-more,.breadcrumbs{color:#465244;font-weight:500}
 .page-heading h1,.top-search-title,.top-campaign-title,.top-clinic-title,.home-message h2,.inner h2,.inner h3{color:#303b31}
 .page-heading h1,.breadcrumbs{text-shadow:0 1px 2px #fff}
 .home .category-gateway a{border-color:#879780;background:#f4f7f0;color:#334234}
 .home .category-gateway a:nth-child(2){border-color:#948e7f;background:#f7f4ef}
 .home .category-gateway span,.home .category-gateway small{color:#4b5c49;font-weight:500}
 .home .category-gateway strong{color:#2f3e31;font-weight:500}
 .home .category-gateway b{color:#405a42;font-weight:600}
 .top-search-tab-items li{border:1px solid #86957f;background:#f4f6f1;color:#354337;font-weight:500}
 .top-search-tab-items li.active{border:2px solid #40543f;background:#596d57;color:#fff;font-weight:600;box-shadow:inset 0 0 0 1px #ffffff4d}
 .top-search-tab-items li.active .en{color:#fff;font-weight:600}
 .top-search-concerns-list{border-color:#9ca995;background:#fcfdfb}
 .top-search-concerns-title,.namelist a{color:#354337;font-weight:500}
 .offer-subtitle,.offer-label,.offer-standard,.offer-standard strong,.offer-detail,.treatment-slide small,.treatment-slide-text>span{color:#465646;font-weight:500}
 .offer-tags li{color:#405140;background:#edf2e9;font-weight:500}
 .offer-card,.treatment-slide{border-color:#9eaa99}
 .offer-special span{color:#3f553d;background:#e7eee2;font-weight:600}
 .offer-special strong,.price-tbl tr.price td:has(.price-value){color:#405540}
 .price-tbl{border-color:#8d9a86}
 .price-tbl td,.price-tbl th{border-color:#a9b3a3;color:#303b31}
 .price-tbl .sub{background:#f6f8f3;color:#384638;font-weight:600}
 .price-tbl .ttl{background:#e8eee3;color:#354535}
 .button.primary,.primary,.mobile-book .mobile-line{background:#536b52!important;border-color:#536b52!important;color:#fff!important}
 .button.secondary,.tab a,.link a,.route a{border-color:#7e8e78;background:#fff;color:#354535;font-weight:500}
 .menu-toggle,.mobile-book a,.mobile-book button{border-color:#788a72!important;color:#344434!important;font-weight:600}
 .mobile-book{border-top-color:#8e9c87;background:#fbfaf7f5}
 .mobile-book .mobile-line{color:#fff!important}
 .illustration-note,.campaign-feature figcaption,.device-feature figcaption,.clinic-gallery figcaption,.space-gallery figcaption{color:#4d594b!important;font-weight:500}
 .site-footer,.site-footer p,.site-footer .footer-nav,.site-footer .footer-nav a,.copyright{color:#414b40}
 .site-footer{border-top:1px solid #9ca895}
 .social-card{border-color:#909f89;color:#354435}
 .social-card strong,.social-card span{color:#354435}
 .nav-mobile-heading span,.nav-mobile-section>p,.nav-mobile-treatment small,.nav-mobile-phone small{color:#50634d;font-weight:600}
 .nav-mobile-heading strong,.nav-mobile-treatment strong,.nav-mobile-link span,.nav-mobile-phone,.nav-mobile-info p{color:#303e31}
 .nav-mobile-treatment-grid,.nav-mobile-link-grid,.nav-mobile-info,.nav-mobile-heading{border-color:#94a28d}
 .site-header nav.open .nav-mobile-treatment,.site-header nav.open .nav-mobile-link{border-color:#a1ad9b;color:#303e31}
 .nav-mobile-treatment::before,.nav-mobile-link::before{background:#526b52}
 .nav-mobile-treatment b,.nav-mobile-link b{color:#405a42;font-weight:600}
 .site-header nav.open .nav-mobile-action{border-color:#778a72;color:#344534;font-weight:600}
 .site-header nav.open .nav-mobile-line{background:#536b52;border-color:#536b52;color:#fff}
 .site-header nav.open .nav-mobile-social a{border-color:#85967f;color:#334333;font-weight:600}
}


/* Important news article: verified Instagram campaign details. */
.news-campaign-article{color:#374037}
.news-campaign-article .news-lead{font-size:17px;line-height:2}
.news-period{display:flex;align-items:center;gap:18px;padding:18px 22px;margin:24px 0 30px;border:1px solid #aab59f;background:#f4f7f0;border-radius:8px}
.news-period strong{color:#405440}.news-period span{font-size:20px;font-weight:600;color:#303c31}
.news-instagram-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:30px 0}
.news-instagram-gallery figure{margin:0;min-width:0}.news-instagram-gallery img{display:block;width:100%;height:auto;border:1px solid #d8d8ce;border-radius:8px}.news-instagram-gallery figcaption{padding:9px 2px;color:#5b6558;font-size:12px;line-height:1.7}
.news-source{padding:12px 15px;border-left:3px solid #798e72;background:#f7f8f4;font-size:13px}.news-source a{font-weight:600;color:#3e5942}
.news-campaign-article h3{margin:42px 0 16px;padding-bottom:10px;border-bottom:1px solid #cfd6ca;color:#344335;font-size:21px}
.news-campaign-article ul{padding-left:1.4em}.news-campaign-article li{margin:9px 0;line-height:1.9}
.news-price-wrap{margin:22px 0;max-width:100%}.news-campaign-price{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}
.news-campaign-price th,.news-campaign-price td{padding:13px 10px;border:1px solid #cdd4c7;text-align:left;vertical-align:middle}
.news-campaign-price th{background:#657a61;color:#fff;font-weight:600;text-align:center}.news-campaign-price th:first-child{width:34%}.news-campaign-price td:not(:first-child){text-align:right}
.news-campaign-price tbody tr:nth-child(even){background:#f7f8f4}.news-campaign-price small{color:#586458}.news-campaign-price .price-value{white-space:nowrap;font-variant-numeric:lining-nums tabular-nums;font-family:Arial,"Helvetica Neue",sans-serif;font-weight:600;color:#344b36}
.news-correction{font-size:13px;color:#4c584a}.news-source-button{margin-top:30px}.news-source-button .button{display:inline-flex;min-height:48px;align-items:center}
@media(max-width:767px){
 .news-campaign-article .news-lead{font-size:16px;color:#303b31;font-weight:450}
 .news-period{display:block;padding:16px;margin:20px 0 24px}.news-period strong{display:block;margin-bottom:6px}.news-period span{font-size:18px}
 .news-instagram-gallery{grid-template-columns:1fr;gap:20px;margin:24px 0}.news-instagram-gallery figcaption{font-size:12px;color:#4d594b;font-weight:500}
 .news-source{font-size:13px;color:#3d493c}.news-campaign-article h3{font-size:19px;color:#303e31}.news-campaign-article li{font-size:15px;color:#303b31}
 .news-campaign-price,.news-campaign-price tbody{display:block}.news-campaign-price thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
 .news-campaign-price tr{display:grid;grid-template-columns:minmax(0,1fr) auto;margin:0 0 14px;border:1px solid #929f8d;border-radius:7px;overflow:hidden;background:#fff!important}
 .news-campaign-price td{display:flex;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:11px 12px;border:0;border-top:1px solid #b8c1b3;text-align:right!important;font-size:14px;color:#303b31}
 .news-campaign-price td:first-child{grid-column:1/-1;display:block;border-top:0;background:#eaf0e6;text-align:left!important;font-weight:600;color:#304232}
 .news-campaign-price td:not(:first-child){grid-column:1/-1}.news-campaign-price td::before{content:attr(data-label);flex:1 1 auto;min-width:0;text-align:left;color:#435242;font-size:12px;font-weight:600}
 .news-campaign-price td:first-child::before{display:none}.news-campaign-price .price-value{flex:none;font-size:14px}
 .news-correction{font-size:13px;color:#465244}.news-source-button .button{width:100%;justify-content:center;font-size:14px}
}


/* Mobile navigation refinement: layered ivory cards, botanical restraint, clear hierarchy. */
@media(max-width:767px){
 .site-header nav.open{background-color:#f6f7f2;background-image:linear-gradient(145deg,#fbfcf9f7 0%,#f5f7f0ed 52%,#faf6f0ef 100%),url('/speed-assets/beauty-botanical-v12.10575206c23533ab.webp');background-size:auto,cover;background-position:center,76% center;box-shadow:0 18px 48px #2f3c2a1f}
 .site-header nav.open .nav-mobile-shell{width:100%;max-width:520px;min-height:100%;margin:0 auto;padding:17px 20px 20px;gap:12px}
 .nav-mobile-heading{position:relative;display:block;padding:0 1px 11px;border:0}
 .nav-mobile-heading::after{content:"";position:absolute;right:0;bottom:0;left:0;height:1px;background:linear-gradient(90deg,#70816a 0 52px,#dce3d7 52px 100%)}
 .nav-mobile-heading span{display:block;margin-bottom:5px;font-size:max(var(--site-readable-min, 0px), .5625rem);line-height:1;letter-spacing:.28em;color:#778873}
 .nav-mobile-heading strong{display:block;font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,Georgia,serif;font-size:max(var(--site-readable-min, 0px), 1.0625rem);font-weight:500;line-height:1.35;letter-spacing:.07em;color:#344235}
 .nav-mobile-section>p{margin:0 0 7px;padding:0 2px;font-size:max(var(--site-readable-min, 0px), .625rem);line-height:1.35;letter-spacing:.17em;color:#63745f}
 .nav-mobile-treatment-grid,.nav-mobile-link-grid{border:0}
 .nav-mobile-treatment-grid{gap:9px}
 .site-header nav.open .nav-mobile-treatment{min-height:70px;padding:11px 11px 10px 13px;border:1px solid #cdd7c8!important;border-radius:13px;background:linear-gradient(145deg,#fffffff5,#f6f8f2e8);box-shadow:0 7px 20px #3444300b;color:#344335}
 .nav-mobile-treatment:nth-child(odd){border-right:1px solid #cdd7c8}
 .nav-mobile-treatment::before{top:12px;bottom:12px;left:0;width:3px;height:auto;border-radius:0 3px 3px 0;background:#879b7f;transform:none}
 .nav-mobile-treatment small{font-size:max(var(--site-readable-min, 0px), .5625rem);line-height:1.35;letter-spacing:.13em;color:#6c7d68}
 .nav-mobile-treatment strong{margin-top:3px;font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,Georgia,serif;font-size:max(var(--site-readable-min, 0px), 1rem);font-weight:500;line-height:1.35;letter-spacing:.04em;color:#354336}
 .nav-mobile-treatment b,.nav-mobile-link b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#edf2e9;color:#4d634c;font-size:max(var(--site-readable-min, 0px), .75rem);font-weight:600}
 .nav-mobile-link-grid{gap:7px}
 .site-header nav.open .nav-mobile-link{min-height:46px;padding:8px 9px 8px 12px;border:1px solid #d8dfd3!important;border-radius:10px;background:#ffffffc7;box-shadow:0 4px 14px #3e49340a;color:#344235}
 .nav-mobile-link:nth-child(odd){border-right:1px solid #d8dfd3}
 .nav-mobile-link::before{display:none}
 .nav-mobile-link:last-child:nth-child(odd){grid-column:1/-1}
 .nav-mobile-link span{font-size:max(var(--site-readable-min, 0px), .8125rem);font-weight:500;line-height:1.4;letter-spacing:.025em;color:#374638}
 .nav-mobile-actions{gap:9px;margin-top:0}
 .site-header nav.open .nav-mobile-action{min-height:52px;padding:9px 12px;border-radius:12px;background:#fffdfb;border-color:#cbd4c6;color:#344535;box-shadow:0 7px 20px #3444300d;font-size:max(var(--site-readable-min, 0px), .875rem);letter-spacing:.025em}
 .site-header nav.open .nav-mobile-line{background:linear-gradient(135deg,#536d52,#657d60);border-color:#536d52;color:#fff;box-shadow:0 8px 22px #3f5a3a2b}
 .nav-mobile-action img{filter:saturate(.92)}
 .nav-mobile-info{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:7px 11px;border:1px solid #d8dfd3;border-radius:12px;background:#ffffffb8;box-shadow:0 4px 16px #3e493408}
 .site-header nav.open .nav-mobile-phone{min-height:42px;padding:3px 0;color:#354535}
 .nav-mobile-phone small{color:#647561}
 .nav-mobile-phone .phone-number{font-size:max(var(--site-readable-min, 0px), 1.125rem);color:#40513f}
 .nav-mobile-info p{color:#526150}
 .nav-mobile-social{gap:9px}
 .site-header nav.open .nav-mobile-social a{min-height:46px;border:1px solid #d3dbce;border-radius:12px;background:#ffffffe6;box-shadow:0 5px 16px #3e49340a;color:#3f4d3e;font-size:max(var(--site-readable-min, 0px), .8125rem);letter-spacing:.035em}
 .nav-mobile-social img{max-width:32px;filter:saturate(.9)}
 .site-header nav.open .nav-mobile-shell a{transition:border-color 160ms ease,background-color 160ms ease,box-shadow 160ms ease,transform 160ms ease}
 .site-header nav.open .nav-mobile-shell a:focus-visible{outline:2px solid #667b61;outline-offset:2px;box-shadow:0 0 0 4px #f7faf4,0 7px 20px #34443014}
 .site-header .menu-toggle[aria-expanded="true"]{border-color:#5f735b!important;background:#5f735b;color:#fff!important;box-shadow:0 5px 15px #42523c22}
 .mobile-book .mobile-menu-toggle[aria-expanded="true"]{border-color:#63775f!important;background:#eef3e9;color:#405140!important;box-shadow:none}
}
@media(max-width:340px){
 .site-header nav.open .nav-mobile-shell{padding:14px 13px 16px;gap:9px}
 .nav-mobile-treatment-grid,.nav-mobile-link-grid,.nav-mobile-actions,.nav-mobile-social{gap:6px}
 .site-header nav.open .nav-mobile-treatment{min-height:64px;padding-right:8px;padding-left:11px}
 .site-header nav.open .nav-mobile-link{min-height:44px;padding-right:7px;padding-left:9px}
 .nav-mobile-treatment strong{font-size:max(var(--site-readable-min, 0px), .9375rem)}
 .nav-mobile-link span{font-size:max(var(--site-readable-min, 0px), .75rem)}
 .site-header nav.open .nav-mobile-action{padding-right:8px;padding-left:8px}
 .nav-mobile-info{padding-right:8px;padding-left:8px}
}
@media(max-width:767px) and (max-height:740px){
 .site-header nav.open .nav-mobile-shell{padding-top:12px;padding-bottom:14px;gap:9px}
 .nav-mobile-heading{padding-bottom:8px}
 .site-header nav.open .nav-mobile-treatment{min-height:62px}
 .site-header nav.open .nav-mobile-link{min-height:44px}
 .site-header nav.open .nav-mobile-action{min-height:48px}
 .site-header nav.open .nav-mobile-social a{min-height:44px}
}
@media(max-width:767px) and (prefers-reduced-motion:reduce){
 .site-header nav.open .nav-mobile-shell a{transition:none}
}

@media(max-width:767px){
 .site-header nav.open .nav-mobile-shell a:focus-visible{outline:0;box-shadow:inset 0 0 0 2px #6a7f65,0 7px 20px #34443014}
}

/* Reference-informed editorial balance: airy guide rows and full-width primary actions. */
@media(max-width:767px){
 .nav-mobile-link-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;row-gap:0}
 .site-header nav.open .nav-mobile-link{min-height:46px;padding:8px 3px 8px 13px;border:0!important;border-bottom:1px solid #d5ddd0!important;border-radius:0;background:transparent;box-shadow:none}
 .nav-mobile-link:nth-child(odd){border-right:0!important}
 .nav-mobile-link:last-child:nth-child(odd){grid-column:auto}
 .nav-mobile-link::before{display:block;top:50%;left:1px;width:4px;height:4px;border-radius:50%;background:#81927a;transform:translateY(-50%)}
 .nav-mobile-link span{font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:max(var(--site-readable-min, 0px), .8125rem);font-weight:500;letter-spacing:.035em}
 .nav-mobile-link b{width:22px;height:22px;background:transparent;color:#697a65}
 .nav-mobile-actions{grid-template-columns:1fr;gap:8px;margin-top:1px}
 .site-header nav.open .nav-mobile-action{min-height:49px;padding:9px 14px;border-radius:10px}
 .site-header nav.open .nav-mobile-contact{background:#fffdfaf0}
 .nav-mobile-info{padding:7px 2px;border:0;border-top:1px solid #d4dcd0;border-bottom:1px solid #d4dcd0;border-radius:0;background:transparent;box-shadow:none}
 .site-header nav.open .nav-mobile-social a{border-color:#d6ddd1;background:#ffffffb8;box-shadow:none}
 .site-header nav.open .nav-mobile-link:focus-visible{box-shadow:inset 0 -2px 0 #6a7f65}
}
@media(max-width:340px){
 .nav-mobile-link-grid{column-gap:14px}
 .nav-mobile-actions{gap:6px}
 .site-header nav.open .nav-mobile-action{min-height:46px}
}


/* Refined mobile action dock: one floating surface, quiet utilities, one clear primary action. */
@media(max-width:767px){
 .mobile-book{right:0;bottom:0;left:0;isolation:isolate;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:7px 16px calc(10px + env(safe-area-inset-bottom));border:0;border-radius:0;background:transparent;box-shadow:none}
 .mobile-book::before{content:"";position:absolute;z-index:-1;top:0;right:10px;bottom:calc(7px + env(safe-area-inset-bottom));left:10px;border:1px solid #cbd4c6;border-radius:18px;background:#fbfcf9ed;box-shadow:0 -2px 8px #33402c08,0 12px 34px #26332124;backdrop-filter:blur(16px) saturate(.9);-webkit-backdrop-filter:blur(16px) saturate(.9)}
 .mobile-book a,.mobile-book button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:100%!important;height:54px;min-height:54px;padding:5px 3px;border:0!important;border-radius:12px!important;background:transparent;color:#3d4d3d!important;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:max(var(--site-readable-min, 0px), .75rem);font-weight:600;line-height:1.15;letter-spacing:.035em;box-shadow:none;transition:background-color 160ms ease,color 160ms ease,box-shadow 160ms ease,transform 160ms ease}
 .mobile-book a::before,.mobile-book button::before{display:grid;place-items:center;width:20px;height:18px;color:#647661;font-family:Arial,"Helvetica Neue",sans-serif;font-size:max(var(--site-readable-min, 0px), .6875rem);font-weight:700;line-height:1;letter-spacing:.08em}
 .mobile-book .mobile-phone::before{content:"TEL"}
 .mobile-book .mobile-price::before{content:"¥";font-size:max(var(--site-readable-min, 0px), 1rem);font-weight:500}
 .mobile-book .mobile-menu-toggle::before{content:"☰";font-size:max(var(--site-readable-min, 0px), 1rem);font-weight:400;letter-spacing:0}
 .mobile-book .mobile-menu-toggle[aria-expanded="true"]::before{content:"×";font-size:max(var(--site-readable-min, 0px), 1.125rem)}
 .mobile-book .mobile-line{flex-direction:column;gap:2px;padding:5px 3px!important;border:0!important;border-radius:12px!important;background:linear-gradient(145deg,#506b50,#647d5f)!important;color:#fff!important;box-shadow:0 7px 18px #40573c2c}
 .mobile-book .mobile-line img{width:21px;height:21px;filter:saturate(.92)}
 .mobile-book .mobile-line span{font-size:max(var(--site-readable-min, 0px), .75rem);font-weight:600;line-height:1.1;letter-spacing:.035em}
 .mobile-book .mobile-line::before{display:none}
 .mobile-book .mobile-menu-toggle[aria-expanded="true"]{border:0!important;background:#eaf0e7;color:#3b503c!important;box-shadow:inset 0 0 0 1px #b7c3b2}
 .mobile-book a:focus-visible,.mobile-book button:focus-visible{outline:0;box-shadow:inset 0 0 0 2px #61765d}
 .mobile-book .mobile-line:focus-visible{box-shadow:inset 0 0 0 2px #fff,0 7px 18px #40573c2c}
}
@media(hover:hover) and (pointer:fine) and (max-width:767px){
 .mobile-book a:hover,.mobile-book button:hover{background:#edf2e9;color:#334434!important}
 .mobile-book .mobile-line:hover{background:linear-gradient(145deg,#465f47,#5a7357)!important;color:#fff!important;transform:translateY(-1px)}
}
@media(max-width:340px){
 .mobile-book{gap:2px;padding-right:11px;padding-left:11px}
 .mobile-book::before{right:6px;left:6px}
 .mobile-book a,.mobile-book button{height:52px;min-height:52px;padding-right:1px;padding-left:1px;font-size:max(var(--site-readable-min, 0px), .6875rem);letter-spacing:.015em}
 .mobile-book .mobile-line span{font-size:max(var(--site-readable-min, 0px), .6875rem)}
}
@media(max-width:767px) and (prefers-reduced-motion:reduce){
 .mobile-book a,.mobile-book button{transition:none}
}


/* News lists and related-post lists use one text-first pattern; article-specific images stay in article bodies. */
.wp_posts .wp_post.news-text-only{position:relative;gap:0;padding-left:30px}
.wp_posts .wp_post.news-text-only::before{content:"";position:absolute;top:34px;left:2px;width:7px;height:7px;border:1px solid #768872;border-radius:50%;background:#f9faf6;box-shadow:0 0 0 5px #edf1e9}
.wp_posts .wp_post.news-text-only .wp_post_details{width:100%;max-width:none}
.wp_posts .wp_post.news-text-only .wp_post_date{margin-top:0;color:#5c6b59}
.sidebar_lists li.news-text-only>a{position:relative;display:block;min-height:48px;padding:11px 8px 11px 19px;border-bottom:1px solid #dbe1d7}
.sidebar_lists li.news-text-only>a::before{content:"";position:absolute;top:50%;left:3px;width:5px;height:5px;border-radius:50%;background:#87977f;transform:translateY(-50%)}
.sidebar_lists li.news-text-only p{margin:0}
@media(max-width:767px){
 .wp_posts .wp_post.news-text-only{min-height:108px;padding:24px 0 24px 25px}
 .wp_posts .wp_post.news-text-only::before{top:31px;left:2px;width:6px;height:6px;box-shadow:0 0 0 4px #edf1e9}
 .wp_posts .wp_post.news-text-only .wp_post_ttl{margin-top:7px}
}

/* Keep the current About item clean inside the mobile menu; desktop current-page styling is unchanged. */
@media(max-width:767px){
 .site-header nav.open .nav-mobile-about[aria-current="page"]{text-decoration:none!important}
}


/* Home news rail: scroll the notices first, then allow native scroll chaining back to the page. */
.home .top-information-items{max-height:117px;overflow-y:auto;overscroll-behavior-y:auto;touch-action:pan-y;padding-right:10px;scrollbar-width:thin;scrollbar-color:#9aa994 transparent}
.home .top-information-items::-webkit-scrollbar{width:5px}
.home .top-information-items::-webkit-scrollbar-track{background:transparent}
.home .top-information-items::-webkit-scrollbar-thumb{border-radius:999px;background:#9aa994}
.home .top-information-items:focus-visible{outline:2px solid #73866f;outline-offset:5px;border-radius:4px}
@media(max-width:760px){
 .home .top-information-items{max-height:220px;padding-right:8px}
}


/* Access information frame: preserve the centered inner width while extending only the pale background edge to edge. */
.access-page .second-text>.top-clinic.mb80{--access-info-background:#f1f4ed;width:calc(100% + 40px);margin-left:-20px;margin-right:-20px;padding-top:8px;background:var(--access-info-background);box-shadow:0 0 0 100vmax var(--access-info-background);clip-path:inset(0 -100vmax)}
@media(max-width:760px){
 .access-page .second-text>.top-clinic.mb80{width:calc(100% + 16px);margin-left:-8px;margin-right:-8px}
}


/* Access information heading: inset only the label; keep the full-width decorative rule. */
.access-page .second-text>.top-clinic.mb80>.midashi03{margin-top:0;padding-left:16px}
@media(max-width:760px){
 .access-page .second-text>.top-clinic.mb80>.midashi03{padding-left:10px}
}


/* Home hero: one uniform photo-matched base with a transparent botanical layer. */
.home .home-hero{--home-hero-frame:#fcf9f3;background:var(--home-hero-frame);box-shadow:0 0 0 100vmax var(--home-hero-frame);clip-path:inset(0 -100vmax)}
.home .home-hero .hero-photo{z-index:3;background:transparent}
.home .home-hero .hero-model{-webkit-mask-image:none;mask-image:none}
.home .home-hero .hero-copy{position:relative;z-index:4;background:transparent}
.home .home-hero::before,.home .home-hero::after,.home .home-hero .hero-copy::before{display:none}
.home .home-hero .hero-flora{position:absolute;top:0;bottom:0;z-index:2;display:block;background-image:url('/speed-assets/hero-flora-transparent-lossless-v1.74700cfcd7150d43.webp');background-repeat:no-repeat;pointer-events:none}
.home .home-hero .hero-flora-left{left:-48px;width:230px;background-position:right center;background-size:500px auto;opacity:.55;mask-image:linear-gradient(90deg,#000 0%,#000 64%,transparent 100%)}
.home .home-hero .hero-flora-right{right:0;width:285px;background-position:right center;background-size:520px auto;opacity:.48;mask-image:linear-gradient(90deg,transparent 0%,#000 44%,#000 100%)}
@media(max-width:760px){
 .home .home-hero .hero-model{-webkit-mask-image:none;mask-image:none}
 .home .home-hero .hero-flora{display:block;bottom:auto;background-size:430px auto}
 .home .home-hero .hero-flora-left{top:0;left:0;width:165px;height:310px;background-position:right center;opacity:.38}
 .home .home-hero .hero-flora-right{top:300px;right:0;width:185px;height:calc(100% - 300px);background-position:right center;opacity:.34}
}


/* Clinic confirmed guidance and hand photofacial additions (v44) */
.visitor-guidance,
.treatment-eligibility,
.treatment-addition {
  border: 1px solid rgba(104, 124, 99, .34);
  border-radius: 14px;
  background: rgba(247, 249, 244, .94);
  color: #263226;
}
.visitor-guidance {
  margin: 22px 0 0;
  padding: 18px 20px;
}
.visitor-guidance strong,
.treatment-eligibility strong {
  display: block;
  margin: 0 0 4px;
  color: #52684f;
  font-size: max(var(--site-readable-min, 0px), .86em);
  letter-spacing: .08em;
}
.visitor-guidance strong { margin-bottom: 7px; }
.visitor-guidance p,
.treatment-addition p {
  margin: 0;
}
.contact-notice .visitor-guidance-inline {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid rgba(104, 124, 99, .22);
}
.treatment-eligibility {
  margin: 18px 0 0;
  padding: 14px 16px;
}
.treatment-addition {
  margin: 32px 0 44px;
  padding: 22px 24px;
  scroll-margin-top: 110px;
}
.treatment-addition h3 {
  margin: 0 0 8px;
  color: #52684f;
  font-size: max(var(--site-readable-min, 0px), clamp(18px, 2vw, 23px));
}
.visitor-guidance-list {
  margin-top: 8px;
  font-weight: 600;
}
@media (max-width: 767px) {
  .visitor-guidance { padding: 15px 16px; }
  .treatment-eligibility { padding: 13px 14px; }
  .treatment-addition { margin: 26px 0 36px; padding: 18px 16px; }
}


/* Parking guide on access page (v45) */
.access-page .access-facts a {
  color: inherit;
  text-decoration: underline;
  text-decoration-color: rgba(82, 104, 79, .45);
  text-underline-offset: .2em;
}
.access-page .parking-guide {
  margin: 84px auto 24px;
  scroll-margin-top: 110px;
}
.access-page .parking-guide-title {
  margin-bottom: 30px;
}
.access-page .parking-guide-inner {
  width: min(100%, 800px);
  margin: 0 auto;
  padding: 0;
}
.access-page .parking-guide-lead {
  margin: 0 0 20px;
  color: #313a31;
  font-size: 16px;
  line-height: 1.9;
  text-align: center;
}
.access-page .parking-map-link {
  display: block;
  width: 100%;
  border: 0;
  background: transparent;
}
.access-page .parking-map-link img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  object-fit: contain;
}
.access-page .parking-guide-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 12px;
}
.access-page .parking-guide-note,
.access-page .parking-guide-expand {
  margin: 0;
  font-size: 13px;
  line-height: 1.7;
}
.access-page .parking-guide-note {
  color: #6f756c;
}
.access-page .parking-guide-expand a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  padding: 0 2px;
  color: #52684f;
  text-decoration: underline;
  text-decoration-color: rgba(82, 104, 79, .45);
  text-underline-offset: .28em;
  white-space: nowrap;
}
.access-page .parking-guide-expand a:hover,
.access-page .parking-guide-expand a:focus-visible {
  color: #354832;
  text-decoration-color: currentColor;
}
@media (max-width: 760px) {
  .access-page .parking-guide {
    margin: 58px auto 18px;
    scroll-margin-top: 92px;
  }
  .access-page .parking-guide-title {
    margin-bottom: 22px;
  }
  .access-page .parking-guide-inner {
    width: 100%;
    padding: 0;
  }
  .access-page .parking-guide-lead {
    margin-bottom: 15px;
    font-size: 15px;
    text-align: left;
  }
  .access-page .parking-guide-meta {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }
  .access-page .parking-guide-note {
    font-size: 12px;
  }
  .access-page .parking-guide-expand,
  .access-page .parking-guide-expand a {
    width: 100%;
  }
  .access-page .parking-guide-expand a {
    justify-content: center;
  }
}

/* Compact access guide and campaign cards; keep the source SVG and every price intact. */
@media (min-width: 901px) {
  .access-page .parking-guide { margin-top: 40px; scroll-margin-top: 35px; }
  .access-page .parking-guide-title { margin-bottom: 22px; }
  .access-page .parking-guide-inner {
    width: 100%;
    display: block;
  }
  .access-page .parking-guide-lead {
    margin: 0 0 20px;
    text-align: left;
  }
  .access-page .parking-map-link {
    width: min(100%, 460px);
    margin: 0 auto;
  }
  .access-page .parking-map-link img {
    width: auto;
    height: clamp(420px, calc(100svh - 300px), 470px);
    max-width: 100%;
    margin: 0 auto;
  }
  .access-page .parking-guide-meta {
    width: min(100%, 460px);
    align-items: center;
    gap: 12px;
    margin: 12px auto 0;
  }
}
@media (min-width: 600px) and (max-width: 900px) {
  .access-page .parking-guide-inner { width: min(100%, 460px); }
  .access-page .parking-guide-title { margin-bottom: 18px; }
  .access-page .parking-map-link img { width: auto; height: auto; max-height: 470px; max-width: 100%; margin: 0 auto; }
}

@media (min-width: 768px) {
  .home .home-offers .offer-card { align-self: stretch; }
  .campaign-list-page .campaign-catalog { align-items: start; }
  .home .home-offers .offer-content,
  .campaign-list-page .campaign-catalog .offer-content { flex: 0 1 auto; padding: 12px 18px 9px; }
  .home .home-offers .offer-content { flex: 1 1 auto; }
  .home .home-offers .offer-heading,
  .campaign-list-page .campaign-catalog .offer-heading {
    display: block;
    min-height: 0;
    padding-bottom: 10px;
  }
  .home .home-offers .offer-subtitle,
  .campaign-list-page .campaign-catalog .offer-subtitle { margin-bottom: 5px; }
  .home .home-offers .offer-tags,
  .campaign-list-page .campaign-catalog .offer-tags { margin-top: 7px; }
  .home .home-offers .offer-variant,
  .campaign-list-page .campaign-catalog .offer-variant { padding: 8px 0; }
  .home .home-offers .offer-variant:not(:has(.offer-label))::before,
  .campaign-list-page .campaign-catalog .offer-variant:not(:has(.offer-label))::before { display: none; }
  .home .home-offers .offer-label,
  .campaign-list-page .campaign-catalog .offer-label { margin-bottom: 4px; }
  .home .home-offers .offer-prices,
  .campaign-list-page .campaign-catalog .offer-prices { flex-direction: row; align-items: baseline; justify-content: space-between; gap: 4px 8px; }
  .home .home-offers .offer-detail,
  .campaign-list-page .campaign-catalog .offer-detail {
    display: flex;
    align-items: center;
    min-height: 44px;
    margin-top: 0;
    padding-top: 9px;
  }
  .home .home-offers .offer-detail { margin-top: auto; }
  .home .home-offers .offer-card:has(.offer-variant:nth-child(2)) .offer-variant,
  .campaign-list-page .campaign-catalog .offer-card:has(.offer-variant:nth-child(2)) .offer-variant { padding: 8px 0; }
  .home .home-offers .offer-card:has(.offer-variant:nth-child(2)) .offer-heading,
  .campaign-list-page .campaign-catalog .offer-card:has(.offer-variant:nth-child(2)) .offer-heading { padding-bottom: 8px; }
}
@media (max-width: 767px) {
  .home .home-offers .offer-card { align-self: flex-start; }
  .home .home-offers .offer-content,
  .campaign-list-page .campaign-catalog .offer-content { flex: 0 1 auto; padding: 14px 18px 10px; }
  .home .home-offers .offer-heading,
  .campaign-list-page .campaign-catalog .offer-heading { min-height: 0; padding-bottom: 10px; }
  .home .home-offers .offer-tags,
  .campaign-list-page .campaign-catalog .offer-tags { margin-top: 8px; }
  .home .home-offers .offer-variant,
  .campaign-list-page .campaign-catalog .offer-variant { padding: 9px 0; }
  .home .home-offers .offer-detail,
  .campaign-list-page .campaign-catalog .offer-detail {
    display: flex;
    align-items: center;
    min-height: 48px;
    margin-top: 0;
    padding-top: 10px;
  }
}

/* About: full-bleed welcome background, with its original central content width. */
.about-page .intro.about-welcome.about-welcome-refined {
  box-sizing: border-box;
  width: 100vw;
  max-width: none;
  margin-inline: calc(50% - 50vw);
  border-radius: 0;
}
@media (min-width: 761px) {
  .about-page .intro.about-welcome.about-welcome-refined {
    padding-inline: max(50px, calc(50vw - 530px));
  }
}
@media (max-width: 760px) {
  .about-page .intro.about-welcome.about-welcome-refined {
    padding-inline: clamp(20px, 6.15vw, 24px);
  }
}

/* Only these four 1600x960/961 device photos letterbox in the site's 3:2 frames.
   Keep original files intact; clip outer horizontal background, not people or devices. */
:is(.home .home-offers img.offer-image, .campaign-list-page .campaign-catalog img.offer-image,
    .home .treatment-slide > img,
    .campaign-list > li > img.service-visual, .treatment-list img.service-visual,
    .inner .intro > img.service-visual):is(
      [src$="device-dermapen-pose2.webp"], [src$="device-velvet-pose2-age28-botanical.webp"],
      [src$="device-m22-pose2-face30-age28-botanical.webp"], [src$="device-hycoox-pose2.webp"]
    ) {
  object-fit: cover !important;
  object-position: center center !important;
}
/* Retain the M22 handset's far-right edge without clipping the face. */
:is(.home .home-offers img.offer-image, .campaign-list-page .campaign-catalog img.offer-image,
    .home .treatment-slide > img,
    .campaign-list > li > img.service-visual, .treatment-list img.service-visual,
    .inner .intro > img.service-visual)[src$="device-m22-pose2-face30-age28-botanical.webp"] {
  object-position: 78% center !important;
}
/* Keep both PRX-T vials and their printed labels fully inside the Velvet Skin frame. */
:is(.home .home-offers img.offer-image, .campaign-list-page .campaign-catalog img.offer-image,
    .home .treatment-slide > img,
    .campaign-list > li > img.service-visual, .treatment-list img.service-visual,
    .inner .intro > img.service-visual)[src$="device-velvet-pose2-age28-botanical.webp"] {
  object-position: 85% center !important;
}

/* Price hierarchy: pair first-visit and regular rates for the 14 campaign cards.
   Preserve imagery, card widths, lift, horizontal desktop rail and vertical mobile flow. */
.home .home-offers .offer-prices,
.campaign-list-page .campaign-catalog .offer-prices {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: start;
  gap: 6px 8px;
}
.home .home-offers .offer-prices > p,
.campaign-list-page .campaign-catalog .offer-prices > p {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  gap: 3px;
  white-space: normal;
}
.home .home-offers .offer-prices > p > span,
.campaign-list-page .campaign-catalog .offer-prices > p > span {
  display: inline-flex;
  align-items: center;
  min-height: 1.55em;
  max-width: 100%;
  font-size: max(var(--site-readable-min, 0px), .75rem);
  line-height: 1.45;
  white-space: normal;
  overflow-wrap: anywhere;
}
@media (max-width: 359px) {
  .home .home-offers .offer-prices,
  .campaign-list-page .campaign-catalog .offer-prices {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 8px;
  }
}

/* Regular-price cues belong only to the usual-treatment rail and category lists. */
.treatment-slide .normal-fee,
.treatment-list .normal-fee {
  min-width: 0;
  border-top: 1px solid #e5ebdf;
  color: #405540;
  font-variant-numeric: lining-nums tabular-nums;
}
.treatment-slide .normal-fee {
  padding-top: 11px;
  margin: -5px 0 16px;
}
.treatment-list .normal-fee {
  margin: auto 23px 22px;
  padding-top: 12px;
}
.normal-fee-title {
  display: block;
  margin-bottom: 5px;
  font-size: max(var(--site-readable-min, 0px), .75rem);
  font-weight: 600;
  color: #657a60;
}
.normal-fee-line {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 2px 7px;
  min-width: 0;
  margin: 3px 0;
  line-height: 1.55;
}
.normal-fee-condition {
  min-width: 0;
  font-size: max(var(--site-readable-min, 0px), .75rem);
  line-height: 1.55;
  overflow-wrap: anywhere;
}
.normal-fee-amount {
  display: inline-block;
  font-size: max(var(--site-readable-min, 0px), 1rem);
  font-weight: 600;
  white-space: nowrap;
}
.normal-fee-note {
  display: block;
  margin-top: 5px;
  font-size: max(var(--site-readable-min, 0px), .72rem);
  line-height: 1.5;
  color: #657a60;
}
@media (max-width: 767px) {
  .treatment-slide .normal-fee { margin: -2px 0 12px; padding-top: 9px; }
  .treatment-list .normal-fee { margin: auto 20px 20px; }
  .normal-fee-amount { font-size: max(var(--site-readable-min, 0px), .9375rem); }
}

/* v63 — typographic rhythm only for the homepage treatment rail and first-visit cards.
   Keep card imagery, rail geometry, hover/edge motion and the mobile grid unchanged. */
.home .treatment-slide-text {
  padding: 18px 18px 18px;
}
.home .treatment-slide small {
  font-size: max(var(--site-readable-min, 0px), 11px);
  line-height: 1.5;
  letter-spacing: .09em;
  color: #70816d;
}
.home .treatment-slide h3 {
  margin: 8px 0 13px;
  font-family: "Hiragino Mincho ProN", "Yu Mincho", YuMincho, Georgia, serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.47;
  letter-spacing: .015em;
  color: #3d503f;
  word-break: normal;
}
.home .treatment-slide .treatment-title-line,
.home .treatment-slide .treatment-subname {
  display: block;
}
.home .treatment-slide .treatment-subname {
  margin-top: 3px;
  font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: .02em;
  color: #71806f;
}
.home .treatment-slide .normal-fee {
  margin: auto 0;
  padding-top: 11px;
  border-color: #dce6d9;
}
.home .treatment-slide .normal-fee-title {
  margin-bottom: 6px;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .08em;
  color: #697a66;
}
.home .treatment-slide .normal-fee-line {
  display: block;
  margin: 0;
  line-height: 1.45;
}
.home .treatment-slide .normal-fee-line + .normal-fee-line {
  margin-top: 8px;
}
.home .treatment-slide .normal-fee-condition {
  display: block;
  margin: 0 0 2px;
  font-size: 12.5px;
  font-weight: 500;
  line-height: 1.55;
  color: #4c624c;
  overflow-wrap: anywhere;
}
.home .treatment-slide .normal-fee-amount {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  width: 100%;
  gap: 4px;
  font-weight: 400;
  white-space: nowrap;
}
.home .treatment-slide .normal-fee-unit {
  font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .04em;
  color: #667663;
}
.home .treatment-slide .normal-fee-money {
  display: inline-flex;
  align-items: baseline;
  font-family: Georgia, "Times New Roman", serif;
  font-variant-numeric: lining-nums tabular-nums;
  color: #405940;
}
.home .treatment-slide .normal-fee-currency {
  margin-right: .12em;
  font-size: 14px;
}
.home .treatment-slide .normal-fee-value {
  font-size: 25px;
  line-height: 1.14;
  letter-spacing: -.025em;
}
.home .treatment-slide .normal-fee-note {
  margin-top: 6px;
  font-size: 12px;
  line-height: 1.5;
}
.home .treatment-slide-text > span:last-child {
  display: flex;
  align-items: center;
  min-height: 34px;
  margin-top: 0;
  font-size: 12px;
  font-weight: 500;
  color: #5d785b;
}

/* A shared editorial hierarchy for the homepage carousel and campaign overview.
   No heavy price-only boxes; both rates stay paired with their original condition. */
.home .home-offers .offer-content,
.campaign-list-page .campaign-catalog .offer-content {
  padding: 15px 18px 13px;
}
.home .home-offers .offer-heading,
.campaign-list-page .campaign-catalog .offer-heading {
  padding-bottom: 9px;
}
.home .home-offers .offer-subtitle,
.campaign-list-page .campaign-catalog .offer-subtitle {
  margin-bottom: 6px;
  font-size: max(var(--site-readable-min, 0px), 11px);
  line-height: 1.55;
  letter-spacing: .015em;
  color: #6f806d;
}
.home .home-offers .offer-heading h3,
.campaign-list-page .campaign-catalog .offer-heading h3 {
  font-family: "Hiragino Mincho ProN", "Yu Mincho", YuMincho, Georgia, serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.43;
  letter-spacing: .015em;
  color: #405440;
}
.home .home-offers .offer-machine,
.campaign-list-page .campaign-catalog .offer-machine {
  margin-top: 3px;
  font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.5;
  color: #728171;
}
.home .home-offers .offer-variants,
.campaign-list-page .campaign-catalog .offer-variants {
  border-color: #dce6d9;
}
.home .home-offers .offer-variant,
.campaign-list-page .campaign-catalog .offer-variant {
  padding: 9px 0;
  border-bottom: 0;
}
.home .home-offers .offer-variant:not(:last-child),
.campaign-list-page .campaign-catalog .offer-variant:not(:last-child) {
  border-bottom: 1px solid #edf0e9;
}
.home .home-offers .offer-label,
.campaign-list-page .campaign-catalog .offer-label {
  margin-bottom: 6px;
  font-size: 12.5px;
  font-weight: 500;
  line-height: 1.5;
  color: #536852;
}
.home .home-offers .offer-prices,
.campaign-list-page .campaign-catalog .offer-prices {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: end;
  gap: 5px 10px;
}
.home .home-offers .offer-prices > p,
.campaign-list-page .campaign-catalog .offer-prices > p {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  min-width: 0;
}
.home .home-offers .offer-prices > p > span,
.campaign-list-page .campaign-catalog .offer-prices > p > span {
  min-height: 0;
  padding: 0;
  background: none;
  border: 0;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: .035em;
  color: #70816f;
  white-space: nowrap;
}
.home .home-offers .offer-prices > p.offer-special > span,
.campaign-list-page .campaign-catalog .offer-prices > p.offer-special > span {
  color: #4b684d;
}
.home .home-offers .offer-standard strong,
.campaign-list-page .campaign-catalog .offer-standard strong {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 18px;
  font-weight: 400;
  font-variant-numeric: lining-nums tabular-nums;
  line-height: 1.2;
  letter-spacing: -.025em;
  color: #647662;
}
.home .home-offers .offer-special strong,
.campaign-list-page .campaign-catalog .offer-special strong {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 27px;
  font-weight: 400;
  font-variant-numeric: lining-nums tabular-nums;
  line-height: 1.12;
  letter-spacing: -.025em;
  color: #405940;
}
.home .home-offers .offer-prices strong .price-currency,
.campaign-list-page .campaign-catalog .offer-prices strong .price-currency {
  margin-right: .1em;
  font-size: max(var(--site-readable-min, 0px), .59em);
  font-weight: 400;
  color: inherit;
}
.home .home-offers .offer-detail,
.campaign-list-page .campaign-catalog .offer-detail {
  padding-top: 8px;
  font-size: 12px;
  font-weight: 500;
  color: #5d785b;
}
@media (min-width: 768px) {
  .home .home-offers .offer-variants { margin-top: auto; margin-bottom: auto; }
  .home .home-offers .offer-detail { margin-top: 0; }
}
@media (max-width: 767px) {
  .home .treatment-slide-text { padding: 15px 13px 16px; }
  .home .treatment-slide h3 { font-size: 16px; line-height: 1.5; margin: 9px 0 12px; }
  .home .treatment-slide .treatment-subname { font-size: 12.5px; }
  .home .treatment-slide .normal-fee { padding-top: 9px; margin: auto 0; }
  .home .treatment-slide .normal-fee-value { font-size: 21px; }
  .home .treatment-slide .normal-fee-currency { font-size: 13px; }
  .home .treatment-slide .normal-fee-unit { font-size: 12px; }
  .home .treatment-slide .normal-fee-condition { font-size: 12px; }
  .home .treatment-slide-text > span:last-child { font-size: 12px; }
  .home .home-offers .offer-content,
  .campaign-list-page .campaign-catalog .offer-content { padding: 17px 19px 13px; }
  .home .home-offers .offer-heading h3,
  .campaign-list-page .campaign-catalog .offer-heading h3 { font-size: 21px; }
  .home .home-offers .offer-subtitle,
  .campaign-list-page .campaign-catalog .offer-subtitle { font-size: 13px; }
  .home .home-offers .offer-machine,
  .campaign-list-page .campaign-catalog .offer-machine { font-size: 14px; }
  .home .home-offers .offer-special strong,
  .campaign-list-page .campaign-catalog .offer-special strong { font-size: 28px; }
  .home .home-offers .offer-detail,
  .campaign-list-page .campaign-catalog .offer-detail { font-size: 13px; }
  .home .home-offers .offer-variants { margin: 0; }
}
@media (max-width: 359px) {
  .home .home-offers .offer-prices,
  .campaign-list-page .campaign-catalog .offer-prices { grid-template-columns: minmax(0, 1fr); row-gap: 8px; }
  .home .treatment-slide h3 { font-size: 19px; }
  .home .treatment-slide .normal-fee-value { font-size: 24px; }
}

/* v64 — a first visit is a rate within the ordinary treatment price list, not a campaign.
   Preserve v63 card geometry, serif figures, photo frames and rail behavior. */
.home .treatment-slide .normal-fee--has-initial .normal-fee-pair,
.treatment-list .normal-fee--has-initial .normal-fee-pair {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px 10px;
  min-width: 0;
}
.home .treatment-slide .normal-fee--has-initial .normal-fee-pair .normal-fee-amount,
.treatment-list .normal-fee--has-initial .normal-fee-pair .normal-fee-amount {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: auto;
  min-width: 0;
  gap: 1px;
  font-weight: 400;
  line-height: 1.25;
  white-space: nowrap;
}
.home .treatment-slide .normal-fee--has-initial .normal-fee-pair .normal-fee-unit,
.treatment-list .normal-fee--has-initial .normal-fee-pair .normal-fee-unit {
  font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  font-size: max(var(--site-readable-min, 0px), 11px);
  font-weight: 500;
  letter-spacing: .025em;
  color: #687b67;
}
.home .treatment-slide .normal-fee--has-initial .normal-fee-pair .normal-fee-money,
.treatment-list .normal-fee--has-initial .normal-fee-pair .normal-fee-money {
  display: inline-flex;
  align-items: baseline;
  font-family: Georgia, "Times New Roman", serif;
  font-variant-numeric: lining-nums tabular-nums;
}
.home .treatment-slide .normal-fee--has-initial .normal-fee-pair .normal-fee-currency,
.treatment-list .normal-fee--has-initial .normal-fee-pair .normal-fee-currency {
  margin-right: .12em;
  font-size: 13px;
}
.home .treatment-slide .normal-fee--has-initial .normal-fee-amount--initial .normal-fee-value,
.treatment-list .normal-fee--has-initial .normal-fee-amount--initial .normal-fee-value {
  font-size: 23px;
  letter-spacing: -.025em;
  color: #405940;
}
.home .treatment-slide .normal-fee--has-initial .normal-fee-amount--regular .normal-fee-value,
.treatment-list .normal-fee--has-initial .normal-fee-amount--regular .normal-fee-value {
  font-size: 18px;
  letter-spacing: -.025em;
  color: #657762;
}
.treatment-list .normal-fee--has-initial .normal-fee-line--paired + .normal-fee-line--paired {
  margin-top: 8px;
}
@media (max-width: 767px) {
  .home .treatment-slide .normal-fee--has-initial .normal-fee-pair {
    grid-template-columns: minmax(0, 1fr);
    gap: 3px;
  }
  .home .treatment-slide .normal-fee--has-initial .normal-fee-pair .normal-fee-amount {
    flex-direction: row;
    align-items: baseline;
    justify-content: space-between;
    gap: 2px;
  }
  .home .treatment-slide .normal-fee--has-initial .normal-fee-amount--initial .normal-fee-value {
    font-size: 20px;
  }
  .home .treatment-slide .normal-fee--has-initial .normal-fee-amount--regular .normal-fee-value {
    font-size: 16px;
  }
  .treatment-list .normal-fee--has-initial .normal-fee-amount--initial .normal-fee-value {
    font-size: 20px;
  }
  .treatment-list .normal-fee--has-initial .normal-fee-amount--regular .normal-fee-value {
    font-size: 17px;
  }
}
.treatment-list .normal-fee--has-initial .normal-fee-line--paired {
  display: block;
}
.treatment-list .normal-fee--has-initial .normal-fee-line--paired .normal-fee-condition {
  display: block;
  margin-bottom: 3px;
}

/* v65 — only the 22 usual-treatment cards on the homepage.
   First-visit prices belong to the ordinary price list, not a limited campaign. */
.home #treatments .treatment-slide {
  align-self: flex-start;
  height: auto;
  min-height: 0;
}
.home #treatments .treatment-slide-text {
  flex: 0 0 auto;
  min-height: 0;
  padding: 20px 22px 19px;
}
.home #treatments .treatment-slide small:not(.normal-fee-note) {
  font-size: max(var(--site-readable-min, 0px), 11px);
  font-weight: 400;
  letter-spacing: .085em;
  line-height: 1.4;
}
.home #treatments .treatment-slide h3 {
  margin: 7px 0 0;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.38;
  letter-spacing: .005em;
}
.home #treatments .treatment-slide .treatment-subname {
  margin-top: 3px;
  font-size: 13px;
  line-height: 1.55;
}
.home #treatments .treatment-slide .normal-fee {
  flex: 0 0 auto;
  margin: 18px 0 0;
  padding-top: 10px;
  border-top: 1px solid #dce6d9;
}
.home #treatments .treatment-slide .normal-fee-title {
  display: none;
}
.home #treatments .treatment-slide .normal-fee-line {
  display: block;
  margin: 0;
}
.home #treatments .treatment-slide .normal-fee-line + .normal-fee-line {
  margin-top: 14px;
}
.home #treatments .treatment-slide .normal-fee-condition {
  display: block;
  margin: 0 0 4px;
  font-size: 12.5px;
  font-weight: 500;
  line-height: 1.55;
}
.home #treatments .treatment-slide .normal-fee-pair {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: flex-start;
  gap: 5px 9px;
  min-width: 0;
}
.home #treatments .treatment-slide .normal-fee-amount,
.home #treatments .treatment-slide .normal-fee--has-initial .normal-fee-pair .normal-fee-amount {
  display: inline-flex;
  flex: 0 0 auto;
  flex-direction: row;
  align-items: baseline;
  justify-content: flex-start;
  width: auto;
  max-width: 100%;
  min-width: 0;
  gap: 6px;
  white-space: nowrap;
  font-weight: 400;
}
.home #treatments .treatment-slide .normal-fee-unit,
.home #treatments .treatment-slide .normal-fee--has-initial .normal-fee-pair .normal-fee-unit {
  flex: 0 0 auto;
  padding: 2px 5px;
  border: 1px solid #e2e8dd;
  border-radius: 2px;
  background: #f3f6ef;
  color: #72816b;
  font-size: max(var(--site-readable-min, 0px), 11.5px);
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: .02em;
}
.home #treatments .treatment-slide .normal-fee-amount--initial .normal-fee-unit {
  border-color: #dce6d9;
  background: #edf3e9;
  color: #52684f;
}
.home #treatments .treatment-slide .normal-fee-amount--initial::before {
  content: '›';
  margin-right: 2px;
  color: #a4b39d;
  font-family: Georgia, serif;
  font-size: 17px;
  line-height: 1;
}
.home #treatments .treatment-slide .normal-fee-money,
.home #treatments .treatment-slide .normal-fee--has-initial .normal-fee-pair .normal-fee-money {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: baseline;
  white-space: nowrap;
  color: #4f664c;
}
.home #treatments .treatment-slide .normal-fee-amount--regular .normal-fee-money {
  color: #667962;
}
.home #treatments .treatment-slide .normal-fee-currency,
.home #treatments .treatment-slide .normal-fee--has-initial .normal-fee-pair .normal-fee-currency {
  margin-right: .1em;
  font-size: 13px;
}
.home #treatments .treatment-slide .normal-fee-value,
.home #treatments .treatment-slide .normal-fee--has-initial .normal-fee-amount--initial .normal-fee-value {
  font-size: 27px;
  line-height: 1.15;
  letter-spacing: -.03em;
}
.home #treatments .treatment-slide .normal-fee-amount--regular .normal-fee-value,
.home #treatments .treatment-slide .normal-fee--has-initial .normal-fee-amount--regular .normal-fee-value {
  font-size: 21px;
  line-height: 1.15;
  letter-spacing: -.025em;
}
.home #treatments .treatment-slide .normal-fee-note {
  margin-top: 7px;
  font-size: max(var(--site-readable-min, 0px), 11.5px);
}
.home #treatments .treatment-slide-text > span:last-child {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  min-height: 23px;
  width: auto;
  margin: 17px 0 0;
  color: #557051;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
}
.home #treatments .treatment-detail-arrow {
  display: inline-grid;
  flex: 0 0 23px;
  place-items: center;
  width: 23px;
  height: 23px;
  margin-left: 8px;
  border: 1px solid #ccd9c5;
  border-radius: 50%;
  background: #f5f8f2;
  color: #60775b;
  font-family: Arial, sans-serif;
  font-size: 13px;
  line-height: 1;
}
@media (min-width: 768px) {
  .home #treatments .treatment-slide {
    flex: 0 0 344px;
  }
}
@media (max-width: 767px) {
  .home #treatments .treatment-slide-text {
    padding: 14px 12px 16px;
  }
  .home #treatments .treatment-slide h3 {
    font-size: 17px;
    line-height: 1.45;
  }
  .home #treatments .treatment-slide .treatment-subname {
    font-size: 12px;
  }
  .home #treatments .treatment-slide .normal-fee {
    margin-top: 16px;
    padding-top: 9px;
  }
  .home #treatments .treatment-slide .normal-fee-line + .normal-fee-line {
    margin-top: 12px;
  }
  .home #treatments .treatment-slide .normal-fee-condition {
    font-size: 12px;
  }
  .home #treatments .treatment-slide .normal-fee-pair {
    gap: 5px 8px;
  }
  .home #treatments .treatment-slide .normal-fee-amount--regular .normal-fee-value,
  .home #treatments .treatment-slide .normal-fee--has-initial .normal-fee-amount--regular .normal-fee-value {
    font-size: 18px;
  }
  .home #treatments .treatment-slide .normal-fee-value,
  .home #treatments .treatment-slide .normal-fee--has-initial .normal-fee-amount--initial .normal-fee-value {
    font-size: 22px;
  }
  .home #treatments .treatment-slide .normal-fee-amount--initial::before {
    display: none;
  }
  .home #treatments .treatment-slide-text > span:last-child {
    margin-top: 15px;
  }
}
.home #treatments .treatment-slide .treatment-title-controlled {
  word-break: keep-all;
  overflow-wrap: normal;
}

/* v66 — one clean numeral face for the homepage's 22 usual-treatment prices only. */
.home #treatments .treatment-slide .normal-fee-money,
.home #treatments .treatment-slide .normal-fee-amount .normal-fee-money .normal-fee-currency,
.home #treatments .treatment-slide .normal-fee-amount .normal-fee-money .normal-fee-value {
  font-family: Arial, "Helvetica Neue", sans-serif;
  font-variant-numeric: lining-nums tabular-nums;
  font-style: normal;
  font-weight: 400;
  font-synthesis: none;
  letter-spacing: 0;
  white-space: nowrap;
}
.home #treatments .treatment-slide .normal-fee-amount .normal-fee-money .normal-fee-currency {
  font-size: 18px; /* 18 / 27 = 67% */
  line-height: 1;
}
.home #treatments .treatment-slide .normal-fee-amount--regular .normal-fee-money .normal-fee-currency {
  font-size: 14px; /* 14 / 21 = 67% */
}
@media (max-width: 767px) {
  .home #treatments .treatment-slide .normal-fee-amount .normal-fee-money .normal-fee-currency {
    font-size: 15px; /* 15 / 22 = 68% */
  }
  .home #treatments .treatment-slide .normal-fee-amount--regular .normal-fee-money .normal-fee-currency {
    font-size: 12px; /* 12 / 18 = 67% */
  }
}

/* v67 — reserve comfortable room for every five-digit price pair at rest on desktop. */
@media (min-width: 768px) {
  .home #treatments .treatment-slide .normal-fee-pair {
    flex-wrap: nowrap;
    column-gap: 4px;
    white-space: nowrap;
  }
  .home #treatments .treatment-slide .normal-fee-pair .normal-fee-amount {
    gap: 4px;
  }
  .home #treatments .treatment-slide .normal-fee--has-initial .normal-fee-pair .normal-fee-unit {
    padding: 2px 4px;
    font-size: max(var(--site-readable-min, 0px), 11px);
  }
  .home #treatments .treatment-slide .normal-fee-pair .normal-fee-amount--initial::before {
    margin-right: 0;
    font-size: 14px;
  }
  .home #treatments .treatment-slide .normal-fee-pair .normal-fee-amount--regular .normal-fee-value {
    font-size: 18px;
  }
  .home #treatments .treatment-slide .normal-fee-pair .normal-fee-amount--initial .normal-fee-value {
    font-size: 24px;
  }
  .home #treatments .treatment-slide .normal-fee-pair .normal-fee-amount--regular .normal-fee-currency {
    font-size: 12px;
  }
  .home #treatments .treatment-slide .normal-fee-pair .normal-fee-amount--initial .normal-fee-currency {
    font-size: 16px;
  }
}

/* v68 — match the homepage's usual-treatment numerals in Campaign prices only. */
.home .home-offers .offer-prices > p strong,
.campaign-list-page .campaign-catalog .offer-prices > p strong,
.home .home-offers .offer-prices > p strong .price-value,
.campaign-list-page .campaign-catalog .offer-prices > p strong .price-value,
.home .home-offers .offer-prices > p strong .price-currency,
.campaign-list-page .campaign-catalog .offer-prices > p strong .price-currency {
  font-family: Arial, "Helvetica Neue", sans-serif;
  font-variant-numeric: lining-nums tabular-nums;
  font-style: normal;
  font-weight: 400;
  font-synthesis: none;
  letter-spacing: 0;
  white-space: nowrap;
}
.home .home-offers .offer-prices > p strong,
.campaign-list-page .campaign-catalog .offer-prices > p strong {
  display: inline-flex;
  align-items: baseline;
}
.home .home-offers .offer-prices > p strong .price-value,
.campaign-list-page .campaign-catalog .offer-prices > p strong .price-value {
  font-size: inherit;
  line-height: inherit;
}
.home .home-offers .offer-prices > p strong .price-currency,
.campaign-list-page .campaign-catalog .offer-prices > p strong .price-currency {
  font-size: max(var(--site-readable-min, 0px), .67em);
  line-height: 1;
  vertical-align: baseline;
  margin-right: .1em;
}
/* v71 — first-visit rates only; ordinary rates, pricing and spacing stay unchanged. */
:root { --first-visit-price-ink: #9a5147; }
.home .home-offers .offer-prices > p.offer-special > span,
.campaign-list-page .campaign-catalog .offer-prices > p.offer-special > span,
.home .home-offers .offer-prices > p.offer-special > strong,
.campaign-list-page .campaign-catalog .offer-prices > p.offer-special > strong,
.home .home-offers .offer-prices > p.offer-special > strong :is(.price-currency, .price-value),
.campaign-list-page .campaign-catalog .offer-prices > p.offer-special > strong :is(.price-currency, .price-value),
.home #treatments .treatment-slide .normal-fee--has-initial .normal-fee-pair .normal-fee-amount--initial :is(.normal-fee-unit, .normal-fee-money, .normal-fee-currency, .normal-fee-value),
.treatment-list .normal-fee--has-initial .normal-fee-pair .normal-fee-amount--initial :is(.normal-fee-unit, .normal-fee-money, .normal-fee-currency, .normal-fee-value),
.price-tbl tr.sub td.initial-rate-label,
.price-tbl tr.price td.initial-rate-price:has(.price-value),
.price-tbl tr.price td.initial-rate-price :is(.price-currency, .price-value) {
  color: var(--first-visit-price-ink);
}


/* Mobile text minimum only; desktop values and typefaces are unchanged. */
@media (max-width: 767px) { :root { --site-readable-min: 12px; } }

/* Native small text can inherit a sub-12px browser default from a 14px parent. */
@media (max-width: 767px) {
  small, sub, sup { font-size: max(12px, .8333333333em); }
}
