@charset "UTF-8";

/* 버튼 / 링크 */
/* icon 버튼 사이즈 */
.btn {
  --button--size-height-xsmall: var(--size-height-5);
  --button--padding-x-xsmall: var(--padding-4);
  --button--padding-y-xsmall: 0;
  --button--gap-xsmall: var(--gap-1);
  --button--radius-xsmall: var(--radius-small3);
  --button--pc-font-size-xsmall: var(--pc-font-size-label-small);
  --button--mobile-font-size-xsmall: var(--mobile-font-size-label-small);
  --button--font-weight-xsmall: var(--font-weight-regular);
  --button--size-height-small: var(--size-height-6);
  --button--padding-x-small: var(--padding-5);
  --button--padding-y-small: 0;
  --button--gap-small: var(--gap-1);
  --button--radius-small: var(--radius-medium1);
  --button--pc-font-size-small: var(--pc-font-size-label-small);
  --button--mobile-font-size-small: var(--mobile-font-size-label-small);
  --button--font-weight-small: var(--font-weight-regular);
  --button--size-height-medium: var(--size-height-7);
  --button--padding-x-medium: var(--padding-6);
  --button--padding-y-medium: 0;
  --button--gap-medium: var(--gap-2);
  --button--radius-medium: var(--radius-medium2);
  --button--pc-font-size-medium: var(--pc-font-size-label-medium);
  --button--mobile-font-size-medium: var(--mobile-font-size-label-medium);
  --button--font-weight-medium: var(--font-weight-regular);
  --button--size-height-large: var(--size-height-8);
  --button--padding-x-large: var(--padding-7);
  --button--padding-y-large: 0;
  --button--gap-large: var(--gap-2);
  --button--radius-large: var(--radius-medium3);
  --button--pc-font-size-large: var(--pc-font-size-label-large);
  --button--mobile-font-size-large: var(--mobile-font-size-label-large);
  --button--font-weight-large: var(--font-weight-regular);
  --button--size-height-xlarge: var(--size-height-9);
  --button--padding-x-xlarge: var(--padding-8);
  --button--padding-y-xlarge: 0;
  --button--gap-xlarge: var(--gap-2);
  --button--radius-xlarge: var(--radius-medium4);
  --button--pc-font-size-xlarge: var(--pc-font-size-label-large);
  --button--mobile-font-size-xlarge: var(--mobile-font-size-label-large);
  --button--font-weight-xlarge: var(--font-weight-regular);
}

.btn {
  gap: var(--button--gap-large);
  height: var(--button--size-height-large);
  padding: var(--button--padding-y-large) var(--button--padding-x-large);
  border-radius: var(--button--radius-large);
  font-size: var(--button--pc-font-size-large);
  font-weight: var(--button--font-weight-large);
}

@media (max-width: 767px) {
  .btn {
    font-size: var(--button--mobile-font-size-large);
  }
}

.btn .svg-icon {
  width: var(--icon--size-large);
  height: var(--icon--size-large);
}

.btn.xsmall {
  gap: var(--button--gap-xsmall);
  height: var(--button--size-height-xsmall);
  padding: var(--button--padding-y-xsmall) var(--button--padding-x-xsmall);
  border-radius: var(--button--radius-xsmall);
  font-size: var(--button--pc-font-size-xsmall);
  font-weight: var(--button--font-weight-xsmall);
}

.btn.xxsmall {
  gap: var(--button--gap-xsmall);
  height: 2.4rem;
  padding: var(--button--padding-y-xsmall) var(--button--padding-x-xsmall);
  border-radius: var(--button--radius-xsmall);
  font-size: var(--button--pc-font-size-xsmall);
  font-weight: var(--button--font-weight-xsmall);
}

@media (max-width: 767px) {
  .btn.xsmall {
    font-size: var(--button--mobile-font-size-xsmall);
  }
}

.btn.xsmall .svg-icon,
.btn.xxsmall .svg-icon {
  width: var(--icon--size-xsmall);
  height: var(--icon--size-xsmall);
}

.btn.small {
  gap: var(--button--gap-small);
  height: var(--button--size-height-small);
  padding: var(--button--padding-y-small) var(--button--padding-x-small);
  border-radius: var(--button--radius-small);
  font-size: var(--button--pc-font-size-small);
  font-weight: var(--button--font-weight-small);
}

@media (max-width: 767px) {
  .btn.small {
    font-size: var(--button--mobile-font-size-small);
  }
}

.btn.small .svg-icon {
  width: var(--icon--size-small);
  height: var(--icon--size-small);
}

.btn.medium {
  gap: var(--button--gap-medium);
  height: var(--button--size-height-medium);
  padding: var(--button--padding-y-medium) var(--button--padding-x-medium);
  border-radius: var(--button--radius-medium);
  font-size: var(--button--pc-font-size-medium);
  font-weight: var(--button--font-weight-medium);
}

@media (max-width: 767px) {
  .btn.medium {
    font-size: var(--button--mobile-font-size-medium);
  }
}

.btn.medium .svg-icon {
  width: var(--icon--size-medium);
  height: var(--icon--size-medium);
}

.btn.large {
  gap: var(--button--gap-large);
  height: var(--button--size-height-large);
  padding: var(--button--padding-y-large) var(--button--padding-x-large);
  border-radius: var(--button--radius-large);
  font-size: var(--button--pc-font-size-large);
  font-weight: var(--button--font-weight-large);
}

@media (max-width: 767px) {
  .btn.large {
    font-size: var(--button--mobile-font-size-large);
  }
}

.btn.large .svg-icon {
  width: var(--icon--size-large);
  height: var(--icon--size-large);
}

.btn.xlarge {
  gap: var(--button--gap-xlarge);
  height: var(--button--size-height-xlarge);
  padding: var(--button--padding-y-xlarge) var(--button--padding-x-xlarge);
  border-radius: var(--button--radius-xlarge);
  font-size: var(--button--pc-font-size-xlarge);
  font-weight: var(--button--font-weight-xlarge);
}

@media (max-width: 767px) {
  .btn.xlarge {
    font-size: var(--button--mobile-font-size-xlarge);
  }
}

.btn.xlarge .svg-icon {
  width: var(--icon--size-xlarge);
  height: var(--icon--size-xlarge);
}

.btn {
  --button--color-primary-fill: var(--light-color-button-primary-fill);
  --button--color-primary-fill-hover: var(--light-color-button-primary-fill-hover);
  --button--color-primary-fill-pressed: var(--light-color-button-primary-fill-pressed);
  --button--color-primary-fill-disabled: var(--light-color-button-disabled-fill);
  --button--color-primary-border: var(--light-color-button-primary-fill);
  --button--color-primary-border-disabled: var(--light-color-button-disabled-border);
  --button--color-primary-text: var(--light-color-text-inverse-static);
  --button--color-primary-text-disabled: var(--light-color-text-disabled-on);
  --button--color-secondary-fill: var(--light-color-button-secondary-fill);
  --button--color-secondary-fill-hover: var(--light-color-button-secondary-fill-hover);
  --button--color-secondary-fill-pressed: var(--light-color-button-secondary-fill-pressed);
  --button--color-secondary-fill-disabled: var(--light-color-button-disabled-fill);
  --button--color-secondary-border: var(--light-color-button-secondary-border);
  --button--color-secondary-border-disabled: var(--light-color-button-disabled-border);
  --button--color-secondary-text: var(--light-color-text-primary);
  --button--color-secondary-text-disabled: var(--light-color-text-disabled-on);
  --button--color-tertiary-fill: var(--light-color-button-tertiary-fill);
  --button--color-tertiary-fill-hover: var(--light-color-button-tertiary-fill-hover);
  --button--color-tertiary-fill-pressed: var(--light-color-button-tertiary-fill-pressed);
  --button--color-tertiary-fill-disabled: var(--light-color-button-disabled-fill);
  --button--color-tertiary-border: var(--light-color-button-tertiary-border);
  --button--color-tertiary-border-disabled: var(--light-color-button-disabled-border);
  --button--color-tertiary-text: var(--light-color-text-basic);
  --button--color-tertiary-text-disabled: var(--light-color-text-disabled-on);
  --button--color-text-fill: var(--light-color-button-text-fill);
  --button--color-text-fill-hover: var(--light-color-button-text-fill-hover);
  --button--color-text-fill-pressed: var(--light-color-button-text-fill-pressed);
  --button--color-text-fill-disabled: var(--light-color-button-text-fill);
  --button--color-text-border: var(--light-color-button-text-border);
  --button--color-text-border-disabled: var(--light-color-border-transparency);
  --button--color-text-text: var(--light-color-text-basic);
  --button--color-text-text-disabled: var(--light-color-text-disabled);
  --button--color-link-fill: var(--light-color-button-text-fill);
  --button--color-link-fill-hover: var(--light-color-button-text-fill);
  --button--color-link-fill-pressed: var(--light-color-button-text-fill);
  --button--color-link-fill-disabled: var(--light-color-button-text-fill);
  --button--color-link-border: var(--light-color-button-text-border);
  --button--color-link-border-disabled: var(--light-color-border-transparency);
  --button--color-link-text: var(--light-color-link-default);
  --button--color-link-text-disabled: var(--light-color-text-disabled);
  /* icon 버튼 (텍스트 없음) */
}

.btn {
  background-color: var(--button--color-primary-fill);
  border-color: var(--button--color-primary-border);
  color: var(--button--color-primary-text);
}

.btn.primary {
  background-color: var(--button--color-primary-fill);
  border-color: var(--button--color-primary-border);
  color: var(--button--color-primary-text);
}

.btn.primary:not(.icon) .svg-icon {
  background-color: var(--button--color-primary-text);
}

.btn.primary:hover {
  background-color: var(--button--color-primary-fill-hover);
}

.btn.primary:active,
.btn.primary:focus {
  background-color: var(--button--color-primary-fill-pressed);
}

.btn.primary[disabled],
.btn.primary.disabled {
  background-color: var(--button--color-primary-fill-disabled);
  border-color: var(--button--color-primary-border-disabled);
  color: var(--button--color-primary-text-disabled);
}

.btn.primary[disabled]:not(.icon) .svg-icon,
.btn.primary.disabled:not(.icon) .svg-icon {
  background-color: var(--button--color-primary-text-disabled);
}

.btn.primary[disabled]:hover,
.btn.primary.disabled:hover {
  background-color: var(--button--color-primary-fill-disabled);
  border-color: var(--button--color-primary-border-disabled);
  color: var(--button--color-primary-text-disabled);
}

.btn.secondary {
  background-color: var(--button--color-secondary-fill);
  border-color: var(--button--color-secondary-border);
  color: var(--button--color-secondary-text);
}

.btn.secondary:not(.icon) .svg-icon {
  background-color: var(--button--color-secondary-text);
}

.btn.secondary:hover {
  background-color: var(--button--color-secondary-fill-hover);
}

.btn.secondary:active,
.btn.secondary:focus {
  background-color: var(--button--color-secondary-fill-pressed);
}

.btn.secondary[disabled],
.btn.secondary.disabled {
  background-color: var(--button--color-secondary-fill-disabled);
  border-color: var(--button--color-secondary-border-disabled);
  color: var(--button--color-secondary-text-disabled);
}

.btn.secondary[disabled]:not(.icon) .svg-icon,
.btn.secondary.disabled:not(.icon) .svg-icon {
  background-color: var(--button--color-secondary-text-disabled);
}

.btn.secondary[disabled]:hover,
.btn.secondary.disabled:hover {
  background-color: var(--button--color-secondary-fill-disabled);
  border-color: var(--button--color-secondary-border-disabled);
  color: var(--button--color-secondary-text-disabled);
}

.btn.tertiary {
  background-color: var(--button--color-tertiary-fill);
  border-color: var(--button--color-tertiary-border);
  color: var(--button--color-tertiary-text);
}

.btn.tertiary:not(.icon) .svg-icon {
  background-color: var(--button--color-tertiary-text);
}

.btn.tertiary:hover {
  background-color: var(--button--color-tertiary-fill-hover);
}

.btn.tertiary:active,
.btn.tertiary:focus {
  background-color: var(--button--color-tertiary-fill-pressed);
}

.btn.tertiary[disabled],
.btn.tertiary.disabled {
  background-color: var(--button--color-tertiary-fill-disabled);
  border-color: var(--button--color-tertiary-border-disabled);
  color: var(--button--color-tertiary-text-disabled);
}

.btn.tertiary[disabled]:not(.icon) .svg-icon,
.btn.tertiary.disabled:not(.icon) .svg-icon {
  background-color: var(--button--color-tertiary-text-disabled);
}

.btn.tertiary[disabled]:hover,
.btn.tertiary.disabled:hover {
  background-color: var(--button--color-tertiary-fill-disabled);
  border-color: var(--button--color-tertiary-border-disabled);
  color: var(--button--color-tertiary-text-disabled);
}

.btn.danger {
  background-color: var(--color-danger-10);
  border-color: var(--color-danger-60);
  color: var(--color-danger-60);
}

.btn.danger:not(.icon) .svg-icon {
  background-color: var(--button--color-primary-text);
}

.btn.danger:hover {
  background-color: var(--color-danger-20);
  color: var(--color-danger-80);
}

.btn.danger:active,
.btn.danger:focus {
  background-color: var(--color-danger-10);
}

.btn.danger[disabled],
.btn.danger.disabled {
  background-color: var(--button--color-primary-fill-disabled);
  border-color: var(--button--color-primary-border-disabled);
  color: var(--button--color-primary-text-disabled);
}

.btn.danger[disabled]:not(.icon) .svg-icon,
.btn.danger.disabled:not(.icon) .svg-icon {
  background-color: var(--button--color-primary-text-disabled);
}

.btn.danger[disabled]:hover,
.btn.danger.disabled:hover {
  background-color: var(--button--color-primary-fill-disabled);
  border-color: var(--button--color-primary-border-disabled);
  color: var(--button--color-primary-text-disabled);
}

.btn.text {
  background-color: var(--button--color-text-fill);
  border-color: var(--button--color-text-border);
  color: var(--button--color-text-text);
}

.btn.text:not(.icon) .svg-icon {
  background-color: var(--button--color-text-text);
}

.btn.text:hover {
  background-color: var(--button--color-text-fill-hover);
}

.btn.text:active,
.btn.text:focus {
  background-color: var(--button--color-text-fill-pressed);
}

.btn.text[disabled],
.btn.text.disabled {
  background-color: var(--button--color-text-fill-disabled);
  border-color: var(--button--color-text-border-disabled);
  color: var(--button--color-text-text-disabled);
}

.btn.text[disabled]:not(.icon) .svg-icon,
.btn.text.disabled:not(.icon) .svg-icon {
  background-color: var(--button--color-text-text-disabled);
}

.btn.text[disabled]:hover,
.btn.text.disabled:hover {
  background-color: var(--button--color-text-fill-disabled);
  border-color: var(--button--color-text-border-disabled);
  color: var(--button--color-text-text-disabled);
}

.btn.link {
  background-color: var(--button--color-link-fill);
  border-color: var(--button--color-link-border);
  color: var(--button--color-link-text);
}

.btn.link:not(.icon) .svg-icon {
  background-color: var(--button--color-link-text);
}

.btn.link:hover {
  background-color: var(--button--color-link-fill-hover);
}

.btn.link:active,
.btn.link:focus {
  background-color: var(--button--color-link-fill-pressed);
}

.btn.link[disabled],
.btn.link.disabled {
  background-color: var(--button--color-link-fill-disabled);
  border-color: var(--button--color-link-border-disabled);
  color: var(--button--color-link-text-disabled);
}

.btn.link[disabled]:not(.icon) .svg-icon,
.btn.link.disabled:not(.icon) .svg-icon {
  background-color: var(--button--color-link-text-disabled);
}

.btn.link[disabled]:hover,
.btn.link.disabled:hover {
  background-color: var(--button--color-link-fill-disabled);
  border-color: var(--button--color-link-border-disabled);
  color: var(--button--color-link-text-disabled);
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  width: auto;
  border-style: solid;
  cursor: pointer;
  white-space: nowrap;
  transition: var(--transition-base);
  border-width: var(--light-border-width-variable-regular);
}

.btn .svg-icon {
  background-color: var(--button--color-primary-text);
  transition: var(--transition-base);
}

.btn:hover {
  background-color: var(--button--color-primary-fill-hover);
}

.btn:active,
.btn:focus {
  background-color: var(--button--color-primary-fill-pressed);
}

.btn[disabled],
.btn.disabled {
  background-color: var(--button--color-primary-fill-disabled);
  border-color: var(--button--color-primary-border-disabled);
  color: var(--button--color-primary-text-disabled);
  cursor: default;
}

.btn[disabled]:hover,
.btn.disabled:hover {
  background-color: var(--button--color-primary-fill-disabled);
  border-color: var(--button--color-primary-border-disabled);
  color: var(--button--color-primary-text-disabled);
}

.btn.text {
  --button--size-height-xsmall: var(--size-height-3);
  --button--padding-x-xsmall: var(--padding-1);
  --button--padding-y-xsmall: var(--number-0);
  --button--size-height-small: var(--size-height-4);
  --button--padding-x-small: var(--padding-1);
  --button--padding-y-small: var(--number-0);
  --button--size-height-medium: var(--size-height-5);
  --button--padding-x-medium: var(--padding-1);
  --button--padding-y-medium: var(--number-2);
  --button--size-height-large: var(--size-height-6);
  --button--padding-x-large: var(--padding-1);
  --button--padding-y-large: 0.5rem;
  --button--size-height-xlarge: var(--size-height-7);
  --button--padding-x-xlarge: var(--padding-1);
  --button--padding-y-xlarge: 0.9rem;
  display: inline-block;
  height: auto !important;
  padding: var(--button--padding-y-large) var(--button--padding-x-large);
  text-align: left;
  white-space: normal;
}

.btn.text.xsmall {
  min-height: var(--button--size-height-xsmall);
  padding: var(--button--padding-y-xsmall) var(--button--padding-x-xsmall);
}

.btn.text.xsmall .svg-icon {
  margin-bottom: -0.3rem;
}

.btn.text.small {
  padding: var(--button--padding-y-small) var(--button--padding-x-small);
}

.btn.text.small .svg-icon {
  margin-bottom: -0.3rem;
}

.btn.text.medium {
  padding: var(--button--padding-y-medium) var(--button--padding-x-medium);
}

.btn.text.medium .svg-icon {
  margin-bottom: -0.4rem;
}

.btn.text.large {
  padding: var(--button--padding-y-large) var(--button--padding-x-large);
}

.btn.text.large .svg-icon {
  margin-bottom: -0.5rem;
}

.btn.text.xlarge {
  padding: var(--button--padding-y-xlarge) var(--button--padding-x-xlarge);
}

.btn.text.xlarge .svg-icon {
  margin-bottom: -0.6rem;
}

.btn.text.h-auto {
  height: auto;
  padding: var(--padding-1) !important;
}

.btn.text .svg-icon {
  display: inline-block;
  margin-bottom: -0.5rem;
}

.btn.link {
  --button--pc-font-size-xsmall: var(--pc-font-size-label-small);
  --button--mobile-font-size-xsmall: var(--mobile-font-size-label-small);
  --button--padding-x-xsmall: var(--padding-1);
  --button--pc-font-size-small: var(--pc-font-size-label-small);
  --button--mobile-font-size-small: var(--mobile-font-size-label-small);
  --button--padding-x-small: var(--padding-1);
  --button--pc-font-size-medium: var(--pc-font-size-label-medium);
  --button--mobile-font-size-medium: var(--mobile-font-size-label-medium);
  --button--padding-x-medium: var(--padding-1);
  --button--pc-font-size-large: var(--pc-font-size-label-large);
  --button--mobile-font-size-large: var(--mobile-font-size-label-large);
  --button--padding-x-large: var(--padding-1);
  --button--pc-font-size-xlarge: var(--pc-font-size-label-large);
  --button--mobile-font-size-xlarge: var(--mobile-font-size-label-large);
  --button--padding-x-xlarge: var(--padding-1);
  display: inline-block;
  height: auto !important;
  padding: 0 var(--button--padding-x-large);
  font-size: var(--button--pc-font-size-large);
  text-align: left;
  white-space: normal;
}

@media (max-width: 767px) {
  .btn.link {
    font-size: var(--button--mobile-font-size-large);
  }
}

.btn.link.xsmall {
  padding: 0 var(--button--padding-x-xsmall);
  font-size: var(--button--pc-font-size-xsmall);
}

@media (max-width: 767px) {
  .btn.link.xsmall {
    font-size: var(--button--mobile-font-size-xsmall);
  }
}

.btn.link.xsmall .svg-icon {
  margin-bottom: -0.3rem;
}

.btn.link.small {
  padding: 0 var(--button--padding-x-small);
  font-size: var(--button--pc-font-size-small);
}

@media (max-width: 767px) {
  .btn.link.small {
    font-size: var(--button--mobile-font-size-small);
  }
}

.btn.link.small .svg-icon {
  margin-bottom: -0.3rem;
}

.btn.link.medium {
  padding: 0 var(--button--padding-x-medium);
  font-size: var(--button--pc-font-size-medium);
}

@media (max-width: 767px) {
  .btn.link.medium {
    font-size: var(--button--mobile-font-size-medium);
  }
}

.btn.link.medium .svg-icon {
  margin-bottom: -0.4rem;
}

.btn.link.large {
  padding: 0 var(--button--padding-x-large);
  font-size: var(--button--pc-font-size-large);
}

@media (max-width: 767px) {
  .btn.link.large {
    font-size: var(--button--mobile-font-size-large);
  }
}

.btn.link.large .svg-icon {
  margin-bottom: -0.5rem;
}

.btn.link.xlarge {
  padding: 0 var(--button--padding-x-xlarge);
  font-size: var(--button--pc-font-size-xlarge);
}

@media (max-width: 767px) {
  .btn.link.xlarge {
    font-size: var(--button--mobile-font-size-xlarge);
  }
}

.btn.link.xlarge .svg-icon {
  margin-bottom: -0.6rem;
}

.btn.link.basic {
  color: var(--light-color-text-basic);
}

.btn.link.basic .svg-icon {
  background-color: var(--light-color-text-basic);
}

.btn.link.basic.pure:hover,
.btn.link.basic.pure:active,
.btn.link.basic.pure:focus,
.btn.link.basic.pure:visited {
  color: var(--light-color-text-basic);
}

.btn.link.basic.pure:hover .svg-icon,
.btn.link.basic.pure:active .svg-icon,
.btn.link.basic.pure:focus .svg-icon,
.btn.link.basic.pure:visited .svg-icon {
  background-color: var(--light-color-text-basic);
}

.btn.link:hover {
  color: var(--light-color-link-hover);
}

.btn.link:hover .svg-icon {
  background-color: var(--light-color-link-hover);
}

.btn.link:active,
.btn.link:focus {
  color: var(--light-color-link-pressed);
}

.btn.link:active .svg-icon,
.btn.link:focus .svg-icon {
  background-color: var(--light-color-link-pressed);
}

.btn.link:visited {
  color: var(--light-color-link-visited);
  text-decoration: none;
}

.btn.link:visited .svg-icon {
  background-color: var(--light-color-link-visited);
}

.btn.link.pure:hover,
.btn.link.pure:active,
.btn.link.pure:focus,
.btn.link.pure:visited {
  color: var(--button--color-link-text);
}

.btn.link.pure:hover .svg-icon,
.btn.link.pure:active .svg-icon,
.btn.link.pure:focus .svg-icon,
.btn.link.pure:visited .svg-icon {
  background-color: var(--button--color-link-text);
}

.btn.link .underline.hidden-underline {
  text-decoration-color: var(--light-color-border-transparency);
  transition: var(--transition-base);
}

.btn.link:hover .underline.hidden-underline,
.btn.link:active .underline.hidden-underline,
.btn.link:focus .underline.hidden-underline,
.btn.link:visited .underline.hidden-underline {
  text-decoration-color: inherit;
}

.btn.link .svg-icon {
  display: inline-block;
  margin-bottom: -0.5rem;
}

.btn.icon {
  --button--icon-size-xsmall: var(--size-height-2);
  --button--icon-size-small: var(--size-height-3);
  --button--icon-size-medium: var(--size-height-4);
  --button--icon-size-large: var(--size-height-5);
  --button--icon-size-xlarge: var(--size-height-6);
  width: var(--button--icon-size-medium);
  height: var(--button--icon-size-medium);
  padding: 0 !important;
  background-color: transparent;
  border-color: var(--light-color-border-transparency);
  color: inherit;
  border: 0;
}

.btn.icon:hover,
.btn.icon:active {
  background-color: inherit;
}

.btn.icon.xsmall {
  width: var(--button--icon-size-xsmall);
  height: var(--button--icon-size-xsmall);
}

.btn.icon.xsmall .svg-icon {
  width: 100%;
  height: 100%;
}

.btn.icon.small {
  width: var(--button--icon-size-small);
  height: var(--button--icon-size-small);
}

.btn.icon.small .svg-icon {
  width: 100%;
  height: 100%;
}

.btn.icon.medium {
  width: var(--button--icon-size-medium);
  height: var(--button--icon-size-medium);
}

.btn.icon.medium .svg-icon {
  width: 100%;
  height: 100%;
}

.btn.icon.large {
  width: var(--button--icon-size-large);
  height: var(--button--icon-size-large);
}

.btn.icon.large .svg-icon {
  width: 100%;
  height: 100%;
}

.btn.icon.xlarge {
  width: var(--button--icon-size-xlarge);
  height: var(--button--icon-size-xlarge);
}

.btn.icon.xlarge .svg-icon {
  width: 100%;
  height: 100%;
}

.btn.icon .svg-icon {
  background-color: var(--light-color-text-basic);
}

.btn.icon.pure .svg-icon {
  background-color: transparent;
}

.btn.icon.border {
  background-color: var(--light-color-background-white);
  border: 0.1rem solid var(--light-color-border-gray);
  border-radius: var(--radius-max);
}

.btn.icon.border.large .svg-icon {
  width: var(--icon--size-xsmall);
  height: var(--icon--size-xsmall);
}

.btn.icon.border.xlarge .svg-icon {
  width: var(--icon--size-xlarge);
  height: var(--icon--size-xlarge);
}

.btn.icon.border[disabled],
.btn.icon.border.disabled {
  background-color: var(--light-color-button-disabled-fill);
}

/* **** button area **** */
.btn-wrap {
  width: 100%;
}

/* 탭 */
.tab-area {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  gap: var(--gap-8);
  width: 100%;
}

@media (max-width: 767px) {
  .tab-area {
    gap: var(--gap-8);
  }
}

.tab {
  --tab--button-size-height: var(--size-height-7);
  --tab--button-size-min-width: 6.4rem;
  --tab--button-pc-font-size: var(--pc-font-size-heading-xsmall);
  --tab--button-mobile-font-size: var(--mobile-font-size-heading-xsmall);
  --tab--gap: var(--gap-3);
  --tab--full-button-size-height: var(--size-height-8);
  --tab--full-button-pc-font-size: var(--pc-font-size-heading-small);
  --tab--full-button-mobile-font-size: var(--mobile-font-size-heading-small);
  --tab--line-button-padding: var(--padding-2);
  --tab--fill-button-padding: var(--padding-3);
  --tab--fill-button-radius: var(--radius-medium2);
  --tab--conts-padding-top: var(--padding-10);
  --tab--mobile-button-trigger-size-height: var(--size-height-7);
  --tab--mobile-button-trigger-padding-x: var(--padding-6);
  --tab--mobile-button-trigger-radius: var(--radius-medium1);
  --tab--button-color-action: var(--light-color-action-secondary);
  --tab--button-color-action-hover: var(--light-color-action-secondary-hover);
  --tab--button-color-action-pressed: var(--light-color-action-secondary-pressed);
  --tab--button-color-border: var(--light-color-action-secondary);
  --tab--button-color-text: var(--light-color-text-subtle);
  --tab--button-color-text-disabled: var(--light-color-text-disabled);
  --tab--fill-button-color-action-active: var(--light-color-action-secondary-active);
  --tab--fill-button-color-border: var(--light-color-border-gray);
  --tab--fill-button-color-border-active: var(--light-color-action-secondary-active);
  --tab--fill-button-color-text: var(--light-color-text-inverse-static);
  --tab--line-button-color-border: var(--light-color-border-gray);
  --tab--line-button-color-line-active: var(--light-color-action-secondary-active);
  --tab--line-button-color-text-active: var(--light-color-text-secondary);
  --tab--mobile-button-trigger-color-text: var(--light-color-text-inverse-static);
  --tab--mobile-button-trigger-color-action: var(--light-color-action-secondary-active);
}

.tab>ul {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  gap: var(--tab--gap);
  overflow-x: auto;
  width: 100%;
}

.tab li,
.tab .btn-tab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  position: relative;
  white-space: nowrap;
}

.tab .btn-tab {
  width: 100%;
  height: var(--tab--button-size-height);
  background-color: var(--tab--button-color-action);
  border: 1px solid var(--tab--button-color-border);
  font-size: var(--tab--button-pc-font-size);
  color: var(--tab--button-color-text);
  font-weight: var(--font-weight-bold);
  transition: var(--transition-base);
}

@media (max-width: 767px) {
  .tab .btn-tab {
    font-size: var(--tab--button-mobile-font-size);
  }
}

.tab .btn-tab:not(:disabled):hover {
  background-color: var(--tab--button-color-action-hover);
  transition: var(--transition-base);
}

.tab .btn-tab:not(:disabled):active {
  background-color: var(--tab--button-color-action-pressed);
  transition: var(--transition-base);
}

.tab .btn-tab:focus {
  box-shadow: var(--box-shadow-outline-inset);
  outline-offset: -0.4rem;
}

.tab .btn-tab[disabled] {
  color: var(--tab--button-color-text-disabled);
  cursor: default;
}

.tab li {
  flex-grow: 0;
}

.tab.full {
  width: 100%;
}

.tab.full .btn-tab {
  height: var(--tab--full-button-size-height);
  padding: 0;
  font-size: var(--tab--full-button-pc-font-size);
}

@media (max-width: 767px) {
  .tab.full .btn-tab {
    font-size: var(--tab--full-button-mobile-font-size);
  }
}

.tab.full>ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  position: relative;
  width: 100%;
  gap: 0;
}

.tab.full>ul>li {
  flex: 1 1 0px;
  min-width: 0;
}

.tab.fill .btn-tab {
  padding: 0 var(--tab--fill-button-padding);
  border-radius: var(--tab--fill-button-radius);
}

.tab.fill .btn-tab:focus {
  box-shadow: inset 0 0 0 0.6rem var(--light-color-border-primary);
  outline-offset: -0.4rem;
}

.tab.fill .active .btn-tab {
  background-color: var(--tab--fill-button-color-action-active);
  border-color: var(--tab--fill-button-color-border-active) !important;
  color: var(--tab--fill-button-color-text);
}

.tab.fill.full .btn-tab {
  border-color: var(--tab--fill-button-color-border);
}

.tab.fill.full>ul>li+li .btn-tab {
  border-left: none;
}

.tab.fill.full>ul>li .btn-tab {
  border-radius: 0;
}

.tab.fill.full>ul>li:first-of-type .btn-tab {
  border-top-left-radius: var(--tab--fill-button-radius);
  border-bottom-left-radius: var(--tab--fill-button-radius);
}

.tab.fill.full>ul>li:last-of-type .btn-tab {
  border-top-right-radius: var(--tab--fill-button-radius);
  border-bottom-right-radius: var(--tab--fill-button-radius);
}

.tab.line .btn-tab {
  min-width: var(--tab--button-size-min-width);
  padding: 0 var(--tab--line-button-padding);
}

.tab.line .btn-tab:before {
  position: absolute;
  bottom: 0;
  left: 50%;
  content: "";
  width: 0;
  height: 0.4rem;
  background-color: var(--tab--line-button-color-line-active);
  transition: var(--transition-base);
}

.tab.line .active .btn-tab {
  color: var(--tab--line-button-color-text-active);
}

.tab.line .active .btn-tab:before {
  position: absolute;
  left: 0;
  width: 100%;
}

.tab.line.full .btn-tab {
  border: 0;
  border-bottom: 2px solid var(--tab--line-button-color-border);
}

.tab.line.full .btn-tab:before {
  bottom: -0.2rem;
}

.tab-conts-wrap {
  width: 100%;
}

.tab-conts {
  display: none;
  margin-top: var(--tab--conts-padding-top);
}

.tab-conts.active {
  display: flex;
  align-items: normal;
  justify-content: flex-start;
  flex-direction: column;
}

@media (max-width: 767px) {
  .tab-conts.active {
    gap: var(--padding-8);
  }

  .tab.fill.full .btn-tab {
    border-color: var(--tab--fill-button-color-border);
    padding: 0 var(--padding-5);
    border-width: 0;
  }

  .tab.fill.full>ul {
    gap: var(--gap-3);
    flex-wrap: nowrap;
  }

  .tab.fill.full>ul>li {
    width: fit-content;
    flex: none;
  }

  .tab.fill.full>ul>li .btn-tab {
    border-radius: var(--tab--fill-button-radius);
  }
}

/* 표 */
.table-wrap {
  --table--data-thead-th-padding: var(--padding-3);
  --table--data-thead-th-padding-sides: var(--padding-6);
  --table--data-thead-pc-font-size: var(--pc-font-size-heading-xsmall);
  --table--data-thead-mobile-font-size: var(--mobile-font-size-heading-xxsmall);
  --table--data-tbody-pc-font-size: var(--pc-font-size-label-medium);
  --table--data-tbody-mobile-font-size: var(--mobile-font-size-label-medium);
  --table--data-tbody-padding: var(--padding-5);
  --table--data-tbody-padding-sides: var(--padding-6);
  --table--data-border-width: var(--light-border-width-variable-regular);
  --table--data-thead-border: var(--light-color-border-secondary-light);
  --table--data-thead-surface: var(--light-color-surface-secondary-subtler);
  --table--data-thead-color-text: var(--light-color-text-bolder);
  --table--data-tbody-color-surface: var(--light-color-surface-white-subtle);
  --table--data-tbody-color-divider: var(--light-color-divider-gray-light);
  --table--data-tbody-color-text: var(--light-color-text-subtle);
  width: 100%;
}

.table-wrap .tbl.data th,
.table-wrap .tbl.data td {
  vertical-align: middle;
}

.table-wrap .tbl.data thead th {
    padding: var(--table--data-thead-th-padding) var(--table--data-thead-th-padding-sides);
    background-color: var(--table--data-thead-surface);
    border-bottom: var(--table--data-border-width) solid var(--table--data-thead-border);
    font-weight: var(--font-weight-bold);
    font-size: var(--table--data-thead-pc-font-size);
    color: var(--table--data-thead-color-text);
    text-align: center;
}

.table-wrap .tbl.data td.left {
  text-align: left;
}
.table-wrap.word-break-all {
  word-break: break-all;
}
@media (max-width: 767px) {
  .table-wrap {
    overflow-x: auto;
    width: calc(100vw - var(--contents-padding-x)* 2);
  }
  .table-wrap .tbl {
    min-width: 73.2rem;
  }
  .table-wrap .tbl.data thead th {
    font-size: var(--table--data-thead-mobile-font-size);
  }

  /* 스크롤 없이 */
  .table-wrap.scroll-no {
    overflow-x: hidden;
    width: 100%;
  }
  .table-wrap.scroll-no .tbl {
    min-width: 100%;
  }
  .table-wrap.scroll-no .tbl.data thead th {
    padding: var(--padding-4) var(--padding-2);
  }
  .table-wrap.scroll-no .tbl.data tbody td {
    padding: var(--padding-4) var(--padding-2);
  }
}

.table-wrap .tbl.data tbody th,
.table-wrap .tbl.data tbody td {
  padding: var(--table--data-tbody-padding) var(--table--data-tbody-padding-sides);
  background-color: var(--table--data-tbody-color-surface);
  border-bottom: var(--table--data-border-width) solid var(--table--data-tbody-color-divider);
  font-size: var(--table--data-tbody-pc-font-size);
  color: var(--table--data-tbody-color-text);
  font-weight: var(--font-weight-regular);
  text-align: center;
}
.table-wrap .tbl.data.bright thead th,
.table-wrap .tbl.data.bright tbody th,
.table-wrap .tbl.data.bright tbody td {
  border-right: var(--table--data-border-width) solid var(--table--data-tbody-color-divider);
}
.table-wrap .tbl.data.bright thead th:last-child,
.table-wrap .tbl.data.bright tbody th:last-child,
.table-wrap .tbl.data.bright tbody td:last-child {
  border-right: none;
}
@media (max-width: 767px) {

  .table-wrap .tbl.data tbody th,
  .table-wrap .tbl.data tbody td {
    font-size: var(--table--data-tbody-mobile-font-size);
  }
}


@media (max-width: 768px) {


  .table-wrap [class^="tstyle-"] {
    table-layout: inherit;
  }

  .tstyle-list td {
    white-space: nowrap;
  }

  .table-wrap.response .tstyle-list td {
    white-space: normal;
  }

}


/* 텍스트 목록 */
.info-list {
  --info-list--depth1-list-margin-top: 0;
  --info-list--depth2-list-margin-top: var(--gap-5);
  --info-list--depth3-list-margin-top: var(--gap-4);
  --info-list--depth1-padding-left: var(--number-12);
  --info-list--depth2-padding-left: var(--number-10);
  --info-list--depth3-padding-left: var(--number-9);
  --info-list--gap-layout-depth1-li-li: var(--gap-4);
  --info-list--gap-layout-depth2-li-li: var(--gap-3);
  --info-list--gap-layout-depth3-li-li: var(--gap-3);
  --info-list--pc-text-depth1: var(--pc-font-size-body-medium);
  --info-list--mobile-text-depth1: var(--mobile-font-size-body-medium);
  --info-list--pc-text-depth2: var(--pc-font-size-body-medium);
  --info-list--mobile-text-depth2: var(--mobile-font-size-body-medium);
  --info-list--pc-text-depth3: var(--pc-font-size-body-small);
  --info-list--mobile-text-depth3: var(--mobile-font-size-body-small);
  --info-list--info-txt-margin-top: var(--number-7);
  --info-list--depth1-color-text: var(--light-color-text-subtle);
  --info-list--depth2-color-text: var(--light-color-text-subtle);
  --info-list--depth3-color-text: var(--light-color-text-subtle);
  display: flex;
  flex-direction: column;
  margin-top: var(--info-list--depth1-list-margin-top);
  gap: var(--info-list--gap-layout-depth1-li-li);
}

.info-list>li {
  position: relative;
  padding-left: var(--info-list--depth3-padding-left);
  color: var(--info-list--depth1-color-text);
  font-size: var(--info-list--pc-text-depth1);
}

@media (max-width: 767px) {
  .info-list>li {
    font-size: var(--info-list--mobile-text-depth1);
  }
}

.info-list>li::before {
  position: absolute;
  top: 0;
  left: 0;
}

.info-list>li>.info-list {
  gap: var(--info-list--gap-layout-depth2-li-li);
  margin-top: var(--info-list--depth2-list-margin-top);
}

.info-list>li>.info-list>li {
  padding-left: var(--info-list--depth2-padding-left);
  color: var(--info-list--depth2-color-text);
  font-size: var(--info-list--pc-text-depth2);
}

@media (max-width: 767px) {
  .info-list>li>.info-list>li {
    font-size: var(--info-list--mobile-text-depth2);
  }
}

.info-list>li>.info-list>li>.info-list {
  margin-top: var(--info-list--depth3-list-margin-top);
}

.info-list>li>.info-list>li>.info-list>li {
  padding-left: var(--info-list--depth3-padding-left);
  color: var(--info-list--depth3-color-text);
  font-size: var(--info-list--pc-text-depth3);
}

@media (max-width: 767px) {
  .info-list>li>.info-list>li>.info-list>li {
    font-size: var(--info-list--mobile-text-depth3);
  }
}

.info-list>li>.info-txt {
  margin-top: var(--info-list--info-txt-margin-top);
}

.info-list.decimal>li::before {
  content: "";
  width: 0.6rem;
  height: 0.6rem;
  content: "";
  background-color: var(--info-list--depth1-color-text);
  border-radius: var(--radius-max);
  top: 1rem;
  left: 0.8rem;
}

.info-list.dash>li::before {
  content: "-";
}

.info-list.hollow {
  gap: var(--info-list--gap-layout-depth2-li-li);
}

.info-list.hollow>li {
  padding-left: var(--info-list--depth3-padding-left);
}

.info-list.hollow>li::before {
  content: "";
  width: 0.4rem;
  height: 0.4rem;
  content: "";
  border: 0.1rem solid var(--info-list--depth1-color-text);
  border-radius: var(--radius-max);
  top: 0.95rem;
  left: 0.8rem;
}

.info-list.ordered>li .num {
  position: absolute;
  top: 0;
  left: 0;
}

.info-list.ordered>li::before {
  display: none;
}

/* 모달 */
.modal {
  --modal--size-large: 76rem;
  --modal--size-medium: 56rem;
  --modal--size-small: 40rem;
  --modal--size-min-height: 26.4rem;
  --modal--wrap-radius: var(--radius-xlarge1);
  --modal--padding: var(--padding-10);
  --modal--header-padding-top: var(--number-17);
  --modal--header-pc-font-size: var(--pc-font-size-heading-medium);
  --modal--header-mobile-font-size: var(--mobile-font-size-heading-medium);
  --modal--conts-padding-top: var(--padding-6);
  --modal--conts-padding-bottom: var(--padding-3);
  --modal--conts-gap: var(--gap-5);
  --modal--btn-gap: var(--gap-3);
  --modal--btn-padding-top: var(--padding-6);
  --modal--btn-size-min-wdith: 7.8rem;
  --modal--btn-close-position: var(--gap-7);
  --modal--mobile-gap: var(--gap-7);
  --modal--mobile-width: calc(100% - var(--gap-7));
  --modal--mobile-height: calc(100% - var(--modal--mobile-gap) * 2);
  --modal--mobile-padding: var(--padding-8);
  --modal--mobile-header-padding-top: 5.2rem;
  --modal--mobile-btn-close-position: var(--gap-6);
  --modal--mobile-btn-padding-top: var(--padding-6);
  --modal--mobile-btn-padding-bottom: var(--padding-8);
  --modal--border-width: var(--light-border-width-variable-regular);
  --modal--color-text: var(--light-color-text-basic);
  --modal--wrap-color-surface: var(--light-color-surface-white-subtler);
  --modal--wrap-color-border: var(--light-color-border-gray);
  --modal--wrap-shadow: 0 0 0.2rem 0 var(--light-color-alpha-shadow2), 0 1.6rem 2.4rem 0 var(--light-color-alpha-shadow3);
  --modal--color-dim: var(--light-color-background-dim);
  --modal--full-popup-surface: var(--light-color-surface-secondary-subtler);
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  visibility: hidden;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: visibility 0.15s 0.3s, z-index 0s 0.3s, opacity 0.2s;
  font-size: var(--pc-font-size-body-medium);
  font-style: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--line-height-base);
  text-align: left;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
}

@media (max-width: 767px) {
  .modal {
    font-size: var(--mobile-font-size-body-medium);
  }
}

.modal>* {
  width: 100%;
}

.modal.in {
  z-index: 1010;
  transition-delay: 0s;
  opacity: 1;
  visibility: visible;
}

.modal.shown {
  display: block;
}

.modal .modal-back {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  visibility: hidden;
  z-index: -1;
  background-color: var(--modal--color-dim);
}

.modal .modal-back.in {
  display: block;
  z-index: 1000;
  visibility: visible;
}

.modal .modal-dialog {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  position: relative;
  z-index: 1020;
  width: var(--modal--size-large);
  height: 100%;
  min-height: var(--modal--size-min-height);
  margin: 0 auto;
}

.modal .modal-dialog.modal-sm {
  max-width: var(--modal--size-small);
}

.modal .modal-dialog.modal-md {
  max-width: var(--modal--size-medium);
}

.modal .modal-dialog.modal-lg {
  max-width: var(--modal--size-large);
}

.modal .modal-dialog .modal-content {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
  position: relative;
  width: 100%;
  max-height: 80%;
  background-color: var(--modal--wrap-color-surface);
  border-radius: var(--modal--wrap-radius);
  border: var(--modal--border-width) solid var(--modal--wrap-color-border);
  color: var(--modal--color-text);
  outline-color: transparent;
  transition: outline-color 0.1s;
  box-shadow: var(--modal--wrap-shadow);
}

.modal .modal-dialog .modal-content>*:not(.btn-close) {
  width: 100%;
}

.modal .modal-dialog .modal-content:focus {
  box-shadow: var(--box-shadow-outline-inset);
  outline-offset: 0.4rem;
}

.modal .modal-dialog .modal-header {
  width: 100%;
  background-color: inherit;
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
  padding-top: var(--modal--header-padding-top);
  padding-inline: var(--modal--padding);
}

.modal .modal-dialog .modal-header .modal-title {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  font-size: var(--modal--header-pc-font-size);
  font-weight: var(--font-weight-bold);
}

.modal .modal-dialog .modal-conts {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  position: relative;
  overflow-y: auto;
  width: 100%;
  padding: var(--modal--conts-padding-top) var(--modal--padding) var(--modal--conts-padding-bottom);
}

.modal .modal-dialog .modal-conts::-webkit-scrollbar {
  width: 0.8rem;
}

.modal .modal-dialog .modal-conts::-webkit-scrollbar-thumb {
  background-color: var(--light-color-element-secondary-light);
  border-radius: 0.8rem;
}

.modal .modal-dialog .modal-conts::-webkit-scrollbar-track {
  background-color: var(--light-color-element-secondary-lighter);
}

.modal .modal-dialog .modal-conts>* {
  width: 100%;
}

.modal .modal-dialog .modal-conts .conts-area {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  gap: var(--modal--conts-gap);
}

.modal .modal-dialog .modal-conts .conts-area>* {
  width: 100%;
}

.modal .modal-dialog .modal-btn {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-direction: row;
  gap: var(--modal--btn-gap);
  padding: var(--modal--btn-padding-top) var(--modal--padding) var(--modal--padding);
}

.modal .modal-dialog .modal-btn .btn {
  min-width: var(--modal--btn-size-min-wdith);
}

.modal .modal-dialog .modal-btn.multi-conts {
  justify-content: space-between;
}

.modal .modal-dialog .btn-close {
  position: absolute;
  top: var(--modal--btn-close-position);
  right: var(--modal--btn-close-position);
  z-index: 901;
}

.modal[data-type=full] {
  background-color: var(--modal--full-popup-surface);
}

.modal[data-type=full] .modal-dialog {
  width: 100%;
  height: 100%;
  margin: 0 auto;
  padding: 0;
}

.modal[data-type=full] .modal-header,
.modal[data-type=full] .modal-conts {
  padding: 0;
}

.modal[data-type=full] .modal-content {
  height: 100%;
  max-height: 100%;
  background: none;
  margin: 0 auto;
  border: none;
  border-radius: 0;
}

.modal[data-type=full] .modal-back.in {
  display: none;
}

.modal[data-type=bottom-sheet] {
  --modal--bottom-sheet-radius: var(--radius-xlarge1);
  --modal--bottom-sheet-padding: var(--padding-6);
  --modal--bottom-sheet-btn-close-position-top: var(--gap-6);
  --modal--bottom-sheet-btn-close-position-right: var(--gap-5);
  --modal--bottom-sheet-btn-padding-top: var(--padding-10);
}

.modal[data-type=bottom-sheet] .modal-content {
  position: fixed;
  left: 0;
  bottom: -100%;
  border-radius: 0;
  border-top-left-radius: var(--modal--bottom-sheet-radius);
  border-top-right-radius: var(--modal--bottom-sheet-radius);
  max-height: 90%;
  transition: var(--transition-base);
}

.modal[data-type=bottom-sheet] .modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: row;
  padding: var(--modal--bottom-sheet-padding);
  flex-shrink: 0;
}

.modal[data-type=bottom-sheet] .modal-header .modal-title {
  font-size: var(--pc-font-size-heading-small);
}

.modal[data-type=bottom-sheet] .modal-conts {
  display: block;
  padding: 0 var(--modal--bottom-sheet-padding);
}

.modal[data-type=bottom-sheet] .modal-conts::-webkit-scrollbar {
  width: 0.8rem;
}

.modal[data-type=bottom-sheet] .modal-conts::-webkit-scrollbar-thumb {
  background-color: var(--light-color-element-secondary-light);
  border-radius: 0.8rem;
}

.modal[data-type=bottom-sheet] .modal-conts::-webkit-scrollbar-track {
  background-color: var(--light-color-element-secondary-lighter);
}

.modal[data-type=bottom-sheet] .btn-close {
  top: var(--modal--bottom-sheet-btn-close-position-top);
  right: var(--modal--bottom-sheet-btn-close-position-right);
}

.modal[data-type=bottom-sheet] .pop-filter-top {
  width: auto;
}

.modal[data-type=bottom-sheet] .modal-btn.btn-wrap {
  padding: var(--modal--bottom-sheet-btn-padding-top) var(--modal--bottom-sheet-padding) var(--modal--bottom-sheet-padding);
}

.modal[data-type=bottom-sheet] .modal-btn.btn-wrap .btn {
  flex: 1;
}

.modal[data-type=bottom-sheet].in .modal-content {
  bottom: 0;
}

/* mobile */
@media (max-width: 767px) {
  .modal:not([data-type=bottom-sheet]) .modal-dialog {
    width: var(--modal--mobile-width);
    height: var(--modal--mobile-height);
    min-height: var(--modal--mobile-height);
    margin: var(--modal--mobile-gap) auto;
  }

  .modal:not([data-type=bottom-sheet]) .modal-dialog .modal-header {
    padding: var(--modal--mobile-header-padding-top) var(--modal--mobile-padding) 0;
  }

  .modal:not([data-type=bottom-sheet]) .modal-dialog .modal-header .modal-title {
    font-size: var(--modal--header-mobile-font-size);
  }

  .modal:not([data-type=bottom-sheet]) .modal-dialog .modal-content {
    max-height: 100%;
  }

  .modal:not([data-type=bottom-sheet]) .modal-dialog .modal-conts {
    padding-inline: var(--modal--mobile-padding);
    padding-bottom: 0;
  }

  .modal:not([data-type=bottom-sheet]) .modal-dialog .modal-conts .conts-area>* {
    width: 100%;
  }

  .modal:not([data-type=bottom-sheet]) .modal-dialog .modal-btn {
    padding: var(--modal--mobile-btn-padding-top) var(--modal--mobile-padding) var(--modal--mobile-btn-padding-bottom);
  }

  .modal:not([data-type=bottom-sheet]) .modal-dialog .btn-close {
    top: var(--modal--mobile-btn-close-position);
    right: var(--modal--mobile-btn-close-position);
  }

  .modal[data-type=full] {
    --modal--full-mobile-btn-close-size: var(--size-height-4);
  }

  .modal[data-type=full] .modal-dialog {
    width: 100%;
    height: 100%;
    margin: 0 auto;
  }

  .modal[data-type=full] .modal-dialog .btn-close {
    width: var(--modal--full-mobile-btn-close-size);
    height: var(--modal--full-mobile-btn-close-size);
  }
}


/* 아코디언 */
.accordion {
  --accordion--list-margin-y: var(--padding-2);
  --accordion--padding: var(--padding-8);
  --accordion--button-padding-right: calc(var(--accordion--padding) + var(--gap-5) + var(--accordion--button-icon-size));
  --accordion--line-padding: var(--padding-7);
  --accordion--line-button-padding-right: calc(var(--gap-5) + var(--accordion--button-icon-size));
  --accordion--button-icon-size: var(--icon--size-large);
  --accordion--radius: var(--radius-large2);
  --accordion--button-pc-font-size: var(--pc-font-size-heading-xsmall);
  --accordion--button-mobile-font-size: var(--mobile-font-size-heading-xsmall);
  --accordion--color-action: var(--light-color-action-secondary);
  --accordion--button-color-action: var(--light-color-action-secondary);
  --accordion--button-color-action-hover: var(--light-color-action-secondary-hover);
  --accordion--button-color-action-pressed: var(--light-color-action-secondary-pressed);
  --accordion--color-action-open: var(--light-color-action-secondary-hover);
  --accordion--color-divider: var(--light-color-divider-gray-light);
  --accordion--color-divider-open: var(--light-color-divider-gray-dark);
  --accordion--button-color-text: var(--light-color-text-basic);
  --accordion--button-color-text-open: var(--light-color-text-secondary);
  --accordion--color-icon: var(--light-color-icon-gray);
  padding: var(--accordion--list-margin-y) 0;
  border-top: 0.1rem solid var(--accordion--color-divider);
  border-bottom: 0.1rem solid var(--accordion--color-divider);
}

.accordion .accordion-item {
  transition: var(--transition-base);
}

.accordion .accordion-item .btn-accordion {
  position: relative;
  width: 100%;
  padding: var(--accordion--padding) var(--accordion--button-padding-right) var(--accordion--padding) var(--accordion--padding);
  background-color: var(--accordion--button-color-action);
  /* border-radius: var(--accordion--radius); */
  font-size: var(--accordion--button-pc-font-size);
  color: var(--accordion--button-color-text);
  font-weight: var(--font-weight-bold);
  text-align: left;
}

@media (max-width: 767px) {
  .accordion .accordion-item .btn-accordion {
    font-size: var(--accordion--button-mobile-font-size);
  }
}

.accordion .accordion-item .btn-accordion:hover {
  background-color: var(--accordion--button-color-action-hover);
}

.accordion .accordion-item .btn-accordion:active {
  background-color: var(--accordion--button-color-action-pressed);
}

.accordion .accordion-item .btn-accordion::after {
  position: absolute;
  top: var(--accordion--padding);
  right: var(--accordion--padding);
  content: "";
  display: inline-flex;
  width: var(--accordion--button-icon-size);
  height: var(--accordion--button-icon-size);
  background-color: var(--light-color-text-basic);
  forced-color-adjust: none;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_angle.svg);
  mask-image: url(../img/component/icon/ico_angle.svg);
  background-color: var(--accordion--color-icon);
  transition: var(--transition-base);
  transform: rotate(0deg);
}

.accordion .accordion-item .btn-accordion.active {
  /* background-color: var(--accordion--color-action-open); */
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  color: var(--accordion--button-color-text-open);
}

/* .accordion .accordion-item .btn-accordion.active:focus {
  border-radius: var(--accordion--radius);
} */

.accordion .accordion-item .btn-accordion.active::after {
  transform: rotate(180deg);
}

.accordion .accordion-item .accordion-collapse {
  max-height: 0;
  overflow: hidden;
  transition: all 0.5s cubic-bezier(0, 1, 0, 1);
  visibility: hidden;
}

.accordion .accordion-item .accordion-body {
  padding: 0 var(--accordion--padding) var(--accordion--padding);
  background-color: var(--accordion--color-action);
}

.accordion .accordion-item.active .accordion-collapse {
  height: auto;
  max-height: 100vh;
  transition: all 1.5s ease-in-out;
  visibility: visible;
}

.accordion .accordion-item.active .accordion-body {
  background-color: var(--accordion--color-action-open);
}

.accordion.type-line {
  padding: 0;
  border-top: none;
}

.accordion.type-line .accordion-item {
  border-top: 0.1rem solid var(--accordion--color-divider);
}

.accordion.type-line .accordion-item .btn-accordion {
  padding: var(--accordion--padding) var(--padding-10) var(--accordion--padding) var(--accordion--padding);
  font-size: var(--pc-font-size-heading-small);

}

.accordion.type-line .accordion-item .btn-accordion::after {
  top: var(--accordion--padding);
  right: var(--accordion--padding);
}

.accordion.type-line .accordion-item .btn-accordion.active {
  background: var(--color-gray-0);
}

.accordion.type-line .accordion-item .accordion-body {
  padding: var(--accordion--padding) var(--accordion--padding);
}

.accordion.type-line .accordion-item.active {
  background: none;
  border-top-color: var(--accordion--color-divider-open);
}

.accordion.type-line .accordion-item.active .accordion-body {
  background: var(--color-secondary-5);
}

@media (max-width: 767px) {
  .accordion {
    --accordion--padding: var(--padding-6);
    --accordion--line-padding: var(--padding-5);
    --accordion--button-icon-size: var(--icon--size-medium);
  }
}


/* 스피너 */
.spinner {
  --spinner--layout-gap: var(--number-5);
  --spinner--pc-font-size: var(--pc-font-size-body-small);
  --spinner--mobile-font-size: var(--mobile-font-size-body-small);
  --spinner--size: var(--size-height-3);
  --spinner--animation-duration: 900ms;
  --spinner--color-text: var(--light-color-text-subtle);
  --spinner--border-width: var(--light-border-width-variable-medium);
  --spinner--color-border: var(--light-color-element-disabled-light);
  --spinner--color-border-active: var(--light-color-element-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: var(--spinner--layout-gap);
  position: relative;
  top: 0;
  left: 0;
  z-index: 10;
  color: var(--spinner--color-text);
  font-size: var(--spinner--pc-font-size);
  width: 100%;
  height: 100%;
  text-align: right;
}

@media (max-width: 767px) {
  .spinner {
    font-size: var(--spinner--mobile-font-size);
  }
}

.spinner::before {
  display: inline-flex;
  content: "";
  height: var(--spinner--size);
  width: var(--spinner--size);
  border: var(--spinner--border-width) solid var(--spinner--color-border);
  border-top-color: var(--spinner--color-border-active);
  border-radius: 100%;
  animation: spin var(--spinner--animation-duration) infinite linear;
}

.form-spinner {
  --spinner-form-spinner-padding-x: var(--number-8);
  position: relative;
}

.form-spinner .spinner {
  position: absolute;
  justify-content: flex-end;
  padding: 0 var(--spinner-form-spinner-padding-x);
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(359deg);
  }
}

/* 툴팁 */
.tooltip-popover {
  --tooltip--popover-radius: var(--radius-small3);
  --tooltip--popover-radius-box: var(--radius-xlarge2);
  --tooltip--popover-contents-pc-font-size: var(--pc-font-size-body-small);
  --tooltip--popover-contents-mobile-font-size: var(--mobile-font-size-body-small);
  --tooltip--popover-margin-x: 2.4rem;
  --tooltip--popover-inline-color-text: var(--light-color-text-basic-inverse);
  --tooltip--popover-box-color-text: var(--light-color-text-basic);
  --tooltip--popover-color-border: var(--light-color-border-gray);
  --tooltip--popover-color-surface: var(--light-color-surface-inverse);
  --tooltip--popover-box-color-surface: var(--light-color-surface-white-subtler);
  display: none;
  position: fixed;
  z-index: 100;
  white-space: nowrap;
  font-size: var(--tooltip--popover-contents-pc-font-size);
  border-radius: var(--tooltip--popover-radius);
  padding: var(--padding-2) var(--padding-5);
  color: var(--tooltip--popover-inline-color-text);
  background-color: var(--tooltip--popover-color-surface);
  top: 0;
  left: 0;
}

.tooltip-popover.active {
  display: block;
}

.tooltip-popover::before {
  --tooltip-arrow-size: 0.8rem;
  --tooltip-arrow-gap: calc((var(--tooltip-arrow-size) / 2) * -1);
  content: "";
  width: var(--tooltip-arrow-size);
  height: var(--tooltip-arrow-size);
  display: block;
  position: absolute;
  background-color: var(--tooltip--popover-color-surface);
  left: var(--tooltip-arrow-gap);
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
}

.tooltip-popover.tooltip-box {
  white-space: normal;
  max-width: 36rem;
  border: 0.1rem solid var(--tooltip--popover-color-border);
  border-radius: var(--tooltip--popover-radius-box);
  padding: var(--padding-8);
  color: var(--tooltip--popover-box-color-text);
  background-color: var(--tooltip--popover-box-color-surface);
}

.tooltip-popover.tooltip-box::before {
  --tooltip-arrow-size: 1.2rem;
  border: 0.1rem solid var(--tooltip--popover-color-border);
  border-top-color: transparent;
  border-left-color: transparent;
  background-color: var(--tooltip--popover-box-color-surface);
}

.tooltip-popover.right::before {
  left: calc(100% + var(--tooltip-arrow-gap));
}

.tooltip-popover.bottom::before,
.tooltip-popover.top::before {
  top: calc(100% + var(--tooltip-arrow-gap));
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
}

.tooltip-popover.bottom.right::before,
.tooltip-popover.top.right::before {
  left: calc(100% - var(--tooltip--popover-margin-x));
}

.tooltip-popover.bottom.left::before,
.tooltip-popover.top.left::before {
  left: var(--tooltip--popover-margin-x);
}

.tooltip-popover.bottom::before {
  top: var(--tooltip-arrow-gap);
}

.tooltip-popover.bottom.tooltip-box::before {
  transform: translateX(-50%) rotate(-135deg);
}

@media (max-width: 767px) {
  .tooltip-popover {
    font-size: var(--tooltip--popover-contents-mobile-font-size);
  }
}

@media (max-width: 420px) {
  .tooltip-popover {
    width: calc(100% - var(--contents-padding-x) * 2);
    left: 50%;
    transform: translateX(-50%);
  }

  .tooltip-popover::before {
    display: none;
  }

  .tooltip-popover.tooltip-box {
    max-width: 100%;
  }
}

/* 파일 업로드 */
.file-upload {
  --file-upload--gap: var(--gap-7);
  --file-upload--file-total-y: .3rem;
  --file-upload--file-padding-x: var(--padding-10);
  --file-upload--file-padding-y: 6.4rem;
  --file-upload--file-radius: var(--radius-xlarge1);
  --file-upload--file-pc-font-size: var(--pc-font-size-body-large);
  --file-upload--file-mobile-font-size: var(--mobile-font-size-body-large);
  --file-upload--list-padding: var(--padding-6);
  --file-upload--list-radius: var(--radius-medium4);
  --file-upload--mobile-list-padding-y: var(--padding-5);
  --file-upload--line-radius: var(--radius-xlarge1);
  --file-upload--line-pc-padding: var(--pc-padding-card-large);
  --file-upload--line-mobile-padding: var(--mobile-padding-card-large);
  --file-upload--head-pc-font-size: var(--pc-font-size-heading-small);
  --file-upload--head-mobile-font-size: var(--mobile-font-size-heading-small);
  --file-upload--head-pc-margin-bottom: var(--pc-gap-layout-title-body-small);
  --file-upload--head-mobile-margin-bottom: var(--mobile-gap-layout-title-body-small);
  --file-upload--border-width: var(--light-border-width-variable-regular);
  --file-upload--border-medium: var(--light-border-width-variable-medium);
  --file-upload--file-color-surface: var(--light-color-surface-gray-subtle);
  --file-upload--file-color-border-active: var(--light-color-border-gray);
  --file-upload--list-color-surface: var(--light-color-surface-danger-subtler);
  --file-upload--list-color-border: var(--light-color-divider-gray-light);
  --file-upload--list-color-border-error: var(--light-color-border-danger);
  --file-upload--list-color-text: var(--light-color-text-bolder);
  --file-upload--list-color-text-error: var(--light-color-text-danger);
  --file-upload--line-color-border: var(--light-color-border-gray);
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  gap: var(--file-upload--gap);
  width: 100%;
}

.file-upload.line {
  padding: var(--file-upload--line-pc-padding);
  border: var(--file-upload--border-width) solid var(--file-upload--line-color-border);
  border-radius: var(--file-upload--line-radius);
}

@media (max-width: 767px) {
  .file-upload.line {
    padding: var(--file-upload--line-mobile-padding);
  }
}

.file-upload .file-head .tit {
  margin-bottom: var(--file-upload--head-pc-margin-bottom);
  font-size: var(--file-upload--head-pc-font-size);
}

@media (max-width: 767px) {
  .file-upload .file-head .tit {
    margin-bottom: var(--file-upload--head-mobile-margin-bottom);
    font-size: var(--file-upload--head-mobile-font-size);
  }
}

.file-upload .file-upload {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: var(--gap-9);
  width: 100%;
  padding: var(--file-upload--file-padding-y) var(--file-upload--file-padding-x);
  border-radius: var(--file-upload--file-radius);
  border: var(--file-upload--border-width) dashed transparent;
  background-color: var(--file-upload--file-color-surface);
}

.file-upload .file-upload .txt {
  font-size: var(--file-upload--file-pc-font-size);
  text-align: center;
}

@media (max-width: 767px) {
  .file-upload .file-upload .txt {
    font-size: var(--file-upload--file-mobile-font-size);
  }
}

.file-upload .file-upload [type=file] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.file-upload .file-upload.active {
  border-color: var(--file-upload--file-color-border-active) !important;
}

.file-upload .file-list {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  gap: var(--file-upload--gap);
  position: relative;
  width: 100%;
}

.file-upload .file-list .total {
  padding: var(--file-upload--file-total-y) 0;
  font-weight: var(--font-weight-bold);
}

.file-upload .file-list .total .current {
  color: var(--light-color-text-primary);
}

.file-upload .file-list .upload-list {
  display: flex;
  align-items: normal;
  justify-content: flex-start;
  flex-direction: column;
  gap: var(--gap-5);
  width: 100%;
}

.file-upload .file-list .upload-list>li {
  padding: var(--file-upload--list-padding);
  border-radius: var(--file-upload--list-radius);
  border: var(--file-upload--border-width) solid var(--file-upload--list-color-border);
  color: var(--file-upload--list-color-text);
}

@media (max-width: 767px) {
  .file-upload .file-list .upload-list>li {
    padding-top: var(--file-upload--mobile-list-padding-y);
    padding-bottom: var(--file-upload--mobile-list-padding-y);
  }
}

.file-upload .file-list .upload-list>li.is-error {
  border: var(--file-upload--border-medium) solid var(--file-upload--list-color-border-error);
  background-color: var(--file-upload--list-color-surface);
}

.file-upload .file-list .upload-list>li.is-error .file-hint {
  color: var(--file-upload--list-color-text-error);
}

.file-upload .file-list .upload-list .file-info {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  gap: var(--gap-5);
}

.file-upload .file-list .upload-list .file-info>div {
  display: inline-flex;
}

.file-upload .file-list .upload-list .file-info .file-name {
  flex: 1;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

@media (max-width: 767px) {
  .file-upload .file-list .upload-list .file-info .file-name {
    display: flex;
  }
}

.file-upload .file-list .upload-list .file-info .btn-wrap {
  align-items: center;
  gap: var(--gap-5);
  width: auto;
}

.file-upload .file-list .upload-list .file-info .ico-invalid {
  display: inline-flex;
  width: var(--icon--size-medium);
  height: var(--icon--size-medium);
  background-color: var(--light-color-text-basic);
  background-color: transparent !important;
  forced-color-adjust: none;
}

.file-upload .file-list .upload-list .file-info .ico-invalid.error {
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_error_fill.svg);
  mask-image: url(../img/component/icon/ico_error_fill.svg);
  -webkit-mask-image: none;
  mask-image: none;
  background-image: url(../img/component/icon/ico_error_fill.svg);
  background-color: transparent !important;
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-mask: none;
  mask: none;
}

.file-upload .file-list .upload-list .file-info .ico-invalid.complete {
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_complete_fill.svg);
  mask-image: url(../img/component/icon/ico_complete_fill.svg);
  -webkit-mask-image: none;
  mask-image: none;
  background-image: url(../img/component/icon/ico_complete_fill.svg);
  background-color: transparent !important;
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-mask: none;
  mask: none;
}

@media (max-width: 767px) {
  .file-upload .file-list .upload-list .file-info.m-column {
    flex-direction: column;
    gap: var(--gap-3);
  }

  .file-upload .file-list .upload-list .file-info.m-column .btn-wrap {
    gap: var(--gap-5);
    justify-content: flex-end;
    width: 100%;
  }
}

.file-upload .file-list .upload-list .file-hint-invalid {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: row;
  gap: var(--gap-2);
  width: 100%;
  padding-top: var(--padding-5);
  margin-top: var(--padding-5);
  border-top: var(--file-upload--border-width) solid var(--light-color-divider-gray);
  color: var(--file-upload--list-color-text-error);
}

.file-upload .file-list .upload-list .file-hint-invalid::before {
  content: "";
  margin-top: var(--padding-1);
  display: inline-flex;
  width: var(--icon--size-medium);
  height: var(--icon--size-medium);
  background-color: var(--light-color-text-basic);
  background-color: transparent !important;
  forced-color-adjust: none;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_error_fill.svg);
  mask-image: url(../img/component/icon/ico_error_fill.svg);
  -webkit-mask-image: none;
  mask-image: none;
  background-image: url(../img/component/icon/ico_error_fill.svg);
  background-color: transparent !important;
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-mask: none;
  mask: none;
}

.file-upload .file-list .upload-delete-btn {
  position: absolute;
  top: 0;
  right: 0;
}

/* 코치마크 */
.coach-mark {
  --coach-mark--popover-max-width: 36rem;
  --coach-mark--popover-padding: var(--padding-8);
  --coach-mark--popover-gap: var(--gap-5);
  --coach-mark--popover-radius: var(--radius-xlarge2);
  --coach-mark--popover-title-pc-font-size: var(--pc-font-size-label-xsmall);
  --coach-mark--popover-title-mobile-font-size: var(--mobile-font-size-label-xsmall);
  --coach-mark--popover-body-pc-font-size: var(--pc-font-size-body-medium);
  --coach-mark--popover-body-mobile-font-size: var(--mobile-font-size-body-medium);
  --coach-mark--txtbox-pc-padding: var(--pc-padding-card-large);
  --coach-mark--txtbox-mobile-padding: var(--mobile-padding-card-large);
  --coach-mark--txtbox-radius: var(--radius-xlarge1);
  --coach-mark--color-border: var(--light-color-border-primary);
  --coach-mark--color-outline: var(--light-color-border-primary-light);
  --coach-mark--popover-color-action: var(--light-color-surface-white);
  --coach-mark--popover-color-text-basic: var(--light-color-text-basic);
  --coach-mark--popover-color-text-subtle: var(--light-color-text-subtle);
  position: relative;
}

.coach-mark.txt-box {
  padding: var(--coach-mark--txtbox-pc-padding);
  border-radius: var(--coach-mark--txtbox-radius);
}

.coach-mark.txt-box,
.coach-mark.form-addr-result,
.coach-mark .coach-btn {
  border: 0.1rem solid var(--coach-mark--color-border);
  outline: 1rem solid var(--coach-mark--color-outline);
}

.coach-mark .coach-balloon {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  z-index: 5;
  border: 0.2rem solid var(--coach-mark--color-border);
  max-width: var(--coach-mark--popover-max-width);
  padding: var(--coach-mark--popover-padding);
  background-color: var(--coach-mark--popover-color-action);
  border-radius: var(--coach-mark--popover-radius);
  transform: translateY(calc(-100% - 2.6rem));
  word-break: break-all;
}

.coach-mark .coach-balloon::after {
  --coach-mark--bubble-arrow-size: 1.6rem;
  --coach-mark--bubble-arrow-margin: calc((var(--coach-mark--bubble-arrow-size) / 2) * -1);
  --coach-mark--bubble-margin-x: 2.4rem;
  --coach-mark--bubble-arrow-position-x: -2rem;
  content: "";
  width: var(--coach-mark--bubble-arrow-size);
  height: var(--coach-mark--bubble-arrow-size);
  position: absolute;
  top: 100%;
  right: 2.4rem;
  display: block;
  margin-top: var(--coach-mark--bubble-arrow-margin);
  transform: rotate(45deg);
  border: 0.2rem solid var(--coach-mark--color-border);
  border-top-color: transparent;
  border-left-color: transparent;
  background-color: var(--coach-mark--popover-color-action);
}

.coach-mark .coach-balloon .coach-tit {
  color: var(--coach-mark--popover-color-text-subtle);
  font-size: var(--coach-mark--popover-title-mobile-font-size);
  margin-bottom: var(--padding-3);
  font-weight: var(--font-weight-regular);
}

.coach-mark .coach-balloon .desc {
  font-size: var(--coach-mark--popover-body-pc-font-size);
  color: var(--coach-mark--popover-color-text-basic);
}

.coach-mark .coach-balloon .coach-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: row;
  width: 100%;
  gap: var(--gap-3);
  margin-top: var(--coach-mark--popover-gap);
  color: var(--coach-mark--popover-color-text-basic);
}

.coach-mark .coach-balloon .coach-controls .num {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  font-size: var(--coach-mark--popover-body-pc-font-size);
}

.coach-mark .coach-balloon .coach-controls .num strong {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  font-weight: var(--font-weight-regular);
}

.coach-mark .coach-balloon .coach-controls .num strong::after {
  content: "/";
  margin: 0 var(--padding-1);
}

.coach-mark .coach-balloon .btn-wrap {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-direction: row;
  gap: var(--gap-4);
}

@media (max-width: 767px) {
  .coach-mark.page-btn-wrap {
    position: relative;
    z-index: 5;
  }

  .coach-mark.page-btn-wrap>.coach-balloon {
    position: absolute;
    top: 2.4rem;
    right: 1.6rem;
    width: 100%;
    max-width: calc(100% - 3.2rem);
  }

  .coach-mark.txt-box {
    padding: var(--coach-mark--txtbox-mobile-padding);
  }
}

/* 디스클로저 */
.disclosure {
  --disclosure--gap: 1.4rem;
  --disclosure--button-icon-size: var(--icon--size-medium);
  --disclosure--button-size-height: 2.6rem;
  --disclosure--button-gap: var(--gap-2);
  --disclosure--button-pc-font-size: var(--pc-font-size-body-medium);
  --disclosure--button-mobile-font-size: var(--mobile-font-size-body-medium);
  --disclosure--pc-expand-padding: var(--pc-padding-card-small);
  --disclosure--mobile-expand-padding: var(--mobile-padding-card-small);
  --disclosure--expand-margin-top: var(--gap-2);
  --disclosure--expand-radius: var(--radius-xlarge2);
  --disclosure--button-color-text: var(--light-color-text-bolder);
  --disclosure--expand-color-surface: var(--light-color-surface-gray-subtle);
  width: 100%;
}

.disclosure~.disclosure {
  margin-top: var(--disclosure--gap);
}

.disclosure .btn-conts-expand {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  height: var(--disclosure--button-size-height);
  font-size: var(--disclosure--button-pc-font-size);
  color: var(--disclosure--button-color-text);
}

.disclosure .btn-conts-expand::before {
  display: inline-flex;
  content: "";
  display: inline-flex;
  width: var(--disclosure--button-icon-size);
  height: var(--disclosure--button-icon-size);
  background-color: var(--light-color-text-basic);
  forced-color-adjust: none;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_expand.svg);
  mask-image: url(../img/component/icon/ico_expand.svg);
  margin-right: var(--disclosure--button-gap);
  transition: var(--transition-base);
  transform: rotate(0);
  background-repeat: no-repeat;
  background-position: center;
}

.disclosure .btn-conts-expand::after {
  display: none;
}

.disclosure .expand-wrap {
  overflow: hidden;
  transition: max-height 0.5s cubic-bezier(0, 1, 0, 1);
  max-height: 0;
}

.disclosure .expand-wrap::after {
  display: none;
}

.disclosure .expand-wrap .expand-in {
  padding: var(--disclosure--pc-expand-padding);
  margin-top: var(--disclosure--expand-margin-top);
  background-color: var(--disclosure--expand-color-surface);
  border-radius: var(--disclosure--expand-radius);
}

.disclosure.active .expand-wrap {
  max-height: 1000vh !important;
  transition: max-height 1.5s ease-in-out;
}

.disclosure.active .btn-conts-expand::before {
  transform: rotate(-90deg);
}

@media (max-width: 767px) {
  .disclosure .btn-conts-expand {
    font-size: var(--disclosure--button-mobile-font-size);
  }

  .disclosure .expand-wrap .expand-in {
    padding: var(--disclosure--mobile-expand-padding);
  }
}

/* 건너뛰기 링크 */
#skip-link {
  --skip-link--pc-font-size: var(--pc-font-size-body-small);
  --skip-link--mobile-font-size: var(--mobile-font-size-body-small);
  --skip-link--color-background: var(--light-color-background-inverse);
  --skip-link-color-text: var(--light-color-text-basic-inverse);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  width: 100%;
  text-align: center;
  background-color: var(--skip-link--color-background);
}

#skip-link a:not(:focus) {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

#skip-link a:focus {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  box-shadow: var(--box-shadow-outline-inset);
  outline-offset: -0.4rem;
  font-size: var(--pc-font-size-body-small);
  color: var(--skip-link-color-text);
  width: 100%;
  height: var(--size-height-5);
  margin: 0 auto;
  text-align: center;
}

@media (max-width: 767px) {
  #skip-link a:focus {
    font-size: var(--skip-link--mobile-font-size);
  }
}

/* 사이드 메뉴 */
.side-navigation {
  --side-navigation--padding: var(--padding-10);
  --side-navigation--title-padding-x: var(--padding-3);
  --side-navigation--title-padding-bottom: var(--padding-6);
  --side-navigation--title-font-size: var(--pc-font-size-navigation-title-large);
  --side-navigation--btn-gap: var(--gap-3);
  --side-navigation--btn-padding-x: var(--padding-3);
  --side-navigation--btn-padding-y: var(--padding-6);
  --side-navigation--btn-padding-y-selected: var(--padding-3);
  --side-navigation--btn-font-size: var(--pc-font-size-navigation-depth-medium-bold);
  --side-navigation--3depth-padding-y: var(--padding-3);
  --side-navigation--3depth-btn-padding-x: var(--padding-6);
  --side-navigation--3depth-btn-padding-y: var(--padding-3);
  --side-navigation--3depth-btn-radius: var(--radius-medium2);
  --side-navigation--4depth-padding: var(--padding-6);
  --side-navigation--4depth-title-padding: var(--padding-3);
  --side-navigation--4depth-title-radius: var(--radius-medium3);
  --side-navigation--4depth-title-font-size: var(--pc-font-size-navigation-title-medium);
  --side-navigation--title-color-border: var(--light-color-divider-gray);
  --side-navigation--title-border-width: var(--light-border-width-static-regular);
  --side-navigation--color-action: var(--light-color-action-secondary);
  --side-navigation--color-action-hover: var(--light-color-action-secondary-hover);
  --side-navigation--color-action-pressed: var(--light-color-action-secondary-pressed);
  --side-navigation--color-action-selected: var(--light-color-action-secondary-selected);
  --side-navigation--color-border: var(--light-color-divider-gray-light);
  --side-navigation--color-text-selected: var(--light-color-text-secondary);
  --side-navigation--color-border-selected: var(--light-color-action-secondary-active);
  --side-navigation--item-color-border: var(--light-color-divider-gray-light);
  --side-navigation--item-color-border-selected: var(--light-color-border-gray);
  --side-navigation--item-border-width: var(--light-border-width-static-regular);
  --side-navigation--2depth-btn-color-border: var(--light-color-border-secondary);
  --side-navigation--4depth-color-border: var(--light-color-border-gray);
  --side-navigation--4depth-background: var(--light-color-background-white);
  position: relative;
  overflow: hidden;
  padding: var(--side-navigation--padding) 0;
}

.side-navigation .lnb-tit {
  font-size: var(--side-navigation--title-font-size);
  font-weight: var(--font-weight-bold);
  padding: var(--number-15) 0;

  color: var(--color-gray-0);
  text-align: center;
  background-color: var(--KS-primary);
  border-radius: var(--number-8) var(--number-8) 0 0;
}

.lnb-list {
  padding: 0 var(--number-10) var(--number-12) var(--number-10);
  border: 1px solid var(--color-gray-20);
  border-radius: 0 0 var(--number-8) var(--number-8);
}

.side-navigation .lnb-list .lnb-item {
  border-bottom: var(--side-navigation--item-border-width) solid var(--side-navigation--item-color-border);
}

.side-navigation .lnb-list .lnb-item .lnb-btn {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: row;
  gap: var(--side-navigation--btn-gap);
  position: relative;
  width: 100%;
  background-color: var(--side-navigation--color-action);
  padding: var(--side-navigation--btn-padding-y) var(--side-navigation--btn-padding-x);
  font-size: var(--side-navigation--btn-font-size);
  font-weight: var(--font-weight-bold);
  text-align: left;
}

.side-navigation .lnb-list .lnb-item .lnb-btn:hover {
  background-color: var(--side-navigation--color-action-hover);
}

.side-navigation .lnb-list .lnb-item .lnb-btn:active {
  background-color: var(--side-navigation--color-action-pressed);
}

.side-navigation .lnb-list .lnb-item .lnb-btn:focus {
  box-shadow: var(--box-shadow-outline-inset);
  outline-offset: -0.4rem;
}

.side-navigation .lnb-list .lnb-item .lnb-btn.selected {
  color: var(--side-navigation--color-text-selected);
}

.side-navigation .lnb-list .lnb-item>.lnb-btn.lnb-link.selected::after {
  width: 8px;
  height: 8px;
  background-color: var(--KS-secondary);
  position: relative;
  display: inline-block;
  content: "";
  border-radius: 4px;
  transition: var(--transition-base);
}

/* .side-navigation .lnb-list .lnb-item .lnb-btn.selected span::after {
  width: var(--number-5);
  height: var(--number-5);
  background-color: var(--KS-secondary);
  position: absolute;
  display: inline-block;
  content: "";
  border-radius: 50%;
  transition: var(--transition-base);
  top: 1.5rem;
  left: 7.3rem;
} */

.side-navigation .lnb-list .lnb-item .lnb-submenu .lnb-btn.selected::after {
  width: var(--number-5);
  height: var(--number-5);
  background-color: var(--KS-secondary);
  position: relative;
  display: inline-block;
  content: "";
  border-radius: 50%;
  transition: var(--transition-base);
  top: 0;
}

.side-navigation .lnb-list .lnb-item .lnb-subitem .lnb-btn.selected {
  background-color: var(--side-navigation--color-action-hover);
}

.side-navigation .lnb-list .lnb-item [class*=lnb-toggle]::after {
  content: "";
  flex-shrink: 0;
  display: inline-flex;
  width: var(--icon--size-medium);
  height: var(--icon--size-medium);
  background-color: var(--light-color-text-basic);
  forced-color-adjust: none;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_angle.svg);
  mask-image: url(../img/component/icon/ico_angle.svg);
  margin-top: var(--padding-1);
  margin-left: auto;
  transition: var(--transition-base);
  transform: rotate(0deg);
}

.side-navigation .lnb-list .lnb-item [class*=lnb-toggle][aria-expanded=true] {
  padding-bottom: var(--side-navigation--btn-padding-y-selected);
}

.side-navigation .lnb-list .lnb-item [class*=lnb-toggle][aria-expanded=true]::after {
  background-color: var(--side-navigation--color-text-selected);
  transform: rotate(180deg);
}

.side-navigation .lnb-list .lnb-item .lnb-submenu {
  display: grid;
  grid-template-rows: 0fr;
  opacity: 0;
  visibility: hidden;
  transition: var(--transition-base);
}

.side-navigation .lnb-list .lnb-item .lnb-submenu>ul {
  padding: 0;
  overflow: hidden;
}

.side-navigation .lnb-list .lnb-item .lnb-submenu .lnb-btn {
  padding: var(--side-navigation--3depth-btn-padding-y) var(--side-navigation--3depth-btn-padding-x);
  border-radius: var(--side-navigation--3depth-btn-radius);
  font-weight: var(--font-weight-regular);
}

.side-navigation .lnb-list .lnb-item .lnb-submenu .lnb-btn::before {
  content: "•";
}

.side-navigation .lnb-list .lnb-item .lnb-submenu .lnb-btn.selected {
  color: var(--side-navigation--color-text-selected);
  font-weight: var(--font-weight-bold);
}

.side-navigation .lnb-list .lnb-item .lnb-submenu-lv2 {
  position: absolute;
  visibility: hidden;
  opacity: 0;
  top: 0;
  left: -100%;
  z-index: 10;
  width: 100%;
  height: 100%;
  background-color: var(--side-navigation--4depth-background);
  transition: var(--transition-base);
}

.side-navigation .lnb-list .lnb-item .lnb-submenu-lv2.active {
  opacity: 1;
  visibility: visible;
  left: 0;
}

.side-navigation .lnb-list .lnb-item .lnb-submenu-lv2>ul {
  display: flex;
  align-items: normal;
  justify-content: flex-start;
  flex-direction: column;
  padding: var(--side-navigation--4depth-padidng) 0;
  border-top: 0.1rem solid var(--side-navigation--4depth-color-border);
  border-bottom: 0.1rem solid var(--side-navigation--4depth-color-border);
}

.side-navigation .lnb-list .lnb-item .lnb-submenu-lv2 .lnb-btn-tit {
  display: flex;
  align-items: normal;
  justify-content: space-between;
  flex-direction: column;
  gap: var(--gap-2);
  width: 100%;
  padding: var(--side-navigation--4depth-title-padding) !important;
  margin-bottom: var(--padding-3);
  font-size: var(--side-navigation--4depth-title-font-size);
  font-weight: var(--font-weight-bold);
  text-align: left;
  border-radius: var(--side-navigation--4depth-title-radius);
}

.side-navigation .lnb-list .lnb-item .lnb-submenu-lv2 .lnb-btn-tit::before {
  content: "";
  display: inline-flex;
  width: var(--icon--size-large);
  height: var(--icon--size-large);
  background-color: var(--light-color-text-basic);
  forced-color-adjust: none;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_angle.svg);
  mask-image: url(../img/component/icon/ico_angle.svg);
  transform: rotate(90deg);
}

.side-navigation .lnb-list .lnb-item .lnb-submenu-lv2 .lnb-btn-tit:focus {
  box-shadow: var(--box-shadow-outline-inset);
  outline-offset: -0.4rem;
}

.side-navigation .lnb-list .lnb-item .lnb-submenu-lv2 .lnb-btn-tit:hover {
  background-color: var(--side-navigation--color-action-hover);
}

.side-navigation .lnb-list .lnb-item .lnb-submenu-lv2 .lnb-btn-tit:active {
  background-color: var(--side-navigation--color-action-pressed);
}

.side-navigation .lnb-list .lnb-item.active {
  border-bottom-color: var(--side-navigation--item-color-border-selected);
}

.side-navigation .lnb-list .lnb-item.active .lnb-submenu {
  grid-template-rows: 1fr;
  opacity: 1;
  visibility: visible;
  padding: var(--side-navigation--3depth-padding-y) 0;
}

.side-navigation .lnb-list>li>.lnb-btn::before {
  display: inline-flex;
  content: "";
  position: absolute;
  bottom: -0.1rem;
  left: 0%;
  width: 0;
  height: 0.3rem;
  background-color: var(--side-navigation--color-border-selected);
  transition: var(--transition-base);
}

.side-navigation .lnb-list>li>.lnb-btn:hover::before {
  left: 0;
  width: 100%;
}

.side-navigation .lnb-list>li>.lnb-btn.active:not(.lnb-toggle)::before {
  left: 0;
  width: 100%;
}

/* 구조화 목록 */
.structured-list {
  --structured-list--tag-color-text: var(--light-color-text-basic);
  --structured-list--tag-color-text-visited: var(--light-color-link-visited);
  --structured-list--tag-color-border: var(--light-color-border-gray-light);
  --structured-list--tag-color-action: var(--light-color-action-white);
  --structured-list--list-color-surface: var(--light-color-surface-white-subtle);
  --structured-list--list-color-border: var(--light-color-border-gray);
  --structured-list--list-color-action-active: var(--light-color-link-default);
  --structured-list--list-action-outline-width: var(--light-border-width-variable-medium);
  --structured-list--card-bottom-color-border: var(--light-color-divider-gray-light);
  --structured-list--card-body-color-text: var(--light-color-text-subtle);
  --structured-list--card-body-divider-width: var(--light-border-width-variable-regular);
  --structured-list--card-body-divider-color-divider: var(--light-color-divider-gray-light);
  --structured-list--border-width: var(--light-border-width-variable-regular);
  --structured-list--full-card-body-meta-color-text: var(--light-color-text-subtle);
  --structured-list--wrap-gap: var(--gap-7);
  --structured-list--list-gap: var(--gap-5);
  --structured-list--list-padding-small-size: var(--padding-8);
  --structured-list--list-padding-medium-size: var(--padding-9);
  --structured-list--list-padding-large-size: var(--padding-10);
  --structured-list--list-radius: var(--radius-xlarge2);
  --structured-list--list-inner-gap: var(--gap-5);
  --structured-list--list-column-gap: var(--gap-7);
  --structured-list--list-first-element-margin: var(--gap-3);
  --structured-list--card-body-gap: var(--gap-7);
  --structured-list--card-body-cont-gap: var(--gap-5);
  --structured-list--card-body-title-gap: var(--gap-1);
  --structured-list--card-body-title-pc-font-size: var(--pc-font-size-heading-small);
  --structured-list--card-body-title-mobile-font-size: var(--mobile-font-size-heading-small);
  --structured-list--card-body-title-pc-font-size-small: var(--pc-font-size-heading-xsmall);
  --structured-list--card-body-title-mobile-font-size-small: var(--mobile-font-size-heading-xsmall);
  --structured-list--card-body-title-icon-size: var(--size-height-4);
  --structured-list--card-body-txt-margin-bottom: var(--gap-2);
  --structured-list--card-body-date-gap: var(--gap-3);
  --structured-list--card-bottom-gap: var(--gap-3);
  --structured-list--card-bottom-padding-top: var(--padding-6);
  --structured-list--card-bottom-margin-top: var(--padding-3);
  --structured-list--card-buttons-position-top-small-size: var(--gap-7);
  --structured-list--card-buttons-position-right-small-size: var(--gap-7);
  --structured-list--card-buttons-position-right-medium-size: var(--gap-8);
  --structured-list--card-buttons-position-top-medium-size: var(--gap-8);
  --structured-list--card-buttons-position-right-large-size: var(--gap-9);
  --structured-list--card-buttons-position-top-large-size: var(--gap-9);
  --structured-list--card-buttons-gap: var(--gap-5);
  --structured-list--card-buttons-size-height: var(--size-height-4);
  --structured-list--tag-size-height: var(--size-height-5);
  --structured-list--tag-pc-font-size: var(--pc-font-size-label-small);
  --structured-list--tag-mobile-font-size: var(--mobile-font-size-label-small);
  --structured-list--tag-padding-x: var(--padding-4);
  --structured-list--tag-radius: var(--radius-max);
}

@media (max-width: 767px) {
  .structured-list {
    --structured-list--wrap-gap: var(--gap-5);
    --structured-list--list-gap: var(--gap-4);
    --structured-list--list-padding-medium-size: var(--padding-8);
    --structured-list--list-inner-gap: var(--gap-7);
    --structured-list--list-first-element-margin: var(--gap-2);
    --structured-list--card-body-gap: var(--gap-5);
    --structured-list--card-body-cont-gap: var(--gap-4);
    --structured-list--card-bottom-margin-top: var(--gap-2);
  }
}

.structured-list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-gap: var(--structured-list--wrap-gap);
}

.structured-list.type-check .card-btn {
  top: calc(var(--structured-list--list-gap) + var(--structured-list--card-buttons-position-top-medium-size) + var(--size-height-5));
}

.structured-list .card-body .c-tit {
  font-size: var(--structured-list--card-body-title-pc-font-size);
}

@media (max-width: 767px) {
  .structured-list .card-body .c-tit {
    font-size: var(--structured-list--card-body-title-mobile-font-size);
  }
}

.structured-list>li {
  padding: var(--structured-list--list-padding-medium-size);
}

.structured-list .card-btn {
  position: absolute;
  top: var(--structured-list--card-buttons-position-top-medium-size);
  right: var(--structured-list--card-buttons-position-right-medium-size);
}

.structured-list>li {
  position: relative;
  display: flex;
  align-items: normal;
  justify-content: flex-start;
  flex-direction: column;
  gap: var(--structured-list--list-gap) 0;
  background: var(--structured-list--list-color-surface);
  border-radius: var(--structured-list--list-radius);
  border: var(--structured-list--border-width) solid var(--structured-list--list-color-border);
}

.structured-list>li.is-check {
  border-color: transparent;
  outline: var(--structured-list--list-action-outline-width) solid var(--structured-list--list-color-action-active);
}

.structured-list>li .in {
  display: flex;
  align-items: normal;
  justify-content: flex-start;
  flex-direction: column;
  gap: var(--structured-list--list-inner-gap);
  width: 100%;
}

.structured-list:not(.type-full) .check-area:first-child,
.structured-list:not(.type-full) .card-top:first-child {
  margin-bottom: var(--structured-list--list-first-element-margin);
}

.structured-list .check-area {
  padding-top: 0.4rem;
  font-size: 0;
}

.structured-list .check-area .form-check input[type=checkbox]~label::before {
  margin-top: 0;
}

.structured-list .check-area .form-check input[type=checkbox]~label::after {
  margin-top: -0.3rem;
}

.structured-list .card-top {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: wrap;
}

.structured-list .card-body {
  display: flex;
  align-items: normal;
  justify-content: flex-start;
  flex-direction: column;
  gap: var(--structured-list--card-body-gap);
}

.structured-list .card-body .c-text {
  display: flex;
  align-items: normal;
  justify-content: flex-start;
  flex-direction: column;
  gap: var(--structured-list--card-body-cont-gap);
  word-break: break-all;
}

.structured-list .card-body .c-text:hover .c-tit {
  text-decoration: underline;
  text-underline-offset: 0.5rem;
}

.structured-list .card-body .c-text:visited .c-tit {
  color: var(--structured-list--tag-color-text-visited);
}

.structured-list .card-body .c-text .c-tit {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  gap: var(--structured-list--card-body-title-gap);
  position: relative;
  font-weight: var(--font-weight-bold);
}

.structured-list .card-body .c-text .c-tit .span {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

.structured-list .card-body .c-text .c-tit::after {
  display: inline-flex;
  flex-shrink: 0;
  content: "";
  width: var(--structured-list--card-body-title-icon-size);
  height: var(--structured-list--card-body-title-icon-size);
  display: inline-flex;
  width: var(--icon--size-large);
  height: var(--icon--size-large);
  background-color: var(--light-color-text-basic);
  forced-color-adjust: none;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_angle.svg);
  mask-image: url(../img/component/icon/ico_angle.svg);
  transform: rotate(-90deg);
}

.structured-list .card-body .c-text .c-txt {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  color: var(--structured-list--card-body-color-text);
}

.structured-list .card-body .c-text .c-date {
  display: flex;
  gap: var(--structured-list--card-body-date-gap);
}

.structured-list .card-body .c-text .c-date .key {
  font-weight: var(--font-weight-bold);
}

.structured-list .card-body .c-btn {
  text-align: right;
}

.structured-list .card-btm {
  display: flex;
  flex-wrap: wrap;
  gap: var(--structured-list--card-bottom-gap);
  padding-top: var(--structured-list--card-bottom-padding-top);
  margin-top: var(--structured-list--card-bottom-margin-top);
  border-top: var(--structured-list--border-width) solid var(--structured-list--card-bottom-color-border);
}

.structured-list .card-btm .tag {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  background-color: var(--structured-list--tag-color-action);
  height: var(--structured-list--tag-size-height);
  padding: 0 var(--structured-list--tag-padding-x);
  font-size: var(--structured-list--tag-pc-font-size);
  color: var(--structured-list--tag-color-text);
  border-radius: var(--structured-list--tag-radius);
  border: var(--structured-list--border-width) solid var(--structured-list--tag-color-border);
}

@media (max-width: 767px) {
  .structured-list .card-btm .tag {
    font-size: var(--structured-list--tag-mobile-font-size);
  }
}

.structured-list .card-btm .tag::before {
  content: "#";
}

.structured-list .card-btn {
  position: absolute;
  top: var(--structured-list--card-buttons-position-top-medium-size);
  right: var(--structured-list--card-buttons-position-right-medium-size);
  display: inline-flex;
  gap: var(--structured-list--card-buttons-gap);
}

.structured-list .card-btn .btn {
  height: var(--structured-list--card-buttons-size-height);
}

.structured-list.sm .card-body .c-tit {
  font-size: var(--structured-list--card-body-title-pc-font-size-small);
}

@media (max-width: 767px) {
  .structured-list.sm .card-body .c-tit {
    font-size: var(--structured-list--card-body-title-mobile-font-size-small);
  }
}

.structured-list.sm>li {
  padding: var(--structured-list--list-padding-small-size);
}

.structured-list.sm .card-btn {
  position: absolute;
  top: var(--structured-list--card-buttons-position-top-small-size);
  right: var(--structured-list--card-buttons-position-right-small-size);
}

.structured-list.sm.type-check .card-btn {
  top: calc(var(--structured-list--list-gap) + var(--structured-list--card-buttons-position-top-small-size) + var(--size-height-5));
}

.structured-list.md .card-body .c-tit {
  font-size: var(--structured-list--card-body-title-pc-font-size);
}

@media (max-width: 767px) {
  .structured-list.md .card-body .c-tit {
    font-size: var(--structured-list--card-body-title-mobile-font-size);
  }
}

.structured-list.md>li {
  padding: var(--structured-list--list-padding-medium-size);
}

.structured-list.md .card-btn {
  position: absolute;
  top: var(--structured-list--card-buttons-position-top-medium-size);
  right: var(--structured-list--card-buttons-position-right-medium-size);
}

.structured-list.md.type-check .card-btn {
  top: calc(var(--structured-list--list-gap) + var(--structured-list--card-buttons-position-top-medium-size) + var(--size-height-5));
}

.structured-list.lg .card-body .c-tit {
  font-size: var(--structured-list--card-body-title-pc-font-size);
}

@media (max-width: 767px) {
  .structured-list.lg .card-body .c-tit {
    font-size: var(--structured-list--card-body-title-mobile-font-size);
  }
}

.structured-list.lg>li {
  padding: var(--structured-list--list-padding-large-size);
}

.structured-list.lg .card-btn {
  position: absolute;
  top: var(--structured-list--card-buttons-position-top-large-size);
  right: var(--structured-list--card-buttons-position-right-large-size);
}

.structured-list.lg.type-check .card-btn {
  top: calc(var(--structured-list--list-gap) + var(--structured-list--card-buttons-position-top-large-size) + var(--size-height-5));
}

.structured-list.type-full,
.structured-list.type2 {
  grid-template-columns: none;
  --structured-list--full-list-column-gap: var(--gap-7);
  --structured-list--full-card-top-margin: var(--gap-2);
  --structured-list--full-card-body-gap: var(--gap-9);
  --structured-list--full-card-body-cont-gap: var(--gap-5);
  --structured-list--full-card-btn-position-top: var(--gap-2);
  --structured-list--full-card-body-meta-gap-y: var(--gap-3);
  --structured-list--full-card-body-meta-gap-x: var(--gap-4);
  --structured-list--full-card-body-divider-height: var(--size-height-2);
  --structured-list--full-card-body-divider-margin-x: var(--gap-3);
}

.structured-list.type-full .structured-item,
.structured-list.type2 .structured-item {
  flex-direction: row;
  column-gap: var(--structured-list--full-list-column-gap);
}

.structured-list.type-full .structured-item .in,
.structured-list.type2 .structured-item .in {
  position: relative;
}

.structured-list.type-full .structured-item .check-area,
.structured-list.type2 .structured-item .check-area {
  margin: 0;
}

.structured-list.type-full .card-top,
.structured-list.type2 .card-top {
  margin: var(--structured-list--full-card-top-margin) 0;
}

.structured-list.type-full .card-body,
.structured-list.type2 .card-body {
  flex-direction: row;
  justify-content: space-between;
}

.structured-list.type-full .card-body .c-text,
.structured-list.type2 .card-body .c-text {
  flex: 1;
  margin: 0;
}

.structured-list.type-full .card-body .c-text .key,
.structured-list.type2 .card-body .c-text .key {
  white-space: nowrap;
}

.structured-list.type-full .card-body .c-txt,
.structured-list.type2 .card-body .c-txt {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

.structured-list.type-full .card-body .c-txt-p,
.structured-list.type2 .card-body .c-txt-p {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: row;
}

.structured-list.type-full .card-body .c-txt-ul,
.structured-list.type2 .card-body .c-txt-ul {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: wrap;
  gap: var(--structured-list--full-card-body-meta-gap-x);
  column-gap: var(--structured-list--full-card-body-meta-gap-y);
}

.structured-list.type-full .card-body .c-txt-ul li,
.structured-list.type2 .card-body .c-txt-ul li {
  display: inline-flex;
  align-items: center;
  color: var(--structured-list--full-card-body-meta-color-text);
}

.structured-list.type-full .card-body .c-txt-ul li:not(:last-child)::after,
.structured-list.type2 .card-body .c-txt-ul li:not(:last-child)::after {
  display: inline-flex;
  content: "";
  width: var(--structured-list--card-body-divider-width);
  height: var(--structured-list--full-card-body-divider-height);
  margin-left: var(--structured-list--full-card-body-divider-margin-x);
  background-color: var(--structured-list--card-body-divider-color-divider);
}

.structured-list.type-full .card-btm,
.structured-list.type2 .card-btm {
  margin-top: 0;
}

.structured-list.type-full .card-btn,
.structured-list.type2 .card-btn {
  top: var(--structured-list--full-card-btn-position-top);
  right: 0;
}

.structured-list.type-full {
  --structured-list--card-body-title-pc-font-size: var(--pc-font-size-heading-medium);
  --structured-list--card-body-title-mobile-font-size: var(--mobile-font-size-heading-medium);
}

.structured-list.type-full .card-body .c-tit {
  font-size: var(--structured-list--card-body-title-pc-font-size);
}

@media (min-width: 768px) and (max-width: 1279px) {
  .structured-list {
    --structured-list--card-buttons-gap: var(--number-3);
    grid-template-columns: 1fr 1fr;
  }

  .structured-list .card-btn {
    gap: var(--structured-list--card-buttons-gap);
  }
}

@media (max-width: 767px) {
  .structured-list {
    grid-template-columns: 1fr;
  }

  .structured-list .check-area:first-child,
  .structured-list .card-top:first-child {
    margin-bottom: var(--structured-list--list-first-element-margin);
  }

  .structured-list .structured-item {
    flex-direction: row;
    flex-wrap: wrap;
  }

  .structured-list .structured-item .in {
    flex-direction: row;
    flex-wrap: wrap;
  }

  .structured-list .structured-item .check-area {
    order: -1;
    width: 100%;
  }

  .structured-list .card-top {
    order: -1;
    flex: 1;
    flex-wrap: nowrap;
    min-width: fit-content;
  }

  .structured-list .card-body {
    width: 100%;
  }

  .structured-list .card-body .c-date {
    flex-wrap: wrap;
  }

  .structured-list .card-body .c-btn {
    align-self: flex-end;
    text-align: left;
  }

  .structured-list .card-btm {
    width: 100%;
  }

  .structured-list .card-btn {
    order: -1;
    position: static;
  }

  .structured-list.type-full,
  .structured-list.type2 {
    --structured-list--full-card-body-gap: var(--gap-7);
    --structured-list--full-card-body-cont-gap: var(--gap-4);
    --structured-list--full-card-body-meta-gap-y: var(--gap-3);
  }

  .structured-list.type-full .in,
  .structured-list.type2 .in {
    gap: 1.6rem;
  }

  .structured-list.type-full .card-top,
  .structured-list.type2 .card-top {
    margin: 0;
  }

  .structured-list.type-full .card-body,
  .structured-list.type2 .card-body {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--structured-list--full-card-body-gap);
  }

  .structured-list.type-full .card-body .c-text,
  .structured-list.type2 .card-body .c-text {
    gap: var(--structured-list--full-card-body-cont-gap);
  }

  .structured-list.type-full .card-body .c-txt-ul,
  .structured-list.type2 .card-body .c-txt-ul {
    gap: var(--structured-list--full-card-body-meta-gap-y);
  }

  .structured-list.type-full .card-body .c-tit {
    font-size: var(--structured-list--card-body-title-mobile-font-size);
  }
}

/* 긴급 공지  */
.critical-alerts {
  --critical-alerts--size-max-width: 84.6rem;
  --critical-alerts--gap: var(--number-6);
  --critical-alerts--padding: var(--padding-7);
  --critical-alerts--banner-gap: var(--gap-5);
  --critical-alerts--banner-padding: var(--pc-padding-card-xsmall);
  --critical-alerts--banner-radius: var(--radius-large2);
  --critical-alerts--badge-size-min-width: 7.8rem;
  --critical-alerts--badge-size-height: var(--size-height-7);
  --critical-alerts--badge-gap: var(--gap-2);
  --critical-alerts--badge-padding: var(--padding-4);
  --critical-alerts--badge-radius: var(--radius-medium2);
  --critical-alerts--badge-pc-font-size: var(--pc-font-size-body-medium);
  --critical-alerts--badge-mobile-font-size: var(--mobile-font-size-body-small);
  --critical-alerts--badge-icon-size: var(--gap-7);
  --critical-alerts--mobile-padding: var(--padding-6);
  --critical-alerts--mobile-banner-padding: var(--mobile-padding-card-xsmall);
  --critical-alerts--mobile-badge-size-height: 3.9rem;
  --critical-alerts--mobile-badge-icon-size: var(--gap-6);
  --critical-alerts--mobile-badge-padding: var(--padding-3);
  --critical-alerts--banner-border-width: var(--light-border-width-variable-regular);
  --critical-alerts--banner-color-action: var(--light-color-surface-white-subtle);
  --critical-alerts--banner-color-border: var(--light-color-border-gray-light);
  --critical-alerts--banner-shadow: 0 0 0.2rem 0 var(--light-color-alpha-shadow1), 0 0.4rem 0.8rem 0 var(--light-color-alpha-shadow2);
  --critical-alerts--badge-color-background-danger: var(--light-color-element-danger);
  --critical-alerts--badge-color-background-ok: var(--light-color-element-success);
  --critical-alerts--badge-color-background-info: var(--light-color-element-information);
  --critical-alerts--badge-color-text: var(--light-color-text-inverse-static);
  display: flex;
  align-items: normal;
  justify-content: flex-start;
  flex-direction: column;
  gap: var(--critical-alerts--gap);
  width: 100%;
  max-width: var(--critical-alerts--size-max-width);
  padding: var(--critical-alerts--padding);
  margin: 0 auto;
}

.critical-alerts .critical-ban {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  gap: var(--critical-alerts--banner-gap);
  padding: var(--critical-alerts--banner-padding);
  background-color: var(--critical-alerts--banner-color-action);
  border: var(--critical-alerts--banner-border-width) solid var(--critical-alerts--banner-color-border);
  border-radius: var(--critical-alerts--banner-radius);
  box-shadow: var(--critical-alerts--banner-shadow);
}

.critical-alerts .critical-badge {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  gap: var(--critical-alerts--badge-gap);
  font-size: var(--critical-alerts--badge-pc-font-size);
  font-weight: var(--font-weight-bold);
  color: var(--critical-alerts--badge-color-text);
  min-width: var(--critical-alerts--badge-size-min-width);
  height: var(--critical-alerts--badge-size-height);
  padding: 0 var(--critical-alerts--badge-padding);
  border-radius: var(--critical-alerts--badge-radius);
}

@media (max-width: 767px) {
  .critical-alerts .critical-badge {
    font-size: var(--critical-alerts--badge-mobile-font-size);
  }
}

.critical-alerts .critical-badge::before {
  display: inline-flex;
  content: "";
  width: var(--critical-alerts--badge-icon-size);
  height: var(--critical-alerts--badge-icon-size);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.critical-alerts .critical-badge.danger {
  background-color: var(--critical-alerts--badge-color-background-danger);
}

.critical-alerts .critical-badge.danger::before {
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_urgent_badge_danger.svg);
  mask-image: url(../img/component/icon/ico_urgent_badge_danger.svg);
  -webkit-mask-image: none;
  mask-image: none;
  background-image: url(../img/component/icon/ico_urgent_badge_danger.svg);
  background-color: transparent !important;
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-mask: none;
  mask: none;
}

.critical-alerts .critical-badge.ok {
  background-color: var(--critical-alerts--badge-color-background-ok);
}

.critical-alerts .critical-badge.ok::before {
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_urgent_badge_ok.svg);
  mask-image: url(../img/component/icon/ico_urgent_badge_ok.svg);
  -webkit-mask-image: none;
  mask-image: none;
  background-image: url(../img/component/icon/ico_urgent_badge_ok.svg);
  background-color: transparent !important;
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-mask: none;
  mask: none;
}

.critical-alerts .critical-badge.info {
  background-color: var(--critical-alerts--badge-color-background-info);
}

.critical-alerts .critical-badge.info::before {
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_urgent_badge_info.svg);
  mask-image: url(../img/component/icon/ico_urgent_badge_info.svg);
  -webkit-mask-image: none;
  mask-image: none;
  background-image: url(../img/component/icon/ico_urgent_badge_info.svg);
  background-color: transparent !important;
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-mask: none;
  mask: none;
}

.critical-alerts .critical-txt {
  flex: 1;
  font-weight: var(--font-weight-bold);
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.critical-close {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: .8rem 1.6rem 0 1.6rem;

}
@media (max-width: 767px) {
  .critical-alerts {
    padding: var(--critical-alerts--mobile-padding);
  }

  .critical-alerts .critical-ban {
    height: auto;
    padding: var(--critical-alerts--mobile-banner-padding);
  }

  .critical-alerts .critical-txt {
    display: block;
    overflow: visible;
  }

  .critical-alerts .critical-badge {
    min-width: auto;
    height: var(--critical-alerts--mobile-badge-size-height);
    padding: var(--critical-alerts--mobile-badge-padding);
  }

  .critical-alerts .critical-badge::before {
    width: var(--critical-alerts--mobile-badge-icon-size);
    height: var(--critical-alerts--mobile-badge-icon-size);
  }
}

/* ** swiper ** */
.swiper-indicator {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-direction: row;
  gap: var(--gap-3);
  flex-shrink: 0;
  position: relative;
}

.swiper-indicator.text-center {
  justify-content: center;
}

.swiper-indicator .swiper-pagination {
  top: auto;
  bottom: auto;
  width: auto;
}

.swiper-indicator .swiper-pagination:not(.swiper-pagination-fraction) {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  height: var(--size-height-5);
  padding: var(--padding-5);
  border-radius: var(--radius-max);
  background-color: var(--light-color-element-inverse);
}

.swiper-indicator .swiper-pagination.swiper-pagination-fraction.swiper-pagination-bg {
  font-weight: var(--font-weight-bold);
  padding: var(--padding-5);
  border-radius: var(--radius-max);
  background-color: var(--light-color-surface-white);
}

.swiper-indicator .swiper-button-next,
.swiper-indicator .swiper-button-prev {
  position: relative;
  top: auto;
  bottom: auto;
  left: auto;
  right: auto;
  margin: 0;
}

.swiper-indicator .swiper-navigation {
  display: inline-flex;
  gap: var(--gap-3);
}

.swiper-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  position: relative;
  height: var(--size-height-5);
}

.swiper-pagination .swiper-pagination-bullet {
  width: var(--size-height-1);
  height: var(--size-height-1);
  background-color: var(--light-color-element-gray);
  opacity: 1;
}

.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  width: 2rem;
  border-radius: var(--radius-max);
  background-color: var(--light-color-element-primary);
}

.swiper-pagination.swiper-pagination-fraction {
  gap: var(--gap-2);
  padding: 0 var(--padding-6);
  color: var(--light-color-text-basic);
  font-weight: var(--font-weight-bold);
  border: var(--light-border-width-variable-regular) solid var(--light-color-border-gray-light);
  border-radius: var(--radius-max);
  background-color: var(--light-color-surface-white);
}

.swiper-pagination.swiper-pagination-fraction .swiper-pagination-current {
  color: var(--light-color-text-secondary);
}

.swiper-controller {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: var(--gap-3);
}

[class^=swiper-button-] {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  width: var(--size-height-5);
  height: var(--size-height-5);
  flex-shrink: 0;
  border-radius: var(--radius-max);
  border: var(--light-border-width-variable-regular) solid var(--light-color-border-gray-light);
  background-color: var(--light-color-action-white);
}

[class^=swiper-button-]::after {
  content: "";
  display: inline-flex;
  width: var(--icon--size-large);
  height: var(--icon--size-large);
  background-color: var(--light-color-text-basic);
  forced-color-adjust: none;
  font-size: 0 !important;
}

[class^=swiper-button-]:hover {
  background-color: var(--light-color-action-secondary-hover);
}

.swiper-button-more::after {
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_plus.svg);
  mask-image: url(../img/component/icon/ico_plus.svg);
}

.swiper-button-play::after {
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_swiper_play.svg);
  mask-image: url(../img/component/icon/ico_swiper_play.svg);
}

.swiper-button-stop::after {
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_swiper_stop.svg);
  mask-image: url(../img/component/icon/ico_swiper_stop.svg);
}

.swiper-button-next::after,
.swiper-button-prev::after {
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_angle.svg);
  mask-image: url(../img/component/icon/ico_angle.svg);
}

.swiper-button-next:hover,
.swiper-button-prev:hover {
  background-color: var(--light-color-action-secondary-hover);
}

.swiper-button-next:active,
.swiper-button-prev:active {
  background-color: var(--light-color-action-secondary-pressed);
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
  background-color: var(--color-gray-0);
  opacity: 1;
}

.swiper-button-next.swiper-button-disabled::after,
.swiper-button-prev.swiper-button-disabled::after {
  background-color: var(--light-color-icon-disabled-on);
}

.swiper-button-next {
  right: 0;
}

.swiper-button-next::after {
  transform: rotate(-90deg);
}

.swiper-button-prev {
  left: 0;
}

.swiper-button-prev::after {
  transform: rotate(90deg);
}

@media (max-width: 767px) {
  .swiper-indicator.w-hide {
    display: flex !important;
  }

  .swiper-indicator .swiper-navigation.w-hide {
    display: flex !important;
  }
}

/* 페이지네이션 */
.pagination {
  --pagination--color-text: var(--light-color-text-subtle);
  --pagination--color-text-active: var(--light-color-text-inverse-static);
  --pagination--color-text-disabled: var(--light-color-text-disabled);
  --pagination--color-action: var(--light-color-action-secondary);
  --pagination--color-action-hover: var(--light-color-action-secondary-hover);
  --pagination--color-action-pressed: var(--light-color-action-secondary-pressed);
  --pagination--color-action-active: var(--light-color-action-secondary-active);
  --pagination-gap: var(--gap-3);
  --pagination-margin-top: var(--pc-gap-layout-h2-h3);
  --pagination--size-height: var(--size-height-6);
  --pagination--radius: var(--radius-medium1);
  --pagination--prev-btn-padding-left: var(--padding-2);
  --pagination--prev-btn-padding-right: var(--padding-3);
}

@media (max-width: 767px) {
  body:not(.KS-admin) .pagination {
    --pagination-gap: var(--gap-7) var(--gap-3);
    --pagination-margin-top: var(--mobile-gap-layout-h2-h3);
  }
}

.pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: var(--pagination-gap);
  width: 100%;
  margin-top: var(--pagination-margin-top);
  color: var(--pagination--color-text);
}

.pagination .page-navi,
.pagination .page-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  height: var(--pagination--size-height);
  background-color: var(--pagination--color-action);
  border-radius: var(--pagination--radius);
  transition: var(--transition-base);
}

.pagination .page-navi:hover,
.pagination .page-link:hover {
  background-color: var(--pagination--color-action-hover);
}

.pagination .page-navi:active,
.pagination .page-link:active {
  background-color: var(--pagination--color-action-pressed);
}

.pagination .page-navi.prev {
  order: 1;
  padding: 0 var(--pagination--prev-btn-padding-right) 0 var(--pagination--prev-btn-padding-left);
}

.pagination .page-navi.prev::before {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  content: "";
  display: inline-flex;
  width: var(--icon--size-medium);
  height: var(--icon--size-medium);
  background-color: var(--light-color-text-basic);
  forced-color-adjust: none;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_angle.svg);
  mask-image: url(../img/component/icon/ico_angle.svg);
  background-color: var(--pagination--color-text);
  transform: rotate(90deg);
}

.pagination .page-navi.next {
  order: 3;
  padding: 0 var(--pagination--prev-btn-padding-left) 0 var(--pagination--prev-btn-padding-right);
}

.pagination .page-navi.next::after {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  content: "";
  display: inline-flex;
  width: var(--icon--size-medium);
  height: var(--icon--size-medium);
  background-color: var(--light-color-text-basic);
  forced-color-adjust: none;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_angle.svg);
  mask-image: url(../img/component/icon/ico_angle.svg);
  background-color: var(--pagination--color-text);
  transform: rotate(-90deg);
}

.pagination .page-navi.disabled {
  color: var(--pagination--color-text-disabled);
}

.pagination .page-navi.disabled:hover,
.pagination .page-navi.disabled:active {
  background-color: var(--pagination--color-action-disabled);
}

.pagination .page-navi.disabled::before,
.pagination .page-navi.disabled::after {
  background-color: var(--pagination--color-text-disabled);
}

.pagination .page-links {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  order: 2;
  gap: var(--gap-3);
}

.pagination .page-links .page-link {
  width: var(--pagination--size-height);
  height: var(--pagination--size-height);
}

.pagination .page-links .page-link.link-dot {
  display: inline-flex;
  width: var(--icon--size-large);
  height: var(--icon--size-large);
  background-color: var(--light-color-text-basic);
  forced-color-adjust: none;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_ellipsis.svg);
  mask-image: url(../img/component/icon/ico_ellipsis.svg);
}

.pagination .page-links .page-link.active {
  background-color: var(--pagination--color-action-active);
  font-weight: var(--font-weight-bold);
  color: var(--pagination--color-text-active);
}

.pagination+.helper-box {
  margin-top: var(--padding-10);
}


@media (max-width: 767px) {
  .pagination {
    flex-wrap: wrap;
  }

  .pagination .page-links {
    width: 100%;
  }

  .pagination .page-navi.next {
    transition: none;
    order: 1;
  }

  .pagination+.helper-box {
    margin-top: var(--padding-9);
  }
}


/* 브레드크럼 */
.breadcrumb-wrap {
  --breadcrumb--padding-x: var(--padding-2);
  --breadcrumb--margin-bottom: var(--pc-gap-layout-breadcrumb-h1);
  --breadcrumb--radius: var(--radius-medium2);
  --breadcrumb--pc-font-size: var(--pc-font-size-label-small);
  --breadcrumb--mobile-font-size: var(--mobile-font-size-label-small);
  --breadcrumb--color-action: var(--light-color-action-secondary);
  --breadcrumb--color-action-hover: var(--light-color-action-secondary-hover);
  --breadcrumb--color-action-pressed: var(--light-color-action-secondary-pressed);
  --breadcrumb--color-text: var(--light-color-text-basic);
  --breadcrumb--color-text-disabled: var(--light-color-text-disabled);
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: row;
  margin-bottom: var(--number-8);
  padding-top: var(--number-16);
}

.breadcrumb-wrap .breadcrumb {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  gap: var(--gap-2);
  width: 100%;
}

.breadcrumb-wrap .breadcrumb li {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  font-size: var(--breadcrumb--pc-font-size);
}

@media (max-width: 767px) {
  .breadcrumb-wrap .breadcrumb li {
    font-size: var(--breadcrumb--mobile-font-size);
  }
}

.breadcrumb-wrap .breadcrumb li .txt {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  gap: var(--gap-2);
  padding: 0 var(--breadcrumb--padding-x);
  background-color: var(--breadcrumb--color-action);
  border-radius: var(--breadcrumb--radius);
}

.breadcrumb-wrap .breadcrumb li a.txt {
  text-decoration: underline;
  text-underline-offset: var(--font-underline-offset);
}

.breadcrumb-wrap .breadcrumb li a.txt:not(.disabled):hover {
  background-color: var(--breadcrumb--color-action-hover);
}

.breadcrumb-wrap .breadcrumb li a.txt:not(.disabled):active {
  background-color: var(--breadcrumb--color-action-pressed);
}

.breadcrumb-wrap .breadcrumb li a.txt:not(.disabled):focus,
.breadcrumb-wrap .breadcrumb li a.txt:not(:disabled):focus {
  box-shadow: var(--box-shadow-outline-inset);
  outline-offset: -0.4rem;
}

.breadcrumb-wrap .breadcrumb li a.txt.disabled,
.breadcrumb-wrap .breadcrumb li a.txt:disabled {
  cursor: default;
  color: var(--breadcrumb--color-text-disabled);
}

.breadcrumb-wrap .breadcrumb li:not(:last-child)::after {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  content: "";
  margin-left: var(--gap-2);
  display: inline-flex;
  width: var(--icon--size-small);
  height: var(--icon--size-small);
  background-color: var(--light-color-text-basic);
  forced-color-adjust: none;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_angle.svg);
  mask-image: url(../img/component/icon/ico_angle.svg);
  transform: rotate(-90deg);
}

.breadcrumb-wrap .breadcrumb .home {
  gap: 0;
}

.breadcrumb-wrap .breadcrumb .home .txt::before {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  content: "";
  display: inline-flex;
  width: var(--icon--size-small);
  height: var(--icon--size-small);
  background-color: var(--light-color-text-basic);
  forced-color-adjust: none;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_bread_home.svg);
  mask-image: url(../img/component/icon/ico_bread_home.svg);
}

@media (max-width: 767px) {
  .breadcrumb-wrap {
    padding-top: var(--mobile-gap-layout-header-breadcrumb);
    padding-bottom: var(--mobile-gap-layout-breadcrumb-h2);
  }

  /* .breadcrumb-wrap .breadcrumb li:not(.home):not(:last-child) {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
  } 

  .breadcrumb-wrap .breadcrumb li:not(.home):not(:nth-child(2)):last-child {
    gap: var(--gap-2);
  }

 .breadcrumb-wrap .breadcrumb li:not(.home):not(:nth-child(2)):last-child::before,
  .breadcrumb-wrap .breadcrumb li:not(.home):not(:nth-child(2)):last-child::after {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: row;
    content: "";
    display: inline-flex;
    width: var(--icon--size-small);
    height: var(--icon--size-small);
    background-color: var(--light-color-text-basic);
    forced-color-adjust: none;
  }

  /* .breadcrumb-wrap .breadcrumb li:not(.home):not(:nth-child(2)):last-child::before {
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center center;
    -webkit-mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center center;
    mask-size: contain;
    -webkit-mask-image: url(../img/component/icon/ico_ellipsis.svg);
    mask-image: url(../img/component/icon/ico_ellipsis.svg);
  } 

  .breadcrumb-wrap .breadcrumb li:not(.home):not(:nth-child(2)):last-child::after {
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center center;
    -webkit-mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center center;
    mask-size: contain;
    -webkit-mask-image: url(../img/component/icon/ico_angle.svg);
    mask-image: url(../img/component/icon/ico_angle.svg);
    transform: rotate(-90deg);
  }
    */

  .breadcrumb-wrap .breadcrumb li:not(.home):not(:nth-child(2)):last-child .txt {
    order: 3;
  }
}

/* 단계 표시기 */
.step-wrap {
  --step--layout-gap: var(--number-18);
  --step--step-font-size: var(--pc-font-size-body-xsmall);
  --step--step-title-font-size: var(--pc-font-size-body-small);
  --step--circle-size-default: var(--icon--size-medium);
  --step--circle-size-active: 1.2rem;
  --step--circle-radius: var(--radius-max);
  --step--padding-txt-top: var(--padding-9);
  --step--padding-txt-right: var(--padding-9);
  --step--border-width-medium: 0.3rem;
  --step--color-step: var(--light-color-text-subtle);
  --step--color-step-title: var(--light-color-text-basic);
  --step--color-fill-default: var(--light-color-element-gray-light);
  --step--color-fill-done: var(--light-color-element-gray);
  --step--color-fill-active: var(--light-color-element-primary);
  --step--color-fill-white: var(--light-color-element-inverse-static);
  --step--color-border-default: var(--light-color-element-disabled-light);
  --step--color-border-done: var(--step--color-fill-done);
  --step--color-border-active: var(--step--color-fill-active);
  --step--color-icon-done: var(--step--color-fill-white);
  --step--color-icon-active: var(--step--color-fill-active);
  display: flex;
  margin-bottom: var(--step--layout-gap);
}

.step-wrap>li {
  flex: 1;
  position: relative;
}

.step-wrap>li::after {
  position: absolute;
  top: calc(var(--step--circle-size-default) / 2 - var(--step--border-width-medium) / 2);
  left: 0.1rem;
  content: "";
  width: 100%;
  height: var(--step--border-width-medium);
  background-color: var(--step--color-fill-default);
}

.step-wrap>li>span {
  display: flex;
  flex-direction: column;
  position: relative;
  padding-top: var(--step--padding-txt-top);
  padding-right: var(--step--padding-txt-top);
}

.step-wrap>li>span::before,
.step-wrap>li>span::after {
  content: "";
  border-radius: var(--step--circle-radius);
}

.step-wrap>li>span::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: var(--step--circle-size-default);
  height: var(--step--circle-size-default);
  background-color: var(--step--color-fill-default);
  border: 0.1rem solid var(--step--color-border-default);
}

.step-wrap>li .step {
  font-size: var(--step--step-font-size);
  color: var(--step--color-step);
}

.step-wrap>li .step-tit {
  font-size: var(--step--step-title-font-size);
  font-weight: var(--font-weight-bold);
  color: var(--step--color-step-title);
  white-space: nowrap;
}

.step-wrap>li.done::after {
  background-color: var(--step--color-fill-done);
}

.step-wrap>li.done>span::before {
  border-color: var(--step--color-border-done);
  background-color: var(--step--color-fill-done);
}

.step-wrap>li.done>span::after {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-flex;
  width: var(--step--circle-size-default);
  height: var(--step--circle-size-default);
  background-color: var(--light-color-text-basic);
  forced-color-adjust: none;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_step_done.svg);
  mask-image: url(../img/component/icon/ico_step_done.svg);
  background-color: var(--step--color-icon-done);
  z-index: 3;
}

.step-wrap>li.active::after {
  background-color: var(--step--color-border-default);
}

.step-wrap>li.active>span::before {
  background-color: var(--step--color-fill-white);
  border-width: var(--step--border-width-medium);
  border-color: var(--step--color-border-active);
}

.step-wrap>li.active>span::after {
  position: absolute;
  top: calc((var(--step--circle-size-active) - var(--step--circle-size-default)) / 2 * -1);
  left: calc((var(--step--circle-size-default) - var(--step--circle-size-active)) / 2);
  width: var(--step--circle-size-active);
  height: var(--step--circle-size-active);
  background-color: var(--step--color-icon-active);
  z-index: 3;
}

.step-wrap>li:last-child::after {
  display: none;
}

@media (max-width: 1279px) {
  .step-wrap {
    --step--layout-gap: var(--padding-10);
  }
}

@media (max-width: 767px) {
  .step-wrap {
    --step--layout-gap: var(--number-18);
    --step--step-font-size: var(--mobile-font-size-body-xsmall);
    --step--step-title-font-size: var(--pc-font-size-body-small);
    --step--padding-txt-top: var(--step--circle-size-default);
    --step--padding-txt-right: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    position: relative;
    width: 100%;
    position: static;
  }

  .step-wrap>li {
    flex: 1 1 0px;
    min-width: 0;
  }

  .step-wrap>li .step {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
  }

  .step-wrap>li .step-tit {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
  }
}

@media (max-width: 767px) and (max-width: 767px) {
  .step-wrap>li:last-child {
    flex: 0 0 var(--step--circle-size-default);
  }
}

/* 배지 */
.badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  --badge--size-height: var(--size-height-4);
  --badge--line-height: 2.4rem;
  --badge--padding: var(--padding-3);
  --badge--radius: var(--radius-small2);
  --badge--radius-max: var(--radius-max);
  --badge--dot-size: .6rem;
  --badge--dot-padding: 0;
  --badge--number-size-height: var(--size-height-3);
  --badge--pc-font-size: var(--pc-font-size-label-small);
  --badge--mobile-font-size: var(--mobile-font-size-label-small);
  --badge--pc-font-size-large: var(--pc-font-size-label-medium);
  --badge--mobile-font-size-large: var(--mobile-font-size-label-medium);
  --badge--size-height-large: var(--size-height-5);
  --badge--color-primary-element: var(--light-color-element-primary);
  --badge--color-primary-element-lighter: var(--light-color-element-primary-lighter);
  --badge--color-primary-text: var(--light-color-text-primary);
  --badge--color-secondary-element: var(--light-color-element-secondary);
  --badge--color-secondary-element-lighter: var(--light-color-element-secondary-lighter);
  --badge--color-secondary-text: var(--light-color-text-secondary);
  --badge--color-gray-element: var(--light-color-element-gray);
  --badge--color-gray-element-lighter: var(--light-color-element-gray-light);
  --badge--color-gray-text: var(--light-color-text-subtle);
  --badge--color-point-element: var(--light-color-element-point);
  --badge--color-point-element-lighter: var(--light-color-element-point-lighter);
  --badge--color-point-text: var(--light-color-text-point);
  --badge--color-danger-element: var(--light-color-element-danger);
  --badge--color-danger-element-lighter: var(--light-color-element-danger-lighter);
  --badge--color-danger-text: var(--light-color-text-danger);
  --badge--color-warning-element: var(--light-color-element-warning);
  --badge--color-warning-element-lighter: var(--light-color-element-warning-lighter);
  --badge--color-warning-text: var(--light-color-text-warning);
  --badge--color-success-element: var(--light-color-element-success);
  --badge--color-success-element-lighter: var(--light-color-element-success-lighter);
  --badge--color-success-text: var(--light-color-text-success);
  --badge--color-information-element: var(--light-color-element-information);
  --badge--color-information-element-lighter: var(--light-color-element-information-lighter);
  --badge--color-information-text: var(--light-color-text-information);
  --badge--color-disabled-element: var(--light-color-element-disabled-dark);
  --badge--color-disabled-element-lighter: var(--light-color-element-disabled-light);
  --badge--color-disabled-text: var(--light-color-text-disabled-on);
  --badge--color-background-basic: var(--light-color-background-white);
  --badge--color-text-basic: var(--light-color-text-inverse-static);
}

.badge.outline-primary {
  border-width: var(--light-border-width-variable-regular);
  border-style: solid;
  border-color: var(--badge--color-primary-element);
  color: var(--badge--color-primary-text);
}

.badge.bg-primary {
  background-color: var(--badge--color-primary-element);
  color: var(--badge--color-text-basic);
}

.badge.bg-light-primary {
  background-color: var(--badge--color-primary-element-lighter);
  color: var(--badge--color-primary-text);
}

.badge.outline-secondary {
  border-width: var(--light-border-width-variable-regular);
  border-style: solid;
  border-color: var(--badge--light-color-secondary-element);
  color: var(--badge--color-secondary-text);
}

.badge.bg-secondary {
  background-color: var(--badge--color-secondary-element);
  color: var(--badge--color-text-basic);
}

.badge.bg-light-secondary {
  background-color: var(--badge--color-secondary-element-lighter);
  color: var(--badge--color-secondary-text);
}

.badge.outline-gray {
  border-width: var(--light-border-width-variable-regular);
  border-style: solid;
  border-color: var(--badge--light-color-gray-element);
  color: var(--badge--color-gray-text);
}

.badge.bg-gray {
  background-color: var(--badge--color-gray-element);
  color: var(--badge--color-text-basic);
}

.badge.bg-light-gray {
  background-color: var(--badge--color-gray-element-lighter);
  color: var(--badge--color-gray-text);
}

.badge.outline-point {
  border-width: var(--light-border-width-variable-regular);
  border-style: solid;
  border-color: var(--badge--light-color-point-element);
  color: var(--badge--color-point-text);
}

.badge.bg-point {
  background-color: var(--badge--color-point-element);
  color: var(--badge--color-text-basic);
}

.badge.bg-light-point {
  background-color: var(--badge--color-point-element-lighter);
  color: var(--badge--color-point-text);
}

.badge.outline-danger {
  border-width: var(--light-border-width-variable-regular);
  border-style: solid;
  border-color: var(--badge--light-color-danger-element);
  color: var(--badge--color-danger-text);
}

.badge.bg-danger {
  background-color: var(--badge--color-danger-element);
  color: var(--badge--color-text-basic);
}

.badge.bg-light-danger {
  background-color: var(--badge--color-danger-element-lighter);
  color: var(--badge--color-danger-text);
}

.badge.outline-warning {
  border-width: var(--light-border-width-variable-regular);
  border-style: solid;
  border-color: var(--badge--light-color-warning-element);
  color: var(--badge--color-warning-text);
}

.badge.bg-warning {
  background-color: var(--badge--color-warning-element);
  color: var(--badge--color-text-basic);
}

.badge.bg-light-warning {
  background-color: var(--badge--color-warning-element-lighter);
  color: var(--badge--color-warning-text);
}

.badge.outline-success {
  border-width: var(--light-border-width-variable-regular);
  border-style: solid;
  border-color: var(--badge--light-color-success-element);
  color: var(--badge--color-success-text);
}

.badge.bg-success {
  background-color: var(--badge--color-success-element);
  color: var(--badge--color-text-basic);
}

.badge.bg-light-success {
  background-color: var(--badge--color-success-element-lighter);
  color: var(--badge--color-success-text);
}

.badge.outline-information {
  border-width: var(--light-border-width-variable-regular);
  border-style: solid;
  border-color: var(--badge--light-color-information-element);
  color: var(--badge--color-information-text);
}

.badge.bg-information {
  background-color: var(--badge--color-information-element);
  color: var(--badge--color-text-basic);
}

.badge.bg-light-information {
  background-color: var(--badge--color-information-element-lighter);
  color: var(--badge--color-information-text);
}

.badge.outline-disabled {
  border-width: var(--light-border-width-variable-regular);
  border-style: solid;
  border-color: var(--badge--light-color-disabled-element);
  color: var(--badge--color-disabled-text);
}

.badge.bg-disabled {
  background-color: var(--badge--color-disabled-element);
  color: var(--badge--color-text-basic);
}

.badge.bg-light-disabled {
  background-color: var(--badge--color-disabled-element-lighter);
  color: var(--badge--color-disabled-text);
}

.badge {
  height: var(--badge--size-height);
  line-height: var(--badge--line-height);
  font-size: var(--badge--pc-font-size);
  font-weight: var(--font-weight-regular);
  padding: 0 var(--badge--padding);
  border-radius: var(--badge--radius);
}

@media (max-width: 767px) {
  .badge {
    font-size: var(--badge--mobile-font-size);
  }
}

.badge.large {
  height: var(--badge--size-height-large);
  font-size: var(--badge--pc-font-size-large);
}

@media (max-width: 767px) {
  .badge.large {
    font-size: var(--badge--mobile-font-size);
  }
}

.badge.number {
  height: var(--badge--number-size-height);
  border-radius: var(--badge--radius-max);
}

.badge.dot {
  width: var(--badge--dot-size);
  height: var(--badge--dot-size);
  padding: var(--badge--dot-padding);
  border-radius: var(--badge--radius-max);
}

.badge-wrap {
  --badge--wrap-gap: var(--gap-3);
  display: flex;
  gap: var(--badge--wrap-gap);
}

/* form 레이아웃 */
.fieldset {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  gap: var(--gap-7);
}

.form-col-group {
  display: flex;
  gap: var(--gap-4);
}

.form-col-group .form-group {
  width: fit-content;
}

@media (max-width: 767px) {
  .form-col-group {
    flex-direction: column;
  }

  .form-col-group .form-group {
    width: 100%;
  }
}

.form-wrap-group {
  display: inline-flex;
  gap: var(--gap-4);
}

.form-col-group .form-group.search-btn {
  width: auto;
}

.form-group {
  --form-group--label-pc-font-size: var(--pc-font-size-label-small);
  --form-group--label-mobile-font-size: var(--mobile-font-size-label-small);
  /* --form-group--gap: var(--gap-3); */
  --form-group--icon-padding-right: calc(var(--padding-7) * 2 + var(--icon--size-large));
  --form-group--message-pc-font-size: var(--pc-font-size-label-xsmall);
  --form-group--message-mobile-font-size: var(--mobile-font-size-label-xsmall);
  --form-group--message-text-color: var(--light-color-text-subtle);
  --form-group--message-success-text-color: var(--light-color-text-success);
  --form-group--message-information-text-color: var(--light-color-text-information);
  --form-group--message-error-text-color: var(--light-color-text-danger);
  display: flex;
  align-items: normal;
  justify-content: flex-start;
  flex-direction: column;
  gap: var(--form-group--gap);
  width: 100%;
}

.form-group .form-tit,
.form-group .form-label {
  width: 100%;
  color: var(--light-color-text-subtle);
}

.form-group .form-conts {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  gap: var(--gap-4);
  width: 100%;
}

.form-group .form-conts.keyword-sch {
  width: 58.8rem;
}

.form-group .form-conts .form-label {
  display: flex;
  font-size: var(--form-group--label-pc-font-size);
  width: 100%;
}

@media (max-width: 767px) {
  .form-group .form-conts .form-label {
    font-size: var(--form-group--label-mobile-font-size);
  }
}

.form-group .form-conts.btn-ico-wrap {
  position: relative;
}

.form-group .form-conts.btn-ico-wrap .input {
  padding-right: var(--form-group--icon-padding-right);
}

.form-group .form-conts.btn-ico-wrap .btn-group,
.form-group .form-conts.btn-ico-wrap .btn {
  position: absolute;
  top: 50%;
  right: var(--padding-7);
  transform: translateY(-50%);
}

.form-group .form-conts.btn-ico-wrap .btn-group {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  gap: var(--gap-3);
}

.form-group .form-conts.btn-ico-wrap .btn-group .btn {
  position: static;
  transform: translateY(0);
}

.form-group .form-conts.btn-ico-wrap .btn-delete-input {
  display: none;
}

.form-conts[data-delete=true] .input:not(:placeholder-shown)~.btn-delete-input {
  display: flex;
}

.form-conts[data-delete=true] .input:not(:placeholder-shown)~.btn-group .btn-delete-input {
  display: flex;
}

.form-group .form-conts.calendar-conts {
  gap: 0;
}

.form-group>p {
  width: 100%;
}

.form-group [class^=form-hint] {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  gap: var(--gap-2);
  width: 100%;
  font-size: var(--form-group--message-pc-font-size);
  color: var(--form-group--message-text-color);
}

@media (max-width: 767px) {
  .form-group [class^=form-hint] {
    font-size: var(--form-group--message-mobile-font-size);
  }
}

.form-group [class^=form-hint]::before {
  display: inline-flex;
  content: "";
  display: inline-flex;
  width: var(--icon--size-small);
  height: var(--icon--size-small);
  background-color: var(--light-color-text-basic);
  forced-color-adjust: none;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_information.svg);
  mask-image: url(../img/component/icon/ico_information.svg);
}

.form-group [class^=form-hint-]::before {
  display: inline-flex;
  width: var(--icon--size-small);
  height: var(--icon--size-small);
  background-color: var(--light-color-text-basic);
  background-color: transparent !important;
  forced-color-adjust: none;
}

.form-group .form-hint-success {
  color: var(--form-group--message-success-text-color);
}

.form-group .form-hint-success::before {
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_success_fill.svg);
  mask-image: url(../img/component/icon/ico_success_fill.svg);
  -webkit-mask-image: none;
  mask-image: none;
  background-image: url(../img/component/icon/ico_success_fill.svg);
  background-color: transparent !important;
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-mask: none;
  mask: none;
}

.form-group .form-hint-information {
  color: var(--form-group--message-information-text-color);
}

.form-group .form-hint-information::before {
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_information_fill.svg);
  mask-image: url(../img/component/icon/ico_information_fill.svg);
  -webkit-mask-image: none;
  mask-image: none;
  background-image: url(../img/component/icon/ico_information_fill.svg);
  background-color: transparent !important;
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-mask: none;
  mask: none;
}

.form-group .form-hint-invalid {
  color: var(--form-group--message-error-text-color);
}

.form-group .form-hint-invalid::before {
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_error_fill.svg);
  mask-image: url(../img/component/icon/ico_error_fill.svg);
  -webkit-mask-image: none;
  mask-image: none;
  background-image: url(../img/component/icon/ico_error_fill.svg);
  background-color: transparent !important;
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-mask: none;
  mask: none;
}


.form-checks-inline {
  display: flex;
  gap: 1.2rem;
}

.input-group {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  gap: var(--gap-5);
  width: 100%;
}

.input-group.range {
  align-items: flex-end;
  position: relative;
}

.input-group.range>li:not(.mark) {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  flex: 1 1 0px;
  min-width: 0;
  gap: var(--form-group--gap);
  position: relative;
}

.input-group.range>li.mark {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  height: var(--size-height-8);
}

.input-group.range>li.mark.large {
  height: var(--size-height-8);
}

.input-group.range>li.mark.medium {
  height: var(--size-height-7);
}

.input-group.range>li.mark.small {
  height: var(--size-height-6);
}

.row .input-group {
  flex-direction: column;
}

.row .input-group.range>li {
  width: 100%;
}

/* 검색 폼 */
.sch-form-wrap {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  gap: var(--gap-5);
}

.sch-form-wrap.vert {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
}

.sch-form-wrap.vert .sch-input {
  width: 100%;
}

.sch-form-wrap .input-group .form-select {
  width: auto;
}

.sch-form-wrap .btn.ico-sch-plus::before {
  width: var(--size-height-4);
  height: var(--size-height-4);
}

.sch-input {
  display: flex;
  position: relative;
}

.sch-input input {
   padding: 0 var(--padding-10) 0 var(--padding-6);
}

.sch-input .input.xlarge {
  font-weight: var(--font-weight-bold);
  padding: 0 7.2rem 0 var(--padding-8);
}

.sch-input .ico-search {
  position: absolute;
  top: 50%;
  right: var(--gap-5);
  transform: translateY(-50%);
}

@media (max-width: 767px) {
  .form-group .form-conts.keyword-sch {
    width: 100%;
  }

  /* 검색 폼 */
  .sch-form-wrap {
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
  }

  .sch-input .input.xlg {
    padding: 0 var(--number-16) 0 var(--number-8);
  }

  .sch-input .input.xlg~.ico-search {
    right: var(--number-8);
    width: 2.4rem;
    height: 2.4rem;
  }
}

/* 입력 필드 / 텍스트 영역 */
.input {
  --input--color-surface: var(--light-color-input-surface);
  --input--color-surface-readonly: var(--light-color-input-surface-disabled);
  --input--color-surface-disabled: var(--light-color-input-surface-disabled);
  --input--color-surface-error: var(--light-color-input-surface);
  --input--color-border: var(--light-color-input-border);
  --input--color-border-active: var(--light-color-input-border-active);
  --input--color-border-readonly: var(--light-color-input-border-disabled);
  --input--color-border-disabled: var(--light-color-input-border-disabled);
  --input--color-border-error: var(--light-color-input-border-error);
  --input--color-text: var(--light-color-text-subtle);
  --input--color-text-active: var(--light-color-text-basic);
  --input--color-text-readonly: var(--light-color-text-subtle);
  --input--color-text-disabled: var(--light-color-text-disabled-on);
  --input--color-text-placeholder: var(--light-color-text-disabled);
  --input--color-text-error: var(--light-color-text-subtle);
  --input--padding-x: var(--padding-6);
  --input--size-height-small: var(--size-height-6);
  --input--radius-small: var(--radius-medium1);
  --input--pc-font-size-small: var(--pc-font-size-label-small);
  --input--mobile-font-size-small: var(--mobile-font-size-label-small);
  --input--size-height-medium: var(--size-height-7);
  --input--radius-medium: var(--radius-medium2);
  --input--pc-font-size-medium: var(--pc-font-size-label-medium);
  --input--mobile-font-size-medium: var(--mobile-font-size-label-medium);
  --input--size-height-large: var(--size-height-8);
  --input--radius-large: var(--radius-medium3);
  --input--pc-font-size-large: var(--pc-font-size-label-large);
  --input--mobile-font-size-large: var(--mobile-font-size-label-large);
  --input--size-height-xlarge: var(--size-height-11);
  --input--radius-xlarge: var(--radius-large2);
  --input--pc-font-size-xlarge: var(--pc-font-size-heading-medium);
  --input--mobile-font-size-xlarge: var(--mobile-font-size-heading-medium);
}

.input {
  height: var(--input--size-height-large);
  border-radius: var(--input--radius-large);
  font-size: var(--input--pc-font-size-large);
}

@media (max-width: 767px) {
  .input {
    font-size: var(--input--mobile-font-size-large);
  }
}

.input.small {
  height: var(--input--size-height-small);
  border-radius: var(--input--radius-small);
  font-size: var(--input--pc-font-size-small);
}

@media (max-width: 767px) {
  .input.small {
    font-size: var(--input--mobile-font-size-small);
  }
}

.input.medium {
  height: var(--input--size-height-medium);
  border-radius: var(--input--radius-medium);
  font-size: var(--input--pc-font-size-medium);
}

@media (max-width: 767px) {
  .input.medium {
    font-size: var(--input--mobile-font-size-medium);
  }
}

.input.large {
  height: var(--input--size-height-large);
  border-radius: var(--input--radius-large);
  font-size: var(--input--pc-font-size-large);
}

@media (max-width: 767px) {
  .input.large {
    font-size: var(--input--mobile-font-size-large);
  }
}

.input.xlarge {
  height: var(--input--size-height-xlarge);
  border-radius: var(--input--radius-xlarge);
  font-size: var(--input--pc-font-size-xlarge);
  font-weight: var(--font-weight-bold);
}

@media (max-width: 767px) {
  .input.xlarge {
    font-size: var(--input--mobile-font-size-xlarge);
  }
}

.input {
  position: relative;
  width: 100%;
  padding: 0 var(--input--padding-x);
  border-width: var(--light-border-width-variable-regular);
  background-color: var(--input--color-surface);
  border: 0.1rem solid var(--input--color-border);
  font-family: inherit;
  color: var(--input--color-text);
  transition: var(--transition-base);
}

.input:focus,
.input.focus {
  outline: 1px solid var(--input--color-border-active);
  box-shadow: none;
}

.input[readonly] {
  background-color: var(--input--color-surface-readonly);
  border-color: var(--input--color-border-readonly);
  color: var(--input--color-text-readonly);
}

input[readonly] {
  background-color: var(--color-gray-10);
  color: var(--color-gray-70);
}
.input[readonly].datepicker {
  background-color: var(--input--color-surface);
  border-color: var(--input--color-border);
  color: var(--input--color-text);
}

.input[readonly]:focus {
  border-color: var(--input--color-border-active);
}

.input[disabled] {
  background-color: var(--input--color-surface-disabled);
  border-color: var(--input--color-border-disabled);
  color: var(--input--color-text-disabled);
}

.input::-webkit-input-placeholder {
  color: var(--input--color-text-placeholder);
}

.input::-moz-placeholder {
  color: var(--input--color-text-placeholder);
}

.input:-ms-input-placeholder {
  color: var(--input--color-text-placeholder);
}

.input::-ms-input-placeholder {
  color: var(--input--color-text-placeholder);
}

.input:not(textarea):placeholder-shown {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

textarea.input {
  --input--textarea-size-height: 14.4rem;
  --input--textarea-padding-x: var(--padding-6);
  --input--textarea-padding-y: var(--padding-3);
  height: var(--input--textarea-size-height);
  padding: var(--input--textarea-padding-y) var(--input--textarea-padding-x);
  line-height: var(--transition-base);
}

.is-error .input {
  background-color: var(--input--color-surface-error);
  outline: 2px solid var(--input--color-border-error);
  color: var(--input--color-text-error);
}

.is-error .input:focus {
  border-color: var(--input--color-border-active);
}

.textarea-wrap {
  display: flex;
  align-items: normal;
  justify-content: flex-start;
  flex-direction: column;
  gap: var(--gap-3);
  width: 100%;
}

.textarea-count {
  --input--count-number-pc-font-size: var(--pc-font-size-body-small);
  --input--count-number-mobile-font-size: var(--mobile-font-size-body-small);
  --input--count-number-color-text: var(--light-color-text-subtle);
  --input--count-number-color-text-active: var(--light-color-text-primary);
  --input--count-number-color-text-error: var(--light-color-text-danger);
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-direction: row;
  gap: var(--gap-1);
  width: 100%;
  font-size: var(--input--count-number-pc-font-size);
  color: var(--input--count-number-color-text);
}

@media (max-width: 767px) {
  .textarea-count {
    font-size: var(--input--count-number-mobile-font-size);
  }
}

.textarea-count .count-now {
  color: var(--input--count-number-color-text-active);
}

.is-error .textarea-count .count-now {
  color: var(--input--count-number-color-text-error);
}

.textarea-bottom {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: row;
  gap: var(--gap-5);
}

.textarea-bottom .textarea-count {
  margin-left: auto;
  flex-basis: content;
  order: 2;
}

.textarea-bottom .form-hint-invalid {
  align-items: flex-start;
  order: 1;
}

.textarea-bottom .form-hint-invalid::before {
  flex: none;
}

/* 날짜선택 */
.calendar-input {
  --input--color-surface: var(--light-color-input-surface);
  position: relative;
  z-index: 1;
  width: 100%;
}

.calendar-input .input {
  padding-right: var(--form-group--icon-padding-right);
  background-image: none;
}

.calendar-input .btn {
  position: absolute;
  top: 50%;
  right: var(--padding-7);
  transform: translateY(-50%);
}

.calendar-input .range::after {
  display: none;
}


/* 셀렉트 */
.form-select {
  --form-select--color-background: var(--light-color-input-surface);
  --form-select--color-background-readonly: var(--light-color-input-surface-disabled);
  --form-select--color-background-disabled: var(--light-color-input-surface-disabled);
  --form-select--color-background-error: var(--light-color-input-surface);
  --form-select--icon-color-background: var(--light-color-icon-gray);
  --form-select--icon-color-background-readonly: var(--light-color-icon-disabled-on);
  --form-select--icon-color-background-disabled: var(--light-color-icon-disabled-on);
  --form-select--color-border: var(--light-color-input-border);
  --form-select--color-border-active: var(--light-color-input-border-active);
  --form-select--color-border-readonly: var(--light-color-input-border-disabled);
  --form-select--color-border-disabled: var(--light-color-input-border-disabled);
  --form-select--color-border-error: var(--light-color-input-border-error);
  --form-select--color-text: var(--light-color-text-disabled);
  --form-select--color-text-active: var(--light-color-text-basic);
  --form-select--color-text-completed: var(--light-color-text-subtle);
  --form-select--color-text-disabled: var(--light-color-text-disabled-on);
  --form-select--color-text-error: var(--light-color-text-subtle);
  --form-select--padding-default: var(--padding-6);
  --form-select--size-height-small: var(--size-height-6);
  --form-select--icon-size-small: var(--icon--size-small);
  --form-select--radius-small: var(--radius-medium3);
  --form-select--padding-right-small: calc(var(--form-select--padding-default) + var(--gap-3) + var(--form-select--icon-size-small));
  --form-select--pc-font-size-small: var(--pc-font-size-label-small);
  --form-select--mobile-font-size-small: var(--mobile-font-size-label-small);
  --form-select--size-height-medium: var(--size-height-7);
  --form-select--icon-size-medium: var(--icon--size-medium);
  --form-select--padding-right-medium: calc(var(--form-select--padding-default) + var(--gap-3) + var(--form-select--icon-size-medium));
  --form-select--radius-medium: var(--radius-medium2);
  --form-select--pc-font-size-medium: var(--pc-font-size-label-medium);
  --form-select--mobile-font-size-medium: var(--mobile-font-size-label-medium);
  --form-select--size-height-large: var(--size-height-8);
  --form-select--icon-size-large: var(--icon--size-large);
  --form-select--padding-right-large: calc(var(--form-select--padding-default) + var(--gap-3) + var(--form-select--icon-size-large));
  --form-select--radius-large: var(--radius-medium1);
  --form-select--pc-font-size-large: var(--pc-font-size-label-large);
  --form-select--mobile-font-size-large: var(--mobile-font-size-label-large);
}

.form-select {
  height: var(--form-select--size-height-large);
  padding: 0 var(--form-select--padding-right-large) 0 var(--form-select--padding-default);
  background-position: center right var(--form-select--padding-default);
  background-size: var(--form-select--icon-size-large) !important;
  border-radius: var(--form-select--radius-large);
  font-size: var(--form-select--pc-font-size-large);
}

@media (max-width: 767px) {
  .form-select {
    font-size: var(--form-select--mobile-font-size-large);
    width: 100%;
  }
}

.form-select.small {
  height: var(--form-select--size-height-small);
  padding: 0 var(--form-select--padding-right-small) 0 var(--form-select--padding-default);
  background-position: center right var(--form-select--padding-default);
  background-size: var(--form-select--icon-size-small) !important;
  border-radius: var(--form-select--radius-small);
  font-size: var(--form-select--pc-font-size-small);
}

@media (max-width: 767px) {
  .form-select.small {
    font-size: var(--form-select--mobile-font-size-small);
  }
}

.form-select.medium {
  height: var(--form-select--size-height-medium);
  padding: 0 var(--form-select--padding-right-medium) 0 var(--form-select--padding-default);
  background-position: center right var(--form-select--padding-default);
  background-size: var(--form-select--icon-size-medium) !important;
  border-radius: var(--form-select--radius-medium);
  font-size: var(--form-select--pc-font-size-medium);
}

@media (max-width: 767px) {
  .form-select.medium {
    font-size: var(--form-select--mobile-font-size-medium);
  }
}

.form-select.large {
  height: var(--form-select--size-height-large);
  padding: 0 var(--form-select--padding-right-large) 0 var(--form-select--padding-default);
  background-position: center right var(--form-select--padding-default);
  background-size: var(--form-select--icon-size-large) !important;
  border-radius: var(--form-select--radius-large);
  font-size: var(--form-select--pc-font-size-large);
}

@media (max-width: 767px) {
  .form-select.large {
    font-size: var(--form-select--mobile-font-size-large);
  }
}

.form-select {
  position: relative;
  width: 100%;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_angle.svg);
  mask-image: url(../img/component/icon/ico_angle.svg);
  -webkit-mask-image: none;
  mask-image: none;
  background-image: url(../img/component/icon/ico_angle.svg);
  background-color: transparent !important;
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-mask: none;
  mask: none;
  background-color: var(--form-select--color-background) !important;
  border-width: var(--light-border-width-variable-regular);
  border-style: solid;
  border-color: var(--form-select--color-border);
  font-family: inherit;
  color: var(--form-select--color-text);
  transition: var(--transition-base);
}

.form-select:focus {
  outline: 2px solid var(--form-select--color-border-active);
  box-shadow: none;
  color: var(--form-select--color-text-active);
}

.form-select.completed {
  color: var(--form-select--color-text-completed);
}

.form-select.is-error {
  outline: 2px solid var(--light-color-text-point);
}

.form-select[disabled] {
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_angle_disabled.svg);
  mask-image: url(../img/component/icon/ico_angle_disabled.svg);
  -webkit-mask-image: none;
  mask-image: none;
  background-image: url(../img/component/icon/ico_angle_disabled.svg);
  background-color: transparent !important;
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-mask: none;
  mask: none;
  background-color: var(--form-select--color-background-disabled) !important;
  border-color: var(--form-select--color-border-disabled);
  color: var(--form-select--color-text-disabled);
}

.is-error .form-select {
  outline: 2px solid var(--light-color-text-point);
}


/* sorting select */
.form-select-sort {
  --form-select-sorting--color-background: var(--light-color-action-secondary);
  --form-select-sorting--color-background-hover: var(--light-color-action-secondary-hover);
  --form-select-sorting--color-background-pressed: var(--light-color-action-secondary-pressed);
  --form-select-sorting--color-text: var(--light-color-text-basic);
  --form-select-sorting--padding-left: var(--padding-2);
  --form-select-sorting--radius: var(--radius-small2);
  --form-select-sorting--icon-size-small: var(--icon--size-small);
  --form-select-sorting--padding-left-small: var(--padding-1);
  --form-select-sorting--padding-right-small: calc(var(--form-select-sorting--padding-left) + var(--gap-1) + var(--form-select-sorting--icon-size-small));
  --form-select-sorting--pc-font-size-small: var(--pc-font-size-label-small);
  --form-select-sorting--mobile-font-size-small: var(--mobile-font-size-label-small);
  --form-select-sorting--icon-size-medium: var(--icon--size-medium);
  --form-select-sorting--padding-left-medium: var(--padding-2);
  --form-select-sorting--padding-right-medium: calc(var(--form-select-sorting--padding-left) + var(--gap-1) + var(--form-select-sorting--icon-size-medium));
  --form-select-sorting--pc-font-size-medium: var(--pc-font-size-label-medium);
  --form-select-sorting--mobile-font-size-medium: var(--mobile-font-size-label-medium);
  --form-select-sorting--icon-size-large: var(--icon--size-large);
  --form-select-sorting--padding-left-large: var(--padding-2);
  --form-select-sorting--padding-right-large: calc(var(--form-select-sorting--padding-left) + var(--gap-1) + var(--form-select-sorting--icon-size-large));
  --form-select-sorting--pc-font-size-large: var(--pc-font-size-heading-small);
  --form-select-sorting--mobile-font-size-large: var(--mobile-font-size-heading-small);
  position: relative;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  -webkit-mask-image: url(../img/component/icon/ico_angle.svg);
  mask-image: url(../img/component/icon/ico_angle.svg);
  -webkit-mask-image: none;
  mask-image: none;
  background-image: url(../img/component/icon/ico_angle.svg);
  background-color: transparent !important;
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-mask: none;
  mask: none;
  background-color: var(--form-select-sorting--color-background) !important;
  border: none;
  border-radius: var(--form-select-sorting--radius);
  font-family: inherit;
  color: var(--form-select-sorting--color-text);
  transition: var(--transition-base);
}

.form-select-sort {
  padding: 0 var(--form-select-sorting--padding-right-medium) 0 var(--form-select-sorting--padding-left);
  background-position: center right var(--form-select-sorting--padding-left);
  background-size: var(--form-select-sorting--icon-size-medium) !important;
  font-size: var(--form-select-sorting--pc-font-size-medium);
}

@media (max-width: 767px) {
  .form-select-sort {
    font-size: var(--form-select-sorting--mobile-font-size-medium);
  }
}

.form-select-sort.small {
  padding: 0 var(--form-select-sorting--padding-right-small) 0 var(--form-select-sorting--padding-left);
  background-position: center right var(--form-select-sorting--padding-left);
  background-size: var(--form-select-sorting--icon-size-small) !important;
  font-size: var(--form-select-sorting--pc-font-size-small);
}

@media (max-width: 767px) {
  .form-select-sort.small {
    font-size: var(--form-select-sorting--mobile-font-size-small);
  }
}

.form-select-sort.medium {
  padding: 0 var(--form-select-sorting--padding-right-medium) 0 var(--form-select-sorting--padding-left);
  background-position: center right var(--form-select-sorting--padding-left);
  background-size: var(--form-select-sorting--icon-size-medium) !important;
  font-size: var(--form-select-sorting--pc-font-size-medium);
}

@media (max-width: 767px) {
  .form-select-sort.medium {
    font-size: var(--form-select-sorting--mobile-font-size-medium);
  }
}

.form-select-sort.large {
  padding: 0 var(--form-select-sorting--padding-right-large) 0 var(--form-select-sorting--padding-left);
  background-position: center right var(--form-select-sorting--padding-left);
  background-size: var(--form-select-sorting--icon-size-large) !important;
  font-size: var(--form-select-sorting--pc-font-size-large);
  font-weight: var(--font-weight-bold);
}

@media (max-width: 767px) {
  .form-select-sort.large {
    font-size: var(--form-select-sorting--mobile-font-size-large);
  }
}

.form-select-sort:hover {
  background-color: var(--form-select-sorting--color-background-hover) !important;
}

.form-select-sort:focus {
  background-color: var(--form-select-sorting--color-background-pressed) !important;
}