html { margin-top: 0 !important; scroll-behavior: auto; overflow-x: hidden; }
body.admin-bar { margin-top: 0 !important; } footer#footer.wrap, #footer.wrap { display: none !important; height: 0 !important; padding: 0 !important; margin: 0 !important; border: none !important; }
:root {
--beauty-mincho: "Shippori Mincho", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", serif;
}
body { 
margin: 0; padding: 0; 
font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif; 
background-color: #fdfcf8; 
color: #333; line-height: 1.6; 
} button, input, select, textarea { font-family: inherit; } .ggf-footer { 
width: 100vw; 
position: relative; 
left: 50%; 
right: 50%; 
margin-left: -50vw; 
margin-right: -50vw; 
padding: 14px 16px; 
box-sizing: border-box;
margin-top: 0 !important; } .item-card, .price-card, .menu-section {
scroll-margin-top: 110px; } #umekita-price-container { width: 100%; box-sizing: border-box; padding: 80px 15px; min-height: 100vh; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; }
#umekita-menu-container { width: 100%; box-sizing: border-box; padding: 80px 15px; min-height: 100vh; font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; }
.uc-inner { max-width: 1280px; margin: 0 auto !important; width: 100%; padding: 0 10px; box-sizing: border-box; } .price-header { text-align: center; margin-bottom: 60px; padding: 0 10px; }
.price-header h1, .price-header h2 { 
font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; 
font-size: clamp(24px, 3.5vw, 42px); 
color: #8c7b64; 
letter-spacing: 0.1em; 
margin: 0 0 15px 0; 
font-weight: 500; 
text-transform: uppercase;
line-height: 1.3;
word-wrap: break-word;
}
.price-header span { 
font-family: "Noto Sans JP", sans-serif;
font-size: clamp(16px, 2vw, 24px); 
font-weight: 700; 
color: #555; 
display: block;
letter-spacing: 0.05em;
} .price-notice { text-align: center; margin-bottom: 60px; font-size: 20px; line-height: 1.8; }
.price-nav-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; margin-bottom: 80px; }
.price-nav-item { position: relative; height: 140px; background: #ccc; overflow: hidden; text-decoration: none; border-radius: 4px; display: flex; align-items: center; justify-content: center; }
.price-nav-item img { position: absolute; width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
.price-nav-item:hover img { transform: scale(1.1); }
.price-nav-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.3); z-index: 1; }
.price-nav-text { position: relative; z-index: 2; color: #fff; text-align: center; text-shadow: 0 2px 5px rgba(0,0,0,0.5); }
.price-nav-text strong { display: block; font-size: 20px; letter-spacing: 0.1em; margin-bottom: 5px; font-weight: 500; text-transform: uppercase; }
.price-nav-text span { font-size: 18px; opacity: 0.9; }
.counseling-box { background: #f7f3f0; border: 1px solid #eaddcf; padding: 40px; margin-bottom: 100px; }
.counseling-inner { background: #fff; border: 1px solid #ddd; display: flex; align-items: stretch; }
.counseling-label { width: 40%; padding: 20px; font-weight: bold; display: flex; align-items: center; border-right: 1px solid #ddd; font-size: 16px; }
.counseling-price { width: 60%; padding: 20px; display: flex; align-items: center; font-size: 16px; font-weight: bold; }
.counseling-note { font-size: 14px; color: #555; margin-top: 15px; padding-left: 5px; } .price-card, .uc-card { background: #fff; border-radius: 8px; overflow: hidden; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05); border: 1px solid #eee; margin-bottom: 80px; display: flex; flex-direction: column; }
.uc-card { margin-bottom: 0; height: 100%; transition: box-shadow 0.3s ease, transform 0.3s ease; }
.uc-card:hover { box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); transform: translateY(-3px); }
.price-card-header, .uc-card-header { position: relative; height: 200px; background-color: #ddd; overflow: hidden; width: 100%; flex-shrink: 0; }
.uc-card-header { height: 220px; }
.price-card-header img, .uc-card-header img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s ease; }
.uc-card:hover .uc-card-header img { transform: scale(1.08); }
.uc-header-link { display: block; width: 100%; height: 100%; text-decoration: none; color: inherit; }
.uc-cat-label { position: absolute; top: 15px; left: 0; background-color: #8c7b64; color: #fff; padding: 6px 20px; font-size: 14px; font-weight: 600; letter-spacing: 0.05em; z-index: 2; }
.uc-header-overlay { position: absolute; bottom: 0; left: 0; width: 100%; background: linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.4) 60%, transparent 100%); padding: 20px 30px; color: #fff; pointer-events: none; }
.uc-header-overlay h3 { font-size: 32px; font-weight: 700; margin: 0; text-shadow: 0 2px 5px rgba(0,0,0,0.7); line-height: 1.25; color: #fff; }
.uc-header-overlay .uc-en { font-size: 14px; text-transform: uppercase; opacity: 0.9; display: block; margin-bottom: 4px; font-family: serif; letter-spacing: 0.1em; color: #fff; }
.price-card-body, .uc-card-body { padding: 50px; background: #fff; flex-grow: 1; }
.uc-card-body { padding: 25px 30px 35px; display: flex; flex-direction: column; } .menu-section { margin-bottom: 60px; }
.menu-section:last-child { margin-bottom: 0; }
.menu-title { font-size: 24px; color: #333; font-weight: 700; margin-bottom: 20px; padding-left: 15px; border-left: 6px solid #8c7b64; background-color: #faf9f6; padding-top: 12px; padding-bottom: 12px; } .uc-grid-wrapper { display: grid; grid-template-columns: repeat(2, 1fr); gap: 40px; align-items: stretch; width: 100%; }
.uc-menu-list { list-style: none; width: 100%; padding: 0; margin: 0; }
.uc-menu-list.col-2 { column-count: 2; column-gap: 30px; }
.uc-menu-item { border-bottom: 1px dotted #ccc; break-inside: avoid; width: 100%; box-sizing: border-box; }
.uc-menu-link { 
display: flex; 
justify-content: space-between; 
align-items: center; 
padding: 14px 5px; 
text-decoration: none; 
color: #444; 
font-size: 15px; 
font-weight: 500; 
transition: all 0.2s; 
width: 100%; 
box-sizing: border-box;
}
.uc-menu-link:hover { color: #8c7b64; background-color: #fafafa; }
.uc-arrow { font-size: 12px; color: #bbb; margin-left: 10px; opacity: 0.8; flex-shrink: 0; }
.uc-spacer { width: 100%; height: 120px; clear: both; display: block; }
.uc-action-area { text-align: center; width: 100%; display: block; }
.uc-price-btn { display: inline-flex; align-items: center; justify-content: center; flex-direction: column; background-color: #8c7b64; color: #fff; text-decoration: none; min-width: 360px; padding: 18px 60px; min-height: 80px; border-radius: 999px; transition: all 0.3s ease; box-shadow: 0 5px 20px rgba(140, 123, 100, 0.3); font-size: 22px; font-weight: 600; letter-spacing: 0.1em; line-height: 1.2; }
.uc-price-btn:hover { background-color: #7a6a55; transform: translateY(-3px); box-shadow: 0 10px 30px rgba(140, 123, 100, 0.4); }
.uc-price-btn span { display: block; font-size: 14px; opacity: 0.9; font-weight: normal; margin-top: 5px; letter-spacing: 0.05em; }
@media (max-width: 900px) {
.price-nav-grid { grid-template-columns: repeat(2, 1fr); }
.uc-grid-wrapper { grid-template-columns: 1fr; }
.uc-menu-list.col-2 { column-count: 1; }
.uc-price-btn { width: 100%; box-sizing: border-box; min-width: auto; }
}
@media (max-width: 768px) {
#umekita-price-container, #umekita-menu-container { padding: 50px 15px; }
.price-header h1, .price-header h2 { margin-bottom: 10px; }
.price-card-body { padding: 20px; }
.counseling-inner { display: block; }
.counseling-label, .counseling-price { width: 100%; border-right: none; border-bottom: 1px solid #ddd; padding: 15px; }
.counseling-price { border-bottom: none; }
.uc-spacer { height: 80px; }
} :root {
--accent-gold: #916F4E;
--text-black: #111111;        
--text-gray: #333333;         
--bg-white: #ffffff;
--brand-brown: #57370D;
--font-gothic: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}
.custom-page-wrapper {
font-family: var(--font-gothic);
background-color: var(--bg-white);
color: var(--text-black);
line-height: 1.8; 
font-weight: 600;
-webkit-font-smoothing: antialiased;
width: 100%;
box-sizing: border-box;
}
@media (min-width: 768px) { .custom-page-wrapper { font-size: 1vw; } }
@media (max-width: 767px) { .custom-page-wrapper { font-size: 14px; } }
.cp-container { width: 90%; max-width: 1280px; margin: 0 auto; }
.header-section { padding: 5rem 0; border-bottom: 1px solid #e0e0e0; margin-bottom: 5rem; background-color: var(--bg-white); }
.header-inner { display: flex; align-items: stretch; justify-content: space-between; gap: 4rem; }
.header-text-area { flex: 1; display: flex; flex-direction: column; justify-content: center; gap: 2rem; }
.header-image-area { flex: 0 0 45%; background-color: #f0f0f0; border-radius: 0.4rem; overflow: hidden; box-shadow: 0 0.5rem 1.5rem rgba(0,0,0,0.1); display: flex; }
.header-image-area img { width: 100%; height: 100%; object-fit: cover; }
.custom-page-wrapper h1 { font-family: var(--font-gothic); font-size: 3rem; margin: 0; letter-spacing: 0.05em; font-weight: 800; line-height: 1.2; color: var(--text-black); }
.intro-text p { font-size: 1.1rem; line-height: 2.0; color: var(--text-black); font-weight: 600; text-align: justify; margin-bottom: 1.5rem; }
.intro-text p:last-child { margin-bottom: 0; }
.treatment-list { display: flex; flex-direction: column; gap: 6rem; margin-bottom: 0; } .item-card { display: flex; flex-direction: row; align-items: flex-start; border-bottom: 1px solid #e0e0e0; padding-bottom: 4rem; }
.item-card:last-child { border-bottom: none; }
.item-image { flex: 0 0 35%; margin-right: 4rem; }
.item-image img { width: 100%; height: auto; aspect-ratio: 3/2; object-fit: cover; border-radius: 0.3rem; box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.08); }
.item-content { flex: 1; display: flex; flex-direction: column; }
.item-header { display: flex; align-items: center; margin-bottom: 1.5rem; flex-wrap: wrap; gap: 1rem; }
.item-title { font-family: var(--font-gothic); font-size: 2.2rem; margin: 0; font-weight: 800; letter-spacing: 0.02em; line-height: 1.3; color: #000; }
.badge { font-size: 0.8rem; padding: 0.4rem 1rem; color: #fff; font-weight: 700; letter-spacing: 0.1em; border-radius: 0.2rem; box-shadow: 0 0.3rem 0.5rem rgba(0,0,0,0.2); }
.badge-rec { background: linear-gradient(135deg, #a83d3d, #6e2c2c); }
.badge-new { background: linear-gradient(135deg, #2c3e50, #1a252f); }
.badge-attn { background: linear-gradient(135deg, #e6b422, #b8860b); }
.item-desc { font-size: 1.12rem; color: var(--text-gray); margin-bottom: 3rem; white-space: pre-wrap; text-align: justify; font-weight: 600; }
.treatment-list .item-desc{
white-space: pre-line; } .btn-wrap { margin-top: auto; display: flex; gap: 1.5rem; flex-wrap: wrap; }
.item-link { 
display: inline-flex; align-items: center; justify-content: center; 
padding: 1.2rem 2rem; 
min-width: 280px; 
text-decoration: none; 
font-size: 1.1rem; font-weight: 700; letter-spacing: 0.05em; 
border-radius: 6px; 
text-align: center; 
transition: all 0.3s ease; 
box-sizing: border-box; 
white-space: nowrap; 
box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}
.item-link:hover { transform: translateY(-3px); box-shadow: 0 8px 15px rgba(0,0,0,0.15); opacity: 1; }
.btn-detail { 
color: #333; 
background: linear-gradient(135deg, #f0ddaa 0%, #d4af37 50%, #a67c30 100%); 
border: none; 
text-shadow: 0 1px 0 rgba(255,255,255,0.4);
}
.btn-detail:hover { filter: brightness(1.1); }
.btn-fee { 
color: #57370D; 
background-color: #fff; 
border: 2px solid #57370D; 
box-shadow: 0 2px 5px rgba(0,0,0,0.05); 
}
.btn-fee:hover { background-color: #57370D; color: #fff; }
@media (max-width: 767px) {
.header-section { padding: 40px 0; margin-bottom: 40px; }
.header-inner { flex-direction: column; gap: 30px; align-items: center; }
.header-text-area { gap: 15px; }
.header-image-area { flex: none; width: 100%; height: 250px; }
.custom-page-wrapper h1 { font-size: 27px; }
.intro-text p { font-size: 15px; line-height: 1.8; margin-bottom: 15px; }
.treatment-list { gap: 50px; margin-bottom: 50px; }
.item-card { flex-direction: column; padding-bottom: 40px; }
.item-image { width: 100%; margin-right: 0; margin-bottom: 20px; }
.item-title { font-size: 25px; }
.item-desc { font-size: 15px; margin-bottom: 20px; }
.btn-wrap { width: 100%; flex-direction: column; gap: 15px; }
.item-link { width: 100%; padding: 15px 0; min-width: auto; white-space: normal; }
} .blp-wrapper {
--c-main: #8B7B64;
--c-main-light: #FDFCFB;
--c-text: #333333;
--c-white: #ffffff;
--c-gray-bg: #F9F9F9;
--c-price-head: #AFA69C;
--c-line: #06c755;
--font-sans:  "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
--font-serif: "Shippori Mincho", "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
width: 100%;
color: var(--c-text);
font-family: var(--font-sans);
line-height: 1.8;
-webkit-font-smoothing: antialiased;
box-sizing: border-box;
font-size: 16px;
font-weight: 500;
word-break: break-word;
overflow-wrap: break-word;
}
.blp-wrapper h1, .blp-wrapper h2, .blp-wrapper h3, .blp-wrapper .blp-sec-title, .blp-wrapper .blp-hero__catch, .blp-wrapper .blp-hero__title{ font-family: var(--font-serif); font-weight: 600; }
.blp-wrapper *, .blp-wrapper *::before, .blp-wrapper *::after { box-sizing: inherit; }
.blp-wrapper img { max-width: 100%; height: auto; vertical-align: bottom; }
.blp-wrapper a { text-decoration: none; color: inherit; transition: opacity 0.3s; }
.blp-container { width: 92%; max-width: 1400px; margin: 0 auto; position: relative; }
.blp-container-narrow { width: 92%; max-width: 1000px; margin: 0 auto; position: relative; }
.blp-sec-title { font-family: var(--font-serif); font-size: 40px; text-align: center; margin: 0 0 60px 0; font-weight: 700; letter-spacing: 0.05em; color: var(--c-text); margin-bottom: 20px;  margin-top: 60px;}
.blp-sub-title { font-family: var(--font-serif); font-size: 24px; text-align: center; margin: 0 0 20px 0; font-weight: 600; color: var(--c-main); }
.blp-fade-up { opacity: 0; transform: translateY(20px); transition: opacity 0.8s ease, transform 0.8s ease; }
.blp-fade-up.is-visible { opacity: 1; transform: translateY(0); }
@media screen and (max-width: 768px) {
.blp-wrapper { font-size: 15px; }
.blp-sec-title { font-size: 28px; margin-bottom: 28px; margin-top: 34px; }
.blp-sub-title { font-size: 18px; }
} .blp-hero-split { display: flex; width: 100%; background-color: #F7F5F0; align-items: center; position: relative; overflow: hidden; margin-top:0 !important; }
.blp-hero-img { width: 50%; align-self: stretch; }
.blp-hero-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.blp-hero-content { width: 50%; padding: 4vw; display: flex; flex-direction: column; justify-content: center; white-space: normal; word-break: break-word; }
.blp-hero-sub { font-size: 1.3vw; margin-bottom: 1.5vw; font-weight: 700; color: var(--c-main); line-height: 1.4; letter-spacing: 0.05em; }
.blp-hero-main { font-family: var(--font-serif); font-size: 3.2vw; font-weight: 700; line-height: 1.3; margin-bottom: 3vw; color: #222; }
.blp-hero-points { display: flex; gap: 1.5vw; flex-wrap: wrap; }
.blp-hero-point { width: 9vw; height: 9vw; min-width: 80px; min-height: 80px; background-color: rgba(109, 143, 153, 0.9); border-radius: 50%; color: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; font-size: 1vw; line-height: 1.2; font-weight: 700; box-shadow: 0 0.5vw 1.5vw rgba(139, 123, 100, 0.3); overflow: hidden; padding: 5px; }
.blp-hero-point span.num { font-family: var(--font-serif); font-size: 1.4vw; margin-bottom: 0.3vw; border-bottom: 1px solid rgba(255,255,255,0.6); padding-bottom: 0.2vw; display: block; width: 40%; }
@media screen and (max-width: 900px) {
.blp-hero-split { flex-direction: column; }
.blp-hero-img { width: 100%; height: 300px; }
.blp-hero-content { width: 100%; padding: 40px 20px; }
.blp-hero-sub, .blp-hero-main { text-align: left; max-width: 560px; margin-left: auto; margin-right: auto; }
.blp-hero-sub { font-size: 15px; margin-bottom: 15px; }
.blp-hero-main { font-size: 28px; margin-bottom: 30px; }
.blp-hero-points { justify-content: center; gap: 15px; }
.blp-hero-point { width: 90px; height: 90px; font-size: 11px; box-shadow: 0 5px 15px rgba(0,0,0,0.1); }
.blp-hero-point span.num { font-size: 18px; margin-bottom: 5px; padding-bottom: 2px; }
} .blp-reco { padding: 80px 0; background-color: var(--c-white); }
.blp-reco-box { border: 1px solid #ccc; padding: 60px; max-width: 1100px; margin: 0 auto; }
.blp-reco-title { font-size: 32px; font-weight: 700; color: #333; margin: 0 0 40px 0; padding-bottom: 20px; border-bottom: 1px solid #998F7E; font-family: var(--font-sans); }
.blp-reco-title span { color: var(--c-main); }
.blp-reco-list { list-style: none; padding: 0; margin: 0; }
.blp-reco-item { display: flex; align-items: center; margin-bottom: 30px; font-size: 20px; font-weight: 700; }
.blp-reco-icon { width: 44px; height: 44px; border: 2px solid var(--c-main); border-radius: 50%; margin-right: 25px; position: relative; flex-shrink: 0; }
.blp-reco-icon::after { content: ""; position: absolute; left: 14px; top: 9px; width: 11px; height: 19px; border: solid var(--c-main); border-width: 0 3px 3px 0; transform: rotate(45deg); }
@media screen and (max-width: 768px) {
.blp-reco { padding: 60px 0; }
.blp-reco-box { padding: 30px 20px; border: none; }
.blp-reco-title { font-size: 24px; }
.blp-reco-item { font-size: 16px; margin-bottom: 20px; }
.blp-reco-icon { width: 30px; height: 30px; margin-right: 15px; }
.blp-reco-icon::after { left: 9px; top: 5px; width: 8px; height: 14px; }
} .blp-about { padding: 60px 0 80px; background-color: var(--c-white); text-align: center; }
.blp-about-content { width: 100%; text-align: center; display: inline-block; max-width: 1100px; }
.blp-about-text { font-size: 20px; line-height: 1.8; font-weight: 550; text-align: left; }
.blp-about-text p { margin-bottom: 1.5em; }
@media screen and (max-width: 768px) {
.blp-about { padding: 50px 0; }
.blp-about-text { font-size: 15px; text-align: justify; }
} .uklp-case-section { padding: 80px 0 0 0; background-color: #fff; font-family: var(--font-sans); }
.uklp-case-title-wrapper { text-align: center; margin-bottom: 40px; }
.uklp-title01 { font-size: 40px; font-weight: 700; color: #333; margin: 0; font-family: var(--font-serif); }
.uklp-slider-wrapper { position: relative; max-width: 1000px; margin: 0 auto; display: flex; align-items: center; justify-content: center; gap: 20px; padding-bottom: 60px; } .uklp-case-slider { display: flex; overflow-x: auto; gap: 0 !important; width: 100%; max-width: 850px; padding: 20px 0 30px 0; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scroll-behavior: smooth; scrollbar-width: none; }
.uklp-case-slider::-webkit-scrollbar { display: none; }
.uklp-slider-nav { background-color: #f7f7f7; border: 1px solid #ddd; width: 50px; height: 50px; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: all 0.3s; flex-shrink: 0; color: #333; z-index: 2; }
.uklp-slider-nav:hover { background-color: var(--c-main); color: #fff; border-color: var(--c-main); }
.uklp-slider-nav svg { width: 20px; height: 20px; fill: currentColor; }
.uklp-slider-nav.is-hidden { opacity: 0; pointer-events: none; }
.uklp-slider-dots { display: flex; justify-content: center; gap: 10px; position: absolute; bottom: 10px; left: 0; width: 100%; height: 30px; }
.uklp-dot { width: 12px; height: 12px; background-color: #ddd; border-radius: 50%; cursor: pointer; transition: 0.3s; }
.uklp-dot.is-active { background-color: var(--c-main); transform: scale(1.2); }
.uklp-case-card { 
flex: 0 0 100%; 
width: 100%; 
background: #fff; border: 1px solid #e5e5e5; 
border-radius: 12px; 
padding: 30px; 
box-shadow: 0 4px 20px rgba(0,0,0,0.06); 
scroll-snap-align: center; 
box-sizing: border-box;
margin: 0;    position: relative;
} .uklp-case-slider {
gap: 20px; }
.uklp-case-head { font-family: var(--font-serif); font-size: 28px; font-weight: 600; margin: 0 0 25px 0; color: #000; text-align: center; }
.uklp-case-photos { display: flex; justify-content: space-between; align-items: center; gap: 15px; margin-bottom: 30px; }
.uklp-case-photo-box { flex: 1; text-align: center; cursor: pointer; }
.uklp-case-photo-box img { width: 100%; height: auto; aspect-ratio: 16/9; object-fit: cover; display: block; margin-bottom: 10px; border-radius: 4px; background-color: #f0f0f0; transition: opacity 0.2s; }
.uklp-case-photo-box img:hover { opacity: 0.9; }
.uklp-case-photo-label { font-size: 15px; color: #333; margin: 0; font-family: var(--font-serif); }
.uklp-case-arrow { flex: 0 0 30px; display: flex; justify-content: center; align-items: center; padding-bottom: 30px; }
.uklp-case-arrow svg { width: 30px; height: 30px; fill: none; stroke: #333; }
.uklp-case-info { margin-bottom: 30px; }
.uklp-case-row { border-top: 1px solid #e5e5e5; padding: 15px 0; text-align: left; }
.uklp-case-label { display: block; font-weight: 700; font-size: 17px; margin-bottom: 5px; color: var(--c-main); }
.uklp-case-value { display: block; font-size: 16px; line-height: 1.8; color: #333; }
.uklp-case-doctor { border-top: 1px solid #e5e5e5; padding: 25px; background-color: #fafafa; border-radius: 8px; text-align: left; }
.uklp-case-doctor-title { font-weight: 700; font-size: 17px; margin: 0 0 15px 0; color: #000; }
.uklp-case-doctor-body { display: flex; gap: 20px; align-items: flex-start; }
.uklp-case-doctor-profile { width: 120px; flex-shrink: 0; text-align: center; }
.uklp-case-doctor-img { width: 120px; height: 120px; border-radius: 50%; object-fit: cover; border: 3px solid #fff; box-shadow: 0 2px 10px rgba(0,0,0,0.1); margin: 0 auto 10px auto; }
.uklp-case-doctor-name { font-size: 14px; font-weight: 700; line-height: 1.4; }
.uklp-case-doctor-text { flex: 1; font-size: 15px; line-height: 1.9; color: #333; text-align: justify; }
@media screen and (max-width: 768px) {
.uklp-slider-nav { display: none; }
.uklp-case-slider { gap: 0 !important; padding: 0 15px 40px 15px; }
.uklp-case-card { flex: 0 0 90%; max-width: 90%; padding: 20px 15px; border-left: 0; border-right: 15px solid transparent; }
.uklp-case-head { font-size: 24px; margin-bottom: 20px; }
.uklp-case-doctor-body { flex-direction: column; gap: 15px; }
.uklp-case-doctor-profile { display: flex; align-items: center; gap: 15px; width: 100%; text-align: left; }
.uklp-case-doctor-img { margin: 0; width: 80px; height: 80px; }
.uklp-slider-wrapper { padding-bottom: 20px; }
} .blp-effects{ padding: 40px 0 80px; background:#fff; }
.blp-effects-head{ max-width: 1400px; margin: 0 auto 45px; width: 92%; }
.blp-effects-title{ font-family: var(--font-serif); font-size: 40px; font-weight: 700; color: #8c7b64; letter-spacing: 0.08em; margin: 0 0 14px 0; }
.blp-effects-rule{ height: 1px; width: 100%; background: rgba(140,123,100,0.55); } .blp-effects-grid{ 
display: grid; 
grid-template-columns: repeat(2, minmax(0,1fr)); 
gap: 50px; 
align-items: start; }
.blp-effect-card{ 
border: 1px solid rgba(0,0,0,0.14); 
background:#fff; 
border-radius: 10px; 
overflow: hidden; 
box-shadow: 0 6px 24px rgba(0,0,0,0.05); 
display: flex; 
flex-direction: column; 
height: auto; }
.blp-effect-card summary{ list-style:none; }
.blp-effect-card summary::-webkit-details-marker{ display:none; }
.blp-effect-summary{ display:flex; align-items:center; justify-content:space-between; gap: 14px; padding: 18px 22px; background: rgba(140,123,100,0.92); color:#fff; cursor:pointer; font-weight: 700; font-size: 18px; letter-spacing: 0.04em; }
.blp-effect-sum-text{ display:block; }
.blp-effect-chevron{ width: 12px; height: 12px; border-right: 2px solid rgba(255,255,255,0.95); border-bottom: 2px solid rgba(255,255,255,0.95); transform: rotate(45deg); transition: transform 0.2s ease; flex-shrink:0; margin-left:auto; }
.blp-effect-card[open] .blp-effect-chevron{ transform: rotate(225deg); } .blp-effect-body { 
padding: 22px 22px 24px; 
font-size: 17px; 
line-height: 1.9; 
color:#333; 
flex: 1; 
overflow: hidden; box-sizing: border-box; 
display: block; transition: height 0.3s ease, opacity 0.3s ease, padding 0.3s ease, margin 0.3s ease;
} details:not([open]) .blp-effect-body { 
height: 0; 
opacity: 0; 
padding-top: 0; 
padding-bottom: 0; 
margin: 0;
}
details[open] .blp-effect-body { height: auto; }
@media screen and (max-width: 900px){
.blp-effects-grid{ grid-template-columns: 1fr; gap: 22px; }
}
@media screen and (max-width: 768px){
.blp-effects{ padding: 30px 0 60px; }
.blp-effects-title{ font-size: 28px; }
.blp-effect-summary{ padding: 14px 16px; font-size: 15px; }
.blp-effect-body{ padding: 16px 16px 18px; font-size: 14px; }
} .blp-detail{ position: relative; padding: 90px 0; background:#fff; overflow:hidden; }
.blp-detail-bg{ position:absolute; inset:0; pointer-events:none; background: radial-gradient(1200px 400px at 70% 35%, rgba(0,0,0,0.06), transparent 60%), radial-gradient(900px 320px at 30% 65%, rgba(0,0,0,0.04), transparent 60%), linear-gradient(180deg, #ffffff 0%, #fbfbfb 100%); opacity: 0.9; }
.blp-detail .blp-sec-title{ margin-top: 0; margin-bottom: 40px; }
.blp-detail-table-wrap{ background: rgba(255,255,255,0.72); border: 1px solid rgba(0,0,0,0.08); box-shadow: 0 10px 30px rgba(0,0,0,0.04); }
.blp-detail-table{ width:100%; border-collapse: collapse; background: transparent; }
.blp-detail-table th, .blp-detail-table td{ border-bottom: 1px solid rgba(0,0,0,0.08); padding: 18px 22px; vertical-align: top; }
.blp-detail-table tr:last-child th, .blp-detail-table tr:last-child td{ border-bottom:none; }
.blp-detail-table th{ width: 220px; background: rgba(140,123,100,0.06); color: #8c7b64; font-weight: 700; letter-spacing: 0.05em; text-align:left; white-space: nowrap; }
.blp-detail-table td{ color:#333; font-weight: 500; }
@media screen and (max-width: 768px){
.blp-detail{ padding: 60px 0; }
.blp-detail-table-wrap{ border-radius: 6px; overflow:hidden; }
.blp-detail-table th{ width: 36%; white-space: normal; }
.blp-detail-table th, .blp-detail-table td{ padding: 14px 14px; font-size: 14px; }
} .youtube-compare-section { padding: 0 0 80px 0; background-color: #fff; }
.youtube-container { max-width: 1000px; margin: 0 auto; padding: 0 20px; }
.youtube-grid { display: flex; justify-content: center; gap: 40px; width: 100%; }
.youtube-item { flex: 1; width: 100%; max-width: 600px; }
.youtube-embed-wrapper { position: relative; width: 100%; padding-bottom: 56.25%; height: 0; overflow: hidden; border-radius: 8px; box-shadow: 0 4px 12px rgba(0,0,0,0.1); }
.youtube-embed-wrapper iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none; }
@media screen and (max-width: 768px) { .youtube-grid { flex-direction: column; gap: 28px; } } .blp-features { padding: 80px 0; background-color: var(--c-gray-bg); }
.blp-feat-item { display: flex; gap: 50px; margin-bottom: 60px; background: #fff; padding: 50px; border-radius: 8px; box-shadow: 0 5px 15px rgba(0,0,0,0.03); }
.blp-feat-img { flex: 0 0 40%; }
.blp-feat-img img { border-radius: 6px; width: 100%; }
.blp-feat-txt { flex: 1; }
.blp-feat-title { font-family: var(--font-serif); font-size: 26px; color: var(--c-main); margin: 0 0 25px 0; font-weight: 700; }
.blp-feat-desc { margin-bottom: 25px; line-height: 1.8; font-size: 18px; }
.blp-more-content { display: grid; grid-template-rows: 0fr; transition: grid-template-rows 0.2s ease-out; }
.blp-more-inner { overflow: hidden; font-size: 16px;}
.blp-more-content.is-open { grid-template-rows: 1fr; }
.blp-more-btn { background: none; border: none; color: var(--c-main); font-weight: 700; cursor: pointer; padding: 0; display: inline-flex; align-items: center; font-size: 16px; }
.blp-more-btn::after { content: "▼"; font-size: 10px; margin-left: 8px; transition: transform 0.2s; }
.blp-more-btn.is-open::after { transform: rotate(180deg); }
@media screen and (max-width: 768px) { .blp-feat-item { flex-direction: column; padding: 25px; gap: 20px; } } .blp-price { padding-top: 10px; padding-bottom: 100px; background-color: #F8F5F2; }
.blp-price-note-box { background: #fff; border: 1px solid #ddd; padding: 25px; margin-bottom: 40px; font-size: 16px; }
.blp-price-note-row { display: flex; border-bottom: 1px solid #eee; padding-bottom: 15px; margin-bottom: 15px; }
.blp-price-note-row:last-child { border-bottom: none; padding-bottom: 0; margin-bottom: 0; }
.blp-price-note-label { width: 220px; font-weight: 700; font-size: 18px; }
.blp-price-note-val { font-size: 18px; font-weight: 500; }
@media screen and (max-width: 768px) { .blp-price-note-row { flex-direction: column; } } .blp-flow { padding: 80px 0; background: #fff; }
.blp-flow-layout { display: grid; grid-template-columns: 1fr 1.2fr; gap: 60px; align-items: stretch; }
.blp-flow-img-col { position: relative; width: 100%; height: 100%; }
.blp-flow-img-col img { width: 100%; height: 100%; object-fit: cover; display: block; border-radius: 4px; }
.blp-flow-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; justify-content: space-between; }
.blp-flow-item { display: flex; gap: 25px; margin-bottom: 50px; position: relative; }
.blp-flow-item:last-child { margin-bottom: 0; }
.blp-flow-item::before { content: ""; position: absolute; top: 65px; left: 27px; width: 1px; height: calc(100% + 10px); background-color: #ddd; z-index: 0; }
.blp-flow-item:last-child::before { display: none; }
.blp-flow-circle { flex: 0 0 55px; height: 55px; background-color: var(--c-main); border-radius: 50%; color: #fff; display: flex; flex-direction: column; justify-content: center; align-items: center; z-index: 1; position: relative; }
.blp-flow-step-label { font-size: 10px; line-height: 1; margin-bottom: 2px; }
.blp-flow-step-num { font-size: 22px; font-family: var(--font-serif); line-height: 1; }
.blp-flow-text h3 { margin: 0 0 10px 0; font-size: 20px; font-weight: 700; color: #444; }
.blp-flow-desc { font-size: 16px; color: #666; line-height: 1.8; text-align: justify; }
@media screen and (max-width: 900px) {
.blp-flow-layout { grid-template-columns: 1fr; gap: 40px; display: flex; flex-direction: column; }
.blp-flow-img-col { height: auto; aspect-ratio: 16/9; }
} .blp-faq { padding: 80px 0; background: var(--c-gray-bg); }
.blp-faq-container { max-width: 1000px; margin: 0 auto; }
.blp-faq-item { background: #fff; margin-bottom: 25px; border-radius: 8px; overflow: hidden; border: 1px solid #eee; }
.blp-faq-q { padding: 25px 35px; font-weight: 700; font-size: 19px; color: #333; display: flex; align-items: flex-start; gap: 20px; line-height: 1.6; }
.blp-faq-q::before { content: "Q."; color: var(--c-main); font-size: 24px; font-family: var(--font-serif); font-weight: 700; flex-shrink: 0; white-space: nowrap; line-height: 1.2; width: 1.5em; }
.blp-faq-icon { display: none; }
.blp-faq-a-wrapper { display: block; visibility: visible; opacity: 1; }
.blp-faq-a-inner { min-height: 0; overflow: hidden; padding: 0 35px 30px 35px; display: flex; align-items: flex-start; gap: 20px; }
.blp-faq-a-inner::before { content: "A."; color: var(--c-main); font-size: 24px; font-family: var(--font-serif); font-weight: 700; line-height: 1.2; flex-shrink: 0; width: 1.5em; }
.blp-faq-a-text { font-size: 17px; line-height: 1.8; color: #444; padding-top: 0; margin-top: 0px; }
@media screen and (max-width: 768px) {
.blp-faq-q { padding: 20px; font-size: 16px; gap: 15px; }
.blp-faq-a-inner { padding: 0 20px 25px 20px; gap: 15px; }
} .blp-contact { padding: 100px 0; background: #fff; text-align: center; }
.blp-contact-btns { display: flex; justify-content: center; gap: 20px; max-width: 900px; margin: 0 auto; flex-wrap: wrap; }
.blp-btn { flex: 1; display: flex; align-items: center; justify-content: center; padding: 25px 20px; border-radius: 6px; font-size: 20px; font-weight: 700; text-decoration: none; transition: all 0.3s ease; box-shadow: 0 4px 15px rgba(0,0,0,0.08); position: relative; overflow: hidden; min-width: 280px; white-space: normal; text-align: center; line-height: 1.4; }
.blp-btn:hover { transform: translateY(-3px); box-shadow: 0 8px 25px rgba(0,0,0,0.15); }
.blp-btn svg { width: 24px; height: 24px; margin-right: 12px; fill: currentColor; flex-shrink: 0; }
.blp-btn.reserve { background-color: #fff; color: var(--c-main); border: 2px solid var(--c-main); }
.blp-btn.reserve:hover { background-color: var(--c-main); color: #fff; }
.blp-btn.line { background-color: var(--c-line); color: #fff; border: 2px solid var(--c-line); }
.blp-btn.line:hover { background-color: #05b54d; border-color: #05b54d; }
@media screen and (max-width: 768px) {
.blp-contact-btns { flex-direction: column; max-width: 400px; }
.blp-btn { width: 100%; font-size: 18px; padding: 20px; }
} .uklp-lightbox { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.9); z-index: 99999; display: none; align-items: center; justify-content: center; opacity: 0; transition: opacity 0.3s ease; }
.uklp-lightbox.is-visible { display: flex; opacity: 1; }
.uklp-lightbox img { max-width: 90%; max-height: 85vh; border-radius: 4px; object-fit: contain; }
.uklp-lightbox-close { position: absolute; top: 20px; right: 20px; width: 44px; height: 44px; background: rgba(255,255,255,0.2); border-radius: 50%; color: #fff; font-size: 32px; display: flex; align-items: center; justify-content: center; cursor: pointer; } .blp-price-table, .acf-price-table {
width: 100%;
border-collapse: collapse;
background: #fff;
font-size: 16px;
border: 1px solid #ddd;
table-layout: fixed; } .blp-price-table th, .acf-price-table th {
background-color: #6d665e; color: #fff; font-weight: 700;
padding: 14px 10px;
border: 1px solid #ccc;
text-align: center;
vertical-align: middle;
}
.blp-price-table td, .acf-price-table td {
padding: 14px 12px;
border: 1px solid #ddd;
vertical-align: middle;
color: #333;
word-wrap: break-word; overflow-wrap: break-word; } .blp-price-wrapper {
margin-bottom: 30px;
width: 100%;
} @media screen and (max-width: 768px) {
.uklp-slider-nav {
display: none !important;
} .uklp-case-slider { gap: 0 !important;   padding: 0 7.5% 40px 7.5% !important; justify-content: flex-start !important;
scroll-snap-type: x mandatory;
} .uklp-case-card { flex: 0 0 85% !important;
width: 85% !important;
max-width: 85% !important; margin-right: 20px !important;
margin-left: 0 !important; border: 1px solid #eee !important;
background-clip: border-box !important; scroll-snap-align: center;
} .uklp-case-card:last-child {
margin-right: 0 !important;
}
}  .view-sp { display: none !important; }
@media screen and (max-width: 768px) {
.view-pc { display: none !important; }
.view-sp { display: block !important; }
} #uklp-lightbox {
position: fixed; top:0; left:0; width:100%; height:100%;
background: rgba(0,0,0,0.85);
z-index: 99999;
display: none; 
opacity: 0;
transition: opacity 0.3s;
justify-content: center;
align-items: center;
}
#uklp-lightbox.is-visible { display: flex; opacity: 1; } .uklp-lightbox-close {
position: fixed; 
top: 20px; 
right: 20px;
width: 50px; 
height: 50px;
background: rgba(0,0,0,0.6);
border: 1px solid rgba(255,255,255,0.3);
border-radius: 50%;
color: #fff;
font-size: 36px;
line-height: 46px;
text-align: center;
cursor: pointer;
z-index: 100002;
transition: background 0.3s;
}
.uklp-lightbox-close:hover {
background: rgba(0,0,0,0.9);
} #uklp-lightbox-scroll {
width: 100%; height: 100%;
overflow-y: auto;
padding: 80px 20px 40px;
box-sizing: border-box;
display: flex; 
flex-direction: column; 
align-items: center;
} #uklp-lightbox-inner {
width: 100%; 
display: flex; 
gap: 30px;
}
.uklp-lb-group { flex: 1; }
.uklp-lb-label {
display: block; color: #fff;
font-size: 18px; font-weight: 700;
margin-bottom: 10px; padding-left: 10px;
border-left: 5px solid #8c7b64;
}
.uklp-lb-img { width: 100%; height: auto; border-radius: 6px; display: block; box-shadow: 0 5px 15px rgba(0,0,0,0.3); } @media screen and (min-width: 769px) {
#uklp-lightbox-scroll { justify-content: center; }
#uklp-lightbox-inner {
flex-direction: row;
width: 90vw;
max-width: 1400px;
align-items: flex-start;
}
} @media screen and (max-width: 768px) {
#uklp-lightbox-inner {
flex-direction: column;
max-width: 500px;
gap: 40px;
}
.uklp-lightbox-close {
width: 44px; height: 44px; font-size: 30px; line-height: 42px;
top: 15px; right: 15px;
}
}
#new-case-section {
width: 100%; overflow: hidden; background: #fff; padding: 50px 0;
font-family: "Noto Sans JP", sans-serif;
}
#new-case-section * { box-sizing: border-box; }
.ncs-title-area { text-align: center; margin-bottom: 20px; padding: 0 20px; }
.ncs-main-title { font-family: "Shippori Mincho", serif; font-size: 26px; font-weight: 700; color: #333; margin: 0; }
.ncs-wrapper { position: relative; max-width: 900px; margin: 0 auto; padding: 0; }
.ncs-slider-container {
width: 100%; display: flex; gap: 0; padding: 0 0 30px 0;
overflow-x: scroll; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch;
}
.ncs-slider-container::-webkit-scrollbar { display: none; }
@media screen and (max-width: 768px) {
.ncs-wrapper { padding: 0; }
.ncs-nav-btn { display: none !important; }
.ncs-spacer { flex: 0 0 7.5%; width: 7.5%; min-width: 7.5%; visibility: hidden; }
.ncs-card { flex: 0 0 85%; width: 85%; min-width: 85%; margin-right: 12px; }
.ncs-card:last-of-type { margin-right: 0; }
}
.ncs-nav-btn {
position: absolute; top: 50%; transform: translateY(-50%);
width: 50px; height: 50px; background: #f7f7f7; border: 1px solid #ddd;
border-radius: 50%; display: flex; align-items: center; justify-content: center;
cursor: pointer; z-index: 10; transition: all 0.3s; color: #333;
}
.ncs-nav-btn:hover { background: #8c7b64; color: #fff; border-color: #8c7b64; }
.ncs-nav-btn svg { width: 24px; height: 24px; fill: currentColor; }
.ncs-prev { left: 0; }
.ncs-next { right: 0; }
.ncs-card {
background: #fff; border: 1px solid #e5e5e5; border-radius: 12px;
padding: 20px 15px;
box-shadow: 0 4px 10px rgba(0,0,0,0.03);
scroll-snap-align: center; scroll-snap-stop: always;
position: relative; display: flex; flex-direction: column; height: auto;
}
@media (max-width: 768px) { .ncs-card { padding: 20px 14px; } }
.ncs-card-title {
font-family: "Shippori Mincho", serif; 
font-size: 20px;
text-align: center; 
margin: 0 0 15px 0;
color: #333; 
font-weight: 600; 
} .ncs-images {
display: flex;
justify-content: space-between;
align-items: center;
gap: 8px;
margin-bottom: 15px;
}
.ncs-img-box {
flex: 1; 
text-align: center; 
position: relative; 
cursor: pointer;
}
.ncs-img-box img { 
width: 100%; height: auto; aspect-ratio: 3/2; 
object-fit: cover; display: block; 
border-radius: 6px; 
border: 1px solid #eee;
}
.ncs-label { 
display: block; 
margin-top: 6px; 
font-size: 12px; 
color: #666; 
font-weight: 500;
text-align: center;
} .magnify-icon {
position: absolute; bottom: 0; right: 0;
width: 28px; height: 28px;
display: flex; align-items: center; justify-content: center;
pointer-events: none; opacity: 0.9; filter: drop-shadow(0 1px 2px rgba(0,0,0,0.5));
z-index: 2;
}
.ncs-img-wrapper {
position: relative;
display: block;
}
.magnify-icon svg { width: 18px; height: 18px; fill: #fff; } .ncs-arrow {
flex: 0 0 16px;
color: #bbb;
display: flex; justify-content: center;
margin-top: -20px; 
}
.ncs-arrow svg { width: 20px; height: 20px; }
.ncs-info-row { border-top: 1px solid #f0f0f0; padding: 12px 0; }
.ncs-info-label { font-size: 13px; font-weight: 700; color: #8c7b64; margin-bottom: 4px; display: block; }
.ncs-info-text { font-size: 13px; line-height: 1.6; color: #333; }
.ncs-doctor-box { background: #f9f9f7; border-radius: 8px; padding: 15px; margin-top: 15px; }
.ncs-doc-head { font-size: 13px; font-weight: 700; margin-bottom: 10px; color: #333; }
.ncs-doc-content { display: flex; gap: 12px; align-items: flex-start; }
.ncs-doc-icon { display: flex; flex-direction: column; align-items: center; flex-shrink: 0; width: 60px; }
.ncs-doc-icon img { width: 50px; height: 50px; border-radius: 50%; border: 2px solid #fff; box-shadow: 0 2px 5px rgba(0,0,0,0.1); object-fit: cover; margin-bottom: 4px; }
.ncs-doc-name { font-size: 10px; font-weight: 700; white-space: nowrap; text-align: center; line-height: 1.2; }
.ncs-doc-text { font-size: 12px; line-height: 1.6; color: #444; text-align: justify; }
.ncs-dots { display: flex; justify-content: center; gap: 8px; margin-top: 15px; }
.ncs-dot { width: 10px; height: 10px; background: #ddd; border-radius: 50%; transition: all 0.3s; cursor: pointer; }
.ncs-dot.active { background: #8c7b64; transform: scale(1.1); } .uklp-img-wrapper {
position: relative;
display: block;
width: 100%;
overflow: hidden;
border-radius: 4px;
line-height: 0;
}
.uklp-img-wrapper img {
display: block;
width: 100%;
height: auto;
} .view-pc .magnify-icon {
position: absolute; bottom: 10px; 
right: 5px;
background: transparent;
margin: 0;
width: 40px;
height: 40px;
}
.view-pc .magnify-icon svg {
width: 24px;
height: 24px;
} .view-pc{display:block !important;}
.view-sp{display:none !important;}
@media screen and (max-width: 768px){
.view-pc{display:none !important;}
.view-sp{display:block !important;}
} #uklp-lightbox-scroll{
width: 100%;
height: 100%;
overflow-y: auto;
padding: 80px 20px 40px;
box-sizing: border-box;
display: flex;
flex-direction: column;
align-items: center;
}
#uklp-lightbox-inner{
width: 100%;
display: flex;
gap: 30px;
}
.uklp-lb-group{ flex: 1; }
.uklp-lb-label{
display: block;
color: #fff;
font-size: 18px;
font-weight: 700;
margin-bottom: 10px;
padding-left: 10px;
border-left: 5px solid #8c7b64;
}
.uklp-lb-img{
width: 100%;
height: auto;
border-radius: 6px;
display: block;
box-shadow: 0 5px 15px rgba(0,0,0,0.3);
} @media screen and (min-width: 769px){
#uklp-lightbox-scroll{ justify-content: center; }
#uklp-lightbox-inner{
flex-direction: row;
width: 90vw;
max-width: 1400px;
align-items: flex-start;
}
} @media screen and (max-width: 768px){
#uklp-lightbox-inner{
flex-direction: column;
max-width: 500px;
gap: 40px;
}
} .uklp-rich-unit {
max-width: 1280px; 
width: 94%; 
margin: 60px auto; 
background: #fff;
border: 1px solid #eaddcf;
box-shadow: 0 5px 25px rgba(0,0,0,0.06); 
border-radius: 12px;
overflow: hidden;
font-family: "Noto Sans JP", sans-serif;
}
.uklp-rich-flex { display: flex; align-items: stretch; }
.uklp-rich-flex.is-reverse { flex-direction: row-reverse; } .uklp-rich-img { flex: 0 0 50%; background: #f0f0f0; min-height: 300px; }
.uklp-rich-img img { width: 100%; height: 100%; object-fit: cover; display: block; } .uklp-rich-body { 
flex: 1; 
padding: 50px 45px; display: flex; 
flex-direction: column; 
justify-content: center; 
} .uklp-rich-title { 
font-family: "Shippori Mincho", serif; 
font-size: 32px; font-weight: 800; 
color: #8c7b64; 
margin-bottom: 20px; 
letter-spacing: 0.1em; 
line-height: 1.3;
} .uklp-rich-text { 
font-size: 18px; font-weight: 600; color: #333; 
line-height: 1.8; 
margin-bottom: 30px; 
} .uklp-rich-btn {
display: inline-block; 
padding: 22px 40px; background: #8c7b64; 
color: #fff !important; 
text-decoration: none; 
font-size: 20px; font-weight: 700; 
border-radius: 8px; 
transition: all 0.3s ease;
border: none; 
cursor: pointer; 
text-align: center;
box-shadow: 0 4px 12px rgba(140, 123, 100, 0.25);
min-width: 280px; 
line-height: 1.4;
white-space: nowrap; 
box-sizing: border-box;
}
.uklp-rich-btn:hover { 
background: #766854; 
transform: translateY(-2px);
box-shadow: 0 8px 20px rgba(140, 123, 100, 0.35);
} .uklp-rich-btn.line { 
background: #06c755; 
box-shadow: 0 4px 12px rgba(6, 199, 85, 0.25);
}
.uklp-rich-btn.line:hover { background: #05b54d; }
.uklp-rich-btns { 
display: flex; 
justify-content: center; 
gap: 20px; 
flex-wrap: wrap; 
} @media (max-width: 900px) {
.uklp-rich-unit { margin: 40px auto; width: 92%; }
.uklp-rich-flex { flex-direction: column !important; }
.uklp-rich-img { 
width: 100%; 
height: 0; 
padding-top: 56.25%; position: relative;
flex: none;
min-height: auto;
}
.uklp-rich-img img { position: absolute; top: 0; left: 0; }
.uklp-rich-body { padding: 40px 24px; text-align: center; } .uklp-rich-title { font-size: 28px; margin-bottom: 15px; } .uklp-rich-text { font-size: 16px; text-align: left; margin-bottom: 30px; }
.uklp-rich-btns { flex-direction: column; gap: 15px; } .uklp-rich-btn { 
width: 100%; 
min-width: auto; 
padding: 20px 20px; 
font-size: 18px;
white-space: normal; 
}
} :root {
--ritz-gold: #916F4E;
--ritz-black: #111;
--ritz-bg: #fdfcfb;
--font-serif: "Shippori Mincho", serif;
}   html{
overflow-y: auto;
overflow-x: hidden;
height: auto;
min-height: 100%;
} body{
overflow: visible !important;
overflow-x: hidden;
height: auto;
min-height: 100%;
margin: 0;
position: relative;
width: 100%;
} body[style*="overflow: hidden"],
body[style*="overflow:hidden"]{
overflow: hidden !important;
} #page, .site, .site-content, .ritz-wrapper,
#wrap, #wrapper, #container, #content, main, .wrap, .container{
overflow: visible !important;
height: auto !important;
min-height: 0 !important;
width: 100% !important;
max-width: 100vw !important;
} .ritz-section { padding: 100px 0; background: var(--ritz-bg); font-family: var(--font-serif); width: 100%; box-sizing: border-box; }
.ritz-container { max-width: 1200px; margin: 0 auto; padding: 0 20px; width: 100%; box-sizing: border-box; } .ritz-sec-title {
text-align: center; font-size: 42px; color: var(--ritz-black);
font-weight: 500; margin-bottom: 60px; letter-spacing: 0.05em;
}
.ritz-sec-title span {
display: block; font-size: 16px; color: var(--ritz-gold);
margin-top: 12px; letter-spacing: 0.1em; font-family: "Noto Sans JP", sans-serif; font-weight: 600;
} .ritz-hero {
position: relative; 
height: 80vh; min-height: 650px; 
display: flex; align-items: center; justify-content: center;
background: #000; overflow: hidden; width: 100%;
margin-top: 0; padding-top: 0;
}
.ritz-hero-bg img {
position: absolute; inset: 0; width: 100%; height: 100%;
object-fit: cover; opacity: 0.6;
animation: bgZoom 10s ease-out forwards;
}
@keyframes bgZoom { from { transform: scale(1.1); } to { transform: scale(1.0); } }
.ritz-hero-content {
position: relative; z-index: 10; color: #fff; text-align: left;
width: 100%; max-width: 1200px; padding: 0 40px; box-sizing: border-box;
display: flex; flex-direction: column; justify-content: center; height: 100%;
padding-bottom: 50px;
}
.ritz-hero-en {
font-family: "Times New Roman", serif; font-size: 80px;
line-height: 1.1; letter-spacing: 0.02em; font-weight: 400; margin-bottom: 40px;
}
.ritz-hero-jp-wrap {
border-left: 1px solid rgba(255,255,255,0.5);
padding-left: 30px; margin-left: 5px;
}
.ritz-hero-jp-main { font-size: 32px; font-weight: 500; line-height: 1.4; margin-bottom: 15px; }
.ritz-hero-jp-sub { font-size: 16px; font-family: "Noto Sans JP", sans-serif; line-height: 1.8; opacity: 0.9; }
.anim-fade-up { opacity: 0; transform: translateY(20px); animation: fadeUp 1s ease forwards; }
.delay-200 { animation-delay: 0.4s; }
@keyframes fadeUp { to { opacity: 1; transform: translateY(0); } } .ritz-doctor-top { background: #000; color: #fff; padding: 0; }
.ritz-doctor-top .ritz-container { max-width: 100%; padding: 0; }
.ritz-doc-flex { display: flex; align-items: stretch; }
.ritz-doc-info { width: 50%; padding: 100px 6%; display: flex; flex-direction: column; justify-content: center; } .ritz-doc-lead { font-size: 36px; margin-bottom: 30px; line-height: 1.5; font-weight: 500; letter-spacing: 0.05em; }
.ritz-doc-desc { font-size: 18px; line-height: 2.2; opacity: 0.95; font-family: "Noto Sans JP", sans-serif; margin-bottom: 40px; }
.ritz-doc-sign { font-size: 24px; text-align: right; margin-top: 10px; font-family: var(--font-serif); }
.ritz-doc-img-wrap { width: 50%; position: relative; min-height: 600px; }
.ritz-doc-img-wrap img { width: 100%; height: 100%; object-fit: cover; object-position: top center; display: block; }
.fade-bottom {
mask-image: radial-gradient(circle at center, black 60%, transparent 100%);
-webkit-mask-image: radial-gradient(circle at center, black 60%, transparent 100%);
} .ritz-about { background: #fff; }
.ritz-lead { 
text-align: center; font-size: 20px; line-height: 2.2; margin-bottom: 60px; font-family: "Noto Sans JP", sans-serif; color: #333; 
}
.ritz-features { display: flex; flex-direction: column; gap: 40px; }
.ritz-feat-item { display: flex; align-items: stretch; border: 1px solid #eee; background: #fff; }
.ritz-feat-item.reverse { flex-direction: row-reverse; }
.ritz-feat-num { background: #111; color: #fff; width: 100px; display: flex; align-items: center; justify-content: center; font-size: 36px; font-family: serif; flex-shrink: 0; }
.ritz-feat-text { flex: 1; padding: 40px 50px; display: flex; flex-direction: column; justify-content: center; }
.ritz-feat-text h4 { font-size: 28px; margin-bottom: 15px; color: var(--ritz-black); }
.ritz-feat-text p { font-size: 18px; line-height: 1.8; font-family: "Noto Sans JP", sans-serif; margin: 0; }
.ritz-feat-img { width: 40%; min-width: 300px; }
.ritz-feat-img img { width: 100%; height: 100%; object-fit: cover; display: block; } .ritz-menu-simple { background: #fdfcfb; }
.ritz-menu-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.ritz-menu-item { position: relative; display: block; height: 240px; overflow: hidden; text-decoration: none; border-radius: 4px; }
.ritz-menu-bg { width: 100%; height: 100%; }
.ritz-menu-bg img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s; }
.ritz-menu-item:hover .ritz-menu-bg img { transform: scale(1.1); }
.ritz-menu-overlay { position: absolute; inset: 0; background: rgba(0,0,0,0.3); transition: 0.3s; }
.ritz-menu-item:hover .ritz-menu-overlay { background: rgba(0,0,0,0.5); }
.ritz-menu-cat { position: absolute; top: 15px; left: 0; background: var(--ritz-gold); color: #fff; font-size: 12px; padding: 4px 12px; font-family: "Noto Sans JP", sans-serif; } .ritz-menu-name { 
position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); 
color: #fff; font-size: 24px; font-weight: 500; width: 90%; text-align: center; text-shadow: 0 2px 10px rgba(0,0,0,0.5); 
font-family: var(--font-serif); 
}
.ritz-menu-more { text-align: center; margin-top: 50px; }
.ritz-menu-more a { display: inline-block; padding: 18px 60px; border: 1px solid var(--ritz-gold); color: var(--ritz-gold); text-decoration: none; font-size: 16px; font-weight: 500; transition: all 0.3s ease; position: relative; background: #fff; letter-spacing: 0.1em; }
.ritz-menu-more a:hover { background: var(--ritz-gold); color: #fff; } .ritz-doctors-list { background: #f4f4f4; }
.ritz-doctors-flex { display: flex; justify-content: space-between; align-items: center; gap: 50px; }
.ritz-doctors-text { width: 40%; }
.ritz-doctors-desc { font-size: 18px; line-height: 2; margin-bottom: 40px; font-family: "Noto Sans JP", sans-serif; color: #333; }
.ritz-doctors-links { list-style: none; padding: 0; margin: 0; }
.ritz-doctors-links li { border-bottom: 1px solid #ccc; padding: 18px 0; display: flex; align-items: center; }
.ritz-doctors-links li::before { content: "●"; color: #8c7b64; font-size: 8px; margin-right: 15px; }
.ritz-doctors-links a { color: #8c7b64; text-decoration: none; display: flex; justify-content: space-between; font-size: 20px; font-weight: 700; font-family: var(--font-serif); width: 100%; }
.ritz-doctors-links a::after { content: '→'; color: #ccc; }
.ritz-doctors-links a:hover { opacity: 0.7; } .ritz-doctors-img { width: 55%; position: relative; }
.ritz-doctors-img img { width: 100%; display: block; }
.fade-bottom-white { mask-image: radial-gradient(rectangle at center, black 50%, transparent 95%);
-webkit-mask-image: radial-gradient(rectangle at center, black 50%, transparent 95%);
} .ritz-news { background: #f9f9f9; }
.ritz-news-list { list-style: none; margin: 0; padding: 0; max-width: 900px; margin: 0 auto; }
.ritz-news-list li { border-bottom: 1px solid #ddd; }
.ritz-news-list a { display: flex; gap: 40px; padding: 25px 0; text-decoration: none; color: #333; align-items: center; }
.news-date { font-family: "Times New Roman", serif; color: #888; font-size: 16px; }
.news-title { font-family: "Noto Sans JP", sans-serif; font-size: 18px; }
.ritz-news-more { text-align: right; max-width: 900px; margin: 30px auto 0; }
.ritz-news-more a { color: var(--ritz-gold); text-decoration: none; font-size: 16px; border-bottom: 1px solid; } .ritz-access { background: #fff; }
.ritz-access-flex { display: flex; gap: 60px; align-items: stretch; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; padding: 60px 0; }
.ritz-access-info { flex: 1; display: flex; flex-direction: column; justify-content: space-between; }
.ritz-access-text-wrap { height: 100%; display: flex; flex-direction: column; justify-content: space-between; }
.ritz-addr { font-size: 18px; line-height: 1.8; margin-bottom: 30px; font-family: "Noto Sans JP", sans-serif; }
.ritz-tel-row { border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; padding: 25px 0; display: flex; justify-content: space-between; align-items: center; margin-bottom: 25px; }
.ritz-tel { font-size: 36px; font-family: serif; color: var(--ritz-black); text-decoration: none; }
.ritz-link-arrow { display: inline-block; padding: 15px 40px; background: #f4f4f4; color: #333; text-decoration: none; border: 1px solid #ddd; font-size: 16px; font-weight: 500; transition: all 0.3s ease; text-align: center; margin-top: auto; max-width: 280px; }
.ritz-link-arrow:hover { background: var(--ritz-gold); color: #fff; border-color: var(--ritz-gold); }
.ritz-access-map { flex: 1; min-height: 400px; }
.ritz-access-map iframe { width: 100%; height: 100%; display: block; } @media (max-width: 768px) {
.sp-only { display: block; }
.ritz-section { padding: 60px 0; }
.ritz-container { width: 100%; padding: 0 16px; } .ritz-hero { height: auto; min-height: 560px; padding: 100px 0 60px; }
.ritz-hero-content { padding: 0 20px; text-align: center; display: block; padding-bottom: 0; }
.ritz-hero-en { font-size: 42px; margin-bottom: 30px; line-height: 1.2; word-break: break-word; }
.ritz-hero-jp-wrap { border-left: none; padding-left: 0; margin-left: 0; }
.ritz-hero-jp-main { font-size: 24px; line-height: 1.4; margin-bottom: 20px; }
.ritz-hero-jp-sub { font-size: 14px; line-height: 2; text-align: center; display: inline-block; width: 100%; } .ritz-doc-flex { flex-direction: column-reverse; }
.ritz-doc-info { width: 100%; padding: 50px 16px; }
.ritz-doc-img-wrap { width: 100%; min-height: 450px; height: 450px; } .ritz-features { gap: 60px; position: relative; }
.ritz-feat-item, .ritz-feat-item.reverse { 
flex-direction: column; 
border: none; background: transparent; 
position: relative;
min-height: 280px; 
margin-bottom: 20px;
}
.ritz-feat-img { 
position: absolute; top: 0; width: 70%; height: 100%; 
object-fit: cover; z-index: 0; border-radius: 0; 
}
.ritz-feat-item:nth-child(odd) .ritz-feat-img {
right: -16px; 
mask-image: linear-gradient(to right, transparent 0%, black 40%);
-webkit-mask-image: linear-gradient(to right, transparent 0%, black 40%);
}
.ritz-feat-item:nth-child(even) .ritz-feat-img {
left: -16px; 
mask-image: linear-gradient(to left, transparent 0%, black 40%);
-webkit-mask-image: linear-gradient(to left, transparent 0%, black 40%);
}
.ritz-feat-text { 
position: relative; z-index: 2; width: 60%; 
padding: 20px 0; background: transparent; 
}
.ritz-feat-item:nth-child(odd) .ritz-feat-text { margin-right: auto; }
.ritz-feat-item:nth-child(even) .ritz-feat-text { margin-left: auto; text-align: right; }
.ritz-feat-num { 
width: auto; height: auto; font-size: 32px; 
color: var(--ritz-black); background: transparent; 
justify-content: flex-start; margin-bottom: 10px;
border-bottom: 2px solid var(--ritz-gold); display: inline-block; padding-bottom: 5px;
}
.ritz-feat-item:nth-child(even) .ritz-feat-num { margin-left: auto; justify-content: flex-end; }
.ritz-feat-text h4 { font-size: 20px; font-weight: 700; margin-bottom: 10px; }
.ritz-feat-text p { font-size: 14px; line-height: 1.6; text-shadow: 0 0 10px rgba(255,255,255,0.8); } .ritz-menu-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
.ritz-menu-item { height: 160px; }
.ritz-menu-name { font-size: 16px; } .ritz-doctors-flex { flex-direction: column-reverse; gap: 30px; }
.ritz-doctors-text, .ritz-doctors-img { width: 100%; } .ritz-news-list a { gap: 10px; flex-direction: column; align-items: flex-start; padding: 15px 0; }
.ritz-access-flex { flex-direction: column; gap: 30px; padding: 30px 0; }
.ritz-access-map { min-height: 300px; }
}  html, body{
max-width: 100% !important;
}
@supports (overflow: clip){
html, body{
overflow-x: clip !important;
}
}
@supports not (overflow: clip){
html, body{
overflow-x: hidden !important;
}
} #page, .site, .site-content, .l-container, .l-wrap, .container, main, #content, #primary{
max-width: 100% !important;
} @media (max-width: 767px){
.ggf-footer{
width: 100% !important;
left: 0 !important;
right: auto !important;
margin-left: 0 !important;
margin-right: 0 !important;
}
} img, video, iframe, svg{
max-width: 100% !important;
} @media (max-width: 768px){ :root{
--uklp-sp-pad: clamp(18px, 5vw, 28px);
} .ritz-container{
padding-left: var(--uklp-sp-pad) !important;
padding-right: var(--uklp-sp-pad) !important;
} .ritz-doc-info{
padding-left: var(--uklp-sp-pad) !important;
padding-right: var(--uklp-sp-pad) !important;
}
.ritz-doc-lead{
font-size: clamp(22px, 6.2vw, 30px) !important;
line-height: 1.45 !important;
overflow-wrap: anywhere;
word-break: break-word;
}
.ritz-doc-desc{
font-size: clamp(14px, 4vw, 16px) !important;
line-height: 2.0 !important;
overflow-wrap: anywhere;
word-break: break-word;
}
.ritz-doc-sign{
font-size: clamp(16px, 4.5vw, 20px) !important;
line-height: 1.6 !important;
max-width: 100% !important;
white-space: normal !important;
overflow-wrap: anywhere;
word-break: break-word;
} .ritz-feat-item:nth-child(odd) .ritz-feat-img{
right: calc(-1 * var(--uklp-sp-pad)) !important;
}
.ritz-feat-item:nth-child(even) .ritz-feat-img{
left: calc(-1 * var(--uklp-sp-pad)) !important;
} .ritz-access-map{
min-height: 0 !important;
height: clamp(240px, 62vw, 340px) !important;
}
.ritz-access-map iframe{
width: 100% !important;
height: 100% !important;
display: block !important;
}
} @media (max-width: 768px){
  .ritz-about .ritz-lead{
text-align: center !important;
font-size: clamp(15px, 3.8vw, 18px) !important;
line-height: 2.0 !important;
} .ritz-doc-info{
box-sizing: border-box !important;
padding-right: calc(var(--uklp-sp-pad, 20px) + 8px) !important; padding-left:  calc(var(--uklp-sp-pad, 20px) + 2px) !important;
}
.ritz-doc-sign{
display: block !important;
padding-right: 2px !important;
max-width: 100% !important;
} .ritz-tel-row{
gap: 10px;
}
.ritz-tel-row span{
flex: 1 1 auto;
min-width: 10ch; }
.ritz-tel{
flex: 0 0 auto;
white-space: nowrap !important; word-break: keep-all !important;
overflow-wrap: normal !important;
font-size: clamp(22px, 7.0vw, 34px) !important; letter-spacing: 0.02em;
} .ritz-addr{
font-size: clamp(14px, 3.7vw, 17px) !important;
}
.ritz-hours{
font-size: clamp(12px, 3.4vw, 15px) !important;
line-height: 1.8 !important;
}
}  @media (min-width: 769px){
.ritz-hero{ height: calc(100vh - var(--uklp-header-h, 0px)) !important;
min-height: 0 !important;
}
}
@supports (height: 100dvh){
@media (min-width: 769px){
.ritz-hero{
height: calc(100dvh - var(--uklp-header-h, 0px)) !important;
}
}
} .ritz-hero-jp,
.ritz-hero-jp .ritz-hero-sub,
.ritz-hero-jp-wrap,
.ritz-hero-jp-main,
.ritz-hero-jp-sub{
font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", "MS Mincho", serif !important;
font-weight: 500;
} .ritz-lead{ text-wrap: balance;
line-break: strict;
word-break: normal;
max-width: 72ch;
margin-left: auto;
margin-right: auto;
font-size: clamp(17px, 0.9vw + 13px, 20px);
} @media (max-width: 768px){
.ritz-feat-num{
margin-bottom: 6px !important;
padding-bottom: 3px !important;
}
.ritz-feat-text h4{ font-size: clamp(18px, 4.9vw, 22px) !important;
line-height: 1.25 !important;
margin-bottom: 8px !important;
word-break: keep-all;
overflow-wrap: normal;
text-wrap: balance;
} @media (max-width: 360px){
.ritz-feat-text h4{
font-size: 18px !important;
letter-spacing: -0.01em;
}
}
} @media (max-width: 768px){
.ritz-about .ritz-features .ritz-feat-item{ overflow: visible; }
.ritz-about .ritz-features .ritz-feat-item .ritz-feat-num{
position: relative !important;
display: inline-flex !important;
align-items: flex-end !important;
justify-content: flex-start !important;
border-bottom: none !important;
padding-bottom: 10px !important; margin-bottom: 8px !important; line-height: 1 !important;
}
.ritz-about .ritz-features .ritz-feat-item .ritz-feat-num::after{
content: "" !important;
position: absolute !important;
left: 0 !important;
bottom: 0 !important;
width: clamp(140px, 42vw, 220px) !important;
height: 2px !important;
background: var(--ritz-gold, #916F4E) !important;
opacity: .95 !important;
}
.ritz-about .ritz-features .ritz-feat-item.reverse .ritz-feat-num{
justify-content: flex-end !important;
}
.ritz-about .ritz-features .ritz-feat-item.reverse .ritz-feat-num::after{
left: auto !important;
right: 0 !important;
} .ritz-about .ritz-features .ritz-feat-item .ritz-feat-text{
padding-top: 6px !important;
padding-bottom: 0 !important;
}
.ritz-about .ritz-features .ritz-feat-item .ritz-feat-text h4{
margin-top: 0 !important;
margin-bottom: 8px !important;
}
.ritz-about .ritz-features .ritz-feat-item .ritz-feat-text p{
margin-top: 0 !important;
} .ritz-about .ritz-features .ritz-feat-item.reverse .ritz-feat-text{
text-align: right !important;
max-width: min(26em, 78vw) !important;
margin-left: auto !important;
margin-right: 0 !important;
}
}  .ritz-feat-img img {
filter: contrast(0.55) brightness(1.2) saturate(0.6) !important;
width: 100%; height: 100%; object-fit: cover; display: block;
} @media (min-width: 769px) {
.ritz-about .ritz-features {
display: flex; flex-direction: column; gap: 30px !important;
}
.ritz-feat-item {
display: flex; align-items: stretch;
border: 1px solid #000 !important;
height: 200px !important; background: #fff; overflow: hidden; position: relative;
} .ritz-feat-num-box {
width: 105px !important; background: #000 !important; color: #fff !important;
display: flex !important; flex-direction: column; justify-content: center; align-items: center;
flex-shrink: 0; z-index: 10;
}
.ritz-point-label { font-family: "Shippori Mincho", serif; font-size: 14px; margin-bottom: 5px; }
.ritz-num { font-family: "Shippori Mincho", serif; font-size: 46px; line-height: 1; font-weight: 500; } .ritz-feat-content {
flex: 1; display: flex; align-items: center;
z-index: 5; position: relative; padding: 0 !important; 
}
.ritz-feat-text {
width: 100%; max-width: 480px; 
padding-left: 10px;
padding-right: 10px;
padding-top: 10px;
} .ritz-feat-item:not(.reverse) .ritz-feat-content {
padding-left: 15px !important; justify-content: flex-start;
} .ritz-feat-item.reverse { flex-direction: row-reverse; }
.ritz-feat-item.reverse .ritz-feat-content {
padding-right: 15px !important; justify-content: flex-end;
}
.ritz-feat-item.reverse .ritz-feat-text {
text-align: right;
} .ritz-feat-img { 
width: 60% !important; 
position: absolute !important; 
top: 0; height: 100%;
z-index: 1; 
}
.ritz-feat-item:not(.reverse) .ritz-feat-img {
right: 0;
mask-image: linear-gradient(to left, black 30%, transparent 80%);
-webkit-mask-image: linear-gradient(to left, black 30%, transparent 80%);
}
.ritz-feat-item.reverse .ritz-feat-img {
left: 0;
mask-image: linear-gradient(to right, black 30%, transparent 80%);
-webkit-mask-image: linear-gradient(to right, black 30%, transparent 80%);
}
} @media (max-width: 768px) {
.ritz-about .ritz-features { gap: 20px !important; }
.ritz-feat-item {
position: relative !important; display: flex !important; flex-direction: column !important;
min-height: 240px !important; border: none !important; background: transparent !important;
justify-content: center !important; 
} .ritz-feat-num-box {
display: flex !important; flex-direction: column; width: auto !important;
background: transparent !important; color: #333 !important; margin-bottom: 8px !important;
}
.ritz-point-label {
font-family: "Shippori Mincho", serif; font-size: 15px; position: relative;
padding-bottom: 4px; display: inline-block; width: fit-content;
}
.ritz-point-label::after {
content: ""; position: absolute; bottom: 0; left: 0;
width: 160%; height: 1px; background: #916F4E;
} .ritz-feat-item.reverse .ritz-feat-num-box { align-items: flex-end; }
.ritz-feat-item.reverse .ritz-point-label::after { left: auto; right: 0; }
.ritz-num {
font-family: "Shippori Mincho", serif; font-size: 40px;
line-height: 1.1; font-weight: 500; margin-top: 2px;
} .ritz-feat-content { width: 100% !important; z-index: 10; margin-top: 0; }
.ritz-feat-text h4 {
font-size: 19px !important; font-family: "Shippori Mincho", serif;
margin-bottom: 5px !important; font-weight: 600; line-height: 1.3;
} .ritz-feat-text p {
font-size: 14px !important; line-height: 1.65 !important; color: #333;
text-align: justify; letter-spacing: -0.01em; 
max-width: 120%; } .ritz-feat-item.reverse { align-items: flex-end; text-align: right; }
.ritz-feat-item.reverse .ritz-feat-text { 
text-align: right; 
padding-right: 0 !important; } .ritz-feat-img {
position: absolute !important; top: 0; width: 85% !important; height: 100% !important;
z-index: 1; pointer-events: none;
}
.ritz-feat-item:not(.reverse) .ritz-feat-img {
right: -10px;
mask-image: radial-gradient(circle at center right, black 10%, transparent 80%);
-webkit-mask-image: radial-gradient(circle at center right, black 10%, transparent 80%);
}
.ritz-feat-item.reverse .ritz-feat-img {
left: -10px;
mask-image: radial-gradient(circle at center left, black 10%, transparent 80%);
-webkit-mask-image: radial-gradient(circle at center left, black 10%, transparent 80%);
} .ritz-feat-item:not(.reverse) .ritz-feat-text { max-width: 85%; }
.ritz-feat-item.reverse .ritz-feat-text { max-width: 85%; margin-left: auto; }
} .ritz-monitor-promo { padding-top: 50px !important;
padding-bottom: 50px !important;
background: #fff;
margin: 0 !important;
width: 100%;
}
.rmb-sp-br { display: none; } .rmb-link {
display: block;
position: relative;
width: 100%;
max-width: 1100px;
margin: 0 auto;
overflow: hidden; text-decoration: none;
border-radius: 12px;
box-shadow: 0 15px 40px rgba(0,0,0,0.15);
height: 380px;
background: #f5f0e6;
transition: transform 0.3s ease, box-shadow 0.3s ease; -webkit-mask-image: -webkit-radial-gradient(white, black);
mask-image: radial-gradient(white, black);
transform: translateZ(0); }
.rmb-link:hover {
transform: translateY(-3px);
box-shadow: 0 20px 50px rgba(0,0,0,0.25);
} .rmb-bg-image {
position: absolute;
inset: 0;
z-index: 0;
}
.rmb-bg-image img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
filter: brightness(1.05);
} .rmb-black-overlay {
position: absolute;
inset: 0;
background: linear-gradient(90deg, 
rgba(0,0,0,0) 0%, 
rgba(0,0,0,0) 40%, 
rgba(0,0,0,0.5) 65%, 
rgba(0,0,0,0.95) 100%
);
z-index: 1;
}
.rmb-inner {
position: relative;
z-index: 5;
display: flex;
align-items: center;
justify-content: space-between;
height: 100%;
width: 100%;
} .rmb-image {
position: absolute;
left: 20px;
bottom: 0;
width: 480px;
height: 100%;
z-index: 2;
display: flex;
align-items: flex-end;
}
.rmb-image img {
height: 98%;
width: auto;
max-width: 100%;
object-fit: contain;
object-position: bottom left;
filter: drop-shadow(5px 0 15px rgba(0,0,0,0.2));
} .rmb-content {
position: relative;
z-index: 6;
width: 55%;
margin-left: auto; 
padding-right: 40px;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
text-align: center;
height: 100%;
} .rmb-sub {
font-family: "Shippori Mincho", serif;
font-size: 20px;
font-weight: 600;
color: #f0eadd;
margin: 0 0 10px 0;
letter-spacing: 0.1em;
text-shadow: 0 2px 4px rgba(0,0,0,0.9);
}
.rmb-title {
font-family: "Shippori Mincho", serif;
font-size: 60px;
font-weight: 700;
margin: 0 0 25px 0;
line-height: 1.1;
letter-spacing: 0.02em;
color: #f1dca7; 
background: linear-gradient(to bottom, #fff 0%, #f1dca7 50%, #bf9857 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
filter: drop-shadow(0 4px 10px rgba(0,0,0,0.9));
}
.rmb-band {
width: 110%;
background: linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.85) 30%, #000 100%);
padding: 10px 0;
margin-bottom: 20px;
position: relative;
border-top: 1px solid rgba(220, 180, 110, 0.9);
border-bottom: 1px solid rgba(220, 180, 110, 0.9);
box-shadow: 0 5px 20px rgba(0,0,0,0.6);
}
.rmb-band-content {
display: flex;
align-items: center;
justify-content: center;
gap: 15px;
font-family: "Shippori Mincho", serif;
}
.rmb-offer-text {
font-size: 26px;
font-weight: 600;
color: #eaddcf;
text-shadow: 0 2px 5px rgba(0,0,0,0.9);
}
.rmb-offer-price {
font-size: 70px;
font-weight: 700;
color: #fff;
line-height: 1;
text-shadow: 0 0 25px rgba(255,255,255,0.8);
margin-left: 5px;
}
.rmb-period {
font-size: 19px;
color: #eee;
font-family: "Noto Sans JP", sans-serif;
letter-spacing: 0.05em;
margin: 0;
font-weight: 500;
text-shadow: 0 2px 5px rgba(0,0,0,1);
}  @media (min-width: 768px) and (max-width: 1099px) {
.rmb-link { height: 320px; }
.rmb-image {
left: 0;
width: 400px;
}
.rmb-image img { height: 95%; }
.rmb-content {
width: 60%;
padding-right: 20px;
} .rmb-sub { font-size: 16px; }
.rmb-title { font-size: 42px; margin-bottom: 20px; }
.rmb-offer-text { font-size: 20px; }
.rmb-offer-price { font-size: 50px; }
.rmb-period { font-size: 15px; }
} @media (max-width: 767px) {
.rmb-sp-br { display: block; } .rmb-link {
width: 100%;
height: 300px;
min-height: 300px;
aspect-ratio: auto;
border-radius: 12px; -webkit-mask-image: -webkit-radial-gradient(white, black);
mask-image: radial-gradient(white, black);
}
.rmb-inner {
padding: 0 10px;
position: relative;
}
.rmb-image {
position: absolute;
left: -20px;
bottom: 0;
width: 48%;
height: 100%;
z-index: 20;
display: flex;
align-items: flex-end;
}
.rmb-image img {
height: 95%;
width: auto;
max-width: 160%;
object-fit: contain;
object-position: bottom center;
filter: drop-shadow(0 5px 10px rgba(0,0,0,0.3));
} .rmb-content {
position: relative;
z-index: 10;
width: 60%;
margin-left: auto;
padding-right: 6px;
padding-left: 0;
height: 100%;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center; } .rmb-sub {
font-size: 15px;
margin-bottom: 8px;
line-height: 1.5;
text-align: center;
text-shadow: 0 2px 4px rgba(0,0,0,1);
width: 100%;
}
.rmb-title { 
font-size: 26px;
margin-bottom: 12px;
line-height: 1.2;
white-space: nowrap;
filter: drop-shadow(0 2px 4px rgba(0,0,0,1));
}
.rmb-band {
width: 150%;
margin-right: -25px;
padding: 8px 30px 8px 0;
margin-bottom: 12px;
background: linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.85) 30%, #000 100%);
}
.rmb-band-content {
display: flex;
justify-content: center;
align-items: center;
gap: 5px;
white-space: nowrap;
width: 100%;
padding-right: 10px;
}
.rmb-offer-text {
font-size: 13px;
font-weight: 700;
margin-top: 2px;
}
.rmb-offer-price {
font-size: 38px;
margin-left: 0;
}
.rmb-period {
font-size: 12px;
line-height: 1.5;
text-align: center;
font-weight: 700;
text-shadow: 0 2px 4px rgba(0,0,0,1);
width: 100%;
}
} @media (max-width: 390px) {
.rmb-link { 
height: 260px;
min-height: 260px;
}
.rmb-image { 
left: -15px; 
width: 46%;
}
.rmb-image img {
height: 94%;
max-width: 155%;
}
.rmb-sub { font-size: 13px; margin-bottom: 6px; }
.rmb-title { font-size: 23px; margin-bottom: 10px; }
.rmb-band {
padding: 6px 20px 6px 0;
margin-bottom: 10px;
}
.rmb-offer-text { font-size: 11px; }
.rmb-offer-price { font-size: 33px; }
.rmb-period { font-size: 10px; }
.rmb-content {
padding-right: 5px;
width: 62%;
}
} .ritz-wrapper .uklp-rich-unit.case-unit{
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-rendering: geometricPrecision;
} .dr-wrapper {
width: 100%;
background-color: #fff;
padding-bottom: 100px;
font-family: "Shippori Mincho", "Yu Mincho", "YuMincho", serif;
color: #333;
} .dr-header {
text-align: center;
padding: 80px 0 60px;
}
.dr-header-en {
font-size: 50px;
font-weight: 500;
letter-spacing: 0.05em;
margin: 0;
line-height: 1;
color: #111;
font-family: "Times New Roman", serif;
}
.dr-header-jp {
font-size: 16px;
margin-top: 15px;
font-family: "Noto Sans JP", sans-serif;
font-weight: 500;
letter-spacing: 0.1em;
color: #555;
} .dr-nav-container {
max-width: 1000px;
margin: 0 auto 80px;
padding: 0 20px;
}
.dr-nav-list {
display: flex;
justify-content: center;
gap: 20px;
flex-wrap: wrap;
}
.dr-nav-btn {
display: flex;
align-items: center;
justify-content: space-between;
width: 280px;
padding: 15px 25px;
border: 1px solid #ccc;
border-radius: 999px;
text-decoration: none;
color: #333;
transition: all 0.3s ease;
background: #fff;
}
.dr-nav-btn:hover, .dr-nav-btn.current {
background: #8c7b64;
border-color: #8c7b64;
color: #fff;
}
.dr-nav-role {
font-size: 11px;
font-family: "Noto Sans JP", sans-serif;
display: block;
margin-bottom: 2px;
}
.dr-nav-name {
font-size: 15px;
font-weight: 700;
} .dr-profile-area {
max-width: 1000px;
margin: 0 auto;
padding: 0 20px;
font-family: "Noto Sans JP", sans-serif;
}
.dr-top-flex {
display: flex;
gap: 50px;
margin-bottom: 50px;
align-items: flex-start;
}
.dr-photo-col {
width: 38%;
flex-shrink: 0;
}
.dr-photo-col img {
width: 100%;
height: auto;
aspect-ratio: 1 / 1;
object-fit: cover;
object-position: top center;
box-shadow: 0 5px 20px rgba(0,0,0,0.05);
border-radius: 4px;
}
.dr-info-col {
flex: 1;
} .dr-name-box {
margin-bottom: 40px;
}
.dr-role-wrap {
font-size: 16px;
color: #8c7b64;
font-weight: 600;
display: block;
margin-bottom: 8px;
}
.dr-clinic-name {
margin-right: 12px;
}
.dr-name-jp {
font-size: 38px;
font-family: "Shippori Mincho", serif;
font-weight: 500;
margin: 0 0 5px 0;
letter-spacing: 0.1em;
}
.dr-name-en {
font-size: 14px;
color: #999;
letter-spacing: 0.1em;
text-transform: uppercase;
display: block;
} .dr-content-sec { margin-bottom: 40px; }
.dr-sec-title {
font-size: 19px;
color: #8c7b64;
border-bottom: 1px solid #dcd3c6;
padding-bottom: 10px;
margin-bottom: 20px;
font-weight: 600;
}
.dr-list { list-style: none; padding: 0; margin: 0; }
.dr-list li {
position: relative;
padding-left: 1.2em;
margin-bottom: 10px;
font-size: 16px;
color: #333;
line-height: 1.6;
}
.dr-list li::before {
content: "・";
position: absolute;
left: 0;
color: #333;
}
.dr-history-row {
display: flex;
margin-bottom: 15px;
font-size: 16px;
line-height: 1.6;
}
.dr-history-year { width: 5em; flex-shrink: 0; color: #333; }
.dr-history-text { flex: 1; color: #333; }
.dr-message-text p {
font-size: 16px;
line-height: 1.9;
color: #333;
margin-bottom: 1.5em;
text-align: justify;
}
.dr-message-text p:last-child { margin-bottom: 0; }
.dr-youtube-wrap {
position: relative;
width: 100%;
padding-top: 56.25%;
background-color: #f5f5f5;
border-radius: 8px;
overflow: hidden;
}
.dr-youtube-wrap iframe {
position: absolute;
top: 0; left: 0; width: 100%; height: 100%;
} @media (max-width: 768px) {
.dr-top-flex {
flex-direction: column;
gap: 30px;
align-items: center; width: 100%;
}
.dr-photo-col {
width: 100%;
max-width: 320px;
margin: 0 auto;
}
.dr-info-col {
width: 100%;
box-sizing: border-box;
} .dr-name-box {
text-align: center; 
border-bottom: 1px solid #eee;
padding-bottom: 25px;
width: 100%;
box-sizing: border-box;
} .dr-role-wrap {
display: block;
text-align: center;
width: 100%;
margin-bottom: 15px;
}
.dr-clinic-name {
display: block;
margin: 0 auto 4px auto;
       font-size: 15px;
text-align: center;
}
.dr-role-name {
display: block;
margin: 0 auto;
font-size: 16px;
text-align: center;
} .dr-name-jp {
display: block;
font-size: 34px;
text-align: center;
letter-spacing: 0.1em; padding-left: 0.1em; 
margin: 0 auto 5px auto;
}
.dr-name-en {
display: block;
font-size: 13px;
text-align: center;
letter-spacing: 0.1em;
padding-left: 0.1em;
margin: 0 auto;
}
.dr-content-sec { text-align: left; } .ggf-footer {
padding-left: 5px !important;
padding-right: 5px !important;
}
.ggf-footer__inner {
width: 100% !important;
margin: 0 auto !important;
}
#ggf-text {
white-space: nowrap !important; font-size: clamp(7px, 2.2vw, 11px) !important;
line-height: 1 !important;
padding: 0 !important;
}
} @media (max-width: 400px) {
.dr-name-jp { font-size: 30px; }
.dr-header-en { font-size: 38px; }
.dr-nav-btn { 
width: 100%; 
max-width: 100%; 
padding: 12px 20px; 
}
.dr-history-row { flex-direction: column; gap: 4px; margin-bottom: 20px; }
.dr-history-year { width: 100%; font-weight: 600; color: #8c7b64; }
.dr-clinic-name { font-size: 12px; }
.dr-role-name { font-size: 15px; }
} .dr-back-btn-wrap {
text-align: center;
margin-top: 0; margin-bottom: 0; padding-top: 0px;
padding: 40px 0px; background-color: #fff;
}
.dr-back-btn {
display: inline-flex;
align-items: center;
justify-content: center;
background-color: transparent;
color: #8c7b64;
text-decoration: none;
padding: 10px 15px;
border: none;
font-size: 16px;
font-weight: 500;
transition: all 0.3s ease;
font-family: "Noto Sans JP", sans-serif;
letter-spacing: 0.05em;
} .dr-back-btn::before {
content: '';
display: inline-block;
width: 8px;
height: 8px;
border-top: 1px solid currentColor;
border-left: 1px solid currentColor;
transform: rotate(-45deg);
margin-right: 8px;
margin-top: 1px;
}
.dr-back-btn:hover {
background-color: transparent;
color: #6b5d4b;
opacity: 0.8;
} .dr-back-btn-wrap {
margin-top: 0;
margin-bottom: 0;
padding: 30px 0 40px; }
.dr-back-btn {
width: auto;
max-width: none;
padding: 15px;
font-size: 15px;
} @media (max-width: 1200px) { .uklp-nav-dropdown ul{
grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
gap: 10px 18px !important;
}
.uklp-nav-dropdown a{
white-space: nowrap !important;
} #langMenuPc{
display: grid !important;
grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
gap: 10px !important;
min-width: 320px !important;
max-width: 520px !important;
}
#langMenuPc button{
width: 100% !important;
white-space: nowrap !important;
}
} @media (max-width: 768px) {
#langMenuSp{
display: grid !important;
grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
gap: 14px !important;
padding: 18px !important;
}
#langMenuSp a,
#langMenuSp button{
display: flex !important;
align-items: center !important;
justify-content: center !important;
height: 56px !important;
border-radius: 14px !important;
border: 2px solid #d9e4ff !important;
background: #fff !important;
color: #1a73e8 !important;
font-weight: 700 !important;
font-size: 18px !important;
text-decoration: none !important;
-webkit-tap-highlight-color: transparent !important;
}
} @media (max-width: 1100px) { .uklp-nav-dropdown ul {
display: grid !important;
grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
column-gap: 28px !important;
row-gap: 10px !important;
} .uklp-nav-dropdown ul li a {
white-space: normal !important;
line-height: 1.45 !important;
padding: 14px 16px !important;
display: block !important;
overflow-wrap: anywhere !important;
}
} @media (max-width: 860px) {
.uklp-nav-dropdown ul li a {
font-size: 15px !important;
padding: 12px 14px !important;
}
} @media screen and (min-width: 768px) { .treatment-menu-dropdown { 
display: grid !important;
grid-template-columns: repeat(2, 1fr); gap: 10px; padding: 15px;
} .treatment-menu-dropdown a {
white-space: normal !important; word-break: break-word; line-height: 1.5; display: block;
}
} .mobile-menu-wrapper { transition: all 0.1s ease-in-out !important; 
}
@media screen and (max-width: 767px) { .lang-dropdown-menu a {
display: block;
padding: 16px 20px; margin-bottom: 10px; background-color: #ffffff; border: 1px solid #e0e0e0; border-radius: 8px; text-align: center;
font-size: 16px;
color: #333333;
text-decoration: none;
box-shadow: 0 2px 4px rgba(0,0,0,0.05); } .lang-dropdown-menu a:active {
background-color: #f5f5f5;
transform: translateY(1px);
}
} @media screen and (min-width: 768px) { .treatment-menu-dropdown { 
display: grid !important;
grid-template-columns: repeat(2, 1fr); gap: 10px; padding: 15px;
} .treatment-menu-dropdown a {
white-space: normal !important; word-break: break-word; line-height: 1.5; display: block;
}
} @media screen and (min-width: 981px) { .lang-dropdown-menu {
display: none !important; }
.lang-dropdown-menu.is-open {
display: grid !important; grid-template-columns: repeat(2, 1fr) !important; gap: 10px !important;
} .treatment-menu-dropdown { width: 800px !important; 
max-width: 90vw !important; display: none !important; }
.treatment-menu-dropdown.is-open {
display: grid !important;
grid-template-columns: repeat(2, 1fr) !important;
}
} .header-image-area {
position: relative !important;
height: auto !important;
min-height: 0 !important; padding: 0 !important;
background: transparent !important;
box-shadow: none !important; border: none !important;
}
.header-image-area img {
position: static !important; 
width: 100% !important;
height: auto !important; object-fit: cover !important;
max-height: none !important;
border-radius: 12px !important; box-shadow: 0 4px 20px rgba(0,0,0,0.08) !important; display: block !important;
} .header-en-labels {
display: flex;
align-items: center;
gap: 12px;
margin-bottom: 15px;
}
.header-en-labels .cat-label {
background: #B59C74; 
color: #fff;
padding: 4px 10px;
font-size: 11px;
font-weight: bold;
letter-spacing: 0.1em;
}
.header-en-labels .en-title {
color: #B59C74; 
font-size: 13px;
font-weight: bold;
letter-spacing: 0.1em;
}
.item-short-desc {
font-size: 14px;
line-height: 1.6;
margin: 15px 0 20px;
color: #444;
} .umk-btn-container {
display: grid !important; 
grid-template-columns: repeat(2, minmax(0, 280px)) !important; 
gap: 15px !important; 
margin-top: 25px !important;
width: 100% !important;
justify-content: flex-start !important;
}
.umk-btn {
display: flex !important;
align-items: center !important;
justify-content: center !important;
width: 100% !important;
height: 60px !important; 
border-radius: 6px !important; 
font-size: 16px !important; 
font-weight: bold !important;
text-decoration: none !important;
letter-spacing: 0.05em !important;
white-space: nowrap !important; 
word-break: keep-all !important; 
box-sizing: border-box !important;
transition: all 0.3s ease !important;
text-shadow: none !important;
border: none !important;
margin: 0 !important;
box-shadow: 0 4px 6px rgba(0,0,0,0.1), inset 0 1px 0 rgba(255,255,255,0.2) !important;
}
.umk-btn:hover {
transform: translateY(-2px);
} .umk-btn-detail {
background: linear-gradient(180deg, #a07d58 0%, #916F4E 100%) !important;
color: #fff !important;
} .umk-btn-fee {
background: linear-gradient(180deg, #4a4a4a 0%, #333333 100%) !important;
color: #fff !important;
} @media screen and (max-width: 768px) {
.umk-btn-container {
grid-template-columns: 1fr 1fr !important; 
gap: 10px !important; 
justify-content: stretch !important; 
padding: 0 !important;
}
.umk-btn {
height: 52px !important; 
font-size: 13px !important; 
padding: 0 10px !important; 
letter-spacing: 0 !important; 
white-space: nowrap !important; 
width: 100% !important;
max-width: none !important;
}
} .blp-price-caption{
font-size: 1.35rem;
line-height: 1.4;
}
.blp-price-table th{
font-size: 1.05rem;
}
.blp-price-table td{
font-size: 1.05rem;
} @media (max-width: 767px){
.blp-price-caption{ font-size: 1.15rem; }
.blp-price-table th,
.blp-price-table td{ font-size: 1rem; }
} .ritz-hero-kicker{
font-size: 14px;
letter-spacing: 0.18em;
text-transform: uppercase;
opacity: 0.9;
margin-bottom: 18px;
}
.ritz-hero-jp-main2{
font-size: 44px;
line-height: 1.25;
font-weight: 600;
margin: 0 0 18px;
}
.ritz-hero-jp-sub2{
font-size: 16px;
line-height: 1.9;
opacity: 0.92;
margin: 0 0 26px;
}
.ritz-hero-cta{
display: flex;
gap: 14px;
flex-wrap: wrap;
align-items: center;
}
.ritz-cta-btn{
display: inline-flex;
align-items: center;
justify-content: center;
min-height: 48px;
padding: 12px 18px;
border-radius: 999px;
font-size: 15px;
font-weight: 600;
text-decoration: none;
transition: transform .15s ease, opacity .15s ease;
}
.ritz-cta-btn:hover{
transform: translateY(-1px);
opacity: 0.95;
}
.ritz-cta-btn.is-primary{
background: #ffffff;
color: #111;
border: 1px solid rgba(255,255,255,0.9);
}
.ritz-cta-btn.is-outline{
background: transparent;
color: #fff;
border: 1px solid rgba(255,255,255,0.65);
}
.ritz-hero-note{
margin-top: 16px;
font-size: 12px;
opacity: 0.75;
} @media (max-width: 768px){
.ritz-hero-jp-main2{ font-size: 30px; }
.ritz-hero-jp-sub2{ font-size: 14px; }
.ritz-hero-cta{ gap: 10px; }
.ritz-cta-btn{
width: 100%;
max-width: 360px;
justify-content: center;
}
}  .ritz-hero-jp-main2{
font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", "YuMincho",
"MS PMincho", "Times New Roman", serif;
font-weight: 600;
letter-spacing: 0.02em;
} .ritz-hero-jp-sub2,
.ritz-hero-kicker,
.ritz-cta-btn,
.ritz-hero-note{
font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic",
"Meiryo", sans-serif;
} .ritz-hero-jp-main2 .rb-line{
display: block;
line-height: 1.18;
} .ritz-hero-jp-main2 .rb-em{
letter-spacing: 0.04em;
} @media (max-width: 768px){
.ritz-hero-jp-main2{
font-size: 32px; line-height: 1.14;
}
.ritz-hero-jp-sub2{
font-size: 14px;
line-height: 1.85;
}
} @media (max-width: 390px){
.ritz-hero-jp-main2{
font-size: 30px;
}
}  .ritz-hero--beauty-top{
position: relative;
} .ritz-hero--beauty-top .ritz-hero-bg img{
opacity: 0.6; } .ritz-hero--beauty-top .ritz-hero-content{
position: relative;
z-index: 10;
width: 100%;
max-width: 1200px;
padding: 0 40px;
box-sizing: border-box;
display: flex;
flex-direction: column;
justify-content: center;
height: 100%;
padding-bottom: 50px;
color: #fff;
text-align: left;
} .ritz-hero--beauty-top .ritz-hero-kicker{
font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo",sans-serif;
font-size: 14px;
letter-spacing: 0.18em;
text-transform: uppercase;
opacity: 0.9;
margin-bottom: 18px;
}
.ritz-hero--beauty-top .ritz-hero-jp-main2{
font-family: "Noto Serif JP","Hiragino Mincho ProN","Yu Mincho","YuMincho","MS PMincho","Times New Roman",serif;
font-weight: 600;
letter-spacing: 0.02em;
font-size: 54px;
line-height: 1.22; margin: 0 0 18px;
}
.ritz-hero--beauty-top .ritz-hero-jp-main2 .rb-line{
display: block;
line-height: 1.22;
}
.ritz-hero--beauty-top .ritz-hero-jp-sub2{
font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo",sans-serif;
font-size: 16px;
line-height: 1.9;
opacity: 0.92;
margin: 0 0 26px;
} .ritz-hero--beauty-top .ritz-hero-cta{
display: flex;
gap: 14px;
flex-wrap: wrap;
align-items: center;
}
.ritz-hero--beauty-top .ritz-cta-btn{
display: inline-flex;
align-items: center;
justify-content: center;
min-height: 54px;
padding: 14px 22px;
border-radius: 999px;
font-size: 16px;
font-weight: 600;
text-decoration: none;
transition: transform .15s ease, opacity .15s ease;
font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo",sans-serif;
}
.ritz-hero--beauty-top .ritz-cta-btn:hover{
transform: translateY(-1px);
opacity: 0.95;
}
.ritz-hero--beauty-top .ritz-cta-btn.is-primary{
background: #ffffff;
color: #111;
border: 1px solid rgba(255,255,255,0.9);
}
.ritz-hero--beauty-top .ritz-cta-btn.is-outline{
background: transparent;
color: #fff;
border: 1px solid rgba(255,255,255,0.65);
}
.ritz-hero--beauty-top .ritz-hero-note{
margin-top: 16px;
font-size: 12px;
opacity: 0.75;
font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo",sans-serif;
}
@media (max-width: 768px){
.ritz-hero--beauty-top{
height: auto;
min-height: auto;
padding-top: calc(env(safe-area-inset-top) + 20px);
padding-bottom: 20px;
}
.ritz-hero--beauty-top .ritz-hero-content{
padding: 0 16px;
text-align: center;
display: block;
height: auto;
padding-bottom: 0;
}
.ritz-hero--beauty-top .ritz-hero-text-group{
max-width: 100%;
margin: 0 auto;
}
.ritz-hero--beauty-top .ritz-hero-kicker{
margin: 0 0 10px;
font-size: 12px;
letter-spacing: 0.14em;
}
.ritz-hero--beauty-top .ritz-hero-jp-main2{
font-size: 32px;
line-height: 1.24;
margin-bottom: 12px;
}
.ritz-hero--beauty-top .ritz-hero-jp-main2 .rb-line.rb-em{
white-space: nowrap;
}
.ritz-hero--beauty-top .ritz-hero-jp-sub2{
font-size: 13px;
line-height: 1.75;
margin-bottom: 14px;
}
.ritz-hero--beauty-top .ritz-hero-opening{
margin: 0 0 16px;
}
.ritz-hero--beauty-top .ritz-hero-opening .date{
font-size: 20px;
}
.ritz-hero--beauty-top .ritz-hero-opening .date strong{
font-size: 24px;
}
.ritz-hero--beauty-top .ritz-hero-opening .place{
font-size: 13px;
line-height: 1.6;
}
.ritz-hero--beauty-top .ritz-hero-cta{
flex-direction: column;
gap: 10px;
}
.ritz-hero--beauty-top .ritz-cta-btn{
width: 100%;
max-width: 100%;
min-height: 56px;
font-size: 16px;
}
.ritz-hero--beauty-top .ritz-hero-note{
margin-top: 12px;
margin-bottom: 0;
font-size: 11px;
}
} @media (max-width: 390px){
.ritz-hero--beauty-top .ritz-hero-jp-main2{
font-size: 29px;
}
.ritz-hero--beauty-top .ritz-hero-jp-sub2{
font-size: 12.5px;
}
.ritz-hero--beauty-top .ritz-hero-opening .date{
font-size: 18px;
}
.ritz-hero--beauty-top .ritz-hero-opening .date strong{
font-size: 22px;
}
.ritz-hero--beauty-top .ritz-hero-opening .place{
font-size: 12px;
}
} .ritz-hero {
position: relative;
}
.ritz-hero-bg img {
opacity: 0.48 !important;
filter: brightness(0.78);
}
.ritz-hero-overlay {
position: absolute;
inset: 0;
background: rgba(0, 0, 0, 0.24);
z-index: 2;
pointer-events: none;
}
.ritz-hero-content {
position: relative;
z-index: 10;
} .ritz-hero-monitor-badge {
position: absolute;
right: clamp(42px, 7vw, 120px);
bottom: 18px;
z-index: 12;
width: 920px;
transform: scale(0.36);
transform-origin: right bottom;
}
.ritz-hero-monitor-badge .ritz-monitor-promo {
padding: 0 !important;
margin: 0 !important;
background: transparent !important;
}
.ritz-hero-monitor-badge .ritz-container {
width: 100% !important;
padding: 0 !important;
margin: 0 !important;
}
.ritz-hero-monitor-badge .rmb-link {
margin: 0 !important;
box-shadow: 0 10px 24px rgba(0,0,0,0.34);
} @media (max-width: 1400px) {
.ritz-hero-monitor-badge {
right: 28px;
bottom: 14px;
width: 860px;
transform: scale(0.34);
}
} @media (max-width: 980px) {
.ritz-hero-monitor-badge {
right: 18px;
bottom: 12px;
width: 720px;
transform: scale(0.30);
}
} @media (max-width: 768px) {
.ritz-hero-monitor-badge {
position: static;
right: auto;
bottom: auto;
width: 100%;
max-width: 320px;
transform: none;
margin: 14px auto 0;
}
.ritz-hero-monitor-badge .rmb-link {
box-shadow: 0 8px 18px rgba(0,0,0,0.28);
}
} @media (max-width: 390px) {
.ritz-hero-monitor-badge {
max-width: 280px;
margin-top: 12px;
}
} .ritz-hero--beauty-top .ritz-hero-opening{
margin: 0 0 22px;
color: #fff;
font-family: "Noto Serif JP","Hiragino Mincho ProN","Yu Mincho","YuMincho","MS PMincho","Times New Roman",serif;
line-height: 1.5;
text-shadow: 0 2px 10px rgba(0,0,0,0.28);
}
.ritz-hero--beauty-top .ritz-hero-opening .date{
display: block;
font-size: 28px;
font-weight: 600;
letter-spacing: 0.04em;
}
.ritz-hero--beauty-top .ritz-hero-opening .date strong{
font-size: 34px;
font-weight: 700;
margin-left: 0.18em;
}
.ritz-hero--beauty-top .ritz-hero-opening .place{
display: block;
margin-top: 4px;
font-size: 16px;
font-weight: 500;
letter-spacing: 0.03em;
opacity: 0.95;
}  .front-view .fv-inner,
.front-view .front-view__inner,
.fv .fv-inner,
.fv .front-view__inner {
position: relative;
} .fv-openbox {
position: absolute;
top: 50%;
right: clamp(16px, 2vw, 40px);
transform: translateY(-50%);
z-index: 3;
text-align: left;
pointer-events: none;
}
.fv-openbox__inner {
pointer-events: none;
font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
color: #fff;
}
.fv-openbox__date {
font-size: clamp(18px, 2.2vw, 30px);
letter-spacing: 0.06em;
line-height: 1.15;
font-weight: 600;
white-space: nowrap;
}
.fv-openbox__date span {
font-weight: 800; }
.fv-openbox__place {
margin-top: 8px;
font-size: clamp(12px, 1.2vw, 16px);
letter-spacing: 0.04em;
opacity: 0.95;
white-space: nowrap;
} .front-view .fv-copy,
.front-view .front-view__copy,
.fv .fv-copy,
.fv .front-view__copy {
max-width: 720px;
padding-right: clamp(220px, 22vw, 420px);
} .front-view .fv-desc,
.front-view .front-view__desc,
.fv .fv-desc,
.fv .front-view__desc {
line-height: 1.85;
}  .fv-case-banner,
.fv-floating-banner,
.case-model-banner,
.fv-banner {
position: absolute;
right: clamp(16px, 2vw, 40px);
bottom: clamp(16px, 2vw, 40px);
z-index: 4;
width: min(460px, 30vw); max-width: 460px;
} @media (max-width: 1700px) {
.fv-case-banner,
.fv-floating-banner,
.case-model-banner,
.fv-banner {
right: 24px;
}
} @media (max-width: 1024px) { .fv-openbox {
position: static;
transform: none;
margin-top: 14px;
text-align: center;
}
.fv-openbox__date,
.fv-openbox__place {
white-space: normal;
} .front-view .fv-copy,
.front-view .front-view__copy,
.fv .fv-copy,
.fv .front-view__copy {
padding-right: 0;
max-width: 92vw;
} .fv-case-banner,
.fv-floating-banner,
.case-model-banner,
.fv-banner {
position: static;
width: min(520px, 92vw);
max-width: 520px;
margin: 14px auto 0;
}
}
@media (max-width: 768px) { .front-view,
.fv {
padding-top: 10px;
} .front-view .fv-subtitle,
.front-view .front-view__subtitle,
.fv .fv-subtitle,
.fv .front-view__subtitle {
margin-top: 6px;
} .front-view .fv-buttons,
.front-view .front-view__buttons,
.fv .fv-buttons,
.fv .front-view__buttons {
display: grid;
grid-template-columns: 1fr;
gap: 12px;
width: min(560px, 92vw);
margin: 16px auto 0;
}
.front-view .fv-buttons a,
.front-view .front-view__buttons a,
.fv .fv-buttons a,
.fv .front-view__buttons a {
width: 100%;
box-sizing: border-box;
padding: 18px 18px;
font-size: 16px;
}
}  .ritz-hero--beauty-top {
position: relative;
overflow: hidden;
}
.ritz-hero--beauty-top .pc-only {
display: inline;
}
.ritz-hero--beauty-top .ritz-hero-content {
max-width: 1360px;
padding-left: 56px;
padding-right: 56px;
padding-bottom: 42px;
}
.ritz-hero--beauty-top .ritz-hero-text-group {
width: 100%;
max-width: 100%;
} .ritz-hero--beauty-top .ritz-hero-bg img {
opacity: 0.46 !important;
filter: brightness(0.72);
}
.ritz-hero--beauty-top .ritz-hero-overlay {
background: rgba(0, 0, 0, 0.30);
} @media (min-width: 1200px) {
.ritz-hero--beauty-top {
min-height: 760px;
}
.ritz-hero--beauty-top .ritz-hero-content {
display: flex;
flex-direction: column;
justify-content: center;
}
.ritz-hero--beauty-top .ritz-hero-mainrow {
display: grid;
grid-template-columns: minmax(0, 620px) minmax(320px, 460px);
column-gap: 90px;
align-items: center;
width: 100%;
max-width: 1180px;
}
.ritz-hero--beauty-top .ritz-hero-copycol {
max-width: 620px;
}
.ritz-hero--beauty-top .ritz-hero-sidecol {
display: flex;
align-items: center;
justify-content: flex-start;
}
.ritz-hero--beauty-top .ritz-hero-kicker {
margin: 0 0 18px;
font-size: 15px;
letter-spacing: 0.14em;
line-height: 1.4;
}
.ritz-hero--beauty-top .ritz-hero-jp-main2 {
margin: 0 0 22px;
font-size: 72px;
line-height: 1.16;
letter-spacing: 0.01em;
}
.ritz-hero--beauty-top .ritz-hero-jp-main2 .rb-line {
display: block;
}
.ritz-hero--beauty-top .ritz-hero-jp-sub2 {
max-width: 620px;
margin: 0 0 30px;
font-size: 17px;
line-height: 1.9;
}
.ritz-hero--beauty-top .ritz-hero-opening {
margin: 0;
text-align: left;
}
.ritz-hero--beauty-top .ritz-hero-opening .date {
display: block;
margin: 0 0 12px;
font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
font-size: 34px;
line-height: 1.2;
font-weight: 600;
letter-spacing: 0.03em;
white-space: nowrap;
}
.ritz-hero--beauty-top .ritz-hero-opening .date strong {
font-weight: 700;
margin-left: 0.2em;
}
.ritz-hero--beauty-top .ritz-hero-opening .place {
display: block;
font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
font-size: 16px;
line-height: 1.8;
letter-spacing: 0.04em;
white-space: nowrap;
}
.ritz-hero--beauty-top .ritz-hero-cta {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 14px;
margin-top: 0;
}
.ritz-hero--beauty-top .ritz-cta-btn {
min-width: 170px;
min-height: 58px;
padding: 15px 24px;
font-size: 16px;
box-sizing: border-box;
}
.ritz-hero--beauty-top .ritz-hero-note {
margin-top: 14px;
font-size: 12px;
line-height: 1.6;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge {
position: absolute;
right: 36px;
bottom: 34px;
z-index: 12;
width: clamp(420px, 29vw, 560px);
max-width: 560px;
transform: none !important;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .ritz-monitor-promo {
padding: 0 !important;
margin: 0 !important;
background: transparent !important;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .ritz-container {
width: 100% !important;
max-width: none !important;
padding: 0 !important;
margin: 0 !important;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-link {
width: 100% !important;
max-width: none !important;
height: auto !important;
min-height: 0 !important;
aspect-ratio: 2.45 / 1;
margin: 0 !important;
border-radius: 14px;
box-shadow: 0 12px 28px rgba(0, 0, 0, 0.34);
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-image {
left: 12px;
width: 39%;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-image img {
height: 96%;
max-width: 100%;
object-fit: contain;
object-position: bottom left;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-content {
width: 58%;
padding-right: 18px;
align-items: center;
text-align: center;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-sub {
font-size: 13px;
margin-bottom: 6px;
line-height: 1.45;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-title {
font-size: 34px;
margin-bottom: 10px;
line-height: 1.1;
white-space: nowrap;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-band {
width: 100%;
margin-right: 0;
padding: 8px 10px;
margin-bottom: 10px;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-offer-text {
font-size: 18px;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-offer-price {
font-size: 48px;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-period {
font-size: 11px;
line-height: 1.45;
}
} @media (min-width: 768px) and (max-width: 1199px) {
.ritz-hero--beauty-top {
height: auto;
min-height: auto;
padding-top: 42px;
padding-bottom: 46px;
}
.ritz-hero--beauty-top .pc-only {
display: none;
}
.ritz-hero--beauty-top .ritz-hero-content {
height: auto;
max-width: 860px;
padding-left: 34px;
padding-right: 34px;
padding-bottom: 0;
}
.ritz-hero--beauty-top .ritz-hero-mainrow {
display: block;
}
.ritz-hero--beauty-top .ritz-hero-copycol,
.ritz-hero--beauty-top .ritz-hero-sidecol,
.ritz-hero--beauty-top .ritz-hero-text-group {
width: 100%;
max-width: 100%;
text-align: center;
}
.ritz-hero--beauty-top .ritz-hero-kicker {
margin: 0 0 14px;
font-size: 13px;
letter-spacing: 0.12em;
line-height: 1.4;
text-align: center;
}
.ritz-hero--beauty-top .ritz-hero-jp-main2 {
margin: 0 0 18px;
font-size: clamp(54px, 7vw, 72px);
line-height: 1.2;
letter-spacing: 0.01em;
text-align: center;
}
.ritz-hero--beauty-top .ritz-hero-jp-main2 .rb-line {
display: block;
}
.ritz-hero--beauty-top .ritz-hero-jp-sub2 {
max-width: 34em;
margin: 0 auto 20px;
font-size: 16px;
line-height: 1.8;
text-align: center;
text-wrap: balance;
}
.ritz-hero--beauty-top .ritz-hero-sidecol {
margin-top: 0;
}
.ritz-hero--beauty-top .ritz-hero-opening {
margin: 0 auto 22px;
text-align: center;
}
.ritz-hero--beauty-top .ritz-hero-opening .date {
display: block;
margin: 0 0 8px;
font-size: clamp(26px, 4.4vw, 38px);
line-height: 1.2;
white-space: nowrap;
}
.ritz-hero--beauty-top .ritz-hero-opening .place {
display: block;
font-size: 15px;
line-height: 1.7;
}
.ritz-hero--beauty-top .ritz-hero-cta {
display: flex;
flex-direction: column;
align-items: center;
gap: 12px;
margin-top: 0;
}
.ritz-hero--beauty-top .ritz-cta-btn {
width: min(620px, 100%);
max-width: 620px;
min-height: 60px;
font-size: 18px;
box-sizing: border-box;
}
.ritz-hero--beauty-top .ritz-hero-note {
margin-top: 14px;
text-align: center;
font-size: 13px;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge {
position: static;
width: min(560px, 100%);
max-width: 560px;
margin: 26px auto 0;
transform: none !important;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .ritz-monitor-promo {
padding: 0 !important;
margin: 0 !important;
background: transparent !important;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .ritz-container {
width: 100% !important;
max-width: none !important;
padding: 0 !important;
margin: 0 !important;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-link {
width: 100% !important;
max-width: none !important;
height: auto !important;
min-height: 0 !important;
aspect-ratio: 2.2 / 1;
margin: 0 !important;
border-radius: 14px;
box-shadow: 0 12px 26px rgba(0, 0, 0, 0.28);
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-image {
left: 8px;
width: 41%;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-image img {
height: 95%;
max-width: 100%;
object-fit: contain;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-content {
width: 57%;
padding-right: 14px;
align-items: center;
text-align: center;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-sub {
font-size: 14px;
margin-bottom: 6px;
line-height: 1.45;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-title {
font-size: 30px;
line-height: 1.1;
margin-bottom: 10px;
white-space: nowrap;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-band {
width: 100%;
margin-right: 0;
padding: 8px 10px;
margin-bottom: 10px;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-offer-text {
font-size: 16px;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-offer-price {
font-size: 42px;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-period {
font-size: 11px;
line-height: 1.45;
}
} @media (max-width: 767px) {
.ritz-hero--beauty-top {
height: auto;
min-height: auto;
padding-top: calc(env(safe-area-inset-top) + 22px);
padding-bottom: 28px;
}
.ritz-hero--beauty-top .pc-only {
display: none;
}
.ritz-hero--beauty-top .ritz-hero-content {
display: block;
height: auto;
max-width: 100%;
padding-left: 16px;
padding-right: 16px;
padding-bottom: 0;
text-align: center;
}
.ritz-hero--beauty-top .ritz-hero-mainrow {
display: block;
}
.ritz-hero--beauty-top .ritz-hero-copycol,
.ritz-hero--beauty-top .ritz-hero-sidecol,
.ritz-hero--beauty-top .ritz-hero-text-group {
width: 100%;
max-width: 100%;
text-align: center;
}
.ritz-hero--beauty-top .ritz-hero-kicker {
margin: 0 0 12px;
font-size: 12px;
letter-spacing: 0.12em;
line-height: 1.45;
}
.ritz-hero--beauty-top .ritz-hero-jp-main2 {
margin: 0 0 14px;
font-size: clamp(30px, 10.2vw, 48px);
line-height: 1.22;
letter-spacing: 0.01em;
}
.ritz-hero--beauty-top .ritz-hero-jp-main2 .rb-line {
display: block;
}
.ritz-hero--beauty-top .ritz-hero-jp-sub2 {
max-width: 28em;
margin: 0 auto 16px;
font-size: 13px;
line-height: 1.85;
text-align: center;
text-wrap: balance;
word-break: keep-all;
overflow-wrap: normal;
}
.ritz-hero--beauty-top .ritz-hero-opening {
margin: 0 auto 18px;
text-align: center;
}
.ritz-hero--beauty-top .ritz-hero-opening .date {
display: block;
margin: 0 0 6px;
font-size: clamp(24px, 7vw, 34px);
line-height: 1.2;
white-space: normal;
}
.ritz-hero--beauty-top .ritz-hero-opening .place {
display: block;
font-size: 12px;
line-height: 1.7;
}
.ritz-hero--beauty-top .ritz-hero-cta {
display: flex;
flex-direction: column;
align-items: center;
gap: 12px;
}
.ritz-hero--beauty-top .ritz-cta-btn {
width: 100%;
max-width: 100%;
min-height: 58px;
padding: 14px 18px;
font-size: 16px;
box-sizing: border-box;
}
.ritz-hero--beauty-top .ritz-hero-note {
margin-top: 12px;
font-size: 12px;
line-height: 1.6;
text-align: center;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge {
position: static;
width: 100%;
max-width: 100%;
margin: 18px auto 0;
transform: none !important;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .ritz-monitor-promo {
padding: 0 !important;
margin: 0 !important;
background: transparent !important;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .ritz-container {
width: 100% !important;
max-width: none !important;
padding: 0 !important;
margin: 0 !important;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-link {
width: 100% !important;
max-width: none !important;
height: auto !important;
min-height: 0 !important;
aspect-ratio: 2.05 / 1;
margin: 0 !important;
border-radius: 12px;
box-shadow: 0 10px 24px rgba(0, 0, 0, 0.28);
background: #f5f0e6;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-bg-image img {
object-fit: cover;
object-position: center;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-black-overlay {
background: linear-gradient(
90deg,
rgba(0,0,0,0) 0%,
rgba(0,0,0,0.08) 48%,
rgba(0,0,0,0.56) 72%,
rgba(0,0,0,0.88) 100%
);
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-inner {
padding: 0;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-image {
left: 0;
bottom: 0;
width: 44%;
height: 100%;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-image img {
height: 94%;
width: auto;
max-width: 100%;
object-fit: contain;
object-position: bottom left;
filter: drop-shadow(2px 4px 8px rgba(0,0,0,0.22));
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-content {
width: 56%;
margin-left: auto;
padding-right: 10px;
padding-left: 0;
height: 100%;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
text-align: center;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-sub {
width: 100%;
font-size: 10px;
line-height: 1.45;
margin-bottom: 6px;
text-align: center;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-title {
font-size: 24px;
line-height: 1.08;
margin-bottom: 8px;
white-space: normal;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-band {
width: 100%;
margin-right: 0;
padding: 6px 8px;
margin-bottom: 8px;
background: linear-gradient(
90deg,
rgba(0,0,0,0.05) 0%,
rgba(0,0,0,0.38) 45%,
rgba(0,0,0,0.88) 100%
);
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-band-content {
gap: 4px;
padding-right: 0;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-offer-text {
font-size: 12px;
line-height: 1.2;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-offer-price {
font-size: 32px;
line-height: 1;
margin-left: 0;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-period {
font-size: 9px;
line-height: 1.35;
text-align: center;
}
} @media (max-width: 390px) {
.ritz-hero--beauty-top .ritz-hero-jp-main2 {
font-size: 28px;
}
.ritz-hero--beauty-top .ritz-hero-jp-sub2 {
font-size: 12px;
}
.ritz-hero--beauty-top .ritz-hero-opening .date {
font-size: 22px;
}
.ritz-hero--beauty-top .ritz-hero-opening .place {
font-size: 11px;
}
.ritz-hero--beauty-top .ritz-cta-btn {
min-height: 56px;
font-size: 15px;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-link {
aspect-ratio: 2.0 / 1;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-title {
font-size: 21px;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge .rmb-offer-price {
font-size: 28px;
}
}  @media (min-width: 1200px) {
.ritz-hero--beauty-top .ritz-hero-sidecol {
justify-content: flex-end;
text-align: right;
padding-right: 36px; }
.ritz-hero--beauty-top .ritz-hero-opening {
text-align: right;
}
.ritz-hero--beauty-top .ritz-hero-opening .date {
font-size: 40px;
line-height: 1.18;
}
.ritz-hero--beauty-top .ritz-hero-opening .place {
font-size: 18px;
line-height: 1.75;
}
} @media (min-width: 768px) and (max-width: 1199px) {
.ritz-hero--beauty-top .ritz-hero-copycol {
transform: translateX(18px);
}
} @media (max-width: 767px) {
.ritz-hero--beauty-top .ritz-hero-copycol {
transform: translateX(10px);
}
} @media (min-width: 1200px) {
.ritz-hero--beauty-top .ritz-hero-sidecol {
justify-content: flex-start;
text-align: left;
padding-left: 34px; padding-right: 0;
}
.ritz-hero--beauty-top .ritz-hero-opening {
text-align: left;
}
.ritz-hero--beauty-top .ritz-hero-opening .date {
font-size: 42px;
line-height: 1.18;
}
.ritz-hero--beauty-top .ritz-hero-opening .place {
font-size: 19px;
line-height: 1.75;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge {
right: 32px;
}
} @media (min-width: 1025px) { .ritz-hero {
position: relative;
} .ritz-hero-subcopy {
position: absolute;
   right: 40px;               top: 120px; max-width: 560px; width: min(560px, 40vw); text-align: left; z-index: 3;
} .ritz-hero-date {
font-size: clamp(34px, 2.4vw, 44px);
line-height: 1.15;
letter-spacing: 0.04em;
margin: 0 0 10px 0;
text-align: left;
} .ritz-hero-location {
font-size: 16px;
line-height: 1.6;
letter-spacing: 0.06em;
margin: 0;
text-align: left;
}
} @media (min-width: 1025px) {
.ritz-hero-monitor-badge {
right: auto !important;
bottom: 80px !important;
left: calc(100% - 0px - min(560px, 40vw)) !important;
}
}  .ritz-hero--beauty-top .hero-sub-tail{ white-space: nowrap; } .ritz-hero--beauty-top br.pc-only{ display: none; }
@media (min-width: 1200px){
.ritz-hero--beauty-top br.pc-only{ display: block; }
} @media (min-width: 1200px){ .ritz-hero--beauty-top .ritz-hero-content{
max-width: clamp(1200px, 70vw, 1660px) !important;
margin-left: auto !important;
margin-right: auto !important;
padding-left: clamp(24px, 4vw, 72px) !important;
padding-right: clamp(24px, 4vw, 72px) !important;
} .ritz-hero--beauty-top .ritz-hero-mainrow{
display: grid !important;
grid-template-columns: minmax(0, 720px) minmax(0, 620px) !important;
column-gap: clamp(140px, 8vw, 340px) !important;
align-items: center !important;
}
.ritz-hero--beauty-top .ritz-hero-copycol{ min-width: 0; }
.ritz-hero--beauty-top .ritz-hero-sidecol{
display: flex !important;
flex-direction: column !important;
align-items: flex-start !important;
justify-content: center !important;
min-width: 0;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge--sp{ display: none !important; } .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc{
display: block !important;
margin-top: 22px !important;
width: clamp(460px, 24vw, 560px) !important;
max-width: 560px !important;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .ritz-monitor-promo,
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .ritz-container{
padding: 0 !important;
margin: 0 !important;
background: transparent !important;
max-width: none !important;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .rmb-link{
width: 100% !important;
max-width: none !important;
height: auto !important;
aspect-ratio: 920 / 320;
border-radius: 16px !important;
overflow: hidden;
} .ritz-hero--beauty-top .ritz-cta-btn{
min-width: 180px !important;
padding: 15px 30px !important;
white-space: nowrap;
}
} @media (min-width: 768px) and (max-width: 1199px){
.ritz-hero--beauty-top .ritz-hero-mainrow{
display: block !important;
}
.ritz-hero--beauty-top .ritz-hero-sidecol{
margin-top: 18px !important;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc{ display: none !important; }
.ritz-hero--beauty-top .ritz-hero-monitor-badge--sp{
display: block !important;
margin-top: 14px !important;
}
} @media (max-width: 767px){
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc{ display: none !important; }
.ritz-hero--beauty-top .ritz-hero-monitor-badge--sp{
display: block !important;
margin-top: 14px !important;
}
} @media (min-width: 1200px){ .ritz-hero--beauty-top .ritz-hero-content{
max-width: 1600px !important;
} .ritz-hero--beauty-top .ritz-hero-mainrow{
grid-template-columns: minmax(0, 680px) minmax(0, 520px) !important;
column-gap: clamp(180px, 10vw, 360px) !important;
max-width: 1600px !important;
} .ritz-hero--beauty-top .ritz-hero-jp-main2 .rb-line{
white-space: nowrap !important;
} .ritz-hero--beauty-top .hero-sub-tail{
white-space: nowrap !important;
} .ritz-hero--beauty-top .ritz-hero-sidecol{
display: flex !important;
flex-direction: column !important;
align-items: flex-end !important;
justify-content: flex-start !important;
text-align: right !important;
}
.ritz-hero--beauty-top .ritz-hero-opening{
width: 100%;
text-align: right !important;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc{
position: relative !important;
right: auto !important;
bottom: auto !important;
transform: none !important;
align-self: flex-end !important;
margin-top: 18px !important;  width: clamp(360px, 22vw, 460px) !important;
max-width: 460px !important;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge--sp{
display: none !important;
}
} @media (max-width: 1199px){
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc{ display:none !important; }
.ritz-hero--beauty-top .ritz-hero-monitor-badge--sp{ display:block !important; }
}  .ritz-hero--beauty-top { position: relative; overflow: hidden; }
.ritz-hero--beauty-top .hero-sub-tail { white-space: nowrap; }
.ritz-hero--beauty-top .pc-only { display: inline; } .ritz-hero--beauty-top br.pc-only { display: inline; }  @media (min-width: 1200px) { .ritz-hero--beauty-top .ritz-hero-content{
max-width: 1440px;
padding-left: 64px;
padding-right: 64px;
padding-bottom: 44px;
margin: 0 auto;
} .ritz-hero--beauty-top .ritz-hero-mainrow{
display: grid;
grid-template-columns: minmax(0, 720px) minmax(0, 520px);
column-gap: clamp(140px, 9vw, 320px);
align-items: center;
width: 100%;
margin: 0 auto;
} .ritz-hero--beauty-top .ritz-hero-jp-main2 .rb-line{
display: block;
white-space: nowrap;
} .ritz-hero--beauty-top .ritz-hero-sidecol{
display: flex;
flex-direction: column;
align-items: flex-start; text-align: left;
justify-content: flex-start;
width: 100%;
}
.ritz-hero--beauty-top .ritz-hero-opening{
text-align: left;
width: 100%;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc{ display: block; }
.ritz-hero--beauty-top .ritz-hero-monitor-badge--sp{ display: none; } .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc{
width: clamp(360px, 22vw, 480px);
margin-top: 18px;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .ritz-monitor-promo{
padding: 0 !important;
margin: 0 !important;
background: transparent !important;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .ritz-container{
width: 100% !important;
max-width: none !important;
padding: 0 !important;
margin: 0 !important;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .rmb-link{
width: 100% !important;
max-width: none !important;
height: clamp(190px, 12vw, 230px) !important;
border-radius: 14px;
overflow: hidden;
box-shadow: 0 12px 28px rgba(0,0,0,0.34);
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .rmb-image{
left: 12px;
width: clamp(210px, 14vw, 250px);
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .rmb-content{
width: 58%;
padding-right: 16px;
align-items: center;
text-align: center;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .rmb-sub{
font-size: 13px;
margin-bottom: 6px;
line-height: 1.45;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .rmb-title{
font-size: clamp(28px, 2.2vw, 34px);
margin-bottom: 10px;
line-height: 1.1;
white-space: nowrap;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .rmb-band{
width: 100%;
padding: 8px 10px;
margin-bottom: 10px;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .rmb-offer-text{ font-size: 18px; }
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .rmb-offer-price{ font-size: clamp(40px, 2.6vw, 48px); }
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .rmb-period{ font-size: 11px; line-height: 1.45; }
} @media (min-width: 768px) and (max-width: 1199px){
.ritz-hero--beauty-top .pc-only,
.ritz-hero--beauty-top br.pc-only{ display: none; } .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc{ display: none; }
.ritz-hero--beauty-top .ritz-hero-monitor-badge--sp{ display: block; } .ritz-hero--beauty-top .ritz-hero-monitor-badge--sp{
position: static;
width: min(560px, 100%);
margin: 24px auto 0;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge--sp .ritz-monitor-promo{
padding: 0 !important; margin: 0 !important; background: transparent !important;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge--sp .ritz-container{
width: 100% !important; max-width: none !important; padding: 0 !important; margin: 0 !important;
}
} @media (max-width: 767px){
.ritz-hero--beauty-top .pc-only,
.ritz-hero--beauty-top br.pc-only{ display: none; } .ritz-hero--beauty-top .ritz-hero-jp-sub2{ display: none !important; } .ritz-hero--beauty-top .ritz-hero-opening .date,
.ritz-hero--beauty-top .ritz-hero-opening .place{
font-family: "Noto Serif JP","Hiragino Mincho ProN","Yu Mincho",serif !important;
}
.ritz-hero--beauty-top .ritz-hero-opening .date{
font-size: clamp(30px, 8.8vw, 44px);
line-height: 1.2;
}
.ritz-hero--beauty-top .ritz-hero-opening .place{
font-size: 15px;
line-height: 1.7;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc{ display: none; }
.ritz-hero--beauty-top .ritz-hero-monitor-badge--sp{ display: block; }
.ritz-hero--beauty-top .ritz-hero-monitor-badge--sp{
position: static;
width: min(560px, 100%);
margin: 18px auto 0;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge--sp .ritz-monitor-promo{
padding: 0 !important; margin: 0 !important; background: transparent !important;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge--sp .ritz-container{
width: 100% !important; max-width: none !important; padding: 0 !important; margin: 0 !important;
}
}  @media (max-width: 767px){
.ritz-hero--beauty-top .ritz-hero-opening .place-strong{
font-weight: 800 !important;
}
} @media (max-width: 1200px){
.ritz-hero--beauty-top .ritz-hero-mainrow{
display: block !important;
}
.ritz-hero--beauty-top .ritz-hero-sidecol{
margin-top: 18px !important;
align-items: flex-start !important;
text-align: left !important;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc{
display: none !important;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge--sp{
display: block !important;
position: static !important;
transform: none !important;
width: 100% !important;
max-width: 680px !important;
margin: 16px auto 0 !important;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge{
right: auto !important;
bottom: auto !important;
}
} @media (min-width: 1201px){ .ritz-hero--beauty-top .ritz-hero-content{
max-width: min(1600px, calc(100vw - 80px)) !important;
padding: 0 40px !important;
} .ritz-hero--beauty-top .ritz-hero-mainrow{
display: grid !important;
grid-template-columns: minmax(0, 720px) minmax(0, 560px) !important;
column-gap: clamp(200px, 10vw, 420px) !important; align-items: center !important;
} .ritz-hero--beauty-top .ritz-hero-jp-main2 .rb-nowrap{
white-space: nowrap !important;
} .ritz-hero--beauty-top .ritz-hero-sidecol{
display: flex !important;
flex-direction: column !important;
align-items: flex-start !important;
justify-content: center !important;
text-align: left !important;
}
.ritz-hero--beauty-top .ritz-hero-opening{
width: 100% !important;
text-align: left !important;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge{
position: relative !important;
right: auto !important;
bottom: auto !important;
transform: none !important;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge--sp{
display: none !important;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc{
--badge-w: clamp(360px, 22vw, 460px);
--badge-scale: calc(var(--badge-w) / 1100);
width: var(--badge-w) !important;
height: calc(380px * var(--badge-scale)) !important;
position: relative !important;
margin-top: 18px !important; align-self: flex-start !important;
overflow: visible !important;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .ritz-monitor-promo,
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .ritz-container{
padding: 0 !important;
margin: 0 !important;
background: transparent !important;
max-width: none !important;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .rmb-link{
position: absolute !important;
top: 0 !important;
left: 0 !important;
width: 1100px !important;
height: 380px !important;
max-width: none !important;
margin: 0 !important;
transform: scale(var(--badge-scale)) !important;
transform-origin: left top !important;
border-radius: 16px !important;
overflow: hidden !important;
}
} @media (min-width: 1201px){
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc{ --pc-badge-w: clamp(320px, 18vw, 420px)
--pc-badge-scale: calc(var(--pc-badge-w) / 1100);
width: var(--pc-badge-w) !important;
height: calc(380px * var(--pc-badge-scale)) !important;
position: relative !important;
overflow: visible !important;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .ritz-monitor-promo,
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .ritz-container{
padding: 0 !important;
margin: 0 !important;
background: transparent !important;
max-width: none !important;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .rmb-link{
position: absolute !important;
top: 0 !important;
left: 0 !important;
width: 1100px !important;
height: 380px !important;
max-width: none !important;
transform: scale(var(--pc-badge-scale)) !important;
transform-origin: left top !important;
border-radius: 16px !important;
overflow: hidden !important;
}
} @media (min-width: 1201px){ .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc{
width: 420px !important; height: 145px !important; position: relative !important;
overflow: visible !important;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .ritz-monitor-promo,
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .ritz-container{
padding: 0 !important;
margin: 0 !important;
background: transparent !important;
max-width: none !important;
} .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .rmb-link{
position: absolute !important;
top: 0 !important;
left: 0 !important;
width: 1100px !important;
height: 380px !important;
max-width: none !important;
transform: scale(0.381818) !important; transform-origin: left top !important;
border-radius: 16px !important;
overflow: hidden !important;
}
} @media (min-width: 1201px){ .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .rmb-link{
transform: scale(0.381818) scale(1.16) !important; } .ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .rmb-sub{
font-size: 20px !important;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .rmb-title{
font-size: 54px !important;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .rmb-offer-text{
font-size: 28px !important;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .rmb-offer-price{
font-size: 74px !important;
}
.ritz-hero--beauty-top .ritz-hero-monitor-badge--pc .rmb-period{
font-size: 18px !important;
}
} .bt-sidecta {
position: fixed;
right: 0;
top: 50%;
z-index: 90;
display: flex;
flex-direction: column;
transform: translateY(-50%);
}
.bt-sidecta__btn {
display: flex;
flex-direction: column;
align-items: center;
justify-content: space-between;
width: 90px;
height: 90px;
padding: 18px 0 12px;
color: #fff !important;
font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
font-size: 13px;
font-weight: 500;
letter-spacing: .08em;
text-align: center;
text-decoration: none;
}
.bt-sidecta__btn svg {
width: 30px;
height: 30px;
flex-shrink: 0;
}
.bt-sidecta__btn--tel { background: #A87762; border-radius: 8px 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; }
#umekita-price-container,
#umekita-price-container .price-header h1,
#umekita-price-container .price-header h2,
#umekita-price-container .price-header span {
font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}
.bt-bottombar { display: none; }
@media (max-width: 768px) {
.bt-sidecta { display: none; }
.bt-bottombar {
position: fixed;
right: 0;
bottom: 0;
left: 0;
z-index: 90;
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
padding-bottom: env(safe-area-inset-bottom);
box-shadow: 0 -5px 16px -8px rgba(0, 0, 0, .35);
}
.bt-bottombar__btn {
min-width: 0;
min-height: clamp(58px, 15vw, 66px);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: clamp(3px, .9vw, 5px);
padding: 6px 2px;
border-right: 1px solid rgba(255, 255, 255, .2);
color: #fff !important;
font-family: "Noto Sans JP", sans-serif;
font-size: clamp(9px, 2.55vw, 11.5px);
font-weight: 500;
letter-spacing: .02em;
line-height: 1.15;
text-align: center;
text-decoration: none;
white-space: nowrap;
overflow: hidden;
}
.bt-bottombar__btn:last-child { border-right: 0; }
.bt-bottombar__btn svg {
width: clamp(18px, 4.8vw, 24px);
height: clamp(18px, 4.8vw, 24px);
flex-shrink: 0;
}
.bt-bottombar__btn--tel { background: #A87762; }
.bt-bottombar__btn--line { background: #62A87C; }
.bt-bottombar__btn--web { background: #6276A8; }
.bt-bottombar__btn--fore { background: #A762A8; }
.bt-bottombar__btn--contact { background: #7F8F76; }
body.is-translated .bt-bottombar__btn,
html.translated-ltr .bt-bottombar__btn,
html.translated-rtl .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-monitor-fab {
bottom: calc(72px + env(safe-area-inset-bottom));
}
}