@charset "UTF-8";
*,
*::before,
*::after {
  box-sizing: border-box;
}

:where(body, h1, h2, h3, h4, p, ul, ol, dl, dd, figure, fieldset) {
  margin: 0;
}

:where(ul, ol, fieldset, button) {
  padding: 0;
}

:where(iframe, fieldset, button) {
  border: none;
}

:where(img, picture, video, canvas, svg) {
  display: block;
  max-width: 100%;
}

:where(ul, ol) {
  list-style: none;
}

:where(input, button, textarea, select) {
  appearance: none;
  -webkit-appearance: none;
  font-family: inherit;
}

:where(a, label, button, input, textarea, select) {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

a {
  text-decoration: none;
}
a:focus {
  outline: none;
}
a:focus-visible {
  outline: revert;
}
@font-face {
  font-family: "Pretendard";
  font-weight: 700;
  font-display: swap;
  src: local("Pretendard Bold"),
    url(/css/mc/vendors/Pretendard-Bold.subset.woff2) format("woff2");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 600;
  font-display: swap;
  src: local("Pretendard SemiBold"),
    url(/css/mc/vendors/Pretendard-SemiBold.subset.woff2) format("woff2");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 500;
  font-display: swap;
  src: local("Pretendard Medium"),
    url(/css/mc/vendors/Pretendard-Medium.subset.woff2) format("woff2");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 400;
  font-display: swap;
  src: local("Pretendard Regular"),
    url(/css/mc/vendors/Pretendard-Regular.subset.woff2) format("woff2");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 300;
  font-display: swap;
  src: local("Pretendard Light"),
    url(/css/mc/vendors/Pretendard-Light.subset.woff2) format("woff2");
}
@font-face {
  font-family: "Wooridaum";
  font-weight: 300;
  font-display: swap;
  src: local("Wooridaum"),
    url(/css/mc/vendors/Wooridaum-Light.woff2) format("woff2");
}
@font-face {
  font-family: "Wooridaum";
  font-weight: 400;
  font-display: swap;
  src: local("Wooridaum"),
    url(/css/mc/vendors/Wooridaum-Regular.woff2) format("woff2");
}
@font-face {
  font-family: "Wooridaum";
  font-weight: 700;
  font-display: swap;
  src: local("Wooridaum"),
    url(/css/mc/vendors/Wooridaum-Bold.woff2) format("woff2");
}

:root {
  --font-family-base: "Pretendard", -apple-system, "BlinkMacSystemFont",
    "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;
  --font-d1-700: 700 4.5rem/1.3 var(--font-family-base);
  --font-d1-600: 600 4.5rem/1.3 var(--font-family-base);
  --font-d1-500: 500 4.5rem/1.3 var(--font-family-base);
  --font-d2-700: 700 3.5rem/1.3 var(--font-family-base);
  --font-d2-600: 600 3.5rem/1.3 var(--font-family-base);
  --font-d2-500: 500 3.5rem/1.3 var(--font-family-base);
  --font-d3-700: 700 2.75rem/1.35 var(--font-family-base);
  --font-d3-600: 600 2.75rem/1.35 var(--font-family-base);
  --font-d3-500: 500 2.75rem/1.35 var(--font-family-base);
  --font-d4-700: 700 2.25rem/1.35 var(--font-family-base);
  --font-d4-600: 600 2.25rem/1.35 var(--font-family-base);
  --font-d4-500: 500 2.25rem/1.35 var(--font-family-base);
  --font-h1-700: 700 4.25rem/1.35 var(--font-family-base);
  --font-h1-600: 600 4.25rem/1.35 var(--font-family-base);
  --font-h1-500: 500 4.25rem/1.35 var(--font-family-base);
  --font-h2-700: 700 3rem/1.35 var(--font-family-base);
  --font-h2-600: 600 3rem/1.35 var(--font-family-base);
  --font-h2-500: 500 3rem/1.35 var(--font-family-base);
  --font-h3-700: 700 2rem/1.35 var(--font-family-base);
  --font-h3-600: 600 2rem/1.35 var(--font-family-base);
  --font-h3-500: 500 2rem/1.35 var(--font-family-base);
  --font-h4-700: 700 1.5rem/1.4 var(--font-family-base);
  --font-h4-600: 600 1.5rem/1.4 var(--font-family-base);
  --font-h4-500: 500 1.5rem/1.4 var(--font-family-base);
  --font-h5-700: 700 1.125rem/1.4 var(--font-family-base);
  --font-h5-600: 600 1.125rem/1.4 var(--font-family-base);
  --font-h5-500: 500 1.125rem/1.4 var(--font-family-base);
  --font-b1-700: 700 1.75rem/1.5 var(--font-family-base);
  --font-b1-600: 600 1.75rem/1.5 var(--font-family-base);
  --font-b1-500: 500 1.75rem/1.5 var(--font-family-base);
  --font-b1-400: 400 1.75rem/1.5 var(--font-family-base);
  --font-b2-700: 700 1.5rem/1.5 var(--font-family-base);
  --font-b2-600: 600 1.5rem/1.5 var(--font-family-base);
  --font-b2-500: 500 1.5rem/1.5 var(--font-family-base);
  --font-b2-400: 400 1.5rem/1.5 var(--font-family-base);
  --font-b3-700: 700 1.25rem/1.6 var(--font-family-base);
  --font-b3-600: 600 1.25rem/1.6 var(--font-family-base);
  --font-b3-500: 500 1.25rem/1.6 var(--font-family-base);
  --font-b3-400: 400 1.25rem/1.6 var(--font-family-base);
  --font-b4-700: 700 1.125rem/1.6 var(--font-family-base);
  --font-b4-600: 600 1.125rem/1.6 var(--font-family-base);
  --font-b4-500: 500 1.125rem/1.6 var(--font-family-base);
  --font-b4-400: 400 1.125rem/1.6 var(--font-family-base);
  --font-b5-700: 700 1rem/1.6 var(--font-family-base);
  --font-b5-600: 600 1rem/1.6 var(--font-family-base);
  --font-b5-500: 500 1rem/1.6 var(--font-family-base);
  --font-b5-400: 400 1rem/1.6 var(--font-family-base);
  --font-b6-700: 700 0.875rem/1.6 var(--font-family-base);
  --font-b6-600: 600 0.875rem/1.6 var(--font-family-base);
  --font-b6-500: 500 0.875rem/1.6 var(--font-family-base);
  --font-b6-400: 400 0.875rem/1.6 var(--font-family-base);
  --font-b7-700: 700 0.75rem/1.6 var(--font-family-base);
  --font-b7-600: 600 0.75rem/1.6 var(--font-family-base);
  --font-b7-500: 500 0.75rem/1.6 var(--font-family-base);
  --font-b7-400: 400 0.75rem/1.6 var(--font-family-base);
  --font-u1-700: 700 1.25rem/1.3 var(--font-family-base);
  --font-u1-600: 600 1.25rem/1.3 var(--font-family-base);
  --font-u1-500: 500 1.25rem/1.3 var(--font-family-base);
  --font-u1-400: 400 1.25rem/1.3 var(--font-family-base);
  --font-u2-700: 700 1.0625rem/1.3 var(--font-family-base);
  --font-u2-600: 600 1.0625rem/1.3 var(--font-family-base);
  --font-u2-500: 500 1.0625rem/1.3 var(--font-family-base);
  --font-u2-400: 400 1.0625rem/1.3 var(--font-family-base);
  --font-u3-700: 700 1rem/1.3 var(--font-family-base);
  --font-u3-600: 600 1rem/1.3 var(--font-family-base);
  --font-u3-500: 500 1rem/1.3 var(--font-family-base);
  --font-u3-400: 400 1rem/1.3 var(--font-family-base);
  --font-u4-700: 700 0.875rem/1.3 var(--font-family-base);
  --font-u4-600: 600 0.875rem/1.3 var(--font-family-base);
  --font-u4-500: 500 0.875rem/1.3 var(--font-family-base);
  --font-u4-400: 400 0.875rem/1.3 var(--font-family-base);
  --font-u5-700: 700 0.75rem/1.3 var(--font-family-base);
  --font-u5-600: 600 0.75rem/1.3 var(--font-family-base);
  --font-u5-500: 500 0.75rem/1.3 var(--font-family-base);
  --font-u5-400: 400 0.75rem/1.3 var(--font-family-base);
  --font-m1-700: 700 1.25rem/1.2 var(--font-family-base);
  --font-m1-600: 600 1.25rem/1.2 var(--font-family-base);
  --font-m1-500: 500 1.25rem/1.2 var(--font-family-base);
  --font-m2-700: 700 1.125rem/1.2 var(--font-family-base);
  --font-m2-600: 600 1.125rem/1.2 var(--font-family-base);
  --font-m2-500: 500 1.125rem/1.2 var(--font-family-base);
  --font-m2-400: 400 1.125rem/1.2 var(--font-family-base);
  --font-m3-700: 700 1rem/1.2 var(--font-family-base);
  --font-m3-600: 600 1rem/1.2 var(--font-family-base);
  --font-m3-500: 500 1rem/1.2 var(--font-family-base);
  --font-m3-400: 400 1rem/1.2 var(--font-family-base);
  --primary-default: #1572ed;
  --primary-soft: #4b94f2;
  --primary-strong: #1266d4;
  --primary-heavy: #0c4d9c;
  --card1-solid: #0223e0;
  --card1-grad-h: linear-gradient(90deg, #0223e0 0%, #0c31fd 100%);
  --card1-grad-v: linear-gradient(180deg, #0223e0 0%, #0c31fd 100%);
  --card1-grad-d: linear-gradient(156deg, #0223e0 0%, #0c31fd 100%);
  --card2-solid: #0074e8;
  --card2-grad-h: linear-gradient(90deg, #012ced 0%, #0074e8 100%);
  --card2-grad-v: linear-gradient(180deg, #012ced 0%, #0074e8 100%);
  --card2-grad-d: linear-gradient(156deg, #012ced 0%, #0074e8 100%);
  --card3-solid: #000a75;
  --card3-grad-h: linear-gradient(90deg, #000a75 0%, #0012c8 100%);
  --card3-grad-v: linear-gradient(180deg, #000a75 0%, #0012c8 100%);
  --card3-grad-d: linear-gradient(156deg, #000a75 0%, #0012c8 100%);
  --card4-solid: #007f85;
  --card4-grad-h: linear-gradient(90deg, #007f85 0%, #00a9b2 100%);
  --card4-grad-v: linear-gradient(180deg, #007f85 0%, #00a9b2 100%);
  --card4-grad-d: linear-gradient(156deg, #007f85 0%, #00a9b2 100%);
  --text-default: #1f2428;
  --text-strong: #0a0c0e;
  --text-subtext1: #535a63;
  --text-subtext2: #656d77;
  --text-description: #a6afb9;
  --text-disabled: #bdc5ce;
  --text-black: #000;
  --text-white: #fff;
  --text-success: #39d674;
  --text-error: #dc3b3b;
  --text-warning: #e65f00;
  --border-gray-default: #edf0f3;
  --border-gray-strong: #e2e6eb;
  --border-gray-soft: #f3f5f7;
  --border-black: #000;
  --border-white: #fff;
  --border-dark100: #14171a;
  --border-dark50: rgba(20, 23, 26, 0.5);
  --background-gray-default: #f8f9fa;
  --background-gray-soft: #fbfcfd;
  --background-gray-strong: #f3f5f7;
  --background-gray-deep1: #edf0f3;
  --background-gray-deep2: #bdc5ce;
  --background-blue-default: #f3f8fe;
  --background-blue-strong: #e4effe;
  --background-blue-soft: #f8fbff;
  --background-dark: #0a0c0e;
  --background-white: #fff;
  --background-dimmed: rgba(0, 0, 0, 0.6);
  --component-dark: #0a0c0e;
  --component-white: #fff;
  --component-bg-default: #f3f5f7;
  --component-bg-light: #f8f9fa;
  --shadow-blurred: 0 1rem 1.25rem 0 rgba(0, 0, 0, 0.06);
  --shadow-thin: 0 1px 2px 0 rgba(0, 0, 0, 0.06), 0 0 1px 0 rgba(0, 0, 0, 0.06);
  --shadow-light: 0 2px 0.5rem 0 rgba(0, 0, 0, 0.06),
    0 1px 0.25rem 0 rgba(0, 0, 0, 0.06), 0 0 1px 0 rgba(0, 0, 0, 0.06);
  --shadow-strong: 0 0.375rem 0.75rem 0 rgba(0, 0, 0, 0.08),
    0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.06), 0 0 0.25rem 0 rgba(0, 0, 0, 0.06);
  --shadow-heavy: 0 1rem 1.25rem 0 rgba(0, 0, 0, 0.08),
    0 0.5rem 1rem 0 rgba(0, 0, 0, 0.06), 0 0 0.5rem 0 rgba(0, 0, 0, 0.06);
  --icon-black: #434a52;
  --icon-gray-strong: #656d77;
  --icon-gray-default: #bdc5ce;
  --icon-white: #fff;
  --forms-border-error: #ffc2c2;
  --footer-border-gray: #d3d9e0;
  --grid-columns: 12;
  --grid-gap: 1.25rem;
  --grid-max: 100rem;
  --sticky-y: 8.125rem;
  --sticky-delay: 0.2s;
  --history1-light: #c1dcfb;
  --history1-strong: #0b1e69;
  --history2-light: #c1cffb;
  --history2-strong: #0e0b69;
  --history3-light: #c1e5fb;
  --history3-strong: #0b5069;
  --history4-light: #cfe8b6;
  --history4-strong: #2b5329;
  --base-mg-ratio: 1;
  --base-num-6: 0.375rem;
  --base-num-8: 0.5rem;
  --base-num-12: 0.75rem;
  --base-num-16: 1rem;
  --base-num-24: 1.5rem;
  --base-num-32: 2rem;
  --base-num-40: 2.5rem;
  --base-num-48: 3rem;
  --base-num-56: 3.5rem;
  --base-num-64: 4rem;
  --base-num-80: 5rem;
  --base-num-96: 6rem;
  --base-num-120: 7.5rem;
  --base-num-160: 10rem;
  --rwd-mg-6: calc(var(--base-num-6) * var(--base-mg-ratio));
  --rwd-mg-8: calc(var(--base-num-8) * var(--base-mg-ratio));
  --rwd-mg-12: calc(var(--base-num-12) * var(--base-mg-ratio));
  --rwd-mg-16: calc(var(--base-num-16) * var(--base-mg-ratio));
  --rwd-mg-24: calc(var(--base-num-24) * var(--base-mg-ratio));
  --rwd-mg-32: calc(var(--base-num-32) * var(--base-mg-ratio));
  --rwd-mg-40: calc(var(--base-num-40) * var(--base-mg-ratio));
  --rwd-mg-48: calc(var(--base-num-48) * var(--base-mg-ratio));
  --rwd-mg-56: calc(var(--base-num-56) * var(--base-mg-ratio));
  --rwd-mg-64: calc(var(--base-num-64) * var(--base-mg-ratio));
  --rwd-mg-80: calc(var(--base-num-80) * var(--base-mg-ratio));
  --rwd-mg-96: calc(var(--base-num-96) * var(--base-mg-ratio));
  --rwd-mg-120: calc(var(--base-num-120) * var(--base-mg-ratio));
  --rwd-mg-160: calc(var(--base-num-160) * var(--base-mg-ratio));
}

html {
  font-size: 100%;
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  min-height: 100vh;
  background-color: var(--background-white);
  color: var(--text-default);
  line-height: 1.5;
  font-family: var(--font-family-base);
  word-break: keep-all;
  -webkit-font-smoothing: antialiased;
}

a {
  color: inherit;
}

button {
  background-color: transparent;
  color: inherit;
  font-family: inherit;
  cursor: pointer;
}

.d1 {
  font: var(--font-d1-600) !important;
  letter-spacing: -0.02em;
}

.d2 {
  font: var(--font-d2-600) !important;
  letter-spacing: -0.02em;
}

.d3 {
  font: var(--font-d3-600) !important;
  letter-spacing: -0.02em;
}

.d4 {
  font: var(--font-d4-600) !important;
  letter-spacing: -0.02em;
}

.h1 {
  font: var(--font-h1-600) !important;
  letter-spacing: -0.02em;
}

.h2 {
  font: var(--font-h2-600) !important;
  letter-spacing: -0.02em;
}

.h3 {
  font: var(--font-h3-600) !important;
  letter-spacing: -0.02em;
}

.h4 {
  font: var(--font-h4-600) !important;
  letter-spacing: -0.02em;
}

.h5 {
  font: var(--font-h5-600) !important;
}

.b1 {
  font: var(--font-b1-500) !important;
  letter-spacing: -0.02em;
}

.b2 {
  font: var(--font-b2-500) !important;
  letter-spacing: -0.02em;
}

.b3 {
  font: var(--font-b3-500) !important;
}

.b4 {
  font: var(--font-b4-500) !important;
}

.b5 {
  font: var(--font-b5-500) !important;
}

.b6 {
  font: var(--font-b6-500) !important;
}

.b7 {
  font: var(--font-b7-500) !important;
}

.u1 {
  font: var(--font-u1-500) !important;
}

.u2 {
  font: var(--font-u2-500) !important;
}

.u3 {
  font: var(--font-u3-500) !important;
}

.u4 {
  font: var(--font-u4-500) !important;
}

.u5 {
  font: var(--font-u5-500) !important;
}

.m1 {
  font: var(--font-m1-700) !important;
  letter-spacing: -0.015em;
}

.m2 {
  font: var(--font-m2-500) !important;
  letter-spacing: -0.015em;
}

.m3 {
  font: var(--font-m3-500) !important;
  letter-spacing: -0.015em;
}

.vertical-bar {
  display: flex;
  align-items: center;
  gap: 0.875rem;
}
.vertical-bar::before {
  content: "";
  flex-shrink: 0;
  height: 1.25rem;
  border-left: 2px solid var(--border-dark100);
}

.accent {
  padding: 0.25rem;
  border-radius: 0.25rem;
  background-color: var(--background-blue-strong);
  color: var(--primary-strong);
  font-weight: 700;
}

.hidden {
  overflow: hidden !important;
  white-space: nowrap !important;
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  forced-color-adjust: none !important;
}

body.lock {
  position: fixed;
  top: calc(var(--scroll-y) * -1);
  width: 100%;
  overflow-y: auto;
  scroll-behavior: auto;
}

.no-transition {
  transition: none !important;
}

.pc {
  display: block !important;
}
.tablet {
  display: none !important;
}
.mobile {
  display: none !important;
}

.block {
  display: block !important;
}

.none {
  display: none !important;
}

.flex {
  display: flex !important;
}

.inline-flex {
  display: inline-flex !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row {
  flex-direction: row !important;
}

.justify-start {
  justify-content: flex-start !important;
}

.justify-center {
  justify-content: center !important;
}

.justify-end {
  justify-content: flex-end !important;
}

.justify-between {
  justify-content: space-between !important;
}

.align-start {
  align-items: flex-start !important;
}

.align-center {
  align-items: center !important;
}

.align-end {
  align-items: flex-end !important;
}

.uppercase {
  text-transform: uppercase !important;
}

.lowercase {
  text-transform: lowercase !important;
}

.regular {
  font-weight: 400 !important;
}

.medium {
  font-weight: 500 !important;
}

.semi-bold {
  font-weight: 600 !important;
}

.bold {
  font-weight: 700 !important;
}

.left {
  text-align: left !important;
}

.center {
  text-align: center !important;
}

.right {
  text-align: right !important;
}

.va-top {
  vertical-align: top !important;
}

.va-middle {
  vertical-align: middle !important;
}

.va-bottom {
  vertical-align: bottom !important;
}

.break-all {
  word-break: break-all !important;
}
.gap-0 {
  gap: 0 !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}
.gap-2 {
  gap: 2px !important;
}

.mt-2 {
  margin-top: 2px !important;
}

.mb-2 {
  margin-bottom: 2px !important;
}

.gap-4 {
  gap: 0.25rem !important;
}
.mt-4 {
  margin-top: 0.25rem !important;
}
.mb-4 {
  margin-bottom: 0.25rem !important;
}

.gap-5 {
  gap: 0.375rem !important;
}
.mt-6 {
  margin-top: var(--rwd-mg-6) !important;
}
.mb-6 {
  margin-bottom: var(--rwd-mg-6) !important;
}

.gap-8 {
  gap: 0.5rem !important;
}
.mt-8 {
  margin-top: var(--rwd-mg-8) !important;
}
.mb-8 {
  margin-bottom: var(--rwd-mg-8) !important;
}

.gap-10 {
  gap: 0.625rem !important;
}
.mt-10 {
  margin-top: 0.625rem !important;
}
.mb-10 {
  margin-bottom: 0.625rem !important;
}

.gap-12 {
  gap: 0.75rem !important;
}
.mt-12 {
  margin-top: var(--rwd-mg-12) !important;
}
.mb-12 {
  margin-bottom: var(--rwd-mg-12) !important;
}

.gap-16 {
  gap: 1rem !important;
}
.mt-16 {
  margin-top: var(--rwd-mg-16) !important;
}
.mb-16 {
  margin-bottom: var(--rwd-mg-16) !important;
}

.gap-20 {
  gap: 1.25rem !important;
}
.mt-20 {
  margin-top: 1.25rem !important;
}
.mb-20 {
  margin-bottom: 1.25rem !important;
}

.gap-24 {
  gap: 1.5rem !important;
}
.mt-24 {
  margin-top: var(--rwd-mg-24) !important;
}
.mb-24 {
  margin-bottom: var(--rwd-mg-24) !important;
}

.gap-32 {
  gap: 2rem !important;
}
.mt-32 {
  margin-top: var(--rwd-mg-32) !important;
}
.mb-32 {
  margin-bottom: var(--rwd-mg-32) !important;
}

.gap-40 {
  gap: 2.5rem !important;
}
.mt-40 {
  margin-top: var(--rwd-mg-40) !important;
}
.mb-40 {
  margin-bottom: var(--rwd-mg-40) !important;
}

.gap-48 {
  gap: 3rem !important;
}
.mt-48 {
  margin-top: var(--rwd-mg-48) !important;
}
.mb-48 {
  margin-bottom: var(--rwd-mg-48) !important;
}

.gap-56 {
  gap: 3.5rem !important;
}
.mt-56 {
  margin-top: var(--rwd-mg-56) !important;
}
.mb-56 {
  margin-bottom: var(--rwd-mg-56) !important;
}

.gap-60 {
  gap: 3.75rem !important;
}
.mt-60 {
  margin-top: 3.75rem !important;
}
.mb-60 {
  margin-bottom: 3.75rem !important;
}

.gap-64 {
  gap: 4rem !important;
}
.mt-64 {
  margin-top: var(--rwd-mg-64) !important;
}
.mb-64 {
  margin-bottom: var(--rwd-mg-64) !important;
}

.gap-70 {
  gap: 4.375rem !important;
}

.mt-70 {
  margin-top: 4.375rem !important;
}

.mb-70 {
  margin-bottom: 4.375rem !important;
}

.gap-80 {
  gap: 5rem !important;
}
.mt-80 {
  margin-top: var(--rwd-mg-80) !important;
}
.mb-80 {
  margin-bottom: var(--rwd-mg-80) !important;
}

.gap-88 {
  gap: 5.5rem !important;
}
.mt-88 {
  margin-top: 5.5rem !important;
}
.mb-88 {
  margin-bottom: 5.5rem !important;
}

/* .gap-100 {
  gap: 6.25rem !important;
}
.mt-100 {
  margin-top: 6.25rem !important;
}
.mb-100 {
  margin-bottom: 6.25rem !important;
} */

.gap-120 {
  gap: 7.5rem !important;
}
.mt-120 {
  margin-top: var(--rwd-mg-120) !important;
}
.mb-120 {
  margin-bottom: var(--rwd-mg-120) !important;
}

/* .gap-140 {
  gap: 8.75rem !important;
}
.mt-140 {
  margin-top: 8.75rem !important;
}
.mb-140 {
  margin-bottom: 8.75rem !important;
} */

.gap-160 {
  gap: 10rem !important;
}
.mt-160 {
  margin-top: var(--rwd-mg-160) !important;
}
.mb-160 {
  margin-bottom: var(--rwd-mg-160) !important;
}

/* .gap-200 {
  gap: 12.5rem !important;
}

.mt-200 {
  margin-top: 12.5rem !important;
}

.mb-200 {
  margin-bottom: 12.5rem !important;
} */
/* .gap-240 {
  gap: 15rem !important;
}

.mt-240 {
  margin-top: 15rem !important;
}

.mb-240 {
  margin-bottom: 15rem !important;
} */
.mx-auto {
  margin: 0 auto !important;
}

.mt-auto {
  margin-top: auto !important;
}

.order-1 {
  order: 1 !important;
}

.order-2 {
  order: 2 !important;
}

.full-height {
  height: 100% !important;
}

.text-default {
  color: var(--text-default) !important;
}

.text-white {
  color: var(--text-white) !important;
}

.text-strong {
  color: var(--text-strong) !important;
}

.text-subtext1 {
  color: var(--text-subtext1) !important;
}

.text-subtext2 {
  color: var(--text-subtext2) !important;
}

.text-primary-default {
  color: var(--primary-default) !important;
}

.text-primary-strong {
  color: var(--primary-strong) !important;
}

.z-1 {
  z-index: 1;
}

.skip {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  opacity: 0;
  position: fixed;
  top: 1.625rem;
  left: 50%;
  z-index: 400;
  width: 9.375rem;
  padding: 0.9375rem 0 0.9375rem 0.625rem;
  border-radius: 1.875rem;
  background-color: var(--primary-default);
  box-shadow: 0 0 1.25rem 0 rgba(0, 0, 0, 0.15);
  color: var(--text-white);
  transform: translate(-50%, -150%);
  pointer-events: none;
  transform-origin: 50% 0;
  transition: all 0.6s;
  font: var(--font-b4-700);
}
.skip::after {
  content: "";
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-skip.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.25rem 1.25rem;
  vertical-align: middle;
}
.skip:focus {
  opacity: 1;
  width: 11.25rem;
  background-color: var(--background-dark);
  transform: translate(-50%, 0);
  pointer-events: auto;
}
.skip:focus-visible {
  outline: none;
}

.header {
  position: relative;
  z-index: 300;
  height: 6.875rem;
}

.header-frame {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 1rem;
  overflow: hidden;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 20;
  width: 100%;
  height: 6.875rem;
  padding: 0 1.5rem;
  background-color: var(--background-white);
  transition: padding 0.6s, box-shadow 1s, transform 0.2s;
}
.header.hide .header-frame {
  transform: translateY(-100%);
}
.header.hover .header-frame {
  box-shadow: 0 1.875rem 5rem 0 rgba(0, 0, 0, 0.08);
  transition: padding 0.6s, box-shadow 0.2s, transform 0.6s;
}

.header-wrap {
  display: flex;
  justify-content: space-between;
  max-width: 88.75rem;
  flex: 1;
}

.header-logo {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  height: 6.875rem;
}

.header-logo-link {
  display: inline-flex;
  outline-offset: 0.3125rem;
}

.header-logo-img {
  width: 13.5rem;
  height: 3rem;
}

.header-nav {
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
  flex: 1;
  height: 100%;
}

.header-gnb {
  width: 100%;
  max-width: 45rem;
}

.header-mnb {
  display: none;
  overflow: hidden;
  position: fixed;
  top: 3.5rem;
  left: 0;
  z-index: 10;
  width: 100%;
  height: calc(100% - 3.5rem);
}

.header-feature {
  display: none;
  align-items: center;
  flex-shrink: 0;
}

.header-mnb-button {
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-menu.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 2.5rem 2.5rem;
  vertical-align: middle;
  display: none;
}
.header.active .header-mnb-button {
  background-image: url(/img/section/mc/icons/icon-close.svg);
}

.gnb {
  padding-top: 1.9375rem;
}

.gnb-1d-list {
  display: flex;
}

.gnb-1d-item {
  flex: 1;
  position: relative;
  min-width: 0;
  padding: 0.75rem 1.25rem;
  transition: flex 0.3s;
}

.gnb-1d-item::before {
  content: "";
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 2rem;
  border-left: 1px solid var(--border-gray-default);
  transition: opacity 0.6s;
}
.header.hover .gnb-1d-item {
  padding: 0.75rem 1.25rem 2rem;
}
.header.hover .gnb-1d-item::before {
  opacity: 1;
}

.gnb-1d-link {
  outline-offset: 0.3125rem;
  display: inline-flex;
  align-items: center;
  color: var(--text-default);
  white-space: nowrap;
  font: var(--font-b2-700);
  letter-spacing: -0.02em;
}

.gnb-2d-list {
  display: none;
  flex-direction: column;
  gap: 0.5rem;
  margin: 0 -1.25rem;
  padding: 1.5rem 0 0;
}
.header.hover .gnb-2d-list {
  display: flex;
}

.gnb-2d-item {
  padding: 0.75rem 1.25rem;
}

.gnb-2d-link {
  outline-offset: 0.3125rem;
  display: inline-flex;
  font: var(--font-b4-500);
}

.mnb-frame {
  display: flex;
  flex-direction: column;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 200;
  width: 100%;
  max-width: 26.875rem;
  height: 100%;
  transform: translateX(100%);
}

.mnb {
  display: flex;
  flex: 1;
  overflow: hidden;
  position: relative;
  background-color: var(--background-white);
  box-shadow: -0.625rem 0px 0.625rem 0px rgba(0, 0, 0, 0.05);
}
.mnb::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 7.5rem;
  right: 0;
  height: 1.25rem;
  background-image: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.05),
    rgba(0, 0, 0, 0)
  );
}

.mnb-nav {
  flex-shrink: 0;
  overflow-x: hidden;
  overflow-y: auto;
  width: 7.5rem;
  padding-bottom: 1.25rem;
  height: 100%;
  background-color: var(--background-gray-strong);
}

.mnb-1d-link {
  display: block;
  padding: 1rem 1.25rem;
  outline-offset: -0.1875rem;
  font: var(--font-b2-600);
}

.mnb-1d-link.active {
  background-color: var(--text-white);
  color: var(--primary-default);
  font-weight: 700;
}

.mnb-groups {
  flex: 1;
}

/* .mnb-group {
  display: block;
}
.mnb-group[hidden] {
  display: none;
} */

/* .mnb-group:last-child {
  border-bottom: 0;
} */

/* .mnb-group:last-child .mnb-2d-list:last-child {
  padding-bottom: calc(100dvh - 9.8125rem - 3.5rem - 3.125rem);
} */

.mnb-2d-item + .mnb-2d-item {
  position: relative;
}
.mnb-2d-item + .mnb-2d-item::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0.75rem;
  left: 0.75rem;
  border-top: 1px solid var(--border-gray-default);
}

.mnb-2d-link {
  display: flex;
  padding: 1rem 1.25rem;
  outline-offset: -0.1875rem;
  font: var(--font-b3-500);
}

.mnb-3d-list {
  display: flex;
  flex-direction: column;
  margin-top: -0.5rem;
  padding-bottom: 0.625rem;
}

.mnb-3d-link {
  display: flex;
  padding: 0.5rem 1.5rem 0.5rem 2rem;
  outline-offset: -0.1875rem;
  color: var(--text-subtext1);
  font: var(--font-m3-500);
  letter-spacing: -0.015em;
}

.container {
  display: block;
  position: relative;
  z-index: 100;
}

.navs {
  display: flex;
  justify-content: center;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
}
.navs.pin {
  position: fixed !important;
  margin-top: 0;
}

.navs-frame {
  background: linear-gradient(
      0deg,
      rgba(3, 144, 244, 0.03) 0%,
      rgba(3, 144, 244, 0.03) 100%
    ),
    rgba(255, 255, 255, 0.9);
  border-radius: 2.0625rem;
  -webkit-backdrop-filter: blur(0.3125rem);
  backdrop-filter: blur(0.3125rem);
}

.navs-list {
  display: flex;
  flex-wrap: wrap;
}

.navs-link {
  display: inline-flex;
  align-items: center;
  position: relative;
  z-index: 2;
  height: 4rem;
  padding: 0 2rem;
  border-radius: 2.0625rem;
  outline-offset: -2px;
  color: var(--text-subtext1);
  white-space: nowrap;
  transition: color 0.4s 0.3s;
  font: var(--font-m3-500);
  letter-spacing: -0.015em;
}
.navs-link.active {
  outline-offset: -0.3125rem;
  background-color: var(--background-dark);
  color: var(--text-white);
}

.navs.type2 {
  width: 100%;
  max-width: 88.75rem;
  margin: 0 auto;
}
.type2 .navs-frame {
  width: 100%;
  background: none;
}
.type2 .navs-list {
  gap: 0.625rem;
}
.type2 .navs-item {
  flex: 1;
}
.type2 .navs-item:first-child {
  margin-left: 0;
}
.type2 .navs-link {
  justify-content: center;
  width: 100%;
  height: auto;
  padding: 1.25rem;
  background: var(--background-gray-deep1);
  border-radius: 8px;
  font: var(--font-b3-600);
}
.type2 .navs-link.active {
  background: var(--background-dark);
  font-weight: 700;
}

.sub-visual {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 22.5rem;
  background-repeat: no-repeat;
  background-size: 120rem 22.5rem;
  background-position: 50% 0;
}
.sub-visual.bg-history {
  background-image: url(/img/section/mc/images/img-title-history.jpg);
}
.sub-visual.bg-greeting {
  background-image: url(/img/section/mc/images/img-title-greeting.jpg);
}
.sub-visual.bg-org {
  background-image: url(/img/section/mc/images/img-title-org.jpg);
}
.sub-visual.bg-finance {
  background-image: url(/img/section/mc/images/img-title-finance.jpg);
}
.sub-visual.bg-branch {
  background-image: url(/img/section/mc/images/img-title-branch.jpg);
}
.sub-visual.bg-biz {
  background-image: url(/img/section/mc/images/img-title-biz.jpg);
}
.sub-visual.bg-target {
  background-image: url(/img/section/mc/images/img-title-target.jpg);
}
.sub-visual.bg-product {
  background-image: url(/img/section/mc/images/img-title-product.jpg);
}
.sub-visual.bg-step {
  background-image: url(/img/section/mc/images/img-title-step.jpg);
}
.sub-visual.bg-counsel {
  background-image: url(/img/section/mc/images/img-title-counsel.jpg);
}
.sub-visual.bg-notice {
  background-image: url(/img/section/mc/images/img-title-notice.jpg);
}
.sub-visual.bg-press {
  background-image: url(/img/section/mc/images/img-title-press.jpg);
}

.sub-frame {
  width: 100rem;
  margin: 0 auto;
}
.sub-title {
  font: var(--font-h1-500);
  color: var(--text-white);
  text-align: center;
  letter-spacing: -0.02em;
}
.sub-tit {
  display: block;
  margin-bottom: 0.75rem;
  font: var(--font-h5-500);
}

.historys {
  transform-style: preserve-3d;
  perspective: 93.75rem;
}
.history-range {
  font-family: "Wooridaum";
  font-size: 6.25rem;
  color: var(--text-description);
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -0.036em;
}
.history-slogan {
  margin-top: 3rem;
  font-size: 2.5rem;
  color: var(--text-disabled);
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: -0.036em;
}
.history-item {
  display: flex;
  position: relative;
  padding-bottom: 4rem;
}
.history-item:after {
  content: "";
  position: absolute;
  top: 1.75rem;
  left: 11.6875rem;
  bottom: -1.75rem;
  width: 1px;
  background: #d9d9d9;
}
.history-item:last-child:after {
  content: none;
}
.month-row {
  display: flex;
  margin-top: 1rem;
}
.month-row:first-child {
  margin-top: 0.875rem;
}
.history-month {
  flex-shrink: 0;
  display: inline-block;
  width: 2.5rem;
  margin-right: 1.25rem;
  color: var(--text-description);
  font: var(--font-b3-700);
}

.contents {
  padding: 10rem 0 8rem;
  transition: padding 0.6s;
}

.top {
  display: flex;
  justify-content: center;
  padding: 2rem 0.625rem 0.75rem;
}

.top-button {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.25rem 0.75rem;
  border-radius: 1.25rem;
  font: var(--font-b3-700);
}
.top-button::after {
  content: "";
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-up.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.25rem 1.25rem;
  vertical-align: middle;
}

.footer {
  padding: 1.25rem;
  transition: padding 0.6s;
}

.footer-frame {
  padding: clamp(1.25rem, 2.5vw, 4rem);
  padding-top: clamp(3.5rem, 2.5vw, 4.5rem);
  padding-bottom: 3.5rem;
  border-radius: 1.25rem;
  background-color: var(--background-gray-deep1);
  transition: border-radius 0.6s;
}

.footer-innner {
  display: grid;
  grid-template-columns: repeat(var(--grid-columns), 1fr);
  margin: 0 auto;
  max-width: 88.75rem;
  width: 100%;
}

.footer-logo {
  display: inline-flex;
  grid-column-end: span 3;
}

.footer-logo-link {
  display: inline-flex;
  outline-offset: 0.5rem;
}

.footer-logo-image {
  width: 12.5rem;
  height: 2.75rem;
}

.footer-info {
  display: flex;
  flex-direction: column;
  grid-column-end: span 9;
}

.footer-shortcut-list {
  display: flex;
  flex-wrap: wrap;
  column-gap: 3.0625rem;
  row-gap: 0.5rem;
}

.footer-shortcut-item {
  position: relative;
}
.footer-shortcut-item::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -1.5625rem;
  width: 1px;
  height: 1rem;
  background-color: var(--background-gray-deep2);
  transform: translateY(-50%);
}
.footer-shortcut-item:last-child::after {
  content: none;
}

.footer-shortcut-link {
  outline-offset: 0.3125rem;
  color: var(--text-default);
  font: var(--font-b4-500);
}

.footer-contact {
  margin-top: 4rem;
}

.footer-contact-title {
  color: var(--text-default);
  font: var(--font-b5-600);
}

.footer-contact-title ~ .footer-contact-title {
  margin-top: 1rem;
}

.footer-contact-info {
  display: flex;
  flex-wrap: wrap;
  column-gap: 2.0625rem;
  color: var(--text-subtext2);
  font: var(--font-b5-500);
}

.footer-contact-info li {
  position: relative;
}
.footer-contact-info li::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -1.0625rem;
  width: 1px;
  height: 1rem;
  background-color: var(--background-gray-deep2);
  transform: translateY(-50%);
}
.footer-contact-info li:last-child::after {
  content: none;
}

.footer-copyright {
  margin-top: 1rem;
  color: var(--text-subtext2);
  font: var(--font-b5-500);
}

.section {
  width: 100%;
  max-width: 88.75rem;
  margin: 0 auto;
}

.section.narrowed {
  max-width: 75rem;
}
.section.expanded {
  width: auto;
  max-width: none;
  margin: 0 -3.75rem;
}
.section.wide {
  max-width: 100%;
}
.section.wide .grid {
  max-inline-size: 100%;
}

.grid {
  display: grid;
  grid-template-columns: repeat(var(--grid-columns), 1fr);
  gap: var(--grid-gap);
  margin-inline: auto;
  max-inline-size: var(--grid-max);
}

.col-1 {
  grid-column-end: span 1;
}

.col-2 {
  grid-column-end: span 2;
}

.col-3 {
  grid-column-end: span 3;
}

.col-4 {
  grid-column-end: span 4;
}

.col-5 {
  grid-column-end: span 5;
}

.col-6 {
  grid-column-end: span 6;
}

.col-7 {
  grid-column-end: span 7;
}

.col-8 {
  grid-column-end: span 8;
}

.col-9 {
  grid-column-end: span 9;
}

.col-10 {
  grid-column-end: span 10;
}

.col-11 {
  grid-column-end: span 11;
}

.col-12 {
  grid-column-end: span 12;
}

.start-1 {
  grid-column-start: 1;
}

.start-2 {
  grid-column-start: 2;
}

.start-3 {
  grid-column-start: 3;
}

.start-4 {
  grid-column-start: 4;
}

.start-5 {
  grid-column-start: 5;
}

.start-6 {
  grid-column-start: 6;
}

.start-7 {
  grid-column-start: 7;
}

.start-8 {
  grid-column-start: 8;
}

.start-9 {
  grid-column-start: 9;
}

.start-10 {
  grid-column-start: 10;
}

.start-11 {
  grid-column-start: 11;
}

.start-12 {
  grid-column-start: 12;
}

.field ~ .field {
  margin-top: 2.5rem;
}

.search {
  position: relative;
  width: 20rem;
}
.search .text::placeholder {
  font: var(--font-u2-500);
}

.search-button {
  position: absolute;
  top: 50%;
  right: 0.625rem;
  border-radius: 1rem;
  transform: translateY(-50%);
}
.search-button::after {
  content: "";
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-search.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.25rem 1.25rem;
  vertical-align: middle;
}
.scroll-x.expanded {
  margin: 0 -1.5rem;
}
.scroll-x::-webkit-scrollbar {
  display: none;
}

.popup {
  display: none;
  justify-content: center;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 100%;
  height: 100%;
  padding: 6.125rem 1.25rem 3.75rem;
  background-color: var(--background-dimmed);
}
.popup[aria-hidden="false"] {
  display: flex;
}

.popup-container {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  max-width: 66.25rem;
  max-height: 100%;
  border-radius: 2.5rem;
  background-color: var(--background-white);
}

.popup-close {
  position: absolute;
  top: -4.25rem;
  right: 0;
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-close-white.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 3rem 3rem;
  vertical-align: middle;
}

.popup-head {
  padding: 3.5rem 4rem 1.25rem;
}

.popup-title {
  font: var(--font-h3-600);
  letter-spacing: -0.02em;
}

.popup-body {
  overflow-x: hidden;
  overflow-y: auto;
}

.popup-contents {
  padding: 0 4rem 3.5rem;
}

.notice {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 100%;
  height: 100%;
  padding: 6.125rem 1.25rem 3.75rem;
  background-color: var(--background-dimmed);
  word-break: break-word;
}
.notice[aria-hidden="false"] {
  display: flex;
}

.notice-container {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  max-width: 49.375rem;
  max-height: 100%;
  border-radius: 2.5rem;
  background-color: var(--background-white);
}

.notice-close {
  position: absolute;
  top: -4.25rem;
  right: 0;
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-close-white.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 3rem 3rem;
  vertical-align: middle;
}

.notice-head {
  padding: 4rem 3rem 2.5rem;
}

.notice-title {
  font: var(--font-h3-600);
  letter-spacing: -0.02em;
}

.notice-body {
  overflow-x: hidden;
  overflow-y: auto;
  margin-right: 1.5rem;
}

.notice-contents {
  padding: 0 1.5rem 3rem 3rem;
}

.notice-foot {
  padding: 1.5rem 3rem 3rem;
}

.video-popup-dim {
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 100%;
  height: 100%;
  background-color: var(--background-dimmed);
  transition: opacity 0.6s;
}
.video-popup-dim.active {
  opacity: 1;
}

.video-popup {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2000;
  width: calc(100% - 2.5rem);
  max-width: 100rem;
  transform: scale(0.9) translate(-50%, -50%);
  transform-origin: 0 0;
  transition: transform 0.6s;
}
.video-popup-dim.active .video-popup {
  transform: scale(1) translate(-50%, -50%);
}

.video-popup-close {
  position: absolute;
  top: -4.25rem;
  right: 0;
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-close-white.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 3rem 3rem;
  vertical-align: middle;
}

.video-popup-contents {
  position: relative;
  padding-right: 33.75rem;
  overflow: hidden;
  height: 100%;
  border-radius: 2.5rem;
}

.video-popup-iframe {
  flex: 8;
  overflow: hidden;
  background-color: var(--background-gray-strong);
}

.video-popup-resizer {
  overflow: hidden;
  position: relative;
  height: 100%;
  padding-bottom: 56.23%;
}
.video-popup-resizer iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--background-gray-deep2);
}

.video-popup-info {
  display: flex;
  flex-direction: column;
  overflow-x: hidden;
  overflow-y: auto;
  position: absolute;
  top: 0;
  right: 0;
  width: 33.75rem;
  height: 100%;
  background-color: var(--background-white);
}

.video-popup-scroller {
  padding: 4rem 3rem 2.5rem;
}

.video-popup-title {
  margin-bottom: 2.5rem;
  color: var(--text-default);
  font: var(--font-h3-600);
  letter-spacing: -0.02em;
}

.video-popup-scroll {
  color: var(--text-default);
  font: var(--font-b4-600);
}

.pin {
  position: sticky;
  top: var(--sticky-y);
  transition: top var(--sticky-delay);
}

.flex-pin {
  align-self: flex-start;
  position: sticky;
  top: var(--sticky-y);
  z-index: 1;
  transition: top var(--sticky-delay);
}

.grid-pin {
  align-self: start;
  position: sticky;
  top: var(--sticky-y);
  z-index: 1;
  transition: top var(--sticky-delay);
}

.gray-box {
  padding: 4rem;
  border-radius: 1rem;
  background-color: var(--background-gray-default);
  transition: padding 0.6s;
}

.images {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.image {
  overflow: hidden;
  border-radius: 1rem;
}
.image img {
  margin: 0 auto;
}

.image-frame {
  overflow: hidden;
  position: relative;
  border-radius: 1.25rem;
  background-color: var(--background-gray-soft);
  border: 1px solid var(--border-gray-soft);
}
.image-frame img {
  margin: 0 auto;
}

.image-title {
  font: var(--font-h3-600);
  letter-spacing: -0.02em;
}

.image-desc {
  font: var(--font-b4-400);
}

.image-unit {
  color: var(--text-subtext1);
  font: var(--font-b5-400);
}

.line-box {
  padding: 5rem;
  border: 1px solid var(--border-gray-strong);
  border-radius: 1rem;
}
.line-box.-target {
  padding: 4rem;
}

.text-button.type2 {
  font-size: 1.125rem;
  font-weight: 500;
}
.underline {
  color: var(--primary-default);
  text-decoration: underline;
  text-underline-offset: auto;
  text-underline-position: from-font;
}
.gray-box.type2 {
  background: #fff8f8;
  border: 1px solid var(--border-gray-strong);
}
.gray-box.type3 {
  padding: 5rem 4rem;
  border: 1px solid var(--border-gray-strong);
}

.button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 8.75rem;
  min-height: 4.625rem;
  padding: 0.5rem 2.5rem;
  border-radius: 0.5rem;
  outline-offset: 0.1875rem;
  background-color: var(--background-dark);
  color: var(--text-white);
  font: var(--font-u1-700);
}
.button.expanded {
  width: 100%;
}
.button.stretch {
  min-width: 12.1875rem;
}
.button.small {
  min-height: 3.4375rem;
  padding: 0.5rem 1.5rem;
  font: var(--font-u2-700);
}
.button.tiny {
  min-height: 2.1875rem;
  padding: 0.375rem 0.75rem;
  font: var(--font-u4-700);
}
.button.white {
  outline-offset: 0;
  background-color: var(--background-white);
  color: var(--text-default);
}
.button.blue {
  outline-offset: 0.1875rem;
  background-color: var(--primary-default);
  color: var(--text-white);
}
.button.gray {
  outline-offset: 0;
  background-color: var(--background-gray-default);
  color: var(--text-default);
}

.line-button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 8.25rem;
  min-height: 4.625rem;
  padding: 0.5rem 2.5rem;
  border: 1px solid var(--border-dark100);
  border-radius: 0.5rem;
  outline-offset: 0.1875rem;
  background-color: transparent;
  color: var(--text-default);
  font: var(--font-u1-700);
}
.line-button.expanded {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.line-button.expanded-center {
  display: flex;
  justify-content: center;
  width: 100%;
}
.line-button.stretch {
  min-width: 12.1875rem;
}
.line-button.small {
  min-width: 5.8125rem;
  min-height: 3.4375rem;
  padding: 0.5rem 1.5rem;
  font: var(--font-u2-700);
}
.line-button.tiny {
  min-width: 3.8125rem;
  min-height: 2.1875rem;
  padding: 0.375rem 0.75rem;
  font: var(--font-u4-700);
}
.line-button.white {
  border-color: var(--border-white);
  color: var(--text-white);
}
.line-button.blue {
  border-color: var(--primary-default);
  color: var(--primary-default);
}
.line-button.gray {
  border-color: var(--border-gray-default);
  color: var(--text-subtext1);
}
.line-button.icon-right {
  gap: 0.5rem;
}
.line-button.icon-right::after {
  content: "";
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 0.75rem;
  height: 0.75rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-arrow-right.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 0.75rem 0.75rem;
  vertical-align: middle;
}
.line-button.icon-right.blue::after {
  background-image: url(/img/section/mc/icons/icon-arrow-right-blue.svg);
}

.text-button {
  display: inline-flex;
  align-items: center;
  padding: 2px 0;
  outline-offset: 0.3125rem;
  background-color: transparent;
  font: var(--font-u1-700);
}
.text-button.small {
  font: var(--font-u2-700);
}
.text-button.tiny {
  font: var(--font-u4-700);
}
.text-button.icon-right::after {
  content: "";
  margin-left: 0.375rem;
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1rem;
  height: 1rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-arrow-right.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1rem 1rem;
  vertical-align: middle;
}
.text-button.icon-right.white::after {
  background-image: url(/img/section/mc/icons/icon-arrow-right-white.svg);
}
.text-button.icon-outlink::before {
  content: "";
  margin-right: 0.5rem;
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 1.25rem;
  background-color: var(--background-gray-default);
  background-image: url(/img/section/mc/icons/icon-outlink.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.25rem 1.25rem;
  vertical-align: middle;
}
.text-button.icon-tooltip-fill::before {
  content: "";
  margin-right: 0.5rem;
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-tooltip-fill.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.25rem 1.25rem;
  vertical-align: middle;
}

.label {
  display: flex;
  gap: 0.3125rem;
  width: 100%;
  margin-bottom: 0.75rem;
  font: var(--font-u1-600);
}
.label.required::after {
  content: "";
  display: block;
  width: 0.375rem;
  height: 0.375rem;
  margin-top: 0.25rem;
  border-radius: 50%;
  background-color: var(--primary-default);
}

.forms {
  display: flex;
  position: relative;
  width: 100%;
}
.forms.error::after {
  content: "";
  position: absolute;
  top: 1.5625rem;
  right: 1.5rem;
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-error.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.5rem 1.5rem;
  vertical-align: middle;
}

:is(.text, .select, .textarea) {
  flex-grow: 1;
  width: 100%;
  max-width: 100%;
  border: none;
  border-radius: 1rem;
  outline: none;
  box-shadow: inset 0 0 0 1px var(--border-gray-strong);
  background-color: var(--component-white);
  color: var(--text-default);
  font: var(--font-u1-500);
}
:is(.text, .select, .textarea):focus {
  box-shadow: inset 0 0 0 2px var(--primary-default);
}
.forms.error :is(.text, .select, .textarea) {
  border-color: var(--forms-border-error);
}
:is(.text, .select, .textarea):readonly {
  background-color: var(--component-bg-default);
  color: var(--text-subtext1);
}
:is(.text, .select, .textarea):disabled {
  background-color: var(--component-bg-default);
  color: var(--text-disabled);
}
:is(.text, .select, .textarea)::placeholder {
  color: var(--text-subtext2);
}
:is(.text, .select, .textarea):disabled::placeholder {
  color: var(--text-disabled);
}

.text {
  height: 4.625rem;
  padding: 0 1.5rem;
}
.forms.error .text {
  padding-right: 3.75rem;
}
.text.small {
  height: 3.4375rem;
  padding: 0 1rem;
  border-radius: 0.75rem;
}

.textarea {
  min-height: 11rem;
  padding: 1.5rem 3.75rem 1.5rem 1.5rem;
}

.select {
  height: 4.625rem;
  padding: 0 3.25rem 0 1.5rem;
  text-overflow: ellipsis;
  background: url(/img/section/mc/icons/icon-arrow-bottom.svg) no-repeat right
    1.5rem top 50%/1.25rem 1.25rem;
}
.select.small {
  height: 3.4375rem;
  padding: 0 2rem 0 1rem;
  border-radius: 0.75rem;
  background-position: right 1rem top 50%;
  background-size: 1rem 1rem;
}
.select .forms.active {
  background-image: url(/img/section/mc/icons/icon-arrow-top.svg);
}
.forms.error .select {
  padding-right: 3.75rem;
}

.pagination {
  display: flex;
  justify-content: center;
  margin: 5rem -1.25rem 0;
}

.pagination-list {
  display: flex;
  align-items: center;
}

.pagination-page + .pagination-page {
  margin-left: 0.5rem;
}
.pagination-page .pagination-link {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  font: var(--font-b6-600);
  color: var(--text-subtext2);
}
.pagination-page .pagination-link.active {
  outline-offset: 0.1875rem;
  background-color: var(--component-dark);
  color: var(--text-white);
  cursor: default;
}

.pagination-prev {
  margin-right: 0.625rem;
}
.pagination-prev .pagination-link {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
}
.pagination-prev .pagination-link::before {
  content: "";
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-arrow-left.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.25rem 1.25rem;
  vertical-align: middle;
}

.pagination-next {
  margin-left: 0.625rem;
}
.pagination-next .pagination-link {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
}
.pagination-next .pagination-link::before {
  content: "";
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-arrow-right.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.25rem 1.25rem;
  vertical-align: middle;
}

.pagination-first .pagination-link {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
}
.pagination-first .pagination-link::before {
  content: "";
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-arrow-left-double.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.25rem 1.25rem;
  vertical-align: middle;
}

.pagination-last .pagination-link {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
}
.pagination-last .pagination-link::before {
  content: "";
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-arrow-right-double.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.25rem 1.25rem;
  vertical-align: middle;
}

[role="tabpanel"] {
  display: none;
}

[role="tabpanel"].active {
  display: block;
}

[data-accordion] [role="region"] {
  display: none;
}

/* 활성화된 패널 표시 */
[data-accordion] [role="region"].active {
  display: block;
}

.accordions {
  border-top: 3px solid var(--border-dark100);
}

.accordion {
  border-bottom: 1px solid var(--border-gray-strong);
}

.accordion [aria-controls] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 2.5rem;
  padding-left: 3rem;
  text-align: left;
  transition: background-color 0.4s;
  font: var(--font-h3-600);
  letter-spacing: -0.02em;
}
.accordion [aria-controls]::after {
  content: "";
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-arrow-bottom-bold.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 2rem 2rem;
  vertical-align: middle;
}
.accordion [aria-controls][aria-expanded="true"] {
  background-color: var(--background-gray-soft);
}
.accordion [aria-controls][aria-expanded="true"]::after {
  transform: rotate(180deg);
}

.accordion [data-accordion-frame] {
  padding: 4rem 3rem 5rem;
  border-top: 1px solid var(--border-gray-strong);
}

.file-button {
  outline-offset: 0.1875rem;
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 1.25rem;
  background-color: var(--background-gray-default);
  background-image: url(/img/section/mc/icons/icon-download.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.25rem 1.25rem;
  vertical-align: middle;
}
.file-button.white {
  background-color: var(--background-white);
}

.table {
  width: 100%;
  border-top: 2px solid var(--border-dark100);
  border-bottom: 1px solid var(--border-gray-default);
}
.table table {
  min-width: 100%;
  border: 0;
  border-collapse: collapse;
  text-align: center;
}
.table th[scope="col"] {
  padding: 0.9rem 0.25rem;
  background-color: var(--background-gray-soft);
  color: var(--text-default);
  font: var(--font-b5-600);
}
.table.left th[scope="col"] {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  text-align: left;
}
.table.small th[scope="col"] {
  padding: 1.3125rem 0 1.25rem;
  font: var(--font-b5-600);
}
.table.small.left th[scope="col"] {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  text-align: left;
}
.table th[scope="col"][rowspan] {
  border-right: 1px solid var(--border-gray-default);
  border-bottom: 1px solid var(--border-gray-default);
}
.table tr + tr th[scope="col"] {
  border-top: 1px solid var(--border-gray-default);
  border-bottom: 1px solid var(--border-gray-default);
}
.table th[scope="col"] + th[scope="col"] {
  border-left: 1px solid var(--border-gray-default);
}
.table tr:last-child th[scope="col"] {
  border-bottom: 1px solid var(--border-gray-default);
}
.table th[scope="row"] {
  padding: 0.9rem 0.25rem;
  background-color: var(--background-white);
  color: var(--text-default);
  font: var(--font-b5-600);
}
.table.small th[scope="row"] {
  padding: 1.25rem 0;
  font: var(--font-b5-600);
}
.table tr + tr th[scope="row"] {
  border-top: 1px solid var(--border-gray-default);
}
.table th[scope="row"][rowspan] {
  border-right: 1px solid var(--border-gray-default);
  border-bottom: 1px solid var(--border-gray-default);
}
.table td {
  padding: 0.9rem 0.25rem;
  background-color: var(--background-white);
  color: var(--text-subtext2);
  font: var(--font-b5-500);
}
.table td.left {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.table.top td {
  vertical-align: top;
}
.table.left td {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  text-align: left;
}
.table.small td {
  padding: 1.25rem 0;
  font: var(--font-b5-600);
}
.table.small td.left {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
.table.small.left td {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  text-align: left;
}
.table th + td,
.table td + td {
  border-left: 1px solid var(--border-gray-default);
}
.table tr + tr td {
  border-top: 1px solid var(--border-gray-default);
}
.table td[rowspan]:not(:last-child) {
  border-right: 1px solid var(--border-gray-default);
  border-bottom: 1px solid var(--border-gray-default);
}

.required-message {
  padding: 1.5rem;
  border-radius: 1rem;
  background-color: var(--background-blue-default);
}

.required-message-title {
  display: flex;
  gap: 0.5rem;
  color: var(--primary-default);
  font: var(--font-b5-500);
}

.required-message-mark {
  flex-shrink: 0;
  width: 0.375rem;
  height: 0.375rem;
  margin-top: 0.1875rem;
  border-radius: 50%;
  background-color: var(--primary-default);
}

.required-message-desc {
  display: block;
  margin-top: 1.25rem;
  color: var(--text-subtext2);
  font: var(--font-b5-500);
}

.list.lv1 {
  color: var(--text-default);
}
.list.lv1 > li {
  font: var(--font-h4-500);
  letter-spacing: -0.02em;
}
.list.lv1:not(:first-child) > li {
  margin-top: 4rem;
}
.list.lv1 > li > .lv3 {
  margin-top: 0.75rem;
}

.list.lv2 {
  color: var(--text-default);
}
.list .list.lv2 {
  margin-top: 2rem;
}
.list .list.lv2.reduced {
  margin-top: 1.5rem;
}
.list.lv2 > li {
  font: var(--font-b3-500);
  letter-spacing: 0;
}
.list.lv2 > li + li {
  margin-top: 2rem;
}
.list.lv2.reduced > li + li {
  margin-top: 1.5rem;
}

.list.lv2.number {
  counter-reset: lv2;
}
.list.lv2.number > li {
  counter-increment: lv2;
  position: relative;
  padding-left: 2.25rem;
}
.list.lv2.number > li::before {
  content: counter(lv2) ".";
  flex-shrink: 0;
  position: absolute;
  top: 2px;
  left: 0;
  width: 2rem;
  color: var(--text-subtext2);
  font: var(--font-b4-600);
}

.list.lv2.bullet > li {
  position: relative;
  padding-left: 1.5rem;
  font-weight: 500;
}
.list.lv2.bullet > li::before {
  content: "";
  flex-shrink: 0;
  position: absolute;
  top: 0.84375rem;
  left: 0.34375rem;
  width: 0.3125rem;
  height: 0.3125rem;
  border-radius: 50%;
  background-color: var(--icon-gray-strong);
}

.list.lv3 {
  color: var(--text-default);
}
.list .list.lv3 {
  margin-top: 0.5rem;
}
.reduced > li > .list.lv3 {
  margin-top: 0.5rem;
}
.list.lv3 > li {
  font: var(--font-b4-400);
}
.list.lv3 > li + li {
  margin-top: 0.25rem;
}
.list.lv3.expanded > li + li {
  margin-top: 0.75rem;
}
.reduced > li > .list.lv3.expanded > li + li {
  margin-top: 0.5rem;
}

p.list.lv3 {
  margin-top: 1rem;
  color: var(--text-default);
  font: var(--font-b4-600);
}

.list.lv3.number {
  counter-reset: lv3;
}
.number > li > .list.lv3.number {
  margin-left: -2.25rem;
}
.list.lv3.number > li {
  counter-increment: lv3;
  position: relative;
  padding-left: 2.25rem;
}
.list.lv3.number > li::before {
  content: counter(lv3) ".";
  flex-shrink: 0;
  position: absolute;
  top: 2px;
  left: 0;
  width: 2rem;
  color: var(--text-subtext2);
  font: var(--font-b5-600);
}

.list.lv3.word {
  counter-reset: lv3;
}
.word > li > .list.lv3.word {
  margin-left: -1.75rem;
}
.list.lv3.word > li {
  counter-increment: lv3;
  position: relative;
  padding-left: 1.75rem;
}
.list.lv3.word > li::before {
  content: counter(lv3, hangul) ".";
  flex-shrink: 0;
  position: absolute;
  top: 2px;
  left: 0;
  width: 1.5rem;
  color: var(--text-subtext2);
  font: var(--font-b5-600);
}

.list.lv3.bracket {
  counter-reset: lv3;
}
.number > li > .list.lv3.bracket {
  margin-left: -2.25rem;
}
.list.lv3.bracket > li {
  counter-increment: lv3;
  position: relative;
  padding-left: 2.25rem;
}
.list.lv3.bracket > li::before {
  content: "(" counter(lv3) ")";
  flex-shrink: 0;
  position: absolute;
  top: 1px;
  left: 0;
  width: 2rem;
  color: var(--text-subtext2);
  font: var(--font-b5-600);
}

.list.lv3.bullet > li {
  position: relative;
  padding-left: 1.5rem;
}
.list.lv3.bullet > li::before {
  content: "";
  flex-shrink: 0;
  position: absolute;
  top: 0.75rem;
  left: 0.34375rem;
  width: 0.3125rem;
  height: 0.3125rem;
  border-radius: 50%;
  background-color: var(--icon-gray-strong);
}

.list.lv4 {
  color: var(--text-default);
}
.list .list.lv4 {
  margin-top: 0.5rem;
}
.list.lv4 > li {
  font: var(--font-b5-400);
}
.list.lv4 > li + li {
  margin-top: 0.5rem;
}

.list.lv4.number {
  counter-reset: lv4;
}
.list.lv4.number > li {
  counter-increment: lv4;
  position: relative;
  padding-left: 1.75rem;
}
.list.lv4.number > li::before {
  content: counter(lv4);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  position: absolute;
  top: 2px;
  left: 0;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 50%;
  background-color: var(--background-gray-strong);
  color: var(--text-subtext2);
  font: var(--font-b7-500);
}

.list.lv4.word {
  counter-reset: lv4;
}
.word > li > .list.lv4.word {
  margin-left: -1.75rem;
}
.list.lv4.word > li {
  counter-increment: lv4;
  position: relative;
  padding-left: 1.75rem;
}
.list.lv4.word > li::before {
  content: counter(lv4, hangul) ".";
  flex-shrink: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 1.75rem;
  color: var(--text-subtext2);
  font: var(--font-b5-600);
}

.list.lv4.bullet > li {
  position: relative;
  padding-left: 1.3125rem;
}
.list.lv4.bullet > li::before {
  content: "";
  flex-shrink: 0;
  position: absolute;
  top: 0.625rem;
  left: 0;
  width: 0.3125rem;
  height: 0.3125rem;
  border-radius: 50%;
  background-color: var(--icon-gray-strong);
}

.checkbox {
  position: relative;
}

.checkbox input[type="checkbox"] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  border-radius: 1rem;
  outline-offset: -2px;
  cursor: pointer;
}

.checkbox label {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  padding: 1.5rem 3.5rem 1.5rem 1.5rem;
  box-shadow: inset 0 0 0 1px var(--border-gray-strong);
  border-radius: 1rem;
  color: var(--text-default);
  font: var(--font-u1-500);
}
.checkbox label::before {
  content: "";
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-checkbox.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.5rem 1.5rem;
  vertical-align: middle;
}

.checkbox input[type="checkbox"]:checked ~ label {
  box-shadow: inset 0 0 0 2px var(--border-dark100);
}
.checkbox input[type="checkbox"]:checked ~ label::before {
  background-image: url(/img/section/mc/icons/icon-checkbox-checked.svg);
}

.radios {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.radios.horizontal {
  flex-direction: row;
  gap: 0.5rem;
}

.radio {
  position: relative;
}
.radios.horizontal .radio {
  flex: 1;
  min-width: 0;
}

.radio input[type="radio"] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  border-radius: 1rem;
  outline-offset: -2px;
  cursor: pointer;
}

.radio label {
  display: block;
  position: relative;
  height: 100%;
  padding: 1.5rem;
  padding-left: 4.5rem;
  border-radius: 1rem;
  box-shadow: inset 0 0 0 1px var(--border-gray-strong);
  color: var(--text-default);
  text-align: center;
  word-break: break-word;
  cursor: pointer;
  font: var(--font-u1-500);
}
.radios.horizontal .radio label {
  padding: 1.5rem;
}
.radio label::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 1.5rem;
  transform: translateY(-50%);
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-check-gray.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.5rem 1.5rem;
  vertical-align: middle;
}

.radio input[type="radio"]:checked ~ label {
  box-shadow: inset 0 0 0 2px var(--border-dark100);
}
.radio input[type="radio"]:checked ~ label::before {
  background-image: url(/img/section/mc/icons/icon-check.svg);
}

.dropdown {
  position: relative;
}

.dropdown-trigger {
  flex-grow: 1;
  width: 100%;
  max-width: 100%;
  height: 3.4375rem;
  padding: 0 2.5rem 0 1rem;
  border: none;
  border-radius: 0.75rem;
  border: 1px solid var(--border-gray-strong);
  background: var(--component-white)
    url(/img/section/mc/icons/icon-arrow-bottom.svg) no-repeat right 1rem top
    50%/1rem 1rem;
  color: var(--text-default);
  text-align: left;
  font: var(--font-u2-500);
}
.dropdown-trigger:focus {
  outline-offset: -0.3125rem;
}
.dropdown.active .dropdown-trigger {
  padding: 0 2.4375rem 2px 0.9375rem;
  border: 2px solid var(--primary-default);
  border-bottom: none;
  border-radius: 0.75rem 0.75rem 0 0;
  background-image: url(/img/section/mc/icons/icon-arrow-top.svg);
  background-position: right 0.9375rem top 50%;
}

.dropdown-list {
  display: none;
  overflow-x: hidden;
  overflow-y: auto;
  position: absolute;
  width: 100%;
  max-height: 19.0625rem;
  padding: 0.375rem 0 0.875rem;
  border: 2px solid var(--primary-default);
  border-top: none;
  border-radius: 0 0 0.75rem 0.75rem;
  background-color: #fff;
}
.dropdown.active .dropdown-list {
  display: block;
}

.dropdown-link {
  display: block;
  padding: 0.375rem 1rem;
  outline-offset: -0.1875rem;
  font: var(--font-u2-500);
}

.ul > li {
  position: relative;
  padding-left: 1.0625rem;
  font: var(--font-b4-400);
}
.ul > li::before {
  content: "";
  flex-shrink: 0;
  position: absolute;
  top: 0.625rem;
  left: 0;
  width: 0.3125rem;
  height: 0.3125rem;
  border-radius: 50%;
  background-color: var(--text-subtext2);
}

.ol {
  counter-reset: ol;
}
.ol > li {
  counter-increment: ol;
  position: relative;
  padding-left: 1.75rem;
  font: var(--font-b4-400);
}
.ol > li::before {
  content: counter(ol);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  position: absolute;
  top: 0.25rem;
  left: 0;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 50%;
  background-color: var(--background-gray-strong);
  color: var(--text-subtext2);
  font: var(--font-b7-500);
}
.ol li + li {
  margin-top: 0.5rem;
}

.board-util {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.5rem;
}

.board {
  border-top: 3px solid var(--border-dark100);
  border-bottom: 1px solid var(--border-gray-strong);
}

.board-item {
  position: relative;
}
.board-item + .board-item {
  border-top: 1px solid var(--border-gray-strong);
}
.board-item.active {
  z-index: 1;
}
.board-item.no-data {
  padding: 7.5rem 0;
  text-align: center;
}

.board-item.type2 {
  display: flex;
  align-items: center;
  padding-right: 1.5rem;
}
.board-item.type2 .board-link {
  flex: 1;
  padding-right: 2.5rem;
}
.board-item.type2 .board-file {
  position: relative;
  top: auto;
  right: auto;
  transform: none;
}

.board-link {
  display: flex;
  align-items: center;
  padding: 2rem 6.5rem 2.0625rem 1.5rem;
}
.board.no-file .board-link {
  padding-right: 1.5rem;
}

.board-number {
  flex-shrink: 0;
  width: 5rem;
  padding-right: 2.5rem;
  color: var(--text-subtext1);
  text-align: center;
  font: var(--font-b5-500);
}

.board-subject {
  display: flex;
  align-items: center;
  flex: 1;
  color: var(--text-default);
  font: var(--font-b3-500);
}
.board-subject {
  display: -webkit-box !important;
  -webkit-line-clamp: 1 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  word-break: keep-all !important;
  word-break: break-all !important;
}

.board-badge {
  flex-shrink: 0;
  margin-right: 0.5rem;
  padding: 0.375rem 0.75rem;
  border-radius: 0.875rem;
  background-color: var(--background-blue-strong);
  color: var(--primary-strong);
  font: var(--font-u5-500);
}

.board-date {
  flex-shrink: 0;
  width: 8.125rem;
  padding-left: 2.5rem;
  color: var(--text-subtext2);
  text-align: center;
  font: var(--font-b5-500);
}
.board-date.tablet-mode {
  display: none;
}

.board-file {
  position: absolute;
  top: 50%;
  right: 1.5rem;
  transform: translateY(-50%);
}
.board-file.active {
  z-index: 1;
}

.detail-meta {
  margin-bottom: 0.75rem;
}

.detail-category {
  margin-bottom: 1rem;
  color: var(--primary-default);
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.4;
  letter-spacing: 0;
}

.detail-subject {
  color: #000;
  word-break: break-all;
  font: var(--font-d3-700);
  letter-spacing: -0.02em;
}

.detail-date {
  margin-top: 1rem;
  color: var(--text-subtext2);
  font: var(--font-b4-500);
}

.detail-post {
  padding: 4rem 0 3rem;
  border-top: 3px solid var(--border-dark100);
  border-bottom: 1px solid var(--border-gray-strong);
}

.detail-content {
  /* padding: 3rem 0 0; */
  word-break: break-all;
}

.detail-content img {
  display: inline-block;
  vertical-align: middle;
  width: auto !important;
  height: auto !important;
}
.detail-content p {
  font-family: "Pretendard" !important;
}

.detail-files {
  display: flex;
  gap: 2rem;
  padding: 2rem 2.5rem;
  border-radius: 1.25rem;
  background-color: var(--background-blue-default);
}
.detail-content ~ .detail-files {
  margin-top: 7.5rem;
}

.detail-file-title {
  flex-shrink: 0;
  color: var(--text-default);
  font: var(--font-b6-700);
}

.detail-file-count {
  display: inline-flex;
  width: 1.25rem;
  color: var(--primary-default);
}

.detail-file-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.detail-file-item {
  display: flex;
}

.detail-file-link {
  display: inline-flex;
  gap: 0.75rem;
  outline-offset: 0.3125rem;
  color: var(--text-default);
  word-break: break-all;
  font: var(--font-b6-500);
}
.detail-file-link::before {
  content: "";
  box-shadow: var(--shadow-thin);
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 0.625rem;
  background-color: var(--background-white);
  background-image: url(/img/section/mc/icons/icon-download.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 0.75rem 0.75rem;
  vertical-align: middle;
}

.detail-nav {
  margin-top: 1.5rem;
}

.detail-nav-link {
  display: flex;
  align-items: center;
  gap: 2rem;
  padding: 1rem 0.25rem 1rem 0;
}

.detail-nav-label {
  display: flex;
  gap: 0.5rem;
  color: var(--text-default);
  font: var(--font-b6-500);
}
.detail-nav-label.prev::before {
  content: "";
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-arrow-top.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.25rem 1.25rem;
  vertical-align: middle;
}
.detail-nav-label.next::before {
  content: "";
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-arrow-bottom.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.25rem 1.25rem;
  vertical-align: middle;
}
span.detail-nav-link .detail-nav-label {
  color: var(--text-subtext2);
}

.detail-nav-subject {
  color: var(--text-default);
  font: var(--font-b4-400);
}
span.detail-nav-link .detail-nav-subject {
  color: var(--text-subtext2);
}

.detail-action {
  display: flex;
  justify-content: center;
  margin-top: 5rem;
}

.result {
  padding: 7.5rem 0;
  text-align: center;
}

.result-message {
  font-weight: 600;
  font-size: 1.5rem;
  line-height: 1.4;
  letter-spacing: -0.02em;
}

.result-action {
  margin-top: 3rem;
}

.message {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.message-title {
  color: var(--text-default);
  text-align: center;
  font-weight: 700;
  font-size: 2.75rem;
  line-height: 1.35;
  letter-spacing: -0.02em;
}

.message-desc {
  margin-top: 1.25rem;
  color: var(--text-subtext1);
  text-align: center;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.6;
  letter-spacing: 0;
}

.message-action {
  margin-top: 4rem;
}

.greeting {
  height: 52.5rem;
}

.greeting-frame {
  position: relative;
  height: 100%;
}

.greeting-player {
  overflow: hidden;
  position: relative;
  height: 100%;
}

.greeting-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
  transition: transform 0.6s;
}
.greeting.pause .greeting-video {
  transform: scale(1.2);
}

.greeting-dim {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  pointer-events: none;
  transition: background-color 0.6s;
}
.greeting.pause .greeting-dim {
  background-color: rgba(0, 0, 0, 0.7);
}

.greeting-content {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.greeting-slogan {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: var(--text-white);
  text-align: center;
}
.greeting-slogan h1 {
  font-size: 5rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: -0.02em;
  font-family: "Wooridaum";
}
.greeting-slogan span {
  font: var(--font-h3-500);
  letter-spacing: -0.02em;
}

.greeting-controls {
  display: flex;
  justify-content: center;
  align-items: center;
}

.greeting-control {
  display: inline-flex;
  gap: 0.25rem;
  color: var(--text-white);
  font: var(--font-b5-700);
  text-transform: uppercase;
}
.greeting-control::after {
  content: "";
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 0px;
  background-color: transparent;
  background-image: url(/img/section/mc/icons/icon-stop.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.5rem 1.5rem;
  vertical-align: middle;
}
.greeting.pause .greeting-control::after {
  background-image: url(/img/section/mc/icons/icon-play.svg);
}

.ceo {
  transform-style: preserve-3d;
  perspective: 93.75rem;
}

.ceo-photo-frame {
  grid-column-end: span 5;
}

.ceo-photo {
  overflow: hidden;
  max-width: 31.25rem;
  border-radius: 1rem;
  margin-right: 5rem;
}

.ceo-title-frame {
  grid-column-end: span 7;
}

.ceo-title {
  margin-bottom: 4rem;
  color: var(--text-strong);
  font: var(--font-d4-700);
  letter-spacing: -0.02em;
}

.ceo-content {
  color: var(--text-subtext2);
  font: var(--font-b4-500);
}

.ceo-signature {
  margin-top: 7.5rem;
  height: 4.125rem;
  font: var(--font-b3-600);
  /* background: url(/img/section/nbp/images/ba-1000-signature.png) no-repeat 7.625rem 0/auto 3.9375rem; */
}

.ceo-career {
  margin-top: 12.5rem;
  padding: 6.25rem 7.5rem 7.5rem;
  border-radius: 1rem;
  background-color: var(--background-gray-default);
}

.ceo-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.ceo-item {
  display: flex;
  gap: 1rem;
}

.ceo-key {
  flex-shrink: 0;
  width: 5rem;
  color: var(--text-subtext2);
  font-variant-numeric: tabular-nums;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.6;
  letter-spacing: 0;
}
.ceo-key {
  letter-spacing: -0.05em;
}

.ceo-value {
  flex-grow: 1;
  color: var(--text-subtext1);
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.6;
  letter-spacing: 0;
}

.leadership {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 104%;
  border-radius: 1.25rem;
  box-shadow: 0 1rem 1.25rem 0 rgba(0, 0, 0, 0.06);
}
.leadership.type-a {
  background: linear-gradient(151deg, #009dff 5.44%, #0065ca 70.07%);
}
.leadership.type-b {
  background: linear-gradient(154deg, #70f 26.09%, #4700d4 93.34%);
}
.leadership-col-3:nth-child(8n + 1) .leadership.type-c,
.leadership-col-3:nth-child(8n + 3) .leadership.type-c {
  background: linear-gradient(138deg, #3b59ff -25.36%, #0151dc 122.36%);
}
.leadership-col-3:nth-child(8n + 2) .leadership.type-c,
.leadership-col-3:nth-child(8n + 4) .leadership.type-c {
  background: linear-gradient(138deg, #3b82ff -25.36%, #0151dc 122.36%);
}
.leadership-col-3:nth-child(8n + 5) .leadership.type-c,
.leadership-col-3:nth-child(8n + 7) .leadership.type-c {
  background: linear-gradient(138deg, #3b82ff -25.36%, #0151dc 122.36%);
}
.leadership-col-3:nth-child(8n + 6) .leadership.type-c,
.leadership-col-3:nth-child(8n + 8) .leadership.type-c {
  background: linear-gradient(138deg, #3b59ff -25.36%, #0151dc 122.36%);
}
.leadership.type-d {
  background: linear-gradient(138deg, #0013d9 26.09%, #000b81 93.34%);
}
.leadership.type-e {
  height: 100%;
  padding-bottom: 0;
  background: linear-gradient(138deg, #3b82ff -25.36%, #0151dc 122.36%);
}
.leadership-info {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 0.25rem;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  width: 100%;
  height: 100%;
  padding: 2.5rem;
  text-align: right;
}
.type-e .leadership-info {
  justify-content: flex-start;
  position: relative;
  text-align: left;
}
.leadership-position {
  color: var(--text-white);
  font: var(--font-b2-500);
  letter-spacing: -0.02em;
}

.leadership-name {
  color: var(--text-white);
  font: var(--font-h3-700);
  letter-spacing: -0.02em;
}
.leadership-history {
  margin-top: 2rem;
  color: var(--text-white);
  font: var(--font-b3-500);
}

.leadership-desc {
  color: var(--text-white);
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.5;
  letter-spacing: -0.02em;
}

.leadership-grid {
  display: grid;
  grid-template-columns: repeat(var(--grid-columns), 1fr);
  gap: 1.25rem;
  margin-inline: auto;
  max-inline-size: var(--grid-max);
}

.leadership-col-1 {
  grid-column-end: span 1;
}

.leadership-col-2 {
  grid-column-end: span 2;
}

.leadership-col-3 {
  grid-column-end: span 3;
}

.leadership-col-4 {
  grid-column-end: span 4;
}

.leadership-col-5 {
  grid-column-end: span 5;
}

.leadership-col-6 {
  grid-column-end: span 6;
}

.leadership-col-7 {
  grid-column-end: span 7;
}

.leadership-col-8 {
  grid-column-end: span 8;
}

.leadership-col-9 {
  grid-column-end: span 9;
}

.leadership-col-10 {
  grid-column-end: span 10;
}

.leadership-col-11 {
  grid-column-end: span 11;
}

.leadership-col-12 {
  grid-column-end: span 12;
}

.leadership-start-1 {
  grid-column-start: 1;
}

.leadership-start-2 {
  grid-column-start: 2;
}

.leadership-start-3 {
  grid-column-start: 3;
}

.leadership-start-4 {
  grid-column-start: 4;
}

.leadership-start-5 {
  grid-column-start: 5;
}

.leadership-start-6 {
  grid-column-start: 6;
}

.leadership-start-7 {
  grid-column-start: 7;
}

.leadership-start-8 {
  grid-column-start: 8;
}

.leadership-start-9 {
  grid-column-start: 9;
}

.leadership-start-10 {
  grid-column-start: 10;
}

.leadership-start-11 {
  grid-column-start: 11;
}

.leadership-start-12 {
  grid-column-start: 12;
}

.history {
  padding: 0 3.75rem;
}

.history-age {
  position: sticky;
  top: var(--sticky-y);
  margin-bottom: 6.25rem;
}
.history:last-child .history-age {
  margin-bottom: 100vh;
}
.history.init .history-age {
  opacity: 0;
  transform: translateY(6.25rem);
}
.history.active .history-age {
  opacity: 1;
  transition: opacity 0.6s, transform 0.6s;
}

.history-heading {
  margin-bottom: 0.75rem;
  color: var(--primary-default);
  transition: font-size 0.6s;
  font-weight: 700;
  font-size: 3rem;
  line-height: 1.35;
  letter-spacing: -0.02em;
}

.history-desc {
  display: inline-block;
  color: var(--text-default);
  transition: font-size 0.6s;
  font: var(--font-b4-500);
  letter-spacing: -0.02em;
}

.history-count {
  display: flex;
  justify-content: center;
  align-items: center;
  position: sticky;
  top: 0;
  height: 100vh;
  pointer-events: none;
}

.history-numbers {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  overflow: hidden;
  height: 37.5rem;
  text-align: center;
}
.history-count.init .history-numbers {
  transform: scale(0.7);
}
.history-count.active .history-numbers {
  transition: transform 1s;
}

.history-title {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  font-weight: 700;
  font-size: 1.75rem;
  line-height: 1.5;
  letter-spacing: -0.02em;
}

.history-nav {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  -webkit-backdrop-filter: blur(0.75rem);
  backdrop-filter: blur(0.75rem);
  transform: translateY(100%);
  transition: transform 0.6s;
}
.history-nav.active {
  transform: translateY(0);
}

.history-list {
  display: flex;
  flex-direction: column;
  align-items: start;
}

.history-item {
  flex: 1;
}

.history-group {
  padding: 6.25rem;
  border-radius: 1.25rem;
  background-color: rgba(255, 255, 255, 0.9);
  -webkit-backdrop-filter: blur(0.75rem);
  backdrop-filter: blur(0.75rem);
  box-shadow: 3.125rem 1.5rem 2.75rem 0 rgba(0, 0, 0, 0.07);
}
.history-group.init {
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  transform: scale(0.9);
}
.history-group.active {
  transition: padding 0.6s, box-shadow 0.4s 0.1s, transform 0.4s 0.1s;
}
.history-group + .history-group {
  margin-top: 5rem;
}
.history-group:first-child {
  margin-top: 100vh;
}
.history-group:last-child {
  margin-bottom: 100vh;
}

.history-year {
  flex-shrink: 0;
  position: relative;
  width: 10rem;
  margin-right: 5rem;
  color: var(--text-strong);
  font: var(--font-h2-700);
  letter-spacing: -0.02em;
}
.history-year:after {
  content: "";
  position: absolute;
  top: 1.5rem;
  left: 11.25rem;
  z-index: 1;
  width: 0.9375rem;
  height: 0.9375rem;
  background: #fff;
  border: 4px solid var(--primary-default);
  border-radius: 50%;
}
.history-group.init .history-year {
  opacity: 0;
  transform: translateY(3.125rem);
}
.history-group.active .history-year {
  transition: opacity 0.4s 0.2s, transform 0.4s 0.2s;
}
.history-group.init .history-datas {
  opacity: 0;
  transform: translateY(3.125rem);
}
.history-group.active .history-datas {
  transition: opacity 0.4s 0.3s, transform 0.4s 0.3s;
}

.history-data {
  display: flex;
  gap: 1.25rem;
}
.history-data + .history-data {
  margin-top: 1rem;
}

.history-date {
  flex-shrink: 0;
  width: 5rem;
  color: var(--text-subtext2);
  font-variant-numeric: tabular-nums;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.6;
  letter-spacing: 0;
  letter-spacing: -0.05em;
}

.history-value {
  flex-grow: 1;
  color: var(--text-default);
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.6;
  letter-spacing: 0;
}

.org-box {
  padding: 5rem 5.875rem;
  background-color: var(--background-gray-default);
}
.map {
  height: 42.5rem;
  border: 1px solid var(--border-dark50);
}
.branch {
  border-top: 3px solid var(--border-dark100);
}
.branch-info {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid var(--border-gray-strong);
}
.branch-key {
  position: relative;
  width: 12.5rem;
  padding-left: 1.875rem;
  color: var(--text-strong);
  font: var(--font-b3-600);
}
.branch-key:before {
  content: "";
  position: absolute;
  top: 0.25rem;
  left: 0;
  width: 1.5rem;
  height: 1.5rem;
  background: red;
}
.branch-value {
  font: var(--font-b3-500);
  color: var(--text-subtext1);
}
.branch-value .ul {
  margin-top: 1rem;
  font: var(--font-b4-400);
  color: var(--text-default);
}
.branch-value li {
  padding-top: 0.25rem;
}

.application {
  display: flex;
  justify-content: center;
}
.application-item {
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: center;
  text-align: center;
}
.application-item + .application-item {
  margin-left: 4rem;
  padding-left: 4rem;
  border-left: 1px solid var(--border-gray-strong);
}
.application-value {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 1.5rem;
}
.circle-1 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 20rem;
  height: 20rem;
  border-radius: 10rem;
  background-color: var(--card1-solid);
}

.circle-2 {
  display: flex;
  align-items: center;
  gap: 3rem;
  width: 43.75rem;
  height: 26.5rem;
  border-radius: 13.25rem;
  background-color: var(--card2-solid);
  background-image: linear-gradient(
    90deg,
    rgba(2, 35, 224, 0.5) 0%,
    rgba(12, 49, 253, 0.5) 100%,
    #0074e8
  );
}

.circle-3 {
  display: flex;
  align-items: center;
  gap: 3rem;
  width: 93.75rem;
  height: 34.5rem;
  border-radius: 17.25rem;
  background-color: var(--card2-solid);
  box-shadow: inset 0 0 7.5rem 0 rgba(0, 31, 217, 0.1);
  color: var(--text-white);
}

@keyframes t-glow {
  0% {
    transform: translate(0, 0);
  }
  20% {
    transform: translate(-20%, -20%);
  }
  40% {
    transform: translate(-20%, 20%);
  }
  60% {
    transform: translate(20%, -20%);
  }
  80% {
    transform: translate(20%, 20%);
  }
  100% {
    transform: translate(0, 0);
  }
}

.ma-0000 .contents {
  padding: 0;
}

.plan {
  display: flex;
  justify-content: space-between;
  gap: 5rem;
  padding-bottom: 5rem;
}
.plan-item {
  padding-bottom: 4rem;
}
.plan-item:last-child {
  padding-bottom: 0 !important;
}
.plan-item + .plan-item {
  padding: 4rem 0;
  border-top: 1px solid var(--border-gray-default);
}
.plan-title {
  margin-bottom: 1rem;
  font-weight: 600;
  font-size: 2.25rem;
  line-height: 1.35;
  letter-spacing: -0.02em;
}
.plan-desc {
  font-weight: 400;
  font-size: 1.125rem;
  line-height: 1.6;
  letter-spacing: 0;
}
.plan-action {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 2.5rem;
}
.plan-list {
  display: flex;
  flex-direction: column;
  /* gap: 2.5rem; */
  /* margin-top: 5rem; */
}
.plan-item {
  display: flex;
  align-items: flex-start;
  gap: 2rem;
}
.plan-key {
  padding: 0.75rem 1.25rem;
  border-radius: 1.875rem;
  background: var(--background-blue-strong);
  color: var(--primary-strong);
  font: var(--font-u2-600);
}
.plan-value {
  padding-top: 0.3125rem;
  font: var(--font-b2-600);
  letter-spacing: -0.02em;
}
.plan-image {
  overflow: hidden;
  flex-shrink: 0;
  width: 24.0625rem;
  border-radius: 0 1.25rem 1.25rem 1.25rem;
}
.plan-image img {
  width: 100%;
}
.plan-list.row {
  flex-direction: row;
  gap: 4rem;
}
.plan-list.row .plan-item {
  flex: 1;
  flex-direction: column;
  gap: 1.5rem;
  padding-bottom: 0;
}
.plan-list.row .plan-item + .plan-item {
  padding: 0;
  border: 0;
}
.plan-list.row .plan-value {
  padding-top: 0;
  font-weight: 700;
}

.biz-info-image {
  margin-right: 1.25rem;
  grid-column-end: span 5;
}
.biz-info-content {
  grid-column-end: span 7;
}
.biz-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.25rem;
}
.biz-item {
  position: relative;
  padding: 3rem 1rem;
  border: 1px solid var(--footer-border-gray);
  border-radius: 1rem;
  text-align: center;
}
.biz-item:before {
  content: "";
  position: relative;
  display: block;
  left: 50%;
  transform: translateX(-50%);
  width: 5.5rem;
  height: 5.5rem;
  margin-bottom: 1.5rem;
}
.biz-item:first-child:before {
  background: url(/img/section/mc/images/icon-biz-01.png) no-repeat 50% / 100%
    auto;
}
.biz-item:nth-child(2):before {
  background: url(/img/section/mc/images/icon-biz-02.png) no-repeat 50% / 100%
    auto;
}
.biz-item:nth-child(3):before {
  background: url(/img/section/mc/images/icon-biz-03.png) no-repeat 50% / 100%
    auto;
}
.biz-item:nth-child(4):before {
  background: url(/img/section/mc/images/icon-biz-04.png) no-repeat 50% / 100%
    auto;
}
.docs {
  display: flex;
}

.docs-aside {
  flex-shrink: 0;
  width: 16.25rem;
}

.docs-contents {
  flex: 1;
}
.icon-pin:before {
  background: url(/img/section/mc/icons/icon-location.svg) no-repeat transparent;
}
.icon-tel:before {
  background: url(/img/section/mc/icons/icon-phone.svg) no-repeat transparent;
}
.icon-fax:before {
  background: url(/img/section/mc/icons/icon-fax.svg) no-repeat transparent;
}

.ex {
  margin: 1.25rem 0;
  padding: 1.25rem;
  border-radius: 1rem;
  background-color: var(--background-gray-deep1);
  font-family: consolas, monospace;
}
.ex div {
  font-size: 1rem;
}
.ex:last-child {
  margin-bottom: 0;
}

.color-list {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.color-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.375rem;
  padding: 1.25rem;
  border: 1px solid var(--border-gray-strong);
  border-radius: 1rem;
  font-family: Consolas, monospace;
}

.color-key {
  flex-shrink: 0;
  font-weight: 700;
  font-size: 0.875rem;
  line-height: 1.6;
  letter-spacing: 0;
}

.color-value {
  display: flex;
  gap: 0.375rem;
  min-width: 5.3125rem;
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 1.6;
  letter-spacing: 0;
}
.color-value.small {
  font-weight: 500;
  font-size: 0.75rem;
  line-height: 1.6;
  letter-spacing: 0;
}

.color-chip {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -1px;
  border: 2px solid var(--border-gray-soft);
  border-radius: 0.375rem;
}

.color-grad {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.1875rem;
  border: 2px solid var(--border-gray-soft);
  border-radius: 0.375rem;
  transform-origin: 100% 50%;
  transition: border-radius 0.6s 0.6s, transform 0.6s 0.6s;
}
.color-grad:hover {
  border-radius: 50%;
  transform: scale(6);
  transition: border-radius 0.6s, transform 0.6s;
}
.support {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: var(--background-gray-soft);
  padding: 6.25rem 0;
  border-radius: 1.25rem;
}
.support-info {
  display: flex;
  align-items: center;
  gap: 2.5rem;
  color: var(--text-white);
  text-align: center;
}
.support-item {
  width: 27.5rem;
  background: var(--card1-solid);
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
  border-radius: 8.75rem;
}
.support-item:first-child {
  background: var(--card2-solid);
}
.support-key {
  margin-bottom: 0.5rem;
  font: var(--font-b3-500);
}
.support-value {
  font: var(--font-d3-700);
  letter-spacing: -0.02em;
}

@media screen and (min-width: 1921px) {
  .sub-visual {
    background-size: cover;
  }
}

@media screen and (max-width: 1439px) {
  .header-frame {
    padding: 0 1.25rem;
  }
  .gnb-1d-item {
    padding: 0.75rem 1rem;
  }
  .header.hover .gnb-1d-item {
    padding: 0.75rem 1rem 2rem;
  }
  .gnb-2d-list {
    margin: 0 -1rem;
  }
  .gnb-2d-item {
    padding: 1rem;
  }
  .contents {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .ceo-photo-frame {
    grid-column-end: span 4;
  }
  .ceo-photo {
    margin-right: 1.25rem;
  }
  .ceo-title-frame {
    grid-column-end: span 8;
  }
  .history-heading {
    font-weight: 700;
    font-size: 2.25rem;
    line-height: 1.35;
    letter-spacing: -0.02em;
  }
  .history-desc {
    font-weight: 400;
    font-size: 1.25rem;
    line-height: 1.6;
    letter-spacing: 0;
  }
  .history-numbers {
    height: 30rem;
  }
  .history-number {
    font-size: 25rem;
  }
  .history-group {
    padding: 3.75rem;
  }

  .circle-1 {
    width: 13.75rem;
    height: 13.75rem;
    border-radius: 6.875rem;
  }
  .circle-2 {
    gap: 0.75rem;
    width: 27.5rem;
    height: 20rem;
    border-radius: 10rem;
  }
  .circle-3 {
    gap: 0.75rem;
    width: 75rem;
    height: 26.5rem;
    margin-left: -3.125rem;
    border-radius: 13.25rem;
  }
}

@media screen and (max-width: 1023px) {
  :root {
    --font-d1-700: 700 2.75rem/1.3 var(--font-family-base);
    --font-d1-600: 600 2.75rem/1.3 var(--font-family-base);
    --font-d1-500: 500 2.75rem/1.3 var(--font-family-base);
    --font-d2-700: 700 2.25rem/1.3 var(--font-family-base);
    --font-d2-600: 600 2.25rem/1.3 var(--font-family-base);
    --font-d2-500: 500 2.25rem/1.3 var(--font-family-base);
    --font-d3-700: 700 1.75rem/1.35 var(--font-family-base);
    --font-d3-600: 600 1.75rem/1.35 var(--font-family-base);
    --font-d3-500: 500 1.75rem/1.35 var(--font-family-base);
    --font-d4-700: 700 1.5rem/1.35 var(--font-family-base);
    --font-d4-600: 600 1.5rem/1.35 var(--font-family-base);
    --font-d4-500: 500 1.5rem/1.35 var(--font-family-base);
    --font-h1-700: 700 2rem/1.35 var(--font-family-base);
    --font-h1-600: 600 2rem/1.35 var(--font-family-base);
    --font-h1-500: 500 2rem/1.35 var(--font-family-base);
    --font-h2-700: 700 1.5rem/1.35 var(--font-family-base);
    --font-h2-600: 600 1.5rem/1.35 var(--font-family-base);
    --font-h2-500: 500 1.5rem/1.35 var(--font-family-base);
    --font-h3-700: 700 1.5rem/1.35 var(--font-family-base);
    --font-h3-600: 600 1.5rem/1.35 var(--font-family-base);
    --font-h3-500: 500 1.5rem/1.35 var(--font-family-base);
    --font-h4-700: 700 1.125rem/1.4 var(--font-family-base);
    --font-h4-600: 600 1.125rem/1.4 var(--font-family-base);
    --font-h4-500: 500 1.125rem/1.4 var(--font-family-base);
    --font-h5-700: 700 1rem/1.4 var(--font-family-base);
    --font-h5-600: 600 1rem/1.4 var(--font-family-base);
    --font-h5-500: 500 1rem/1.4 var(--font-family-base);
    --font-b1-700: 700 1.5rem/1.5 var(--font-family-base);
    --font-b1-600: 600 1.5rem/1.5 var(--font-family-base);
    --font-b1-500: 500 1.5rem/1.5 var(--font-family-base);
    --font-b1-400: 400 1.5rem/1.5 var(--font-family-base);
    --font-b2-700: 700 1.25rem/1.5 var(--font-family-base);
    --font-b2-600: 600 1.25rem/1.5 var(--font-family-base);
    --font-b2-500: 500 1.25rem/1.5 var(--font-family-base);
    --font-b2-400: 400 1.25rem/1.5 var(--font-family-base);
    --font-b3-700: 700 1.125rem/1.6 var(--font-family-base);
    --font-b3-600: 600 1.125rem/1.6 var(--font-family-base);
    --font-b3-500: 500 1.125rem/1.6 var(--font-family-base);
    --font-b3-400: 400 1.125rem/1.6 var(--font-family-base);
    --font-b4-700: 700 1rem/1.6 var(--font-family-base);
    --font-b4-600: 600 1rem/1.6 var(--font-family-base);
    --font-b4-500: 500 1rem/1.6 var(--font-family-base);
    --font-b4-400: 400 1rem/1.6 var(--font-family-base);
    --font-b5-700: 700 0.875rem/1.6 var(--font-family-base);
    --font-b5-600: 600 0.875rem/1.6 var(--font-family-base);
    --font-b5-500: 500 0.875rem/1.6 var(--font-family-base);
    --font-b5-400: 400 0.875rem/1.6 var(--font-family-base);
    --base-mg-ratio: 0.5;
    --rwd-mg-6: calc(var(--base-num-6) - 0.125rem);
    --rwd-mg-8: calc(var(--base-num-8) - 0.125rem);
    --rwd-mg-160: calc(var(--base-num-160) * 0.4);
  }
  .pc {
    display: none !important;
  }
  .tablet {
    display: block !important;
  }
  .mobile {
    display: none !important;
  }
  .tablet\:block {
    display: block !important;
  }
  .tablet\:none {
    display: none !important;
  }
  .grid {
    grid-template-columns: repeat(var(--grid-columns), 2fr);
    gap: 1rem;
  }
  .grid.tablet-mode {
    grid-template-columns: repeat(1, 1fr);
  }
  .col-6.tablet-mode {
    grid-column: auto;
  }
  .start-7.tablet-mode {
    grid-column-start: 1;
  }

  .text-button.small {
    font: var(--font-u4-700);
  }

  .sub-visual {
    height: 9rem;
    background-color: yellow;
    justify-content: flex-start;
  }
  .sub-frame {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .sub-title {
    text-align: left;
    font: var(--font-h3-500);
  }
  .sub-tit {
    margin-bottom: 0.375rem;
    font: var(--font-b5-500);
  }
  .history-year {
    width: auto;
    margin-right: 1.5rem;
    font: var(--font-h4-700);
  }
  .history-year:after {
    content: none;
  }
  .history-item {
    padding-bottom: 1.75rem;
  }
  .history-item:after {
    content: none;
  }
  .month-row:first-child {
    margin-top: 2px;
  }
  .history-month {
    margin-right: 0.75rem;
    font: var(--font-b4-700);
  }

  .skip {
    font-weight: 700;
    font-size: 1rem;
    line-height: 1.6;
    letter-spacing: 0;
  }
  .header {
    height: 3.5rem;
  }
  .header-frame {
    padding: 0 1rem 0 1.25rem;
    height: 3.5rem;
  }
  .header.active .header-frame {
    height: 3.5rem;
    border-bottom: 1px solid var(--border-gray-strong);
    box-shadow: none;
  }
  .header-logo {
    height: 3.5rem;
  }
  .header-logo-img {
    width: 9rem;
    height: 2rem;
  }
  .header-gnb {
    display: none;
  }
  .header.active .header-mnb {
    display: block;
  }
  .header-feature {
    display: flex;
  }
  .header-mnb-button {
    display: inline-flex;
    width: 2rem;
    height: 2rem;
    background-size: 2rem 2rem;
  }
  .navs.type2 {
    display: block;
  }
  .navs-frame {
    border-radius: 1.625rem;
  }
  .type2 .navs-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.5rem;
  }
  .type2 .navs-link {
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
  }
  .contents {
    padding: 3rem 1.25rem;
    transition: none;
  }
  .top {
    padding: 0.75rem 0.625rem;
  }
  .top-button {
    font: var(--font-b4-700);
  }
  .top-button::after {
    width: 1rem;
    height: 1rem;
    background-size: 1rem 1rem;
  }
  .footer {
    padding: 0;
  }
  .footer-frame {
    padding: 1.75rem 1.25rem;
    border-radius: 0;
  }
  .footer-innner {
    grid-template-columns: repeat(1, 1fr);
    row-gap: 2.5rem;
  }
  .footer-logo-image {
    width: 10.25rem;
    height: 2.25rem;
  }
  .footer-shortcut-list {
    column-gap: 2.0625rem;
  }
  .footer-shortcut-item::after {
    right: -1.0625rem;
    height: 0.75rem;
  }
  .footer-contact {
    margin-top: 2.5rem;
  }
  .footer-contact-info {
    column-gap: 1rem;
  }
  .footer-contact-info li.responsive-item {
    flex: 0 0 100%;
  }
  .footer-contact-info li::after {
    content: none;
  }
  .footer-copyright {
    font-weight: 500;
    font-size: 0.75rem;
    line-height: 1.6;
    letter-spacing: 0;
  }
  .footer-copyright {
    padding: 0 0.25rem;
  }
  /* .section ~ .section {
    margin-top: 7.5rem;
  } */
  .section.expanded {
    margin: 0 -1.25rem;
  }

  .search {
    width: 100%;
  }
  .scroll-x {
    overflow-x: scroll;
    overflow-y: hidden;
    margin: 0 -1.25rem;
    transform: translate3d(0, 0, 0);
    scroll-behavior: auto;
  }
  .scroll-x.medium table {
    min-width: 61.4375rem;
  }
  .scroll-x.small table {
    min-width: 27.5rem;
  }
  .scroll-x-track {
    display: inline-block;
    padding: 0 1.25rem;
  }
  .scroll-x.expanded .scroll-x-track {
    padding: 0 1.5rem;
  }
  .popup {
    padding: 0;
  }
  .popup-container {
    height: 100%;
    border-radius: 0;
  }
  .popup-close {
    top: 2.25rem;
    right: 1.25rem;
    width: 1.75rem;
    height: 1.75rem;
    background-size: 1.75rem 1.75rem;
    background-image: url(/img/section/mc/icons/icon-close.svg);
  }
  .popup-head {
    padding: 2rem 1.5rem 1rem;
  }
  .popup-title {
    padding-right: 2.25rem;
  }
  .popup-contents {
    padding: 0 1.5rem 2rem;
  }
  .notice {
    padding: 5rem 1.25rem;
  }
  .notice-container {
    border-radius: 1rem;
  }
  .notice-close {
    top: -3rem;
    width: 1.75rem;
    height: 1.75rem;
    background-size: 1.75rem 1.75rem;
  }
  .notice-head {
    padding: 2rem 1.5rem 1.5rem;
  }
  .notice-body {
    margin-right: 0.75rem;
  }
  .notice-contents {
    padding: 0 0.75rem 1.5rem 1.5rem;
  }
  .notice-foot {
    padding: 1.5rem;
  }
  .video-popup {
    max-width: 43.75rem;
  }
  .video-popup-close {
    top: -3rem;
    width: 1.75rem;
    height: 1.75rem;
    background-size: 1.75rem 1.75rem;
  }
  .video-popup-contents {
    padding-right: 0;
    border-radius: 1rem;
    flex-direction: column;
  }
  .video-popup-iframe {
    flex: unset;
  }
  .video-popup-info {
    position: static;
    width: auto;
    height: 16.25rem;
  }
  .video-popup-scroller {
    padding: 2rem 1.5rem;
  }
  .video-popup-title {
    margin-bottom: 1.5rem;
  }
  .pin {
    position: static;
  }
  .flex-pin {
    position: static;
  }
  .grid-pin {
    position: static;
  }
  .gray-box {
    padding: 2rem 2rem 2.5rem;
  }
  .images {
    gap: 0.75rem;
  }
  .image-frame {
    border-radius: 1rem;
  }
  .image-title {
    font-weight: 600;
    font-size: 1.75rem;
    line-height: 1.35;
    letter-spacing: -0.02em;
  }
  .image-desc {
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.6;
    letter-spacing: 0;
  }
  .image-unit {
    font-weight: 400;
    font-size: 0.875rem;
    line-height: 1.6;
    letter-spacing: 0;
  }
  .line-box {
    padding: 2.5rem 1.5rem;
  }
  .line-box.-target {
    padding: 2rem 1.5rem;
  }
  .gray-box.type3 {
    padding: 2.5rem 1.5rem;
  }
  .application-item + .application-item {
    margin-left: 1rem;
    padding-left: 1rem;
  }
  .button {
    min-height: 4.125rem;
    padding: 0.5rem 2rem;
  }
  .button.stretch {
    min-width: 8.1875rem;
  }
  .button.small {
    min-height: 3.1875rem;
    padding: 0.5rem 1.25rem;
  }
  .button.tiny {
    min-height: 2rem;
    padding: 0.5rem;
  }
  .line-button {
    font-weight: 700;
    font-size: 1.25rem;
    line-height: 1.3;
    letter-spacing: 0;
  }
  .line-button {
    min-height: 4.125rem;
    padding: 0.5rem 2rem;
  }
  .line-button.mobile\:expanded {
    display: flex;
    justify-content: space-between;
    width: 100%;
  }
  .line-button.stretch {
    min-width: 8.1875rem;
  }
  .line-button.small {
    font-weight: 700;
    font-size: 1.0625rem;
    line-height: 1.3;
    letter-spacing: 0;
  }
  .line-button.small {
    min-height: 3.1875rem;
    padding: 0.5rem 1.25rem;
  }
  .line-button.tiny {
    min-height: 2rem;
    padding: 0.375rem 0.5rem;
  }
  .text-button.icon-outlink::before {
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 1.125rem;
  }
  .label {
    margin-bottom: 0.5rem;
  }
  .label.required::after {
    width: 0.25rem;
    height: 0.25rem;
  }
  .forms.error::after {
    top: 1rem;
  }
  :is(.text, .select, .textarea) {
    box-shadow: inset 0 0 0 1px var(--border-gray-strong);
  }
  .text {
    height: 3.4375rem;
    padding: 0 1rem;
    border-radius: 0.75rem;
  }
  .textarea {
    height: 8.9375rem;
    border-radius: 0.75rem;
  }
  .select {
    height: 3.4375rem;
    padding: 0 2rem 0 1rem;
    background-position: right 1rem top 50%;
    border-radius: 0.75rem;
  }
  .pagination-page .pagination-link {
    width: 2rem;
    height: 2rem;
  }
  .pagination-prev .pagination-link {
    width: 2rem;
    height: 2rem;
  }
  .pagination-next .pagination-link {
    width: 2rem;
    height: 2rem;
  }
  .pagination-first .pagination-link {
    width: 2rem;
    height: 2rem;
  }
  .pagination-last .pagination-link {
    width: 2rem;
    height: 2rem;
  }
  .accordion [aria-controls] {
    padding: 1.5rem 0.75rem 1.5rem 1rem;
  }
  .accordion [aria-controls]::after {
    width: 1.25rem;
    height: 1.25rem;
    background-size: 1.25rem 1.25rem;
  }
  .accordion [data-accordion-frame] {
    padding: 3.5rem 0.25rem 4rem;
  }
  .required-message-mark {
    width: 0.25rem;
    height: 0.25rem;
  }
  .required-message-desc {
    margin-top: 0.5rem;
  }
  .list.lv1:not(:first-child) > li {
    margin-top: 3.5rem;
  }
  .list .list.lv2 {
    margin-top: 1.75rem;
  }
  .list .list.lv2.reduced {
    margin-top: 1.75rem;
  }
  .list.lv2 > li + li {
    margin-top: 1.75rem;
  }
  .list.lv2.reduced > li + li {
    margin-top: 1.75rem;
  }
  .list .list.lv3 {
    margin-top: 0.5rem;
  }
  .checkbox input[type="checkbox"] {
    border-radius: 0.75rem;
  }
  .checkbox label {
    padding: 1rem 2.75rem 1rem 1rem;
    font-weight: 500;
    font-size: 1.0625rem;
    line-height: 1.3;
    letter-spacing: 0;
  }
  .checkbox label::before {
    width: 1.25rem;
    height: 1.25rem;
    background-size: 1.25rem 1.25rem;
  }
  .radio input[type="radio"] {
    border-radius: 0.75rem;
  }
  .radio label {
    padding: 1rem;
    padding-left: 3.75rem;
    border-radius: 0.75rem;
    text-align: left;
    font-weight: 500;
    font-size: 1.0625rem;
    line-height: 1.3;
    letter-spacing: 0;
  }
  .radios.horizontal .radio label {
    padding: 1rem;
    text-align: center;
  }
  .radio label::before {
    left: 1rem;
    width: 1.25rem;
    height: 1.25rem;
    background-size: 1.25rem 1.25rem;
  }
  .dropdown-trigger {
    font-weight: 500;
    font-size: 1.0625rem;
    line-height: 1.3;
    letter-spacing: 0;
  }
  .dropdown-trigger {
    font-size: 1.125rem;
  }
  .dropdown-link {
    font-weight: 500;
    font-size: 1.0625rem;
    line-height: 1.3;
    letter-spacing: 0;
  }
  .dropdown-link {
    padding: 0.75rem 1rem;
    font-size: 1.125rem;
  }
  .bullet-ref::before {
    margin-top: 0.1875rem;
  }
  .ol > li {
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.6;
    letter-spacing: 0;
  }
  .ol > li::before {
    font-weight: 500;
    font-size: 0.75rem;
    line-height: 1.6;
    letter-spacing: 0;
  }
  .board-item.type2 {
    padding-right: 0;
  }

  .board-util {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-end;
    gap: 2.5rem;
    margin-bottom: 0.75rem;
  }
  .board-item.type2 .board-link {
    flex-wrap: wrap;
    padding: 2rem 1rem 2.0625rem 0rem;
  }
  .board.no-file .board-link {
    padding-right: 0.75rem;
  }
  .board-number {
    order: 3;
    width: auto;
    padding-right: 0;
  }
  .board-subject {
    flex: none;
    order: 1;
    width: 100%;
    margin-bottom: 1rem;
    display: -webkit-box !important;
    line-clamp: 2;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    word-break: keep-all !important;
    word-break: break-all !important;
  }
  .board-badge {
    order: 2;
  }
  .board-date {
    display: none;
    order: 4;
    position: relative;
    width: auto;
    padding-left: 1rem;
  }
  .board-date::before {
    content: "";
    position: absolute;
    left: 0.53125rem;
    top: 50%;
    width: 1px;
    height: 0.75rem;
    background-color: var(--border-gray-strong);
    transform: translateY(-50%);
  }
  .board-date.tablet-mode {
    display: flex;
  }

  .board-file {
    right: 0.75rem;
  }

  .detail-category {
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.4;
    letter-spacing: 0;
  }
  .detail-category {
    margin-bottom: 0.75rem;
    padding: 0 0.25rem;
  }
  .detail-subject {
    padding: 0 0.25rem;
  }
  .detail-date {
    margin-top: 3rem;
  }
  .detail-post {
    padding: 2rem 0 1.5rem;
  }

  .detail-files {
    flex-direction: column;

    padding: 2rem 1.5rem;
    gap: 1.25rem;
  }
  .detail-content ~ .detail-files {
    margin-top: 3.75rem;
  }
  .detail-file-list {
    gap: 1rem;
  }
  .detail-nav {
    margin-top: 1.25rem;
  }
  .detail-nav-link {
    gap: 1.5rem;
    padding: 0.5rem 0.25rem 0.5rem 0;
  }
  .detail-nav-label {
    gap: 0.375rem;
  }
  .result-message {
    font-weight: 600;
    font-size: 1.25rem;
    line-height: 1.4;
    letter-spacing: -0.02em;
  }
  .message {
    display: block;
  }
  .message-title {
    font-weight: 700;
    font-size: 2rem;
    line-height: 1.35;
    letter-spacing: -0.02em;
  }
  .message-title {
    text-align: left;
  }
  .message-desc {
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.6;
    letter-spacing: 0;
  }
  .message-desc {
    text-align: left;
  }
  .message-action {
    text-align: center;
  }
  .greeting {
    height: 26.25rem;
  }
  .greeting-slogan h1 {
    font-size: 2.5rem;
  }
  .greeting-slogan span {
    font: var(--font-h5-500);
  }
  .ceo-title {
    margin-bottom: 2rem;
  }
  .ceo-signature {
    margin-top: 4rem;
    height: 2.8125rem;
    background-position: 6.25rem 0;
    background-size: auto 2.8125rem;
  }
  .ceo-career {
    margin-top: 5rem;
    padding: 2.5rem 2rem 3rem;
  }
  .ceo-key {
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.6;
    letter-spacing: 0;
  }
  .ceo-value {
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.6;
    letter-spacing: 0;
  }
  .leadership.type-b {
    padding-bottom: 109.48%;
  }
  .leadership.type-c {
    padding-bottom: 109.48%;
  }
  .leadership.type-d {
    padding-bottom: 109.48%;
  }
  .leadership-info {
    gap: 0;
    padding: 1.25rem;
  }
  .leadership-desc {
    font-weight: 500;
    font-size: 0.875rem;
    line-height: 1.6;
    letter-spacing: 0;
  }
  .leadership.type-a .leadership-desc {
    font-weight: 500;
    font-size: 1.25rem;
    line-height: 1.5;
    letter-spacing: -0.02em;
  }
  .leadership-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .leadership-grid [class*="leadership-col-"] {
    grid-column: auto;
  }
  .history {
    scroll-margin-top: 4.75rem;
  }
  .history {
    padding: 0;
  }
  .history-age {
    position: static;
    margin-bottom: 0;
    padding-left: 1rem;
  }
  .history:last-child .history-age {
    margin-bottom: 0;
  }
  .history.init .history-age {
    opacity: 1;
  }
  .history-heading {
    font-weight: 700;
    font-size: 2.125rem;
    line-height: 1.35;
    letter-spacing: -0.02em;
  }
  .history-desc {
    font: var(--font-b5-500);
    line-height: 1.5;
    letter-spacing: -0.02em;
  }
  .history-count {
    display: none;
  }
  .history-count.init .history-numbers {
    transform: scale(1);
  }
  .history-title {
    left: 1.25rem;
    transform: translateX(0);
    font-weight: 700;
    font-size: 0.875rem;
    line-height: 1.6;
    letter-spacing: 0;
  }
  .history-nav {
    padding: 0 1.25rem;
  }

  .history-group {
    padding: 0;
    border-radius: 0;
    background-color: transparent;
    -webkit-backdrop-filter: blur(0);
    backdrop-filter: blur(0);
    box-shadow: none;
  }
  .history-group.init {
    transform: scale(1);
  }
  .history-group + .history-group {
    margin-top: 5rem;
  }
  .history-group:first-child {
    margin-top: 0 !important;
  }
  .history-group:last-child {
    margin-bottom: 20rem;
  }
  .history:last-child .history-group:last-child {
    margin-bottom: 0;
  }
  .history-group.init .history-year {
    transform: translateX(3.125rem);
  }
  .history-datas {
    padding-left: 1rem;
  }
  .history-group.init .history-datas {
    transform: translateX(3.125rem);
  }
  .history-data {
    gap: 0;
  }
  .history-date {
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.6;
    letter-spacing: 0;
  }
  .history-value {
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.6;
    letter-spacing: 0;
  }
  .org-box {
    padding: 0;
    background-color: transparent;
  }
  .map {
    height: 27.5rem;
  }
  .branch-key {
    width: 100%;
  }
  .circle-1 {
    width: 12.5rem;
    height: 12.5rem;
    border-radius: 6.25rem;
  }
  .circle-2 {
    gap: 2rem;
    width: 30rem;
    height: 15rem;
    border-radius: 7.5rem;
  }
  .circle-3 {
    gap: 2rem;
    width: 50.75rem;
    height: 18.75rem;
    margin-left: 0;
    border-radius: 9.375rem;
  }
  .plan {
    flex-direction: column;
    gap: 2.5rem;
  }
  .plan + .plan {
    padding-top: 4rem 0;
  }
  .plan-title {
    margin-bottom: 0.75rem;
    font-weight: 600;
    font-size: 1.75rem;
    line-height: 1.35;
    letter-spacing: -0.02em;
  }
  .plan-desc {
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.6;
    letter-spacing: 0;
  }
  .plan-action {
    display: none;
    gap: 0.5rem;
    margin-top: 2rem;
  }
  .plan-item {
    flex-direction: column;
    gap: 1.25rem;
    padding-bottom: 2rem;
  }
  .plan-key {
    padding: 0.5rem 1rem;
  }
  .plan-item + .plan-item {
    padding: 2rem 0;
  }
  .plan-info {
    order: 2;
  }
  .plan-image {
    order: 1;
    width: auto;
    border-radius: 0 1rem 1rem 1rem;
    transition: none;
  }
  .-target .plan-list {
    margin-top: 0;
  }
  .plan-list.row {
    gap: 1.5rem;
  }
  .plan-list.row .plan-item {
    gap: 0.75rem;
  }

  .biz-info-image {
    margin-right: 0.625rem;
    grid-column-end: span 4;
  }
  .biz-info-content {
    grid-column-end: span 8;
  }
  .biz-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
  }
  .biz-item {
    padding: 1.5rem 0.75rem;
  }
  .biz-item:before {
    width: 4.5rem;
    height: 4.5rem;
    margin-bottom: 0.75rem;
  }
  .support {
    padding: 3rem 1.5rem;
  }
  .support-item {
    width: 20.5rem;
  }
  .ex {
    margin: 1rem 0;
    border-radius: 0.75rem;
  }
  .color-key {
    font-weight: 700;
    font-size: 0.875rem;
    line-height: 1.6;
    letter-spacing: 0;
  }
  .color-value {
    font-weight: 500;
    font-size: 0.875rem;
    line-height: 1.6;
    letter-spacing: 0;
  }
  .color-value.small {
    font-weight: 500;
    font-size: 0.75rem;
    line-height: 1.6;
    letter-spacing: 0;
  }
}

@media screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
  .tablet {
    display: none !important;
  }
  .mobile {
    display: block !important;
  }
  .mobile\:block {
    display: block !important;
  }
  .mobile\:none {
    display: none !important;
  }
  .mobile\:flex {
    display: flex !important;
  }
  .mobile\:inline-flex {
    display: inline-flex !important;
  }
  .mobile\:flex-column {
    flex-direction: column !important;
  }
  .mobile\:flex-row {
    flex-direction: row !important;
  }
  .mobile\:justify-start {
    justify-content: flex-start !important;
  }
  .mobile\:justify-center {
    justify-content: center !important;
  }
  .mobile\:justify-end {
    justify-content: flex-end !important;
  }
  .mobile\:justify-between {
    justify-content: space-between !important;
  }
  .mobile\:align-start {
    align-items: flex-start !important;
  }
  .mobile\:align-center {
    align-items: center !important;
  }
  .mobile\:align-end {
    align-items: flex-end !important;
  }
  .mobile\:uppercase {
    text-transform: uppercase !important;
  }
  .mobile\:lowercase {
    text-transform: lowercase !important;
  }
  .mobile\:regular {
    font-weight: 400 !important;
  }
  .mobile\:medium {
    font-weight: 500 !important;
  }
  .mobile\:semi-bold {
    font-weight: 600 !important;
  }
  .mobile\:bold {
    font-weight: 700 !important;
  }
  .mobile\:left {
    text-align: left !important;
  }
  .mobile\:center {
    text-align: center !important;
  }
  .mobile\:right {
    text-align: right !important;
  }
  .mobile\:gap-0 {
    gap: 0 !important;
  }
  .mobile\:mt-0 {
    margin-top: 0 !important;
  }
  .mobile\:mb-0 {
    margin-bottom: 0 !important;
  }
  .mobile\:gap-2 {
    gap: 2px !important;
  }
  .mobile\:mt-2 {
    margin-top: 2px !important;
  }
  .mobile\:mb-2 {
    margin-bottom: 2px !important;
  }
  .mobile\:gap-4 {
    gap: 0.25rem !important;
  }
  .mobile\:mt-4 {
    margin-top: 0.25rem !important;
  }
  .mobile\:mb-4 {
    margin-bottom: 0.25rem !important;
  }
  .mobile\:gap-8 {
    gap: 0.5rem !important;
  }
  .mobile\:mt-8 {
    margin-top: 0.5rem !important;
  }
  .mobile\:mb-8 {
    margin-bottom: 0.5rem !important;
  }
  .mobile\:gap-10 {
    gap: 0.625rem !important;
  }
  .mobile\:mt-10 {
    margin-top: 0.625rem !important;
  }
  .mobile\:mb-10 {
    margin-bottom: 0.625rem !important;
  }
  .mobile\:gap-12 {
    gap: 0.75rem !important;
  }
  .mobile\:mt-12 {
    margin-top: 0.75rem !important;
  }
  .mobile\:mb-12 {
    margin-bottom: 0.75rem !important;
  }
  .mobile\:gap-16 {
    gap: 1rem !important;
  }
  .mobile\:mt-16 {
    margin-top: 1rem !important;
  }
  .mobile\:mb-16 {
    margin-bottom: 1rem !important;
  }
  .mobile\:gap-20 {
    gap: 1.25rem !important;
  }
  .mobile\:mt-20 {
    margin-top: 1.25rem !important;
  }
  .mobile\:mb-20 {
    margin-bottom: 1.25rem !important;
  }
  .mobile\:gap-24 {
    gap: 1.5rem !important;
  }
  .mobile\:mt-24 {
    margin-top: 1.5rem !important;
  }
  .mobile\:mb-24 {
    margin-bottom: 1.5rem !important;
  }
  .mobile\:gap-32 {
    gap: 2rem !important;
  }
  .mobile\:mt-32 {
    margin-top: 2rem !important;
  }
  .mobile\:mb-32 {
    margin-bottom: 2rem !important;
  }
  .mobile\:gap-40 {
    gap: 2.5rem !important;
  }
  .mobile\:mt-40 {
    margin-top: 2.5rem !important;
  }
  .mobile\:mb-40 {
    margin-bottom: 2.5rem !important;
  }
  .mobile\:gap-48 {
    gap: 3rem !important;
  }
  .mobile\:mt-48 {
    margin-top: 3rem !important;
  }
  .mobile\:mb-48 {
    margin-bottom: 3rem !important;
  }
  .mobile\:gap-56 {
    gap: 3.5rem !important;
  }
  .mobile\:mt-56 {
    margin-top: 3.5rem !important;
  }
  .mobile\:mb-56 {
    margin-bottom: 3.5rem !important;
  }
  .mobile\:gap-60 {
    gap: 3.75rem !important;
  }
  .mobile\:mt-60 {
    margin-top: 3.75rem !important;
  }
  .mobile\:mb-60 {
    margin-bottom: 3.75rem !important;
  }
  .mobile\:gap-64 {
    gap: 4rem !important;
  }
  .mobile\:mt-64 {
    margin-top: 4rem !important;
  }
  .mobile\:mb-64 {
    margin-bottom: 4rem !important;
  }
  .mobile\:gap-70 {
    gap: 4.375rem !important;
  }
  .mobile\:mt-70 {
    margin-top: 4.375rem !important;
  }
  .mobile\:mb-70 {
    margin-bottom: 4.375rem !important;
  }
  .mobile\:gap-80 {
    gap: 5rem !important;
  }
  .mobile\:mt-80 {
    margin-top: 5rem !important;
  }
  .mobile\:mb-80 {
    margin-bottom: 5rem !important;
  }
  .mobile\:gap-88 {
    gap: 5.5rem !important;
  }
  .mobile\:mt-88 {
    margin-top: 5.5rem !important;
  }
  .mobile\:mb-88 {
    margin-bottom: 5.5rem !important;
  }
  .mobile\:gap-100 {
    gap: 6.25rem !important;
  }
  .mobile\:mt-100 {
    margin-top: 6.25rem !important;
  }
  .mobile\:mb-100 {
    margin-bottom: 6.25rem !important;
  }
  .mobile\:gap-120 {
    gap: 7.5rem !important;
  }
  .mobile\:mt-120 {
    margin-top: 7.5rem !important;
  }
  .mobile\:mb-120 {
    margin-bottom: 7.5rem !important;
  }
  .mobile\:gap-140 {
    gap: 8.75rem !important;
  }
  .mobile\:mt-140 {
    margin-top: 8.75rem !important;
  }
  .mobile\:mb-140 {
    margin-bottom: 8.75rem !important;
  }
  .mobile\:gap-160 {
    gap: 10rem !important;
  }
  .mobile\:mt-160 {
    margin-top: 10rem !important;
  }
  .mobile\:mb-160 {
    margin-bottom: 10rem !important;
  }
  .mobile\:gap-200 {
    gap: 12.5rem !important;
  }
  .mobile\:mt-200 {
    margin-top: 12.5rem !important;
  }
  .mobile\:mb-200 {
    margin-bottom: 12.5rem !important;
  }
  .mobile\:gap-240 {
    gap: 15rem !important;
  }
  .mobile\:mt-240 {
    margin-top: 15rem !important;
  }
  .mobile\:mb-240 {
    margin-bottom: 15rem !important;
  }
  .indent {
    padding: 0 0.25rem;
  }
  .outdent {
    margin: 0 -1.25rem;
  }
  .mobile\:order-1 {
    order: 1 !important;
  }
  .mobile\:order-2 {
    order: 2 !important;
  }
  .grid {
    grid-template-columns: repeat(1, 1fr);
    gap: 0;
  }
  .grid [class*="col-"] {
    grid-column: 1/-1;
  }
  .grid [class*="start-"] {
    grid-column-start: auto;
  }
  .grid .grid.mobile\:two-column {
    grid-template-columns: repeat(2, 1fr);
  }
  .grid .grid.mobile\:two-column [class*="col-"] {
    grid-column: auto;
  }
  .type2 .navs-list {
    grid-template-columns: repeat(2, 1fr);
  }
  .ceo-photo {
    width: 100%;
    height: auto;
  }
  .month-row {
    display: flex;
  }
  .history-month {
    width: auto;
  }
  .leadership-grid {
    grid-template-columns: repeat(1, 1fr);
  }
  .leadership-grid [class*="leadership-col-"] {
    grid-column: auto;
  }
  .biz-list {
    grid-template-columns: repeat(1, 1fr);
  }

  .support-info {
    flex-direction: column;
    width: 100%;
  }
  .support-item {
    width: 100%;
  }
  .table {
    overflow-x: scroll;
  }
  .plan-list.row {
    flex-direction: column;
    gap: 0;
  }
  .application {
    flex-direction: column;
  }
  .application-item + .application-item {
    margin-top: 2rem;
    margin-left: 0;
    padding-top: 2rem;
    padding-left: 0;
    border-left: 0;
    border-top: 1px solid var(--border-gray-strong);
  }
}

@media screen and (max-width: 359px) {
  .pagination-page + .pagination-page {
    margin-left: 0;
  }
  .pagination-prev {
    margin-right: 0;
  }
  .pagination-next {
    margin-left: 0;
  }
}

@media screen and (min-width: 1024px) {
  .pc\:block {
    display: block !important;
  }
  .pc\:none {
    display: none !important;
  }
  .pc\:flex {
    display: flex !important;
  }
  .pc\:inline-flex {
    display: inline-flex !important;
  }
  .pc\:flex-column {
    flex-direction: column !important;
  }
  .pc\:flex-row {
    flex-direction: row !important;
  }
  .pc\:justify-start {
    justify-content: flex-start !important;
  }
  .pc\:justify-center {
    justify-content: center !important;
  }
  .pc\:justify-end {
    justify-content: flex-end !important;
  }
  .pc\:justify-between {
    justify-content: space-between !important;
  }
  .pc\:align-start {
    align-items: flex-start !important;
  }
  .pc\:align-center {
    align-items: center !important;
  }
  .pc\:align-end {
    align-items: flex-end !important;
  }
  .pc\:uppercase {
    text-transform: uppercase !important;
  }
  .pc\:lowercase {
    text-transform: lowercase !important;
  }
  .pc\:regular {
    font-weight: 400 !important;
  }
  .pc\:medium {
    font-weight: 500 !important;
  }
  .pc\:semi-bold {
    font-weight: 600 !important;
  }
  .pc\:bold {
    font-weight: 700 !important;
  }
  .pc\:left {
    text-align: left !important;
  }
  .pc\:center {
    text-align: center !important;
  }
  .pc\:right {
    text-align: right !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}

@media print {
  *,
  *::before,
  *::after {
    box-shadow: none !important;
    text-shadow: none !important;
  }
  html {
    font-size: 50%;
  }
  .skip,
  .header,
  .footer,
  .top {
    display: none !important;
  }
  .contents {
    padding-top: 6.25rem;
  }
  .history-nav,
  .history-count {
    display: none;
  }
  .history-group {
    background-color: rgba(255, 255, 255, 0.9) !important;
  }
  .history-group:first-child {
    margin-top: 0;
  }
  .history-group:last-child {
    margin-bottom: 0;
  }
  .history-year,
  .history-datas {
    opacity: 1 !important;
    transform: translateY(0) !important;
  }
}
