@charset "UTF-8";

/* _reset.scss (for @use) - Meyer reset with direct output */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote::before,
blockquote::after,
q::before,
q::after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

img,
svg,
video {
  display: block;
  width: 100%;
  height: auto;
}

:root {
  --gutter: clamp(4.8rem, 4.1667vw, 8rem);
  --gap: 2rem;
  --header-height: 80px;
  --fs-headline1: clamp(60px, 5.25vw, 84px);
  --fs-headline2: clamp(51.2px, 4.5vw, 72px);
  --fs-headline3: clamp(48.3px, 4.25vw, 68px);
  --fs-headline4: clamp(45.5px, 4vw, 64px);
  --fs-headline5: clamp(39.8px, 3.5vw, 56px);
  --fs-title1: clamp(32px, 3.5714285714vw, 40px);
  --fs-title2: clamp(25.6px, 2.8571428571vw, 32px);
  --fs-title3: clamp(22.4px, 2.5vw, 28px);
  --fs-title4: clamp(19.2px, 2.1428571429vw, 24px);
  --fs-body1: clamp(17.5px, 1.7857142857vw, 20px);
  --fs-body2: clamp(15.8px, 1.6071428571vw, 18px);
  --fs-body3: clamp(14px, 1.4285714286vw, 16px);
  --fs-label1: clamp(19.3px, 1.9642857143vw, 22px);
  --fs-label2: clamp(15.8px, 1.6071428571vw, 18px);
  --spacing-0: 0rem;
  --spacing-1: 0.4rem;
  --spacing-2: 0.8rem;
  --spacing-3: 1.2rem;
  --spacing-4: 1.6rem;
  --spacing-5: 2rem;
  --spacing-6: 2.4rem;
  --spacing-7: 2.8rem;
  --spacing-8: 3.2rem;
  --spacing-9: 3.6rem;
  --spacing-10: 4rem;
  --spacing-12: 4.8rem;
  --spacing-14: 5.6rem;
  --spacing-16: 6.4rem;
  --spacing-18: 7.2rem;
  --spacing-20: 8rem;
  --spacing-24: 9.6rem;
  --spacing-30: 12rem;
  --spacing-32: 12.8rem;
  --spacing-34: 13.6rem;
  --spacing-40: 16rem;
  --spacing-46: 18.4rem;
  --spacing-49: 19.6rem;
  --spacing-50: 20rem;
  --spacing-56: 24rem;
  --border-radius-xs: 0.6rem;
  --border-radius-sm: 0.8rem;
  --border-radius-md: 1.2rem;
  --progress-size: 0.8rem;
}

@media (max-width: 1023px) {
  :root {
    --gutter: clamp(3rem, 4.5898vw, 4.8rem);
    --gap: 1.6rem;
    --header-height: 72px;
    --fs-headline1: clamp(44px, 7.8226857888vw, 60px);
    --fs-headline2: clamp(37.44px, 6.6753585398vw, 51.2px);
    --fs-headline3: clamp(35.36px, 6.29726206vw, 48.3px);
    --fs-headline4: clamp(33.28px, 5.9322033898vw, 45.5px);
    --fs-headline5: clamp(29.12px, 5.1890482399vw, 39.8px);
    --fs-title1: clamp(29px, 4.1720990874vw, 32px);
    --fs-title2: clamp(23.2px, 3.3376792699vw, 25.6px);
    --fs-title3: clamp(20.3px, 2.9204693611vw, 22.4px);
    --fs-title4: clamp(17.4px, 2.5032594524vw, 19.2px);
    --fs-body1: clamp(16.7px, 2.2816166884vw, 17.5px);
    --fs-body2: clamp(15.03px, 2.0599739244vw, 15.8px);
    --fs-body3: clamp(13.36px, 1.8252933507vw, 14px);
    --fs-label1: clamp(18.37px, 2.5162972621vw, 19.3px);
    --fs-label2: clamp(15.03px, 2.0599739244vw, 15.8px);
    --spacing-0: 0rem;
    --spacing-1: 0.4rem;
    --spacing-2: 0.6rem;
    --spacing-3: 1rem;
    --spacing-4: 1.4rem;
    --spacing-5: 1.8rem;
    --spacing-6: 2rem;
    --spacing-7: 2.4rem;
    --spacing-8: 2.8rem;
    --spacing-9: 3rem;
    --spacing-10: 3.2rem;
    --spacing-12: 3.6rem;
    --spacing-14: 4rem;
    --spacing-16: 4.8rem;
    --spacing-18: 5.6rem;
    --spacing-20: 6.4rem;
    --spacing-24: 6.4rem;
    --spacing-30: 7.2rem;
    --spacing-32: 7.2rem;
    --spacing-34: 8rem;
    --spacing-40: 12rem;
    --spacing-46: 12.8rem;
    --spacing-49: 12.8rem;
    --spacing-50: 13.6rem;
    --spacing-56: 13.6rem;
  }
}

@media (max-width: 767px) {
  :root {
    --gutter: clamp(2rem, 5.1282vw, 3rem);
    --gap: 1rem;
    --header-height: 68px;
    --spacing-0: 0rem;
    --spacing-1: 0.2rem;
    --spacing-2: 0.6rem;
    --spacing-3: 1rem;
    --spacing-4: 1.2rem;
    --spacing-5: 1.6rem;
    --spacing-6: 1.8rem;
    --spacing-7: 2rem;
    --spacing-8: 2.4rem;
    --spacing-9: 2.8rem;
    --spacing-10: 2.8rem;
    --spacing-12: 3rem;
    --spacing-14: 3.2rem;
    --spacing-16: 3.6rem;
    --spacing-18: 4rem;
    --spacing-20: 4rem;
    --spacing-24: 4.8rem;
    --spacing-30: 6.4rem;
    --spacing-32: 6.4rem;
    --spacing-34: 6.4rem;
    --spacing-40: 8rem;
    --spacing-46: 8rem;
    --spacing-49: 8.8rem;
    --spacing-50: 11.2rem;
    --spacing-56: 12rem;
    --border-radius-xs: 0.4rem;
    --border-radius-sm: 0.6rem;
    --border-radius-md: 0.8rem;
    --progress-size: 0.6rem;
  }
}

html {
  font-size: 10px;
}

body {
  font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
  -webkit-text-size-adjust: 100%;
  font-optical-sizing: auto;
  font-style: normal;
  color: #000;
  font-weight: 330;
  word-break: keep-all;
}

[lang=en] .font-en {
  font-family: "Figtree", sans-serif;
}

.font-italic {
  font-style: italic;
}

a {
  text-decoration: none;
  color: inherit;
}

.fw-50 {
  font-weight: 50;
}

.fw-100 {
  font-weight: 100;
}

.fw-150 {
  font-weight: 150;
}

.fw-200 {
  font-weight: 200;
}

.fw-250 {
  font-weight: 250;
}

.fw-300 {
  font-weight: 300;
}

.fw-350 {
  font-weight: 350;
}

.fw-400 {
  font-weight: 400;
}

.fw-450 {
  font-weight: 450;
}

.fw-500 {
  font-weight: 500;
}

.fw-550 {
  font-weight: 550;
}

.fw-600 {
  font-weight: 600;
}

.fw-650 {
  font-weight: 650;
}

.fw-700 {
  font-weight: 700;
}

.fw-750 {
  font-weight: 750;
}

.fw-800 {
  font-weight: 800;
}

.fw-850 {
  font-weight: 850;
}

.fw-900 {
  font-weight: 900;
}

.fw-950 {
  font-weight: 950;
}

.fw-1000 {
  font-weight: 1000;
}

.fw-bold {
  font-weight: 700;
}

.fw-demibold {
  font-weight: 600;
}

.fw-semibold {
  font-weight: 530;
}

.fw-medium {
  font-weight: 430;
}

.fw-regular {
  font-weight: 330;
}

.txt-center {
  text-align: center;
}

.txt-left {
  text-align: left;
}

.txt-right {
  text-align: right;
}

.display-inline {
  display: inline-block;
}

.tc-blue1 {
  color: #0066DB;
}

.tc-blue2 {
  color: #E5F0FB;
}

.tc-gray2 {
  color: #383838;
}

.tc-gray3 {
  color: #767676;
}

.tc-gray5 {
  color: #e0e0e0;
}

.tc-gray8 {
  color: #fff;
}

.tc-darkblue1 {
  color: #0B2746;
}

.tc-caution {
  color: #FF3B30;
}

.fs-headline1 {
  font-size: var(--fs-headline1);
  font-weight: 530;
  line-height: 1.3;
  letter-spacing: -0.03em;
}

[lang=en] .fs-headline1 {
  line-height: 1.2;
}

.fs-headline2 {
  font-size: var(--fs-headline2);
  font-weight: 530;
  line-height: 1.4;
  letter-spacing: -0.03em;
}

[lang=en] .fs-headline2 {
  line-height: 1.2;
}

.fs-headline3 {
  font-size: var(--fs-headline3);
  font-weight: 530;
  line-height: 1.4;
  letter-spacing: -0.03em;
}

[lang=en] .fs-headline3 {
  line-height: 1.2;
}

.fs-headline4 {
  font-size: var(--fs-headline4);
  font-weight: 530;
  line-height: 1.4;
  letter-spacing: -0.03em;
}

[lang=en] .fs-headline4 {
  line-height: 1.2;
}

.fs-headline5 {
  font-size: var(--fs-headline5);
  font-weight: 530;
  line-height: 1.4;
  letter-spacing: -0.03em;
}

[lang=en] .fs-headline5 {
  line-height: 1.2;
}

.fs-title1 {
  font-size: var(--fs-title1);
  font-weight: 530;
  line-height: 1.5;
  letter-spacing: -0.02em;
}

.fs-title2 {
  font-size: var(--fs-title2);
  font-weight: 530;
  line-height: 1.4;
  letter-spacing: -0.02em;
}

.fs-title3 {
  font-size: var(--fs-title3);
  font-weight: 530;
  line-height: 1.4;
  letter-spacing: -0.02em;
}

.fs-title4 {
  font-size: var(--fs-title4);
  font-weight: 530;
  line-height: 1.5;
  letter-spacing: -0.02em;
}

.fs-body1 {
  font-size: var(--fs-body1);
  line-height: 1.6;
  letter-spacing: -0.02em;
}

.fs-body2 {
  font-size: var(--fs-body2);
  line-height: 1.32;
  letter-spacing: -0.02em;
}

.fs-body3 {
  font-size: var(--fs-body3);
  line-height: 1.6;
  letter-spacing: -0.02em;
}

.fs-label1 {
  font-size: var(--fs-label1);
  font-weight: 530;
  line-height: 1;
  letter-spacing: -0.02em;
}

.fs-label2 {
  font-size: var(--fs-label2);
  line-height: 1.32;
  letter-spacing: -0.02em;
}

::-webkit-scrollbar {
  width: 6px;
  height: 6px;
  background: rgba(0, 0, 0, 0.05);
}

::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.3);
  border-radius: 4px;
}

#main {
  position: relative;
}

#main:focus {
  outline: none;
}

.--highlight {
  color: #0066DB;
}

.container {
  padding: 0 var(--gutter, clamp(4.8rem, 4.1667vw, 8rem));
}

.container .__boxed {
  margin: 0 auto;
  max-width: 1840px;
}

.container .__boxed.--md {
  max-width: 1600px;
}

.container .__boxed.--sm {
  max-width: 1120px;
}

.container .__boxed.--xs {
  max-width: 1040px;
}

.container .__article {
  margin: 0 auto;
  max-width: 1060px;
}

.container .__article.--md {
  max-width: 1040px;
}

.inner {
  position: relative;
  padding-top: 8rem;
  z-index: 1;
}

@media (max-width: 1023px) {
  .inner {
    padding-top: 7.2rem;
  }
}

@media (max-width: 767px) {
  .inner {
    padding-top: 6.8rem;
  }
}

.grid {
  display: grid;
  gap: var(--gap, 2rem);
  row-gap: 4rem;
}

.grid.--col2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.grid.--col3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.grid.--col4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.grid.--col-2-1 {
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
}

.grid.no-gap {
  gap: 0;
}

.grid.--gap-5 {
  gap: var(--spacing-5, 2rem);
}

@media (max-width: 1023px) {
  .grid.--col1-t {
    grid-template-columns: minmax(0, 1fr);
  }

  .grid.--col2-t {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .grid.--col3-t {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .grid.--col4-t {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .grid.--col-2-1-t {
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  }
}

@media (max-width: 767px) {
  .grid.--col1-m {
    grid-template-columns: minmax(0, 1fr);
  }

  .grid.--col2-m {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .grid.--col-2-1-m {
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

@media screen and (min-width: 1024px) {
  .hide-d {
    display: none;
  }
}

@media screen and (max-width: 1023px) {
  .hide-t {
    display: none;
  }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
  .hide-only-t {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .hide-m {
    display: none;
  }
}

#loading {
  position: fixed;
  inset: 0;
  background-color: #fff;
  transition: opacity 0.5s, visibility 0.5s, z-index 0.5s;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  visibility: hidden;
  z-index: -1;
  pointer-events: none;
}

body.loading:not(.has-anchor-tab) {
  overflow: hidden;
}

body.loading:not(.has-anchor-tab) #loading {
  z-index: 199998;
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}

body.loading.has-anchor-tab:not([data-has-hash]) {
  overflow: hidden;
}

body.loading.has-anchor-tab:not([data-has-hash]) #loading {
  z-index: 199998;
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}

body.iframe-mode #header,
body.iframe-mode #footer {
  display: none;
}

body.iframe-mode .inner {
  padding-top: 0;
}

.headline-wrapper {
  position: relative;
}

.headline-wrapper .breadcrumb {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.wrapper {
  background-color: #fff;
}

@media (min-width: 767px) {
  .--show-m {
    display: none;
  }
}

@media (max-width: 767px) {
  .--hide-m {
    display: none;
  }
}

.sp-mt-0 {
  margin-top: var(--spacing-0, 0rem);
}

.sp-mb-0 {
  margin-bottom: var(--spacing-0, 0rem);
}

.sp-ml-0 {
  margin-left: var(--spacing-0, 0rem);
}

.sp-mr-0 {
  margin-right: var(--spacing-0, 0rem);
}

.sp-pt-0 {
  padding-top: var(--spacing-0, 0rem);
}

.sp-pb-0 {
  padding-bottom: var(--spacing-0, 0rem);
}

.sp-pl-0 {
  padding-left: var(--spacing-0, 0rem);
}

.sp-pr-0 {
  padding-right: var(--spacing-0, 0rem);
}

.sp-w-0 {
  width: var(--spacing-0, 0rem);
}

.sp-h-0 {
  height: var(--spacing-0, 0rem);
}

.sp-px-0 {
  padding-left: var(--spacing-0, 0rem);
  padding-right: var(--spacing-0, 0rem);
}

.sp-py-0 {
  padding-top: var(--spacing-0, 0rem);
  padding-bottom: var(--spacing-0, 0rem);
}

.sp-mx-0 {
  margin-left: var(--spacing-0, 0rem);
  margin-right: var(--spacing-0, 0rem);
}

.sp-my-0 {
  margin-top: var(--spacing-0, 0rem);
  margin-bottom: var(--spacing-0, 0rem);
}

.sp-mt-1 {
  margin-top: var(--spacing-1, 0.4rem);
}

.sp-mb-1 {
  margin-bottom: var(--spacing-1, 0.4rem);
}

.sp-ml-1 {
  margin-left: var(--spacing-1, 0.4rem);
}

.sp-mr-1 {
  margin-right: var(--spacing-1, 0.4rem);
}

.sp-pt-1 {
  padding-top: var(--spacing-1, 0.4rem);
}

.sp-pb-1 {
  padding-bottom: var(--spacing-1, 0.4rem);
}

.sp-pl-1 {
  padding-left: var(--spacing-1, 0.4rem);
}

.sp-pr-1 {
  padding-right: var(--spacing-1, 0.4rem);
}

.sp-w-1 {
  width: var(--spacing-1, 0.4rem);
}

.sp-h-1 {
  height: var(--spacing-1, 0.4rem);
}

.sp-px-1 {
  padding-left: var(--spacing-1, 0.4rem);
  padding-right: var(--spacing-1, 0.4rem);
}

.sp-py-1 {
  padding-top: var(--spacing-1, 0.4rem);
  padding-bottom: var(--spacing-1, 0.4rem);
}

.sp-mx-1 {
  margin-left: var(--spacing-1, 0.4rem);
  margin-right: var(--spacing-1, 0.4rem);
}

.sp-my-1 {
  margin-top: var(--spacing-1, 0.4rem);
  margin-bottom: var(--spacing-1, 0.4rem);
}

.sp-mt-2 {
  margin-top: var(--spacing-2, 0.8rem);
}

.sp-mb-2 {
  margin-bottom: var(--spacing-2, 0.8rem);
}

.sp-ml-2 {
  margin-left: var(--spacing-2, 0.8rem);
}

.sp-mr-2 {
  margin-right: var(--spacing-2, 0.8rem);
}

.sp-pt-2 {
  padding-top: var(--spacing-2, 0.8rem);
}

.sp-pb-2 {
  padding-bottom: var(--spacing-2, 0.8rem);
}

.sp-pl-2 {
  padding-left: var(--spacing-2, 0.8rem);
}

.sp-pr-2 {
  padding-right: var(--spacing-2, 0.8rem);
}

.sp-w-2 {
  width: var(--spacing-2, 0.8rem);
}

.sp-h-2 {
  height: var(--spacing-2, 0.8rem);
}

.sp-px-2 {
  padding-left: var(--spacing-2, 0.8rem);
  padding-right: var(--spacing-2, 0.8rem);
}

.sp-py-2 {
  padding-top: var(--spacing-2, 0.8rem);
  padding-bottom: var(--spacing-2, 0.8rem);
}

.sp-mx-2 {
  margin-left: var(--spacing-2, 0.8rem);
  margin-right: var(--spacing-2, 0.8rem);
}

.sp-my-2 {
  margin-top: var(--spacing-2, 0.8rem);
  margin-bottom: var(--spacing-2, 0.8rem);
}

.sp-mt-3 {
  margin-top: var(--spacing-3, 1.2rem);
}

.sp-mb-3 {
  margin-bottom: var(--spacing-3, 1.2rem);
}

.sp-ml-3 {
  margin-left: var(--spacing-3, 1.2rem);
}

.sp-mr-3 {
  margin-right: var(--spacing-3, 1.2rem);
}

.sp-pt-3 {
  padding-top: var(--spacing-3, 1.2rem);
}

.sp-pb-3 {
  padding-bottom: var(--spacing-3, 1.2rem);
}

.sp-pl-3 {
  padding-left: var(--spacing-3, 1.2rem);
}

.sp-pr-3 {
  padding-right: var(--spacing-3, 1.2rem);
}

.sp-w-3 {
  width: var(--spacing-3, 1.2rem);
}

.sp-h-3 {
  height: var(--spacing-3, 1.2rem);
}

.sp-px-3 {
  padding-left: var(--spacing-3, 1.2rem);
  padding-right: var(--spacing-3, 1.2rem);
}

.sp-py-3 {
  padding-top: var(--spacing-3, 1.2rem);
  padding-bottom: var(--spacing-3, 1.2rem);
}

.sp-mx-3 {
  margin-left: var(--spacing-3, 1.2rem);
  margin-right: var(--spacing-3, 1.2rem);
}

.sp-my-3 {
  margin-top: var(--spacing-3, 1.2rem);
  margin-bottom: var(--spacing-3, 1.2rem);
}

.sp-mt-4 {
  margin-top: var(--spacing-4, 1.6rem);
}

.sp-mb-4 {
  margin-bottom: var(--spacing-4, 1.6rem);
}

.sp-ml-4 {
  margin-left: var(--spacing-4, 1.6rem);
}

.sp-mr-4 {
  margin-right: var(--spacing-4, 1.6rem);
}

.sp-pt-4 {
  padding-top: var(--spacing-4, 1.6rem);
}

.sp-pb-4 {
  padding-bottom: var(--spacing-4, 1.6rem);
}

.sp-pl-4 {
  padding-left: var(--spacing-4, 1.6rem);
}

.sp-pr-4 {
  padding-right: var(--spacing-4, 1.6rem);
}

.sp-w-4 {
  width: var(--spacing-4, 1.6rem);
}

.sp-h-4 {
  height: var(--spacing-4, 1.6rem);
}

.sp-px-4 {
  padding-left: var(--spacing-4, 1.6rem);
  padding-right: var(--spacing-4, 1.6rem);
}

.sp-py-4 {
  padding-top: var(--spacing-4, 1.6rem);
  padding-bottom: var(--spacing-4, 1.6rem);
}

.sp-mx-4 {
  margin-left: var(--spacing-4, 1.6rem);
  margin-right: var(--spacing-4, 1.6rem);
}

.sp-my-4 {
  margin-top: var(--spacing-4, 1.6rem);
  margin-bottom: var(--spacing-4, 1.6rem);
}

.sp-mt-5 {
  margin-top: var(--spacing-5, 2rem);
}

.sp-mb-5 {
  margin-bottom: var(--spacing-5, 2rem);
}

.sp-ml-5 {
  margin-left: var(--spacing-5, 2rem);
}

.sp-mr-5 {
  margin-right: var(--spacing-5, 2rem);
}

.sp-pt-5 {
  padding-top: var(--spacing-5, 2rem);
}

.sp-pb-5 {
  padding-bottom: var(--spacing-5, 2rem);
}

.sp-pl-5 {
  padding-left: var(--spacing-5, 2rem);
}

.sp-pr-5 {
  padding-right: var(--spacing-5, 2rem);
}

.sp-w-5 {
  width: var(--spacing-5, 2rem);
}

.sp-h-5 {
  height: var(--spacing-5, 2rem);
}

.sp-px-5 {
  padding-left: var(--spacing-5, 2rem);
  padding-right: var(--spacing-5, 2rem);
}

.sp-py-5 {
  padding-top: var(--spacing-5, 2rem);
  padding-bottom: var(--spacing-5, 2rem);
}

.sp-mx-5 {
  margin-left: var(--spacing-5, 2rem);
  margin-right: var(--spacing-5, 2rem);
}

.sp-my-5 {
  margin-top: var(--spacing-5, 2rem);
  margin-bottom: var(--spacing-5, 2rem);
}

.sp-mt-6 {
  margin-top: var(--spacing-6, 2.4rem);
}

.sp-mb-6 {
  margin-bottom: var(--spacing-6, 2.4rem);
}

.sp-ml-6 {
  margin-left: var(--spacing-6, 2.4rem);
}

.sp-mr-6 {
  margin-right: var(--spacing-6, 2.4rem);
}

.sp-pt-6 {
  padding-top: var(--spacing-6, 2.4rem);
}

.sp-pb-6 {
  padding-bottom: var(--spacing-6, 2.4rem);
}

.sp-pl-6 {
  padding-left: var(--spacing-6, 2.4rem);
}

.sp-pr-6 {
  padding-right: var(--spacing-6, 2.4rem);
}

.sp-w-6 {
  width: var(--spacing-6, 2.4rem);
}

.sp-h-6 {
  height: var(--spacing-6, 2.4rem);
}

.sp-px-6 {
  padding-left: var(--spacing-6, 2.4rem);
  padding-right: var(--spacing-6, 2.4rem);
}

.sp-py-6 {
  padding-top: var(--spacing-6, 2.4rem);
  padding-bottom: var(--spacing-6, 2.4rem);
}

.sp-mx-6 {
  margin-left: var(--spacing-6, 2.4rem);
  margin-right: var(--spacing-6, 2.4rem);
}

.sp-my-6 {
  margin-top: var(--spacing-6, 2.4rem);
  margin-bottom: var(--spacing-6, 2.4rem);
}

.sp-mt-7 {
  margin-top: var(--spacing-7, 2.8rem);
}

.sp-mb-7 {
  margin-bottom: var(--spacing-7, 2.8rem);
}

.sp-ml-7 {
  margin-left: var(--spacing-7, 2.8rem);
}

.sp-mr-7 {
  margin-right: var(--spacing-7, 2.8rem);
}

.sp-pt-7 {
  padding-top: var(--spacing-7, 2.8rem);
}

.sp-pb-7 {
  padding-bottom: var(--spacing-7, 2.8rem);
}

.sp-pl-7 {
  padding-left: var(--spacing-7, 2.8rem);
}

.sp-pr-7 {
  padding-right: var(--spacing-7, 2.8rem);
}

.sp-w-7 {
  width: var(--spacing-7, 2.8rem);
}

.sp-h-7 {
  height: var(--spacing-7, 2.8rem);
}

.sp-px-7 {
  padding-left: var(--spacing-7, 2.8rem);
  padding-right: var(--spacing-7, 2.8rem);
}

.sp-py-7 {
  padding-top: var(--spacing-7, 2.8rem);
  padding-bottom: var(--spacing-7, 2.8rem);
}

.sp-mx-7 {
  margin-left: var(--spacing-7, 2.8rem);
  margin-right: var(--spacing-7, 2.8rem);
}

.sp-my-7 {
  margin-top: var(--spacing-7, 2.8rem);
  margin-bottom: var(--spacing-7, 2.8rem);
}

.sp-mt-8 {
  margin-top: var(--spacing-8, 3.2rem);
}

.sp-mb-8 {
  margin-bottom: var(--spacing-8, 3.2rem);
}

.sp-ml-8 {
  margin-left: var(--spacing-8, 3.2rem);
}

.sp-mr-8 {
  margin-right: var(--spacing-8, 3.2rem);
}

.sp-pt-8 {
  padding-top: var(--spacing-8, 3.2rem);
}

.sp-pb-8 {
  padding-bottom: var(--spacing-8, 3.2rem);
}

.sp-pl-8 {
  padding-left: var(--spacing-8, 3.2rem);
}

.sp-pr-8 {
  padding-right: var(--spacing-8, 3.2rem);
}

.sp-w-8 {
  width: var(--spacing-8, 3.2rem);
}

.sp-h-8 {
  height: var(--spacing-8, 3.2rem);
}

.sp-px-8 {
  padding-left: var(--spacing-8, 3.2rem);
  padding-right: var(--spacing-8, 3.2rem);
}

.sp-py-8 {
  padding-top: var(--spacing-8, 3.2rem);
  padding-bottom: var(--spacing-8, 3.2rem);
}

.sp-mx-8 {
  margin-left: var(--spacing-8, 3.2rem);
  margin-right: var(--spacing-8, 3.2rem);
}

.sp-my-8 {
  margin-top: var(--spacing-8, 3.2rem);
  margin-bottom: var(--spacing-8, 3.2rem);
}

.sp-mt-9 {
  margin-top: var(--spacing-9, 3.6rem);
}

.sp-mb-9 {
  margin-bottom: var(--spacing-9, 3.6rem);
}

.sp-ml-9 {
  margin-left: var(--spacing-9, 3.6rem);
}

.sp-mr-9 {
  margin-right: var(--spacing-9, 3.6rem);
}

.sp-pt-9 {
  padding-top: var(--spacing-9, 3.6rem);
}

.sp-pb-9 {
  padding-bottom: var(--spacing-9, 3.6rem);
}

.sp-pl-9 {
  padding-left: var(--spacing-9, 3.6rem);
}

.sp-pr-9 {
  padding-right: var(--spacing-9, 3.6rem);
}

.sp-w-9 {
  width: var(--spacing-9, 3.6rem);
}

.sp-h-9 {
  height: var(--spacing-9, 3.6rem);
}

.sp-px-9 {
  padding-left: var(--spacing-9, 3.6rem);
  padding-right: var(--spacing-9, 3.6rem);
}

.sp-py-9 {
  padding-top: var(--spacing-9, 3.6rem);
  padding-bottom: var(--spacing-9, 3.6rem);
}

.sp-mx-9 {
  margin-left: var(--spacing-9, 3.6rem);
  margin-right: var(--spacing-9, 3.6rem);
}

.sp-my-9 {
  margin-top: var(--spacing-9, 3.6rem);
  margin-bottom: var(--spacing-9, 3.6rem);
}

.sp-mt-10 {
  margin-top: var(--spacing-10, 4rem);
}

.sp-mb-10 {
  margin-bottom: var(--spacing-10, 4rem);
}

.sp-ml-10 {
  margin-left: var(--spacing-10, 4rem);
}

.sp-mr-10 {
  margin-right: var(--spacing-10, 4rem);
}

.sp-pt-10 {
  padding-top: var(--spacing-10, 4rem);
}

.sp-pb-10 {
  padding-bottom: var(--spacing-10, 4rem);
}

.sp-pl-10 {
  padding-left: var(--spacing-10, 4rem);
}

.sp-pr-10 {
  padding-right: var(--spacing-10, 4rem);
}

.sp-w-10 {
  width: var(--spacing-10, 4rem);
}

.sp-h-10 {
  height: var(--spacing-10, 4rem);
}

.sp-px-10 {
  padding-left: var(--spacing-10, 4rem);
  padding-right: var(--spacing-10, 4rem);
}

.sp-py-10 {
  padding-top: var(--spacing-10, 4rem);
  padding-bottom: var(--spacing-10, 4rem);
}

.sp-mx-10 {
  margin-left: var(--spacing-10, 4rem);
  margin-right: var(--spacing-10, 4rem);
}

.sp-my-10 {
  margin-top: var(--spacing-10, 4rem);
  margin-bottom: var(--spacing-10, 4rem);
}

.sp-mt-12 {
  margin-top: var(--spacing-12, 4.8rem);
}

.sp-mb-12 {
  margin-bottom: var(--spacing-12, 4.8rem);
}

.sp-ml-12 {
  margin-left: var(--spacing-12, 4.8rem);
}

.sp-mr-12 {
  margin-right: var(--spacing-12, 4.8rem);
}

.sp-pt-12 {
  padding-top: var(--spacing-12, 4.8rem);
}

.sp-pb-12 {
  padding-bottom: var(--spacing-12, 4.8rem);
}

.sp-pl-12 {
  padding-left: var(--spacing-12, 4.8rem);
}

.sp-pr-12 {
  padding-right: var(--spacing-12, 4.8rem);
}

.sp-w-12 {
  width: var(--spacing-12, 4.8rem);
}

.sp-h-12 {
  height: var(--spacing-12, 4.8rem);
}

.sp-px-12 {
  padding-left: var(--spacing-12, 4.8rem);
  padding-right: var(--spacing-12, 4.8rem);
}

.sp-py-12 {
  padding-top: var(--spacing-12, 4.8rem);
  padding-bottom: var(--spacing-12, 4.8rem);
}

.sp-mx-12 {
  margin-left: var(--spacing-12, 4.8rem);
  margin-right: var(--spacing-12, 4.8rem);
}

.sp-my-12 {
  margin-top: var(--spacing-12, 4.8rem);
  margin-bottom: var(--spacing-12, 4.8rem);
}

.sp-mt-14 {
  margin-top: var(--spacing-14, 5.6rem);
}

.sp-mb-14 {
  margin-bottom: var(--spacing-14, 5.6rem);
}

.sp-ml-14 {
  margin-left: var(--spacing-14, 5.6rem);
}

.sp-mr-14 {
  margin-right: var(--spacing-14, 5.6rem);
}

.sp-pt-14 {
  padding-top: var(--spacing-14, 5.6rem);
}

.sp-pb-14 {
  padding-bottom: var(--spacing-14, 5.6rem);
}

.sp-pl-14 {
  padding-left: var(--spacing-14, 5.6rem);
}

.sp-pr-14 {
  padding-right: var(--spacing-14, 5.6rem);
}

.sp-w-14 {
  width: var(--spacing-14, 5.6rem);
}

.sp-h-14 {
  height: var(--spacing-14, 5.6rem);
}

.sp-px-14 {
  padding-left: var(--spacing-14, 5.6rem);
  padding-right: var(--spacing-14, 5.6rem);
}

.sp-py-14 {
  padding-top: var(--spacing-14, 5.6rem);
  padding-bottom: var(--spacing-14, 5.6rem);
}

.sp-mx-14 {
  margin-left: var(--spacing-14, 5.6rem);
  margin-right: var(--spacing-14, 5.6rem);
}

.sp-my-14 {
  margin-top: var(--spacing-14, 5.6rem);
  margin-bottom: var(--spacing-14, 5.6rem);
}

.sp-mt-16 {
  margin-top: var(--spacing-16, 6.4rem);
}

.sp-mb-16 {
  margin-bottom: var(--spacing-16, 6.4rem);
}

.sp-ml-16 {
  margin-left: var(--spacing-16, 6.4rem);
}

.sp-mr-16 {
  margin-right: var(--spacing-16, 6.4rem);
}

.sp-pt-16 {
  padding-top: var(--spacing-16, 6.4rem);
}

.sp-pb-16 {
  padding-bottom: var(--spacing-16, 6.4rem);
}

.sp-pl-16 {
  padding-left: var(--spacing-16, 6.4rem);
}

.sp-pr-16 {
  padding-right: var(--spacing-16, 6.4rem);
}

.sp-w-16 {
  width: var(--spacing-16, 6.4rem);
}

.sp-h-16 {
  height: var(--spacing-16, 6.4rem);
}

.sp-px-16 {
  padding-left: var(--spacing-16, 6.4rem);
  padding-right: var(--spacing-16, 6.4rem);
}

.sp-py-16 {
  padding-top: var(--spacing-16, 6.4rem);
  padding-bottom: var(--spacing-16, 6.4rem);
}

.sp-mx-16 {
  margin-left: var(--spacing-16, 6.4rem);
  margin-right: var(--spacing-16, 6.4rem);
}

.sp-my-16 {
  margin-top: var(--spacing-16, 6.4rem);
  margin-bottom: var(--spacing-16, 6.4rem);
}

.sp-mt-18 {
  margin-top: var(--spacing-18, 7.2rem);
}

.sp-mb-18 {
  margin-bottom: var(--spacing-18, 7.2rem);
}

.sp-ml-18 {
  margin-left: var(--spacing-18, 7.2rem);
}

.sp-mr-18 {
  margin-right: var(--spacing-18, 7.2rem);
}

.sp-pt-18 {
  padding-top: var(--spacing-18, 7.2rem);
}

.sp-pb-18 {
  padding-bottom: var(--spacing-18, 7.2rem);
}

.sp-pl-18 {
  padding-left: var(--spacing-18, 7.2rem);
}

.sp-pr-18 {
  padding-right: var(--spacing-18, 7.2rem);
}

.sp-w-18 {
  width: var(--spacing-18, 7.2rem);
}

.sp-h-18 {
  height: var(--spacing-18, 7.2rem);
}

.sp-px-18 {
  padding-left: var(--spacing-18, 7.2rem);
  padding-right: var(--spacing-18, 7.2rem);
}

.sp-py-18 {
  padding-top: var(--spacing-18, 7.2rem);
  padding-bottom: var(--spacing-18, 7.2rem);
}

.sp-mx-18 {
  margin-left: var(--spacing-18, 7.2rem);
  margin-right: var(--spacing-18, 7.2rem);
}

.sp-my-18 {
  margin-top: var(--spacing-18, 7.2rem);
  margin-bottom: var(--spacing-18, 7.2rem);
}

.sp-mt-20 {
  margin-top: var(--spacing-20, 8rem);
}

.sp-mb-20 {
  margin-bottom: var(--spacing-20, 8rem);
}

.sp-ml-20 {
  margin-left: var(--spacing-20, 8rem);
}

.sp-mr-20 {
  margin-right: var(--spacing-20, 8rem);
}

.sp-pt-20 {
  padding-top: var(--spacing-20, 8rem);
}

.sp-pb-20 {
  padding-bottom: var(--spacing-20, 8rem);
}

.sp-pl-20 {
  padding-left: var(--spacing-20, 8rem);
}

.sp-pr-20 {
  padding-right: var(--spacing-20, 8rem);
}

.sp-w-20 {
  width: var(--spacing-20, 8rem);
}

.sp-h-20 {
  height: var(--spacing-20, 8rem);
}

.sp-px-20 {
  padding-left: var(--spacing-20, 8rem);
  padding-right: var(--spacing-20, 8rem);
}

.sp-py-20 {
  padding-top: var(--spacing-20, 8rem);
  padding-bottom: var(--spacing-20, 8rem);
}

.sp-mx-20 {
  margin-left: var(--spacing-20, 8rem);
  margin-right: var(--spacing-20, 8rem);
}

.sp-my-20 {
  margin-top: var(--spacing-20, 8rem);
  margin-bottom: var(--spacing-20, 8rem);
}

.sp-mt-24 {
  margin-top: var(--spacing-24, 9.6rem);
}

.sp-mb-24 {
  margin-bottom: var(--spacing-24, 9.6rem);
}

.sp-ml-24 {
  margin-left: var(--spacing-24, 9.6rem);
}

.sp-mr-24 {
  margin-right: var(--spacing-24, 9.6rem);
}

.sp-pt-24 {
  padding-top: var(--spacing-24, 9.6rem);
}

.sp-pb-24 {
  padding-bottom: var(--spacing-24, 9.6rem);
}

.sp-pl-24 {
  padding-left: var(--spacing-24, 9.6rem);
}

.sp-pr-24 {
  padding-right: var(--spacing-24, 9.6rem);
}

.sp-w-24 {
  width: var(--spacing-24, 9.6rem);
}

.sp-h-24 {
  height: var(--spacing-24, 9.6rem);
}

.sp-px-24 {
  padding-left: var(--spacing-24, 9.6rem);
  padding-right: var(--spacing-24, 9.6rem);
}

.sp-py-24 {
  padding-top: var(--spacing-24, 9.6rem);
  padding-bottom: var(--spacing-24, 9.6rem);
}

.sp-mx-24 {
  margin-left: var(--spacing-24, 9.6rem);
  margin-right: var(--spacing-24, 9.6rem);
}

.sp-my-24 {
  margin-top: var(--spacing-24, 9.6rem);
  margin-bottom: var(--spacing-24, 9.6rem);
}

.sp-mt-30 {
  margin-top: var(--spacing-30, 12rem);
}

.sp-mb-30 {
  margin-bottom: var(--spacing-30, 12rem);
}

.sp-ml-30 {
  margin-left: var(--spacing-30, 12rem);
}

.sp-mr-30 {
  margin-right: var(--spacing-30, 12rem);
}

.sp-pt-30 {
  padding-top: var(--spacing-30, 12rem);
}

.sp-pb-30 {
  padding-bottom: var(--spacing-30, 12rem);
}

.sp-pl-30 {
  padding-left: var(--spacing-30, 12rem);
}

.sp-pr-30 {
  padding-right: var(--spacing-30, 12rem);
}

.sp-w-30 {
  width: var(--spacing-30, 12rem);
}

.sp-h-30 {
  height: var(--spacing-30, 12rem);
}

.sp-px-30 {
  padding-left: var(--spacing-30, 12rem);
  padding-right: var(--spacing-30, 12rem);
}

.sp-py-30 {
  padding-top: var(--spacing-30, 12rem);
  padding-bottom: var(--spacing-30, 12rem);
}

.sp-mx-30 {
  margin-left: var(--spacing-30, 12rem);
  margin-right: var(--spacing-30, 12rem);
}

.sp-my-30 {
  margin-top: var(--spacing-30, 12rem);
  margin-bottom: var(--spacing-30, 12rem);
}

.sp-mt-32 {
  margin-top: var(--spacing-32, 12.8rem);
}

.sp-mb-32 {
  margin-bottom: var(--spacing-32, 12.8rem);
}

.sp-ml-32 {
  margin-left: var(--spacing-32, 12.8rem);
}

.sp-mr-32 {
  margin-right: var(--spacing-32, 12.8rem);
}

.sp-pt-32 {
  padding-top: var(--spacing-32, 12.8rem);
}

.sp-pb-32 {
  padding-bottom: var(--spacing-32, 12.8rem);
}

.sp-pl-32 {
  padding-left: var(--spacing-32, 12.8rem);
}

.sp-pr-32 {
  padding-right: var(--spacing-32, 12.8rem);
}

.sp-w-32 {
  width: var(--spacing-32, 12.8rem);
}

.sp-h-32 {
  height: var(--spacing-32, 12.8rem);
}

.sp-px-32 {
  padding-left: var(--spacing-32, 12.8rem);
  padding-right: var(--spacing-32, 12.8rem);
}

.sp-py-32 {
  padding-top: var(--spacing-32, 12.8rem);
  padding-bottom: var(--spacing-32, 12.8rem);
}

.sp-mx-32 {
  margin-left: var(--spacing-32, 12.8rem);
  margin-right: var(--spacing-32, 12.8rem);
}

.sp-my-32 {
  margin-top: var(--spacing-32, 12.8rem);
  margin-bottom: var(--spacing-32, 12.8rem);
}

.sp-mt-34 {
  margin-top: var(--spacing-34, 13.6rem);
}

.sp-mb-34 {
  margin-bottom: var(--spacing-34, 13.6rem);
}

.sp-ml-34 {
  margin-left: var(--spacing-34, 13.6rem);
}

.sp-mr-34 {
  margin-right: var(--spacing-34, 13.6rem);
}

.sp-pt-34 {
  padding-top: var(--spacing-34, 13.6rem);
}

.sp-pb-34 {
  padding-bottom: var(--spacing-34, 13.6rem);
}

.sp-pl-34 {
  padding-left: var(--spacing-34, 13.6rem);
}

.sp-pr-34 {
  padding-right: var(--spacing-34, 13.6rem);
}

.sp-w-34 {
  width: var(--spacing-34, 13.6rem);
}

.sp-h-34 {
  height: var(--spacing-34, 13.6rem);
}

.sp-px-34 {
  padding-left: var(--spacing-34, 13.6rem);
  padding-right: var(--spacing-34, 13.6rem);
}

.sp-py-34 {
  padding-top: var(--spacing-34, 13.6rem);
  padding-bottom: var(--spacing-34, 13.6rem);
}

.sp-mx-34 {
  margin-left: var(--spacing-34, 13.6rem);
  margin-right: var(--spacing-34, 13.6rem);
}

.sp-my-34 {
  margin-top: var(--spacing-34, 13.6rem);
  margin-bottom: var(--spacing-34, 13.6rem);
}

.sp-mt-40 {
  margin-top: var(--spacing-40, 16rem);
}

.sp-mb-40 {
  margin-bottom: var(--spacing-40, 16rem);
}

.sp-ml-40 {
  margin-left: var(--spacing-40, 16rem);
}

.sp-mr-40 {
  margin-right: var(--spacing-40, 16rem);
}

.sp-pt-40 {
  padding-top: var(--spacing-40, 16rem);
}

.sp-pb-40 {
  padding-bottom: var(--spacing-40, 16rem);
}

.sp-pl-40 {
  padding-left: var(--spacing-40, 16rem);
}

.sp-pr-40 {
  padding-right: var(--spacing-40, 16rem);
}

.sp-w-40 {
  width: var(--spacing-40, 16rem);
}

.sp-h-40 {
  height: var(--spacing-40, 16rem);
}

.sp-px-40 {
  padding-left: var(--spacing-40, 16rem);
  padding-right: var(--spacing-40, 16rem);
}

.sp-py-40 {
  padding-top: var(--spacing-40, 16rem);
  padding-bottom: var(--spacing-40, 16rem);
}

.sp-mx-40 {
  margin-left: var(--spacing-40, 16rem);
  margin-right: var(--spacing-40, 16rem);
}

.sp-my-40 {
  margin-top: var(--spacing-40, 16rem);
  margin-bottom: var(--spacing-40, 16rem);
}

.sp-mt-46 {
  margin-top: var(--spacing-46, 18.4rem);
}

.sp-mb-46 {
  margin-bottom: var(--spacing-46, 18.4rem);
}

.sp-ml-46 {
  margin-left: var(--spacing-46, 18.4rem);
}

.sp-mr-46 {
  margin-right: var(--spacing-46, 18.4rem);
}

.sp-pt-46 {
  padding-top: var(--spacing-46, 18.4rem);
}

.sp-pb-46 {
  padding-bottom: var(--spacing-46, 18.4rem);
}

.sp-pl-46 {
  padding-left: var(--spacing-46, 18.4rem);
}

.sp-pr-46 {
  padding-right: var(--spacing-46, 18.4rem);
}

.sp-w-46 {
  width: var(--spacing-46, 18.4rem);
}

.sp-h-46 {
  height: var(--spacing-46, 18.4rem);
}

.sp-px-46 {
  padding-left: var(--spacing-46, 18.4rem);
  padding-right: var(--spacing-46, 18.4rem);
}

.sp-py-46 {
  padding-top: var(--spacing-46, 18.4rem);
  padding-bottom: var(--spacing-46, 18.4rem);
}

.sp-mx-46 {
  margin-left: var(--spacing-46, 18.4rem);
  margin-right: var(--spacing-46, 18.4rem);
}

.sp-my-46 {
  margin-top: var(--spacing-46, 18.4rem);
  margin-bottom: var(--spacing-46, 18.4rem);
}

.sp-mt-49 {
  margin-top: var(--spacing-49, 19.6rem);
}

.sp-mb-49 {
  margin-bottom: var(--spacing-49, 19.6rem);
}

.sp-ml-49 {
  margin-left: var(--spacing-49, 19.6rem);
}

.sp-mr-49 {
  margin-right: var(--spacing-49, 19.6rem);
}

.sp-pt-49 {
  padding-top: var(--spacing-49, 19.6rem);
}

.sp-pb-49 {
  padding-bottom: var(--spacing-49, 19.6rem);
}

.sp-pl-49 {
  padding-left: var(--spacing-49, 19.6rem);
}

.sp-pr-49 {
  padding-right: var(--spacing-49, 19.6rem);
}

.sp-w-49 {
  width: var(--spacing-49, 19.6rem);
}

.sp-h-49 {
  height: var(--spacing-49, 19.6rem);
}

.sp-px-49 {
  padding-left: var(--spacing-49, 19.6rem);
  padding-right: var(--spacing-49, 19.6rem);
}

.sp-py-49 {
  padding-top: var(--spacing-49, 19.6rem);
  padding-bottom: var(--spacing-49, 19.6rem);
}

.sp-mx-49 {
  margin-left: var(--spacing-49, 19.6rem);
  margin-right: var(--spacing-49, 19.6rem);
}

.sp-my-49 {
  margin-top: var(--spacing-49, 19.6rem);
  margin-bottom: var(--spacing-49, 19.6rem);
}

.sp-mt-50 {
  margin-top: var(--spacing-50, 20rem);
}

.sp-mb-50 {
  margin-bottom: var(--spacing-50, 20rem);
}

.sp-ml-50 {
  margin-left: var(--spacing-50, 20rem);
}

.sp-mr-50 {
  margin-right: var(--spacing-50, 20rem);
}

.sp-pt-50 {
  padding-top: var(--spacing-50, 20rem);
}

.sp-pb-50 {
  padding-bottom: var(--spacing-50, 20rem);
}

.sp-pl-50 {
  padding-left: var(--spacing-50, 20rem);
}

.sp-pr-50 {
  padding-right: var(--spacing-50, 20rem);
}

.sp-w-50 {
  width: var(--spacing-50, 20rem);
}

.sp-h-50 {
  height: var(--spacing-50, 20rem);
}

.sp-px-50 {
  padding-left: var(--spacing-50, 20rem);
  padding-right: var(--spacing-50, 20rem);
}

.sp-py-50 {
  padding-top: var(--spacing-50, 20rem);
  padding-bottom: var(--spacing-50, 20rem);
}

.sp-mx-50 {
  margin-left: var(--spacing-50, 20rem);
  margin-right: var(--spacing-50, 20rem);
}

.sp-my-50 {
  margin-top: var(--spacing-50, 20rem);
  margin-bottom: var(--spacing-50, 20rem);
}

.sp-mt-56 {
  margin-top: var(--spacing-56, 24rem);
}

.sp-mb-56 {
  margin-bottom: var(--spacing-56, 24rem);
}

.sp-ml-56 {
  margin-left: var(--spacing-56, 24rem);
}

.sp-mr-56 {
  margin-right: var(--spacing-56, 24rem);
}

.sp-pt-56 {
  padding-top: var(--spacing-56, 24rem);
}

.sp-pb-56 {
  padding-bottom: var(--spacing-56, 24rem);
}

.sp-pl-56 {
  padding-left: var(--spacing-56, 24rem);
}

.sp-pr-56 {
  padding-right: var(--spacing-56, 24rem);
}

.sp-w-56 {
  width: var(--spacing-56, 24rem);
}

.sp-h-56 {
  height: var(--spacing-56, 24rem);
}

.sp-px-56 {
  padding-left: var(--spacing-56, 24rem);
  padding-right: var(--spacing-56, 24rem);
}

.sp-py-56 {
  padding-top: var(--spacing-56, 24rem);
  padding-bottom: var(--spacing-56, 24rem);
}

.sp-mx-56 {
  margin-left: var(--spacing-56, 24rem);
  margin-right: var(--spacing-56, 24rem);
}

.sp-my-56 {
  margin-top: var(--spacing-56, 24rem);
  margin-bottom: var(--spacing-56, 24rem);
}

.mt-auto {
  margin-top: auto;
}

.mb-auto {
  margin-bottom: auto;
}

.ml-auto {
  margin-left: auto;
}

.mr-auto {
  margin-right: auto;
}

#header-dim {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  opacity: 0;
  pointer-events: none;
  background: rgba(0, 0, 0, 0.2);
  transition: opacity 0.6s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  z-index: 10;
}

#header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 99999;
  visibility: hidden;
}

#header[data-status=show-submenu]+#header-dim {
  opacity: 1;
  pointer-events: auto;
}

#header .header-inner {
  background: #fff;
  position: relative;
  transition: transform 0.6s cubic-bezier(0.785, 0.135, 0.15, 0.86);
}

#header.--hide {
  pointer-events: none;
}

#header.--hide .header-inner {
  transform: translateY(-110%);
}

#header .header-content {
  height: var(--header-height, 8rem);
  align-items: center;
  gap: 3.2rem;
  z-index: 2;
}

#header .brand svg {
  width: auto;
  height: 3.2rem;
}

@media (max-width: 1360px) {
  #header .brand svg {
    height: 2.8rem;
  }
}

[lang=en] #header .brand svg {
  height: 3rem;
}

@media (max-width: 1360px) {
  [lang=en] #header .brand svg {
    height: 2.2rem;
  }
}

#header .lang-toggle {
  display: none;
}

#header .utils {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  font-size: 1.6rem;
  font-weight: 430;
  gap: clamp(1rem, 2.5vw, 4rem);
  letter-spacing: -0.02em;
  line-height: 1.32;
  white-space: nowrap;
  position: relative;
  height: 100%;
}

#header .utils .btn-search .__x {
  display: none;
}

#header .utils .btn-search svg {
  width: 1.5em;
  height: auto;
  aspect-ratio: 1/1;
}

#header .utils .btn-search.--active .__search {
  display: none;
}

#header .utils .btn-search.--active .__x {
  display: block;
}

#header .utils .cs {
  position: relative;
  white-space: nowrap;
}

#header .utils .cs .toggle {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1.8rem;
  padding: 0 0.8888888889em;
  gap: 0.8888888889em;
  min-width: 8.8888888889em;
  height: 2.6666666667em;
  box-sizing: border-box;
  border-radius: 2.6666666667em;
  background: linear-gradient(95.69deg, #0066db 0%, #4ea7ff 100%);
  color: #fff;
}

@media (max-width: 767px) {
  #header .utils .cs .toggle {
    min-width: 94px;
  }
}

#header .utils .cs .toggle svg {
  display: block;
  width: 1em;
  height: auto;
  aspect-ratio: 1/1;
}

#header .utils .cs .dropdown {
  position: absolute;
  right: 0;
  top: 100%;
  background-color: rgba(0, 0, 0, 0);
  pointer-events: none;
  min-width: 100%;
  width: 100%;
}

#header .utils .cs ul {
  position: relative;
  transform: translateY(3rem);
  background: #fff;
  border-radius: 1.625em;
  padding: 0.25em;
  box-sizing: border-box;
  border: 1px solid #eee;
  opacity: 0;
  visibility: hidden;
  transition: transform 0.6s cubic-bezier(0.075, 0.82, 0.165, 1), visibility 0.4s, opacity 0.4s;
  will-change: opacity, transform, visibility;
}

#header .utils .cs ul a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 0.75em;
  gap: 0.125em;
  height: 3em;
  box-sizing: border-box;
  border-radius: 999px;
  transition: background 0.2s, color 0.2s;
  letter-spacing: -0.03em;
}

#header .utils .cs ul a svg {
  display: block;
  width: 1.125em;
  height: auto;
  aspect-ratio: 1/1;
  transition: color 0.2s;
  color: #ccc;
}

#header .utils .cs ul a:hover {
  background: #E5F0FB;
  color: #0066DB;
}

#header .utils .cs ul a:hover svg {
  color: #0066DB;
}

#header .utils .cs.--active .toggle svg {
  transform: rotate(180deg);
}

#header .utils .cs.--active .dropdown {
  pointer-events: auto;
}

#header .utils .cs.--active ul {
  transform: translateY(1rem);
  opacity: 1;
  visibility: visible;
}

#header .header-search {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  pointer-events: none;
  z-index: -1;
}

#header .header-search.--show-search {
  pointer-events: auto;
}

#header .header-search.--show-search .header-search__dim {
  opacity: 1;
  pointer-events: auto;
}

#header .header-search.--show-search .header-search__layer {
  clip-path: inset(0 0 0 0 round 0 0 1.6rem 1.6rem);
}

#header .header-search__dim {
  position: absolute;
  top: var(--header-height, 8rem);
  left: 0;
  right: 0;
  height: 100vh;
  background: rgba(0, 0, 0, 0.4);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s;
}

#header .header-search__layer {
  position: relative;
  width: 100%;
  padding-bottom: 7.2rem;
  background-color: #fff;
  padding-top: var(--spacing-14, 5.6rem);
  border-radius: 0 0 1.6rem 1.6rem;
  clip-path: inset(0 0 100% 0 round 0 0 1.6rem 1.6rem);
  transition: clip-path 0.4s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  z-index: 999;
}

#header .header-search .recommend-tags {
  display: flex;
  gap: var(--spacing-2, 0.8rem);
}

#header .notification-popup {
  position: absolute;
  right: 0;
  top: calc(100% + 1.2rem);
  font-size: 1.6rem;
  background: #fff;
  box-shadow: 0 0.25em 1em rgba(0, 0, 0, 0.1);
  border-radius: 0.625em;
  box-sizing: border-box;
  font-weight: 430;
  padding: 0.625em 1em;
  line-height: 1.45;
  letter-spacing: -0.02em;
  color: #0066DB;
  white-space: nowrap;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-5rem);
  transition: transform 1s cubic-bezier(0.075, 0.82, 0.165, 1), visibility 1s, opacity 1s;
  will-change: opacity, transform, visibility;
}

#header .notification-popup:after {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-left: 0.5em solid transparent;
  border-right: 0.5em solid transparent;
  border-bottom: 0.5em solid #fff;
  top: -0.375em;
  right: 4em;
}

#header .notification-popup.--active {
  opacity: 1;
  visibility: visible;
  transform: translateY(0rem);
}

#header .notification-popup.--hide {
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(-1rem) !important;
}

#header.--hide .notification-popup {
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(-1rem) !important;
}

@media (min-width: 1361px) {
  #header .header-content {
    display: grid;
    grid-template-columns: 1fr 3fr 1fr;
  }

  #header #nav {
    font-size: 2rem;
    letter-spacing: -0.03em;
    line-height: 1.6;
    font-weight: 430;
    white-space: nowrap;
    display: flex;
    justify-content: center;
  }

  #header #nav:before {
    position: absolute;
    content: "";
    left: 0;
    right: 0;
    top: 100%;
    border-top: 1px solid #f4f4f4;
    height: 0;
    transition: height 0.4s cubic-bezier(0.785, 0.135, 0.15, 0.86), clip-path 0.4s cubic-bezier(0.785, 0.135, 0.15, 0.86);
    background: #fff;
    box-sizing: border-box;
    clip-path: inset(0 0 0 0);
  }

  #header #nav .nav-footer {
    display: none;
  }

  #header #nav .gnb {
    --1depth-x-spacing: clamp(2.8rem, 2.125vw, 3.4rem);
    display: flex;
    justify-content: center;
    align-items: center;
  }

  #header #nav .gnb>li {
    position: relative;
  }

  #header #nav .gnb>li[data-menu=recruit]>.depth1 {
    padding-right: calc(var(--1depth-x-spacing) + 1.6rem);
  }

  #header #nav .gnb>li[data-menu=group]>.depth1 {
    padding: 0 calc(var(--1depth-x-spacing) + 1.6rem);
  }

  #header #nav .gnb>li[data-menu=group]::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 1px;
    height: 1em;
    transform: translateY(-50%);
    background: #767676;
  }

  #header #nav .gnb>li .submenu {
    border-right: 1px solid #f6f6f6;
  }

  #header #nav .gnb>li:last-child .submenu {
    border-right: 0;
  }

  #header #nav .gnb>li:not(.has-submenu)+li.has-submenu .submenu {
    border-left: 1px solid #f6f6f6;
  }

  #header #nav .gnb>li>.depth1 {
    height: var(--header-height, 8rem);
    display: flex;
    align-items: center;
    padding: 0 var(--1depth-x-spacing);
    position: relative;
    justify-content: center;
    text-align: center;
  }

  #header #nav .gnb>li>.depth1:after {
    position: absolute;
    bottom: 0;
    left: 0;
    content: "";
    height: 2px;
    background: #0066DB;
    width: 0;
    transition: width 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  }

  #header #nav .gnb>li>.depth1 span {
    min-width: 4.6em;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.2em;
  }

  #header #nav .gnb>li>.depth1 span svg {
    width: 1em;
    min-width: 1em;
    aspect-ratio: 1/1;
    height: auto;
  }

  #header #nav .gnb>li>.depth1 span.--sm {
    min-width: 2.6em;
  }

  #header #nav .gnb>li>.depth1 em {
    color: #0066DB;
  }

  [lang=en] #header #nav .gnb>li>.depth1 {
    padding: 0;
    width: 22.8rem;
  }

  [lang=en] #header #nav .gnb>li[data-menu=pr]>.depth1 {
    width: 16rem;
  }

  #header #nav .gnb>li .submenu {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    font-size: 1.6rem;
    line-height: 1;
    letter-spacing: -0.02em;
    pointer-events: none;
    clip-path: inset(0 0 100% 0);
    transition: clip-path 0.4s cubic-bezier(0.785, 0.135, 0.15, 0.86), background-color 0.2s;
  }

  #header #nav .gnb>li .submenu ul {
    display: flex;
    flex-direction: column;
    gap: 2.4rem;
    height: var(--submenu-height, 0px);
    box-sizing: border-box;
    padding: 3.2rem 0;
  }

  #header #nav .gnb>li .submenu a {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  #header #nav .gnb>li .submenu a span {
    position: relative;
    height: 2.4rem;
  }

  #header #nav .gnb>li .submenu a span:after {
    position: absolute;
    content: "";
    left: 0;
    right: 0;
    bottom: 0;
    height: 1px;
    background: #0066DB;
    width: 0;
    transition: width 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  }

  #header #nav .gnb>li .submenu a:hover {
    color: #0066DB;
  }

  #header #nav .gnb>li .submenu a:hover span:after {
    width: 100%;
  }

  #header .utils .toggle-nav {
    display: none;
  }

  #header[data-status=show-submenu] #nav:before {
    height: var(--submenu-height, 0px);
    box-shadow: 0 1rem 1rem rgba(0, 0, 0, 0.05);
    clip-path: inset(0 0 0 0 round 0 0 1.6rem 1.6rem);
  }

  #header[data-status=show-submenu] #nav .gnb>li:hover .depth1:after {
    width: 100%;
  }

  #header[data-status=show-submenu] #nav .gnb>li:hover .submenu {
    background: #f6f6f6;
  }

  #header[data-status=show-submenu] #nav .gnb .submenu {
    pointer-events: auto;
    clip-path: inset(0 0 0 0);
  }
}

@media (max-width: 1360px) {
  #header .header-content {
    display: grid;
    grid-template-columns: auto 1fr;
  }

  #header .utils .toggle-nav {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #000;
    order: 2;
  }

  #header .utils .toggle-nav svg {
    display: block;
    width: 2.4rem;
    aspect-ratio: 1/1;
  }

  #header .utils .toggle-nav .__x {
    display: none;
  }

  #header .utils .toggle-nav .__label {
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.32;
  }

  #header .utils .cs .toggle {
    gap: 0.4rem;
  }

  #header .utils .report {
    display: none;
  }

  #header .notification-popup {
    right: calc(clamp(1rem, 2.5vw, 4rem) * 2 + 4.8rem);
  }

  #header #nav {
    display: block;
    position: fixed;
    left: 0;
    right: 0;
    background: #fff;
    top: var(--header-height);
    height: calc(100vh - var(--header-height));
    height: calc(100dvh - var(--header-height));
    pointer-events: none;
    transition: opacity 0.5s, visibility 0.5s, clip-path 0.5s cubic-bezier(0.785, 0.135, 0.15, 0.86);
    will-change: transform, clip-path, opacity, visibility;
    clip-path: inset(0 0 0 100%);
  }

  #header #nav .nav-inner {
    padding: 0 var(--gutter);
    min-height: 100%;
    display: grid;
    grid-template-rows: 1fr auto;
    gap: 4rem;
    box-sizing: border-box;
  }

  #header #nav .nav-footer {
    padding: 2.4rem 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
    font-size: var(--fs-body2);
    line-height: 1.32;
    letter-spacing: -0.02em;
  }

  #header #nav .nav-footer .utils-menu {
    display: flex;
    gap: 1.6rem;
    align-items: center;
  }

  #header #nav .nav-footer .sns {
    display: flex;
    gap: 1.6rem;
  }

  #header #nav .nav-footer .sns img,
  #header #nav .nav-footer .sns svg {
    width: 2.8rem;
    aspect-ratio: 1/1;
  }

  #header #nav .gnb {
    padding: 1.4rem 0 0;
  }

  #header #nav .gnb>li .depth1 {
    font-size: var(--fs-headline5);
    font-weight: 530;
    line-height: 1.4;
    letter-spacing: -0.03em;
  }

  [lang=en] #header #nav .gnb>li .depth1 {
    line-height: 1.2;
  }

  #header #nav .gnb>li .depth1 span {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1em;
    height: 2.4827586207em;
  }

  #header #nav .gnb>li .depth1 span svg,
  #header #nav .gnb>li .depth1 span:after {
    width: 2.4rem;
    aspect-ratio: 1/1;
  }

  #header #nav .gnb>li.has-submenu .depth1 span:after {
    content: "";
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 2.4rem 2.4rem;
    background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M18.6666%208.66664L11.9999%2015.3333L5.33325%208.66664%22%20stroke%3D%22%23383838%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22/%3E%3C/svg%3E");
  }

  #header #nav .gnb>li .submenu {
    font-size: var(--fs-title2);
    font-weight: 530;
    line-height: 1.4;
    letter-spacing: -0.02em;
    font-weight: 430;
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.4s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  }

  #header #nav .gnb>li .submenu .__inner {
    overflow: hidden;
  }

  #header #nav .gnb>li .submenu ul {
    overflow: hidden;
    display: grid;
    gap: 1.6rem;
    padding: 0.4rem 1.6rem 2rem;
  }

  #header #nav .gnb>li .submenu ul a {
    color: #383838;
  }

  #header #nav .gnb>li[data-menu=group] {
    position: relative;
  }

  #header #nav .gnb>li[data-menu=group]::before {
    display: block;
    content: "";
    width: 100%;
    height: 1px;
    background: #eee;
    margin: 0.6rem 0;
  }

  #header #nav .gnb>li[data-menu=group] .depth1 span {
    color: #0066DB;
  }

  #header #nav .gnb>li[data-menu=group] .depth1 span:after {
    border-radius: 50%;
    background-color: rgba(229, 240, 251, 0.5);
    width: 3.4rem;
  }

  #header #nav .gnb>li.--active .depth1 span {
    color: #0066DB;
  }

  #header #nav .gnb>li.--show-submenu .depth1 span {
    color: #0066DB;
  }

  #header #nav .gnb>li.--show-submenu .depth1 span:after {
    transform: rotate(180deg);
    background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M18.6666%208.66664L11.9999%2015.3333L5.33325%208.66664%22%20stroke%3D%22%230066DB%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22/%3E%3C/svg%3E");
  }

  #header #nav .gnb>li.--show-submenu .submenu {
    grid-template-rows: 1fr;
  }

  #header #nav .gnb>li.--show-submenu .submenu a.--active {
    color: #0066DB;
  }

  #header.--show-nav .header-inner {
    transform: translateY(0%) !important;
  }

  #header.--show-nav .brand {
    display: none;
  }

  #header.--show-nav .lang-toggle {
    display: flex;
    align-items: center;
  }

  #header.--show-nav .lang-toggle .__lang {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    font-size: var(--fs-label2);
    line-height: 1.32;
    letter-spacing: -0.02em;
    font-weight: 600;
    color: #ccc;
  }

  #header.--show-nav .lang-toggle .__lang+.__lang::before {
    content: "";
    vertical-align: middle;
    display: inline-block;
    width: 1px;
    height: 1.03em;
    margin: 0 1.2rem;
    background-color: #e0e0e0;
  }

  #header.--show-nav .lang-toggle .__lang.--active {
    color: #000;
  }

  #header.--show-nav #nav {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    overflow: auto;
    clip-path: inset(0 0 0 0);
    overscroll-behavior: contain;
  }

  #header.--show-nav .utils .report {
    display: block;
  }

  #header.--show-nav .toggle-nav .__menu {
    display: none;
  }

  #header.--show-nav .toggle-nav .__x {
    display: block;
  }

  #header .header-search.--show-search .header-search__layer {
    clip-path: inset(0 0 0 0 round 0 0 1.2rem 1.2rem);
  }

  #header .header-search__layer {
    padding-bottom: var(--spacing-18, 7.2rem);
    border-radius: 0 0 1.2rem 1.2rem;
  }
}

@media (max-width: 1023px) {
  #header .notification-popup {
    right: 0;
  }

  #header .notification-popup:after {
    right: calc(clamp(1rem, 2.5vw, 4rem) * 2 + 10rem);
  }

  #header .utils .cs .dropdown ul {
    padding: 0.125em 0.25em;
    border-radius: 1.25em;
  }

  #header .utils .cs .dropdown ul li+li {
    border-top: 1px solid #eee;
  }

  #header .utils .cs .dropdown ul li a {
    height: auto;
    min-height: 2.5em;
    padding: 0.5em;
  }

  #header .utils .cs .dropdown ul li a:hover {
    background: none;
    color: #000;
  }

  #header .utils .cs .dropdown ul li a i {
    display: none;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  #header .utils .cs .toggle {
    font-size: 1.65rem;
    min-width: auto;
  }
}

@media (max-width: 767px) {
  #header .utils {
    font-size: 1.4rem;
  }

  #header .utils .cs .toggle {
    font-size: 1.5rem;
  }

  #header .utils .toggle-nav .__label {
    display: none;
  }

  #header .notification-popup {
    font-size: 1.3rem;
  }

  #header .notification-popup:after {
    right: calc(clamp(1rem, 2.5vw, 4rem) * 2 + 9rem);
  }
}

#footer {
  background: #fff;
  z-index: 99998;
  padding-top: clamp(3rem, 6.2561094819vw, 6.4rem);
  padding-bottom: clamp(3rem, 4.6920821114vw, 4.8rem);
  border-top: 1px solid #eee;
}

#footer .footer-menus {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 3.2rem;
  margin-bottom: clamp(3rem, 3.9100684262vw, 4rem);
}

#footer .footer-menus .footer-nav>ul {
  display: flex;
  gap: clamp(1.6rem, 1.25vw, 2.4rem);
}

#footer .footer-menus .footer-nav>ul>li {
  display: flex;
  flex-direction: column;
  min-width: clamp(12rem, 7.2916666667vw, 14rem);
}

#footer .footer-menus .footer-nav>ul>li>a {
  display: inline-flex;
  font-size: 1.8rem;
  line-height: 1.6;
  letter-spacing: -0.02em;
  font-weight: 430;
  margin-bottom: 1.3333333333em;
  align-items: center;
  gap: 0.1111111111em;
}

#footer .footer-menus .footer-nav>ul>li>a svg {
  width: 1em;
  height: auto;
  aspect-ratio: 1/1;
}

#footer .footer-menus .footer-nav>ul>li>ul {
  display: flex;
  flex-direction: column;
  gap: 1em;
  font-size: 1.6rem;
  line-height: 1.6;
  letter-spacing: -0.02em;
}

#footer .footer-menus .footer-nav>ul>li>ul>li>a {
  color: #767676;
  display: inline-flex;
  align-items: center;
  gap: 0.125em;
}

#footer .footer-menus .footer-nav>ul>li>ul>li>a svg {
  width: 1.125em;
  height: auto;
  aspect-ratio: 1/1;
}

#footer .footer-menus .family-site {
  width: 26rem;
  position: relative;
}

#footer .footer-menus .family-site .toggle {
  display: flex;
  font-size: 1.8rem;
  height: 3em;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

#footer .footer-menus .family-site .toggle svg {
  width: 1em;
  height: auto;
  aspect-ratio: 1/1;
}

#footer .footer-menus .family-site .toggle {
  border-bottom: 1px solid currentColor;
  transition: color 0.2s;
}

#footer .footer-menus .family-site .dropdown {
  background: #fff;
  border-radius: var(--border-radius-sm, 8px);
  border: 1px solid #e0e0e0;
  position: absolute;
  right: 0;
  top: 100%;
  margin-top: 0.8rem;
  opacity: 0;
  visibility: hidden;
  z-index: -1;
  transform: translateY(1rem);
  padding: 3.2rem 0 2rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  white-space: nowrap;
  transition: opacity 0.3s, visibility 0.3s, transform 0.3s, z-index 0.3s;
  will-change: opacity, visibility, transform, z-index;
}

#footer .footer-menus .family-site .dropdown .sites {
  font-size: var(--fs-label2);
  line-height: 1.32;
  letter-spacing: -0.02em;
}

#footer .footer-menus .family-site .dropdown .sites h4 {
  font-weight: 430;
  font-size: var(--fs-body3);
  line-height: 1.6;
  letter-spacing: -0.02em;
  color: #0066DB;
  padding: 0 3.2rem;
  margin-bottom: 0.6153846154em;
}

#footer .footer-menus .family-site .dropdown .sites ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  box-sizing: border-box;
}

#footer .footer-menus .family-site .dropdown .sites ul li {
  padding: 0 1.6rem;
}

#footer .footer-menus .family-site .dropdown .sites ul a {
  display: flex;
  align-items: center;
  padding: 1.2rem 1.6rem;
  min-width: 16.8rem;
  border-radius: var(--border-radius-sm, 8px);
  font-weight: 450;
}

@media (hover: hover) and (pointer: fine) {
  #footer .footer-menus .family-site .dropdown .sites ul a {
    transition: background 0.2s, color 0.2s;
  }

  #footer .footer-menus .family-site .dropdown .sites ul a:hover {
    background: #E5F0FB;
    color: #0066DB;
  }
}

@media (max-width: 767px) {
  #footer .footer-menus .family-site .dropdown {
    grid-template-columns: 1fr;
    max-height: 20rem;
    overflow: auto;
    padding: 2rem 0 2rem;
    gap: 2rem;
  }

  #footer .footer-menus .family-site .dropdown .sites h4 {
    padding: 0 2rem;
  }

  #footer .footer-menus .family-site .dropdown .sites ul {
    grid-template-columns: 1fr;
  }

  #footer .footer-menus .family-site .dropdown .sites ul li {
    padding: 0 1rem;
  }

  #footer .footer-menus .family-site .dropdown .sites ul li a {
    padding: 1rem;
    min-width: initial;
  }
}

#footer .footer-menus .family-site.--active .toggle {
  color: #0066DB;
}

#footer .footer-menus .family-site.--active .toggle svg .__v {
  opacity: 0;
}

#footer .footer-menus .family-site.--active .dropdown {
  opacity: 1;
  visibility: visible;
  z-index: 10;
  transform: translateY(0);
}

#footer .extra {
  display: flex;
  justify-content: space-between;
  gap: 1.6rem;
  font-size: 1.5rem;
  line-height: 1.6;
  align-items: center;
}

#footer .extra .util-menu {
  display: flex;
  gap: 1.6em;
}

#footer .extra .sns {
  display: flex;
  gap: 1.6rem;
  margin-left: auto;
}

#footer .extra .sns svg {
  display: block;
  width: 2.8rem;
  height: auto;
  aspect-ratio: 1/1;
}

@media (hover: hover) and (pointer: fine) {
  #footer .extra .sns a {
    transition: color 0.2s;
  }

  #footer .extra .sns a:hover {
    color: #0066DB;
  }
}

#footer .extra .langs {
  font-weight: 430;
  position: relative;
}

#footer .extra .langs .dropdown {
  position: absolute;
  width: 100%;
  top: 100%;
  left: 0;
  opacity: 0;
  visibility: hidden;
  z-index: -1;
  transform: translateY(1rem);
  border-radius: 0 0 var(--border-radius-sm, 8px) var(--border-radius-sm, 8px);
  background: #f6f6f6;
  padding: 0.6rem;
  font-size: var(--fs-body3);
  line-height: 1.6;
  letter-spacing: -0.02em;
  margin-top: 0.4rem;
  transition: opacity 0.3s, visibility 0.3s, transform 0.3s, z-index 0.3s;
  will-change: opacity, visibility, transform, z-index;
}

#footer .extra .langs .dropdown li a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 3.6rem;
  font-weight: 600;
}

#footer .extra .langs .dropdown li a.--active {
  color: #0066DB;
  background-color: #E5F0FB;
}

#footer .extra .langs .toggle {
  display: flex;
  align-items: center;
  gap: 0.2666666667em;
  height: 2.8rem;
}

#footer .extra .langs .toggle svg {
  display: block;
  width: 1.0666666667em;
  height: auto;
  aspect-ratio: 1/1;
}

#footer .extra .langs .toggle .globe svg {
  width: 1.8666666667em;
}

#footer .extra .langs.--active .toggle {
  color: #0066DB;
}

#footer .extra .langs.--active .toggle .arrow svg {
  transform: rotate(180deg);
}

#footer .extra .langs.--active .dropdown {
  opacity: 1;
  visibility: visible;
  z-index: 10;
  transform: translateY(0);
}

#footer hr {
  margin: clamp(2rem, 2.3460410557vw, 2.4rem) 0;
  border: 0;
  height: 1px;
  background: #e0e0e0;
}

#footer .tail {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.8rem;
  font-size: 1.3rem;
  color: #767676;
  letter-spacing: -0.02em;
  line-height: 1.6;
}

#footer .tail .logo svg {
  display: block;
  width: auto;
  height: 3.6rem;
}

[lang=en] #footer .tail .logo svg {
  height: 3rem;
}

@media (max-width: 1360px) {
  [lang=en] #footer .tail .logo svg {
    height: 2.2rem;
  }
}

@media (max-width: 1023px) {
  #footer .footer-menus {
    margin-bottom: 6.4rem;
  }

  #footer .footer-menus .footer-nav {
    display: none;
  }

  #footer .footer-menus .family-site {
    width: 100%;
  }

  #footer .footer-menus .family-site .dropdown {
    width: 100%;
  }
}

@media (max-width: 767px) {
  #footer .extra {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  #footer .extra .sns {
    display: none;
  }

  #footer .tail {
    flex-direction: column;
    align-items: flex-start;
  }
}

.section .--overflow-hidden {
  overflow: hidden;
}

.section.bg-blue {
  background-color: #E5F0FB;
}

.section-heading {
  display: flex;
  justify-content: space-between;
  gap: var(--gap);
  row-gap: var(--spacing-10, 4rem);
}

.section-heading .__utils {
  align-self: flex-end;
}

@media (max-width: 767px) {
  .section-heading {
    flex-direction: column;
  }

  .section-heading .__utils {
    align-self: stretch;
  }
}

.sub-headline {
  position: relative;
  padding-top: 10rem;
  padding-bottom: var(--spacing-20, 8rem);
  text-align: center;
}

.sub-headline .__title {
  position: relative;
  z-index: 1;
}

.sub-headline.has-image {
  padding: 22rem 0;
  padding: clamp(10.4rem, 11.4583333333vw, 22rem);
}

.sub-headline.has-image .__title {
  color: #fff;
}

.sub-headline.has-image .__image {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.sub-headline.has-image .__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sub-headline.has-image .__image::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
}

@media (max-width: 767px) {
  .sub-headline {
    padding-top: var(--spacing-30, 12rem);
    padding-bottom: 5.2rem;
  }

  .sub-headline.has-image {
    padding: 10.4rem 0;
  }
}

@media (max-width: 1023px) {
  .left-tab-container .container {
    padding: 0;
  }
}

.left-tab-layout {
  display: flex;
  justify-content: space-between;
  padding-top: var(--spacing-40, 16rem);
  padding-bottom: var(--spacing-40, 16rem);
  gap: var(--spacing-9, 3.6rem);
}

@media (max-width: 1023px) {
  .left-tab-layout {
    flex-direction: column;
    padding-top: 0;
    width: 100%;
    gap: var(--spacing-40, 16rem);
  }

  .left-tab-layout:has(.tab-list) {
    gap: 2rem;
  }
}

.left-tab-layout>.__aside {
  width: 20.0520833333vw;
}

@media (min-width: 1023px) {
  .left-tab-layout>.__aside {
    position: sticky;
    top: var(--spacing-40, 16rem);
    align-self: flex-start;
  }
}

@media (max-width: 1023px) {
  .left-tab-layout>.__aside {
    width: 100%;
    overflow: hidden;
    background-color: #f6f6f6;
  }
}

@media (max-width: 1023px) {
  .left-tab-layout>.__aside.--white {
    background-color: #fff;
  }
}

.left-tab-layout>.__aside .left-tab-list {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}

@media (max-width: 1023px) {
  .left-tab-layout>.__aside .left-tab-list {
    flex-direction: row;
    padding: 0 var(--gutter, clamp(4.8rem, 4.1667vw, 8rem));
    overflow-y: auto;
    box-sizing: border-box;
    white-space: nowrap;
    gap: var(--spacing-6, 2.4rem);
  }

  .left-tab-layout>.__aside .left-tab-list::-webkit-scrollbar {
    display: none;
  }
}

.left-tab-layout>.__aside .left-tab-list .__item a {
  display: inline-block;
  padding: 1rem 0;
  color: #ccc;
  transition: color 0.2s cubic-bezier(0.42, 0, 0.58, 1);
}

[lang=en] .left-tab-layout>.__aside .left-tab-list .__item a {
  display: inline;
  white-space: normal;
  line-height: 2;
}

@media (max-width: 1023px) {
  .left-tab-layout>.__aside .left-tab-list .__item a {
    font-size: var(--fs-body2);
    line-height: 1.32;
    letter-spacing: -0.02em;
    color: #ccc;
  }

  [lang=en] .left-tab-layout>.__aside .left-tab-list .__item a {
    font-size: var(--fs-body2);
    line-height: 1.32;
    letter-spacing: -0.02em;
    display: inline-block;
    white-space: pre;
  }
}

@media (max-width: 767px) {
  .left-tab-layout>.__aside .left-tab-list .__item a {
    padding: 1.2rem 0;
    height: 4.4rem;
  }
}

.left-tab-layout>.__aside .left-tab-list .__item.is-active a {
  color: #0066DB;
}

@media (min-width: 1023px) {
  .left-tab-layout>.__aside .left-tab-list .__item.is-active a {
    border-bottom: 2px solid #0066DB;
  }
}

.left-tab-layout>.__aside .left-tab-list .__item:hover a {
  color: #0066DB;
}

.left-tab-layout>.__content {
  width: 106rem;
}

@media (max-width: 1023px) {
  .left-tab-layout>.__content {
    width: 100%;
    padding: 0 var(--gutter, clamp(4.8rem, 4.1667vw, 8rem));
    box-sizing: border-box;
  }
}

.left-tab-layout>.__content .content-list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-20, 8rem);
}

.left-tab-layout>.__content .content-list .__item {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-6, 2.4rem);
}

.left-tab-layout>.__content .content-list .__item.--border-top {
  border-top: 1px solid #e0e0e0;
}

.left-tab-layout>.__content .content-list .__item .__head h4 {
  padding-top: var(--spacing-5, 2rem);
}

@media (max-width: 1023px) {
  .left-tab-layout>.__content .content-list .__item .__head h4 {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-4, 1.6rem);
  }
}

.left-tab-layout>.__content .content-list .__item .__head .divider {
  margin-left: var(--spacing-4, 1.6rem);
  margin-right: var(--spacing-4, 1.6rem);
  background: #ccc;
  display: inline-block;
  width: 1px;
  height: 0.75em;
  font: inherit;
}

@media (max-width: 1023px) {
  .left-tab-layout>.__content .content-list .__item .__head .divider.--hide-t {
    display: none;
  }
}

.left-tab-layout>.__content .tab-list {
  margin-bottom: var(--spacing-10, 4rem);
}

@media (max-width: 1023px) {
  .left-tab-layout>.__content .tab-list {
    margin-bottom: 4.8rem;
  }
}

@media (max-width: 1023px) {
  .left-tab-layout .gray-box .grid {
    gap: var(--spacing-3, 1.2rem);
  }
}

.left-sticky-layout {
  display: flex;
  justify-content: space-between;
  gap: var(--spacing-9, 3.6rem);
}

.left-sticky-layout>.__header {
  width: 20.0520833333vw;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-10, 4rem);
  container-type: inline-size;
  container-name: left;
}

.left-sticky-layout>.__header.--sticky {
  position: sticky;
  top: var(--spacing-40, 16rem);
  align-self: flex-start;
}

.left-sticky-layout>.__header p {
  letter-spacing: -0.03em;
}

.left-sticky-layout>.__header h3.text-white-space-kr {
  white-space: pre;
}

.left-sticky-layout>.__header h3.text-white-space-kr[lang=en] {
  white-space: normal;
}

@container left (max-width: 275px) {
  .left-sticky-layout>.__header h3.text-white-space-kr {
    white-space: normal;
  }
}

.left-sticky-layout>.__body {
  width: 92.5rem;
}

.left-sticky-layout>.__body .__title {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

.left-sticky-layout>.__body .__title.--align-center {
  align-items: center;
}

.left-sticky-layout>.__body .__title+.__desc {
  margin-top: var(--spacing-5, 2rem);
}

.left-sticky-layout>.__body .__image {
  border-radius: var(--border-radius-sm);
  overflow: hidden;
}

.left-sticky-layout>.__body .__image img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

@media (max-width: 767px) {
  .left-sticky-layout>.__body .__image[data-image-scrollable-x=true] {
    overflow-x: auto;
    padding-bottom: 0.4rem;
  }

  .left-sticky-layout>.__body .__image[data-image-scrollable-x=true] img {
    min-width: 60rem;
  }

  .left-sticky-layout>.__body .__image[data-image-scrollable-x=true]::-webkit-scrollbar {
    width: 4px;
    height: 4px;
    background: rgba(0, 102, 219, 0.1);
    border-radius: 999px;
  }

  .left-sticky-layout>.__body .__image[data-image-scrollable-x=true]::-webkit-scrollbar-thumb {
    background: #0066DB;
    border-radius: 999px;
  }
}

@media (min-width: 1023px) {
  .left-sticky-layout:not(.--vertical)>.__header {
    position: sticky;
    top: var(--spacing-40, 16rem);
    align-self: flex-start;
  }
}

.left-sticky-layout.--vertical {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-10, 4rem);
}

@media (max-width: 1023px) {
  .left-sticky-layout {
    display: flex;
    flex-direction: column;
  }

  .left-sticky-layout .__header {
    width: 100%;
  }

  .left-sticky-layout .__body {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .left-sticky-layout.--vertical .grid {
    gap: 4rem;
  }
}

@media (max-width: 1023px) {
  .banners .grid {
    row-gap: 2rem;
  }
}

a,
button {
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  padding: 0;
  margin: 0;
  border: 0;
  background: transparent;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  color: inherit;
  box-shadow: none;
  box-sizing: border-box;
}

.btn {
  font-size: var(--fs-label2);
  line-height: 1.32;
  letter-spacing: -0.02em;
  white-space: nowrap;
}

.btn.--lg {
  font-size: var(--fs-label1);
  font-weight: 530;
  line-height: 1;
  letter-spacing: -0.02em;
}

.btn.--capsule {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-left: var(--spacing-5, 2rem);
  padding-right: var(--spacing-5, 2rem);
  padding-top: var(--spacing-3, 1.2rem);
  padding-bottom: var(--spacing-3, 1.2rem);
  gap: var(--spacing-3, 1.2rem);
  height: 2.6666666667em;
  font-weight: 530;
  background: #ffffff;
  border-radius: 2.6666666667em;
  transition: background-color 0.2s ease, color 0.2s ease;
}

[lang=en] .btn.--capsule,
[lang=en] .btn.--capsule.--lg {
  padding-left: var(--spacing-6, 2.4rem);
  padding-right: var(--spacing-6, 2.4rem);
}

.btn.--capsule .__icon svg {
  display: block;
  width: 1.8rem;
  height: auto;
  aspect-ratio: 1/1;
}

.btn.--capsule.--blue {
  color: #0066DB;
  background: #E5F0FB;
}

.btn.--capsule.--blue:hover {
  background: #0066DB;
  color: #fff;
}

.btn.--capsule.--border-gray {
  color: #767676;
  border: 1px solid #ccc;
}

.btn.--capsule.--border-gray:hover {
  background: #fff;
  color: #767676;
}

.btn.--capsule.--lg {
  height: 2.5454545455em;
  border-radius: 2.5454545455em;
  gap: var(--spacing-6, 2.4rem);
  padding-top: var(--spacing-4, 1.6rem);
  padding-bottom: var(--spacing-4, 1.6rem);
  padding-left: var(--spacing-6, 2.4rem);
  padding-right: var(--spacing-6, 2.4rem);
}

.btn.--capsule:hover {
  background: #0066DB;
  color: #fff;
}

@media (max-width: 767px) {
  .btn.--capsule .__icon svg {
    width: 1.6rem;
  }
}

.btn.--capsule.--disabled,
.btn.--capsule[disabled] {
  cursor: not-allowed;
  background: #eee !important;
  color: #ccc !important;
}

.btn.--capsule.--disabled:hover,
.btn.--capsule[disabled]:hover {
  background: #eee !important;
  color: #ccc !important;
}

.btn.--square {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 1.4rem;
  padding-bottom: 1.4rem;
  padding-left: var(--spacing-6, 2.4rem);
  padding-right: var(--spacing-6, 2.4rem);
  gap: 1.2rem;
  color: #0066DB;
  height: 2.8888888889em;
  border-radius: var(--border-radius-xs, 6px);
  background: #fff;
  transition: background-color 0.2s ease, color 0.2s ease;
  font-weight: 530;
}

.btn.--square .__icon svg {
  display: block;
  width: 1.8rem;
  height: auto;
  aspect-ratio: 1/1;
}

.btn.--square:hover {
  color: #fff;
  background: #0066DB;
}

@media (max-width: 767px) {
  .btn.--square {
    height: 4.8rem;
  }
}

.cta-btns {
  display: flex;
  align-items: center;
  gap: var(--gap);
}

.cta-btns.--centered {
  justify-content: center;
}

.cta-btns.--space-between {
  justify-content: space-between;
}

.btn-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.8rem;
  height: 2.8rem;
  border-radius: var(--border-radius-sm);
  background-color: #fff;
  transition: background-color 0.3s, border 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

.btn-arrow.--blur {
  background-color: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(7rem);
  -webkit-backdrop-filter: blur(7rem);
}

.btn-arrow.--border-white {
  border: 1px solid #fff;
  background-color: transparent;
}

.btn-arrow.--border-white svg path {
  color: #fff;
}

.btn-arrow.--border-white:hover {
  border: 1px solid #0066DB;
}

.btn-arrow.--blue {
  background-color: #0066DB;
}

.btn-arrow.--blue svg path {
  color: #fff;
}

.btn-arrow.--sm {
  width: 2.2rem;
  height: 2.2rem;
  border-radius: 0.4rem;
}

.btn-arrow.--sm .__icon {
  width: 1.2rem;
  height: 1.2rem;
}

.btn-arrow:hover {
  background-color: #0066DB;
}

.btn-arrow:hover svg path {
  color: #fff;
}

.btn-arrow .__icon {
  display: inline-block;
  width: 1.8rem;
  height: 1.8rem;
}

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

.btn-arrow svg path {
  transition: stroke 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

[data-anims] [data-anim] {
  will-change: opacify, transform;
  opacity: 0;
}

[data-anims] [data-anim] .__word,
[data-anims] [data-anim] .__line {
  clip-path: inset(0);
}

[data-anims] [data-anim].--animated {
  opacity: 1;
}

input,
textarea,
select {
  appearance: none;
  -webkit-appearance: none;
  padding: 0;
  margin: 0;
  border: 0;
  background: transparent;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  color: inherit;
  box-shadow: none;
  box-sizing: border-box;
  transition: border-color 0.2s cubic-bezier(0.42, 0, 0.58, 1);
}

input:focus,
textarea:focus,
select:focus {
  border-color: #0066DB;
}

input[type=file] {
  width: 0;
  height: 0;
  padding: 0;
  border: none;
  font-size: 0;
  visibility: hidden;
}

.form__content {
  width: 100%;
}

.form__title {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  flex-wrap: wrap;
  border-bottom: 1px solid #ccc;
  gap: var(--spacing-2, 0.8rem);
  padding-bottom: var(--spacing-4, 1.6rem);
  margin-bottom: var(--spacing-10, 4rem);
}

.form__title span:not([class^=tc]) {
  color: #383838;
}

.form__title.--borderless {
  border-bottom: 0;
}

.form__rows {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-10, 4rem);
}

.form__row {
  position: relative;
}

.form__row[data-field^=email] {
  z-index: 10;
}

.form__row--flex {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.form__row--align-center {
  align-items: center;
}

.form__row--align-start {
  align-items: flex-start;
}

.form__row--align-end {
  align-items: flex-end;
}

@media (max-width: 767px) {
  .form__row--m-column {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--spacing-10, 4rem);
  }
}

.form__group--flex {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.form__group--align-center {
  align-items: center;
}

.form__group--align-start {
  align-items: flex-start;
}

.form__group--align-end {
  align-items: flex-end;
}

@media (max-width: 767px) {
  .form__group--m-column {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--spacing-6, 2.4rem);
  }
}

.form__item--width-100 {
  width: 100%;
}

.form__item--required .form__label::after {
  content: "*";
  color: #0066DB;
}

.form__item .form__label-with-extra {
  display: flex;
  align-items: flex-end;
  gap: var(--spacing-1, 0.4rem);
  padding-bottom: var(--spacing-5, 2rem);
}

.form__item .form__label-with-extra .form__label {
  padding-bottom: 0;
}

.form__item .form__label {
  display: inline-block;
  padding-bottom: var(--spacing-5, 2rem);
}

.form__caution {
  display: inline-block;
}

.input-box {
  position: relative;
}

.input-box--file {
  display: flex;
}

.input-box__noti {
  display: block;
  color: #767676;
  font-size: var(--fs-body3);
  line-height: 1.6;
  letter-spacing: -0.02em;
  margin-top: var(--spacing-2, 0.8rem);
}

.upload-btn {
  display: flex;
  justify-content: center;
  border-radius: var(--border-radius-sm);
  border: 1px solid #e0e0e0;
  cursor: pointer;
  font-size: var(--fs-body1);
  line-height: 1.6;
  letter-spacing: -0.02em;
  margin-left: var(--spacing-4, 1.6rem);
  padding-top: var(--spacing-5, 2rem);
  padding-bottom: var(--spacing-5, 2rem);
  padding-left: var(--spacing-6, 2.4rem);
  padding-right: var(--spacing-6, 2.4rem);
}

@media (max-width: 767px) {
  .upload-btn {
    width: 12rem;
  }
}

.input-text {
  width: 100%;
  border-radius: var(--border-radius-sm);
  border: 1px solid #e0e0e0;
  font-size: var(--fs-body1);
  line-height: 1.6;
  letter-spacing: -0.02em;
  padding-top: var(--spacing-5, 2rem);
  padding-bottom: var(--spacing-5, 2rem);
  padding-left: var(--spacing-6, 2.4rem);
  padding-right: var(--spacing-6, 2.4rem);
}

.input-text:focus {
  outline: none;
}

.input-text::placeholder {
  color: #767676;
}

.input-text--file {
  cursor: default;
}

.textarea-box {
  line-height: 0;
}

.textarea-box .textarea {
  position: relative;
  width: 100%;
  min-height: 25.6rem;
  border-radius: var(--border-radius-sm);
  border: 1px solid #e0e0e0;
  font-size: var(--fs-body1);
  line-height: 1.6;
  letter-spacing: -0.02em;
  padding-top: var(--spacing-4, 1.6rem);
  padding-left: var(--spacing-6, 2.4rem);
  padding-right: var(--spacing-6, 2.4rem);
  resize: vertical;
  padding-bottom: 4.8rem;
}

@media (max-width: 767px) {
  .textarea-box .textarea {
    padding-bottom: 4.3rem;
  }
}

.textarea-box .textarea:focus {
  outline: none;
}

.textarea-box .textarea::placeholder {
  color: #767676;
}

.textarea-box .textarea__counter {
  position: absolute;
  color: #0066DB;
  z-index: 1;
  font-size: var(--fs-body1);
  line-height: 1.6;
  letter-spacing: -0.02em;
  left: var(--spacing-6, 2.4rem);
  right: var(--spacing-6, 2.4rem);
  padding-bottom: var(--spacing-4, 1.6rem);
  box-sizing: border-box;
  text-align: right;
  left: var(--spacing-6, 2.4rem);
  right: var(--spacing-6, 2.4rem);
  bottom: 1px;
  background: white;
  height: 4.8rem;
}

@media (max-width: 767px) {
  .textarea-box .textarea__counter {
    height: 4.3rem;
  }
}

.radio-box {
  display: flex;
  gap: var(--spacing-10, 4rem);
}

.radio {
  display: inline-flex;
  gap: var(--spacing-2, 0.8rem);
}

.radio__label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  font-size: var(--fs-title4);
  font-weight: 530;
  line-height: 1.5;
  letter-spacing: -0.02em;
}

.radio__icon {
  width: 2.2rem;
  height: 2.2rem;
  display: inline-block;
}

.radio__icon .ring {
  fill: none;
  stroke: #ccc;
  stroke-width: 1.5;
}

.radio__icon .dot {
  fill: transparent;
  transition: fill 0.2s cubic-bezier(0.42, 0, 0.58, 1);
}

.radio__text {
  color: #ccc;
  transition: color 0.2s cubic-bezier(0.42, 0, 0.58, 1);
}

.radio__input {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

.radio__input:checked+.radio__label .ring {
  stroke: #0066DB;
  opacity: 0.3;
}

.radio__input:checked+.radio__label .dot {
  fill: #0066DB;
}

.radio__input:checked+.radio__label .radio__text {
  color: #0066DB;
}

.radio__input:disabled+.radio__label {
  opacity: 0.5;
  cursor: not-allowed;
}

.checkbox {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
}

.checkbox__input {
  display: none;
}

.checkbox__label {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  cursor: pointer;
}

.checkbox__icon {
  width: 3.2rem;
  height: 3.2rem;
  flex-shrink: 0;
}

.checkbox__bg {
  fill: #f6f6f6;
  transition: fill 0.3s ease;
}

.checkbox__mark {
  fill: none;
  stroke: rgba(0, 0, 0, 0.2);
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: stroke 0.25s ease, stroke-opacity 0.25s ease, stroke-dashoffset 0.25s ease;
  stroke-dasharray: 20;
  stroke-dashoffset: 0;
}

.checkbox__input:checked+.checkbox__label .checkbox__bg {
  fill: #0066db;
  transition: fill 0.3s ease;
}

.checkbox__input:checked+.checkbox__label .checkbox__mark {
  stroke: #fff;
  stroke-opacity: 1;
}

.checkbox {
  /* Hover / Active 효과 */
}

.checkbox__label:hover .checkbox__bg {
  fill: #e8f1ff;
}

.checkbox__label:active .checkbox__bg {
  fill: #cde0ff;
}

.checkbox__text {
  font-size: 1rem;
  color: #1d1d1d;
}

.form-dropdown.dropdown[data-dropdown=basic] .dropdown__button {
  width: 100%;
  border-radius: var(--border-radius-sm);
  border: 1px solid #e0e0e0;
  font-size: var(--fs-body1);
  line-height: 1.6;
  letter-spacing: -0.02em;
  padding-top: var(--spacing-5, 2rem);
  padding-bottom: var(--spacing-5, 2rem);
  padding-left: var(--spacing-6, 2.4rem);
  padding-right: var(--spacing-6, 2.4rem);
}

.form-dropdown.dropdown[data-dropdown=basic] .dropdown__button:focus {
  outline: none;
}

.form-dropdown.dropdown[data-dropdown=basic] .dropdown__menu {
  padding: 0;
  padding-left: var(--spacing-2, 0.8rem);
  padding-right: var(--spacing-2, 0.8rem);
  padding-bottom: var(--spacing-2, 0.8rem);
  border-radius: 0 0 var(--border-radius-sm) var(--border-radius-sm);
}

.form-dropdown.dropdown[data-dropdown=basic] .dropdown__option a {
  font-size: var(--fs-body1);
  line-height: 1.6;
  letter-spacing: -0.02em;
  padding-top: var(--spacing-3, 1.2rem);
  padding-bottom: var(--spacing-3, 1.2rem);
  padding-left: var(--spacing-4, 1.6rem);
  padding-right: var(--spacing-4, 1.6rem);
  color: #767676;
  border-radius: var(--border-radius-sm);
}

.form-dropdown.dropdown[data-dropdown=basic] .dropdown__option a:hover {
  color: #767676;
  background: #f6f6f6;
}

.email-group {
  display: grid;
  align-items: center;
  grid-template-columns: 1fr auto 1fr;
  gap: var(--spacing-3, 1.2rem);
}

.email-group .email-separator {
  font-size: var(--fs-title4);
  font-weight: 530;
  line-height: 1.5;
  letter-spacing: -0.02em;
  color: #ccc;
}

.email-group .email-domain-group {
  display: flex;
  align-items: center;
  gap: var(--spacing-4, 1.6rem);
  min-width: 0;
}

.email-group .email-domain-group .email-domain,
.email-group .email-domain-group .email-direct {
  flex: 1 1 0;
  min-width: 0;
  width: 100%;
}

.email-group .email-domain-group .email-domain.form-dropdown {
  width: 100%;
  min-width: 0;
}

.email-group .email-domain-group .email-domain .dropdown__button {
  width: 100%;
  min-width: 0;
  white-space: normal;
  box-sizing: border-box;
}

.email-group .email-domain-group .email-direct.input-text {
  min-width: 0;
}

@media (max-width: 767px) {
  .email-group {
    grid-template-columns: 1fr auto;
  }

  .email-group .email-domain-group {
    grid-area: 2/1/3/3;
  }
}

.__img img {
  display: block;
  object-fit: cover;
}

.__img.--1x1 img {
  aspect-ratio: 1/1;
}

.__img.--16x9 img {
  aspect-ratio: 16/9;
}

.__img.--4x3 img {
  aspect-ratio: 4/3;
}

.__img.--3x2 img {
  aspect-ratio: 3/2;
}

.--modal-opened {
  overflow: hidden;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 199998;
  background: rgba(0, 0, 0, 0.55);
  opacity: 0;
  visibility: hidden;
}

.modal.--active {
  opacity: 1;
  visibility: visible;
}

.modal .__scroll-area {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
}

.modal .__inner {
  min-height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  padding: clamp(4.8rem, 4.1667vw, 8rem);
}

.tab-list {
  display: flex;
  align-items: center;
  gap: 1.2rem;
}

@media (max-width: 767px) {
  .tab-list {
    gap: 0.8rem;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
  }

  .tab-list::-webkit-scrollbar {
    display: none;
  }
}

.tab-list .__item a {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-2, 0.8rem);
  height: 2.4em;
  padding: 0 1.1em;
  border-radius: 10rem;
  border: 1px solid #e0e0e0;
  background-color: #fff;
  transition: color 0.3s, background-color 0.3s, border-color 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

@media (max-width: 767px) {
  .tab-list .__item a {
    height: 2.2285714286em;
    padding: 0 1.0285714286em;
  }
}

.tab-list .__item a:hover {
  color: #fff;
  background-color: #0066DB;
  border-color: #0066DB;
}

.tab-list .__item.--active a {
  color: #fff;
  background-color: #0066DB;
  border-color: #0066DB;
}

.tab-list.--light-blue .__item a:hover {
  color: #0066DB;
  background-color: #E5F0FB;
  border-color: #E5F0FB;
}

.tab-list.--light-blue .__item.--active a {
  color: #0066DB;
  background-color: #E5F0FB;
  border-color: #E5F0FB;
}

.tag {
  position: relative;
  display: inline-flex;
  align-items: center;
  box-sizing: border-box;
  border-radius: 999px;
  border: 1px solid #eee;
  cursor: pointer;
  gap: var(--spacing-3, 1.2rem);
  padding-top: var(--spacing-3, 1.2rem);
  padding-bottom: var(--spacing-3, 1.2rem);
  padding-left: var(--spacing-4, 1.6rem);
  padding-right: var(--spacing-4, 1.6rem);
  transition: background-color 0.3s, border-color 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

.tag .__label,
.tag .__icon {
  transition: color 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

.tag.--blur {
  overflow: hidden;
  background-color: rgba(0, 0, 0, 0.2);
  border-color: transparent;
}

.tag.--blur::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  backdrop-filter: blur(3.5rem);
  -webkit-backdrop-filter: blur(3.5rem);
  opacity: 1;
  z-index: -1;
  transition: opacity 0.2s ease;
}

.tag.--blur .__label,
.tag.--blur .__icon {
  color: #fff;
}

.tag.--blur:hover::after {
  opacity: 0;
}

.tag.--blue {
  background: #E5F0FB;
  color: #0066DB;
  border-color: transparent;
}

.tag.--only-icon {
  justify-content: center;
  width: 4.8rem;
  height: 4.8rem;
  padding: 0;
  border-radius: 50%;
}

.tag:hover {
  background-color: #fff;
  border-color: #E5F0FB;
}

.tag:hover .__label,
.tag:hover .__icon {
  color: #0066DB;
}

@media (max-width: 767px) {
  .tag {
    padding: 0.8rem 1rem;
  }

  .tag.--only-icon {
    width: 3.6rem;
    height: 3.6rem;
  }
}

.tag-square {
  position: relative;
  display: inline-flex;
  align-items: center;
  box-sizing: border-box;
  padding: 0.6rem 0;
  padding-left: var(--spacing-3, 1.2rem);
  padding-right: var(--spacing-3, 1.2rem);
  border-radius: var(--border-radius-xs);
  background: rgba(229, 240, 251, 0.5);
  border: none;
}

@media (max-width: 767px) {
  .tag-square {
    padding: 0.4rem 1rem;
  }
}

.badge {
  display: inline-flex;
  align-items: center;
  padding: 0.2727272727em 0.4545454545em;
  border-radius: 0.4rem;
}

.badge.--blue {
  color: #0066DB;
  background-color: rgba(229, 240, 251, 0.5);
}

.badge.--blue-solid {
  color: #0066DB;
  background-color: #E5F0FB;
}

.badge.--white {
  color: #000;
  background-color: #fff;
  border: 1px solid #e0e0e0;
}

.badge.--numbering {
  padding: 0.125em 0.625em;
}

/* basic dropdown */
.dropdown[data-dropdown=basic] {
  position: relative;
  min-width: 25.8rem;
  z-index: 1;
}

.dropdown[data-dropdown=basic] .dropdown__button {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 2.4rem;
  border-radius: 2.8rem;
  border: 1px solid #e0e0e0;
  background: #fff;
  gap: 1rem;
}

.dropdown[data-dropdown=basic] .dropdown__button span {
  color: #767676;
  font-size: var(--fs-body1);
  line-height: 1.6;
  letter-spacing: -0.02em;
  font-weight: 330;
}

.dropdown[data-dropdown=basic] .dropdown__icon {
  display: inline-flex;
  width: 2.4rem;
  height: 2.4rem;
}

.dropdown[data-dropdown=basic] .dropdown__icon svg {
  color: #000;
  width: 100%;
  height: 100%;
}

.dropdown[data-dropdown=basic] .dropdown__menu {
  display: none;
  position: absolute;
  top: calc(100% - 1px);
  left: 0;
  right: 0;
  padding: 0.4rem 0.6rem 0.6rem;
  border: 1px solid #e0e0e0;
  border-top: 0;
  background: #fff;
  border-bottom-left-radius: 2.8rem;
  border-bottom-right-radius: 2.8rem;
  max-height: 34.6rem;
  overflow: auto;
}

.dropdown[data-dropdown=basic] .dropdown__menu::-webkit-scrollbar {
  width: 4px;
  height: 4px;
  background: rgba(0, 0, 0, 0.05);
}

.dropdown[data-dropdown=basic] .dropdown__menu::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.3);
  border-radius: 4px;
}

.dropdown[data-dropdown=basic] .dropdown__option a {
  display: block;
  padding: 1.6rem 1.8rem;
  font-size: var(--fs-label2);
  line-height: 1.32;
  letter-spacing: -0.02em;
  font-weight: 430;
  border-radius: 999px;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}

.dropdown[data-dropdown=basic] .dropdown__option a:hover {
  color: #0066DB;
  background: #E5F0FB;
}

.dropdown[data-dropdown=basic].is-open .dropdown__button {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.dropdown[data-dropdown=basic].is-open .dropdown__icon {
  transform: rotate(180deg);
}

.dropdown[data-dropdown=basic].is-open .dropdown__menu {
  display: block;
}

@media (max-width: 767px) {
  .dropdown[data-dropdown=basic] .dropdown__button {
    width: 100%;
    padding: 1rem 1.8rem;
    gap: 0.4rem;
  }

  .dropdown[data-dropdown=basic] .dropdown__option a {
    padding: 1rem 1.2rem;
  }
}

/* lnb dropdown (2depth) */
.dropdown[data-dropdown=lnb] {
  position: relative;
  width: 18.1rem;
}

[lang=en] .dropdown[data-dropdown=lnb] {
  width: auto;
  max-width: 25rem;
}

.dropdown[data-dropdown=lnb] .dropdown__button {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #fff;
  border: 1px solid #0066DB;
  border-radius: var(--border-radius-sm, 8px);
  padding: 1.4rem 1.2rem 1.4rem 1.6rem;
  gap: 1rem;
  white-space: pre;
}

.dropdown[data-dropdown=lnb] .dropdown__button span {
  font-size: var(--fs-label2);
  line-height: 1.32;
  letter-spacing: -0.02em;
  font-weight: 430;
  color: #0066DB;
}

[lang=en] .dropdown[data-dropdown=lnb] .dropdown__button span {
  white-space: pre;
}

.dropdown[data-dropdown=lnb] .dropdown__icon {
  display: inline-flex;
  width: 2.4rem;
  height: 2.4rem;
  background: url("../img/icon/arrow-down.svg") no-repeat center;
}

.dropdown[data-dropdown=lnb] .dropdown__menu {
  display: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  border-radius: var(--border-radius-sm, 0.6rem);
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  background: #fff;
  border: 1px solid #0066DB;
  border-top: 0;
  z-index: 999;
  padding: 0.6rem;
}

.dropdown[data-dropdown=lnb] .dropdown__menu li {
  list-style: none;
}

.dropdown[data-dropdown=lnb] .dropdown__option a {
  display: block;
  padding: 1rem;
  padding-top: var(--spacing-3, 1.2rem);
  padding-bottom: var(--spacing-3, 1.2rem);
  font-size: var(--fs-label2);
  line-height: 1.32;
  letter-spacing: -0.02em;
  font-weight: 430;
  border-radius: var(--border-radius-sm, 0.6rem);
  cursor: pointer;
  user-select: none;
  transition: background 0.2s, color 0.2s;
}

.dropdown[data-dropdown=lnb] .dropdown__option a:hover {
  color: #0066DB;
  background: #E5F0FB;
}

.dropdown[data-dropdown=lnb].is-open .dropdown__button {
  border-radius: var(--border-radius-sm, 0.6rem);
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom: 1px solid #fff;
}

.dropdown[data-dropdown=lnb].is-open .dropdown__icon {
  transform: rotate(180deg);
}

.dropdown[data-dropdown=lnb].is-open .dropdown__menu {
  display: block;
}

@media (max-width: 767px) {
  .dropdown[data-dropdown=lnb] {
    width: 14rem;
    border-radius: var(--border-radius-sm, 0.6rem);
  }

  [lang=en] .dropdown[data-dropdown=lnb] {
    min-width: 14rem;
  }

  .dropdown[data-dropdown=lnb] .dropdown__button {
    padding: 0.8rem 1rem 0.8rem 1.2rem;
    gap: 0.4rem;
  }

  .dropdown[data-dropdown=lnb] .dropdown__icon {
    width: 1.8rem;
    height: 1.8rem;
  }

  .dropdown[data-dropdown=lnb] .dropdown__menu {
    padding: 0 0.4rem;
  }

  .dropdown[data-dropdown=lnb] .dropdown__option a {
    padding: 0 2.8rem 0 0.8rem;
    padding-top: var(--spacing-3, 1.2rem);
    padding-bottom: var(--spacing-3, 1.2rem);
    word-break: all;
  }
}

.breadcrumb {
  width: 100%;
}

.breadcrumb .container {
  padding-top: 2rem;
  text-align: right;
}

.breadcrumb__list {
  display: inline-flex;
  gap: 0.8rem;
  align-items: center;
  height: 4.2rem;
}

.breadcrumb__item {
  color: #767676;
  font-size: 1.4rem;
  line-height: 1.4;
  letter-spacing: -0.02em;
  letter-spacing: normal;
}

.breadcrumb__item[aria-current=page] {
  color: #000;
  font-weight: 530;
}

.breadcrumb__item svg {
  width: 1.2rem;
  height: 1.2rem;
}

.breadcrumb__seperator {
  color: #767676;
}

.breadcrumb__seperator svg {
  width: 1rem;
  height: 1rem;
}

.breadcrumb[data-mode=dark] .breadcrumb__item {
  color: #fff;
}

.breadcrumb[data-mode=dark] .breadcrumb__item[aria-current=page] {
  color: #fff;
}

.breadcrumb[data-mode=dark] .breadcrumb__seperator {
  color: #fff;
}

.search-input-box {
  padding: 1.2rem 0;
  display: flex;
  align-items: center;
  gap: var(--spacing-4, 1.6rem);
  border-bottom: 1px solid #e0e0e0;
  transition: border-color 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

.search-input-box:has(.search-field:focus) {
  border-color: #0066DB;
}

.search-input-box .search-icon {
  font-size: var(--fs-title1);
  font-weight: 530;
  line-height: 1.5;
  letter-spacing: -0.02em;
  flex-shrink: 0;
  width: 4rem;
  height: 4rem;
  color: #0066DB;
}

.search-input-box .search-icon svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.search-input-box .search-field {
  flex: 1;
  width: 100%;
  height: 1.4em;
  padding-left: 0.4rem;
  caret-color: #0066DB;
  font-size: var(--fs-title1);
  font-weight: 530;
  line-height: 1.5;
  letter-spacing: -0.02em;
}

.search-input-box .search-field:focus {
  outline: none;
}

.search-input-box .search-field::placeholder {
  color: #ccc;
}

.search-input-box .search-clear {
  flex-shrink: 0;
  width: 4rem;
  height: 4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #0066DB;
  background: rgba(229, 240, 251, 0.5);
  border-radius: 999px;
}

.search-input-box .search-clear svg {
  width: 1.8rem;
  height: 1.8rem;
  object-fit: contain;
}

@media (max-width: 767px) {
  .search-input-box {
    padding: 1.4rem 0;
    gap: var(--spacing-4, 1.6rem);
  }

  .search-input-box .search-icon {
    width: 3rem;
    height: 3rem;
  }

  .search-input-box .search-clear {
    width: 3rem;
    height: 3rem;
  }
}

.search-container {
  position: relative;
  display: flex;
  align-items: center;
  gap: 1.2rem;
}

@media (max-width: 1023px) {
  .search-container {
    flex-direction: column;
  }
}

.search {
  width: 38rem;
  padding: 1rem 2.2rem;
  border-radius: 999px;
  background: #f6f6f6;
  box-sizing: border-box;
  gap: var(--spacing-1, 0.4rem);
}

.search form {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.search__input {
  width: 100%;
  font-size: var(--fs-body1);
  line-height: 1.6;
  letter-spacing: -0.02em;
  color: #000;
  font-weight: 330;
}

.search__input:focus {
  outline: none;
}

.search__input::placeholder {
  color: #767676;
}

.search__button {
  flex-shrink: 0;
  width: 2.4rem;
  height: 2.4rem;
}

.search__button svg {
  width: 100%;
  height: 100%;
}

.search__button .icon--clear {
  display: none;
}

.search.has-value .search__button .icon--search {
  display: none;
}

.search.has-value .search__button .icon--clear {
  display: block;
}

@media (max-width: 767px) {
  .search {
    width: 35rem;
    padding: 1rem 1.8rem;
  }

  .search__button {
    width: 1.8rem;
    height: 1.8rem;
  }
}

.pagination {
  width: 100%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-6, 2.4rem);
}

.pagination .__buttons {
  display: flex;
  align-items: center;
  gap: var(--spacing-3, 1.2rem);
}

.pagination .__button {
  width: 2.4rem;
  height: 2.4rem;
}

.pagination .__button[disabled] {
  cursor: not-allowed;
  color: #ccc;
}

.pagination .__pages {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.pagination .__page {
  width: 3.6rem;
  height: 3.6rem;
  line-height: 3.6rem;
  text-align: center;
}

.pagination .__page.--active {
  color: #fff;
  background: #0066DB;
  border-radius: 9999px;
}

@media (max-width: 767px) {
  .pagination .__button {
    width: 1.8rem;
    height: 1.8rem;
  }

  .pagination .__pages {
    gap: 0.4rem;
  }

  .pagination .__page {
    width: 2.4rem;
    height: 2.4rem;
    line-height: 2.4rem;
  }
}

.lnb {
  width: 100%;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #eee;
  background: rgba(255, 255, 255, 0.2);
}

.lnb .container {
  width: 100%;
  box-sizing: border-box;
}

.lnb .container .__boxed {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: flex-end;
}

.lnb .dropdown {
  margin: 1.7rem 0;
  flex-shrink: 0;
}

.lnb[data-dropdown-hidden=true] .dropdown {
  display: none;
}

.lnb[data-dropdown-hidden=true] .container .__boxed {
  grid-template-columns: auto;
  justify-content: center;
}

.lnb__tabs {
  width: 100%;
  position: relative;
  box-sizing: border-box;
  overflow: hidden;
}

.lnb__tabs::-webkit-scrollbar {
  display: none;
}

.lnb__tabs::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 3rem;
  height: 100%;
  z-index: 1;
  background: linear-gradient(to right, #fff 0%, transparent 95%);
  transition: opacity 0.3s ease;
  opacity: 0;
  pointer-events: none;
}

.lnb__tabs::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 3rem;
  height: 100%;
  z-index: 1;
  background: linear-gradient(to left, #fff 0%, rgba(255, 255, 255, 0) 95%);
  transition: opacity 0.3s ease;
  opacity: 0;
  pointer-events: none;
}

.lnb__tabs.has-left::before {
  opacity: 1;
}

.lnb__tabs.has-right::after {
  opacity: 1;
}

.lnb__tab-list {
  display: flex;
  gap: 4rem;
  align-items: center;
  padding: 0 2rem;
  overflow: auto;
  box-sizing: border-box;
}

.lnb__tab-list::-webkit-scrollbar {
  display: none;
}

.lnb__tab-item {
  list-style: none;
}

.lnb__tab-item a {
  -webkit-user-drag: none;
  display: block;
  padding-bottom: 2.4rem;
  color: #767676;
  font-size: var(--fs-body1);
  line-height: 1.6;
  letter-spacing: -0.02em;
  font-weight: 430;
  white-space: nowrap;
}

.lnb__tab-item.is-active a {
  color: #0066DB;
  font-weight: 600;
  border-bottom: 2px solid #0066DB;
}

@media (max-width: 1023px) {
  .lnb .container {
    padding-right: 0;
  }

  .lnb .dropdown {
    margin: 1.2rem 0;
  }

  .lnb__tab-list {
    display: flex;
    width: 100%;
    gap: 2rem;
  }

  .lnb__tab-item a {
    padding-bottom: 1.5rem;
  }
}

@media (max-width: 767px) {
  .lnb .container .__boxed {
    grid-template-columns: auto 1fr;
  }
}

.snb {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 10;
}

@media (max-width: 1023px) {
  .snb {
    flex-direction: column;
    gap: 1.2rem;
  }

  .snb .dropdown {
    width: 100%;
  }

  .snb .search {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .snb {
    align-items: flex-start;
  }
}

.news-card .__link {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-8, 3.2rem);
}

.news-card .__image {
  width: 100%;
  border-radius: var(--border-radius-sm);
  overflow: hidden;
  isolation: isolate;
  aspect-ratio: 520/292;
}

.news-card .__image span {
  display: block;
  width: 100%;
  height: 100%;
}

.news-card .__image span::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(100px);
  -webkit-backdrop-filter: blur(100px);
  z-index: 1;
}

.news-card .__image .__bg {
  display: none;
}

.news-card .__image .__og {
  position: absolute;
  top: 0;
  left: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: translateX(-50%);
  transition: transform 1.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transform;
  z-index: 2;
}

.news-card .__image.--portrait span::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(60px);
  -webkit-backdrop-filter: blur(60px);
  z-index: 1;
}

.news-card .__image.--portrait .__bg {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: translateX(-50%);
  transition: transform 1.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transform;
  z-index: 0;
}

.news-card .__image.--portrait .__og {
  object-fit: contain;
}

.news-card .__image.--portrait.--extra-tall .__og {
  width: max(100% - 33.6rem, 50%);
  object-fit: cover;
}

.news-card:hover .__image img {
  transform: translateX(-50%) scale(1.125);
}

.news-card .__content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-2, 0.8rem);
}

.news-card .__meta .__category {
  color: #0066DB;
}

.news-card .__meta .__date {
  color: #767676;
}

.news-card .__meta span+span::before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 0.1rem;
  height: 1.5rem;
  background: #ccc;
  margin-left: var(--spacing-3, 1.2rem);
  margin-right: var(--spacing-3, 1.2rem);
}

.banner {
  position: relative;
}

.banner .__inner {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: var(--border-radius-sm);
}

.banner .__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.banner .__image span {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.banner .__image span:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0) 100%), rgba(0, 0, 0, 0.1);
}

.banner .__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 1.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transform;
}

.banner:hover .__image img {
  transform: scale(1.125);
}

.banner .__content {
  position: relative;
  min-height: 24.2rem;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--gap);
  z-index: 1;
  padding-top: var(--spacing-12, 4.8rem);
  padding-bottom: var(--spacing-12, 4.8rem);
  padding-left: var(--spacing-14, 5.6rem);
  padding-right: var(--spacing-14, 5.6rem);
}

.banner .__content .__text {
  margin-right: auto;
}

.banner .__content .cta-btns {
  margin-left: auto;
}

@media (max-width: 1600px) {
  .banner .__content {
    flex-direction: column;
  }
}

.sub-kv {
  position: relative;
  width: 100%;
  padding-top: 14.2rem;
  height: 100vh;
  box-sizing: border-box;
  clip-path: inset(0 0 0 0);
  overflow: hidden;
}

.sub-kv-area {
  position: relative;
}

.sub-kv-area .breadcrumb {
  position: absolute;
  top: var(--header-height);
  left: 0;
  right: 0;
  z-index: 1;
}

.sub-kv .__inner {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.sub-kv .__inner .container {
  height: 100%;
}

.sub-kv .__inner .container .__boxed {
  height: 100%;
}

@media (min-width: 1921px) {
  .sub-kv .__inner .container .__boxed {
    max-width: 83.3333333333vw;
  }
}

.sub-kv .__content {
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-14, 5.6rem);
}

.sub-kv .__frame {
  position: relative;
  z-index: 1;
  flex-grow: 1;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.sub-kv .__frame>.container {
  position: relative;
  height: 100%;
}

.sub-kv .__frame>.container>.__boxed {
  position: relative;
  height: 100%;
}

.sub-kv .__headline {
  padding-top: 3.8rem;
}

.sub-kv .__headline.--dynamic {
  position: absolute;
  color: #fff;
}

.sub-kv .__headline.--dynamic .--highlight {
  color: #fff;
}

.sub-kv .__crop {
  --clip-y: 0px;
  --clip-x: 0px;
  --clip-bt: 0px;
  --clip-r: 0px;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  will-change: clip-path, --webkit-clip-path;
  clip-path: inset(var(--clip-y) var(--clip-x) var(--clip-bt) round var(--clip-r));
}

.sub-kv .__crop>.container {
  position: relative;
  z-index: 1;
}

.sub-kv .__crop>.__image {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.sub-kv .__crop>.__image img {
  --scale: 1;
  width: 100%;
  height: 100vh;
  object-fit: cover;
  will-change: transform, transform-origin;
  transform: scale(var(--scale));
}

@media (max-width: 1023px) {
  .sub-kv {
    padding-top: 13.2rem;
    height: 100vh;
  }

  .sub-kv .__headline {
    padding-top: 0;
  }
}

@media (max-width: 767px) {
  .sub-kv {
    padding-top: 12.8rem;
  }
}

.table-container {
  width: 100%;
}

.table-container[data-width] {
  width: var(--width);
}

@media (max-width: 767px) {
  .table-container[data-width] {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .table-container[data-m-width] table {
    width: var(--m-width);
  }
}

.table-container[data-border=true] {
  border: 1px solid #e0e0e0;
  border-radius: var(--border-radius-sm);
  overflow: hidden;
  box-sizing: border-box;
}

@media (max-width: 767px) {
  .table-container[data-scroll=true] {
    width: auto;
    position: relative;
  }

  .table-container[data-scroll=true] .table-scroll-wrapper {
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .table-container[data-scroll=true] .table-scroll-wrapper::-webkit-scrollbar {
    width: 0;
    height: 0;
    background: transparent;
  }

  .table-container[data-scroll=true][data-nudge].--nudge-hide::before,
  .table-container[data-scroll=true][data-nudge].--nudge-hide::after {
    opacity: 0;
  }

  .table-container[data-scroll=true][data-nudge]::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 7.2rem;
    height: 7.2rem;
    border-radius: 800px;
    border: 1px solid #E5F0FB;
    background: #f2f7fd;
    box-shadow: 0 0 12px 0 rgba(0, 0, 0, 0.12);
    z-index: 2;
    transition: opacity 0.3s;
  }

  .table-container[data-scroll=true][data-nudge]::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    background: url("/assets/img/icon/ic-scrollable.svg") center/contain no-repeat;
    transform: translate(-50%, -50%);
    width: 4.4rem;
    height: 4.4rem;
    z-index: 3;
    animation: nudgeMoving 0.5s infinite alternate linear;
    transition: opacity 0.3s;
  }

  @keyframes nudgeMoving {
    0% {
      transform: translate(-50%, -50%) translateX(-8px);
    }

    100% {
      transform: translate(-50%, -50%) translateX(8px);
    }
  }

  .table-container[data-scroll=true] .custom-scrollbar {
    overflow: hidden;
    position: absolute;
    bottom: 0;
    left: 0;
    height: 0.4rem;
    background: rgba(0, 102, 219, 0.1);
    border-radius: 0.2rem;
    z-index: 10;
  }

  .table-container[data-scroll=true] .custom-scrollbar .scrollbar-thumb {
    position: absolute;
    height: 100%;
    background-color: #0066DB;
    border-radius: 0.2rem;
    cursor: pointer;
  }
}

@media (max-width: 767px) {
  .table-container[data-scroll-break=mobile] .table-scroll-wrapper {
    overflow-x: auto;
  }

  .table-container[data-scroll-break=mobile] .table-wrapper {
    width: fit-content;
    padding-bottom: 1.2rem;
  }

  .table-container[data-scroll-break=mobile] table {
    width: 80rem;
  }

  .table-container[data-scroll-break=mobile][data-m-width] table {
    min-width: var(--m-width);
    width: 100%;
  }
}

.table-container table {
  border-collapse: separate;
  border-spacing: 0;
  position: relative;
  z-index: 1;
  width: 100%;
  table-layout: fixed;
  overflow: hidden;
}

.table-container table .table-tit {
  border-bottom: 1px solid #e0e0e0;
  border-right: 1px solid #e0e0e0;
  font-weight: 530;
  text-align: center;
}

.table-container table .table-txt {
  border-bottom: 1px solid #e0e0e0;
  border-right: 1px solid #e0e0e0;
}

.table-container table .table-foot {
  border-bottom: 1px solid #e0e0e0;
  border-right: 1px solid #e0e0e0;
  background: rgba(229, 240, 251, 0.2);
  font-weight: 530;
}

.table-container table th,
.table-container table td {
  position: relative;
  padding: 1.6rem;
  vertical-align: middle;
  word-wrap: break-word;
}

.table-container table th:last-child,
.table-container table td:last-child {
  border-right: 0;
}

.table-container table th.--center,
.table-container table td.--center {
  text-align: center;
}

.table-container table th.--left,
.table-container table td.--left {
  text-align: left;
}

.table-container table th.--right,
.table-container table td.--right {
  text-align: right;
}

.table-container table th.--bg-default,
.table-container table td.--bg-default {
  background-color: rgba(229, 240, 251, 0.5);
  color: #0B2746;
}

.table-container table th.--bg-default::after,
.table-container table td.--bg-default::after {
  content: "";
  position: absolute;
  top: 0;
  left: -1px;
  right: -1px;
  width: calc(100% + 2px);
  height: 1px;
  background-color: #0066DB;
  z-index: 10;
}

.table-container table th.--bg-secondary,
.table-container table td.--bg-secondary {
  background-color: #f6f6f6;
  border-top: 1px solid #000;
}

.table-container table th.--bg-point,
.table-container table td.--bg-point {
  background-color: #0066DB;
  border-top: 1px solid #0066DB;
  color: #fff;
}

.table-container table th.--bg-sky,
.table-container table td.--bg-sky {
  background-color: #E5F0FB;
  color: #0066DB;
}

.table-container table th.--bg-white,
.table-container table td.--bg-white {
  background-color: #fff;
}

.table-container table th.--txt-point,
.table-container table td.--txt-point {
  color: #0066DB;
}

.table-container table th.--border-right,
.table-container table td.--border-right {
  border-right: 1px solid #e0e0e0;
}

.table-container table th.--border-top,
.table-container table td.--border-top {
  border-top: 1px solid #e0e0e0;
}

.table-container table th.--border-left,
.table-container table td.--border-left {
  border-left: 1px solid #e0e0e0;
}

.table-container table th.--border-top-point,
.table-container table td.--border-top-point {
  border-top: 1px solid #0066DB;
}

.table-container table th.--no-border-top,
.table-container table td.--no-border-top {
  border-top: 0;
}

.table-container table th.--no-border-top::after,
.table-container table td.--no-border-top::after {
  display: none;
}

.table-container table th.--no-border-bottom,
.table-container table td.--no-border-bottom {
  border-bottom: 0;
}

.table-container table th.--no-border-right,
.table-container table td.--no-border-right {
  border-right: 0;
}

.table-container table th.--word-breaking,
.table-container table td.--word-breaking {
  word-break: break-all;
}

.table-container table .table-btn {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
}

.table-container table .table-btn .__icon svg {
  width: 1.8rem;
  height: 1.8rem;
}

.popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: none;
  padding: 2rem;
  box-sizing: border-box;
  z-index: 99999;
}

.popup.is-open {
  display: flex;
  align-items: center;
  justify-content: center;
}

.popup .__overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.4);
}

.popup .__layer {
  position: relative;
  width: 100%;
  max-width: 54rem;
  max-height: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-6, 2.4rem);
  padding-top: var(--spacing-10, 4rem);
  padding-left: var(--spacing-10, 4rem);
  padding-bottom: var(--spacing-7, 2.8rem);
  padding-right: 2rem;
  background-color: #fff;
  border-radius: var(--border-radius-sm);
  box-sizing: border-box;
}

.popup .__layer .__close {
  position: absolute;
  top: 2.4rem;
  right: 2.4rem;
  width: 3.2rem;
  height: 3.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-xs, 6px);
  background: #E5F0FB;
}

.popup .__layer .__close svg {
  color: #0066DB;
  width: 2rem;
  height: 2rem;
}

.popup .__layer .__header {
  display: flex;
  flex-direction: column;
  text-align: center;
  gap: var(--spacing-1, 0.4rem);
}

.popup .__layer .__header .__desc {
  color: #383838;
}

.popup .__layer .__body {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-5, 2rem);
  padding-right: 2rem;
  overscroll-behavior: contain;
  max-height: 56rem;
  overflow: auto;
}

.popup .__layer .__body::-webkit-scrollbar {
  width: 4px;
  height: 4px;
  background: rgba(0, 102, 219, 0.1);
  border-radius: 999px;
}

.popup .__layer .__body::-webkit-scrollbar-thumb {
  background: #0066DB;
  border-radius: 999px;
}

.popup .__layer .__body .__article-module {
  display: flex;
  flex-direction: column;
  row-gap: var(--spacing-5, 2rem);
  padding: var(--spacing-6, 2.4rem);
  background: #fff;
  border-radius: var(--border-radius-sm);
}

.popup .__layer .__body .__article-module .__headline {
  display: flex;
  align-items: flex-start;
  column-gap: var(--spacing-2, 0.8rem);
}

.popup .__layer .__body .__article-module .__headline .__numbering {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.8rem;
  height: 2.8rem;
  color: #fff;
  text-align: center;
  line-height: 1.6;
  font-weight: 600;
  border: 0.25rem solid rgba(255, 255, 255, 0.6);
  border-radius: 999px;
  background: #0066DB;
  box-sizing: border-box;
}

.popup .__layer .__body .__article-module .__content {
  display: flex;
  flex-direction: column;
  row-gap: var(--spacing-3, 1.2rem);
}

.popup .__layer .__body .__article-module .__content .__text-module strong {
  font-weight: 600;
}

.popup {
  /* Size Large */
}

.popup.--large .__layer {
  max-width: 1040px;
  gap: var(--spacing-8, 3.2rem);
  padding-top: var(--spacing-8, 3.2rem);
  padding-bottom: var(--spacing-8, 3.2rem);
  padding-left: var(--spacing-10, 4rem);
  padding-right: 1.2rem;
}

.popup.--large .__layer .__close {
  top: 2rem;
  right: 2rem;
}

.popup.--large .__layer .__body {
  padding-right: 2.4rem;
  max-height: 68rem;
}

.popup {
  /* Color Blue */
}

.popup.--blue .__layer {
  background-color: #E5F0FB;
}

.popup.--blue .__layer .__close {
  background-color: #fff;
}

@media (max-width: 1023px) {
  .popup .__layer {
    padding-right: 1.6rem;
  }

  .popup .__layer .__body {
    padding-right: 1.6rem;
  }

  .popup.--large .__layer {
    padding-right: 1.2rem;
  }

  .popup.--large .__layer .__body {
    padding-right: 2rem;
  }
}

@media (max-width: 767px) {
  .popup .__layer {
    max-width: 100%;
    padding-right: 1.4rem;
  }

  .popup .__layer .__close {
    width: 2.2rem;
    height: 2.2rem;
    top: 1.2rem;
    right: 1.2rem;
    border-radius: 0.4rem;
  }

  .popup .__layer .__close svg {
    width: 1.2rem;
    height: 1.2rem;
  }

  .popup .__layer .__body {
    padding-right: 1.4rem;
  }

  .popup.--large .__layer {
    padding-right: 1.4rem;
  }

  .popup.--large .__layer .__close {
    top: 1.4rem;
    right: 1.4rem;
  }

  .popup.--large .__layer .__close svg {
    width: 1.2rem;
    height: 1.2rem;
  }

  .popup.--large .__layer .__body {
    padding-right: 1rem;
  }
}

.popup.popup-profile .__layer {
  width: auto;
  max-width: 100%;
  gap: var(--spacing-4, 1.6rem);
  background: linear-gradient(0deg, rgba(255, 255, 255, 0.3) 51.8%, rgba(0, 102, 219, 0.3) 122.25%), #fff;
  gap: clamp(1.2rem, 0.8333333333vw, 1.6rem);
  padding-left: clamp(3.2rem, 2.0833333333vw, 4.2rem);
  padding-right: clamp(1rem, 0.625vw, 1.2rem);
  padding-top: clamp(2.8rem, 1.6666666667vw, 3.2rem);
  padding-bottom: var(--spacing-8, 3.2rem);
}

@media (max-width: 767px) {
  .popup.popup-profile .__layer {
    width: 35.7rem;
    padding: 2.4rem 1rem 2.4rem 2.8rem;
  }
}

.popup.popup-profile .__layer .__header {
  gap: 0;
}

.popup.popup-profile .__layer .__body {
  display: block;
  padding: 0;
  overflow: auto;
  max-height: 100%;
  width: clamp(39rem, 26.0416666667vw, 50rem);
  padding-right: clamp(2.2rem, 1.4583333333vw, 3rem);
  box-sizing: border-box;
}

@media (max-width: 767px) {
  .popup.popup-profile .__layer .__body {
    width: 100%;
    padding-right: 1.4rem;
  }
}

.popup.popup-profile .__layer .__body::-webkit-scrollbar {
  width: 4px;
  height: 4px;
  background: rgba(0, 102, 219, 0.1);
  border-radius: 999px;
}

.popup.popup-profile .__layer .__body::-webkit-scrollbar-thumb {
  background: #0066DB;
  border-radius: 999px;
}

.popup.popup-profile .__layer .profile-image {
  flex-shrink: 0;
  width: 100%;
  position: relative;
  border-radius: var(--border-radius-sm);
  overflow: hidden;
  aspect-ratio: 1/1;
  background: url("/assets/img/common/profile-placeholder.webp") center/cover no-repeat;
}

.popup.popup-profile .__layer .profile-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.popup.popup-profile .__layer .profile-content {
  display: flex;
  flex-direction: column;
  gap: clamp(2.4em, 1.4583333333vw, 3.2em);
  margin-top: clamp(1.8em, 1.25vw, 2.4em);
}

.popup.popup-profile .__layer .profile-info__list {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  justify-content: space-between;
}

.popup.popup-profile .__layer .profile-info__list .divider {
  width: 100%;
}

.popup.popup-profile .__layer .profile-info__divider {
  width: 1px;
  background: #e0e0e0;
  margin: 0 clamp(2rem, 1.67vw, 3.6rem);
}

.popup.popup-profile .__layer .profile-info__item {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-2, 0.8rem);
}

.popup.popup-profile .__layer .profile-info__item .__value {
  font-size: 2.2rem;
}

@media (max-width: 1023px) {
  .popup.popup-profile .__layer .profile-info__item .__value {
    font-size: var(--fs-title4);
    font-weight: 530;
    line-height: 1.5;
    letter-spacing: -0.02em;
  }
}

.popup.popup-profile .__layer .profile-info__label {
  display: flex;
  align-items: center;
  gap: var(--spacing-2, 0.8rem);
}

.popup.popup-profile .__layer .profile-info__label .__icon {
  width: 2rem;
  height: 2rem;
  color: #0066DB;
}

.popup.popup-profile .__layer .profile-history {
  flex: 1;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.popup.popup-profile .__layer .profile-history__list {
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-1, 0.4rem);
}

.popup.popup-profile .__layer .profile-history__list::-webkit-scrollbar {
  width: 4px;
  height: 4px;
  background: rgba(0, 102, 219, 0.1);
  border-radius: 999px;
}

.popup.popup-profile .__layer .profile-history__list::-webkit-scrollbar-thumb {
  background: #0066DB;
  border-radius: 999px;
}

.popup.popup-profile .__layer .profile-history__item {
  position: relative;
  display: flex;
  align-items: flex-start;
  font-size: var(--fs-body1);
  line-height: 1.6;
  letter-spacing: -0.02em;
  padding-left: 0.7em;
}

.popup.popup-profile .__layer .profile-history__item strong {
  margin-right: var(--spacing-5, 2rem);
}

.popup.popup-profile .__layer .profile-history__item::before {
  content: "";
  position: absolute;
  top: 0.65em;
  left: 0;
  display: inline-block;
  width: 0.6rem;
  height: 0.6rem;
  margin-right: var(--spacing-2, 0.8rem);
  background: #0066DB;
  border-radius: 999px;
}

@media (max-width: 767px) {
  .popup.popup-profile .__layer .profile-info__list {
    grid-template-columns: 43% auto 43%;
  }
}

.accordion__list {
  margin: 0;
  padding: 0;
}

.accordion__item {
  border-radius: var(--border-radius-sm);
  border: 1px solid #e0e0e0;
  overflow: hidden;
}

.accordion__item+.accordion__item {
  margin-top: var(--spacing-3, 1.2rem);
}

.accordion__item.is-open .accordion__chevron img,
.accordion__item.is-open .accordion__chevron svg {
  transform: rotate(180deg);
}

.accordion__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding-top: var(--spacing-6, 2.4rem);
  padding-bottom: var(--spacing-6, 2.4rem);
  padding-left: var(--spacing-7, 2.8rem);
  padding-right: var(--spacing-7, 2.8rem);
}

.accordion__titlebox {
  display: flex;
  align-items: center;
  gap: var(--spacing-4, 1.6rem);
}

.accordion__icon img {
  display: block;
  width: 2.4rem;
  height: 2.4rem;
}

.accordion__toggle {
  inline-size: 3.2rem;
  block-size: 3.2rem;
  display: grid;
  place-items: center;
}

.accordion__chevron img,
.accordion__chevron svg {
  transition: transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

.accordion__inner {
  padding-bottom: var(--spacing-6, 2.4rem);
  padding-left: var(--spacing-8, 3.2rem);
  padding-right: var(--spacing-8, 3.2rem);
}

.accordion__content {
  border-radius: var(--border-radius-sm);
  background-color: #f6f6f6;
  padding-top: var(--spacing-6, 2.4rem);
  padding-bottom: var(--spacing-6, 2.4rem);
  padding-left: var(--spacing-8, 3.2rem);
  padding-right: var(--spacing-8, 3.2rem);
}

.accordion--white .accordion__item {
  background-color: #fff;
  border: none;
}

.accordion--white .accordion__inner {
  border-top: 1px solid #eee;
  padding-top: var(--spacing-6, 2.4rem);
  padding-bottom: var(--spacing-6, 2.4rem);
  padding-left: var(--spacing-8, 3.2rem);
  padding-right: var(--spacing-8, 3.2rem);
}

.accordion--white .accordion__content {
  padding: 0;
  background-color: #fff;
}

.sticky-nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 8rem;
  z-index: 99;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s cubic-bezier(0.42, 0, 0.58, 1);
  border-bottom: 1px solid #e0e0e0;
}

.sticky-nav .__inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  height: 100%;
  box-sizing: border-box;
}

.sticky-nav .__list {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 4rem;
  height: 100%;
}

.sticky-nav .__item {
  height: 100%;
}

.sticky-nav .__item a {
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
  border-bottom: 2px solid transparent;
  z-index: 1;
}

.sticky-nav .__item a span {
  white-space: pre;
  text-align: center;
  color: #767676;
  transition: color 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

.sticky-nav .__item.--active a {
  border-color: #0066DB;
}

.sticky-nav .__item.--active a span {
  font-weight: 600;
  color: #0066DB;
}

.sticky-nav.--visible {
  opacity: 1;
  visibility: visible;
}

.sticky-nav.--dark {
  border-color: transparent;
}

.sticky-nav.--dark .__inner::after {
  opacity: 0;
}

.sticky-nav.--dark .__item a span {
  color: #fff;
}

.sticky-nav.--dark .__item.--active a {
  border-color: #fff;
}

.sticky-nav.--dark .__item.--active a span {
  color: #fff;
}

.sticky-nav.--x-scroll .__inner {
  padding: 0 var(--gutter, clamp(4.8rem, 4.1667vw, 8rem));
}

@media (max-width: 1023px) {
  .sticky-nav {
    height: 6rem;
  }

  .sticky-nav.--x-scroll {
    width: 100%;
    box-sizing: border-box;
  }

  .sticky-nav.--x-scroll .__inner {
    overflow-x: auto;
    overflow-y: hidden;
    padding: 0 var(--gutter, clamp(4.8rem, 4.1667vw, 8rem));
    box-sizing: border-box;
  }

  .sticky-nav.--x-scroll .__inner::-webkit-scrollbar {
    display: none;
  }

  .sticky-nav.--x-scroll .__list {
    width: 100%;
    gap: 2rem;
    justify-content: flex-start;
  }

  .sticky-nav.--x-scroll .__item:last-child {
    padding-right: var(--gutter, clamp(4.8rem, 4.1667vw, 8rem));
  }
}

.chart-card {
  position: relative;
  width: 100%;
}

.chart-card__head {
  text-align: center;
  padding: 1.2rem 1rem;
  border-radius: var(--border-radius-xs, 6px) var(--border-radius-xs, 6px) 0 0;
  background: rgba(229, 240, 251, 0.5);
}

.chart-card__body {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 0 0 var(--border-radius-xs, 6px) var(--border-radius-xs, 6px);
  border-top: 0;
  box-sizing: border-box;
  overflow: hidden;
}

.chart-card .__chart {
  position: relative;
}

.chart-card .__chart img {
  width: 100%;
}

.chart-card .__unit {
  color: #767676;
  text-align: right;
  font-size: 1.4rem;
  font-weight: 330;
  line-height: 1.6;
  letter-spacing: -0.02em;
  color: #767676;
  margin-top: 0.6rem;
}

.affiliate-banner {
  position: absolute;
  z-index: 4;
  top: var(--header-height, 8rem);
  left: 0;
  right: 0;
  overflow: hidden;
  background: rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(1rem);
  -webkit-backdrop-filter: blur(1rem);
}

.affiliate-banner .affiliate-inner {
  display: flex;
}

.affiliate-banner .__slider {
  position: relative;
  flex: 1;
  min-width: 0;
}

.affiliate-banner .swiper {
  max-width: 100%;
  overflow: visible;
}

@media (max-width: 767px) {
  .affiliate-banner .swiper .swiper-slide {
    width: 240px;
  }
}

.affiliate-banner .swiper-slide:first-child .__item {
  border-left: 1px solid rgba(255, 255, 255, 0.1);
}

.affiliate-banner .__item {
  display: flex;
  gap: 0.6rem;
  height: 7.2rem;
  color: #fff;
  border-right: 1px solid rgba(255, 255, 255, 0.1);
  font-size: 1.2rem;
  font-weight: 430;
  letter-spacing: -0.02em;
  line-height: 1.4;
  transition: all 0.4s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  align-items: center;
  padding-right: 2.2rem;
}

@media (max-width: 1023px) {
  [lang=en] .affiliate-banner .__item {
    height: 7.2rem;
  }

  [lang=en] .affiliate-banner .__item.--lines .__desc {
    gap: 0;
    font-size: 1rem;
  }
}

.affiliate-banner .__item .__img {
  position: relative;
  overflow: hidden;
  width: 0;
  transition: width 0.4s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  height: 100%;
}

.affiliate-banner .__item .__img.--left img {
  object-position: 20% center;
}

.affiliate-banner .__item .__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.affiliate-banner .__item .__img .__desc i {
  background: #fff;
}

.affiliate-banner .__item .__desc {
  padding: 1.2rem 0 1rem 1.6rem;
  align-self: center;
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 0.6rem;
}

@media (max-width: 1023px) {
  [lang=en] .affiliate-banner .__item .__desc {
    gap: 0.4rem;
    padding: 1.1rem 0 0.8rem 1.4rem;
  }
}

.affiliate-banner .__item .__desc .__label {
  height: 1.2rem;
}

@media (max-width: 1023px) {
  [lang=en] .affiliate-banner .__item .__desc .__label {
    height: auto;
  }
}

.affiliate-banner .__item .__desc .__logo {
  display: flex;
  justify-content: space-between;
  width: 100%;
  align-items: center;
}

.affiliate-banner .__item .__desc .__logo img {
  display: block;
  height: 3.2rem;
  width: auto;
  transition: all 0.4s cubic-bezier(0.785, 0.135, 0.15, 0.86);
}

.affiliate-banner .__item i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.8rem;
  height: auto;
  aspect-ratio: 1/1;
  box-sizing: border-box;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 0.6rem;
}

.affiliate-banner .__item i svg {
  width: 1.6rem;
  height: auto;
  aspect-ratio: 1/1;
  color: #fff;
  transition: color 0.3s;
}

@media (max-width: 767px) {
  .affiliate-banner .__item {
    height: 6.4rem;
    padding-right: 1.6rem;
  }

  .affiliate-banner .__item .__desc {
    padding: 1.2rem 1rem 1rem 1.6rem;
  }

  .affiliate-banner .__item .__desc .__logo img {
    height: 2.6rem;
  }

  .affiliate-banner .__item i {
    width: 2.2rem;
    border-radius: 0.4rem;
  }

  .affiliate-banner .__item i svg {
    width: 1.2rem;
  }
}

@media (hover: hover) and (pointer: fine) and (min-width: 1024px) {
  .affiliate-banner .__item:hover {
    background: rgba(255, 255, 255, 0.8);
    color: #000;
    border-left: 0;
  }

  .affiliate-banner .__item:hover .__img {
    width: 25%;
  }

  .affiliate-banner .__item:hover .__desc .__logo img {
    filter: brightness(0);
  }

  .affiliate-banner .__item:hover i {
    background: #0066DB;
  }

  .affiliate-banner .__item:hover i svg {
    color: #fff;
  }
}

.affiliate-banner .__nav {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 8rem;
  width: var(--gutter);
  position: relative;
  z-index: 2;
}

@media (max-width: 767px) {
  .affiliate-banner .__nav {
    min-width: auto;
    width: auto;
    padding: 0 1.4rem 0 var(--gutter);
  }

  .affiliate-banner .__nav:last-child {
    padding: 0 var(--gutter) 0 1.4rem;
  }
}

.affiliate-banner .__prev,
.affiliate-banner .__next {
  position: relative;
  border-radius: var(--border-radius-xs, 6px);
  background: #E5F0FB;
  width: 3.6rem;
  aspect-ratio: 1/1;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #0066DB;
}

.affiliate-banner .__prev svg,
.affiliate-banner .__next svg {
  width: 2rem;
  aspect-ratio: 1/1;
}

@media (max-width: 767px) {

  .affiliate-banner .__prev,
  .affiliate-banner .__next {
    width: 2.8rem;
  }

  .affiliate-banner .__prev svg,
  .affiliate-banner .__next svg {
    width: 1.6rem;
  }
}

@media (hover: hover) and (pointer: fine) {

  .affiliate-banner .__prev,
  .affiliate-banner .__next {
    transition: background-color 0.2s, color 0.2s;
  }

  .affiliate-banner .__prev:hover,
  .affiliate-banner .__next:hover {
    background-color: #0066DB;
    color: #fff;
  }
}

.affiliate-banner .__next svg {
  transform: rotate(180deg);
}

#homeKV {
  height: 100vh;
  height: 100svh;
  overflow: hidden;
  isolation: isolate;
  position: relative;
}

#homeKV .__motion {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#homeKV .slider .swiper-slide {
  overflow: hidden;
}

#homeKV .slide-item .__bg {
  position: relative;
}

#homeKV .slide-item .__bg:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2));
}

#homeKV .slide-item .__bg video,
#homeKV .slide-item .__bg img {
  display: block;
  width: 100%;
  height: 100vh;
  height: 100svh;
  object-fit: cover;
}

#homeKV .slide-item .__title {
  display: none;
}

#homeKV .slider-desc {
  z-index: 4;
  color: #fff;
  position: absolute;
  left: 0;
  bottom: var(--spacing-18, 7.2rem);
}

#homeKV .slider-desc .__title {
  margin-bottom: 0.4761904762em;
}

#homeKV .slider-desc .__title .__line,
#homeKV .slider-desc .__title .__word {
  clip-path: inset(0);
}

#homeKV .slider-desc .__indices {
  display: flex;
  gap: var(--progress-size, 0.8rem);
}

#homeKV .slider-desc .__indices .swiper-pagination-bullet {
  width: var(--progress-size, 0.8rem);
  height: var(--progress-size, 0.8rem);
  border-radius: var(--progress-size, 0.8rem);
  margin: 0;
  padding: 0;
  background: rgba(255, 255, 255, 0.2);
  opacity: 1;
  overflow: hidden;
  position: relative;
  transition: width 0.25s cubic-bezier(0.42, 0, 0.58, 1);
}

#homeKV .slider-desc .__indices .swiper-pagination-bullet-active {
  opacity: 1;
  width: calc(var(--progress-size, 0.8rem) * 12.25);
}

#homeKV .slider-desc .__indices .swiper-pagination-bullet-active:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  background: linear-gradient(to right, #0059DF, #fff);
  width: 0;
  border-radius: var(--progress-size, 0.8rem);
  animation: widthIncrease var(--duration, 100000s) linear forwards;
  animation-delay: var(--delay, 0ms);
}

@keyframes widthIncrease {
  from {
    width: 0;
  }

  to {
    width: 100%;
  }
}

@media (max-width: 767px) {
  #homeKV .slider-desc .__indices {
    height: 4rem;
    align-items: center;
  }
}

#homeKV .scrolldown {
  position: absolute;
  left: 50%;
  transform: translate3d(-50%, 0, 0);
  bottom: var(--spacing-4, 1.6rem);
  z-index: 5;
  font-size: var(--fs-label2);
  line-height: 1.32;
  letter-spacing: -0.02em;
  font-weight: 500;
  display: flex;
  flex-direction: column;
  color: #fff;
  text-align: center;
  align-items: center;
  justify-content: center;
  line-height: 1.6;
  letter-spacing: -0.02em;
  gap: var(--spacing-2, 0.8rem);
}

@media (max-width: 767px) {
  #homeKV .scrolldown .__label {
    display: none;
  }
}

#homeKV .scrolldown .__arrow {
  width: 2.5rem;
  aspect-ratio: 1/1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

#homeKV .scrolldown .__arrow svg {
  display: block;
  width: 2.1rem;
  height: auto;
  animation: scrolldown-arrow 1.5s infinite linear;
}

#homeKV .scrolldown .__arrow svg:nth-child(2) {
  animation-delay: 0.2s;
}

@keyframes scrolldown-arrow {
  0% {
    opacity: 0;
    transform: translateY(-50%);
  }

  25%,
  75% {
    opacity: 1;
  }

  50% {
    opacity: 1;
  }

  100% {
    transform: translateY(50%);
    opacity: 0;
  }
}

.home-kv-popup {
  position: absolute;
  z-index: 4;
  right: 0;
  bottom: var(--spacing-18, 7.2rem);
}

.home-kv-popup .main-popup-inner {
  position: relative;
}

.home-kv-popup .__toggle {
  margin-left: auto;
  width: 7.2rem;
  aspect-ratio: 1/1;
  display: block;
  transition: opacity 1s, transform 1s cubic-bezier(0.23, 1, 0.32, 1), visibility 1s;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-4rem);
}

.home-kv-popup .__toggle img {
  display: block;
  width: 100%;
}

.home-kv-popup .__content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-3, 1.2rem);
  position: absolute;
  bottom: 0;
  right: 0;
  pointer-events: none;
}

.home-kv-popup .__content>* {
  opacity: 0;
  visibility: hidden;
  transform: translateY(8rem);
  transition: opacity 1s, transform 1s cubic-bezier(0.23, 1, 0.32, 1), visibility 1s;
}

.home-kv-popup .__content .__close {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.8rem;
  aspect-ratio: 1/1;
  border-radius: var(--border-radius-xs, 6px);
  background: rgba(255, 255, 255, 0.8);
  color: #000;
  transition: background-color 0.3s, color 0.3s;
}

.home-kv-popup .__content .__close svg {
  display: block;
  width: 1.6rem;
  height: auto;
  aspect-ratio: 1/1;
}

.home-kv-popup .__content .__close:hover {
  background-color: #0066DB;
  color: #fff;
}

.home-kv-popup .__banner {
  position: relative;
  border-radius: var(--border-radius-xs, 6px);
  overflow: hidden;
  isolation: isolate;
  width: 35rem;
}

.home-kv-popup .__banner img {
  position: relative;
  display: block;
  width: 100%;
  height: auto;
  max-height: 48rem;
  object-fit: cover;
}

.home-kv-popup .__banner.--sm {
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(40px);
  border-radius: var(--border-radius-xs, 6px);
  overflow: hidden;
  isolation: isolate;
}

.home-kv-popup .__banner.--sm .__item {
  display: grid;
  grid-template-columns: 72px 1fr;
  padding: var(--spacing-3, 1.2rem);
  gap: var(--spacing-3, 1.2rem);
  box-sizing: border-box;
}

.home-kv-popup .__banner.--sm .__item .__img img {
  display: block;
  width: 100%;
  min-height: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
  border-radius: var(--border-radius-xs, 6px);
}

.home-kv-popup .__banner.--sm .__item .__txt {
  display: flex;
  flex-direction: column;
  flex: 1;
}

.home-kv-popup .__banner.--sm .__item .__txt p {
  font-size: var(--fs-body3);
  line-height: 1.6;
  letter-spacing: -0.02em;
  display: flex;
  flex-direction: column;
  font-weight: 430;
  margin-bottom: 0.4em;
}

.home-kv-popup .__banner.--sm .__item .__txt p strong {
  font-weight: 530;
  font-size: var(--fs-label2);
  line-height: 1.32;
  letter-spacing: -0.02em;
}

.home-kv-popup .__banner.--sm .__item .__txt .__cta {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.8rem;
  aspect-ratio: 1/1;
  border-radius: var(--border-radius-xs, 6px);
  background: #fff;
  color: #000;
  margin-top: auto;
  margin-left: auto;
  transition: background-color 0.3s, color 0.3s;
}

.home-kv-popup .__banner.--sm .__item .__txt .__cta:hover {
  background: #0066DB;
  color: #fff;
}

.home-kv-popup .__banner.--sm .__item .__txt .__cta svg {
  display: block;
  width: 1.6rem;
  height: auto;
  aspect-ratio: 1/1;
}

.home-kv-popup .__banner.--lg .__cta {
  font-size: var(--fs-label2);
  line-height: 1.32;
  letter-spacing: -0.02em;
  position: absolute;
  left: 1.1111111111em;
  bottom: 1.1111111111em;
  right: 1.1111111111em;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.5555555556em 0.5555555556em 0.5555555556em 0.8888888889em;
  gap: 0.4444444444em;
  height: 2.6666666667em;
  color: #fff;
  font-weight: 530;
  background: rgba(0, 0, 0, 0.3);
  border-radius: var(--border-radius-xs, 6px);
}

.home-kv-popup .__banner.--lg .__cta i {
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.8rem;
  aspect-ratio: 1/1;
  border-radius: var(--border-radius-xs, 6px);
  transition: background-color 0.3s, color 0.3s;
}

.home-kv-popup .__banner.--lg .__cta i svg {
  color: #000;
  width: 1.6rem;
  display: block;
  height: auto;
  aspect-ratio: 1/1;
}

.home-kv-popup .__banner.--lg .__cta:hover i {
  background: #0066DB;
  color: #fff;
}

.home-kv-popup .__btns {
  position: absolute;
  top: 0;
  right: 100%;
  margin-right: var(--spacing-3, 1.2rem);
}

.home-kv-popup.--inited .__toggle {
  opacity: 1;
  visibility: visible;
  transform: translateY(0rem);
}

.home-kv-popup.--active .__content {
  pointer-events: auto;
}

.home-kv-popup.--active .__content>* {
  opacity: 1;
  visibility: visible;
  transform: translateY(0rem);
}

.home-kv-popup.--active .__content>*:nth-child(1) {
  transition-delay: 100ms;
}

.home-kv-popup.--active .__content>*:nth-child(2) {
  transition-delay: 150ms;
}

.home-kv-popup.--active .__content>*:nth-child(3) {
  transition-delay: 200ms;
}

.home-kv-popup.--active .__toggle {
  opacity: 0;
  visibility: hidden;
  transform: translateY(-4rem);
}

@media (max-width: 1023px) {
  .home-kv-popup .__toggle {
    width: 5.6rem;
  }

  .home-kv-popup .__content {
    flex-direction: column;
  }

  .home-kv-popup .__content .__banner {
    width: 25.8rem;
  }
}

@media (max-width: 767px) {
  .home-kv-popup .__toggle {
    width: 4rem;
  }
}

.home-kv-popup .swiper .__pagination {
  position: absolute;
  left: 50%;
  transform: translate3d(-50%, 0, 0);
  bottom: var(--spacing-3, 1.2rem);
  width: auto;
  display: flex;
  gap: 1rem;
  z-index: 1;
  --swiper-pagination-bullet-size: 0.8rem;
  --swiper-pagination-bullet-horizontal-gap: 0;
  --swiper-theme-color: #0066DB;
}

.home-main-popup {
  position: fixed;
  top: calc(var(--header-height) + 13.4rem);
  left: 8rem;
  z-index: 100;
  box-sizing: border-box;
}

.home-main-popup .__layer {
  width: fit-content;
  background-color: #fff;
  border-radius: var(--border-radius-sm);
  overflow: hidden;
}

.home-main-popup .__body {
  position: relative;
  display: block;
  width: 44rem;
  overflow: hidden;
}

.home-main-popup .__body .swiper {
  width: 100%;
  height: 100%;
}

.home-main-popup .__body .swiper .swiper-navigator {
  position: absolute;
  top: 2.4rem;
  right: 2rem;
  display: flex;
  align-items: center;
  gap: 1rem;
}

.home-main-popup .__body .swiper .swiper-navigator .swiper-button-prev,
.home-main-popup .__body .swiper .swiper-navigator .swiper-button-next {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.2rem;
  height: 3.2rem;
  top: unset;
  left: unset;
  right: unset;
  bottom: unset;
  margin: 0;
  background: rgba(229, 240, 251, 0.2);
  border-radius: var(--border-radius-xs);
  color: #000;
  backdrop-filter: blur(30px);
  transition: background 0.3s;
  cursor: pointer;
}

.home-main-popup .__body .swiper .swiper-navigator .swiper-button-prev::after,
.home-main-popup .__body .swiper .swiper-navigator .swiper-button-next::after {
  content: none;
}

.home-main-popup .__body .swiper .swiper-navigator .swiper-button-prev svg,
.home-main-popup .__body .swiper .swiper-navigator .swiper-button-next svg {
  color: #fff;
  width: 2rem;
  height: 2rem;
}

.home-main-popup .__body .swiper .swiper-navigator .swiper-button-disabled {
  opacity: 1;
  cursor: not-allowed;
}

.home-main-popup .__body .swiper .swiper-wrapper {
  display: flex;
  align-items: stretch;
}

.home-main-popup .__body .swiper .swiper-slide {
  position: relative;
  height: auto;
  max-height: 44rem;
  display: flex;
  overflow-y: auto;
}

.home-main-popup .__body .__image {
  position: relative;
  width: 100%;
  height: 100%;
}

.home-main-popup .__body .__image::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(50px);
  -webkit-backdrop-filter: blur(5rem);
  z-index: 1;
}

.home-main-popup .__body .__img {
  position: relative;
  width: 100%;
  z-index: 2;
  width: 100%;
  min-height: 100%;
  object-fit: contain;
}

.home-main-popup .__body .__og-img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  object-fit: cover;
}

.home-main-popup .__foot {
  display: flex;
  justify-content: space-between;
  padding-left: var(--spacing-4, 1.6rem);
  padding-right: var(--spacing-4, 1.6rem);
  padding-top: var(--spacing-2, 0.8rem);
  padding-bottom: var(--spacing-2, 0.8rem);
}

.home-main-popup .__foot .__today-close {
  display: flex;
  align-items: center;
}

.home-main-popup .__foot .__today-close .checkbox__icon {
  width: 1.6rem;
  height: 1.6rem;
}

.home-main-popup .__foot .__today-close .checkbox__mark {
  stroke: #000;
}

.home-main-popup .__foot .__today-close .checkbox__input:checked+.checkbox__label .checkbox__mark {
  stroke: #fff;
}

.home-main-popup .__foot .__close {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  padding: 0.6rem;
  box-sizing: content-box;
  color: #0066DB;
}

@media (max-width: 767px) {
  .home-main-popup {
    padding: 0 var(--gutter, clamp(4.8rem, 4.1667vw, 8rem));
    width: 100%;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .home-main-popup .__layer {
    margin: 0 auto;
  }

  .home-main-popup .__body {
    width: min(35rem, 100vw - 2 * var(--gutter, clamp(4.8rem, 4.1667vw, 8rem)));
  }

  .home-main-popup .__body .swiper {
    cursor: pointer;
    touch-action: pan-y;
  }

  .home-main-popup .__body .swiper .swiper-navigator {
    gap: 0.8rem;
    top: 1.8rem;
    right: 1.6rem;
  }

  .home-main-popup .__body .swiper .swiper-navigator .swiper-button-prev,
  .home-main-popup .__body .swiper .swiper-navigator .swiper-button-next {
    width: 2.6rem;
    height: 2.6rem;
  }

  .home-main-popup .__body .swiper .swiper-navigator .swiper-button-prev svg,
  .home-main-popup .__body .swiper .swiper-navigator .swiper-button-next svg {
    width: 1.8rem;
    height: 1.8rem;
  }

  .home-main-popup .__body .swiper .swiper-slide {
    max-height: min(35rem, 100vw - 2 * var(--gutter, clamp(4.8rem, 4.1667vw, 8rem)));
  }
}

#homeWhoWeAre {
  height: 200vh;
  height: 200lvh;
  position: relative;
  overflow: hidden;
}

#homeWhoWeAre .__pin {
  height: 100vh;
  height: 100lvh;
  position: relative;
  width: 100%;
}

#homeWhoWeAre .__pin .__pin-content {
  background: #f6f6f6;
}

@media (max-width: 767px) {
  #homeWhoWeAre .__pin .__pin-content {
    transform: none !important;
    opacity: 1 !important;
  }
}

#homeWhoWeAre .__pin .__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  top: 0;
  height: 100vh;
}

#homeWhoWeAre .__pin .__bg .__top,
#homeWhoWeAre .__pin .__bg .__bottom {
  position: absolute;
  left: 0;
  right: 0;
  mix-blend-mode: darken;
}

#homeWhoWeAre .__pin .__bg .__top video,
#homeWhoWeAre .__pin .__bg .__top img,
#homeWhoWeAre .__pin .__bg .__bottom video,
#homeWhoWeAre .__pin .__bg .__bottom img {
  display: block;
  width: 100%;
  object-fit: cover;
}

#homeWhoWeAre .__pin .__bg .__top {
  top: 0;
}

#homeWhoWeAre .__pin .__bg .__bottom {
  bottom: 0;
}

#homeWhoWeAre .__pin .__bg .__left,
#homeWhoWeAre .__pin .__bg .__right {
  position: absolute;
  top: 50%;
  transform: translate3d(0, -50%, 0);
  left: -6vw;
}

#homeWhoWeAre .__pin .__bg .__right {
  right: -6vw;
  left: auto;
  transform: rotateY(180deg) translateY(-50%);
  transform-origin: center;
  perspective: inherit;
}

#homeWhoWeAre .__pin .__bg .__right .__img {
  backface-visibility: hidden;
  will-change: transform, opacity;
}

#homeWhoWeAre .__pin .__bg .__gallery {
  position: relative;
  perspective: 50vw;
}

#homeWhoWeAre .__pin .__bg .__gallery .__imgs {
  display: flex;
  align-items: center;
  transform: rotateY(18deg);
  perspective-origin: center center;
  transform-style: preserve-3d;
}

#homeWhoWeAre .__pin .__bg .__gallery .__img {
  display: block;
  position: absolute;
  left: 0;
  background: #fff;
  will-change: transform, opacity;
}

#homeWhoWeAre .__pin .__bg .__gallery .__img span {
  clip-path: inset(0);
  display: block;
}

#homeWhoWeAre .__pin .__bg .__gallery .__img span.__reflected {
  position: absolute;
  transform: scaleY(-1);
  opacity: 0.1 !important;
  top: 100%;
  left: 0;
  margin: 0 auto;
  filter: blur(6px) contrast(0.9);
  mask: linear-gradient(to top, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%);
  -webkit-mask: linear-gradient(to top, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%);
}

#homeWhoWeAre .__pin .__bg .__gallery .__img span img {
  display: block;
  width: 36vw;
  height: auto;
  object-fit: cover;
  will-change: transform, opacity;
  aspect-ratio: 16/9;
  transform: scaleX(1.25);
}

#homeWhoWeAre .__pin .__bg .__gallery .__img:nth-child(2) span img {
  transform: scaleX(1);
}

@media (max-width: 767px) {

  #homeWhoWeAre .__pin .__bg .__left,
  #homeWhoWeAre .__pin .__bg .__right {
    top: 25vh;
  }

  #homeWhoWeAre .__pin .__bg .__left {
    transform: none;
    left: -4vw;
  }

  #homeWhoWeAre .__pin .__bg .__right {
    transform: scaleX(-1);
    right: -4vw;
  }

  #homeWhoWeAre .__pin .__bg .__gallery {
    perspective: 80vw;
  }

  #homeWhoWeAre .__pin .__bg .__gallery .__img span img {
    width: 50vw;
    aspect-ratio: 1/1;
    object-position: 80% 50%;
  }
}

#homeWhoWeAre .__pin .__content {
  height: 100vh;
  height: 100lvh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  word-break: keep-all;
  box-sizing: border-box;
}

#homeWhoWeAre .__pin .__content p {
  max-width: 22em;
  margin-left: auto;
  margin-right: auto;
}

[lang=en] #homeWhoWeAre .__pin .__content p {
  max-width: 34em;
}

@media (max-width: 767px) {
  #homeWhoWeAre .__pin .__content {
    justify-content: flex-end;
    padding-bottom: var(--spacing-56, 24rem);
  }

  #homeWhoWeAre .__pin .__content span {
    display: block;
  }
}

@media (max-width: 767px) {
  [lang=en] #homeGroupBusiness .__title-area p {
    font-size: 3.2rem;
  }
}

#homeGroupBusiness .__group {
  position: relative;
  display: flex;
  flex-direction: column;
  cursor: pointer;
}

#homeGroupBusiness .__group .__progress-bar {
  height: var(--progress-size, 0.8rem);
  border-radius: var(--progress-size, 0.8rem);
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

#homeGroupBusiness .__group .__progress-bar:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, rgb(255, 255, 255) 0%, rgba(255, 255, 255, 0.1) 100%);
  opacity: 0.2;
}

#homeGroupBusiness .__group .__progress-bar {
  margin-bottom: var(--spacing-8, 3.2rem);
}

#homeGroupBusiness .__group .__progress-bar .__bar {
  position: relative;
  height: 100%;
  display: block;
  background: linear-gradient(90deg, #007cc5 25%, #ffffff 100%);
  border-radius: var(--progress-size, 0.8rem);
  width: 0;
}

#homeGroupBusiness .__group .__heading {
  max-width: 48rem;
  word-break: keep-all;
  pointer-events: none;
  margin-bottom: var(--gap);
}

#homeGroupBusiness .__group .__heading .__txt {
  color: #fff;
}

#homeGroupBusiness .__group .__heading .__title span {
  display: block;
}

#homeGroupBusiness .__group .__business {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  pointer-events: none;
  margin-top: var(--spacing-12, 4.8rem);
}

#homeGroupBusiness .__group .__business a {
  font-weight: 430;
  display: flex;
  align-items: center;
  padding: 0 0.8888888889em;
  height: 2.6666666667em;
  gap: 0.6666666667em;
  background: rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(3.5rem);
  -webkit-backdrop-filter: blur(3.5rem);
  border-radius: 3em;
  color: #fff;
  transition: background-color 0.2s, color 0.2s;
}

#homeGroupBusiness .__group .__business a i svg {
  width: 1em;
  height: auto;
  aspect-ratio: 1/1;
}

#homeGroupBusiness .__group .__business a:hover {
  background-color: #fff;
  color: #0066DB;
}

#homeGroupBusiness .__group .__indices {
  display: flex;
  gap: 0.8rem;
  margin-top: var(--spacing-4, 1.6rem);
}

#homeGroupBusiness .__group .__indices span {
  display: block;
  width: 0.8rem;
  height: 0.8rem;
  background: rgba(255, 255, 255, 0.2);
  border-radius: 0.8rem;
  transition: width 0.2s;
}

#homeGroupBusiness .__group .__indices span:after {
  content: "";
  position: relative;
  height: 100%;
  display: block;
  background: linear-gradient(90deg, #007cc5 25%, #ffffff 100%);
  border-radius: 0.8rem;
  width: 0;
}

#homeGroupBusiness .__group .__indices span.--active {
  width: 6rem;
}

#homeGroupBusiness .__group .__indices span.--active:after {
  width: var(--bg-progress, 0%);
}

#homeGroupBusiness .group-business--desktop {
  height: 100vh;
  height: 100lvh;
  overflow: hidden;
}

#homeGroupBusiness .__pin {
  position: relative;
}

#homeGroupBusiness .__pin .__bgs {
  background: #000;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#homeGroupBusiness .__pin .__bgs:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(360deg, rgba(28, 16, 16, 0) 0%, rgba(28, 16, 16, 0.4) 100%);
}

#homeGroupBusiness .__pin .__bgs .__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 0.8s;
}

#homeGroupBusiness .__pin .__bgs .__bg.--active {
  opacity: 1;
}

#homeGroupBusiness .__pin .__bgs .__bg video,
#homeGroupBusiness .__pin .__bgs .__bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#homeGroupBusiness .__pin .__groups {
  height: 100vh;
  height: 100lvh;
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--gap);
  padding-top: var(--spacing-18, 7.2rem);
  padding-bottom: var(--spacing-18, 7.2rem);
  box-sizing: border-box;
}

#homeGroupBusiness .__pin .__group .__heading .cta-btns {
  opacity: 0;
}

#homeGroupBusiness .__pin .__group .__title span {
  font-size: 0.625em;
  opacity: 0.3;
  transition: font-size 0.2s, opacity 0.2s;
}

#homeGroupBusiness .__pin .__group .__description {
  opacity: 0;
  transition: opacity 0.2s;
}

#homeGroupBusiness .__pin .__group .__business {
  margin-top: auto;
  opacity: 0;
  transition: opacity 0.2s;
}

#homeGroupBusiness .__pin .__group .__indices {
  opacity: 0;
  transition: opacity 0.2s;
}

#homeGroupBusiness .__pin .__group:hover .__title span {
  opacity: 1;
}

#homeGroupBusiness .__pin .__group.--active .__heading,
#homeGroupBusiness .__pin .__group.--active .__business {
  pointer-events: auto;
}

#homeGroupBusiness .__pin .__group.--active .__progress-bar .__bar {
  width: var(--g-progress, 0%);
}

#homeGroupBusiness .__pin .__group.--active .__title span {
  font-size: 1em;
  opacity: 1;
}

#homeGroupBusiness .__pin .__group.--active .__description {
  opacity: 1;
}

#homeGroupBusiness .__pin .__group.--active .__business {
  opacity: 1;
}

#homeGroupBusiness .__pin .__group.--active .__indices {
  opacity: 1;
}

#homeGroupBusiness .__pin .__group.--active .cta-btns {
  opacity: 1;
}

@media (max-width: 1280px) and (min-width: 768px) {
  #homeGroupBusiness {
    --fs-headline4: 33.28px;
    --fs-body1: 16.7px;
    --fs-label2: 15.03px;
  }

  #homeGroupBusiness .__pin .__groups {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  #homeGroupBusiness .__pin .__group .__title {
    margin-bottom: 2.4rem;
  }

  #homeGroupBusiness .__pin .__group .__title span {
    font-size: 0.8713942308em;
  }

  #homeGroupBusiness .__pin .__group .__description {
    margin-bottom: 2.8rem;
  }

  #homeGroupBusiness .__pin .__group.--active .__title span {
    font-size: 1em;
    opacity: 1;
  }
}

#homeGroupBusiness .group-business--mobile {
  display: none;
  position: relative;
}

#homeGroupBusiness .group-business--mobile .__pagination {
  top: var(--spacing-18, 7.2rem);
  position: absolute;
  left: 0;
  right: 0;
  bottom: initial;
  z-index: 5;
  justify-content: center;
  --duration: 6.25s;
  gap: 1.6rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  padding: 0 var(--gutter);
  box-sizing: border-box;
}

#homeGroupBusiness .group-business--mobile .__pagination .swiper-pagination-bullet {
  width: var(--progress-size, 0.8rem);
  width: auto;
  height: var(--progress-size, 0.8rem);
  border-radius: var(--progress-size, 0.8rem);
  margin: 0;
  padding: 0;
  background: rgba(255, 255, 255, 0.2);
  opacity: 0.2;
  transition: width 0.25s cubic-bezier(0.42, 0, 0.58, 1);
  position: relative;
  background: linear-gradient(90deg, #ffffff 0%, rgba(255, 255, 255, 0.1) 100%);
}

#homeGroupBusiness .group-business--mobile .__pagination .swiper-pagination-bullet-active {
  opacity: 1;
}

#homeGroupBusiness .group-business--mobile .__pagination .swiper-pagination-bullet-active:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  background: linear-gradient(to right, #0059DF, #fff);
  width: 0;
  border-radius: var(--progress-size, 0.8rem);
  animation: widthIncrease var(--duration, 100000s) linear forwards;
  animation-delay: var(--delay, 0ms);
}

@keyframes widthIncrease {
  from {
    width: 0;
  }

  to {
    width: 100%;
  }
}

#homeGroupBusiness .group-business--mobile .__group {
  padding: 0 var(--gutter);
  padding-top: var(--spacing-40, 16rem);
  overflow: hidden;
  isolation: isolate;
  height: 100vh;
  height: 100lvh;
}

#homeGroupBusiness .group-business--mobile .__group .__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  background: #000;
  pointer-events: none;
}

#homeGroupBusiness .group-business--mobile .__group .__bg video,
#homeGroupBusiness .group-business--mobile .__group .__bg img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.8;
}

#homeGroupBusiness .group-business--mobile .__group .__heading,
#homeGroupBusiness .group-business--mobile .__group .__business {
  pointer-events: auto;
}

#homeGroupBusiness .group-business--mobile .__group br {
  display: none;
}

#homeGroupBusiness .group-business--mobile .swiper-slide {
  overflow: hidden;
}

@media (max-width: 767px) {
  #homeGroupBusiness .group-business--desktop {
    display: none;
  }

  #homeGroupBusiness .group-business--mobile {
    display: block;
  }
}

#homeEsg {
  position: relative;
  overflow: hidden;
}

[lang=en] #homeEsg {
  margin-top: var(--spacing-20, 8rem);
}

#homeEsg .__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  will-change: transform, clip-path, -webkit-clip-path;
}

#homeEsg .__bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  will-change: object-position, transform;
}

#homeEsg .__desc {
  padding-top: var(--spacing-14, 5.6rem);
  padding-bottom: var(--spacing-14, 5.6rem);
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: repeat(2, auto);
  column-gap: var(--spacing-8, 3.2rem);
  row-gap: var(--spacing-20, 8rem);
}

#homeEsg .__desc .__left {
  color: #fff;
  grid-column: 1/7;
}

[lang=en] #homeEsg .__desc .__left {
  grid-column: 1/-1;
  padding-left: var(--spacing-14, 5.6rem);
}

@media (max-width: 767px) {
  [lang=en] #homeEsg .__desc .__left {
    padding-left: 0;
  }
}

[lang=en] #homeEsg .__desc .__left p {
  line-height: 1.3;
}

#homeEsg .__desc .__right {
  grid-row: 2/3;
  grid-column: 9/13;
}

#homeEsg .__desc .__right p {
  color: #fff;
}

[lang=en] #homeEsg .__desc .__right {
  grid-column: 8/13;
  padding-right: var(--spacing-14, 5.6rem);
}

@media (max-width: 767px) {
  [lang=en] #homeEsg .__desc .__right {
    padding-right: 0;
  }
}

@media (max-width: 767px) {
  #homeEsg .__desc {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-20, 8rem);
  }
}

@media (max-width: 767px) {
  #homeEsg .__bg {
    clip-path: inset(0) !important;
  }
}

[lang=en] #homeLink .section-inner {
  padding-top: var(--spacing-20, 8rem);
}

#homeLink .section-inner .grid {
  gap: var(--spacing-5, 2rem);
}

.subpage-link {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: var(--border-radius-md);
}

.subpage-link .__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.subpage-link .__img span {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.subpage-link .__img span:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0) 100%), rgba(0, 0, 0, 0.1);
}

.subpage-link .__img img {
  display: block;
  width: 100%;
  object-fit: cover;
  height: 100%;
  transition: transform 1.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transform;
}

.subpage-link .__desc {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: clamp(24px, 3.75vw, 80px) clamp(20px, 2.92vw, 60px);
  gap: var(--gap);
  row-gap: var(--spacing-12, 4.8rem);
  box-sizing: border-box;
  flex-wrap: wrap;
}

.subpage-link .__desc .__txt {
  color: #fff;
  margin-right: auto;
}

.subpage-link .__desc .cta-btns {
  margin-left: auto;
}

@media (max-width: 1600px) {
  .subpage-link .__desc {
    flex-direction: column;
  }
}

.subpage-link:hover .__img img {
  transform: scale(1.125);
}

/* common layout */
#pr {
  overflow-x: hidden;
}

#pr .snb {
  margin-top: var(--spacing-8, 3.2rem);
}

#pr .pr-content__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-4, 1.6rem);
  padding-top: var(--spacing-56, 24rem);
  padding-bottom: var(--spacing-56, 24rem);
  text-align: center;
}

#pr .pr-content__empty .__title {
  font-size: var(--fs-title3);
  font-weight: 530;
  line-height: 1.4;
  letter-spacing: -0.02em;
}

#pr .pr-content__empty .__desc {
  font-size: var(--fs-body1);
  line-height: 1.6;
  letter-spacing: -0.02em;
  color: #787878;
}

#pr .pr-content__body {
  padding-top: var(--spacing-20, 8rem);
  padding-bottom: var(--spacing-40, 16rem);
}

#pr .pr-content__body .pagination {
  margin-top: var(--spacing-24, 9.6rem);
}

.pr-card {
  position: relative;
  z-index: 1;
}

.pr-card__link {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-6, 2.4rem);
}

.pr-card__image {
  position: relative;
  padding-bottom: 56%;
  border-radius: var(--border-radius-sm);
  overflow: hidden;
  background: url("/assets/img/common/img-placeholder.png") center/cover no-repeat;
  border: 1px solid #eee;
}

.pr-card__image .__bg {
  display: none;
}

.pr-card__image .__og {
  position: absolute;
  top: 0;
  left: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: translateX(-50%);
  transition: transform 1.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transform;
  z-index: 2;
}

.pr-card__image.--portrait::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(60px);
  -webkit-backdrop-filter: blur(60px);
  z-index: 1;
}

.pr-card__image.--portrait .__bg {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: translateX(-50%);
  transition: transform 1.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transform;
  z-index: 0;
}

.pr-card__image.--portrait .__og {
  object-fit: contain;
}

.pr-card__image.--portrait.--extra-tall .__og {
  width: max(100% - 33.6rem, 50%);
  object-fit: cover;
}

.pr-card:hover .pr-card__image>img {
  transform: translateX(-50%) scale(1.125);
}

.pr-card:has(.--extra-badge.is-active),
.pr-card:has(.--extra-badge:hover) {
  z-index: 10;
}

.pr-card__badges {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-2, 0.8rem);
}

.pr-card__badges .--extra-badge {
  position: relative;
  transition: background-color 0.2s cubic-bezier(0.42, 0, 0.58, 1), color 0.2s cubic-bezier(0.42, 0, 0.58, 1);
}

.pr-card__badges .--extra-badge:hover,
.pr-card__badges .--extra-badge.is-active {
  background-color: #0066DB;
}

.pr-card__badges .--extra-badge:hover .__text,
.pr-card__badges .--extra-badge.is-active .__text {
  color: #fff;
}

.pr-card__badges .--extra-badge:hover .__popover,
.pr-card__badges .--extra-badge.is-active .__popover {
  opacity: 1;
  pointer-events: auto;
}

.pr-card__badges .--extra-badge .__popover {
  position: absolute;
  top: 100%;
  left: 0;
  padding-top: 0.8rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s cubic-bezier(0.42, 0, 0.58, 1);
  z-index: 10;
}

.pr-card__badges .--extra-badge .__popover.--right {
  left: unset;
  right: 0;
}

.pr-card__badges .--extra-badge .__popover-inner {
  padding: 0.8rem 1rem;
  border-radius: 0.4rem;
  border: 1px solid #e0e0e0;
  background: #fff;
}

.pr-card__badges .--extra-badge .__popover-list {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}

.pr-card__badges .--extra-badge .__popover-list li {
  white-space: nowrap;
}

@media (max-width: 767px) {
  .pr-card__badges .--extra-badge .__popover-inner {
    padding: 0.8rem;
  }
}

.pr-card__title {
  margin-top: var(--spacing-4, 1.6rem);
  font-size: var(--fs-title4);
  font-weight: 530;
  line-height: 1.5;
  letter-spacing: -0.02em;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  word-break: break-all;
}

.pr-card__date {
  display: flex;
  align-items: center;
  gap: 2.4rem;
  margin-top: var(--spacing-3, 1.2rem);
  font-size: var(--fs-body2);
  line-height: 1.32;
  letter-spacing: -0.02em;
}

.pr-card__date span {
  color: #383838;
}

.pr-card__date span:not(:first-child) {
  position: relative;
}

.pr-card__date span:not(:first-child)::before {
  content: "";
  display: inline-block;
  position: absolute;
  position: absolute;
  top: 50%;
  transform: translate3d(0, -50%, 0);
  left: -1.2rem;
  width: 0.1rem;
  height: 1.2rem;
  background: #e0e0e0;
}

@media (max-width: 767px) {
  .pr-card__link {
    display: flex;
    flex-direction: column;
    gap: 1.4rem;
  }

  .pr-card__title {
    margin-top: var(--spacing-3, 1.2rem);
  }

  .pr-card__date {
    margin-top: 0.8rem;
  }
}

.pr-card--masonry {
  width: calc(33.3333333333% - 4rem);
  box-sizing: border-box;
}

@media (min-width: 1023px) {
  .pr-card--masonry {
    margin: 0 2rem 8rem 2rem;
  }
}

@media (max-width: 1023px) {
  .pr-card--masonry {
    width: calc(50% - 4rem);
    margin: 0 2rem 4rem 2rem;
  }
}

@media (max-width: 767px) {
  .pr-card--masonry {
    width: 100%;
    margin: 0 0 4rem 0;
  }
}

.pr-card--masonry .pr-card__image {
  position: relative;
  padding-bottom: 0;
  width: 100%;
  height: auto;
  max-height: 50.6rem;
}

.pr-card--masonry .pr-card__image[data-img-type=rectangle] {
  aspect-ratio: 16/9;
}

.pr-card--masonry .pr-card__image[data-img-type=square] {
  aspect-ratio: 1/1;
}

.pr-card--masonry .pr-card__image img {
  width: 100%;
  height: 100%;
}

.pr-card--masonry .pr-card__image .platform-logo {
  position: absolute;
  bottom: 1.8rem;
  right: 1.8rem;
  width: 5.2rem;
  height: 5.2rem;
  border-radius: 50%;
  background-color: rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 2;
}

@media (max-width: 1023px) {
  .pr-card--masonry .pr-card__image .platform-logo {
    right: 0.9rem;
    bottom: 0.9rem;
    width: 4.2rem;
    height: 4.2rem;
  }
}

.pr-card--masonry .pr-card__image .platform-logo__icon {
  width: 2.4rem;
  height: 2.4rem;
  object-fit: contain;
}

.pr-card--masonry .pr-card__top {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.pr-card--masonry .pr-card__icon-outlink {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 3.6rem;
  height: 3.6rem;
  border-radius: 50%;
  background-color: #E5F0FB;
}

.pr-card--masonry .pr-card__icon-outlink svg {
  width: 1.8rem;
  height: 1.8rem;
}

.pr-card--masonry .pr-card__icon-outlink svg path {
  stroke: #0066DB;
}

.pr-card--masonry .pr-card__date .platform {
  color: #0066DB;
}

.pr-list-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 2.4rem;
}

.pr-list-header .__count {
  display: flex;
  gap: 0.4rem;
}

.pr-list-header .__count span {
  color: #3e3e3e;
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: -0.02em;
}

.pr-list-header .__count strong {
  font-weight: 600;
}

.pr-list-header .social-links__list {
  display: flex;
  align-items: center;
}

.pr-list-header .social-links__item {
  position: relative;
  display: block;
  width: 4rem;
  height: 4rem;
  margin-left: var(--spacing-4, 1.6rem);
  margin-right: var(--spacing-4, 1.6rem);
  border-radius: var(--border-radius-sm);
  transition: background-color 0.2s cubic-bezier(0.42, 0, 0.58, 1);
}

@media (max-width: 767px) {
  .pr-list-header .social-links__item {
    width: 3.6rem;
    height: 3.6rem;
  }
}

.pr-list-header .social-links__item:first-child {
  margin-left: 0;
}

.pr-list-header .social-links__item:last-child {
  margin-right: 0;
}

.pr-list-header .social-links__item:not(:last-child)::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  transform: translate3d(0, -50%, 0);
  right: -1.6rem;
  width: 0.1rem;
  height: 2.3rem;
  background: #e0e0e0;
}

@media (max-width: 767px) {
  .pr-list-header .social-links__item:not(:last-child)::after {
    right: -1.6rem;
    height: 2rem;
  }
}

.pr-list-header .social-links__item:hover {
  background-color: rgba(229, 240, 251, 0.5);
}

.pr-list-header .social-links__item:hover img.default {
  display: none;
}

.pr-list-header .social-links__item:hover img.active {
  display: block;
}

.pr-list-header .social-links__item>a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.pr-list-header .social-links__item img {
  display: block;
  width: 100%;
  height: 100%;
}

.pr-list-header .social-links__item img.active {
  display: none;
}

@media (max-width: 767px) {
  .pr-list-header {
    margin-bottom: 1.8rem;
  }
}

/* news-list page */
#pr .news-banner {
  margin-bottom: var(--spacing-14, 5.6rem);
}

#pr .news-banner__inner {
  display: grid;
  grid-template-columns: 56% auto;
}

#pr .news-banner__image {
  position: relative;
  width: 100%;
  padding-bottom: 56%;
  border-radius: var(--border-radius-md);
  overflow: hidden;
  background: url("/assets/img/common/img-placeholder.png") center/cover no-repeat;
}

#pr .news-banner__image .__bg {
  display: none;
}

#pr .news-banner__image .__og {
  position: absolute;
  top: 0;
  left: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: translateX(-50%);
  transition: transform 1.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transform;
  z-index: 2;
}

#pr .news-banner__image.--portrait::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(60px);
  -webkit-backdrop-filter: blur(60px);
  z-index: 1;
}

#pr .news-banner__image.--portrait .__bg {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: translateX(-50%);
  transition: transform 1.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transform;
  z-index: 0;
}

#pr .news-banner__image.--portrait .__og {
  object-fit: contain;
}

#pr .news-banner__image.--portrait.--extra-tall .__og {
  width: max(100% - 33.6rem, 50%);
  object-fit: cover;
}

#pr .news-banner:hover .news-banner__image img {
  transform: translateX(-50%) scale(1.125);
}

#pr .news-banner__content {
  display: flex;
  flex-direction: column;
  padding: 2rem 4rem;
}

#pr .news-banner__badges {
  display: flex;
  gap: 0.8rem;
  margin-bottom: 2rem;
}

#pr .news-banner__title {
  font-size: var(--fs-title2);
  font-weight: 530;
  line-height: 1.4;
  letter-spacing: -0.02em;
  margin-bottom: 1.2rem;
}

#pr .news-banner__desc {
  font-size: var(--fs-body1);
  line-height: 1.6;
  letter-spacing: -0.02em;
  word-break: break-word;
  text-overflow: ellipsis;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}

#pr .news-banner__date {
  margin-top: auto;
}

#pr .news-banner__date span {
  font-size: var(--fs-body2);
  line-height: 1.32;
  letter-spacing: -0.02em;
}

#pr .news-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 5.2rem 4.1rem;
}

#pr .news-list--masonry {
  position: relative;
  display: block;
  padding-bottom: 1.6rem;
}

@media (min-width: 767px) {
  #pr .news-list--masonry {
    margin-left: -2rem;
    margin-right: -2rem;
  }
}

@media (max-width: 1023px) {
  #pr .news-list--masonry {
    padding-bottom: 0.8rem;
  }
}

#pr .news-list--masonry .grid-sizer {
  width: calc(33.3333333333% - 2rem);
  margin: 0 2rem;
}

@media (max-width: 1023px) {
  #pr .news-list--masonry .grid-sizer {
    width: calc(50% - 2rem);
  }
}

@media (max-width: 767px) {
  #pr .news-list--masonry .grid-sizer {
    width: 100%;
  }
}

@media (max-width: 1023px) {
  #pr .news-banner {
    margin-bottom: var(--spacing-30, 12rem);
  }

  #pr .news-banner__inner {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-8, 3.2rem);
  }

  #pr .news-banner__content {
    padding: 0;
  }

  #pr .news-banner__badges {
    margin-bottom: var(--spacing-5, 2rem);
  }

  #pr .news-banner__title {
    margin-bottom: var(--spacing-3, 1.2rem);
  }

  #pr .news-banner__desc {
    margin-bottom: var(--spacing-5, 2rem);
  }

  #pr .news-list {
    grid-template-columns: repeat(2, 1fr);
    column-gap: var(--spacing-5, 2rem);
    row-gap: var(--spacing-24, 9.6rem);
  }
}

#pr:has(.pr-detail) {
  overflow-x: hidden;
}

#pr .pr-detail {
  padding-top: var(--spacing-30, 12rem);
  padding-bottom: var(--spacing-40, 16rem);
}

#pr .pr-detail .__heading {
  position: relative;
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid #e0e0e0;
  z-index: 1;
  gap: var(--spacing-9, 3.6rem);
  padding-bottom: var(--spacing-5, 2rem);
}

#pr .pr-detail .__heading .__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#pr .pr-detail .__heading .__category {
  display: flex;
  align-items: center;
}

#pr .pr-detail .__heading .__share {
  position: relative;
}

#pr .pr-detail .__heading .__share .share-btn {
  width: 3.6rem;
  height: 3.6rem;
  background: #E5F0FB;
  border-radius: 999px;
  padding: var(--spacing-2, 0.8rem);
}

#pr .pr-detail .__heading .__share .share-btn .__icon {
  display: inline-block;
  color: #0066DB;
  width: 2rem;
  height: 2rem;
}

#pr .pr-detail .__heading .__share .share-btn.--active {
  background: #0066DB;
}

#pr .pr-detail .__heading .__share .share-btn.--active .__icon {
  color: #fff;
}

#pr .pr-detail .__heading .__share .share-layer {
  display: none;
  position: absolute;
  top: 100%;
  right: 0;
  display: none;
  padding-top: 0.8rem;
  z-index: 99;
}

#pr .pr-detail .__heading .__share .share-layer.--active {
  display: block;
}

#pr .pr-detail .__heading .__share .share-options {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, 3.5rem);
  gap: var(--spacing-2, 0.8rem);
  border-radius: var(--border-radius-xs, 6px);
  border: 1px solid #e0e0e0;
  background: #fff;
  box-shadow: 0 0 2rem 0 rgba(87, 91, 119, 0.1);
}

#pr .pr-detail .__content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-10, 4rem);
  padding-top: var(--spacing-8, 3.2rem);
  padding-bottom: var(--spacing-24, 9.6rem);
}

#pr .pr-detail .__content>.__content {
  padding: 0;
}

#pr .pr-detail .__content .editor-content {
  font-size: 1.8rem;
  line-height: 1.7;
}

#pr .pr-detail .__content .editor-content h1 {
  font-size: 4.8rem;
  font-weight: 700;
  margin: 2.4rem 0;
  line-height: 1.3;
}

#pr .pr-detail .__content .editor-content h2 {
  font-size: 4rem;
  font-weight: 700;
  margin: 2rem 0;
  line-height: 1.3;
}

#pr .pr-detail .__content .editor-content h3 {
  font-size: 3.2rem;
  font-weight: 700;
  margin: 1.8rem 0;
  line-height: 1.4;
}

#pr .pr-detail .__content .editor-content h4 {
  font-size: 2.8rem;
  font-weight: 700;
  margin: 1.6rem 0;
  line-height: 1.4;
}

#pr .pr-detail .__content .editor-content h5 {
  font-size: 2.4rem;
  font-weight: 700;
  margin: 1.4rem 0;
  line-height: 1.5;
}

#pr .pr-detail .__content .editor-content h6 {
  font-size: 2rem;
  font-weight: 700;
  margin: 1.2rem 0;
  line-height: 1.5;
}

#pr .pr-detail .__content .editor-content p,
#pr .pr-detail .__content .editor-content div {
  margin: 1.4rem 0;
}

#pr .pr-detail .__content .editor-content p[style*="text-align: center"],
#pr .pr-detail .__content .editor-content p[align=center],
#pr .pr-detail .__content .editor-content div[style*="text-align: center"],
#pr .pr-detail .__content .editor-content div[align=center],
#pr .pr-detail .__content .editor-content h1[style*="text-align: center"],
#pr .pr-detail .__content .editor-content h1[align=center],
#pr .pr-detail .__content .editor-content h2[style*="text-align: center"],
#pr .pr-detail .__content .editor-content h2[align=center],
#pr .pr-detail .__content .editor-content h3[style*="text-align: center"],
#pr .pr-detail .__content .editor-content h3[align=center],
#pr .pr-detail .__content .editor-content h4[style*="text-align: center"],
#pr .pr-detail .__content .editor-content h4[align=center],
#pr .pr-detail .__content .editor-content h5[style*="text-align: center"],
#pr .pr-detail .__content .editor-content h5[align=center],
#pr .pr-detail .__content .editor-content h6[style*="text-align: center"],
#pr .pr-detail .__content .editor-content h6[align=center] {
  text-align: center;
}

#pr .pr-detail .__content .editor-content p[style*="text-align: right"],
#pr .pr-detail .__content .editor-content p[align=right],
#pr .pr-detail .__content .editor-content div[style*="text-align: right"],
#pr .pr-detail .__content .editor-content div[align=right],
#pr .pr-detail .__content .editor-content h1[style*="text-align: right"],
#pr .pr-detail .__content .editor-content h1[align=right],
#pr .pr-detail .__content .editor-content h2[style*="text-align: right"],
#pr .pr-detail .__content .editor-content h2[align=right],
#pr .pr-detail .__content .editor-content h3[style*="text-align: right"],
#pr .pr-detail .__content .editor-content h3[align=right],
#pr .pr-detail .__content .editor-content h4[style*="text-align: right"],
#pr .pr-detail .__content .editor-content h4[align=right],
#pr .pr-detail .__content .editor-content h5[style*="text-align: right"],
#pr .pr-detail .__content .editor-content h5[align=right],
#pr .pr-detail .__content .editor-content h6[style*="text-align: right"],
#pr .pr-detail .__content .editor-content h6[align=right] {
  text-align: right;
}

#pr .pr-detail .__content .editor-content p[style*="text-align: left"],
#pr .pr-detail .__content .editor-content p[align=left],
#pr .pr-detail .__content .editor-content div[style*="text-align: left"],
#pr .pr-detail .__content .editor-content div[align=left],
#pr .pr-detail .__content .editor-content h1[style*="text-align: left"],
#pr .pr-detail .__content .editor-content h1[align=left],
#pr .pr-detail .__content .editor-content h2[style*="text-align: left"],
#pr .pr-detail .__content .editor-content h2[align=left],
#pr .pr-detail .__content .editor-content h3[style*="text-align: left"],
#pr .pr-detail .__content .editor-content h3[align=left],
#pr .pr-detail .__content .editor-content h4[style*="text-align: left"],
#pr .pr-detail .__content .editor-content h4[align=left],
#pr .pr-detail .__content .editor-content h5[style*="text-align: left"],
#pr .pr-detail .__content .editor-content h5[align=left],
#pr .pr-detail .__content .editor-content h6[style*="text-align: left"],
#pr .pr-detail .__content .editor-content h6[align=left] {
  text-align: left;
}

#pr .pr-detail .__content .editor-content p[style*="text-align: justify"],
#pr .pr-detail .__content .editor-content p[align=justify],
#pr .pr-detail .__content .editor-content div[style*="text-align: justify"],
#pr .pr-detail .__content .editor-content div[align=justify],
#pr .pr-detail .__content .editor-content h1[style*="text-align: justify"],
#pr .pr-detail .__content .editor-content h1[align=justify],
#pr .pr-detail .__content .editor-content h2[style*="text-align: justify"],
#pr .pr-detail .__content .editor-content h2[align=justify],
#pr .pr-detail .__content .editor-content h3[style*="text-align: justify"],
#pr .pr-detail .__content .editor-content h3[align=justify],
#pr .pr-detail .__content .editor-content h4[style*="text-align: justify"],
#pr .pr-detail .__content .editor-content h4[align=justify],
#pr .pr-detail .__content .editor-content h5[style*="text-align: justify"],
#pr .pr-detail .__content .editor-content h5[align=justify],
#pr .pr-detail .__content .editor-content h6[style*="text-align: justify"],
#pr .pr-detail .__content .editor-content h6[align=justify] {
  text-align: justify;
}

#pr .pr-detail .__content .editor-content sup {
  font-size: 1.2rem;
  vertical-align: super;
  line-height: 0;
}

#pr .pr-detail .__content .editor-content sub {
  font-size: 1.2rem;
  vertical-align: sub;
  line-height: 0;
}

#pr .pr-detail .__content .editor-content strong {
  font-weight: 700;
}

#pr .pr-detail .__content .editor-content em {
  font-style: italic;
}

#pr .pr-detail .__content .editor-content a {
  color: #0066DB;
  text-decoration: underline;
  cursor: pointer;
}

#pr .pr-detail .__content .editor-content a:hover {
  color: #0066DB;
  text-decoration: none;
}

#pr .pr-detail .__content .editor-content a:visited {
  color: #551a8b;
}

#pr .pr-detail .__content .editor-content ol {
  margin: 1.4rem 0;
  padding-left: 3rem;
  list-style-type: decimal;
}

#pr .pr-detail .__content .editor-content ol li {
  margin: 0.8rem 0;
  padding-left: 0.5rem;
}

#pr .pr-detail .__content .editor-content ul {
  margin: 1.4rem 0;
  padding-left: 3rem;
  list-style-type: disc;
}

#pr .pr-detail .__content .editor-content ul li {
  margin: 0.8rem 0;
  padding-left: 0.5rem;
}

#pr .pr-detail .__content .editor-content ol ol,
#pr .pr-detail .__content .editor-content ol ul,
#pr .pr-detail .__content .editor-content ul ol,
#pr .pr-detail .__content .editor-content ul ul {
  margin: 0.5rem 0;
  padding-left: 2rem;
}

#pr .pr-detail .__content .editor-content ol ul,
#pr .pr-detail .__content .editor-content ul ul {
  list-style-type: circle;
}

#pr .pr-detail .__content .editor-content img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  height: auto;
  margin-top: 1.4rem;
  margin-bottom: 1.4rem;
  float: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

#pr .pr-detail .__content .editor-content font,
#pr .pr-detail .__content .editor-content div {
  font-size: inherit !important;
  line-height: inherit !important;
  color: inherit !important;
}

#pr .pr-detail .__content .__sub-heading {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-16, 6.4rem);
}

#pr .pr-detail .__content .__sub-heading .__image {
  position: relative;
  width: 100%;
  border-radius: var(--border-radius-sm);
  overflow: hidden;
}

#pr .pr-detail .__content .__sub-heading .__image img {
  width: 100%;
}

#pr .pr-detail .__content .__sub-heading h3 {
  font-size: var(--fs-title2);
  font-weight: 530;
  line-height: 1.4;
  letter-spacing: -0.02em;
  font-weight: 700;
}

#pr .pr-detail .__content pre {
  font-size: var(--fs-body2);
  line-height: 1.32;
  letter-spacing: -0.02em;
  white-space: pre-wrap;
}

#pr .pr-detail .__sub-content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-20, 8rem);
}

#pr .pr-detail .__sub-content .__related {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-6, 2.4rem);
}

#pr .pr-detail .__sub-content .__related .__tags {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-3, 1.2rem);
}

#pr .pr-detail .__sub-content .__more {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-6, 2.4rem);
}

#pr .pr-detail .__sub-content .__more .__items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--spacing-5, 2rem);
}

#pr .pr-detail .__sub-content .__more .slider {
  width: 100%;
  margin: 0-var(--gutter, clamp(4.8rem, 4.1667vw, 8rem));
}

#pr .pr-detail .__sub-content .__more .slider .swiper {
  overflow: visible;
}

#pr .pr-detail .__footer {
  border-top: 1px solid #e0e0e0;
  padding-top: var(--spacing-7, 2.8rem);
  margin-top: var(--spacing-20, 8rem);
}

#pr .pr-detail .__footer .cta-btns.--full {
  width: 100%;
}

#pr .pr-detail .__footer .btn {
  transition: border-color 0.2s ease, color 0.2s ease, background-color 0.2s ease;
}

#pr .pr-detail .__footer .btn.--blue {
  width: 12.5rem;
}

#pr .pr-detail .__footer .btn.--ghost:not(:hover) {
  border: 1px solid #e0e0e0;
  background: transparent;
  box-sizing: border-box;
}

#pr .pr-detail .__footer .btn.--ghost:hover:not(.--disabled) {
  border: 1px solid transparent;
}

#pr .pr-detail .__footer .btn.--ghost.--disabled {
  color: #767676 !important;
  background: transparent !important;
  border: 1px solid #e0e0e0;
}

@media (max-width: 1023px) {
  #pr .pr-detail .__footer .btn {
    gap: var(--spacing-2, 0.8rem);
  }

  #pr .pr-detail .__footer .btn.--blue {
    width: 9rem;
  }
}

/* annual-report page */
#pr .annual-banner {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--spacing-16, 6.4rem);
}

#pr .annual-banner .__cover {
  position: relative;
  padding-bottom: 102%;
}

#pr .annual-banner .__image {
  position: absolute;
  right: 0;
  height: 100%;
  aspect-ratio: 400/509;
  border-radius: var(--border-radius-sm);
  overflow: hidden;
}

#pr .annual-banner .__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#pr .annual-banner .__content {
  display: flex;
  flex-direction: column;
  padding-top: var(--spacing-9, 3.6rem);
  padding-bottom: var(--spacing-9, 3.6rem);
  gap: var(--spacing-14, 5.6rem);
}

#pr .annual-banner .__textbox {
  flex: 1;
  padding-right: var(--spacing-14, 5.6rem);
}

#pr .annual-banner .__textbox strong {
  color: #0066DB;
}

#pr .annual-banner .__textbox h3 {
  margin-top: 0.8rem;
}

#pr .annual-banner .__textbox p {
  margin-top: var(--spacing-5, 2rem);
  color: #383838;
}

#pr .annual-banner .__actions {
  display: flex;
  align-items: center;
  gap: var(--spacing-3, 1.2rem);
}

[lang=en] #pr .annual-banner .__actions {
  flex-direction: column;
  align-items: stretch;
}

#pr .annual-banner .__actions .dropdown[data-dropdown=basic] {
  width: 21rem;
}

[lang=en] #pr .annual-banner .__actions .dropdown[data-dropdown=basic] {
  width: fit-content;
}

#pr .annual-banner .__actions .__btn-box {
  width: 14.1rem;
  align-self: stretch;
}

#pr .annual-banner .__actions .__btn-box .btn {
  height: 100%;
}

@media (max-width: 1023px) {
  #pr .annual-banner {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-16, 6.4rem);
  }

  #pr .annual-banner .__cover {
    aspect-ratio: 400/509;
    padding: 0;
  }

  #pr .annual-banner .__image {
    padding: 0;
    position: relative;
    right: unset;
  }

  #pr .annual-banner .__content {
    padding: 0;
  }

  #pr .annual-banner .__textbox h3 {
    margin-top: 0.6rem;
  }

  #pr .annual-banner .__actions .dropdown[data-dropdown=basic] {
    width: 100%;
    min-width: auto;
  }

  #pr .annual-banner .__actions .btn {
    gap: var(--spacing-3, 1.2rem);
  }

  #pr .annual-banner .__actions .btn .__label {
    font-size: var(--fs-label2);
    line-height: 1.32;
    letter-spacing: -0.02em;
  }
}

/* prmovie page */
#pr .prmovie-banner {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-8, 3.2rem);
}

#pr .prmovie-banner .__image {
  width: 100%;
}

#pr .prmovie-banner .__image img {
  width: 100%;
  border-radius: var(--border-radius-sm);
}

#pr .prmovie-banner .__video {
  border-radius: var(--border-radius-sm);
  overflow: hidden;
  cursor: pointer;
}

#pr .prmovie-banner .__video .__play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 6rem;
  height: 6rem;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(1rem);
  pointer-events: none;
}

#pr .prmovie-banner .__video .__play-btn .__icon {
  position: relative;
  width: 2rem;
  height: 2rem;
}

#pr .prmovie-banner .__video .__play-btn .__icon svg {
  width: 100%;
  height: 100%;
  color: #fff;
}

#pr .prmovie-banner .__content {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--spacing-8, 3.2rem);
}

#pr .prmovie-banner .__content h3 {
  word-break: break-all;
  white-space: pre-line;
}

#pr .prmovie-banner .__content p {
  width: 58%;
  word-break: break-all;
  flex-shrink: 0;
}

@media (max-width: 1023px) {
  #pr .prmovie-banner .__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--spacing-4, 1.6rem);
  }

  #pr .prmovie-banner .__content h3 {
    white-space: normal;
  }

  #pr .prmovie-banner .__content p {
    width: 100%;
  }
}

@media (max-width: 1023px) {
  .social-center .snb {
    gap: 3.2rem;
  }

  .social-center .snb .tab-list {
    width: 100%;
    padding: 0 calc(var(--gutter, clamp(4.8rem, 4.1667vw, 8rem)));
    margin: 0 calc(var(--gutter, clamp(4.8rem, 4.1667vw, 8rem)) * -1);
  }

  .social-center .snb .search-container {
    width: 100%;
  }
}

#group-sub .--highlight {
  color: #0066DB;
}

#group-sub .headline-wrapper {
  position: relative;
}

#group-sub .headline-wrapper .breadcrumb {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

#group-sub .group-layout {
  display: flex;
  justify-content: space-between;
  gap: var(--spacing-9, 3.6rem);
}

#group-sub .group-layout .__header {
  width: 20.0520833333vw;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-10, 4rem);
}

#group-sub .group-layout .__header.--sticky {
  position: sticky;
  top: var(--spacing-40, 16rem);
  align-self: flex-start;
}

#group-sub .group-layout .__header p {
  letter-spacing: -0.03em;
}

#group-sub .group-layout .__body {
  width: 92.5rem;
}

@media (min-width: 1023px) {
  #group-sub .group-layout:not(.--vertical) .__header {
    position: sticky;
    top: var(--spacing-40, 16rem);
    align-self: flex-start;
  }
}

#group-sub .group-layout.--vertical {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-10, 4rem);
}

#group-sub .tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem;
}

@media (max-width: 1023px) {
  #group-sub .group-layout {
    display: flex;
    flex-direction: column;
  }

  #group-sub .group-layout .__header {
    width: 100%;
  }

  #group-sub .group-layout .__body {
    width: 100%;
  }
}

@media (max-width: 767px) {
  #group-sub .group-layout.--vertical .grid {
    gap: 4rem;
  }
}

#group-sub .company-intro {
  padding-top: var(--spacing-40, 16rem);
  padding-bottom: var(--spacing-34, 13.6rem);
}

#group-sub .company-intro.--pt-none {
  padding-top: 0;
}

#group-sub .company-intro .intro-module {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-20, 8rem);
}

#group-sub .company-intro .intro-module .__text {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-6, 2.4rem);
}

#group-sub .company-intro .intro-module .__list {
  display: flex;
  flex-direction: column;
  border-top: 1px solid #000;
}

#group-sub .company-intro .intro-module .__item {
  display: grid;
  align-items: center;
  grid-template-columns: 7.2rem 1fr;
  padding-top: var(--spacing-6, 2.4rem);
  padding-bottom: var(--spacing-6, 2.4rem);
  gap: var(--spacing-7, 2.8rem);
}

#group-sub .company-intro .intro-module .__item+.__item {
  border-top: 1px solid #e0e0e0;
}

#group-sub .company-intro .intro-module .__item.--has-btn {
  padding: 1.6rem 0;
}

@media (max-width: 1023px) {
  #group-sub .company-intro .intro-module .__item.--has-btn {
    padding-top: var(--spacing-6, 2.4rem);
    padding-bottom: var(--spacing-6, 2.4rem);
  }
}

#group-sub .company-intro .intro-module .__item.--has-btn .tag:not(.--only-icon) .__icon {
  width: 1.8rem;
  height: 1.8rem;
}

#group-sub .company-intro .intro-module .__item.--has-btn .tag:not(.--only-icon) .__icon svg {
  width: 100%;
  height: 100%;
}

#group-sub .company-intro .intro-module .__item.--has-btn .tag.--only-icon .__icon {
  width: 3.2rem;
  height: 3.2rem;
}

#group-sub .company-intro .intro-module .__item.--has-btn .tag.--only-icon .__icon svg {
  width: 100%;
  height: 100%;
}

[lang=en] #group-sub .company-intro .intro-module .__item {
  grid-template-columns: 19rem 1fr;
}

#group-sub .business-intro {
  padding-bottom: var(--spacing-50, 20rem);
}

#group-sub .business-intro.--pb-none {
  padding-bottom: 0;
}

#group-sub .business-intro .__list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-30, 12rem);
}

#group-sub .business-intro .__item {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-9, 3.6rem);
}

#group-sub .business-intro .__item .__image {
  border-radius: var(--radius-sm, 8px);
  overflow: hidden;
}

#group-sub .business-intro .__item .__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#group-sub .business-intro .__item .__desc {
  margin-top: var(--spacing-5, 2rem);
  line-height: 1.6;
}

#group-sub .business-intro .__item .cta-btns {
  margin-top: var(--spacing-8, 3.2rem);
  gap: var(--spacing-3, 1.2rem);
}

#group-sub .business-status {
  padding-top: var(--spacing-34, 13.6rem);
  padding-bottom: var(--spacing-34, 13.6rem);
  margin-bottom: var(--spacing-34, 13.6rem);
  background-color: #E5F0FB;
}

#group-sub .business-status .__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-5, 2rem);
}

#group-sub .business-status .__item {
  width: 100%;
  position: relative;
  padding-bottom: 77%;
  border-radius: var(--border-radius-sm, 8px);
  background-color: #fff;
}

#group-sub .business-status .__item .__inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: var(--spacing-8, 3.2rem);
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
}

#group-sub .business-status .__item .__text .__sub-title {
  font-weight: 600;
}

#group-sub .business-status .__item .__text .__sub-title+.__title {
  padding-top: 0.6rem;
}

#group-sub .business-status .__item .__text .__title {
  letter-spacing: -0.03em;
}

#group-sub .business-status .__item .__status {
  display: flex;
  flex-direction: column;
  background-position: right bottom;
  background-size: 9.4rem;
  background-repeat: no-repeat;
}

#group-sub .business-status .__item .__status .__numeric {
  margin-top: -0.2rem;
  display: inline-flex;
  align-items: flex-end;
  gap: 0.6rem;
}

#group-sub .business-status .__item .__status .__unit {
  margin-bottom: var(--spacing-3, 1.2rem);
}

#group-sub .business-status .__item:nth-child(1) .__status {
  background-image: url(/assets/img/page/group/group-icon1.svg);
}

#group-sub .business-status .__item:nth-child(2) .__status {
  background-image: url(/assets/img/page/group/group-icon2.svg);
}

#group-sub .business-status .__item:nth-child(3) .__status {
  background-image: url(/assets/img/page/group/group-icon3.svg);
}

#group-sub .business-status .__item:nth-child(4) .__status {
  background-image: url(/assets/img/page/group/group-icon4.svg);
}

@media (max-width: 1023px) {
  #group-sub .business-status .__list {
    display: flex;
    flex-direction: column;
  }

  #group-sub .business-status .__item {
    padding: 0;
  }

  #group-sub .business-status .__item .__inner {
    position: relative;
    gap: 3.2rem;
  }

  #group-sub .business-status .__item .__status {
    height: 7.2rem;
    justify-content: flex-end;
    background-size: 7.2rem;
  }
}

#group-sub .core-brands {
  padding-bottom: var(--spacing-50, 20rem);
}

#group-sub .core-brands .brands-card-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--gap, 5);
}

#group-sub .core-brands .__card {
  display: flex;
  gap: 2.4rem;
  padding: 1rem;
  border-radius: var(--radius-sm, 10px);
  background-color: #f6f6f6;
  transition: background-color 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

#group-sub .core-brands .__card:hover {
  background-color: #E5F0FB;
}

#group-sub .core-brands .__card:hover .btn-arrow {
  background-color: #0066DB;
}

#group-sub .core-brands .__card:hover .btn-arrow svg path {
  stroke: #fff;
}

#group-sub .core-brands .__card:hover .__name {
  color: #0066DB;
}

#group-sub .core-brands .__card .__logo {
  aspect-ratio: 240/135;
  flex-shrink: 0;
}

#group-sub .core-brands .__card .__logo img {
  display: block;
  width: 100%;
  height: 100%;
}

#group-sub .core-brands .__card .__text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1rem 0;
}

#group-sub .core-brands .__card .__name {
  font-weight: 430;
  transition: color 0.3s cubic-bezier(0.42, 0, 0.58, 1);
  line-height: 1.2;
}

@media (max-width: 1023px) {
  #group-sub .core-brands .brands-card-list {
    grid-template-columns: 1fr;
  }

  #group-sub .core-brands .__card {
    gap: 2rem;
  }

  #group-sub .core-brands .__card .__logo {
    width: 54%;
  }
}

#group-sub .related-news {
  padding-bottom: var(--spacing-50, 20rem);
}

#group-overview .blind-layer {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #fff;
  z-index: 1000;
}

#group-overview .blind-layer.--hide {
  display: none;
  pointer-events: "none";
}

.crop-section {
  position: relative;
  width: 100%;
  height: 100vh;
}

.crop-section .inner-box {
  position: relative;
  width: 100%;
  height: 100%;
}

.crop-section .inner-box>.container {
  height: 100%;
}

.crop-section .text-box-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-20, 8rem);
  box-sizing: border-box;
}

.crop-section .text-box {
  position: relative;
  padding-top: 14rem;
  display: grid;
  grid-template-columns: 52rem 50%;
  justify-content: space-between;
  align-items: flex-end;
}

.crop-section .__header {
  display: flex;
  flex-direction: column;
  width: 52rem;
  gap: 0.6rem;
  flex-shrink: 0;
}

.crop-section .__header .__classify {
  display: flex;
  align-items: center;
}

.crop-section .crop-box {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgb(4, 4, 4);
  transform: translateZ(0);
}

.crop-section .crop-box>.container {
  position: relative;
  z-index: 10;
}

.crop-section .crop-box .__header .__title .--highlight {
  color: #fff !important;
}

.crop-section .crop-box>.__image {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.crop-section .crop-box>.__image img {
  width: 100%;
  height: 100vh;
  object-fit: cover;
  will-change: transform, transform-origin;
}

.crop-section .crop-box>.__image::before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
  z-index: 1;
  content: "";
}

.crop-section .crop-box .__slider {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  z-index: 10;
  overflow: hidden;
}

.crop-section .crop-box .__slider>.container>.__boxed {
  display: flex;
  flex-direction: column;
  padding-bottom: min(3.75vw, 7.2rem);
  gap: var(--spacing-14, 5.6rem);
}

.crop-section .crop-box .__slider .__inner {
  display: grid;
  grid-template-columns: 52rem 58%;
  justify-content: space-between;
  align-items: flex-end;
}

.crop-section .crop-box .__slider .swiper {
  width: 100%;
  position: relative;
  overflow: visible;
}

.crop-section .crop-box .__slider .swiper .swiper-wrapper {
  align-items: flex-end;
}

.crop-section .crop-box .__slider .swiper .__item {
  padding: var(--spacing-5, 2rem);
  display: flex;
  flex-direction: column;
  background: #fff;
  border-radius: var(--border-radius-sm);
  box-sizing: border-box;
  width: clamp(34rem, 41.1458333333vw, 79rem);
  height: auto;
  align-self: stretch;
}

.crop-section .crop-box .__slider .swiper .__item>.__image {
  border-radius: var(--border-radius-sm);
  overflow: hidden;
  position: relative;
  width: 100%;
}

.crop-section .crop-box .__slider .swiper .__item>.__image img {
  width: 100%;
  height: auto;
  aspect-ratio: 750/421;
  object-fit: cover;
  will-change: transform;
}

.crop-section .crop-box .__slider .swiper .__item .__content {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  flex-grow: 1;
}

.crop-section .crop-box .__slider .swiper .__item .__content .__text {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-2, 0.8rem);
  align-self: stretch;
}

.crop-section .crop-box .__slider .swiper .__item .__content .__text h4 {
  flex-grow: 1;
}

.crop-section .crop-box .__slider .swiper .__item .__content .__text p {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  height: calc(var(--fs-body1) * 2 * 1.6);
}

.crop-section .crop-box .__slider .__navigator {
  display: flex;
  align-items: center;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.crop-section .crop-box .__slider .__navigator .page {
  display: flex;
  align-items: center;
  gap: 1rem;
  color: #ccc;
}

.crop-section .crop-box .__slider .__navigator .page span:first-child {
  color: #fff;
}

.crop-section .crop-box .__slider .__navigator .page i {
  width: 1.4rem;
  height: 0.2rem;
}

.crop-section .crop-box .__slider .__navigator .page i svg {
  width: 100%;
  height: 100%;
}

.crop-section .crop-box .__slider .__navigator .swiper-buttons {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-5, 2rem);
}

.crop-section .crop-box .__slider .__navigator .swiper-buttons .swiper-button-prev,
.crop-section .crop-box .__slider .__navigator .swiper-buttons .swiper-button-next {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  top: unset;
  left: unset;
  right: unset;
  bottom: unset;
  margin: 0;
  background: #fff;
  border-radius: var(--border-radius-xs);
  color: #000;
  transition: background 0.3s;
}

.crop-section .crop-box .__slider .__navigator .swiper-buttons .swiper-button-prev.swiper-button-disabled,
.crop-section .crop-box .__slider .__navigator .swiper-buttons .swiper-button-next.swiper-button-disabled {
  opacity: 1;
  cursor: not-allowed;
}

.crop-section .crop-box .__slider .__navigator .swiper-buttons .swiper-button-prev svg,
.crop-section .crop-box .__slider .__navigator .swiper-buttons .swiper-button-next svg {
  width: 1.8rem;
  height: 1.8rem;
}

.crop-section .crop-box .__slider .__navigator .swiper-buttons .swiper-button-prev::before,
.crop-section .crop-box .__slider .__navigator .swiper-buttons .swiper-button-prev::after,
.crop-section .crop-box .__slider .__navigator .swiper-buttons .swiper-button-next::before,
.crop-section .crop-box .__slider .__navigator .swiper-buttons .swiper-button-next::after {
  content: none;
}

.crop-section .crop-box .__slider .__navigator .swiper-buttons .swiper-button-prev:hover,
.crop-section .crop-box .__slider .__navigator .swiper-buttons .swiper-button-next:hover {
  background: #0066DB;
  color: #fff;
}

.crop-section .frame-box {
  position: relative;
  z-index: 1;
  flex-grow: 1;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.crop-section .frame-box>.container {
  position: relative;
  height: 100%;
}

.crop-section .frame-box>.container>.__boxed {
  position: relative;
  height: 100%;
}

@media (max-width: 1023px) {
  .crop-section .text-box {
    padding-top: 9.4rem;
    grid-template-columns: 1fr;
    gap: var(--spacing-7, 2.8rem);
  }

  .crop-section .text-box .__header {
    width: 100%;
  }

  .crop-section .crop-box .__slider {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    z-index: 1;
    overflow: hidden;
  }

  .crop-section .crop-box .__slider>.container>.__boxed {
    padding-bottom: 4rem;
    display: flex;
    flex-direction: column;
    gap: var(--spacing-14, 5.6rem);
  }

  .crop-section .crop-box .__slider .__inner {
    display: block;
  }

  .crop-section .crop-box .__slider .swiper .__item {
    width: 33.8541666667vw;
    align-self: stretch;
    height: auto;
  }

  .crop-section .crop-box .__slider .swiper .__item>.__image img {
    aspect-ratio: 200/149;
  }

  .crop-section .crop-box .__slider .swiper .__item .__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 0.4rem;
    flex: 1;
    padding-top: var(--spacing-7, 2.8rem);
    gap: var(--spacing-5, 2rem);
  }

  .crop-section .crop-box .__slider .swiper .__item .__content .__text p {
    height: auto;
    display: block;
  }

  .crop-section .crop-box .__slider .__navigator .swiper-buttons {
    gap: 1rem;
  }

  .crop-section .crop-box .__slider .__navigator .swiper-buttons .swiper-button-prev,
  .crop-section .crop-box .__slider .__navigator .swiper-buttons .swiper-button-next {
    width: 2.8rem;
    height: 2.8rem;
  }
}

@media (max-width: 767px) {
  .crop-section[data-id=culture] .__image img {
    object-position: 40% center;
  }

  .crop-section .crop-box .__slider>.container>.__boxed {
    gap: clamp(5.1282051282vw, 5.1282051282vw, 2rem);
  }

  .crop-section .crop-box .__slider .swiper .__item {
    width: 22.4rem;
    padding: 1.2rem;
  }

  .crop-section .crop-box .__slider .swiper .__item .__content {
    padding-top: 1.6rem;
    gap: 1.2rem;
  }
}

#group-overview .our-business {
  --opacity: 0;
  position: relative;
  height: 100%;
}

#group-overview .our-business::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-image: url("/assets/img/page/group/business-bg.webp");
  background-size: cover;
  background-position: top left;
  background-repeat: no-repeat;
  z-index: -1;
  opacity: var(--opacity, 0);
}

#group-overview .our-business>.container {
  height: 100%;
}

#group-overview .our-business .__inner {
  width: 100%;
  height: 100%;
  min-height: 100lvh;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#group-overview .our-business .__text-box {
  width: 40%;
}

#group-overview .our-business .__text-box .__label {
  color: #0066DB;
}

#group-overview .our-business .__text-box .__title {
  margin-top: var(--spacing-5, 2rem);
}

#group-overview .our-business .__text-box .__title strong {
  color: #0066DB;
}

#group-overview .our-business .__text-box .__desc {
  margin-top: var(--spacing-8, 3.2rem);
}

#group-overview .our-business .__card-box {
  position: relative;
  align-self: stretch;
  width: 50%;
}

#group-overview .our-business .__card-list {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  display: flex;
  gap: var(--spacing-5, 2rem);
  filter: drop-shadow(0 0 80px rgba(1, 131, 217, 0.1));
}

#group-overview .our-business .__card-list .__col {
  display: flex;
  flex-direction: column;
  height: fit-content;
}

#group-overview .our-business .__card-list .__item {
  position: relative;
  padding-bottom: var(--spacing-5, 2rem);
}

#group-overview .our-business .__card-list .__item .__image {
  border-top-left-radius: var(--border-radius-sm);
  border-top-right-radius: var(--border-radius-sm);
  overflow: hidden;
}

#group-overview .our-business .__card-list .__item .__text {
  padding: var(--spacing-5, 2rem);
  background-color: #fff;
  border-bottom-left-radius: var(--border-radius-sm);
  border-bottom-right-radius: var(--border-radius-sm);
}

@media (max-width: 1023px) {
  #group-overview .our-business {
    height: auto;
    padding-top: 6.4rem;
    background-image: url("/assets/img/page/group/business-bg_m.webp");
    background-size: cover;
    overflow: hidden;
  }

  #group-overview .our-business::before {
    display: none;
  }

  #group-overview .our-business>.container>.__boxed {
    display: block;
  }

  #group-overview .our-business .__inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--spacing-20, 8rem);
  }

  #group-overview .our-business .__text-box {
    width: 100%;
  }

  #group-overview .our-business .__card-box {
    height: auto;
    width: 100%;
  }

  #group-overview .our-business .__card-list {
    position: relative;
    gap: 1rem;
    padding-bottom: 4.8rem;
  }

  #group-overview .our-business .__card-list .__col:nth-child(1) {
    padding-top: 0;
  }

  #group-overview .our-business .__card-list .__item {
    padding-bottom: var(--spacing-3, 1.2rem);
  }

  #group-overview .our-business .__card-list .__item .__text {
    letter-spacing: -0.03em;
    padding-top: var(--spacing-3, 1.2rem);
    padding-bottom: var(--spacing-3, 1.2rem);
    padding-left: var(--spacing-4, 1.6rem);
    padding-right: var(--spacing-4, 1.6rem);
  }
}

#company .company-layout {
  display: flex;
  justify-content: space-between;
  col-gap: var(--spacing-9, 3.6rem);
  row-gap: var(--spacing-24, 9.6rem);
}

#company .company-layout .__header {
  width: 32.5rem;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-5, 2rem);
  flex-shrink: 0;
}

#company .company-layout .__header p {
  letter-spacing: -0.03em;
}

#company .company-layout .__body {
  width: 92.5rem;
}

@media (min-width: 1023px) {
  #company .company-layout:not(.--vertical) .__header {
    position: sticky;
    top: var(--spacing-40, 16rem);
    align-self: flex-start;
  }
}

#company .company-layout.--vertical {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-10, 4rem);
}

@media (max-width: 1023px) {
  #company .company-layout {
    display: flex;
    flex-direction: column;
  }

  #company .company-layout .__header {
    width: 100%;
  }

  #company .company-layout .__body {
    width: 100%;
  }
}

@media (max-width: 767px) {
  #company .company-layout.--vertical .grid {
    gap: 4rem;
  }
}

#introduction .sub {
  width: 100%;
  padding-top: var(--spacing-40, 16rem);
  padding-bottom: var(--spacing-40, 16rem);
}

#introduction .sub .container {
  height: 100%;
}

#introduction .sub .container>.__boxed {
  height: 100%;
}

#introduction .sub .__inner {
  height: 100%;
  display: grid;
  grid-template-columns: 1fr min(29.1666666667vw, 56rem) 1fr;
  justify-content: space-between;
  align-items: center;
  column-gap: 2rem;
}

#introduction .sub .__slogan {
  width: 100%;
  max-width: 38.5rem;
}

[lang=en] #introduction .sub .__slogan {
  max-width: 100%;
}

#introduction .sub .__slogan .__lines {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

#introduction .sub .__slogan span {
  display: inline-block;
  width: fit-content;
  letter-spacing: -0.03em;
}

#introduction .sub .__circle {
  position: relative;
  margin: 0 auto;
  width: min(29.1666666667vw, 56rem);
  height: min(29.1666666667vw, 56rem);
  box-sizing: border-box;
}

#introduction .sub .__circle .--spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(16.6666666667vw, 32rem);
  height: min(16.6666666667vw, 32rem);
  transform: translate(-50%, -50%);
  will-change: transform;
}

#introduction .sub .__circle .--spinner svg {
  width: 100%;
  height: 100%;
}

#introduction .sub .__circle .--spinner .paint {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  --start: 85deg;
  background: conic-gradient(from var(--start), #0183d9 0deg, transparent 360deg);
}

#introduction .sub .__circle .--spinner .rotor {
  transform-origin: center;
  animation: spin 1.2s linear infinite;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

#introduction .sub .__circle .--mask {
  position: relative;
  width: 100%;
  height: 100%;
  background-color: #0066DB;
  clip-path: circle(50% at 50% 50%);
  will-change: clip-path, --webkit-clip-path;
}

#introduction .sub .__circle .__image {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  overflow: hidden;
}

#introduction .sub .__circle .__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  will-change: clip-path, --webkit-clip-path;
  user-select: none;
  -webkit-user-drag: none;
}

#introduction .sub .__desc {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-6, 2.4rem);
  max-width: 38.5rem;
  margin-left: auto;
}

#introduction .summary {
  padding-top: var(--spacing-40, 16rem);
  padding-bottom: var(--spacing-40, 16rem);
  background: #E5F0FB;
}

#introduction .summary .__layout {
  display: flex;
  flex-direction: column;
  row-gap: var(--spacing-24, 9.6rem);
}

#introduction .summary .__headline {
  display: grid;
  grid-template-columns: 1fr 34.1145833333vw;
  align-items: center;
  justify-content: space-between;
}

#introduction .summary .__item {
  position: relative;
  width: 100%;
  padding-bottom: 100%;
  background: #fff;
  border-radius: 9999px;
  overflow: hidden;
}

#introduction .summary .__cont {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  row-gap: var(--spacing-9, 3.6rem);
}

#introduction .summary .__icon {
  width: 7.6rem;
  height: 7.6rem;
}

#introduction .summary .__icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

#introduction .summary .__text {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: var(--spacing-2, 0.8rem);
}

#introduction .summary .__text .__value {
  display: flex;
  gap: 1.6rem;
}

#introduction .summary .__text .__value>span {
  display: flex;
  align-items: flex-end;
  gap: 0.4rem;
}

#introduction .summary .__text .__value .--unit {
  padding-bottom: 1.2rem;
}

#introduction .summary .__text .__value .--unit.--en {
  display: none;
  padding-bottom: 0.15em;
}

[lang=en] #introduction .summary .__text .__value .--unit.--en {
  display: block;
}

[lang=en] #introduction .summary .__text .__value .--unit:not(.--en) {
  display: none;
}

#introduction .summary .__text .__value .--date-en-format {
  padding-bottom: 0.3rem;
  display: none;
}

[lang=en] #introduction .summary .__text .__value .--date-en-format {
  display: inline;
}

#introduction .ci {
  position: relative;
  width: 100%;
  padding-top: var(--spacing-50, 20rem);
  padding-bottom: var(--spacing-30, 12rem);
}

#introduction .ci>.container>.__boxed {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-34, 13.6rem);
}

#introduction .ci .__sub-content+.__sub-content {
  margin-top: var(--spacing-30, 12rem);
}

#introduction .ci .__sub-content h4 {
  padding-bottom: var(--spacing-6, 2.4rem);
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

#introduction .ci .__sub-content p {
  margin-top: var(--spacing-7, 2.8rem);
}

#introduction .ci .__sub-content .grid {
  margin-top: var(--spacing-10, 4rem);
}

#introduction .ci .__sub-content .cta-btns {
  margin-top: var(--spacing-10, 4rem);
}

#introduction .ci .ci-banners li {
  border-radius: var(--border-radius-sm);
  overflow: hidden;
}

#introduction .ci .ci-banners li img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#introduction .ci .ci-colors .__color {
  position: relative;
  height: 19.2rem;
  border-radius: var(--border-radius-sm);
}

#introduction .ci .ci-colors .__color:nth-child(1) {
  background-color: #0086c5;
}

#introduction .ci .ci-colors .__color:nth-child(2) {
  background-color: #b6b7bb;
}

#introduction .ci .ci-colors .__color .__cont {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: var(--spacing-7, 2.8rem);
  border-radius: var(--border-radius-sm);
  box-sizing: border-box;
}

#introduction .ci .ci-colors .__color .__cont .__name {
  color: #fff;
  font-size: 3.2rem;
  font-weight: 600;
  line-height: 1.3;
}

#introduction .ci .ci-colors .__color .__cont .__swatch {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-5, 2rem);
}

#introduction .ci .ci-colors .__color .__cont .__swatch-val {
  color: #fff;
  display: inline-flex;
  align-items: center;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: -0.02em;
}

#introduction .ci .ci-colors .__color .__cont .__swatch-val strong {
  font-weight: 500;
}

#introduction .ci .ci-colors .__color .__cont .__swatch-val span {
  padding-left: var(--spacing-2, 0.8rem);
  padding-right: var(--spacing-2, 0.8rem);
}

#introduction .ci .ci-colors .__color .__cont .__swatch-val span:first-child {
  padding-left: 0;
}

#introduction .ci .ci-colors .__color .__cont .__swatch-val span:last-child {
  padding-right: 0;
}

@media (max-width: 1120px) {

  #introduction .ci .ci-banners,
  #introduction .ci .ci-colors {
    grid-template-columns: repeat(1, 1fr);
  }
}

@media (max-width: 1023px) {
  #introduction .sub .__inner {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-34, 13.6rem);
  }

  #introduction .sub .__circle {
    width: 100%;
    height: 100%;
    padding: 0 4rem;
  }

  #introduction .sub .__circle .--spinner {
    width: 87%;
    height: 87%;
  }

  #introduction .sub .__slogan,
  #introduction .sub .__desc {
    max-width: 100%;
  }

  #introduction .summary .__headline {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--spacing-5, 2rem);
  }

  #introduction .summary .__item:not(:first-child) {
    margin-top: -17%;
  }

  #introduction .summary .__list {
    padding: 0 5.3rem;
  }

  #introduction .summary .__cont {
    gap: 1.6rem;
  }

  #introduction .summary .__icon {
    width: 5.6rem;
    height: 5.6rem;
  }

  #introduction .summary .__text {
    gap: 0;
  }

  #introduction .summary .__text .__title {
    font-size: var(--fs-body3);
    line-height: 1.6;
    letter-spacing: -0.02em;
  }

  #introduction .summary .__text .__value {
    gap: 1rem;
  }

  [lang=en] #introduction .summary .__text .__value {
    gap: 0.2rem;
  }

  #introduction .summary .__text .__value strong {
    font-size: var(--fs-title2);
    font-weight: 530;
    line-height: 1.4;
    letter-spacing: -0.02em;
  }

  #introduction .summary .__text .__value .--unit {
    padding-bottom: 0.3rem;
    line-height: 1.32;
  }

  #introduction .summary .__text .__value .--date-en-format {
    font-size: var(--fs-body2);
    line-height: 1.32;
    letter-spacing: -0.02em;
    padding-bottom: 0.3rem;
  }

  #introduction .ci {
    padding-top: var(--spacing-30, 12rem);
    padding-bottom: var(--spacing-30, 12rem);
  }

  #introduction .ci .ci-colors .__color .__cont .__name {
    font-size: 2.4rem;
    line-height: 1.3;
  }
}

@media (max-width: 767px) {
  #introduction .ci .ci-colors .__color {
    height: auto;
    padding-bottom: 42%;
  }
}

#ideology .mission {
  margin-top: var(--spacing-10, 4rem);
}

#ideology .mission__box {
  background-color: #fff;
  border-radius: var(--border-radius-sm);
  padding-top: var(--spacing-8, 3.2rem);
  padding-bottom: var(--spacing-8, 3.2rem);
  padding-left: var(--spacing-10, 4rem);
  padding-right: var(--spacing-10, 4rem);
}

#ideology .mission__box:not(:last-child) {
  margin-bottom: var(--spacing-5, 2rem);
}

@media (max-width: 1023px) {
  #ideology .mission__box {
    padding-top: var(--spacing-6, 2.4rem);
    padding-bottom: var(--spacing-6, 2.4rem);
    padding-left: var(--spacing-8, 3.2rem);
    padding-right: var(--spacing-8, 3.2rem);
  }
}

#ideology .mission__title {
  display: flex;
  align-items: center;
  gap: var(--spacing-6, 2.4rem);
  border-bottom: 1px solid #E5F0FB;
}

#ideology .mission__list-item {
  position: relative;
  padding-left: 0.88em;
  color: #383838;
  margin-bottom: var(--spacing-2, 0.8rem);
}

#ideology .mission__list-item:last-child {
  margin-bottom: 0;
}

#ideology .mission__list-item::before {
  content: "";
  position: absolute;
  top: 0.75em;
  transform: translateY(-50%);
  left: 0;
  width: 0.3em;
  height: 0.3em;
  border-radius: 50%;
  background-color: #0066DB;
}

@media (max-width: 1023px) {
  #ideology .mission__list-item {
    font-size: var(--fs-body3);
    line-height: 1.6;
    letter-spacing: -0.02em;
  }
}

#ideology .popup .__close {
  z-index: 1;
}

#ideology .popup .__header {
  flex-direction: row;
  justify-content: center;
  align-items: flex-end;
  gap: var(--spacing-1, 0.4rem);
  width: 100%;
}

#ideology .popup .__header .cn-text {
  width: 9.6rem;
  height: 3.9rem;
}

@media (max-width: 1023px) {
  #ideology .popup .__header .cn-text {
    width: 7rem;
    height: 2.8rem;
  }
}

#ideology .popup .__body .__headline {
  align-items: flex-end;
  gap: 0;
}

#ideology .popup .__body .__headline img,
#ideology .popup .__body .__headline svg {
  width: 3.2rem;
  height: 3.2rem;
}

@media (max-width: 1023px) {

  #ideology .popup .__body .__headline img,
  #ideology .popup .__body .__headline svg {
    width: 2.7rem;
    height: 2.7rem;
  }
}

#ideology .popup .__body .__article-module {
  padding: var(--spacing-4, 1.6rem);
}

#ideology .__title-img {
  display: flex;
  align-items: flex-end;
  gap: var(--spacing-3, 1.2rem);
}

@media (max-width: 1023px) {
  #ideology .__title-img {
    gap: 0.4rem;
  }
}

#ideology .__title-img .cn-text {
  width: 13.1rem;
  height: auto;
}

@media (max-width: 1023px) {
  #ideology .__title-img .cn-text {
    width: 8.1rem;
  }
}

#ideology .__title-img h4 {
  line-height: 1;
}

#business .left-tab-container .__content .content-list {
  gap: var(--spacing-24, 9.6rem);
}

#business .left-tab-container .__content .tab-list {
  margin-bottom: var(--spacing-20, 8rem);
  flex-wrap: wrap;
}

@media (max-width: 767px) {
  #business .left-tab-container .__content .tab-list {
    flex-wrap: nowrap;
  }
}

#business .left-tab-container .__content .--no-gap {
  gap: var(--spacing-0, 0rem);
}

#business .left-tab-container .__content .--gap-4 {
  gap: var(--spacing-4, 1.6rem);
}

#business .left-tab-container .__content .--gap-5 {
  gap: var(--spacing-5, 2rem);
}

#business .left-tab-container .__content .--gap-8 {
  gap: var(--spacing-8, 3.2rem);
}

#business .left-tab-container .__content .--gap-10 {
  gap: var(--spacing-10, 4rem);
}

#business .left-tab-container .__content .--gap-12 {
  gap: var(--spacing-12, 4.8rem);
}

#business .left-tab-container .__content .--gap-20 {
  gap: var(--spacing-20, 8rem);
}

#business .left-tab-container .__content .--gap-24 {
  gap: var(--spacing-24, 9.6rem);
}

#business .left-tab-container .__content .--gap-32 {
  gap: var(--spacing-32, 12.8rem);
}

#business .left-tab-container .__content .--gap-title2 {
  gap: var(--fs-title2);
}

#business .left-tab-container .__content .--mt-12 {
  margin-top: 1.2rem;
}

#business .left-tab-container .__content .--mt-16 {
  margin-top: 1.6rem;
}

#business .left-tab-container .__head .__title:has(.numbering) {
  display: flex;
  align-items: center;
  gap: var(--spacing-2, 0.8rem);
}

#business .left-tab-container .__head .__title .numbering {
  flex-shrink: 0;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: #f6f6f6;
}

#business .left-tab-container .__body {
  display: flex;
  flex-direction: column;
}

#business .caption {
  margin-top: 1rem;
}

@media (max-width: 1023px) {
  #business .caption {
    margin-top: 0.6rem;
  }
}

#business #city-gas-using .accordion__titlebox {
  gap: var(--spacing-2, 0.8rem);
}

@media (max-width: 767px) {
  #business #city-gas-using .accordion__titlebox {
    align-items: flex-start;
  }
}

@media (max-width: 767px) {
  #business #city-gas-using .accordion__header {
    align-items: flex-start;
  }
}

#business #city-gas-using .accordion .numbering {
  flex-shrink: 0;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
}

#business #city-gas-using .accordion .numbering.--gray {
  background-color: #f6f6f6;
}

#business #city-gas-using #cogeneration-list .__item .co-overview {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-8, 3.2rem);
}

@media (max-width: 767px) {
  #business #city-gas-using #cogeneration-list .__item .co-overview {
    flex-direction: column-reverse;
    gap: var(--spacing-5, 2rem);
  }
}

#business #city-gas-using .gas-t-border::after {
  display: none;
}

#business #city-gas-using .gas-list-bullet {
  margin: 0;
  padding-left: 0.5em;
}

#business #city-gas-using .gas-list-bullet li {
  position: relative;
  padding-left: 0.7em;
}

#business #city-gas-using .gas-list-bullet li::before {
  content: "";
  position: absolute;
  top: 0.7em;
  transform: translateY(-50%);
  left: 0;
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  background-color: #000;
}

#business #city-gas-using .functional-gas-img-wrapper {
  display: flex;
  gap: 2rem;
}

@media (max-width: 767px) {
  #business #city-gas-using .functional-gas-img-wrapper {
    flex-direction: column;
  }
}

#business #city-gas-using .gas-system-list .system-item {
  justify-content: space-between;
}

#business #city-gas-using .gas-system-list .gas-system-img {
  width: 20rem;
  aspect-ratio: 1/1;
  object-fit: cover;
}

@media (max-width: 767px) {
  #business #city-gas-using .gas-system-list .gas-system-img {
    width: 100%;
    aspect-ratio: 294/185;
  }
}

#business #city-gas-using .gas-system-list .gas-item-flex {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

#business .system-list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-5, 2rem);
}

#business .system-item {
  display: flex;
  column-gap: var(--spacing-12, 4.8rem);
  row-gap: var(--spacing-6, 2.4rem);
  border-radius: var(--border-radius-md);
  border: 1px solid #e0e0e0;
}

#business .system-item__icon {
  margin-top: 0.3rem;
}

#business .system-item__icon img {
  width: 6rem;
  height: 6rem;
  object-fit: contain;
}

#business .system-item__cont {
  display: grid;
  grid-template-columns: 1fr auto;
  column-gap: var(--spacing-34, 13.6rem);
  row-gap: var(--spacing-12, 4.8rem);
  align-items: center;
}

#business .system-item__cont .__extra {
  display: flex;
}

#business .system-item__footer {
  grid-area: 2/1/3/-1;
}

#business .system-item__footer .grid {
  gap: var(--spacing-3, 1.2rem);
}

#business .system-item__footer .cta-btn {
  display: none;
}

#business .system-item__list li::before {
  content: "•";
  display: inline-block;
  width: 3rem;
  text-align: center;
  font: inherit;
}

#business .system-item--column {
  flex-direction: column;
  row-gap: 0;
}

#business .system-item .--gap-10 {
  display: flex;
  gap: var(--spacing-10, 4rem);
}

#business .system-item .__system-file {
  padding: var(--spacing-5, 2rem);
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #f6f6f6;
  border-radius: var(--border-radius-sm);
}

#business .system-item .__system-file .__download {
  display: flex;
  align-items: center;
  column-gap: var(--spacing-3, 1.2rem);
  color: #0066DB;
}

#business .system-item .__system-file .__download .__icon {
  width: 1.8rem;
  height: 1.8rem;
}

#business .system-item .__system-file .__download .__icon svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

@media (max-width: 767px) {
  #business .system-item {
    flex-direction: column;
  }

  #business .system-item__cont {
    grid-template-columns: 1fr;
    row-gap: var(--spacing-20, 8rem);
  }

  #business .system-item:has(.system-item__footer) {
    padding-left: var(--spacing-7, 2.8rem);
    padding-right: var(--spacing-7, 2.8rem);
  }

  #business .system-item:has(.system-item__footer) .system-item__cont {
    row-gap: var(--spacing-8, 3.2rem);
  }

  #business .system-item:has(.system-item__footer) .system-item__cont .__extra {
    display: none;
  }

  #business .system-item:has(.system-item__footer) .system-item__cont .cta-btn {
    display: inline-flex;
  }

  #business .system-item__footer {
    grid-area: auto;
  }

  #business .system-item__icon {
    margin-top: 0.2rem;
  }

  #business .system-item__icon img {
    width: 3.6rem;
    height: 3.6rem;
  }

  #business .system-item__list li::before {
    width: 2.5rem;
  }
}

#business .ca-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: var(--spacing-8, 3.2rem);
  row-gap: var(--spacing-5, 2rem);
}

#business .ca-item {
  display: flex;
  gap: var(--spacing-8, 3.2rem);
  padding: 1rem var(--spacing-12, 48px) 1rem var(--spacing-3, 12px);
  border-radius: var(--border-radius-sm);
  background: #f6f6f6;
}

#business .ca-item__image {
  flex-shrink: 0;
  width: 16rem;
  height: 16rem;
}

#business .ca-item__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#business .ca-item__txt {
  flex: 1;
  padding: 1rem 0;
}

@media (max-width: 1023px) {
  #business .ca-list {
    grid-template-columns: 1fr;
  }

  #business .ca-item__image {
    width: 10rem;
    height: 10rem;
  }
}

#business .accordion {
  border: 1px solid #e0e0e0;
  border-radius: var(--border-radius-sm);
}

#business .accordion__header {
  padding-left: var(--spacing-9, 3.6rem);
  padding-right: var(--spacing-9, 3.6rem);
}

#business .accordion__inner {
  border-top: 0;
  padding-top: 0;
  padding-bottom: var(--spacing-6, 2.4rem);
}

#business #cs .accordion__header {
  padding-left: var(--spacing-7, 2.8rem);
  padding-right: var(--spacing-7, 2.8rem);
}

#business #cs .accordion__inner {
  padding-top: var(--spacing-3, 1.2rem);
  padding-left: var(--spacing-7, 2.8rem);
  padding-right: var(--spacing-7, 2.8rem);
}

#history .sub-kv-area {
  padding-bottom: 0;
}

[lang=en] #history .sticky-nav .__list {
  gap: var(--spacing-14, 5.6rem);
}

[lang=en] #history .sticky-nav .__item a span {
  line-height: 1.4;
}

#history .visual-intro {
  position: relative;
  width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
}

#history .visual-intro .visual-intro__inner {
  position: relative;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  left: 0;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

#history .visual-intro .visual-mask {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

#history .visual-intro .visual-mask__reveal {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 0;
  height: 0;
  border-radius: 50%;
  overflow: hidden;
  will-change: transform, width, height, border-radius;
}

#history .visual-intro .visual-mask__image {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100vw;
  height: 100vh;
  object-fit: cover;
  transform: translate(-50%, -50%);
}

#history .visual-intro .visual-mask__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  pointer-events: none;
}

#history .visual-intro h3 {
  width: 100%;
  opacity: 0;
  color: #fff;
}

#history .history-list {
  position: relative;
  min-height: 100vh;
  padding-bottom: var(--spacing-50, 20rem);
  opacity: 0;
  transition: opacity 1.2s cubic-bezier(0.42, 0, 0.58, 1);
}

#history .history-list.--active {
  opacity: 1;
}

#history .history-list .__progress-bar {
  position: absolute;
  top: 0;
  left: 0;
  width: 0.3rem;
  height: 100%;
  background-color: #e0e0e0;
}

#history .history-list .__progress-bar.--fixed {
  position: absolute;
  top: calc(var(--header-height) / 2 + 14.6296296296vh);
  left: 50%;
  transform: translateX(-50%);
  height: calc(100% - (var(--header-height) / 2 + 14.6296296296vh) - var(--spacing-50));
  background-color: #e0e0e0;
  z-index: 10;
}

#history .history-list .__progress-bar.--fixed.is-sticky {
  position: fixed;
  top: 0;
  height: 100vh;
}

@media (max-width: 1023px) {
  #history .history-list .__progress-bar.--fixed {
    display: none;
  }
}

#history .history-list .__progress-bar.--left {
  top: 100%;
  left: 0.7rem;
  height: calc(var(--height) - 3.4rem - 2.4rem);
}

@media (min-width: 1023px) {
  #history .history-list .__progress-bar.--left {
    display: none;
  }
}

#history .history-list .__progress-bar span {
  position: absolute;
  display: inline-block;
  width: 0.3rem;
  height: 0%;
  background-color: #0066DB;
}

#history .history-list .__progress-bar span::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 0.9rem;
  height: 0.9rem;
  border-radius: 50%;
  background-color: #0066DB;
}

#history .history-list .__progress-bar span::before {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 50%;
  transform: translateX(-50%);
  width: 1.8rem;
  height: 1.8rem;
  border-radius: 50%;
  background-color: #0066DB;
  opacity: 0.2;
}

#history .history-list .history-list__item {
  position: relative;
  display: flex;
}

@media (max-width: 1023px) {
  #history .history-list .history-list__item {
    flex-direction: column;
  }
}

#history .history-list .history-list__item:first-child .__content {
  padding-top: 0;
}

@media (min-width: 1023px) {
  #history .history-list .history-list__item:first-child .__content {
    margin-top: calc(var(--header-height) / 2 + 14.6296296296vh);
  }
}

#history .history-list .history-list__item .__left-article {
  position: sticky;
  top: 0;
  left: 0;
  width: 50%;
  height: fit-content;
  padding-right: 7.5520833333vw;
  box-sizing: border-box;
  padding-top: calc(var(--header-height) / 2 + 14.6296296296vh);
  padding-bottom: var(--spacing-14, 5.6rem);
}

@media (max-width: 1023px) {
  #history .history-list .history-list__item .__left-article {
    width: 100%;
    padding-right: 0;
    padding-bottom: 3.4rem;
    margin-bottom: calc(var(--height) - 34px);
    z-index: 2;
    background-color: #fff;
    padding-top: var(--spacing-50, 20rem);
  }
}

#history .history-list .history-list__item .__left-article p {
  color: #0066DB;
  padding-bottom: 0.6rem;
}

#history .history-list .history-list__item .__left-article h3 {
  padding-bottom: 5.1851851852vh;
}

@media (min-width: 1023px) {
  #history .history-list .history-list__item .__left-article h3 {
    font-size: clamp(4.2rem, 2.5vw, 5.2rem);
  }
}

@media (max-width: 1600px) {
  #history .history-list .history-list__item .__left-article h3 {
    padding-bottom: 2rem;
  }
}

@media (max-width: 1023px) {
  #history .history-list .history-list__item .__left-article h3 {
    padding-bottom: var(--spacing-7, 2.8rem);
  }
}

#history .history-list .history-list__item .__left-article .__img {
  position: relative;
  aspect-ratio: 655/344;
  border-radius: var(--border-radius-sm);
  overflow: hidden;
}

#history .history-list .history-list__item .__left-article .__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#history .history-list .history-list__item .__left-article .__img .img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  clip-path: ellipse(50% 0% at 50% 100%);
  transition: clip-path 0.8s, transform 0.8s;
  transform: scale(1.1);
}

#history .history-list .history-list__item .__left-article .__img .img.--default {
  clip-path: ellipse(300% 300% at 50% 100%);
  transform: scale(1);
}

#history .history-list .history-list__item .__left-article .__img .img.show {
  clip-path: ellipse(300% 300% at 50% 100%);
  transform: scale(1);
}

#history .history-list .history-list__item .__content {
  position: relative;
  width: 50%;
  padding-left: 4.9479166667vw;
  box-sizing: border-box;
  padding-top: calc(var(--header-height) / 2 + 14.6296296296vh);
}

@media (max-width: 1023px) {
  #history .history-list .history-list__item .__content {
    width: 100%;
    padding-left: 0;
    padding-top: 0;
    padding-bottom: 2.4rem;
    margin-top: calc(-1 * (var(--height) - 40px));
  }
}

#history .history-list .history-list__item .__content .__year-group {
  padding-top: var(--spacing-12, 4.8rem);
}

@media (max-width: 1023px) {
  #history .history-list .history-list__item .__content .__year-group {
    padding-top: 0;
    padding-left: 3.3rem;
  }
}

#history .history-list .history-list__item .__content .__year-group .__year-block {
  display: flex;
  align-items: flex-start;
  gap: var(--spacing-10, 4rem);
}

#history .history-list .history-list__item .__content .__year-group .__year-block:not(:last-child) {
  margin-bottom: var(--spacing-20, 8rem);
}

@media (max-width: 1023px) {
  #history .history-list .history-list__item .__content .__year-group .__year-block {
    flex-direction: column;
    gap: var(--spacing-4, 1.6rem);
  }
}

#history .history-list .history-list__item .__content .__year-group .__year-block h4 {
  min-width: 10rem;
}

@media (min-width: 1023px) {
  #history .history-list .history-list__item .__content .__year-group .__year-block h4 {
    line-height: 1;
  }
}

#history .history-list .history-list__item .__content .__year-group .__year-block .__event-list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-4, 1.6rem);
}

#history .history-list .history-list__item .__content .__year-group .__year-block .__event {
  display: flex;
  align-items: flex-start;
  padding: 0.4rem 0;
  gap: var(--spacing-4, 1.6rem);
}

@media (max-width: 1023px) {
  #history .history-list .history-list__item .__content .__year-group .__year-block .__event {
    width: 100%;
    gap: var(--spacing-3, 1.2rem);
  }
}

#history .history-list .history-list__item .__content .__year-group .__year-block .__month {
  min-width: 4.4rem;
  color: #0066DB;
}

[lang=en] #history .history-list .history-list__item .__content .__year-group .__year-block .__month {
  min-width: 9rem;
}

#history .history-list .history-list__item .__content .__year-group .__year-block .__desc em {
  display: block;
}

#history .history-list .history-list__item .__content .__year-group .__year-block .__desc em:not(last-child) {
  margin-bottom: 0.8rem;
}

#history .banners {
  padding-bottom: var(--spacing-34, 13.6rem);
}

#award .sub-kv-area {
  padding-bottom: 0;
}

@media (max-width: 1023px) {
  #award .left-tab-layout {
    padding-top: var(--spacing-40, 16rem);
    gap: var(--spacing-20, 8rem);
  }
}

#award .section__head {
  display: flex;
  justify-content: space-between;
}

@media (max-width: 1023px) {
  #award .section__head {
    flex-direction: column;
    gap: var(--spacing-5, 2rem);
  }
}

#award .section__head p {
  width: 65.5rem;
}

@media (max-width: 1023px) {
  #award .section__head p {
    width: 100%;
  }
}

#award .left-tab-container .left-tab-layout {
  padding-top: var(--spacing-40, 16rem);
  padding-bottom: var(--spacing-40, 16rem);
}

@media (max-width: 1023px) {
  #award .left-tab-container .left-tab-layout {
    padding-bottom: var(--spacing-50, 20rem);
  }

  #award .left-tab-container .left-tab-list.--award-tab .__item.is-active a {
    border-bottom: 2px solid #0066DB;
  }
}

#award .awards__list {
  column-gap: var(--spacing-10, 4rem);
}

#award .awards__item {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background-color: #fff;
  border-radius: var(--border-radius-sm);
  padding-top: var(--spacing-8, 3.2rem);
  padding-bottom: var(--spacing-8, 3.2rem);
  padding-left: var(--spacing-8, 3.2rem);
  padding-right: var(--spacing-8, 3.2rem);
  text-align: center;
}

#award .awards__meta {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  column-gap: 2rem;
  row-gap: 0;
}

#award .awards__meta .awards__org:first-child {
  position: relative;
}

#award .awards__meta .awards__org:first-child::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  transform: translate3d(0, -50%, 0);
  right: -1rem;
  width: 1px;
  height: 1.2rem;
  background-color: #0066DB;
  opacity: 0.5;
}

[lang=en] #award .awards__meta .awards__org:first-child::after {
  display: none;
}

[lang=en] #award .awards__meta {
  flex-direction: column;
}

#award .awards__title {
  padding-bottom: var(--spacing-8, 3.2rem);
  padding-top: var(--spacing-2, 0.8rem);
}

@media screen and (max-width: 1291px) {
  #award .awards__title br.br-1290 {
    display: none;
  }
}

#award .awards__img {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 20.6rem;
  background-color: rgba(229, 240, 251, 0.2);
  border-radius: var(--border-radius-sm);
  border: 1px solid #e0e0e0;
}

@media (max-width: 1023px) {
  #award .awards__img {
    height: 12.2rem;
  }
}

#award .awards__img img {
  width: auto;
  height: 14.4rem;
}

@media (max-width: 1023px) {
  #award .awards__img img {
    height: 10.5rem;
  }
}

#award .award-history__top {
  position: relative;
  margin-bottom: var(--spacing-16, 6.4rem);
}

#award .award-history__top-img {
  border-radius: var(--border-radius-md);
  overflow: hidden;
}

#award .award-history__top-img img {
  width: 100%;
  height: auto;
}

#award .award-history__top-img h4 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
  color: #fff;
  z-index: 1;
}

#award .award-history__item {
  margin-bottom: var(--spacing-20, 8rem);
}

#award .award-history__item:last-child {
  margin-bottom: 0;
}

#award .award-history__year-block {
  display: flex;
  align-items: flex-start;
  padding-top: var(--spacing-1, 0.4rem);
  padding-bottom: var(--spacing-1, 0.4rem);
  display: grid;
  grid-template-columns: min-content auto 1fr;
  margin-bottom: var(--spacing-4, 1.6rem);
  align-items: center;
}

[lang=en] #award .award-history__year-block {
  row-gap: 0.8rem;
}

@media (max-width: 1023px) {
  [lang=en] #award .award-history__year-block {
    display: flex;
    flex-direction: column;
    gap: 0;
  }
}

#award .award-history__year-block:last-child {
  margin-bottom: 0;
}

[lang=en] #award .award-history__year-block:has(.award-history__badge) .award-history__month {
  grid-area: 1/1/3/2;
}

@media (max-width: 1023px) {
  #award .award-history__year-block:has(.award-history__badge) .award-history__desc {
    padding-top: 0.4rem;
  }
}

[lang=en] #award .award-history__year-block:has(.award-history__badge) .award-history__desc {
  padding-top: 0;
  grid-area: 2/2/3/-1;
}

@media (max-width: 1023px) {
  [lang=en] #award .award-history__year-block:has(.award-history__badge) .award-history__desc {
    margin-top: 0.6rem;
  }
}

@media (max-width: 1023px) {
  #award .award-history__year-block {
    flex-direction: column;
    align-items: center;
  }

  [lang=en] #award .award-history__year-block {
    align-items: flex-start;
  }
}

#award .award-history__month {
  min-width: 4.4rem;
  margin-right: var(--spacing-4, 1.6rem);
}

@media (max-width: 1023px) {
  #award .award-history__month {
    margin-right: 0.4rem;
  }
}

[lang=en] #award .award-history__month {
  min-width: 4rem;
  grid-area: 1/1/2/2;
}

#award .award-history__badge {
  display: inline-block;
  margin-right: 0.8rem;
}

#award .award-history__badge span {
  display: inline-block;
  padding: 0.6rem 1.6rem;
  border-radius: 2.2rem;
  background-color: rgba(229, 240, 251, 0.5);
  white-space: pre-line;
}

[lang=en] #award .award-history__badge span {
  white-space: normal;
}

@media (max-width: 1023px) {
  #award .award-history__badge {
    margin-right: 0;
  }

  #award .award-history__badge span {
    padding: 0.4rem 1.2rem;
  }
}

[lang=en] #award .award-history__badge {
  grid-area: 1/2/2/-1;
  margin-right: 0;
}

@media (max-width: 1023px) {
  [lang=en] #award .award-history__badge {
    margin-top: 0.4rem;
  }

  [lang=en] #award .award-history__badge span {
    white-space: pre-wrap;
    border-radius: 0.8rem;
  }
}

@media (max-width: 1023px) {
  #award .award-history__desc {
    grid-area: 2/1/3/-1;
  }
}

[lang=en] #award .award-history__desc {
  grid-area: 1/2/2/-1;
}

#award .banners {
  padding-bottom: var(--spacing-30, 12rem);
}

#sustainable .headline-wrapper {
  position: relative;
}

#sustainable .headline-wrapper .breadcrumb {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

#sustainable .__content {
  overflow: hidden;
}

#sustainable .__content.--overflow-visible {
  overflow: visible;
}

#sustainable .__content .--no-gap {
  gap: var(--spacing-0, 0rem);
}

#sustainable .__content .--gap-5 {
  gap: var(--spacing-5, 2rem);
}

#sustainable .__content .--gap-9 {
  gap: var(--spacing-9, 3.6rem);
}

#sustainable .__content .--gap-10 {
  gap: var(--spacing-10, 4rem);
}

#sustainable .__content .--gap-12 {
  gap: var(--spacing-12, 4.8rem);
}

#sustainable .__content .--gap-14 {
  gap: var(--spacing-14, 5.6rem);
}

#sustainable .__content .--gap-30 {
  gap: var(--spacing-30, 12rem);
}

#sustainable .__content .--gap-32 {
  gap: var(--spacing-32, 12.8rem);
}

#sustainable .__content .__head.--has-extra {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}

#sustainable .divider {
  width: 100%;
  height: 1px;
  background: #e0e0e0;
  margin-top: var(--spacing-10, 4rem);
  margin-bottom: var(--spacing-10, 4rem);
}

#sustainable .cta-btn {
  display: flex;
  justify-content: center;
}

#sustainable .gray-box {
  display: flex;
  flex-direction: column;
  width: 100%;
  box-sizing: border-box;
  border-radius: var(--border-radius-sm);
  background-color: #f6f6f6;
  gap: var(--spacing-10, 4rem);
  padding: var(--spacing-7, 2.8rem);
}

#sustainable .gray-box.--lg {
  padding-top: var(--spacing-9, 3.6rem);
  padding-bottom: var(--spacing-9, 3.6rem);
}

#sustainable .gray-box.--sm {
  padding-top: var(--spacing-5, 2rem);
  padding-bottom: var(--spacing-5, 2rem);
}

#sustainable .gray-box.--border {
  border: 1px solid #e0e0e0;
}

#sustainable .gray-border-box {
  border: 1px solid #e0e0e0;
  border-radius: var(--border-radius-sm);
  overflow: hidden;
}

#sustainable .gray-border-box--has-head .gray-border-box__head {
  border-bottom: 1px solid #e0e0e0;
  background-color: #f6f6f6;
  padding: var(--spacing-4, 1.6rem);
}

#sustainable .gray-border-box__body,
#sustainable .gray-border-box__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}

#sustainable .gray-border-box__inner.--width-740 {
  width: 74rem;
}

@media (max-width: 1023px) {
  #sustainable .gray-border-box__inner.--width-740 {
    width: 100%;
  }
}

#sustainable .gray-border-box img {
  width: 8rem;
  height: 8rem;
}

#sustainable .gray-border-box strong,
#sustainable .gray-border-box p {
  display: inline-block;
  width: 100%;
}

#sustainable .numbering {
  flex-shrink: 0;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
}

#sustainable .numbering.--gray {
  background-color: #f6f6f6;
}

#sustainable .img-box {
  width: 100%;
  border-radius: var(--border-radius-sm);
  overflow: hidden;
  box-sizing: border-box;
}

#sustainable .img-box img {
  width: 100%;
  height: auto;
}

#sustainable .img-box.--border {
  border: 1px solid #eee;
}

#sustainable .accordion__list {
  margin: 0;
  padding: 0;
}

#sustainable .accordion__item {
  border-radius: var(--border-radius-sm);
  border: 1px solid #e0e0e0;
  overflow: hidden;
}

#sustainable .accordion__item+.accordion__item {
  margin-top: var(--spacing-3, 1.2rem);
}

#sustainable .accordion__item.is-open .accordion__chevron img,
#sustainable .accordion__item.is-open .accordion__chevron svg {
  transform: rotate(180deg);
}

#sustainable .accordion__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding-top: var(--spacing-6, 2.4rem);
  padding-bottom: var(--spacing-6, 2.4rem);
  padding-left: var(--spacing-7, 2.8rem);
  padding-right: var(--spacing-7, 2.8rem);
}

#sustainable .accordion__header:has(.numbering) {
  gap: var(--spacing-3, 1.2rem);
}

#sustainable .accordion__header:has(.numbering) .accordion__titlebox {
  gap: var(--spacing-3, 1.2rem);
}

#sustainable .accordion__titlebox {
  display: flex;
  align-items: center;
  gap: var(--spacing-4, 1.6rem);
}

#sustainable .accordion__icon img {
  display: block;
  width: 2.4rem;
  height: 2.4rem;
}

#sustainable .accordion__toggle {
  inline-size: 3.2rem;
  block-size: 3.2rem;
  display: grid;
  place-items: center;
}

#sustainable .accordion__chevron img,
#sustainable .accordion__chevron svg {
  transition: transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

#sustainable .accordion__inner {
  padding-bottom: var(--spacing-6, 2.4rem);
  padding-left: var(--spacing-8, 3.2rem);
  padding-right: var(--spacing-8, 3.2rem);
}

#sustainable .accordion__content {
  border-radius: var(--border-radius-sm);
  background-color: #f6f6f6;
  padding-top: var(--spacing-6, 2.4rem);
  padding-bottom: var(--spacing-6, 2.4rem);
  padding-left: var(--spacing-8, 3.2rem);
  padding-right: var(--spacing-8, 3.2rem);
}

#sustainable .accordion--white .accordion__item {
  background-color: #fff;
  border: none;
}

#sustainable .accordion--white .accordion__inner {
  border-top: 1px solid #eee;
  padding-top: var(--spacing-6, 2.4rem);
  padding-bottom: var(--spacing-6, 2.4rem);
  padding-left: var(--spacing-8, 3.2rem);
  padding-right: var(--spacing-8, 3.2rem);
}

#sustainable .accordion--white .accordion__content {
  padding: 0;
  background-color: #fff;
}

#sustainable .accordion {
  /* 선택: 경계선도 없는 완전 플랫 버전 */
}

#sustainable .accordion--white.accordion--flat .accordion__item {
  border: 0;
  box-shadow: none;
}

#sustainable .accordion--white.accordion--flat .accordion__item+.accordion__item {
  margin-top: var(--spacing-2, 0.8rem);
  border-top: 1px solid #eee;
}

#sustainable .activity-slider {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-5, 2rem);
}

#sustainable .activity-slider__viewer {
  border-radius: var(--border-radius-sm);
  overflow: hidden;
}

#sustainable .activity-slider__viewer img {
  width: 100%;
  height: auto;
  aspect-ratio: 1/0.51;
  object-fit: cover;
}

#sustainable .activity-slider .swiper {
  width: 100%;
  position: relative;
  padding: var(--spacing-4, 1.6rem);
  box-sizing: border-box;
  border-radius: var(--border-radius-sm);
  background: #f6f6f6;
  overflow: hidden;
}

#sustainable .activity-slider .swiper-slide {
  border-radius: var(--border-radius-sm);
  overflow: hidden;
  cursor: pointer;
}

#sustainable .activity-slider .swiper-slide img {
  height: auto;
  width: 100%;
  aspect-ratio: 1/0.537;
  object-fit: cover;
}

#sustainable .activity-slider .swiper-slide::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
  transition: opacity 0.2s cubic-bezier(0.42, 0, 0.58, 1);
  z-index: 1;
  opacity: 0;
}

#sustainable .activity-slider .swiper-slide:not(.--active)::after {
  opacity: 1;
}

#sustainable .activity-slider .swiper-navigator .swiper-button-prev,
#sustainable .activity-slider .swiper-navigator .swiper-button-next {
  margin: 0;
  padding: 0;
  width: 3.6rem;
  height: 3.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #E5F0FB;
  border-radius: var(--border-radius-sm);
  top: unset;
  left: unset;
  right: unset;
  bottom: unset;
  opacity: 1;
  transition: background 0.2s cubic-bezier(0.42, 0, 0.58, 1);
}

#sustainable .activity-slider .swiper-navigator .swiper-button-prev::after,
#sustainable .activity-slider .swiper-navigator .swiper-button-next::after {
  content: none;
}

#sustainable .activity-slider .swiper-navigator .swiper-button-prev .__icon,
#sustainable .activity-slider .swiper-navigator .swiper-button-next .__icon {
  width: 2rem;
  height: 2rem;
  color: #0066DB;
  transition: color 0.2s cubic-bezier(0.42, 0, 0.58, 1);
}

#sustainable .activity-slider .swiper-navigator .swiper-button-prev .__icon svg,
#sustainable .activity-slider .swiper-navigator .swiper-button-next .__icon svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

#sustainable .activity-slider .swiper-navigator .swiper-button-prev:hover,
#sustainable .activity-slider .swiper-navigator .swiper-button-next:hover {
  background: #0066DB;
}

#sustainable .activity-slider .swiper-navigator .swiper-button-prev:hover .__icon,
#sustainable .activity-slider .swiper-navigator .swiper-button-next:hover .__icon {
  color: #fff;
}

#sustainable .activity-slider .swiper-navigator .swiper-button-prev.swiper-button-disabled,
#sustainable .activity-slider .swiper-navigator .swiper-button-next.swiper-button-disabled {
  cursor: not-allowed;
  pointer-events: auto;
  background: #e0e0e0;
}

#sustainable .activity-slider .swiper-navigator .swiper-button-prev.swiper-button-disabled .__icon,
#sustainable .activity-slider .swiper-navigator .swiper-button-next.swiper-button-disabled .__icon {
  color: #767676;
}

#sustainable .activity-slider .swiper-navigator .swiper-button-prev {
  top: 50%;
  transform: translateY(-50%);
  left: calc(var(--spacing-4) + 1.6rem);
}

#sustainable .activity-slider .swiper-navigator .swiper-button-next {
  top: 50%;
  transform: translateY(-50%);
  right: calc(var(--spacing-4) + 1.6rem);
}

@media (max-width: 767px) {
  #sustainable .activity-slider .swiper-slide {
    border-radius: var(--border-radius-sm);
  }

  #sustainable .activity-slider .swiper-slide.--active::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 3px solid #0066DB;
    border-radius: var(--border-radius-sm);
  }

  #sustainable .activity-slider .swiper-navigator .swiper-button-next,
  #sustainable .activity-slider .swiper-navigator .swiper-button-prev {
    width: 2.2rem;
    height: 2.2rem;
    border-radius: var(--border-radius-xs);
  }

  #sustainable .activity-slider .swiper-navigator .swiper-button-next .__icon,
  #sustainable .activity-slider .swiper-navigator .swiper-button-prev .__icon {
    width: 1.2rem;
    height: 1.2rem;
  }

  #sustainable .activity-slider .swiper-navigator .swiper-button-prev {
    left: calc(var(--spacing-4) + 0.8rem);
  }

  #sustainable .activity-slider .swiper-navigator .swiper-button-next {
    right: calc(var(--spacing-4) + 0.8rem);
  }
}

#sustainable .member-item {
  cursor: pointer;
}

#sustainable .member-item .__image {
  width: 100%;
  border-radius: 9999px;
  border: 1px solid #e0e0e0;
  overflow: hidden;
  box-sizing: border-box;
}

#sustainable .member-item .__image img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
}

#sustainable .awards-slider .__image {
  border-radius: var(--border-radius-sm);
  overflow: hidden;
}

#sustainable .awards-slider .__image img {
  width: 100%;
  aspect-ratio: 1/1;
}

#sustainable .awards-slider .swiper:has(.award-card) {
  overflow: visible;
}

#sustainable .awards-slider .swiper-slide.award-card {
  padding: var(--spacing-6, 2.4rem);
  background: rgba(229, 240, 251, 0.5);
  box-sizing: border-box;
  border-radius: var(--border-radius-sm) var(--border-radius-sm) 0 0;
  height: auto;
}

#sustainable .awards-slider .swiper-slide.award-card .__image {
  border-radius: 9999px;
  overflow: hidden;
}

#sustainable .awards-swiper-navigator {
  position: relative;
  display: flex;
  align-items: center;
  gap: var(--spacing-5, 2rem);
}

#sustainable .awards-swiper-navigator .swiper-button-prev,
#sustainable .awards-swiper-navigator .swiper-button-next {
  position: relative;
  margin: 0;
  padding: 0;
  width: 3.6rem;
  height: 3.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #E5F0FB;
  border-radius: var(--border-radius-sm);
  top: unset;
  left: unset;
  right: unset;
  bottom: unset;
  opacity: 1;
  transition: background 0.2s cubic-bezier(0.42, 0, 0.58, 1);
}

#sustainable .awards-swiper-navigator .swiper-button-prev::after,
#sustainable .awards-swiper-navigator .swiper-button-next::after {
  content: none;
}

#sustainable .awards-swiper-navigator .swiper-button-prev .__icon,
#sustainable .awards-swiper-navigator .swiper-button-next .__icon {
  width: 2rem;
  height: 2rem;
  color: #0066DB;
  transition: color 0.2s cubic-bezier(0.42, 0, 0.58, 1);
}

#sustainable .awards-swiper-navigator .swiper-button-prev .__icon svg,
#sustainable .awards-swiper-navigator .swiper-button-next .__icon svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

#sustainable .awards-swiper-navigator .swiper-button-prev:hover,
#sustainable .awards-swiper-navigator .swiper-button-next:hover {
  background: #0066DB;
}

#sustainable .awards-swiper-navigator .swiper-button-prev:hover .__icon,
#sustainable .awards-swiper-navigator .swiper-button-next:hover .__icon {
  color: #fff;
}

#sustainable .awards-swiper-navigator .swiper-button-prev.swiper-button-disabled,
#sustainable .awards-swiper-navigator .swiper-button-next.swiper-button-disabled {
  cursor: not-allowed;
  pointer-events: auto;
  background: #e0e0e0;
}

#sustainable .awards-swiper-navigator .swiper-button-prev.swiper-button-disabled .__icon,
#sustainable .awards-swiper-navigator .swiper-button-next.swiper-button-disabled .__icon {
  color: #767676;
}

@media (max-width: 767px) {
  #sustainable .awards-swiper-navigator {
    gap: 1.4rem;
  }

  #sustainable .awards-swiper-navigator .swiper-button-next,
  #sustainable .awards-swiper-navigator .swiper-button-prev {
    width: 2.2rem;
    height: 2.2rem;
    border-radius: var(--border-radius-xs);
  }

  #sustainable .awards-swiper-navigator .swiper-button-next .__icon,
  #sustainable .awards-swiper-navigator .swiper-button-prev .__icon {
    width: 1.2rem;
    height: 1.2rem;
  }
}

#sustainable .event-banner {
  display: grid;
  grid-template-columns: 37.7% 1fr;
  gap: var(--spacing-24, 9.6rem);
  align-items: center;
}

#sustainable .event-banner__image img {
  width: 100%;
  aspect-ratio: 400/561;
  object-fit: cover;
}

#sustainable .event-banner__text .__inner {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-10, 4rem);
}

#sustainable .event-banner__text .__title {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-2, 0.8rem);
}

#sustainable .event-banner__text .__detail-list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-4, 1.6rem);
}

#sustainable .event-banner__text .__detail-item {
  display: grid;
  grid-template-columns: 10.4rem 1fr;
  gap: 0.8rem;
}

@media (max-width: 767px) {
  #sustainable .event-banner {
    grid-template-columns: 1fr;
  }
}

#sustainable .activity-card-list {
  gap: var(--spacing-5, 2rem);
}

#sustainable .activity-card-list .card {
  padding-top: var(--spacing-4, 1.6rem);
  padding-right: var(--spacing-4, 1.6rem);
  padding-left: var(--spacing-4, 1.6rem);
  padding-bottom: var(--spacing-6, 2.4rem);
  border-radius: var(--border-radius-sm);
  background-color: #f6f6f6;
  box-sizing: border-box;
}

#sustainable .activity-card-list .card .__media {
  aspect-ratio: 488/274;
  border-radius: var(--border-radius-xs);
  overflow: hidden;
}

#sustainable .activity-card-list .card .__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#sustainable .activity-card-list .card .__text {
  padding-top: var(--spacing-5, 2rem);
  padding-left: var(--spacing-3, 1.2rem);
  padding-right: var(--spacing-3, 1.2rem);
}

#sustainable .activity-card-list .card .__text p {
  padding-top: var(--spacing-3, 1.2rem);
  color: #383838;
}

#sustainable .activity-card-list .card .__actions {
  padding-left: var(--spacing-3, 1.2rem);
  padding-right: var(--spacing-3, 1.2rem);
  padding-bottom: var(--spacing-3, 1.2rem);
}

#sustainable .activity-card-list .card .__actions .__info {
  padding-top: var(--spacing-4, 1.6rem);
}

#sustainable .activity-card-list .card .__actions .__info span {
  display: inline-block;
}

#sustainable .activity-card-list .card .__actions .__info span i {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  margin-bottom: -0.4rem;
  margin-right: var(--spacing-1, 0.4rem);
}

#sustainable .activity-card-list .card .__actions .__btns {
  display: flex;
  justify-content: flex-start;
  padding-top: var(--spacing-5, 2rem);
}

@media (max-width: 767px) {
  #sustainable .activity-card-list {
    gap: var(--spacing-4, 1.6rem);
  }
}

#sustainable .policy-text+.policy-list {
  padding-top: var(--spacing-4, 1.6rem);
}

#sustainable .policy-list {
  list-style: none;
  margin: 0;
  counter-reset: sec;
}

#sustainable .policy-list__item {
  counter-increment: sec;
}

#sustainable .policy-list__item+.policy-list__item {
  margin-top: var(--spacing-14, 5.6rem);
}

#sustainable .policy-list__title {
  margin: 0 0 8px;
  font-weight: 700;
  line-height: 1.35;
}

#sustainable .policy-list__title::before {
  content: counter(sec) ". ";
  font-weight: 700;
  margin-right: 4px;
}

#sustainable .policy-list__bullets {
  margin: 0;
  padding-left: 0.5em;
}

#sustainable .policy-list__bullets>li {
  position: relative;
  padding-left: 0.7em;
  margin-bottom: var(--spacing-3, 1.2rem);
}

#sustainable .policy-list__bullets>li::before {
  content: "";
  position: absolute;
  top: 0.75em;
  transform: translateY(-50%);
  left: 0;
  width: 0.3rem;
  height: 0.3rem;
  border-radius: 50%;
  background-color: #000;
}

#sustainable .policy-list__bullets>li:last-child {
  margin-bottom: 0;
}

#sustainable .policy-list__bullets--asterisk>li {
  color: #383838;
  line-height: 1.8;
  margin-bottom: var(--spacing-4, 1.6rem);
}

#sustainable .policy-list__bullets--asterisk>li::before {
  content: "*";
  position: absolute;
  top: 0.85em;
  transform: translateY(-50%);
  width: auto;
  height: auto;
  border-radius: 0;
  background: none;
}

#sustainable .policy-sublist {
  list-style: none;
  margin: 0;
  padding-left: 0.5em;
  counter-reset: sub;
}

#sustainable .policy-sublist__item {
  counter-increment: sub;
}

#sustainable .policy-sublist__item+.policy-sublist__item {
  margin-top: var(--spacing-8, 3.2rem);
}

#sustainable .policy-sublist__title {
  margin: 0 0 0.8rem;
}

#sustainable .policy-sublist__title::before {
  content: "(" counter(sub) ") ";
  margin-right: 0.2rem;
}

#sustainable .policy-sublist .policy-list__bullets {
  margin-top: var(--spacing-2, 0.8rem);
}

#sustainable .link {
  font-weight: 530;
  line-height: 1.32;
  margin: 0 0.4rem;
  padding: 0.4rem 0.8rem;
  border-radius: var(--border-radius-xs);
  border: 1px solid rgba(0, 102, 219, 0.25);
}

#sustainable .result-box {
  margin-top: var(--spacing-20, 8rem);
}

#sustainable .result-box__title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: var(--spacing-5, 2rem);
}

#sustainable .result-box__badge {
  display: inline-block;
  padding: 0.4rem 1.6rem;
  background-color: #f6f6f6;
  border-radius: 4rem;
}

#sustainable .result-box__table .height-260 {
  height: 26rem;
}

#sustainable .result-box__table td {
  color: #767676;
}

@media (max-width: 767px) {
  #sustainable .form__content .popup-trigger {
    position: absolute;
    right: 0;
    top: 3.6rem;
  }
}

@media (max-width: 767px) {
  #sustainable .form__content .form__caution {
    margin-top: 2.4rem;
  }
}

#sustainable .form__content .textarea {
  min-height: 25.8rem;
}

@media (max-width: 767px) {
  #sustainable .form__content .textarea {
    min-height: 31.6rem;
  }
}

#rnd .text-module {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-6, 2.4rem);
}

#rnd .__item.--no-gap {
  gap: var(--spacing-0, 0rem);
}

#rnd .blue-box {
  border-radius: var(--border-radius-sm, 8px);
  background-color: rgba(229, 240, 251, 0.5);
}

#rnd .border-box {
  border-radius: var(--border-radius-sm, 8px);
  border: 1px solid #e0e0e0;
}

#rnd .gray-box {
  border-radius: var(--border-radius-sm, 8px);
  background-color: #f6f6f6;
}

#rnd .divider {
  width: 100%;
  height: 1px;
  background: #e0e0e0;
}

#rnd .numbered-list .__item+.__item::before {
  display: block;
  content: "";
  position: relative;
  width: 100%;
  border-top: 1px solid transparent;
  margin-top: var(--spacing-7, 2.8rem);
  margin-bottom: var(--spacing-7, 2.8rem);
  --dash-color: #0066db99;
  --dash: 3px;
  --gap: 6px;
  border-image: repeating-linear-gradient(to right, var(--dash-color) 0, var(--dash-color) var(--dash), transparent var(--dash), transparent calc(var(--dash) + var(--gap))) 1 round;
}

#rnd .numbered-list .__label {
  display: flex;
  align-items: center;
  gap: var(--spacing-3, 1.2rem);
  font-size: var(--fs-body3);
  line-height: 1.6;
  letter-spacing: -0.02em;
  font-weight: 600;
}

#rnd .numbered-list .__label .__number {
  width: 2.8rem;
  height: 2.8rem;
  line-height: 2.8rem;
  background: #0066DB;
  border-radius: 999px;
  border: 2px solid rgba(255, 255, 255, 0.6);
  color: #fff;
  text-align: center;
}

#rnd .img-box {
  overflow: hidden;
  border-radius: var(--border-radius-md, 8px);
}

#rnd .img-box.--sm {
  border-radius: var(--border-radius-xs, 6px);
}

#rnd .img-box.--border {
  border: 1px solid #e0e0e0;
}

#rnd .img-box img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

#rnd .rnd-history {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-7, 2.8rem);
}

#rnd .rnd-history__head {
  font-size: var(--fs-title1);
  font-weight: 530;
  line-height: 1.5;
  letter-spacing: -0.02em;
}

#rnd .rnd-history__list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-4, 1.6rem);
}

#rnd .rnd-history__item {
  display: flex;
  padding-top: var(--spacing-1, 0.4rem);
  padding-bottom: var(--spacing-1, 0.4rem);
  gap: var(--spacing-3, 1.2rem);
  align-items: flex-start;
}

#rnd .rnd-history__date {
  font-size: var(--fs-body2);
  line-height: 1.32;
  letter-spacing: -0.02em;
  flex-shrink: 0;
  display: inline-block;
  padding: 0.6rem 1.4rem;
  color: #0066DB;
  font-weight: 530;
  border-radius: 999px;
  background: rgba(229, 240, 251, 0.5);
}

#rnd .rnd-history__desc {
  font-size: var(--fs-body1);
  line-height: 1.6;
  letter-spacing: -0.02em;
}

@media (max-width: 767px) {
  #rnd .rnd-history__item {
    flex-direction: column;
    align-items: flex-start;
  }
}

#rnd .project-box {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-5, 2rem);
  border-radius: var(--border-radius-sm, 8px);
  border: 1px solid #e0e0e0;
}

#rnd .project-box__head {
  padding-top: var(--spacing-3, 1.2rem);
  padding-bottom: var(--spacing-3, 1.2rem);
}

#rnd .project-box__cont {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-3, 1.2rem);
}

#rnd .project-box .project-info.grid {
  row-gap: var(--spacing-5, 2rem);
}

#rnd .project-box .project-info__item {
  display: flex;
  align-items: center;
  column-gap: var(--spacing-4, 1.6rem);
  row-gap: var(--spacing-2, 0.8rem);
}

#rnd .project-box .project-info__item:has(.__bullet-list) {
  row-gap: var(--spacing-3, 1.2rem);
}

#rnd .project-box .project-info__item .__label {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

#rnd .project-box .project-info__item.--vertical {
  flex-direction: column;
  align-items: flex-start;
}

#rnd .project-box .project-info__item .__icon {
  width: 2rem;
  height: 2rem;
}

#rnd .project-box .project-info__item .__icon svg {
  width: 100%;
  height: 100%;
}

@media (max-width: 767px) {
  #rnd .project-box .project-info__item {
    flex-direction: column;
    align-items: flex-start;
  }
}

#rnd .project-box .__bullet-list-group {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-1, 0.4rem);
}

#rnd .project-box .__bullet-list {
  width: 100%;
}

#rnd .project-box .__bullet-list li {
  position: relative;
  padding-left: 3rem;
}

@media (max-width: 767px) {
  #rnd .project-box .__bullet-list li {
    padding-left: 2.5rem;
  }
}

#rnd .project-box .__bullet-list li::before {
  content: "•";
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  display: inline-block;
  width: 3rem;
  text-align: center;
  font: inherit;
}

@media (max-width: 767px) {
  #rnd .project-box .__bullet-list li::before {
    width: 2.5rem;
  }
}

#rnd .project-box .__bullet-list:has(.__bullet-list) {
  gap: var(--spacing-1, 0.4rem);
}

#map .headline-wrapper {
  position: relative;
}

#map .headline-wrapper .breadcrumb {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

#map .content-layout .content-item.--border-top {
  border-top: 1px solid #ccc;
}

#map .map-item__list .map-item .map {
  width: 100%;
  aspect-ratio: 1060/597;
  border-radius: var(--border-radius-sm);
  border: 1px solid #e0e0e0;
  overflow: hidden;
}

@media (max-width: 1023px) {
  #map .map-item__list .map-item .map {
    aspect-ratio: 350/197;
    height: auto;
  }
}

#map .map-item__list .map-info {
  margin-top: var(--spacing-10, 4rem);
  border: 1px solid #e0e0e0;
  border-radius: var(--border-radius-sm);
  padding-top: var(--spacing-8, 3.2rem);
  padding-bottom: var(--spacing-8, 3.2rem);
  padding-left: var(--spacing-10, 4rem);
  padding-right: var(--spacing-10, 4rem);
}

#map .map-item__list .map-info__item {
  display: flex;
  align-items: flex-start;
  gap: var(--spacing-7, 2.8rem);
}

#map .map-item__list .map-info__item:not(:first-child) {
  margin-top: var(--spacing-3, 1.2rem);
}

@media (max-width: 1023px) {
  #map .map-item__list .map-info__item {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.2rem;
  }
}

#map .map-item__list .map-info__item-head {
  display: flex;
  align-items: center;
  height: 3.2rem;
  gap: var(--spacing-2, 0.8rem);
}

@media (max-width: 1023px) {
  #map .map-item__list .map-info__item-head {
    height: auto;
  }
}

#map .map-item__list .map-info__item-icon {
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
}

#map .map-item__list .map-info__item-title {
  min-width: 6.4rem;
  color: #383838;
}

[lang=en] #map .map-item__list .map-info__item-title {
  min-width: 22rem;
}

#map .map-item__list .map-info__item-desc {
  color: #000;
}

#map .map-item__list[data-list-style=multiple] {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--spacing-5, 2rem);
}

@media (max-width: 767px) {
  #map .map-item__list[data-list-style=multiple] {
    grid-template-columns: 1fr;
  }
}

#map .map-item__list[data-list-style=multiple] .map-item {
  border-radius: var(--border-radius-sm);
  border: 1px solid #e0e0e0;
  overflow: hidden;
  padding: var(--spacing-5, 2rem);
}

@media (max-width: 767px) {
  #map .map-item__list[data-list-style=multiple] .map-item.--dropdown {
    padding: 0;
  }
}

#map .map-item__list[data-list-style=multiple] .map-item.--dropdown.is-open .map-item__accordion-chevron img,
#map .map-item__list[data-list-style=multiple] .map-item.--dropdown.is-open .map-item__accordion-chevron svg {
  transform: rotate(180deg);
}

#map .map-item__list[data-list-style=multiple] .map-item.--dropdown .map-item__accordion-header {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--spacing-5, 2rem);
}

@media (min-width: 767px) {
  #map .map-item__list[data-list-style=multiple] .map-item.--dropdown .map-item__accordion-header {
    display: none;
  }
}

#map .map-item__list[data-list-style=multiple] .map-item.--dropdown .map-item__accordion-header .map-item__accordion-titlebox {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}

#map .map-item__list[data-list-style=multiple] .map-item.--dropdown .map-item__accordion-header .map-item__accordion-icon {
  width: 1.8rem;
  height: 1.8rem;
  transition: transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

#map .map-item__list[data-list-style=multiple] .map-item.--dropdown .map-item__accordion-header .map-item__accordion-chevron img,
#map .map-item__list[data-list-style=multiple] .map-item.--dropdown .map-item__accordion-header .map-item__accordion-chevron svg {
  transition: transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

#map .map-item__list[data-list-style=multiple] .map-item.--dropdown .map-item__accordion-header[data-accordion-state=open] .map-item__accordion-icon {
  transform: rotate(180deg);
}

@media (min-width: 767px) {
  #map .map-item__list[data-list-style=multiple] .map-item.--dropdown [data-accordion-bottom] {
    height: auto !important;
  }
}

@media (max-width: 767px) {
  #map .map-item__list[data-list-style=multiple] .map-item.--dropdown .map-item__accordion-inner {
    padding: var(--spacing-5, 2rem);
    padding-top: 0;
  }
}

#map .map-item__list[data-list-style=multiple] .map-info {
  border: none;
  padding: 0;
  margin-top: 0;
}

#map .map-item__list[data-list-style=multiple] .map-info .map-info__item {
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-1, 0.4rem);
}

#map .map-item__list[data-list-style=multiple] .map-info .map-info__item:not(:first-child) {
  margin-top: var(--spacing-7, 2.8rem);
}

#map .map-item__list[data-list-style=multiple] .map-info .map-info__item-desc {
  position: relative;
  padding-left: 0.7em;
  font-size: var(--fs-body2);
  line-height: 1.32;
  letter-spacing: -0.02em;
}

#map .map-item__list[data-list-style=multiple] .map-info .map-info__item-desc::before {
  content: "";
  position: absolute;
  top: 0.65em;
  transform: translateY(-50%);
  left: 0;
  width: 0.3rem;
  height: 0.3rem;
  border-radius: 50%;
  background-color: #000;
}

#map .map-item__list[data-list-style=multiple] .map-info .map-info__name {
  margin-top: var(--spacing-5, 2rem);
  margin-bottom: var(--spacing-7, 2.8rem);
}

#structure .content-layout {
  display: flex;
  flex-direction: column;
  row-gap: var(--spacing-24, 9.6rem);
}

#structure .title-module {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}

#structure .title-module.--middle {
  align-items: center;
}

#structure .company-info .__image {
  border-radius: var(--border-radius-md);
  overflow: hidden;
}

#structure .company-info .__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--spacing-5, 2rem);
}

#structure .company-info .__item {
  display: flex;
  align-items: flex-start;
  border-bottom: 1px solid #eee;
  gap: var(--spacing-5, 2rem);
}

#structure .company-info .__item .__label {
  width: 11rem;
  flex-shrink: 0;
  display: flex;
  align-items: flex-start;
}

[lang=en] #structure .company-info .__item .__label {
  width: 16rem;
}

#structure .company-info .__item .__label .__icon {
  margin-top: 0.6em;
  display: inline-block;
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
}

@media (max-width: 1023px) {
  #structure .company-info .__item .__label .__icon {
    margin-top: 0.3em;
  }
}

@media (max-width: 1023px) {
  #structure .company-info .__list {
    grid-template-columns: 1fr;
  }
}

#finance .container.--has-sider>.__boxed {
  position: relative;
}

#finance .container.--without-sider {
  margin: 0 auto;
}

@media (max-width: 1600px) {
  #finance .container.--without-sider>.__boxed {
    max-width: calc(100% - 20rem);
    margin-right: 0;
  }
}

@media (max-width: 1023px) {
  #finance .container.--without-sider>.__boxed {
    max-width: 100%;
    margin: 0 auto;
  }
}

#finance .sider {
  position: absolute;
  top: 0;
  left: 0;
  width: fit-content;
  padding-top: var(--spacing-24, 9.6rem);
}

@media (min-width: 1024px) {
  [lang=en] #finance .sider {
    max-width: calc((100% - 1040px) / 2);
    padding-right: var(--gap, 2rem);
    box-sizing: border-box;
  }
}

@media (min-width: 1024px) and (max-width: 1600px) {
  [lang=en] #finance .sider {
    --content-width: calc(100vw - (fn.rem(180) + fn.rem(20)));
    max-width: 20rem;
  }
}

#finance .side-tab-list {
  display: inline-flex;
  flex-direction: column;
  gap: var(--spacing-3, 1.2rem);
}

#finance .side-tab-list .__item a {
  display: inline-block;
  padding: 1rem 0;
  color: #ccc;
}

[lang=en] #finance .side-tab-list .__item a {
  display: inline;
  white-space: normal;
  line-height: 2;
}

#finance .side-tab-list .__item.is-active a {
  color: #0066DB;
  border-bottom: 2px solid #0066DB;
}

#finance .content-layout {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-14, 5.6rem);
}

#finance .content-inner {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-24, 9.6rem);
}

#finance .title-module {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}

#finance .title-module.--middle {
  align-items: center;
}

@media (max-width: 1023px) {
  #finance .container.--has-sider {
    background: #f6f6f6;
    border-bottom: 1px solid #eee;
  }

  #finance .sider {
    position: relative;
    width: 100%;
    padding: 0 var(--gutter, clamp(4.8rem, 4.1667vw, 8rem));
    margin: 0 calc(var(--gutter, clamp(4.8rem, 4.1667vw, 8rem)) * -1);
    overflow-x: auto;
  }

  #finance .sider::-webkit-scrollbar {
    display: none;
  }

  #finance .side-tab-list {
    flex-direction: row;
    gap: var(--spacing-6, 2.4rem);
  }

  #finance .side-tab-list .__item a {
    font-size: var(--fs-body2);
    line-height: 1.32;
    letter-spacing: -0.02em;
    padding: 1.2rem 0;
  }

  [lang=en] #finance .side-tab-list .__item a {
    font-size: var(--fs-body2);
    line-height: 1.32;
    letter-spacing: -0.02em;
    display: inline-block;
    white-space: pre;
  }

  #finance .side-tab-list .__item.is-active a {
    border-bottom: 0;
  }
}

#finance .chart-list {
  row-gap: var(--spacing-7, 2.8rem);
}

#finance .chart-list .chart-item {
  position: relative;
  width: 100%;
}

#finance .chart-list .chart-item .__title {
  text-align: center;
  padding: 1.2rem 1rem;
  border-radius: var(--border-radius-xs, 6px) var(--border-radius-xs, 6px) 0 0;
  background: rgba(229, 240, 251, 0.5);
}

#finance .chart-list .chart-item .__body {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-3, 1.2rem);
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 0 0 var(--border-radius-xs, 6px) var(--border-radius-xs, 6px);
  border-top: 0;
  padding-top: var(--spacing-6, 2.4rem);
  padding-left: var(--spacing-6, 2.4rem);
  padding-right: var(--spacing-6, 2.4rem);
  padding-bottom: var(--spacing-5, 2rem);
  box-sizing: border-box;
}

#finance .chart-list .chart-item .__in-chart {
  position: relative;
  width: 100%;
  aspect-ratio: 1/0.9;
}

#finance .chart-list .chart-item .__in-chart canvas {
  position: absolute;
  width: 100% !important;
  height: 100% !important;
}

#finance .chart-list .chart-item .__unit-label {
  color: #767676;
  text-align: right;
  font-size: 1.4rem;
  font-weight: 330;
  line-height: 1.6;
  letter-spacing: -0.02em;
}

#finance .chart-list .chart-item.--full .__in-chart {
  aspect-ratio: 1/0.3;
}

#finance .chart-list .chart-item.--full .__body {
  gap: 0.6rem;
}

@media (max-width: 767px) {
  #finance .chart-list .chart-item.--full .__in-chart {
    aspect-ratio: 1/0.92;
  }
}

#finance .chart-dual-module {
  row-gap: 2rem;
}

#finance .chart-module.--left-box .__header {
  border-top-right-radius: 0;
}

#finance .chart-module.--left-box .chart-module-list {
  border-bottom-right-radius: 0;
  border-right: 0;
}

#finance .chart-module.--right-box .__header {
  border-top-left-radius: 0;
}

#finance .chart-module.--right-box .chart-module-list {
  border-bottom-left-radius: 0;
  border-left: 0;
}

#finance .chart-module.--right-box .chart-module-item .__label {
  border-left: 1px solid #e0e0e0;
}

#finance .chart-module .__header {
  text-align: center;
  padding-top: var(--spacing-3, 1.2rem);
  padding-bottom: var(--spacing-3, 1.2rem);
  border-radius: var(--border-radius-xs, 6px) var(--border-radius-xs, 6px) 0 0;
  background: rgba(229, 240, 251, 0.5);
}

#finance .chart-module .chart-module-list {
  border: 1px solid #e0e0e0;
  border-top: 0;
  background-color: #fff;
  border-radius: 0 0 var(--border-radius-xs, 6px) var(--border-radius-xs, 6px);
}

#finance .chart-module .chart-module-item .__label {
  padding-top: var(--spacing-3, 1.2rem);
  padding-bottom: var(--spacing-3, 1.2rem);
  padding-left: 1rem;
  padding-right: 1rem;
  border-bottom: 1px solid #e0e0e0;
}

#finance .chart-module .chart-module-item:not(:first-child) .__label {
  border-left: 1px solid #e0e0e0;
}

#finance .chart-module .chart-module-item .__body:has(.__in-chart) {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  padding: 2.4rem 4rem 2rem;
}

#finance .chart-module .chart-module-item .__in-chart {
  position: relative;
  width: 100%;
  aspect-ratio: 1/0.57;
}

#finance .chart-module .chart-module-item .__in-chart canvas {
  position: absolute;
  width: 100% !important;
  height: 100% !important;
}

#finance .chart-module .chart-module-item .__unit-label {
  color: #767676;
  text-align: right;
  font-size: 1.4rem;
  font-weight: 330;
  line-height: 1.6;
  letter-spacing: -0.02em;
}

@media (max-width: 767px) {
  #finance .chart-module.--left-box .__header {
    border-radius: var(--border-radius-xs, 6px) var(--border-radius-xs, 6px) 0 0;
  }

  #finance .chart-module.--left-box .chart-module-list {
    border: 1px solid #e0e0e0;
    border-top: 0;
    border-radius: 0 0 var(--border-radius-xs, 6px) var(--border-radius-xs, 6px);
  }

  #finance .chart-module.--right-box .__header {
    border-radius: var(--border-radius-xs, 6px) var(--border-radius-xs, 6px) 0 0;
  }

  #finance .chart-module.--right-box .chart-module-list {
    border: 1px solid #e0e0e0;
    border-top: 0;
    border-radius: 0 0 var(--border-radius-xs, 6px) var(--border-radius-xs, 6px);
  }

  #finance .chart-module.--right-box .chart-module-item .__label {
    border-left: 0;
  }

  #finance .chart-module .chart-module-item:not(:first-child) .__label {
    border-top: 1px solid #e0e0e0;
    border-left: 0;
  }

  #finance .chart-module .chart-module-item .__body:has(.__in-chart) {
    gap: 0.6rem;
  }

  #finance .chart-module .chart-module-item .__in-chart {
    aspect-ratio: 1/0.94;
    gap: 0.6rem;
  }
}

#notice .content-header {
  display: flex;
}

#notice .content-footer {
  display: flex;
  justify-content: center;
}

#notice .content-empty p {
  color: #787878;
}

@media (max-width: 1023px) {
  #notice .search {
    width: 100%;
  }

  #notice .content-layout {
    padding-top: var(--spacing-24, 9.6rem);
  }
}

#pds .content-header {
  display: flex;
}

#pds .content-footer {
  display: flex;
  justify-content: center;
}

#pds .content-empty p {
  color: #787878;
}

@media (max-width: 1023px) {
  #pds .search {
    width: 100%;
  }

  #pds .content-layout {
    padding-top: var(--spacing-24, 9.6rem);
  }
}

#pds .form__content .form__title {
  margin-bottom: var(--spacing-14, 5.6rem);
}

#pds .form__content .textarea {
  min-height: 22.4rem;
}

#pds .contact-banner {
  display: flex;
  border-radius: var(--border-radius-sm);
  background: #f6f6f6;
  row-gap: var(--spacing-9, 3.6rem);
}

#pds .contact-banner .__left {
  flex: 1;
}

#pds .contact-banner .__right {
  flex: 1;
  padding-left: var(--spacing-8, 3.2rem);
}

#pds .contact-banner .__separator {
  width: 1px;
  height: auto;
  background: #e0e0e0;
}

#pds .contact-banner .contact-list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-5, 2rem);
}

#pds .contact-banner .contact-item {
  display: flex;
  align-items: flex-start;
  gap: var(--spacing-3, 1.2rem);
}

#pds .contact-banner .contact-item .__label {
  margin-top: 0.4rem;
  width: 10.6rem;
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

#pds .contact-banner .contact-item .__label .__icon {
  color: #0066DB;
  width: 2rem;
}

#pds .contact-banner .contact-item .__label span {
  color: #383838;
}

#pds .contact-banner .contact-item ul {
  flex: 1;
}

#pds .contact-banner .contact-item ul li::before {
  content: "•";
  display: inline-block;
  width: 3rem;
  text-align: center;
  font-size: var(--fs-body1);
  line-height: 1.6;
  letter-spacing: -0.02em;
}

@media (max-width: 1023px) {
  #pds .form__content .textarea {
    min-height: 18.6rem;
  }

  #pds .contact-banner {
    flex-direction: column;
  }

  #pds .contact-banner .__right {
    padding-left: 0;
  }

  #pds .contact-banner .contact-item .__label {
    width: 9.8rem;
    margin-top: 0;
  }

  #pds .contact-banner .contact-item ul li::before {
    width: 2.5rem;
  }
}

.invest-card-list[data-type=link] {
  gap: var(--spacing-5, 2rem);
}

.invest-card[data-type=link] {
  display: flex;
  column-gap: 2.4rem;
  align-items: flex-end;
  border-radius: var(--radius-sm, 8px);
  background: #f6f6f6;
  border: 1px solid #e0e0e0;
  transition: border-color 0.3s cubic-bezier(0.42, 0, 0.58, 1);
  padding: var(--spacing-6, 2.4rem);
}

.invest-card[data-type=link] .__txt {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}

.invest-card[data-type=link] .__txt .__date {
  transition: color 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

.invest-card[data-type=link] .__txt .__title {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  height: calc(var(--fs-body1) * 1.6 * 3);
  transition: color 0.3s cubic-bezier(0.42, 0, 0.58, 1);
  word-break: break-all;
  margin-bottom: 1.4rem;
}

.invest-card[data-type=link] .__link-btn {
  flex-shrink: 0;
  width: 2.8rem;
  height: 2.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  transition: background-color 0.3s cubic-bezier(0.42, 0, 0.58, 1);
  border-radius: var(--border-radius-xs, 6px);
}

.invest-card[data-type=link] .__link-btn svg {
  width: 1.8rem;
  height: 1.8rem;
  transition: color 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

@media (min-width: 1024px) {
  .invest-card[data-type=link]:hover {
    border-color: #0066DB;
  }

  .invest-card[data-type=link]:hover .__txt .__date,
  .invest-card[data-type=link]:hover .__txt .__title {
    color: #0066DB;
  }

  .invest-card[data-type=link]:hover .__link-btn {
    color: #fff;
    background-color: #0066DB;
  }
}

@media (max-width: 767px) {
  .invest-card[data-type=link] .__txt .__title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    height: calc(var(--fs-body1) * 1.6 * 2);
    margin-bottom: 0;
  }
}

.invest-card[data-type=file] {
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-sm, 8px);
  background: #f6f6f6;
  transition: border-color 0.3s cubic-bezier(0.42, 0, 0.58, 1);
  box-sizing: border-box;
  gap: var(--spacing-5, 2rem);
  padding-top: var(--spacing-7, 2.8rem);
  padding-bottom: var(--spacing-7, 2.8rem);
  padding-left: var(--spacing-6, 2.4rem);
  padding-right: var(--spacing-6, 2.4rem);
}

.invest-card[data-type=file] .__txt .__title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  height: calc(var(--fs-body1) * 1.6 * 2);
}

.invest-card[data-type=file] .cta-btns {
  gap: 0;
  background: #fff;
  border-radius: var(--border-radius-sm, 8px);
}

.invest-card[data-type=file] .cta-btns .btn {
  position: relative;
  flex: 1;
}

.invest-card[data-type=file] .cta-btns .btn+.btn::before {
  content: "";
  height: 1.1111111111em;
  background: #eee;
  width: 1px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: opacity 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

.invest-card[data-type=file] .cta-btns .btn+.btn:hover::before {
  opacity: 0;
}

@media (max-width: 767px) {
  .invest-card[data-type=file] .__txt .__title {
    max-height: calc(var(--fs-body1) * 1.6 * 2);
    height: auto;
  }
}

#search-page {
  overflow-x: hidden;
}

#search-page .page-header {
  padding: 5.6rem 0 7.2rem;
  padding-top: var(--spacing-14, 5.6rem);
  border-bottom: 1px solid #e0e0e0;
}

#search-page .tab-bar .tab-list {
  padding-left: var(--gutter, clamp(4.8rem, 4.1667vw, 8rem));
  padding-right: var(--gutter, clamp(4.8rem, 4.1667vw, 8rem));
  margin: 0 calc(var(--gutter, clamp(4.8rem, 4.1667vw, 8rem)) * -1);
}

#search-page .result-container {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-20, 8rem);
}

#search-page .result-txt {
  font-weight: 430;
}

#search-page .result-module {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-7, 2.8rem);
}

#search-page .result-module__title {
  display: flex;
  align-items: center;
  gap: 1rem;
}

#search-page .result-module__list .swiper.--swiper-grid {
  overflow: visible;
}

#search-page .result-module__list :not(.news-list--masonry) .pr-card {
  width: 100%;
  margin: 0;
}

#search-page .result-module__list .list--masonry {
  position: relative;
  display: block;
}

#search-page .result-module__list .list--masonry .card--masonry {
  width: calc(33.3333333333% - 2rem);
}

@media (min-width: 1023px) {
  #search-page .result-module__list .list--masonry .card--masonry {
    margin: 0 1rem;
    margin-bottom: var(--spacing-16, 6.4rem);
  }
}

@media (max-width: 1023px) {
  #search-page .result-module__list .list--masonry .card--masonry {
    width: calc(50% - 2rem);
  }
}

@media (max-width: 767px) {
  #search-page .result-module__list .list--masonry .card--masonry {
    width: 100%;
  }
}

@media (min-width: 767px) {
  #search-page .result-module__list .list--masonry {
    margin-left: -1rem;
    margin-right: -1rem;
  }
}

@media (max-width: 1023px) {
  #search-page .result-module__list .list--masonry {
    padding-bottom: 0.8rem;
  }
}

#search-page .result-module__list .list--masonry .grid-sizer {
  width: 33.333%;
}

@media (max-width: 1023px) {
  #search-page .result-module__list .list--masonry .grid-sizer {
    width: 50%;
  }
}

@media (max-width: 767px) {
  #search-page .result-module__list .list--masonry .grid-sizer {
    width: 100%;
  }
}

#search-page .result-module__footer {
  display: flex;
  justify-content: center;
}

#search-page .banners {
  padding-top: var(--spacing-50, 20rem);
  padding-bottom: var(--spacing-34, 13.6rem);
}

@media (max-width: 1023px) {
  #search-page .page-header {
    padding-bottom: var(--spacing-18, 7.2rem);
  }

  #search-page .result-module__list .grid {
    column-gap: var(--spacing-5, 2rem);
    row-gap: var(--spacing-14, 5.6rem);
  }

  #search-page .result-module__list .list--masonry .card--masonry {
    margin-bottom: 4rem;
  }

  #search-page .result-module__list .list--masonry .card--masonry:last-child {
    margin-bottom: 0;
  }
}

#privacy-policy .pb-20 {
  padding-bottom: 2rem;
}

#privacy-policy .pb-16 {
  padding-bottom: 1.6rem;
}

#privacy-policy .pb-8 {
  padding-bottom: 0.8rem;
}

#privacy-policy .grid {
  row-gap: var(--gap);
}

#privacy-policy .text-break-all {
  word-break: break-all;
}

#privacy-policy .text-break-word {
  word-break: break-word;
}

#privacy-policy main.inner {
  padding-bottom: var(--spacing-40, 16rem);
}

#privacy-policy .accordion__item+.accordion__item {
  margin-top: var(--spacing-4, 1.6rem);
}

#privacy-policy .accordion__item.is-open .accordion__header {
  padding-bottom: var(--spacing-7, 2.8rem);
}

#privacy-policy .accordion__inner {
  padding-bottom: var(--spacing-8, 3.2rem);
}

#privacy-policy .accordion__titlebox {
  gap: var(--spacing-3, 1.2rem);
}

@media (max-width: 767px) {
  #privacy-policy .accordion__titlebox {
    align-items: flex-start;
  }
}

#privacy-policy .accordion__header {
  padding: var(--spacing-8, 3.2rem);
  gap: var(--spacing-3, 1.2rem);
}

@media (max-width: 767px) {
  #privacy-policy .accordion__header {
    align-items: flex-start;
  }
}

#privacy-policy .accordion__content {
  padding-left: var(--spacing-6, 2.4rem);
  padding-right: var(--spacing-6, 2.4rem);
  padding-top: var(--spacing-5, 2rem);
  padding-bottom: var(--spacing-5, 2rem);
}

#privacy-policy .dropdown__menu {
  max-height: 33.6rem;
  overflow-y: auto;
}

@media (max-width: 1023px) {
  #privacy-policy .dropdown__menu {
    max-height: 32rem;
  }
}

@media (max-width: 767px) {
  #privacy-policy .dropdown__menu {
    max-height: 23.5rem;
  }
}

#privacy-policy .lnb__tab-list {
  justify-content: center;
  padding: 0;
}

@media (max-width: 767px) {
  #privacy-policy .lnb__tab-list {
    justify-content: flex-start;
  }
}

#privacy-policy .policy-sublist__item,
#privacy-policy .policy-olist__item {
  position: relative;
  padding-left: 1.3em;
}

#privacy-policy .policy-sublist--circled>.policy-sublist__item::before,
#privacy-policy .policy-sublist--koalpha>.policy-sublist__item::before,
#privacy-policy .policy-sublist--dash>.policy-sublist__item::before,
#privacy-policy .policy-sublist--paren>.policy-sublist__item::before,
#privacy-policy .policy-olist__item::before {
  position: absolute;
  top: calc(1em * 1.7 / 2);
  transform: translateY(-50%);
  left: 0;
  color: #383838;
}

#privacy-policy .policy-list__bullets {
  margin: 0;
  padding-left: 0.5em;
}

#privacy-policy .policy-list__bullets>li {
  position: relative;
  padding-left: 0.7em;
}

#privacy-policy .policy-list__bullets>li::before {
  content: "";
  position: absolute;
  top: 0.6em;
  transform: translateY(-50%);
  left: 0;
  width: 0.3rem;
  height: 0.3rem;
  border-radius: 50%;
  background-color: #000;
}

#privacy-policy .policy-olist {
  list-style: none;
  margin: 0;
  counter-reset: num;
}

#privacy-policy .policy-olist__item {
  color: #383838;
  counter-increment: num;
}

#privacy-policy .policy-olist__item::before {
  content: counter(num) ". ";
}

#privacy-policy .policy-olist__item:last-child {
  margin-bottom: 0;
}

#privacy-policy .policy-sublist {
  list-style: none;
  margin: 0;
}

#privacy-policy .policy-sublist__boldered-section {
  margin-bottom: 1.6rem;
}

#privacy-policy .policy-sublist__boldered-section:last-child {
  margin-bottom: 0;
}

#privacy-policy .policy-sublist__boldered-section .policy-sublist__item+.policy-sublist__item {
  margin-top: var(--spacing-2, 0.8rem);
}

#privacy-policy .policy-sublist--paren {
  counter-reset: sub;
}

#privacy-policy .policy-sublist--paren>.policy-sublist__item {
  counter-increment: sub;
}

#privacy-policy .policy-sublist--paren>.policy-sublist__item::before {
  content: counter(sub) ") ";
}

#privacy-policy .policy-sublist--dash>.policy-sublist__item::before {
  content: "- ";
  top: 0.7em;
}

#privacy-policy .policy-sublist--koalpha>.policy-sublist__item::before {
  content: "";
}

#privacy-policy .policy-sublist--koalpha>.policy-sublist__item:nth-child(1)::before {
  content: "가. ";
}

#privacy-policy .policy-sublist--koalpha>.policy-sublist__item:nth-child(2)::before {
  content: "나. ";
}

#privacy-policy .policy-sublist--koalpha>.policy-sublist__item:nth-child(3)::before {
  content: "다. ";
}

#privacy-policy .policy-sublist--koalpha>.policy-sublist__item:nth-child(4)::before {
  content: "라. ";
}

#privacy-policy .policy-sublist--koalpha>.policy-sublist__item:nth-child(5)::before {
  content: "마. ";
}

#privacy-policy .policy-sublist--koalpha>.policy-sublist__item:nth-child(6)::before {
  content: "바. ";
}

#privacy-policy .policy-sublist--koalpha>.policy-sublist__item:nth-child(7)::before {
  content: "사. ";
}

#privacy-policy .policy-sublist--koalpha>.policy-sublist__item:nth-child(8)::before {
  content: "아. ";
}

#privacy-policy .policy-sublist--koalpha>.policy-sublist__item:nth-child(9)::before {
  content: "자. ";
}

#privacy-policy .policy-sublist--koalpha>.policy-sublist__item:nth-child(10)::before {
  content: "차. ";
}

#privacy-policy .policy-sublist--koalpha>.policy-sublist__item:nth-child(11)::before {
  content: "카. ";
}

#privacy-policy .policy-sublist--koalpha>.policy-sublist__item:nth-child(12)::before {
  content: "타. ";
}

#privacy-policy .policy-sublist--koalpha>.policy-sublist__item:nth-child(13)::before {
  content: "파. ";
}

#privacy-policy .policy-sublist--koalpha>.policy-sublist__item:nth-child(14)::before {
  content: "하. ";
}

#privacy-policy .policy-sublist--circled>.policy-sublist__item::before {
  content: "";
}

#privacy-policy .policy-sublist--circled>.policy-sublist__item:nth-child(1)::before {
  content: "① ";
}

#privacy-policy .policy-sublist--circled>.policy-sublist__item:nth-child(2)::before {
  content: "② ";
}

#privacy-policy .policy-sublist--circled>.policy-sublist__item:nth-child(3)::before {
  content: "③ ";
}

#privacy-policy .policy-sublist--circled>.policy-sublist__item:nth-child(4)::before {
  content: "④ ";
}

#privacy-policy .policy-sublist--circled>.policy-sublist__item:nth-child(5)::before {
  content: "⑤ ";
}

#privacy-policy .policy-sublist--circled>.policy-sublist__item:nth-child(6)::before {
  content: "⑥ ";
}

#privacy-policy .policy-sublist--circled>.policy-sublist__item:nth-child(7)::before {
  content: "⑦ ";
}

#privacy-policy .policy-sublist--circled>.policy-sublist__item:nth-child(8)::before {
  content: "⑧ ";
}

#privacy-policy .policy-sublist--circled>.policy-sublist__item:nth-child(9)::before {
  content: "⑨ ";
}

#privacy-policy .policy-sublist--circled>.policy-sublist__item:nth-child(10)::before {
  content: "⑩ ";
}

#privacy-policy .policy__note {
  text-align: end;
}

#privacy-policy .policy__link {
  text-decoration: underline;
}

#privacy-policy .policy__intro {
  padding: var(--spacing-7, 2.8rem);
  background-color: #f6f6f6;
  border-radius: var(--border-radius-sm);
}

#privacy-policy .policy__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

@media (max-width: 767px) {
  #privacy-policy .policy__header {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--spacing-4, 1.6rem);
  }
}

#privacy-policy .policy__description {
  padding: var(--spacing-7, 2.8rem);
  background-color: #f6f6f6;
  border-radius: var(--border-radius-sm);
}

#privacy-policy .policy-l-border {
  border-right: 1px solid #e0e0e0;
}

#privacy-policy .policy-t-border::after {
  display: none;
}

#privacy-policy .policy-summary__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

@media (max-width: 767px) {
  #privacy-policy .policy-summary__header {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--spacing-4, 1.6rem);
  }
}

#privacy-policy .policy-summary__card {
  padding: var(--spacing-6, 2.4rem);
  gap: var(--spacing-10, 4rem);
  background-color: rgba(229, 240, 251, 0.5);
  display: flex;
  border-radius: var(--border-radius-md);
}

#privacy-policy .policy-summary__card-icon {
  width: 8rem;
  flex-shrink: 0;
  aspect-ratio: 1/1;
}

#privacy-policy .policy-summary__card-content {
  display: flex;
  flex-direction: column;
  word-break: break-all;
}

#privacy-policy .policy-accordion__icon {
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

#privacy-policy .policy-accordion__icon img {
  width: 3.6rem;
  aspect-ratio: 1/1;
}

#sitemap .sub-headline {
  padding-top: var(--spacing-40, 16rem);
  padding-bottom: var(--spacing-24, 9.6rem);
}

#sitemap .content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-30, 12rem);
}

#sitemap .sitemap {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-8, 3.2rem);
}

#sitemap .sitemap .__head {
  background-color: rgba(229, 240, 251, 0.5);
  border-radius: var(--border-radius-xs);
  display: flex;
  flex-direction: column;
}

#sitemap .sitemap .__head .__title a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--spacing-1, 0.4rem);
}

#sitemap .sitemap .__head .__icon {
  display: inline-block;
  width: 2.4rem;
  height: 2.4rem;
}

@media (max-width: 1023px) {
  #sitemap .sitemap .__head .__icon {
    width: 2rem;
    height: 2rem;
  }
}

#sitemap .sitemap .__grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  column-gap: var(--spacing-5, 2rem);
  row-gap: var(--spacing-14, 5.6rem);
}

@media (max-width: 1023px) {
  #sitemap .sitemap .__grid {
    grid-template-columns: repeat(4, 1fr);
    row-gap: var(--spacing-9, 3.6rem);
  }
}

@media (max-width: 767px) {
  #sitemap .sitemap .__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

#sitemap .sitemap .__col {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-4, 1.6rem);
}

#sitemap .sitemap .__list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-4, 1.6rem);
}

#fallback {
  background: url("/assets/img/common/fallback-bg.png") no-repeat center center/cover;
  width: 100%;
}

@media (max-width: 767px) {
  #fallback {
    background: url("/assets/img/common/fallback-bg_m.png") no-repeat center center/cover;
  }
}

#fallback .container {
  width: 100%;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  box-sizing: border-box;
}

#fallback .__content {
  display: flex;
  flex-direction: column;
  align-items: center;
}

#fallback .__content h1 {
  letter-spacing: -0.03em;
}

@media (max-width: 767px) {
  #fallback .__content {
    width: 100%;
  }
}

#fallback .__icon {
  width: 12rem;
  height: 12rem;
}

#fallback .__icon svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

@media (max-width: 767px) {
  #fallback .__icon {
    width: 7.2rem;
    height: 7.2rem;
  }
}

#fallback .__plan {
  padding: var(--spacing-5, 2rem);
  display: flex;
  align-items: center;
  border-radius: var(--border-radius-xs, 6px);
  background: #E5F0FB;
  gap: 1.6rem;
  text-align: left;
  box-sizing: border-box;
}

#fallback .__plan .__badge {
  padding: 0.2rem 1rem;
  background-color: #0066DB;
  border-radius: 0.4rem;
}

#fallback .__plan .__datetime {
  display: flex;
  gap: 0.8rem;
}

@media (max-width: 767px) {
  #fallback .__plan {
    width: 100%;
  }

  #fallback .__plan .__datetime {
    flex-direction: column;
    align-items: flex-start;
  }
}

#fallback .cta-btns {
  gap: var(--spacing-3, 1.2rem);
  margin-top: 5.6rem;
}

@media (max-width: 767px) {
  #fallback .cta-btns {
    margin-top: var(--spacing-14, 5.6rem);
  }
}

#fallback .cta-btns-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
  margin-top: 4rem;
  border-radius: var(--border-radius-sm, 8px);
  background-color: rgba(229, 240, 251, 0.5);
  padding: 1rem;
  box-sizing: border-box;
  border-radius: var(--radius-sm, 8px);
  background: linear-gradient(0deg, rgba(229, 240, 251, 0.5) 0%, rgba(229, 240, 251, 0.5) 100%), #fff;
}

#fallback .cta-btns-grid a {
  width: 16.9em;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.8rem;
  padding: 1.2rem 2.4rem;
  border-radius: 0.8rem;
  background-color: #fff;
  transition: color 0.3s cubic-bezier(0.42, 0, 0.58, 1);
  text-align: left;
}

#fallback .cta-btns-grid a i {
  display: inline-block;
  flex-shrink: 0;
  width: 2.2rem;
  height: 2.2rem;
}

#fallback .cta-btns-grid a i svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

#fallback .cta-btns-grid a:hover {
  color: #0066DB;
}

@media (max-width: 767px) {
  #fallback .cta-btns-grid {
    width: 100%;
    margin-top: var(--spacing-14, 5.6rem);
    grid-template-columns: 1fr;
  }

  #fallback .cta-btns-grid a {
    width: 100%;
  }
}

#provision .sub-headline {
  padding-bottom: var(--spacing-30, 12rem);
}

#provision .__content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-30, 12rem);
}

#provision .provision-part {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-16, 6.4rem);
}

#provision .provision-part .__head {
  border-radius: var(--border-radius-xs, 6px);
  background: rgba(229, 240, 251, 0.5);
  text-align: center;
}

#provision .provision-part .__body {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-10, 4rem);
}

#provision .provision-item {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-3, 1.2rem);
}

#provision .provision-item strong {
  letter-spacing: -0.03em;
  font-weight: 430;
}

#provision .provision-item ol {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-2, 0.8rem);
  list-style: none;
  counter-reset: counter;
}

#provision .provision-item ol li {
  white-space: pre-wrap;
  position: relative;
  padding-left: 1.6em;
  counter-increment: counter;
}

#provision .provision-item ol li::before {
  content: counter(counter) ".";
  width: 1.6em;
  text-align: center;
  position: absolute;
  left: 0;
  top: 0;
  font: inherit;
}

#provision .provision-item .custom-ol {
  list-style: none;
  /* 기본 숫자 제거 */
  counter-reset: customCounter;
  /* 카운터 초기화 */
  padding: 0;
  margin: 0;
}

#provision .provision-item .custom-ol li {
  position: relative;
  padding-left: 2em;
  /* 번호 공간 확보 */
  counter-increment: customCounter;
  /* li가 1개씩 카운트됨 */
}

#provision .provision-item .custom-ol li::before {
  content: counter(customCounter) ".";
  position: absolute;
  left: 0;
  top: 0;
  font-weight: 600;
  color: #0066db;
}

.loop-media .__box {
  display: grid;
}

.loop-media .__img {
  border-radius: var(--border-radius-sm);
  overflow: hidden;
  isolation: isolate;
  margin-bottom: var(--spacing-8, 3.2rem);
  background: #f6f6f6;
  border: 1px solid #eee;
}

.loop-media .__img span {
  display: block;
}

.loop-media .__img img {
  display: block;
  aspect-ratio: 425/240;
  height: auto;
  object-fit: cover;
  transition: transform 1.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  will-change: transform;
}

.loop-media .__desc {
  padding-right: var(--spacing-6, 2.4rem);
  box-sizing: border-box;
}

.loop-media .__desc .__meta {
  font-size: var(--fs-body2);
  line-height: 1.32;
  letter-spacing: -0.02em;
  display: flex;
  gap: 0.5em;
  color: #767676;
  margin-bottom: var(--spacing-4, 1.6rem);
}

.loop-media .__desc .__meta .__category {
  color: #0066DB;
  font-size: var(--fs-label2);
  line-height: 1.32;
  letter-spacing: -0.02em;
}

.loop-media .__desc .__meta .__split {
  font-weight: 200;
  color: #e0e0e0;
}

.loop-media .__desc .__title {
  font-size: var(--fs-title4);
  font-weight: 530;
  line-height: 1.5;
  letter-spacing: -0.02em;
  font-weight: 530;
  margin-bottom: var(--spacing-3, 1.2rem);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.loop-media .__desc .__excerpt {
  font-size: var(--fs-body1);
  line-height: 1.6;
  letter-spacing: -0.02em;
  color: #767676;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.loop-media .__box:hover .__img img {
  transform: scale(1.125);
}

/* 가이드 페이지 */
.page-guide {
  padding-top: calc(var(--header-height, 8rem) + 3rem);
  padding-bottom: 16rem;
}

.page-guide .__title {
  margin-bottom: 3rem;
}

.page-guide .__sub-title {
  margin-bottom: 2rem;
}

.page-guide .__component+.__component {
  margin-top: 2rem;
}

.page-guide .__component.--bg-gray {
  background-color: #f0f0f0;
}