/* =========================================================
   全ページ共通の土台（アクセシビリティ・和文組版）
   =========================================================
   _header / _buttons / _footer と同じく functions.php から全ページで読み込む。
   ページ別CSS（style.css / 各自己完結CSS）にコピーしないこと。
   ========================================================= */

/* キーボード操作時のフォーカス表示。マウスクリックでは出ない（:focus-visible）。
   ライムの塗りボタン上でも見えるよう、navy の輪＋白の隙間にしている */
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 3px solid #0A2444;
  outline-offset: 3px;
  box-shadow: 0 0 0 3px #fff;
  border-radius: 4px;
}
/* 濃紺の面（フッター・CTA帯・固定CTAバー）の上ではライムの輪にする */
:where(.footer, .cta, .m-ctabar, .team) :where(a, button):focus-visible {
  outline-color: #C4F82A;
  box-shadow: none;
}
/* フォームは枠線の色変化に加えて輪を出す（contact.css の outline:none を上書き） */
.cf-field :is(input, select, textarea):focus-visible {
  outline: 3px solid #0A2444;
  outline-offset: 2px;
}

/* 本文へスキップ（キーボード利用者向け。フォーカスされたときだけ見える） */
.skip-link {
  position: absolute;
  left: 12px;
  top: -100px;
  z-index: 1000;
  padding: 10px 18px;
  border-radius: 8px;
  background: #0A2444;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
}
.skip-link:focus { top: 12px }

/* 和文の禁則を厳しめに（「ー」「ッ」などを行頭に置かない。「スポ／ーツ」のような折り返しを防ぐ） */
html { line-break: strict }

/* 見出しは文節で折り返す（「食べさ／せれば」のような泣き別れを防ぐ）。
   未対応ブラウザでは従来どおりの折り返しになるだけ */
:where(h1, h2, h3, h4, summary, .art-title) {
  word-break: auto-phrase;
  text-wrap: balance;
}

/* スマホのタップ領域：高さ20〜30pxだった単独リンクを44px確保する
   （パンくず・一覧へのリンク・フッターの電話/LINE・チーム相談リンク） */
@media (max-width: 960px) {
  .bc a,
  .tgh-more,
  .cta-team,
  .footer .ft-num,
  .footer .ft-line {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
  }
}
