@charset "UTF-8";
/* ==========================================================
   tablet-type.css — タブレット・PC 帯（768〜1920px）KV 以降の文字サイズ調整
   ※ 自動生成ファイル。直接編集せず _tools/tablet_type/gen_tablet_type.py を再実行。
   PC 値 N px → 14px + (N − 14) × c ／ c = 0.3（768px）→ 1（1920px）の線形。
   14px 以下の文字・KV・ヘッダー・フッター・追従ナビは対象外。
   ========================================================== */
@media (min-width: 768px) and (max-width: 1920px) {
  /* ---- css/sections/02_intro.css ---- */
  .intro-title { font-size: calc(9.6667px + 1.5799vw); }
  .intro-title-lg { font-size: calc(3.3333px + 2.066vw); }
  .intro-lead { font-size: calc(13.3333px + 0.2431vw); letter-spacing: 0.04em; }
  /* ---- css/sections/03_worry.css ---- */
  .worry-title { font-size: calc(3.3333px + 2.066vw); }
  .worry-title .worry-s { font-size: calc(9.6667px + 1.5799vw); }
  .worry-title .worry-k { font-size: calc(9.6667px + 1.5799vw); }
  .worry-item-txt { font-size: calc(13px + 0.3646vw); }
  /* ---- css/sections/04_options.css ---- */
  .options-title { font-size: min(max(28px, calc(48 * var(--hu))), calc(3.3333px + 2.066vw)); }
  .options-lead { font-size: min(max(14px, calc(18 * var(--hu))), calc(13.3333px + 0.2431vw)); }
  .options-num { font-size: min(max(24px, calc(32 * var(--u))), calc(11px + 1.0938vw)); }
  .options-name-main { font-size: min(max(15px, calc(20 * var(--u))), calc(13px + 0.3646vw)); }
  .options-name-sub { font-size: min(max(12px, calc(16 * var(--u))), calc(13.6667px + 0.1215vw)); }
  .options-desc { font-size: min(max(12px, calc(16 * var(--u))), calc(13.6667px + 0.1215vw)); }
  /* ---- css/sections/05_compare.css ---- */
  .compare-title { font-size: calc(3.3333px + 2.066vw); }
  .compare-t-s { font-size: calc(9.6667px + 1.5799vw); }
  .compare-hd-bar { font-size: calc(13px + 0.3646vw); }
  .compare-rh .compare-tx { font-size: calc(13.3333px + 0.2431vw); }
  .compare-c .compare-tx { font-size: calc(13.3333px + 0.2431vw); }
  .compare-btn-label { font-size: calc(13px + 0.3646vw); letter-spacing: 0.04em; }
  /* ---- css/sections/06_merit.css ---- */
  .merit-title { font-size: calc(3.3333px + 2.066vw); }
  .merit-lead { font-size: calc(13.3333px + 0.2431vw); }
  .merit-label-txt { font-size: calc(11px + 1.0938vw); line-height: 1.125em; }
  .merit-script { font-size: calc(0.3333px + 4.9826vw); line-height: 0.375em; }
  .merit-card-title { font-size: calc(12.3333px + 0.6076vw); line-height: 1em; }
  .merit-card-text { font-size: calc(13.3333px + 0.2431vw); }
  /* ---- css/sections/07_cost.css ---- */
  .cost-title { font-size: calc(3.3333px + 2.066vw); }
  .cost-title-sm { font-size: calc(9.6667px + 1.5799vw); }
  .cost-lead { font-size: calc(13.3333px + 0.2431vw); letter-spacing: 0.04em; }
  .cost-hd { font-size: calc(13px + 0.3646vw); }
  .cost-plan { font-size: calc(13.3333px + 0.2431vw); }
  .cost-price, .cost-method, .cost-crown { font-size: calc(13.3333px + 0.2431vw); }
  .cost-note { font-size: calc(13.6667px + 0.1215vw); }
  .cost-btn-label { font-size: calc(13px + 0.3646vw); letter-spacing: 0.04em; }
  /* ---- css/sections/08_flow.css ---- */
  .flow-title { font-size: calc(3.3333px + 2.066vw); }
  .flow-title-sm { font-size: calc(9.6667px + 1.5799vw); }
  .flow-lead { font-size: calc(13.3333px + 0.2431vw); }
  .flow-num-t { font-size: calc(11px + 1.0938vw); line-height: 0.75em; }
  .flow-hd { font-size: calc(12.3333px + 0.6076vw); line-height: 1em; }
  .flow-bd { font-size: calc(13.3333px + 0.2431vw); }
  /* ---- css/sections/09_case.css ---- */
  .case-title { font-size: calc(3.3333px + 2.066vw); }
  .case-title-sm { font-size: calc(9.6667px + 1.5799vw); }
  .case-lead { font-size: calc(13.3333px + 0.2431vw); }
  .case-badge { font-size: calc(13.6667px + 0.1215vw); line-height: 1.125em; }
  .case-name { font-size: calc(13px + 0.3646vw); line-height: 1.15em; }
  .case-note { font-size: calc(13.6667px + 0.1215vw); }
  .case-risk-title { font-size: calc(13px + 0.3646vw); }
  .case-risk-list { font-size: calc(13.8333px + 0.0608vw); }
  /* ---- css/sections/10_risk.css ---- */
  .risk-title { font-size: calc(3.3333px + 2.066vw); }
  .risk-title-sm { font-size: calc(9.6667px + 1.5799vw); }
  .risk-lead { font-size: calc(13.3333px + 0.2431vw); letter-spacing: 0.04em; }
  .risk-txt { font-size: calc(13.3333px + 0.2431vw); line-height: 1.2222em; }
  /* ---- css/sections/11_faq.css ---- */
  .faq-title { font-size: calc(3.3333px + 2.066vw); }
  .faq-lead { font-size: calc(13.3333px + 0.2431vw); letter-spacing: 0.04em; }
  .faq-badge--q { font-size: calc(12.7113px + 0.4698vw); letter-spacing: -0.0107em; }
  .faq-badge--a { font-size: calc(12.7113px + 0.4698vw); letter-spacing: -0.0107em; }
  .faq-question { font-size: calc(12px + 0.7292vw); letter-spacing: 0.0385em; }
  .faq-answer { font-size: calc(13.3333px + 0.2431vw); letter-spacing: 0.0556em; }
  .faq-btn-label { font-size: calc(13px + 0.3646vw); letter-spacing: 0.04em; }
  /* ---- css/sections/12_gl.css ---- */
  .gl-title { font-size: calc(11px + 1.0938vw); }
  .gl-bar-label { font-size: calc(13.1667px + 0.3038vw); }
  .gl-body-main { font-size: calc(13.6667px + 0.1215vw); }
  .gl-body-note { font-size: calc(13.8333px + 0.0608vw); }
  .gl-cost-lead { font-size: calc(13.6667px + 0.1215vw); }
  .gl-price { font-size: calc(13.6667px + 0.1215vw); }
  .gl-cost-note { font-size: calc(13.8333px + 0.0608vw); }
  .gl-risk-item { font-size: calc(13.6667px + 0.1215vw); }
  .gl-risk-note { font-size: calc(13.8333px + 0.0608vw); }
  .gl-price-item { font-size: calc(13.6667px + 0.1215vw); }
}
