@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.6/dist/web/static/pretendard.css');
* {
    box-sizing: border-box;
}
.pre {
    font-family: 'Pretendard', sans-serif;
}

a {
    color: #333;
    text-decoration: none;
}
ul {
    list-style: none;
    padding: 0;
    margin: 0px;
}
li {
    list-style: none;
}
img {
    vertical-align: middle;
    max-width: 100%;
}
h1,
h2,
h3,
h4,
h5,
h6,
p,
span,
strong {
    margin: 0;
}
small {
    font-style: normal;
}
.center {
    max-width: 1440px;
    width: 100%;
    margin: 0 auto;
}


.blind {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}

/* header */
#header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 9.5rem;
  z-index: 104;
  background-color: #fff;
}

#header .inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
}

#header .inner .logo a {
  position: relative;
  display: block;
  width: 24rem;
  aspect-ratio: 20 / 5.6;
}

#header .inner .logo a img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%; 
  height: auto;
  transition: 0.5s;
}

#header .inner .logo a img.off {
  opacity: 0;
}

#header .inner .gnb-wrap {
  height: 100%;
}

#header .inner .gnb-wrap ul {
  display: flex;
  align-items: center;
  gap: 4.2rem;
  height: 100%;
}

#header .inner .gnb-wrap ul li {
  
  height: 100%;
}

#header .inner .gnb-wrap ul li a {
  position: relative;
  font-size: 2rem;
  font-weight: 500;
  color: #000;
  display: flex;
  align-items: center;
  height: 100%;
}

#header .inner .gnb-wrap ul li a > span {
  position: absolute;
  bottom: -3px;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 0;
  height: 3px;
  background-color: #15264B;
  transition: 0.5s;
  z-index: 12;
}

#header .inner .gnb-wrap ul li:hover > a {
  font-weight: 700;
  color: #15264B;
}

#header .inner .gnb-wrap ul li:hover > a span {
  width: 100%;
}

#header .inner .mo-menu-btn {
  display: none;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}

.ham {
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: transform 400ms;
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.hamRotate.active {
  transform: rotate(45deg);
}
.hamRotate180.active {
  transform: rotate(180deg);
}
.line {
  fill:none;
  transition: stroke-dasharray 400ms, stroke-dashoffset 400ms;
  stroke:#000;
  stroke-width:3;
  stroke-linecap:round;
}
.ham4 .top {
  stroke-dasharray: 40 121;
}
.ham4 .bottom {
  stroke-dasharray: 40 121;
}
.ham4.active .top {
  stroke-dashoffset: -68px;
}
.ham4.active .bottom {
  stroke-dashoffset: -68px;
}

#header:hover,
#header.active {
  background-color: rgba(255,255,255,0.8);
  backdrop-filter: blur(10px);
  box-shadow: 0.5rem 0.5rem 0.5rem rgba(0,0,0,0.15);
}

#header:hover .inner .logo a img.on,
#header.active .inner .logo a img.on {
  opacity: 1;
}

#header:hover .inner .gnb-wrap ul li a,
#header.active .inner .gnb-wrap ul li a {
  color: #000;
}

@media all and (max-width:960px) {
  #header .inner .mo-menu-btn {
    display: block;
  }

  #header .inner .gnb-wrap {
    display: none;
  }
}







body.full-nav-open {
  overflow:hidden;
}

#header2 {position:fixed;top:0;left:0;width:100%;height:10rem;z-index:104;transition:height 0.5s, transform 0.5s, background-color 0.5s, backdrop-filter 0.5s;}
#header2.hide {transform:translateY(-100%);}
#header2 .inner {display:flex;align-items:center;justify-content:space-between;height:100%;padding:0 7.5rem;}
#header2 .inner .logo a {position:relative;display:block;width:18rem;aspect-ratio:20 / 5.6;}
#header2 .inner .logo a img {position:absolute;top:0;left:0;width:100%;height:auto;transition:0.5s;}
#header2 .inner .logo a img.on {display: none;}
#header2 .inner .gnb-wrap {height:100%;}
#header2 .inner .gnb-wrap ul {display:flex;align-items:center;gap:4rem;height:100%;}
#header2 .inner .gnb-wrap ul li {height:100%;}
#header2 .inner .gnb-wrap ul li a {position:relative;font-size:1.8rem;font-weight:500;color:#fff;display:flex;align-items:center;height:100%;}
#header2 .inner .gnb-wrap ul li a > span {position:absolute;bottom:-3px;left:50%;transform:translate(-50%,-50%);width:0;height:3px;background-color:#15264B;transition:0.5s;z-index:12;}
#header2 .inner .gnb-wrap ul li:hover > a {font-weight:700;color:#15264B;}
#header2 .inner .gnb-wrap ul li:hover > a span {width:100%;}
#header2 .inner .util-wrap {display:flex;gap:2.2rem;}
#header2 .inner .util-wrap .point-box {display:inline-flex;position:relative;overflow:hidden;font-size:1.4rem;font-weight:600;color:#fff;background-color:rgba(21,38,75,0.4);border:1px solid rgba(255,255,255,0.2);backdrop-filter:blur(10px);height:3rem;border-radius:5rem;align-items:center;justify-content:center;min-width:17.6rem;}
#header2 .inner .util-wrap .point-box p {position:absolute;left:50%;top:50%;transform:translate(-50%,100%);white-space:nowrap;opacity:0;animation:pointTxtAni 5s infinite;}
#header2 .inner .util-wrap .point-box p:nth-child(2) {animation-delay:2.5s;}

@keyframes pointTxtAni {
  0% {transform:translate(-50%,100%);opacity:0;}
  12% {transform:translate(-50%,-50%);opacity:1;}
  42% {transform:translate(-50%,-50%);opacity:1;}
  55% {transform:translate(-50%,-150%);opacity:0;}
  100% {transform:translate(-50%,-150%);opacity:0;}
}

#header2 .inner .util-wrap .lang-box {display:flex;gap:1.6rem;align-items:center;}
#header2 .inner .util-wrap .lang-box a {position:relative;font-size:1.6rem;font-weight:500;color:rgba(255,255,255,0.5);}
#header2 .inner .util-wrap .lang-box a.active {color:#fff;}
#header2 .inner .util-wrap .lang-box a::before {content:"";position:absolute;top:50%;left:-0.8rem;width:1px;height:1.1rem;background-color:rgba(255,255,255,0.5);transform:translateY(-50%);}

#header2 .inner .util-wrap .lang-box a:first-child:before {display:none;}

#header2 .inner .mo-menu-btn {display:none;position:absolute;top:50%;right:0;transform:translateY(-50%);}

.ham {cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform 400ms;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;}
.hamRotate.active {transform:rotate(45deg);}
.hamRotate180.active {transform:rotate(180deg);}
.line {fill:none;transition:stroke-dasharray 400ms, stroke-dashoffset 400ms;stroke:#fff;stroke-width:3;stroke-linecap:round;}
.ham4 .top {stroke-dasharray:40 121;}
.ham4 .bottom {stroke-dasharray:40 121;}
.ham4.active .top {stroke-dashoffset:-68px;}
.ham4.active .bottom {stroke-dashoffset:-68px;}



#header2:is(.scroll-up, .terms, .menu-open) {
  height:8rem;
}

#header2:is(.scroll-up, .terms, .menu-open, .gnb-open) {
  background-color:#fff;
  box-shadow:10px 10px 10px rgba(0,0,0,0.16);
}

#header2:is(.scroll-up, .terms, .menu-open, .gnb-open) .inner .logo a img.off {
  display:none;
}

#header2:is(.scroll-up, .terms, .menu-open, .gnb-open) .inner .logo a img.on {
  display:block;
}

#header2:is(.scroll-up, .terms, .menu-open, .gnb-open) .inner .gnb-wrap ul li a {
  color:#000;
}

#header2:is(.scroll-up, .terms, .menu-open, .gnb-open) .inner .util-wrap .point-box {
  background-color:rgba(21,38,75,1);
}

#header2:is(.scroll-up, .terms, .menu-open, .gnb-open) .inner .util-wrap .lang-box a {
  color:rgba(0,0,0,0.5);
}

#header2:is(.scroll-up, .terms, .menu-open, .gnb-open) .inner .util-wrap .lang-box a.active {
  color:#000;
}

#header2:is(.scroll-up, .terms, .menu-open, .gnb-open) .inner .util-wrap .lang-box a::before {
  background-color:rgba(0,0,0,0.5);
}

#header2:is(.scroll-up, .terms, .menu-open, .gnb-open) .line {
  stroke:#000;
}

@media all and (max-width:960px) {
  #header2 .inner {padding:0 3.333rem;}
  #header2 .inner .mo-menu-btn {display:block;}
  #header2 .inner .gnb-wrap {display:none;}
  #header2 .inner .util-wrap {margin-right: 6rem;}
  #header2 .inner .util-wrap .point-box {display: none;}
  #header2 .inner .util-wrap .lang-box {gap:2rem;}
  #header2 .inner .util-wrap .lang-box a {font-size:2rem;}
  #header2 .inner .util-wrap .lang-box a::before {height:1.6rem;left: -1rem;}
}



.lang-ready-pop {position:fixed;top:0;left:0;z-index:99999;width:100%;height:100%;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity 0.3s ease, visibility 0.3s ease;}
.lang-ready-pop.on {opacity:1;visibility:visible;}
.lang-ready-pop .pop-dim {position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.45);backdrop-filter:blur(6px);}
.lang-ready-pop .pop-box {position:relative;width:420px;max-width:calc(100% - 40px);padding:52px 42px 42px;border-radius:28px;background:#fff;text-align:center;box-shadow:0 30px 80px rgba(0,0,0,0.22);transform:translateY(20px);transition:transform 0.3s ease;}
.lang-ready-pop.on .pop-box {transform:translateY(0);}
.lang-ready-pop .label {display:inline-flex;align-items:center;justify-content:center;height:32px;margin-bottom:20px;padding:0 16px;border-radius:999px;background:#15264B;font-size:13px;font-weight:700;letter-spacing:0.08em;color:#fff;}
.lang-ready-pop h3 {margin:0;font-size:34px;font-weight:800;line-height:1.18;letter-spacing:-0.03em;color:#111;}
.lang-ready-pop p {margin:20px 0 32px;font-size:17px;font-weight:400;line-height:1.65;letter-spacing:-0.04em;color:#555;}
.lang-ready-pop .confirm-btn {width:100%;height:58px;border:0;border-radius:16px;background:#15264B;font-size:17px;font-weight:700;color:#fff;cursor:pointer;transition:background 0.25s ease, transform 0.25s ease;}
.lang-ready-pop .confirm-btn:hover {background:#0f1b36;transform:translateY(-2px);}
.lang-ready-pop .pop-close {position:absolute;top:22px;right:22px;width:36px;height:36px;border:0;border-radius:50%;background:#f3f4f7;cursor:pointer;}
.lang-ready-pop .pop-close::before {content:"";position:absolute;top:50%;left:50%;width:16px;height:2px;background:#333;transform:translate(-50%, -50%) rotate(45deg);}
.lang-ready-pop .pop-close::after {content:"";position:absolute;top:50%;left:50%;width:16px;height:2px;background:#333;transform:translate(-50%, -50%) rotate(-45deg);}

@media all and (max-width:580px) {
  .lang-ready-pop .pop-box {padding:44px 26px 30px;border-radius:22px;}
  .lang-ready-pop h3 {font-size:28px;}
  .lang-ready-pop p {font-size:15px;}
  .lang-ready-pop .confirm-btn {height:54px;font-size:16px;}
}


.full_nav {
  position:fixed;
  top:0;
  right:-100%;
  z-index:103;
  width:100%;
  height:100vh;
  min-height:700px;
  overflow:auto;
  background:rgba(255,255,255,0.8);
  backdrop-filter:blur(5px);
  transition:0.5s;
}

.full_nav.open {
  right:0;
}

/* 메인 메뉴 */
.full_nav ul.nav_list {
  margin-top:18rem;
  padding:0 20px;
}

.full_nav ul.nav_list > li {
  margin-top:4rem;
}

.full_nav ul.nav_list > li:first-child {
  margin-top:0;
}

/* 일반 메뉴와 아코디언 버튼 공통 */
.full_nav .nav-link,
.full_nav .nav-toggle {
  position:relative;
  font-size:3rem;
  font-weight:800;
  color:#111;
}

.full_nav .nav-link {
  display:inline-block;
}

/* 아코디언 상위 버튼 */
.full_nav .nav-toggle {
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  padding:0;
  border:0;
  background:transparent;
  font-family:inherit;
  text-align:left;
  cursor:pointer;
}

/* 아코디언 화살표 */
.full_nav .nav-toggle .nav-arrow {
  flex:none;
  width:1.4rem;
  height:1.4rem;
  margin-right:1rem;
  border-right:2px solid #15264B;
  border-bottom:2px solid #15264B;
  transform:rotate(45deg);
  transition:transform 0.3s;
}

.full_nav .has-sub.open > .nav-toggle {
  color:#15264B;
}

.full_nav .has-sub.open > .nav-toggle .nav-arrow {
  transform:rotate(225deg);
}

/* 하위 메뉴 */
.full_nav .sub-nav {
  display:none;
  margin:0;
  padding:2.5rem 0 0 2rem;
}

.full_nav .sub-nav li {
  margin:0;
}

.full_nav .sub-nav li + li {
  margin-top:1.6rem;
}

.full_nav .sub-nav li a {
  display:inline-block;
  position:relative;
  font-size:2.2rem;
  font-weight:500;
  line-height:1.45;
  color:#555;
}

.full_nav .sub-nav li a:active {
  color:#15264B;
}

/* 현재 메뉴 표시 */
.full_nav ul.nav_list > li.on > .nav-link::after {
  content:"";
  position:absolute;
  bottom:2px;
  left:50%;
  z-index:-1;
  width:110%;
  height:10px;
  background:#a8d8ea;
  transform:translateX(-50%);
}

/* SNS */
.full_nav ul.sns_list {
  display:flex;
  align-items:center;
  gap:4rem;
  margin-top:10rem;
  padding:0 20px 5rem;
}

.full_nav ul.sns_list li a img {
  width:3.2rem;
  height:auto;
  filter:brightness(0);
}

.full_nav ul.sns_list li:last-child a img {
  width:2.8rem;
}

/* PC에서는 완전히 제거 */
@media all and (min-width:961px) {
  .full_nav {
    display:none !important;
  }
}