@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-line { font-size: calc(3.3333px + 2.066vw); }
  .intro-t-a, .intro-t-b, .intro-t-d { font-size: calc(9.6667px + 1.5799vw); }
  .intro-t-c { font-size: calc(3.3333px + 2.066vw); }
  .intro-lead { font-size: calc(13.3333px + 0.2431vw); letter-spacing: 0.04em; }
  .intro-card-ttl { font-size: calc(13px + 0.3646vw); line-height: 1em; letter-spacing: -0.0075em; }
  .intro-card-txt { font-size: calc(13.6667px + 0.1215vw); }
  @media (min-width: 768px) and (max-width: 1023px) {
    .intro-title-line { font-size: calc(9.1667px + 1.7622vw); }
    .intro-t-a, .intro-t-b, .intro-t-d { font-size: calc(10.3333px + 1.3368vw); }
    .intro-t-c { font-size: calc(9.1667px + 1.7622vw); }
  }
  /* ---- css/sections/03_immediate.css ---- */
  .sec-immediate .immediate-title-main { font-size: calc(3.3333px + 2.066vw); }
  .sec-immediate .immediate-title-sub { font-size: calc(11.6667px + 0.8507vw); letter-spacing: 0.04em; }
  .sec-immediate .immediate-lead { font-size: calc(13.3333px + 0.2431vw); letter-spacing: 0.04em; }
  .sec-immediate .immediate-h3 { font-size: calc(12.3333px + 0.6076vw); }
  .sec-immediate .immediate-about-text { font-size: calc(13.6667px + 0.1215vw); }
  .sec-immediate .immediate-btn-label { font-size: calc(13.6667px + 0.1215vw); }
  .sec-immediate .immediate-condition-lead { font-size: calc(13.3333px + 0.2431vw); }
  .sec-immediate .immediate-condition-text { font-size: calc(13.3333px + 0.2431vw); letter-spacing: 0.04em; }
  .sec-immediate .immediate-extraction-text { font-size: calc(13.6667px + 0.1215vw); }
  .sec-immediate .immediate-caution-text { font-size: calc(13.3333px + 0.2431vw); }
  /* ---- css/sections/04_mini.css ---- */
  .mini-title { font-size: calc(3.3333px + 2.066vw); }
  .mini-title-lg { font-size: calc(3.3333px + 2.066vw); }
  .mini-title-sm { font-size: calc(9.6667px + 1.5799vw); }
  .mini-subtitle { font-size: calc(11.6667px + 0.8507vw); }
  .mini-lead { font-size: calc(13.3333px + 0.2431vw); letter-spacing: 0.04em; }
  .mini-about-title { font-size: calc(12.3333px + 0.6076vw); line-height: 1.5em; }
  .mini-about-title-paren { font-size: calc(13px + 0.3646vw); }
  .mini-about-body { font-size: calc(13.6667px + 0.1215vw); }
  .mini-recommend-title { font-size: calc(12.3333px + 0.6076vw); line-height: 1em; }
  .mini-card-text { font-size: calc(13.6px + 0.1458vw); letter-spacing: 0.0402em; }
  /* ---- css/sections/05_flapless.css ---- */
  .flapless-title { font-size: calc(3.3333px + 2.066vw); }
  .flapless-subtitle { font-size: calc(11.6667px + 0.8507vw); }
  .flapless-lead { font-size: calc(13.3333px + 0.2431vw); letter-spacing: 0.04em; }
  .flapless-h3 { font-size: calc(12.3333px + 0.6076vw); line-height: 1.5em; }
  .flapless-text { font-size: calc(13.6667px + 0.1215vw); }
  .flapless-rec-text { font-size: calc(13.6667px + 0.1215vw); letter-spacing: 0.04em; }
  .flapless-line-heading { font-size: calc(12.3333px + 0.6076vw); line-height: 1em; }
  .flapless-step-num { font-size: calc(12.3333px + 0.6076vw); letter-spacing: 0.04em; }
  .flapless-step-title { font-size: calc(13px + 0.3646vw); line-height: 1.2em; }
  .flapless-step-title-small { font-size: calc(13.6667px + 0.1215vw); }
  .flapless-step-text { font-size: calc(13.8333px + 0.0608vw); }
  .flapless-md-title { font-size: calc(12.3333px + 0.6076vw); line-height: 1em; }
  .flapless-md-text { font-size: calc(13.6667px + 0.1215vw); }
  /* ---- css/sections/06_facility.css ---- */
  .facility-title { font-size: calc(3.3333px + 2.066vw); }
  .facility-title-s { font-size: calc(9.6667px + 1.5799vw); }
  .facility-lead { font-size: calc(13.3333px + 0.2431vw); }
  .facility-card-text { font-size: calc(13.3333px + 0.2431vw); }
  /* ---- css/sections/07_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); }
  .risk-text { font-size: calc(13.3333px + 0.2431vw); line-height: 1.2222em; }
  /* ---- css/sections/08_cases.css ---- */
  .cases-title { font-size: calc(3.3333px + 2.066vw); }
  .cases-label { font-size: calc(13.6667px + 0.1215vw); line-height: 1.125em; }
  .cases-name { font-size: calc(13px + 0.3646vw); line-height: 1.15em; }
  .cases-detail p { font-size: calc(13.6667px + 0.1215vw); }
  .cases-risk-title { font-size: calc(13px + 0.3646vw); }
  .cases-risk-list { font-size: calc(13.8333px + 0.0608vw); }
  /* ---- css/sections/09_faq.css ---- */
  .faq-title-l { font-size: calc(3.3333px + 2.066vw); }
  .faq-title-s { font-size: calc(9.6667px + 1.5799vw); }
  .faq-q-text { font-size: calc(12px + 0.7292vw); letter-spacing: 0.0385em; }
  .faq-badge-mark { font-size: calc(12.7113px + 0.4698vw); }
  .faq-badge-num { font-size: calc(13.6667px + 0.1215vw); }
  .faq-a-text { font-size: calc(13.3333px + 0.2431vw); letter-spacing: 0.0556em; }
  .faq-btn-text { font-size: calc(13px + 0.3646vw); letter-spacing: 0.04em; }
  /* ---- css/sections/10_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); }
}
