/* SVG画像ロゴ用スタイル */
      .pr-logo--image {
        display: inline-flex !important;
        align-items: center;
        background: transparent !important;
        padding: 0 !important;
        border: none !important;
        cursor: pointer;
      }
      .pr-logo-img {
        height: 28px;
        width: auto;
        display: block;
      }
      .pr-logo--lg .pr-logo-img {
        height: 32px;
      }
      .pr-logo-img--inverse {
        filter: brightness(0) invert(1);
      }
      @media (max-width: 640px) {
        .pr-logo-img {
          height: 24px;
        }
        .pr-logo--lg .pr-logo-img {
          height: 26px;
        }
      }

      /* 導入企業ロゴ：画像表示用
   ────────────────────────────────────────────────────────────
   - セルの背景は白（透過なしロゴと透過ありロゴの見た目を統一）
   - ロゴの「表示高さ」を固定（高さを揃えて並びをキレイに）
   - mix-blend-mode: multiply で白背景込みロゴの白を抜き、
     周囲（白セル）と馴染ませる
*/
      .logo-cell.logo-cell--has-image {
        opacity: 1;
        padding: var(--sp-3) var(--sp-4);
        background: #fff;
        min-height: 88px;
      }
      .logo-cell-img {
        max-width: 90%;
        height: 44px; /* 固定高さで横並びの視覚的高さを揃える */
        width: auto;
        object-fit: contain;
        display: block;
        mix-blend-mode: multiply; /* 白背景のロゴを白セルに馴染ませる */
      }
      @media (max-width: 768px) {
        .logo-cell.logo-cell--has-image {
          min-height: 76px;
        }
        .logo-cell-img {
          height: 38px;
        }
      }
      @media (max-width: 480px) {
        .logo-cell.logo-cell--has-image {
          min-height: 64px;
        }
        .logo-cell-img {
          height: 32px;
        }
      }

      /* job-card の内側余白を、見出し（section-title）と左端が揃うよう調整 */
      .job-card {
        padding-left: 0 !important;
        padding-right: 0 !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
      }
      .job-card > div {
        padding: var(--sp-7) 0 !important;
        border-bottom: 1px solid var(--border);
      }
      .job-card:last-of-type > div {
        border-bottom: 0;
      }

      /* 自動画像表示：data-image-src スロットにロード成功時の表示用 */
      /* 全画像領域を 16:10 で統一 + 画像ロード後は枠線・背景・余白を消す */
      [data-image-src] {
        aspect-ratio: 16 / 10;
      }
      [data-image-src].is-image-loaded {
        background: transparent !important;
        padding: 0 !important;
        border: 0 !important;
        outline: 0 !important;
        box-shadow: none !important;
      }
      [data-image-src].is-image-loaded > .image-slot-fallback {
        display: none !important;
      }
      .auto-image {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        border: 0 !important;
      }
      /* ロゴセルだけは比率固定の対象外（小さな企業ロゴ用スロット） */
      .logo-cell[data-image-src] {
        aspect-ratio: auto;
      }
      .logo-cell[data-image-src].is-image-loaded .auto-image {
        max-width: 80%;
        max-height: 40px;
        margin: 0 auto;
        object-fit: contain;
      }
