/* 卒業生手続き：上部リンク一覧（各種証明書発行/ミュージックアウトリーチ）をPCで2列にする */
@media (min-width: 769px) {
  .secGraduateStu .contain.btm100 {
    display: flex;
    flex-wrap: wrap;
    column-gap: 40px;
    row-gap: 20px;
  }

  /* 直下の各ブロックが inline style で margin-top を持っているため上書き */
  .secGraduateStu .contain.btm100 > div {
    width: calc(50% - 20px);
    margin-top: 0 !important;
  }

  /* 中のナビ自体は横幅100%に */
  .secGraduateStu .contain.btm100 > div .secPageNav {
    width: 100%;
  }
}

/* SPは従来通り1列 */
@media (max-width: 768px) {
  .secGraduateStu .contain.btm100 {
    display: block;
  }
  .secGraduateStu .contain.btm100 > div {
    width: 100%;
  }
}

/* 卒業生手続き：2列リンク タイトル1行固定＋説明文の改行幅を揃える */
@media (min-width: 769px) {

  /* ナビ全体 */
  .secGraduateStu .contain.btm100 .secPageNav {
    display: flex;
    align-items: flex-start;
  }

  /* テキストエリア（タイトル＋説明文） */
  .secGraduateStu .contain.btm100 .secPageNav .pageNav {
    flex: 1;
    min-width: 0; /* ←これが超重要（改行幅を揃える） */
  }

  /* タイトルは1行固定 */
  .secGraduateStu .contain.btm100 .pageNav .ttl,
  .secGraduateStu .contain.btm100 .pageNav .ttl a,
  .secGraduateStu .contain.btm100 .pageNav .ttl h3 {
    white-space: nowrap;
  }

  /* 説明文は通常改行（幅はタイトルと同じ） */
  .secGraduateStu .contain.btm100 .pageNav .txt {
    white-space: normal;
    word-break: break-word;
  }
}

@media (min-width: 769px) {
  .secGraduateStu .contactBox.flexBox {
    justify-content: flex-start; /* 念のため左寄せ */
  }

  .secGraduateStu .contactBox.flexBox > .item {
    flex: 0 0 calc(50% - 20px);  /* 2列の片側幅を維持 */
    max-width: calc(50% - 20px);
  }
}

