/* =========================
   Font families
   ========================= */
:root{
  /* リード文・本文（日本語） */
  --ff-jp: "Noto Sans JP", system-ui, -apple-system, "Segoe UI",
           "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic",
           "Meiryo", sans-serif;

  /* ナビや英語見出し（英字） */
  --ff-en: "Outfit", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;

  /* MVキャッチ（丸ゴ） */
  --ff-catch: "M PLUS Rounded 1c", "Noto Sans JP", system-ui,
              -apple-system, "Segoe UI", "Hiragino Sans", "Yu Gothic",
              "Meiryo", sans-serif;
}

/* 全体のデフォルトは日本語本文 */
html, body{
  font-family: var(--ff-jp);
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* リード文（本文より少し読みやすく） */
.lead{
  font-family: var(--ff-jp);
  font-weight: 400;            /* 300でもOK（細め） */
  line-height: 1.9;
}

/* ナビ（英語） */
.header-nav a,
.global-nav a{
  font-family: var(--ff-en);
  font-weight: 600;
  letter-spacing: .08em;
}

/* 英語の見出し：要素に lang="en" を付けるか .font-en を付ければ適用 */
h1:lang(en), h2:lang(en), h3:lang(en),
h4:lang(en), h5:lang(en), h6:lang(en),
.font-en{
  font-family: var(--ff-en);
  font-weight: 700;
  letter-spacing: .02em;
}

/* MVキャッチ（テキストで出す場合） */
.mv-catch{
  font-family: var(--ff-catch);
  font-weight: 700;            /* 強めに見せたいなら 800 */
  letter-spacing: .02em;
}

/* 数字を英字フォントで揃えたい時（任意） */
.num, .counter{
  font-family: var(--ff-en);
}


:root{
  --c-text:#222; --c-muted:#555; --c-line:#e9e9e9;
  --radius:14px; --shadow:0 6px 16px rgba(0,0,0,.06);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:'Noto Sans JP',sans-serif;color:var(--c-text);line-height:1.7}
img{max-width:100%;display:block}
.container{max-width:1200px;margin:0 auto;padding:0 24px}
.section{position:relative;padding:42px 0}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0)}
