@charset "UTF-8";
/*--------------------------------------------
  NEWS（お知らせ）まわりの追加スタイル

  対象: blog_id 155（2026版 校舎ページ）
  読み込み: 各コンポーネント内の <link> から。header.php には追加しない。
    - 2ブロック分割版のスタイル … news_split.php（※現在は一時停止中で読み込まれない）
    - 公式SNS の余白補正 … sns.php（お知らせ非表示時のみ）

  ※ style.css の .p-schoolNews__* は 155 以外の全校舎でも使われているため、
     既存ルールは書き換えない。調整が必要なものは
     .p-schoolNews__block 配下に限定して上書きする。
--------------------------------------------*/

/* ---- 2カラムのグリッド ---- */
.p-schoolNews__blocks {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: start;
  gap: 40px;
  margin-top: 40px;
}

.p-schoolNews__block {
  min-width: 0; /* grid アイテムが長いテキストで押し広げられるのを防ぐ */
}

/* ---- ブロック見出し ---- */
/* c-heading は共通部品のため流用せず、このセクション専用クラスで組む */
.p-schoolNews__blockHeading {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 5px 15px;
}

.p-schoolNews__blockTitle {
  color: var(--mainBlue);
  font-weight: 700;
  font-size: var(--text24);
  line-height: 1.5;
}

.p-schoolNews__blockLabel {
  color: var(--mainBlue);
  font-weight: 500;
  font-size: var(--text14);
  line-height: 1.5;
}

/* ---- 既存ルールの上書き（このブロック内のみ） ---- */
/* style.css の .p-schoolNews__list は c-heading からの距離として margin-top:40px。
   2ブロック版ではブロック見出しの直下に来るので詰める */
.p-schoolNews__block .p-schoolNews__list {
  margin-top: 20px;
}

/* ---- レスポンシブ ---- */
@media (width < 992px) {
  .p-schoolNews__blocks {
    gap: 25px;
  }
}

/* SP は縦1列。HTML 上で松陰塾ブロックを先に書いているため自動的に松陰塾が上に来る */
@media (width < 768px) {
  .p-schoolNews__blocks {
    grid-template-columns: 1fr;
    gap: 40px;
    margin-top: 30px;
  }

  .p-schoolNews__blockTitle {
    font-size: 18px;
  }

  .p-schoolNews__blockLabel {
    font-size: 13px;
  }

  .p-schoolNews__block .p-schoolNews__list {
    margin-top: 15px;
  }
}

/* =============================================
  公式SNS 追加スタイル（お知らせ非表示時）
============================================= */

/* --------------------------------------------
  お知らせセクションが出力されなかったときの上余白

  .p-schoolSns には padding-top が無く、セクション間の余白は
  直前の .p-schoolNews の padding-top（PC 150px / SP 80px）が担っている。
  お知らせが消えると余白ごと無くなって直前のセクションと詰まるため、
  同じ値をこちらで補う。
-------------------------------------------- */
.p-schoolSns.--noNews {
  padding-top: max(150px, calc(150 / 1440 * 100vw));
}

@media (width < 768px) {
  .p-schoolSns.--noNews {
    padding-top: 80px;
  }
}
