.sub_top_banner {height: 0; padding-bottom: 62.5%;}
.sub_top_banner img {position: absolute; bottom: 0;}

.center_txt {text-align: center; margin: 40px 0 50px;}
.center_txt .netb {font-size: 2.5em;}
.center_txt .desc {font-size: 1.375em; line-height: 145%; margin-top: 20px;}
.center_txt .netb .blue_bg {font-size: 0.55em; background: #0B4198; color: #fff; width: fit-content; margin: 0 auto; line-height: 130%; padding: 0 4px; margin-bottom: 2px;}

.regist_table {display: flex; flex-wrap: wrap; border-top: 1px solid #111; font-size: 1.0625em;}
.regist_table > li {width: 100%; display: flex; border-bottom: 1px solid #E6E6E6;}
.regist_table > li.half {width: 50%;}
.regist_table > li > div {padding: 17px 10px;}
.regist_table > li .lt {width: 215px; background: #F6F6F6; text-align: center; font-weight: 700; display: flex; justify-content: center; align-items: center;}
.regist_table > li .rt {width: calc(100% - 215px); padding-left: 30px; font-weight: 500; line-height: 155%;}
.regist_table > li.attention .lt {background: #F4F6FB; color: #0B4198;}

.regist_table2 > li .lt {width: 190px;}
.regist_table2 > li .rt {width: calc(100% - 190px); padding: 20px 30px 20px 24px; display: flex; align-items: center;}
.regist_table2 > li .rt.no_right {padding-right: 0;}
.regist_table2 > li.input_half .rt {width: calc(50% - 190px);}
.regist_table .form_input {width: 100%;}
.regist_table .form_input.with_etc {display: flex; column-gap: 30px;}
.regist_table .form_input.with_etc.column {flex-direction: column; row-gap: 10px;}
.regist_table .form_input.with_etc select {width: calc(50% - 135px);}
.regist_table .form_input.half_shape input,
.regist_table .form_input.with_etc.half_shape.column select {width: calc(50% - 122px);}
.regist_table .form_input.with_etc.column select {width: 100%;}
.regist_table .form_input.with_etc input#HOPE_ENTERPRISE_ETC {width: calc(50% + 105px);}
.regist_table .form_input.with_etc input#HOPE_ENTERPRISE_ETC,
.regist_table .form_input.with_etc.column input#OTHERJOB_ETC {display: none;}
.regist_table .form_input input,
.regist_table .form_input select,
.regist_table .form_input textarea {border: 1px solid #e6e6e6; border-radius: 5px; padding-left: 20px; padding-right: 20px; width: 100%; font-size: 0.9375rem;}
.regist_table .form_input input,
.regist_table .form_input select {height: 50px;}
.regist_table .form_input select {background: url(/img/select.png) no-repeat right 15px center; background-size: 24px; padding-right: 50px;}
.regist_table .form_input select {color: #aaa;}
.regist_table .form_input option:not(:first-of-type) {color: #111;}

.regist_table .form_input textarea {padding-top: 15px; padding-bottom: 15px; height: 130px;}
.regist_table .form_input.radio_box ul {display: flex; align-items: center; column-gap: 30px;}
.regist_table .form_input.radio_box li {width: fit-content;}
.regist_table .form_input.radio_box input {display: none;}
.regist_table .form_input.radio_box input + label {display: flex; align-items: center; column-gap: 10px; cursor: pointer;}
.regist_table .form_input.radio_box input + label::before {content: ""; display: block; width: 24px; height: 24px; background: url(/img/radio_before.png) no-repeat center center; background-size: 100%;}
.regist_table .form_input.radio_box input:checked + label::before {background: url(/img/radio_after.png) no-repeat center center; background-size: 100%;}
.regist_table .form_input.input_row li {display: flex; column-gap: 12px; align-items: center;}
.regist_table .form_input.input_row li:not(:last-child) {margin-bottom: 10px;}
.regist_table .form_input.checkbox_box ul {display: flex; align-items: center; column-gap: 50px; row-gap: 15px; flex-wrap: wrap;}
.regist_table .form_input.checkbox_box li.width1 {width: 160px;}
.regist_table .form_input.checkbox_box li.width2 {width: 350px;}
.regist_table .form_input.checkbox_box li.width3 {width: calc(100% - 100px - 510px);}
.regist_table .form_input.checkbox_box input[type="checkbox"] {display: none;}
.regist_table .form_input.checkbox_box input + label {display: flex; align-items: center; column-gap: 10px; cursor: pointer; word-break: keep-all;}
.regist_table .form_input.checkbox_box input + label::before {content: ""; display: block; width: 24px; height: 25px; background: url(/img/chk_before.png) no-repeat center center; background-size: 100%;}
.regist_table .form_input.checkbox_box input:checked + label::before {background: url(/img/chk_after.png) no-repeat center center; background-size: 100%;}
.regist_table .form_input.checkbox_box .etc_li {position: relative;}
.regist_table .form_input.checkbox_box input#ROUTE_ETC {display: none; margin-top: 10px; position: absolute; right: 0; top: 50%; margin-top: 0; width: calc(100% - 80px); height: 40px; transform: translateY(-50%);}

.agree_wrap {margin-top: 40px;}
.agree_wrap .title {font-size: 1.0625em; font-weight: 700; margin-bottom: 20px;}
.agree_wrap .agree_cont {height: 130px; padding: 16px 20px; margin-bottom: 15px; font-size: 0.9375em; border: 1px solid #e6e6e6; color: #aaa; overflow-y: scroll; line-height: 145%;}
.agree_chk {display: flex; align-items: center; justify-content: flex-end; column-gap: 30px; font-size: 0.9375em; font-weight: 500;}
.agree_chk .chk_radio {display: flex; align-items: center; column-gap: 20px;}
.agree_chk .chk_radio li input {display: none;}
.agree_chk .chk_radio li input + label {display: flex; align-items: center; column-gap: 10px; cursor: pointer;}
.agree_chk .chk_radio li input + label::before {content: ""; display: block; width: 24px; height: 24px; background: url(/img/radio_before.png) no-repeat center center; background-size: 100%;}
.agree_chk .chk_radio li input:checked + label::before {background: url(/img/radio_after.png) no-repeat center center; background-size: 100%;}

#regist2 section:not(:last-child) {margin-bottom: 50px;}
#regist2 .form_title {font-size: 1.625em; margin-bottom: 20px;}
#regist2 .regist_table li .lt {font-weight: 500;}
#regist2 .regist_table li .lt.row {flex-direction: column; row-gap: 3px;}
#regist2 .regist_table li .lt.row .add_desc {font-size: 0.875em; color: #6f85a9;}


@media screen and (max-width: 1024px) {  
  .regist_table {font-size: 1em;}
  .regist_table2 > li .lt {width: 165px;}
  .regist_table2 > li .rt {width: calc(100% - 165px); padding: 17px 0 17px 20px;}
  .regist_table > li.half {width: 100%;}
  .regist_table2 > li.input_half .rt {width: calc(100% - 165px);}
  .regist_table .form_input.checkbox_box li.width1,
  .regist_table .form_input.checkbox_box li.width2,
  .regist_table .form_input.checkbox_box li.width3 {width: 100%;}
  .regist_table .form_input.checkbox_box li.noCont {display: none;}
  .regist_table .form_input.checkbox_box li.etc_li {order: 10; display: flex; align-items: flex-start; column-gap: 15px;}
  .regist_table .form_input.checkbox_box input#ROUTE_ETC {position: static; width: 300px; margin-top: 0; transform: none; height: 45px;}
  .regist_table .form_input input,
  .regist_table .form_input select {height: 45px; max-width: 350px;}
  .regist_table .form_input textarea {height: 110px;}
  .regist_table .form_input select {background-size: 21px; padding-right: 40px;}
  .regist_table .form_input.radio_box input + label::before {width: 21px; height: 21px;}
  .regist_table .form_input.checkbox_box input + label::before {width: 21px; height: 22px;}
  .regist_table .form_input.with_etc {column-gap: 15px;}
  .regist_table .form_input.with_etc select {width: 225px;}
  .regist_table .form_input.half_shape input {width: 350px;}
  .regist_table .form_input.with_etc input#HOPE_ENTERPRISE_ETC {width: calc(100% - 240px); max-width: none;}

  .regist_table > li .rt br.br_1024_none {display: none;}
}

@media screen and (max-width: 768px) {
  .center_txt {margin: 30px 0 50px;}
  .center_txt .netb {font-size: 2.125em;}
  .center_txt .desc {font-size: 1.25em;}
  .regist_table > li .lt {width: 170px;}
  .regist_table > li .rt {width: calc(100% - 170px); padding-left: 20px;}
  .agree_wrap .title {margin-bottom: 15px}
  .agree_wrap .agree_cont {height: 110px; padding: 10px 15px; margin-bottom: 12px;}
  .agree_chk .chk_radio li input + label {column-gap: 8px;}
  .agree_chk .chk_radio li input + label::before {width: 21px; height: 21px;}  

  #regist2 .form_title {margin-bottom: 15px;}
  .regist_table2 > li .lt {width: 150px;}
  .regist_table2 > li .rt {width: calc(100% - 150px); padding: 15px 0 15px 15px;}
  .regist_table2 > li.input_half .rt {width: calc(100% - 150px);}
  .regist_table .form_input.checkbox_box input#ROUTE_ETC {width: calc(100% - 70px); height: 40px;}
  .regist_table .form_input input,
  .regist_table .form_input select {height: 42px; max-width: none;}
  .regist_table .form_input input,
  .regist_table .form_input select,
  .regist_table .form_input textarea {padding-left: 15px; padding-right: 15px;}
  .regist_table .form_input textarea {height: 90px;}
  .regist_table .form_input.radio_box input + label {column-gap: 8px;}
  .regist_table .form_input.radio_box input + label::before {width: 19px; height: 19px;}
  .regist_table .form_input.checkbox_box input + label::before {width: 19px; height: 20px;}
  .regist_table .form_input.checkbox_box ul {row-gap: 13px;}
  .regist_table .form_input.with_etc {flex-wrap: wrap; row-gap: 10px;}
  .regist_table .form_input.with_etc select,
  .regist_table .form_input.half_shape input {width: 100%;}
  .regist_table .form_input.with_etc input#HOPE_ENTERPRISE_ETC {width:100%;}
}

@media screen and (max-width: 540px) {
  .center_txt {margin: 25px 0 40px;}
  .center_txt .netb {font-size: 1.875em;}
  .center_txt .desc {font-size: 1.125em; margin-top: 15px;}
  .regist_table > li > div {padding: 12px 0;}
  .regist_table > li .lt {width: 110px;}
  .regist_table > li .rt {width: calc(100% - 110px); padding-left: 15px;}
  .regist_table1 > li {flex-wrap: wrap;}
  .regist_table1 > li .lt,
  .regist_table1 > li .rt {width: 100%;}
  .regist_table1 > li .lt {/* border-bottom: 1px solid #E6E6E6; */ padding: 10px 0;}
  .regist_table1 > li .rt {padding: 10px 10px 20px;}
  .agree_wrap .title {margin-bottom: 12px}
  .agree_wrap .agree_cont {height: 90px; margin-bottom: 15px;}
  .agree_chk {display: block;}
  .agree_chk p {margin-bottom: 10px;}
  .agree_chk .chk_radio {column-gap: 25px;}
  .agree_chk .chk_radio li input + label {column-gap: 8px;}
  .agree_chk .chk_radio li input + label::before {width: 19px; height: 19px;}

  #regist2 .form_title {font-size: 1.5em; margin-bottom: 12px;}
  #regist2 .regist_table li .lt.row .add_desc {font-size: 0.75em;}
  .regist_table2 > li .lt {width: 100px;}
  .regist_table2 > li .rt {width: calc(100% - 100px); padding: 12px 0 12px 12px;}
  .regist_table2 > li.input_half .rt {width: calc(100% - 100px);}
  .regist_table .form_input.checkbox_box input#ROUTE_ETC {width: calc(100% - 60px);}
  .regist_table .form_input input,
  .regist_table .form_input select {height: 40px;}
  .regist_table .form_input input,
  .regist_table .form_input select,
  .regist_table .form_input textarea {padding-left: 10px; padding-right: 10px;}
  .regist_table .form_input textarea {height: 70px;}
  .regist_table .form_input select {padding-right: 35px; background: url(/img/select.png) no-repeat right 10px center; background-size: 18px;}
  .regist_table .form_input.radio_box input + label {column-gap: 8px;}
  .regist_table .form_input.radio_box input + label::before {width: 18px; height: 18px;}
  .regist_table .form_input.checkbox_box input + label::before {width: 17px; height: 18px;}
  .regist_table .form_input.checkbox_box ul {row-gap: 13px;}
  .regist_table .form_input.input_row li {column-gap: 8px;}
  .regist_table .form_input.input_row li:not(:last-child) {margin-bottom: 7px;}
  .regist_table .form_input.checkbox_box li.etc_li {column-gap: 10px;}
}