/* /saiyo/entry/ フォーム改善専用。既存CSSを変更せず上書き */
.saiyo-entry .entry-redesign{max-width:900px;margin:24px auto 0}
.saiyo-entry .entry-section-title{display:flex;align-items:center;gap:14px;background:#eaf1f9;border-radius:9px 9px 0 0;padding:15px 20px;margin:30px 0 0;color:#15375d;font-size:2rem;font-weight:700}
.saiyo-entry .entry-section-title span{display:inline-flex;justify-content:center;align-items:center;background:#0754a7;color:#fff;border-radius:5px;width:36px;height:36px;font-size:1.6rem}
.saiyo-entry .entry-redesign .contact-form{background:#fff;border:1px solid #dbe3ec;border-top:0;padding:14px 24px 24px;border-radius:0 0 9px 9px;box-sizing:border-box}
.saiyo-entry .entry-redesign .contact-form>dt{float:none;width:auto;display:block;padding:16px 0 7px;border:0;font-weight:700}
.saiyo-entry .entry-redesign .contact-form>dd{float:none;width:100%;display:block;padding:0 0 12px;border:0;box-sizing:border-box}
.saiyo-entry .entry-redesign .contact-form>dd input:not([type=radio]):not([type=checkbox]),.saiyo-entry .entry-redesign .contact-form>dd select,.saiyo-entry .entry-redesign .contact-form>dd textarea{max-width:100%;box-sizing:border-box;min-height:44px}
.saiyo-entry .entry-redesign .course{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:12px 0!important;padding:12px;border:1px solid #e1e7ef;border-radius:7px;box-sizing:border-box}
.saiyo-entry .entry-redesign .course .label{width:auto;flex:1 1 290px}
.saiyo-entry .entry-redesign .course .select-container{flex:1 1 260px;min-width:0}
.saiyo-entry .entry-survey{border:1px solid #d4e0ed;border-radius:9px;margin:28px 0;background:#fff;overflow:hidden}
.saiyo-entry .entry-survey>summary{cursor:pointer;list-style:none;background:#eaf1f9;padding:18px 24px;font-size:1.8rem;font-weight:700;color:#15375d}
.saiyo-entry .entry-survey>summary::-webkit-details-marker{display:none}
.saiyo-entry .entry-survey>summary:after{content:'＋';float:right}
.saiyo-entry .entry-survey[open]>summary:after{content:'－'}
.saiyo-entry .entry-survey small{display:block;font-size:1.25rem;font-weight:400;margin-top:5px}
.saiyo-entry .entry-redesign .entry-survey .contact-form{border:0;border-radius:0}
/* 送信ボタンは既存サイトの .btn-submit の装飾を使用します。 */
@media(max-width:767px){.saiyo-entry .entry-section-title{font-size:1.7rem;padding:12px}.saiyo-entry .entry-redesign .contact-form{padding:12px 14px 18px}.saiyo-entry .entry-redesign .course{display:block}.saiyo-entry .entry-redesign .course .label{display:block;width:100%;margin-bottom:12px}.saiyo-entry .entry-survey>summary{padding:14px;font-size:1.6rem}}


/* 2026-11-04: entry ページ専用の視認性調整 */
.saiyo-entry .kv { height:200px; padding-top:20px; box-sizing:border-box; }

/* コースの日時選択: 罫線を明確に */
.saiyo-entry .entry-redesign .course .select-container select {
  border:0;
  border-bottom:2px solid #9baab7;
  border-radius:0;
  background-color:#fff;
  padding-left:10px;
  padding-right:28px;
  min-height:44px;
  width:100%;
}
.saiyo-entry .entry-redesign .course .select-container select:focus {
  outline:2px solid #2e668e;
  outline-offset:2px;
}

/* 氏名・連絡先・学校情報: 入力欄を可視化 */
.saiyo-entry .entry-redesign .contact-form input[type="text"],
.saiyo-entry .entry-redesign .contact-form input[type="email"],
.saiyo-entry .entry-redesign .contact-form input[type="tel"],
.saiyo-entry .entry-redesign .form-address input[type="text"] {
  border:1px solid #aab8c5;
  border-radius:4px;
  background:#fff;
  min-height:44px;
  padding:10px 12px;
  box-sizing:border-box;
}
.saiyo-entry .entry-redesign .contact-form input:focus,
.saiyo-entry .entry-redesign .contact-form textarea:focus {
  outline:2px solid #2e668e;
  outline-offset:1px;
}
.saiyo-entry .entry-redesign .contact-form input::placeholder,
.saiyo-entry .entry-redesign .contact-form textarea::placeholder { color:#7b8792; opacity:1; }

/* アンケートの「その他」自由記述 */
.saiyo-entry .entry-redesign .entry-survey textarea {
  display:block;
  width:100%;
  max-width:100%;
  border:1px solid #aab8c5;
  border-radius:4px;
  background:#fff;
  padding:12px;
  min-height:90px;
  box-sizing:border-box;
  margin-top:12px;
}

/* 採用募集要項グレーの開閉見出し */
.saiyo-entry .entry-survey { border:0; border-radius:0; background:transparent; overflow:visible; }
.saiyo-entry .entry-survey > summary {
  position:relative;
  background:#e5e5e5;
  color:#222;
  border:0;
  border-radius:0;
  padding:16px 52px 16px 20px;
  font-size:1.7rem;
  line-height:1.5;
}
.saiyo-entry .entry-survey > summary::after {
  content:"";
  position:absolute;
  right:23px;
  top:50%;
  width:10px;
  height:10px;
  border-right:2px solid #333;
  border-bottom:2px solid #333;
  transform:translateY(-70%) rotate(45deg);
  float:none;
}
.saiyo-entry .entry-survey[open] > summary::after {
  content:"";
  transform:translateY(-25%) rotate(225deg);
}
.saiyo-entry .entry-survey > summary:focus-visible { outline:2px solid #2e668e; outline-offset:2px; }
.saiyo-entry .entry-survey .contact-form { border:1px solid #dedede !important; border-top:0 !important; background:#fff; }

@media(max-width:767px) {
  .saiyo-entry .kv { height:200px; padding-top:20px; }
  .saiyo-entry .entry-survey > summary { padding:14px 44px 14px 15px; font-size:1.6rem; }
  .saiyo-entry .entry-survey > summary::after { right:18px; }
}


/* 2026-11-04 追加調整：学校情報の二重罫線 */
.saiyo-entry .entry-redesign .contact-form .form-address {
  border:0 !important;
  margin:0;
  padding:0;
  width:100%;
}
.saiyo-entry .entry-redesign .contact-form .form-address > dt,
.saiyo-entry .entry-redesign .contact-form .form-address > dd {
  border:0 !important;
  border-bottom:0 !important;
  float:none;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  margin:0;
}
.saiyo-entry .entry-redesign .contact-form .form-address > dt {
  padding:12px 0 8px;
  font-weight:700;
}
.saiyo-entry .entry-redesign .contact-form .form-address > dd {
  padding:0 0 14px;
}
.saiyo-entry .entry-redesign .contact-form .form-address > dd input[type="text"] {
  max-width:100%;
}
.saiyo-entry .entry-redesign .contact-form .form-address > dd:has(.div) {
  display:flex;
  flex-wrap:wrap;
  gap:12px 20px;
  align-items:center;
}
.saiyo-entry .entry-redesign .contact-form .form-address > dd .div {
  display:flex;
  align-items:center;
  gap:8px;
  margin:0 !important;
  min-width:0;
}
.saiyo-entry .entry-redesign .contact-form .form-address > dd .div > div {
  margin:0 !important;
  flex-shrink:0;
}
.saiyo-entry .entry-redesign .contact-form .form-address > dd .div input {
  width:220px;
  min-width:0;
}
.saiyo-entry .entry-redesign .contact-form .form-address .select-container {
  width:100%;
  max-width:100%;
  border:0 !important;
}
.saiyo-entry .entry-redesign .contact-form .form-address select {
  min-height:44px;
  border:1px solid #aab8c5;
  border-radius:4px;
  background-color:#fff;
  padding:8px 30px 8px 12px;
  box-sizing:border-box;
}
/* 既存の募集要項アコーディオンと同じ配色・画像アイコン */
.saiyo-entry .entry-redesign .entry-survey > summary {
  background:#616d7a url('/assets/images/common/i_close-white.png') right 30px center / 20px auto no-repeat;
  color:#fff;
  border-radius:0;
  text-align:center;
  padding:18px 65px;
  font-size:2.2rem;
  font-weight:400;
}
.saiyo-entry .entry-redesign .entry-survey[open] > summary {
  background:#3a4047 url('/assets/images/common/i_open-white.png') right 30px center / 20px auto no-repeat;
}
.saiyo-entry .entry-redesign .entry-survey > summary::after { content:none !important; display:none !important; }
.saiyo-entry .entry-redesign .entry-survey > summary small { color:inherit; }
@media(max-width:767px) {
  .saiyo-entry .entry-redesign .contact-form .form-address > dd .div { width:100%; }
  .saiyo-entry .entry-redesign .contact-form .form-address > dd .div input { width:100%; flex:1; }
  .saiyo-entry .entry-redesign .entry-survey > summary {
    font-size:1.7rem;
    padding:15px 42px;
    background-size:10px auto;
    background-position:right 18px center;
  }
  .saiyo-entry .entry-redesign .entry-survey[open] > summary {
    background-size:10px auto;
    background-position:right 18px center;
  }
}

/* 2026-11-04: prefecture dropdown and mobile KV spacing */
.saiyo-entry .entry-redesign .contact-form > dd > select[name="address1"] {
  display:block; width:100%; max-width:100%; min-height:44px;
  box-sizing:border-box; border:1px solid #aab8c5 !important;
  border-radius:4px; background-color:#fff; padding:8px 34px 8px 12px;
}
@media (max-width:767px) {
  .saiyo-entry .kv {
    height:auto !important; min-height:0 !important;
    padding:35px 15px 20px !important; margin-bottom:0 !important;
    border-bottom:0 !important;
  }
  .saiyo-entry .kv::after, .saiyo-entry .kv__title::after {
    content:none !important; display:none !important;
  }
  .saiyo-entry .kv__in { padding:0 !important; margin:0 auto !important; border:0 !important; }
  .saiyo-entry .kv__title { margin:0 !important; padding-bottom:0 !important; border:0 !important; }
  .saiyo-entry .breadcrumb { margin-top:0 !important; padding-top:10px !important; }
}

/* 2026-11-07: アンケート常時表示（開閉操作なし） */
.saiyo-entry .entry-redesign .entry-survey {
  margin: 28px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  overflow: visible;
}
.saiyo-entry .entry-redesign .entry-survey__title {
  display: flex;
  align-items: baseline;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin: 0;
  padding: 14px 20px;
  min-height: 50px;
  box-sizing: border-box;
  background: #3a4047;
  color: #fff;
  text-align: center;
  font-size: 2.2rem;
  font-weight: 400;
  line-height: 1.5;
}
.saiyo-entry .entry-redesign .entry-survey__title small {
  display: inline;
  margin: 0;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 400;
}
.saiyo-entry .entry-redesign .entry-survey > .contact-form {
  margin: 0;
  border: 1px solid #dedede !important;
  border-top: 0 !important;
  border-radius: 0;
  background: #fff;
}
@media (max-width: 767px) {
  .saiyo-entry .entry-redesign .entry-survey__title {
    padding: 13px 12px;
    font-size: 1.7rem;
    gap: 3px 10px;
  }
  .saiyo-entry .entry-redesign .entry-survey__title small {
    font-size: 1.1rem;
  }
}
/* アンケート：希望職種を横並び＋自動折り返し */
.saiyo-entry .entry-survey .contact-form dd.radio {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 20px;
}

.saiyo-entry .entry-survey .contact-form dd.radio > div {
  width: auto;
  margin: 0;
  flex: 0 0 auto;
}

.saiyo-entry .entry-survey .contact-form dd.radio .label {
  width: auto;
  white-space: nowrap;
}

/* SP項目間の余白 */
@media (max-width: 767.9px) {
  .saiyo-entry .entry-survey .contact-form dd.radio {
    gap: 10px 12px;
  }
}