/* new css */
.form-2025 .h1,
.form-2025 .h2,
.form-2025 .h3,
.form-2025 .h4,
.form-2025 .h5 {
  font-weight: 700;
}

.form-2025 .h2 {
  font-size: 32px !important;
  font-weight: 800;
}
.form-2025 .h3 {
  font-size: 28px !important;
  font-weight: 800;
}
.form-2025 .h4 {
  font-size: 22px !important;
  font-weight: 800;
}
.form-2025 .h5 {
  font-size: 20px !important;
  font-weight: 800;
}
.form-2025 .text-lg,
.form-2025 .policy .form-2025 .policy-sect {
  font-size: 18px !important;
}
.form-2025 .text-md {
  font-size: 16px !important;
}

.form-2025 .d-flex {
  display: flex !important;
}
.form-2025 .d-none {
  display: none !important;
}
.form-2025 .justify-center {
  justify-content: center !important;
}
.form-2025 .flex-grow {
  flex: 1 !important;
}
.form-2025 .mt-0 {
  margin-top: 0 !important;
}
.form-2025 .mn-none {
  min-width: unset !important;
}
.form-2025 .lh-1 {
  line-height: 1 !important;
}
.form-2025 .border-top {
  border-top: 1px solid #09b9c6;
}

.form-2025 .fw400 {
  font-weight: 400 !important;
}
.form-2025 .fw500 {
  font-weight: 500 !important;
}
.form-2025 .fw600 {
  font-weight: 600 !important;
}
.form-2025 .fw700 {
  font-weight: 700 !important;
}
.form-2025 .text-center {
  text-align: center !important;
}
.form-2025 .text-left {
  text-align: left !important;
}
.form-2025 .text-black {
  color: #000 !important;
}
.form-2025 .text-body {
  color: #24212e !important;
}
.form-2025 .text-purple {
  color: #7681e5 !important;
}
.form-2025 .text-mint {
  color: #09b9c6 !important;
}
.form-2025 .text-gray {
  color: #7c7a82 !important;
}
.form-2025 .text-light {
  color: #a7a6ab !important;
}
.form-2025 .text-sky {
  color: #09b9c6 !important;
}
.form-2025 .step-num {
  display: block;
  margin-bottom: 4px;
  line-height: 150%;
}
.form-2025 [class^='icon-'] {
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  text-indent: -9999px;
  vertical-align: middle;
}
.form-2025 * {
  line-height: 160%;
}

.form-2025 input[type='radio']:disabled + span {
  color: #ccc;
}

/* common */

/* list */
.form-2025.join .list-dot {
  display: inline-block;
  margin: 20px auto 16px;
  width: auto;
}
.form-2025.join .list-dot > li {
  position: relative;
  padding-left: 1em;
  line-height: 160%;
  font-size: 15px;
  font-weight: 400;
}
.form-2025.join .list-dot > li::before {
  content: '';
  position: absolute;
  top: 0.75em;
  left: 0;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #504d58;
}

.form-2025.join .list-dot > li + li {
  margin-top: 8px;
}

.form-2025.join .list-num {
  counter-reset: number 0;
}
.form-2025.join .list-num > li::before {
  counter-increment: number 1;
  content: counter(number) '. ';
}
.form-2025.join .list-num > li + li {
  margin-top: 8px;
}

.form-2025.join .list-dash > li {
  position: relative;
  padding-left: 1em;
  line-height: 1;
}
.form-2025.join .list-dash > li::before {
  content: '-';
  position: absolute;
  left: 0;
}
.form-2025.join .list-dash > li + li {
  margin-top: 0.6666666667rem;
}

.form-2025.join .list-kr > li {
  display: flex;
  gap: 8px;
  padding-left: 1em;
  text-align: left;
}
.form-2025.join .list-kr > li::before {
  font-weight: 700;
  font-size: 18px;
}
.form-2025.join .list-kr > li:nth-child(1)::before {
  content: '가. ';
}
.form-2025.join .list-kr > li:nth-child(2)::before {
  content: '나. ';
}
.form-2025.join .list-kr > li:nth-child(3)::before {
  content: '다. ';
}
.form-2025.join .list-kr > li:nth-child(4)::before {
  content: '라. ';
}
.form-2025.join .list-kr > li:nth-child(5)::before {
  content: '마. ';
}
.form-2025.join .list-kr > li + li {
  margin-top: 8px;
}

/* table */
.form-2025 .tb {
  border-collapse: collapse;
}
.form-2025 .tb .tb-hd th {
  padding: 20px 0;
  border-bottom: 1px solid #000;
  font-weight: 800;
  text-align: center;
}
.form-2025 .tb-list tbody > tr {
  border-bottom: 1px solid #ddd;
}
.form-2025 .tb-list tbody > tr > * {
  padding: 20px 12px;
}

.container .form-2025 {
  padding-top: 50px;
}
.container .form-2025 * {
  line-height: 160%;
}
.container .form-2025 .pt-0 {
  padding-top: 0px;
}
.container .form-2025 .form_layout.login_form_layout {
  display: block;
  margin: 0 auto;
  max-width: 594px;
  width: 100%;
}
.form-2025 .btn-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 17px;
  margin-top: 60px;
}
.form-2025 .btn-wrap .btn.sm {
  height: 48px;
  line-height: 47px;
  font-size: 16px;
  width: 240px;
  border-radius: 10px;
}
.form-2025 .btn.bg-button-4 {
  box-shadow: 0 4px 3px 0 rgba(104, 115, 170, 0.3);
  font-weight: 500;
}
.form-2025 .btn.bg-button-5 {
  border: 1px solid #7681e5;
  background: #fff;
  box-shadow: 0 3px 3px 0 rgba(118, 129, 229, 0.3);
  color: #7681e5;
  font-weight: 500;
}
.form-2025 .btn.bg-button-6 {
  border: 1px solid #eb5757;
  background: #fff;
  box-shadow: none;
  color: #eb5757;
  font-weight: 500;
}
.form-2025 .btn.bg-button-7 {
  border: 1px solid #eb5757;
  background: #eb5757;
  box-shadow: none;
  color: #fff;
  font-weight: 500;
}
.form-2025 .btn.bg-button-8 {
  border: 1px solid #09b9c6;
  background: #09b9c6;
  box-shadow: none;
  color: #fff;
  font-weight: 500;
}
.form-2025 .form-text {
  color: #eb5757;
  font-weight: 400;
  line-height: 140%;
  margin-top: 8px;
  padding-left: 10px;
  font-weight: 500;
}
.form-2025 .form-inline + .form-text {
  padding-left: 0;
  margin-top: 0;
  font-weight: 400;
}
.form-2025 .form-text.mt-8 {
  margin-top: 8px;
}
.form-2025 .btn + .form-text {
  margin-top: 10px;
}
.form-2025 .form_layout.login_form_layout form .input-component-box .input-wrapper {
  margin-bottom: 0px;
}
.form-2025 .form_layout.login_form_layout form .input-component-box + .input-component-box {
  margin-top: 20px;
}
.form-2025 .clearfix {
  margin-top: 20px;
}
.form-2025 form + .btn-wrap {
  margin-top: 42px;
}

.form-2025 .profile-area {
  position: relative;
  text-align: center;
  margin-bottom: 105px;
}
.form-2025 .profile-tit {
  font-size: 32px !important;
  margin-bottom: 32px;
  font-weight: 700;
}
.form-2025 .profile-actions {
  position: relative;
}
.form-2025 .profile-actions label {
  position: relative;
  display: inline-block;
  background: url(./img/profile.svg) no-repeat 0px 0px / 100%;
  width: 120px;
  height: 120px;
  cursor: pointer;
}
.form-2025 .profile-actions label::after {
  content: '';
  display: block;
  position: absolute;
  background: url(./img/icon-photo.svg) no-repeat 0px 0px / contain;
  width: 36px;
  height: 36px;
  bottom: 0;
  right: 0;
}

/* form */
.form-2025.join .contents-sm {
  max-width: 900px;
  margin: 0 auto;
}
.form-2025.join .contents-sm .form-wrap {
  width: 100%;
}
.form-2025.join .form-wrap {
  margin: 0 auto;
}
.form-2025.join .form-wrap .form-group {
  margin-top: 30px;
}
.form-2025.join .form-wrap .tit {
  margin-bottom: 20px;
  font-size: 36px;
  color: #24212e;
  font-weight: 700;
  line-height: 150%;
}
.form-2025.join .form-wrap .tit + p {
  line-height: 1.6;
}
.form-2025 .form-wrap .form-group .form-block {
  width: 100%;
}

.form-2025 .form-wrap .form-group .form-label {
  font-weight: 800;
  line-height: 1;
}

.form-2025 .form-wrap .form-group .form-control {
  padding: 9px 12px;
  height: 38px;
  width: 100%;
  border-radius: 8px;
  border-color: #dfdfe4;
}
.form-2025 .form-wrap .form-group .form-control::placeholder {
  color: #a7a6ab;
  font-size: 14px;
  font-weight: 400;
}

.form-2025 .form-wrap .form-group .form-inline {
  display: flex;
  flex-wrap: wrap;
  align-items: normal;
  justify-content: flex-start;
  flex-wrap: nowrap;
  gap: 8px;
  width: 100%;
  max-width: unset;
}

.form-2025 .form-wrap .form-group .form-inline:has(.form-text) {
  flex-wrap: wrap;
}

.form-2025 .form-wrap .form-group .form-block {
  width: 100%;
}

.form-2025 .form-wrap .form-group .form-block > .form-control {
  display: block;
}

.form-2025 .form-wrap .form-group .form-block > .form-control + .form-control {
  margin-top: 8px;
}

.form-2025 .form-wrap .form-group .form-block > .form-inline + .form-inline {
  margin-top: 8px;
}

.form-2025 .form-wrap .form-group .btn {
  padding: 9px 12px;
  width: auto;
  height: 38px;
  text-wrap: nowrap;
  border: 1px solid #7c7a82;
  font-size: 13px;
  font-weight: 400;
  color: #504d58;
  border-radius: 8px;
  line-height: 1;
}

.form-2025 .form-wrap .form-group .btn.outline {
  border: 1px solid #7c7a82;
  background-color: #fff;
  color: #504d58;
}

.form-2025 .form-wrap .form-group .btn.red {
  color: #eb5757;
  border: 1px solid #eb5757;
}

.form-2025 .form-wrap .form-group .btn-file {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.form-2025 .form-wrap .form-group .btn-file input {
  display: none;
}

.form-2025 .form-wrap .form-group .email-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: start;
  gap: 8px;
  flex-wrap: nowrap;
  width: 100%;
}

.form-2025 .form-wrap .form-group .email-wrap .form-control,
.form-2025 .form-wrap .form-group .email-wrap .form-select {
  flex: 1;
}

.form-2025 .form-wrap .form-group .form-select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 9px 12px;
  width: 100%;
  min-width: 120px;
  color: #504d58;
  -webkit-text-fill-color: #504d58;
  height: 40px;
  background: url(./img/icon-select.svg) no-repeat center right 20px/12px 12px;
}

.form-2025 .form-wrap .form-group .form-select.text-light {
  color: #a7a6ab;
  -webkit-text-fill-color: #a7a6ab;
}

.form-2025 .form-wrap .form-group .left-time {
  position: relative;
  width: 100%;
}

.form-2025 .form-wrap .form-group .left-time .time {
  position: absolute;
  top: 50%;
  right: 15px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 15px;
}

.form-2025 .form-wrap .form-group .datepicker {
  position: relative;
  border: 1px solid #dfdfe4;
  border-radius: 8px;
  overflow: hidden;
}

/* 
.form-2025 .form-wrap .form-group .datepicker input[type='date'] {
  text-align: left;
  width: calc(100% + 1rem);
  border: 0;
}

.form-2025 .form-wrap .form-group .datepicker input[type='date']::-webkit-calendar-picker-indicator {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: none;
  opacity: 0;
}

.form-2025 .form-wrap .form-group .datepicker input[type='date']::-webkit-inner-spin-button,
.form-2025 .form-wrap .form-group .datepicker input[type='date']::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.form-2025 .form-wrap .form-group .datepicker input[type='date']::-webkit-date-and-time-value {
  text-align: left;
  padding-left: 10px;
}

.form-2025 .form-wrap .form-group .datepicker::after {
  content: '';
  position: absolute;
  top: calc(50% - 8px);
  right: 15px;
  background: url(./img/icon-calendar.svg);
  width: 16px;
  height: 16px;
  pointer-events: none;
} */

.form-2025 .form-wrap .required {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  gap: 2px;
}

.form-2025 .form-wrap .required::after {
  content: '';
  display: block;
  width: 6px;
  height: 6px;
  background: url(./img/icon-required.svg) no-repeat center/contain;
}

.form-2025 .form-wrap .form-tit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  padding-bottom: 16px;
  border-bottom: 1px solid #09b9c6;
}

.form-2025 .form-wrap .form-tit.start {
  justify-content: start;
  gap: 10px;
}

.form-2025 .form-wrap .form-tit span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  gap: 2px;
  font-size: 1rem;
  line-height: 1;
}

.form-2025 .form-wrap .form-tit span::before {
  content: '';
  display: block;
  width: 6px;
  height: 6px;
  background: url(./img/icon-required.svg) no-repeat center/contain;
}

.form-2025 .form-wrap .form-tit.detail-none span {
  padding: 0;
}

.form-2025 .form-wrap .form-tit.detail-none span::before {
  display: none;
}

.form-2025 .form-wrap .form-textarea {
  margin-top: 24px;
  margin-bottom: 40px;
  padding: 20px;
  width: 100%;
  border-radius: 12px;
  border: 1px solid #ddd;
  line-height: 1.6;
  color: #a7a6ab;
  font-size: 15px;
}

.form-2025 .form-wrap .form-textarea::placeholder {
  color: #a7a6ab;
  font-size: 15px;
}

.form-2025 .form-wrap .quest-wrap {
  position: relative;
  font-size: 0;
}

.form-2025 .form-wrap .quest-wrap .quest-btn {
  display: block;
  width: 20px;
  height: 20px;
  background: url(./img/icon-quest-circle.svg) no-repeat center/contain;
}

.form-2025 .form-wrap .quest-wrap .quest-btn:hover + .quest-bx {
  display: block;
}

.form-2025 .form-wrap .quest-wrap .quest-bx {
  position: absolute;
  padding: 1.6rem;
  width: 250px;
  line-height: 1.6;
  letter-spacing: -0.42px;
  display: none;
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.1);
  background-color: #fff;
  border-radius: 12px;
}

.form-2025 .form-wrap .quest-wrap .quest-bx.active {
  display: block;
}

.form-2025 .upload-file {
  margin-top: 12px;
}

.form-2025 .upload-file .file-list {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  gap: 8px;
}

.form-2025 .upload-file .file-list label {
  display: inline-block;
  padding: 8px 16px;
  background: #fff;
  border: 1px solid #7c7a82;
  border-radius: 8px;
  font-weight: 500;
  text-wrap: nowrap;
  cursor: pointer;
}

.form-2025 .upload-file .file-list label input {
  display: none;
}

.form-2025 .upload-file .file-list li {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: start;
  flex-wrap: nowrap;
  padding: 8px 16px;
  height: 48px;
  background: #f8f9fa;
  border-radius: 8px;
  font-weight: 500;
  text-wrap: nowrap;
}

.form-2025 .upload-file .file-list li span {
  max-width: 9.0666666667rem;
  display: -webkit-box !important;
  overflow: hidden;
  max-height: 1.6em;
  line-height: 1.6 !important;
  text-overflow: ellipsis;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  word-wrap: break-word;
  white-space: normal !important;
  height: auto;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.form-2025 .upload-file .file-list li .extension {
  font-weight: 500;
}

.form-2025 .upload-file .file-list li .icon-x {
  display: block;
  margin-left: 1.0666666667rem;
  min-width: 1.0666666667rem;
  height: 1.0666666667rem;
  background: #efefef url(./img/icon-file-delete.svg) no-repeat center/contain;
  cursor: pointer;
}

.form-2025 .form-inline .btn-file + .form-text {
  width: 100%;
  padding-left: 0;
  margin-top: 4px;
}

.form-2025 input[type='text']:disabled,
.form-2025 input[type='text'].hasVal,
.form-2025 input[type='date']:disabled,
.form-2025 input[type='date'].hasVal,
.form-2025 input[type='password']:disabled,
.form-2025 input[type='password'].hasVal,
.form-2025 input[type='number']:disabled,
.form-2025 input[type='number'].hasVal {
  border: 1px solid #dfdfe4;
  background: #e9e9ea;
}

.form-2025.join .list-chk {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 15px;
}
.form-2025.join .list-chk input {
  position: absolute;
  opacity: 0;
  top: 0;
  left: 0;
  min-width: 16px;
  height: 16px;
  cursor: pointer;
  display: inline-block !important;
}
.form-2025.join .list-chk::before {
  content: '';
  display: inline-block;
  border-radius: 4px;
  background-color: #fff;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  border: 1px solid #dfdfe4;
  width: 17px;
  height: 17px;
}
.form-2025.join .list-chk:has(input:checked)::before {
  background-image: url(./img/check-mark-on.svg);
  border: 1px solid transparent;
}

.form-2025.join .event .list-chk::before {
  background-image: url(./img/check-mark.svg);
  border: 0;
}

.form-2025.join .link-wrap li {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: start;
  gap: 8px;
}
.form-2025.join .link-wrap li + li::before {
  content: '';
  display: block;
  width: 1px;
  height: 10px;
  background: rgba(0, 0, 0, 0.2);
}
.form-2025.join .find-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 8px;
  margin-top: 20px;
}
.form-2025.join .find-wrap span {
  color: #7c7a82;
}
.form-2025.join .list-chk.all-chk {
  justify-content: start;
  text-align: left;
}
.form-2025.join .list-chk.all-chk::before {
  width: 20px;
  height: 20px;
}
.form-2025.join .list-chk.all-chk + ul {
  margin: 10px auto 0;
  padding-left: 20px;
  text-align: left;
}
.form-2025.join .list-chk.all-chk + ul li {
  padding: 0;
  line-height: 140%;
}
.form-2025.join .list-chk.all-chk + ul li + li {
  margin-top: 8px;
}
.form-2025.join .list-chk.all-chk + ul li span {
  color: #7c7a82;
}
.form-2025.join .list-chk.all-chk + ul li span + b {
  padding-left: 4px;
  font-weight: 400;
}

.form-2025.join .sect + .sect {
  margin-top: 30px;
  padding-top: 40px;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}
.form-2025.join .sect + .sect > .form-group:first-child {
  margin-top: 0;
}
.form-2025.join .sect.integrated {
  margin-top: 60px;
}
.form-2025.join .form-sect.join-box {
  margin-top: 80px;
}
.form-2025.join .sect .form-group2 {
  margin: 0;
  display: block;
}
.form-2025.join .sect .form-group2 .form-label {
  display: flex;
  margin-bottom: 8px;
  font-weight: 400;
}
.form-2025.join .sect .form-group2 .form-control {
  display: block;
}
.familysite-wrap {
  margin: 60px 0 30px;
}

.familysite-wrap .familysite li {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 8px;
}
.familysite-wrap .familysite li + li {
  margin-left: 16px;
}
.familysite-wrap .familysite li i {
  display: block;
  width: 80px;
  height: 80px;
}
.familysite-wrap .familysite li i.cedulearn {
  background: url(./img/familysite-cedulearn.png) no-repeat center/contain;
}
.familysite-wrap .familysite li i.cedubook {
  background: url(./img/familysite-cedubook.png) no-repeat center/contain;
}
.familysite-area .form-text {
  margin-top: 24px;
}

.form-2025 .info-bx {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: start;
  gap: 8px;
  color: #09b9c6;
}
.form-2025 .info-bx .icon-alert {
  display: block;
  width: 16px;
  height: 16px;
  background: url(./img/icon-info.svg) no-repeat center/contain;
  text-indent: -9999px;
  vertical-align: middle;
}

.form-2025.join .check-list-type1 {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.form-2025.join .check-list-type1.gap-40 {
  gap: 40px;
}
.form-2025.join .check-list-type2 li {
  padding: 10px 0;
}

.form-2025.join .check-list-type2.top .list-radio::before {
  top: 2px;
  position: relative;
}
.form-2025.join .check-list-type2 label:has(.bt-wrap) {
  flex-wrap: wrap;
}
.form-2025.join .check-list-type2 > div {
  flex: 1;
}
.form-2025.join .check-list-type2 label:has(.bt-wrap) .bt-wrap {
  flex: 1;
  display: flex;
  flex-wrap: nowrap;
  gap: 8px;
}

.form-2025.join .form-group2 .form-inline + .form-text {
  margin-top: 8px;
}

.form-2025.join .btn-showCont {
  display: inline-flex;
  flex-wrap: nowrap;
  text-wrap: nowrap;
  align-items: center;
  padding: 4px 6px 4px 8px;
  width: auto;
  height: 26px;
  font-size: 13px;
  font-weight: 500;
  color: #7c7a82;
  border-radius: 4px;
  border: 1px solid #999;
}
.form-2025.join .btn-showCont span {
  text-decoration: none !important;
}
.form-2025.join .btn-showCont i {
  width: 14px;
  height: 14px;
  background-image: url(./img/arr.svg);
}

.form-2025.join .sect .bx {
  display: flex;
  flex-wrap: wrap;
  align-items: start;
  justify-content: start;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 4px;
  margin-top: 30px;
  padding: 1.6rem;
  box-shadow: none;
  background: #f8f9fa;
}
.form-2025.join .sect .bx > * {
  line-height: 150%;
  font-size: 15px;
  color: #7c7a82;
}
.form-2025.join .btn-wrap + .form-text.text-gray {
  margin-top: 20px;
}

/* radio */
.form-2025.join .list-radio {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #999;
}
.form-2025.join .list-radio > * {
  line-height: normal;
}
.form-2025.join .list-radio input {
  position: absolute;
  opacity: 0;
  top: 0;
  left: 0;
  width: 15px;
  height: 15px;
  cursor: pointer;
}
.form-2025.join .list-radio::before {
  content: '';
  display: inline-block;
  width: 15px;
  height: 15px;
  background: url(./img/check-mark-circle_disabled.svg) no-repeat center center/contain;
}
.form-2025.join .list-radio:has(input:checked) {
  color: #24212e;
}
.form-2025.join .list-radio:has(input:checked)::before {
  background-image: url(./img/check-mark-circle-on.svg);
}
.form-2025.join .list-radio:has(input:disabled)::before {
  background-image: url(../img/common/check-mark-circle_disabled.svg);
}
.form-2025.join .step1 .form-group {
  margin: 30px 0;
}

/* layer popup */
.form-2025.join .policy .policy-sect {
  margin-left: auto;
  margin-right: auto;
  font-weight: 400;
  color: #000;
  line-height: 1.6;
}
.form-2025.join .policy .policy-sect div {
  line-height: 1.6;
}
.form-2025.join .policy .policy-sect ul li {
  font-size: 15px;
  line-height: 1.6;
}
.form-2025.join .policy .policy-sect + .policy-sect {
  margin-top: 60px;
}

.form-2025 .policy .main-tit {
  display: block;
  margin-bottom: 20px;
  padding-bottom: 20px;
  font-size: 22px;
  font-weight: 800;
  border-bottom: 1px solid #000;
}
.form-2025 .policy .mt-gap {
  margin-top: 8px !important;
}

.form-2025.join .policy .policy-sect {
  margin-left: auto;
  margin-right: auto;
  font-weight: 400;
  line-height: 1.6;
}
.form-2025.join .policy .fz-md,
.form-2025 .policy dl {
  font-size: 15px;
}
.form-2025.join .policy dl dt.h5 > * {
  font-size: 20px !important;
  font-weight: 700;
}
.form-2025.join .policy dl dt.d-flex {
  gap: 4px;
}
.form-2025.join .policy dl {
  margin-top: 40px;
}
.form-2025.join .policy dl dt {
  margin-bottom: 16px;
  padding: 8px 16px;
  border-radius: 12px;
  background: rgba(25, 29, 56, 0.05);
}
.form-2025.join .policy dl dd:not(:has(.box)) {
  padding-left: 1em;
}
.form-2025.join .policy dl dd .box {
  margin-top: 8px;
  padding: 16px 20px;
  width: 100%;
  border-radius: 12px;
  background: rgba(15, 35, 46, 0.03);
}
.form-2025.join .policy-sect .list-dot {
  margin: 0;
}
.form-2025.join .policy .list-dot li {
  line-height: 1.6;
}
.form-2025.join .policy .list-dot > li + li {
  margin-top: 0.6666666667rem;
}
.form-2025.join .policy ul li > div {
  flex: 1;
}
.form-2025.join .policy .list-num > li::before,
.form-2025.join .policy .policy-sect .list-kr li::before {
  line-height: 1.6;
}
.form-2025.join .policy .policy-sect .list-kr > div {
  flex: 1;
}

.form-2025.join .layer-wrap {
  display: none;
  position: fixed;
  z-index: 1001;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.4);
}
.form-2025.join .layer-wrap.active {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.form-2025.join .layer-wrap > div {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  margin: 0 auto;
  background: #fff;
  border-radius: 20px;
  max-height: 100%;
  height: 100%;
  overflow: hidden;
  font-size: 13px;
}
.form-2025.join .layer-wrap > div > div {
  width: 100%;
  height: 100%;
}
.form-2025.join .layer-wrap > div .layer-hd {
  margin-bottom: 32px;
}
.form-2025.join .layer-wrap > div .layer-hd .title-wrap.btm-line {
  border-width: 3px;
  border-bottom-color: #ddd;
  margin-bottom: 0;
}
.form-2025.join .layer-wrap > div .layer-body {
  max-height: 100%;
  overflow-y: auto;
  flex-grow: 1;
  padding-bottom: 100px;
}
.form-2025.join .layer-wrap > div .layer-body .word-wrap {
  word-break: keep-all;
}
.form-2025.join .layer-wrap.full {
  padding: 0;
}
.form-2025.join .layer-wrap.full > div {
  max-width: 100%;
  height: 100%;
  border-radius: 0;
  overflow-y: scroll;
}
.form-2025.join .layer-wrap.full.active .btn-layer-close {
  position: fixed !important;
  top: 20px;
  right: 20px;
}
.form-2025.join .layer-wrap .btn-layer-close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 1.8666666667rem;
  height: 1.8666666667rem;
  font-size: 0;
  background: url(./img/close.svg) no-repeat center center/contain;
  z-index: 1005;
}

.form-2025.join .auth-popup > div.layer-sm {
  max-width: 370px !important;
  height: auto;
  top: 50%;
  transform: translateY(-50%);
}
.form-2025.join .auth-popup > div .layer-body {
  padding-bottom: 0;
  max-height: unset;
  overflow-y: unset;
  height: auto;
}
.form-2025.join .auth-popup > div .layer-body .btn {
  background-image: unset;
  position: static;
  border: 0;
  background-color: #09b9c6;
  color: #fff;
  width: 106px;
  height: 40px;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 700;
  margin-top: 24px;
}
.form-2025.join .auth-popup.active {
  display: block;
}
.form-2025.join .layer-xs {
  max-width: 370px;
}

.form-2025 .policy .tb-wrap .tb th,
.form-2025 .policy .tb-wrap .tb td {
  padding: 12px 6px;
  border: 1px solid #ddd;
}
.form-2025 .policy .tb-wrap .tb th {
  color: #333;
  font-weight: 700;
  background: rgba(25, 29, 56, 0.05);
  border-top: 2px solid #666;
}
.form-2025 .policy .tb-wrap .tb td:first-child,
.form-2025 .policy .tb-wrap .tb th:first-child {
  border-left: 0 !important;
}
.form-2025 .policy .tb-wrap .tb td:last-child,
.form-2025 .policy .tb-wrap .tb th:last-child {
  border-right: 0 !important;
}
.form-2025 .policy .tb-wrap .tb tr:last-child td {
  border-bottom: 1px solid #666;
}
.form-2025 .policy .tb-wrap .tb .bd-btm {
  border-bottom: 1px solid #666;
}
.form-2025 .policy .tb-wrap + * {
  margin-top: 1em;
}
.form-2025 .policy .tb-wrap + * {
  margin-top: 1em !important;
}
body:has(.layer-wrap.active) {
  overflow-y: hidden;
}

@media (min-width: 768px) {
  .form-2025 .form-wrap .form-group {
    display: flex;
    flex-wrap: wrap;
    align-items: start;
    justify-content: start;
    flex-wrap: nowrap;
    gap: 40px;
  }

  .form-2025 .form-wrap .form-group .datepicker {
    max-width: 360px;
  }

  .form-2025 .form-wrap .form-group .datepicker input[type='date'] {
    max-width: calc(100% + 1rem);
  }

  .form-2025 .form-wrap .form-group + .form-group {
    margin-top: 24px;
  }

  .form-2025 .form-wrap .form-group + .form-group.border-top {
    margin-top: 52px;
    padding-top: 28px;
  }

  .form-2025 .form-wrap .form-group .form-label {
    margin-top: 14px;
    width: 160px;
    min-width: 160px;
  }

  .form-2025 .form-wrap .form-group .form-label.mw-none {
    min-width: 0;
    width: auto;
  }

  .form-2025 .form-wrap .form-group .form-control {
    max-width: 360px;
  }

  .form-2025.join .step1 .form-control {
    max-width: 360px;
  }

  .form-2025 .form-wrap .form-group .form-control.short {
    max-width: 240px;
  }

  .form-2025 .form-wrap .form-group .email-wrap,
  .form-2025 .form-wrap .form-group .left-time {
    max-width: 360px;
  }

  .form-2025 .form-wrap .form-group .email-wrap.full {
    max-width: unset;
  }

  .form-2025 .form-wrap .form-group .form-select {
    max-width: 360px;
    min-width: 200px;
    font-size: 15px;
  }

  .form-2025 .form-wrap .form-group input[type='date']::-webkit-calendar-picker-indicator {
    background: url(./img/icon-calendar.svg) no-repeat;
  }

  .form-2025 .form-wrap .form-sect + .form-sect {
    margin-top: 80px;
  }

  .form-2025 .form-wrap .form-sect:not(:has(.info-bx)) .form-tit {
    margin-bottom: 30px;
  }

  .form-2025 .form-wrap .form-sect:has(.info-bx) .info-bx {
    margin-bottom: 30px;
  }

  .form-2025.join .layer-wrap {
    padding: 95px 40px;
  }

  .form-2025.join .layer-wrap > div {
    max-width: 840px;
    padding: 40px;
  }

  .form-2025.join .layer-wrap > div.layer-sm {
    max-width: 600px;
  }

  .form-2025.join .layer-wrap .layer-body::-webkit-scrollbar {
    width: 10px;
  }

  .form-2025.join .layer-wrap .layer-body::-webkit-scrollbar-track {
    border-left: 5px solid rgba(0, 0, 0, 0);
    background: #fff;
    background-clip: padding-box;
    cursor: pointer;
  }

  .form-2025.join .layer-wrap .layer-body::-webkit-scrollbar-thumb {
    background: #ddd;
    border-radius: 0;
    border-left: 5px solid rgba(0, 0, 0, 0);
    background: #ddd;
    background-clip: padding-box;
    cursor: pointer;
  }

  .form-2025.join .layer-wrap .layer-body::-webkit-scrollbar-thumb:hover {
    cursor: pointer;
  }

  .form-2025.join .step2 .pw-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    width: 100%;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    gap: 16px;
    margin-top: 20px;
  }

  .form-2025.join .step2 .pw-wrap .form-group {
    width: 100%;
  }
  .form-2025.join .step2 .pw-wrap .form-group {
    width: 360px;
  }

  .form-2025.join .step2 .pw-wrap .form-group + .form-group {
    margin-top: 0;
  }

  .form-2025 .form-wrap .form-sect:not(:has(.info-bx)) .form-tit {
    margin-bottom: 30px;
  }

  .form-2025 .form-wrap .form-sect:has(.info-bx) .info-bx {
    margin-top: 28px;
    margin-bottom: 24px;
  }

  .form-2025 .form-wrap .quest-wrap .quest-btn {
    display: block;
    margin-top: 8px;
  }

  .form-2025 .form-wrap .quest-wrap .quest-bx {
    top: 28px;
  }
}

@media screen and (max-width: 1024px) {
  .container .form-2025.join .form_layout .id_save {
    display: block;
  }
}

@media screen and (max-width: 768px) {
  .form-2025 .h2 {
    font-size: 2rem !important;
  }
  .form-2025 .h3 {
    font-size: 1.7142857143rem !important;
  }
  .form-2025 .h4 {
    font-size: 1.2857142857rem !important;
  }
  .form-2025 .h5,
  .form-2025 .text-tit,
  .form-2025.join .list-chk.all-chk + ul li span + b,
  .form-2025.join .list-chk.all-chk + ul li span,
  .form-2025 .form-wrap .form-group .form-label {
    font-size: 15px !important;
  }

  .form-2025 .text-lg,
  .form-2025 .policy .policy-sect {
    font-size: 16px !important;
  }
  .form-2025 .text-md {
    font-size: 14px !important;
  }

  .container .form-2025 .form_layout.login_form_layout {
    max-width: 360px;
  }
  .form-2025 .btn-wrap {
    flex-direction: column;
    margin-top: 30px;
    gap: 8px;
  }
  .form-2025 .btn-wrap .btn.sm,
  .form-2025 .btn {
    width: 100%;
    height: 48px;
    font-size: 15px;
  }
  .form-2025 form + .btn-wrap {
    margin-top: 24px;
  }

  .form-2025 .form-wrap .form-group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
    row-gap: 16px;
  }

  .form-2025 .form-wrap .form-sect + .form-sect {
    margin-top: 50px;
  }

  .form-2025 .form-wrap .form-sect:not(:has(.info-bx)) .form-tit {
    margin-bottom: 20px;
  }

  .form-2025 .form-wrap .form-group .datepicker input[type='date'] {
    height: 48px;
    text-align: left;
    line-height: 48px;
  }

  .form-2025 .form-wrap .form-group + .form-group {
    margin-top: 32px;
  }

  .form-2025 .form-wrap .form-group + .form-group.border-top {
    margin-top: 32px;
    padding-top: 16px;
  }

  .form-2025 .form-wrap .form-group .form-label:has(.quest-wrap) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    gap: 8px;
  }

  .form-2025 .form-wrap .form-group .form-control {
    font-size: 13px;
    padding: 14px !important;
  }

  .form-2025 .form-wrap .form-group .form-select {
    font-size: 13px;
  }

  .form-2025 .form-wrap .form-group .btn {
    padding: 10px 14px;
    min-width: 110px;
  }

  .form-2025 .form-wrap .form-group .time {
    right: 14px !important;
    font-size: 14px !important;
  }

  .form-2025.join .step1 .form-inline {
    flex-direction: column;
  }

  .form-2025 .form-wrap .form-group .email-wrap {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .form-2025 .form-wrap .form-group .email-wrap .form-control {
    flex: 1;
  }

  .form-2025 .form-wrap .form-group .email-wrap + .btn {
    margin-left: auto;
  }

  .form-2025 .profile-area {
    margin-bottom: 50px;
  }

  .form-2025 .profile-tit {
    font-size: 1.8rem !important;
    margin-bottom: 22px;
  }

  .form-2025 .profile-actions label {
    width: 100px;
    height: 100px;
  }

  .form-2025 .profile-actions label::after {
    width: 30px;
    height: 30px;
  }

  .form-2025.join .layer-wrap {
    padding: 80px 16px 16px 16px;
  }

  .form-2025.join .layer-wrap > div {
    width: 100%;
    padding: 24px 8px;
  }

  .form-2025.join .layer-wrap .layer-hd {
    margin-bottom: 20px;
    padding-left: 8px;
    padding-right: 8px;
  }

  .form-2025.join .layer-wrap .layer-body {
    max-height: 100%;
    overflow-y: auto;
    padding-left: 8px;
    padding-right: 8px;
  }

  .form-2025 .tb .tb-hd {
    display: none;
  }

  .form-2025 .policy .tb-wrap {
    overflow-x: scroll;
  }

  .form-2025 .policy .tb-wrap .tb {
    min-width: 600px;
  }

  .form-2025.join .step2 .pw-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0;
  }

  .form-2025 .form-wrap .familysite-wrap .familysite li i {
    width: 64px;
    height: 64px;
  }

  .form-2025 .form-wrap .quest-wrap {
    display: inline-block;
  }

  .form-2025 .form-wrap .quest-wrap .quest-btn {
    display: inline-block;
  }

  .form-2025 .form-wrap .quest-wrap .quest-bx {
    left: -50px;
  }

  .form-2025 .form-wrap .form-sect:has(.info-bx) .form-tit {
    margin-bottom: 16px;
  }
}

@media (max-width: 820.98px) and (max-width: 575.98px) {
  .form-2025 .form-wrap .form-group .email-wrap .form-select {
    width: 100%;
    flex: auto;
  }
}

@media (max-width: 575.98px) {
  .form-2025 .form-wrap .form-group .form-inline:has(.email-wrap) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
  }
}

@media (max-width: 390px) {
  .form-2025 .form-wrap .form-group .form-inline {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
