@charset "UTF-8";
/* 申込フォーム／お問い合わせフォーム */

.hs-form{
  background:var(--hs-cream-50);
  border:2px solid var(--hs-cream-300);
  border-radius:var(--hs-radius);
  padding:clamp(22px,4vw,40px);
  box-shadow:var(--hs-shadow);
}

.hs-field{ margin:0 0 26px; border:0; padding:0; }
.hs-field:last-of-type{ margin-bottom:20px; }
.hs-field__label{
  display:block; font-family:var(--hs-font-round); font-weight:700;
  font-size:1rem; color:var(--hs-green-800); margin:0 0 .6em; padding:0;
}
.hs-field__help{ margin:.5em 0 0; font-size:.85rem; color:var(--hs-muted); line-height:1.7; }

.hs-form input[type="text"],
.hs-form input[type="tel"],
.hs-form input[type="email"],
.hs-form input[type="number"],
.hs-form select,
.hs-form textarea{
  width:100%; box-sizing:border-box;
  font-family:inherit; font-size:1rem; color:var(--hs-ink);
  background:#fff; border:2px solid var(--hs-cream-300);
  border-radius:var(--hs-radius-sm);
  padding:.75em .9em; min-height:52px; line-height:1.6;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.hs-form textarea{ min-height:120px; resize:vertical; }
.hs-form input:focus,
.hs-form select:focus,
.hs-form textarea:focus{
  outline:0; border-color:var(--hs-green-600);
  box-shadow:0 0 0 3px rgba(42,113,53,.18);
}
.hs-form input[disabled]{ background:var(--hs-cream-100); color:var(--hs-muted); }

/* 選択肢 */
.hs-choices{ display:flex; flex-wrap:wrap; gap:10px; }
.hs-choices--wrap{ display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
.hs-choice{
  display:flex; align-items:center; gap:.6em;
  background:#fff; border:2px solid var(--hs-cream-300);
  border-radius:var(--hs-radius-sm);
  padding:.7em 1.1em; min-height:52px; cursor:pointer;
  font-size:.95rem; line-height:1.5;
  transition:border-color .15s ease, background-color .15s ease;
}
.hs-choice:hover{ border-color:var(--hs-green-500); }
.hs-choice input{ width:20px; height:20px; accent-color:var(--hs-green-600); flex:0 0 auto; margin:0; }
.hs-choice:has(input:checked){
  border-color:var(--hs-green-600); background:#EAF6EC; font-weight:700;
}
.hs-choices--card{ display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.hs-choice--card{
  justify-content:center; text-align:center;
  font-family:var(--hs-font-round); font-weight:700; font-size:1.02rem;
  padding:1.1em 1em; min-height:68px;
}
.hs-choice--card:has(input:checked){ border-color:var(--hs-yellow); background:#FFF8E2; }

/* 教員歴 */
.hs-career{ display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.hs-career__input{ display:flex; align-items:center; gap:.5em; font-weight:700; }
.hs-career__input input{ width:110px!important; }

.hs-check{ display:flex; align-items:flex-start; gap:.7em; cursor:pointer; line-height:1.7; }
.hs-check input{ width:22px; height:22px; accent-color:var(--hs-green-600); flex:0 0 auto; margin-top:.15em; }

/* 条件付きブロック */
.hs-conditional{
  background:var(--hs-cream-100);
  border:2px dashed var(--hs-green-500);
  border-radius:var(--hs-radius);
  padding:clamp(18px,3vw,28px);
  margin:0 0 26px;
}
.hs-conditional[hidden]{ display:none; }
.hs-conditional .hs-subheading{ margin-top:0; }
.hs-target-seminar{
  background:#fff; border-radius:var(--hs-radius-sm);
  padding:.7em 1em; margin:0 0 18px; font-size:.9rem; color:var(--hs-text);
}

.hs-field--agree{
  background:var(--hs-cream-100); border-radius:var(--hs-radius-sm);
  padding:1em 1.2em; margin-top:30px;
}
.hs-field--agree a{ color:var(--hs-green-600); font-weight:700; }

/* ハニーポット（人には見せない） */
.hs-hp{
  position:absolute!important; left:-9999px; top:auto;
  width:1px; height:1px; overflow:hidden;
}

.hs-form button[type="submit"]{
  border:0; cursor:pointer; font-family:var(--hs-font-round);
}
.hs-form button[disabled]{ opacity:.6; cursor:default; }

@media screen and (max-width:600px){
  .hs-choices--wrap,
  .hs-choices--card{ grid-template-columns:1fr; }
}
