@charset "utf-8";
/* ------------------------------------------------------------------
   Webフォント定義（自社サーバー配信）
   2026-08-28 外部CDN（fonts.googleapis.com / cdn.jsdelivr.net）から移行

   Lato        : SIL Open Font License 1.1  → lato/OFL.txt
   Roboto      : SIL Open Font License 1.1  → roboto/OFL.txt
   YakuHanJP   : SIL Open Font License 1.1  → yakuhanjp/LICENSE.txt
------------------------------------------------------------------ */

/* ---------- Lato（欧文・標準） ---------- */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/lato/lato-latin-ext-400.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/lato/lato-latin-400.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ---------- Roboto（欧文・Medium） ---------- */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/roboto/roboto-latin-ext-500.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/roboto/roboto-latin-500.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ---------- YakuHanJP_Narrow（約物の詰め） ----------
   フォント自体が約物のみのサブセットのため unicode-range の指定は不要。
   サイトで使用しているウェイト 400 / 500 / 700 に対応する3種のみ収録。 */
@font-face {
  font-family: 'YakuHanJP_Narrow';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/yakuhanjp/YakuHanJP-Light.woff2') format('woff2');
}
@font-face {
  font-family: 'YakuHanJP_Narrow';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/yakuhanjp/YakuHanJP-DemiLight.woff2') format('woff2');
}
@font-face {
  font-family: 'YakuHanJP_Narrow';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/yakuhanjp/YakuHanJP-Medium.woff2') format('woff2');
}
