/* Static export: Wix JS removed — layout for leftover custom tags & empty “More” slot */

/* Wix 既定の 980px センタリングをやめ、ヘッダー〜本文の横余白を解消 */
:root {
  --site-width: 100% !important;
  /* header-strip.png 元寸 2500×140（下約1/4が赤帯） */
  --cs-header-strip-h: max(72px, calc(100vw * 140 / 2500));
  --cs-header-strip-min-h: var(--cs-header-strip-h);
  --cs-header-red-zone: calc(var(--cs-header-strip-h) * 0.25);
  /* 本番 Wix テーマに近いグローバルナビの赤 */
  --cs-nav-red: #da1919;
  /* PC: メッシュ上端〜赤ナビ上端までの余白（電話をナビ直上に置く基準） */
  --cs-header-pad-top: 98px;
}

/* 電話SVGは非表示（番号左に ☎︎ を HTML で表示） */
#SITE_HEADER #comp-jcoavgyg {
  display: none !important;
}

wix-dropdown-menu {
  display: block;
}

/* 要望対応: ヘッダーから「お仕事検索」ボタンを外す（全幅共通） */
#SITE_HEADER #comp-jcsom2z4 {
  display: none !important;
}

#DrpDwnMn0-hwd__more__ {
  display: none !important;
}

/* ヘッダー全幅（ラッパー・モバイルの左右 10px 等を打ち消し） */
#main_MF,
#site-root {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box;
}

#SITE_HEADER,
#SITE_HEADER .U4Bvut,
#SITE_HEADER .CJF7A2,
#SITE_HEADER [data-mesh-id="SITE_HEADERinlineContent"] {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  left: 0 !important;
  right: auto !important;
}

/* ロゴリンク由来のベースライン余白を除去（下の空き対策） */
#SITE_HEADER #comp-jcsj4w4o {
  line-height: 0 !important;
  font-size: 0 !important;
  height: auto !important;
  min-height: 0 !important;
}

#SITE_HEADER #comp-jcsj4w4o .j7pOnl {
  display: block !important;
  line-height: 0 !important;
  font-size: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: hidden !important;
  vertical-align: top !important;
}

#SITE_HEADER #comp-jcsj4w4o .j7pOnl > img {
  display: block !important;
  margin: 0 !important;
  vertical-align: top !important;
}

#SITE_HEADER .G5K6X8 {
  margin-left: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  left: 0 !important;
  right: 0 !important;
}

.xU8fqS .G5K6X8,
body.device-mobile-optimized .xU8fqS .G5K6X8,
:host(.device-mobile-optimized) .xU8fqS .G5K6X8 {
  left: 0 !important;
  right: 0 !important;
}

body.device-mobile-optimized #main_MF,
body.device-mobile-optimized #site-root {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* ----- PC（992px+）: 本番 Wix の 980px 列・絶対座標（靠 strip 全幅は .U4Bvut） ----- */
@media screen and (min-width: 992px) {
  /* 本番 PNG の赤帯は使わず、グレー帯＋白ナビのオリジナル */
  #SITE_HEADER .U4Bvut {
    background-color: #ececec !important;
    background-image: none !important;
    box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.07) !important;
    padding-bottom: 0 !important;
  }

  #SITE_HEADER wix-dropdown-menu#DrpDwnMn0-hwd {
    margin-block-end: 0 !important;
    margin-bottom: 0 !important;
  }

  #SITE_HEADER [data-mesh-id="SITE_HEADERinlineContent-gridContainer"] {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 980px !important;
    min-height: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    /* ロゴ帯の高さ。電話の top は --cs-header-pad-top と連動 */
    padding: var(--cs-header-pad-top) 0 0 !important;
    box-sizing: border-box !important;
    isolation: isolate !important;
    background: transparent !important;
    background-image: none !important;
    overflow-x: visible !important;
  }

  #SITE_HEADER [data-mesh-id="SITE_HEADERinlineContent-gridContainer"]::before {
    content: none !important;
    display: none !important;
  }

  /* ナビは通常フロー（relative）のまま。絶対配置はロゴ・電話等のみ */
  #SITE_HEADER [data-mesh-id="SITE_HEADERinlineContent-gridContainer"] > *:not(#DrpDwnMn0-hwd) {
    position: absolute !important;
    margin: 0 !important;
    right: auto !important;
  }

  #SITE_HEADER #comp-jcsj4w4o {
    left: 10px !important;
    top: 21px !important;
    z-index: 12 !important;
    height: auto !important;
    min-height: 0 !important;
  }

  /* ロゴリンク枠の視覚線を完全に除去 */
  #SITE_HEADER #comp-jcsj4w4o .j7pOnl,
  #SITE_HEADER #comp-jcsj4w4o .j7pOnl:link,
  #SITE_HEADER #comp-jcsj4w4o .j7pOnl:visited,
  #SITE_HEADER #comp-jcsj4w4o .j7pOnl:hover,
  #SITE_HEADER #comp-jcsj4w4o .j7pOnl:active,
  #SITE_HEADER #comp-jcsj4w4o .j7pOnl:focus,
  #SITE_HEADER #comp-jcsj4w4o .j7pOnl:focus-visible {
    border: 0 !important;
    outline: none !important;
    box-shadow: none !important;
    background: transparent !important;
    text-decoration: none !important;
  }

  #SITE_HEADER #comp-jcsj4w4o img {
    display: block !important;
    width: 267px !important;
    max-width: min(267px, 32vw) !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
  }

  #SITE_HEADER #WRchTxt1-gva {
    left: 103px !important;
    top: 31px !important;
    width: auto !important;
    max-width: 520px !important;
    z-index: 11 !important;
  }

  #SITE_HEADER #WRchTxt1-gva h1 {
    margin: 0 !important;
    line-height: 1.2em !important;
  }

  /* お仕事検索: 上段。電話は赤メニュー直上（番号ブロックは下段） */
  #SITE_HEADER #comp-jcsom2z4 {
    left: 756px !important;
    right: auto !important;
    top: 15px !important;
    z-index: 6 !important;
    width: max-content !important;
    height: auto !important;
  }

  #SITE_HEADER #comp-jcsom2z4.FubTgk {
    height: auto !important;
    min-height: 0 !important;
  }

  /* 電話番号: 右寄せ・赤ナビ直上（pad 下端≒ナビ上端。1 行の高さ 1.2em + 隙間 2px を差し引いて top を決める） */
  #SITE_HEADER #comp-jcoayd61 {
    font-size: clamp(20px, 2.2vw, 28px) !important;
    left: auto !important;
    right: 12px !important;
    top: calc(var(--cs-header-pad-top) - 1.1em - 1px) !important;
    z-index: 5 !important;
    max-width: none !important;
    text-align: right !important;
    white-space: nowrap !important;
  }

  /* Wix mesh の left:740px 等より優先して本番どおり右端に固定 */
  #SITE_HEADER [data-mesh-id="SITE_HEADERinlineContent-gridContainer"] > #comp-jcoayd61 {
    left: auto !important;
    right: 12px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: right !important;
  }

  #SITE_HEADER #comp-jcoayd61 p,
  #SITE_HEADER #comp-jcoayd61 .wixui-rich-text__text {
    font-size: clamp(20px, 2.2vw, 28px) !important;
    line-height: 1.2 !important;
  }

  #SITE_HEADER #comp-jcoayd61 p {
    text-align: right !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #SITE_HEADER #comp-jcoayd61 a,
  #SITE_HEADER #comp-jcoayd61 .color_43,
  #SITE_HEADER #comp-jcoayd61 span {
    color: var(--cs-nav-red) !important;
  }

  #SITE_HEADER #comp-jcoayd61 span.cs-phone-glyph {
    color: var(--cs-nav-red) !important;
    margin-right: 0.2em !important;
    user-select: none !important;
  }

  #SITE_HEADER #DrpDwnMn0-hwd {
    position: relative !important;
    left: 0 !important;
    top: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    margin-bottom: 0 !important;
    padding: 5px max(12px, env(safe-area-inset-right, 0px)) 5px max(12px, env(safe-area-inset-left, 0px)) !important;
    box-sizing: border-box !important;
    background: var(--cs-nav-red) !important;
    z-index: 2 !important;
    border-top: 1px solid rgba(0, 0, 0, 0.12) !important;
  }

  /* 本番同様: 赤帯上の白文字（区切りは薄い白線） */
  #SITE_HEADER #DrpDwnMn0-hwd .rhHoTC {
    border-left: none !important;
    border-right: none !important;
  }

  #SITE_HEADER #DrpDwnMn0-hwd .rhHoTC:not(:first-child) {
    border-left: 1px solid rgba(255, 255, 255, 0.35) !important;
  }

  #SITE_HEADER #DrpDwnMn0-hwd .rhHoTC:hover {
    background: rgba(255, 255, 255, 0.12) !important;
  }

  #SITE_HEADER #DrpDwnMn0-hwd .qDaKPQ {
    min-height: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    justify-content: center !important;
    gap: 0 !important;
    flex-wrap: wrap !important;
  }

  #SITE_HEADER #DrpDwnMn0-hwd .aWTgIN {
    padding: 6px 14px !important;
    line-height: 1.25 !important;
    color: #fff !important;
  }

  #SITE_HEADER #DrpDwnMn0-hwd a,
  #SITE_HEADER #DrpDwnMn0-hwd .wIGMae {
    color: #fff !important;
  }

  #SITE_HEADER #DrpDwnMn0-hwd a[aria-current="page"] .aWTgIN,
  #SITE_HEADER #DrpDwnMn0-hwd [data-state*="selected"] a .aWTgIN {
    font-weight: 700 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
  }

  #SITE_HEADER #comp-jcsom2z4 .l7_2fn,
  #SITE_HEADER #comp-jcsom2z4 .wixui-button__label {
    font-size: inherit !important;
    line-height: inherit !important;
  }
}

/* ----- 991px 以下: グリッド＋帯疑似要素 ----- */
@media screen and (max-width: 991.98px) {
  #SITE_HEADER .U4Bvut {
    background: none !important;
    background-image: none !important;
  }

  #SITE_HEADER [data-mesh-id="SITE_HEADERinlineContent-gridContainer"] {
    position: relative !important;
    display: grid !important;
    background: transparent !important;
    background-image: none !important;
    min-height: 0 !important;
    max-width: none !important;
    min-width: 0 !important;
    align-items: start !important;
    grid-template-columns: auto minmax(0, 1fr) auto auto auto auto !important;
    /* 1:H1 2:ロゴ+お仕事検索+電話(+ハンバーガー) 3:メニュー */
    grid-template-rows: auto min-content auto !important;
    gap: 4px 10px !important;
    row-gap: 2px !important;
    padding: max(6px, env(safe-area-inset-top, 0px)) max(12px, env(safe-area-inset-right, 0px)) 0
      max(12px, env(safe-area-inset-left, 0px)) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  #SITE_HEADER [data-mesh-id="SITE_HEADERinlineContent-gridContainer"]::before {
    display: none !important;
    content: none !important;
  }

  #SITE_HEADER [data-mesh-id="SITE_HEADERinlineContent-gridContainer"] > * {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    z-index: 1 !important;
  }

  #SITE_HEADER #WRchTxt1-gva {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    align-self: start !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  #SITE_HEADER #comp-jcsj4w4o {
    grid-column: 1 !important;
    grid-row: 2 !important;
    align-self: start !important;
    margin: 0 !important;
    height: auto !important;
    min-height: 0 !important;
  }

  #SITE_HEADER #comp-jcsj4w4o .j7pOnl,
  #SITE_HEADER #comp-jcsj4w4o .j7pOnl:focus,
  #SITE_HEADER #comp-jcsj4w4o .j7pOnl:focus-visible {
    border: 0 !important;
    outline: none !important;
    box-shadow: none !important;
    background: transparent !important;
  }

  #SITE_HEADER #comp-jcsj4w4o img {
    width: auto !important;
    max-width: 100% !important;
    max-height: clamp(52px, 12vw, 77px) !important;
    object-fit: contain !important;
  }

  #SITE_HEADER #comp-jcoayd61 {
    grid-column: 5 !important;
    grid-row: 2 !important;
    align-self: center !important;
    justify-self: end !important;
    text-align: right !important;
    margin: 0 !important;
    max-width: none !important;
    min-width: 0 !important;
    overflow: visible !important;
    width: auto !important;
    z-index: 5 !important;
  }

  #SITE_HEADER #comp-jcoayd61 p {
    text-align: right !important;
    white-space: nowrap !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #SITE_HEADER #comp-jcoayd61 .wixui-rich-text__text {
    font-size: clamp(15px, 4.2vw, 17px) !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
  }

  #SITE_HEADER #comp-jcsom2z4 {
    grid-column: 4 !important;
    grid-row: 2 !important;
    align-self: start !important;
    justify-self: end !important;
    margin-bottom: 0 !important;
    width: auto !important;
    height: auto !important;
  }

  #SITE_HEADER #DrpDwnMn0-hwd {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
    top: auto !important;
    left: auto !important;
    padding-top: 8px !important;
    padding-bottom: 4px !important;
    background: transparent !important;
    margin: 0 !important;
    margin-top: 0 !important;
  }

  /* ヘッダー下に赤ライン。下のヒーローへ隙間なく接続 */
  #SITE_HEADER {
    border-bottom: 2px solid var(--cs-nav-red) !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  #PAGES_CONTAINER,
  #mainPage .HT5ybB,
  #ContainermainPage,
  #comp-mm2upvsd {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  #SITE_HEADER #DrpDwnMn0-hwd .aWTgIN,
  #SITE_HEADER #DrpDwnMn0-hwd a,
  #SITE_HEADER #DrpDwnMn0-hwd .wIGMae {
    color: var(--cs-nav-red) !important;
  }

  #SITE_HEADER #DrpDwnMn0-hwd .rhHoTC:not(:first-child) {
    border-left: 1px solid rgba(218, 25, 25, 0.35) !important;
  }

  #SITE_HEADER #comp-jcoayd61 a,
  #SITE_HEADER #comp-jcoayd61 .color_43 {
    color: var(--cs-nav-red) !important;
  }

  #SITE_HEADER #comp-jcoayd61 span.cs-phone-glyph {
    color: var(--cs-nav-red) !important;
    margin-right: 0.2em !important;
  }
}

/* 電話アイコン: エクスポート SVG の青 fill を本番の赤に統一（全幅共通） */
#SITE_HEADER #comp-jcoavgyg svg path,
#SITE_HEADER #comp-jcoavgyg svg [data-color="1"] {
  fill: var(--cs-nav-red) !important;
}

/* お仕事検索: 枠を文字に合わせて小さく、字はやや大きく（Wix .FubTgk / 絶対配置の伸長を解除） */
#SITE_HEADER #comp-jcsom2z4 {
  position: relative !important;
  z-index: 25 !important;
  pointer-events: auto !important;
}

/* PC では「ここをタップ」非表示（HTML に span あり） */
#SITE_HEADER #comp-jcsom2z4 .cs-job-search__tap {
  display: none !important;
}

#SITE_HEADER #comp-jcsom2z4.FubTgk {
  height: auto !important;
  min-height: 0 !important;
  width: auto !important;
  align-self: center !important;
}

#SITE_HEADER #comp-jcsom2z4 .uDW_Qe.wixui-button {
  position: relative !important;
  inset: auto !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  min-width: 0 !important;
  width: max-content !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 5px 12px !important;
  box-sizing: border-box !important;
  background: var(--cs-nav-red) !important;
  border: 1px solid var(--cs-nav-red) !important;
  color: #fff !important;
  border-radius: 3px !important;
  cursor: pointer !important;
  touch-action: manipulation !important;
  -webkit-tap-highlight-color: rgba(218, 25, 25, 0.28) !important;
}

#SITE_HEADER #comp-jcsom2z4 .l7_2fn,
#SITE_HEADER #comp-jcsom2z4 .wixui-button__label {
  color: #fff !important;
}

#SITE_HEADER #comp-jcsom2z4 .uDW_Qe.wixui-button:hover {
  background: #b81414 !important;
  border-color: #b81414 !important;
}

#SITE_HEADER #comp-jcsom2z4 .uDW_Qe:before,
#SITE_HEADER #comp-jcsom2z4 .uDW_Qe:after {
  display: none !important;
  content: none !important;
  flex-grow: 0 !important;
}

@media screen and (max-width: 991.98px) {
  #SITE_HEADER #comp-jcsom2z4 .cs-job-search__tap {
    display: block !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    letter-spacing: 0.04em !important;
    margin-top: 4px !important;
    line-height: 1.15 !important;
    opacity: 0.95 !important;
  }

  #SITE_HEADER #comp-jcsom2z4 .uDW_Qe.wixui-button {
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 44px !important;
    min-width: min(100%, 44px) !important;
    padding: 10px 16px !important;
  }

  #SITE_HEADER #comp-jcsom2z4 .l7_2fn,
  #SITE_HEADER #comp-jcsom2z4 .wixui-button__label {
    font-size: 14px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    text-align: center !important;
  }
}

/* PC: お仕事検索は読みやすいが薄型（電話をすぐ下に置くため高さを抑える） */
@media screen and (min-width: 992px) {
  #SITE_HEADER #comp-jcsom2z4 .uDW_Qe.wixui-button {
    padding: 5px 14px !important;
    min-height: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 3px !important;
  }

  #SITE_HEADER #comp-jcsom2z4 .l7_2fn,
  #SITE_HEADER #comp-jcsom2z4 .wixui-button__label {
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
  }
}
