/* ### layout ### */
.login-section {
  padding: calc(calc(100vh - calc(354px + calc(68px * 2))) / 2) 0;
}

/* ### title ### */
.login-section .onepage-title {
  text-align: center;
}
.login-section .onepage-title img {
  width: 83px;
  filter: invert(57%) sepia(54%) saturate(4791%) hue-rotate(205deg) brightness(93%) contrast(98%);
}

/* --- 학교/학원 로그인 --- */
.custom-login-type-text {
  margin: 0 0 25px;
  text-align: center;
}
.custom-login-type-text strong.active {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  line-height: 1em;
  font-weight: 800;
  font-size: 36px;
}
.custom-login-type-text strong i {
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  font-weight: 400;
  font-size: 24px;
}
.custom-login-type-text strong#academyLogin i {
  background: var(--point-light);
  color: var(--point);
}
.custom-login-type-text strong#schoolLogin i {
  background: var(--ct-warning-lighten);
  color: var(--ct-warning);
}

/* ### 탭버튼 ### */
.custom-type-btnNav, .custom-type-btnNav:hover {
  height: 40px;
  line-height: 40px;
}

/* ### 비밀번호 ### */
.custom-input-box-pw {
  margin-bottom: 7px;  
}

/* ### 아이디 저장 ### */
#rememberMe {
  width: 20px;
  height: 20px;
  vertical-align: middle;
  border: 1px solid var(--ct-border-color);
  background-position: center center;
  background-size: 21px 21px;
  border-radius: 4px;
  -webkit-appearance: none;
  cursor: pointer;
}
#rememberMe:checked {
  border-color: var(--point);
  background-image: url("/img/jstree-check-on-point.png");
}
.custom-remember label {
  display: inline-block;
  padding-left: 1px;
  transform: translateY(2px);
  font-weight: 400;
  color: var(--ct-secondary);
  cursor: pointer;
}

/* ################ RESPONSIVE ################# */
@media (max-width: 767.98px) {
  [class *= '-inner'].login-section-inner {
    position: absolute;
    width: calc(100% - calc(var(--mobile-pd) * 2));
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .login-section .onepage-title img {
    width: 83px;
  }
  .custom-login-type-text {
    margin: 0 0 15px;
    padding: 5px 0 0;
  }
  .custom-login-type-text strong.active {
    font-size: 26px;
  }
}