
.container { margin: auto; position: relative; clear: both; min-width: 1400px; background: #e7e7e7; }
.fp-watermark { display: none!important; }

.header { position: fixed; left: 0; right: 0; top: 0; width: 100%; z-index: 5; }
.header.bg { background: none; }
.header-inner { display: flex; justify-content: space-between; align-items: center; width: 100%; padding: 40px 90px 50px 90px; }
.header-inner > .logo-box { width: 311px; }
.header-inner > .last-head { display: flex; align-items: center; }
.header-inner > .last-head > a:first-child { display: flex; align-items: center; margin-right: 15px; }
.header-inner > .last-head > a:first-child > span { margin-left: 8px; }
.header-inner > .last-head > a:first-child > span.new-color-class { color: #fff; }

.header-inner > .last-head > div { width: 54px; height: 54px; position: relative; cursor: pointer; margin-left: 10px; }
.header-inner > .last-head > div > img { width: 100%; height: 100%; position: absolute; left: 0; object-fit: cover; top: 0; }

.header-menu { position: fixed; right: 80px; top: 50%; transform: translateY(-50%); z-index: 3; }
.header-menu > ul > li { margin-bottom: 15px; position: relative; }
.header-menu > ul > li:last-child { margin-bottom: 0; }
.header-menu > ul > li > a.font-body2 { font-size: 18px; }
.header-menu > ul > li > a { padding: 10px 20px; }
.header-menu > ul > li:hover > a { background: #000; border-radius: 35px; color: #fff; }

.header-menu > ul > li .sub-menu { display: none;  position: absolute; background: #000; border-radius: 25px; width: 180px; padding: 30px 40px 30px 0; right: 155px; top: 50%; transform: translateY(-50%); }


/* 메인 메뉴 항목, circle1, circle2에 마우스를 올렸을 때 하위 메뉴 표시 */
.header-menu > ul > li:hover .sub-menu,
.header-menu > ul > li > .circle1:hover + .circle2 + .sub-menu,
.header-menu > ul > li > .circle2:hover + .sub-menu,
/* 하위 메뉴에 마우스가 있을 때 하위 메뉴 유지 */
.header-menu > ul > li .sub-menu:hover {
    display: block;
}


.header-menu > ul > li .sub-menu li { background: none; text-align: right; padding: 0; margin-bottom: 10px; cursor: pointer; }
.header-menu > ul > li .sub-menu li:last-child { margin-bottom: 0; }


.header-menu > ul > li:nth-child(4) .sub-menu,
.header-menu > ul > li:nth-child(5) .sub-menu,
.header-menu > ul > li:nth-child(6) .sub-menu { right: 140px; }

.header-menu > ul > li:nth-child(4) > .circle1,
.header-menu > ul > li:nth-child(5) > .circle1,
.header-menu > ul > li:nth-child(6) > .circle1 { right: 110px; }

.header-menu > ul > li:nth-child(4) > .circle2,
.header-menu > ul > li:nth-child(5) > .circle2,
.header-menu > ul > li:nth-child(6) > .circle2 { right: 125px; }


.header-menu > ul > li > .circle1 { display: none; width: 7px; height: 7px; border-radius: 100%; background: #000; position: absolute; right: 125px; top: 50%; transform: translateY(-50%); }
.header-menu > ul > li > .circle2 { display: none; width: 7px; height: 7px; border-radius: 100%; background: #000; position: absolute; right: 140px; top: 50%; transform: translateY(-50%); }


.full-menu-wrap { position: fixed; left: 0; top: 0; width: 100%; height: 100vh; background: #656565; text-align: center; z-index: 4;}
.full-menu-wrap {
    display: none;
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
}

.full-menu-wrap.show {
    display: flex;
    justify-content: center;
    flex-direction: column;
    opacity: 1;
}
.full-menu-wrap > ul { display: flex; justify-content: space-between; width: 900px; margin: 0 auto; margin-top: 70px; }
.full-menu-wrap > ul > li > a { padding: 12px 11px; border-bottom: 2px solid #fff; color: #fff; }
.full-menu-wrap .sub-menu { margin-top: 30px; }
.full-menu-wrap .sub-menu > li { background: none; padding: 0; text-align: center; margin-top: 10px; cursor: pointer; }
.full-menu-wrap .sub-menu > li:first-child { margin-top: 0; }
.full-menu-wrap .sub-menu > li > a { color: #fff; }
.full-menu-wrap .sub-menu > li > a.active { color: #000; }


.sub-header-wrap { margin-top: 55px; z-index: 5; width: 900px; }
.sub-header-wrap > ul { display: flex; align-items: center; flex-wrap: wrap; justify-content: center; }
.sub-header-wrap > ul > li { margin-right: 35px; margin-bottom: 20px; }
/* .sub-header-wrap > ul > li:last-child { margin-right: 0; } */
.sub-header-wrap > ul > li > a { padding: 10px 13px; font-weight: 700; color: #979797; }
.sub-header-wrap > ul > li > a.active { border-bottom: 2px solid #000; color: #000; }


.fixed-banner { position: fixed; right: 0; bottom: 130px; z-index: 9999; }










.section { width: 100%; height: 100vh; }


/* section1 */
.section1 .sec-inner { width: 100%; height: 100vh; position: relative; overflow: hidden; background: url('/theme/basic/img/main3.jpg'); background-position: center; background-size: cover; background-repeat: no-repeat;  }

.section1 .sec-inner > video { width: 100%; height: 100%; position: absolute; left: 0; object-fit: cover; z-index: 0; pointer-events: none; }
.section1 .sec-inner > .text { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); display: none; }
.section1 .sec-inner > .text > .sub-title { margin-bottom: 15px; font-size: 17px; font-weight: 700; text-shadow: 2px 2px 6px gray; }
.section1 .sec-inner > .text > .title { font-weight: 900; text-shadow: 4px 4px 10px rgba(0,0,0,0.3); }

.section1 .sec-inner > .mute-wrap { position: absolute; right: 90px; bottom: 60px; }
.section1 .sec-inner > .mute-wrap > img { cursor: pointer; }

@keyframes arrowBounce {
    0% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(10px);
    }
    100% {
        transform: translateY(0px);
    }
}

.section1 .arrow-down {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 50px;
    z-index: 99;
    animation: arrowBounce 2s infinite; /* 애니메이션 적용 */
}


/* section2 */
.section2 { background: #E7E7E7; }
.section2 .sec-inner { width: 100%; height: 100vh; position: relative; overflow: hidden; }
.section2 .sec-inner > .text { margin-bottom: 50px; display: none; margin-top: 6%; }
.section2 .sec-inner > .text > .sub-title { margin-bottom: 15px; font-size: 17px; font-weight: 700; }
.section2 .sec-inner > .text > .title { font-weight: 900; }

.section2 .sec-inner > .img-wrap { display: flex; justify-content: center; align-items: flex-start; opacity: 0; }
.section2 .sec-inner > .img-wrap > .count-wrap { display: flex; justify-content: center; align-items: center; flex-direction: column;  width: 450px; margin-top: 10%; }
.section2 .sec-inner > .img-wrap > .count-wrap > div > ul { display: flex; justify-content: center; }
.section2 .sec-inner > .img-wrap > .count-wrap > div > ul > li { margin-right: 30px; }
.section2 .sec-inner > .img-wrap > .count-wrap > div > ul > li:last-child { margin-right: 0; }
.section2 .sec-inner > .img-wrap > .count-wrap > div > ul > li > h1 { display: flex; justify-content: center; align-items: center; }
.section2 .sec-inner > .img-wrap > .count-wrap > div > ul > li > h1 > span.counter { font-size: 69px; color: #4B3D3D; font-weight: 400; line-height: 120%; }
.section2 .sec-inner > .img-wrap > .count-wrap > div > ul > li > h1 > span { font-size: 40px; }
.section2 .sec-inner > .img-wrap > .count-wrap > div > ul > li > span { font-size: 18px; font-weight: 500; }

.section2 .sec-inner > .img-wrap > .count-wrap > div:first-child > ul > li:last-child { width: 200px; }

.section2 .sec-inner > .img-wrap > .count-wrap > div:last-child { margin-top: 50px; }
.section2 .img-wrap {
    opacity: 0;
    transition: opacity 1s ease;
}

.section2.active2 .img-wrap {
    opacity: 1;
    transition: opacity 1s ease;
}




.fade-in {
    animation: fadeInImgWrap 0.6s ease forwards;
  }
  
  @keyframes fadeInImgWrap {
    from {
      opacity: 0;
      visibility: hidden;
    }
    to {
      opacity: 1;
      visibility: visible;
    }
  }
  

  
.section2.active2  .text > .title > span { 
    animation: smoky 3s 0s both;   display: inline-block; opacity: 0;  }
.section2.active2  .text > .title > span:nth-child(1){
    animation-delay: .05s;
  } 
.section2.active2  .text > .title > span:nth-child(2){
    animation-delay: .1s;
} 
.section2.active2  .text > .title > span:nth-child(3){
    animation-delay: .15s;
  } 
  .section2.active2  .text > .title > span:nth-child(4){
    animation-delay: .2s;
  } 
  .section2.active2  .text > .title > span:nth-child(5){
    animation-delay: .25s;
  } 
  .section2.active2  .text > .title > span:nth-child(6){
    animation-delay: .3s;
  } 
  .section2.active2  .text > .title > span:nth-child(7){
    animation-delay: .35s;
  } 
  .section2.active2  .text > .title > span:nth-child(8){
    animation-delay: .4s;
  } 
  .section2.active2  .text > .title > span:nth-child(9){
    animation-delay: .45s;
  } 
  .section2.active2  .text > .title > span:nth-child(10){
    animation-delay: .5s;
  }
  .section2.active2  .text > .title > span:nth-child(11){
    animation-delay: .55s;
  }
  .section2.active2  .text > .title > span:nth-child(12){
    animation-delay: .6s;
  }
  .section2.active2  .text > .title > span:nth-child(13){
    animation-delay: .65s;
  }
  .section2.active2  .text > .title > span:nth-child(14){
    animation-delay: .7s;
  }
  .section2.active2  .text > .title > span:nth-child(15){
    animation-delay: .75s;
  }
  .section2.active2  .text > .title > span:nth-child(16){
    animation-delay: .8s;
  }
  .section2.active2  .text > .title > span:nth-child(17){
    animation-delay: .85s;
  }
  .section2.active2  .text > .title > span:nth-child(18){
    animation-delay: .9s;
  }
  .section2.active2  .text > .title > span:nth-child(19){
    animation-delay: .95s;
  }
  .section2.active2  .text > .title > span:nth-child(20){
    animation-delay: 1s;
  }
  .section2.active2  .text > .title > span:nth-child(21){
    animation-delay: 1.05s;
  }
  .section2.active2  .text > .title > span:nth-child(22){
    animation-delay: 1.1s;
  }
  .section2.active2  .text > .title > span:nth-child(23){
    animation-delay: 1.15s;
  }

  @keyframes smoky {
    20% {
        text-shadow: 0 0 10px #E7E7E7;
        filter: blur(5px);
        opacity: 0;

      }
      to {
        opacity: 1;
      }
  }



/* section3 */
.section3 { background: url('/theme/basic/img/main3.jpg'); background-position: center; background-size: cover; background-repeat: no-repeat; }
.section3 .sec-inner { width: 100%; height: 100vh; position: relative; overflow: hidden; }
.section3 .sec-inner .main-slide1 { position: relative; width: 100%; height: 100%; }
.section3 .text { margin-bottom: 50px; margin-top: 6%; }
.section3 .text > .sub-title { margin-bottom: 15px; font-size: 17px; font-weight: 700; }
.section3 .text > .title { font-weight: 900; transition: opacity 0.5s, visibility 0.5s; opacity: 0; visibility: hidden; }
.section3 .text > .title.fade-text { opacity: 1; visibility: visible; }
/* 빈 슬라이드 숨기기 */
.swiper-slide.empty-slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    visibility: hidden;
}

.section3 .sec-inner .main-slide1 .swiper-slide > .img-wrap { display: flex; justify-content: center; align-items: flex-start; opacity: 1; position: relative; }
.section3 .sec-inner .main-slide1 .swiper-slide > .img-wrap > .img-box { overflow: hidden; }
/* 기본 흑백 이미지 스타일 */
.section3 .sec-inner .main-slide1 .swiper-slide > .img-wrap > .img-box > img {
    opacity: 1; /* 초기 투명도 */
    transition: opacity 0.2s ease-in-out; /* 투명도 변경 시 부드럽게 전환 */
}

/* 기본 컬러 이미지 스타일을 숨김 처리로 변경 */
.section3 .sec-inner .main-slide1 .swiper-slide > .img-wrap > .img-box > img.color-img {
    opacity: 0; /* 처음에는 보이지 않음 */
    transition: opacity 0.5s ease-in-out; /* 투명도 변경 시 부드럽게 전환 */
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2; /* 컬러 이미지가 위에 오도록 z-index 조정 */
}


/* 텍스트의 페이드 인/아웃을 위한 CSS */
.fadeout {
    opacity: 0;
    transition: opacity 0.2s ease-in-out;
}

.fadein {
    opacity: 1;
    transition: opacity 0.2s ease-in-out;
}




/* section4 */
.section4 { background: #E7E7E7; }
.footer-wrap { background: #E7E7E7; width: 100%; height: 100%; padding-top: 6%; }
.footer-wrap > .footer-inner { overflow: hidden; }
.footer-wrap > .footer-inner > .text-wrap { width: 1080px; margin: auto; }
.footer-wrap > .footer-inner > .text-wrap > .sub-title { font-size: 17px; }
.footer-wrap > .footer-inner > .text-wrap > .loca-wrap { margin-top: 15px; display: flex; justify-content: space-between; }
.footer-wrap > .footer-inner > .text-wrap > .loca-wrap > div > .title { line-height: 150%; }
.footer-wrap > .footer-inner > .text-wrap > .loca-wrap > div > .desc { margin-top: 10px; }
.footer-wrap > .footer-inner > .text-wrap > .loca-wrap > div > .desc > img { margin-right: 8px; }
.footer-wrap > .footer-inner > .text-wrap > .loca-wrap > div > .desc > a { margin-left: 8px; }

.footer-wrap > .footer-inner > .text-wrap > .loca-wrap > ul > li { margin-bottom: 5px; }
.footer-wrap > .footer-inner > .text-wrap > .loca-wrap > ul > li:last-child { margin-bottom: 0; }
.footer-wrap > .footer-inner > .text-wrap > .loca-wrap > ul > li > ul { display: flex; align-items: center; }
.footer-wrap > .footer-inner > .text-wrap > .loca-wrap > ul > li > ul > li { display: flex; align-items: center; font-weight: 500; font-size: 18px; }
.footer-wrap > .footer-inner > .text-wrap > .loca-wrap > ul > li > ul > li:first-child { width: 130px; margin-right: 20px; }
.footer-wrap > .footer-inner > .text-wrap > .loca-wrap > ul > li > ul > li.color-red { color: #c95050; }


.footer-wrap > .footer-inner > .map-inner { width: 100%; height: 60vh; position: relative; margin-top: 70px; overflow: hidden; }

.footer-wrap > .footer-inner > .map-inner > div { width: 100%; height: 100%; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); }
.footer-wrap > .footer-inner > .map-inner .root_daum_roughmap .wrap_map { height: 100%;}

.footer-wrap > .login-wrap { background: #2A2A2A; padding: 60px 0; }
.footer-wrap > .login-wrap > div { width: 1080px; margin: auto; }
.footer-wrap > .login-wrap > div:first-child { margin-bottom: 20px; }
.footer-wrap > .login-wrap .font-body2 { font-size: 18px; }
.footer-wrap > .login-wrap .color-gray { color: #c9c9c9; }




.sub-main-wrap { width: 100%; height: 100vh; display: flex; justify-content: center; align-items: center; flex-direction: column; background: #e7e7e7; position: relative; }
.sub-main-wrap > .text-wrap > .title { font-size: 80px; font-weight: 700; }
.sub-main-wrap > .text-wrap > .desc { font-weight: 700; }
.sub-main-wrap > .text-box { padding: 30px 64px; background: #f8f8f8; border-radius: 13px; margin-top: 60px; font-size: 20px; }
.sub-main-wrap > .down-box { position: absolute; left: 50%; transform: translateX(-50%); bottom: 30px; }

@media (max-width:1920px){
    .section1 .sec-inner > iframe { transform: scale(1); }
}

@media (max-width:1700px){
    #phoneNumber,
    .header-menu { display: none; }
    .header-inner > .logo-box { width: 161px; }
}

@media (max-width:1400px){
    .container { overflow-x: auto!important; }
    .header-inner > div { flex: 0 0 auto; }
    .header-inner { overflow-x: auto; }
}