@charset "UTF-8";
/* =========================================================
   Beauty Top Page (v2) — PDF reproduction
   Prefix: .bt-  (scoped to #bt-root)
   Fonts : Shippori Mincho (serif) / Noto Sans JP (sans)
========================================================= */

#bt-root {
    --bt-sns-unit-width: 1032px;
    --bt-text      : #2a2620;
    --bt-text-soft : #6d6458;
    --bt-bg        : #ffffff;
    --bt-bg-soft   : #faf7f2;
    --bt-bg-beige  : #e9e2d5;
    --bt-bg-taupe  : #a89a86;
    --bt-bg-brown  : #9d8a6e;
    --bt-gold      : #b99e74;
    --bt-gold-dk   : #8c7b64;
    --bt-line      : #ded6c7;
    --bt-serif     : "Shippori Mincho", "Yu Mincho", "YuMincho", serif;
    --bt-noto-serif: "Noto Serif JP", "Yu Mincho", "YuMincho", serif;
    --bt-inter     : "Inter", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
    --bt-cormorant : "Cormorant Garamond", "Times New Roman", serif;
    --bt-sans      : "Noto Sans JP", -apple-system, "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
    color: var(--bt-text);
    font-family: var(--bt-sans);
    -webkit-font-smoothing: antialiased;
    font-feature-settings: "palt";
}

/* Final translated regenerative balance: align title to the lead label and protect long translations. */
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead {
    left: clamp(46px, 4.6vw, 78px) !important;
    width: min(84vw, 1380px) !important;
    aspect-ratio: 859 / 85 !important;
    height: auto !important;
    min-height: 0 !important;
    padding: .12em 5.1vw .18em !important;
    font-size: clamp(18px, 2.02vw, 34px) !important;
    line-height: .98 !important;
    letter-spacing: .045em !important;
    text-align: center !important;
    text-indent: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    text-wrap: balance;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title {
    left: clamp(46px, 4.6vw, 78px) !important;
    width: min(84vw, 1380px) !important;
    text-align: center !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura {
    align-items: center !important;
    width: 100% !important;
}

html[lang|="mn"] #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body:lang(mn) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead {
    width: min(88vw, 1450px) !important;
    font-size: clamp(16px, 1.78vw, 30px) !important;
    line-height: .94 !important;
    letter-spacing: .025em !important;
    padding-inline: 4.8vw !important;
}

html[lang|="mn"] #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body:lang(mn) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title {
    font-size: clamp(42px, 3.92vw, 66px) !important;
    line-height: 1.1 !important;
    width: min(84vw, 1380px) !important;
}

html[lang|="mn"] #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span,
body:lang(mn) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span {
    font-size: clamp(16px, 1.48vw, 25px) !important;
    line-height: .98 !important;
    width: 86% !important;
    max-width: 86% !important;
    overflow-wrap: anywhere !important;
}

@media (min-width: 769px) {
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title {
    left: 48.4% !important;
    top: 11.0% !important;
    width: max-content !important;
    max-width: none !important;
    line-height: .94 !important;
}
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical,
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical * {
    font-size: min(8.9vw, 168px) !important;
    line-height: .94 !important;
}
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser,
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser * {
    font-size: min(6.25vw, 119px) !important;
    line-height: .96 !important;
}
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise {
    left: 72.6% !important;
    top: 13.4% !important;
    font-size: min(2.35vw, 42px) !important;
    gap: .65vw !important;
}
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc {
    left: 48.4% !important;
    top: 61.5% !important;
    bottom: auto !important;
    font-size: min(1.72vw, 31px) !important;
    gap: .72vw !important;
    max-width: 48vw !important;
}
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc {
    display: none !important;
}
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title {
    left: 48.4% !important;
    top: 12.2% !important;
    width: 45vw !important;
    font-size: min(4.9vw, 88px) !important;
}
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise {
    left: 72.2% !important;
    top: 13.6% !important;
    width: 26vw !important;
    font-size: min(1.48vw, 26px) !important;
}
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc {
    left: 50.7% !important;
    top: 56.4% !important;
    bottom: auto !important;
    width: 48vw !important;
    font-size: min(1.35vw, 23px) !important;
}
}

/* Last word: translated title belongs to the same left column as the hexagons. */
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title {
    left: clamp(76px, 7.2vw, 121px) !important;
    width: clamp(520px, 45vw, 770px) !important;
    text-align: left !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura {
    align-items: flex-start !important;
}

html[lang|="mn"] #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body:lang(mn) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title {
    left: clamp(76px, 7.2vw, 121px) !important;
    width: clamp(560px, 46vw, 790px) !important;
}

@media (min-width: 769px) {
/* Absolute final epilation pass: keep the slide locked to the original artboard proportions. */
#bt-root .bt-hero__slide--epilation .bt-epilation-hero {
    position: absolute !important;
    z-index: 2 !important;
    isolation: isolate !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    overflow: visible !important;
    color: #756554 !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title {
    position: absolute !important;
    z-index: 2 !important;
    isolation: isolate !important;
    left: 48.4% !important;
    top: 9.7% !important;
    display: block !important;
    width: max-content !important;
    max-width: none !important;
    margin: 0 !important;
    overflow: visible !important;
    color: #756554 !important;
    font-family: var(--bt-noto-serif) !important;
    font-weight: 600 !important;
    letter-spacing: .015em !important;
    line-height: .94 !important;
    text-align: left !important;
    white-space: nowrap !important;
    visibility: visible !important;
    opacity: 1 !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line {
    display: block !important;
    max-width: none !important;
    overflow: visible !important;
    white-space: nowrap !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical,
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical * {
    font-size: min(8.9vw, calc(168px * var(--bt-hero-scale, 1))) !important;
    line-height: .94 !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser,
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser * {
    margin-top: .04em !important;
    font-size: min(6.25vw, calc(119px * var(--bt-hero-scale, 1))) !important;
    line-height: .96 !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise {
    position: absolute !important;
    left: 72.6% !important;
    top: 13.4% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: .65vw !important;
    width: max-content !important;
    max-width: 25vw !important;
    margin: 0 !important;
    overflow: visible !important;
    color: #fff !important;
    font-family: var(--bt-noto-serif) !important;
    font-size: min(2.35vw, calc(42px * var(--bt-hero-scale, 1))) !important;
    font-weight: 600 !important;
    letter-spacing: .02em !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    visibility: visible !important;
    opacity: 1 !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise > span {
    display: inline-flex !important;
    align-items: baseline !important;
    position: relative !important;
    width: auto !important;
    max-width: 100% !important;
    padding: .1em .06em .16em .3em !important;
    overflow: visible !important;
    white-space: nowrap !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line::before {
    right: .1em !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line:nth-child(2)::before {
    right: .34em !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-lg {
    font-size: 1.08em !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-sm {
    font-size: .88em !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc {
    position: absolute !important;
    left: 48.4% !important;
    top: 61.5% !important;
    bottom: auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: .72vw !important;
    width: max-content !important;
    max-width: 48vw !important;
    margin: 0 !important;
    overflow: visible !important;
    color: #756554 !important;
    font-family: var(--bt-sans) !important;
    font-size: min(1.72vw, calc(31px * var(--bt-hero-scale, 1))) !important;
    font-weight: 700 !important;
    letter-spacing: .02em !important;
    line-height: 1.25 !important;
    text-align: left !important;
    white-space: nowrap !important;
    visibility: visible !important;
    opacity: 1 !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc span {
    display: block !important;
    max-width: none !important;
    overflow: visible !important;
    white-space: nowrap !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    visibility: visible !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title {
    position: absolute !important;
    left: 48.4% !important;
    top: 12.2% !important;
    width: 45vw !important;
    margin: 0 !important;
    color: #756554 !important;
    font-family: var(--bt-noto-serif) !important;
    font-size: min(4.9vw, 88px) !important;
    font-weight: 600 !important;
    letter-spacing: .015em !important;
    line-height: 1.05 !important;
    text-align: left !important;
    text-shadow:
        0 0 8px rgba(255, 255, 255, 1),
        0 0 15px rgba(255, 255, 255, .98),
        0 0 25px rgba(255, 255, 255, .92),
        0 0 38px rgba(255, 255, 255, .8),
        0 0 52px rgba(255, 255, 255, .56),
        0 3px 5px rgba(96, 76, 59, .2) !important;
    -webkit-text-stroke: .025em rgba(255, 255, 255, .7) !important;
    paint-order: stroke fill !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title span,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title span,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title span {
    display: block !important;
    max-width: 100% !important;
    overflow-wrap: normal !important;
    text-wrap: balance !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise {
    position: absolute !important;
    left: 72.2% !important;
    top: 13.6% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: .58vw !important;
    width: 26vw !important;
    margin: 0 !important;
    color: #fff !important;
    font-family: var(--bt-noto-serif) !important;
    font-size: min(1.48vw, 26px) !important;
    font-weight: 600 !important;
    line-height: 1.18 !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span {
    display: inline-block !important;
    max-width: 100% !important;
    padding: .16em .42em .2em !important;
    overflow-wrap: anywhere !important;
    background: #9E8B7A !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc {
    position: absolute !important;
    left: 48.4% !important;
    top: 61.5% !important;
    bottom: auto !important;
    display: flex !important;
    flex-direction: column !important;
    gap: .58vw !important;
    width: 48vw !important;
    margin: 0 !important;
    color: #756554 !important;
    font-family: var(--bt-sans) !important;
    font-size: min(1.35vw, 23px) !important;
    font-weight: 700 !important;
    letter-spacing: .02em !important;
    line-height: 1.28 !important;
    text-align: left !important;
    text-shadow:
        0 0 6px rgba(255, 255, 255, 1),
        0 0 12px rgba(255, 255, 255, .98),
        0 0 21px rgba(255, 255, 255, .92),
        0 0 32px rgba(255, 255, 255, .78),
        0 0 44px rgba(255, 255, 255, .52),
        0 2px 5px rgba(255, 255, 255, .92) !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc span,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc span,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc span {
    display: block !important;
    max-width: 100% !important;
    overflow-wrap: normal !important;
    text-wrap: balance !important;
}
}

/* Keep translated regenerative title aligned with the three hexagons. */
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title {
    left: clamp(76px, 7.2vw, 121px) !important;
    width: clamp(520px, 45vw, 770px) !important;
    text-align: left !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura {
    align-items: flex-start !important;
    width: 100% !important;
}

html[lang|="mn"] #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body:lang(mn) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title {
    left: clamp(76px, 7.2vw, 121px) !important;
    width: clamp(560px, 46vw, 790px) !important;
}

#bt-root *, #bt-root *::before, #bt-root *::after { box-sizing: border-box; }
#bt-root img { max-width: 100%; display: block; }
#bt-root a { color: inherit; text-decoration: none; }

#beauty-campaign,
#beauty-concept,
#beauty-case,
#beauty-doctor,
#beauty-treatment,
#beauty-clinic,
[id^="treatment-"] {
    scroll-margin-top: 104px;
}

/* ---------- Shared utilities ---------- */
.bt-container { width: 90%; max-width: 1180px; margin: 0 auto; }
.bt-section { padding: 110px 0; position: relative; }
.bt-section--narrow { padding: 80px 0; }

.bt-sec-title {
    text-align: center;
    margin-bottom: 64px;
    font-family: var(--bt-serif);
    letter-spacing: .06em;
}
.bt-sec-title__sub {
    display: block;
    font-size: 13px;
    letter-spacing: .22em;
    color: var(--bt-gold-dk);
    margin-bottom: 14px;
}
.bt-sec-title__main {
    display: block;
    font-size: 44px;
    font-weight: 400;
    letter-spacing: .14em;
    color: var(--bt-gold-dk);
    line-height: 1.2;
}

.bt-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-width: 180px;
    padding: 14px 26px;
    background: var(--bt-gold);
    color: #fff;
    font-family: var(--bt-serif);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .22em;
    border: none;
    cursor: pointer;
    transition: background .35s ease, transform .35s ease, box-shadow .35s ease;
    position: relative;
}
.bt-btn::after {
    content: "›";
    display: inline-block;
    font-size: 18px;
    line-height: 1;
    transform: translateX(0);
    transition: transform .35s ease;
}
.bt-btn:hover { background: var(--bt-gold-dk); box-shadow: 0 10px 22px -12px rgba(0, 0, 0, .3); }
.bt-btn:hover::after { transform: translateX(4px); }

.bt-btn-outline {
    background: transparent;
    color: var(--bt-gold-dk);
    border: 1px solid var(--bt-gold);
}
.bt-btn-outline:hover { background: var(--bt-gold); color: #fff; }

/* ---------- Entrance animation ---------- */
.bt-reveal {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    transition: opacity .9s ease, transform .9s cubic-bezier(.2, .7, .2, 1);
}
body.bt-reveal-ready .bt-reveal:not(.is-in) {
    opacity: 0;
    transform: translate3d(0, 28px, 0);
}
.bt-reveal.is-in { opacity: 1; transform: translate3d(0, 0, 0); }
.bt-reveal--delay-1.is-in { transition-delay: .08s; }
.bt-reveal--delay-2.is-in { transition-delay: .16s; }
.bt-reveal--delay-3.is-in { transition-delay: .24s; }
@media (prefers-reduced-motion: reduce) {
    .bt-reveal { opacity: 1; transform: none; transition: none; }
}

/* =========================================================
   Top open banner
========================================================= */
.bt-openbar {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    z-index: 4;
    background: linear-gradient(90deg, #c6a76f 0%, #aa8b53 52%, #846633 100%);
    color: #fff;
    font-family: var(--bt-sans);
    letter-spacing: .3em;
    padding: 12px 0;
    font-size: clamp(20px, 1.38vw, 29px);
    font-weight: 500;
    line-height: 1;
}
.bt-openbar__inner {
    width: 100%;
    max-width: none;
    margin: 0 auto;
    display: flex;
    justify-content: flex-end;
    padding: 0 clamp(120px, 12vw, 250px) 0 24px;
}
.bt-openbar__text {
    width: min(29vw, 600px);
    max-width: none;
    text-align: center;
}

/* =========================================================
   Hero
========================================================= */
.bt-hero {
    position: relative;
    width: 100%;
    aspect-ratio: 1678 / 769;
    height: auto;
    min-height: 0;
    container-type: inline-size;
    overflow: hidden;
    background: #111;
}
.bt-hero__slides {
    position: absolute; inset: 0;
}
.bt-hero__slide {
    position: absolute; inset: 0;
    opacity: 0;
    transition: opacity 1.1s ease;
    pointer-events: none;
}
.bt-hero__slide.is-active { opacity: 1; pointer-events: auto; }
.bt-hero__img {
    position: absolute; inset: 0;
    background-position: center;
    background-size: cover;
    transform: scale(1.05);
    transition: transform 6s ease;
}
.bt-hero__slide.is-active .bt-hero__img { transform: scale(1); }
.bt-hero__img::after {
    content: "";
    position: absolute; inset: 0;
    background: linear-gradient(90deg, rgba(20,16,12,.28) 0%, rgba(20,16,12,0) 55%);
}

.bt-hero__inner {
    position: relative;
    z-index: 2;
    width: 90%;
    max-width: 1180px;
    margin: 0 auto;
    height: 100%;
    display: flex;
    align-items: center;
}

.bt-hero__copy {
    background: rgba(255, 255, 255, .94);
    padding: 42px;
    max-width: 430px;
    color: var(--bt-text);
    font-family: var(--bt-serif);
    box-shadow: 0 4px 32px rgba(0,0,0,.08);
}
.bt-hero__kicker {
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 400;
    letter-spacing: .26em;
    color: var(--bt-text-soft);
    margin-bottom: 20px;
    line-height: 1;
}
.bt-hero__title {
    font-family: var(--bt-serif);
    font-size: 40px;
    line-height: 1.5;
    letter-spacing: .04em;
    font-weight: 600;
    color: #a0875b;
    margin: 0 0 24px;
}
.bt-hero__title .bt-dot { color: var(--bt-gold); }
.bt-hero__desc {
    font-family: var(--bt-sans);
    font-size: 13.5px;
    line-height: 2;
    color: #4a4035;
    font-weight: 500;
    letter-spacing: .04em;
}

/* First slide: 2026 grand open visual */
.bt-hero__slide--first .bt-hero__img {
    inset: 0;
    background-position: 88% top;
    background-size: cover;
}
.bt-hero__slide--first.is-active .bt-hero__img {
    transform: none;
}
.bt-hero__slide--first .bt-hero__img::after {
    background: none;
}
.bt-hero__slide--first .bt-hero__inner {
    width: 100%;
    max-width: none;
    justify-content: flex-end;
    align-items: center;
    padding: clamp(46px, 5.1vw, 86px) clamp(120px, 12vw, 250px) 0 24px;
}
.bt-hero__slide--first .bt-hero__copy {
    width: fit-content;
    max-width: min(29vw, 600px);
    padding: clamp(26px, 2.45vw, 44px) clamp(32px, 3vw, 52px);
    background: rgba(255, 255, 255, .88);
    box-shadow: none;
    color: #94763f;
    font-family: var(--bt-noto-serif);
    text-align: left;
}
.bt-hero__slide--first .bt-hero__kicker {
    width: 100%;
    margin: 0 0 clamp(20px, 2.35vw, 38px);
    color: #94763f;
    font-family: var(--bt-inter);
    font-size: clamp(11px, .78vw, 15px);
    font-weight: 600;
    letter-spacing: .3em;
    line-height: 1.2;
    white-space: nowrap;
}
.bt-hero__slide--first .bt-hero__title {
    margin: 0 0 clamp(18px, 1.45vw, 28px);
    color: #92733c;
    font-family: var(--bt-noto-serif);
    font-size: clamp(38px, 2.85vw, 52px);
    font-weight: 600;
    line-height: 1.48;
    letter-spacing: .1em;
}
.bt-hero__slide--first .bt-hero__desc {
    margin: 0;
    color: #94763f;
    font-family: var(--bt-noto-serif);
    font-size: clamp(14px, 1.02vw, 18px);
    font-weight: 600;
    line-height: 1.95;
    letter-spacing: .1em;
}

/* Alt slides (overlay copy on light backgrounds — black text) */
.bt-hero__slide--alt .bt-hero__img::after {
    background: none;
}
.bt-hero__slide--alt .bt-hero__copy {
    background: transparent !important;
    color: #000;
    max-width: min(56vw, 760px);
    width: max-content;
    padding: 0;
    backdrop-filter: none;
    box-shadow: none !important;
    font-family: var(--bt-noto-serif);
    font-weight: 500;
}

/* PC only: hide SP openbar block */
.bt-openbar__text { margin: 0; }
.bt-openbar-sp { display: none; }

/* Slide 3: text positioned on the right + beige overlay */
.bt-hero__slide--right .bt-hero__inner {
    justify-content: flex-end;
}
.bt-hero__slide--alt.bt-hero__slide--right .bt-hero__img::after {
    content: "";
    position: absolute; inset: 0;
    background: linear-gradient(to left, rgba(232, 218, 198, 0.88) 0%, rgba(232, 218, 198, 0) 42%);
}
.bt-hero__slide--alt .bt-hero__kicker {
    font-family: var(--bt-noto-serif);
    font-size: 24px;
    font-weight: 500;
    letter-spacing: .14em;
    color: #000;
    margin-bottom: 22px;
    white-space: nowrap;
}
.bt-hero__slide--alt .bt-hero__title {
    color: #000;
    font-family: var(--bt-noto-serif);
    font-size: clamp(44px, 5vw, 68px);
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: .06em;
    margin: 0 0 40px;
    white-space: nowrap;
}
.bt-hero__slide--alt .bt-hero__desc {
    color: #000;
    font-family: var(--bt-noto-serif);
    font-size: 21px;
    font-weight: 500;
    line-height: 2.4;
    letter-spacing: .08em;
    white-space: nowrap;
}

/* Tags (alt slides — black pill column, no fill) */
.bt-hero__tags {
    margin-top: 4px;
    display: flex;
    flex-direction: column;
    gap: 14px;
    align-items: flex-start;
}
.bt-hero__tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 36px;
    border: 1px solid #000;
    color: #000;
    font-family: var(--bt-noto-serif);
    font-size: 15px;
    font-weight: 500;
    letter-spacing: .14em;
    background: transparent;
    border-radius: 999px;
    text-align: center;
    min-width: 280px;
}
.bt-hero__tag-row {
    display: flex;
    align-items: center;
    gap: 12px;
}
.bt-hero__tag-etc {
    display: inline-block;
    font-family: var(--bt-noto-serif);
    font-size: 14px;
    font-weight: 500;
    letter-spacing: .08em;
    color: #000;
}

/* Slide 2: injection/drip visual rebuilt from live text and CSS */
.bt-hero__slide--injection .bt-hero__img {
    background-position: center center;
    background-size: cover;
    transform: none;
}
.bt-hero__slide--injection.is-active .bt-hero__img {
    transform: none;
}
.bt-hero__slide--injection .bt-hero__img::after {
    background: none;
}
.bt-hero__slide--injection .bt-hero__inner {
    width: 100%;
    max-width: none;
    padding: 0;
}
.bt-hero__slide--injection .bt-hero__copy {
    position: absolute;
    inset: 0;
    width: 100%;
    max-width: none;
    padding: 0;
    background: transparent !important;
    box-shadow: none !important;
}
.bt-injection-hero {
    position: absolute;
    inset: 0;
    font-family: var(--bt-noto-serif);
}
.bt-injection-hero__ribbon {
    position: absolute;
    left: clamp(16px, 1.35vw, 26px);
    top: clamp(57px, 4.64vw, 88px);
    width: clamp(730px, 59.6vw, 1137px);
    height: clamp(66px, 5.4vw, 103px);
    display: flex;
    align-items: center;
    padding-left: clamp(114px, 9.28vw, 177px);
    color: #fff;
    background: url("/wp-content/uploads/2026/06/beauty-hero/gold-ribbon.svg") left center / 100% 100% no-repeat;
}
.bt-injection-hero__lead {
    margin: 0;
    color: #fff;
    font-family: var(--bt-noto-serif);
    font-weight: 700;
    letter-spacing: .23em;
    line-height: 1;
    white-space: nowrap;
}
.bt-injection-hero__lead-plain {
    position: absolute;
    left: clamp(145px, 11.5vw, 196px);
    top: 50%;
    display: block;
    margin: 0;
    color: #fff;
    font-family: var(--bt-noto-serif);
    font-size: clamp(29px, 2.32vw, 39px);
    font-weight: 700;
    letter-spacing: .045em;
    line-height: 1.05;
    max-width: min(56vw, 800px);
    opacity: 0;
    pointer-events: none;
    transform: translateY(-50%);
    white-space: normal;
    text-wrap: balance;
}
.bt-injection-hero__lead-lg,
.bt-injection-hero__lead-sm {
    display: inline-block;
}
.bt-injection-hero__lead-lg {
    font-size: clamp(42px, 3.43vw, 65px);
}
.bt-injection-hero__lead-sm {
    font-size: clamp(37px, 2.98vw, 57px);
}
.bt-injection-hero__title {
    position: absolute;
    left: clamp(73px, 5.99vw, 114px);
    top: clamp(141px, 11.51vw, 220px);
    margin: 0;
    font-family: var(--bt-noto-serif);
    font-size: clamp(103px, 8.4vw, 160px);
    font-style: italic;
    font-weight: 700;
    letter-spacing: .03em;
    line-height: 1.28;
    overflow: visible;
    padding: .08em .22em .24em .06em;
    white-space: nowrap;
}
.bt-injection-hero__title-char {
    display: inline-block;
    color: transparent;
    -webkit-text-fill-color: transparent;
    background: linear-gradient(90deg, #EAD3AC 0%, #A0875B 100%);
    -webkit-background-clip: text;
    background-clip: text;
    text-shadow: clamp(7px, .56vw, 10px) clamp(10px, .78vw, 14px) clamp(8px, .62vw, 11px) rgba(111, 78, 50, .38);
    transform-origin: center 58%;
}
.bt-injection-hero__title-plain {
    display: block;
    position: absolute;
    left: clamp(73px, 5.99vw, 114px);
    top: clamp(160px, 12vw, 228px);
    width: min(58vw, 960px);
    margin: 0;
    color: transparent;
    -webkit-text-fill-color: transparent;
    background: linear-gradient(90deg, #EAD3AC 0%, #A0875B 100%);
    -webkit-background-clip: text;
    background-clip: text;
    font-family: var(--bt-noto-serif);
    font-size: clamp(54px, 5.4vw, 92px);
    font-style: italic;
    font-weight: 820;
    font-variation-settings: "wght" 820;
    letter-spacing: .02em;
    line-height: 1.1;
    text-shadow: 0 clamp(10px, .82vw, 14px) clamp(8px, .64vw, 11px) rgba(111, 78, 50, .34);
    overflow-wrap: anywhere;
    opacity: 0;
    pointer-events: none;
}
.bt-injection-hero__title-char:nth-child(1) {
    transform: translateY(-.08em) scale(1.18);
}
.bt-injection-hero__title-char:nth-child(2) {
    transform: translateY(.28em) scale(.74);
}
.bt-injection-hero__title-char:nth-child(3) {
    transform: translateY(-.06em) scale(1.13);
}
.bt-injection-hero__title-char:nth-child(4) {
    transform: translateY(.2em) scale(.76);
}
.bt-injection-hero__title-char:nth-child(5) {
    transform: translateY(.16em) scale(.82);
}
.bt-injection-hero__title-char:nth-child(6) {
    transform: translateY(-.04em) scale(1.12);
}
.bt-injection-hero__title-char:nth-child(7) {
    transform: translateY(.16em) scale(.78);
}
.bt-injection-hero__menus {
    position: absolute;
    left: clamp(76px, 6.22vw, 119px);
    top: clamp(344px, 28.07vw, 535px);
    display: flex;
    align-items: center;
    gap: clamp(6px, .53vw, 10px);
}
.bt-injection-hero__circle {
    position: relative;
    width: clamp(158px, 12.87vw, 245px);
    height: clamp(158px, 12.87vw, 245px);
    aspect-ratio: 1 / 1;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: clamp(1.3px, .11vw, 2.1px) solid #938348;
    border-radius: 50%;
    background: #fff;
    color: #fff7f7;
    font-family: var(--bt-noto-serif);
    font-size: clamp(20px, 1.64vw, 31px);
    font-weight: 600;
    letter-spacing: .1em;
    line-height: calc(42.9 / 27.97);
    text-align: center;
    text-shadow: 0 clamp(1.4px, .12vw, 2.2px) clamp(3px, .24vw, 4.5px) rgba(0, 0, 0, .3);
    white-space: nowrap;
}
.bt-injection-hero__circle::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: clamp(146px, 11.88vw, 227px);
    height: clamp(146px, 11.88vw, 227px);
    border-radius: 50%;
    background: radial-gradient(circle at 18% 18%, #d8c39b 0%, #c7b083 48%, #ad9666 100%);
    transform: translate(-50%, -50%);
    z-index: 0;
}
.bt-injection-hero__circle-text {
    position: relative;
    z-index: 1;
    display: block;
    max-width: 82%;
    overflow-wrap: anywhere;
}
.bt-injection-hero__etc {
    align-self: flex-end;
    margin: 0 0 clamp(2px, .18vw, 3px) clamp(2px, .18vw, 3px);
    color: #5a4738;
    font-family: var(--bt-noto-serif);
    font-size: clamp(14px, 1.17vw, 22px);
    font-weight: 700;
    letter-spacing: .16em;
    line-height: 1;
}

#bt-root .bt-hero__slide--injection .bt-hero__img {
    background-position: center center;
    background-size: cover;
    transform: none;
}
#bt-root .bt-hero__slide--injection.is-active .bt-hero__img {
    transform: none;
}
#bt-root .bt-hero__slide--injection .bt-hero__img::after {
    background: none;
}
#bt-root .bt-hero__slide--injection .bt-hero__inner {
    width: 100%;
    max-width: none;
    justify-content: flex-start;
    align-items: stretch;
    padding: 0;
}
#bt-root .bt-hero__slide--injection .bt-hero__copy {
    position: absolute;
    inset: 0;
    width: 100%;
    max-width: none;
    padding: 0;
    background: transparent !important;
    box-shadow: none !important;
}
#bt-root .bt-injection-hero__ribbon {
    left: clamp(-24px, -1.35vw, -18px);
    top: clamp(60px, 4.66vw, 80px);
    width: clamp(790px, 60.9vw, 1037px);
    height: clamp(70px, 5.52vw, 94px);
    padding-left: clamp(145px, 11.5vw, 196px);
}
#bt-root .bt-injection-hero__lead-lg {
    font-size: clamp(43px, 3.43vw, 58.5px);
}
#bt-root .bt-injection-hero__lead-sm {
    font-size: clamp(37px, 2.98vw, 50.8px);
}
#bt-root .bt-injection-hero__title {
    left: clamp(28px, 3.45vw, 58px);
    top: clamp(150px, 11.45vw, 195px);
    font-size: clamp(118px, 8.45vw, 144px);
    font-weight: 820;
    font-variation-settings: "wght" 820;
    letter-spacing: 0;
    padding: .08em .52em .28em .08em;
}
#bt-root .bt-injection-hero__title-char {
    display: inline-block;
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    background: linear-gradient(90deg, #EAD3AC 0%, #A0875B 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    margin-left: -.2em;
    padding: .03em .12em .12em .035em;
    text-shadow: 0 clamp(10px, .82vw, 14px) clamp(8px, .64vw, 11px) rgba(111, 78, 50, .38);
}

html.translated-ltr #bt-root .bt-injection-hero__lead,
html.translated-rtl #bt-root .bt-injection-hero__lead,
body.translated-ltr #bt-root .bt-injection-hero__lead,
body.translated-rtl #bt-root .bt-injection-hero__lead,
body.beauty-top.is-translated #bt-root .bt-injection-hero__lead,
html.translated-ltr #bt-root .bt-injection-hero__title,
html.translated-rtl #bt-root .bt-injection-hero__title,
body.translated-ltr #bt-root .bt-injection-hero__title,
body.translated-rtl #bt-root .bt-injection-hero__title,
body.beauty-top.is-translated #bt-root .bt-injection-hero__title {
    display: none !important;
}
html.translated-ltr #bt-root .bt-injection-hero__lead-plain,
html.translated-rtl #bt-root .bt-injection-hero__lead-plain,
body.translated-ltr #bt-root .bt-injection-hero__lead-plain,
body.translated-rtl #bt-root .bt-injection-hero__lead-plain,
body.beauty-top.is-translated #bt-root .bt-injection-hero__lead-plain {
    opacity: 1;
}
html.translated-ltr #bt-root .bt-injection-hero__title-plain,
html.translated-rtl #bt-root .bt-injection-hero__title-plain,
body.translated-ltr #bt-root .bt-injection-hero__title-plain,
body.translated-rtl #bt-root .bt-injection-hero__title-plain,
body.beauty-top.is-translated #bt-root .bt-injection-hero__title-plain {
    opacity: 1;
}
#bt-root .bt-injection-hero__title-char:first-child {
    margin-left: 0;
}
#bt-root .bt-injection-hero__title-char:nth-child(5) {
    margin-left: -.58em;
    padding-right: .12em;
}
#bt-root .bt-injection-hero__title-char:nth-child(6) {
    margin-left: -.34em;
}
#bt-root .bt-injection-hero__title-char:nth-child(7) {
    margin-left: -.14em;
}
#bt-root .bt-injection-hero__title-plain {
    left: clamp(28px, 3.45vw, 58px);
    top: clamp(168px, 12vw, 205px);
    width: min(61vw, 1000px);
}
#bt-root .bt-injection-hero__menus {
    left: clamp(96px, 6.2vw, 106px);
    top: clamp(438px, 28.1vw, 478px);
    gap: clamp(6px, .52vw, 9px);
}
#bt-root .bt-injection-hero__circle {
    width: clamp(190px, 12.4vw, 219px);
    height: clamp(190px, 12.4vw, 219px);
    aspect-ratio: 1 / 1;
    flex: 0 0 auto;
    font-size: clamp(23px, 1.52vw, 27px);
}
#bt-root .bt-injection-hero__circle::before {
    width: clamp(175px, 11.45vw, 202px);
    height: clamp(175px, 11.45vw, 202px);
}
#bt-root .bt-injection-hero__etc {
    margin-left: clamp(4px, .35vw, 6px);
    margin-bottom: clamp(4px, .35vw, 6px);
    font-size: clamp(17px, 1.1vw, 20px);
}

/* Keep slide 2 as a proportional composition at every desktop width. */
#bt-root .bt-injection-hero__ribbon {
    left: -1.35cqw;
    top: 4.66cqw;
    width: 60.9cqw;
    height: 5.52cqw;
    padding-left: 11.5cqw;
}
#bt-root .bt-injection-hero__lead-lg {
    font-size: 3.43cqw;
}
#bt-root .bt-injection-hero__lead-sm {
    font-size: 2.98cqw;
}
#bt-root .bt-injection-hero__lead-plain {
    left: 11.5cqw;
    font-size: 2.32cqw;
    max-width: 56cqw;
}
#bt-root .bt-injection-hero__title {
    left: 3.45cqw;
    top: 11.45cqw;
    font-size: 8.45cqw;
}
#bt-root .bt-injection-hero__title-char {
    text-shadow: 0 .82cqw .64cqw rgba(111, 78, 50, .38);
}
#bt-root .bt-injection-hero__title-plain {
    left: 3.45cqw;
    top: 12cqw;
    width: 61cqw;
    font-size: 5.4cqw;
    text-shadow: 0 .82cqw .64cqw rgba(111, 78, 50, .34);
}
#bt-root .bt-injection-hero__menus {
    left: 6.2cqw;
    top: 28.1cqw;
    gap: .52cqw;
}
#bt-root .bt-injection-hero__circle {
    width: 12.87cqw;
    height: 12.87cqw;
    border-width: .11cqw;
    font-size: 1.64cqw;
    text-shadow: 0 .12cqw .24cqw rgba(0, 0, 0, .3);
}
#bt-root .bt-injection-hero__circle::before {
    width: 11.88cqw;
    height: 11.88cqw;
}
#bt-root .bt-injection-hero__etc {
    margin-left: .35cqw;
    margin-bottom: .35cqw;
    font-size: 1.17cqw;
}

html.translated-ltr #bt-root .bt-injection-hero__menus,
html.translated-rtl #bt-root .bt-injection-hero__menus,
body.translated-ltr #bt-root .bt-injection-hero__menus,
body.translated-rtl #bt-root .bt-injection-hero__menus,
body.beauty-top.is-translated #bt-root .bt-injection-hero__menus {
    gap: .48cqw;
}
html.translated-ltr #bt-root .bt-injection-hero__circle,
html.translated-rtl #bt-root .bt-injection-hero__circle,
body.translated-ltr #bt-root .bt-injection-hero__circle,
body.translated-rtl #bt-root .bt-injection-hero__circle,
body.beauty-top.is-translated #bt-root .bt-injection-hero__circle {
    width: 12.87cqw;
    height: 12.87cqw;
    min-width: 12.87cqw;
    min-height: 12.87cqw;
    max-width: 12.87cqw;
    max-height: 12.87cqw;
    font-size: 1.28cqw;
    letter-spacing: .05em;
    line-height: 1.16;
    white-space: normal;
}
html.translated-ltr #bt-root .bt-injection-hero__circle-text,
html.translated-rtl #bt-root .bt-injection-hero__circle-text,
body.translated-ltr #bt-root .bt-injection-hero__circle-text,
body.translated-rtl #bt-root .bt-injection-hero__circle-text,
body.beauty-top.is-translated #bt-root .bt-injection-hero__circle-text {
    width: 88%;
    max-width: 88%;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 2.7em;
    overflow: hidden;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
}
html.translated-ltr #bt-root .bt-injection-hero__etc,
html.translated-rtl #bt-root .bt-injection-hero__etc,
body.translated-ltr #bt-root .bt-injection-hero__etc,
body.translated-rtl #bt-root .bt-injection-hero__etc,
body.beauty-top.is-translated #bt-root .bt-injection-hero__etc {
    min-width: 3.2em;
    font-size: .95cqw;
    letter-spacing: .08em;
    white-space: nowrap;
    writing-mode: horizontal-tb;
    text-orientation: mixed;
}

/* Slide 3: medical laser hair removal visual rebuilt with live text */
.bt-hero__slide--epilation .bt-hero__img {
    background-position: center center;
    background-size: cover;
    transform: none;
}
.bt-hero__slide--epilation.is-active .bt-hero__img {
    transform: none;
}
.bt-hero__slide--epilation .bt-hero__img::after {
    background: none;
}
.bt-hero__slide--epilation .bt-hero__inner {
    width: 100%;
    max-width: none;
    padding: 0;
}
.bt-hero__slide--epilation .bt-hero__copy {
    position: absolute;
    inset: 0;
    width: 100%;
    max-width: none;
    padding: 0;
    background: transparent !important;
    box-shadow: none !important;
}
.bt-epilation-hero {
    position: absolute;
    inset: 0;
    color: #756554;
}
.bt-epilation-hero__title {
    position: absolute;
    left: 48.1%;
    top: 10.4%;
    margin: 0;
    color: #756554;
    font-family: var(--bt-noto-serif);
    font-weight: 600;
    letter-spacing: .015em;
    line-height: 1.12;
    text-align: left;
    text-shadow:
        0 0 8px rgba(255, 255, 255, 1),
        0 0 15px rgba(255, 255, 255, .98),
        0 0 25px rgba(255, 255, 255, .92),
        0 0 38px rgba(255, 255, 255, .8),
        0 0 52px rgba(255, 255, 255, .56),
        0 3px 5px rgba(96, 76, 59, .2);
    white-space: nowrap;
    filter: none;
    -webkit-text-stroke: .04em rgba(255, 255, 255, .76);
    paint-order: stroke fill;
}
.bt-epilation-hero__title-line {
    display: block;
}
.bt-epilation-hero__title-line--medical {
    font-size: clamp(112px, 9.8vw, 168px);
}
.bt-epilation-hero__title-line--laser {
    margin-top: .06em;
    font-size: clamp(78px, 6.95vw, 119px);
    letter-spacing: .02em;
}
.bt-epilation-hero__promise {
    position: absolute;
    left: 72.7%;
    top: 15.7%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: clamp(8px, .72vw, 12px);
    margin: 0;
    color: #fff;
    font-family: var(--bt-noto-serif);
    font-size: clamp(30px, 2.5vw, 42px);
    font-weight: 600;
    letter-spacing: .04em;
    line-height: 1.15;
    text-align: left;
    width: max-content;
    max-width: 25vw;
    white-space: nowrap;
}
.bt-epilation-hero__promise > span {
    display: inline-flex;
    align-items: baseline;
    box-sizing: border-box;
    position: relative;
    z-index: 0;
    width: auto;
    max-width: 100%;
    padding: .1em .06em .16em .3em;
    background: transparent;
    isolation: isolate;
}
.bt-epilation-hero__promise-line::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    right: .1em;
    bottom: 0;
    left: 0;
    background: #9E8B7A;
}
.bt-epilation-hero__promise-line:nth-child(2)::before {
    right: .36em;
}
.bt-epilation-hero__promise-lg {
    font-size: 1.08em;
    line-height: 1;
}
.bt-epilation-hero__promise-sm {
    font-size: .88em;
    line-height: 1;
}
.bt-epilation-hero__desc {
    position: absolute;
    left: 48.4%;
    bottom: 18.2%;
    display: flex;
    flex-direction: column;
    gap: clamp(8px, .82vw, 14px);
    margin: 0;
    color: #756554;
    font-family: var(--bt-sans);
    font-size: clamp(19px, 1.85vw, 31px);
    font-weight: 700;
    letter-spacing: .06em;
    line-height: 1.35;
    text-align: left;
    text-shadow:
        0 0 6px rgba(255, 255, 255, 1),
        0 0 12px rgba(255, 255, 255, .98),
        0 0 21px rgba(255, 255, 255, .92),
        0 0 32px rgba(255, 255, 255, .78),
        0 0 44px rgba(255, 255, 255, .52),
        0 2px 5px rgba(255, 255, 255, .92);
    white-space: nowrap;
    filter: none;
    -webkit-text-stroke: .036em rgba(255, 255, 255, .72);
    paint-order: stroke fill;
}
.bt-epilation-hero__i18n {
    display: none;
}

/* Hero pagination */
.bt-hero__pager {
    position: absolute;
    left: 50%;
    bottom: clamp(28px, 3.4vw, 68px);
    transform: translateX(-50%);
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 14px;
}
.bt-hero__dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .75);
    border: none;
    cursor: pointer;
    padding: 0;
    transition: transform .3s ease, background .3s ease;
}
.bt-hero__dot.is-active {
    background: rgba(179, 159, 110, .75);
    transform: scale(1.2);
}

/* =========================================================
   Right-side floating CTA (PC)  ── Figma: 90×90px per btn
========================================================= */
.bt-sidecta {
    position: fixed;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 90;
    display: flex;
    flex-direction: column;
    gap: 0;
}
.bt-sidecta__btn {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    padding: 18px 0 12px;
    width: 90px;
    height: 90px;
    color: #ffffff !important;
    font-family: var(--bt-sans);
    font-weight: 500;
    font-size: 13px;
    letter-spacing: .08em;
    writing-mode: horizontal-tb;
    cursor: pointer;
    transition: filter .3s ease;
    text-decoration: none;
    border: none;
    text-align: center;
}
.bt-sidecta__btn svg {
    width: 30px;
    height: 30px;
    flex-shrink: 0;
    overflow: visible;
}
.bt-sidecta__btn--fore svg {
    width: 34px;
    height: 34px;
}
.bt-sidecta__btn:hover { filter: brightness(.9); }
.bt-sidecta__btn--tel  { background: #A87762; border-radius: 8px 0 0 0; }
.bt-sidecta__btn--line { background: #62A87C; }
.bt-sidecta__btn--web  { background: #6276A8; }
.bt-sidecta__btn--fore { background: #A762A8; }
.bt-sidecta__btn--contact { background: #7F8F76; border-radius: 0 0 0 8px; }

/* =========================================================
   CAMPAIGN
========================================================= */
.bt-campaign {
    background: #ffffff;
    padding: 170px 0 190px;
}
.bt-campaign .bt-container {
    max-width: 1228px;
}
.bt-campaign .bt-sec-title {
    text-align: left;
    margin: 0 0 78px;
}
.bt-campaign .bt-sec-title__sub {
    font-family: var(--bt-noto-serif);
    font-size: 48px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: -.05em;
    color: #9b8d75;
    margin-bottom: 0;
}
.bt-campaign .bt-sec-title__main {
    font-family: var(--bt-cormorant);
    font-size: 54px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .02em;
    color: #9b8d75;
}
.bt-campaign__stage {
    position: relative;
}
.bt-campaign__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 32px;
}
.bt-campaign__card {
    position: relative;
    overflow: hidden;
    aspect-ratio: 1 / 1;
    color: #fff;
    text-decoration: none;
    display: block;
}
.bt-campaign__img {
    position: absolute; inset: 0;
    background-position: center;
    background-size: cover;
    transition: transform 1s cubic-bezier(.2,.7,.2,1);
}
.bt-campaign__card:hover .bt-campaign__img { transform: scale(1.06); }
.bt-campaign__overlay {
    position: absolute; inset: 0;
    background: linear-gradient(180deg, rgba(35, 25, 15, 0) 34%, rgba(42, 30, 18, .16) 58%, rgba(34, 25, 16, .46) 100%);
}
.bt-campaign__body {
    position: absolute;
    left: 33px;
    right: 30px;
    bottom: 30px;
    z-index: 2;
}
.bt-campaign__title {
    font-family: var(--bt-noto-serif);
    font-size: 42px;
    line-height: 1.16;
    letter-spacing: .06em;
    margin: 0 0 13px;
    color: #fff;
    font-weight: 500;
}
.bt-campaign__lead {
    font-family: var(--bt-noto-serif);
    font-size: 19px;
    font-weight: 500;
    line-height: 1.7;
    letter-spacing: .12em;
    margin: 0 0 3px;
    color: rgba(255,255,255,.96);
}
.bt-campaign__tags {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px 16px;
    max-width: 385px;
    margin: 0 0 19px;
}
.bt-campaign__tag {
    min-width: 146px;
    padding: 8px 16px 9px;
    border: 1px solid rgba(255, 255, 255, .9);
    border-radius: 999px;
    color: #fff;
    font-family: var(--bt-noto-serif);
    font-size: 16px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .12em;
    text-align: center;
    white-space: nowrap;
}
.bt-campaign__tag--center {
    flex: 0 0 210px;
    margin-left: auto;
    margin-right: auto;
}
.bt-campaign__tags--center-last .bt-campaign__tag--center {
    margin-left: 0;
    margin-right: 0;
}
.bt-campaign__tag--note {
    position: absolute;
    right: 8px;
    bottom: 8px;
    min-width: 0;
    border-color: transparent;
    padding: 0;
    font-size: 14px;
    letter-spacing: .12em;
}
.bt-campaign__desc {
    margin: 0 0 20px;
    color: rgba(255, 255, 255, .95);
    font-family: var(--bt-noto-serif);
    font-size: 13px;
    font-weight: 500;
    line-height: 1.9;
    letter-spacing: .07em;
}
.bt-campaign__desc p {
    margin: 0;
}
.bt-campaign__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    min-width: 152px;
    background: linear-gradient(90deg, #f3d99f 0%, #caa767 100%);
    color: #111;
    border-radius: 5px;
    font-family: var(--bt-inter);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .24em;
    line-height: 1;
    padding: 12px 17px 13px;
    position: relative;
    transition: background .35s ease, transform .35s ease;
}
.bt-campaign__btn > span {
    position: absolute;
    right: 17px;
    width: 7px;
    height: 7px;
    border-top: 1px solid currentColor;
    border-right: 1px solid currentColor;
    transform: rotate(45deg);
    flex: 0 0 auto;
}
.bt-campaign__card:hover .bt-campaign__btn {
    background: linear-gradient(90deg, #caa767 0%, #ad8c51 100%);
    transform: translateX(4px);
}
.bt-campaign__nav {
    display: none;
}
.bt-campaign__pager {
    display: none;
}
.bt-campaign__card--clone {
    display: none;
}

/* =========================================================
   NEWS
========================================================= */
.bt-news {
    background: #e4ded8;
    padding: 108px 0 72px;
}
.bt-news .bt-container {
    max-width: 1228px;
}
.bt-news__layout {
    display: grid;
    grid-template-columns: 300px minmax(0, 1fr);
    gap: 72px;
    align-items: start;
}
.bt-news .bt-sec-title,
.bt-news__heading {
    text-align: left;
    margin: 0;
}
.bt-news .bt-sec-title__sub {
    font-family: var(--bt-sans);
    font-size: 16px;
    font-weight: 500;
    letter-spacing: .16em;
    color: #9b8d75;
    margin-bottom: 8px;
}
.bt-news .bt-sec-title__main {
    font-family: var(--bt-cormorant);
    font-size: 54px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .02em;
    color: #9b8d75;
}
.bt-news__list {
    width: 100%;
    margin: -37px 0 0;
    list-style: none;
    padding: 0;
}
.bt-news__item {
    border-bottom: 2px solid rgba(154, 145, 132, .22);
}
.bt-news__link {
    display: grid;
    grid-template-columns: 138px 1fr;
    gap: 38px;
    align-items: start;
    min-height: 72px;
    padding: 37px 14px 0;
    color: var(--bt-text);
    transition: opacity .3s ease;
}
.bt-news__link:hover { opacity: .65; }
.bt-news__date {
    font-family: var(--bt-inter);
    font-size: 16px;
    font-weight: 500;
    letter-spacing: .2em;
    color: #a2875d;
}
.bt-news__title {
    font-family: var(--bt-sans);
    font-size: 16px;
    font-weight: 500;
    letter-spacing: .08em;
    line-height: 1.6;
    color: #333333;
}
.bt-news .bt-more-wrap {
    margin-top: 64px;
    text-align: center;
}
.bt-news .bt-btn {
    min-width: 240px;
    min-height: 54px;
    justify-content: center;
    gap: 22px;
    padding: 18px 28px 17px;
    border-radius: 6px;
    background: linear-gradient(90deg, #f3d99f 0%, #caa767 100%);
    color: #111;
    font-family: var(--bt-inter);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .25em;
}
.bt-news .bt-btn::after {
    content: "";
    position: absolute;
    right: 28px;
    width: 8px;
    height: 8px;
    border-top: 1.5px solid currentColor;
    border-right: 1.5px solid currentColor;
    transform: rotate(45deg);
}
.bt-news .bt-btn:hover {
    background: linear-gradient(90deg, #caa767 0%, #ad8c51 100%);
    box-shadow: none;
    transform: translateX(4px);
}
.bt-news .bt-btn:hover::after {
    transform: rotate(45deg);
}

/* =========================================================
   CONCEPT
========================================================= */
.bt-concept {
    background: var(--bt-bg);
    padding: 116px 0 0;
    overflow: hidden;
}
.bt-concept .bt-container {
    max-width: 910px;
}
.bt-concept__heading {
    text-align: left;
    margin: 0 0 82px;
}
.bt-concept .bt-sec-title__sub {
    font-family: var(--bt-sans);
    font-size: 15px;
    font-weight: 500;
    letter-spacing: .16em;
    color: #9b8d75;
    margin-bottom: 8px;
}
.bt-concept .bt-sec-title__main {
    font-family: var(--bt-cormorant);
    font-size: 54px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .02em;
    color: #9b8d75;
}
.bt-concept__intro {
    display: grid;
    grid-template-columns: minmax(0, 330px) minmax(0, 455px);
    gap: 74px;
    align-items: stretch;
    margin: 0 auto 142px;
    color: var(--bt-text);
}
.bt-concept__copy {
    padding-top: 2px;
    display: flex;
    flex-direction: column;
}
.bt-concept__lead {
    margin: 0 0 34px;
    font-family: var(--bt-serif);
    font-size: 20px;
    font-weight: 600;
    line-height: 1.75;
    letter-spacing: .12em;
    white-space: nowrap;
}
.bt-concept__text {
    margin: 0;
    font-family: var(--bt-serif);
    font-size: 15.5px;
    font-weight: 500;
    line-height: 2;
    letter-spacing: .05em;
}
.bt-concept__text-sp {
    display: none;
}
.bt-concept__intro .bt-intro-btn {
    display: none;
    margin-top: auto;
}
.bt-concept .bt-btn {
    min-width: 240px;
    min-height: 54px;
    justify-content: center;
    gap: 22px;
    padding: 18px 28px 17px;
    border-radius: 6px;
    background: linear-gradient(90deg, #f3d99f 0%, #caa767 100%);
    color: #111;
    font-family: var(--bt-inter);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .25em;
}
.bt-concept .bt-btn::after {
    content: "";
    position: absolute;
    right: 28px;
    width: 8px;
    height: 8px;
    border-top: 1.5px solid currentColor;
    border-right: 1.5px solid currentColor;
    transform: rotate(45deg);
}
.bt-concept .bt-btn:hover {
    background: linear-gradient(90deg, #caa767 0%, #ad8c51 100%);
    box-shadow: none;
    transform: translateX(4px);
}
.bt-concept .bt-btn:hover::after {
    transform: rotate(45deg);
}
.bt-concept__visual {
    margin: 0;
}
.bt-concept__visual picture {
    display: block;
}
.bt-concept__visual img {
    width: 100%;
    aspect-ratio: 455 / 398;
    object-fit: cover;
}

.bt-concept__points {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
    width: 100%;
    margin-top: 0;
}
.bt-point {
    position: relative;
    overflow: visible;
    aspect-ratio: 560 / 690;
    color: #111;
}
.bt-point__img {
    position: absolute;
    inset: 0;
    background-position: center;
    background-size: cover;
    transition: transform 1.2s ease;
    overflow: hidden;
}
.bt-point:hover .bt-point__img { transform: none; }
.bt-point__overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
}
.bt-point--1 .bt-point__overlay {
    background: linear-gradient(180deg, rgba(244, 229, 190, 0) 45%, rgba(171, 125, 59, .52) 100%);
}
.bt-point--2 .bt-point__overlay {
    background: linear-gradient(180deg, rgba(255, 238, 218, 0) 52%, rgba(214, 169, 120, .32) 100%);
}
.bt-point--3 {
    color: #fff;
}
.bt-point--3 .bt-point__overlay {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 42%, rgba(0, 0, 0, .48) 100%);
}
.bt-point__num {
    position: absolute;
    top: -70px;
    left: 7%;
    z-index: 2;
    transform: none;
    background: transparent;
    border: 1px dashed rgba(17, 17, 17, .88);
    border-radius: 50%;
    width: 112px;
    height: 112px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    color: #111;
    font-family: var(--bt-serif);
    letter-spacing: .1em;
}
.bt-point__num-label {
    font-size: 13px;
    letter-spacing: .14em;
    line-height: 1.1;
}
.bt-point__num-value {
    font-size: 32px;
    letter-spacing: .03em;
    line-height: 1;
    margin-top: 6px;
}
.bt-point__body {
    position: absolute;
    left: 13%;
    right: 9%;
    top: 71%;
    bottom: auto;
    z-index: 2;
}
.bt-point__title {
    font-family: var(--bt-serif);
    font-size: 24px;
    letter-spacing: .11em;
    margin: 0 0 22px;
    font-weight: 600;
    line-height: 1.45;
}
.bt-point__title-sp {
    display: none;
}
.bt-point__desc {
    font-family: var(--bt-sans);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.95;
    opacity: 1;
    margin: 0;
    letter-spacing: .06em;
}
.bt-point__desc span {
    display: block;
}

/* =========================================================
   VIDEOS
========================================================= */
.bt-videos { background: var(--bt-bg); }
.bt-videos__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px 18px;
}
.bt-video {
    cursor: pointer;
    background: none;
    border: none;
    padding: 0;
    text-align: left;
    font-family: inherit;
    color: inherit;
}
.bt-video__thumb {
    position: relative;
    overflow: hidden;
    aspect-ratio: 4 / 5;
    background: #d8cdb8;
}
.bt-video__thumb-img {
    position: absolute; inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1.78);
    transition: transform 1s ease;
}
.bt-video:hover .bt-video__thumb-img { transform: scale(1.84); }
.bt-video__play {
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    width: 52px; height: 52px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .9);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .3s ease;
}
.bt-video:hover .bt-video__play { background: #fff; }
.bt-video__play::before {
    content: "";
    width: 0;
    height: 0;
    border: 9px solid transparent;
    border-left-color: var(--bt-gold-dk);
    margin-left: 4px;
}
.bt-video__cap {
    margin-top: 14px;
    font-size: 13px;
    line-height: 1.55;
    letter-spacing: .04em;
    color: var(--bt-text);
}

/* =========================================================
   CASE
========================================================= */
.bt-case {
    --bt-case-gap: 30px;
    --bt-case-gap-half: 15px;
    background: var(--bt-bg-beige);
    padding-top: 96px;
    padding-bottom: 104px;
    overflow: hidden;
}
.bt-case .bt-container {
    max-width: 1230px;
}
.bt-case__heading {
    text-align: left;
    margin-bottom: 86px;
}
.bt-case .bt-sec-title__sub {
    font-family: var(--bt-sans);
    font-size: 15px;
    font-weight: 500;
    letter-spacing: .16em;
    color: #9b8d75;
    margin-bottom: 8px;
}
.bt-case .bt-sec-title__main {
    font-family: var(--bt-cormorant);
    font-size: 54px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .02em;
    color: #9b8d75;
}
.bt-case__stage {
    overflow: hidden;
    overflow-y: hidden;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    cursor: grab;
    touch-action: pan-y;
}
.bt-case__stage.is-dragging { cursor: grabbing; }
.bt-case__track {
    display: flex;
    gap: var(--bt-case-gap);
    width: max-content;
    padding: 0 0 70px;
    transform: translate3d(0, 0, 0);
    will-change: transform;
    user-select: none;
    touch-action: pan-y;
}
.bt-case__set {
    display: flex;
    gap: var(--bt-case-gap);
}
.bt-case__item {
    flex: 0 0 300px;
    width: 300px;
    overflow: hidden;
    display: block;
    -webkit-user-drag: none;
}
.bt-case__photos {
    display: flex;
    width: 100%;
    height: 300px;
    overflow: hidden;
    background: #f2eee8;
}
.bt-case__photos img {
    flex: 0 0 50%;
    width: 50%;
    height: 100%;
    object-fit: cover;
    object-position: top;
    pointer-events: none;
    user-select: none;
    transition: transform .7s ease;
}
.bt-case__item:hover .bt-case__photos img {
    transform: scale(1.025);
}
.bt-case__label {
    display: block;
    padding: 17px 12px 18px;
    background: var(--bt-gold-dk);
    color: #fff;
    font-family: var(--bt-sans);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: .08em;
    text-align: center;
}
.bt-case .bt-more-wrap {
    margin-top: 2px;
    text-align: center;
}
.bt-case__btn {
    min-width: 240px;
    min-height: 54px;
    justify-content: center;
    border-radius: 8px;
    background: linear-gradient(90deg, #efd49c 0%, #c8aa62 100%);
    color: #050505;
    font-family: var(--bt-inter);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .28em;
    box-shadow: none;
}
.bt-case__btn::after {
    content: "";
    position: absolute;
    right: 30px;
    width: 12px;
    height: 12px;
    border-top: 1.5px solid currentColor;
    border-right: 1.5px solid currentColor;
    transform: rotate(45deg);
    margin-left: 0;
}
.bt-case__btn:hover {
    background: linear-gradient(90deg, #f2daa7 0%, #b99a4e 100%);
    box-shadow: none;
    transform: translateX(4px);
}
.bt-case__btn:hover::after {
    transform: rotate(45deg);
}
@keyframes bt-case-marquee {
    from { transform: translate3d(0, 0, 0); }
    to { transform: translate3d(calc(-50% - var(--bt-case-gap-half)), 0, 0); }
}

/* =========================================================
   DOCTOR
========================================================= */
.bt-doctor {
    background: var(--bt-bg);
    padding-top: 102px;
    padding-bottom: 112px;
}
.bt-doctor .bt-container {
    max-width: 1230px;
}
.bt-doctor__heading {
    text-align: left;
    margin-bottom: 56px;
}
.bt-doctor__heading .bt-sec-title__sub {
    font-family: var(--bt-serif);
    font-size: 44px;
    font-weight: 400;
    line-height: 1.25;
    letter-spacing: .12em;
    color: #9b8d75;
}
.bt-doctor__intro {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(430px, .92fr);
    gap: clamp(56px, 7vw, 96px);
    align-items: start;
}
.bt-doctor__photo {
    margin: 0;
    overflow: hidden;
    background: #f4efe5;
}
.bt-doctor__photo img {
    width: 100%;
    aspect-ratio: 670 / 580;
    object-fit: cover;
    object-position: center;
}
.bt-doctor__name {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 28px;
    margin-top: 34px;
    color: var(--bt-text);
}
.bt-doctor__role {
    font-family: var(--bt-serif);
    font-size: 16px;
    line-height: 1;
    letter-spacing: .08em;
    white-space: nowrap;
}
.bt-doctor__divider {
    width: 1px;
    height: 44px;
    background: #3b342d;
}
.bt-doctor__name-body {
    display: grid;
    gap: 7px;
}
.bt-doctor__roman {
    font-family: var(--bt-cormorant);
    font-size: 16px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: .18em;
}
.bt-doctor__jp {
    font-family: var(--bt-serif);
    font-size: 29px;
    font-weight: 500;
    line-height: 1.15;
    letter-spacing: .22em;
}
.bt-doctor__career {
    padding-top: 2px;
}
.bt-doctor__career-title {
    margin: 0 0 28px;
    font-family: var(--bt-serif);
    font-size: 24px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: .16em;
    color: var(--bt-text);
}
.bt-doctor__career-list {
    margin: 0;
}
.bt-doctor__career-list div {
    display: grid;
    grid-template-columns: 100px 1fr;
    gap: 28px;
    align-items: center;
    min-height: 53px;
    border-bottom: 1px solid #b19e82;
}
.bt-doctor__career-list div:last-child {
    border-bottom: 0;
}
.bt-doctor__career-list dt,
.bt-doctor__career-list dd {
    margin: 0;
    font-family: var(--bt-sans);
    font-size: 17px;
    line-height: 1.6;
    letter-spacing: .05em;
}
.bt-doctor__career-list dt {
    color: #9b8d75;
    font-weight: 500;
}
.bt-doctor__career-list dd {
    color: var(--bt-text);
    font-weight: 500;
}
.bt-doctor__message {
    margin-top: 72px;
}
.bt-doctor__lead {
    font-family: var(--bt-serif);
    font-size: 32px;
    line-height: 1.58;
    letter-spacing: .1em;
    color: var(--bt-text);
    margin: 0 0 42px;
    font-weight: 700;
}
.bt-doctor__lead-line {
    display: block;
}
.bt-doctor__body {
    display: grid;
    gap: 28px;
}
.bt-doctor__body p {
    margin: 0;
    font-family: var(--bt-serif);
    font-size: 17px;
    line-height: 2.08;
    letter-spacing: .05em;
    color: var(--bt-text);
    font-weight: 500;
}
.bt-doctor__more {
    display: none;
}

/* =========================================================
   TREATMENT
========================================================= */
.bt-treatment {
    background: var(--bt-bg-beige);
    padding-top: 118px;
    padding-bottom: 124px;
}
.bt-treatment .bt-container {
    width: 94%;
    max-width: 1120px;
}
.bt-treatment .bt-sec-title {
    text-align: left;
    margin-bottom: 86px;
}
.bt-treatment .bt-sec-title__sub {
    font-family: var(--bt-sans);
    font-size: 15px;
    font-weight: 500;
    letter-spacing: .16em;
    color: #9b8d75;
    margin-bottom: 8px;
}
.bt-treatment .bt-sec-title__main {
    font-family: var(--bt-cormorant);
    font-size: 54px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .02em;
    color: #9b8d75;
}
.bt-treatment__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 48px;
}
.bt-treatment__cell {
    min-width: 0;
}
.bt-treatment__item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 170px;
    gap: 0;
    align-items: stretch;
    width: 100%;
    background: #9d8d6e;
    color: #fff;
    border: 0;
    border-radius: 0;
    overflow: hidden;
    min-height: 160px;
    text-decoration: none;
    position: relative;
    cursor: pointer;
    appearance: none;
    padding: 0;
    text-align: left;
    font: inherit;
    transition: background .25s ease;
}
.bt-treatment__item:hover {
    background: #8c7b64;
}
.bt-treatment__body {
    padding: 38px 32px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    min-height: 100%;
}
.bt-treatment__en {
    font-family: var(--bt-inter);
    font-size: 22px;
    letter-spacing: .13em;
    line-height: 1.25;
    margin-bottom: 9px;
    font-weight: 500;
    color: #fff;
    white-space: nowrap;
}
.bt-treatment__en--long {
    font-size: 20px;
    letter-spacing: .11em;
}
.bt-treatment__jp {
    font-family: var(--bt-sans);
    font-size: 15px;
    font-weight: 500;
    letter-spacing: .08em;
    line-height: 1.35;
    color: #fff;
    opacity: 1;
}
.bt-treatment__chev {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    color: #fff;
}
.bt-treatment__chev::before {
    content: "";
    display: block;
    width: 11px;
    height: 11px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    margin: 1px auto 0;
    transition: transform .25s ease, margin .25s ease;
}
.bt-treatment__item[aria-expanded="true"] .bt-treatment__chev::before {
    transform: rotate(225deg);
    margin-top: 7px;
}
.bt-treatment__img {
    display: block;
    position: relative;
    align-self: stretch;
    height: 100%;
    width: calc(100% + 1px);
    margin-left: -1px;
    background-color: #9d8d6e;
    background-position: center;
    background-size: cover;
    min-height: 160px;
}
.bt-treatment__panel {
    display: grid;
    grid-template-rows: 0fr;
    background: #fff;
    color: #111;
    overflow: hidden;
    padding: 0 38px;
    transition:
        grid-template-rows .34s ease,
        padding .36s ease;
    will-change: grid-template-rows;
}
.bt-treatment__item[aria-expanded="true"] + .bt-treatment__panel {
    grid-template-rows: 1fr;
    padding-top: 28px;
    padding-bottom: 34px;
}
.bt-treatment__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 32px;
    list-style: none;
    margin: 0;
    padding: 0;
    min-height: 0;
    overflow: hidden;
}
.bt-treatment__list-item {
    border-bottom: 1px solid rgba(0, 0, 0, .18);
}
.bt-treatment__list-item a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    min-height: 52px;
    width: 100%;
    margin: 0;
    padding: 15px 12px;
    color: #111;
    border-radius: 4px;
    box-sizing: border-box;
    font-family: var(--bt-sans);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.45;
    letter-spacing: .04em;
    position: relative;
    transition: background .2s ease, color .2s ease, opacity .2s ease;
}
.bt-treatment__list-item a:hover,
.bt-treatment__list-item a:focus-visible {
    background: rgba(157, 141, 110, .13);
    color: #7f6f55;
    opacity: 1;
    outline: 0;
}
.bt-treatment__list-item a::after {
    content: "";
    flex: 0 0 auto;
    width: 7px;
    height: 7px;
    margin-right: 8px;
    border-top: 1px solid currentColor;
    border-right: 1px solid currentColor;
    opacity: .78;
    transform: rotate(45deg);
    transition: transform .2s ease, opacity .2s ease;
}
.bt-treatment__list-item a:hover::after,
.bt-treatment__list-item a:focus-visible::after {
    opacity: 1;
    transform: translateX(2px) rotate(45deg);
}
@media (prefers-reduced-motion: reduce) {
    .bt-treatment__item,
    .bt-treatment__chev::before,
    .bt-treatment__list-item a,
    .bt-treatment__list-item a::after,
    .bt-treatment__panel {
        transition: none;
    }
}

/* =========================================================
   INSTAGRAM
========================================================= */
.bt-insta {
    --bt-insta-size: clamp(210px, 16.08vw, 270px);
    --bt-insta-gap: clamp(28px, 2.38vw, 40px);
    background: #fff;
    color: #111;
    padding: 92px 0 78px;
    overflow: hidden;
    position: relative;
}
.bt-insta .bt-container {
    width: 94%;
    max-width: 1120px;
}
.bt-insta .bt-sec-title {
    text-align: left;
    margin: 0 0 88px;
}
.bt-insta .bt-sec-title__sub {
    font-family: var(--bt-sans);
    font-size: 15px;
    font-weight: 500;
    letter-spacing: .16em;
    color: #9b8d75;
    margin-bottom: 8px;
}
.bt-insta .bt-sec-title__main {
    font-family: var(--bt-cormorant);
    font-size: 54px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .02em;
    color: #9b8d75;
}
.bt-insta__marquee {
    width: 100vw;
    margin: 0 0 100px calc(50% - 50vw);
    overflow: hidden;
}
.bt-insta__track {
    display: flex;
    width: max-content;
    animation: bt-insta-scroll 52s linear infinite;
    will-change: transform;
}
.bt-insta__mobile-rows {
    display: none;
}
.bt-insta__row {
    width: 100vw;
    overflow: hidden;
}
.bt-insta__row-track {
    display: flex;
    width: max-content;
    gap: var(--bt-insta-gap);
    will-change: transform;
}
.bt-insta__set {
    display: flex;
    flex: 0 0 auto;
    gap: var(--bt-insta-gap);
    padding-right: var(--bt-insta-gap);
}
.bt-insta__item {
    display: block;
    flex: 0 0 auto;
    width: var(--bt-insta-size);
    aspect-ratio: 4 / 5;
    background: #efe4d2;
    overflow: hidden;
}
.bt-insta__item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .45s ease, opacity .45s ease;
}
.bt-insta__item:hover img {
    transform: scale(1.04);
    opacity: .88;
}
.bt-insta__source {
    position: absolute;
    top: 0;
    left: 16px;
    width: 100%;
    max-height: 1px;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
}
.bt-insta--source-visible .bt-insta__track,
.bt-insta--source-visible .bt-insta__mobile-rows {
    display: none;
}
.bt-insta--source-visible .bt-insta__source {
    position: static;
    max-height: none;
    overflow: visible;
    opacity: 1;
    pointer-events: auto;
}
.bt-insta__more {
    text-align: center;
    margin-bottom: 0;
}
.bt-insta__more .bt-btn {
    min-width: 240px;
    min-height: 54px;
    justify-content: center;
    gap: 28px;
    padding: 0 30px;
    border-radius: 5px;
    background: linear-gradient(90deg, #f2dcae 0%, #caa861 100%);
    color: #050505;
    font-family: var(--bt-inter);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .28em;
    white-space: nowrap;
}
.bt-insta__more .bt-btn::after {
    content: "";
    position: absolute;
    right: 30px;
    width: 9px;
    height: 9px;
    border-top: 1px solid currentColor;
    border-right: 1px solid currentColor;
    transform: rotate(45deg);
}
.bt-insta__more .bt-btn:hover {
    background: linear-gradient(90deg, #dcc28e 0%, #b9944f 100%);
    box-shadow: none;
}
.bt-insta__more .bt-btn:hover::after {
    transform: translateX(4px) rotate(45deg);
}
.bt-insta__sns {
    display: flex;
    justify-content: center;
    gap: clamp(24px, 3vw, 48px);
    flex-wrap: wrap;
    width: min(100%, var(--bt-sns-unit-width));
    margin: 100px auto 0;
}
.bt-insta__sns a {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 13px;
    width: 132px;
    color: #000;
    transition: opacity .3s ease;
}
.bt-insta__sns a:hover { opacity: .6; }
.bt-insta__sns-icon {
    width: 82px;
    height: 82px;
    border-radius: 50%;
    background: #fff;
    color: #000;
    border: 1px solid #222;
    display: flex;
    align-items: center;
    justify-content: center;
}
.bt-insta__sns a[href*="instagram.com"] .bt-insta__sns-icon { color: #A762A8; }
.bt-insta__sns a[href*="x.com"] .bt-insta__sns-icon { color: #4B4B4B; }
.bt-insta__sns a[href*="youtube.com"] .bt-insta__sns-icon { color: #A86262; }
.bt-insta__sns a[href*="line.me"] .bt-insta__sns-icon { color: #62A87C; }
.bt-insta__sns a[href*="facebook.com"] .bt-insta__sns-icon { color: #6276A8; }
.bt-insta__sns-icon--instagram { color: #A762A8; }
.bt-insta__sns-icon--x { color: #4B4B4B; }
.bt-insta__sns-icon--youtube { color: #A86262; }
.bt-insta__sns-icon--line { color: #62A87C; }
.bt-insta__sns-icon--facebook { color: #6276A8; }
.bt-insta__sns-icon svg {
    width: 56px;
    height: 56px;
    display: block;
}
.bt-insta__sns-name {
    max-width: 132px;
    font-family: var(--bt-inter);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.25;
    text-align: center;
    overflow-wrap: normal;
    word-break: keep-all;
    color: #252b32;
}
@media (min-width: 769px) {
    .bt-insta__sns {
        flex-wrap: nowrap;
    }
}
@keyframes bt-insta-scroll {
    from { transform: translate3d(0, 0, 0); }
    to { transform: translate3d(-50%, 0, 0); }
}
@media (prefers-reduced-motion: reduce) {
    .bt-insta__track,
    .bt-insta__row-track {
        animation: none;
    }
    .bt-insta__marquee {
        overflow-x: auto;
        scrollbar-width: none;
    }
    .bt-insta__marquee::-webkit-scrollbar {
        display: none;
    }
}

/* =========================================================
   RESERVATION
========================================================= */
.bt-reserve { background: #afa7a0; padding: 90px 0; color: #fff; }
.bt-reserve .bt-container {
    max-width: var(--bt-sns-unit-width);
}
.bt-reserve__title {
    text-align: left;
    margin-bottom: 60px;
}
.bt-reserve__title .bt-sec-title__sub {
    font-family: var(--bt-sans);
    font-size: 13px;
    font-weight: 400;
    letter-spacing: .22em;
    color: rgba(255, 255, 255, .8);
    margin-bottom: 10px;
}
.bt-reserve__title .bt-sec-title__main {
    font-family: var(--bt-cormorant);
    font-size: 54px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .04em;
    color: #fff;
}
.bt-reserve__buttons {
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
}
#bt-root .bt-reserve__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    width: calc((var(--bt-sns-unit-width) - 20px) / 2);
    flex-shrink: 0;
    padding: 24px 0;
    background: #62A87C;
    color: #fff;
    font-family: var(--bt-sans);
    font-size: 19px;
    font-weight: 500;
    letter-spacing: .08em;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    transition: background .3s ease;
    text-decoration: none;
}
#bt-root .bt-reserve__btn:nth-of-type(2) {
    background: #6276A8;
}
#bt-root .bt-reserve__btn:hover { filter: brightness(.95); }
.bt-reserve__btn-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: inherit;
}
.bt-reserve__btn-icon svg { width: 28px; height: auto; }

/* =========================================================
   Regeneration (CELL THERAPY)
========================================================= */
#bt-root .bt-regen { background: var(--bt-bg); padding: 74px 0 92px; }
.bt-regen .bt-container {
    max-width: var(--bt-sns-unit-width);
}
.bt-regen__card {
    display: grid;
    grid-template-columns: 43.6% minmax(0, 1fr);
    min-height: 261px;
    overflow: hidden;
    border-radius: 5px;
    background-image: url("/wp-content/uploads/2026/04/beauty-cell-therapy-bg-pc.jpg");
    background-position: center;
    background-size: cover;
    color: var(--bt-text);
    text-decoration: none;
}
.bt-regen__head {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 46px 44px 46px;
    overflow: hidden;
    background: #9d8f73;
}
.bt-regen__sub {
    margin: 0 0 16px;
    color: #fff;
    font-family: var(--bt-sans);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: .08em;
}
.bt-regen__title {
    font-family: var(--bt-serif);
    font-size: 35px;
    font-weight: 400;
    line-height: 1.22;
    letter-spacing: .02em;
    color: #fff;
    margin: 0;
}
.bt-regen__title span {
    display: block;
    white-space: nowrap;
}
.bt-regen__content {
    position: relative;
    padding: 48px 72px 28px 56px;
    text-align: left;
}
.bt-regen__content::after {
    content: "";
    position: absolute;
    inset: 0;
    border: 1px solid #9d8f73;
    border-left: 0;
    border-radius: 0 5px 5px 0;
    pointer-events: none;
}
.bt-regen__lead {
    margin: 0 0 25px;
    color: #252525;
    font-family: var(--bt-sans);
    font-size: 19px;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: .07em;
    text-align: left;
}
.bt-regen__lead span,
.bt-regen__menu span {
    color: #9d8f73;
}
.bt-regen__menu {
    display: grid;
    gap: 14px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.bt-regen__menu li {
    position: relative;
    padding-left: 0;
    color: #252525;
    font-family: var(--bt-sans);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: .05em;
}
.bt-regen__menu li::before {
    content: "";
    position: absolute;
    left: -20px;
    top: .58em;
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: #9d8f73;
}
.bt-regen__arrow {
    position: absolute;
    top: 50%;
    right: 20px;
    width: 18px;
    height: 18px;
    border-top: 3px solid #9d8f73;
    border-right: 3px solid #9d8f73;
    transform: translateY(-50%) rotate(45deg);
    transition: transform .3s ease;
}
.bt-regen__card:hover .bt-regen__arrow {
    transform: translate(4px, -50%) rotate(45deg);
}
.bt-regen__sp-only {
    display: none;
}
.bt-regen__pc-break {
    display: block;
}

/* =========================================================
   Clinic
========================================================= */
.bt-clinic {
    background: #e4ded8;
    padding: 113px 0 0;
    overflow: hidden;
}
.bt-clinic .bt-container {
    width: 90%;
    max-width: var(--bt-sns-unit-width);
}
.bt-clinic__heading,
.bt-clinic .bt-sec-title {
    text-align: left;
    margin: 0 0 54px;
}
.bt-clinic .bt-sec-title__sub {
    font-family: var(--bt-sans);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: .16em;
    color: #9b8d75;
    margin-bottom: 8px;
}
.bt-clinic .bt-sec-title__main {
    font-family: var(--bt-cormorant);
    font-size: 64px;
    font-weight: 500;
    line-height: .95;
    letter-spacing: .02em;
    color: #9b8d75;
}
.bt-clinic__wrap {
    display: grid;
    grid-template-columns: minmax(0, 558px) 420px;
    gap: 54px;
    align-items: start;
}
.bt-clinic__info dl {
    margin: 0;
}
.bt-clinic__row {
    margin: 0 0 18px;
    padding: 0 14px 19px;
    border-bottom: 1px solid rgba(157, 141, 105, .78);
}
.bt-clinic__row:last-child {
    margin-bottom: 0;
}
.bt-clinic__info dt {
    margin: 0 0 12px;
    color: #0f0f0f;
    font-family: var(--bt-sans);
    font-size: 16px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: .02em;
}
.bt-clinic__info dd {
    margin: 0;
    color: #111;
    font-family: var(--bt-sans);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.78;
    letter-spacing: .03em;
}
.bt-clinic__access {
    display: grid;
    gap: 3px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.bt-clinic__access li {
    position: relative;
    padding-left: 1em;
}
.bt-clinic__access li::before {
    content: "・";
    position: absolute;
    left: 0;
    top: 0;
}
.bt-clinic__note {
    margin: 5px 0 0;
    padding-left: 1em;
    text-indent: -1em;
}
.bt-clinic__row--parking {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 188px;
    gap: 20px;
    align-items: center;
    padding-bottom: 0;
    border-bottom: 0;
}
.bt-clinic__row--parking dt {
    margin: 0;
}
.bt-clinic__parking-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 28px;
    width: 188px;
    min-height: 36px;
    padding: 8px 18px;
    border-radius: 8px;
    background: #a29070;
    color: #fff !important;
    font-family: var(--bt-sans);
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .14em;
    text-decoration: none;
    transition: background .25s ease, transform .25s ease;
}
.bt-clinic__parking-button span {
    width: 10px;
    height: 10px;
    border-top: 2px solid currentColor;
    border-right: 2px solid currentColor;
    transform: rotate(45deg);
    flex: 0 0 auto;
}
.bt-clinic__parking-button:hover {
    background: #8f7f64;
    transform: translateX(3px);
}
.bt-clinic__access-button {
    margin-top: 14px;
    width: 188px;
}
.bt-clinic__media {
    width: 420px;
}
.bt-clinic__image {
    width: 100%;
    height: auto;
}
.bt-clinic__hours {
    width: 420px;
    margin: 51px 0 0;
    border-collapse: collapse;
    table-layout: fixed;
    color: #111;
    font-family: var(--bt-sans);
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .08em;
    background: #fbfaf6;
    box-shadow: 0 0 0 1px rgba(157, 141, 105, .5) inset;
}
.bt-clinic__hours th,
.bt-clinic__hours td {
    height: 38px;
    padding: 0 6px;
    border: 1px solid #fff;
    text-align: center;
    vertical-align: middle;
    overflow-wrap: normal;
    word-break: keep-all;
    hyphens: auto;
}
.bt-clinic__hours thead th {
    height: 39px;
    background: #ded2bb;
    font-weight: 700;
    font-size: 14px;
    line-height: 1;
    letter-spacing: .08em;
    text-align: center;
    vertical-align: middle;
}
.bt-clinic__day-en {
    display: none;
}
.bt-clinic__hours thead th:first-child,
.bt-clinic__hours tbody th {
    width: 102px;
}
.bt-clinic__hours tbody th {
    background: #fbfaf6;
    font-weight: 500;
    letter-spacing: .12em;
}
.bt-clinic__hours tbody td {
    background: #fbfaf6;
}
.bt-clinic__open {
    color: #74716d;
    font-size: 16px;
    line-height: 1;
}
.bt-clinic__map {
    width: 100vw;
    height: 365px;
    margin: 119px 0 0 calc(50% - 50vw);
    background: #d8d4ce;
}
.bt-clinic__map iframe {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}

/* =========================================================
   Floating monitor banner (PC bottom-left)
========================================================= */
.bt-monitor-fab {
    position: fixed;
    left: 16px;
    bottom: 20px;
    z-index: 88;
    width: min(330px, calc(100vw - 32px));
    container-type: inline-size;
    overflow: visible;
    border-radius: 0;
    box-shadow: none;
    background: transparent;
    display: block;
    font-family: var(--bt-serif, "Shippori Mincho", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Noto Serif JP", serif);
    transition: opacity .25s ease;
}
.bt-monitor-fab:hover {
    transform: none;
    filter: none;
}
.bt-monitor-fab__link {
    display: block;
    color: #fff !important;
    line-height: 0;
    overflow: hidden;
    text-decoration: none !important;
}
.bt-monitor-fab__panel {
    position: relative;
    display: block;
    aspect-ratio: 1540 / 972;
    overflow: hidden;
    background: transparent;
    color: #fff;
    isolation: isolate;
}
.bt-monitor-fab--reference .bt-monitor-fab__panel {
    aspect-ratio: 771 / 479;
}
.bt-monitor-fab__stage {
    position: absolute;
    inset: 0;
    overflow: hidden;
    background:
        radial-gradient(circle at 28% 20%, rgba(246, 225, 191, .58) 0 23%, transparent 46%),
        radial-gradient(circle at 76% 46%, rgba(121, 93, 70, .13) 0 34%, transparent 62%),
        linear-gradient(125deg, #d8bd98 0%, #cbb08b 46%, #b89b78 100%);
}
.bt-monitor-fab__stage::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 24%;
    background: linear-gradient(to right, rgba(184, 155, 120, 0), rgba(184, 155, 120, .52));
    z-index: 1;
    pointer-events: none;
}
.bt-monitor-fab__stage::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 24%;
    background: linear-gradient(to bottom, rgba(63, 42, 26, 0), rgba(74, 49, 30, .42));
    z-index: 2;
    pointer-events: none;
}
.bt-monitor-fab__wave {
    position: absolute;
    inset: -10% -24% -10% -7%;
    width: 131%;
    height: 120%;
    object-fit: cover;
    object-position: 42% 50%;
    opacity: .92;
    z-index: 0;
}
.bt-monitor-fab__woman {
    position: absolute;
    left: 1.5%;
    bottom: -1.5%;
    width: 40.5%;
    height: auto;
    z-index: 2;
    filter: saturate(1.02) contrast(1.02);
}
.bt-monitor-fab__copy,
.bt-monitor-fab__period {
    position: absolute;
    z-index: 3;
    text-align: center;
    color: #fff;
    text-shadow:
        0 .42cqw .54cqw rgba(54, 36, 25, .72),
        0 .10cqw .12cqw rgba(54, 36, 25, .48),
        0 .10cqw 0 rgba(255, 255, 255, .42);
    font-feature-settings: "palt";
    -webkit-font-smoothing: antialiased;
}
.bt-monitor-fab__copy {
    left: 34%;
    right: 5.2%;
    top: 15.5%;
}
.bt-monitor-fab__copy > span {
    display: block;
}
.bt-monitor-fab__clinic {
    font-size: clamp(8px, 2.78cqw, 17px);
    font-weight: 600;
    letter-spacing: .025em;
    line-height: 1.2;
    white-space: nowrap;
}
.bt-monitor-fab__title {
    margin-top: 4.5cqw;
    font-family: var(--bt-noto-serif, "Noto Serif JP", "Yu Mincho", "YuMincho", serif);
    font-size: clamp(16px, 7.75cqw, 38px);
    font-weight: 500;
    letter-spacing: .025em;
    line-height: 1.05;
    white-space: nowrap;
}
.bt-monitor-fab__menu {
    margin-top: 6.5cqw;
    font-size: clamp(10px, 4.55cqw, 24px);
    font-weight: 600;
    letter-spacing: .035em;
    line-height: 1;
    white-space: nowrap;
}
.bt-monitor-fab__discount {
    position: relative;
    margin-top: 1.8cqw;
    min-height: 15cqw;
}
.bt-monitor-fab__discount-text {
    font-family: var(--bt-noto-serif, "Noto Serif JP", "Yu Mincho", "YuMincho", serif);
    font-size: clamp(31px, 14.65cqw, 70px);
    font-weight: 500;
    letter-spacing: .02em;
    line-height: .92;
    white-space: nowrap;
}
.bt-monitor-fab__ornament {
    position: absolute;
    top: 47%;
    width: 23%;
    height: 8.7cqw;
    color: #fff;
    transform: translateY(-50%);
    opacity: .96;
    background-image: url("/wp-content/uploads/2026/04/beauty-monitor-ornament.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    filter: drop-shadow(0 .42cqw .36cqw rgba(62, 42, 28, .42));
}
.bt-monitor-fab__ornament::before {
    content: none;
}
.bt-monitor-fab__ornament::after {
    content: none;
}
.bt-monitor-fab__ornament--left {
    left: 2.5%;
}
.bt-monitor-fab__ornament--left::after {
    content: none;
}
.bt-monitor-fab__ornament--right {
    right: 2.5%;
    transform: translateY(-50%) scaleX(-1);
}
.bt-monitor-fab__ornament--right::after {
    content: none;
}
.bt-monitor-fab__period {
    left: 35%;
    right: 1.8%;
    bottom: 5.2%;
    font-size: clamp(6px, 2.62cqw, 16px);
    font-weight: 700;
    letter-spacing: -.02em;
    line-height: 1.2;
    white-space: nowrap;
}
.bt-monitor-fab__close {
    position: absolute;
    top: -10px;
    right: -10px;
    width: clamp(28px, 3vw, 38px);
    height: clamp(28px, 3vw, 38px);
    border-radius: 50%;
    background: #000;
    color: transparent;
    border: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0;
    line-height: 1;
    appearance: none;
    cursor: pointer;
    z-index: 20;
    pointer-events: auto;
    touch-action: manipulation;
    box-shadow: none;
}
.bt-monitor-fab--reference .bt-monitor-fab__close {
    top: -4.05cqw;
    right: -4.05cqw;
    width: clamp(28px, 8.05cqw, 62px);
    height: clamp(28px, 8.05cqw, 62px);
}
.bt-monitor-fab__close::before,
.bt-monitor-fab__close::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 42%;
    height: 1.5px;
    border-radius: 0;
    background: #fff;
    transform-origin: center;
}
.bt-monitor-fab--reference .bt-monitor-fab__close::before,
.bt-monitor-fab--reference .bt-monitor-fab__close::after {
    width: 40%;
    height: 2px;
}
.bt-monitor-fab__close::before {
    transform: translate(-50%, -50%) rotate(45deg);
}
.bt-monitor-fab__close::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}
.bt-monitor-fab--reference .bt-monitor-fab__panel {
    aspect-ratio: 771 / 479;
}
.bt-monitor-fab--reference .bt-monitor-fab__stage {
    background: linear-gradient(90deg, #d7c39b 0 18%, #c6ad85 18% 100%);
}
.bt-monitor-fab--reference .bt-monitor-fab__stage::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 11%;
    bottom: 11%;
    width: auto;
    background: linear-gradient(90deg, rgba(27, 24, 21, .58) 0%, rgba(27, 24, 21, .72) 38%, rgba(27, 24, 21, .84) 100%);
    z-index: 3;
    pointer-events: none;
}
.bt-monitor-fab--reference .bt-monitor-fab__stage::after {
    content: none;
}
.bt-monitor-fab--reference .bt-monitor-fab__wave {
    inset: -9% -19% -12% -3%;
    width: 121%;
    height: 122%;
    object-position: 44% 50%;
    opacity: .52;
    z-index: 2;
    mix-blend-mode: normal;
}
.bt-monitor-fab--reference .bt-monitor-fab__woman {
    left: -1.6%;
    bottom: -1.2%;
    width: 45%;
    z-index: 4;
    filter: saturate(1.02) contrast(1.02);
}
.bt-monitor-fab--reference .bt-monitor-fab__copy,
.bt-monitor-fab--reference .bt-monitor-fab__period {
    color: #e1cf98;
    text-shadow:
        0 .22cqw .28cqw rgba(0, 0, 0, .58),
        0 .05cqw 0 rgba(255, 255, 255, .18);
}
.bt-monitor-fab--reference .bt-monitor-fab__copy {
    left: 38.2%;
    right: 4.6%;
    top: 18.6%;
    z-index: 5;
}
.bt-monitor-fab--reference .bt-monitor-fab__clinic {
    font-size: clamp(8px, 2.78cqw, 17px);
    font-weight: 500;
    letter-spacing: .09em;
    color: #e4d3a0;
}
.bt-monitor-fab--reference .bt-monitor-fab__title {
    margin-top: 3.55cqw;
    font-size: clamp(17px, 7.52cqw, 44px);
    font-weight: 500;
    letter-spacing: .04em;
    line-height: 1.05;
    color: #e2cf98;
}
.bt-monitor-fab--reference .bt-monitor-fab__divider {
    display: block;
    width: 72%;
    height: 1px;
    margin: 4.6cqw auto 0;
    background: rgba(226, 207, 152, .72);
}
.bt-monitor-fab--reference .bt-monitor-fab__offer {
    display: flex !important;
    position: relative;
    align-items: center;
    justify-content: center;
    gap: 5.55cqw;
    margin-top: 2.05cqw;
    padding-bottom: 3.55cqw;
}
.bt-monitor-fab--reference .bt-monitor-fab__offer::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 72%;
    height: 1px;
    background: rgba(226, 207, 152, .72);
    transform: translateX(-50%);
}
.bt-monitor-fab--reference .bt-monitor-fab__menu {
    margin-top: 0;
    min-width: 16.3cqw;
    font-weight: 500;
    line-height: 1.08;
    letter-spacing: .08em;
    color: #e2cf98;
}
.bt-monitor-fab--reference .bt-monitor-fab__menu-main,
.bt-monitor-fab--reference .bt-monitor-fab__menu-sub {
    display: block;
    white-space: nowrap;
}
.bt-monitor-fab--reference .bt-monitor-fab__menu-main {
    font-size: clamp(10px, 4.18cqw, 24px);
}
.bt-monitor-fab--reference .bt-monitor-fab__menu-sub {
    margin-top: .65cqw;
    font-size: clamp(9px, 3.28cqw, 19px);
    letter-spacing: .15em;
}
.bt-monitor-fab--reference .bt-monitor-fab__discount-text {
    font-size: clamp(30px, 12.75cqw, 74px);
    line-height: .95;
    letter-spacing: .02em;
    color: #e2cf98;
}
.bt-monitor-fab--reference .bt-monitor-fab__period {
    left: 40.1%;
    right: 4%;
    bottom: 13.6%;
    z-index: 5;
    color: #fff;
    font-size: clamp(9px, 3.05cqw, 17px);
    font-weight: 600;
    letter-spacing: .03em;
    line-height: 1.2;
}
.bt-monitor-fab[hidden],
.bt-monitor-fab.is-hidden { display: none !important; }

/* =========================================================
   SP fixed bottom CTA bar
========================================================= */
.bt-bottombar { display: none; }

/* =========================================================
   Responsive (tablet)
========================================================= */
@media (max-width: 1100px) {
    .bt-section { padding: 90px 0; }
    .bt-sec-title__main { font-size: 36px; }
    .bt-hero__title { font-size: 30px; }
    .bt-campaign {
        padding: 130px 0 150px;
    }
    .bt-campaign .bt-sec-title__main { font-size: 48px; }
    .bt-campaign__grid { gap: 18px; }
    .bt-campaign__body {
        left: 24px;
        right: 22px;
        bottom: 22px;
    }
    .bt-campaign__title { font-size: 31px; }
    .bt-campaign__lead { font-size: 16px; }
    .bt-campaign__tag {
        min-width: 126px;
        font-size: 12px;
        padding: 7px 11px 8px;
    }
    .bt-news {
        padding: 92px 0 66px;
    }
    .bt-news__layout {
        grid-template-columns: 240px minmax(0, 1fr);
        gap: 42px;
    }
    .bt-news .bt-sec-title__main {
        font-size: 56px;
    }
    .bt-news__link {
        grid-template-columns: 128px 1fr;
        gap: 28px;
    }
    .bt-concept .bt-container {
        max-width: 860px;
    }
    .bt-concept__intro {
        grid-template-columns: minmax(0, 320px) minmax(0, 420px);
        gap: 46px;
    }
    .bt-point__num {
        top: -58px;
        width: 96px;
        height: 96px;
    }
    .bt-point__num-value { font-size: 28px; }
    .bt-point__body {
        left: 9%;
        right: 7%;
        top: 70%;
        bottom: auto;
    }
    .bt-point__title { font-size: 20px; }
    .bt-point__desc { font-size: 12.5px; }
    .bt-videos__grid { grid-template-columns: repeat(3, 1fr); }
    .bt-case__track {
        --bt-case-gap: 22px;
        --bt-case-gap-half: 11px;
        animation-duration: 34s;
    }
    .bt-doctor__intro { gap: 56px; }
    .bt-regen__head { padding: 38px 32px; }
    .bt-regen__content { padding: 38px 58px 24px 40px; }
    .bt-regen__title { font-size: clamp(28px, 4vw, 35px); }
    .bt-regen__lead { font-size: 17px; }
    .bt-regen__menu li { font-size: 13.5px; }
    #bt-root .bt-reserve__btn {
        width: calc((90vw - 20px) / 2);
        max-width: calc((var(--bt-sns-unit-width) - 20px) / 2);
    }
    .bt-clinic__wrap {
        grid-template-columns: minmax(0, 1fr) minmax(0, 420px);
        gap: 36px;
    }
    .bt-clinic__media,
    .bt-clinic__hours {
        width: 100%;
    }
    .bt-clinic__image {
        width: 100%;
        height: auto;
    }
    .bt-monitor-fab { width: min(270px, calc(100vw - 24px)); }
}

/* =========================================================
   Responsive (SP)
========================================================= */
@media (max-width: 768px) {
    .bt-section { padding: 70px 0; }
    .bt-sec-title { margin-bottom: 40px; }
    .bt-sec-title__main { font-size: 30px; letter-spacing: .1em; }
    .bt-sec-title__sub { font-size: 11.5px; margin-bottom: 10px; }

    /* ===== Hero SP — square layout ===== */
    .bt-hero {
        aspect-ratio: 1 / 1;
        height: auto;
        min-height: unset;
        padding: 0;
        overflow: hidden;
        border-bottom: 0;
    }
    .bt-hero__img {
        background-position: center center;
    }
    /* No dark overlay on SP (white card and alt slide light bgs provide contrast) */
    .bt-hero__img::after { background: none; }

    /* Inner: top-aligned for all slides */
    .bt-hero__inner {
        width: 92%;
        padding: 24px 0 0;
        align-items: flex-start;
    }

    /* === Slide 1 (default) copy card === */
    .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__copy {
        max-width: 88%;
        padding: 20px 20px 24px;
        box-shadow: 0 2px 20px rgba(0,0,0,.06);
    }
    /* Kicker hidden in copy card — shown in bt-openbar-sp below */
    .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__kicker {
        display: none;
    }
    .bt-hero__title {
        font-size: 28px;
        line-height: 1.65;
        margin: 0 0 12px;
    }
    .bt-hero__desc {
        font-size: 13px;
        line-height: 1.9;
        font-weight: 500; /* slightly bolder */
        color: #3a322a;
    }
    .bt-hero__slide--first .bt-hero__img {
        inset: 0;
        background-image: var(--bt-hero-sp-image) !important;
        background-position: 48% top;
        background-size: cover;
    }
    .bt-hero__slide--first.is-active .bt-hero__img {
        transform: none;
    }
    .bt-hero__slide--first .bt-hero__img::after {
        background: none;
    }
    .bt-hero__slide--first {
        background: #edf0f2;
    }
    .bt-hero__slide--first .bt-hero__inner {
        width: 53.5%;
        height: 100%;
        margin: 0 0 0 46.5%;
        justify-content: center;
        align-items: center;
        padding: 2% clamp(14px, 3.4vw, 22px) 0 clamp(8px, 1.8vw, 14px);
    }
    .bt-hero__slide--first .bt-hero__copy {
        width: 100%;
        max-width: none;
        padding: 0;
        background: transparent !important;
        box-shadow: none !important;
    }
    .bt-hero__slide--first .bt-hero__kicker {
        display: none;
    }
    .bt-hero__slide--first .bt-hero__title {
        margin: 0 0 clamp(14px, 3.5vw, 22px);
        font-size: clamp(20px, 5.15vw, 32px);
        line-height: 1.5;
        letter-spacing: .035em;
        white-space: nowrap;
    }
    .bt-hero__slide--first .bt-hero__desc {
        max-width: 17em;
        font-size: clamp(10px, 2.55vw, 15px);
        line-height: 1.82;
        letter-spacing: .025em;
        white-space: normal;
        overflow-wrap: normal;
    }
    .bt-hero__slide--first .bt-hero__desc br {
        display: none;
    }

    /* Desktop banner is replaced by the dedicated SP information band below. */
    .bt-openbar { display: none; }

    .bt-hero__pager { display: none; }
    .bt-hero__dot { width: 8px; height: 8px; }

    /* === SP Openbar below square === */
    .bt-openbar-sp {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: clamp(84px, 18.5vw, 170px);
        gap: clamp(5px, 1.2vw, 12px);
        background: linear-gradient(90deg, #8d6c34 0%, #c9aa70 100%);
        color: #fff;
        font-family: 'Inter', sans-serif;
        font-weight: 400;
        text-align: center;
        padding: clamp(15px, 4vw, 32px) 10px;
        line-height: 1.25;
    }
    .bt-openbar-sp__clinic {
        display: block;
        font-size: clamp(12px, 4.2vw, 32px);
        letter-spacing: .055em;
        margin: 0;
        white-space: nowrap;
    }
    .bt-openbar-sp__grand {
        display: block;
        font-size: clamp(22px, 5.7vw, 46px);
        letter-spacing: .075em;
        margin: 0;
        white-space: nowrap;
    }

    /* === Alt slides SP (2–4枚目): 垂直中央揃え === */
    .bt-hero__slide--alt .bt-hero__inner {
        align-items: center;
        padding-top: 0;
    }
    .bt-hero__slide--alt .bt-hero__copy {
        max-width: 92%;
        width: auto;
        padding: 0 4px;
    }
    .bt-hero__slide--alt .bt-hero__kicker {
        font-size: 16px;
        font-weight: 600;
        white-space: normal;
        margin-bottom: 14px;
        letter-spacing: .1em;
    }
    .bt-hero__slide--alt .bt-hero__title {
        font-size: clamp(28px, 8.5vw, 44px);
        white-space: normal;
        margin: 0 0 18px;
        letter-spacing: .04em;
        line-height: 1.4;
    }
    .bt-hero__slide--alt .bt-hero__desc {
        font-size: 15px;
        font-weight: 500;
        line-height: 2;
        white-space: normal;
    }
    .bt-hero__slide--injection .bt-hero__img {
        background-position: 62% center;
        background-size: cover;
    }
    .bt-hero__slide--injection .bt-hero__img::after {
        background: none;
    }
    .bt-hero__slide--injection .bt-hero__inner,
    .bt-hero__slide--injection .bt-hero__copy {
        width: 100%;
        max-width: none;
        padding: 0;
    }
    .bt-injection-hero__ribbon {
        left: 0;
        top: clamp(14px, 5.8vw, 34px);
        width: 96vw;
        height: clamp(28px, 12.1vw, 53px);
        padding-left: clamp(26px, 11.4vw, 50px);
    }
    .bt-injection-hero__lead {
        letter-spacing: .16em;
    }
    .bt-injection-hero__lead-lg {
        font-size: clamp(18px, 7.7vw, 34px);
    }
    .bt-injection-hero__lead-sm {
        font-size: clamp(16px, 6.7vw, 29px);
    }
    .bt-injection-hero__title {
        left: clamp(13px, 5.5vw, 24px);
        top: clamp(56px, 23.2vw, 102px);
        font-size: clamp(39px, 16.6vw, 72px);
    }
    .bt-injection-hero__menus {
        left: clamp(13px, 5.5vw, 24px);
        top: clamp(124px, 51.5vw, 224px);
        display: grid;
        grid-template-columns: repeat(2, max-content);
        gap: clamp(5px, 2.1vw, 9px);
    }
    .bt-injection-hero__circle {
        width: clamp(66px, 28.9vw, 126px);
        height: clamp(66px, 28.9vw, 126px);
        font-size: clamp(8.5px, 3.7vw, 16px);
    }
    .bt-injection-hero__circle::before {
        width: clamp(61px, 26.7vw, 116px);
        height: clamp(61px, 26.7vw, 116px);
    }
    .bt-injection-hero__etc {
        position: absolute;
        right: clamp(-25px, -5.8vw, -14px);
        bottom: clamp(4px, 1.6vw, 7px);
        font-size: clamp(9px, 3.1vw, 13px);
    }
    #bt-root .bt-hero__slide--injection .bt-hero__inner,
    #bt-root .bt-hero__slide--injection .bt-hero__copy {
        width: 100%;
        max-width: none;
        padding: 0;
    }
    #bt-root .bt-hero__slide--injection .bt-hero__img {
        background-image: var(--bt-hero-sp-image, inherit) !important;
        background-position: center center;
        background-size: cover;
    }
    #bt-root .bt-injection-hero__ribbon {
        left: -5.4cqw;
        top: 8.55cqw;
        width: 62.8cqw;
        height: 6.25cqw;
        padding-left: 8.25cqw;
    }
    #bt-root .bt-injection-hero__lead {
        letter-spacing: .13em;
    }
    #bt-root .bt-injection-hero__lead-lg {
        font-size: 4.35cqw;
    }
    #bt-root .bt-injection-hero__lead-sm {
        font-size: 3.9cqw;
    }
    #bt-root .bt-injection-hero__title {
        left: 0;
        top: 0;
        width: 47.5cqw;
        height: 50cqw;
        font-size: 9.95cqw;
        line-height: 1;
        white-space: nowrap;
    }
    #bt-root .bt-injection-hero__title::before {
        content: none;
    }
    #bt-root .bt-injection-hero__title-char {
        display: block;
        position: absolute;
        margin-left: 0;
        padding: .03em .11em .12em .035em;
        text-shadow: 0 .82cqw .64cqw rgba(111, 78, 50, .38);
    }
    #bt-root .bt-injection-hero__title-char:first-child {
        margin-left: 0;
    }
    #bt-root .bt-injection-hero__title-char:nth-child(4)::after {
        content: none;
    }
    #bt-root .bt-injection-hero__title-char:nth-child(5) {
        margin-left: 0;
        padding-right: .06em;
    }
    #bt-root .bt-injection-hero__title-char:nth-child(6) {
        margin-left: 0;
    }
    #bt-root .bt-injection-hero__title-char:nth-child(7) {
        margin-left: 0;
    }
    #bt-root .bt-injection-hero__title-char:nth-child(1) {
        left: 1.15cqw;
        top: 18.15cqw;
        transform: scale(1.82);
    }
    #bt-root .bt-injection-hero__title-char:nth-child(2) {
        left: 21.6cqw;
        top: 25.05cqw;
        transform: scale(.94);
    }
    #bt-root .bt-injection-hero__title-char:nth-child(3) {
        left: 28.2cqw;
        top: 19.95cqw;
        transform: scale(1.2);
    }
    #bt-root .bt-injection-hero__title-char:nth-child(4) {
        left: 37.25cqw;
        top: 25.25cqw;
        transform: scale(.74);
    }
    #bt-root .bt-injection-hero__title-char:nth-child(5) {
        left: 15.2cqw;
        top: 34.35cqw;
        transform: scale(.72);
    }
    #bt-root .bt-injection-hero__title-char:nth-child(6) {
        left: 6.55cqw;
        top: 39.25cqw;
        transform: scale(1.28);
    }
    #bt-root .bt-injection-hero__title-char:nth-child(7) {
        left: 20.1cqw;
        top: 42.8cqw;
        transform: scale(1);
    }
    #bt-root .bt-injection-hero__lead-plain {
        font-size: 4.4cqw;
        letter-spacing: .015em;
        line-height: 1.15;
        max-width: 78cqw;
    }
    #bt-root .bt-injection-hero__title-plain {
        left: 5.5cqw;
        top: 25cqw;
        width: 70cqw;
        font-size: 8.2cqw;
        line-height: 1.06;
        letter-spacing: 0;
    }
    #bt-root .bt-injection-hero__menus {
        left: 7.1cqw;
        top: 72.35cqw;
        display: flex;
        grid-template-columns: none;
        gap: 1.35cqw;
    }
    #bt-root .bt-injection-hero__circle {
        width: 20.25cqw;
        height: 20.25cqw;
        font-size: 2.72cqw;
        border-width: .32cqw;
    }
    html.translated-ltr #bt-root .bt-injection-hero__circle,
    html.translated-rtl #bt-root .bt-injection-hero__circle,
    body.translated-ltr #bt-root .bt-injection-hero__circle,
    body.translated-rtl #bt-root .bt-injection-hero__circle,
    body.beauty-top.is-translated #bt-root .bt-injection-hero__circle {
        width: 20.2cqw;
        height: 20.2cqw;
        min-width: 20.2cqw;
        min-height: 20.2cqw;
        max-width: 20.2cqw;
        max-height: 20.2cqw;
        font-size: 2.55cqw;
        line-height: 1.1;
        letter-spacing: .02em;
    }
    html.translated-ltr #bt-root .bt-injection-hero__circle-text,
    html.translated-rtl #bt-root .bt-injection-hero__circle-text,
    body.translated-ltr #bt-root .bt-injection-hero__circle-text,
    body.translated-rtl #bt-root .bt-injection-hero__circle-text,
    body.beauty-top.is-translated #bt-root .bt-injection-hero__circle-text {
        width: 88%;
        max-width: 88%;
        min-height: 2.55em;
    }
    #bt-root .bt-injection-hero__circle::before {
        width: 18.82cqw;
        height: 18.82cqw;
    }
    #bt-root .bt-injection-hero__etc {
        position: absolute;
        right: -6.05cqw;
        bottom: .45cqw;
        font-size: 2.45cqw;
        white-space: nowrap;
    }
    /* Slide 3 SP: left-align + 視認性向上オーバーレイ */
    .bt-hero__slide--right .bt-hero__inner { justify-content: flex-start; }
    .bt-hero__slide--alt.bt-hero__slide--right .bt-hero__img::after {
        background: linear-gradient(
            to right,
            rgba(250, 243, 231, .92) 0%,
            rgba(250, 243, 231, .78) 54%,
            rgba(250, 243, 231, .2) 100%
        );
    }
    /* Slide 3 SP: code-built text over the optimized background. */
    .bt-hero__slide--epilation .bt-hero__img {
        background-position: center center;
        background-size: cover;
    }
    .bt-hero__slide--epilation .bt-hero__inner,
    .bt-hero__slide--epilation .bt-hero__copy {
        width: 100%;
        max-width: none;
        padding: 0;
    }
    .bt-epilation-hero__title {
        left: 6%;
        top: 6%;
        line-height: 1.12;
    }
    .bt-epilation-hero__title-line--medical {
        font-size: clamp(48px, 16vw, 82px);
    }
    .bt-epilation-hero__title-line--laser {
        margin-top: .3em;
        font-size: clamp(36px, 11.8vw, 62px);
    }
    .bt-epilation-hero__promise {
        left: 53%;
        top: 9%;
        gap: clamp(5px, 1.8vw, 10px);
        font-size: clamp(14px, 4.6vw, 24px);
    }
    .bt-epilation-hero__promise span {
        padding: .14em .48em .2em;
    }
    .bt-epilation-hero__desc {
        left: 6%;
        bottom: 6%;
        gap: clamp(5px, 1.6vw, 8px);
        font-size: clamp(13px, 4.2vw, 23px);
        letter-spacing: .03em;
        line-height: 1.42;
        white-space: normal;
    }
    .bt-epilation-hero__desc span {
        display: block;
        max-width: 92vw;
        white-space: nowrap;
    }
    /* Tags SP */
    .bt-hero__tag {
        font-size: 14px;
        font-weight: 500;
        padding: 11px 22px;
        min-width: 200px;
    }
    .bt-hero__tag-etc {
        font-size: 13px;
    }

    /* Side CTA hidden on SP (replaced by bottom bar) */
    .bt-sidecta { display: none; }

    /* Campaign */
    .bt-campaign {
        padding: 84px 0 88px;
        overflow: hidden;
    }
    .bt-campaign .bt-container {
        width: 100%;
        max-width: none;
    }
    .bt-campaign .bt-sec-title {
        width: 100%;
        padding: 0 24px;
        margin-bottom: 76px;
    }
    .bt-campaign .bt-sec-title__sub {
        font-family: var(--bt-sans);
        font-size: 13px;
        font-weight: 500;
        line-height: 1.25;
        letter-spacing: .16em;
        margin-bottom: 8px;
    }
    .bt-campaign .bt-sec-title__main {
        font-family: var(--bt-cormorant);
        font-size: 48px;
        font-weight: 500;
        line-height: .95;
        letter-spacing: .02em;
        max-width: 100%;
        overflow: hidden;
    }
    .bt-campaign__stage {
        margin-top: 0;
    }
    .bt-campaign__grid {
        display: flex;
        gap: 7vw;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-padding: 0;
        padding: 0 13vw;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }
    .bt-campaign__grid::-webkit-scrollbar { display: none; }
    .bt-campaign__card--clone {
        display: block;
    }
    .bt-campaign__card.bt-reveal {
        opacity: 1;
        transform: none;
        transition: none;
    }
    .bt-campaign__card:hover .bt-campaign__img {
        transform: none;
    }
    .bt-campaign__card:hover .bt-campaign__btn {
        background: linear-gradient(90deg, #f3d99f 0%, #caa767 100%);
        transform: none;
    }
    .bt-campaign__card {
        flex: 0 0 74vw;
        width: 74vw;
        aspect-ratio: 1 / 1;
        scroll-snap-align: center;
        overflow: visible;
    }
    .bt-campaign__img,
    .bt-campaign__overlay {
        overflow: hidden;
    }
    .bt-campaign__img {
        background-size: cover;
        background-position: center;
    }
    .bt-campaign__body {
        left: 6%;
        right: 6%;
        bottom: 5%;
    }
    .bt-campaign__lead {
        font-size: clamp(17px, 3.2vw, 27px);
        line-height: 1.55;
        letter-spacing: .09em;
        margin-bottom: 3px;
    }
    .bt-campaign__title {
        font-size: clamp(32px, 5.7vw, 48px);
        line-height: 1.12;
        letter-spacing: .05em;
        margin-bottom: 20px;
        white-space: nowrap;
    }
    .bt-campaign__tags {
        gap: 8px 14px;
        max-width: 78%;
        margin-bottom: 15px;
    }
    .bt-campaign__tag {
        min-width: 41%;
        padding: 7px 9px 8px;
        font-size: clamp(11px, 2.05vw, 14px);
        letter-spacing: .09em;
    }
    .bt-campaign__tag--center {
        flex-basis: 58%;
    }
    .bt-campaign__tags--center-last {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
        justify-content: flex-start;
        max-width: 82%;
    }
    .bt-campaign__tags--center-last .bt-campaign__tag {
        flex: 0 0 auto;
        min-width: 0;
        padding-left: 15px;
        padding-right: 15px;
        text-align: left;
    }
    .bt-campaign__tags--center-last .bt-campaign__tag--center {
        flex-basis: auto;
        margin-left: 0;
        margin-right: 0;
    }
    .bt-campaign__tag--note {
        right: -30px;
        bottom: 8px;
        min-width: 0;
        padding: 0;
        font-size: clamp(11px, 2vw, 14px);
    }
    .bt-campaign__desc {
        font-size: clamp(11px, 1.75vw, 15px);
        line-height: 1.75;
        margin-bottom: 20px;
    }
    .bt-campaign__btn {
        min-width: 128px;
        border-radius: 6px;
        padding: 12px 17px 13px;
        font-size: 13px;
        letter-spacing: .22em;
    }
    .bt-campaign__nav {
        position: absolute;
        top: 47%;
        z-index: 4;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 36px;
        height: 36px;
        border: 0;
        border-radius: 50%;
        background: rgba(0, 0, 0, .62);
        color: #fff;
        transform: translateY(-50%);
        cursor: pointer;
        backdrop-filter: blur(2px);
        -webkit-backdrop-filter: blur(2px);
    }
    .bt-campaign__nav--prev { left: 3vw; }
    .bt-campaign__nav--next { right: 3vw; }
    .bt-campaign__nav span {
        position: absolute;
        left: 50%;
        top: 50%;
        display: block;
        width: 11px;
        height: 11px;
        border-top: 1.5px solid currentColor;
        border-right: 1.5px solid currentColor;
        box-sizing: border-box;
        transform-origin: 50% 50%;
    }
    .bt-campaign__nav--prev span {
        transform: translate(-38%, -50%) rotate(-135deg);
    }
    .bt-campaign__nav--next span {
        transform: translate(-62%, -50%) rotate(45deg);
    }
    .bt-campaign__pager {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 9px;
        margin-top: 20px;
    }
    .bt-campaign__dot {
        display: block;
        width: 8px;
        height: 8px;
        padding: 0;
        border: 0;
        border-radius: 50%;
        background: rgba(155, 141, 117, .35);
        cursor: pointer;
    }
    .bt-campaign__dot.is-active {
        background: #9b8d75;
    }

    /* News */
    .bt-news {
        padding: 78px 0 62px;
    }
    .bt-news .bt-container {
        width: min(88%, 520px);
    }
    .bt-news__layout {
        display: block;
    }
    .bt-news .bt-sec-title,
    .bt-news__heading {
        margin-bottom: 36px;
    }
    .bt-news .bt-sec-title__sub {
        font-size: 13px;
        margin-bottom: 8px;
    }
    .bt-news .bt-sec-title__main {
        font-size: 48px;
    }
    .bt-news__list {
        margin: 0;
    }
    .bt-news__link {
        grid-template-columns: 1fr;
        gap: 6px;
        min-height: 0;
        padding: 18px 4px;
    }
    .bt-news__date { font-size: 12px; }
    .bt-news__title { font-size: 13.5px; }
    .bt-news .bt-more-wrap {
        margin-top: 42px;
    }
    .bt-news .bt-btn {
        min-width: 210px;
        min-height: 50px;
        padding: 16px 24px 15px;
    }

    /* Concept */
    .bt-concept {
        padding-top: 78px;
    }
    .bt-concept .bt-container {
        width: min(88%, 520px);
    }
    .bt-concept__heading {
        margin-bottom: 44px;
    }
    .bt-concept .bt-sec-title__sub {
        font-size: 13px;
        margin-bottom: 8px;
    }
    .bt-concept .bt-sec-title__main {
        font-size: 48px;
    }
    .bt-concept__intro {
        display: block;
        margin-bottom: 92px;
    }
    .bt-concept__copy {
        padding-top: 0;
        margin-bottom: 34px;
        display: block;
    }
    .bt-concept__lead {
        font-family: var(--bt-serif);
        font-size: 17px;
        font-weight: 600;
        line-height: 1.85;
        letter-spacing: .08em;
        margin-bottom: 24px;
    }
    .bt-concept__lead-break-sp-hide {
        display: none;
    }
    .bt-concept__pc-break {
        display: none;
    }
    .bt-concept__text {
        font-family: var(--bt-serif);
        font-size: 13.5px;
        line-height: 1.95;
    }
    .bt-concept__intro .bt-intro-btn {
        margin-top: 32px;
        text-align: center;
    }
    .bt-concept .bt-btn {
        min-width: 210px;
        min-height: 50px;
        padding: 16px 24px 15px;
    }
    .bt-concept__visual {
        width: 100vw;
        margin: 0 calc(50% - 50vw);
    }
    .bt-concept__visual img {
        width: 100%;
        height: auto;
        aspect-ratio: auto;
        object-fit: contain;
    }
    .bt-concept__points {
        grid-template-columns: 1fr;
        gap: 0;
    }
    .bt-point {
        aspect-ratio: 1 / 1;
        min-height: 0;
        overflow: hidden;
    }
    .bt-point__img {
        background-position: center;
        background-size: cover;
    }
    .bt-point--1 .bt-point__overlay {
        background: linear-gradient(180deg, rgba(244, 229, 190, 0) 38%, rgba(171, 125, 59, .48) 100%);
    }
    .bt-point--2 .bt-point__overlay {
        background: linear-gradient(180deg, rgba(255, 238, 218, 0) 42%, rgba(214, 169, 120, .24) 100%);
    }
    .bt-point--3 .bt-point__overlay {
        background: linear-gradient(180deg, rgba(0, 0, 0, 0) 34%, rgba(0, 0, 0, .48) 100%);
    }
    .bt-point__num {
        width: 112px;
        height: 112px;
        top: 5%;
        left: 5%;
        transform: none;
        background: rgba(255, 255, 255, .5);
        border-color: rgba(0, 0, 0, .9);
    }
    .bt-point__num-label {
        font-size: 13px;
    }
    .bt-point__num-value {
        font-size: 36px;
        margin-top: 6px;
    }
    .bt-point__body {
        left: 50%;
        right: auto;
        width: min(89%, 670px);
        top: auto;
        bottom: 5.7%;
        transform: translateX(-50%);
    }
    .bt-point__title {
        font-size: clamp(24px, 6vw, 42px);
        line-height: 1.45;
        margin-bottom: clamp(18px, 4vw, 34px);
        text-align: center;
    }
    .bt-point__title-pc {
        display: none;
    }
    .bt-point__title-sp {
        display: block;
    }
    .bt-point__title-sp span {
        display: block;
    }
    .bt-point__desc {
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
        font-size: clamp(16px, 4.4vw, 34px);
        line-height: 1.9;
        letter-spacing: .05em;
        text-align: left;
    }

    /* Videos */
    .bt-videos__grid { grid-template-columns: repeat(2, 1fr); gap: 16px 12px; }
    .bt-video__cap { font-size: 12px; }

    /* Case */
    .bt-case {
        padding-top: 76px;
        padding-bottom: 86px;
    }
    .bt-case__heading {
        margin-bottom: 82px;
        padding-left: 0;
    }
    .bt-case .bt-sec-title__sub {
        font-family: var(--bt-sans);
        font-size: 13px;
        font-weight: 500;
        letter-spacing: .16em;
        margin-bottom: 8px;
    }
    .bt-case .bt-sec-title__main {
        font-family: var(--bt-cormorant);
        font-size: 48px;
        font-weight: 500;
        letter-spacing: .02em;
    }
    .bt-case__track {
        --bt-case-gap: 22px;
        --bt-case-gap-half: 11px;
        padding: 0 0 64px 0;
        animation-duration: 30s;
    }
    .bt-case__item {
        flex-basis: 245px;
        width: 245px;
        min-width: 245px;
    }
    .bt-case__photos {
        height: 245px;
    }
    .bt-case__label {
        padding: 13px 10px 14px;
        font-size: 14px;
        letter-spacing: .06em;
    }
    .bt-case__btn {
        width: min(67vw, 500px);
        min-height: 66px;
        font-size: 15px;
        letter-spacing: .22em;
    }
    .bt-case__btn::after {
        right: 30px;
        margin-left: 0;
    }

    /* Doctor */
    .bt-doctor {
        padding-top: 72px;
        padding-bottom: 76px;
    }
    .bt-doctor .bt-container {
        width: 90%;
        max-width: 375px;
    }
    .bt-doctor__heading {
        margin-bottom: 34px;
    }
    .bt-doctor__heading .bt-sec-title__sub {
        font-size: 34px;
        letter-spacing: .09em;
    }
    .bt-doctor__intro {
        grid-template-columns: 1fr;
        gap: 42px;
    }
    .bt-doctor__photo img {
        aspect-ratio: 670 / 580;
    }
    .bt-doctor__name {
        justify-content: flex-start;
        gap: 18px;
        margin-top: 22px;
        padding-left: 8px;
    }
    .bt-doctor__role {
        font-size: 14px;
    }
    .bt-doctor__divider {
        height: 38px;
    }
    .bt-doctor__roman {
        font-size: 13px;
        letter-spacing: .16em;
    }
    .bt-doctor__jp {
        font-size: 24px;
        letter-spacing: .18em;
    }
    .bt-doctor__career-title {
        margin-bottom: 18px;
        font-size: 21px;
        letter-spacing: .12em;
    }
    .bt-doctor__career-list div {
        grid-template-columns: 78px 1fr;
        gap: 16px;
        min-height: 49px;
    }
    .bt-doctor__career-list dt,
    .bt-doctor__career-list dd {
        font-size: 14px;
        line-height: 1.55;
        letter-spacing: .03em;
    }
    .bt-doctor__message {
        margin-top: 46px;
    }
    .bt-doctor__lead {
        margin-bottom: 28px;
        font-size: clamp(14.5px, 4.25vw, 20px);
        line-height: 1.75;
        letter-spacing: .01em;
        font-weight: 700;
    }
    .bt-doctor__lead-line {
        display: block;
        white-space: nowrap;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-doctor__lead-line,
    html.translated-ltr #bt-root .bt-doctor__lead-line,
    html.translated-rtl #bt-root .bt-doctor__lead-line,
    body.translated-ltr #bt-root .bt-doctor__lead-line,
    body.translated-rtl #bt-root .bt-doctor__lead-line {
        white-space: normal;
        overflow-wrap: anywhere;
        word-break: normal;
    }
    .bt-doctor__body {
        gap: 24px;
        position: relative;
        max-height: 310px;
        overflow: hidden;
        transition: max-height .55s cubic-bezier(.22, .72, .2, 1);
        will-change: max-height;
    }
    .bt-doctor__body::after {
        content: "";
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        height: 88px;
        pointer-events: none;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #fff 82%);
    }
    .bt-doctor__message.is-expanded .bt-doctor__body::after {
        display: none;
    }
    .bt-doctor__body p {
        font-size: 14px;
        line-height: 2;
        letter-spacing: .04em;
        font-weight: 500;
    }
    .bt-doctor__more {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        width: min(100%, 260px);
        min-height: 48px;
        margin: 26px auto 0;
        padding: 12px 22px;
        border: 1px solid #BEA76B;
        border-radius: 4px;
        background: #BEA76B;
        color: #fff;
        font-family: var(--bt-sans);
        font-size: 14px;
        font-weight: 600;
        letter-spacing: .12em;
        cursor: pointer;
    }
    .bt-doctor__more::after {
        content: "";
        width: 8px;
        height: 8px;
        border-right: 1.5px solid currentColor;
        border-bottom: 1.5px solid currentColor;
        transform: rotate(45deg) translateY(-2px);
        transition: transform .25s ease;
    }
    .bt-doctor__more[aria-expanded="true"]::after {
        transform: rotate(225deg) translate(-2px, -1px);
    }

    /* Treatment */
    .bt-treatment {
        padding-top: 70px;
        padding-bottom: 72px;
    }
    .bt-treatment .bt-container {
        width: 90%;
        max-width: 375px;
    }
    .bt-treatment .bt-sec-title {
        margin-bottom: 42px;
    }
    .bt-treatment .bt-sec-title__sub {
        font-size: 12px;
        letter-spacing: .14em;
        margin-bottom: 6px;
    }
    .bt-treatment .bt-sec-title__main {
        font-size: 42px;
        letter-spacing: .01em;
    }
    .bt-treatment__grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }
    .bt-treatment__item {
        grid-template-columns: minmax(0, 1fr) 138px;
        min-height: 84px;
    }
    .bt-treatment__body {
        padding: 20px 22px;
    }
    .bt-treatment__img {
        min-height: 84px;
    }
    .bt-treatment__en {
        font-size: 18px;
        letter-spacing: .12em;
        margin-bottom: 5px;
    }
    .bt-treatment__en--long {
        font-size: 16px;
        letter-spacing: .08em;
    }
    .bt-treatment__jp {
        font-size: 13px;
        letter-spacing: .06em;
    }
    .bt-treatment__chev {
        right: 20px;
        width: 14px;
        height: 14px;
    }
    .bt-treatment__chev::before {
        width: 8px;
        height: 8px;
        border-width: 1.5px;
    }
    .bt-treatment__item[aria-expanded="true"] .bt-treatment__chev::before {
        margin-top: 5px;
    }
    .bt-treatment__panel {
        padding-right: 24px;
        padding-left: 24px;
    }
    .bt-treatment__item[aria-expanded="true"] + .bt-treatment__panel {
        padding-top: 20px;
        padding-bottom: 28px;
    }
    .bt-treatment__list {
        grid-template-columns: 1fr;
    }
    .bt-treatment__list-item a {
        min-height: 50px;
        padding-top: 14px;
        padding-bottom: 14px;
        font-size: 14px;
        letter-spacing: .03em;
    }

    /* Instagram */
    .bt-insta {
        --bt-insta-size: clamp(134px, 36vw, 270px);
        --bt-insta-gap: clamp(34px, 6.4vw, 48px);
        padding: 66px 0 66px;
    }
    .bt-insta .bt-container {
        width: 94%;
        max-width: 1120px;
    }
    .bt-insta .bt-sec-title {
        margin: 0 auto 74px;
    }
    .bt-insta__marquee {
        margin-bottom: 54px;
    }
    .bt-insta__track {
        display: none;
    }
    .bt-insta__mobile-rows {
        display: grid;
        row-gap: 37px;
    }
    .bt-insta__row--1 .bt-insta__row-track {
        animation: bt-insta-scroll 43s linear infinite;
    }
    .bt-insta__row--2 .bt-insta__row-track {
        animation: bt-insta-scroll 57s linear infinite;
        animation-delay: -17s;
    }
    .bt-insta__item {
        width: var(--bt-insta-size);
    }
    .bt-insta__more .bt-btn {
        width: min(67vw, 500px);
        min-width: 0;
        min-height: 66px;
        padding: 0 30px;
        border-radius: 8px;
        background: linear-gradient(90deg, #efd49c 0%, #c8aa62 100%);
        font-size: 15px;
        letter-spacing: .22em;
    }
    .bt-insta__more .bt-btn::after {
        width: 12px;
        height: 12px;
        border-top-width: 1.5px;
        border-right-width: 1.5px;
        right: 30px;
        margin-left: 0;
    }
    .bt-insta__sns {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        width: min(100%, 650px);
        margin: 84px auto 0;
        padding: 0 58px;
        gap: 40px 30px;
    }
    .bt-insta__sns a {
        gap: 12px;
        min-width: 0;
        width: auto;
    }
    .bt-insta__sns-icon {
        width: clamp(60px, 16vw, 82px);
        height: clamp(60px, 16vw, 82px);
        margin: 0 auto;
    }
    .bt-insta__sns-icon svg {
        width: clamp(44px, 12vw, 56px);
        height: clamp(44px, 12vw, 56px);
    }
    .bt-insta__sns-name {
        max-width: 124px;
        margin: 0 auto;
        font-size: 12px;
        line-height: 1.18;
    }

    /* Reservation */
    .bt-reserve { padding: 64px 0; }
    .bt-reserve .bt-container {
        width: min(calc(100% - 48px), 672px);
    }
    .bt-reserve__title .bt-sec-title__main { font-size: 40px; }
    .bt-reserve__buttons { flex-direction: column; align-items: stretch; gap: 14px; }
    #bt-root .bt-reserve__btn { width: 100%; flex-shrink: 1; padding: 20px 0; border-radius: 10px; }

    /* Regen */
    #bt-root .bt-regen { padding: 56px 0 64px; }
    .bt-regen .bt-container {
        width: min(calc(100% - 48px), 672px);
        max-width: 672px;
    }
    .bt-regen__card {
        display: block;
        min-height: 0;
        overflow: hidden;
        border-radius: 6px;
        background: #fff;
    }
    .bt-regen__head {
        min-height: 0;
        aspect-ratio: 672 / 348;
        padding: 10vw 8vw 8vw;
        background: #9d8f73;
    }
    .bt-regen__sub {
        margin-bottom: 6.2vw;
        font-size: clamp(16px, 4.2vw, 28px);
        line-height: 1.25;
        letter-spacing: .16em;
    }
    .bt-regen__title {
        font-size: clamp(27px, 8.1vw, 52px);
        line-height: 1.15;
        letter-spacing: .02em;
    }
    .bt-regen__content {
        min-height: 0;
        aspect-ratio: 672 / 662;
        margin-top: 0;
        padding: 8.5vw 11vw;
        display: flex;
        flex-direction: column;
        justify-content: center;
        background-image: url("/wp-content/uploads/2026/04/beauty-cell-therapy-bg-sp.jpg");
        background-position: center bottom;
        background-repeat: no-repeat;
        background-size: 100% auto;
    }
    .bt-regen__content::after {
        display: block;
        inset: 0;
        border: 2px solid #9d8f73;
        border-top: 0;
        border-radius: 0 0 6px 6px;
    }
    .bt-regen__lead {
        margin-bottom: 5.4vw;
        font-size: clamp(18px, 4.55vw, 31px);
        line-height: 1.65;
        letter-spacing: .09em;
    }
    .bt-regen__menu {
        gap: 5.1vw;
    }
    .bt-regen__menu li {
        padding-left: 22px;
        font-size: clamp(18px, 4.45vw, 30px);
        line-height: 1.75;
        letter-spacing: .09em;
    }
    .bt-regen__menu li::before {
        left: 0;
        top: .82em;
        width: 6px;
        height: 6px;
    }
    .bt-regen__sp-only {
        display: block;
    }
    .bt-regen__pc-break {
        display: none;
    }
    .bt-regen__arrow {
        display: none;
    }

    /* Clinic */
    .bt-clinic {
        padding: clamp(52px, 13.8vw, 104px) 0 0;
        background: #e4ded8;
    }
    .bt-clinic .bt-container {
        width: min(calc(100% - 40px), 672px);
        max-width: 672px;
    }
    .bt-clinic__heading,
    .bt-clinic .bt-sec-title {
        margin-bottom: clamp(52px, 12.8vw, 96px);
        padding-right: 10px;
        padding-left: 10px;
    }
    .bt-clinic__info {
        padding-right: 10px;
        padding-left: 10px;
    }
    .bt-clinic .bt-sec-title__sub {
        font-size: clamp(16px, 4.1vw, 31px);
        line-height: 1.35;
        letter-spacing: .14em;
        margin-bottom: clamp(14px, 3vw, 23px);
    }
    .bt-clinic .bt-sec-title__main {
        font-size: clamp(46px, 10.4vw, 78px);
        line-height: .95;
        letter-spacing: .02em;
    }
    .bt-clinic__wrap {
        display: block;
    }
    .bt-clinic__row {
        margin-bottom: clamp(26px, 6.7vw, 50px);
        padding: 0 0 clamp(31px, 5.6vw, 42px);
        border-bottom: 1px solid rgba(157, 141, 105, .78);
    }
    .bt-clinic__info dt {
        margin-bottom: clamp(21px, 4.3vw, 32px);
        font-size: clamp(15px, 3.7vw, 28px);
        line-height: 1.45;
        letter-spacing: .02em;
    }
    .bt-clinic__info dd {
        font-size: clamp(13.5px, 3.2vw, 24px);
        line-height: 1.62;
        letter-spacing: .02em;
    }
    .bt-clinic__access {
        gap: clamp(4px, 1.1vw, 8px);
    }
    .bt-clinic__note {
        margin-top: clamp(7px, 1.6vw, 12px);
        line-height: 1.72;
    }
    .bt-clinic__row--parking {
        grid-template-columns: minmax(0, 1fr) clamp(150px, 48vw, 360px);
        gap: clamp(12px, 3.2vw, 24px);
        padding-bottom: 0;
        border-bottom: 0;
    }
    .bt-clinic__row--parking dt {
        margin: 0;
        white-space: nowrap;
    }
    .bt-clinic__parking-button {
        width: clamp(150px, 48vw, 360px);
        min-height: clamp(35px, 9.3vw, 70px);
        padding: 8px clamp(12px, 4.2vw, 32px);
        border-radius: 8px;
        font-size: clamp(13px, 3.2vw, 24px);
        letter-spacing: .16em;
        gap: clamp(18px, 8vw, 60px);
    }
    .bt-clinic__parking-button span {
        width: clamp(9px, 2.4vw, 18px);
        height: clamp(9px, 2.4vw, 18px);
        border-top-width: 1.5px;
        border-right-width: 1.5px;
    }
    .bt-clinic__media {
        width: 100%;
        margin-top: clamp(45px, 12.2vw, 92px);
    }
    .bt-clinic__image {
        display: none;
    }
    .bt-clinic__hours {
        width: 100%;
        margin: 0;
        table-layout: fixed;
        font-size: clamp(9px, 2.25vw, 16px);
        letter-spacing: .02em;
    }
    .bt-clinic__hours th,
    .bt-clinic__hours td {
        height: clamp(31px, 8.5vw, 64px);
        padding: 0 clamp(1px, .55vw, 5px);
        overflow-wrap: anywhere;
        word-break: normal;
    }
    .bt-clinic__hours thead th {
        height: clamp(36px, 8.5vw, 64px);
        font-size: clamp(10px, 2.45vw, 18px);
        line-height: 1;
        letter-spacing: .04em;
        text-align: center;
        vertical-align: middle;
    }
    .bt-clinic__hours thead th:first-child,
    .bt-clinic__hours tbody th {
        width: clamp(54px, 15vw, 120px);
    }
    .bt-clinic__open {
        font-size: clamp(15px, 3.4vw, 26px);
    }
    .bt-clinic__map {
        width: 100vw;
        height: clamp(230px, 58vw, 436px);
        margin: clamp(49px, 12.8vw, 96px) 0 0 calc(50% - 50vw);
    }
    #bt-root + #uklp-sitemap-section {
        margin-top: 0 !important;
    }

    /* Monitor FAB on SP */
    #bt-root .bt-monitor-fab {
        display: block;
        left: 8px;
        bottom: calc(84px + env(safe-area-inset-bottom));
        width: min(255px, calc(100vw - 16px));
        z-index: 89;
    }

    #bt-root .bt-monitor-fab--reference .bt-monitor-fab__period {
        left: 37%;
        right: 1.5%;
        letter-spacing: 0;
    }

    /* Bottom CTA bar (SP only) */
    #bt-root .bt-bottombar {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        position: fixed;
        left: 0; right: 0; bottom: 0;
        z-index: 90;
        box-shadow: 0 -6px 18px -8px rgba(0, 0, 0, .3);
        padding-bottom: env(safe-area-inset-bottom);
    }
    #bt-root .bt-bottombar__btn {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: clamp(3px, .9vw, 5px);
        min-width: 0;
        min-height: clamp(58px, 15vw, 66px);
        padding: 6px 2px;
        color: #fff !important;
        font-family: var(--bt-sans);
        font-weight: 500;
        font-size: clamp(9px, 2.55vw, 11.5px);
        letter-spacing: .02em;
        border: 0;
        cursor: pointer;
        border-right: 1px solid rgba(255, 255, 255, .18);
        text-decoration: none;
        line-height: 1.15;
        text-align: center;
        white-space: nowrap;
        overflow: hidden;
    }
    #bt-root .bt-bottombar__btn:last-child { border-right: 0; }
    #bt-root .bt-bottombar__btn svg { width: clamp(18px, 4.8vw, 24px); height: clamp(18px, 4.8vw, 24px); flex-shrink: 0; }
    #bt-root .bt-bottombar__btn--tel  { background: #A87762; }
    #bt-root .bt-bottombar__btn--line { background: #62A87C; }
    #bt-root .bt-bottombar__btn--web  { background: #6276A8; }
    #bt-root .bt-bottombar__btn--fore { background: #A762A8; }
    #bt-root .bt-bottombar__btn--contact { background: #7F8F76; }
    #bt-root { padding-bottom: 0; }

    body.is-translated #bt-root .bt-bottombar__btn,
    html.translated-ltr #bt-root .bt-bottombar__btn,
    html.translated-rtl #bt-root .bt-bottombar__btn {
        flex-direction: column;
        gap: clamp(2px, .7vw, 4px);
        font-size: clamp(7.2px, 1.95vw, 9.4px);
        line-height: 1.05;
        letter-spacing: 0;
        white-space: normal;
        overflow-wrap: anywhere;
        word-break: break-word;
        overflow: hidden;
        text-align: center;
    }
}

#bt-root .bt-hero:has(.bt-hero__slide--image-hero.is-active) {
    aspect-ratio: 1678 / 769 !important;
    height: auto !important;
}
#bt-root .bt-hero:has(.bt-hero__slide--image-hero.is-active) .bt-hero__slides,
#bt-root .bt-hero:has(.bt-hero__slide--image-hero.is-active) .bt-hero__slide,
#bt-root .bt-hero:has(.bt-hero__slide--image-hero.is-active) .bt-hero__picture {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
}
#bt-root .bt-hero:has(.bt-hero__slide--image-hero.is-active) .bt-hero__slide.is-active {
    position: absolute !important;
}
#bt-root .bt-hero:has(.bt-hero__slide--image-hero.is-active) .bt-hero__picture img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

@media (max-width: 768px) {
    #bt-root .bt-hero:has(.bt-hero__slide--image-hero.is-active) {
        aspect-ratio: 1 / 1 !important;
    }
}

/* =========================================================
   Concept image reproduction overrides
========================================================= */
.bt-concept {
    padding: 116px 0 0;
    background: #fff;
    overflow: hidden;
}
.bt-concept .bt-reveal {
    opacity: 1;
    transform: none;
}
.bt-concept .bt-container {
    width: 90%;
    max-width: 880px;
}
.bt-concept__art {
    position: relative;
    width: 100%;
    margin: 0 auto 112px;
}
.bt-concept__art img {
    display: block;
    width: 100%;
    height: auto;
}
.bt-concept__art-link {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 27.3%;
    height: 9.3%;
    z-index: 2;
}
.bt-concept__points {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    width: 100%;
    margin: 0;
}
.bt-point {
    position: relative;
    aspect-ratio: auto;
    min-height: 0;
    overflow: hidden;
    line-height: 0;
    color: inherit;
}
.bt-point img {
    display: block;
    width: 100%;
    height: auto;
}

@media (max-width: 768px) {
    .bt-concept {
        padding-top: 78px;
    }
    .bt-concept .bt-container {
        width: 100%;
        max-width: none;
    }
    .bt-concept__art {
        margin-bottom: 0;
    }
    .bt-concept__points {
        grid-template-columns: 1fr;
    }
    .bt-point {
        aspect-ratio: auto;
        min-height: 0;
        overflow: hidden;
    }
}

/* Concept live-content recovery */
.bt-concept {
    padding: 116px 0 0;
    background: #fff;
    overflow: hidden;
}
.bt-concept .bt-container {
    width: 90%;
    max-width: 910px;
}
.bt-concept__heading {
    display: block;
    text-align: left;
    margin: 0 0 82px;
}
.bt-concept .bt-sec-title__sub {
    display: block;
    font-family: var(--bt-sans);
    font-size: 15px;
    font-weight: 500;
    letter-spacing: .16em;
    color: #9b8d75;
    margin-bottom: 10px;
}
.bt-concept .bt-sec-title__main {
    display: block;
    font-family: var(--bt-cormorant);
    font-size: 64px;
    font-weight: 500;
    line-height: .95;
    letter-spacing: .02em;
    color: #9b8d75;
}
.bt-concept__intro {
    display: grid;
    grid-template-columns: minmax(0, 330px) minmax(0, 455px);
    gap: 74px;
    align-items: stretch;
    margin: 0 auto 142px;
}
.bt-concept__copy {
    display: flex;
    flex-direction: column;
    min-width: 0;
}
.bt-concept__lead {
    margin: 0 0 34px;
    font-family: var(--bt-serif);
    font-size: 20px;
    font-weight: 600;
    line-height: 1.75;
    letter-spacing: .12em;
}
.bt-concept__text {
    margin: 0;
    font-family: var(--bt-serif);
    font-size: 15.5px;
    font-weight: 500;
    line-height: 2;
    letter-spacing: .05em;
}
.bt-concept__intro .bt-intro-btn {
    margin-top: auto;
}
.bt-concept .bt-btn {
    min-width: 240px;
    min-height: 54px;
    justify-content: center;
    gap: 22px;
    padding: 18px 28px 17px;
    border-radius: 6px;
    background: linear-gradient(90deg, #f3d99f 0%, #caa767 100%);
    color: #111;
    font-family: var(--bt-inter);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .25em;
}
.bt-concept__visual {
    display: block;
    margin: 0;
}
.bt-concept__visual picture,
.bt-concept__visual img {
    display: block;
    width: 100%;
}
.bt-concept__visual img {
    height: auto;
    aspect-ratio: 455 / 398;
    object-fit: cover;
}
.bt-concept__points {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    width: 100%;
    margin: 0;
}
.bt-point {
    position: relative;
    display: block;
    aspect-ratio: 560 / 763;
    min-height: 0;
    overflow: hidden;
    line-height: normal;
    color: #111;
}
.bt-point__pc-art {
    display: block;
    width: 100%;
    height: auto;
}
.bt-point__img,
.bt-point__overlay {
    position: absolute;
    inset: 0;
    display: block;
}
.bt-point__img {
    display: none;
    background-position: center;
    background-size: cover;
    background-image: var(--bt-point-pc-bg) !important;
}
.bt-point--1 .bt-point__overlay {
    background: linear-gradient(180deg, rgba(244, 229, 190, 0) 38%, rgba(171, 125, 59, .48) 100%);
}
.bt-point--2 .bt-point__overlay {
    background: linear-gradient(180deg, rgba(255, 238, 218, 0) 42%, rgba(214, 169, 120, .24) 100%);
}
.bt-point--3 {
    color: #fff;
}
.bt-point--3 .bt-point__overlay {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 34%, rgba(0, 0, 0, .48) 100%);
}
.bt-point__overlay {
    display: none;
}
.bt-point__num {
    position: absolute;
    top: -54px;
    left: 36px;
    z-index: 2;
    width: 116px;
    height: 116px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    border: 1px dashed rgba(0, 0, 0, .9);
    border-radius: 50%;
    background: rgba(255, 255, 255, .5);
    color: #111;
    font-family: var(--bt-serif);
    transform: none;
    display: none;
}
.bt-point__num-label {
    font-size: 13px;
    letter-spacing: .14em;
}
.bt-point__num-value {
    margin-top: 6px;
    font-size: 38px;
    line-height: 1;
}
.bt-point__body {
    position: absolute;
    left: 13.2%;
    right: 9%;
    bottom: 54px;
    z-index: 2;
    width: auto;
    transform: none;
    display: none;
}
.bt-point__title {
    margin: 0 0 24px;
    font-family: var(--bt-serif);
    font-size: 24px;
    font-weight: 600;
    line-height: 1.45;
    letter-spacing: .11em;
    text-align: left;
}
.bt-point__desc {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    font-family: var(--bt-sans);
    font-size: 14px;
    font-weight: 500;
    line-height: 2.05;
    letter-spacing: .05em;
    text-align: left;
}
.bt-point__desc span {
    display: block;
}
.bt-point__desc--sp {
    display: none;
}

@media (min-width: 769px) {
    .bt-point--1 .bt-point__body {
        left: 50%;
        right: auto;
        width: max-content;
        max-width: calc(100% - 48px);
        transform: translateX(-50%);
    }
    .bt-point--1 .bt-point__title {
        text-align: center;
    }
    .bt-point--1 .bt-point__desc {
        width: max-content;
        max-width: 100%;
        margin-right: auto;
        margin-left: auto;
        text-align: left;
    }
    .bt-point--1 .bt-point__desc span {
        white-space: nowrap;
    }
}
.bt-point--2 .bt-point__body {
    bottom: 54px;
}
.bt-point--3 .bt-point__body {
    bottom: 54px;
}
.bt-point--3 .bt-point__title,
.bt-point--3 .bt-point__desc {
    color: #fff;
}
.bt-point.is-fallback .bt-point__img,
.bt-point.is-fallback .bt-point__overlay,
.bt-point.is-fallback .bt-point__body {
    display: block;
}
.bt-point.is-fallback .bt-point__num {
    display: flex;
}

@media (max-width: 768px) {
    .bt-concept {
        padding-top: 78px;
    }
    .bt-concept .bt-container {
        width: min(88%, 520px);
        max-width: none;
    }
    .bt-concept__heading {
        margin-bottom: 44px;
    }
    .bt-concept .bt-sec-title__sub {
        font-size: 13px;
    }
    .bt-concept .bt-sec-title__main {
        font-size: 48px;
    }
    .bt-concept__intro {
        display: block;
        margin-bottom: 92px;
    }
    .bt-concept__copy {
        display: block;
        margin-bottom: 34px;
    }
    .bt-concept__lead {
        font-family: var(--bt-serif);
        font-size: 18.5px;
        font-weight: 600;
        line-height: 1.78;
        letter-spacing: .08em;
        margin-bottom: 24px;
        white-space: normal;
    }
    .bt-concept__lead-break-pc {
        display: none;
    }
    .bt-concept__text {
        font-family: var(--bt-serif);
        font-size: 14.8px;
        line-height: 1.95;
        letter-spacing: 0;
    }
    .bt-concept__text-pc {
        display: none;
    }
    .bt-concept__text-sp {
        display: block;
    }
    .bt-concept__text-sp span {
        display: block;
        white-space: nowrap;
    }
    .bt-concept__intro .bt-intro-btn {
        margin-top: 32px;
        text-align: center;
    }
    .bt-concept__visual {
        width: 100vw;
        margin: 0 calc(50% - 50vw);
    }
    .bt-concept__visual img {
        aspect-ratio: auto;
        object-fit: contain;
    }
    .bt-concept__points {
        grid-template-columns: 1fr;
    }
    .bt-point {
        aspect-ratio: 1 / 1;
    }
    .bt-point::before {
        content: "";
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 1;
        height: 40%;
        background: #fff;
    }
    .bt-point__pc-art {
        display: none !important;
    }
    .bt-point__img {
        display: block;
    }
    .bt-point--1 .bt-point__img,
    .bt-point--3 .bt-point__img {
        background-position: center bottom;
        background-size: 100% auto;
    }
    .bt-point__overlay,
    .bt-point__body {
        display: block;
    }
    .bt-point--1 .bt-point__overlay,
    .bt-point--2 .bt-point__overlay,
    .bt-point--3 .bt-point__overlay {
        background: none;
    }
    .bt-point__num {
        top: 5%;
        left: 5%;
        width: 112px;
        height: 112px;
        background: rgba(255, 255, 255, .5);
    }
    .bt-point__body {
        left: 50%;
        right: auto;
        bottom: 5.7%;
        width: 94%;
        z-index: 2;
        transform: translateX(-50%);
    }
    .bt-point--2 .bt-point__body,
    .bt-point--3 .bt-point__body {
        bottom: 5.7%;
    }
    .bt-point__num {
        display: flex;
    }
    .bt-point__title {
        font-size: clamp(24px, 6vw, 42px);
        margin-bottom: clamp(18px, 4vw, 34px);
        text-align: center;
    }
    .bt-point--3 .bt-point__title,
    .bt-point--3 .bt-point__desc {
        color: #111;
    }
    .bt-point__desc {
        font-size: clamp(16.5px, 4.15vw, 32px);
        line-height: 1.9;
        letter-spacing: .02em;
        text-align: left;
        white-space: nowrap;
    }
    .bt-point__desc--pc {
        display: none;
    }
    .bt-point__desc--sp {
        display: block;
        width: max-content;
        max-width: 100%;
        margin-right: auto;
        margin-left: auto;
    }
    .bt-point__desc span {
        display: block;
    }
}

@media (min-width: 769px) {
    .bt-news__layout {
        width: min(100%, calc(350px + clamp(72px, 4.7vw, 90px) + 750px));
        margin-right: auto;
        margin-left: auto;
    }

    .bt-concept {
        overflow: visible;
        --bt-concept-copy-w: 350px;
        --bt-concept-visual-w: 750px;
        --bt-concept-gap: clamp(72px, 4.7vw, 90px);
        --bt-concept-inner-w: calc(var(--bt-concept-copy-w) + var(--bt-concept-gap) + var(--bt-concept-visual-w));
    }
    .bt-concept .bt-container {
        max-width: 1228px;
    }
    .bt-concept__heading {
        width: min(100%, var(--bt-concept-inner-w));
        margin-right: auto;
        margin-left: auto;
        text-align: left;
    }
    .bt-concept__intro {
        grid-template-columns: minmax(0, var(--bt-concept-copy-w)) minmax(0, var(--bt-concept-visual-w));
        gap: var(--bt-concept-gap);
        width: min(100%, var(--bt-concept-inner-w));
        justify-content: start;
        margin-bottom: 148px;
    }
    .bt-concept__copy {
        display: grid;
        grid-template-rows: auto 1fr auto;
    }
    .bt-concept__lead {
        margin-bottom: 0;
        font-size: 21px;
        font-weight: 650;
        text-align: left;
    }
    .bt-concept__text {
        align-self: center;
        margin: 0;
        line-height: 2.08;
        text-align: left;
    }
    .bt-concept__intro .bt-intro-btn {
        margin-top: 0;
    }
    .bt-concept__visual {
        width: var(--bt-concept-visual-w);
    }
    .bt-concept__visual img {
        width: 100%;
        aspect-ratio: 750 / 480;
        object-fit: cover;
    }
    .bt-concept__points {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0;
        width: 100%;
        margin: -36px 0 0;
        align-items: start;
        overflow: visible;
    }
    .bt-point {
        aspect-ratio: 560 / 720;
        min-height: 0;
        overflow: visible;
        background: none !important;
        container-type: inline-size;
    }
    .bt-point::before {
        content: "";
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 1;
        height: 40%;
        background: #fff;
    }
    .bt-point__pc-art {
        display: none !important;
    }
    .bt-point__img {
        display: block !important;
        position: absolute;
        inset: 0;
    }
    .bt-point__overlay {
        display: none !important;
        position: absolute;
        inset: 0;
    }
    .bt-point__img {
        background-position: center;
        background-size: cover;
    }
    .bt-point--1 .bt-point__img,
    .bt-point--3 .bt-point__img {
        background-position: center bottom;
        background-size: 100% auto;
    }
    .bt-point__num {
        display: flex !important;
        top: -9.2%;
        left: 6.43%;
        width: 20.72%;
        height: auto;
        aspect-ratio: 1 / 1;
        background: transparent !important;
    }
    .bt-point__body {
        display: block !important;
        left: 13.2%;
        right: 9%;
        bottom: 4.2%;
        width: auto;
        z-index: 2;
        transform: none;
    }
    .bt-point__num-label {
        font-size: clamp(10px, 2.32cqw, 15px);
    }
    .bt-point__num-value {
        font-size: clamp(28px, 6.79cqw, 44px);
    }
    .bt-point__title {
        font-size: clamp(22px, 4.82cqw, 32px);
        line-height: 1.45;
        margin-bottom: clamp(12px, 2.6cqw, 20px);
    }
    .bt-point__desc {
        font-size: clamp(13.5px, 2.86cqw, 18px);
        line-height: 1.72;
    }
    .bt-point--3 .bt-point__title,
    .bt-point--3 .bt-point__desc {
        color: #111;
    }
}

@media (min-width: 769px) and (max-width: 1024px) {
    .bt-point {
        overflow: visible;
    }
    .bt-point__body {
        left: 10%;
        right: 7%;
        bottom: 3.8%;
    }
    .bt-point__title {
        font-size: clamp(20px, 4.35cqw, 24px);
        line-height: 1.34;
        margin-bottom: clamp(12px, 3cqw, 18px);
        letter-spacing: .06em;
    }
    .bt-point__desc {
        font-size: clamp(11.5px, 2.55cqw, 13.5px);
        line-height: 1.72;
        letter-spacing: .02em;
    }
    .bt-point__desc span {
        overflow-wrap: anywhere;
    }
}

@media (min-width: 431px) and (max-width: 768px) {
    #bt-root .bt-hero__slide--first .bt-hero__inner {
        width: 68%;
        margin-left: 32%;
        padding-right: clamp(18px, 4vw, 32px);
        padding-left: clamp(18px, 4vw, 32px);
    }
    #bt-root .bt-hero__slide--first .bt-hero__title {
        font-size: clamp(31px, 5.1vw, 39px);
        line-height: 1.5;
        letter-spacing: .08em;
        white-space: normal !important;
    }
    #bt-root .bt-hero__slide--first .bt-hero__title span {
        display: inline-block;
        white-space: nowrap;
    }
    #bt-root .bt-hero__slide--first .bt-hero__desc {
        font-size: clamp(12px, 1.9vw, 15px);
        line-height: 1.85;
        letter-spacing: .08em;
        white-space: normal;
    }
}

@media (min-width: 769px) {
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__inner,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__inner,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__inner,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__inner,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__inner,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__inner {
        justify-content: center;
        padding: clamp(46px, 5.1vw, 86px) 24px 0;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__copy,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__copy,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__copy,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__copy,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__copy,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__copy {
        width: min(680px, 46vw);
        max-width: min(680px, 46vw);
        text-align: center;
        word-break: normal;
        overflow-wrap: normal;
        hyphens: auto;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__title,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title {
        white-space: normal !important;
        word-break: normal;
        overflow-wrap: normal;
        text-wrap: balance;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__title br,
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__desc br,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title br,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__desc br,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title br,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__desc br,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title br,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__desc br,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title br,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__desc br,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title br,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__desc br {
        display: none;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__title span,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title span,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title span,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title span,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title span,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title span {
        display: inline;
        white-space: normal;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__title span::after,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title span::after,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title span::after,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title span::after,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title span::after,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title span::after {
        content: " ";
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__desc,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__desc,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__desc,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__desc,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__desc,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__desc {
        white-space: normal;
        word-break: normal;
        overflow-wrap: normal;
    }
}

/* =========================================================
   Section heading normalization
   Base: Campaign heading
========================================================= */
.bt-campaign .bt-sec-title,
.bt-news .bt-sec-title,
.bt-news__heading,
.bt-concept__heading,
.bt-case__heading,
.bt-treatment .bt-sec-title,
.bt-insta .bt-sec-title {
    text-align: left;
}
.bt-campaign .bt-sec-title__sub,
.bt-news .bt-sec-title__sub,
.bt-concept .bt-sec-title__sub,
.bt-case .bt-sec-title__sub,
.bt-treatment .bt-sec-title__sub,
.bt-insta .bt-sec-title__sub {
    font-family: var(--bt-sans);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: .16em;
    color: #9b8d75;
    margin-bottom: 8px;
}
.bt-campaign .bt-sec-title__main,
.bt-news .bt-sec-title__main,
.bt-concept .bt-sec-title__main,
.bt-case .bt-sec-title__main,
.bt-treatment .bt-sec-title__main,
.bt-insta .bt-sec-title__main {
    font-family: var(--bt-cormorant);
    font-size: 54px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .02em;
    color: #9b8d75;
}
.bt-campaign .bt-sec-title__sub {
    font-family: var(--bt-noto-serif);
    font-size: 48px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: -.05em;
    margin-bottom: 0;
}
.bt-insta .bt-container {
    width: 90%;
    max-width: 1228px;
}
.bt-insta .bt-sec-title {
    margin-right: 0;
    margin-left: 0;
}

@media (max-width: 1100px) and (min-width: 769px) {
    .bt-campaign .bt-sec-title__main,
    .bt-news .bt-sec-title__main,
    .bt-concept .bt-sec-title__main,
    .bt-case .bt-sec-title__main,
    .bt-treatment .bt-sec-title__main,
    .bt-insta .bt-sec-title__main {
        font-size: 48px;
        line-height: .95;
    }
}

@media (max-width: 768px) {
    .bt-campaign .bt-sec-title,
    .bt-news .bt-sec-title,
    .bt-news__heading,
    .bt-concept__heading,
    .bt-case__heading,
    .bt-treatment .bt-sec-title,
    .bt-insta .bt-sec-title {
        text-align: left;
    }
    .bt-campaign .bt-sec-title__sub,
    .bt-news .bt-sec-title__sub,
    .bt-concept .bt-sec-title__sub,
    .bt-case .bt-sec-title__sub,
    .bt-treatment .bt-sec-title__sub,
    .bt-insta .bt-sec-title__sub {
        font-family: var(--bt-sans);
        font-size: 13px;
        font-weight: 500;
        line-height: 1.25;
        letter-spacing: .16em;
        margin-bottom: 8px;
    }
    .bt-campaign .bt-sec-title__main,
    .bt-news .bt-sec-title__main,
    .bt-concept .bt-sec-title__main,
    .bt-case .bt-sec-title__main,
    .bt-treatment .bt-sec-title__main,
    .bt-insta .bt-sec-title__main {
        font-family: var(--bt-cormorant);
        font-size: 48px;
        font-weight: 500;
        line-height: .95;
        letter-spacing: .02em;
    }
    .bt-campaign .bt-sec-title__sub {
        font-family: var(--bt-noto-serif);
        font-size: 30px;
        font-weight: 500;
        line-height: 1.2;
        letter-spacing: -.05em;
        margin-bottom: 0;
    }
    .bt-insta .bt-container {
        width: 100%;
        max-width: none;
    }
    .bt-insta .bt-sec-title {
        width: 100%;
        padding: 0 24px;
    }
    #bt-root .bt-clinic__image {
        display: none !important;
        visibility: hidden;
    }
}

@media (max-width: 768px) {
    #bt-root .bt-news .bt-sec-title,
    #bt-root .bt-news__heading,
    #bt-root .bt-concept__heading,
    #bt-root .bt-concept__copy,
    #bt-root .bt-case__heading {
        padding-left: 0;
    }
    #bt-root .bt-news__list {
        padding-right: clamp(12px, 3.8vw, 20px);
        padding-left: clamp(12px, 3.8vw, 20px);
    }
}

/* =========================================================
   Small-phone and translated-text stability
========================================================= */
@media (max-width: 430px) {
    #bt-root {
        --bt-sp-safe-pad: 14px;
    }
    #bt-root .bt-container,
    #bt-root .bt-news .bt-container,
    #bt-root .bt-concept .bt-container,
    #bt-root .bt-regen .bt-container,
    #bt-root .bt-clinic .bt-container {
        width: min(calc(100% - (var(--bt-sp-safe-pad) * 2)), 520px);
    }
    #bt-root .bt-reserve .bt-container,
    #bt-root .bt-regen .bt-container {
        width: min(calc(100% - 48px), 520px);
    }
    #bt-root .bt-campaign__body,
    #bt-root .bt-treatment__body,
    #bt-root .bt-regen__content,
    #bt-root .bt-clinic__info,
    #bt-root .bt-insta__sns a {
        min-width: 0;
    }

    .bt-openbar-sp {
        min-height: clamp(84px, 18.5vw, 170px);
        padding-right: 10px;
        padding-left: 10px;
    }
    .bt-openbar-sp__clinic {
        font-size: clamp(12px, 4.2vw, 32px);
        letter-spacing: .055em;
    }
    .bt-openbar-sp__grand {
        font-size: clamp(22px, 5.7vw, 46px);
        letter-spacing: .075em;
    }

    .bt-hero__inner {
        width: calc(100% - (var(--bt-sp-safe-pad) * 2));
    }
    .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__copy {
        max-width: 92%;
        padding: clamp(16px, 4.8vw, 20px);
    }
    .bt-hero__slide--first .bt-hero__inner {
        width: 60%;
        margin-left: 40%;
        padding: 2% 10px 0 clamp(10px, 2.6vw, 16px);
    }
    .bt-hero__slide--first .bt-hero__copy {
        width: 100%;
        max-width: none;
        padding: 0;
        background: transparent !important;
        box-shadow: none !important;
    }
    .bt-hero__slide--first .bt-hero__title {
        font-size: clamp(20px, 5.6vw, 24px);
        letter-spacing: .045em;
    }
    .bt-hero__slide--first .bt-hero__desc {
        font-size: clamp(9px, 2.55vw, 10.5px);
        letter-spacing: .035em;
    }
    .bt-hero__title {
        font-size: clamp(23px, 7vw, 28px);
        letter-spacing: .025em;
    }
    .bt-hero__desc {
        font-size: clamp(11.5px, 3.2vw, 13px);
        letter-spacing: .02em;
    }
    .bt-hero__slide--alt .bt-hero__kicker {
        font-size: clamp(13px, 4vw, 16px);
        letter-spacing: .06em;
    }
    .bt-hero__slide--alt .bt-hero__title {
        font-size: clamp(25px, 7.45vw, 32px);
        letter-spacing: .025em;
    }
    .bt-hero__slide--alt .bt-hero__desc {
        font-size: clamp(12.5px, 3.65vw, 15px);
        letter-spacing: .03em;
    }
    .bt-hero__tag-row {
        max-width: 100%;
        gap: 8px;
    }
    .bt-hero__tag {
        min-width: min(200px, 72vw);
        padding-right: 16px;
        padding-left: 16px;
        font-size: clamp(12px, 3.35vw, 14px);
        letter-spacing: .08em;
    }

    .bt-campaign .bt-sec-title,
    .bt-insta .bt-sec-title {
        padding-right: 20px;
        padding-left: 20px;
    }
    .bt-campaign__grid {
        gap: 7vw;
        padding-right: 13vw;
        padding-left: 13vw;
    }
    .bt-campaign__card {
        flex-basis: 74vw;
        width: 74vw;
        overflow: hidden;
    }
    .bt-campaign__body {
        right: 5%;
        left: 5%;
    }
    .bt-campaign__lead {
        font-size: clamp(13px, 3.55vw, 16.5px);
        letter-spacing: .04em;
        white-space: nowrap;
    }
    .bt-campaign__title {
        font-size: clamp(24px, 7.25vw, 31px);
        letter-spacing: .02em;
        white-space: nowrap;
        text-wrap: auto;
    }
    .bt-campaign__tags {
        max-width: 88%;
        gap: 6px 8px;
    }
    .bt-campaign__tag {
        min-width: auto;
        max-width: 100%;
        padding-right: 10px;
        padding-left: 10px;
        font-size: clamp(8.8px, 2.45vw, 10.8px);
        letter-spacing: .02em;
    }
    .bt-campaign__tag--note {
        right: -20px;
    }
    .bt-campaign__desc {
        font-size: clamp(10.5px, 2.85vw, 11.5px);
        letter-spacing: .03em;
    }
    .bt-campaign__btn {
        min-width: 118px;
        font-size: clamp(11.5px, 3.25vw, 13px);
        letter-spacing: .16em;
    }
    .bt-campaign__nav {
        top: 47%;
        background: rgba(0, 0, 0, .58);
    }

    .bt-concept__lead {
        font-size: clamp(16px, 4.55vw, 18.5px);
    }
    .bt-concept__text {
        font-size: clamp(11.8px, 3.15vw, 14.8px);
    }
    .bt-concept__text-sp span {
        white-space: nowrap;
    }
    .bt-point__num {
        width: clamp(84px, 26.5vw, 112px);
        height: clamp(84px, 26.5vw, 112px);
    }
    .bt-point__num-label {
        font-size: clamp(10.5px, 3vw, 13px);
    }
    .bt-point__num-value {
        font-size: clamp(28px, 8.8vw, 36px);
    }
    .bt-point__title {
        font-size: clamp(20px, 5.6vw, 24px);
        letter-spacing: .07em;
    }
    .bt-point__desc {
        font-size: clamp(13.6px, 3.6vw, 16.5px);
        letter-spacing: 0;
    }
    .bt-point__desc--sp {
        width: max-content;
        max-width: calc(100vw - 28px);
    }

    .bt-case__btn,
    .bt-insta__more .bt-btn {
        width: min(72vw, 500px);
        font-size: clamp(12px, 3.45vw, 15px);
        letter-spacing: .16em;
    }

    .bt-treatment .bt-container {
        width: min(calc(100% - 28px), 375px);
    }
    .bt-treatment__item {
        grid-template-columns: minmax(0, 1fr) clamp(104px, 32vw, 138px);
    }
    .bt-treatment__body {
        padding: 18px clamp(14px, 4.5vw, 22px);
    }
    .bt-treatment__en {
        font-size: clamp(14px, 4.35vw, 18px);
        letter-spacing: .06em;
        white-space: normal;
        overflow-wrap: anywhere;
    }
    .bt-treatment__en--long {
        font-size: clamp(12px, 3.55vw, 16px);
        letter-spacing: .04em;
    }
    .bt-treatment__jp {
        font-size: clamp(11.5px, 3.3vw, 13px);
    }

    .bt-regen__sub {
        font-size: clamp(14px, 3.9vw, 16px);
    }
    .bt-regen__title {
        font-size: clamp(25px, 7.4vw, 31px);
    }
    .bt-regen__lead {
        font-size: clamp(15px, 4vw, 18px);
    }
    .bt-regen__menu li {
        font-size: clamp(14px, 3.9vw, 18px);
    }

    .bt-clinic .bt-sec-title__sub {
        font-size: clamp(13px, 3.6vw, 16px);
    }
    .bt-clinic .bt-sec-title__main {
        font-size: clamp(40px, 11vw, 46px);
    }
    .bt-clinic__info dt {
        font-size: clamp(14px, 3.75vw, 15px);
    }
    .bt-clinic__info dd {
        font-size: clamp(12.4px, 3.28vw, 13.5px);
    }
    .bt-clinic__row--parking {
        grid-template-columns: 1fr;
    }
    .bt-clinic__row--parking dt {
        white-space: normal;
    }
    .bt-clinic__parking-button {
        width: min(220px, 100%);
        font-size: 13px;
        gap: 20px;
    }
    .bt-clinic__hours {
        font-size: clamp(10.5px, 2.8vw, 12.5px);
    }
    .bt-clinic__hours thead th:first-child,
    .bt-clinic__hours tbody th {
        width: clamp(68px, 19vw, 82px);
    }

    .bt-insta__sns {
        padding-right: 20px;
        padding-left: 20px;
        gap: 30px 18px;
    }
    .bt-monitor-fab {
        width: min(235px, calc(100vw - 16px));
    }
    #bt-root .bt-bottombar__btn {
        font-size: clamp(9px, 2.8vw, 10.5px);
        letter-spacing: .02em;
    }
}

@media (max-width: 360px) {
    .bt-openbar-sp__clinic {
        font-size: 11px;
        letter-spacing: .02em;
    }
    .bt-campaign__card {
        flex-basis: 76vw;
        width: 76vw;
    }
    .bt-campaign__title {
        font-size: 25px;
    }
    .bt-treatment__item {
        grid-template-columns: minmax(0, 1fr) 98px;
    }
    .bt-treatment__body {
        padding-right: 12px;
        padding-left: 12px;
    }
    .bt-monitor-fab {
        width: min(218px, calc(100vw - 16px));
    }
}

@media (max-width: 768px) {
    #bt-root .bt-campaign__stage {
        width: 100vw;
        margin-left: calc(50% - 50vw);
    }
    #bt-root .bt-campaign__grid {
        gap: 4vw;
        padding-right: 0;
        padding-left: 0;
    }
    #bt-root .bt-campaign__card {
        flex-basis: 86vw;
        width: 86vw;
    }
}

@media (max-width: 768px) {
    #bt-root .bt-treatment__item {
        height: clamp(84px, 25.6vw, 108px);
        min-height: 0;
        grid-template-columns: minmax(0, 1fr) clamp(104px, 32vw, 138px);
    }
    #bt-root .bt-treatment__body,
    #bt-root .bt-treatment__img {
        min-height: 0;
    }
    #bt-root .bt-treatment__list-item a {
        padding-right: 6px;
    }
    #bt-root .bt-treatment__list-item a::after {
        margin-right: 2px;
    }
    #bt-root .bt-regen__card {
        overflow: visible;
    }
    #bt-root .bt-regen__content {
        aspect-ratio: auto;
        min-height: 0;
        padding: clamp(30px, 7.2vw, 42px) clamp(24px, 7vw, 42px) clamp(42px, 10vw, 60px);
        justify-content: flex-start;
        background-size: cover;
    }
}

@media (max-width: 430px) {
    #bt-root .bt-regen .bt-container {
        width: min(calc(100% - 40px), 520px);
    }
    #bt-root .bt-regen__head {
        aspect-ratio: auto;
        min-height: clamp(170px, 48vw, 210px);
        padding: clamp(36px, 9vw, 44px) clamp(28px, 7.5vw, 36px);
    }
    #bt-root .bt-regen__sub {
        margin-bottom: clamp(18px, 5.2vw, 24px);
        font-size: clamp(15px, 3.8vw, 16px);
    }
    #bt-root .bt-regen__title {
        font-size: clamp(25px, 6.9vw, 29px);
        line-height: 1.16;
    }
    #bt-root .bt-regen__content {
        padding: clamp(28px, 7.4vw, 34px) clamp(24px, 7.2vw, 32px) clamp(38px, 10.5vw, 48px);
    }
    #bt-root .bt-regen__lead {
        margin-bottom: clamp(22px, 6vw, 28px);
        font-size: clamp(14px, 3.7vw, 16px);
        line-height: 1.58;
        letter-spacing: .05em;
    }
    #bt-root .bt-regen__menu {
        gap: clamp(18px, 5vw, 24px);
    }
    #bt-root .bt-regen__menu li {
        padding-left: 18px;
        font-size: clamp(13px, 3.55vw, 15px);
        line-height: 1.62;
        letter-spacing: .04em;
    }
    #bt-root .bt-regen__menu li::before {
        top: .78em;
    }
}

html[lang]:not([lang^="ja"]) #bt-root,
html.translated-ltr #bt-root,
html.translated-rtl #bt-root,
body.translated-ltr #bt-root,
body.translated-rtl #bt-root {
    overflow-wrap: anywhere;
    word-break: normal;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__title,
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__desc,
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__kicker,
html[lang]:not([lang^="ja"]) #bt-root .bt-campaign__title,
html[lang]:not([lang^="ja"]) #bt-root .bt-campaign__lead,
html[lang]:not([lang^="ja"]) #bt-root .bt-campaign__tag,
html[lang]:not([lang^="ja"]) #bt-root .bt-concept__lead,
html[lang]:not([lang^="ja"]) #bt-root .bt-point__title,
html[lang]:not([lang^="ja"]) #bt-root .bt-point__desc,
html[lang]:not([lang^="ja"]) #bt-root .bt-treatment__en,
html[lang]:not([lang^="ja"]) #bt-root .bt-regen__title span,
html.translated-ltr #bt-root .bt-hero__title,
html.translated-ltr #bt-root .bt-hero__desc,
html.translated-ltr #bt-root .bt-hero__kicker,
html.translated-ltr #bt-root .bt-campaign__title,
html.translated-ltr #bt-root .bt-campaign__lead,
html.translated-ltr #bt-root .bt-campaign__tag,
html.translated-ltr #bt-root .bt-concept__lead,
html.translated-ltr #bt-root .bt-point__title,
html.translated-ltr #bt-root .bt-point__desc,
html.translated-ltr #bt-root .bt-treatment__en,
html.translated-ltr #bt-root .bt-regen__title span,
html.translated-rtl #bt-root .bt-hero__title,
html.translated-rtl #bt-root .bt-hero__desc,
html.translated-rtl #bt-root .bt-hero__kicker,
html.translated-rtl #bt-root .bt-campaign__title,
html.translated-rtl #bt-root .bt-campaign__lead,
html.translated-rtl #bt-root .bt-campaign__tag,
html.translated-rtl #bt-root .bt-concept__lead,
html.translated-rtl #bt-root .bt-point__title,
html.translated-rtl #bt-root .bt-point__desc,
html.translated-rtl #bt-root .bt-treatment__en,
html.translated-rtl #bt-root .bt-regen__title span,
body.translated-ltr #bt-root .bt-hero__title,
body.translated-ltr #bt-root .bt-hero__desc,
body.translated-ltr #bt-root .bt-hero__kicker,
body.translated-ltr #bt-root .bt-campaign__title,
body.translated-ltr #bt-root .bt-campaign__lead,
body.translated-ltr #bt-root .bt-campaign__tag,
body.translated-ltr #bt-root .bt-concept__lead,
body.translated-ltr #bt-root .bt-point__title,
body.translated-ltr #bt-root .bt-point__desc,
body.translated-ltr #bt-root .bt-treatment__en,
body.translated-ltr #bt-root .bt-regen__title span,
body.translated-rtl #bt-root .bt-hero__title,
body.translated-rtl #bt-root .bt-hero__desc,
body.translated-rtl #bt-root .bt-hero__kicker,
body.translated-rtl #bt-root .bt-campaign__title,
body.translated-rtl #bt-root .bt-campaign__lead,
body.translated-rtl #bt-root .bt-campaign__tag,
body.translated-rtl #bt-root .bt-concept__lead,
body.translated-rtl #bt-root .bt-point__title,
body.translated-rtl #bt-root .bt-point__desc,
body.translated-rtl #bt-root .bt-treatment__en,
body.translated-rtl #bt-root .bt-regen__title span {
    white-space: normal;
    letter-spacing: .02em;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-concept__text-sp span,
html[lang]:not([lang^="ja"]) #bt-root .bt-point__desc span,
html.translated-ltr #bt-root .bt-concept__text-sp span,
html.translated-ltr #bt-root .bt-point__desc span,
html.translated-rtl #bt-root .bt-concept__text-sp span,
html.translated-rtl #bt-root .bt-point__desc span,
body.translated-ltr #bt-root .bt-concept__text-sp span,
body.translated-ltr #bt-root .bt-point__desc span,
body.translated-rtl #bt-root .bt-concept__text-sp span,
body.translated-rtl #bt-root .bt-point__desc span {
    display: inline;
    white-space: normal;
}
html[lang]:not([lang^="ja"]) #bt-root .bt-concept__text-sp span::after,
html[lang]:not([lang^="ja"]) #bt-root .bt-point__desc span::after,
html.translated-ltr #bt-root .bt-concept__text-sp span::after,
html.translated-ltr #bt-root .bt-point__desc span::after,
html.translated-rtl #bt-root .bt-concept__text-sp span::after,
html.translated-rtl #bt-root .bt-point__desc span::after,
body.translated-ltr #bt-root .bt-concept__text-sp span::after,
body.translated-ltr #bt-root .bt-point__desc span::after,
body.translated-rtl #bt-root .bt-concept__text-sp span::after,
body.translated-rtl #bt-root .bt-point__desc span::after {
    content: " ";
}

html[lang]:not([lang^="ja"]) #bt-root .bt-btn,
html[lang]:not([lang^="ja"]) #bt-root .bt-campaign__btn,
html[lang]:not([lang^="ja"]) #bt-root .bt-case__btn,
html[lang]:not([lang^="ja"]) #bt-root .bt-insta__more .bt-btn,
html.translated-ltr #bt-root .bt-btn,
html.translated-ltr #bt-root .bt-campaign__btn,
html.translated-ltr #bt-root .bt-case__btn,
html.translated-ltr #bt-root .bt-insta__more .bt-btn,
html.translated-rtl #bt-root .bt-btn,
html.translated-rtl #bt-root .bt-campaign__btn,
html.translated-rtl #bt-root .bt-case__btn,
html.translated-rtl #bt-root .bt-insta__more .bt-btn,
body.translated-ltr #bt-root .bt-btn,
body.translated-ltr #bt-root .bt-campaign__btn,
body.translated-ltr #bt-root .bt-case__btn,
body.translated-ltr #bt-root .bt-insta__more .bt-btn,
body.translated-rtl #bt-root .bt-btn,
body.translated-rtl #bt-root .bt-campaign__btn,
body.translated-rtl #bt-root .bt-case__btn,
body.translated-rtl #bt-root .bt-insta__more .bt-btn {
    min-width: 0;
    letter-spacing: .08em;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-campaign__card,
html.translated-ltr #bt-root .bt-campaign__card,
html.translated-rtl #bt-root .bt-campaign__card,
body.translated-ltr #bt-root .bt-campaign__card,
body.translated-rtl #bt-root .bt-campaign__card {
    overflow: hidden;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__copy,
html.translated-ltr #bt-root .bt-hero__copy,
html.translated-rtl #bt-root .bt-hero__copy,
body.translated-ltr #bt-root .bt-hero__copy,
body.translated-rtl #bt-root .bt-hero__copy {
    max-width: min(620px, 86vw);
    padding: clamp(24px, 3vw, 34px);
}
@media (min-width: 769px) {
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__copy,
    html.translated-ltr #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__copy,
    html.translated-rtl #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__copy,
    body.translated-ltr #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__copy,
    body.translated-rtl #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__copy {
        width: min(680px, 54vw);
        max-width: min(680px, 54vw) !important;
        padding: clamp(30px, 2.8vw, 42px);
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title,
    html.translated-ltr #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title,
    html.translated-rtl #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title,
    body.translated-ltr #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title,
    body.translated-rtl #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title {
        font-size: clamp(34px, 2.75vw, 44px);
        line-height: 1.24;
        letter-spacing: .015em;
        margin-bottom: clamp(18px, 1.8vw, 26px);
        text-wrap: balance;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title br,
    html.translated-ltr #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title br,
    html.translated-rtl #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title br,
    body.translated-ltr #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title br,
    body.translated-rtl #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title br {
        display: none;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title span,
    html.translated-ltr #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title span,
    html.translated-rtl #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title span,
    body.translated-ltr #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title span,
    body.translated-rtl #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title span {
        display: inline;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title span::after,
    html.translated-ltr #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title span::after,
    html.translated-rtl #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title span::after,
    body.translated-ltr #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title span::after,
    body.translated-rtl #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__title span::after {
        content: " ";
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__desc,
    html.translated-ltr #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__desc,
    html.translated-rtl #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__desc,
    body.translated-ltr #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__desc,
    body.translated-rtl #bt-root .bt-hero__slide:not(.bt-hero__slide--alt) .bt-hero__desc {
        font-size: clamp(14px, 1.05vw, 17px);
        line-height: 1.75;
        letter-spacing: .01em;
    }
}
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__title,
html.translated-ltr #bt-root .bt-hero__title,
html.translated-rtl #bt-root .bt-hero__title,
body.translated-ltr #bt-root .bt-hero__title,
body.translated-rtl #bt-root .bt-hero__title {
    font-size: clamp(36px, 4.4vw, 56px);
    line-height: 1.22;
}
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--alt .bt-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--alt .bt-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--alt .bt-hero__title,
body.translated-ltr #bt-root .bt-hero__slide--alt .bt-hero__title,
body.translated-rtl #bt-root .bt-hero__slide--alt .bt-hero__title {
    font-size: clamp(38px, 4.5vw, 58px);
}
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--alt .bt-hero__desc,
html.translated-ltr #bt-root .bt-hero__slide--alt .bt-hero__desc,
html.translated-rtl #bt-root .bt-hero__slide--alt .bt-hero__desc,
body.translated-ltr #bt-root .bt-hero__slide--alt .bt-hero__desc,
body.translated-rtl #bt-root .bt-hero__slide--alt .bt-hero__desc {
    font-size: clamp(16px, 1.55vw, 21px);
    line-height: 1.8;
}
html[lang]:not([lang^="ja"]) #bt-root .bt-openbar,
html.translated-ltr #bt-root .bt-openbar,
html.translated-rtl #bt-root .bt-openbar,
body.translated-ltr #bt-root .bt-openbar,
body.translated-rtl #bt-root .bt-openbar {
    letter-spacing: .22em;
}
html[lang]:not([lang^="ja"]) #bt-root .bt-openbar__text,
html.translated-ltr #bt-root .bt-openbar__text,
html.translated-rtl #bt-root .bt-openbar__text,
body.translated-ltr #bt-root .bt-openbar__text,
body.translated-rtl #bt-root .bt-openbar__text {
    max-width: 430px;
    white-space: nowrap;
    line-height: 1;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-point,
html.translated-ltr #bt-root .bt-point,
html.translated-rtl #bt-root .bt-point,
body.translated-ltr #bt-root .bt-point,
body.translated-rtl #bt-root .bt-point {
    overflow: visible;
}
html[lang]:not([lang^="ja"]) #bt-root .bt-point__body,
html.translated-ltr #bt-root .bt-point__body,
html.translated-rtl #bt-root .bt-point__body,
body.translated-ltr #bt-root .bt-point__body,
body.translated-rtl #bt-root .bt-point__body {
    left: 9%;
    right: 8%;
    bottom: 7%;
}
html[lang]:not([lang^="ja"]) #bt-root .bt-point__title,
html.translated-ltr #bt-root .bt-point__title,
html.translated-rtl #bt-root .bt-point__title,
body.translated-ltr #bt-root .bt-point__title,
body.translated-rtl #bt-root .bt-point__title {
    font-size: clamp(21px, 3.45cqw, 30px);
    line-height: 1.32;
    margin-bottom: clamp(12px, 2.2cqw, 20px);
}
html[lang]:not([lang^="ja"]) #bt-root .bt-point__desc,
html.translated-ltr #bt-root .bt-point__desc,
html.translated-rtl #bt-root .bt-point__desc,
body.translated-ltr #bt-root .bt-point__desc,
body.translated-rtl #bt-root .bt-point__desc {
    font-size: clamp(12.5px, 2.35cqw, 16px);
    line-height: 1.58;
    max-height: none;
    overflow: visible;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-monitor-fab__copy,
html.translated-ltr #bt-root .bt-monitor-fab__copy,
html.translated-rtl #bt-root .bt-monitor-fab__copy,
body.translated-ltr #bt-root .bt-monitor-fab__copy,
body.translated-rtl #bt-root .bt-monitor-fab__copy {
    left: 39%;
    right: 4%;
    top: 13%;
}
html[lang]:not([lang^="ja"]) #bt-root .bt-monitor-fab__clinic,
html.translated-ltr #bt-root .bt-monitor-fab__clinic,
html.translated-rtl #bt-root .bt-monitor-fab__clinic,
body.translated-ltr #bt-root .bt-monitor-fab__clinic,
body.translated-rtl #bt-root .bt-monitor-fab__clinic {
    font-size: clamp(7px, 2.25cqw, 13px);
    white-space: normal;
}
html[lang]:not([lang^="ja"]) #bt-root .bt-monitor-fab__title,
html.translated-ltr #bt-root .bt-monitor-fab__title,
html.translated-rtl #bt-root .bt-monitor-fab__title,
body.translated-ltr #bt-root .bt-monitor-fab__title,
body.translated-rtl #bt-root .bt-monitor-fab__title {
    margin-top: 2.5cqw;
    font-size: clamp(14px, 5.5cqw, 28px);
    white-space: normal;
}
html[lang]:not([lang^="ja"]) #bt-root .bt-monitor-fab__menu,
html.translated-ltr #bt-root .bt-monitor-fab__menu,
html.translated-rtl #bt-root .bt-monitor-fab__menu,
body.translated-ltr #bt-root .bt-monitor-fab__menu,
body.translated-rtl #bt-root .bt-monitor-fab__menu {
    margin-top: 3cqw;
    font-size: clamp(9px, 3.2cqw, 16px);
    white-space: normal;
}
html[lang]:not([lang^="ja"]) #bt-root .bt-monitor-fab__period,
html.translated-ltr #bt-root .bt-monitor-fab__period,
html.translated-rtl #bt-root .bt-monitor-fab__period,
body.translated-ltr #bt-root .bt-monitor-fab__period,
body.translated-rtl #bt-root .bt-monitor-fab__period {
    left: 39%;
    right: 4%;
    font-size: clamp(5.5px, 1.85cqw, 11px);
    white-space: normal;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-monitor-fab--reference .bt-monitor-fab__copy,
html.translated-ltr #bt-root .bt-monitor-fab--reference .bt-monitor-fab__copy,
html.translated-rtl #bt-root .bt-monitor-fab--reference .bt-monitor-fab__copy,
body.translated-ltr #bt-root .bt-monitor-fab--reference .bt-monitor-fab__copy,
body.translated-rtl #bt-root .bt-monitor-fab--reference .bt-monitor-fab__copy {
    left: 38.2%;
    right: 4.6%;
    top: 20.2%;
}
html[lang]:not([lang^="ja"]) #bt-root .bt-monitor-fab--reference .bt-monitor-fab__clinic,
html.translated-ltr #bt-root .bt-monitor-fab--reference .bt-monitor-fab__clinic,
html.translated-rtl #bt-root .bt-monitor-fab--reference .bt-monitor-fab__clinic,
body.translated-ltr #bt-root .bt-monitor-fab--reference .bt-monitor-fab__clinic,
body.translated-rtl #bt-root .bt-monitor-fab--reference .bt-monitor-fab__clinic {
    font-size: clamp(6.8px, 2.35cqw, 14px);
    line-height: 1.25;
}
html[lang]:not([lang^="ja"]) #bt-root .bt-monitor-fab--reference .bt-monitor-fab__title,
html.translated-ltr #bt-root .bt-monitor-fab--reference .bt-monitor-fab__title,
html.translated-rtl #bt-root .bt-monitor-fab--reference .bt-monitor-fab__title,
body.translated-ltr #bt-root .bt-monitor-fab--reference .bt-monitor-fab__title,
body.translated-rtl #bt-root .bt-monitor-fab--reference .bt-monitor-fab__title {
    margin-top: 2.2cqw;
    font-size: clamp(14px, 5.15cqw, 30px);
    line-height: 1.08;
}
html[lang]:not([lang^="ja"]) #bt-root .bt-monitor-fab--reference .bt-monitor-fab__menu,
html.translated-ltr #bt-root .bt-monitor-fab--reference .bt-monitor-fab__menu,
html.translated-rtl #bt-root .bt-monitor-fab--reference .bt-monitor-fab__menu,
body.translated-ltr #bt-root .bt-monitor-fab--reference .bt-monitor-fab__menu,
body.translated-rtl #bt-root .bt-monitor-fab--reference .bt-monitor-fab__menu {
    margin-top: 0;
    line-height: 1.1;
}
html[lang]:not([lang^="ja"]) #bt-root .bt-monitor-fab--reference .bt-monitor-fab__period,
html.translated-ltr #bt-root .bt-monitor-fab--reference .bt-monitor-fab__period,
html.translated-rtl #bt-root .bt-monitor-fab--reference .bt-monitor-fab__period,
body.translated-ltr #bt-root .bt-monitor-fab--reference .bt-monitor-fab__period,
body.translated-rtl #bt-root .bt-monitor-fab--reference .bt-monitor-fab__period {
    left: 40.1%;
    right: 4%;
    bottom: 13.6%;
    font-size: clamp(6px, 1.95cqw, 12px);
    white-space: normal;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-treatment__en,
html.translated-ltr #bt-root .bt-treatment__en,
html.translated-rtl #bt-root .bt-treatment__en,
body.translated-ltr #bt-root .bt-treatment__en,
body.translated-rtl #bt-root .bt-treatment__en {
    font-size: clamp(14px, 1.8vw, 20px);
    line-height: 1.18;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-clinic__hours,
html.translated-ltr #bt-root .bt-clinic__hours,
html.translated-rtl #bt-root .bt-clinic__hours,
body.translated-ltr #bt-root .bt-clinic__hours,
body.translated-rtl #bt-root .bt-clinic__hours {
    letter-spacing: .02em;
    table-layout: fixed;
}
html[lang]:not([lang^="ja"]) #bt-root .bt-clinic__day-ja,
html.translated-ltr #bt-root .bt-clinic__day-ja,
html.translated-rtl #bt-root .bt-clinic__day-ja,
body.translated-ltr #bt-root .bt-clinic__day-ja,
body.translated-rtl #bt-root .bt-clinic__day-ja {
    display: none;
}
html[lang]:not([lang^="ja"]) #bt-root .bt-clinic__day-en,
html.translated-ltr #bt-root .bt-clinic__day-en,
html.translated-rtl #bt-root .bt-clinic__day-en,
body.translated-ltr #bt-root .bt-clinic__day-en,
body.translated-rtl #bt-root .bt-clinic__day-en {
    display: inline;
    font-size: clamp(9px, .75vw, 11px);
    line-height: 1.1;
    letter-spacing: 0;
    white-space: normal;
    overflow-wrap: anywhere;
}
html[lang]:not([lang^="ja"]) #bt-root .bt-clinic__hours thead th,
html.translated-ltr #bt-root .bt-clinic__hours thead th,
html.translated-rtl #bt-root .bt-clinic__hours thead th,
body.translated-ltr #bt-root .bt-clinic__hours thead th,
body.translated-rtl #bt-root .bt-clinic__hours thead th {
    font-size: clamp(8.5px, .7vw, 11px);
    line-height: 1.16;
    letter-spacing: 0;
    white-space: normal;
    overflow-wrap: anywhere;
    text-align: center;
    vertical-align: middle;
}

@media (max-width: 768px) {
    .bt-insta .bt-sec-title__main {
        font-size: clamp(39px, 11.2vw, 48px);
        letter-spacing: .01em;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__copy,
    html.translated-ltr #bt-root .bt-hero__copy,
    html.translated-rtl #bt-root .bt-hero__copy,
    body.translated-ltr #bt-root .bt-hero__copy,
    body.translated-rtl #bt-root .bt-hero__copy {
        max-width: 86%;
        padding: clamp(16px, 4.5vw, 20px);
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__title,
    html.translated-ltr #bt-root .bt-hero__title,
    html.translated-rtl #bt-root .bt-hero__title,
    body.translated-ltr #bt-root .bt-hero__title,
    body.translated-rtl #bt-root .bt-hero__title {
        font-size: clamp(28px, 7.4vw, 36px);
        line-height: 1.28;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__desc,
    html.translated-ltr #bt-root .bt-hero__desc,
    html.translated-rtl #bt-root .bt-hero__desc,
    body.translated-ltr #bt-root .bt-hero__desc,
    body.translated-rtl #bt-root .bt-hero__desc {
        font-size: clamp(11px, 3.15vw, 13px);
        line-height: 1.6;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-point__body,
    html.translated-ltr #bt-root .bt-point__body,
    html.translated-rtl #bt-root .bt-point__body,
    body.translated-ltr #bt-root .bt-point__body,
    body.translated-rtl #bt-root .bt-point__body {
        left: 50%;
        right: auto;
        width: 88%;
        bottom: 6%;
        transform: translateX(-50%);
        text-align: center;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-point__title,
    html.translated-ltr #bt-root .bt-point__title,
    html.translated-rtl #bt-root .bt-point__title,
    body.translated-ltr #bt-root .bt-point__title,
    body.translated-rtl #bt-root .bt-point__title {
        font-size: clamp(18px, 5.2vw, 25px);
        text-align: center;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-point__desc,
    html.translated-ltr #bt-root .bt-point__desc,
    html.translated-rtl #bt-root .bt-point__desc,
    body.translated-ltr #bt-root .bt-point__desc,
    body.translated-rtl #bt-root .bt-point__desc {
        font-size: clamp(12px, 3.4vw, 15px);
        line-height: 1.48;
        max-height: none;
        text-align: center;
    }
}

@media (max-width: 430px) {
    .bt-insta .bt-sec-title__main {
        font-size: clamp(34px, 10.2vw, 42px);
    }
    .bt-insta .bt-sec-title {
        padding-right: 18px;
        padding-left: 18px;
    }
    .bt-insta__more .bt-btn {
        width: min(82vw, 310px);
        min-width: 0;
        gap: 16px;
        padding-right: 22px;
        padding-left: 24px;
        font-size: 12px;
        letter-spacing: .1em;
        white-space: nowrap;
    }
    .bt-clinic__hours {
        width: 100%;
        min-width: 0;
        font-size: clamp(8px, 2.25vw, 10px);
    }
    .bt-clinic__hours th,
    .bt-clinic__hours td {
        padding-right: 1px;
        padding-left: 1px;
    }
    .bt-clinic__hours thead th {
        font-size: clamp(9px, 2.45vw, 11px);
    }
    .bt-clinic__hours thead th:first-child,
    .bt-clinic__hours tbody th {
        width: clamp(48px, 14.5vw, 62px);
    }
}

/* =========================================================
   Beauty hero translation and mobile visual refinements
========================================================= */
@media (min-width: 769px) {
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__inner {
        padding-right: clamp(96px, 9vw, 184px);
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__copy {
        width: min(680px, 54vw);
        max-width: min(680px, 54vw);
        padding: clamp(30px, 2.8vw, 42px);
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title {
        margin-bottom: clamp(18px, 1.8vw, 26px);
        font-size: clamp(34px, 2.75vw, 44px);
        line-height: 1.24;
        letter-spacing: .015em;
        white-space: normal;
        text-wrap: balance;
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title br {
        display: none;
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title span {
        display: inline;
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title span::after {
        content: " ";
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__desc {
        font-size: clamp(14px, 1.05vw, 17px);
        line-height: 1.75;
        letter-spacing: .01em;
        white-space: normal;
    }
}

@media (max-width: 768px) {
    /* Preserve the airy photo while making the laser-treatment copy easier to read. */
    #bt-root .bt-hero__slide--right .bt-hero__img::after {
        background: linear-gradient(
            to right,
            rgba(250, 243, 231, .9) 0%,
            rgba(250, 243, 231, .78) 58%,
            rgba(250, 243, 231, .28) 100%
        );
    }

    body.beauty-top.is-translated #bt-root .bt-hero {
        aspect-ratio: 1 / 1 !important;
        height: auto !important;
        min-height: 0;
        overflow-wrap: anywhere;
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__inner {
        width: 60%;
        margin-left: 40%;
        padding: clamp(10px, 2.5vw, 14px) clamp(9px, 2.2vw, 12px);
        align-items: flex-start;
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__img {
        background-color: #edf0f2;
        background-position: 48% top;
        background-repeat: no-repeat;
        background-size: cover !important;
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__desc {
        white-space: normal;
        overflow-wrap: anywhere;
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title {
        font-size: clamp(17px, 4.65vw, 20px);
        line-height: 1.27;
        letter-spacing: .01em;
        margin-bottom: clamp(9px, 2.4vw, 11px);
        text-wrap: balance;
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title br,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__desc br {
        display: none;
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title span {
        display: inline;
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title span::after {
        content: " ";
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__desc {
        font-size: clamp(10px, 2.7vw, 11.5px);
        line-height: 1.48;
        letter-spacing: 0;
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--alt .bt-hero__inner {
        align-items: flex-start;
        padding-top: clamp(14px, 3.8vw, 18px);
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--alt .bt-hero__copy {
        width: min(70%, 276px);
        max-width: 70%;
        padding: 0 clamp(12px, 3vw, 16px);
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--alt .bt-hero__kicker {
        margin-bottom: clamp(5px, 1.5vw, 7px);
        font-size: clamp(10px, 2.75vw, 12px);
        line-height: 1.3;
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--alt .bt-hero__title {
        margin-bottom: clamp(8px, 2vw, 10px);
        font-size: clamp(20px, 5.65vw, 25px);
        line-height: 1.2;
        overflow-wrap: anywhere;
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--alt .bt-hero__desc {
        font-size: clamp(10px, 2.85vw, 12px);
        line-height: 1.42;
        overflow-wrap: anywhere;
    }
    body.beauty-top.is-translated #bt-root .bt-hero__tags {
        gap: clamp(5px, 1.4vw, 7px);
        width: 100%;
    }
    body.beauty-top.is-translated #bt-root .bt-hero__tag,
    body.beauty-top.is-translated #bt-root .bt-hero__tag-row {
        width: 100%;
        min-width: 0;
    }
    body.beauty-top.is-translated #bt-root .bt-hero__tag {
        min-height: clamp(34px, 9.2vw, 40px);
        padding: 6px 9px;
        font-size: clamp(10px, 2.75vw, 12px);
        line-height: 1.26;
        letter-spacing: .03em;
        overflow-wrap: anywhere;
    }
    body.beauty-top.is-translated #bt-root .bt-hero__tag-row {
        gap: 4px;
    }
    body.beauty-top.is-translated #bt-root .bt-hero__tag-etc {
        flex: 0 0 auto;
        font-size: clamp(9px, 2.5vw, 11px);
    }
}

/* =========================================================
   Tablet first-view stability
========================================================= */
@media (min-width: 431px) and (max-width: 768px) {
    #bt-root .bt-hero__slide--first .bt-hero__inner,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__inner {
        width: 68%;
        margin-left: 32%;
        padding: 2% clamp(18px, 4vw, 32px) 0;
        align-items: center;
    }
    #bt-root .bt-hero__slide--first .bt-hero__copy,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__copy {
        width: 100%;
        max-width: none;
        padding: 0;
        background: transparent !important;
        box-shadow: none !important;
    }
    #bt-root .bt-hero__slide--first .bt-hero__title,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title {
        margin: 0 0 clamp(16px, 3.2vw, 24px);
        font-size: clamp(31px, 5.1vw, 39px);
        line-height: 1.5;
        letter-spacing: .08em;
        white-space: normal !important;
        text-wrap: auto;
    }
    #bt-root .bt-hero__slide--first .bt-hero__title br,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title br {
        display: block;
    }
    #bt-root .bt-hero__slide--first .bt-hero__title span,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title span {
        display: inline-block;
        white-space: nowrap;
    }
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title span::after {
        content: none;
    }
    #bt-root .bt-hero__slide--first .bt-hero__desc,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__desc {
        font-size: clamp(12px, 1.9vw, 15px);
        line-height: 1.85;
        letter-spacing: .08em;
        white-space: normal;
        overflow-wrap: normal;
    }
    #bt-root .bt-campaign .bt-reveal {
        opacity: 1;
        transform: none;
        transition: none;
    }
}

@media (min-width: 431px) and (max-width: 768px) {
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__inner,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__inner,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__inner,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__inner,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__inner {
        width: 68%;
        margin-left: 32%;
        padding: 2% clamp(18px, 4vw, 32px) 0;
        align-items: center;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__copy,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__copy,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__copy,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__copy,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__copy {
        width: 100%;
        max-width: none !important;
        padding: 0;
        background: transparent !important;
        box-shadow: none !important;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__title,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title {
        margin: 0 0 clamp(16px, 3.2vw, 24px);
        font-size: clamp(31px, 5.1vw, 39px);
        line-height: 1.5;
        letter-spacing: .08em;
        white-space: normal !important;
        text-wrap: auto;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__title br,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title br,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title br,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title br,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title br {
        display: block;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__title span,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title span,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title span,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title span,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title span {
        display: inline-block;
        white-space: nowrap;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__title span::after,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title span::after,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title span::after,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title span::after,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title span::after {
        content: none;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__desc,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__desc,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__desc,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__desc,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__desc {
        font-size: clamp(12px, 1.9vw, 15px);
        line-height: 1.85;
        letter-spacing: .08em;
        white-space: normal;
        overflow-wrap: normal;
    }
}

#bt-root .bt-point__img {
    inset: 0 !important;
    height: auto !important;
    background-position: center top !important;
    background-size: 100% auto !important;
}

@media (min-width: 769px) {
    #bt-root .bt-point {
        aspect-ratio: 560 / 720 !important;
    }
    #bt-root .bt-point::before {
        height: 40% !important;
    }
    #bt-root .bt-point__body {
        top: 65% !important;
        bottom: auto !important;
    }
    #bt-root .bt-point__title {
        margin-bottom: clamp(12px, 2.6cqw, 20px) !important;
    }
    #bt-root .bt-point__desc {
        line-height: 1.72 !important;
    }
}

@media (max-width: 768px) {
    #bt-root .bt-point {
        aspect-ratio: auto !important;
        background: #fff;
        overflow: hidden;
    }
    #bt-root .bt-point::before {
        content: none !important;
    }
    #bt-root .bt-point__img {
        position: relative !important;
        inset: auto !important;
        height: auto !important;
        aspect-ratio: 560 / 330;
        background-position: center top !important;
        background-size: 100% auto !important;
    }
    #bt-root .bt-point__body,
    #bt-root .bt-point--2 .bt-point__body,
    #bt-root .bt-point--3 .bt-point__body {
        position: relative !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        display: flex !important;
        flex-direction: column;
        justify-content: center;
        box-sizing: border-box;
        width: 100%;
        min-height: clamp(220px, 31vw, 270px);
        padding: clamp(24px, 4.6vw, 36px) clamp(28px, 8vw, 64px) !important;
        transform: none !important;
    }
    #bt-root .bt-point__title {
        margin-bottom: clamp(18px, 3.8vw, 28px) !important;
        line-height: 1.35;
        text-align: center;
        overflow-wrap: anywhere;
    }
    #bt-root .bt-point__desc {
        width: max-content;
        max-width: min(100%, 640px);
        min-height: 0;
        margin-right: auto;
        margin-left: auto;
        text-align: left;
        white-space: normal !important;
        overflow-wrap: anywhere;
    }
    #bt-root .bt-point__desc--sp {
        width: max-content;
        max-width: min(100%, 640px);
    }
}

@media (min-width: 769px) and (max-width: 1280px) {
    #bt-root .bt-concept__points {
        width: calc(100% - 90px);
    }
}

@media (max-width: 768px) {
    html[lang]:not([lang^="ja"]) #bt-root .bt-point__body,
    html.translated-ltr #bt-root .bt-point__body,
    html.translated-rtl #bt-root .bt-point__body,
    body.translated-ltr #bt-root .bt-point__body,
    body.translated-rtl #bt-root .bt-point__body {
        position: relative !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        width: 100% !important;
        min-height: clamp(220px, 31vw, 270px) !important;
        padding: clamp(24px, 4.6vw, 36px) clamp(28px, 8vw, 64px) !important;
        transform: none !important;
        text-align: center !important;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-point__title,
    html.translated-ltr #bt-root .bt-point__title,
    html.translated-rtl #bt-root .bt-point__title,
    body.translated-ltr #bt-root .bt-point__title,
    body.translated-rtl #bt-root .bt-point__title {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: auto !important;
        margin-left: auto !important;
        text-align: center !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-point__desc,
    html[lang]:not([lang^="ja"]) #bt-root .bt-point__desc--sp,
    html.translated-ltr #bt-root .bt-point__desc,
    html.translated-ltr #bt-root .bt-point__desc--sp,
    html.translated-rtl #bt-root .bt-point__desc,
    html.translated-rtl #bt-root .bt-point__desc--sp,
    body.translated-ltr #bt-root .bt-point__desc,
    body.translated-ltr #bt-root .bt-point__desc--sp,
    body.translated-rtl #bt-root .bt-point__desc,
    body.translated-rtl #bt-root .bt-point__desc--sp {
        width: 100% !important;
        max-width: 620px !important;
        margin-right: auto !important;
        margin-left: auto !important;
        text-align: left !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-point__desc span,
    html.translated-ltr #bt-root .bt-point__desc span,
    html.translated-rtl #bt-root .bt-point__desc span,
    body.translated-ltr #bt-root .bt-point__desc span,
    body.translated-rtl #bt-root .bt-point__desc span {
        display: inline !important;
        white-space: normal !important;
    }
}

@media (min-width: 769px) {
    html[lang]:not([lang^="ja"]) #bt-root .bt-openbar__inner,
    html.translated-ltr #bt-root .bt-openbar__inner,
    html.translated-rtl #bt-root .bt-openbar__inner,
    body.translated-ltr #bt-root .bt-openbar__inner,
    body.translated-rtl #bt-root .bt-openbar__inner {
        justify-content: flex-end !important;
        padding-right: clamp(120px, 12vw, 250px) !important;
        padding-left: 24px !important;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-openbar__text,
    html.translated-ltr #bt-root .bt-openbar__text,
    html.translated-rtl #bt-root .bt-openbar__text,
    body.translated-ltr #bt-root .bt-openbar__text,
    body.translated-rtl #bt-root .bt-openbar__text {
        width: min(34vw, 680px) !important;
        max-width: min(34vw, 680px) !important;
        text-align: center !important;
        white-space: normal !important;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__inner,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__inner,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__inner,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__inner,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__inner,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__inner {
        justify-content: flex-end !important;
        padding: clamp(46px, 5.1vw, 86px) clamp(120px, 12vw, 250px) 0 24px !important;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__copy,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__copy,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__copy,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__copy,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__copy,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__copy {
        width: min(34vw, 680px) !important;
        max-width: min(34vw, 680px) !important;
        text-align: left !important;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__title,
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__desc,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__desc,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__desc,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__desc,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__desc,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__desc {
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: auto;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__title br,
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__desc br,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title br,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__desc br,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title br,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__desc br,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title br,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__desc br,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title br,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__desc br,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title br,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__desc br {
        display: none !important;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__title span,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title span,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title span,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title span,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title span,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title span {
        display: inline !important;
        white-space: normal !important;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__title span::after,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title span::after,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title span::after,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title span::after,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title span::after,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title span::after {
        content: " ";
    }
}

#bt-root .bt-sec-title__sub {
    display: block;
    font-family: var(--bt-noto-serif);
    font-size: 48px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: -.05em;
    margin-bottom: 0;
}

#bt-root .bt-sec-title__main {
    display: none;
}

#bt-root .bt-regen__title {
    font-family: var(--bt-noto-serif);
    font-size: 48px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: -.05em;
    color: #fff;
}

#bt-root .bt-doctor__heading .bt-sec-title__sub {
    display: block;
    font-family: var(--bt-serif);
    font-size: 44px;
    font-weight: 400;
    line-height: 1.25;
    letter-spacing: .12em;
    color: #9b8d75;
}

@media (max-width: 768px) {
    #bt-root .bt-sec-title__sub {
        font-size: 34px;
        letter-spacing: .09em;
    }
    #bt-root .bt-regen__title {
        font-size: 34px;
        letter-spacing: .09em;
    }
    #bt-root .bt-doctor__heading .bt-sec-title__sub {
        font-size: 34px;
        letter-spacing: .09em;
    }
    #bt-root .bt-campaign .bt-sec-title__sub,
    #bt-root .bt-news .bt-sec-title__sub,
    #bt-root .bt-concept .bt-sec-title__sub,
    #bt-root .bt-case .bt-sec-title__sub,
    #bt-root .bt-videos .bt-sec-title__sub,
    #bt-root .bt-treatment .bt-sec-title__sub,
    #bt-root .bt-insta .bt-sec-title__sub,
    #bt-root .bt-reserve__title .bt-sec-title__sub,
    #bt-root .bt-clinic .bt-sec-title__sub {
        font-size: 34px !important;
        letter-spacing: .09em !important;
        line-height: 1.25;
    }
}

@media (max-width: 768px) {
    body.beauty-top:not(.is-translated) #bt-root .bt-hero__slide--first .bt-hero__inner,
    body.umekita-beauty-top:not(.is-translated) #bt-root .bt-hero__slide--first .bt-hero__inner {
        width: 54% !important;
        height: 100%;
        margin: 0 0 0 46% !important;
        justify-content: center;
        align-items: center !important;
        padding: 3% clamp(10px, 2.8vw, 18px) 0 clamp(6px, 1.6vw, 12px) !important;
    }
    body.beauty-top:not(.is-translated) #bt-root .bt-hero__slide--first .bt-hero__copy,
    body.umekita-beauty-top:not(.is-translated) #bt-root .bt-hero__slide--first .bt-hero__copy {
        width: fit-content;
        max-width: 100%;
        padding: clamp(14px, 3.2vw, 22px) clamp(16px, 3.8vw, 28px);
        background: rgba(255, 255, 255, .72) !important;
        box-shadow: 0 2px 20px rgba(0, 0, 0, .05) !important;
        text-align: left;
    }
    body.beauty-top:not(.is-translated) #bt-root .bt-hero__slide--first .bt-hero__title,
    body.umekita-beauty-top:not(.is-translated) #bt-root .bt-hero__slide--first .bt-hero__title {
        margin: 0 0 clamp(14px, 3.5vw, 22px) !important;
        font-size: clamp(22px, 5.35vw, 34px) !important;
        line-height: 1.5 !important;
        letter-spacing: .02em !important;
        white-space: normal !important;
        text-align: left;
    }
    body.beauty-top:not(.is-translated) #bt-root .bt-hero__slide--first .bt-hero__title br,
    body.umekita-beauty-top:not(.is-translated) #bt-root .bt-hero__slide--first .bt-hero__title br {
        display: block !important;
    }
    body.beauty-top:not(.is-translated) #bt-root .bt-hero__slide--first .bt-hero__title span,
    body.umekita-beauty-top:not(.is-translated) #bt-root .bt-hero__slide--first .bt-hero__title span {
        display: inline-block !important;
        white-space: nowrap !important;
    }
    body.beauty-top:not(.is-translated) #bt-root .bt-hero__slide--first .bt-hero__desc,
    body.umekita-beauty-top:not(.is-translated) #bt-root .bt-hero__slide--first .bt-hero__desc {
        max-width: 19em !important;
        font-size: clamp(11px, 2.75vw, 16px) !important;
        line-height: 1.82 !important;
        letter-spacing: .02em !important;
        white-space: normal !important;
        overflow-wrap: normal !important;
        text-align: left;
    }
    body.beauty-top:not(.is-translated) #bt-root .bt-hero__slide--first .bt-hero__desc br,
    body.umekita-beauty-top:not(.is-translated) #bt-root .bt-hero__slide--first .bt-hero__desc br {
        display: none !important;
    }
}

@media (max-width: 768px) {
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__inner,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__inner,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__inner,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__inner,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__inner,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__inner {
        width: 54% !important;
        height: 100%;
        margin: 0 0 0 46% !important;
        justify-content: center;
        align-items: center !important;
        padding: 3% clamp(10px, 2.8vw, 18px) 0 clamp(6px, 1.6vw, 12px) !important;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__copy,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__copy,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__copy,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__copy,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__copy,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__copy {
        width: fit-content !important;
        max-width: 100% !important;
        padding: clamp(14px, 3.2vw, 22px) clamp(16px, 3.8vw, 28px) !important;
        background: rgba(255, 255, 255, .72) !important;
        box-shadow: 0 2px 20px rgba(0, 0, 0, .05) !important;
        text-align: left !important;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__title,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title {
        margin: 0 0 clamp(12px, 3vw, 20px) !important;
        font-size: clamp(19px, 4.7vw, 30px) !important;
        line-height: 1.25 !important;
        letter-spacing: 0 !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        text-align: left !important;
        text-wrap: balance;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__desc,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__desc,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__desc,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__desc,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__desc,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__desc {
        max-width: 19em !important;
        font-size: clamp(10px, 2.55vw, 15px) !important;
        line-height: 1.5 !important;
        letter-spacing: 0 !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        text-align: left !important;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__title br,
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__desc br,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title br,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__desc br,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title br,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__desc br,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title br,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__desc br,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title br,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__desc br,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title br,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__desc br {
        display: none !important;
    }
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--first .bt-hero__title span,
    html.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title span,
    html.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title span,
    body.translated-ltr #bt-root .bt-hero__slide--first .bt-hero__title span,
    body.translated-rtl #bt-root .bt-hero__slide--first .bt-hero__title span,
    body.beauty-top.is-translated #bt-root .bt-hero__slide--first .bt-hero__title span {
        display: inline !important;
        white-space: normal !important;
    }
}

/* Slide 4: regenerative cell medicine visual */
#bt-root .bt-hero__slide--regenerative,
#bt-root .bt-hero__slide--regenerative * {
    font-family: var(--bt-noto-serif);
}

#bt-root .bt-hero__slide--regenerative .bt-hero__img {
    background-position: center center;
    background-size: cover;
    transform: none;
}

#bt-root .bt-hero__slide--regenerative.is-active .bt-hero__img {
    transform: none;
}

#bt-root .bt-hero__slide--regenerative .bt-hero__img::after {
    background: none;
}

#bt-root .bt-hero__slide--regenerative .bt-hero__inner {
    width: 100%;
    max-width: none;
    align-items: stretch;
    justify-content: flex-start;
    padding: 0;
}

#bt-root .bt-hero__slide--regenerative .bt-hero__copy {
    position: absolute;
    inset: 0;
    width: 100%;
    max-width: none;
    padding: 0;
    background: transparent !important;
    box-shadow: none !important;
}

#bt-root .bt-regenerative-hero {
    position: absolute;
    inset: 0;
    color: #fff;
    overflow: hidden;
}

#bt-root .bt-regenerative-hero__lead {
    position: absolute;
    left: clamp(58px, 5.42vw, 91px);
    top: clamp(63px, 6.03vw, 101px);
    width: clamp(580px, 51.12vw, 859px);
    height: clamp(57px, 5.06vw, 85px);
    margin: 0;
    box-sizing: border-box;
    display: grid;
    place-items: center;
    padding: 0 0 .1em;
    background: url("/wp-content/uploads/2026/06/beauty-hero/regenerative/rounded-label.svg") center / 100% 100% no-repeat;
    color: #fff;
    font-size: clamp(29px, 2.74vw, 46px);
    font-weight: 600;
    line-height: 1;
    letter-spacing: .055em;
    text-align: center;
    text-indent: clamp(22px, 1.55vw, 34px);
    transform: none !important;
    white-space: nowrap;
}

#bt-root .bt-regenerative-hero__title {
    position: absolute;
    left: clamp(58px, 5.95vw, 100px);
    top: clamp(150px, 13.7vw, 230px);
    width: clamp(580px, 51.12vw, 859px);
    margin: 0;
    color: #fff;
    font-size: clamp(82px, 7.55vw, 127px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    font-kerning: normal;
    font-feature-settings: "palt" 1;
    isolation: isolate;
    white-space: nowrap;
    text-align: center;
    text-shadow:
        clamp(2px, .16vw, 3px) clamp(2px, .18vw, 3px) 0 #806933,
        clamp(3px, .26vw, 5px) clamp(4px, .32vw, 6px) clamp(3px, .22vw, 4px) rgba(129, 103, 48, .62);
}

#bt-root .bt-regenerative-hero__title-text {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    transform: scaleX(.985);
    transform-origin: center center;
}

#bt-root .bt-regenerative-hero__title-aura {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    color: #a88b4f;
    opacity: .98;
    filter: blur(clamp(13px, 1.08vw, 19px));
    transform: translate(clamp(2px, .18vw, 3px), clamp(2px, .2vw, 4px)) scaleX(.985) scale(1.035);
    transform-origin: center center;
    text-shadow:
        0 0 clamp(24px, 1.9vw, 34px) rgba(141, 111, 47, .98),
        0 0 clamp(54px, 3.7vw, 66px) rgba(186, 154, 77, .72);
    pointer-events: none;
}

#bt-root .bt-regenerative-hero__title-dot {
    margin-right: -.24em;
    margin-left: -.08em;
}

#bt-root .bt-regenerative-hero__title::before {
    content: none;
    position: absolute;
    inset: 0;
    z-index: -1;
    color: #a88b4f;
    opacity: .92;
    filter: blur(clamp(13px, 1.05vw, 18px));
    transform: translate(clamp(2px, .18vw, 3px), clamp(3px, .26vw, 5px)) scale(1.026);
    text-shadow:
        0 0 clamp(20px, 1.55vw, 27px) rgba(154, 124, 59, .95),
        0 0 clamp(42px, 3vw, 52px) rgba(190, 158, 86, .62);
    pointer-events: none;
}

#bt-root .bt-regenerative-hero__hexes {
    position: absolute;
    left: clamp(76px, 7.2vw, 121px);
    top: clamp(300px, 24.1vw, 405px);
    display: flex;
    align-items: center;
    gap: clamp(15px, 1.55vw, 26px);
}

#bt-root .bt-regenerative-hero__hex {
    width: clamp(184px, 15.98vw, 270px);
    height: clamp(210px, 18.3vw, 309px);
    box-sizing: border-box;
    display: grid;
    place-items: center;
    padding: 0 0 .42em;
    flex: 0 0 auto;
    background: url("/wp-content/uploads/2026/06/beauty-hero/regenerative/hexagon.svg") center / contain no-repeat;
    color: #98763a;
    text-align: center;
}

#bt-root .bt-regenerative-hero__hex span {
    display: block;
    transform: translate(-.12em, .02em) !important;
    color: #98763a;
    font-size: clamp(26px, 2.34vw, 39px);
    font-weight: 700;
    line-height: 1.48;
    letter-spacing: .035em;
    text-shadow: clamp(2px, .18vw, 3px) clamp(3px, .24vw, 4px) clamp(3px, .24vw, 4px) rgba(92, 69, 31, .27);
    white-space: nowrap;
}

@media (max-width: 1024px) {
    #bt-root .bt-regenerative-hero__lead {
        left: 5.2vw;
        top: 9.5vw;
        width: 76vw;
        height: 7.5vw;
        font-size: clamp(20px, 4vw, 36px);
    }

    #bt-root .bt-regenerative-hero__title {
        left: 5.2vw;
        top: 21vw;
        font-size: clamp(56px, 10vw, 92px);
    }

    #bt-root .bt-regenerative-hero__hexes {
        left: 5.8vw;
        top: 41vw;
        gap: 1.2vw;
    }

    #bt-root .bt-regenerative-hero__hex {
        width: 29vw;
        height: 33.18vw;
    }

    #bt-root .bt-regenerative-hero__hex span {
        font-size: clamp(18px, 3.75vw, 34px);
    }
}

@media (max-width: 767px) {
    #bt-root .bt-hero__slide--regenerative .bt-hero__img {
        background-position: 58% center;
    }

    #bt-root .bt-regenerative-hero__lead {
        left: 5vw;
        top: 9vw;
        width: 90vw;
        height: 9vw;
        font-size: clamp(16px, 5.1vw, 24px);
    }

    #bt-root .bt-regenerative-hero__title {
        left: 5vw;
        top: 22vw;
        font-size: clamp(40px, 12.5vw, 58px);
        text-shadow:
            0 1px 0 #8a7247,
            4px 5px 5px rgba(79, 62, 35, .5);
    }

    #bt-root .bt-regenerative-hero__hexes {
        left: 4vw;
        right: 4vw;
        top: 46vw;
        justify-content: center;
        gap: .8vw;
    }

    #bt-root .bt-regenerative-hero__hex {
        width: 30vw;
        height: 34.33vw;
    }

    #bt-root .bt-regenerative-hero__hex span {
        font-size: clamp(13px, 4.25vw, 19px);
        line-height: 1.45;
        text-shadow: 2px 2px 3px rgba(92, 69, 31, .24);
    }
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-hero__copy,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-hero__copy,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-hero__copy,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-hero__copy,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-hero__copy,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-hero__copy {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-regenerative-hero,
html.translated-ltr #bt-root .bt-regenerative-hero,
html.translated-rtl #bt-root .bt-regenerative-hero,
body.translated-ltr #bt-root .bt-regenerative-hero,
body.translated-rtl #bt-root .bt-regenerative-hero,
body.beauty-top.is-translated #bt-root .bt-regenerative-hero {
    overflow: visible !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-regenerative-hero__lead,
html.translated-ltr #bt-root .bt-regenerative-hero__lead,
html.translated-rtl #bt-root .bt-regenerative-hero__lead,
body.translated-ltr #bt-root .bt-regenerative-hero__lead,
body.translated-rtl #bt-root .bt-regenerative-hero__lead,
body.beauty-top.is-translated #bt-root .bt-regenerative-hero__lead {
    width: min(68vw, 1120px) !important;
    min-height: clamp(57px, 5.06vw, 85px) !important;
    height: auto !important;
    padding: .08em 4.8vw .18em !important;
    font-size: clamp(22px, 2.55vw, 42px) !important;
    line-height: 1.08 !important;
    letter-spacing: .08em !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    text-wrap: balance;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-regenerative-hero__title,
html.translated-ltr #bt-root .bt-regenerative-hero__title,
html.translated-rtl #bt-root .bt-regenerative-hero__title,
body.translated-ltr #bt-root .bt-regenerative-hero__title,
body.translated-rtl #bt-root .bt-regenerative-hero__title,
body.beauty-top.is-translated #bt-root .bt-regenerative-hero__title {
    width: min(58vw, 980px) !important;
    font-size: clamp(48px, 5.45vw, 92px) !important;
    line-height: 1.02 !important;
    letter-spacing: .035em !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    text-wrap: balance;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-regenerative-hero__title::before,
html.translated-ltr #bt-root .bt-regenerative-hero__title::before,
html.translated-rtl #bt-root .bt-regenerative-hero__title::before,
body.translated-ltr #bt-root .bt-regenerative-hero__title::before,
body.translated-rtl #bt-root .bt-regenerative-hero__title::before,
body.beauty-top.is-translated #bt-root .bt-regenerative-hero__title::before {
    content: none !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-regenerative-hero__hex span,
html.translated-ltr #bt-root .bt-regenerative-hero__hex span,
html.translated-rtl #bt-root .bt-regenerative-hero__hex span,
body.translated-ltr #bt-root .bt-regenerative-hero__hex span,
body.translated-rtl #bt-root .bt-regenerative-hero__hex span,
body.beauty-top.is-translated #bt-root .bt-regenerative-hero__hex span {
    width: 76% !important;
    max-width: 76% !important;
    font-size: clamp(18px, 1.82vw, 30px) !important;
    line-height: 1.18 !important;
    letter-spacing: .035em !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    text-wrap: balance;
    transform: translate(.025em, .02em) !important;
}

/* =========================================================
   Epilation hero final positioning override
   Keep this at the end so the code-built slide is not affected
   by generic hero/translation stability rules above.
========================================================= */
#bt-root .bt-hero__slide--epilation .bt-hero__inner--epilation {
    width: 100%;
    max-width: none;
    height: 100%;
    margin: 0;
    padding: 0;
    align-items: stretch;
    justify-content: flex-start;
}

#bt-root .bt-hero__slide--epilation .bt-hero__copy--epilation {
    position: absolute;
    inset: 0;
    width: 100%;
    max-width: none;
    padding: 0;
    background: transparent !important;
    box-shadow: none !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    color: #756554;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title {
    left: clamp(805px, 48.1vw, 820px);
    top: clamp(76px, 10.4%, 86px);
    margin: 0;
    z-index: 2;
    text-shadow:
        0 0 8px rgba(255, 255, 255, 1),
        0 0 15px rgba(255, 255, 255, .98),
        0 0 25px rgba(255, 255, 255, .92),
        0 0 38px rgba(255, 255, 255, .8),
        0 0 52px rgba(255, 255, 255, .56),
        0 3px 5px rgba(96, 76, 59, .2);
    filter: none;
    -webkit-text-stroke: .04em rgba(255, 255, 255, .76);
    paint-order: stroke fill;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical {
    font-size: clamp(130px, 9.8vw, 168px);
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser {
    margin-top: .02em;
    font-size: clamp(90px, 6.95vw, 119px);
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise {
    left: clamp(1218px, 72.7vw, 1238px);
    top: clamp(116px, 15.7%, 132px);
    z-index: 3;
    gap: clamp(8px, .72vw, 12px);
    font-size: clamp(34px, 2.5vw, 42px);
    width: max-content;
    max-width: 25vw;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise > span {
    display: inline-flex;
    align-items: baseline;
    box-sizing: border-box;
    position: relative;
    z-index: 0;
    width: auto;
    max-width: 100%;
    padding: .1em .06em .16em .3em;
    background: transparent;
    isolation: isolate;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    right: .1em;
    bottom: 0;
    left: 0;
    background: #9E8B7A;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line:nth-child(2)::before {
    right: .36em;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-lg {
    font-size: 1.08em;
    line-height: 1;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-sm {
    font-size: .88em;
    line-height: 1;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc {
    left: clamp(780px, 48.4vw, 824px);
    bottom: clamp(132px, 18.2%, 156px);
    z-index: 2;
    gap: clamp(8px, .82vw, 14px);
    font-size: clamp(23px, 1.85vw, 31px);
    text-shadow:
        0 0 6px rgba(255, 255, 255, 1),
        0 0 12px rgba(255, 255, 255, .98),
        0 0 21px rgba(255, 255, 255, .92),
        0 0 32px rgba(255, 255, 255, .78),
        0 0 44px rgba(255, 255, 255, .52),
        0 2px 5px rgba(255, 255, 255, .92);
    filter: none;
    -webkit-text-stroke: .036em rgba(255, 255, 255, .72);
    paint-order: stroke fill;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n {
    display: none;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero,
body.beauty-top.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    overflow: visible;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
body.beauty-top.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: min(47vw, 760px);
    max-width: min(47vw, 760px);
    overflow: hidden;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line,
body.beauty-top.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line {
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: clip;
    white-space: nowrap;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical,
body.beauty-top.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical {
    font-size: clamp(86px, 7.2vw, 122px);
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser,
body.beauty-top.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser {
    font-size: clamp(62px, 5.45vw, 92px);
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
body.beauty-top.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: min(26vw, 440px);
    max-width: min(26vw, 440px);
    font-size: clamp(18px, 1.55vw, 28px);
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line,
body.beauty-top.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line {
    max-width: 100%;
    overflow: hidden;
    text-overflow: clip;
    white-space: nowrap;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
body.beauty-top.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: min(48vw, 790px);
    max-width: min(48vw, 790px);
    overflow: hidden;
    font-size: clamp(18px, 1.55vw, 26px);
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc span,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc span,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc span,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc span,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc span,
body.beauty-top.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc span {
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: clip;
    white-space: nowrap;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    overflow: hidden !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: min(43vw, 720px) !important;
    max-width: min(43vw, 720px) !important;
    overflow: hidden !important;
    white-space: nowrap !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line {
    display: block !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical * {
    font-size: clamp(64px, 5.6vw, 96px) !important;
    line-height: 1.05 !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser * {
    font-size: clamp(52px, 4.4vw, 76px) !important;
    line-height: 1.08 !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: min(26vw, 420px) !important;
    max-width: min(26vw, 420px) !important;
    font-size: clamp(16px, 1.35vw, 24px) !important;
    overflow: hidden !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line * {
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
    line-height: 1.1 !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: min(47vw, 760px) !important;
    max-width: min(47vw, 760px) !important;
    overflow: hidden !important;
    font-size: clamp(15px, 1.28vw, 22px) !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc span,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc span * {
    display: block !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
    line-height: 1.18 !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc {
    display: none !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n {
    display: block !important;
    position: absolute;
    inset: 0;
    visibility: visible !important;
    opacity: 1 !important;
    color: #756554;
    font-family: var(--bt-noto-serif);
    pointer-events: none;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title {
    position: absolute;
    left: clamp(805px, 48.1vw, 820px);
    top: clamp(82px, 10.8%, 92px);
    width: min(45vw, 760px);
    margin: 0;
    font-family: var(--bt-noto-serif);
    font-weight: 600;
    letter-spacing: .015em;
    line-height: 1.06;
    text-shadow:
        0 0 8px rgba(255, 255, 255, 1),
        0 0 15px rgba(255, 255, 255, .98),
        0 0 25px rgba(255, 255, 255, .92),
        0 0 38px rgba(255, 255, 255, .8),
        0 0 52px rgba(255, 255, 255, .56),
        0 3px 5px rgba(96, 76, 59, .2);
    -webkit-text-stroke: .025em rgba(255, 255, 255, .7);
    paint-order: stroke fill;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title span,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title span,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title span {
    display: block;
    max-width: 100%;
    overflow: hidden;
    white-space: nowrap;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title span:first-child,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title span:first-child,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title span:first-child {
    font-size: clamp(70px, 5.9vw, 100px);
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title span:last-child,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title span:last-child,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title span:last-child {
    margin-top: .08em;
    font-size: clamp(48px, 4.45vw, 76px);
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise {
    position: absolute;
    left: clamp(1218px, 72.7vw, 1238px);
    top: clamp(116px, 15.7%, 132px);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: clamp(8px, .72vw, 12px);
    width: min(27vw, 440px);
    margin: 0;
    color: #fff;
    font-family: var(--bt-noto-serif);
    font-size: clamp(18px, 1.45vw, 25px);
    font-weight: 600;
    letter-spacing: .02em;
    line-height: 1.15;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span {
    display: block;
    max-width: 100%;
    padding: .16em .38em .2em;
    overflow: hidden;
    background: #9E8B7A;
    white-space: nowrap;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc {
    position: absolute;
    left: clamp(780px, 48.4vw, 824px);
    bottom: clamp(132px, 18.2%, 156px);
    display: flex;
    flex-direction: column;
    gap: clamp(8px, .82vw, 14px);
    width: min(47vw, 780px);
    margin: 0;
    color: #756554;
    font-family: var(--bt-sans);
    font-size: clamp(17px, 1.38vw, 23px);
    font-weight: 700;
    letter-spacing: .02em;
    line-height: 1.25;
    text-shadow:
        0 0 6px rgba(255, 255, 255, 1),
        0 0 12px rgba(255, 255, 255, .98),
        0 0 21px rgba(255, 255, 255, .92),
        0 0 32px rgba(255, 255, 255, .78),
        0 0 44px rgba(255, 255, 255, .52),
        0 2px 5px rgba(255, 255, 255, .92);
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc span,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc span,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc span {
    display: block;
    max-width: 100%;
    overflow: hidden;
    white-space: nowrap;
}

@media (min-width: 769px) and (max-width: 1400px) {
    #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title {
        left: 48.1%;
        top: 10.2%;
    }

    #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical {
        font-size: clamp(116px, 9.4vw, 132px);
    }

    #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser {
        font-size: clamp(78px, 6.7vw, 94px);
    }

    #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise {
        left: 72.5%;
        top: 15.4%;
        font-size: clamp(29px, 2.42vw, 34px);
        width: max-content;
        max-width: 25vw;
    }

    #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc {
        left: 48.8%;
        bottom: 17.4%;
        font-size: clamp(19px, 1.72vw, 24px);
    }
}

@media (max-width: 768px) {
    #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title {
        left: 6%;
        top: 6%;
    }

    #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical {
        font-size: clamp(48px, 16vw, 82px);
    }

    #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser {
        margin-top: .3em;
        font-size: clamp(36px, 11.8vw, 62px);
    }

    #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise {
        left: 53%;
        top: 9%;
        gap: clamp(5px, 1.8vw, 10px);
        font-size: clamp(14px, 4.6vw, 24px);
        width: min(41vw, 180px);
    }

    #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc {
        left: 6%;
        bottom: 6%;
        gap: clamp(5px, 1.6vw, 8px);
        font-size: clamp(13px, 4.2vw, 23px);
        letter-spacing: .03em;
        line-height: 1.42;
        white-space: normal;
    }

    #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc span {
        display: block;
        max-width: 92vw;
        white-space: nowrap;
    }
}

/* =========================================================
   Regenerative hero final positioning override
   Keep this last so the fourth slide's code-built artwork wins
   over generic slider and translation layout rules.
========================================================= */
#bt-root .bt-hero__slide--regenerative .bt-hero__copy {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

#bt-root .bt-hero__slide--regenerative .bt-regenerative-hero {
    overflow: visible !important;
}

#bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead {
    text-indent: clamp(27px, 1.86vw, 41px) !important;
    transform: none !important;
}

#bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span {
    transform: translate(-.12em, .02em) !important;
}

#bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title {
    width: clamp(580px, 51.12vw, 859px) !important;
    max-width: none !important;
    font-size: clamp(82px, 7.55vw, 127px) !important;
    letter-spacing: 0 !important;
    font-kerning: normal !important;
    font-feature-settings: "palt" 1 !important;
    text-align: center !important;
}

#bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text {
    position: relative !important;
    z-index: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    transform: scaleX(.985) !important;
    transform-origin: center center !important;
}

#bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura {
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    color: #a88b4f !important;
    opacity: .98 !important;
    filter: blur(clamp(13px, 1.08vw, 19px)) !important;
    transform: translate(clamp(2px, .18vw, 3px), clamp(2px, .2vw, 4px)) scaleX(.985) scale(1.035) !important;
    transform-origin: center center !important;
    text-shadow:
        0 0 clamp(24px, 1.9vw, 34px) rgba(141, 111, 47, .98),
        0 0 clamp(54px, 3.7vw, 66px) rgba(186, 154, 77, .72) !important;
    pointer-events: none !important;
}

#bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-dot {
    margin-right: -.24em !important;
    margin-left: -.08em !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead {
    left: clamp(58px, 5.42vw, 91px) !important;
    width: clamp(680px, 58vw, 970px) !important;
    transform: none !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title {
    width: clamp(580px, 51.12vw, 859px) !important;
    max-width: none !important;
    font-size: clamp(82px, 7.55vw, 127px) !important;
    white-space: nowrap !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span {
    transform: translate(.12em, .02em) !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead {
    left: clamp(58px, 5.42vw, 91px) !important;
    top: clamp(70px, 6.2vw, 104px) !important;
    width: clamp(680px, 58vw, 970px) !important;
    min-height: clamp(72px, 6.1vw, 104px) !important;
    height: auto !important;
    padding: .14em 4.2vw .22em !important;
    text-indent: 0 !important;
    font-size: clamp(26px, 2.5vw, 42px) !important;
    line-height: 1.04 !important;
    letter-spacing: .075em !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    text-wrap: balance;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title {
    left: clamp(58px, 5.42vw, 91px) !important;
    top: clamp(168px, 14.45vw, 243px) !important;
    width: clamp(600px, 47.5vw, 795px) !important;
    font-size: clamp(56px, 5.18vw, 87px) !important;
    line-height: .94 !important;
    text-align: right !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    text-wrap: balance;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura {
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
    gap: .02em .09em !important;
    transform: none !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura {
    transform: translate(clamp(2px, .18vw, 3px), clamp(2px, .2vw, 4px)) scale(1.025) !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-dot,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-dot,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-dot,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-dot,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-dot,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-dot {
    margin: 0 .03em !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hexes,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hexes,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hexes,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hexes,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hexes,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hexes {
    left: clamp(76px, 7.2vw, 121px) !important;
    top: clamp(310px, 24.6vw, 414px) !important;
    gap: clamp(15px, 1.55vw, 26px) !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex {
    width: clamp(184px, 15.98vw, 270px) !important;
    height: clamp(210px, 18.3vw, 309px) !important;
    padding: 0 0 .36em !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span {
    width: 78% !important;
    max-width: 78% !important;
    font-size: clamp(19px, 1.74vw, 29px) !important;
    line-height: 1.04 !important;
    letter-spacing: .03em !important;
    transform: none !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title {
    text-align: left !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura {
    justify-content: flex-start !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex {
    width: clamp(160px, 13.8vw, 234px) !important;
    height: clamp(183px, 15.8vw, 267px) !important;
    padding: 0 0 .28em !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span {
    width: 83% !important;
    max-width: 83% !important;
    font-size: clamp(21px, 1.95vw, 33px) !important;
    line-height: 1 !important;
}

/* Keep the code-built epilation hero artwork stable after Google Translate rewrites the page. */
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    overflow: visible !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n {
    display: none !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title {
    display: block !important;
    position: absolute !important;
    left: clamp(805px, 48.1vw, 820px) !important;
    top: clamp(76px, 10.4%, 86px) !important;
    width: max-content !important;
    max-width: none !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: #756554 !important;
    font-family: var(--bt-noto-serif) !important;
    line-height: .95 !important;
    white-space: nowrap !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line {
    display: block !important;
    max-width: none !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
    white-space: nowrap !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical {
    font-size: clamp(130px, 9.8vw, 168px) !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser {
    margin-top: .02em !important;
    font-size: clamp(90px, 6.95vw, 119px) !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise {
    display: flex !important;
    position: absolute !important;
    left: clamp(1218px, 72.7vw, 1238px) !important;
    top: clamp(116px, 15.7%, 132px) !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: clamp(8px, .72vw, 12px) !important;
    width: max-content !important;
    max-width: 25vw !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: #fff !important;
    font-family: var(--bt-noto-serif) !important;
    font-size: clamp(34px, 2.5vw, 42px) !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise > span,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise > span,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise > span,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise > span,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise > span,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise > span {
    display: inline-flex !important;
    width: auto !important;
    max-width: 100% !important;
    padding: .1em .06em .16em .3em !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
    white-space: nowrap !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line::before,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line::before,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line::before,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line::before,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line::before,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line::before {
    right: .1em !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line:nth-child(2)::before,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line:nth-child(2)::before,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line:nth-child(2)::before,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line:nth-child(2)::before,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line:nth-child(2)::before,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line:nth-child(2)::before {
    right: .36em !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc {
    display: flex !important;
    position: absolute !important;
    left: clamp(780px, 48.4vw, 824px) !important;
    bottom: clamp(132px, 18.2%, 156px) !important;
    flex-direction: column !important;
    gap: clamp(8px, .82vw, 14px) !important;
    width: max-content !important;
    max-width: 47vw !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: #756554 !important;
    font-family: var(--bt-sans) !important;
    font-size: clamp(23px, 1.85vw, 31px) !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc span,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc span,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc span,
body.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc span,
body.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc span,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc span {
    display: block !important;
    max-width: none !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
    white-space: nowrap !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title {
    line-height: 1.12 !important;
    text-align: left !important;
    text-transform: capitalize !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura {
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: .13em 0 !important;
    text-transform: capitalize !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-dot,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-dot,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-dot,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-dot,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-dot,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-dot {
    display: none !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hexes,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hexes,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hexes,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hexes,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hexes,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hexes {
    gap: clamp(40px, 3.75vw, 64px) !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex {
    width: clamp(144px, 12.45vw, 210px) !important;
    height: clamp(165px, 14.25vw, 240px) !important;
}

@media (min-width: 769px) {
/* Final hard reset: the epilation hero is decorative typography, so it must not disappear when Google Translate mutates the DOM. */
#bt-root .bt-hero__slide--epilation .bt-epilation-hero {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    overflow: visible !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n {
    display: none !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title {
    display: block !important;
    position: absolute !important;
    left: clamp(805px, 48.1vw, 820px) !important;
    top: clamp(76px, 10.4%, 86px) !important;
    width: max-content !important;
    max-width: none !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: #756554 !important;
    font-family: var(--bt-noto-serif) !important;
    line-height: .95 !important;
    white-space: nowrap !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line {
    display: block !important;
    max-width: none !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
    white-space: nowrap !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical,
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical * {
    font-size: clamp(130px, 9.8vw, 168px) !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser,
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser * {
    margin-top: .02em !important;
    font-size: clamp(90px, 6.95vw, 119px) !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise {
    display: flex !important;
    position: absolute !important;
    left: clamp(1218px, 72.7vw, 1238px) !important;
    top: clamp(116px, 15.7%, 132px) !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: clamp(8px, .72vw, 12px) !important;
    width: max-content !important;
    max-width: 25vw !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: #fff !important;
    font-family: var(--bt-noto-serif) !important;
    font-size: clamp(34px, 2.5vw, 42px) !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise > span {
    display: inline-flex !important;
    position: relative !important;
    width: auto !important;
    max-width: 100% !important;
    padding: .1em .06em .16em .3em !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
    white-space: nowrap !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line::before {
    right: .1em !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line:nth-child(2)::before {
    right: .36em !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-lg {
    font-size: 1.04em !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-sm {
    font-size: .86em !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc {
    display: flex !important;
    position: absolute !important;
    left: clamp(780px, 48.4vw, 824px) !important;
    bottom: clamp(132px, 18.2%, 156px) !important;
    flex-direction: column !important;
    gap: clamp(8px, .82vw, 14px) !important;
    width: max-content !important;
    max-width: 47vw !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: #756554 !important;
    font-family: var(--bt-sans) !important;
    font-size: clamp(23px, 1.85vw, 31px) !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc span {
    display: block !important;
    max-width: none !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
    white-space: nowrap !important;
}
}

@media (min-width: 769px) {
/* Epilation hero proportional layout and translation split. */
#bt-root .bt-hero__slide--epilation .bt-epilation-hero {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc {
    visibility: visible !important;
    opacity: 1 !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title {
    display: block !important;
    left: 48.1% !important;
    top: 9.8% !important;
    width: max-content !important;
    max-width: none !important;
    overflow: visible !important;
    text-align: left !important;
    line-height: .95 !important;
    white-space: nowrap !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line {
    display: block !important;
    max-width: none !important;
    overflow: visible !important;
    white-space: nowrap !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical,
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical * {
    font-size: calc(154 / 1703 * 100vw) !important;
    line-height: .95 !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser,
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser * {
    margin-top: .04em !important;
    font-size: calc(106 / 1703 * 100vw) !important;
    line-height: .95 !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise {
    display: flex !important;
    left: 72.8% !important;
    top: 13.6% !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: calc(10 / 1703 * 100vw) !important;
    width: max-content !important;
    max-width: 25.5vw !important;
    overflow: visible !important;
    font-size: calc(40 / 1703 * 100vw) !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise > span {
    display: inline-flex !important;
    align-items: baseline !important;
    width: auto !important;
    max-width: 100% !important;
    padding: .1em .06em .16em .3em !important;
    overflow: visible !important;
    white-space: nowrap !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line::before {
    right: .1em !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-line:nth-child(2)::before {
    right: .34em !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-lg {
    font-size: 1.08em !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise-sm {
    font-size: .88em !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc {
    display: flex !important;
    left: 48.1% !important;
    bottom: 24.2% !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: calc(12 / 1703 * 100vw) !important;
    width: max-content !important;
    max-width: 47vw !important;
    overflow: visible !important;
    font-size: calc(28 / 1703 * 100vw) !important;
    line-height: 1.25 !important;
    text-align: left !important;
    white-space: nowrap !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc span {
    display: block !important;
    max-width: none !important;
    overflow: visible !important;
    white-space: nowrap !important;
}

#bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    visibility: visible !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title {
    position: absolute !important;
    left: 48.1% !important;
    top: 12.4% !important;
    width: 45vw !important;
    margin: 0 !important;
    overflow: visible !important;
    color: #756554 !important;
    font-family: var(--bt-noto-serif) !important;
    font-size: calc(88 / 1703 * 100vw) !important;
    font-weight: 600 !important;
    letter-spacing: .015em !important;
    line-height: 1.05 !important;
    text-align: left !important;
    text-shadow:
        0 0 8px rgba(255, 255, 255, 1),
        0 0 15px rgba(255, 255, 255, .98),
        0 0 25px rgba(255, 255, 255, .92),
        0 0 38px rgba(255, 255, 255, .8),
        0 0 52px rgba(255, 255, 255, .56),
        0 3px 5px rgba(96, 76, 59, .2) !important;
    -webkit-text-stroke: .025em rgba(255, 255, 255, .7) !important;
    paint-order: stroke fill !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title span,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title span,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title span {
    display: block !important;
    max-width: 100% !important;
    overflow-wrap: normal !important;
    text-wrap: balance !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise {
    position: absolute !important;
    left: 72.4% !important;
    top: 13.8% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: calc(10 / 1703 * 100vw) !important;
    width: 26vw !important;
    margin: 0 !important;
    color: #fff !important;
    font-family: var(--bt-noto-serif) !important;
    font-size: calc(26 / 1703 * 100vw) !important;
    font-weight: 600 !important;
    line-height: 1.18 !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span {
    display: inline-block !important;
    max-width: 100% !important;
    padding: .16em .42em .2em !important;
    overflow-wrap: anywhere !important;
    background: #9E8B7A !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc {
    position: absolute !important;
    left: 48.1% !important;
    bottom: 24.2% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: calc(10 / 1703 * 100vw) !important;
    width: 48vw !important;
    margin: 0 !important;
    overflow: visible !important;
    color: #756554 !important;
    font-family: var(--bt-sans) !important;
    font-size: calc(23 / 1703 * 100vw) !important;
    font-weight: 700 !important;
    letter-spacing: .02em !important;
    line-height: 1.28 !important;
    text-align: left !important;
    text-shadow:
        0 0 6px rgba(255, 255, 255, 1),
        0 0 12px rgba(255, 255, 255, .98),
        0 0 21px rgba(255, 255, 255, .92),
        0 0 32px rgba(255, 255, 255, .78),
        0 0 44px rgba(255, 255, 255, .52),
        0 2px 5px rgba(255, 255, 255, .92) !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc span,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc span,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc span {
    display: block !important;
    max-width: 100% !important;
    overflow-wrap: normal !important;
    text-wrap: balance !important;
}
}

/* Final translated regenerative spacing: keep title and hexagons separated. */
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title {
    top: clamp(156px, 13.35vw, 224px) !important;
    width: clamp(570px, 44.2vw, 740px) !important;
    font-size: clamp(50px, 4.55vw, 76px) !important;
    line-height: 1.16 !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura {
    gap: .2em 0 !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hexes,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hexes,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hexes,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hexes,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hexes,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hexes {
    top: clamp(392px, 27.25vw, 458px) !important;
    gap: clamp(44px, 4.05vw, 70px) !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead {
    left: clamp(46px, 4.6vw, 78px) !important;
    width: min(84vw, 1380px) !important;
    aspect-ratio: 859 / 85 !important;
    height: auto !important;
    min-height: 0 !important;
    padding: .12em 5.1vw .18em !important;
    font-size: clamp(18px, 2.02vw, 34px) !important;
    line-height: .98 !important;
    letter-spacing: .045em !important;
    text-align: center !important;
    text-indent: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    text-wrap: balance;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title {
    left: clamp(46px, 4.6vw, 78px) !important;
    width: min(84vw, 1380px) !important;
    text-align: center !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura {
    align-items: center !important;
    width: 100% !important;
}

html[lang|="mn"] #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body:lang(mn) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead {
    width: min(88vw, 1450px) !important;
    font-size: clamp(16px, 1.78vw, 30px) !important;
    line-height: .94 !important;
    letter-spacing: .025em !important;
    padding-inline: 4.8vw !important;
}

html[lang|="mn"] #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body:lang(mn) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title {
    font-size: clamp(42px, 3.92vw, 66px) !important;
    line-height: 1.1 !important;
    width: min(84vw, 1380px) !important;
}

html[lang|="mn"] #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span,
body:lang(mn) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__hex span {
    font-size: clamp(16px, 1.48vw, 25px) !important;
    line-height: .98 !important;
    width: 86% !important;
    max-width: 86% !important;
    overflow-wrap: anywhere !important;
}

@media (min-width: 769px) {
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title {
    left: 48.4% !important;
    top: 9.7% !important;
}
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical,
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical * {
    font-size: min(10.45vw, 208px) !important;
    line-height: .94 !important;
}
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser,
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser * {
    font-size: min(7.3vw, 146px) !important;
    line-height: .96 !important;
}
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser {
    margin-top: .10em !important;
}
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise {
    left: 72.9% !important;
    top: 14.7% !important;
    font-size: min(2.72vw, 52px) !important;
    gap: .68vw !important;
}
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc {
    left: 48.4% !important;
    top: 57.7% !important;
    bottom: auto !important;
    font-size: min(1.86vw, 36px) !important;
    gap: .96vw !important;
}
}

/* Final regenerative i18n layout: keep the translated main title inside the three-hexagon column. */
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title {
    left: clamp(76px, 7.2vw, 121px) !important;
    top: clamp(150px, 12.8vw, 214px) !important;
    width: clamp(520px, 45vw, 770px) !important;
    max-width: clamp(520px, 45vw, 770px) !important;
    font-size: clamp(52px, 4.8vw, 80px) !important;
    line-height: 1.14 !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    text-wrap: balance;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura {
    align-items: flex-start !important;
    width: 100% !important;
    gap: .12em 0 !important;
}

html[lang|="mn"] #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body:lang(mn) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title {
    left: clamp(76px, 7.2vw, 121px) !important;
    width: clamp(540px, 45vw, 790px) !important;
    max-width: clamp(540px, 45vw, 790px) !important;
    font-size: clamp(38px, 3.45vw, 58px) !important;
    line-height: 1.12 !important;
}

html[lang|="mn"] #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
body:lang(mn) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-text,
html[lang|="mn"] #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura,
body:lang(mn) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title-aura {
    align-items: flex-start !important;
    width: 100% !important;
}

/* Final regenerative i18n lead: allow two clean lines inside the rounded SVG. */
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead {
    left: clamp(76px, 7.2vw, 121px) !important;
    top: clamp(46px, 4.8vw, 78px) !important;
    width: clamp(610px, 44vw, 820px) !important;
    max-width: clamp(610px, 44vw, 820px) !important;
    height: clamp(124px, 9.8vw, 168px) !important;
    min-height: clamp(112px, 9vw, 154px) !important;
    aspect-ratio: auto !important;
    padding: .36em clamp(42px, 4.2vw, 74px) .46em !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: clamp(23px, 2.3vw, 39px) !important;
    line-height: 1.12 !important;
    letter-spacing: .045em !important;
    text-align: center !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    text-wrap: balance !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title {
    top: clamp(168px, 14.4vw, 238px) !important;
}

html[lang|="mn"] #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.is-translated:lang(mn) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body:lang(mn) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead {
    width: clamp(700px, 60vw, 1060px) !important;
    max-width: clamp(700px, 60vw, 1060px) !important;
    height: clamp(136px, 10.6vw, 180px) !important;
    min-height: clamp(126px, 9.8vw, 166px) !important;
    font-size: clamp(22px, 2.05vw, 34px) !important;
    line-height: 1.02 !important;
    letter-spacing: .02em !important;
}

/* Absolute final: stretch the translated lead SVG vertically and lift the translated title slightly. */
html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__lead {
    height: clamp(118px, 9.8vw, 164px) !important;
    min-height: clamp(118px, 9.8vw, 164px) !important;
    max-height: clamp(118px, 9.8vw, 164px) !important;
    padding: .32em clamp(42px, 4.2vw, 74px) .4em !important;
    background-size: 100% 100% !important;
    font-size: clamp(22px, 2.2vw, 36px) !important;
    line-height: 1.16 !important;
}

html[lang]:not([lang^="ja"]) #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-ltr #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.translated-rtl #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title,
body.beauty-top.is-translated #bt-root .bt-hero__slide--regenerative .bt-regenerative-hero__title {
    top: clamp(196px, 15.1vw, 248px) !important;
}

@media (min-width: 769px) {
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title {
    left: 48.4% !important;
    top: 11.0% !important;
    width: max-content !important;
    max-width: none !important;
    line-height: .94 !important;
}
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical,
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--medical * {
    font-size: min(10.45vw, 208px) !important;
    line-height: .94 !important;
}
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser,
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser * {
    font-size: min(7.3vw, 146px) !important;
    line-height: .96 !important;
}
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__title-line--laser {
    margin-top: .10em !important;
}
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise {
    left: 72.9% !important;
    top: 14.7% !important;
    font-size: min(2.72vw, 52px) !important;
    gap: .68vw !important;
}
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc {
    left: 50.7% !important;
    top: 57.7% !important;
    bottom: auto !important;
    font-size: min(1.86vw, 36px) !important;
    gap: .68vw !important;
}
}

@media (min-width: 769px) {
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc {
    left: 49.3% !important;
    gap: clamp(14px, 1.08vw, 22px) !important;
    align-items: flex-start !important;
    text-align: left !important;
}
#bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc span {
    display: block !important;
    margin: 0 !important;
    text-align: left !important;
}
}

@media (min-width: 769px) {
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc {
    left: 49.3% !important;
    gap: clamp(14px, 1.08vw, 22px) !important;
}
}

/* Translation-detected regenerative lead: stretch the rounded SVG itself, not only the text box. */
#bt-root .bt-regenerative-hero.is-i18n .bt-regenerative-hero__lead {
    top: clamp(46px, 4.8vw, 78px) !important;
    width: clamp(610px, 44vw, 820px) !important;
    max-width: clamp(610px, 44vw, 820px) !important;
    height: clamp(138px, 10.9vw, 186px) !important;
    min-height: clamp(138px, 10.9vw, 186px) !important;
    max-height: clamp(138px, 10.9vw, 186px) !important;
    padding: .48em clamp(42px, 4.2vw, 74px) .56em !important;
    background: url("/wp-content/uploads/2026/06/beauty-hero/regenerative/rounded-label.svg") center / 100% 100% no-repeat !important;
    font-size: clamp(22px, 2.12vw, 35px) !important;
    line-height: 1.18 !important;
    text-indent: 0 !important;
    white-space: normal !important;
}

#bt-root .bt-regenerative-hero.is-i18n .bt-regenerative-hero__title {
    top: clamp(172px, 14.1vw, 238px) !important;
}

/* Chrome Translate fallback: translated text is often wrapped in font tags before classes update. */
#bt-root .bt-regenerative-hero:has(.bt-regenerative-hero__lead font) .bt-regenerative-hero__lead,
#bt-root .bt-regenerative-hero:has(.bt-regenerative-hero__lead [lang]) .bt-regenerative-hero__lead,
#bt-root .bt-regenerative-hero.is-i18n .bt-regenerative-hero__lead {
    position: absolute !important;
    z-index: 3 !important;
    isolation: isolate !important;
    top: clamp(46px, 4.8vw, 78px) !important;
    width: clamp(610px, 44vw, 820px) !important;
    max-width: clamp(610px, 44vw, 820px) !important;
    height: clamp(152px, 11.8vw, 202px) !important;
    min-height: clamp(152px, 11.8vw, 202px) !important;
    max-height: clamp(152px, 11.8vw, 202px) !important;
    padding: .56em clamp(42px, 4.2vw, 74px) .64em !important;
    background: none !important;
    font-size: clamp(21px, 2vw, 33px) !important;
    line-height: 1.22 !important;
    text-indent: 0 !important;
    white-space: normal !important;
    overflow: visible !important;
}

#bt-root .bt-regenerative-hero:has(.bt-regenerative-hero__lead font) .bt-regenerative-hero__lead::before,
#bt-root .bt-regenerative-hero:has(.bt-regenerative-hero__lead [lang]) .bt-regenerative-hero__lead::before,
#bt-root .bt-regenerative-hero.is-i18n .bt-regenerative-hero__lead::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: -1 !important;
    display: block !important;
    background: url("/wp-content/uploads/2026/06/beauty-hero/regenerative/rounded-label.svg") center / 100% 100% no-repeat !important;
    pointer-events: none !important;
}

#bt-root .bt-regenerative-hero:has(.bt-regenerative-hero__lead font) .bt-regenerative-hero__title,
#bt-root .bt-regenerative-hero:has(.bt-regenerative-hero__lead [lang]) .bt-regenerative-hero__title,
#bt-root .bt-regenerative-hero.is-i18n .bt-regenerative-hero__title {
    top: clamp(182px, 14.8vw, 250px) !important;
}

/* Final epilation translation layer: keep Japanese design untouched, but render i18n text when translated. */
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__title,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__promise,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__desc {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 5 !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: none !important;
}

@media (min-width: 769px) {
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title {
    left: 48.4% !important;
    top: 12.2% !important;
    width: min(39vw, 650px) !important;
    max-width: min(39vw, 650px) !important;
    font-size: min(5.1vw, 102px) !important;
    line-height: .98 !important;
    letter-spacing: .01em !important;
    text-align: left !important;
    white-space: normal !important;
    z-index: 2 !important;
}
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title span,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title span,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title span {
    display: block !important;
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    text-wrap: balance !important;
}
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise {
    left: 71.2% !important;
    top: 14.2% !important;
    width: min(23vw, 390px) !important;
    max-width: min(23vw, 390px) !important;
    font-size: min(1.72vw, 34px) !important;
    line-height: 1.16 !important;
    gap: .48vw !important;
    z-index: 3 !important;
}
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span {
    padding: .12em .34em .16em !important;
    max-width: 100% !important;
    white-space: nowrap !important;
}
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc {
    left: 48.4% !important;
    top: 58.0% !important;
    bottom: auto !important;
    width: min(45vw, 760px) !important;
    max-width: min(45vw, 760px) !important;
    font-size: min(1.55vw, 30px) !important;
    line-height: 1.18 !important;
    gap: .58vw !important;
    z-index: 2 !important;
}
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc span,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc span,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc span {
    display: block !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    overflow-wrap: normal !important;
    text-wrap: auto !important;
}
}

@media (min-width: 769px) {
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title {
    left: calc(48.4% + 23vw) !important;
    top: 12.1% !important;
    width: min(32vw, 560px) !important;
    max-width: min(32vw, 560px) !important;
    font-size: min(4.55vw, 88px) !important;
    line-height: .98 !important;
}
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise {
    left: calc(71.2% + 25vw) !important;
    top: 14.0% !important;
    width: min(18vw, 330px) !important;
    max-width: min(18vw, 330px) !important;
    font-size: min(1.42vw, 28px) !important;
    gap: .42vw !important;
}
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span {
    white-space: nowrap !important;
}
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc {
    left: calc(48.4% + 23vw) !important;
    top: 56.8% !important;
    width: min(39vw, 700px) !important;
    max-width: min(39vw, 700px) !important;
    font-size: min(1.28vw, 25px) !important;
    line-height: 1.16 !important;
    gap: .50vw !important;
}
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc span,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc span,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc span {
    white-space: normal !important;
    overflow-wrap: normal !important;
}
}

@media (min-width: 769px) {
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-title {
    transform: translateX(10vw) !important;
    width: min(30vw, 520px) !important;
    max-width: min(30vw, 520px) !important;
    font-size: min(4.25vw, 82px) !important;
}
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise {
    transform: translateX(18vw) !important;
    top: 12.4% !important;
    width: min(15.5vw, 280px) !important;
    max-width: min(15.5vw, 280px) !important;
    font-size: min(1.18vw, 23px) !important;
    line-height: 1.08 !important;
    gap: .34vw !important;
}
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span {
    padding: .10em .28em .14em !important;
}
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc {
    transform: translateX(10vw) !important;
    top: 58.4% !important;
    width: min(34vw, 620px) !important;
    max-width: min(34vw, 620px) !important;
    font-size: min(1.18vw, 23px) !important;
    line-height: 1.18 !important;
}
}

@media (min-width: 769px) {
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise {
    transform: translateX(34vw) !important;
    top: 8.8% !important;
    width: min(14vw, 250px) !important;
    max-width: min(14vw, 250px) !important;
    font-size: min(1.04vw, 20px) !important;
    line-height: 1.04 !important;
    gap: .26vw !important;
}
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-promise span {
    padding: .08em .24em .12em !important;
}
body.is-translated #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc,
html.translated-ltr #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc,
html.translated-rtl #bt-root .bt-hero__slide--epilation .bt-epilation-hero__i18n-desc {
    top: 50.4% !important;
    width: min(36vw, 660px) !important;
    max-width: min(36vw, 660px) !important;
    font-size: min(1.12vw, 22px) !important;
    line-height: 1.12 !important;
    gap: .42vw !important;
}
}

/* =========================================================
   Beauty top videos
========================================================= */
#bt-root .bt-videos {
    background: var(--bt-bg);
    padding-top: 108px;
    padding-bottom: 104px;
}
#bt-root .bt-videos .bt-container {
    max-width: 1230px;
}
#bt-root .bt-videos__heading {
    text-align: left;
    margin-bottom: 64px;
}
#bt-root .bt-videos .bt-sec-title__sub {
    font-family: var(--bt-noto-serif);
    font-size: 48px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: -.05em;
    color: #9b8d75;
    margin-bottom: 0;
    text-transform: capitalize;
}
#bt-root .bt-videos__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 58px 28px;
}
#bt-root .bt-video {
    cursor: pointer;
    display: block;
    text-align: left;
    font-family: inherit;
    color: inherit;
    text-decoration: none;
}
#bt-root .bt-video__thumb {
    display: block;
    position: relative;
    overflow: hidden;
    aspect-ratio: 1 / 1;
    background: #d8cdb8;
}
#bt-root .bt-video__thumb-img {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1.78);
    transition: transform 1s ease;
}
#bt-root .bt-video:hover .bt-video__thumb-img {
    transform: scale(1.84);
}
#bt-root .bt-video__play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .3s ease;
}
#bt-root .bt-video:hover .bt-video__play {
    background: rgba(0, 0, 0, .82);
}
#bt-root .bt-video__play::before {
    content: "";
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 17.32px solid #fff;
    margin-left: 12px;
}
#bt-root .bt-video__body {
    display: block;
    margin-top: 21px;
}
#bt-root .bt-video__title {
    display: block;
    font-family: var(--bt-sans);
}
#bt-root .bt-video__title {
    color: #050505;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: .08em;
}
#bt-root .bt-videos .bt-more-wrap {
    margin-top: 72px;
    text-align: center;
}
#bt-root .bt-videos__btn {
    min-width: 180px;
    min-height: auto;
    border-radius: 0;
    color: #fff;
    font-family: var(--bt-serif);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .22em;
}
#bt-root .bt-videos__btn::after {
    content: "›";
    width: auto;
    height: auto;
    border: 0;
    transform: translateX(0);
    margin-left: 0;
}

@media (max-width: 1100px) and (min-width: 769px) {
    #bt-root .bt-videos__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    #bt-root .bt-videos {
        padding-top: 72px;
        padding-bottom: 78px;
    }
    #bt-root .bt-videos .bt-container {
        width: min(83.5%, 680px);
    }
    #bt-root .bt-videos__heading {
        text-align: left;
        margin-bottom: 44px;
    }
    #bt-root .bt-videos .bt-sec-title__sub {
        font-size: 34px;
        line-height: 1.25;
        letter-spacing: .09em;
        margin-bottom: 0;
    }
    #bt-root .bt-videos__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 38px 24px;
    }
    #bt-root .bt-videos__grid .bt-video:nth-child(n+5) {
        display: none;
    }
    #bt-root .bt-video__body {
        margin-top: 17px;
    }
    #bt-root .bt-video__title {
        font-size: 16px;
        line-height: 1.65;
        letter-spacing: .04em;
    }
    #bt-root .bt-video__play {
        width: 50px;
        height: 50px;
    }
    #bt-root .bt-videos .bt-more-wrap {
        margin-top: 72px;
    }
    #bt-root .bt-videos__btn {
        width: auto;
        min-width: 180px;
        min-height: auto;
        font-size: 14px;
        letter-spacing: .22em;
    }
}

/* =========================================================
   Beauty video archive
========================================================= */
#bt-root .bt-video-archive {
    background: var(--bt-bg);
    color: var(--bt-text);
}
#bt-root .bt-video-archive__hero {
    padding: 144px 0 78px;
    background: var(--bt-bg);
}
#bt-root .bt-video-archive__hero .bt-container,
#bt-root .bt-video-archive__body .bt-container {
    max-width: 1230px;
}
#bt-root .bt-video-archive__kicker {
    margin: 0 0 16px;
    font-family: var(--bt-sans);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: .16em;
    color: #9b8d75;
}
#bt-root .bt-video-archive__title {
    margin: 0;
    font-family: var(--bt-serif);
    font-size: clamp(38px, 5.2vw, 72px);
    font-weight: 400;
    line-height: 1.18;
    letter-spacing: .12em;
    color: #9b8d75;
}
#bt-root .bt-video-archive__lead {
    max-width: 680px;
    margin: 30px 0 0;
    font-family: var(--bt-sans);
    font-size: 16px;
    font-weight: 500;
    line-height: 2;
    letter-spacing: .06em;
}
#bt-root .bt-video-archive__body {
    padding: 30px 0 124px;
}
#bt-root .bt-video-archive__group {
    padding-top: 58px;
}
#bt-root .bt-video-archive__group + .bt-video-archive__group {
    margin-top: 34px;
}
#bt-root .bt-video-archive__group-title {
    margin: 0 0 34px;
    padding-bottom: 18px;
    border-bottom: 1px solid #c8b99a;
    font-family: var(--bt-serif);
    font-size: 30px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: .14em;
    color: #3d352c;
}
#bt-root .bt-video-archive__empty {
    margin: 0;
    font-family: var(--bt-sans);
    font-size: 16px;
    line-height: 1.8;
    letter-spacing: .06em;
}

@media (max-width: 768px) {
    #bt-root .bt-video-archive__hero {
        padding: 96px 0 50px;
    }
    #bt-root .bt-video-archive__hero .bt-container,
    #bt-root .bt-video-archive__body .bt-container {
        width: min(83.5%, 680px);
    }
    #bt-root .bt-video-archive__lead {
        font-size: 14px;
        line-height: 1.9;
    }
    #bt-root .bt-video-archive__body {
        padding: 10px 0 90px;
    }
    #bt-root .bt-video-archive__group {
        padding-top: 46px;
    }
    #bt-root .bt-video-archive__group-title {
        margin-bottom: 28px;
        font-size: 24px;
    }
}

@media (max-width: 768px) {
    #bt-root .bt-hero:has(.bt-hero__slide--first.is-active),
    #bt-root .bt-hero:has(.bt-hero__slide--image-hero.is-active),
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero:has(.bt-hero__slide--first.is-active),
    html.translated-ltr #bt-root .bt-hero:has(.bt-hero__slide--first.is-active),
    html.translated-rtl #bt-root .bt-hero:has(.bt-hero__slide--first.is-active),
    body.translated-ltr #bt-root .bt-hero:has(.bt-hero__slide--first.is-active),
    body.translated-rtl #bt-root .bt-hero:has(.bt-hero__slide--first.is-active),
    body.beauty-top.is-translated #bt-root .bt-hero:has(.bt-hero__slide--first.is-active) {
        aspect-ratio: 1 / 1 !important;
    }
    #bt-root .bt-hero:has(.bt-hero__slide--first.is-active) + .bt-openbar-sp,
    #bt-root .bt-hero:has(.bt-hero__slide--image-hero.is-active) + .bt-openbar-sp,
    html[lang]:not([lang^="ja"]) #bt-root .bt-hero:has(.bt-hero__slide--first.is-active) + .bt-openbar-sp,
    html.translated-ltr #bt-root .bt-hero:has(.bt-hero__slide--first.is-active) + .bt-openbar-sp,
    html.translated-rtl #bt-root .bt-hero:has(.bt-hero__slide--first.is-active) + .bt-openbar-sp,
    body.translated-ltr #bt-root .bt-hero:has(.bt-hero__slide--first.is-active) + .bt-openbar-sp,
    body.translated-rtl #bt-root .bt-hero:has(.bt-hero__slide--first.is-active) + .bt-openbar-sp {
        position: relative !important;
        z-index: 5 !important;
        margin-top: calc(-1 * clamp(18px, 5vw, 32px)) !important;
    }
}

/* Text visibility refinement */
#bt-root .bt-concept__text,
#bt-root .bt-doctor__body p {
    font-weight: 550 !important;
}

/* Clinic intro readability */
@media (min-width: 769px) {
    #bt-root .bt-concept__lead {
        font-size: 22px;
        font-weight: 700;
        line-height: 1.68;
        letter-spacing: .105em;
        margin-bottom: 18px;
    }
    #bt-root .bt-concept__text {
        font-size: 16.6px;
        font-weight: 600 !important;
        line-height: 1.98;
        letter-spacing: .045em;
    }
}

@media (max-width: 768px) {
    #bt-root .bt-concept__lead {
        font-size: clamp(18.5px, 5vw, 20px);
        font-weight: 700;
        line-height: 1.72;
        letter-spacing: .065em;
        margin-bottom: 30px;
    }
    #bt-root .bt-concept__lead-break-pc {
        display: block;
    }
    #bt-root .bt-concept__text {
        font-size: clamp(14.8px, 3.95vw, 15.8px);
        font-weight: 600 !important;
        line-height: 1.92;
        letter-spacing: .015em;
        overflow-wrap: break-word;
    }
    #bt-root .bt-concept__text-sp span {
        display: inline;
        white-space: normal !important;
    }
}
