/* -------------------------------------------------------------
 * Recruit Entry page (採用応募フォーム) - page-recruit-entry.php
 *
 * クエリ ?slug=... で対象 recruit 投稿を特定し、ferret one フォームを
 * 埋め込み表示する。共通バナー/パンくずは css/style 系に依存。
 * ----------------------------------------------------------- */
.recruit-entry-page .recruit-entry-section {
  background-color: #ffffff;
  box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.0392156863), 0px 6px 6px 0px rgba(0, 0, 0, 0.031372549), 0px 14px 9px 0px rgba(0, 0, 0, 0.0196078431), 0px 25px 10px 0px rgba(0, 0, 0, 0.0117647059), 0px 40px 11px 0px rgba(0, 0, 0, 0);
  position: relative;
  z-index: 2;
  margin-top: -170px;
}
.recruit-entry-page .recruit-entry-section .inner {
  max-width: 960px;
  margin: 0 auto;
  padding: 60px 72px;
}
.recruit-entry-page .recruit-entry-form-wrapper {
  padding: 24px;
  flex: 1;
  background-color: #f3f6f7;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.recruit-entry-page .recruit-entry-job-title {
  margin-bottom: 32px;
  padding-bottom: 16px;
  border-bottom: 1px solid #e0e0e0;
}
.recruit-entry-page .recruit-entry-job-title .recruit-entry-job-title-label {
  display: inline-block;
  font-size: 12px;
  color: #666;
  margin-bottom: 8px;
}
.recruit-entry-page .recruit-entry-job-title .recruit-entry-job-title-text {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.4;
  margin: 0;
}
.recruit-entry-page .recruit-entry-form-embed {
  width: 100%;
}
/*
 * ferret one が発行する <div id="embbed-form"> 等のターゲット div、
 * およびその内部に script から差し込まれる iframe を、
 * 親要素の幅いっぱいに強制表示する。
 * 高さは ferret one 側の自動リサイズ (postMessage) に任せ、
 * min-height は指定しない (指定すると下に余白が出る)。
 * ferret one 側のデフォルト 500x500 や壊れた inline style (NaNpx) を
 * 完全に上書きするため !important を付与している。
 */
.recruit-entry-page .recruit-entry-form-embed > div {
  width: 100% !important;
  height: auto !important;
  overflow: visible !important;
}
.recruit-entry-page .recruit-entry-form-embed iframe {
  width: 100% !important;
  border: 0 !important;
  display: block;
}
.recruit-entry-page .recruit-entry-empty,
.recruit-entry-page .recruit-entry-not-found {
  text-align: center;
  padding: 40px 16px;
}
.recruit-entry-page .recruit-entry-empty p,
.recruit-entry-page .recruit-entry-not-found p {
  line-height: 1.8;
  color: #333;
}
.recruit-entry-page .recruit-entry-not-found-title {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 16px;
}
.recruit-entry-page .recruit-entry-not-found-description {
  margin-bottom: 32px;
}
.recruit-entry-page .recruit-entry-not-found-cta {
  margin-top: 24px;
}
.recruit-entry-page .recruit-entry-not-found-cta .recruit-entry-not-found-cta-btn {
  display: inline-block;
  padding: 14px 40px;
  background: #c8102e;
  color: #fff;
  text-decoration: none;
  border-radius: 4px;
  font-weight: 600;
  transition: opacity 0.2s ease;
}
.recruit-entry-page .recruit-entry-not-found-cta .recruit-entry-not-found-cta-btn:hover {
  opacity: 0.85;
}

@media (max-width: 768px) {
  .recruit-entry-page .recruit-entry-section {
    margin-top: -74px;
  }
  .recruit-entry-page .recruit-entry-section .inner {
    padding: 0;
  }
  .recruit-entry-page .recruit-entry-job-title-text {
    font-size: 20px;
  }
  .recruit-entry-page .recruit-entry-not-found-title {
    font-size: 18px;
  }
}
