body {
    margin: 0;
    font-family: Arial, sans-serif;
    overflow: hidden; /* 로딩 중 스크롤 방지 */
}

/* 로딩 화면 스타일 (기존 .loading-wrap 스타일 활용) */
#loading-screen {
  position: absolute; /* 기존 .loading-wrap의 position 유지 */
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 5000;
  background-color: #173CB5; /* 파란색 배경 추가 */
  /* display 속성은 자바스크립트에서 제어 */
  /* flex 속성 제거 (기존 위치 유지) */
  /* justify-content, align-items 속성 제거 (기존 위치 유지) */
  /* color 속성 제거 (기존 .loading-wrap p가 color를 정의) */
}

/* 기존 .loading-wrap p 스타일을 #loading-screen p에 적용 */
#loading-screen p {
  font-size: 20px; /* 기존 loading-wrap p의 폰트 사이즈 유지 */
  font-weight: 700;
  color: #fff; /* 기존 loading-wrap p의 글꼴색 유지 */
  position: absolute; /* 기존 loading-wrap p의 position 유지 */
  right: 60px; /* 기존 loading-wrap p의 right 유지 */
  bottom: 50px; /* 기존 loading-wrap p의 bottom 유지 */
}

@media (max-width: 960px) {
  #loading-screen p { /* 미디어 쿼리 내부도 #loading-screen p로 변경 */
    bottom: 20px;
    right: 36px;
  }
}

/* 기존 .loading-wrap p .num 스타일을 #loading-screen p .num에 적용 */
#loading-screen p .num {
  font-size: 74px; /* 기존 loading-wrap p .num의 폰트 사이즈 유지 */
}

/* #content는 초기에는 숨김 */
#content {
    display: none;
}

#main header#header {
  transition: opacity .5s ease, height .3s ease, background-color .3s ease, top .5s ease;
}

#main header#header .header-logo {
  transition: opacity .5s ease;
}

#main header#header .header-logo.jn {
  opacity: 0;
}

#main header#header .header-logo.gc {
  background: url(../img/logo-gc.svg) no-repeat top;
  background-size: cover;
  width: 228px;
  height: 57px;
  position: absolute;
  top: 32px;
  left: 60px;
}

@media (max-width: 960px) {
  #main header#header .header-logo.gc {
    width: 130px;
    height: 30px;
    left: 36px;
    top: 20px;
  }
}

#main.on header#header .header-logo.jn {
  opacity: 1;
}

#main.on header#header .header-logo.gc {
  opacity: 0;
}

#main.intro-ani .quick-wrap {
  transition: opacity .5s ease, margin .5s ease;
}

#main .wrap {
    background-color: #EFEFEF;
    /* background-size: cover; */
    background-image: url(../img/back.png);
}

.main-quick-wrap {
  position: fixed;
  top: 50%;
  left: 60px;
  transform: translateY(-50%);
  z-index: 2000;
  transition: opacity .5s ease, margin .5s ease;
}

@media (max-width: 1366px) {
  .main-quick-wrap {
    display: none;
  }
}

.main-quick-wrap li + li {
  margin-top: 12px;
}

.main-quick-wrap li button {
  padding: 7px 10px 6px;
  font-size: 10px;
  color: #fff;
  border: 1.5px solid #fff;
  border-radius: 4px;
}

@media (hover: hover) {
  .main-quick-wrap li button:hover {
      background-color: #EFEFEF;
      color: #173CB5;
  }
}

.main-quick-wrap li.on button {
  background-color: #EFEFEF;
  color: #173CB5;
  font-weight: 700;
}

.main-quick-wrap.blue li button {
  border-color: #173CB5;
  color: #173CB5;
  background-color: #EFEFEF;
}

@media (hover: hover) {
    .main-quick-wrap.blue li button:hover {
      background-color: #173CB5;
      color: #fff;
  }
}

.main-quick-wrap.blue li.on button {
  background-color: #173CB5;
  color: #fff;
}

.slick-dots li button {
  background-color: #CCCCCC;
  opacity: 1;
}

.slick-dots li.slick-active button {
  background-color: #173CB5;
}

/* main01 */

.main01 {
  background-color: #293277;
  padding-top: 600px;
  position: relative;
}

@media (max-width: 960px) {
  .main01 {
    padding-top: 540px;
  }
}

@media (max-width: 768px) {
  .main01 {
    padding-top: 440px;
  }
}

@media (max-width: 468px) {
  .main01 {
    padding-top: 400px;
  }
}

.main01:after {
  content: "";
  width: 100%;
  height: 350px;
  position: absolute;
  bottom: 0;
  left: 0;
  background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(23,60,181,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#173cb5',GradientType=0 );
}

@media (max-width: 768px) {
  .main01:after {
    height: 200px;
  }
}

#main.intro-ani .main01 .typo-wrap {
  transition: top .5s ease, transform .5s ease, margin .5s ease;
}

.main01 .typo-wrap {
  position: relative;
  text-align: center;
  position: absolute;
  left: 50%;
  top: 180px;
  transform: translateX(-50%) translateY(0);
  white-space: nowrap;
  margin: 0;
}

@media (max-width: 960px) {
  .main01 .typo-wrap {
    transform: translateX(-50%) scale(0.8);
    top: 120px;
  }
}

@media (max-width: 768px) {
  .main01 .typo-wrap {
    transform: translateX(-50%) scale(0.5);
    top: 20px;
    margin-left: 30px;
  }
}

@media (max-width: 468px) {
  .main01 .typo-wrap {
    transform: translateX(-50%) scale(0.4);
    top: -20px;
  }
}

.main01 .typo {
  display: inline-block;
  position: relative;
}

.main01 .typo .fill {
  background-size: cover;
  position: relative;
}

.main01 .typo .shadow {
  background-size: cover;
  position: absolute;
  z-index: -1;
}

.main01 .typo01 {
  position: absolute;
  left: calc(50% - 130px);
  bottom: calc(100% - 100px);
  transform: translateX(-50%);
}

.main01 .typo01 .fill {
  width: 437.22px;
  height: 213.71px;
  background-image: url(../img/main01-typo01.svg);
}

.main01 .typo02 {
  transform: translate(-5px, -47px);
}

.main01 .typo02 .fill {
  width: 171.82px;
  height: 168.88px;
  background-image: url(../img/main01-typo02.svg);
}

.main01 .typo02 .shadow {
  width: 171.81px;
  height: 168.88px;
  background-image: url(../img/main01-typo02_b.svg);
  top: 0;
  left: 0;
}

.main01 .typo03 .fill {
  width: 285.1px;
  height: 430.49px;
  background-image: url(../img/main01-typo03.svg);
}

.main01 .typo03 .shadow {
  width: 285.1px;
  height: 430.49px;
  background-image: url(../img/main01-typo03_b.svg);
  top: 0;
  left: 0;
}

.main01 .typo04 {
  transform: translate(0px, -235px);
}

.main01 .typo04 .fill {
  width: 84.86px;
  height: 133.71px;
  position: relative;
  background-image: url(../img/main01-typo04.svg);
}

.main01 .typo04 .shadow {
  width: 84.85px;
  height: 133.72px;
  background-image: url(../img/main01-typo04_b.svg);
  top: 0;
  left: 0;
}

.main01 .typo05 {
  transform: translate(-85px, -130px);
}

.main01 .typo05 .fill {
  width: 258.15px;
  height: 170.51px;

  position: relative;
  background-image: url(../img/main01-typo05.svg);
}

.main01 .typo05 .shadow {
  width: 258.15px;
  height: 170.52px;
  background-image: url(../img/main01-typo05_b.svg);
  top: 0;
  left: 0;
}

.main01 .model-wrap {
  margin-top: -180px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.main01 .model-wrap .minime-wrap {
  margin-top: -50px;
  transition: opacity .5s ease;
}

@media (max-width: 1200px) {
  .main01 .model-wrap .minime-wrap img {
    display: none;
  }
}

.main01 .model-wrap .minime-wrap.left img {
  margin-left: 15px;
}

.main01 .model-wrap .minime-wrap.right img {
  margin-right: 15px;
}

.main01 .model-wrap .minime-wrap.left img:nth-child(1),
.main01 .model-wrap .minime-wrap.right img:nth-child(3) {
  transform: translateY(-60px);
}

@media (max-width: 1640px) {
  .main01 .model-wrap .minime-wrap.left img:nth-child(1),
  .main01 .model-wrap .minime-wrap.right img:nth-child(3) {
    display: none;
  }
}

.main01 .model-wrap .minime-wrap img:nth-child(2) {
  transform: translateY(-30px);
}

#main.intro-ani .main01 .model-wrap .model {
  transition: opacity .5s ease, transform .5s ease;
}

.main01 .model-wrap .model img {
  height: 950px;
}

@media (max-width: 960px) {
  .main01 .model-wrap .model img {
    height: 780px;
  }
}

@media (max-width: 768px) {
  .main01 .model-wrap .model img {
    height: 550px;
  }
}

.main01 .logo-wrap {
  display: flex;
  gap: 15px;
  align-items: center;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 320px;
  margin-left: 600px;
}

@media (max-width: 1640px) {
  .main01 .logo-wrap {
    flex-direction: column;
    gap: 0;
    margin-left: 400px;
    bottom: 260px;
  }
}

@media (max-width: 1200px) {
  .main01 .logo-wrap {
    margin-left: 240px;
    bottom: 570px;
  }
}

@media (max-width: 960px) {
  .main01 .logo-wrap {
    margin-left: 220px;
    bottom: 470px;
  }
}

@media (max-width: 768px) {
  .main01 .logo-wrap {
    transform: scale(0.5);
    margin-left: 30px;
    bottom: 310px;
  }
}

.main01 .logo-wrap .logo,
.main01 .logo-wrap .logo-txt {
  transition: opacity .5s ease, transform .5s ease;
}

.main01 .logo-wrap .logo-txt {
  width: 186px;
  height: 34px;
  background-image: url(../img/logo-txt.svg);
  background-size: cover;
  margin-top: -30px;
}

.main01 .logo-wrap .logo {
  width: 205px;
  height: 122px;
  /*background-image: url(../img/logo.svg);*/
  background-image: url(../img/logo.png);
  background-size: cover;
}

/* intro */

.intro #loading-screen { /* .intro .loading-wrap 대신 #loading-screen 사용 */
  display: block; /* 로딩 중에는 화면에 표시 (기존 display: none; 제거) */
}

.intro header#header {
  opacity: 0;
}

.intro .main-quick-wrap {
  opacity: 0;
  margin-left: -200px;
}

.intro .quick-wrap {
  opacity: 0;
  margin-right: -300px;
}

.intro .main01 .typo-wrap {
  transform: translateX(-38%) translateY(35%);
}

@media (max-width: 960px) {
  .intro .main01 .typo-wrap {
    transform: translateX(-43%) translateY(35%) scale(0.8);
  }
}

@media (max-width: 768px) {
  .intro .main01 .typo-wrap {
    transform: translateX(-50%) translateY(35%) scale(0.5);
  }
}

@media (max-width: 468px) {
  .intro .main01 .typo-wrap {
    transform: translateX(-50%) translateY(35%) scale(0.4);
  }
}

.intro .main01 .model-wrap .model {
  transform: translate(80px, 80px);
  opacity: 0;
}

.intro .main01 .logo-wrap .logo,
.intro .main01 .logo-wrap .logo-txt {
  transform: translateX(80px);
  opacity: 0;
}

.intro .main01 .model-wrap .minime-wrap {
  opacity: 0;
}

/* ani */

.intro .main01 .typo03 .fill {
  -webkit-animation: intro01 1.2s .2s cubic-bezier(0.63, 0, 0.45, 0.94) forwards;
          animation: intro01 1.2s .2s cubic-bezier(0.63, 0, 0.45, 0.94) forwards;
  opacity: 0;
}

@-webkit-keyframes intro01 {
  0% {
    opacity: 0;
    transform: scale(10);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes intro01 {
  0% {
    opacity: 0;
    transform: scale(10);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.intro .main01 .typo01 .fill {
  -webkit-animation: intro02 1.2s 1s cubic-bezier(0.63, 0, 0.45, 0.94) forwards;
          animation: intro02 1.2s 1s cubic-bezier(0.63, 0, 0.45, 0.94) forwards;
  opacity: 0;
}

@-webkit-keyframes intro02 {
  0% {
    opacity: 0;
    margin-bottom: -80px;
  }
  100% {
    opacity: 1;
    margin-bottom: 0;
  }
}

@keyframes intro02 {
  0% {
    opacity: 0;
    margin-bottom: -80px;
  }
  100% {
    opacity: 1;
    margin-bottom: 0;
  }
}

.intro .main01 .typo02 .fill {
  -webkit-animation: intro03 1s 1.4s cubic-bezier(0.63, 0, 0.45, 0.94) forwards;
          animation: intro03 1s 1.4s cubic-bezier(0.63, 0, 0.45, 0.94) forwards;
  opacity: 0;
}

@-webkit-keyframes intro03 {
  0% {
    left: 20px;
    opacity: 0;
  }
  100% {
    left: 0;
    opacity: 1;
  }
}

@keyframes intro03 {
  0% {
    left: 20px;
    opacity: 0;
  }
  100% {
    left: 0;
    opacity: 1;
  }
}

.intro .main01 .typo04 .fill {
  -webkit-animation: intro04 1s 1.4s cubic-bezier(0.63, 0, 0.45, 0.94) forwards;
          animation: intro04 1s 1.4s cubic-bezier(0.63, 0, 0.45, 0.94) forwards;
  opacity: 0;
}

.intro .main01 .typo05 .fill {
  -webkit-animation: intro04 1s 1.4s cubic-bezier(0.63, 0, 0.45, 0.94) forwards;
          animation: intro04 1s 1.4s cubic-bezier(0.63, 0, 0.45, 0.94) forwards;
  opacity: 0;
}

@-webkit-keyframes intro04 {
  0% {
    right: 20px;
    opacity: 0;
  }
  100% {
    right: 0;
    opacity: 1;
  }
}

@keyframes intro04 {
  0% {
    right: 20px;
    opacity: 0;
  }
  100% {
    right: 0;
    opacity: 1;
  }
}

.intro .main01 .typo02 .shadow {
  -webkit-animation: introShadow 1s 1.4s cubic-bezier(0.63, 0, 0.45, 0.94) forwards;
          animation: introShadow 1s 1.4s cubic-bezier(0.63, 0, 0.45, 0.94) forwards;
  opacity: 0;
}

.intro .main01 .typo03 .shadow {
  -webkit-animation: introShadow 1s 1.4s cubic-bezier(0.63, 0, 0.45, 0.94) forwards;
          animation: introShadow 1s 1.4s cubic-bezier(0.63, 0, 0.45, 0.94) forwards;
  opacity: 0;
}

.intro .main01 .typo04 .shadow {
  -webkit-animation: introShadow 1s 1.4s cubic-bezier(0.63, 0, 0.45, 0.94) forwards;
          animation: introShadow 1s 1.4s cubic-bezier(0.63, 0, 0.45, 0.94) forwards;
  opacity: 0;
}

.intro .main01 .typo05 .shadow {
  -webkit-animation: introShadow 1s 1.4s cubic-bezier(0.63, 0, 0.45, 0.94) forwards;
          animation: introShadow 1s 1.4s cubic-bezier(0.63, 0, 0.45, 0.94) forwards;
  opacity: 0;
}

@-webkit-keyframes introShadow {
  0% {
    top: 30px;
    opacity: 0;
  }
  100% {
    top: 0;
    opacity: 1;
  }
}

@keyframes introShadow {
  0% {
    top: 30px;
    opacity: 0;
  }
  100% {
    top: 0;
    opacity: 1;
  }
}

/* main02 */

.main02 {
  background-color: #173CB5;
  padding-top: 240px;
  text-align: center;
  position: relative;
}

@media (max-width: 960px) {
  .main02 {
    padding-top: 180px;
  }
}

@media (max-width: 768px) {
  .main02 {
    padding-top: 120px;
  }
}

.main02 .tit-wrap {
  display: inline-block;
  position: relative;
  z-index: 10;
}

.main02 .tit-wrap .logo {
  width: 262px;
  height: 155px;
  /*background-image: url(../img/logo.svg);*/
  background-image: url(../img/logo.png);
  background-size: cover;
  position: absolute;
  left: calc(100% - 80px);
  top: calc(100% - 50px);
}

@media (max-width: 1366px) {
  .main02 .tit-wrap .logo {
    width: 208px;
    height: 123px;
    left: calc(100% - 80px);
    top: calc(100% - 35px);
  }
}

@media (max-width: 768px) {
  .main02 .tit-wrap .logo {
    width: 106px;
    height: 63px;
    left: auto;
    right: -40px;
    top: calc(100% - 18px);
  }
}

.main02 .img-wrap {
  margin-top: -100px;
}

@media (max-width: 960px) {
  .main02 .img-wrap {
    height: 1035px;
    position: relative;
  }
}

@media (max-width: 768px) {
  .main02 .img-wrap {
    margin-top: -50px;
    height: 535px;
  }
}

.main02 .img-wrap img {
}

@media (max-width: 960px) {
  .main02 .img-wrap img {
    height: 100%;
    max-width: 3840px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }
}

@media (max-width: 768px) {
  .main02 .img-wrap img {
    left: 55%;
  }
}

/* main03 */

.main03 {
  background-color: #173CB5;
  position: relative;
}

.main03:before {
  content: "";
  width: 100%;
  height: 40px;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #EFEFEF;
  background-image: url(../img/back.png);
}

@media (max-width: 960px) {
  .main03:before {
    height: 100px;
  }
}

@media (max-width: 768px) {
  .main03:before {
    height: 80px;
  }
}

.main03 .inner {
  position: relative;
}

.main03-slide-wrap .main03-slide .slick-list {
  overflow: visible;
}

.main03-slide .main03-slide-item .txt-wrap {
  text-align: center;
  margin-bottom: 24px;
}

@media (max-width: 768px) {
  .main03-slide .main03-slide-item .txt-wrap {
    margin-top: 30px;
    margin-bottom: 12px;
  }
}

.main03-slide .main03-slide-item .txt-wrap .tit {
  font-size: 120px;
  font-family: var(--font-tm);
  color: #fff;
  position: relative;
}

@media (max-width: 1366px) {
  .main03-slide .main03-slide-item .txt-wrap .tit {
    font-size: 80px;
  }
}

@media (max-width: 768px) {
  .main03-slide .main03-slide-item .txt-wrap .tit {
    font-size: 40px;
  }
}

.main03-slide .main03-slide-item .txt-wrap .tit:after {
  content: "";
  width: 100%;
  height: 2px;
  max-width: 580px;
  background-color: #fff;
  position: absolute;
  left: 50%;
  top: 100%;
  transform: translateX(-50%);
}

@media (max-width: 1366px) {
  .main03-slide .main03-slide-item .txt-wrap .tit:after {
    max-width: 400px;
  }
}

@media (max-width: 768px) {
  .main03-slide .main03-slide-item .txt-wrap .tit:after {
    max-width: 195px;
    height: 1px;
  }
}

.main03-slide .main03-slide-item .txt-wrap .badge {
  position: absolute;
  top: -12px;
  transform: translateX(-20px);
}

@media (max-width: 1366px) {
  .main03-slide .main03-slide-item .txt-wrap .badge {
    top: -20px;
    transform: translateX(-40px);
  }
}

@media (max-width: 768px) {
  .main03-slide .main03-slide-item .txt-wrap .badge {
    top: -28px;
    transform: translateX(-44px);
  }
}

.main03-slide .main03-slide-item .txt-wrap .desc {
  font-size: 26px;
  font-weight: 700;
  margin-top: 20px;
  color: #fff;
}

@media (max-width: 768px) {
  .main03-slide .main03-slide-item .txt-wrap .desc {
    font-size: 18px;
    margin-top: 10px;
  }
}

.main03-slide .main03-slide-item .txt-wrap .desc span {
  font-size: 14px;
  font-weight: 300;
  display: block;
  margin-top: 6px;
}

.main03-slide .main03-slide-item .typo {
  font-size: 287px;
  /*font-size: 230px;*/
  font-family: var(--font-tm);
  color: #0C2B91;
  /*margin-top: 180px;*/
  margin-top: 100px;
  /*margin-top: 70px;*/
  white-space: nowrap;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  line-height: 1;
  margin-bottom: -5px;
}

@media (max-width: 1366px) {
  .main03-slide .main03-slide-item .typo {
    margin-top: 50px;
  }
}

@media (max-width: 960px) {
  .main03-slide .main03-slide-item .typo {
    font-size: 250px;
    /*font-size: 200px;*/
  }
}

@media (max-width: 768px) {
  .main03-slide .main03-slide-item .typo {
    font-size: 120px;
  }
}

.main03-slide .main03-slide-item .model-wrap {
  position: absolute;
  left: 50%;
  transform: translateX(-50%) translateY(28px);
  opacity: 0;
}

@-webkit-keyframes modelMotion {
  0% {opacity: 0; margin-left: 20px;}
  100% {opacity: 1; margin-left: 0;}
}

@keyframes modelMotion {
  0% {opacity: 0; margin-left: 20px;}
  100% {opacity: 1; margin-left: 0;}
}

.main03-slide .main03-slide-item.slick-active .model-wrap {
  opacity: 0;
  -webkit-animation: modelMotion .5s .3s forwards;
          animation: modelMotion .5s .3s forwards;
}

.main03-slide .main03-slide-item .model-wrap img {
  height: 700px;
  max-width: 500vw;
}

@media (max-width: 960px) {
  .main03-slide .main03-slide-item .model-wrap img {
    height: 600px;
  }
}

@media (max-width: 768px) {
  .main03-slide .main03-slide-item .model-wrap img {
    height: 380px;
  }
}

.main03-nav-slide-wrap {
  pointer-events: none;
  margin-top: 40px;
}

@media (max-width: 768px) {
  .main03-nav-slide-wrap {
    margin-top: 0;
  }
}

.main03-nav-slide-wrap .slide-control {
  pointer-events: visible;
  position: relative;
  z-index: 100;
}

.main03-nav-slide-wrap .slide-control.style02 {
  top: 240px;
}

@media (max-width: 960px) {
  .main03-nav-slide-wrap .slide-control.style02 {
    display: none;
  }
}

.main03-nav-slide-wrap .slide-control:not(.style02) {
  position: absolute;
  bottom: 160px;
  right: 0;
}

@media (max-width: 960px) {
  .main03-nav-slide-wrap .slide-control:not(.style02) {
    bottom: calc(100% - 200px);
  }
}

@media (max-width: 768px) {
  .main03-nav-slide-wrap .slide-control:not(.style02) {
    bottom: calc(100% - 150px);
  }
}

.main03-nav-slide-wrap .slide-control.style02 .slide-btn {
  position: absolute;
}

.main03-nav-slide-wrap .slide-control.style02 .slide-btn.prev {
  left: 260px;
}

.main03-nav-slide-wrap .slide-control.style02 .slide-btn.next {
  right: 260px;
}

@media (max-width: 960px) {
  .main03-nav-slide-wrap .main03-nav-slide {
    padding-bottom: 50px;
  }
}

@media (max-width: 768px) {
  .main03-nav-slide-wrap .main03-nav-slide {
    padding-bottom: 30px;
  }
}

.main03-nav-slide-wrap .main03-nav-slide .slick-list {
  overflow: visible;
}

.main03-nav-slide .main03-nav-item {
  height: 700px;
  display: flex;
  align-items: flex-end;
  position: relative;
  pointer-events: visible;
  cursor: pointer;
  margin-top: -5px; 
}

@media (max-width: 960px) {
  .main03-nav-slide .main03-nav-item {
    height: 600px;
  }
}

@media (max-width: 768px) {
  .main03-nav-slide .main03-nav-item {
    height: 400px;
  }
}

.main03-nav-slide .main03-nav-item.slick-center {
  z-index: 10;
}

.main03-nav-slide .main03-nav-item .product-wrap {
  width: 354px;
  margin: 0 -85px;
  text-align: center;
  pointer-events: none;
}

@media (max-width: 768px) {
  .main03-nav-slide .main03-nav-item .product-wrap {
    width: 220px;
    margin: 0 -45px;
  }
}

.main03-nav-slide .main03-nav-item .product-wrap img {
  height: 106px;
  transition: height .3s ease-in-out;
}

.main03-nav-slide .main03-nav-item.slick-center .product-wrap img {
  height: 238px;
}

@media (max-width: 768px) {
  .main03-nav-slide .main03-nav-item .product-wrap img {
    height: 75px;
  }

  .main03-nav-slide .main03-nav-item.slick-center .product-wrap img {
    height: 130px;
  }
}

@media (max-width: 960px) {
  .main03-nav-slide .slick-dots {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
  }
}

.main03 .btn-view {
  color: #fff;
  position: absolute;
  bottom: 160px;
  left: 50%;
  margin-left: -350px;
}

@media (hover: hover) {
  .main03 .btn-view:hover {
    font-weight: 700;
    color: #F2CF0C;
  }
}

@media (max-width: 960px) {
  .main03 .btn-view {
    margin-left: 0;
    top: auto;
    bottom: 310px;
    transform: translateX(-50%);
  }
}

@media (max-width: 768px) {
  .main03 .btn-view {
    bottom: 180px;
  }
}

/* main04 */

.main04 {
  padding: 240px 0 100px;
  margin-top: -40px;
  /* background-color: #EFEFEF; */
  /* background-size: cover; */
  /* background-image: url(../img/back.png); */
}

@media (max-width: 1366px) {
  .main04 {
    padding: 130px 0 50px;
  }
}

@media (max-width: 960px) {
  .main04 {
    margin-top: -100px;
    padding: 200px 0 50px;
  }
}

@media (max-width: 768px) {
  .main04 {
    margin-top: -80px;
    padding: 150px 0 50px;
  }
}

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

@media (max-width: 1366px) {
  .main04 .lineup-wrap {
    flex-direction: column;
    gap: 24px;
  }
}

@media (max-width: 960px) {
  .main04 .lineup-wrap {
    gap: 40px;
  }
}

.main04 .lineup-wrap .left {
  width: calc(60% - 12px);
}

@media (max-width: 1366px) {
  .main04 .lineup-wrap .left {
    width: 100%;
  }
}

@media (max-width: 960px) {
  .main04 .lineup-wrap .left {
    text-align: center;
  }
}

.main04 .lineup-wrap .left .main04-tit-wrap {
  display: inline-flex;
  flex-direction: column;
}

.main04 .lineup-wrap .left .main04-tit-wrap .sub-tit {
  margin-bottom: -30px;
  margin-left: auto;
}

@media (max-width: 768px) {
  .main04 .lineup-wrap .left .main04-tit-wrap .sub-tit {
    margin-bottom: -12px;
  }
}

.main04 .lineup-wrap .left .main04-tit-wrap .tit {
  display: inline-flex;
  gap: 10px;
  align-items: flex-end;
}

.main04 .lineup-wrap .left .main04-tit-wrap .tit .logo {
  width: 190px;
  height: 113px;  

  background-size: cover;
  /* background-image: url(../img/logo.png); */
  background-image: url(../img/logo_190_113.png);
  display: inline-block;
}

@media (max-width: 768px) {
  .main04 .lineup-wrap .left .main04-tit-wrap .tit .logo {
    width: 116px;
    height: 68px;
  }
}

.main04 .lineup-wrap .left .main04-tit-wrap .tit p {
  font-family: var(--font-tm);
  font-size: 58px;
  color: #173CB5;
  display: inline-block;
}

@media (max-width: 768px) {
  .main04 .lineup-wrap .left .main04-tit-wrap .tit p {
    font-size: 40px;
  }
}

.main04-slide-wrap {
  margin-top: 10px;
}

@media (max-width: 960px) {
  .main04-slide-wrap {
    margin-top: 40px;
  }
}

.main04-slide-wrap .slide-control {
  position: absolute;
  right: 30px;
  bottom: calc(100% + 20px);
}

@media (max-width: 960px) {
  .main04-slide-wrap .slide-control {
    bottom: calc(100% - 235px);
    right: 0;
    z-index: 100;
  }
}

@media (max-width: 768px) {
  .main04-slide-wrap .slide-control {
    bottom: calc(100% - 160px);
  }
}

.main04-slide .main04-slide-item .thum {
  padding: 0 30px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

@media (max-width: 1366px) {
  .main04-slide .main04-slide-item .thum {
    text-align: left;
  }
}

@media (max-width: 960px) {
  .main04-slide .main04-slide-item .thum {
    flex-direction: column;
    align-items: flex-start;
  }
}

.main04-slide .main04-slide-item .thum .name {
  margin-top: 15px;
  font-size: 42px;
  font-weight: 700;
  color: #173CB5;
  line-height: 1;
  margin-bottom: 84px;
}

@media (max-width: 960px) {
  .main04-slide .main04-slide-item .thum .name {
    margin-bottom: 20px;
  }
}

@media (max-width: 768px) {
  .main04-slide .main04-slide-item .thum .name {
    font-size: 36px;
    margin-top: 10px;
    white-space: nowrap;
  }
}

.main04-slide .main04-slide-item .thum .img-wrap {
  height: 228px;
  box-shadow: 10px 10px 8px rgba(36, 36, 36, 0.3);
  border-radius: 10px;
}


.main04-slide .main04-slide-item .thum .img-wrap-purer {
  height: 228px;
  box-shadow: 10px 10px 8px rgba(36, 36, 36, 0.3);
  border-radius: 10px;
}

.main04-slide .main04-slide-item .thum .img-wrap-luxo {
  height: 228px;
  
  /*box-shadow: 10px 10px 8px rgba(36, 36, 36, 0.3);*/
  border-radius: 10px;
}


@media (max-width: 640px) {
  .main04-slide .main04-slide-item .thum .img-wrap {
    height: 170px;
  }
}

@media (max-width: 640px) {
  .main04-slide .main04-slide-item .thum .img-wrap-purer {
    height: 170px;
  }
}

@media (max-width: 640px) {
  .main04-slide .main04-slide-item .thum .img-wrap-luxo {
    height: 170px;
  }
}

.main04-slide .main04-slide-item .thum .img-wrap img {
  height: 100%;
}

.main04-slide .main04-slide-item .thum .img-wrap-purer img {
  height: 100%;
  text-align: right;
}

.main04-slide .main04-slide-item .thum .img-wrap-luxo img {
  height: 100%;
  text-align: right;
}


.main04-slide .main04-slide-item .desc-wrap {
  margin-top: -70px;
  width: 100%;
  height: 272px;
  border-radius: 20px;
  padding: 30px;
  z-index: -1;
  position: relative;
  background-color: #173CB5;
  border: 4px solid #173CB5;
}

@media (max-width: 960px) {
  .main04-slide .main04-slide-item .desc-wrap {
    margin-top: -100px;
    padding-top: 130px;
    height: 380px;
    margin-bottom: 20px;
    text-align: left;
  }
}

@media (max-width: 768px) {
  .main04-slide .main04-slide-item .desc-wrap {
    height: 430px;
  }
}

.main04-slide .main04-slide-item .desc-wrap .typo {
  font-size: 26px;
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
  position: relative;
}

@media (max-width: 768px) {
  .main04-slide .main04-slide-item .desc-wrap .typo {
    font-size: 24px;
  }
}

.main04-slide .main04-slide-item .desc-wrap .typo span {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  font-size: 14px;
  font-weight: 300;
  color: #8B9EDA;
}

.main04-slide .main04-slide-item .desc-wrap .desc {
  margin-top: 40px;
  display: flex;
  justify-content: space-between;
}

@media (max-width: 768px) {
  .main04-slide .main04-slide-item .desc-wrap .desc {
    flex-direction: column;
    gap: 14px;
  }
}

.main04-slide .main04-slide-item .desc-wrap .desc p {
  width: calc(50% - 10px);
  font-weight: 300;
  color: #fff;
  line-height: 1.2;
}

@media (max-width: 768px) {
  .main04-slide .main04-slide-item .desc-wrap .desc p {
    width: 100%;
  }
}

@media (max-width: 768px) {
  .main04-slide .main04-slide-item .desc-wrap .desc p:nth-child(1) br {
    display: none;
  }
}

.main04-slide .main04-slide-item .desc-wrap .btn {
  color: #fff;
  font-size: 18px;
  position: absolute;
  bottom: 30px;
  left: 30px;
}

@media (hover: hover) {
  .main04-slide .main04-slide-item .desc-wrap .btn:hover {
    font-weight: 700;
    color: #F2CF0C;
  }
}

@media (max-width: 768px) {
  .main04-slide .main04-slide-item .desc-wrap .btn {
    font-size: 16px;
  }
}

.main04 .lineup-wrap .right {
  width: calc(40% - 12px);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 5px;
}

@media (max-width: 1366px) {
  .main04 .lineup-wrap .right {
    width: 100%;
    flex-direction: row;

  }
}

@media (max-width: 960px) {
  .main04 .lineup-wrap .right {
    flex-direction: column;
    gap: 20px;
  }
}

.main04 .lineup-wrap .right .col {
  width: 100%;
  /* height: calc(50% - 18px); */
  height: 272px;
  border-radius: 20px;
  border: 4px solid #173CB5;
  padding: 46px 40px;
  position: relative;
  overflow: hidden;
}

@media (max-width: 1366px) {
  .main04 .lineup-wrap .right .col {
    width: calc(50% - 12px);
    height: auto;
    padding: 40px 30px 170px;
  }
}

@media (max-width: 960px) {
  .main04 .lineup-wrap .right .col {
    width: 100%;
  }
}

.main04 .lineup-wrap .right .col:nth-child(1) {
  background-color: #EFEFEF;
}

.main04 .lineup-wrap .right .col:nth-child(2) {
  background-color: #F2CF0C;
}

.main04 .lineup-wrap .right .col .tit {
  font-size: 40px;
  font-weight: 700;
  color: #173CB5;
  line-height: 1;
  position: relative;
  display: inline-block;
}

@media (max-width: 768px) {
  .main04 .lineup-wrap .right .col .tit {
    font-size: 32px;
  }
}

.main04 .lineup-wrap .right .col:nth-child(1) .tit i {
  position: absolute;
  bottom: 10px;
  right: 10px;
  
}

@media (max-width: 768px) {
  .main04 .lineup-wrap .right .col:nth-child(1) .tit i {
    bottom: 5px;
    right: 5px;
  }
}

.main04 .lineup-wrap .right .col:nth-child(2) .tit i {
  position: absolute;
  top: 0;
  /*left: calc(100% + 20px);*/
  left: calc(100% + 10px);
}

@media (max-width: 768px) {
  .main04 .lineup-wrap .right .col:nth-child(2) .tit i {
    left: calc(100% + 10px);
  }
}

.main04 .lineup-wrap .right .col .txt {
  color: #173CB5;
  margin-top: 14px;
}

.main04 .lineup-wrap .right .col:nth-child(1) .img-wrap {
  position: absolute;
  top: 0;
  right: -50px;
}

.main04 .lineup-wrap .right .col:nth-child(1) .img-wrap img {
  height: 320px;
}

@media (max-width: 1366px) {
  .main04 .lineup-wrap .right .col:nth-child(1) .img-wrap {
    top: auto;
    bottom: -40px;
  }
}

@media (max-width: 768px) {
  .main04 .lineup-wrap .right .col:nth-child(1) .img-wrap {
    bottom: -80px;
    right: -60px;
  }

  .main04 .lineup-wrap .right .col:nth-child(1) .img-wrap img {
    transform: scale(0.7);
  }
}

.main04 .lineup-wrap .right .col:nth-child(2) .img-wrap {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 5px;
}

/* main04-img02.png 이미지 크기 변경*/
.main04 .lineup-wrap .right .col:nth-child(2) .img-wrap img {
  height: 235px;
  width: 210px;
}


@media (max-width: 1366px) {
  .main04 .lineup-wrap .right .col:nth-child(2) .img-wrap {
    top: auto;
    transform: translateY(0);
    bottom: -20px;
    right: 0;
  }
}

/* main05 */
.main05 {
    padding: 100px 0 320px;
}

@media (max-width: 960px) {
    .main05 {
        padding: 100px 0 150px;
    }
}

@media (max-width: 768px) {
    .main05 {
        padding: 50px 0 100px;
    }
}

.main05 .video-wrap {
    margin-top: 50px;
    display: flex;
    gap: 24px;
}

@media (max-width: 960px) {
    .main05 .video-wrap {
        gap: 36px;
        flex-direction: column;
    }
}

.main05 .video-wrap li {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: calc(56.25% / 2)
}

@media (max-width: 960px) {
    .main05 .video-wrap li {
        padding-bottom: 56.25%;
    }
}

.main05 .video-wrap iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

