@charset "utf-8";

/* ── トップメッセージ ────────────────────────────────── */
.ir_top_message {
  width: 800px;
  margin: 0 auto;
  vertical-align: top;
}
.ir_topmessage-fig {
  text-align: center;
  display: table;
  overflow: hidden;
  margin: 0 0 36px;
  table-layout: fixed;
  float: left;
  width: auto;
  margin-right: 30px;
}

/* ══════════════════════════════════════════════════════
   EIR ウィジェット スタイル上書き
   ══════════════════════════════════════════════════════ */

/* ── フィルターバー ──────────────────────────────────── */

/* 年・カテゴリを同一行にレイアウト */
.s_newsTypeController {
  display: flex !important;
  align-items: center !important;
  gap: 32px !important;
  margin-bottom: 20px !important;
  flex-wrap: wrap !important;
}

/* 年コントローラー */
.s_yearController {
  margin-bottom: 0 !important;
  flex-shrink: 0 !important;
}

/* 年セレクト */
.s_eirSelect {
  height: 36px !important;
  padding: 0 32px 0 12px !important;
  border: 1px solid #edf2f8 !important;
  border-radius: 4px !important;
  background-color: #ffffff !important;
  background-image: url('/ir/img/arrow.svg') !important;
  background-repeat: no-repeat !important;
  background-position: right 8px center !important;
  background-size: 16px 16px !important;
  font-family: 'Zen Kaku Gothic New', sans-serif !important;
  font-size: 13px !important;
  color: #353844 !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  cursor: pointer !important;
  min-width: 120px !important;
}

/* カテゴリタブリスト */
.s_eirTab {
  display: flex !important;
  align-items: center !important;
  gap: 0 24px !important;
  flex-wrap: wrap !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: 1 !important;
}

/* タブ個々のli — ボーダーを除去 */
.s_eirTab li {
  width: auto !important;
  border: none !important;
  background: none !important;
}
.s_eirTab li + li {
  border-left-width: 0 !important;
}

/* タブリンク — テキストのみ */
.s_eirTab li a {
  display: inline-block !important;
  width: auto !important;
  height: auto !important;
  padding: 3px 0 4px !important;
  font-family: 'Zen Kaku Gothic New', sans-serif !important;
  font-weight: 500 !important;
  font-size: 14px !important;
  color: #353844 !important;
  text-align: left !important;
  text-decoration: none !important;
  background: none !important;
  border-bottom: 2px solid transparent !important;
  white-space: nowrap !important;
  transition: color 0.15s, border-color 0.15s !important;
}

/* ホバー */
.s_eirTab li a:hover {
  color: #057ada !important;
  background: none !important;
}

/* アクティブタブ — 青テキスト + 青下線 */
.s_eirTab li.active a,
.s_eirTab li.active a:hover {
  color: #057ada !important;
  background: none !important;
  border-bottom: 2px solid #057ada !important;
}

/* ── 記事リスト ──────────────────────────────────────── */

/* 記事行 */
.s_eirList_item {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 9px 8px !important;
  margin-top: 0 !important;
  padding: 24px 0 20px !important;
  border-top: 1px solid #edf2f8 !important;
  box-sizing: border-box !important;
}
.s_eirList_item:first-child {
  border-top: none !important;
  padding-top: 0 !important;
}

/* 日付 — Roboto Light 12px / 幅60px */
.s_eirModule_date {
  font-family: 'Roboto', sans-serif !important;
  font-weight: 300 !important;
  font-size: 12px !important;
  line-height: 1.6 !important;
  color: #353844 !important;
  width: 60px !important;
  flex-shrink: 0 !important;
  white-space: nowrap !important;
}

/* カテゴリバッジ列 */
.s_eirModule_category {
  width: auto !important;
  flex-shrink: 0 !important;
}
/* バッジ本体 — 青テキスト 18px×64px ピル型 */
.s_eirModule_category_icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 64px !important;
  height: 18px !important;
  background-color: #ffffff !important;
  border: none !important;
  border-radius: 99px !important;
  color: #057ada !important;
  font-family: 'Zen Kaku Gothic New', sans-serif !important;
  font-weight: 500 !important;
  font-size: 12px !important;
  padding: 0 !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
}
/* カテゴリ画像アイコン非表示 */
.s_eirModule_category_image {
  display: none !important;
}

/* タイトルボックス — 全幅で2行目 / タイトル + ファイル情報を同一行に */
.s_eirModule_titleBox {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 0 9px !important;
  flex: 0 0 100% !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding-left: 0 !important;
}

/* タイトルテキスト */
.s_eirModule_title {
  font-family: 'Zen Kaku Gothic New', sans-serif !important;
  font-weight: 400 !important;
  font-size: 16px !important;
  color: #353844 !important;
  line-height: 1.6 !important;
  flex: 1 1 0 !important;
  min-width: 0 !important;
}
.s_eirModule_title_label {
  color: #353844 !important;
}
.s_eirModule_title_link,
.s_eirModule_titleBox > a {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  color: #353844 !important;
  text-decoration: none !important;
  font-family: 'Zen Kaku Gothic New', sans-serif !important;
  font-weight: 400 !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
}
.s_eirModule_title_link:hover,
.s_eirModule_titleBox a:hover {
  text-decoration: underline !important;
  color: #057ada !important;
}

/* ── ファイルタイプアイコン ── */
.s_eirModule_type_figure {
  display: inline-flex !important;
  align-items: center !important;
  flex-shrink: 0 !important;
  margin-left: 0 !important;
  vertical-align: middle !important;
}
.s_eirModule_type_figure img {
  width: 16px !important;
  height: 16px !important;
  object-fit: contain !important;
  display: block !important;
}
.s_eirModule_type_icon-space,
.s_eirModule_type_icon-url {
  display: none !important;
}
.s_eirModule_type_icon-pdf {
  display: none !important;
}

/* ファイルサイズ */
.s_eirModule_size_item {
  font-family: 'Zen Kaku Gothic New', sans-serif !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  color: #696969 !important;
  flex-shrink: 0 !important;
  white-space: nowrap !important;
}

/* コメント */
.s_eirModule_comment {
  margin-top: 2px !important;
  flex: 0 0 100% !important;
}
.s_eirModule_comment_item {
  font-family: 'Zen Kaku Gothic New', sans-serif !important;
  font-size: 13px !important;
  color: #696969 !important;
  line-height: 1.6 !important;
}

/* titleBox 外の重複要素を非表示 */
.s_eirList_item_type,
.s_eirList_item_size,
.s_eirList_item_comment {
  display: none !important;
}

/* ══════════════════════════════════════════════════════
   IRニュース一覧ページ専用（DOM移動でフィルター枠外配置）
   body.ir-news-full-page にのみ適用
   ══════════════════════════════════════════════════════ */

/* #ir-filter: 年セレクト＋カテゴリを横並びに */
body.ir-news-full-page #ir-filter {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 12px 32px !important;
  padding: 20px 0 !important;
}

/* フィルターバー本体（タブ側）: flexアイテムとして伸ばす */
body.ir-news-full-page .s_newsTypeController {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 0 !important;
  flex: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* 年セレクトコンテナ: 幅固定・縮まない */
body.ir-news-full-page .s_yearController {
  flex-shrink: 0 !important;
  width: 176px !important;
  margin-bottom: 0 !important;
}

/* 年セレクト本体: コンテナ幅に合わせる */
body.ir-news-full-page .s_eirSelect {
  width: 100% !important;
  min-width: unset !important;
}

/* カテゴリタブ: 残り幅を使い wrap 可 */
body.ir-news-full-page .s_eirTab {
  flex: 1 !important;
  gap: 12px 24px !important;
}

/* 記事アイテム: card の p-[24px] + item の px-[32px] = 56px */
body.ir-news-full-page .s_eirList_item {
  padding: 24px 32px 20px !important;
}
body.ir-news-full-page .s_eirList_item:first-child {
  padding-top: 24px !important;
}

/* ページネーション */
body.ir-news-full-page .eir-pager {
  padding-left: 32px !important;
  padding-right: 32px !important;
  margin-bottom: 8px !important;
}

/* ══════════════════════════════════════════════════════
   決算説明資料ページ専用（ir-presentation-full-page）
   ══════════════════════════════════════════════════════ */

body.ir-presentation-full-page #ir-filter {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 12px 32px !important;
  padding: 20px 0 !important;
}

body.ir-presentation-full-page .s_newsTypeController {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 0 !important;
  flex: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.ir-presentation-full-page .s_yearController {
  flex-shrink: 0 !important;
  width: 176px !important;
  margin-bottom: 0 !important;
}

body.ir-presentation-full-page .s_eirSelect {
  width: 100% !important;
  min-width: unset !important;
}

body.ir-presentation-full-page .s_eirTab {
  flex: 1 !important;
  gap: 12px 24px !important;
}

body.ir-presentation-full-page .s_eirList_item {
  padding: 24px 32px 20px !important;
}
body.ir-presentation-full-page .s_eirList_item:first-child {
  padding-top: 24px !important;
}

body.ir-presentation-full-page .eir-pager {
  padding-left: 32px !important;
  padding-right: 32px !important;
  margin-bottom: 8px !important;
}

/* SP (< 1024px) */
@media (max-width: 1023px) {
  body.ir-presentation-full-page #ir-filter {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 20px !important;
    padding: 20px !important;
  }
  body.ir-presentation-full-page .s_newsTypeController {
    width: auto !important;
    flex: none !important;
  }
  body.ir-presentation-full-page .s_eirTab {
    flex: none !important;
    flex-wrap: wrap !important;
    gap: 8px 20px !important;
  }
  body.ir-presentation-full-page #ir-list-card {
    border-radius: 0 !important;
    padding: 0 !important;
  }
  body.ir-presentation-full-page .s_eirList_item {
    padding: 20px !important;
  }
  body.ir-presentation-full-page .s_eirList_item:first-child {
    padding-top: 20px !important;
  }
  body.ir-presentation-full-page .eir-pager {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

/* ══════════════════════════════════════════════════════
   SP (< 1024px) レスポンシブ上書き — IRニュース一覧
   ══════════════════════════════════════════════════════ */
@media (max-width: 1023px) {
  /* フィルター: 縦並び・横パディング追加 */
  body.ir-news-full-page #ir-filter {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 20px !important;
    padding: 20px !important;
  }

  /* カテゴリコントローラー: 幅は内容に合わせる */
  body.ir-news-full-page .s_newsTypeController {
    width: auto !important;
    flex: none !important;
  }

  /* カテゴリタブ: 左寄せ・折り返し */
  body.ir-news-full-page .s_eirTab {
    flex: none !important;
    flex-wrap: wrap !important;
    gap: 8px 20px !important;
  }

  /* 白カード: 角丸なし・パディングなし（全幅カード） */
  body.ir-news-full-page #ir-list-card {
    border-radius: 0 !important;
    padding: 0 !important;
  }

  /* 記事アイテム */
  body.ir-news-full-page .s_eirList_item {
    padding: 20px !important;
  }
  body.ir-news-full-page .s_eirList_item:first-child {
    padding-top: 20px !important;
  }

  /* ページネーション */
  body.ir-news-full-page .eir-pager {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

/* ── Adobe Reader 案内を非表示 ── */
a[href*="adobe"] {
  display: none !important;
}
*:has(> a[href*="adobe"]) {
  display: none !important;
}

/* ── ページネーション ────────────────────────────────── */

.eir-pager {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  margin-top: 32px !important;
  margin-bottom: 0 !important;
  letter-spacing: normal !important;
}

.eir-pager span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  letter-spacing: normal !important;
}

.eir-pager span a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  height: 30px !important;
  border-radius: 50% !important;
  border: none !important;
  background-color: #ffffff !important;
  font-family: 'Zen Kaku Gothic New', sans-serif !important;
  font-weight: 500 !important;
  font-size: 14px !important;
  color: #353844 !important;
  text-decoration: none !important;
  padding: 0 !important;
  transition: background-color 0.15s !important;
}
.eir-pager span a:hover {
  background-color: #edf6ff !important;
  color: #043d78 !important;
}

.eir-pager span.current {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  height: 30px !important;
  border-radius: 50% !important;
  border: none !important;
  background-color: #043d78 !important;
  font-family: 'Zen Kaku Gothic New', sans-serif !important;
  font-weight: 500 !important;
  font-size: 14px !important;
  color: #ffffff !important;
  padding: 0 !important;
}
