/* =============================================================
   recruit-fix.css
   採用ページ専用 最終上書きCSS
   recruit/index.html の <head> 末尾で読み込む（全CSSより後）
   ============================================================= */

/* ── ヒーロー背景：温かいクリーム/ベージュグラデーション ── */
body.kameda-recruit-page .recruit-hero,
.kameda-recruit-page .recruit-hero,
.recruit-hero {
  background: linear-gradient(135deg, #fffaf5 0%, #f6efe6 45%, #edf4f8 100%) !important;
  background-color: #fffaf5 !important;
  background-image: none !important;
  position: relative !important;
  overflow: hidden !important;
}

/* ── ::before / ::after 完全無効化（紺背景・白グリッド・白三角すべて排除）── */
body.kameda-recruit-page .recruit-hero::before,
body.kameda-recruit-page .recruit-hero::after,
.kameda-recruit-page .recruit-hero::before,
.kameda-recruit-page .recruit-hero::after,
.recruit-hero::before,
.recruit-hero::after {
  display: none !important;
  content: none !important;
  background: none !important;
  background-image: none !important;
  background-color: transparent !important;
  clip-path: none !important;
  opacity: 0 !important;
}

/* ── blobは表示維持（inline CSS で定義した装飾要素）── */
body.kameda-recruit-page .recruit-hero .hero-blob {
  display: block !important;
  opacity: 1 !important;
}

/* ── テキスト色 ── */
body.kameda-recruit-page .recruit-hero .hero-title,
.kameda-recruit-page .recruit-hero .hero-title {
  color: #1c2a38 !important;
}
body.kameda-recruit-page .recruit-hero .hero-desc,
.kameda-recruit-page .recruit-hero .hero-desc {
  color: #485e72 !important;
}

/* ── バッジ ── */
body.kameda-recruit-page .recruit-hero .hero-badge,
.kameda-recruit-page .recruit-hero .hero-badge {
  background: rgba(217, 130, 43, 0.10) !important;
  color: #7a4e10 !important;
  border: 1px solid rgba(217, 130, 43, 0.30) !important;
  border-radius: 999px !important;
}
body.kameda-recruit-page .recruit-hero .badge-dot,
.kameda-recruit-page .recruit-hero .badge-dot {
  background: #d9822b !important;
}

/* ── ボタン ── */
body.kameda-recruit-page .recruit-hero .btn-main,
.kameda-recruit-page .recruit-hero .btn-main {
  background: linear-gradient(135deg, #d9822b 0%, #c06e22 100%) !important;
  border-radius: 999px !important;
  box-shadow: 0 6px 20px rgba(192, 110, 34, 0.38) !important;
  color: white !important;
}
body.kameda-recruit-page .recruit-hero .btn-sub,
.kameda-recruit-page .recruit-hero .btn-sub {
  background: white !important;
  border: 2px solid rgba(28, 42, 56, 0.20) !important;
  color: #1c2a38 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
}

/* =============================================================
   背景画像（トップページと同じトラック画像）
   ============================================================= */

/* 背景画像コンテナ：ヒーロー全面に絶対配置 */
body.kameda-recruit-page .recruit-hero-bg,
.kameda-recruit-page .recruit-hero-bg {
  position: absolute !important;
  inset: 0 !important;
  top: 0 !important; left: 0 !important;
  right: 0 !important; bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

/* 画像：カバー全面表示、右側にトラックが見えるよう右寄り */
body.kameda-recruit-page .recruit-hero-img,
.kameda-recruit-page .recruit-hero-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: 68% center !important;
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
  max-height: none !important;
}

/* 左側に半透明グラデーションオーバーレイ（文字を読みやすく） */
body.kameda-recruit-page .recruit-hero-bg::after,
.kameda-recruit-page .recruit-hero-bg::after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(
    90deg,
    rgba(255, 250, 245, 0.94) 0%,
    rgba(255, 250, 245, 0.88) 35%,
    rgba(255, 250, 245, 0.55) 60%,
    rgba(255, 250, 245, 0.10) 80%,
    rgba(255, 250, 245, 0.00) 100%
  ) !important;
  z-index: 1 !important;
  clip-path: none !important;
}

/* hero 内のコンテンツ（inner）を画像より前面に */
body.kameda-recruit-page .recruit-hero > *:not(.recruit-hero-bg),
.kameda-recruit-page .recruit-hero > *:not(.recruit-hero-bg) {
  position: relative !important;
  z-index: 2 !important;
}

/* ── blobは絶対配置に戻す（flexアイテム化を防ぐ） ── */
/* catch-allで relative になるのを打ち消す */
body.kameda-recruit-page .recruit-hero .hero-blob,
.kameda-recruit-page .recruit-hero .hero-blob {
  position: absolute !important;
  z-index: 1 !important;
}

/* ── ヒーロー背景色：画像読み込み前フォールバック ── */
body.kameda-recruit-page .recruit-hero,
.kameda-recruit-page .recruit-hero,
.recruit-hero {
  background-color: #f5ede0 !important;
  background-image: none !important;
}

/* ── テキスト中央寄せ ── */
body.kameda-recruit-page .recruit-hero-text,
.kameda-recruit-page .recruit-hero-text {
  text-align: center !important;
}
body.kameda-recruit-page .recruit-hero .hero-btns,
.kameda-recruit-page .recruit-hero .hero-btns {
  justify-content: center !important;
}

/* ── スマホ・タブレット：中央寄せ維持 ── */
@media (max-width: 960px) {
  body.kameda-recruit-page .recruit-hero-inner,
  .kameda-recruit-page .recruit-hero-inner {
    text-align: center !important;
    max-width: 100% !important;
  }
  body.kameda-recruit-page .recruit-hero-text,
  .kameda-recruit-page .recruit-hero-text {
    text-align: center !important;
  }
  body.kameda-recruit-page .recruit-hero .hero-btns,
  .kameda-recruit-page .recruit-hero .hero-btns {
    justify-content: center !important;
  }

  /* 横スクロール防止 */
  body.kameda-recruit-page .recruit-hero,
  .kameda-recruit-page .recruit-hero {
    overflow-x: hidden !important;
  }
}

/* =============================================================
   FV レイアウト調整
   テキスト左寄せ・TikTok中央寄り・TikTok幅拡大
   ============================================================= */

/* PC：テキストを中央寄せ */
body.kameda-recruit-page .recruit-hero,
.kameda-recruit-page .recruit-hero {
  justify-content: center !important;
  padding: 100px 7% 80px !important;
}

/* PC：ブロック全体を中央配置 */
body.kameda-recruit-page .recruit-hero-inner,
.kameda-recruit-page .recruit-hero-inner {
  max-width: 820px !important;
  margin: 0 auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

/* PC：テキスト中央寄せ確認 */
body.kameda-recruit-page .recruit-hero-text,
.kameda-recruit-page .recruit-hero-text {
  text-align: center !important;
  width: 100% !important;
}
body.kameda-recruit-page .recruit-hero .hero-btns,
.kameda-recruit-page .recruit-hero .hero-btns {
  justify-content: center !important;
}

/* TikTokカード：PC横幅を拡大 */
body.kameda-recruit-page .hero-tiktok-card,
.kameda-recruit-page .hero-tiktok-card {
  width: 100% !important;
  max-width: 420px !important;
  min-width: 0 !important;
}
body.kameda-recruit-page .hero-tiktok-card .tiktok-embed,
.kameda-recruit-page .hero-tiktok-card .tiktok-embed {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

/* タブレット（960px以下） */
@media (max-width: 960px) {
  body.kameda-recruit-page .recruit-hero,
  .kameda-recruit-page .recruit-hero {
    padding: 100px 5% 60px !important;
  }
  body.kameda-recruit-page .recruit-hero-inner,
  .kameda-recruit-page .recruit-hero-inner {
    max-width: 100% !important;
  }
}

/* スマホ（640px以下） */
@media (max-width: 640px) {
  body.kameda-recruit-page .recruit-hero,
  .kameda-recruit-page .recruit-hero {
    padding: 90px 4% 56px !important;
  }
}

/* =============================================================
   FV 中央寄せ 最終強制（このファイルの最後で後勝ち保証）
   ============================================================= */
body.kameda-recruit-page .recruit-hero,
.kameda-recruit-page .recruit-hero {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.kameda-recruit-page .recruit-hero-inner,
.kameda-recruit-page .recruit-hero-inner {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  width: min(820px, calc(100% - 40px)) !important;
  max-width: 820px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}

body.kameda-recruit-page .recruit-hero-text,
.kameda-recruit-page .recruit-hero-text {
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  transform: none !important;
}

body.kameda-recruit-page .recruit-hero .hero-btns,
.kameda-recruit-page .recruit-hero .hero-btns {
  justify-content: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
