/* ============================================================
   u01 医療ダイエット比較LP ピンクテーマ
   main.css(m01由来)の上書き + u01専用コンポーネント
   ※m01と運営が同一と分からないよう、色・フォント・装飾を全面差し替え
   ============================================================ */
:root{
  --p-deep:#a8325e;   /* 濃ローズ（見出し・文字） */
  --p-main:#e0578f;   /* メインピンク */
  --p-cta:#f0447e;    /* CTA */
  --p-cta2:#ff8fb0;   /* CTAグラデ明 */
  --p-soft:#fde8ef;   /* 淡ピンク背景 */
  --p-pale:#fff7fa;   /* 極淡背景 */
  --p-line:#f2b7cc;   /* 枠線 */
  --p-marker:#ffe08a; /* マーカー黄 */
}

/* ---- ベース ---- */
body{font-family:"Zen Maru Gothic","Noto Sans JP",sans-serif;}
#wrapper{background:#fff;}

/* ---- マーカー・グラデ文字 ---- */
.under-txt{background:linear-gradient(180deg,transparent 55%,var(--p-marker) 55%);}
.grd-txt,.grd-txt4{background:linear-gradient(90deg,#a8325e 0%,#f0447e 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
.grd-txt2,.grd-txt3{background:linear-gradient(90deg,#7c2c4a 0%,#d1568c 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
.red{color:#e0356e;}

/* ---- ボタン（黄→ピンク・画像アイコン排除） ---- */
.bl-border-btn a{border-color:var(--p-deep);color:var(--p-deep);}
.bl-border-btn a::after{background:none;border:solid var(--p-deep);border-width:0 2px 2px 0;width:7px;height:7px;transform:translateY(-70%) rotate(45deg);}
/* CTA＝ページのピンクと明確に差別化したオレンジ（溶け込み対策・260713大薄さんFB）＋shine/pulse */
.grd-btn a{background:linear-gradient(91.7deg,#ffb457 4%,#ff8a00 97%);color:#fff;box-shadow:0 4px 0 0 #cf6a00,0 6px 14px rgba(255,138,0,.35);}
.grd-btn a span{background:linear-gradient(92deg,#ffa53b 8%,#f97806 97%);color:#fff;}
.grd-btn a span::after{background:none;border:solid #fff;border-width:0 2px 2px 0;width:7px;height:7px;transform:translateY(-50%) rotate(-45deg);}
.grd-btn:not(.ye-border-btn) a{animation:cta-pulse 2.6s ease-in-out infinite;}
@keyframes cta-pulse{0%,100%{transform:scale(1);}50%{transform:scale(1.025);}}
@media (prefers-reduced-motion:reduce){.grd-btn a{animation:none;}.grd-btn a span::before{animation:none;}}
.grd-btn .today{color:#e0356e;}
.cvs-wrap .grd-btn .today{color:#fff;}
.cvs-wrap .grd-btn .today .green,.cvs-wrap .grd-btn .today .red{color:#ffe08a;}
.cvs-wrap .grd-btn:first-child a::after{background:none;display:none;}
.ye-border-btn a{background:#fff !important;border:2px solid var(--p-cta);animation:none;}
.ye-border-btn a span::before{display:none;}
.ye-border-btn a span{background:#fff;color:var(--p-deep);}
.ye-border-btn a span::after{border-color:var(--p-deep);}

/* ---- cont01 TOP3カード ---- */
.cont01 .list-bg{background:linear-gradient(180deg,#fbd0e0 0%,#f6b3cb 100%);}
.best-list .best-inr{border-color:var(--p-line);}
.best-inr .table th{background:var(--p-main);color:#fff;}
.cont02 .table-wrap table th{background:var(--p-deep);color:#fff;}

/* ---- cont02 徹底比較（紺画像→ローズグラデ） ---- */
.cont02{background:linear-gradient(180deg,#b64577 0%,#8c3059 100%);}
.cont02 .table-wrap table .head_2{background-color:#ffd6e4;color:var(--p-deep);}
.cont02 .table-wrap table .head_2 a{color:var(--p-deep);}
.cont02 .table-wrap table td.d_1{background-color:#fff2f7;}

/* ---- 詳細ランキング ---- */
.cont04 .best-list{background:linear-gradient(180deg,#fbe0ea 0%,#f7c8d9 100%);}
.cont04 .best-list.second{background:#fdeef4;}
.cont04 .best-list.third{background:#fff;}
.cont04 .ranking-bridge .bridge-tag{background:var(--p-deep);color:#fff;}
.cont04 .ranking-bridge .bridge-sub{color:var(--p-deep);}
.cont04 .ranking-bridge .bridge-main{color:var(--p-deep);}
.cont04 .ranking-bridge .bridge-main::before{background:var(--p-marker);}
.cont04 .ranking-bridge .bridge-slash{background:var(--p-deep);}
/* POINT番号バッジ＝新ピンク画像（POINT文字入りのため文字は非表示） */
.cont04 .best-list .parallel .point-num-wrap .point-num.tr-ttl,
.end-cont-popreason .point-num-wrap .point-num.tr-ttl{color:transparent;font-size:0;background-size:contain !important;background-repeat:no-repeat !important;background-position:center !important;border-radius:0;box-shadow:none;}
.point-num-wrap .point-num.point01{background-image:url("../images/point01-pk.webp") !important;}
.point-num-wrap .point-num.point02{background-image:url("../images/point02-pk.webp") !important;}
.point-num-wrap .point-num.point03{background-image:url("../images/point03-pk.webp") !important;}

/* ---- 総合表・迷ったら・人気の理由 ---- */
.end-cont{background:linear-gradient(180deg,#fbd0e0 0%,#f6b3cb 100%);}
/* 人気No.1バッジ（pop-no1.webp画像→CSS円） */
.end-cont-regina .serif-cont .pop-no1{background:radial-gradient(circle at 30% 25%,#f581ab,var(--p-cta)) !important;border-radius:50%;color:#fff !important;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:900;line-height:1.3;text-align:center;box-shadow:0 3px 8px rgba(0,0,0,.25);width:74px !important;height:74px !important;left:-8px !important;top:-30px !important;}
.end-cont-regina{background:#7e2c50;padding:120px 12px 36px;}
.end-cont-popreason{background:linear-gradient(90deg,#7e2c50 0%,#c2517e 100%);padding:34px 16px 44px;}
.end-cont-popreason .under-txt{background:linear-gradient(180deg,transparent 55%,rgba(255,224,138,.85) 55%);}
.end-cont-cvs{background:#7e2c50;}
.end-cont-cvs .grd-btn .today{color:#ffd6e4;}

/* ---- FV（たかはし制作キャプチャ画像） ---- */
.u-fv-img{line-height:0;background:linear-gradient(180deg,#f3d9e4,#fbeff4);margin:0;font-size:0;font-weight:normal;}
.u-fv-img img{width:100%;height:auto;display:block;}
.u-fv-bar{background:linear-gradient(180deg,#fdeef4,#fff);padding:12px 14px 14px;text-align:center;}
.u-fv-nav{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;}
.u-fv-nav a{background:var(--p-cta);color:#fff;border-radius:999px;font-size:11px;font-weight:700;padding:7px 13px;text-decoration:none;box-shadow:0 2px 5px rgba(224,68,126,.3);}
.u-fv-nav a::after{content:" ▼";font-size:8px;}
.u-fv-day{margin-top:2px;font-size:11px;color:#8a6a78;}
.u-fv-note{font-size:10px;color:#a08d96;margin-top:4px;line-height:1.6;}
.u-fv-bar{padding:8px 14px 4px;}

.u-em{background:linear-gradient(transparent 62%,var(--p-marker) 62%);}
.u-sec-ttl{position:relative;z-index:2;text-align:center;font-size:22px;font-weight:900;line-height:1.5;color:#3a3a3a;padding:26px 14px 18px;}
.u-sec-ttl .u-em{background:linear-gradient(transparent 62%,var(--p-marker) 62%);}
.u-sec-ttl .u-small{display:block;font-size:13px;color:var(--p-main);letter-spacing:.1em;margin-bottom:4px;}
.cont01 .u-sec-ttl{padding-bottom:60px;}
#cont02 .u-sec-ttl{color:#fff;}
#cont02 .u-sec-ttl .u-small{color:#ffd6e4;}
#cont02 .u-sec-ttl .u-em{color:#3a3a3a;}
.end-cont-popreason .u-sec-ttl{font-size:20px;color:#fff;}
.end-cont-regina .cont-ttl{font-size:30px;letter-spacing:0;background:none;-webkit-background-clip:initial;-webkit-text-fill-color:#fff;color:#fff;}

/* バッジ＋院名の横並びを維持（説明文が長くても折り返さない） */
.num-ttl-wrap{flex-wrap:nowrap !important;}
.num-ttl-wrap .inr-txt{min-width:0;}
/* No.1/2/3バッジ＝m01の第1位/第2位/第3位 勲章画像を流用 */
.u-num{display:inline-block;width:62px;height:62px;min-width:62px;padding:0;font-size:0;text-indent:-9999px;overflow:hidden;background-repeat:no-repeat;background-position:center;background-size:contain;}
.u-num.n1{background-image:url("../images/no1.webp");}
.u-num.n2{background-image:url("../images/no2.webp");}
.u-num.n3{background-image:url("../images/no3.webp");}
@media(min-width:601px){.u-num{width:76px;height:76px;min-width:76px;}}

/* テキストリンク統一デザイン：青文字下線＋別タブアイコン（2026-07-14導入・07-16全リンクへ拡大） */
a.u-extlink,
.cont01 .best-inr .inr-txt .ttl a.u-extlink,
.best-list .inr-txt .ttl a.u-extlink{
  display:inline;
  color:#1a6dff;
  text-decoration:underline;
  text-underline-offset:2px;
  text-decoration-thickness:1.5px;
  font-weight:900;
}
a.u-extlink:hover,
.cont01 .best-inr .inr-txt .ttl a.u-extlink:hover,
.best-list .inr-txt .ttl a.u-extlink:hover{color:#0b4fd0;}
.u-extlink-ico{
  width:.72em;height:.72em;
  display:inline-block;
  vertical-align:-0.02em;
  margin-left:3px;
  color:#1a6dff;
}

/* 請求別注釈（クライアント指定文言・2026-07-16 AUN修正指示反映）
   本文より一段控えめなサイズ＋1項目1行で読みやすく */
p.u-fn{
  font-size:9.5px;
  color:#8f8f8f;
  line-height:1.95;
  text-align:left;
  margin:10px 2px 0;
  font-weight:normal;
}
@media(min-width:601px){p.u-fn{font-size:10.5px;}}
/* 濃ローズ背景セクション内は淡色に */
.end-cont-popreason p.u-fn{color:#ffd6e4;max-width:640px;margin:18px auto 0;padding:0 12px;}
/* 比較表下の明細注釈は左揃えの方が読みやすい（2026-07-16） */
.cont02 .txt-note{text-align:left;}
/* セル内の注釈番号は小さく（単独行落ち防止） */
.u-fnum{font-size:0.72em;vertical-align:0.18em;letter-spacing:0;font-weight:normal;}
/* リンク末尾の文字とアイコンを束ねて、アイコンだけの孤立改行を防ぐ */
.u-nw{white-space:nowrap;}

.u-band{position:relative;background:linear-gradient(135deg,var(--p-deep),var(--p-main));color:#fff;text-align:center;font-size:17px;font-weight:900;line-height:1.4;border-radius:999px;padding:13px 12px;margin:26px 0 16px;}
.u-band::after{content:"";position:absolute;left:50%;bottom:-8px;transform:translateX(-50%);border:8px solid transparent;border-top-color:var(--p-main);border-bottom:0;}

.u-bnr-ph{display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(45deg,#fdf2f6,#fdf2f6 12px,#f9e3ec 12px,#f9e3ec 24px);border:2px dashed var(--p-line);border-radius:10px;min-height:150px;color:#b16d8c;font-size:12px;font-weight:bold;text-align:center;line-height:1.8;margin:10px 0;}

.u-machine{background:#fff;border:1px solid var(--p-line);border-radius:12px;padding:16px 14px;margin:12px 0;}
.u-machine h5{font-size:15px;font-weight:900;color:var(--p-deep);border-left:4px solid var(--p-cta);padding-left:10px;margin-bottom:8px;line-height:1.5;}
.u-machine .u-tag{display:inline-block;background:var(--p-soft);color:var(--p-deep);border-radius:6px;font-size:11px;font-weight:bold;padding:3px 9px;margin:0 6px 8px 0;}
.u-machine p{font-size:13px;line-height:1.8;}

.u-risk{background:#fbf7ef;border:1px solid #e5d9bd;border-radius:10px;padding:12px 14px;font-size:11px;line-height:1.9;color:#7a6a4a;margin:16px 0;}
.u-risk summary{cursor:pointer;font-size:12.5px;font-weight:900;list-style:none;display:block;position:relative;padding-right:20px;}
.u-risk summary::-webkit-details-marker{display:none;}
.u-risk summary::after{content:"▼";position:absolute;right:2px;top:50%;transform:translateY(-50%);font-size:10px;}
.u-risk[open] summary::after{content:"▲";}
.u-risk p{margin-top:8px;}

.u-mayoi-badge{width:128px;height:128px;background:url("../images/mayoi.webp") no-repeat center/contain;color:transparent;font-size:0;display:block;margin:0 auto;position:absolute;left:50%;transform:translate(-50%,-18%);top:0;}
/* 「人気No.1」画像バッジはNo.1表記回避のため撤去（260713大薄さんFB）→上のCSS円バッジ（総合第1位）を使用 */
/* 比較表サムネ・人気の理由3つ見出し */
.u-thumb-img{width:100%;max-width:112px;height:auto;border-radius:8px;display:block;margin:0 auto 5px;}
.u-reason3{padding:6px 10px 18px;}
.u-reason3 img{max-width:92%;}

/* ---- 評価アイコン（画像→CSS化・m01素材を使わない） ---- */
.u-rate{display:block;margin:0 auto 4px;font-weight:900;line-height:1;text-align:center;font-family:"Noto Sans JP",sans-serif;}
.u-rate.u-rS{font-size:34px;color:#e8467c;} /* 花丸画像→◎（マックス評価は◎・260713大薄さんFB） */
.u-rate.u-rA{font-size:40px;color:#f28c3b;}
.u-rate.u-rB{font-size:40px;color:#8ba8c9;}
.u-rate.u-rC{font-size:36px;color:#a3a3a3;}
td .u-rate{margin-top:2px;}

/* ---- 機械・メニューのチップ表示 ---- */
.u-cnt{display:block;font-weight:900;color:var(--p-deep);font-size:13px;margin:2px 0 4px;}
.u-chips{display:flex;flex-wrap:wrap;gap:4px;justify-content:center;margin-top:4px;}
.u-chips span{background:#fff;border:1px solid var(--p-line);color:var(--p-deep);border-radius:999px;font-size:9.5px;font-weight:700;padding:2px 7px;line-height:1.5;white-space:nowrap;}
.u-chips.dim span{border-color:#d9d9d9;color:#888;}

/* ---- 教育セクション ---- */
.u-edu{background:var(--p-pale);padding:34px 16px 36px;}
.u-edu .u-edu-inner{max-width:600px;margin:0 auto;}
.u-edu-ttl{text-align:center;font-size:22px;font-weight:900;color:var(--p-deep);line-height:1.55;margin-bottom:6px;}
.u-edu-ttl .u-small{display:block;font-size:13px;color:var(--p-main);letter-spacing:.12em;margin-bottom:4px;font-weight:700;}
.u-edu-lead{font-size:14px;line-height:1.95;color:#4a4a4a;margin:10px 0;}
.u-edu-lead .under-txt{font-weight:700;}
.u-vs{display:flex;gap:10px;margin:18px 0 6px;}
.u-vs-col{flex:1;border-radius:14px;padding:14px 10px;}
.u-vs-col h5{font-size:13px;font-weight:900;text-align:center;margin-bottom:8px;line-height:1.5;}
.u-vs-col.bad{background:#f1f1f3;color:#666;}
.u-vs-col.bad h5{color:#777;}
.u-vs-col.good{background:var(--p-soft);border:2px solid #f0a3c0;}
.u-vs-col.good h5{color:var(--p-deep);}
.u-vs-col .u-ill{height:84px;display:flex;align-items:center;justify-content:center;font-size:10px;color:#a08d96;background:repeating-linear-gradient(45deg,rgba(255,255,255,.6),rgba(255,255,255,.6) 10px,rgba(240,225,232,.6) 10px,rgba(240,225,232,.6) 20px);border-radius:10px;margin-bottom:8px;text-align:center;line-height:1.6;}
.u-vs-col p{font-size:11.5px;line-height:1.75;}
.u-vs-col p b{color:var(--p-deep);}
.u-vs-col.bad p b{color:#555;}
.u-edu-note{font-size:10px;color:#999;line-height:1.7;margin-top:10px;}
.u-edu-sub{text-align:center;font-size:16px;font-weight:900;color:var(--p-deep);margin:28px 0 12px;line-height:1.6;}
.u-edu-sub .u-em{background:linear-gradient(transparent 62%,var(--p-marker) 62%);}
.u-mrow{display:grid;grid-template-columns:1fr 1fr;gap:9px;}
.u-mcard{background:#fff;border:1.5px solid var(--p-line);border-radius:12px;padding:12px 11px;}
.u-mcard h6{font-size:12.5px;font-weight:900;color:var(--p-deep);margin-bottom:5px;line-height:1.5;}
.u-mcard .u-mfor{display:inline-block;background:var(--p-soft);color:var(--p-deep);border-radius:5px;font-size:9.5px;font-weight:700;padding:2px 6px;margin-bottom:6px;}
.u-mcard p{font-size:10.5px;line-height:1.7;color:#555;}
.u-edu-cta{text-align:center;background:#fff;border:2px solid var(--p-line);border-radius:12px;padding:14px 12px;margin-top:16px;font-size:13px;font-weight:700;color:#4a4a4a;line-height:1.8;}
.u-edu-cta b{color:var(--p-deep);}
/* 選び方3ポイント */
.u-sel{background:#fff;border:2px solid var(--p-line);border-radius:14px;padding:18px 15px 16px;margin:12px 0;position:relative;}
.u-sel .u-sel-num{display:inline-block;background:var(--p-main);color:#fff;font-weight:900;border-radius:999px;font-size:11px;padding:3px 13px;margin-bottom:8px;letter-spacing:.08em;}
.u-sel h5{font-size:17px;font-weight:900;color:#3a3a3a;margin-bottom:7px;line-height:1.6;}
.u-sel h5 .under-txt{font-weight:900;}
.u-sel p{font-size:13.5px;line-height:1.85;color:#555;}
.u-edu-cta{font-size:14px;}
.u-sel p b{color:var(--p-deep);}

/* ---- 画像見出し（ブリッジ素材） ---- */
.u-img-ttl{position:relative;z-index:2;text-align:center;padding:14px 10px 0;line-height:0;margin:0;}
.u-img-ttl img{max-width:96%;height:auto;}
.cont01 .u-img-ttl{padding-top:2px;padding-bottom:4px;}
.cont01 .list-bg{margin-top:0 !important;padding-top:26px;padding-bottom:24px;}
/* 徹底比較＋人気の医療痩身：白背景ブリッジ（cont02の外・低height） */
.u-bridge2{background:#fff;text-align:center;padding:14px 12px 10px;line-height:0;margin:0;}
.u-bridge2 .u-tp1{margin:0;line-height:0;}
.u-bridge2 .u-tp1 img{max-width:48%;height:auto;}
.u-bridge2 .u-tp2{margin:2px 0 0;line-height:0;}
.u-bridge2 .u-tp2 img{max-width:84%;height:auto;}
.cont02{padding-top:16px;}
.cont02 .table-wrap{margin-top:6px;}
/* 教育パート画像（PC/SP出し分け） */
.u-edu-img{margin:14px 0 6px;text-align:center;line-height:0;}
.u-edu-img img{max-width:100%;height:auto;border-radius:12px;}

/* ---- FVバー（右揃え） ---- */
.u-fv-bar{text-align:right;}

/* ---- 評価記号のバランス ---- */
.u-rate.u-rA{font-size:30px;}
.u-rate.u-rB{font-size:30px;color:#6fc6cf;}
.u-rate.u-rC{font-size:27px;color:#f2b13b;}

/* ---- 比較表リデザイン（競合準拠） ---- */
.u-thumb{display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.85);border:1.5px dashed #d9a4b8;border-radius:6px;height:52px;margin:0 auto 5px;color:#b16d8c;font-size:9px;font-weight:700;line-height:1.5;max-width:96px;}
.u-score{display:block;font-size:16px;font-weight:900;color:#e0356e;line-height:1.3;}
.u-score.s1{font-size:21px;}
.u-stars{color:#f5b52e;font-size:13px;letter-spacing:1px;}
.u-stars .off{color:#d8d3d5;}
.u-cnt{display:block;font-weight:900;color:var(--p-deep);font-size:12.5px;margin:1px 0 5px;}
/* チップは競合と同じ縦積み */
.u-chips2{display:flex;flex-direction:column;align-items:center;gap:4px;margin-top:3px;}
.u-chips2 span{border-radius:6px;font-size:10px;font-weight:700;padding:3.5px 6px;line-height:1.5;white-space:nowrap;width:86%;text-align:center;}
.u-chips2 .on{background:var(--p-main);color:#fff;}
.u-chips2 .off{background:#efe8eb;color:#b5a8ae;}
.u-cell-note{font-size:8.5px;color:#a09399;margin-top:5px;line-height:1.5;}
.u-price{font-size:12px;}
.u-price s{color:#8a8a8a;font-weight:400;font-size:10.5px;}
.u-price .under-txt{font-size:12px;font-weight:900;color:#e0356e;}
.cont02 .table-wrap table td{font-size:10.5px;padding:10px 6px 13px;}
.cont02 .table-wrap table td p{line-height:1.6;}
.cont02 .table-wrap table td p.u-txt-lg{font-size:12px;}
.cont02 .table-wrap table td.d_1{background-color:#fff9e9;}
.cont02 .txt-note{font-size:9px;text-align:right;line-height:1.9;}
/* CTAボタン内テキストは白（白背景のye-border-btnは濃ローズ文字を維持） */
.cvs-wrap .grd-btn a span,.cvs-wrap .grd-btn a span small{color:#fff !important;}
.cvs-wrap .grd-btn.ye-border-btn a span{color:var(--p-deep) !important;}
/* 症例BA・口コミセクション */
.u-case{display:grid;gap:12px;}
.u-case-card{background:#fff;border:1px solid var(--p-line);border-radius:12px;padding:12px;}
.u-case-meta{font-size:15px;line-height:1.8;margin:10px 0 4px;font-weight:700;}
.u-case-note{font-size:9.5px;color:#8a7a80;line-height:1.7;}
.u-review{display:grid;gap:10px;}
.u-review-card{background:#fff;border:1px solid var(--p-line);border-radius:12px;padding:12px 14px;}
.u-review-head{font-size:12px;}
.u-review-star{color:#f5b52e;margin-right:6px;letter-spacing:1px;}
.u-review-body{font-size:12px;line-height:1.8;margin-top:4px;color:#555;}

/* ---- 比較表：URARA列固定＋横スクロール ---- */
.table-wrap .icon{display:none !important;}
.cont02 .table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.cont02 .table-wrap table{width:auto !important;table-layout:fixed !important;border-collapse:separate !important;border-spacing:0;}
.cont02 .table-wrap table th,.cont02 .table-wrap table td{border-right:1px solid #eed9e2;border-bottom:1px solid #eed9e2;}
.cont02 .table-wrap table th.head_1{width:64px;min-width:64px;font-size:12px;padding:8px 2px;letter-spacing:0;position:sticky;left:0;z-index:5;}
.cont02 .table-wrap table thead th:not(.head_1){width:127px !important;min-width:127px;}
.cont02 .table-wrap table .head_2{position:sticky;left:64px;z-index:4;box-shadow:3px 0 5px rgba(60,10,35,.10);}
.cont02 .table-wrap table td.d_1{position:sticky;left:64px;z-index:3;box-shadow:3px 0 5px rgba(60,10,35,.10);}
/* 機械の種類・その他メニュー行：上揃え＋マーク/種類数の高さ統一でチップ開始位置を揃える */
.u-row-top td{vertical-align:top;}
.cont02 .table-wrap table td .u-rate{height:40px;line-height:40px;font-size:30px;margin:0 auto 2px;}
.cont02 .table-wrap table td .u-rate.u-rS{font-size:36px;}
.cont02 .table-wrap table td .u-cnt{height:18px;line-height:18px;margin:2px 0 6px;}
/* カッコ書きの1行化 */
.u-fit{display:block;font-size:9px;white-space:nowrap;letter-spacing:0;}
.cont02 .table-wrap table td p{line-height:1.5;}
#cont02 .u-sec-ttl{font-size:19px;}
.cont02{padding-right:15px;}
.bl-border-btn a{white-space:nowrap;}
.cont01 .best-list .best-inr .bl-border-btn{width:auto;min-width:120px;}
.cont01 .u-sec-ttl{font-size:19px;}
.u-band{font-size:15px;}
.u-band.u-band-sm{font-size:13.5px;}

/* ---- 透明性まわり ---- */
.pr-note{font-size:11px;line-height:1.4;color:#8a8a8a;text-align:right;padding:4px 12px;background:#fff;}
.criteria-box{max-width:1170px;margin:10px auto 18px;padding:0 12px;}
.criteria-box details{border:1px solid #e3e3e3;border-radius:8px;background:#fafafa;}
.criteria-box summary{cursor:pointer;padding:10px 14px;font-size:13px;font-weight:bold;color:#555;list-style:none;}
.criteria-box summary::-webkit-details-marker{display:none;}
.criteria-box summary::after{content:" ▼";font-size:10px;color:#999;}
.criteria-box details[open] summary::after{content:" ▲";}
.criteria-body{padding:0 14px 12px;font-size:12px;line-height:1.8;color:#666;}
.criteria-body ul{margin:6px 0;padding-left:18px;}
.site-legal-footer{background:#f6f0f3;border-top:1px solid #e8dce2;padding:26px 16px 30px;text-align:center;font-size:12px;color:#777;line-height:2;}
.site-legal-footer a{color:#666;text-decoration:underline;margin:0 10px;}
.site-legal-footer .flinks{margin-bottom:6px;}
.site-legal-footer .fnote{font-size:11px;color:#999;}

/* ===== v8: キャンペーン・症例 ===== */
.u-cp{margin:12px 0;}
.u-cp img{width:100%;height:auto;display:block;border-radius:10px;}
.u-cp.u-cp-more{margin-bottom:0;}
.u-cp.u-cp-more img{border-radius:10px 10px 0 0;}
.u-cp.u-cp-more + .u-cp{margin:0;}
.u-cp.u-cp-more + .u-cp img{border-radius:0;}
.u-cp.u-cp-more + .u-cp + .u-cp{margin:0 0 12px;}
.u-cp.u-cp-more + .u-cp + .u-cp img{border-radius:0 0 10px 10px;}
.u-cp.u-g1{margin-bottom:0;}
.u-cp.u-g1 img{border-radius:10px 10px 0 0;}
.u-cp.u-g2{margin:0 0 12px;}
.u-cp.u-g2 img{border-radius:0 0 10px 10px;}
.u-cp-repay{max-width:540px;margin:14px auto 2px;}
.u-case-card img{width:100%;height:auto;display:block;border-radius:10px;}
.u-case-card video{width:100%;height:auto;border-radius:10px;display:block;background:#000;}
.ranking.cont04{padding-bottom:0;}
.ranking.cont04 .cvs-wrap:last-of-type{margin-bottom:0;padding-bottom:28px;}
#howto.u-edu{padding-top:26px;}

/* ===== v9: 症例まとめ・院FVバナー ===== */
.u-bnr{margin:12px 0;}
.u-bnr img{width:100%;height:auto;display:block;border-radius:12px;}
.u-case-sum{background:linear-gradient(180deg,#fff 0%,#fff0f5 100%);border:2px solid var(--p-cta);border-radius:14px;padding:16px 14px 14px;margin:16px 0 10px;box-shadow:0 3px 10px rgba(226,58,120,.12);}
.u-case-sum-ttl{text-align:center;font-size:15.5px;font-weight:900;color:var(--p-deep);margin-bottom:10px;}
.u-case-sum ul{list-style:none;margin:0;padding:0;}
.u-case-sum li{display:flex;align-items:center;gap:10px;padding:7px 2px;border-bottom:1px dashed var(--p-line);font-size:13px;}
.u-case-sum li:last-child{border-bottom:0;}
.u-cs-who{flex:0 0 74px;background:var(--p-deep);color:#fff;font-weight:700;font-size:12px;text-align:center;border-radius:999px;padding:4px 0;}
.u-cs-res b{color:var(--p-cta);font-size:16px;font-weight:900;}
.u-case-sum-btm{font-size:12.5px;line-height:1.8;margin-top:10px;text-align:center;}
.u-case-sum-btm b{background:linear-gradient(180deg,transparent 55%,#ffd6e4 55%);}

/* ===== v10: 挿絵・口コミプルダウン ===== */
.u-cp-ins{max-width:540px;margin:14px auto 2px;}
.store-rev-d summary{cursor:pointer;font-size:12px;color:var(--p-cta);font-weight:700;margin-top:5px;list-style:none;display:inline-block;}
.store-rev-d summary::-webkit-details-marker{display:none;}
.store-rev-d summary::after{content:" ▼";font-size:9px;}
.store-rev-d[open] summary::after{content:" ▲";}
.store-rev-d .store-rev-t{margin-top:6px;}
.store-rev-note{font-size:10px;color:#8a7a80;line-height:1.6;margin-top:8px;}

/* ===== v11: 320px級の狭幅SP対応 → v13の後方（ファイル末尾）に移動 ===== */

/* ===== v12: 簡易表統一・料金プラン列幅・店舗UI改善 ===== */
.cont01 .best-list .table{table-layout:fixed;width:100%;}
.cont01 .best-list .table th,.cont01 .best-list .table td{width:31%;}
.cont01 .best-list .table th:last-child,.cont01 .best-list .table td:last-child{width:38%;}
.cont01 .best-list .table td p{font-size:10.5px;line-height:1.65;}
.cont01 .best-list .table .u-fit{white-space:normal;font-size:8.5px;letter-spacing:-.02em;}
.u-fit2{display:block;font-size:11px;white-space:nowrap;letter-spacing:0;}
.best-cont.price .table{table-layout:fixed;width:100%;}
.best-cont.price .table thead th:nth-child(1){width:26%;}
.best-cont.price .table thead th:nth-child(2){width:40%;}
.best-cont.price .table thead th:nth-child(3){width:34%;}
.best-cont.price .table td{font-size:12px !important;}
.best-cont.price .table td:last-child{font-size:11.5px !important;}
.best-cont.price .table td:last-child strong{font-size:12.5px;}
.store-hint{text-align:center;font-size:12.5px;font-weight:900;color:var(--p-deep);margin-bottom:8px;}
.store-pills{display:flex;gap:10px;margin-bottom:20px;}
.store-pill{flex:1;padding:13px 0;border-radius:12px;border:2px solid #e8597b;background:#fff;color:#e8597b;font-size:15px;font-weight:900;cursor:pointer;text-align:center;position:relative;box-shadow:0 2px 6px rgba(226,58,120,.15);}
.store-pill.is-active{background:linear-gradient(135deg,#e8597b,#e23a78);border-color:#e23a78;color:#fff;}
.store-pill.is-active::after{content:"";position:absolute;left:50%;bottom:-9px;transform:translateX(-50%);border:9px solid transparent;border-top-color:#e23a78;border-bottom:0;}
.store-pill:not(.is-active)::before{content:"タップ";position:absolute;top:-8px;right:-4px;background:#ffd23f;color:#7a5a00;font-size:9px;font-weight:900;padding:2px 7px;border-radius:999px;box-shadow:0 1px 3px rgba(0,0,0,.2);}
.store-rev-ttl{font-size:14px;font-weight:900;color:var(--p-deep);margin:18px 0 8px;padding-left:9px;border-left:4px solid #e8597b;}

/* ===== v13: 全体フォントサイズ底上げ（SP+1px・PCはu-系にMQ追加） =====
   ※手動改行(<br>)・nowrap要素を崩さないため、固定列幅の比較表は列幅も同時に拡張 */
/* --- 見出し・バンド --- */
.cont01 .u-sec-ttl,#cont02 .u-sec-ttl{font-size:20px;}
.u-sec-ttl .u-small{font-size:14px;}
.u-band{font-size:16px;}
.u-band.u-band-sm{font-size:14.5px;}
.u-edu-sub{font-size:17px;}
/* --- FVバー注釈 --- */
.u-fv-day{font-size:12px;}
.u-fv-note{font-size:11px;}
/* --- cont01 簡易カード --- */
.best-list .best-inr{font-size:12px;}
.cont01 .best-list .table td p{font-size:11.5px;}
.cont01 .best-list .table .u-fit{font-size:9.5px;}
.note{font-size:9px;}
/* No.1カード説明文＝1行維持（SPは12pxが1行に収まる上限。PCはMQで拡大） */
.u-card-desc{font-size:12px;}
/* --- cont02 徹底比較表（列幅127→132pxで+1pxの余白を確保） --- */
.cont02 .table-wrap table thead th:not(.head_1){width:132px !important;min-width:132px;}
.cont02 .table-wrap table td{font-size:11.5px;}
.cont02 .table-wrap table td p.u-txt-lg{font-size:13px;}
.u-cnt,.cont02 .table-wrap table td .u-cnt{font-size:13.5px;}
.u-chips2 span{font-size:11px;}
.u-price{font-size:13px;}
.u-price s{font-size:11.5px;}
.u-price .under-txt{font-size:13px;}
.u-cell-note{font-size:9.5px;}
.u-fit{font-size:10px;}
.cont02 .txt-note{font-size:10px;}
.cont02 .table-wrap table td .grd-btn a span{font-size:10px;}
.cont02 .table-wrap table td .grd-btn .today{font-size:11px;}
/* --- 教育セクション --- */
.u-edu-lead{font-size:15px;}
.u-vs-col h5{font-size:14px;}
.u-vs-col p{font-size:12.5px;}
.u-edu-note{font-size:11px;}
.u-mcard h6{font-size:13.5px;}
.u-mcard .u-mfor{font-size:10.5px;}
.u-mcard p{font-size:11.5px;}
/* u-edu-ctaは15pxだと「〜クリニックほど、」が中途折返しするため据え置き（PCのみ拡大） */
.u-sel .u-sel-num{font-size:12px;}
.u-sel h5{font-size:18px;}
.u-sel p{font-size:14.5px;}
/* --- 詳細カード（機械・リスク・料金表） --- */
.u-machine h5{font-size:16px;}
.u-machine .u-tag{font-size:12px;}
.u-machine p{font-size:14px;}
.u-risk{font-size:12px;}
.u-risk summary{font-size:13.5px;}
.best-cont.price .table td{font-size:14px !important;padding-left:4px !important;padding-right:4px !important;letter-spacing:-.01em;}
.best-cont.price .table td:last-child{font-size:13.5px !important;}
.best-cont.price .table td:last-child strong{font-size:14.5px;}
/* 14px化で「プログラム」「〜点滴の」が1文字落ちしないよう列幅を再配分（旧26/40/34。実測margin+2〜3px確保） */
.best-cont.price .table thead th:nth-child(1){width:26.5%;}
.best-cont.price .table thead th:nth-child(2){width:40.5%;}
.best-cont.price .table thead th:nth-child(3){width:33%;}
.u-fit2{font-size:13px;}
/* --- 症例・口コミ --- */
/* 症例メタ＝サイズアップ＋減量幅をマーカー×赤太字で強調 */
.u-case-meta{font-size:16px;line-height:1.8;}
.u-case-meta b{color:var(--p-deep);}
.u-cs-down{color:#e0356e;font-weight:900;font-size:18px;}
.u-case-note{font-size:10.5px;}
.u-case-sum-ttl{font-size:16px;letter-spacing:-.01em;}
.u-case-sum li{font-size:14px;}
.u-cs-who{font-size:12.5px;}
.u-cs-res b{font-size:17px;}
.u-case-sum-btm{font-size:13.5px;}
.u-review-head{font-size:13px;}
.u-review-body{font-size:13px;}
.store-rev-sum,.store-rev-t,.store-rev-more p,.store-rev-h{font-size:13px;}
.store-rev-ttl{font-size:14.5px;}
.store-info-table{font-size:13.5px;}
.store-note{font-size:11px;}
.store-hint{font-size:13px;}
/* --- 透明性・フッター --- */
.pr-note{font-size:12px;}
.criteria-box summary{font-size:14px;}
.criteria-body{font-size:13px;}
.site-legal-footer{font-size:13px;}
.site-legal-footer .fnote{font-size:12px;}

/* --- PC(601px〜): u-系コンポーネントにはPC拡大が無かったため新設 --- */
@media(min-width:601px){
  /* 比較表: 列幅150pxに広げてフォントを一段上げる（stickyのleft:64pxは不変） */
  .cont02 .table-wrap table thead th:not(.head_1){width:150px !important;min-width:150px;}
  .cont02 .table-wrap table td{font-size:13px;}
  .cont02 .table-wrap table td p.u-txt-lg{font-size:14.5px;}
  .u-cnt,.cont02 .table-wrap table td .u-cnt{font-size:15px;}
  .u-chips2 span{font-size:12px;}
  .u-price{font-size:14px;}
  .u-price s{font-size:12.5px;}
  .u-price .under-txt{font-size:14px;}
  .u-cell-note{font-size:10.5px;}
  .u-fit{font-size:11px;}
  .cont02 .txt-note{font-size:11px;}
  .cont02 .table-wrap table td .grd-btn a span{font-size:12px;}
  .cont02 .table-wrap table td .grd-btn .today{font-size:12px;}
  /* cont01 簡易カード */
  .cont01 .best-list .table td p{font-size:13.5px;}
  .cont01 .best-list .table .u-fit{font-size:11px;}
  .note{font-size:11px;}
  /* 教育 */
  .u-edu-lead{font-size:16px;}
  .u-vs-col h5{font-size:15px;}
  .u-vs-col p{font-size:13.5px;}
  .u-edu-note{font-size:12px;}
  .u-mcard h6{font-size:14.5px;}
  .u-mcard .u-mfor{font-size:11.5px;}
  .u-mcard p{font-size:13px;}
  .u-edu-cta{font-size:16px;}
  .u-sel p{font-size:15.5px;}
  /* 詳細カード */
  .u-machine p{font-size:15px;}
  .u-machine .u-tag{font-size:13px;}
  .u-risk{font-size:13px;}
  .u-risk summary{font-size:14.5px;}
  .best-cont.price .table td{font-size:17px !important;}
  .best-cont.price .table td:last-child{font-size:16px !important;}
  .best-cont.price .table td:last-child strong{font-size:17px;}
  .u-fit2{font-size:15px;}
  /* cont01カード説明文（1行のままPC拡大） */
  .u-card-desc{font-size:14.5px;}
  /* 症例・口コミ */
  .u-case-meta{font-size:17px;}
  .u-cs-down{font-size:20px;}
  .u-case-note{font-size:11.5px;}
  .u-case-sum li{font-size:15px;}
  .u-cs-res b{font-size:18px;}
  .u-case-sum-btm{font-size:14.5px;}
  .u-review-head,.u-review-body{font-size:14px;}
  .store-rev-sum,.store-rev-t,.store-rev-more p,.store-rev-h{font-size:14px;}
  .store-rev-ttl{font-size:15.5px;}
  .store-info-table{font-size:14.5px;}
  .store-note{font-size:12px;}
  /* 透明性・フッター */
  .criteria-body{font-size:14px;}
  .site-legal-footer{font-size:14px;}
}

/* ===== v11再掲(v13後方に配置して狭幅保護を維持・値はv13底上げに合わせ微増) ===== */
@media (max-width:360px){
  .best-list .best-inr .inr-txt .ttl{font-size:19px;}
  .cont01 .best-list .table td p{font-size:10.5px;}
  .cont01 .best-list .table th{font-size:12px;}
  .cvs-wrap .ye-border-btn a span{font-size:13px;}
  .u-case-sum-ttl{font-size:13.5px;}
  .u-case-sum li{font-size:12px;gap:6px;}
  .u-cs-who{flex:0 0 60px;font-size:11px;}
  .u-cs-res b{font-size:15px;}
  .end-cont-regina .cont-ttl{font-size:24px;}
  .end-cont-regina .serif-cont{font-size:12px;padding:18px 12px 26px 78px;}
  .end-cont-regina .serif-cont .pop-no1{width:68px !important;height:68px !important;left:-2px !important;top:-24px !important;}
  .cont04 .best-list .parallel .point-num-wrap .ttl,
  .end-cont-popreason .point-num-wrap .ttl{font-size:19px;}
  .cont04 .best-list .parallel .point-num-wrap .ttl .grd-txt,
  .cont04 .best-list .parallel .point-num-wrap .ttl .grd-txt2,
  .cont04 .best-list .parallel .point-num-wrap .ttl .grd-txt4,
  .end-cont-popreason .point-num-wrap .ttl .grd-txt,
  .end-cont-popreason .point-num-wrap .ttl .grd-txt2{font-size:25px;}
  /* 比較表はv13で列幅132px化済み。狭幅では一段戻して横スクロール量を抑制 */
  .cont02 .table-wrap table td{font-size:11px;}
  /* 料金プラン表: 狭幅では一段縮小＋余白圧縮＋列再配分で1文字落ちを防ぐ */
  .best-cont.price .table td{font-size:12px !important;padding-left:2px !important;padding-right:2px !important;letter-spacing:-.02em;}
  .best-cont.price .table td:last-child{font-size:10.5px !important;}
  .best-cont.price .table td:last-child strong{font-size:11.5px;}
  .best-cont.price .table thead th:nth-child(1){width:26%;}
  .best-cont.price .table thead th:nth-child(2){width:41%;}
}
