/* B/C/D 案の共通スタイル（FV内CTA・安心Q&A） */
.top_wrapper .lp_fv{margin-top:6.6rem;margin-bottom:3rem;background:#FBF1EF}
.lp_fv_inner{padding:2.4rem 2rem 2rem;text-align:center}
.lp_fv_lead{display:inline-block;background:#C9958A;color:#fff;font-weight:700;font-size:1.4rem;padding:.4rem 1.2rem;border-radius:2rem;line-height:1.5}
.lp_fv_lead_d{display:block;border-radius:0;text-align:center;font-size:1.5rem;padding:.8rem}
.lp_fv_ttl{font-size:2.6rem;line-height:1.45;font-weight:800;margin:1.4rem 0 1rem;color:#333}
.lp_fv_ttl strong{font-size:5.2rem;color:#C9958A;letter-spacing:-.02em}
.lp_fv_ttl small{font-size:1.6rem}
.lp_fv_note{font-size:1.1rem;color:#666;margin-bottom:1rem;line-height:1.6}
.lp_fv_points{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin-bottom:1.6rem}
.lp_fv_points li{font-size:1.3rem;font-weight:700;border:1px solid #C9958A;color:#C9958A;border-radius:.4rem;padding:.3rem .8rem;background:#fff}
.lp_fv_d img{display:block;width:100%}
.lp_cta{padding:1.6rem 2rem 2rem;text-align:center;background:#FBF1EF}
.lp_cta_note{font-size:1.3rem;font-weight:700;color:#C9958A;margin-bottom:.8rem}
.lp_cta_btns{display:flex;gap:1rem;max-width:50rem;margin:0 auto}
.lp_cta_btns .com_main_btn{flex:1;font-size:1.4rem}
.anshin_block{padding:5rem 0;background:#fff}
.anshin_list{display:grid;gap:1.2rem;margin-top:2.4rem}
.anshin_list li{border:1px solid #F0D3CC;border-radius:1rem;padding:1.6rem;background:#FFFAFA}
.anshin_list b{display:block;font-size:1.7rem;color:#C9958A;margin-bottom:.6rem}
.anshin_list p{font-size:1.4rem;line-height:1.8}
@media (min-width:768px){.lp_fv_ttl{font-size:3.6rem}.lp_fv_ttl strong{font-size:7rem}}
.lp_cta_note{font-size:1.7rem;color:#333}
.lp_cta_note span{display:block;font-size:1.2rem;color:#C9958A;font-weight:700;margin-top:.2rem}
.lp_fv_lead{font-size:1.3rem}
.lp_fv_grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin:1.2rem 0 1rem}
.lp_fv_grid li{position:relative;border-radius:.8rem;overflow:hidden;background:#fff}
.lp_fv_grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.lp_fv_grid span{display:block;font-size:1.25rem;font-weight:700;line-height:1.5;padding:.6rem .4rem;color:#333}
.lp_fv_grid small{display:block;font-size:1rem;color:#888;font-weight:400}
.lp_fv_dd .lp_fv_ttl{font-size:2.2rem}
@media (min-width:768px){.lp_fv_grid{grid-template-columns:repeat(4,1fr)}.lp_fv_dd .lp_fv_ttl{font-size:3.2rem}}

/* ===== 最初の画面に「見出し・説明・実績」を収める（B〜F共通） ===== */
.fv_proof{margin:1.2rem 1.6rem 0;padding:1rem .4rem .8rem;background:#fff;border-radius:1.2rem;box-shadow:0 .2rem 1rem rgba(0,0,0,.06)}
.fv_proof ul{display:grid;grid-template-columns:repeat(3,1fr);text-align:center}
.fv_proof li{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:0 .2rem}
.fv_proof li+li{border-left:1px solid #F0D3CC}
.fv_proof b{font-size:min(1.9rem,5vw);line-height:1.1;color:#4A3340;font-weight:700;letter-spacing:0;white-space:nowrap}
.fv_proof span{font-size:min(1.1rem,2.9vw);line-height:1.35;color:#555;letter-spacing:0}
.fv_proof p{margin-top:.6rem;font-size:.95rem;line-height:1.5;color:#888;text-align:center;word-break:normal}
.kfv_photo{aspect-ratio:auto!important;height:min(40vh,330px)!important;max-height:none!important}
.kfv_en{font-size:3.4rem!important;bottom:1.2rem!important}
.kfv_body{padding-top:1.6rem!important}
.kfv_tag{display:none}
.efv_photo{aspect-ratio:auto!important;height:min(50vh,400px)!important}
.ffv_photo{aspect-ratio:auto!important;height:min(54vh,440px)!important}
.ffv .fv_proof{margin-top:0}
/* 最初の画面に実績まで収める：写真の高さを画面の高さに合わせて控えめに */
.kfv_photo{height:clamp(200px,30vh,280px)!important}
.efv_photo{height:clamp(240px,36vh,320px)!important}
.efv_body{margin-top:-7rem!important}
.ffv_photo{height:clamp(300px,44vh,380px)!important}
/* 背の低いスマホ（高さ760px以下）では写真を低くし、補足の箇条書きは省く */
@media (max-height:760px){.kfv_photo{height:24vh!important}.efv_photo{height:30vh!important}.kfv_facts{display:none!important}}
@media (max-height:760px){.ffv_photo{height:42vh!important}}

/* はじめる前の3つの不安：縦1列のQ&A（質問は1行、答えは読みやすい幅で） */
.anshin_list{grid-template-columns:1fr!important}
.anshin_list li{display:grid;grid-template-columns:2.8rem 1fr;column-gap:1rem;row-gap:.6rem;padding:1.6rem 1.6rem 1.6rem 1.4rem}
.anshin_list b{grid-column:1/-1;display:flex;align-items:center;gap:1rem;margin:0;font-size:1.7rem;line-height:1.4}
.anshin_list b::before{content:"Q";flex:none;display:grid;place-items:center;width:2.8rem;height:2.8rem;border-radius:50%;background:#4A3340;color:#fff;font-size:1.4rem;font-family:"Cormorant Garamond",serif;font-style:italic}
.anshin_list p{grid-column:2;font-size:1.45rem;line-height:1.9}
/* 写真を低くした分、英字は小さく右下に寄せて顔にかからないように */
.kfv_en{font-size:2.8rem!important;left:auto!important;right:1.6rem!important;text-align:right;bottom:1rem!important}

/* 素材写真には「イメージ」の注記 */
.photo_note{position:absolute;left:1rem;top:1rem;z-index:2;font-size:1.1rem;color:#6b5a62;background:rgba(255,255,255,.75);padding:.1rem .6rem;border-radius:.4rem}

/* ===== 作り直し（2026-10-08）：お得＝金色、予約＝コーラル ===== */
:root{--gold-l:#FBF1D2;--gold:#E6C06A;--gold-d:#B8862F;--gold-ink:#4A3216}
/* お得の特典（金色） */
.offer_block{padding:4.8rem 0 4rem;background:linear-gradient(180deg,#FFF9EC,#FFFDF7);text-align:center}
.offer_en{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:1.8rem;letter-spacing:.08em;color:var(--gold-d)}
.offer_ttl{margin:.4rem 0 2.4rem;font-family:"Noto Serif JP",serif;font-weight:700;font-size:2.4rem;line-height:1.5;color:var(--gold-ink)}
.offer_list{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.offer_card{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;min-height:12.4rem;padding:1.4rem .8rem;border-radius:1.2rem;background:linear-gradient(135deg,#FFF4D6 0%,#F3D38A 55%,#E2B65A 100%);box-shadow:0 .4rem 1.4rem rgba(184,134,47,.25);color:var(--gold-ink)}
.offer_card.offer_main{grid-column:1/-1;min-height:13rem;background:linear-gradient(135deg,#FFF1C9 0%,#EFC86E 50%,#C99434 100%)}
.offer_tag{font-size:1.2rem;font-weight:700;letter-spacing:.02em;line-height:1.4}
.offer_main .offer_tag{font-size:1.4rem}
.offer_big{font-size:1.8rem;font-weight:700;line-height:1.2;letter-spacing:0}
.offer_big small{display:block;font-size:1.2rem;font-weight:700;margin-bottom:.2rem}
.offer_big em{font-style:normal;font-size:3.6rem;letter-spacing:-.02em;color:#7A2E4F;margin:0 .1em}
.offer_main .offer_big{font-size:2.4rem}
.offer_main .offer_big em{font-size:6.4rem}
.offer_txt{font-size:2rem;color:#7A2E4F}
.offer_sub{font-size:1.1rem;font-weight:500;line-height:1.4}
.offer_terms{margin-top:1.6rem;text-align:left;background:#fff;border:1px solid #EFD9A6;border-radius:1rem;padding:1rem 1.4rem}
.offer_terms summary{cursor:pointer;font-size:1.3rem;font-weight:700;color:var(--gold-ink);list-style:none;text-align:center}
.offer_terms summary::-webkit-details-marker{display:none}
.offer_terms summary::after{content:"＋";margin-left:.4rem;color:var(--gold-d)}
.offer_terms[open] summary::after{content:"−"}
.offer_terms dl{margin-top:1rem}
.offer_terms dt{font-size:1.25rem;font-weight:700;color:var(--gold-ink);margin-top:.8rem}
.offer_terms dd{font-size:1.15rem;line-height:1.75;color:#555}
/* 金色に光がスッと流れる */
@media (prefers-reduced-motion:no-preference){
  .offer_card::after{content:"";position:absolute;top:0;bottom:0;left:0;width:45%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.7),transparent);transform:translateX(-160%) skewX(-20deg);will-change:transform;animation:goldShine 5.5s ease-in-out infinite;pointer-events:none}
  .offer_card:nth-child(2)::after{animation-delay:.6s}.offer_card:nth-child(3)::after{animation-delay:1.2s}.offer_card:nth-child(4)::after{animation-delay:1.8s}
}
@keyframes goldShine{0%,65%{transform:translateX(-160%) skewX(-20deg)}100%{transform:translateX(300%) skewX(-20deg)}}

/* 選ばれる3つの理由 */
.r3_block{padding:4.8rem 0 4rem;background:#fff}
.r3_list{display:grid;gap:2rem;margin-top:2.4rem}
.r3_item{border-radius:1.2rem;overflow:hidden;background:#FAF4F3;box-shadow:0 .2rem 1rem rgba(0,0,0,.05)}
.r3_img img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.r3_body{padding:1.4rem 1.6rem 1.8rem}
.r3_no{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:2.4rem;line-height:1;color:#4A3340}
.r3_ttl{margin-top:.4rem;font-size:1.8rem;font-weight:700;line-height:1.5}
.r3_txt{margin-top:.6rem;font-size:1.4rem;line-height:1.85}

/* 料金 */
.price_block{padding:4.8rem 0 4rem;background:#FAF4F3}
.price_card{margin-top:2.4rem;background:#fff;border-radius:1.6rem;padding:2.4rem 1.8rem;text-align:center;box-shadow:0 .4rem 1.6rem rgba(0,0,0,.06)}
.price_lead{font-size:1.4rem;font-weight:700}
.price_main{margin-top:.6rem;display:flex;align-items:baseline;justify-content:center;gap:.4rem;flex-wrap:wrap}
.price_main span{font-size:1.4rem;font-weight:700}
.price_main b{font-family:"Noto Sans JP",sans-serif;font-size:5.6rem;font-weight:700;line-height:1;letter-spacing:-.02em;color:#4A3340}
.price_main small{font-size:1.4rem;font-weight:700}
.price_month{margin-top:.4rem;font-size:1.3rem;color:#666}
.price_list{margin-top:1.8rem;border-top:1px solid #F1C7D1;text-align:left}
.price_list li{display:grid;grid-template-columns:7.4rem 1fr;column-gap:1rem;padding:1.1rem .2rem;border-bottom:1px solid #F1C7D1;align-items:baseline}
.price_list li span{font-size:1.3rem;color:#666}
.price_list li b{font-size:1.6rem;font-weight:700}
.price_list li small{grid-column:2;font-size:1.1rem;color:#888}
.price_list li[data-camp] b{color:var(--gold-d)}
.price_note{margin-top:1.4rem;font-size:1.2rem;line-height:1.7;color:#666;text-align:left}

/* 途中の予約ボタン */
.mid_cta{padding:2.4rem 1.6rem 2.8rem;text-align:center;background:#fff}
.mid_cta_lead{font-size:1.6rem;font-weight:700;line-height:1.5;margin-bottom:1.2rem}
.mid_cta_lead span{display:block;font-size:1.2rem;font-weight:500;color:#666}

/* ===== 動き：スクロールでふわっと・最初の写真をゆっくりズーム（動きを減らす設定では止める） ===== */
@media (prefers-reduced-motion:no-preference){
  .js .rv{opacity:0;transform:translateY(1.6rem);transition:opacity .45s ease,transform .45s cubic-bezier(.22,1,.36,1)}
  .js .rv.in{opacity:1;transform:none}
  .kfv_photo img,.efv_photo img,.ffv_photo img{animation:fvZoom 8s ease-out 1 both!important}
}
@keyframes fvZoom{from{transform:scale(1)}to{transform:scale(1.08)}}
.offer_card:last-child{grid-column:1/-1;min-height:9rem}
.price_list li{grid-template-columns:max-content 1fr!important;column-gap:1.6rem!important}
.price_list li > span{white-space:nowrap;min-width:6rem}

/* ===== 2026-10-08 拳慎さん修正案 ===== */
/* 体験に来るだけでプレゼント（特典の上） */
.gift{margin:0 0 2.8rem;padding:1.8rem 1.4rem 1.6rem;border-radius:1.2rem;background:#fff;border:2px solid #4A3340;box-shadow:0 .4rem 1.4rem rgba(182,59,108,.12)}
.gift_lead{display:inline-block;background:#4A3340;color:#fff;font-size:1.3rem;font-weight:700;padding:.3rem 1.4rem;border-radius:10rem}
.gift_main{margin:1rem 0 .8rem;font-size:min(2.2rem,5.8vw);font-weight:700;line-height:1.5;color:#33222C}
.gift_main b{color:#4A3340;background:linear-gradient(transparent 62%,#FBE3EA 62%)}
.gift_sub{font-size:1.2rem;line-height:1.7;color:#666}

/* 第三者評価（最初の画面の直後）：金の紙吹雪＋大きな金文字 */
.media_block{position:relative;overflow:hidden;padding:3.2rem 1.6rem 2.6rem;text-align:center;
  background:
   linear-gradient(115deg,transparent 0 46%,rgba(214,176,98,.55) 46% 48%,transparent 48%) 8% 6%/2.6rem 1.4rem no-repeat,
   linear-gradient(60deg,transparent 0 45%,rgba(214,176,98,.5) 45% 49%,transparent 49%) 88% 4%/2.2rem 1.6rem no-repeat,
   linear-gradient(150deg,transparent 0 44%,rgba(214,176,98,.45) 44% 50%,transparent 50%) 94% 34%/2rem 1.2rem no-repeat,
   linear-gradient(30deg,transparent 0 44%,rgba(214,176,98,.45) 44% 50%,transparent 50%) 3% 40%/1.8rem 1.2rem no-repeat,
   radial-gradient(circle,rgba(214,176,98,.6) 0 .25rem,transparent .3rem) 20% 18%/1rem 1rem no-repeat,
   radial-gradient(circle,rgba(214,176,98,.6) 0 .25rem,transparent .3rem) 78% 22%/1rem 1rem no-repeat,
   radial-gradient(circle,rgba(214,176,98,.5) 0 .2rem,transparent .25rem) 12% 70%/1rem 1rem no-repeat,
   radial-gradient(circle,rgba(214,176,98,.5) 0 .2rem,transparent .25rem) 90% 66%/1rem 1rem no-repeat,
   linear-gradient(180deg,#FFFCF4,#FBF2DE 70%,#FFFCF4)}
.media_big{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:.2rem;line-height:1;max-width:100%}
.media_big span,.media_big b{background:linear-gradient(180deg,#E9D29A 0%,#B98A3A 45%,#8C6424 60%,#D9B76E 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.media_big span{font-family:"Noto Serif JP",serif;font-weight:600;font-size:2.2rem}
.media_big b{font-family:"Noto Serif JP",serif;font-weight:600;font-size:6rem;letter-spacing:-.02em;margin:0 .4rem 0 .2rem;font-style:italic;padding-right:.1em}
.media_ttl{margin:.6rem 0 1rem;font-family:"Noto Serif JP",serif;font-weight:600!important;font-size:min(3rem,7.8vw);color:#3A2A20;letter-spacing:.08em}
.media_lead{font-size:min(1.25rem,3.3vw);line-height:1.8;color:#5A4A3A}
.media_logos{display:flex;flex-wrap:wrap;justify-content:center;gap:1.4rem 2rem;margin:2rem 0 1.2rem;padding:1.6rem .8rem;border-top:1px solid #E6D2A4;border-bottom:1px solid #E6D2A4}
.media_logos li{display:flex;flex-direction:column;align-items:center;line-height:1.1;color:#2A2A2A;white-space:nowrap}
.media_logos small{font-size:.9rem;letter-spacing:.2em;margin-top:.3rem;font-family:"Noto Sans JP",sans-serif;font-weight:500}
.m_asahi{font-family:"Noto Serif JP",serif;font-weight:600;font-size:2.2rem;letter-spacing:.06em}
.m_oricon{font-family:"Cormorant Garamond",serif;font-weight:600;font-size:2.2rem;letter-spacing:.3em}
.m_livedoor{font-family:"Noto Sans JP",sans-serif;font-weight:700;font-size:2.1rem;letter-spacing:-.01em}
.m_umeda,.m_namba{font-family:"Noto Serif JP",serif;font-weight:600;font-size:2rem;letter-spacing:.12em;padding:.3rem .8rem;border:1px solid #2A2A2A}
.media_more{font-size:1.35rem;font-weight:700;color:#3A2A20}
.media_note{margin-top:.8rem;font-size:1rem;line-height:1.6;color:#8A7A6A}

/* 90分の無料体験でわかること */
.trial_block{padding:4.8rem 0 4rem;background:#FAF4F3}
.trial_list{display:grid;gap:1.4rem;margin-top:2.4rem}
.trial_item{display:grid;grid-template-columns:42% 1fr;gap:1.2rem;align-items:center;background:#fff;border-radius:1.2rem;padding:1.2rem;box-shadow:0 .2rem 1rem rgba(0,0,0,.05)}
.trial_item img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:.8rem}
.trial_no{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:1.5rem;color:#4A3340;letter-spacing:.08em}
.trial_item h3{margin:.2rem 0 .6rem;font-family:"Noto Serif JP",serif;font-weight:700;font-size:min(1.8rem,4.6vw);line-height:1.45;color:#33222C}
.trial_item p:last-child{font-size:1.25rem;line-height:1.75;color:#555}
.trial_ok{margin-top:2rem;text-align:center;font-size:min(2rem,5.2vw);font-weight:700;color:#33222C}
.trial_ok b{color:#4A3340;font-size:1.2em}

/* エステの中身（タップで開く） */
.es_block{padding:4.8rem 0 4rem;background:#fff}
.es_lead{margin:1.2rem 0 2rem;text-align:center;font-size:1.35rem;line-height:1.8;color:#555}
.es_item{margin-bottom:1.2rem;border-radius:1.2rem;background:#FAF4F3;overflow:hidden;box-shadow:0 .2rem 1rem rgba(0,0,0,.05)}
.es_item summary{display:grid;grid-template-columns:8.4rem 1fr auto;align-items:center;gap:1.2rem;padding:1rem 1.2rem;cursor:pointer;list-style:none}
.es_item summary::-webkit-details-marker{display:none}
.es_item summary img{width:8.4rem;height:8.4rem;object-fit:cover;border-radius:.8rem}
.es_name{font-family:"Noto Serif JP",serif;font-weight:700;font-size:min(1.9rem,4.8vw);line-height:1.35;color:#33222C}
.es_name small{display:block;margin-top:.3rem;font-family:"Noto Sans JP",sans-serif;font-weight:500;font-size:1.15rem;color:#888}
.es_more{font-size:1.15rem;font-weight:700;color:#4A3340;white-space:nowrap;padding:.4rem 1rem;border:1px solid #4A3340;border-radius:10rem}
.es_more::after{content:"＋";margin-left:.3rem}
.es_item[open] .es_more::after{content:"−"}
.es_body{padding:.4rem 1.6rem 1.8rem}
.es_what{font-size:1.4rem;line-height:1.85;color:#33222C}
.es_why{margin-top:1rem;font-size:1.3rem;line-height:1.8;color:#444;background:#fff;border-radius:.8rem;padding:1rem 1.2rem}
.es_why b{display:inline-block;margin-right:.6rem;padding:.1rem .8rem;background:#4A3340;color:#fff;font-size:1.1rem;border-radius:.4rem;vertical-align:.1em}
.es_review{margin-top:1rem;font-size:1.3rem;line-height:1.8;color:#444;border-left:3px solid var(--gold,#E6C06A);padding:.2rem 0 .2rem 1rem}
.es_review span{display:block;font-size:1.1rem;color:var(--gold-d,#B8862F);font-weight:700}
.es_note{margin-top:1.2rem;font-size:1.1rem;line-height:1.7;color:#888}

/* D：トレーニング・エステ・酸素BOXを1画面に（左右＋下） */
.kfv_photo.dfv_trio{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1.25fr 1fr;gap:3px;background:#fff}
.dfv_trio figure{position:relative;margin:0;overflow:hidden}
.dfv_trio .t3{grid-column:1/-1}
.dfv_trio img{width:100%;height:100%;object-fit:cover;display:block}
.dfv_trio .t1 img{object-position:55% 35%}
.dfv_trio .t3 img{object-position:50% 45%}
.dfv_trio figcaption{position:absolute;left:.8rem;bottom:.6rem;z-index:1;font-family:"Cormorant Garamond",serif;font-style:italic;font-weight:600;font-size:1.5rem;letter-spacing:.08em;color:#fff;text-shadow:0 .1rem .6rem rgba(0,0,0,.45)}
.kfv_photo.dfv_trio::after{display:none}
.dfv_trio .wonly{z-index:2}
.dfv_ttl small{display:block;margin-bottom:.6rem;font-family:"Noto Sans JP",sans-serif;font-size:min(1.3rem,3.4vw);font-weight:700;letter-spacing:.06em;color:#4A3340}
.dfv_ttl em{font-style:normal;color:#4A3340;font-size:min(3rem,7.6vw);white-space:nowrap}
.dfv_trio .wonly{position:absolute;top:1rem;right:1rem;left:auto;bottom:auto}
.kfv_photo.dfv_trio{position:relative}

/* メディアの公式ロゴ（2026-10-08 各社の使用許可済み・井手さん確認） */
.media_logos{display:grid!important;grid-template-columns:repeat(3,1fr);gap:.8rem!important;align-items:center}
.media_logos li{display:flex!important;align-items:center;justify-content:center;height:8.4rem;padding:.8rem;background:#fff;border-radius:.8rem;box-shadow:0 .2rem .8rem rgba(184,134,47,.12)}
.media_logos li.ml_wide{grid-column:span 3;height:6.4rem}
.media_logos li:nth-child(5){grid-column:span 3}
.media_logos img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}

/* ===== メディア：ゴージャス版（金の月桂樹・金属光沢・光が流れる・紙吹雪） 2026-10-08 ===== */
.media_block{position:relative;overflow:hidden;background:radial-gradient(120% 70% at 50% 0,#FFFBEF 0,#FBF0D6 45%,#F6E3BC 100%)!important;padding-top:3.6rem!important}
.media_hero{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:.4rem}
.mh_laurel{width:5.6rem;height:14rem;flex:none;filter:drop-shadow(0 .2rem .3rem rgba(140,100,30,.25))}
.mh_laurel.r{transform:scaleX(-1)}
.mh_in{text-align:center}
.mh_pre{display:inline-block;padding:.3rem 1.4rem;border-top:1px solid #C9A04E;border-bottom:1px solid #C9A04E;font-family:"Noto Serif JP",serif;font-weight:600;font-size:1.35rem;letter-spacing:.2em;color:#8C6424}
.media_big{position:relative;display:flex!important;align-items:baseline;justify-content:center;margin:.2rem 0 0;line-height:1}
.media_big b,.media_big span{background:linear-gradient(100deg,#9C7428 0%,#E9CE84 18%,#FFF6D8 28%,#C99A3E 42%,#8C6424 58%,#E9CE84 76%,#B88A36 100%)!important;background-size:220% 100%!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;filter:drop-shadow(0 .25rem .2rem rgba(120,80,20,.28))}
.media_big b{font-family:"Noto Serif JP",serif!important;font-weight:600!important;font-style:normal!important;font-size:min(9.6rem,25vw)!important;letter-spacing:-.04em!important;margin:0 .2rem 0 0!important}
.media_big span{font-family:"Noto Serif JP",serif!important;font-weight:600!important;font-size:min(2.8rem,7.2vw)!important}
.mh_stars{margin-top:.2rem;font-size:1.6rem;letter-spacing:.3em;color:#D4A84E;text-shadow:0 .1rem .2rem rgba(140,100,30,.3)}
.media_ttl{position:relative;z-index:1;margin-top:1rem!important}
.media_lead,.media_logos,.media_more,.media_note{position:relative;z-index:1}
@media (prefers-reduced-motion:no-preference){
  .media_big b,.media_big span{animation:mhShine 4s ease-in-out infinite}
}
@keyframes mhShine{0%,30%{background-position:100% 0}70%,100%{background-position:0 0}}
/* 紙吹雪：上から舞い落ちる（画面外では止める） */
.media_conf{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}
.media_conf i{position:absolute;top:-2rem;left:var(--x);width:var(--w);height:calc(var(--w)*1.6);background:var(--c);border-radius:.15rem;opacity:0;transform:rotate(var(--r))}
.media_conf i:nth-child(3n){border-radius:50%;height:var(--w)}
.media_conf i:nth-child(4n){background:linear-gradient(135deg,#FFF3C4,#C99A3E)}
@media (prefers-reduced-motion:no-preference){
  .media_conf i{animation:mhFall var(--t) linear var(--d) infinite;animation-play-state:paused}
  .media_conf.play i{animation-play-state:running}
}
@keyframes mhFall{0%{opacity:0;transform:translate3d(0,0,0) rotate(var(--r))}8%{opacity:.95}50%{transform:translate3d(1.4rem,30rem,0) rotate(calc(var(--r) + 220deg))}100%{opacity:.85;transform:translate3d(-1rem,62rem,0) rotate(calc(var(--r) + 480deg))}}
/* ロゴは白い枠をやめて背景に直接（白背景を透過済み） */
.media_logos{gap:1.2rem 1rem!important;border:0!important;padding:1.2rem .4rem!important}
.media_logos li{background:none!important;box-shadow:none!important;padding:.2rem!important;height:6.4rem!important}
.media_logos li.ml_wide{height:5rem!important}
.media_logos li:nth-child(4) img,.media_logos li:nth-child(5) img{border-radius:.4rem;box-shadow:0 .2rem .6rem rgba(0,0,0,.12)}

/* ===== B〜F 最初の画面（ヒーロー）作り直し 2026-10-08 ===== */
.top_wrapper .hx{margin-top:6.6rem;margin-bottom:0;background:#fff}
.hx_vis{position:relative;overflow:hidden;background:#2A1520}
.hx_vis>img{display:block;width:100%;height:auto}
.hx_photo .hx_vis{aspect-ratio:4/5;max-height:74vh}
.hx_photo .hx_vis>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hx_photo .hx_vis::after{content:"";position:absolute;inset:auto 0 0 0;height:62%;background:linear-gradient(to top,rgba(30,12,22,.92) 10%,rgba(30,12,22,.55) 55%,transparent)}
.hx .wonly{position:absolute!important;top:1rem!important;right:1rem!important;left:auto!important;bottom:auto!important;z-index:4}
.hx_camp{position:absolute;left:1rem;top:1rem;z-index:4;display:flex;flex-direction:column;align-items:flex-start;gap:.3rem}
.hx_camp span{display:inline-block;padding:.35rem 1.1rem;border-radius:10rem;font-size:min(1.35rem,3.5vw);font-weight:700;line-height:1.3;box-shadow:0 .3rem .8rem rgba(0,0,0,.25)}
.hx_camp span:first-child{background:linear-gradient(135deg,#FFF3C8,#E9C86E 55%,#C99A3E);color:#3A2410}
.hx_camp span:first-child b{font-size:1.15em}
.hx_camp span:last-child{background:#fff;color:#4A3340}
.hx_ba .hx_camp{top:auto;bottom:1rem}
.hx_badge{position:absolute;right:1rem;bottom:1rem;z-index:4;width:11rem;height:11rem;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 35% 30%,#FFF4CF,#E7C46E 55%,#B98A32);color:#4A2410;box-shadow:0 .5rem 1.4rem rgba(80,40,10,.45);transform:rotate(-8deg)}
.hx_badge small{font-size:1.3rem;font-weight:700}
.hx_badge b{font-family:"Noto Serif JP",serif;font-weight:600;font-size:3rem;line-height:1.05;color:#7A1E3E;letter-spacing:-.02em}
.hx_panel{padding:2rem 2rem 1.6rem;background:linear-gradient(180deg,#2A1520,#4A1F33);color:#fff}
.hx_tag{display:inline-block;font-size:1.15rem;font-weight:700;letter-spacing:.06em;color:#F3C9D6;border-bottom:1px solid rgba(243,201,214,.5);padding-bottom:.2rem}
.hx_h{margin:.8rem 0 .8rem;font-family:"Noto Serif JP",serif;font-weight:600!important;font-size:min(3.2rem,8.4vw);line-height:1.38;letter-spacing:.02em;color:#fff}
.hx_h em{font-style:normal;background:linear-gradient(180deg,#FFF3C8,#E9C86E 55%,#C99A3E);-webkit-background-clip:text;background-clip:text;color:transparent}
.hx_sub{font-size:1.35rem;line-height:1.8;color:rgba(255,255,255,.88)}
.hx_note{margin-top:.8rem;font-size:1rem;line-height:1.55;color:rgba(255,255,255,.6)}
.hx_note_out{margin:0;padding:.8rem 1.6rem;background:#1E0C16;color:rgba(255,255,255,.65)}
.hx_over{position:absolute;left:0;right:0;bottom:0;z-index:3;padding:0 2rem 2rem;color:#fff}
.hx_price{display:flex;align-items:baseline;gap:.4rem;margin-top:.4rem;line-height:1}
.hx_price small{font-size:1.4rem;font-weight:700;align-self:center;color:#F3C9D6}
.hx_price b{font-family:"Noto Sans JP",sans-serif;font-weight:700;font-size:min(7.2rem,18.5vw);letter-spacing:-.03em;background:linear-gradient(180deg,#FFF3C8,#E9C86E 55%,#C99A3E);-webkit-background-clip:text;background-clip:text;color:transparent}
.hx_price span{font-size:1.6rem;font-weight:700;line-height:1.1}
.hx_price span i{font-style:normal;font-size:1.1rem;font-weight:500;opacity:.8}
.hx_cmp{display:grid;grid-template-columns:1fr auto 1.25fr;align-items:center;gap:.6rem;margin-top:.6rem}
.hx_cmp p{display:flex;flex-direction:column;align-items:center;padding:.8rem .4rem;border-radius:1rem;line-height:1.1}
.hx_cmp .o{background:rgba(255,255,255,.12);color:rgba(255,255,255,.8)}
.hx_cmp .o b{font-size:min(2.4rem,6.2vw);font-weight:700;text-decoration:line-through;text-decoration-color:rgba(255,255,255,.6)}
.hx_cmp .me{background:rgba(255,255,255,.95);color:#7A1E3E}
.hx_cmp .me b{font-size:min(4rem,10.4vw);font-weight:700;letter-spacing:-.02em}
.hx_cmp small{font-size:1.05rem;font-weight:700;margin-bottom:.3rem}
.hx_cmp span{font-size:1.1rem;font-weight:700;margin-top:.2rem}
.hx_cmp .arw{padding:0;color:#E9C86E;font-size:1.6rem}
.hx_trio{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1.3fr 1fr;gap:3px;aspect-ratio:1/1.05;max-height:66vh}
.hx_trio figure{position:relative;margin:0;overflow:hidden}
.hx_trio .t3{grid-column:1/-1}
.hx_trio img{width:100%;height:100%;object-fit:cover;display:block}
.hx_trio .t1 img{object-position:55% 35%}
.hx_trio figcaption{position:absolute;left:.8rem;bottom:.6rem;z-index:1;font-family:"Cormorant Garamond",serif;font-style:italic;font-weight:600;font-size:1.6rem;letter-spacing:.08em;color:#fff;text-shadow:0 .1rem .6rem rgba(0,0,0,.5)}
.hx_d .hx_camp{top:auto;bottom:1rem;left:auto;right:1rem;align-items:flex-end}
.hx_chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}
.hx_chips li{padding:.4rem 1rem;border-radius:10rem;border:1px solid rgba(233,206,132,.6);font-size:1.2rem;font-weight:700;color:#F2DDA4}
.hx_chips small{margin-left:.3rem;font-size:.9em;font-weight:500;color:rgba(255,255,255,.75)}
.hx_shine,.hx_sp{position:absolute;pointer-events:none;z-index:2}
.hx_shine{inset:0;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.4) 48%,transparent 60%);transform:translateX(-120%)}
.hx_sp{left:var(--x);top:var(--y);width:1.6rem;height:1.6rem;background:radial-gradient(circle,#fff 0 18%,rgba(255,240,210,.9) 30%,transparent 62%);clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%);opacity:0}
.hx .fv_proof{margin-top:1.2rem}
@media (prefers-reduced-motion:no-preference){
  .hx_vis>img,.hx_trio figure{animation:fxIn 1s cubic-bezier(.22,1,.36,1) both}
  .hx_shine{animation:fxShine 5.5s ease-in-out 1.2s infinite}
  .hx_sp{animation:fxSp 2.8s ease-in-out var(--d) infinite}
  .hx_badge{animation:hxPop .7s cubic-bezier(.34,1.56,.64,1) .5s both}
  .hx_camp span{animation:hxIn .6s cubic-bezier(.22,1,.36,1) .3s both}
  .hx_camp span:last-child{animation-delay:.45s}
}
@keyframes hxPop{from{transform:rotate(-8deg) scale(0)}to{transform:rotate(-8deg) scale(1)}}
@keyframes hxIn{from{opacity:0;transform:translateX(-1.2rem)}to{opacity:1;transform:none}}
@keyframes fxIn{from{opacity:0;transform:scale(1.05)}to{opacity:1;transform:none}}
@keyframes fxShine{0%,60%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
@keyframes fxSp{0%,100%{opacity:0;transform:scale(.3) rotate(0)}45%{opacity:1;transform:scale(1) rotate(45deg)}70%{opacity:.2;transform:scale(.6) rotate(90deg)}}
.hx_panel .hx_camp{position:static;flex-direction:row;flex-wrap:wrap;margin-bottom:1rem}
.hx .wonly{transform:none!important;translate:none!important;margin:0!important;width:auto!important}
.top_wrapper .fv_block.hx{margin-top:var(--hdh,6.6rem)!important;padding-top:0!important}
.hx .wonly{background:rgba(255,255,255,.92)!important;color:#7A1E3E!important;border:0!important;border-radius:10rem!important;padding:.4rem 1.2rem!important;font-size:1.2rem!important}.hx .wonly span{color:#4A3340!important}
/* B：最初の画面を動画に（2024年の広告動画・文字なし版） */
.hx_vid{aspect-ratio:4/5;max-height:72vh}
.hx_video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%;display:block}
.hx_vid::after{content:"";position:absolute;inset:auto 0 0 0;height:55%;background:linear-gradient(to top,rgba(30,12,22,.9) 8%,rgba(30,12,22,.45) 55%,transparent);z-index:1}
.hx_vid .hx_over{z-index:3}

/* 3つの安心（最初の画面のすぐ下・全案）2026-10-08 */
.pm_block{padding:1.4rem 1rem;background:#FFF7F9}
.pm_list{display:grid;gap:.6rem;max-width:60rem;margin:0 auto}
.pm_list li{display:flex;flex-wrap:wrap;align-items:baseline;gap:.2rem .8rem;padding:.9rem 1.2rem;background:#fff;border-radius:1rem;border:1px solid #F3D3DE}
.pm_list li::before{content:"✓";color:#D9577F;font-weight:700}
.pm_list b{font-size:min(1.6rem,4.2vw);color:#3A2430}
.pm_list span{font-size:min(1.3rem,3.4vw);color:#6B5560}
.pm_list small{display:block;font-size:min(1.2rem,3.2vw);color:#6B5560}
.pm_list s,.was{color:#8A7A80;font-weight:400;font-size:.8em;margin-right:.3em}
.camp-off .pm_list li[data-camp]{display:none}

/* 実績の帯（★4.7／約75%／勧誘なし）を作り直し 2026-10-09「デザインがださい」
   最初の画面の濃い色に続けて、金の明朝数字＋細い金の区切り線で上品に */
html body .top_wrapper .fv_proof{margin:0;padding:2.2rem 1.6rem 1.6rem;border-radius:0;box-shadow:none;background:linear-gradient(180deg,#4A1F33,#2A1520);color:#fff}
html body .top_wrapper .fv_proof ul{display:grid;grid-template-columns:repeat(3,1fr);align-items:start}
html body .top_wrapper .fv_proof li{gap:.6rem;padding:0 .4rem}
html body .top_wrapper .fv_proof li+li{border-left:1px solid rgba(231,201,142,.35)}
html body .top_wrapper .fv_proof b,html body .top_wrapper .fv_proof b span{font-family:"Cormorant Garamond","Noto Serif JP",serif;font-weight:500;font-size:3.4rem!important;line-height:1;letter-spacing:.01em;color:#E9CF94;background:linear-gradient(180deg,#F6E3B4,#C99A4E);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
html body .top_wrapper .fv_proof b{display:flex;align-items:baseline;justify-content:center;gap:.1rem;min-height:3.4rem}
html body .top_wrapper .fv_proof .pf_star{font-style:normal;font-size:1.8rem;margin-right:.2rem;-webkit-text-fill-color:#E2C17F}
html body .top_wrapper .fv_proof li:last-child b{font-family:"Noto Serif JP",serif;font-size:2rem!important;font-weight:600;align-items:center}
html body .top_wrapper .fv_proof li>span{font-size:1.1rem!important;line-height:1.5;letter-spacing:.06em;color:rgba(255,255,255,.78)}
html body .top_wrapper .fv_proof p{margin-top:1.4rem;font-size:.95rem!important;line-height:1.6;color:rgba(255,255,255,.42);letter-spacing:.02em}

/* F案「お客様からの評価」を作り直し 2026-10-09「ださい」：濃い色のカード＋金の明朝数字（最初の画面の実績の帯とそろえる） */
html body .top_wrapper .freview{margin:3.2rem 1.6rem;padding:3.2rem 1.6rem 2.2rem;border-radius:1.6rem;background:radial-gradient(120% 90% at 50% 0%,#5A2840 0%,#2A1520 70%);color:#fff;box-shadow:0 1rem 2.4rem rgba(42,21,32,.25);position:relative;overflow:hidden}
html body .top_wrapper .freview::before{content:"";position:absolute;inset:.8rem;border:1px solid rgba(231,201,142,.28);border-radius:1.1rem;pointer-events:none}
html body .top_wrapper .freview .en{color:#D9B878;font-size:2rem;letter-spacing:.08em}
html body .top_wrapper .freview h2{color:#fff;font-family:"Noto Serif JP",serif;font-size:2rem;font-weight:500;letter-spacing:.16em}
html body .top_wrapper .fr_stars{margin:1.2rem 0 0;font-size:2rem;letter-spacing:.3em;padding-left:.3em;color:#E2C17F;text-shadow:0 0 1.2rem rgba(226,193,127,.45)}
html body .top_wrapper .freview_nums{margin-top:1.6rem;border:0;display:grid;grid-template-columns:repeat(3,1fr)}
html body .top_wrapper .freview_nums li{border:0;padding:.4rem .2rem;font-size:1.1rem;line-height:1.5;letter-spacing:.05em;color:rgba(255,255,255,.78)}
html body .top_wrapper .freview_nums li+li{border-left:1px solid rgba(231,201,142,.3)}
html body .top_wrapper .freview_nums b{display:block;margin-bottom:.6rem;font-family:"Cormorant Garamond","Noto Serif JP",serif!important;font-weight:500!important;font-size:4.2rem;line-height:1;background:linear-gradient(180deg,#F6E3B4,#C99A4E);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
html body .top_wrapper .freview_nums b small{font-size:.5em}
html body .top_wrapper .freview_note{margin-top:1.4rem;font-size:1rem;color:rgba(255,255,255,.45)}

/* F案の最初の画面：写真にゆっくり寄っていく動き（ケン・バーンズ）2026-10-09 オーナー「動きを入れて」
   transform だけなので軽い。画面外では止まる（anim_io）。動きを減らす設定の人には動かさない */
@media (prefers-reduced-motion:no-preference){
  html body .top_wrapper .hx_f .hx_vis>img{transform-origin:55% 25%;animation:fxIn 1s cubic-bezier(.22,1,.36,1) both,hxKen 11s ease-in-out 1s infinite alternate;will-change:transform}
  html body .top_wrapper .hx_f .hx_vis::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(60% 40% at 70% 30%,rgba(255,226,200,.28),transparent 70%);animation:hxGlow 6s ease-in-out infinite alternate}
}
@keyframes hxKen{from{transform:scale(1.02) translate(0,0)}to{transform:scale(1.14) translate(-2.5%,1.5%)}}
@keyframes hxGlow{from{opacity:.2}to{opacity:1}}

/* F案の最初の画面：店内の実写真6枚を、ゆっくり寄りながらクロスフェード（1枚4秒・1周24秒）2026-10-09 */
html body .top_wrapper .hx_f .hx_slides{position:absolute;inset:0;overflow:hidden}
html body .top_wrapper .hx_f .hx_sl{position:absolute;inset:0;margin:0;opacity:0}
html body .top_wrapper .hx_f .hx_sl:first-child{opacity:1}
html body .top_wrapper .hx_f .hx_sl img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:none!important;transform:none}
html body .top_wrapper .hx_f .hx_sl figcaption{position:absolute;left:1.4rem;top:22%;z-index:3;padding:.4rem 1.2rem;border-radius:10rem;background:rgba(30,12,22,.55);border:1px solid rgba(231,201,142,.6);color:#F3DDB0;font-family:"Noto Serif JP",serif;font-size:1.25rem;letter-spacing:.12em;backdrop-filter:blur(2px)}
@media (prefers-reduced-motion:no-preference){
  html body .top_wrapper .hx_f .hx_sl{animation:hxSlide 24s linear infinite;animation-delay:calc(var(--i) * 4s - 0.01s)}
  html body .top_wrapper .hx_f .hx_sl:first-child{opacity:0}
  html body .top_wrapper .hx_f .hx_sl img{animation:hxSlideZoom 24s linear infinite!important;animation-delay:calc(var(--i) * 4s - 0.01s)!important;transform-origin:50% 40%}
  html body .top_wrapper .hx_f .hx_sl:first-child,html body .top_wrapper .hx_f .hx_sl:first-child img{animation-delay:-0.6s!important}
}
@keyframes hxSlide{0%{opacity:0}3%{opacity:1}17%{opacity:1}20%{opacity:0}100%{opacity:0}}
@keyframes hxSlideZoom{0%{transform:scale(1)}20%{transform:scale(1.12)}100%{transform:scale(1.12)}}

/* 最初の画面のロゴ（O₂GYM＋女性専用パーソナルジム）2026-10-09 */
html body .top_wrapper .hx_brand{display:flex;align-items:center;gap:1rem;margin:0 0 1rem}
html body .top_wrapper .hx_brand img{display:block;width:16.4rem;height:auto;filter:drop-shadow(0 .2rem .6rem rgba(0,0,0,.35))}
html body .top_wrapper .hx_brand p{margin:0;padding-left:1rem;border-left:1px solid rgba(243,201,214,.55);font-size:min(1.35rem,3.4vw);font-weight:700;white-space:nowrap;line-height:1.35;letter-spacing:.06em;color:#fff;text-shadow:0 .1rem .4rem rgba(0,0,0,.4)}
html body .top_wrapper .hx_brand p span{display:block;font-size:1.05rem;font-weight:500;color:#F3C9D6;letter-spacing:.1em}
