/* ===========================
   Adobe Fonts Utility CSS
   ===========================
   使い方例:
   <p class="ff-adobe-garamond-pro fw-400">Regular</p>
   <p class="ff-adobe-garamond-pro fw-700 i">Bold Italic</p>
   --------------------------- */

/* --- 共通ユーティリティ --- */
.fw-100 {
  font-weight: 100;
}
.fw-200 {
  font-weight: 200;
}
.fw-300 {
  font-weight: 300;
}
.fw-400 {
  font-weight: 400;
}
.fw-500 {
  font-weight: 500;
}
.fw-600 {
  font-weight: 600;
}
.fw-700 {
  font-weight: 700;
}
.fw-800 {
  font-weight: 800;
}
.fw-900 {
  font-weight: 900;
}

.fi-italic {
  font-style: italic;
}

/* OpenType 機能（必要に応じて） */
.fv-osf {
  font-variant-numeric: oldstyle-nums;
}
.fv-sc {
  font-variant-caps: small-caps;
}
/* Bootstrapの後で読み込む */
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-weight: 400; /* normal */
}
/* --- ファミリー別クラス --- */
/* serif 系 */

.ff-athelas {
  font-family: "athelas", serif;
}
.ff-adobe-garamond-pro {
  font-family: "adobe-garamond-pro", serif;
}
.ff-eb-garamond {
  font-family: "eb-garamond", serif;
}
.ff-ltc-bodoni-175 {
  font-family: "ltc-bodoni-175", serif;
}
.ff-a-otf-ryumin-pr6n {
  font-family: "a-otf-ryumin-pr6n", serif;
}
.ff-trajan-pro-3 {
  font-family: "trajan-pro-3", serif;
}
.ff-shippori-mincho {
  font-family: "shippori-mincho", serif;
}

/* sans-serif 系 */
.ff-zedou {
  font-family: "zedou", sans-serif;
}
.ff-hiragino-pt {
  font-family: "hiragino-kaku-gothic-pron", sans-serif;
}
.ff-futura-pt {
  font-family: "futura-pt", sans-serif;
}
.ff-fot-cezanne-pron {
  font-family: "fot-cezanne-pron", sans-serif;
}
.ff-source-han-sans-japanese {
  font-family: "source-han-sans-japanese", sans-serif;
}
.ff-kozuka-gothic-pro {
  font-family: "kozuka-gothic-pro", sans-serif;
}
.ff-fot-rodin-pron {
  font-family: "fot-rodin-pron", sans-serif;
}
.ff-poppins {
  font-family: "poppins", sans-serif;
}
.ff-noto-sans {
  font-family: "noto-sans", sans-serif;
}
.ff-noto-sans-cjk-jp {
  font-family: "noto-sans-cjk-jp", sans-serif;
}
.ff-yu-gothic-pr6n {
  font-family: "yu-gothic-pr6n", sans-serif;
}
.ff-zen-maru-gothic {
  font-family: "zen-maru-gothic", sans-serif;
}

/* ===========================
   Letter-spacing Utilities
   =========================== */

/* 基本的な字間広げ */
.ls-1 {
  letter-spacing: 0.05em;
}
.ls-2 {
  letter-spacing: 0.1em;
}
.ls-3 {
  letter-spacing: 0.15em;
}
.ls-4 {
  letter-spacing: 0.2em;
}
.ls-5 {
  letter-spacing: 0.7em;
}
/* ネガティブ字間（詰める用） */
.ls-n1 {
  letter-spacing: -0.02em;
}
.ls-n2 {
  letter-spacing: -0.05em;
}

/* ===== 見出しレスポンシブ調整 ===== */

/* display-1 相当 */
.h-clamp-1 {
  font-size: clamp(2rem, 4vw + 1rem, 5rem);
  font-weight: 300;
  line-height: 1.2;
}

/* display-2 相当 */
.h-clamp-2 {
  font-size: clamp(1.75rem, 3.5vw + 1rem, 4rem);
  font-weight: 300;
  line-height: 1.2;
}

/* display-3 相当 */
.h-clamp-3 {
  font-size: clamp(1.5rem, 3vw + 1rem, 3.5rem);
  font-weight: 300;
  line-height: 1.2;
}

/* display-4 相当 */
.h-clamp-4 {
  font-size: clamp(1.4rem, 2.5vw + 1rem, 3rem);
  font-weight: 300;
  line-height: 1.2;
}

/* display-5 相当 */
.h-clamp-5 {
  font-size: clamp(1.3rem, 2vw + 1rem, 2.75rem);
  font-weight: 300;
  line-height: 1.2;
}

/* display-6 相当 */
.h-clamp-6 {
  font-size: clamp(1.2rem, 2vw + 1rem, 2.5rem);
  font-weight: 300;
  line-height: 1.2;
}

.h-clamp-7 {
  font-size: clamp(1rem, 1.5vw + 0.8rem, 2rem);
  font-weight: 400;
  line-height: 1.3;
}

.h-clamp-8 {
  font-size: clamp(0.85rem, 1vw + 0.4rem, 1.25rem);
  font-weight: 400;
  line-height: 1.3;
}
.h-clamp-9 {
  font-size: clamp(1.05rem, 1vw + 0.4rem, 1rem);
  font-weight: 400;
  line-height: 1.3;
}
