/*
 * ena高校部 CF7 form design port
 * Scope: application-for-entrance form only
 */

#application-for-entrance01 .ena-form-skin {
  width:100%;
  padding-top:60px;
  color:#222;
  font-family:
    "Noto Serif JP",
    "ヒラギノ明朝 Pro",
    "Hiragino Mincho Pro",
    "MS P明朝",
    "MS PMincho",
    serif;
}

#application-for-entrance01 .ena-form-skin *,
#application-for-entrance01 .ena-form-skin *::before,
#application-for-entrance01 .ena-form-skin *::after {
  box-sizing:border-box;
}

#application-for-entrance01 .ena-form-skin .containers {
  width:100%;
}

#application-for-entrance01 .ena-form-skin p,
#application-for-entrance01 .ena-form-skin h2,
#application-for-entrance01 .ena-form-skin h3,
#application-for-entrance01 .ena-form-skin h5 {
  margin-top:0;
}

#application-for-entrance01 .ena-form-skin .txt14 { font-size:14px; }
#application-for-entrance01 .ena-form-skin .txt16 { font-size:16px; }
#application-for-entrance01 .ena-form-skin .txt18 { font-size:18px; }
#application-for-entrance01 .ena-form-skin .txt30 { font-size:30px; }
#application-for-entrance01 .ena-form-skin .txt400 { font-weight:400; }
#application-for-entrance01 .ena-form-skin .txt700 { font-weight:700; }
#application-for-entrance01 .ena-form-skin .fcLNv { color:#043265; }
#application-for-entrance01 .ena-form-skin .lh12 { line-height:1.2; }
#application-for-entrance01 .ena-form-skin .wfit { width:fit-content; }
#application-for-entrance01 .ena-form-skin .mlr {
  margin-left:auto;
  margin-right:auto;
}
#application-for-entrance01 .ena-form-skin .txtCent { text-align:center; }
#application-for-entrance01 .ena-form-skin .flex { display:flex; }
#application-for-entrance01 .ena-form-skin .flexWrap { flex-wrap:wrap; }
#application-for-entrance01 .ena-form-skin .bgWH { background:#fff; }
#application-for-entrance01 .ena-form-skin .mt10 { margin-top:10px; }
#application-for-entrance01 .ena-form-skin .mt20 { margin-top:20px; }
#application-for-entrance01 .ena-form-skin .mt40 { margin-top:40px; }
#application-for-entrance01 .ena-form-skin .mb15 { margin-bottom:15px; }
#application-for-entrance01 .ena-form-skin .mb20 { margin-bottom:20px; }
#application-for-entrance01 .ena-form-skin .mb30 { margin-bottom:30px; }

#application-for-entrance01 .ena-form-skin .box30-40 {
  padding:30px 40px;
}

/* form title */
#application-for-entrance01 .ena-form-skin .c-line-ver {
  padding-bottom:15px;
  position:relative;
}

#application-for-entrance01 .ena-form-skin .c-line-ver::before,
#application-for-entrance01 .ena-form-skin .c-line-ver::after {
  position:absolute;
  height:2px;
  display:block;
  bottom:0;
  content:"";
}

#application-for-entrance01 .ena-form-skin .c-line-ver::before {
  background:#1A8BC7;
}

#application-for-entrance01 .ena-form-skin .c-line-ver::after {
  background:#C22F30;
}

#application-for-entrance01 .ena-form-skin .c-line-ver.w364 {
  width:364px;
  max-width:100%;
  text-align:center;
}

#application-for-entrance01 .ena-form-skin .c-line-ver.w364::before {
  width:182px;
  right:50%;
}

#application-for-entrance01 .ena-form-skin .c-line-ver.w364::after {
  width:182px;
  left:50%;
}

/* section title */
#application-for-entrance01 .ena-form-skin .lp-formSec_ttl {
  z-index:0;
  position:relative;
}

#application-for-entrance01 .ena-form-skin .lp-formSec_ttl::before {
  z-index:-1;
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  right:0;
  content:"";
  height:1px;
  width:100%;
  background:#043265;
}

#application-for-entrance01 .ena-form-skin .lp-formSec_ttl p {
  position:relative;
  z-index:1;
  background:#fff;
  padding-right:20px;
}

/* neutralize kango .formArea table design */
#application-for-entrance01 .formArea .ena-form-skin dl,
#application-for-entrance01 .formArea .ena-form-skin dt,
#application-for-entrance01 .formArea .ena-form-skin dd {
  display:flex;
  border:0;
  padding-left:0;
  text-indent:0;
}

#application-for-entrance01 .formArea .ena-form-skin dd::before,
#application-for-entrance01 .formArea .ena-form-skin dt::after {
  content:none !important;
  display:none !important;
}

/* exact ena basic form layout */
#application-for-entrance01 .ena-form-skin .c-form_item {
  padding:20px 0;
  border-bottom:1px solid #0F5EAE;
}

#application-for-entrance01 .ena-form-skin .c-form_item .annotation {
  width:66.6666%;
  margin-left:auto;
  display:block;
}

#application-for-entrance01 .ena-form-skin .c-form dl {
  width:100%;
  margin:0;
  position:relative;
  display:flex;
  justify-content:space-between;
}

#application-for-entrance01 .ena-form-skin .c-form dl dt,
#application-for-entrance01 .ena-form-skin .c-form dl dd {
  display:flex;
  align-items:flex-start;
}

#application-for-entrance01 .ena-form-skin .c-form dl dt {
  min-height:40px;
  display:flex;
  align-items:center;
  width:calc(33.3333% - 40px);
  justify-content:space-between;
}

#application-for-entrance01 .ena-form-skin .c-form dl dt .title {
  flex:1;
}

#application-for-entrance01 .ena-form-skin .c-form dl dt .title p {
  width:100%;
  margin-bottom:0;
}

#application-for-entrance01 .ena-form-skin .c-form dl dd {
  width:66.6666%;
}

#application-for-entrance01 .ena-form-skin .c-form .must_wrap {
  height:40px;
  display:flex;
  align-items:center;
}

#application-for-entrance01 .ena-form-skin .c-form .must {
  background:#CC0000;
  letter-spacing:2px;
  color:#fff;
  font-weight:700;
  font-size:12px;
  padding:1px 12px;
  border-radius:3px;
  display:flex;
  align-items:center;
}

/* inputs */
#application-for-entrance01 .ena-form-skin .c-form_item input.wpcf7-text,
#application-for-entrance01 .ena-form-skin .c-form_item input.wpcf7-email,
#application-for-entrance01 .ena-form-skin .c-form_item input.wpcf7-tel,
#application-for-entrance01 .ena-form-skin .c-form_item .wpcf7-textarea,
#application-for-entrance01 .ena-form-skin .c-form_item .wpcf7-select {
  font-size:16px;
  border-radius:5px;
  padding:7px 15px;
  border:1px solid #CCC;
  background:#fff;
  font-family:
    "Noto Serif JP",
    "ヒラギノ明朝 Pro",
    "Hiragino Mincho Pro",
    "MS P明朝",
    "MS PMincho",
    serif;
}

#application-for-entrance01 .ena-form-skin .c-form_item input.wpcf7-text,
#application-for-entrance01 .ena-form-skin .c-form_item input.wpcf7-email,
#application-for-entrance01 .ena-form-skin .c-form_item input.wpcf7-tel {
  width:100%;
}

#application-for-entrance01 .ena-form-skin .c-form_item .wpcf7-select {
  width:100%;
  height:40px;
  appearance:none;
  -webkit-appearance:none;
}

#application-for-entrance01 .ena-form-skin .c-form_item .w50 {
  justify-content:space-between;
}

#application-for-entrance01 .ena-form-skin .c-form_item .w50 > span {
  width:calc(50% - 10px);
}

#application-for-entrance01 .ena-form-skin .c-form_item .w100 > span {
  width:100%;
}

#application-for-entrance01 .ena-form-skin .c-form_item .tel span {
  width:calc(24% - 16.6666px);
  position:relative;
}

#application-for-entrance01 .ena-form-skin .c-form_item .tel span:not(:last-child) {
  margin-right:25px;
}

#application-for-entrance01 .ena-form-skin .c-form_item .tel span:not(:last-child)::before {
  content:"";
  right:-14.5px;
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  background:#222;
  width:5px;
  height:1px;
}

#application-for-entrance01 .ena-form-skin .c-form_item .select > span,
#application-for-entrance01 .ena-form-skin .c-form_item .select > div {
  position:relative;
}

#application-for-entrance01 .ena-form-skin .c-form_item .select > span::before,
#application-for-entrance01 .ena-form-skin .c-form_item .select > div::before {
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  right:15px;
  content:"";
  width:0;
  height:0;
  border-style:solid;
  border-width:10px 7.5px 0;
  border-color:#222 transparent transparent;
  z-index:1;
  pointer-events:none;
}

#application-for-entrance01 .ena-form-skin .school_display {
  display:block !important;
  line-height:2.6;
}

#application-for-entrance01 .ena-form-skin .school_display .wpcf7-form-control-wrap {
  display:inline-block;
  width:65%;
  margin-left:8px;
}

#application-for-entrance01 .ena-form-skin .w-birth {
  gap:6px;
  align-items:center !important;
  flex-wrap:wrap;
}

#application-for-entrance01 .ena-form-skin .w-birth .wpcf7-form-control-wrap {
  width:auto;
}

#application-for-entrance01 .ena-form-skin .w-birth select {
  min-width:88px;
}

/* radio */
#application-for-entrance01 .ena-form-skin .c-form_item .wpcf7-radio {
  display:flex;
}

#application-for-entrance01 .ena-form-skin .c-form_item .wpcf7-radio .wpcf7-list-item {
  display:flex;
  align-items:center;
  justify-content:flex-start;
  cursor:pointer;
  margin:0;
}

#application-for-entrance01 .ena-form-skin .c-form_item .wpcf7-radio input[type="radio"] {
  position:absolute;
  opacity:0;
}

#application-for-entrance01 .ena-form-skin .c-form_item .wpcf7-radio .wpcf7-list-item-label {
  font-size:16px;
  font-weight:700;
  position:relative;
  display:flex;
  align-items:center;
  width:60px;
  margin-right:30px;
  padding-left:36px;
}

#application-for-entrance01 .ena-form-skin .c-form_item .wpcf7-radio .wpcf7-list-item-label::before,
#application-for-entrance01 .ena-form-skin .c-form_item .wpcf7-radio .wpcf7-list-item-label::after {
  content:"";
  border-radius:13px;
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  display:block;
}

#application-for-entrance01 .ena-form-skin .c-form_item .wpcf7-radio .wpcf7-list-item-label::before {
  background:#fff;
  border:1px solid #666;
  width:26px;
  height:26px;
  left:0;
}

#application-for-entrance01 .ena-form-skin .c-form_item .wpcf7-radio .wpcf7-list-item-label::after {
  width:14px;
  height:14px;
  left:6px;
}

#application-for-entrance01 .ena-form-skin .c-form_item .wpcf7-radio input[type="radio"]:checked + .wpcf7-list-item-label::after {
  background:#000;
}

/* mail warning / legal boxes */
#application-for-entrance01 .ena-form-skin .c-bdblue,
#application-for-entrance01 .ena-form-skin .c-bdred {
  position:relative;
  padding:9px;
  height:100%;
  width:100%;
}

#application-for-entrance01 .ena-form-skin .c-bdblue {
  background:#F2F7FB;
  border:1px solid #0F5EAE;
}

#application-for-entrance01 .ena-form-skin .c-bdred {
  background:#FFEAF8;
  border:1px solid #E6181A;
}

#application-for-entrance01 .ena-form-skin .lp-form .text,
#application-for-entrance01 .ena-form-skin .text {
  height:190px;
  overflow-y:scroll;
}

#application-for-entrance01 .ena-form-skin .lp-exp-text_ttl span {
  width:16px;
  position:relative;
  margin:0 10px;
}

#application-for-entrance01 .ena-form-skin .lp-exp-text_ttl span::before {
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  content:"";
  display:block;
  width:0;
  height:0;
  border-style:solid;
  border-width:10px 8px 0;
  border-color:#222 transparent transparent;
}

/* course */
#application-for-entrance01 .ena-form-skin .nyugaku {
  display:block !important;
}

#application-for-entrance01 .ena-form-skin .nyugaku > p {
  margin-bottom:15px;
}

#application-for-entrance01 .ena-form-skin .ngatu,
#application-for-entrance01 .ena-form-skin .kousya_select {
  margin-top:15px;
}

#application-for-entrance01 .ena-form-skin .kousya_select h3 {
  font-size:16px;
  margin:0 0 8px;
}

#application-for-entrance01 .ena-form-skin .kousya_select select,
#application-for-entrance01 .ena-form-skin .ngatu select {
  width:100%;
  max-width:100%;
  height:40px;
  padding:7px 15px;
  border:1px solid #CCC;
  border-radius:5px;
  background:#fff;
}

#application-for-entrance01 .ena-form-skin .course_select {
  width:100%;
}

#application-for-entrance01 .ena-form-skin .tanka_select {
  padding-top:10px;
  width:100%;
}

#application-for-entrance01 .ena-form-skin .tanka_select h5 {
  font-size:12px;
  margin-bottom:5px;
}

#application-for-entrance01 .ena-form-skin .tanka_select .wpcf7-list-item {
  display:block;
  margin:8px 0 0;
}

#application-for-entrance01 .ena-form-skin .tanka_select label {
  display:inline-flex;
  align-items:center;
  font-size:13px;
  white-space:nowrap;
}

#application-for-entrance01 .ena-form-skin .tanka_select input[type="checkbox"] {
  width:20px;
  height:20px;
  margin-right:7px;
}

#application-for-entrance01 .ena-form-skin .course-note {
  margin-top:8px;
  color:#CC0000;
  font-size:13px;
}

/* acceptance */
#application-for-entrance01 .ena-form-skin .lp-form-acceptance {
  margin-bottom:30px;
}

#application-for-entrance01 .ena-form-skin .lp-form-acceptance label {
  position:relative;
  cursor:pointer;
  font-size:16px;
  font-weight:700;
  display:flex;
  align-items:center;
}

#application-for-entrance01 .ena-form-skin .lp-form-acceptance .wpcf7-list-item {
  margin:0 10px 0 0;
}

#application-for-entrance01 .ena-form-skin .lp-form-acceptance input[type="checkbox"] {
  width:22px;
  height:22px;
  margin-right:8px;
}

/* submit */
#application-for-entrance01 .ena-form-skin .form_btn_wrap {
  justify-content:center;
}

#application-for-entrance01 .ena-form-skin .c-form_btn {
  margin-top:40px;
  margin-right:auto;
  margin-left:auto;
  width:350px;
  max-width:100%;
  box-shadow:#000 2px 2px 3px;
  height:70px;
  background:#E6181A;
  border-radius:5px;
  position:relative;
  border:2px solid #fff;
  display:flex;
  align-items:center;
  justify-content:center;
}

#application-for-entrance01 .ena-form-skin .c-form_btn.navy {
  background:#043265;
}

#application-for-entrance01 .ena-form-skin .c-form_btn input {
  border:0;
  border-radius:5px;
  cursor:pointer;
  width:100%;
  height:100%;
  font-weight:700;
  font-size:30px;
  color:#fff !important;
  background:#043265;
  font-family:
    "Noto Serif JP",
    "ヒラギノ明朝 Pro",
    "Hiragino Mincho Pro",
    "MS P明朝",
    "MS PMincho",
    serif;
}

#application-for-entrance01 .ena-form-skin .wpcf7-not-valid-tip {
  display:block;
  margin-top:5px;
  color:#dc3232;
  font-size:12px;
}

/* mobile = ena form breakpoint */
@media screen and (max-width:568px) {

  #application-for-entrance01 .ena-form-skin {
    padding-top:30px;
  }

  #application-for-entrance01 .ena-form-skin .c-line-ver.w364::before,
  #application-for-entrance01 .ena-form-skin .c-line-ver.w364::after {
    width:50%;
  }

  #application-for-entrance01 .ena-form-skin .c-line-ver.w364::before {
    right:50%;
  }

  #application-for-entrance01 .ena-form-skin .c-line-ver.w364::after {
    left:50%;
  }

  #application-for-entrance01 .ena-form-skin .txt30 {
    font-size:20px;
  }

  #application-for-entrance01 .ena-form-skin .c-form_item {
    padding:20px 0 10px;
    border-bottom:1px solid #ccc;
  }

  #application-for-entrance01 .ena-form-skin .c-form_item .annotation {
    width:fit-content;
    margin-top:5px;
    margin-left:0;
  }

  #application-for-entrance01 .ena-form-skin .c-form dl {
    flex-direction:column;
    margin-bottom:5px;
  }

  #application-for-entrance01 .ena-form-skin .c-form dl dt {
    width:100%;
    justify-content:flex-start;
    margin-bottom:15px;
  }

  #application-for-entrance01 .ena-form-skin .c-form dl dt .title {
    width:fit-content;
    flex:none;
  }

  #application-for-entrance01 .ena-form-skin .c-form dl dt p {
    margin-right:10px;
  }

  #application-for-entrance01 .ena-form-skin .c-form dl dd {
    width:100%;
  }

  #application-for-entrance01 .ena-form-skin .c-form_item .w50 > span {
    width:calc(50% - 10px);
  }

  #application-for-entrance01 .ena-form-skin .c-form_item .tel > span {
    width:calc(33.3333% - 5px);
  }

  #application-for-entrance01 .ena-form-skin .school_display .wpcf7-form-control-wrap {
    width:100%;
    margin-left:0;
  }

  #application-for-entrance01 .ena-form-skin .box30-40 {
    padding:20px;
  }

  #application-for-entrance01 .ena-form-skin .lp-form-acceptance label {
    font-size:12px;
    line-height:1.4;
  }

  #application-for-entrance01 .ena-form-skin .c-form_btn {
    margin-top:20px;
    width:100%;
    height:50px;
  }

  #application-for-entrance01 .ena-form-skin .c-form_btn input {
    font-size:18px !important;
  }

  #application-for-entrance01 .ena-form-skin .tanka_select label {
    white-space:normal;
  }
}


/* ==========================================================
   FINAL CONFLICT RESET
   kango .formArea rules must not alter the ena form layout.
   ========================================================== */

#application-for-entrance01 .formArea .ena-form-skin .containers {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* kango switches all dl/dt/dd to block at <=1300px.
   Restore ena form layout explicitly. */
#application-for-entrance01 .formArea .ena-form-skin .c-form dl {
  display: flex !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  table-layout: auto !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form dl > dt {
  display: flex !important;
  width: calc(33.3333% - 40px) !important;
  padding: 0 !important;
  border: 0 !important;
  text-indent: 0 !important;
  align-items: center !important;
  justify-content: space-between !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form dl > dd {
  display: flex !important;
  width: 66.6666% !important;
  padding: 0 !important;
  border: 0 !important;
  text-indent: 0 !important;
  vertical-align: top !important;
  align-items: flex-start !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form dl > dt::after,
#application-for-entrance01 .formArea .ena-form-skin .c-form dl > dd::before {
  content: none !important;
  display: none !important;
}

/* ----------------------------------------------------------
   name / kana: surname + given name must remain side by side
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50 {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  justify-content: space-between !important;
  gap: 20px !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50 > .wpcf7-form-control-wrap {
  display: block !important;
  flex: 0 0 calc(50% - 10px) !important;
  width: calc(50% - 10px) !important;
  max-width: calc(50% - 10px) !important;
  margin: 0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50 > .wpcf7-form-control-wrap > input {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

/* A w50 row containing only one select follows the ena form width */
#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50.select {
  display: flex !important;
  justify-content: flex-start !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50.select > .wpcf7-form-control-wrap,
#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50.select > div {
  flex: 0 0 calc(50% - 10px) !important;
  width: calc(50% - 10px) !important;
  max-width: calc(50% - 10px) !important;
}

/* ----------------------------------------------------------
   full-width text/email fields inside the right column
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w100 {
  display: flex !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w100 > .wpcf7-form-control-wrap {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w100 input {
  width: 100% !important;
  max-width: none !important;
}

/* ----------------------------------------------------------
   phone / postal code
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.tel {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.tel > .wpcf7-form-control-wrap {
  display: block !important;
  width: calc(33.3333% - 17px) !important;
  max-width: none !important;
  flex: 0 0 calc(33.3333% - 17px) !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.tel input {
  width: 100% !important;
  max-width: none !important;
}

/* postal code has two fields */
#application-for-entrance01 .formArea .ena-form-skin #zips > .wpcf7-form-control-wrap {
  width: calc(50% - 13px) !important;
  flex-basis: calc(50% - 13px) !important;
}

/* ----------------------------------------------------------
   birth date
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .w-birth {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 6px !important;
}

#application-for-entrance01 .formArea .ena-form-skin .w-birth > .wpcf7-form-control-wrap {
  display: inline-block !important;
  width: auto !important;
  flex: 0 0 auto !important;
}

#application-for-entrance01 .formArea .ena-form-skin .w-birth select {
  width: auto !important;
  min-width: 88px !important;
  max-width: none !important;
}

/* ----------------------------------------------------------
   school
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .school_display {
  display: block !important;
  width: 66.6666% !important;
}

#application-for-entrance01 .formArea .ena-form-skin .school_display .wpcf7-form-control-wrap {
  display: inline-block !important;
  width: 65% !important;
  max-width: 65% !important;
}

#application-for-entrance01 .formArea .ena-form-skin .school_display select,
#application-for-entrance01 .formArea .ena-form-skin .school_display input {
  width: 100% !important;
  max-width: none !important;
}

/* ----------------------------------------------------------
   select reset against .formArea dd select { width:386px }
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin select.wpcf7-select,
#application-for-entrance01 .formArea .ena-form-skin .c-form_item select {
  margin: 0 !important;
}

/* ----------------------------------------------------------
   course area
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .nyugaku {
  display: block !important;
}

#application-for-entrance01 .formArea .ena-form-skin .course_select {
  width: 100% !important;
  max-width: none !important;
}

#application-for-entrance01 .formArea .ena-form-skin .course_select > .wpcf7-form-control-wrap {
  width: 100% !important;
  max-width: none !important;
  flex: none !important;
}

#application-for-entrance01 .formArea .ena-form-skin .tanka_select {
  width: 100% !important;
  max-width: none !important;
}

/* ----------------------------------------------------------
   acceptance checkboxes must not inherit 100% input width
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .lp-form-acceptance input[type="checkbox"],
#application-for-entrance01 .formArea .ena-form-skin .tanka_select input[type="checkbox"] {
  width: auto !important;
  max-width: none !important;
}

/* ==========================================================
   MOBILE
   Keep ena's stacked label/value layout, but surname/given-name
   remain side-by-side as in the reference form.
   ========================================================== */

@media screen and (max-width: 568px) {

  #application-for-entrance01 .formArea .ena-form-skin .containers {
    width: 100% !important;
    max-width: none !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .c-form dl {
    display: flex !important;
    flex-direction: column !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .c-form dl > dt {
    display: flex !important;
    width: 100% !important;
    margin-bottom: 15px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .c-form dl > dd {
    width: 100% !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50 {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50 > .wpcf7-form-control-wrap {
    flex: 0 0 calc(50% - 5px) !important;
    width: calc(50% - 5px) !important;
    max-width: calc(50% - 5px) !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50.select > .wpcf7-form-control-wrap,
  #application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50.select > div {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .school_display {
    width: 100% !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .school_display .wpcf7-form-control-wrap {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 5px 0 10px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .w-birth {
    flex-wrap: wrap !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .w-birth select {
    min-width: 74px !important;
  }
}


/* ==========================================================
   VISUAL MATCH FIX 2026-10-07
   Reference: ena high-school admission form
   ========================================================== */

/* ----------------------------------------------------------
   REQUIRED BADGE
   Reference = red background / clearly white text
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .must_wrap .must {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-sizing:border-box !important;

  min-width:42px !important;
  height:22px !important;
  padding:1px 8px !important;

  background:#CC0000 !important;
  background-color:#CC0000 !important;

  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;

  font-size:12px !important;
  font-weight:700 !important;
  line-height:1 !important;
  letter-spacing:1px !important;

  border:0 !important;
  border-radius:3px !important;
  box-shadow:none !important;
  text-shadow:none !important;
}

#application-for-entrance01 .formArea .ena-form-skin .must_wrap .must * {
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}


/* ----------------------------------------------------------
   REMOVE CF7 AUTO <br> THAT BREAKS MULTI-FIELD ROWS
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin dd.w50 > br,
#application-for-entrance01 .formArea .ena-form-skin dd.tel > br,
#application-for-entrance01 .formArea .ena-form-skin #zips > br,
#application-for-entrance01 .formArea .ena-form-skin .w-birth > br {
  display:none !important;
}


/* ----------------------------------------------------------
   SURNAME / GIVEN NAME
   Always two columns on PC
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50 {
  display:flex !important;
  flex-flow:row nowrap !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:20px !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50 > span.wpcf7-form-control-wrap {
  display:block !important;
  flex:1 1 0 !important;
  width:calc(50% - 10px) !important;
  min-width:0 !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50 > span.wpcf7-form-control-wrap input {
  display:block !important;
  box-sizing:border-box !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  margin:0 !important;
}


/* ----------------------------------------------------------
   PHONE / ZIP
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin dd.tel {
  display:flex !important;
  flex-flow:row nowrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
}

#application-for-entrance01 .formArea .ena-form-skin dd.tel > span.wpcf7-form-control-wrap {
  display:block !important;
  flex:1 1 0 !important;
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
}

#application-for-entrance01 .formArea .ena-form-skin dd.tel > span.wpcf7-form-control-wrap input {
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
}

#application-for-entrance01 .formArea .ena-form-skin #zips > span.wpcf7-form-control-wrap {
  flex:0 1 150px !important;
  width:150px !important;
  max-width:150px !important;
}


/* ----------------------------------------------------------
   BIRTH DATE
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .w-birth {
  display:flex !important;
  flex-flow:row wrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:6px !important;
}

#application-for-entrance01 .formArea .ena-form-skin .w-birth > span.wpcf7-form-control-wrap {
  display:inline-block !important;
  flex:0 0 auto !important;
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .w-birth select {
  width:auto !important;
  min-width:88px !important;
  max-width:none !important;
}


/* ----------------------------------------------------------
   EMAIL NOTICE
   Current problem:
   content only occupies the left side and the right side is blank.
   Reference uses the full inner width and natural height.
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .lp-exp-text {
  display:block !important;
  width:100% !important;
  max-width:none !important;
  height:auto !important;
  min-height:0 !important;
  overflow:visible !important;
}

#application-for-entrance01 .formArea .ena-form-skin .lp-exp-text > .box30-40 {
  display:block !important;
  box-sizing:border-box !important;
  width:100% !important;
  max-width:none !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .lp-exp-text_ttl {
  display:flex !important;
  flex-flow:row wrap !important;
  align-items:center !important;
  justify-content:flex-start !important;

  width:100% !important;
  max-width:none !important;
  height:auto !important;

  margin-left:0 !important;
  margin-right:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .lp-exp-text_ttl p {
  display:block !important;
  width:auto !important;
  max-width:none !important;
  flex:0 0 auto !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .lp-exp-text_ttl > span {
  display:block !important;
  flex:0 0 16px !important;
  width:16px !important;
  height:20px !important;
  margin:0 10px !important;
  position:relative !important;
}

#application-for-entrance01 .formArea .ena-form-skin .lp-exp-text_ttl > span::before {
  position:absolute !important;
  top:50% !important;
  left:50% !important;
  right:auto !important;

  transform:translate(-50%,-50%) !important;

  content:"" !important;

  width:0 !important;
  height:0 !important;

  border-style:solid !important;
  border-width:8px 7px 0 7px !important;
  border-color:#222 transparent transparent transparent !important;
}

/* Most important correction:
   no fixed 190px height and no narrow left-side text column */
#application-for-entrance01 .formArea .ena-form-skin .lp-exp-text .text {
  display:block !important;

  box-sizing:border-box !important;

  width:100% !important;
  max-width:none !important;

  height:auto !important;
  min-height:0 !important;
  max-height:none !important;

  margin:0 !important;
  padding:0 !important;

  overflow:visible !important;
  overflow-x:visible !important;
  overflow-y:visible !important;

  float:none !important;
  clear:both !important;
}

#application-for-entrance01 .formArea .ena-form-skin .lp-exp-text .text p {
  display:block !important;

  width:100% !important;
  max-width:none !important;

  margin-left:0 !important;
  margin-right:0 !important;

  float:none !important;
}


/* ----------------------------------------------------------
   SUBMIT BUTTON
   Current problem:
   center of top edge protrudes upward.
   Parent and input must occupy exactly the same rectangle.
   Reference ena CSS:
   350 x 70 / 30px / navy / white border / shadow
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .form_btn_wrap {
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;

  width:100% !important;

  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_btn,
#application-for-entrance01 .formArea .ena-form-skin .c-form_btn.navy {
  position:relative !important;

  display:block !important;

  box-sizing:border-box !important;

  width:350px !important;
  max-width:100% !important;
  height:70px !important;

  margin:40px auto 30px !important;
  padding:0 !important;

  background:#043265 !important;
  background-color:#043265 !important;

  border:2px solid #FFFFFF !important;
  border-radius:5px !important;

  box-shadow:#000 2px 2px 3px !important;

  overflow:hidden !important;
}

/* Remove any decorative layer from either theme */
#application-for-entrance01 .formArea .ena-form-skin .c-form_btn::before,
#application-for-entrance01 .formArea .ena-form-skin .c-form_btn::after {
  display:none !important;
  content:none !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_btn input[type="submit"],
#application-for-entrance01 .formArea .ena-form-skin .c-form_btn .wpcf7-submit {
  position:absolute !important;

  top:0 !important;
  right:0 !important;
  bottom:0 !important;
  left:0 !important;

  transform:none !important;

  display:block !important;

  box-sizing:border-box !important;

  width:100% !important;
  max-width:none !important;
  height:100% !important;
  min-height:0 !important;

  margin:0 !important;
  padding:0 20px !important;

  border:0 !important;
  outline:0 !important;
  border-radius:3px !important;

  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;

  box-shadow:none !important;
  text-shadow:none !important;

  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;

  font-family:
    "Noto Serif JP",
    "ヒラギノ明朝 Pro",
    "Hiragino Mincho Pro",
    "MS P明朝",
    "MS PMincho",
    serif !important;

  font-size:30px !important;
  font-weight:700 !important;
  line-height:1 !important;

  appearance:none !important;
  -webkit-appearance:none !important;

  cursor:pointer !important;
}


/* ----------------------------------------------------------
   MOBILE
   ---------------------------------------------------------- */

@media screen and (max-width:568px) {

  #application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50 {
    gap:10px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50 > span.wpcf7-form-control-wrap {
    flex:1 1 0 !important;
    width:calc(50% - 5px) !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .lp-exp-text_ttl {
    align-items:center !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .lp-exp-text_ttl p {
    font-size:12px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .lp-exp-text > .box30-40 {
    padding:20px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .c-form_btn,
  #application-for-entrance01 .formArea .ena-form-skin .c-form_btn.navy {
    width:100% !important;
    height:50px !important;
    margin-top:20px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .c-form_btn input[type="submit"],
  #application-for-entrance01 .formArea .ena-form-skin .c-form_btn .wpcf7-submit {
    font-size:18px !important;
  }
}


/* ==========================================================
   DOM WRAPPER FIX 2026-10-07
   CF7 auto-formatting inserts <p> and <br>.
   Style the ACTUAL rendered DOM.
   ========================================================== */

/* ----------------------------------------------------------
   必須バッジ内にもCF7が <p> を入れている
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .must > p {
  margin:0 !important;
  padding:0 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:12px !important;
  font-weight:700 !important;
  line-height:1 !important;
}


/* ----------------------------------------------------------
   氏名・フリガナ
   rendered DOM:
   dd.w50 > p > span + br + span
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50 > p {
  display:flex !important;
  flex-flow:row nowrap !important;
  align-items:flex-start !important;
  justify-content:space-between !important;

  box-sizing:border-box !important;

  width:100% !important;
  max-width:none !important;

  margin:0 !important;
  padding:0 !important;

  gap:20px !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50 > p > br {
  display:none !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50 > p > span.wpcf7-form-control-wrap {
  display:block !important;

  flex:1 1 0 !important;

  width:calc(50% - 10px) !important;
  min-width:0 !important;
  max-width:none !important;

  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50 > p > span.wpcf7-form-control-wrap > input {
  display:block !important;

  box-sizing:border-box !important;

  width:100% !important;
  min-width:0 !important;
  max-width:none !important;

  margin:0 !important;
}


/* ----------------------------------------------------------
   生年月日
   rendered DOM contains br between every element.
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w-birth > p {
  display:flex !important;
  flex-flow:row nowrap !important;
  align-items:center !important;
  justify-content:flex-start !important;

  box-sizing:border-box !important;

  width:100% !important;
  max-width:none !important;

  margin:0 !important;
  padding:0 !important;

  gap:6px !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w-birth > p > br {
  display:none !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w-birth > p > span.wpcf7-form-control-wrap {
  display:inline-block !important;

  flex:0 0 auto !important;

  width:auto !important;
  min-width:0 !important;
  max-width:none !important;

  margin:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w-birth select {
  width:auto !important;
  max-width:none !important;
}

#application-for-entrance01 .formArea .ena-form-skin span[data-name="app-seito-birth-year"] select {
  width:150px !important;
}

#application-for-entrance01 .formArea .ena-form-skin span[data-name="app-seito-birth-month"] select,
#application-for-entrance01 .formArea .ena-form-skin span[data-name="app-seito-birth-day"] select {
  width:115px !important;
}


/* ----------------------------------------------------------
   郵便番号・電話番号
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.tel > p {
  display:flex !important;
  flex-flow:row nowrap !important;
  align-items:center !important;
  justify-content:flex-start !important;

  box-sizing:border-box !important;

  width:100% !important;
  max-width:none !important;

  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.tel > p > br {
  display:none !important;
}

/* reference ena rule uses narrow segmented fields */
#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.tel > p > span.wpcf7-form-control-wrap {
  display:block !important;

  width:calc(24% - 16.6666px) !important;
  max-width:none !important;
  flex:0 0 calc(24% - 16.6666px) !important;

  position:relative !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.tel > p > span.wpcf7-form-control-wrap:not(:last-child) {
  margin-right:25px !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.tel > p > span.wpcf7-form-control-wrap:not(:last-child)::before {
  content:"" !important;

  position:absolute !important;
  right:-15px !important;
  top:50% !important;

  transform:translateY(-50%) !important;

  width:5px !important;
  height:1px !important;

  background:#222 !important;
}

/* 郵便番号は2分割 */
#application-for-entrance01 .formArea .ena-form-skin #zips > p > span.wpcf7-form-control-wrap {
  width:150px !important;
  max-width:150px !important;
  flex:0 0 150px !important;
}


/* ----------------------------------------------------------
   メールアドレス注意事項
   実測では .text は1112pxある。
   空白の原因は幅ではなく強制 <br>。
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .lp-exp-text {
  height:auto !important;
  min-height:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .lp-exp-text > .box30-40 {
  height:auto !important;
  min-height:0 !important;
}

/* title is actually p + p(span) + p */
#application-for-entrance01 .formArea .ena-form-skin .lp-exp-text_ttl {
  display:flex !important;
  flex-flow:row nowrap !important;
  align-items:center !important;
  justify-content:flex-start !important;

  height:auto !important;
}

#application-for-entrance01 .formArea .ena-form-skin .lp-exp-text_ttl > p {
  width:auto !important;
  max-width:none !important;

  flex:0 0 auto !important;

  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .lp-exp-text_ttl > p > br {
  display:none !important;
}

/* middle <p> contains the ▼ span */
#application-for-entrance01 .formArea .ena-form-skin .lp-exp-text_ttl > p:nth-child(2) {
  display:block !important;

  width:16px !important;
  height:20px !important;

  flex:0 0 16px !important;

  margin:0 10px !important;

  position:relative !important;
}

#application-for-entrance01 .formArea .ena-form-skin .lp-exp-text_ttl > p:nth-child(2) > span {
  display:block !important;

  width:16px !important;
  height:20px !important;

  position:relative !important;
}

#application-for-entrance01 .formArea .ena-form-skin .lp-exp-text_ttl > p:nth-child(2) > span::before {
  position:absolute !important;

  top:50% !important;
  left:50% !important;

  transform:translate(-50%,-50%) !important;

  content:"" !important;

  width:0 !important;
  height:0 !important;

  border-style:solid !important;
  border-width:9px 7px 0 7px !important;
  border-color:#222 transparent transparent transparent !important;
}

/* remove artificial line breaks that created huge empty right side */
#application-for-entrance01 .formArea .ena-form-skin .lp-exp-text .text {
  display:block !important;

  box-sizing:border-box !important;

  width:100% !important;
  max-width:none !important;

  height:auto !important;
  min-height:0 !important;
  max-height:none !important;

  overflow:visible !important;

  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .lp-exp-text .text p {
  display:block !important;

  width:100% !important;
  max-width:none !important;

  white-space:normal !important;

  margin-left:0 !important;
  margin-right:0 !important;

  line-height:1.8 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .lp-exp-text .text p > br {
  display:none !important;
}


/* ----------------------------------------------------------
   申込ボタン
   現在350x70まで正常化済み。
   CF7 auto <p> だけ親サイズに固定して再崩れ防止。
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .c-form_btn > p {
  display:block !important;

  box-sizing:border-box !important;

  width:100% !important;
  height:100% !important;

  margin:0 !important;
  padding:0 !important;
}


/* ----------------------------------------------------------
   指導コースの不要な巨大▼
   .select > div の汎用疑似要素を tanka_select に出さない
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin dd.select.branch > .tanka_select::before,
#application-for-entrance01 .formArea .ena-form-skin dd.select.branch > .tanka_select::after {
  display:none !important;
  content:none !important;
}


/* ----------------------------------------------------------
   MOBILE
   ---------------------------------------------------------- */

@media screen and (max-width:568px) {

  #application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50 > p {
    gap:10px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50 > p > span.wpcf7-form-control-wrap {
    width:calc(50% - 5px) !important;
    flex:1 1 0 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w-birth > p {
    flex-wrap:wrap !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin span[data-name="app-seito-birth-year"] select {
    width:130px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin span[data-name="app-seito-birth-month"] select,
  #application-for-entrance01 .formArea .ena-form-skin span[data-name="app-seito-birth-day"] select {
    width:90px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .lp-exp-text_ttl {
    flex-wrap:wrap !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .lp-exp-text_ttl > p {
    font-size:12px !important;
  }
}


/* ==========================================================
   PC STRUCTURE FIX 2026-10-07
   Match rendered CF7 DOM to ena high-school reference.
   ========================================================== */


/* ----------------------------------------------------------
   FULL-WIDTH FIELDS
   CF7 renders dd.w100 > p > span
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w100 > p {
  display:block !important;
  box-sizing:border-box !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w100 > p > span.wpcf7-form-control-wrap {
  display:block !important;
  box-sizing:border-box !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w100 > p > span.wpcf7-form-control-wrap > input {
  display:block !important;
  box-sizing:border-box !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}


/* ----------------------------------------------------------
   NORMAL W50 SELECTS
   Grade / relationship = half of right column like reference.
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50.select:not(.branch) > p {
  display:block !important;
  box-sizing:border-box !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50.select:not(.branch) > p > span.wpcf7-form-control-wrap {
  display:block !important;
  position:relative !important;
  width:calc(50% - 10px) !important;
  max-width:calc(50% - 10px) !important;
  margin:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50.select:not(.branch) > p > span.wpcf7-form-control-wrap::before {
  position:absolute !important;
  top:50% !important;
  right:15px !important;
  transform:translateY(-50%) !important;
  content:"" !important;
  width:0 !important;
  height:0 !important;
  border-style:solid !important;
  border-width:10px 7.5px 0 7.5px !important;
  border-color:#222 transparent transparent transparent !important;
  pointer-events:none !important;
  z-index:2 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50.select:not(.branch) select {
  width:100% !important;
  max-width:none !important;
}


/* ----------------------------------------------------------
   BIRTH DATE
   Prevent Japanese labels from wrapping vertically.
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w-birth > p {
  white-space:nowrap !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w-birth > p > span {
  white-space:normal !important;
}


/* ----------------------------------------------------------
   COURSE / ENROLLMENT
   Reference: period -> month -> campus vertically in same dd.
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin .c-form dl > dd.nyugaku {
  display:block !important;
  width:66.6666% !important;
  max-width:66.6666% !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin dd.nyugaku > p {
  display:block !important;
  box-sizing:border-box !important;
  width:100% !important;
  max-width:none !important;
  margin:0 0 14px 0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin dd.nyugaku .inselect {
  display:block !important;
  box-sizing:border-box !important;
  width:100% !important;
  max-width:none !important;
  margin:0 0 14px 0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin dd.nyugaku .inselect > p {
  display:flex !important;
  flex-flow:row nowrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:10px !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin dd.nyugaku .inselect .wpcf7-form-control-wrap {
  display:inline-block !important;
  position:relative !important;
  width:calc(50% - 10px) !important;
  max-width:calc(50% - 10px) !important;
}

#application-for-entrance01 .formArea .ena-form-skin dd.nyugaku .inselect select {
  width:100% !important;
  max-width:none !important;
  height:40px !important;
}

#application-for-entrance01 .formArea .ena-form-skin dd.nyugaku .kousya_select {
  display:block !important;
  box-sizing:border-box !important;
  width:100% !important;
  max-width:none !important;
  margin:14px 0 0 0 !important;
  padding:0 !important;
  float:none !important;
  clear:both !important;
}

#application-for-entrance01 .formArea .ena-form-skin dd.nyugaku .kousya_select > p {
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin dd.nyugaku .kousya_select h3 {
  display:block !important;
  width:100% !important;
  margin:0 0 8px 0 !important;
  padding:0 !important;
  font-size:16px !important;
  font-weight:700 !important;
}

#application-for-entrance01 .formArea .ena-form-skin dd.nyugaku .kousya_select .wpcf7-form-control-wrap {
  display:block !important;
  width:100% !important;
  max-width:none !important;
}

#application-for-entrance01 .formArea .ena-form-skin dd.nyugaku .kousya_select select {
  display:block !important;
  box-sizing:border-box !important;
  width:100% !important;
  max-width:none !important;
  height:40px !important;
  margin:0 !important;
}


/* ----------------------------------------------------------
   COURSE SELECT
   Reference width = 75% of the right column.
   Remove arrow generated on tanka area.
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin dd.select.branch {
  display:block !important;
}

#application-for-entrance01 .formArea .ena-form-skin dd.select.branch > p {
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin dd.select.branch .course_select {
  display:block !important;
  position:relative !important;
  width:calc(75% - 10px) !important;
  max-width:calc(75% - 10px) !important;
  margin:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin dd.select.branch .course_select .wpcf7-form-control-wrap {
  display:block !important;
  width:100% !important;
  max-width:none !important;
}

#application-for-entrance01 .formArea .ena-form-skin dd.select.branch .course_select select {
  display:block !important;
  width:100% !important;
  max-width:none !important;
}

#application-for-entrance01 .formArea .ena-form-skin dd.select.branch .course_select::before {
  position:absolute !important;
  top:20px !important;
  right:15px !important;
  transform:translateY(-50%) !important;
  content:"" !important;
  width:0 !important;
  height:0 !important;
  border-style:solid !important;
  border-width:10px 7.5px 0 7.5px !important;
  border-color:#222 transparent transparent transparent !important;
  pointer-events:none !important;
  z-index:2 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .tanka_select::before,
#application-for-entrance01 .formArea .ena-form-skin .tanka_select::after,
#application-for-entrance01 .formArea .ena-form-skin dd.select.branch > p > .tanka_select::before,
#application-for-entrance01 .formArea .ena-form-skin dd.select.branch > p > .tanka_select::after {
  display:none !important;
  content:none !important;
}

#application-for-entrance01 .formArea .ena-form-skin dd.select.branch .tanka_select {
  display:block;
  width:100% !important;
  max-width:none !important;
}


/* ----------------------------------------------------------
   MOBILE
   ---------------------------------------------------------- */

@media screen and (max-width:568px) {

  #application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50.select:not(.branch) > p > span.wpcf7-form-control-wrap {
    width:100% !important;
    max-width:100% !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .c-form dl > dd.nyugaku {
    width:100% !important;
    max-width:100% !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin dd.nyugaku .inselect .wpcf7-form-control-wrap {
    width:100% !important;
    max-width:100% !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin dd.select.branch .course_select {
    width:100% !important;
    max-width:100% !important;
  }
}


/* ==========================================================
   MOBILE OVERFLOW FIX 2026-10-07
   Measured viewport: 414px
   Measured form width: 374px
   Broken document scroll width: 778px
   ========================================================== */

@media screen and (max-width:568px) {

  /* --------------------------------------------------------
     General mobile sizing
     Do not hide overflow to mask the problem.
     Keep every form child inside the 100% content width.
     -------------------------------------------------------- */

  #application-for-entrance01 .formArea .ena-form-skin,
  #application-for-entrance01 .formArea .ena-form-skin .containers,
  #application-for-entrance01 .formArea .ena-form-skin .c-form,
  #application-for-entrance01 .formArea .ena-form-skin .c-form_item,
  #application-for-entrance01 .formArea .ena-form-skin .c-form_item dl,
  #application-for-entrance01 .formArea .ena-form-skin .c-form_item dt,
  #application-for-entrance01 .formArea .ena-form-skin .c-form_item dd {
    box-sizing:border-box !important;
    max-width:100% !important;
    min-width:0 !important;
  }


  /* --------------------------------------------------------
     COURSE
     Reference mobile CSS makes w50.select > div full width.
     Current tanka_select was starting at x=404 and extending
     to x=778, creating a second virtual screen.
     -------------------------------------------------------- */

  #application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50.select.branch {
    display:flex !important;
    flex-direction:column !important;
    flex-wrap:nowrap !important;

    width:100% !important;
    max-width:100% !important;

    gap:10px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w50.select.branch > p {
    display:flex !important;
    flex-direction:column !important;
    flex-wrap:nowrap !important;

    width:100% !important;
    max-width:100% !important;

    gap:10px !important;

    margin:0 !important;
    padding:0 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin dd.select.branch .course_select,
  #application-for-entrance01 .formArea .ena-form-skin dd.select.branch .tanka_select,
  #application-for-entrance01 .formArea .ena-form-skin dd.select.branch > p > .course_select,
  #application-for-entrance01 .formArea .ena-form-skin dd.select.branch > p > .tanka_select {
    position:relative !important;

    left:auto !important;
    right:auto !important;
    top:auto !important;

    transform:none !important;

    float:none !important;
    clear:both !important;

    flex:0 0 auto !important;

    box-sizing:border-box !important;

    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;

    margin:0 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin dd.select.branch .course_select .wpcf7-form-control-wrap,
  #application-for-entrance01 .formArea .ena-form-skin dd.select.branch .tanka_select .wpcf7-form-control-wrap {
    box-sizing:border-box !important;

    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin dd.select.branch select {
    box-sizing:border-box !important;

    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }


  /* --------------------------------------------------------
     BIRTH DATE
     Current fixed desktop widths exceed 374px on mobile.
     Keep one horizontal row but shrink controls to fit.
     -------------------------------------------------------- */

  #application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w-birth > p {
    display:flex !important;

    flex-flow:row nowrap !important;
    align-items:center !important;
    justify-content:flex-start !important;

    box-sizing:border-box !important;

    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;

    white-space:nowrap !important;

    gap:4px !important;

    margin:0 !important;
    padding:0 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.w-birth > p > span.wpcf7-form-control-wrap {
    flex:0 0 auto !important;

    width:auto !important;
    max-width:none !important;
    min-width:0 !important;

    margin:0 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin span[data-name="app-seito-birth-year"] select {
    box-sizing:border-box !important;

    width:96px !important;
    min-width:96px !important;
    max-width:96px !important;

    padding-left:7px !important;
    padding-right:20px !important;

    font-size:14px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin span[data-name="app-seito-birth-month"] select,
  #application-for-entrance01 .formArea .ena-form-skin span[data-name="app-seito-birth-day"] select {
    box-sizing:border-box !important;

    width:68px !important;
    min-width:68px !important;
    max-width:68px !important;

    padding-left:7px !important;
    padding-right:20px !important;

    font-size:14px !important;
  }


  /* --------------------------------------------------------
     SCHOOL FIELD
     Prevent the text input from starting mid-row while still
     keeping desktop layout unchanged.
     -------------------------------------------------------- */

  #application-for-entrance01 .formArea .ena-form-skin .school_display {
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;

    width:100% !important;
    max-width:100% !important;

    line-height:1.6 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .school_display .wpcf7-form-control-wrap {
    display:block !important;

    box-sizing:border-box !important;

    width:100% !important;
    max-width:100% !important;

    margin:6px 0 10px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin .school_display input {
    box-sizing:border-box !important;

    width:100% !important;
    max-width:100% !important;
  }


  /* --------------------------------------------------------
     Final safety for actual controls only.
     -------------------------------------------------------- */

  #application-for-entrance01 .formArea .ena-form-skin .c-form_item input,
  #application-for-entrance01 .formArea .ena-form-skin .c-form_item select,
  #application-for-entrance01 .formArea .ena-form-skin .c-form_item textarea {
    box-sizing:border-box !important;
    max-width:100% !important;
  }
}


/* ==========================================================
   REFERENCE BIRTH CSS RESET 2026-10-07
   ena reference has NO dedicated .w-birth sizing.
   Reproduce its generic w50/select behaviour on mobile.
   ========================================================== */

@media screen and (max-width:568px) {

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form_item dd.w50.w-birth {
    display:flex !important;
    align-items:flex-start !important;
    justify-content:space-between !important;

    flex-flow:row nowrap !important;

    box-sizing:border-box !important;

    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;

    gap:normal !important;

    margin:0 !important;
    padding:0 !important;
  }

  /*
   * CF7 6.x inserts one <p> around the inline birth controls.
   * Make that wrapper behave like the reference dd itself.
   */
  #application-for-entrance01 .formArea .ena-form-skin
  .c-form_item dd.w50.w-birth > p {
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;

    flex-flow:row nowrap !important;

    box-sizing:border-box !important;

    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;

    gap:0 !important;

    margin:0 !important;
    padding:0 !important;

    white-space:normal !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form_item dd.w50.w-birth > p > br {
    display:none !important;
  }

  /*
   * Exact reference generic rule:
   * .c-form_item .w50 > span { width:calc(50% - 10px); }
   *
   * Do NOT use flex:0 0 auto:
   * the controls must be allowed to shrink together on mobile.
   */
  #application-for-entrance01 .formArea .ena-form-skin
  .c-form_item dd.w50.w-birth > p > span.wpcf7-form-control-wrap {
    display:block !important;

    box-sizing:border-box !important;

    width:calc(50% - 10px) !important;
    max-width:none !important;
    min-width:0 !important;

    flex:0 1 calc(50% - 10px) !important;

    margin:0 !important;
    padding:0 !important;
  }

  /*
   * Exact reference generic select behaviour:
   * width:100%; height:40px;
   * font-size:16px; padding:7px 15px.
   */
  #application-for-entrance01 .formArea .ena-form-skin
  .c-form_item dd.w50.w-birth select.wpcf7-select {
    display:block !important;

    box-sizing:border-box !important;

    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;

    height:40px !important;

    margin:0 !important;
    padding:7px 15px !important;

    font-size:16px !important;

    border:1px solid #CCC !important;
    border-radius:5px !important;
    background:#FFF !important;
  }

  /*
   * Cancel every previous custom year/month/day fixed width.
   */
  #application-for-entrance01 .formArea .ena-form-skin
  span[data-name="app-seito-birth-year"] select,
  #application-for-entrance01 .formArea .ena-form-skin
  span[data-name="app-seito-birth-month"] select,
  #application-for-entrance01 .formArea .ena-form-skin
  span[data-name="app-seito-birth-day"] select {
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
  }
}


/* ==========================================================
   REFERENCE BIRTH NOWRAP FIX 2026-10-07
   Match ena reference mobile:
   西暦 [年] 年 [月] 月 [日] 日生 on one line
   ========================================================== */

@media screen and (max-width:568px) {

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form_item dd.w50.w-birth > p {
    white-space:nowrap !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form_item dd.w50.w-birth > p > span.wpcf7-form-control-wrap {
    min-width:0 !important;
    flex-shrink:1 !important;
  }
}


/* ==========================================================
   REFERENCE MOBILE REQUIRED POSITION 2026-10-07
   Match ena reference:
   title + required badge side-by-side from the left
   ========================================================== */

@media screen and (max-width:568px) {

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form dl > dt {
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-start !important;

    width:100% !important;
    max-width:100% !important;

    height:40px !important;

    margin:0 0 15px 0 !important;
    padding:0 !important;

    gap:0 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form dl > dt > .title {
    display:block !important;

    width:fit-content !important;
    max-width:calc(100% - 60px) !important;

    flex:0 1 auto !important;

    margin:0 !important;
    padding:0 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form dl > dt > .title > p {
    width:fit-content !important;
    max-width:100% !important;

    margin:0 10px 0 0 !important;
    padding:0 !important;

    white-space:normal !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form dl > dt > .must_wrap {
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;

    width:auto !important;
    min-width:0 !important;
    max-width:none !important;

    height:40px !important;

    flex:0 0 auto !important;

    margin:0 !important;
    padding:0 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form dl > dt > .must_wrap .must {
    margin:0 !important;
  }
}


/* ==========================================================
   REFERENCE MOBILE MONTH STACK 2026-10-07
   入学月度:
   [select]
   ========================================================== */

@media screen and (max-width:568px) {

  #application-for-entrance01 .formArea .ena-form-skin
  dd.nyugaku .inselect.ngatu > p {
    display:block !important;

    width:100% !important;
    max-width:100% !important;

    margin:0 !important;
    padding:0 !important;

    white-space:nowrap !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.nyugaku .inselect.ngatu > p > span.wpcf7-form-control-wrap {
    display:block !important;

    width:100% !important;
    max-width:100% !important;

    margin-top:8px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.nyugaku .inselect.ngatu select {
    width:100% !important;
    max-width:100% !important;
  }
}


/* ==========================================================
   REFERENCE MOBILE TITLE BR 2026-10-07
   ena reference:
   mobile form title <br> is hidden
   ========================================================== */

@media screen and (max-width:568px) {

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form dl > dt > .title > p > br {
    display:none !important;
  }
}


/* ==========================================================
   EMERGENCY REFERENCE MOBILE RESET 2026-10-07
   ========================================================== */

@media screen and (max-width:568px) {

  /* ena reference hides explicit title BR on mobile */
  #application-for-entrance01 .formArea .ena-form-skin
  .c-form dl > dt > .title > p > br {
    display:none !important;
  }

  /* hidden conditional areas must remain hidden */
  #application-for-entrance01 .formArea .ena-form-skin
  .kousya_select[style*="display:none"],
  #application-for-entrance01 .formArea .ena-form-skin
  .kousya_select[style*="display: none"],
  #application-for-entrance01 .formArea .ena-form-skin
  .tanka_select[style*="display:none"],
  #application-for-entrance01 .formArea .ena-form-skin
  .tanka_select[style*="display: none"] {
    display:none !important;
  }

  /* reference mobile: 入学月度 label then select */
  #application-for-entrance01 .formArea .ena-form-skin
  dd.nyugaku .inselect.ngatu > p {
    display:block !important;
    width:100% !important;
    white-space:nowrap !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.nyugaku .inselect.ngatu > p > span.wpcf7-form-control-wrap {
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    margin-top:8px !important;
  }
}


/* ==========================================================
   FINAL REFERENCE CORRECTION 2026-10-07
   Reference: ena高校部 77054
   ========================================================== */


/* ----------------------------------------------------------
   CF7 6.x auto-P wrapper:
   prevent artificial vertical gaps inside form rows
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin
.c-form_item dl {
  margin-top:0 !important;
  margin-bottom:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.c-form_item dd > p {
  margin-top:0 !important;
  margin-bottom:0 !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.c-form_item > p.annotation {
  margin-bottom:0 !important;
  padding:0 !important;
  line-height:1.8 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.c-form_item > p.annotation.mt10 {
  margin-top:10px !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.c-form_item > p.annotation:not(.mt10) {
  margin-top:0 !important;
}


/* ----------------------------------------------------------
   surname / given-name
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin
.c-form_item dd.w50 > p {
  width:100% !important;
  max-width:100% !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.c-form_item dd.w50:not(.w-birth) > p {
  display:flex !important;
  flex-flow:row nowrap !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:20px !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.c-form_item dd.w50:not(.w-birth) > p > span.wpcf7-form-control-wrap {
  min-width:0 !important;
}


/* ----------------------------------------------------------
   old-character example image
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin
.c-form_item .annotation img {
  display:block !important;
  width:150px !important;
  height:20px !important;
  max-width:150px !important;
}


/* ----------------------------------------------------------
   birth date
   compact reference-style single row on desktop
   ---------------------------------------------------------- */

@media screen and (min-width:569px) {

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form_item dd.w50.w-birth,
  #application-for-entrance01 .formArea .ena-form-skin
  .c-form_item dd.w50.w-birth > p {
    display:flex !important;
    flex-flow:row nowrap !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:6px !important;

    width:66.6666% !important;
    max-width:66.6666% !important;

    margin:0 !important;
    padding:0 !important;

    white-space:nowrap !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form_item dd.w50.w-birth {
    width:66.6666% !important;
    max-width:66.6666% !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form_item dd.w50.w-birth > p {
    width:100% !important;
    max-width:100% !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form_item dd.w50.w-birth > p > span.wpcf7-form-control-wrap {
    display:inline-block !important;
    flex:0 0 auto !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  span[data-name="app-seito-birth-year"] select {
    width:150px !important;
    min-width:150px !important;
    max-width:150px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  span[data-name="app-seito-birth-month"] select,
  #application-for-entrance01 .formArea .ena-form-skin
  span[data-name="app-seito-birth-day"] select {
    width:115px !important;
    min-width:115px !important;
    max-width:115px !important;
  }
}


/* ----------------------------------------------------------
   course / enrollment
   reference structure:
   period
   month
   campus when applicable
   then separate course row
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin
.c-form dl > dd.nyugaku {
  display:block !important;
  width:66.6666% !important;
  max-width:66.6666% !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.nyugaku > p {
  display:block !important;
  width:100% !important;
  margin:0 0 10px 0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.nyugaku .inselect.ngatu {
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.nyugaku .inselect.ngatu > p {
  display:flex !important;
  flex-flow:row nowrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:10px !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  white-space:nowrap !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.nyugaku .inselect.ngatu > p > span.wpcf7-form-control-wrap {
  display:block !important;
  width:calc(75% - 10px) !important;
  max-width:calc(75% - 10px) !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.nyugaku .inselect.ngatu select {
  width:100% !important;
  max-width:100% !important;
}


/* inline hidden state must win on every viewport */
#application-for-entrance01 .formArea .ena-form-skin
.kousya_select[style*="display:none"],
#application-for-entrance01 .formArea .ena-form-skin
.kousya_select[style*="display: none"],
#application-for-entrance01 .formArea .ena-form-skin
.tanka_select[style*="display:none"],
#application-for-entrance01 .formArea .ena-form-skin
.tanka_select[style*="display: none"] {
  display:none !important;
}


#application-for-entrance01 .formArea .ena-form-skin
dd.nyugaku .kousya_select {
  width:100% !important;
  margin:15px 0 0 0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.select.branch {
  display:block !important;
  width:66.6666% !important;
  max-width:66.6666% !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.select.branch .course_select {
  display:block !important;
  width:calc(75% - 10px) !important;
  max-width:calc(75% - 10px) !important;
  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.select.branch .course_select > p {
  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.select.branch .course_select .wpcf7-form-control-wrap,
#application-for-entrance01 .formArea .ena-form-skin
dd.select.branch .course_select select {
  width:100% !important;
  max-width:100% !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.select.branch .tanka_select {
  display:block;
  width:100% !important;
  max-width:100% !important;
  margin:10px 0 0 0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.select.branch .subject-help {
  display:block;
  width:100% !important;
  margin:10px 0 0 0 !important;
}


/* ----------------------------------------------------------
   mobile
   ---------------------------------------------------------- */

@media screen and (max-width:568px) {

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form_item dd.w50.w-birth > p {
    display:flex !important;
    flex-flow:row nowrap !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:4px !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    white-space:nowrap !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form_item dd.w50.w-birth > p > span.wpcf7-form-control-wrap {
    flex:0 0 auto !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  span[data-name="app-seito-birth-year"] select {
    width:118px !important;
    min-width:118px !important;
    max-width:118px !important;
    padding-left:8px !important;
    padding-right:8px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  span[data-name="app-seito-birth-month"] select,
  #application-for-entrance01 .formArea .ena-form-skin
  span[data-name="app-seito-birth-day"] select {
    width:82px !important;
    min-width:82px !important;
    max-width:82px !important;
    padding-left:8px !important;
    padding-right:8px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form dl > dd.nyugaku,
  #application-for-entrance01 .formArea .ena-form-skin
  dd.select.branch {
    width:100% !important;
    max-width:100% !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.nyugaku .inselect.ngatu > p {
    display:block !important;
    white-space:nowrap !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.nyugaku .inselect.ngatu > p > span.wpcf7-form-control-wrap {
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    margin-top:8px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.select.branch .course_select {
    width:100% !important;
    max-width:100% !important;
  }
}


/* ==========================================================
   EMERGENCY REAL CSS FIX 2026-10-07
   External CSS only. Never place this in WP post content.
   ========================================================== */

/* Kango theme adds padding directly to dt/dd.
   Ena reference does not have that extra vertical padding. */
#application-for-entrance01 .formArea .ena-form-skin .c-form_item dl,
#application-for-entrance01 .formArea .ena-form-skin .c-form_item dl > dt,
#application-for-entrance01 .formArea .ena-form-skin .c-form_item dl > dd {
  margin-top:0 !important;
  margin-bottom:0 !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
  min-height:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item {
  padding:20px 0 !important;
}


/* CF7 6.x auto-generated p wrapper */
#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd > p {
  margin:0 !important;
  padding:0 !important;
}


/* Notes directly under a field */
#application-for-entrance01 .formArea .ena-form-skin .c-form_item > .annotation {
  width:66.6666% !important;
  margin-left:auto !important;
  margin-bottom:0 !important;
  padding:0 !important;
  line-height:1.8 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item > .annotation.mt10 {
  margin-top:10px !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item > .annotation:not(.mt10) {
  margin-top:0 !important;
}


/* Name fields */
#application-for-entrance01 .formArea .ena-form-skin
.c-form_item dd.w50:not(.w-birth) > p {
  display:flex !important;
  flex-flow:row nowrap !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:20px !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.c-form_item dd.w50:not(.w-birth) > p > span.wpcf7-form-control-wrap {
  width:calc(50% - 10px) !important;
  max-width:calc(50% - 10px) !important;
  min-width:0 !important;
  flex:1 1 0 !important;
}


/* Telephone rows */
#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.tel {
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin .c-form_item dd.tel > p {
  display:flex !important;
  flex-flow:row nowrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.c-form_item dd.tel > p > span.wpcf7-form-control-wrap {
  width:calc(24% - 16.6666px) !important;
  flex:0 0 calc(24% - 16.6666px) !important;
  margin-right:25px !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.c-form_item dd.tel > p > span.wpcf7-form-control-wrap:last-child {
  margin-right:0 !important;
}


/* Birth date:
   text nodes keep their natural width,
   three select wrappers share the remaining width. */
#application-for-entrance01 .formArea .ena-form-skin
.c-form_item dd.w50.w-birth {
  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.c-form_item dd.w50.w-birth > p {
  display:flex !important;
  flex-flow:row nowrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:6px !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
  white-space:nowrap !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.c-form_item dd.w50.w-birth > p > span[data-name="app-seito-birth-year"],
#application-for-entrance01 .formArea .ena-form-skin
.c-form_item dd.w50.w-birth > p > span[data-name="app-seito-birth-month"],
#application-for-entrance01 .formArea .ena-form-skin
.c-form_item dd.w50.w-birth > p > span[data-name="app-seito-birth-day"] {
  width:0 !important;
  min-width:0 !important;
  max-width:none !important;
  flex:1 1 0 !important;
  margin:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.c-form_item dd.w50.w-birth > p > span[data-name="app-seito-birth-year"] {
  flex-grow:1.15 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.c-form_item dd.w50.w-birth > p > span[data-name="app-seito-birth-year"] select,
#application-for-entrance01 .formArea .ena-form-skin
.c-form_item dd.w50.w-birth > p > span[data-name="app-seito-birth-month"] select,
#application-for-entrance01 .formArea .ena-form-skin
.c-form_item dd.w50.w-birth > p > span[data-name="app-seito-birth-day"] select {
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  margin:0 !important;
}


/* Old-character reference image */
#application-for-entrance01 .formArea .ena-form-skin
.c-form_item .annotation img {
  display:block !important;
  width:150px !important;
  height:20px !important;
  max-width:150px !important;
}


/* Course area */
#application-for-entrance01 .formArea .ena-form-skin
dd.nyugaku,
#application-for-entrance01 .formArea .ena-form-skin
dd.select.branch {
  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.nyugaku > p {
  margin:0 0 10px 0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.nyugaku .inselect.ngatu {
  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.nyugaku .inselect.ngatu > p {
  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.kousya_select[style*="display:none"],
#application-for-entrance01 .formArea .ena-form-skin
.kousya_select[style*="display: none"],
#application-for-entrance01 .formArea .ena-form-skin
.tanka_select[style*="display:none"],
#application-for-entrance01 .formArea .ena-form-skin
.tanka_select[style*="display: none"] {
  display:none !important;
}


/* Mobile */
@media screen and (max-width:568px) {

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form_item > .annotation {
    width:fit-content !important;
    margin-left:0 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form_item dd.tel > p > span.wpcf7-form-control-wrap {
    width:calc(33.3333% - 5px) !important;
    flex:1 1 0 !important;
    margin-right:7.5px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form_item dd.w50.w-birth > p {
    gap:4px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form_item dl > dd {
    max-width:100% !important;
  }
}


/* ==========================================================
   SAFARI MEASURED FINAL FIX 2026-10-07
   ========================================================== */


/* ----------------------------------------------------------
   在籍学校
   reference: display:block / control width 65%
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin
.school_display {
  display:block !important;
  line-height:2.6 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.school_display .wpcf7-form-control-wrap {
  display:inline-block !important;
  width:65% !important;
  max-width:65% !important;
  margin-left:8px !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.school_display br {
  display:block !important;
}


/* ----------------------------------------------------------
   CF7のソース改行から生成された先頭BR
   注釈の巨大な空白の実原因
   ---------------------------------------------------------- */

#application-for-entrance01 .formArea .ena-form-skin
.annotation > br:first-child {
  display:none !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.c-form_item > .annotation {
  height:auto !important;
  min-height:0 !important;
}


/* ----------------------------------------------------------
   Desktop: 左ラベルを右欄の高さに引き伸ばさない
   ---------------------------------------------------------- */

@media screen and (min-width:569px) {

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form dl > dt {
    height:40px !important;
    min-height:40px !important;
    align-self:flex-start !important;
  }


  /* --------------------------------------------------------
     契約期間・入学月度
     -------------------------------------------------------- */

  #application-for-entrance01 .formArea .ena-form-skin
  dd.nyugaku {
    display:block !important;
    width:66.6666% !important;
    max-width:66.6666% !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.nyugaku > p {
    display:block !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 0 10px 0 !important;
    padding:0 !important;
    line-height:27.2px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.nyugaku .inselect.ngatu {
    width:100% !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.nyugaku .inselect.ngatu > p {
    display:flex !important;
    flex-flow:row nowrap !important;
    align-items:center !important;
    gap:10px !important;

    width:100% !important;
    height:40px !important;

    margin:0 !important;
    padding:0 !important;

    white-space:nowrap !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.nyugaku .inselect.ngatu > p >
  span.wpcf7-form-control-wrap {
    width:calc(75% - 10px) !important;
    max-width:calc(75% - 10px) !important;
    margin:0 !important;
  }


  /* 校舎は初期状態では完全に消す */
  #application-for-entrance01 .formArea .ena-form-skin
  .kousya_select[style*="display:none"],
  #application-for-entrance01 .formArea .ena-form-skin
  .kousya_select[style*="display: none"] {
    display:none !important;
    width:0 !important;
    height:0 !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
  }


  /* --------------------------------------------------------
     指導コース
     referenceの .w50.select > div = 75%幅
     -------------------------------------------------------- */

  #application-for-entrance01 .formArea .ena-form-skin
  dd.w50.select.branch {
    display:block !important;

    width:66.6666% !important;
    max-width:66.6666% !important;

    height:auto !important;
    min-height:40px !important;

    margin:0 !important;
    padding:0 !important;

    gap:0 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.w50.select.branch > .course_select {
    display:block !important;

    width:calc(75% - 10px) !important;
    max-width:calc(75% - 10px) !important;

    height:40px !important;

    margin:0 !important;
    padding:0 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.w50.select.branch > .course_select
  .wpcf7-form-control-wrap,
  #application-for-entrance01 .formArea .ena-form-skin
  dd.w50.select.branch > .course_select select {
    width:100% !important;
    max-width:100% !important;
  }


  /* display:noneなのに394x72を占有していた実原因を潰す */
  #application-for-entrance01 .formArea .ena-form-skin
  dd.w50.select.branch >
  .tanka_select[style*="display:none"],
  #application-for-entrance01 .formArea .ena-form-skin
  dd.w50.select.branch >
  .tanka_select[style*="display: none"] {
    display:none !important;

    width:0 !important;
    max-width:0 !important;

    height:0 !important;
    min-height:0 !important;

    margin:0 !important;
    padding:0 !important;

    overflow:hidden !important;
  }
}


/* ----------------------------------------------------------
   Mobile
   ---------------------------------------------------------- */

@media screen and (max-width:568px) {

  #application-for-entrance01 .formArea .ena-form-skin
  .school_display {
    display:block !important;
    width:100% !important;
    line-height:2.6 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  .school_display .wpcf7-form-control-wrap {
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  .annotation > br:first-child {
    display:none !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.w50.select.branch >
  .tanka_select[style*="display:none"],
  #application-for-entrance01 .formArea .ena-form-skin
  dd.w50.select.branch >
  .tanka_select[style*="display: none"] {
    display:none !important;
    width:0 !important;
    height:0 !important;
    margin:0 !important;
    padding:0 !important;
  }
}


/* ==========================================================
   SCHOOL REFERENCE ONLY 2026-10-07
   Reference:
   区分:
   [select]
   学校名:
   [input]
   ========================================================== */

#application-for-entrance01 .formArea .ena-form-skin
.school_display {
  display:block !important;
  width:66.6666% !important;
  max-width:66.6666% !important;
  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.school_display > p {
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 0 8px 0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.school_display > p:last-child {
  margin-bottom:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.school_display .wpcf7-form-control-wrap {
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  margin:5px 0 0 0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.school_display select,
#application-for-entrance01 .formArea .ena-form-skin
.school_display input {
  width:100% !important;
  max-width:100% !important;
}

@media screen and (max-width:568px) {
  #application-for-entrance01 .formArea .ena-form-skin
  .school_display {
    width:100% !important;
    max-width:100% !important;
  }
}


/* ==========================================================
   SCHOOL HARD FIX 2026-10-07
   CF7 HTML itself is now two explicit blocks.
   ========================================================== */

#application-for-entrance01 .formArea .ena-form-skin
dd.school_display {
  display:block !important;
  flex:none !important;

  width:66.6666% !important;
  max-width:66.6666% !important;

  margin:0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.school_display > .school-field {
  display:block !important;

  width:100% !important;
  max-width:100% !important;

  margin:0 0 8px 0 !important;
  padding:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.school_display > .school-field:last-child {
  margin-bottom:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.school_display .school-field-label {
  display:block !important;
  width:100% !important;

  margin:0 0 5px 0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.school_display .school-field >
.wpcf7-form-control-wrap {
  display:block !important;

  width:100% !important;
  max-width:100% !important;

  margin:0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.school_display select,
#application-for-entrance01 .formArea .ena-form-skin
dd.school_display input {
  display:block !important;

  width:100% !important;
  max-width:100% !important;

  margin:0 !important;
}

@media screen and (max-width:568px) {
  #application-for-entrance01 .formArea .ena-form-skin
  dd.school_display {
    width:100% !important;
    max-width:100% !important;
  }
}


/* ==========================================================
   EXACT SCHOOL REFERENCE RENDER 2026-10-07
   Target:
   区分: [select]
   学校名:
   [input full width]
   ========================================================== */

@media screen and (min-width:569px) {

  #application-for-entrance01 .formArea .ena-form-skin
  dd.school_display {
    display:block !important;
    flex:none !important;

    width:66.6666% !important;
    max-width:66.6666% !important;

    margin:0 !important;
    padding:0 !important;
  }

  /* CF7 auto-P: first line = 区分 + select */
  #application-for-entrance01 .formArea .ena-form-skin
  dd.school_display > p:first-of-type {
    display:flex !important;
    flex-flow:row nowrap !important;
    align-items:center !important;
    justify-content:flex-start !important;

    width:100% !important;
    max-width:100% !important;

    margin:0 0 5px 0 !important;
    padding:0 !important;

    white-space:nowrap !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.school_display > p:first-of-type > br {
    display:none !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.school_display > p:first-of-type >
  span.wpcf7-form-control-wrap {
    display:block !important;

    width:50% !important;
    max-width:50% !important;
    flex:0 0 50% !important;

    margin-left:8px !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.school_display > p:first-of-type select {
    width:100% !important;
    max-width:100% !important;
  }


  /* second line = 学校名 label + full-width input below */
  #application-for-entrance01 .formArea .ena-form-skin
  dd.school_display > p:nth-of-type(2) {
    display:block !important;

    width:100% !important;
    max-width:100% !important;

    margin:0 !important;
    padding:0 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.school_display > p:nth-of-type(2) > br {
    display:none !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.school_display > p:nth-of-type(2) >
  span.wpcf7-form-control-wrap {
    display:block !important;

    width:100% !important;
    max-width:100% !important;

    margin:5px 0 0 0 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.school_display > p:nth-of-type(2) input {
    width:100% !important;
    max-width:100% !important;
  }
}


@media screen and (max-width:568px) {

  #application-for-entrance01 .formArea .ena-form-skin
  dd.school_display {
    display:block !important;
    width:100% !important;
    max-width:100% !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.school_display > p {
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 0 8px 0 !important;
  }

  #application-for-entrance01 .formArea .ena-form-skin
  dd.school_display > p >
  span.wpcf7-form-control-wrap {
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    margin:5px 0 0 0 !important;
  }
}


/* ==========================================================
   SCHOOL SPECIFICITY FIX 2026-10-07
   Safari実測:
   generic .c-form dl > dd { display:flex!important; }
   が school_display を上書きしていたため詳細度で確実に勝つ
   ========================================================== */

@media screen and (min-width:569px) {

  #application-for-entrance01 .formArea .ena-form-skin
  .c-form dl > dd.w100.school_display {
    display:block !important;
    flex:none !important;

    width:66.6666% !important;
    max-width:66.6666% !important;

    margin:0 !important;
    padding:0 !important;
  }
}

/* SANYO GENDER RADIO VERTICAL CENTER 2026-10-08 */
#application-for-entrance01 .formArea .ena-form-skin
.c-form dl.radio > dd.w50 {
  align-items:center !important;
}
/* /SANYO GENDER RADIO VERTICAL CENTER 2026-10-08 */

/* SANYO REFERENCE FORM REPAIR 2026-10-08 */

/*
 * Gmail / iCloud:
 * email caution box has exactly four direct paragraphs.
 * Only service-name SPANs in paragraphs 3 and 4 receive black underline.
 */
#application-for-entrance01 .formArea .ena-form-skin
.lp-exp-text .text > p:nth-of-type(3) a > span,
#application-for-entrance01 .formArea .ena-form-skin
.lp-exp-text .text > p:nth-of-type(4) a > span {
  border-bottom: 1px solid #222222 !important;
}

/*
 * Reference triangle:
 * direct SPAN, width 16px, left/right 10px.
 */
#application-for-entrance01 .formArea .ena-form-skin
.lp-exp-text_ttl > span {
  display: block !important;
  flex: 0 0 16px !important;
  width: 16px !important;
  min-width: 16px !important;
  position: relative !important;
  margin-left: 10px !important;
  margin-right: 10px !important;
}

/*
 * Reference title alignment for affected five rows only.
 */
#application-for-entrance01 .formArea .ena-form-skin
.c-form dl:has([name="app-email"]) > dt,
#application-for-entrance01 .formArea .ena-form-skin
.c-form dl:has([name="app-email_confirm"]) > dt,
#application-for-entrance01 .formArea .ena-form-skin
.c-form dl:has([name="app-tel7"]) > dt,
#application-for-entrance01 .formArea .ena-form-skin
.c-form dl:has([name="app-email2"]) > dt,
#application-for-entrance01 .formArea .ena-form-skin
.c-form dl:has([name="app-email2_confirm"]) > dt {
  align-items: flex-start !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.c-form dl:has([name="app-email"]) > dt > .title,
#application-for-entrance01 .formArea .ena-form-skin
.c-form dl:has([name="app-email_confirm"]) > dt > .title,
#application-for-entrance01 .formArea .ena-form-skin
.c-form dl:has([name="app-tel7"]) > dt > .title,
#application-for-entrance01 .formArea .ena-form-skin
.c-form dl:has([name="app-email2"]) > dt > .title,
#application-for-entrance01 .formArea .ena-form-skin
.c-form dl:has([name="app-email2_confirm"]) > dt > .title {
  display: flex !important;
  position: relative !important;
  align-items: center !important;
}

/*
 * Legal text:
 * one current line-height = one visual blank line.
 * No legal wording is modified.
 */
#application-for-entrance01 .formArea .ena-form-skin
.sanyo-legal-gap {
  margin-top: 1.7em !important;
}

/* /SANYO REFERENCE FORM REPAIR 2026-10-08 */

/* SANYO TRIANGLE WPAUTOP FIX 2026-10-08 */

/*
 * CF7 renders the intended standalone SPAN as:
 *
 *   <p><span></span></p>
 *
 * Remove only that generated P from layout.
 * The SPAN then occupies the same flex position as the
 * reference form: 16px wide + 10px margin on each side.
 */
#application-for-entrance01 .formArea .ena-form-skin
.lp-exp-text_ttl > p:has(> span:only-child) {
  display: contents !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.lp-exp-text_ttl > p:has(> span:only-child) > span {
  display: block !important;
  flex: 0 0 16px !important;
  width: 16px !important;
  min-width: 16px !important;
  margin-left: 10px !important;
  margin-right: 10px !important;
}

/* /SANYO TRIANGLE WPAUTOP FIX 2026-10-08 */

/* SANYO POSTAL GUIDE FIX 2026-10-08 */

/*
 * Postal-code guide text:
 * - must sit above the zipcode inputs
 * - must not align horizontally with the inputs
 * - must visually match the annotation-style text
 */
#application-for-entrance01 .formArea .ena-form-skin
#zips {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
}

#application-for-entrance01 .formArea .ena-form-skin
#zips > p.txt16.txt700.lh12.mt20 {
  flex: 0 0 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 10px 0 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.7 !important;
}

/* /SANYO POSTAL GUIDE FIX 2026-10-08 */

/* SANYO COURSE FINAL FIX 2026-10-08 */

/*
 * 1. 入学月度:
 * reproduce the visible downward triangle used by
 * the reference select boxes.
 */
#application-for-entrance01 .formArea .ena-form-skin
dd.nyugaku .inselect.ngatu
.wpcf7-form-control-wrap {
  display: block !important;
  position: relative !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.nyugaku .inselect.ngatu
.wpcf7-form-control-wrap::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  right: 20px !important;
  width: 0 !important;
  height: 0 !important;
  margin-top: -4px !important;
  border-left: 8px solid transparent !important;
  border-right: 8px solid transparent !important;
  border-top: 12px solid #222 !important;
  pointer-events: none !important;
  z-index: 5 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.nyugaku .inselect.ngatu select {
  padding-right: 52px !important;
}


/*
 * Disabled before a grade is selected.
 * Keep the reference-like white appearance.
 */
#application-for-entrance01 .formArea .ena-form-skin
select[name="app-nyugaku-tsuki"]:disabled,
#application-for-entrance01 .formArea .ena-form-skin
select[name="app-course-ena"]:disabled {
  opacity: 1 !important;
  color: #666 !important;
  background-color: #fff !important;
  cursor: default !important;
}


/*
 * 7. Subject choice:
 * reference-scale text and explicit required badge.
 */
#application-for-entrance01 .formArea .ena-form-skin
.tanka_select {
  font-size: 14px !important;
  font-weight: 400 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.tanka_select .subject-help {
  align-items: center !important;
  gap: 12px !important;
  margin: 18px 0 14px !important;
  padding: 0 !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  font-weight: 700 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.tanka_select .sanyo-subject-required {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 52px !important;
  height: 30px !important;
  padding: 0 10px !important;
  border-radius: 4px !important;
  background: #d40000 !important;
  color: #fff !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.tanka_select .wpcf7-list-item-label {
  font-size: 14px !important;
  line-height: 1.6 !important;
  font-weight: 700 !important;
}


/*
 * 8. Individual course:
 * CF7 auto-P around the hidden checkbox group must not
 * reserve vertical space.
 */
#application-for-entrance01 .formArea .ena-form-skin
.tanka_select.sanyo-individual-mode {
  margin-top: 8px !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.tanka_select.sanyo-individual-mode
> p:has(span.tanka) {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.tanka_select.sanyo-individual-mode
.course-note,
#application-for-entrance01 .formArea .ena-form-skin
.tanka_select.sanyo-individual-mode
.course-note {
  margin-top: 0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.tanka_select .course-note {
  font-size: 14px !important;
  line-height: 1.7 !important;
  font-weight: 400 !important;
}

/* /SANYO COURSE FINAL FIX 2026-10-08 */

/* SANYO INDIVIDUAL COURSE GAP FIX 2026-10-08 */

/*
 * 個別コース時:
 * course select と相談注記の間に残っている
 * 非表示checkbox用の余白を完全に除去する。
 */
#application-for-entrance01 .formArea .ena-form-skin
dd.select.branch:has(> .tanka_select.sanyo-individual-mode)
> .course_select {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.select.branch
> .tanka_select.sanyo-individual-mode {
  margin-top: 8px !important;
  padding-top: 0 !important;
  min-height: 0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.select.branch
> .tanka_select.sanyo-individual-mode
> .subject-help {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.select.branch
> .tanka_select.sanyo-individual-mode
> p:has(span.tanka) {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
dd.select.branch
> .tanka_select.sanyo-individual-mode
> .course-note {
  margin: 0 !important;
  padding: 0 !important;
}

/* /SANYO INDIVIDUAL COURSE GAP FIX 2026-10-08 */

/* SANYO COURSE SIZE TUNING 2026-10-08 */

/*
 * 指導コース 左側の「必須」を、
 * 受講希望講座側の「必須」と同サイズに統一。
 */
#application-for-entrance01 .formArea .ena-form-skin
dt:has(+ dd.select.branch) .must,
#application-for-entrance01 .formArea .ena-form-skin
.tanka_select .sanyo-subject-required {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 52px !important;
  height: 30px !important;
  padding: 0 10px !important;
  border-radius: 4px !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}

/*
 * チェックボックス群を一回り大きく。
 */
#application-for-entrance01 .formArea .ena-form-skin
.tanka_select .subject-help {
  font-size: 16px !important;
  line-height: 1.6 !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.tanka_select .wpcf7-list-item {
  margin-right: 28px !important;
  margin-bottom: 10px !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.tanka_select .wpcf7-list-item label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.tanka_select input[type="checkbox"] {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
}

#application-for-entrance01 .formArea .ena-form-skin
.tanka_select .wpcf7-list-item-label {
  font-size: 16px !important;
  line-height: 1.6 !important;
  font-weight: 700 !important;
}

/* /SANYO COURSE SIZE TUNING 2026-10-08 */

/* SANYO MOBILE REFERENCE FIX 2026-10-08 */
@media screen and (max-width: 600px) {

  /*
   * Reference:
   * annotation box itself is pushed right with margin-left:auto.
   * Text inside remains start-aligned.
   */
  #application-for-entrance01 .formArea .ena-form-skin
  .c-form_item .annotation {
    margin-left: auto !important;
    text-align: start !important;
  }

  /*
   * Reference mobile mail notice:
   * height 190px / overflow-y scroll.
   * Desktop is intentionally untouched.
   */
  #application-for-entrance01 .formArea .ena-form-skin
  .lp-exp-text .text {
    height: 190px !important;
    max-height: 190px !important;
    overflow-x: auto !important;
    overflow-y: scroll !important;
    -webkit-overflow-scrolling: touch;
  }
}
/* /SANYO MOBILE REFERENCE FIX 2026-10-08 */
