@charset "UTF-8";
#cta-6969d8fba29f2b2d11c75f90 {
  /* ===========================
    【工場別】入社日・残枠チェック表（全体CSS）
  =========================== */
  /* タイトル（点線＋中央） */
  /* 外枠（薄いグレー背景） */
  /* 横スクロール領域 */
  /* テーブル（横に太らせてスクロール発生） */
  /* ヘッダー固定 */
  /* 月バー（青緑） */
  /* 日付帯（薄水色） */
  /* 左上（工場ヘッダー） */
  /* 左列固定 */
  /* 罫線 */
  /* 工場セル（色付き＋縦書き） */
  /* セル */
  /* カード（セル中央） */
  /* 残枠あり（ピンク） */
  /* 受付終了（グレー） */
  /* 凡例（任意） */
  /* =========================================
    【修正】スクショ状態から「見本どおり」に寄せる上書きCSS
    - 月バー(2月)を青緑に
    - 日付帯を薄水色に
    - 工場列の色付き縦書きを復活
    - カードをセル中央に固定
    - LPOneのテーブルCSSに勝つ
  ========================================= */
  /* 1) テーブル幅が縮んで見える対策（横スクロールを維持） */
  /* 2) 月バー（2月）を必ず出す */
  /* 3) 日付帯（薄水色）を必ず出す */
  /* 4) 左列（工場）を復活：sticky＋背景色＋縦書き */
  /* 左上の「工場」見出し（常に最前面） */
  /* 工場セル自体（色帯） */
  /* 工場ごとの色（スクショ見本の配色） */
  /* 濃グレー */
  /* 青緑 */
  /* 濃い青緑 */
  /* 縦書き（ブラウザ非対応のときも崩れない保険つき） */
  /* 5) セル罫線・背景を整える */
  /* 6) ピンク/グレーカードをセル中央に固定（今は上寄りに見える） */
  /* 残枠あり（ピンク） */
  /* 受付終了（グレー） */
  /* 黒バッジ（締切あり） */
  /* 7) 「—」の見た目をスクショ寄せ */
  /* 8) もしLPOneがth/tdの背景を消してる場合の保険 */
  /* =========================================
    【修正】スクショ状態から「見本どおり」に寄せる上書きCSS
    - 月バー(2月)を青緑に
    - 日付帯を薄水色に
    - 工場列の色付き縦書きを復活
    - カードをセル中央に固定
    - LPOneのテーブルCSSに勝つ
  ========================================= */
  /* 1) テーブル幅が縮んで見える対策（横スクロールを維持） */
  /* 2) 月バー（2月）を必ず出す */
  /* 3) 日付帯（薄水色）を必ず出す */
  /* 4) 左列（工場）を復活：sticky＋背景色＋縦書き */
  /* 左上の「工場」見出し（常に最前面） */
  /* 工場セル自体（色帯） */
  /* 工場ごとの色（スクショ見本の配色） */
  /* 濃グレー */
  /* 青緑 */
  /* 濃い青緑 */
  /* 縦書き（ブラウザ非対応のときも崩れない保険つき） */
  /* 5) セル罫線・背景を整える */
  /* 6) ピンク/グレーカードをセル中央に固定（今は上寄りに見える） */
  /* 残枠あり（ピンク） */
  /* 受付終了（グレー） */
  /* 黒バッジ（締切あり） */
  /* 7) 「—」の見た目をスクショ寄せ */
  /* 8) もしLPOneがth/tdの背景を消してる場合の保険 */
  /* 横スクロールが親に潰されるのを防ぐ */
  /* ==========================
    【最終】工場名：スマホで崩れない版（横書き）
    ※縦書きはCSSだけだと安定しないため
  ========================== */
  /* 工場セル内で中央に安定させる */
  /* スマホだけ表示 */
  /* ===========================
    【工場別】入社日・残枠チェック表（全体CSS）
  =========================== */
  /* タイトル（点線＋中央） */
  /* 外枠（薄いグレー背景） */
  /* 横スクロール領域 */
  /* テーブル（横に太らせてスクロール発生） */
  /* ヘッダー固定 */
  /* 月バー（青緑） */
  /* 日付帯（薄水色） */
  /* 左上（工場ヘッダー） */
  /* 左列固定 */
  /* 罫線 */
  /* 工場セル（色付き＋縦書き） */
  /* セル */
  /* カード（セル中央） */
  /* 残枠あり（ピンク） */
  /* 受付終了（グレー） */
  /* 凡例（任意） */
  /* =========================================
    【修正】スクショ状態から「見本どおり」に寄せる上書きCSS
    - 月バー(2月)を青緑に
    - 日付帯を薄水色に
    - 工場列の色付き縦書きを復活
    - カードをセル中央に固定
    - LPOneのテーブルCSSに勝つ
  ========================================= */
  /* 1) テーブル幅が縮んで見える対策（横スクロールを維持） */
  /* 2) 月バー（2月）を必ず出す */
  /* 3) 日付帯（薄水色）を必ず出す */
  /* 4) 左列（工場）を復活：sticky＋背景色＋縦書き */
  /* 左上の「工場」見出し（常に最前面） */
  /* 工場セル自体（色帯） */
  /* 工場ごとの色（スクショ見本の配色） */
  /* 濃グレー */
  /* 青緑 */
  /* 濃い青緑 */
  /* 縦書き（ブラウザ非対応のときも崩れない保険つき） */
  /* 5) セル罫線・背景を整える */
  /* 6) ピンク/グレーカードをセル中央に固定（今は上寄りに見える） */
  /* 残枠あり（ピンク） */
  /* 受付終了（グレー） */
  /* 黒バッジ（締切あり） */
  /* 7) 「—」の見た目をスクショ寄せ */
  /* 8) もしLPOneがth/tdの背景を消してる場合の保険 */
  /* =========================================
    【修正】スクショ状態から「見本どおり」に寄せる上書きCSS
    - 月バー(2月)を青緑に
    - 日付帯を薄水色に
    - 工場列の色付き縦書きを復活
    - カードをセル中央に固定
    - LPOneのテーブルCSSに勝つ
  ========================================= */
  /* 1) テーブル幅が縮んで見える対策（横スクロールを維持） */
  /* 2) 月バー（2月）を必ず出す */
  /* 3) 日付帯（薄水色）を必ず出す */
  /* 4) 左列（工場）を復活：sticky＋背景色＋縦書き */
  /* 左上の「工場」見出し（常に最前面） */
  /* 工場セル自体（色帯） */
  /* 工場ごとの色（スクショ見本の配色） */
  /* 濃グレー */
  /* 青緑 */
  /* 濃い青緑 */
  /* 縦書き（ブラウザ非対応のときも崩れない保険つき） */
  /* 5) セル罫線・背景を整える */
  /* 6) ピンク/グレーカードをセル中央に固定（今は上寄りに見える） */
  /* 残枠あり（ピンク） */
  /* 受付終了（グレー） */
  /* 黒バッジ（締切あり） */
  /* 7) 「—」の見た目をスクショ寄せ */
  /* 8) もしLPOneがth/tdの背景を消してる場合の保険 */
  /* 横スクロールが親に潰されるのを防ぐ */
  /* ==========================
    【最終】工場名：スマホで崩れない版（横書き）
    ※縦書きはCSSだけだと安定しないため
  ========================== */
  /* 工場セル内で中央に安定させる */
  /* スマホだけ表示 */
  /* テーブルの列幅が内容で伸びないようにする */
  /* 1列目（工場）を固定幅に */
  /* 工場名が長い/改行で崩れないように */
  /* 横スクロールコンテナ */
  /* 上のヘッダー2段を固定（縦スクロール時） */
  /* 1段目（入社日）を上に固定 */
  /* 2段目（日付）もその下に固定 */
  /* 左上（工場ヘッダー）は「上＋左」両方固定 */
  /* 工場名の列（左固定） */
  /* 左固定列の背景が透けないように */
  /* 列が減っても“見た目の横幅”を維持（間延び防止） */
  /* 横スクロールは維持 */
  /* iOS Safari検知（実質iPhone） */
  /* ==========================
    iOS16でも安定する「幅固定（間延び防止）」px版
    - calc/変数/max-content を使わない
    - 列が減っても最低幅を確保（=見本の幅感を維持）
  ========================== */
  /* まず：横スクロールは常に */
  /* 1列目＋日付列の幅を固定 */
  /* ★ここが肝：列が減っても“最低6列ぶん”の横幅をキープ */
  /* iOSの文字拡大で幅がズレないように */
  /* =========================================
    【列が減ったら縮ませる】間延び防止（縮む版）
    - テーブルを中身幅（max-content）にする
    - セルは「最低幅」だけ持たせる（width固定しない）
    - iPhone8(iOS16)の縦積み化対策（display復元）は維持
  ========================================= */
  /* 横スクロールは常にOK */
  /* iOSの文字拡大で崩れない */
  /* ▼ここが肝：テーブルを「中身の列数ぶん」だけにする（=列が減れば縮む） */
  /* 列は「最低幅」だけ確保（width固定しない＝列が減れば縮む） */
  /* iPhone8(iOS16)で“縦積み(block化)”されるのを戻す保険 */
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry * {
  box-sizing: border-box;
  font-family: "Noto Sans JP", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__head {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 10px 0 12px;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__title {
  margin: 0;
  font-size: 18px;
  font-weight: 900;
  color: #1f2e44;
  white-space: nowrap;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__line {
  flex: 1;
  height: 0;
  border-top: 2px dotted rgba(46, 174, 187, 0.65);
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__wrap {
  padding: 10px;
  background: #f4f7fb;
  border-radius: 12px;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__scroll {
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch !important;
  touch-action: pan-x !important;
  overscroll-behavior-x: contain;
  border-radius: 10px;
  background: #fff;
  border: 1px solid #dfe6f2;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table {
  border-collapse: separate;
  border-spacing: 0;
  width: max-content !important;
  min-width: 980px;
  /* ← ここを大きめにして確実に横スクロール */
  background: #fff;
  table-layout: fixed;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table thead th {
  position: sticky;
  top: 0;
  z-index: 5;
  text-align: center;
  font-weight: 900;
  white-space: nowrap;
  border-bottom: 1px solid #dfe6f2;
}
#cta-6969d8fba29f2b2d11c75f90 .te-month {
  background: #2eaebb;
  color: #fff;
  padding: 10px 8px;
  font-size: 16px;
  letter-spacing: 0.08em;
}
#cta-6969d8fba29f2b2d11c75f90 .te-date {
  background: #eaf3ff;
  color: #2a3b55;
  padding: 10px 8px;
  font-size: 12px;
}
#cta-6969d8fba29f2b2d11c75f90 .te-lefthead {
  background: #f4f6fb;
  color: #2a3b55;
  text-align: left;
  padding: 10px 12px;
  min-width: 86px;
  border-right: 1px solid #dfe6f2;
  z-index: 80;
  /* 常に最前面 */
}
#cta-6969d8fba29f2b2d11c75f90 .te-sticky.te-left {
  position: sticky !important;
  left: 0 !important;
  z-index: 50;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table tbody th,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table tbody td {
  border-bottom: 1px solid #e7edf8;
  border-right: 1px solid #e7edf8;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table tbody tr:last-child th,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table tbody tr:last-child td {
  border-bottom: 0;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory {
  min-width: 86px;
  padding: 10px 6px;
  color: #fff;
  text-align: center;
  z-index: 70 !important;
  /* 消え防止 */
  border-right: 1px solid #dfe6f2;
  vertical-align: middle;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory.is-fujimatsu {
  background: #30343a;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory.is-yoshiwara {
  background: #2eaebb;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory.is-inabe {
  background: #0b7f96;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory__text {
  display: inline-block;
  writing-mode: vertical-rl;
  text-orientation: upright;
  letter-spacing: 0.08em;
  font-weight: 900;
  line-height: 1.1;
}
#cta-6969d8fba29f2b2d11c75f90 .te-cell {
  min-width: 120px;
  height: 92px;
  padding: 10px;
  text-align: center;
  vertical-align: middle;
  background: #fff;
}
#cta-6969d8fba29f2b2d11c75f90 .te-cell.is-none {
  color: #8fa0bb;
  font-weight: 900;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card {
  width: 86px;
  height: 78px;
  margin: 0 auto;
  border-radius: 8px;
  padding: 8px 6px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card.is-open {
  background: #e45578;
  color: #fff;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card.is-closed {
  background: #e1e4ea;
  color: #5f6a7b;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card__main {
  font-size: 14px;
  font-weight: 900;
  line-height: 1.1;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card__badge {
  font-size: 10px;
  font-weight: 900;
  padding: 3px 8px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.78);
  color: #fff;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card.is-closed .te-card__badge {
  display: none;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card__sub {
  font-size: 11px;
  font-weight: 800;
  opacity: 0.95;
}
#cta-6969d8fba29f2b2d11c75f90 .te-legend {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 10px;
}
#cta-6969d8fba29f2b2d11c75f90 .te-pill {
  font-size: 11px;
  font-weight: 900;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid #dfe6f2;
  background: #fff;
  color: #2a3b55;
}
#cta-6969d8fba29f2b2d11c75f90 .te-pill.is-open {
  background: #fde6ec;
  border-color: #f4b7c6;
}
#cta-6969d8fba29f2b2d11c75f90 .te-pill.is-closed {
  background: #eef1f6;
}
#cta-6969d8fba29f2b2d11c75f90 .te-pill.is-none {
  background: #fff;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__scroll {
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
  touch-action: pan-x !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table {
  width: max-content !important;
  min-width: 820px !important;
  table-layout: fixed !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-month {
  background: #2eaebb !important;
  color: #fff !important;
  font-weight: 900 !important;
  font-size: 16px !important;
  padding: 10px 8px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-date {
  background: #eaf3ff !important;
  color: #2a3b55 !important;
  font-weight: 900 !important;
  padding: 10px 8px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-sticky.te-left {
  position: sticky !important;
  left: 0 !important;
  z-index: 50 !important;
  /* これがないと消える */
}
#cta-6969d8fba29f2b2d11c75f90 .te-lefthead {
  background: #f4f6fb !important;
  color: #2a3b55 !important;
  z-index: 80 !important;
  min-width: 86px !important;
  border-right: 1px solid #dfe6f2 !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory {
  background: #30343a !important;
  /* デフォ */
  color: #fff !important;
  min-width: 86px !important;
  z-index: 70 !important;
  border-right: 1px solid #dfe6f2 !important;
  text-align: center !important;
  vertical-align: middle !important;
  padding: 10px 6px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory.is-fujimatsu {
  background: #30343a !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory.is-yoshiwara {
  background: #2eaebb !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory.is-inabe {
  background: #0b7f96 !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory__text {
  display: inline-block !important;
  writing-mode: vertical-rl !important;
  text-orientation: upright !important;
  letter-spacing: 0.08em !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-cell {
  background: #fff !important;
  min-width: 120px !important;
  height: 92px !important;
  /* スクショの余白感 */
  padding: 10px !important;
  text-align: center !important;
  vertical-align: middle !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card {
  width: 86px !important;
  height: 78px !important;
  margin: 0 auto !important;
  /* 中央寄せ */
  border-radius: 8px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 8px 6px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card.is-open {
  background: #e45578 !important;
  color: #fff !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card.is-closed {
  background: #e1e4ea !important;
  color: #5f6a7b !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card__badge {
  background: rgba(0, 0, 0, 0.78) !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  padding: 3px 8px !important;
  border-radius: 999px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-cell.is-none {
  color: #8fa0bb !important;
  font-weight: 900 !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table th,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table td {
  background-clip: padding-box;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__scroll {
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
  touch-action: pan-x !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table {
  width: max-content !important;
  min-width: 820px !important;
  table-layout: fixed !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-month {
  background: #2eaebb !important;
  color: #fff !important;
  font-weight: 900 !important;
  font-size: 16px !important;
  padding: 10px 8px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-date {
  background: #eaf3ff !important;
  color: #2a3b55 !important;
  font-weight: 900 !important;
  padding: 10px 8px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-sticky.te-left {
  position: sticky !important;
  left: 0 !important;
  z-index: 50 !important;
  /* これがないと消える */
}
#cta-6969d8fba29f2b2d11c75f90 .te-lefthead {
  background: #f4f6fb !important;
  color: #2a3b55 !important;
  z-index: 80 !important;
  min-width: 86px !important;
  border-right: 1px solid #dfe6f2 !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory {
  background: #30343a !important;
  /* デフォ */
  color: #fff !important;
  min-width: 86px !important;
  z-index: 70 !important;
  border-right: 1px solid #dfe6f2 !important;
  text-align: center !important;
  vertical-align: middle !important;
  padding: 10px 6px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory.is-fujimatsu {
  background: #30343a !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory.is-yoshiwara {
  background: #2eaebb !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory.is-inabe {
  background: #0b7f96 !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory__text {
  display: inline-block !important;
  writing-mode: vertical-rl !important;
  text-orientation: upright !important;
  letter-spacing: 0.08em !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-cell {
  background: #fff !important;
  min-width: 120px !important;
  height: 92px !important;
  /* スクショの余白感 */
  padding: 10px !important;
  text-align: center !important;
  vertical-align: middle !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card {
  width: 86px !important;
  height: 78px !important;
  margin: 0 auto !important;
  /* 中央寄せ */
  border-radius: 8px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 8px 6px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card.is-open {
  background: #e45578 !important;
  color: #fff !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card.is-closed {
  background: #e1e4ea !important;
  color: #5f6a7b !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card__badge {
  background: rgba(0, 0, 0, 0.78) !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  padding: 3px 8px !important;
  border-radius: 999px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-cell.is-none {
  color: #8fa0bb !important;
  font-weight: 900 !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table th,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table td {
  background-clip: padding-box;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry {
  overflow: visible !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory__text {
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  transform: none !important;
  display: inline-block !important;
  white-space: nowrap !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.2 !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory {
  padding: 10px 6px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__hint {
  display: none;
  margin: 4px 0 8px;
  font-size: 12px;
  color: #666;
  text-align: right;
}
@media screen and (max-width: 768px) {
  #cta-6969d8fba29f2b2d11c75f90 .tab-entry__hint {
    display: block;
  }
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry * {
  box-sizing: border-box;
  font-family: "Noto Sans JP", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__head {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 10px 0 12px;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__title {
  margin: 0;
  font-size: 18px;
  font-weight: 900;
  color: #1f2e44;
  white-space: nowrap;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__line {
  flex: 1;
  height: 0;
  border-top: 2px dotted rgba(46, 174, 187, 0.65);
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__wrap {
  padding: 10px;
  background: #f4f7fb;
  border-radius: 12px;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__scroll {
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch !important;
  touch-action: pan-x !important;
  overscroll-behavior-x: contain;
  border-radius: 10px;
  background: #fff;
  border: 1px solid #dfe6f2;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table {
  border-collapse: separate;
  border-spacing: 0;
  width: max-content !important;
  min-width: 980px;
  /* ← ここを大きめにして確実に横スクロール */
  background: #fff;
  table-layout: fixed;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table thead th {
  position: sticky;
  top: 0;
  z-index: 5;
  text-align: center;
  font-weight: 900;
  white-space: nowrap;
  border-bottom: 1px solid #dfe6f2;
}
#cta-6969d8fba29f2b2d11c75f90 .te-month {
  background: #2eaebb;
  color: #fff;
  padding: 10px 8px;
  font-size: 16px;
  letter-spacing: 0.08em;
}
#cta-6969d8fba29f2b2d11c75f90 .te-date {
  background: #eaf3ff;
  color: #2a3b55;
  padding: 10px 8px;
  font-size: 12px;
}
#cta-6969d8fba29f2b2d11c75f90 .te-lefthead {
  background: #f4f6fb;
  color: #2a3b55;
  text-align: left;
  padding: 10px 12px;
  min-width: 86px;
  border-right: 1px solid #dfe6f2;
  z-index: 80;
  /* 常に最前面 */
}
#cta-6969d8fba29f2b2d11c75f90 .te-sticky.te-left {
  position: sticky !important;
  left: 0 !important;
  z-index: 50;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table tbody th,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table tbody td {
  border-bottom: 1px solid #e7edf8;
  border-right: 1px solid #e7edf8;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table tbody tr:last-child th,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table tbody tr:last-child td {
  border-bottom: 0;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory {
  min-width: 86px;
  padding: 10px 6px;
  color: #fff;
  text-align: center;
  z-index: 70 !important;
  /* 消え防止 */
  border-right: 1px solid #dfe6f2;
  vertical-align: middle;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory.is-fujimatsu {
  background: #30343a;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory.is-yoshiwara {
  background: #2eaebb;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory.is-inabe {
  background: #0b7f96;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory__text {
  display: inline-block;
  writing-mode: vertical-rl;
  text-orientation: upright;
  letter-spacing: 0.08em;
  font-weight: 900;
  line-height: 1.1;
}
#cta-6969d8fba29f2b2d11c75f90 .te-cell {
  min-width: 120px;
  height: 92px;
  padding: 10px;
  text-align: center;
  vertical-align: middle;
  background: #fff;
}
#cta-6969d8fba29f2b2d11c75f90 .te-cell.is-none {
  color: #8fa0bb;
  font-weight: 900;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card {
  width: 86px;
  height: 78px;
  margin: 0 auto;
  border-radius: 8px;
  padding: 8px 6px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card.is-open {
  background: #e45578;
  color: #fff;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card.is-closed {
  background: #e1e4ea;
  color: #5f6a7b;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card__main {
  font-size: 14px;
  font-weight: 900;
  line-height: 1.1;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card__badge {
  font-size: 10px;
  font-weight: 900;
  padding: 3px 8px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.78);
  color: #fff;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card.is-closed .te-card__badge {
  display: none;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card__sub {
  font-size: 11px;
  font-weight: 800;
  opacity: 0.95;
}
#cta-6969d8fba29f2b2d11c75f90 .te-legend {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 10px;
}
#cta-6969d8fba29f2b2d11c75f90 .te-pill {
  font-size: 11px;
  font-weight: 900;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid #dfe6f2;
  background: #fff;
  color: #2a3b55;
}
#cta-6969d8fba29f2b2d11c75f90 .te-pill.is-open {
  background: #fde6ec;
  border-color: #f4b7c6;
}
#cta-6969d8fba29f2b2d11c75f90 .te-pill.is-closed {
  background: #eef1f6;
}
#cta-6969d8fba29f2b2d11c75f90 .te-pill.is-none {
  background: #fff;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__scroll {
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
  touch-action: pan-x !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table {
  width: max-content !important;
  min-width: 820px !important;
  table-layout: fixed !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-month {
  background: #2eaebb !important;
  color: #fff !important;
  font-weight: 900 !important;
  font-size: 16px !important;
  padding: 10px 8px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-date {
  background: #eaf3ff !important;
  color: #2a3b55 !important;
  font-weight: 900 !important;
  padding: 10px 8px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-sticky.te-left {
  position: sticky !important;
  left: 0 !important;
  z-index: 50 !important;
  /* これがないと消える */
}
#cta-6969d8fba29f2b2d11c75f90 .te-lefthead {
  background: #f4f6fb !important;
  color: #2a3b55 !important;
  z-index: 80 !important;
  min-width: 86px !important;
  border-right: 1px solid #dfe6f2 !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory {
  background: #30343a !important;
  /* デフォ */
  color: #fff !important;
  min-width: 86px !important;
  z-index: 70 !important;
  border-right: 1px solid #dfe6f2 !important;
  text-align: center !important;
  vertical-align: middle !important;
  padding: 10px 6px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory.is-fujimatsu {
  background: #30343a !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory.is-yoshiwara {
  background: #2eaebb !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory.is-inabe {
  background: #0b7f96 !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory__text {
  display: inline-block !important;
  writing-mode: vertical-rl !important;
  text-orientation: upright !important;
  letter-spacing: 0.08em !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-cell {
  background: #fff !important;
  min-width: 120px !important;
  height: 92px !important;
  /* スクショの余白感 */
  padding: 10px !important;
  text-align: center !important;
  vertical-align: middle !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card {
  width: 86px !important;
  height: 78px !important;
  margin: 0 auto !important;
  /* 中央寄せ */
  border-radius: 8px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 8px 6px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card.is-open {
  background: #e45578 !important;
  color: #fff !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card.is-closed {
  background: #e1e4ea !important;
  color: #5f6a7b !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card__badge {
  background: rgba(0, 0, 0, 0.78) !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  padding: 3px 8px !important;
  border-radius: 999px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-cell.is-none {
  color: #8fa0bb !important;
  font-weight: 900 !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table th,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table td {
  background-clip: padding-box;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__scroll {
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
  touch-action: pan-x !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table {
  width: max-content !important;
  min-width: 820px !important;
  table-layout: fixed !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-month {
  background: #2eaebb !important;
  color: #fff !important;
  font-weight: 900 !important;
  font-size: 16px !important;
  padding: 10px 8px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-date {
  background: #eaf3ff !important;
  color: #2a3b55 !important;
  font-weight: 900 !important;
  padding: 10px 8px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-sticky.te-left {
  position: sticky !important;
  left: 0 !important;
  z-index: 50 !important;
  /* これがないと消える */
}
#cta-6969d8fba29f2b2d11c75f90 .te-lefthead {
  background: #f4f6fb !important;
  color: #2a3b55 !important;
  z-index: 80 !important;
  min-width: 86px !important;
  border-right: 1px solid #dfe6f2 !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory {
  background: #30343a !important;
  /* デフォ */
  color: #fff !important;
  min-width: 86px !important;
  z-index: 70 !important;
  border-right: 1px solid #dfe6f2 !important;
  text-align: center !important;
  vertical-align: middle !important;
  padding: 10px 6px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory.is-fujimatsu {
  background: #30343a !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory.is-yoshiwara {
  background: #2eaebb !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory.is-inabe {
  background: #0b7f96 !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory__text {
  display: inline-block !important;
  writing-mode: vertical-rl !important;
  text-orientation: upright !important;
  letter-spacing: 0.08em !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-cell {
  background: #fff !important;
  min-width: 120px !important;
  height: 92px !important;
  /* スクショの余白感 */
  padding: 10px !important;
  text-align: center !important;
  vertical-align: middle !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card {
  width: 86px !important;
  height: 78px !important;
  margin: 0 auto !important;
  /* 中央寄せ */
  border-radius: 8px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 8px 6px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card.is-open {
  background: #e45578 !important;
  color: #fff !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card.is-closed {
  background: #e1e4ea !important;
  color: #5f6a7b !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-card__badge {
  background: rgba(0, 0, 0, 0.78) !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  padding: 3px 8px !important;
  border-radius: 999px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-cell.is-none {
  color: #8fa0bb !important;
  font-weight: 900 !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table th,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table td {
  background-clip: padding-box;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry {
  overflow: visible !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory__text {
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  transform: none !important;
  display: inline-block !important;
  white-space: nowrap !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.2 !important;
}
#cta-6969d8fba29f2b2d11c75f90 .te-factory {
  padding: 10px 6px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__hint {
  display: none;
  margin: 4px 0 8px;
  font-size: 12px;
  color: #666;
  text-align: right;
}
@media screen and (max-width: 768px) {
  #cta-6969d8fba29f2b2d11c75f90 .tab-entry__hint {
    display: block;
  }
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table {
  width: 100%;
  table-layout: fixed;
  /* ←これ大事 */
  border-collapse: separate;
  border-spacing: 0;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-lefthead,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-factory {
  width: 140px;
  /* 好きな幅に調整OK */
  min-width: 140px;
  max-width: 140px;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-factory__text {
  display: inline-block;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__scroll {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  position: relative;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table thead th,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table tbody th {
  /* thead使ってないならth指定でOK */
  background: #fff;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-month {
  position: sticky;
  top: 0;
  z-index: 5;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-date {
  position: sticky;
  top: 44px;
  /* 1段目の高さに合わせて調整 */
  z-index: 4;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-lefthead {
  position: sticky;
  left: 0;
  top: 0;
  z-index: 10;
  /* いちばん上に */
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-factory {
  position: sticky;
  left: 0;
  z-index: 6;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-lefthead,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-factory {
  background: #f6f8fb;
  /* 既存に合わせて調整 */
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry {
  --leftcol: 140px;
  /* 工場列 */
  --col: 120px;
  /* 日付列 */
  --mincols: 6;
  /* 最低◯列ぶんの幅を確保（ここで調整） */
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table {
  width: max-content !important;
  min-width: calc(var(--leftcol) + var(--col) * var(--mincols)) !important;
  table-layout: fixed !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-lefthead,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-factory {
  width: var(--leftcol) !important;
  min-width: var(--leftcol) !important;
  max-width: var(--leftcol) !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-date,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-cell {
  width: var(--col) !important;
  min-width: var(--col) !important;
  max-width: var(--col) !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__scroll {
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch !important;
}
@supports (-webkit-touch-callout: none) {
  #cta-6969d8fba29f2b2d11c75f90 {
    /* iOS16では calc + max-content が壊れやすいので、素直にpx固定へ */
    /* 各列幅もpxで固定（変数やcalcを使わない） */
  }
  #cta-6969d8fba29f2b2d11c75f90 .tab-entry__table {
    width: 980px !important;
    /* 6列想定の固定幅（=間延び防止にもなる） */
    min-width: 980px !important;
    max-width: none !important;
    table-layout: fixed !important;
  }
  #cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-lefthead,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-factory {
    width: 140px !important;
    min-width: 140px !important;
    max-width: 140px !important;
  }
  #cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-date,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-cell {
    width: 120px !important;
    min-width: 120px !important;
    max-width: 120px !important;
  }
  #cta-6969d8fba29f2b2d11c75f90 .tab-entry__scroll {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__scroll {
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-lefthead,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-factory {
  width: 140px !important;
  min-width: 140px !important;
  max-width: 140px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-date,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-cell {
  width: 120px !important;
  min-width: 120px !important;
  max-width: 120px !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table {
  table-layout: fixed !important;
  min-width: 860px !important;
  /* 140 + (120*6) = 860 */
  width: max-content !important;
  /* 列が多い時は自然に伸びる */
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__scroll {
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table {
  width: max-content !important;
  /* これで“列数ぶんだけ”の幅になる */
  min-width: 0 !important;
  /* 固定min-widthが残ってると縮まないので0 */
  table-layout: auto !important;
  /* fixedだと等分で伸びやすいのでauto推奨 */
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-lefthead,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-factory {
  width: auto !important;
  min-width: 86px !important;
  /* 工場列の最低幅。好みで調整OK */
  max-width: none !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-date,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table .te-cell {
  width: auto !important;
  min-width: 120px !important;
  /* 日付列の最低幅。好みで調整OK */
  max-width: none !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table {
  display: table !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table tbody {
  display: table-row-group !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table tr {
  display: table-row !important;
}
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table th,
#cta-6969d8fba29f2b2d11c75f90 .tab-entry__table td {
  display: table-cell !important;
  float: none !important;
}