/* ir.css — IR ランディング（Figma 243:4579「top-ir 1st版」やり直し＝正式版・2026-07-05 準拠）。
   ヒーロー＝「IR」大＋「News」／本体＝IR News フル一覧（左サイドバー：年セレクト＋カテゴリフィルタ／右：全件）／
   下部＝IR サイトマップ（各詳細サブページへ委譲リンク）。
   タイトル帯 geometry は inner.css の .c-PageHero（＋--alt grey背景）に一本化＝ここでは触らない。 */

/* ---------- ヒーロー（Frame 83：eyebrow＋「IR」96／「News」48・下端揃え・gap147） ---------- */
.c-IrHero {
  display: flex;
  align-items: flex-end;
  gap: clamp(48px, 10vw, 147px);
  flex-wrap: wrap;
}
.c-IrHero__lead { min-width: 0; }               /* c-Breadcrumb(margin-bottom:20)＋titleMincho「IR」 */
.c-IrHero__title { margin: 0; }                 /* .c-PageHero__titleMincho＝mincho/clamp(48,8vw,96)/500 */
.c-IrHero__news {
  /* Figma 271:5257: News テキスト(lh64)は 92px ブロックの上端に置かれ、親 Frame33 は cAlign=MAX（下端揃え）
     ＝News 下端は IR 下端より 28px 上。flex-end 揃えのまま margin-bottom で 28px 持ち上げて再現。 */
  margin: 0 0 28px;
  font-family: var(--font-mincho);
  font-size: clamp(28px, 4vw, 48px);
  font-weight: 500;
  line-height: calc(64 / 48);                  /* Figma lh64 @48px */
  color: var(--ink);
}

/* ---------- IR News（見出し＋フィルタ左／一覧右：Figma 243:4586 準拠。左520＋右760＝1280） ---------- */
.c-IrNews {
  display: grid;
  grid-template-columns: minmax(0, 520fr) minmax(0, 760fr);
  align-items: start;
}
.c-IrNews__side { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; }
.c-IrNews__title {
  margin: 0;
  /* H2統一: 旧 serif-en(Georgia)/400/1.33 → Figma H2(YuMincho/500/lh1.333) */
  font-family: var(--font-mincho);
  font-size: clamp(38px, 4.4vw, 48px);
  font-weight: 500;
  line-height: 1.333;
  color: var(--ink);
}

/* 年フィルタ（XJ ローダー描画の #xj-select-year_s＝select。Figma 164×27・既定「年を選択してください」） */
.c-IrNews__year { margin-top: 30px; }
.c-IrNews__year select {
  width: 164px;
  max-width: 100%;
  padding: 4px 8px;
  border: 1px solid var(--line);
  border-radius: 2px;
  background: #fff;
  color: var(--ink);
  font-family: var(--font-mincho);
  font-size: 13px;
  line-height: 1.4;
}

/* カテゴリフィルタ（XJ ローダーが #xj-select-category へ <ul id="type"><li><a> を描画。
   li クリックで setDocument 絞り込み＋.active 切替＝XJ ネイティブ挙動。id/出力構造は外部契約＝不可変。
   実ラベル＝ライブ「全て/適時開示/決算短信/法定開示/IR資料/お知らせ」。Figma 112×168＝6項目×28px。 */
.c-IrNews__cat { margin-top: 30px; }
.c-IrNews__cat ul { margin: 0; padding: 0; list-style: none; }
.c-IrNews__cat li { margin: 0; }
/* XJ 外部 xj.css が #xj-select-category ul を横並び flex(766px・6等分・中央) に強制する
   （#xj-select-category ul{display:flex;width:766px;margin:0 auto 40px;text-align:center} /
    #xj-select-category li{width:calc(100%/6)}）ため、Figma 243:4589（112×168・縦積み6項目×28px）
   どおりの縦積み左寄せへ打ち消す。XJ の id ルールを上回る必要があるため、外部注入点の id
   （#xj-select-category＝不可変契約）と自 BEM クラスを連結して最小限に是正（!important 不使用・グローバル無汚染）。 */
#xj-select-category.c-IrNews__cat ul { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; width: auto; margin: 0; font-size: 16px; text-align: left; }
#xj-select-category.c-IrNews__cat li { width: fit-content; }
/* ボタン化に伴い XJ の .active アンダーバー(::before)は不要＝非表示（xj.css の 18px中央下線を打ち消す）。 */
#xj-select-category.c-IrNews__cat li.active::before { display: none; }
/* 各フィルタ項目をボタン化（2026-07-07 デザイナー指定・タイプA）: 枠線＋角丸＋padding。
   XJ 注入の <li><a> をスタイルのみで装飾（id/出力構造は不可変契約）。active=アクセント塗り。 */
.c-IrNews__cat li a {
  display: block;
  box-sizing: border-box;
  /* 全ボタンの横幅を最長ラベル「適時開示」(4全角=border-box 78px)に揃える。
     適時開示は自然幅=78で不変、「全て」「IR資料」等の短いラベルが78へ拡張＝均一（クリップ無し）。 */
  min-width: 78px;
  text-align: center;
  color: var(--ink);
  font-family: var(--font-mincho);
  font-size: 13px;                /* 上の年セレクト(.c-IrNews__year select)と同値に統一 */
  line-height: 1.4;
  text-decoration: none;
  padding: 5px 12px;             /* 余白を縮小（13px フォントに合わせてコンパクトに） */
  border: 1px solid var(--line);
  border-radius: 6px;
  transition: color 180ms ease, border-color 180ms ease, background-color 180ms ease;
}
.c-IrNews__cat li a:hover { color: var(--accent); border-color: var(--accent); }
.c-IrNews__cat li.active a { color: var(--paper); background: var(--accent); border-color: var(--accent); font-weight: 500; }

/* 記事一覧（右列）。行デザイン（.c-Xj--news / .c-Xj__new）は common.css＝home/news と共有。 */
.c-IrNews__list { min-width: 0; }
.c-IrNews__loading { margin: 0; color: var(--muted); font-size: 14px; }

/* ---------- 新 /ir/ トップ（Figma 55:2714）: 左見出し520 / 右コンテンツ760 の分割を IR News・IR Library で共用 ----------
   IR News=左「IR News」+View All／右 teaser3件（hidden #xj-mainlist から先頭3件クローン）。
   IR Library=左「IR Library」／右 .c-IrLibIndex（ir-detail.css・/ir/library/ と同一部品）。 */
.c-IrTop__row {
  display: grid;
  grid-template-columns: minmax(0, 520fr) minmax(0, 760fr);  /* Figma 55:2941/2971：左520+右760=1280・gap0 */
  align-items: start;
}
.c-IrTop__aside { display: flex; flex-direction: column; gap: 30px; min-width: 0; }
.c-IrTop__title {
  /* = .c-IrNews__title / .c-NewsBand__title 同系（H2統一：YuMincho/500/48/lh1.333） */
  margin: 0;
  font-family: var(--font-mincho);
  font-size: clamp(38px, 4.4vw, 48px);
  font-weight: 500;
  line-height: 1.333;
  color: var(--ink);
}
.c-IrTop__viewAll {
  /* Figma＝YuMincho/500/16 lh28 黒／hover アクセント（.c-NewsBand__viewAll 同等） */
  font-family: var(--font-mincho);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.75;
  color: var(--ink);
  text-decoration: none;
}
.c-IrTop__viewAll:hover { color: var(--accent); }
.c-IrTop__main { min-width: 0; }
.c-IrTop__loading { margin: 0; color: var(--muted); font-size: 14px; }

/* ---------- IR Library 6カード（Figma 55:3132 実測）。現状HTML非搭載＝描画JSは休眠no-op ---------- */
.l-IrLibGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 0;
  row-gap: 25px;             /* Figma 55:2971：行間25px・カード枠線なし */
  min-width: 0;
}
.c-IrLibCard {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 27px;
  min-height: 246px;
  padding: 35px 30px 10px;
  /* 枠線なし（Figma準拠）。区切りは「過去の資料」上の .c-IrLibCard__line のみ */
}
.c-IrLibCard__titles { display: grid; gap: 9px; margin-bottom: 9px; }
.c-IrLibCard__title {
  margin: 0;
  font-family: var(--font-mincho);
  font-size: 20px;
  font-weight: 500;
  line-height: 30px;
  color: var(--ink);
}
.c-IrLibCard__en { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.2; letter-spacing: 0.02em; }
.c-IrLibCard__latest { display: grid; }
.c-IrLibCard__date { margin: 0; color: rgba(0, 0, 0, 0.5); font-size: 14px; line-height: 28px; min-height: 28px; }
.c-IrLibCard__item { margin: 0; color: var(--ink); font-size: 14px; line-height: 28px; }
.c-IrLibCard__item a { color: var(--ink); text-decoration: none; }
.c-IrLibCard__item a:hover { color: var(--accent); text-decoration: underline; }
.c-IrLibCard__foot { display: flex; flex-direction: column; gap: 10px; align-items: flex-end; }
.c-IrLibCard__line { display: block; width: 100%; height: 1px; background: var(--line); }
.c-IrLibCard__more { font-size: 14px; line-height: 28px; color: var(--ink); text-decoration: none; white-space: nowrap; }
.c-IrLibCard__more .c-IrLibCard__arrow { margin-left: 2px; color: var(--accent); }
.c-IrLibCard__more:hover { color: var(--accent); }

/* ---------- IR 関連リンク群（下部サイトマップ：Figma 243:4676。3列 max-width960 中央） ---------- */
.c-IrLinkMatrix {
  /* Figma 55:2714 Group31（960内）＝200px 固定列を space-between で 240/620/1000 配置
     （旧 repeat(3,1fr)=288px列/48gap は左に詰まり右が余り「4列（右端空列）」に見えた）。 */
  display: grid;
  grid-template-columns: repeat(3, 200px);
  justify-content: space-between;
  max-width: 960px;
  margin: 0 auto;
}
/* リンク帯は Figma ではライブラリ直下に詰まる（帯398・内側~10px）→ section上padding除去 */
.c-IrLinkMatrix__sec { padding-top: 0; padding-bottom: clamp(40px, 5vw, 56px); }
.c-IrLinkMatrix__head { margin: 0 0 12px; color: var(--ink); font-size: 15px; font-weight: 700; }
.c-IrLinkMatrix__col ul { margin: 0 0 16px; padding: 0; list-style: none; display: grid; gap: 7px; }
.c-IrLinkMatrix__col li a { color: var(--ink-soft); font-size: 13px; text-decoration: none; }
.c-IrLinkMatrix__col li a:hover { color: var(--accent); }
/* 下部リンク（株式基本情報/IRカレンダー/FAQ／免責事項/電子公告）：Figma 243:4681/4685＝3列2段・見出し／詳細を縦積み・罫線なし */
.c-IrLinkMatrix__strip {
  /* Group31 と同じ 200px×3 space-between（Figma Frame30/82：列 240/620/1000）。行間のみ gap で維持。 */
  display: grid;
  grid-template-columns: repeat(3, 200px);
  justify-content: space-between;
  row-gap: clamp(24px, 4vw, 40px);
  max-width: 960px;
  margin: clamp(24px, 4vw, 40px) auto 0;
}
.c-IrLinkMatrix__strip a {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 10px 0;
  color: var(--muted);
  font-size: 13px;
  text-decoration: none;
}
.c-IrLinkMatrix__strip a span { color: var(--ink); font-size: 15px; font-weight: 700; }
.c-IrLinkMatrix__strip a:hover { color: var(--accent); }

@media (max-width: 900px) {
  .c-IrHero { gap: 24px; }
  .c-IrNews { grid-template-columns: 1fr; gap: 32px; }
  /* サイドバー全幅化（1fr）に合わせ、カテゴリボタンを縦積み→横並び(折返し)に（2026-07-07 デザイナー指定）。 */
  #xj-select-category.c-IrNews__cat ul { flex-direction: row; flex-wrap: wrap; }
  .c-IrTop__row { grid-template-columns: 1fr; gap: 32px; }
  .c-IrLinkMatrix { grid-template-columns: 1fr; }
  .c-IrLinkMatrix__strip { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .l-IrLibGrid { grid-template-columns: 1fr; }
}
