/* ==============================================
   日本語ページ共通フォント（会社案内ページと同じ書体ルール）
   Noto Sans JP
     本文 ........ Thin（100）
     見出し・項目名・名前・ボタン・料金・ラベル ........ Bold（700）
     上部タブナビ ........ Regular（400）
     英字の小見出し（Section の上の英字）は細いまま
   ヘッダー・フッター・お問い合わせバナー・Cookie 表示は従来のまま。
   ホーム（index.html）と会社案内（company.html）は、このファイルを読み込みません
   （会社案内は company-font.css、ホームは home-font.css を使用）。
   本文の太さは --jp-weight の数字を変更（100=Thin / 200 / 300=Light / 400=Regular）。
   元に戻す場合: 各ページの <link ... jp-font.css> の1行を消します。
   ============================================== */
:root {
  --jp-font: "Noto Sans JP", "游ゴシック", "Yu Gothic", "YuGothic", sans-serif;
  --jp-weight: 100;
}

/* 本文：Thin */
body > section:not(.contact-cta):not(.tour-arrange-cta),
body > div.container,
body > [class*="modal"],
body > section:not(.contact-cta):not(.tour-arrange-cta) *,
body > div.container *,
body > [class*="modal"] * {
  font-family: var(--jp-font) !important;
  font-weight: var(--jp-weight) !important;
}

/* 見出し・項目名・名前・ボタン・料金など：Bold */
body > section:not(.contact-cta):not(.tour-arrange-cta) h1,
body > section:not(.contact-cta):not(.tour-arrange-cta) h1 *,
body > section:not(.contact-cta):not(.tour-arrange-cta) h2,
body > section:not(.contact-cta):not(.tour-arrange-cta) h2 *,
body > section:not(.contact-cta):not(.tour-arrange-cta) h3,
body > section:not(.contact-cta):not(.tour-arrange-cta) h3 *,
body > section:not(.contact-cta):not(.tour-arrange-cta) h4,
body > section:not(.contact-cta):not(.tour-arrange-cta) h4 *,
body > section:not(.contact-cta):not(.tour-arrange-cta) h5,
body > section:not(.contact-cta):not(.tour-arrange-cta) h5 *,
body > section:not(.contact-cta):not(.tour-arrange-cta) h6,
body > section:not(.contact-cta):not(.tour-arrange-cta) h6 *,
body > section:not(.contact-cta):not(.tour-arrange-cta) th,
body > section:not(.contact-cta):not(.tour-arrange-cta) th *,
body > section:not(.contact-cta):not(.tour-arrange-cta) dt,
body > section:not(.contact-cta):not(.tour-arrange-cta) dt *,
body > section:not(.contact-cta):not(.tour-arrange-cta) strong,
body > section:not(.contact-cta):not(.tour-arrange-cta) strong *,
body > section:not(.contact-cta):not(.tour-arrange-cta) b,
body > section:not(.contact-cta):not(.tour-arrange-cta) b *,
body > section:not(.contact-cta):not(.tour-arrange-cta) summary,
body > section:not(.contact-cta):not(.tour-arrange-cta) summary *,
body > section:not(.contact-cta):not(.tour-arrange-cta) label,
body > section:not(.contact-cta):not(.tour-arrange-cta) label *,
body > section:not(.contact-cta):not(.tour-arrange-cta) button,
body > section:not(.contact-cta):not(.tour-arrange-cta) button *,
body > section:not(.contact-cta):not(.tour-arrange-cta) .btn,
body > section:not(.contact-cta):not(.tour-arrange-cta) .btn *,
body > section:not(.contact-cta):not(.tour-arrange-cta) a[class*="btn"],
body > section:not(.contact-cta):not(.tour-arrange-cta) a[class*="btn"] *,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="title"],
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="title"] > span,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="title"] > strong,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="-name"],
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="-name"] > span,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="-name"] > strong,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="heading"],
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="heading"] > span,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="heading"] > strong,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="badge"],
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="badge"] > span,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="badge"] > strong,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="price"],
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="price"] > span,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="price"] > strong,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="category"],
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="category"] > span,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="category"] > strong,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="-btn"],
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="-btn"] > span,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="-btn"] > strong,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="button"],
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="button"] > span,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="button"] > strong,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="lead-title"],
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="lead-title"] > span,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="lead-title"] > strong,
body > div.container h1,
body > div.container h1 *,
body > div.container h2,
body > div.container h2 *,
body > div.container h3,
body > div.container h3 *,
body > div.container h4,
body > div.container h4 *,
body > div.container h5,
body > div.container h5 *,
body > div.container h6,
body > div.container h6 *,
body > div.container th,
body > div.container th *,
body > div.container dt,
body > div.container dt *,
body > div.container strong,
body > div.container strong *,
body > div.container b,
body > div.container b *,
body > div.container summary,
body > div.container summary *,
body > div.container label,
body > div.container label *,
body > div.container button,
body > div.container button *,
body > div.container .btn,
body > div.container .btn *,
body > div.container a[class*="btn"],
body > div.container a[class*="btn"] *,
body > div.container [class*="title"],
body > div.container [class*="title"] > span,
body > div.container [class*="title"] > strong,
body > div.container [class*="-name"],
body > div.container [class*="-name"] > span,
body > div.container [class*="-name"] > strong,
body > div.container [class*="heading"],
body > div.container [class*="heading"] > span,
body > div.container [class*="heading"] > strong,
body > div.container [class*="badge"],
body > div.container [class*="badge"] > span,
body > div.container [class*="badge"] > strong,
body > div.container [class*="price"],
body > div.container [class*="price"] > span,
body > div.container [class*="price"] > strong,
body > div.container [class*="category"],
body > div.container [class*="category"] > span,
body > div.container [class*="category"] > strong,
body > div.container [class*="-btn"],
body > div.container [class*="-btn"] > span,
body > div.container [class*="-btn"] > strong,
body > div.container [class*="button"],
body > div.container [class*="button"] > span,
body > div.container [class*="button"] > strong,
body > div.container [class*="lead-title"],
body > div.container [class*="lead-title"] > span,
body > div.container [class*="lead-title"] > strong,
body > [class*="modal"] h1,
body > [class*="modal"] h1 *,
body > [class*="modal"] h2,
body > [class*="modal"] h2 *,
body > [class*="modal"] h3,
body > [class*="modal"] h3 *,
body > [class*="modal"] h4,
body > [class*="modal"] h4 *,
body > [class*="modal"] h5,
body > [class*="modal"] h5 *,
body > [class*="modal"] h6,
body > [class*="modal"] h6 *,
body > [class*="modal"] th,
body > [class*="modal"] th *,
body > [class*="modal"] dt,
body > [class*="modal"] dt *,
body > [class*="modal"] strong,
body > [class*="modal"] strong *,
body > [class*="modal"] b,
body > [class*="modal"] b *,
body > [class*="modal"] summary,
body > [class*="modal"] summary *,
body > [class*="modal"] label,
body > [class*="modal"] label *,
body > [class*="modal"] button,
body > [class*="modal"] button *,
body > [class*="modal"] .btn,
body > [class*="modal"] .btn *,
body > [class*="modal"] a[class*="btn"],
body > [class*="modal"] a[class*="btn"] *,
body > [class*="modal"] [class*="title"],
body > [class*="modal"] [class*="title"] > span,
body > [class*="modal"] [class*="title"] > strong,
body > [class*="modal"] [class*="-name"],
body > [class*="modal"] [class*="-name"] > span,
body > [class*="modal"] [class*="-name"] > strong,
body > [class*="modal"] [class*="heading"],
body > [class*="modal"] [class*="heading"] > span,
body > [class*="modal"] [class*="heading"] > strong,
body > [class*="modal"] [class*="badge"],
body > [class*="modal"] [class*="badge"] > span,
body > [class*="modal"] [class*="badge"] > strong,
body > [class*="modal"] [class*="price"],
body > [class*="modal"] [class*="price"] > span,
body > [class*="modal"] [class*="price"] > strong,
body > [class*="modal"] [class*="category"],
body > [class*="modal"] [class*="category"] > span,
body > [class*="modal"] [class*="category"] > strong,
body > [class*="modal"] [class*="-btn"],
body > [class*="modal"] [class*="-btn"] > span,
body > [class*="modal"] [class*="-btn"] > strong,
body > [class*="modal"] [class*="button"],
body > [class*="modal"] [class*="button"] > span,
body > [class*="modal"] [class*="button"] > strong,
body > [class*="modal"] [class*="lead-title"],
body > [class*="modal"] [class*="lead-title"] > span,
body > [class*="modal"] [class*="lead-title"] > strong {
  font-weight: 700 !important;
}

/* 入力欄に打った文字は読みやすさのため Regular */
body > section:not(.contact-cta):not(.tour-arrange-cta) input,
body > section:not(.contact-cta):not(.tour-arrange-cta) textarea,
body > section:not(.contact-cta):not(.tour-arrange-cta) select,
body > div.container input,
body > div.container textarea,
body > div.container select,
body > [class*="modal"] input,
body > [class*="modal"] textarea,
body > [class*="modal"] select {
  font-weight: 400 !important;
}

/* 上部のセクションタブ（会社案内・FAQ・採用など）：Regular */
.company-tabs, .company-tabs *,
.faq-tabs, .faq-tabs * {
  font-family: var(--jp-font) !important;
  font-weight: 400 !important;
}

/* 写真の上に重なる説明文は、読みやすさのため Light（300）
   （見出し・ボタンは Bold のまま） */
body > section.saku-hero.saku-hero p,
body > section.saku-hero.saku-hero li,
body > section.saku-hero.saku-hero small {
  font-weight: 300 !important;
}

/* 料金は基本的に Bold（700）で見やすく
   （料金表のセル・空港送迎の料金・求人の給与・「円」の小さな文字・シミュレーター結果など）
   文章の途中に出てくる金額（例：「9,000円等を超えた額…」）は、文章として細いままです */
body > section:not(.contact-cta):not(.tour-arrange-cta) .fare-table td,
body > section:not(.contact-cta):not(.tour-arrange-cta) .fare-table td *,
body > section:not(.contact-cta):not(.tour-arrange-cta) .airport-fare,
body > section:not(.contact-cta):not(.tour-arrange-cta) .airport-fare *,
body > section:not(.contact-cta):not(.tour-arrange-cta) .job-salary,
body > section:not(.contact-cta):not(.tour-arrange-cta) .job-salary *,
body > section:not(.contact-cta):not(.tour-arrange-cta) .num,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="price"] small,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="price"] *,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="fare-price"] small,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="result-value"],
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="result-value"] *,
body > section:not(.contact-cta):not(.tour-arrange-cta) strong small,
body > section:not(.contact-cta):not(.tour-arrange-cta) .rate-price,
body > section:not(.contact-cta):not(.tour-arrange-cta) .rate-price *,
body > div.container .fare-table td,
body > div.container .fare-table td *,
body > div.container .airport-fare,
body > div.container .airport-fare *,
body > div.container .job-salary,
body > div.container .job-salary *,
body > div.container .num,
body > div.container [class*="price"] small,
body > div.container [class*="price"] *,
body > div.container [class*="fare-price"] small,
body > div.container [class*="result-value"],
body > div.container [class*="result-value"] *,
body > div.container strong small,
body > div.container .rate-price,
body > div.container .rate-price *,
body > [class*="modal"] .fare-table td,
body > [class*="modal"] .fare-table td *,
body > [class*="modal"] .airport-fare,
body > [class*="modal"] .airport-fare *,
body > [class*="modal"] .job-salary,
body > [class*="modal"] .job-salary *,
body > [class*="modal"] .num,
body > [class*="modal"] [class*="price"] small,
body > [class*="modal"] [class*="price"] *,
body > [class*="modal"] [class*="fare-price"] small,
body > [class*="modal"] [class*="result-value"],
body > [class*="modal"] [class*="result-value"] *,
body > [class*="modal"] strong small,
body > [class*="modal"] .rate-price,
body > [class*="modal"] .rate-price * {
  font-weight: 700 !important;
}

/* 観光で回る場所（ルートの地名・写真の名称・コースの内容と所要時間）、キャンセル料、電話番号は Bold（700） */
body > section:not(.contact-cta):not(.tour-arrange-cta) .tour-route li,
body > section:not(.contact-cta):not(.tour-arrange-cta) .tour-route li *,
body > section:not(.contact-cta):not(.tour-arrange-cta) .ueda-card-route-list li,
body > section:not(.contact-cta):not(.tour-arrange-cta) .ueda-card-route-list li *,
body > section:not(.contact-cta):not(.tour-arrange-cta) .tour-route-flow li,
body > section:not(.contact-cta):not(.tour-arrange-cta) .tour-route-flow li *,
body > section:not(.contact-cta):not(.tour-arrange-cta) .route-letter,
body > section:not(.contact-cta):not(.tour-arrange-cta) .tour-image figcaption,
body > section:not(.contact-cta):not(.tour-arrange-cta) .tour-select-list li,
body > section:not(.contact-cta):not(.tour-arrange-cta) .tour-select-sub,
body > section:not(.contact-cta):not(.tour-arrange-cta) .tour-select-sub *,
body > section:not(.contact-cta):not(.tour-arrange-cta) .tour-cancel-table td,
body > section:not(.contact-cta):not(.tour-arrange-cta) a[href^="tel:"],
body > section:not(.contact-cta):not(.tour-arrange-cta) a[href^="tel:"] *,
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="tel-number"],
body > section:not(.contact-cta):not(.tour-arrange-cta) [class*="-tel"] a,
body > section:not(.contact-cta):not(.tour-arrange-cta) .office-tel,
body > section:not(.contact-cta):not(.tour-arrange-cta) .office-addr,
body > div.container .tour-route li,
body > div.container .tour-route li *,
body > div.container .ueda-card-route-list li,
body > div.container .ueda-card-route-list li *,
body > div.container .tour-route-flow li,
body > div.container .tour-route-flow li *,
body > div.container .route-letter,
body > div.container .tour-image figcaption,
body > div.container .tour-select-list li,
body > div.container .tour-select-sub,
body > div.container .tour-select-sub *,
body > div.container .tour-cancel-table td,
body > div.container a[href^="tel:"],
body > div.container a[href^="tel:"] *,
body > div.container [class*="tel-number"],
body > div.container [class*="-tel"] a,
body > div.container .office-tel,
body > div.container .office-addr,
body > [class*="modal"] .tour-route li,
body > [class*="modal"] .tour-route li *,
body > [class*="modal"] .ueda-card-route-list li,
body > [class*="modal"] .ueda-card-route-list li *,
body > [class*="modal"] .tour-route-flow li,
body > [class*="modal"] .tour-route-flow li *,
body > [class*="modal"] .route-letter,
body > [class*="modal"] .tour-image figcaption,
body > [class*="modal"] .tour-select-list li,
body > [class*="modal"] .tour-select-sub,
body > [class*="modal"] .tour-select-sub *,
body > [class*="modal"] .tour-cancel-table td,
body > [class*="modal"] a[href^="tel:"],
body > [class*="modal"] a[href^="tel:"] *,
body > [class*="modal"] [class*="tel-number"],
body > [class*="modal"] [class*="-tel"] a,
body > [class*="modal"] .office-tel,
body > [class*="modal"] .office-addr {
  font-weight: 700 !important;
}
/* 数字（js/jp-num.js が自動で囲んだもの）は Bold。上のルールより強くしてあります */
body b.jp-num.jp-num.jp-num {
  font-weight: 700 !important;
}
