  .q-human .q-new .point__item {
    padding-top: 15px;
    padding-bottom: 5px;
  }

  .q-human .q-new .point__number {
    margin-left: 10px;
    margin-right: 10px;
  }

  .q-human .q-new .point__top {
    align-items: flex-start;
  }
  .main > .interviews {
    flex: 0 0 100%;
    width: 100%;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
    gap: 30px;
    margin: 30px 0;
  }
  /* レスポンシブ */
  @media (max-width: 1024px) {
    .main > .interviews { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  }
  @media (max-width: 768px) {
    .main > .interviews { grid-template-columns: 1fr; }
  }

  /* 見出し2つを必ず縦に積む */
  .main > .heading-text-grid {
    display: block;
    width: 100%;
    flex: 0 0 100%;
    clear: both;
    margin: 0;
  }

  /* 大きいアウトラインの方（Interview） */
  .main > .outline-title {
    margin: 0 0 12px;   /* 下に余白を作る */
    line-height: 1;
  }

  /* 小見出し（日本語） */
  .main > h3.heading-text-grid {
    font-size: clamp(16px, 1.6vw, 20px);
    font-weight: 700;
    color: #202a5a;
    margin: 3% 0 0;
  }

  /* アイテムは固定幅を持たせずグリッドにフィット */
  .interview-card {
    background: #e2e9f1;
    border: 1px solid #e2e9f1;
    padding: 20px;
    text-align: center;
    width: auto;
    min-width: 0;
    box-sizing: border-box;
  }

  .interview-photo {
    width: 100%;
    aspect-ratio: 4 / 3;
    background: #ddd;
    overflow: hidden;
  }
  .interview-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  /* 名前 */
  .interview-name {
    margin: 6px 0;
    font-weight: bold;
    font-size: 25px;
    color: #202a5a;
  }
  .small-department {
    font-size: 33px;
  }

  /* テキストを白い枠で */
  .interview-textbox {
    background: #fff;
    border: 1px solid #dfe6f1;
    padding: 16px;
    text-align: left;
  }
  .interview-textbox p {
    margin: 0;
    font-size: 14px;
    line-height: 1.8;
    color: #333;
  }

  /* レスポンシブ */
  @media (max-width: 1024px) {
    .interviews {
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (max-width: 768px) {
    .interviews {
      grid-template-columns: 1fr;
    }
  }

  /* アウトライン見出し（WebKit系で綺麗に出る） */
  .outline-title{
      font-family: "Noto Sans JP", "Helvetica Neue", Arial, sans-serif;
      font-weight: 800;
      font-size: clamp(28px, 6vw, 72px);
      letter-spacing: .02em;
      line-height: 1;
      -webkit-text-stroke: 1px #202A5A;
      color: transparent;
  }

  /* 非WebKitの簡易フォールバック：薄い塗り＋多重シャドウで擬似アウトライン */
  @supports not (-webkit-text-stroke: 1px black) {
    .outline-title{
      color: transparent;
      text-shadow:
        1px 0   #202a5a, -1px 0   #202a5a,
        0   1px #202a5a,  0  -1px #202a5a,
        1px 1px #202a5a, -1px 1px #202a5a,
        1px -1px #202a5a, -1px -1px #202a5a;
    }
  }

  /* =========================================
    1) インタビュー白枠：同一行のカード高をそろえる
    ========================================= */
  .main > .interviews { align-items: stretch; }
  .interview-card{
    display: grid;                 /* 写真 / 名前 / 白枠 の3行 */
    grid-template-rows: auto auto 1fr;
    height: 100%;
  }
  .interview-textbox{
    display: flex;                 /* 中の<p>を伸ばして高さを合わせる */
    flex-direction: column;
  }
  .interview-textbox > p{ flex: 1; }

  /* 同一行でカード高をそろえる（Safari対策でmin-height解除） */
  .interview-photo,
  .interview-name,
  .interview-textbox{ min-height: 0; }

  /* Swiperは既定で slide が height:100% のため、短いカードが伸びない。
     wrapper を一番高いスライドに合わせ、他スライドを stretch する */
  .interviews-swiper .swiper-wrapper {
    align-items: stretch;
  }
  .interviews-swiper .swiper-slide {
    height: auto;
  }

  /* =========================================
    2) スマホ最適化（PDF_SPのテイストに寄せる）
    ========================================= */
  @media (max-width: 480px){
    /* 余白/段組み */
    .bz-hr.bz-top-section {
        padding-top: 32px;
        width: 90%;
        margin: auto;
    }
    .bz-hr.bz-section     {
        padding: 24px 0;
        width: 90%;
        margin: auto;
    }
    .main > .interviews {
        grid-template-columns: 1fr;
        gap: 30px; 
        margin: 16px 0; 
    }
    .main > h3.heading-text-grid {
      font-size: 16px;
      font-weight: 700;
      color: #202a5a;
      margin: 5% 0;
    }
    .main > .bottom-grid {
      margin: 12% 0 5% !important;
    }

    .bg-body {
        font-size: 12px;
    }
    /* Wordpress側に直書きしているので!importantで強制 */
    .strong-point {
        padding: 15px !important;
        margin: 5% auto 0;
        width: 90% !important;
    }
    .appeal-point {
        font-size: 12px;
    }

    /* タイトル系 */
    .outline-title{
      font-size: clamp(34px, 11vw, 52px);
      -webkit-text-stroke-width: .8px;
      letter-spacing: .01em;
    }
    .heading-text-grid{
      font-size: 40px;
      line-height: 1.6;
      margin-top: 16px;
    }

    /* MV上の英字/和文配置（視認性UP） */
    .mv-image .image-title .en{ font-size: clamp(28px, 10vw, 40px); line-height: 1.05; }
    .mv-image .image-title .ja{ font-size: 14px; }

    /* 本文読みやすさ */
    .description h3{ font-size: 18px; line-height: 1.5; }
    .description > div{ font-size: 14px; line-height: 1.9; }

    /* インタビューカード */
    .interview-card  {
      padding: 16px;
      height: auto;
    }
    .interview-photo {
      aspect-ratio: 3 / 2;
    }
    .interview-name  {
      font-size: 24px;
      margin: 8px 0 0px;
    }
    .small-department{ font-size: 34px; }
    .interview-textbox{
      padding: 12px;
      border: 1px solid #dfe6f1;
    }
    .interview-textbox p{ font-size: 14px; line-height: 1.8; }
  }

  @media (min-width: 481px) and (max-width: 1024px){
    .main > .interviews { grid-template-columns: repeat(2, 1fr); gap: 24px; }
    .interview-card     { padding: 18px; height: auto;}
    .interview-photo    { aspect-ratio: 4 / 3; }
    .interview-name     { font-size: 20px; }
  }

  @media print {
    @page { size: A4 portrait; margin: 14mm 12mm; }
    html, body{
      -webkit-print-color-adjust: exact;
      print-color-adjust: exact;
    }

    .main > .interviews { grid-template-columns: 1fr !important; gap: 10px; }

    .interview-card,
    .interview-textbox,
    .bz-hr,
    .description { break-inside: avoid; }

    .outline-title { font-size: 42px; -webkit-text-stroke-width: .8px; }
    .heading-text-grid { font-size: 16px; }
  }

  .interview-textbox { background: #fff; }
  .main > .outline-title { margin-bottom: 12px; }

  .user-icon {
    display: block;
    margin: auto;
    width: 60%;
  }

  .mini-note {
    font-size: 10px;
  }

  .mini-note-text {
    font-size: 12px;
  }

  .thanks-voice-company {
      display: block;
      background-color: #003366;
      color: #fff;
      padding: 3%;
      margin: 5%;
      text-align: center;
      transition: all 0.35s ease;
      border: 1px solid transparent; /* ← ホバー時にズレないように */
  }

  /* ホバー時の反転アニメーション */
  .thanks-voice-company:hover {
      text-decoration: none;
      background-color: #fff;
      color: #003366;
      border-color: #003366;
      transform: translateY(-3px);   /* ← 少し上に浮かせるアニメーション */
  }

  /* 一企業のみの場合だけ適用 */
  @media (min-width: 480px) {
    .thanks-voice {
      margin: auto;
    }
  }
