@charset "UTF-8";
/*-------------------------------------------------
title       : 믹스인
Author      : ㅈㅁㅈ
Create date : 2024-05-23
-------------------------------------------------*/
@import url("default.css");
:root {
  --fs: 1.8rem;
  --lh: 160%;
  --cl: #000;
  --w1: 131rem;
  --w2: calc(100% - 6rem);
}

#logo a {
  overflow: hidden;
  position: absolute;
  left: 6.5rem;
  top: 4rem;
  z-index: 10;
  height: 2.5rem;
}
#logo a img {
  display: block;
  height: 100%;
  margin-bottom: 1px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#logo a::after {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url("/images/web/tongtong/main/logo3.png") no-repeat;
  background-size: auto 100%;
  content: "";
  opacity: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

#gnb::after {
  position: fixed;
  right: -9rem;
  top: 0;
  z-index: 6;
  width: 9rem;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(9rem, #2163AE), color-stop(9rem, #327CD0));
  background: linear-gradient(to bottom, #2163AE 9rem, #327CD0 9rem);
  content: "";
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#gnb .open {
  display: inline-block;
  overflow: hidden;
  width: 4.5rem;
  height: 4.5rem;
  text-align: center;
  line-height: 4.5rem;
  vertical-align: middle;
  visibility: hidden;
  position: absolute;
  right: 4rem;
  top: 4.5rem;
  z-index: 5;
  padding-top: 4.5rem;
  border-radius: 1.3rem;
  background-color: #3F4044;
  color: #fff;
  opacity: 0;
  transition:all .3s;
}
#gnb .open::before {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  width: 1.7rem;
  height: 1.6rem;
  border-top: 0.2rem solid #fff;
  border-bottom: 0.2rem solid #fff;
  content: "";
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#gnb .open::after {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  width: 1.7rem;
  height: 0.2rem;
  background-color: #fff;
  content: "";
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#gnb .open:hover::before, #gnb .open:focus::before {
  height: 1rem;
}
#gnb .open:hover::after, #gnb .open:focus::after {
  height: 0;
}
#gnb .close {
  display: inline-block;
  overflow: hidden;
  width: 9rem;
  height: 9rem;
  text-align: center;
  line-height: 9rem;
  vertical-align: middle;
  visibility: hidden;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 7;
  padding-top: 9rem;
  font-size: 3.5rem;
  color: #fff;
  opacity: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#gnb .close::before, #gnb .close::after {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  width: 4rem;
  height: 1px;
  background-color: #fff;
  content: "";
}
#gnb .close::before {
  -webkit-transform: translateX(-50%) rotate(45deg);
          transform: translateX(-50%) rotate(45deg);
}
#gnb .close::after {
  -webkit-transform: translateX(-50%) rotate(-45deg);
          transform: translateX(-50%) rotate(-45deg);
}
#gnb .close:hover, #gnb .close:focus {
  -webkit-transform: rotate(360deg);
          transform: rotate(360deg);
}
#gnb .depth1 {
  display: grid;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 5;
  width: 100%;
  height: 100%;
  padding: 18rem 10rem 10rem 0;
  background: url("/images/web/tongtong/main/gnb.jpg") no-repeat 0 0/cover;
  font-size: 1.9rem;
  font-weight: 300;
  color: #fff;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  justify-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  grid-gap: 5rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  grid-template-areas: "gnb1 gnb2 gnb3" "gnb1 gnb4 gnb5";
  overflow-y:auto;
}
#gnb .depth1 > li {
  width: 32rem;
  border-right: 1px solid rgba(255, 255, 255, 0.15);
}
#gnb .depth1 > li:nth-child(3), #gnb .depth1 > li:nth-child(5) {
  border-right: 0 none;
}
#gnb .depth1 > li > a {
  display: block;
  height: 2.8rem;
  padding-left: 1.2rem;
  border-left: 0.3rem solid #fff;
  font-size: 3.1rem;
  font-weight: 700;
  line-height: 2.8rem;
}
#gnb .depth1 > li:nth-child(1) {
  grid-area: gnb1;
}
#gnb .depth1 > li:nth-child(2) {
  grid-area: gnb2;
}
#gnb .depth1 > li:nth-child(3) {
  grid-area: gnb3;
}
#gnb .depth1 > li:nth-child(4) {
  grid-area: gnb4;
}
#gnb .depth1 > li:nth-child(5) {
  grid-area: gnb5;
}
#gnb .depth2 {
  margin-top: 5rem;
}
#gnb .depth2 > li > a {
  display: block;
  margin-top: 3rem;
  font-size: 2.1rem;
  font-weight: 600;
}
#gnb .depth3 li {
  position: relative;
  padding-left: 1.5rem;
  text-align: left;
  margin-top: 1.5rem;
}
#gnb .depth3 li::before {
  position: absolute;
  left: 0;
  top: auto;
  content: "";
}
#gnb .depth3 li::before {
  top: 1.3rem;
  width: 0.6rem;
  height: 1px;
  background-color: #fff;
  opacity: 0.5;
}
#gnb .depth3 a {
  position: relative;
  white-space: nowrap;
}
#gnb .depth3 a::before {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 1px;
  background-color: #fff;
  content: "";
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#gnb .depth3 a:hover::before, #gnb .depth3 a:focus::before {
  width: 100%;
}

#header.active #logo a {
  position: fixed;
}
#header.active #logo a::after {
  opacity: 1;
}
#header.active #gnb::after {
  right: 0;
}
#header.active #gnb .depth1 {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
#header.active #gnb .close {
  visibility: visible;
  opacity: 1;
}

#wrap {
  height: 100vh;
  min-height: 97.5rem;
}
#wrap.type1 #logo img {
  -webkit-transform: translateY(calc(-100% - 1px));
          transform: translateY(calc(-100% - 1px));
}
#wrap.type2 {
  height: auto;
}
#wrap.type2 [id*=intro] {
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
#wrap.type1 #gnb .open {
  visibility: visible;
  opacity: 1;
}

[id*=intro] {
  overflow: hidden;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  min-height: 97.5rem;
}

#intro2 h1, #intro1 .section1 p, #intro1 .section3 p {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
}
#intro2 h1 i, #intro1 .section1 p i, #intro1 .section3 p i {
  display: block;
}
#intro2 h1 img, #intro1 .section1 p img, #intro1 .section3 p img {
  height: 100%;
}

#intro2 h1 .txt1, #intro1 .section3 .txt1 {
  -webkit-mask-image: url("/images/web/tongtong/main/intro1_txt5_1.png");
          mask-image: url("/images/web/tongtong/main/intro1_txt5_1.png");
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
#intro2 h1 .txt2, #intro1 .section3 .txt2 {
  -webkit-mask-image: url("/images/web/tongtong/main/intro1_txt6_1.png");
          mask-image: url("/images/web/tongtong/main/intro1_txt6_1.png");
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}

#intro1 {
  z-index: 0;
}
#intro1 img {
  max-width: inherit;
}
#intro1 section {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  min-height: 97.5rem;
}
#intro1 .section1 {
  background: url("/images/web/tongtong/main/intro1_bg1.jpg") no-repeat center center/cover;
}
#intro1 .section2 {
  background: url("/images/web/tongtong/main/intro1_bg2.jpg") no-repeat center center/cover;
}
#intro1 .section3 {
  background: url("/images/web/tongtong/main/intro1_bg3.jpg"		) no-repeat center center/cover;
}
#intro1 > a {
  display: inline-block;
  overflow: hidden;
  width: 9rem;
  height: 9rem;
  text-align: center;
  line-height: 9rem;
  vertical-align: middle;
  position: absolute;
  right: 10rem;
  bottom: 10rem;
  z-index: 5;
  border-radius: 100%;
  background-color: rgba(255, 255, 255, 0.2);
  font-size: 2.5rem;
  color: #fff;
  -webkit-backdrop-filter: blur(30px);
          backdrop-filter: blur(30px);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#intro1 > a::before {
  font-family: "remixicon";
  content: "\ea6c";
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  text-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: inherit;
}
#intro1 > a:hover, #intro1 > a:focus {
  background-color: rgba(255, 255, 255, 0.5);
}
#intro1 .section1 i, #intro1 .section3 i {
  margin: 4rem 0;
}
#intro1 .section1 {
  z-index: 2;
  opacity: 0;
  -webkit-animation: section1 7s;
          animation: section1 7s;
}
#intro1 .section1 p {
  width: 74.8rem;
  max-width: calc(100% - 20rem);
  margin-left: auto !important;
  margin-right: auto !important;
  /* -webkit-animation: width 8s;
          animation: width 8s; */
}
/* #intro1 .section1 p::before {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  position: absolute;
  left: 45%;
  bottom: 7rem;
  width: 33rem;
  max-width: calc(100% - 79.5rem);
  height: 0.3rem;
  background-color: #fff;
  content: "";
  -webkit-animation: line1 8s;
          animation: line1 8s;
} */
#intro1 .section1 i {
  width: 41.1rem;
  height: 6.8rem;
}
#intro1 .section1 i:nth-child(3) {
  width: 74.8rem;
  height: 6.8rem;
}
#intro1 .section1 i:nth-last-child(n+1) {
  overflow: hidden;
  position: relative;
}
#intro1 .section1 i:nth-last-child(n+1)::before, #intro1 .section1 i:nth-last-child(n+1)::after {
  position: absolute;
  left: 25%;
  top: -57rem;
  width: 50rem;
  height: 50rem;
  border-radius: 15rem;  
  background-color: #236ec3;
  content: "";
  -webkit-animation: wave 1.5s linear;
          animation: wave 1.5s linear;
  -webkit-animation-fill-mode:forwards;
          animation-fill-mode:forwards;
}
#intro1 .section1 i:nth-last-child(n+1)::after {
  left: 75%;
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
  -webkit-animation-duration: 1.2s;
          animation-duration: 1.2s;
}
#intro1 .section1 .txt1 {
  -webkit-mask-image: url("/images/web/tongtong/main/intro1_txt1_1.png");
          mask-image: url("/images/web/tongtong/main/intro1_txt1_1.png");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
#intro1 .section1 .txt2 {
  -webkit-mask-image: url("/images/web/tongtong/main/intro1_txt2_1.png");
          mask-image: url("/images/web/tongtong/main/intro1_txt2_1.png");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
#intro1 .section1 .txt1::before {
  -webkit-animation-delay: 1s !important;
          animation-delay: 1s !important;
}
#intro1 .section1 .txt1::after {
  -webkit-animation-delay: 1.3s !important;
          animation-delay: 1.3s !important;
}
#intro1 .section1 .txt2::before {
  -webkit-animation-delay: 2s !important;
          animation-delay: 2s !important;
}
#intro1 .section1 .txt2::after {
  -webkit-animation-delay: 2.3s !important;
          animation-delay: 2.3s !important;
}
#intro1 .section1 .txt3 {
  -webkit-mask-image: url("/images/web/tongtong/main/intro1_txt3_1.png");
          mask-image: url("/images/web/tongtong/main/intro1_txt3_1.png");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
#intro1 .section1 .txt3::before {
  -webkit-animation-delay: 3s !important;
          animation-delay: 3s !important;
}
#intro1 .section1 .txt3::after {
  -webkit-animation-delay: 3.3s !important;
          animation-delay: 3.3s !important;
}
#intro1 .section1 .txt3 {
  background-color: #fff;
  -webkit-animation: txt3 4.3s;
          animation: txt3 4.3s;
}
#intro1 .section1 .txt4 {
  position: absolute;
  right: 0;
  bottom: 0;
  -webkit-clip-path: inset(0 0 0 0);
          clip-path: inset(0 0 0 0);
  -webkit-animation: txt4 6.75s;
          animation: txt4 6.75s;
}
.under_line{background:linear-gradient(180deg, transparent 0%, transparent 70%, rgba(255, 230, 0, .5) 70%, rgba(255, 230, 0, .5) 110%);}
#intro1 .section2 .group {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  display: inline-block;
  overflow: hidden;
  width: 50.5rem;
  height: 50.5rem;
  text-align: center;
  line-height: 50.5rem;
  vertical-align: middle;
  padding: 17rem 8rem 0;
  border-radius: 100%;
  border: 1px solid #fff;
  background-color: rgba(0, 0, 0, 0.15);
  font-size: 1.9rem;
  color: #fff;
  text-align: center;
  line-height: 190%;
  word-break: keep-all;
}
#intro1 .section2 .group strong {
  display: block;
  position: relative;
  margin-bottom: 4rem;
  opacity: 0;
  -webkit-animation: strong1 18s;
          animation: strong1 18s;
}
#intro1 .section2 .group ul {
  display: inline-block;
  margin-top: 1rem;
  counter-reset: list;
  vertical-align: middle;
  line-height: 150%;
}
#intro1 .section2 .group p, #intro1 .section2 .group span, #intro1 .section2 .group ul {
  position: relative;
  opacity: 0;
  -webkit-animation: txt_type1 18s;
          animation: txt_type1 18s;
}
#intro1 .section2 .group li {
  position: relative;
  padding-left: 3rem;
  text-align: left;
}
#intro1 .section2 .group li::before {
  position: absolute;
  left: 0;
  top: auto;
  content: "";
}
#intro1 .section2 .group li::before {
  display: inline-block;
  overflow: hidden;
  width: 2.3rem;
  height: 2.3rem;
  text-align: center;
  line-height: 2.3rem;
  vertical-align: middle;
  top: 0.5rem;
  border-radius: 100%;
  background-color: #fff;
  font-size: 1.6rem;
  font-weight: 500;
  color: #2c2c2c;
  counter-increment: list;
  content: counter(list);
}
#intro1 .section2 .group1 {
  -webkit-animation: group1_1 18s;
          animation: group1_1 18s;
}
#intro1 .section2 .group2 {
  -webkit-animation: group2_1 18s;
          animation: group2_1 18s;
}
#intro1 .section2 .group3 {
  -webkit-animation: group3_1 18s;
          animation: group3_1 18s;
}
#intro1 .section2 .group1 {
  opacity: 0;
}
#intro1 .section2 .group2 {
  background-color: rgba(0, 0, 0, 0);
  opacity: 0;
}
#intro1 .section2 .group3 {
  overflow: visible;
  border-color: transparent;
  background-color: transparent;
  -webkit-animation-duration: 23s;
          animation-duration: 23s;
}
#intro1 .section2 .group3::before, #intro1 .section2 .group3::after {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 100%;
  border: 1px solid #fff;
  content: "";
}
#intro1 .section2 .group3::before {
  -webkit-transform: translate(-50%, -50%) scale(8);
          transform: translate(-50%, -50%) scale(8);
  -webkit-animation: group3_before 23s;
          animation: group3_before 23s;
}
#intro1 .section2 .group3::after {
  -webkit-transform: translate(-50%, -50%) scale(5);
          transform: translate(-50%, -50%) scale(5);
  -webkit-animation: group3_after 23s;
          animation: group3_after 23s;
}
#intro1 .section2 .group3 strong {
  top: 7rem;
  opacity: 1;
  -webkit-animation: strong2 23s;
          animation: strong2 23s;
}
#intro1 .section2 .group3 span {
  -webkit-animation: txt_type2 23s;
          animation: txt_type2 23s;
}
#intro1 .section3 {
  z-index: 1;
  text-align: center;
  -webkit-animation: section3 33s;
          animation: section3 33s;
}
#intro1 .section3 i {
  position: relative;
  height: 6rem;
}
#intro1 .section3 i::before {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  content: "";
  -webkit-animation: txt6 33s;
          animation: txt6 33s;
}
#intro1 .section3 p {
  -webkit-animation: txt 33s;
          animation: txt 33s;
}
#intro1 .section3 .txt1::before {
  -webkit-clip-path: inset(100% 0 0 0);
          clip-path: inset(100% 0 0 0);
  -webkit-animation-name: txt5;
          animation-name: txt5;
}

@-webkit-keyframes section3 {
  0% {
    -webkit-clip-path: circle(0% at 50% 50%);
            clip-path: circle(0% at 50% 50%);
  }
  60% {
    -webkit-clip-path: circle(0% at 50% 50%);
            clip-path: circle(0% at 50% 50%);
  }
  65% {
    -webkit-clip-path: circle(100% at 50% 50%);
            clip-path: circle(100% at 50% 50%);
  }
}

@keyframes section3 {
  0% {
    -webkit-clip-path: circle(0% at 50% 50%);
            clip-path: circle(0% at 50% 50%);
  }
  60% {
    -webkit-clip-path: circle(0% at 50% 50%);
            clip-path: circle(0% at 50% 50%);
  }
  65% {
    -webkit-clip-path: circle(100% at 50% 50%);
            clip-path: circle(100% at 50% 50%);
  }
}
@-webkit-keyframes txt {
  0% {
    -webkit-transform: translate(-50%, -50%) scale(0.7);
            transform: translate(-50%, -50%) scale(0.7);
  }
  61% {
    -webkit-transform: translate(-50%, -50%) scale(0.7);
            transform: translate(-50%, -50%) scale(0.7);
  }
  67% {
    -webkit-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
  }
}
@keyframes txt {
  0% {
    -webkit-transform: translate(-50%, -50%) scale(0.7);
            transform: translate(-50%, -50%) scale(0.7);
  }
  61% {
    -webkit-transform: translate(-50%, -50%) scale(0.7);
            transform: translate(-50%, -50%) scale(0.7);
  }
  67% {
    -webkit-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
  }
}
@-webkit-keyframes txt5 {
  0% {
    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
  }
  65% {
    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
  }
  67% {
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
  }
  68% {
    -webkit-clip-path: inset(100% 0 0 0);
            clip-path: inset(100% 0 0 0);
  }
}
@keyframes txt5 {
  0% {
    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
  }
  65% {
    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
  }
  67% {
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
  }
  68% {
    -webkit-clip-path: inset(100% 0 0 0);
            clip-path: inset(100% 0 0 0);
  }
}
@-webkit-keyframes txt6 {
  0% {
    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
  }
  67% {
    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
  }
  69% {
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
  }
}
@keyframes txt6 {
  0% {
    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
  }
  67% {
    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
  }
  69% {
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
  }
}
@-webkit-keyframes group1_1 {
  0% {
    margin-left: -50rem;
    background-color: rgba(0, 0, 0, 0);
    opacity: 0;
  }
  35% {
    margin-left: -50rem;
    background-color: rgba(0, 0, 0, 0);
    opacity: 0;
  }
  40% {
    margin-left: -22.5rem;
    opacity: 1;
  }
  52% {
    margin-left: -22.5rem;
    background-color: rgba(0, 0, 0, 0.15);
  }
  75% {
    margin-left: -22.5rem;
    background-color: rgba(0, 0, 0, 0.15);
    opacity: 1;
  }
  80% {
    margin-left: 0;
    background-color: rgba(0, 0, 0, 0.1);
    opacity: 0.5;
  }
  82% {
    opacity: 0;
  }
}
@keyframes group1_1 {
  0% {
    margin-left: -50rem;
    background-color: rgba(0, 0, 0, 0);
    opacity: 0;
  }
  35% {
    margin-left: -50rem;
    background-color: rgba(0, 0, 0, 0);
    opacity: 0;
  }
  40% {
    margin-left: -22.5rem;
    opacity: 1;
  }
  52% {
    margin-left: -22.5rem;
    background-color: rgba(0, 0, 0, 0.15);
  }
  75% {
    margin-left: -22.5rem;
    background-color: rgba(0, 0, 0, 0.15);
    opacity: 1;
  }
  80% {
    margin-left: 0;
    background-color: rgba(0, 0, 0, 0.1);
    opacity: 0.5;
  }
  82% {
    opacity: 0;
  }
}
@-webkit-keyframes group2_1 {
  0% {
    margin-left: 50rem;
    background-color: rgba(0, 0, 0, 0);
    opacity: 0;
  }
  35% {
    margin-left: 50rem;
    background-color: rgba(0, 0, 0, 0);
    opacity: 0;
  }
  40% {
    margin-left: 22.5rem;
    opacity: 1;
  }
  52% {
    margin-left: 22.5rem;
    background-color: rgba(0, 0, 0, 0.15);
  }
  75% {
    margin-left: 22.5rem;
    background-color: rgba(0, 0, 0, 0.15);
    opacity: 1;
  }
  80% {
    margin-left: 0;
    background-color: rgba(0, 0, 0, 0.1);
    opacity: 0.5;
  }
  82% {
    opacity: 0;
  }
}
@keyframes group2_1 {
  0% {
    margin-left: 50rem;
    background-color: rgba(0, 0, 0, 0);
    opacity: 0;
  }
  35% {
    margin-left: 50rem;
    background-color: rgba(0, 0, 0, 0);
    opacity: 0;
  }
  40% {
    margin-left: 22.5rem;
    opacity: 1;
  }
  52% {
    margin-left: 22.5rem;
    background-color: rgba(0, 0, 0, 0.15);
  }
  75% {
    margin-left: 22.5rem;
    background-color: rgba(0, 0, 0, 0.15);
    opacity: 1;
  }
  80% {
    margin-left: 0;
    background-color: rgba(0, 0, 0, 0.1);
    opacity: 0.5;
  }
  82% {
    opacity: 0;
  }
}
@-webkit-keyframes group3_1 {
  0% {
    opacity: 0;
  }
  60% {
    opacity: 0;
  }
  65% {
    opacity: 1;
  }
  80% {
    border: 1px solid #fff;
    background-color: rgba(0, 0, 0, 0.15);
  }
  82% {
    border-color: transparent;
    background-color: transparent;
  }
}
@keyframes group3_1 {
  0% {
    opacity: 0;
  }
  60% {
    opacity: 0;
  }
  65% {
    opacity: 1;
  }
  80% {
    border: 1px solid #fff;
    background-color: rgba(0, 0, 0, 0.15);
  }
  82% {
    border-color: transparent;
    background-color: transparent;
  }
}
@-webkit-keyframes group3_before {
  0% {
    opacity: 0;
  }
  80% {
    -webkit-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
    opacity: 0;
  }
  85% {
    -webkit-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
    opacity: 1;
  }
  92% {
    opacity: 1;
  }
  95% {
    -webkit-transform: translate(-50%, -50%) scale(10);
            transform: translate(-50%, -50%) scale(10);
    opacity: 0;
  }
}
@keyframes group3_before {
  0% {
    opacity: 0;
  }
  80% {
    -webkit-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
    opacity: 0;
  }
  85% {
    -webkit-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
    opacity: 1;
  }
  92% {
    opacity: 1;
  }
  95% {
    -webkit-transform: translate(-50%, -50%) scale(10);
            transform: translate(-50%, -50%) scale(10);
    opacity: 0;
  }
}
@-webkit-keyframes group3_after {
  0% {
    opacity: 0;
  }
  80% {
    -webkit-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
    opacity: 0;
  }
  85% {
    -webkit-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
    opacity: 1;
  }
  92% {
    opacity: 1;
  }
  95% {
    -webkit-transform: translate(-50%, -50%) scale(5);
            transform: translate(-50%, -50%) scale(5);
    opacity: 0;
  }
}
@keyframes group3_after {
  0% {
    opacity: 0;
  }
  80% {
    -webkit-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
    opacity: 0;
  }
  85% {
    -webkit-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
    opacity: 1;
  }
  92% {
    opacity: 1;
  }
  95% {
    -webkit-transform: translate(-50%, -50%) scale(5);
            transform: translate(-50%, -50%) scale(5);
    opacity: 0;
  }
}
@-webkit-keyframes strong1 {
  0% {
    top: 7.5rem;
    -webkit-filter: blur(10px);
            filter: blur(10px);
    opacity: 0;
  }
  40% {
    top: 7.5rem;
    -webkit-filter: blur(10px);
            filter: blur(10px);
    opacity: 0;
  }
  45% {
    top: 7.5rem;
    -webkit-filter: blur(0);
            filter: blur(0);
    opacity: 1;
  }
  50% {
    top: 0;
  }
  75% {
    top: 0;
    opacity: 1;
  }
  80% {
    opacity: 0;
  }
}
@keyframes strong1 {
  0% {
    top: 7.5rem;
    -webkit-filter: blur(10px);
            filter: blur(10px);
    opacity: 0;
  }
  40% {
    top: 7.5rem;
    -webkit-filter: blur(10px);
            filter: blur(10px);
    opacity: 0;
  }
  45% {
    top: 7.5rem;
    -webkit-filter: blur(0);
            filter: blur(0);
    opacity: 1;
  }
  50% {
    top: 0;
  }
  75% {
    top: 0;
    opacity: 1;
  }
  80% {
    opacity: 0;
  }
}
@-webkit-keyframes strong2 {
  0% {
    top: 0;
    opacity: 0;
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
  }
  65% {
    top: 0;
    opacity: 0;
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
  }
  70% {
    top: 0;
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  80% {
    top: 0;
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  85% {
    top: 7rem;
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes strong2 {
  0% {
    top: 0;
    opacity: 0;
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
  }
  65% {
    top: 0;
    opacity: 0;
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
  }
  70% {
    top: 0;
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  80% {
    top: 0;
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  85% {
    top: 7rem;
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes txt_type1 {
  0% {
    top: 2rem;
    opacity: 0;
  }
  45% {
    top: 2rem;
    opacity: 0;
  }
  50% {
    top: 0;
    opacity: 1;
  }
  75% {
    top: 0;
    opacity: 1;
  }
  80% {
    opacity: 0;
  }
}
@keyframes txt_type1 {
  0% {
    top: 2rem;
    opacity: 0;
  }
  45% {
    top: 2rem;
    opacity: 0;
  }
  50% {
    top: 0;
    opacity: 1;
  }
  75% {
    top: 0;
    opacity: 1;
  }
  80% {
    opacity: 0;
  }
}
@-webkit-keyframes txt_type2 {
  0% {
    opacity: 0;
  }
  67% {
    opacity: 0;
  }
  72% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  85% {
    opacity: 0;
  }
}
@keyframes txt_type2 {
  0% {
    opacity: 0;
  }
  67% {
    opacity: 0;
  }
  72% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  85% {
    opacity: 0;
  }
}
@-webkit-keyframes wave {
  0% {
    top: -57rem;
    -webkit-transform: translateX(-50%) rotate(0);
            transform: translateX(-50%) rotate(0);
    opacity: 1;
  }
  65% {
    top: -38rem;
    -webkit-transform: translateX(-50%) rotate(180deg);
            transform: translateX(-50%) rotate(180deg);
  }
  66% {
    top: -38rem;
    -webkit-transform: translateX(-50%) rotate(0deg);
            transform: translateX(-50%) rotate(0deg);
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
  }
  100% {
    top: -38rem;
    -webkit-transform: translateX(-50%) rotate(0deg);
            transform: translateX(-50%) rotate(0deg);
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
    opacity: 1;
  }
}
@keyframes wave {
  0% {
    top: -57rem;
    -webkit-transform: translateX(-50%) rotate(0);
            transform: translateX(-50%) rotate(0);
    opacity: 1;
  }
  65% {
    top: -38rem;
    -webkit-transform: translateX(-50%) rotate(180deg);
            transform: translateX(-50%) rotate(180deg);
  }
  66% {
    top: -38rem;
    -webkit-transform: translateX(-50%) rotate(0deg);
            transform: translateX(-50%) rotate(0deg);
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
  }
  100% {
    top: -38rem;
    -webkit-transform: translateX(-50%) rotate(0deg);
            transform: translateX(-50%) rotate(0deg);
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
    opacity: 1;
  }
}
@-webkit-keyframes txt3 {
  0% {
    background-color: transparent;
  }
  99% {
    background-color: transparent;
  }
  100% {
    background-color: #fff;
  }
}
@keyframes txt3 {
  0% {
    background-color: transparent;
  }
  99% {
    background-color: transparent;
  }
  100% {
    background-color: #fff;
  }
}
@-webkit-keyframes txt4 {
  0% {
    visibility: hidden;
    left: 35.5rem;
    -webkit-clip-path: inset(0 100% 0 0);
            clip-path: inset(0 100% 0 0);
  }
  90% {
    visibility: hidden;
    left: 35.5rem;
    -webkit-clip-path: inset(0 100% 0 0);
            clip-path: inset(0 100% 0 0);
  }
  99% {
    visibility: visible;
    left: 35.5rem;
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
  }
  100% {
    visibility: visible;
    left: auto;
    right: 0;
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
  }
}
@keyframes txt4 {
  0% {
    visibility: hidden;
    left: 35.5rem;
    -webkit-clip-path: inset(0 100% 0 0);
            clip-path: inset(0 100% 0 0);
  }
  90% {
    visibility: hidden;
    left: 35.5rem;
    -webkit-clip-path: inset(0 100% 0 0);
            clip-path: inset(0 100% 0 0);
  }
  99% {
    visibility: visible;
    left: 35.5rem;
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
  }
  100% {
    visibility: visible;
    left: auto;
    right: 0;
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
  }
}
@-webkit-keyframes width {
  0% {
    width: 38rem;
  }
  75% {
    width: 38rem;
  }
  85% {
    width: 77rem;
  }
  100% {
    width: 112.5rem;
  }
}
@keyframes width {
  0% {
    width: 38rem;
  }
  75% {
    width: 38rem;
  }
  85% {
    width: 77rem;
  }
  100% {
    width: 112.5rem;
  }
}
@-webkit-keyframes line1 {
  0% {
    width: 0;
  }
  85% {
    width: 0;
  }
  100% {
    width: 33rem;
  }
}
@keyframes line1 {
  0% {
    width: 0;
  }
  85% {
    width: 0;
  }
  100% {
    width: 33rem;
  }
}
@-webkit-keyframes section1 {
  0% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  90% {
    opacity: 0;
  }
}
@keyframes section1 {
  0% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  90% {
    opacity: 0;
  }
}
#intro2 li.active button::before, #intro2 li button:hover::before, #intro2 li button:focus::before {
  opacity: 1;
}
#intro2 li.active button::after, #intro2 li button:hover::after, #intro2 li button:focus::after {
  border-color: #236EC3;
  background-color: #236EC3;
  color: #fff;
}

#intro2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 1;
  background: url("/images/web/tongtong/main/intro2_bg.png") no-repeat center center #EEF1F3;
  background-size: cover;
  -webkit-clip-path: inset(0 50% 0 50%);
          clip-path: inset(0 50% 0 50%);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  opacity: 0;
}
#intro2 h1 {
  z-index: 1;
  width: 100%;
  -webkit-transition: all 0.8s 1.2s;
  transition: all 0.8s 1.2s;
}
#intro2 h1 i {
  height: 6rem;
  margin: 4rem 0;
  -webkit-transition: height 0.4s 1.2s, margin 0.4s 1.2s, -webkit-clip-path 0.5s 0.5s;
  transition: height 0.4s 1.2s, margin 0.4s 1.2s, -webkit-clip-path 0.5s 0.5s;
  transition: height 0.4s 1.2s, margin 0.4s 1.2s, clip-path 0.5s 0.5s;
  transition: height 0.4s 1.2s, margin 0.4s 1.2s, clip-path 0.5s 0.5s, -webkit-clip-path 0.5s 0.5s;
}
#intro2 h1 img {
  opacity: 0;
}
#intro2 h1 .txt1 {
  background: -webkit-gradient(linear, left top, right top, color-stop(92%, #236EC3), color-stop(92%, #2F4966));
  background: linear-gradient(to right, #236EC3 92%, #2F4966 92%);
  -webkit-clip-path: inset(100% 0 0 0);
          clip-path: inset(100% 0 0 0);
}
#intro2 h1 .txt2 {
  background-color: #2F4966;
  -webkit-clip-path: inset(0 0 100% 0);
          clip-path: inset(0 0 100% 0);
}
#intro2 .group {
  width: var(--w1);
  max-width: var(--w2);
  margin-left: auto !important;
  margin-right: auto !important;
  position: relative;
  padding-top: 10rem;
}
#intro2 .group .item {
  position: relative;
  z-index: inherit;
  visibility: hidden;
  overflow: hidden;
  width: calc(400% + 10.5rem);
  height: 0;
  opacity: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0 4rem;
  border-radius: 2rem;
  background-color: #236EC3;
  font-size: 2.1rem;
  color: #fff;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#intro2 .group .item::before {
  position: absolute;
  left: calc(12.5% - 2.5rem);
  top: 0.5rem;
  z-index: -1;
  width: 4rem;
  height: 4rem;
  background-color: #236EC3;
  content: "";
  -webkit-transform: scaleX(0.5) translateX(-50%) rotate(45deg);
          transform: scaleX(0.5) translateX(-50%) rotate(45deg);
}
#intro2 .group .item p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 76.5rem;
  max-width: calc(100% - 35rem);
  height: 10.4rem;
  padding-left: 12.5rem;
  background: url("/images/web/tongtong/main/intro2_img.png") no-repeat 0 0;
  background-size: 10.4rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  word-break: keep-all;
}
#intro2 .group .item p i strong{background:linear-gradient(180deg, transparent 0%, transparent 70%, rgba(15, 255, 255, .5) 70%, rgba(15, 255, 255, .5) 110%)}
#intro2 .group .item span {
  margin-left: auto;
}
#intro2 .group .item a {
  display: flex;
  align-items:center;
  position: relative;
  width: 39.5rem;
  height: 5rem;
  padding: 0 5rem 0 2rem;
  line-height:1;
  border-radius: 5rem;
  background-color: #fff;
  font-size: 1.7rem;
  color: #343434;
  -webkit-transition: background 0.3s, color 0.3s;
  transition: background 0.3s, color 0.3s;
}
#intro2 .group .item a::after {
  font-family: "remixicon";
  content: "\ea6e";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  position: absolute;
  display: inline-block;
  overflow: hidden;
  width: 3.5rem;
  height: 3.5rem;
  text-align: center;
  line-height: 3.5rem;
  vertical-align: middle;
  right: 0.7rem;
  border-radius: 100%;
  background-color: #3f3f3f;
  color: #fff;
}
#intro2 .group .item a + a {
  margin-top: 1rem;
}
#intro2 .group .item a:hover, #intro2 .group .item a:focus {
  background-color: #3f3f3f;
  color: #fff;
}
#intro2 ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 5rem;
}
#intro2 ul.active .item {
  -webkit-transition: all 0s !important;
  transition: all 0s !important;
}
#intro2 li {
  -webkit-box-flex: 1;
      -ms-flex: 1 1;
          flex: 1 1;
  max-width: calc(25% - 2.625rem);
}
#intro2 li button {
  position: relative;
  z-index: inherit;
  display: block;
  top: 3rem;
  width: 100%;
  height: 38rem;
  padding-bottom: 4.5rem;
  -webkit-box-shadow: 0 0.4rem 1rem rgba(0, 0, 0, 0.06);
          box-shadow: 0 0.4rem 1rem rgba(0, 0, 0, 0.06);
  border-radius: 2rem;
  background-color: #fff;
  font-size: 2.1rem;
  font-weight: 600;
  line-height: 140%;
  word-break: keep-all;
  opacity: 0;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
#intro2 li button::before {
  position: absolute;
  top: 0;
  z-index: -1;
  height: 100%;
  content: "";
  left: 0;
  width: 100%;
  z-index: 0;
  border-radius: 2rem;
  border: 0.6rem solid #236EC3;
  opacity: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#intro2 li button::after {
  font-family: "remixicon";
  content: "\ea4c";
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  position: absolute;
  display: inline-block;
  overflow: hidden;
  width: 4.5rem;
  height: 4.5rem;
  text-align: center;
  line-height: 4.5rem;
  vertical-align: middle;
  bottom: 3rem;
  border-radius: 100%;
  border: 1px solid #CFCFCF;
  font-weight: normal;
  color: #C2C2C2;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#intro2 li button i {
  display: block;
  height: 14rem;
  margin-bottom: 3rem;
  line-height: 14rem;
}
#intro2 li button img {
  max-height: 100%;
}
#intro2 li button span {
  width: 11rem;
  max-width: 100%;
  margin-left: auto !important;
  margin-right: auto !important;
  display: block;
  height: 6rem;
}
#intro2 li + li {
  margin-left: 3.5rem;
}
#intro2 li:nth-child(2) .item {
  margin-left: calc(-100% - 3.5rem);
}
#intro2 li:nth-child(3) .item {
  margin-left: calc(-200% - 7rem);
}
#intro2 li:nth-child(2) .item::before {
  left: calc(37.5% - 1.5rem);
}
#intro2 li:nth-child(3) .item::before {
  left: calc(62.5% - 0.75rem);
}
#intro2 li:nth-child(4) .item {
  float: right;
}
#intro2 li:nth-child(4) .item::before {
  left: calc(87.5% + 0.25rem);
}
#intro2 li.active .item {
  visibility: visible;
  overflow: visible;
  width: calc(400% + 10.5rem);
  height: 15rem;
  opacity: 1;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  margin-top: 3.5rem;
}
#intro2 li.active .item::before {
  top: -1.5rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
#intro2.active {
  -webkit-clip-path: inset(0 0 0 0);
          clip-path: inset(0 0 0 0);
  opacity: 1;
  -webkit-transition: opacity 0.5s, -webkit-clip-path 1s;
  transition: opacity 0.5s, -webkit-clip-path 1s;
  transition: clip-path 1s, opacity 0.5s;
  transition: clip-path 1s, opacity 0.5s, -webkit-clip-path 1s;
}
#intro2.active.t2{
  transition:none;
}
#intro2.active h1 {
  top: 0;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
}
#intro2.active h1 i {
  height: 4rem;
  margin: 1.5rem 0;
  -webkit-clip-path: inset(0 0 0 0);
          clip-path: inset(0 0 0 0);
}
#intro2.active li button {
  top: 0;
  opacity: 1;
}
#intro2.active li:nth-child(1) button {
  -webkit-transition: top 0.5s 1.5s, opacity 0.5s 1.5s;
  transition: top 0.5s 1.5s, opacity 0.5s 1.5s;
}
#intro2.active li:nth-child(2) button {
  -webkit-transition: top 0.5s 1.7s, opacity 0.5s 1.7s;
  transition: top 0.5s 1.7s, opacity 0.5s 1.7s;
}
#intro2.active li:nth-child(3) button {
  -webkit-transition: top 0.5s 1.9s, opacity 0.5s 1.9s;
  transition: top 0.5s 1.9s, opacity 0.5s 1.9s;
}
#intro2.active li:nth-child(4) button {
  -webkit-transition: top 0.5s 2.1s, opacity 0.5s 2.1s;
  transition: top 0.5s 2.1s, opacity 0.5s 2.1s;
}

.layerpopup {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  visibility: hidden;
  overflow: hidden;
  width: 0;
  height: 0;
  opacity: 0;
  z-index: 999;
  background-color: rgba(0, 0, 0, 0.3);
}
.layerpopup .item {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  width: 82rem;
  max-width: var(--w2);
  margin-left: auto !important;
  margin-right: auto !important;
  overflow: hidden;
  padding: 10rem 5rem 4rem;
  border-radius: 2.5rem;
  background-color: #fff;
  text-align: center;
  opacity: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.layerpopup .item h2 {
  margin-bottom: 4rem;
  font-size: 2.6rem;
  color: #0E2642;
  word-break: keep-all;
}
.layerpopup .item .close {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 6rem;
  padding-right: 2.5rem;
  background-color: #243349;
  color: transparent;
  line-height: 6rem;
}
.layerpopup .item .close::before {
  -webkit-transform: rotate(0);
          transform: rotate(0);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.layerpopup .item .close:hover::before, .layerpopup .item .close:focus::before {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.layerpopup .item .close::before {
  font-family: "remixicon";
  content: "\f4c8";
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  text-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: inherit;
  float: right;
  width: 2rem;
  font-size: 2.5rem;
  color: #fff;
}
.layerpopup.active {
  visibility: visible;
  overflow: visible;
  width: 100%;
  height: 100%;
  opacity: 1;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.layerpopup.active .item {
  opacity: 1;
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

#layerpopup a {display: inline-block; height: 6rem; margin-top: 4rem; padding: 0 3.5rem; border-radius: 5rem; background-color: #404B86; font-size: 2.1rem; font-weight: 600; color: #fff; line-height: 6rem; vertical-align: middle;}

#visual {
  width: 192rem;
  max-width: 100%;
  margin-left: auto !important;
  margin-right: auto !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  padding: 35rem 13rem 7.5rem;
  text-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#visual::before {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  position: absolute;
  top: 35rem;
  bottom: -3rem;
  z-index: -1;
  width: 139.1rem;
  max-width: calc(100% - 26rem);
  background: url("/images/web/tongtong/main/road.png") no-repeat center bottom;
  background-size: 100% auto;
  content: "";
  -webkit-clip-path: inset(0 100% 0 0);
          clip-path: inset(0 100% 0 0);
}
#visual .title {
  position: absolute;
  left: 0;
  top: 14rem;
  width: 100%;
}
#visual .title::before, #visual .title::after {
  position: absolute;
  background: url("/images/web/tongtong/main/cloud1.png") no-repeat;
  background-size: 100% 100%;
  content: "";
}
#visual .title::before {
  left: 17rem;
  top: 16.5rem;
}
#visual .title::after {
  left: 36.5rem;
  top: 4.5rem;
  width: 7.5rem;
  height: 6.8rem;
}
#visual .title::before, #visual .title::after, #visual .title p::before, #visual .title p::after {
  z-index: -1;
  -webkit-animation: cloud 1s infinite linear alternate;
          animation: cloud 1s infinite linear alternate;
  opacity: 0;
  -webkit-filter: blur(10px);
          filter: blur(10px);
  -webkit-transform: scale(2);
          transform: scale(2);
}
#visual .title::before, #visual .title p::before {
  width: 6.5rem;
  height: 5.9rem;
}
#visual .title::after, #visual .title p::after {
  margin-top: 2rem;
  animation-direction: alternate-reverse;
}
#visual .title img {
  max-height: 5.4rem;
  -webkit-clip-path: inset(100% 0 0 0);
          clip-path: inset(100% 0 0 0);
}
#visual .title p {
  width: 45rem;
  max-width: 100%;
  margin-left: auto !important;
  margin-right: auto !important;
  margin: 2.5rem 0 9.5rem;
  padding-top: 5rem;
  word-break: keep-all;
  opacity: 0;
}
#visual .title p strong{background:linear-gradient(180deg, transparent 0%, transparent 70%, rgba(239, 186, 0, .5) 70%, rgba(239, 186, 0, .5) 110%);}
#visual .title p::before, #visual .title p::after {
  position: absolute;
  background: url("/images/web/tongtong/main/cloud2.png") no-repeat;
  background-size: 100% 100%;
  content: "";
}
#visual .title p::before {
  right: 21rem;
  top: 9.5rem;
}
#visual .title p::after {
  top: 8.5rem;
  right: 43.5rem;
  width: 8.8rem;
  height: 7.9rem;
}
#visual .title p .star{position:relative}
#visual .title p .star:before{content:"";position:absolute;left:-3rem;top:-1.5rem;width:2.7rem;height:3rem;background:url(/images/web/tongtong/main/visual_star.png) center no-repeat;background-size:contain}
#visual .visual_guide{opacity:0;display:flex;position:absolute;left:8.4rem;top:11.3rem;align-items:flex-start;transform:translate(35rem, 0)}
#visual .visual_guide .img{display:inline-block;width:14.6rem;border:.6rem solid #fff;border-radius:50%;box-shadow:0 .4rem 2.4rem rgba(0,0,0,.08)}
#visual .visual_guide .desc{position:relative;top:-2rem;padding:1rem 2rem;color:#fff;font-size:1.6rem;line-height:2rem;font-weight:500;letter-spacing:-.03rem;background:#17C0B6;border-radius:30px;box-shadow:0 .4rem 1rem rgba(0,0,0,.08);word-break:keep-all}
#visual .visual_guide .desc:before{content:"";position:absolute;bottom:-.4rem;left:0;border-width:0 .6rem 1.5rem 1.4rem;border-style:solid;border-color:transparent transparent #17C0B6;transform:rotate(-20deg)}
#main.active #visual .visual_guide{opacity:1;transform:translate(0, 0);transition:all 1.5s 3s}
.down_arrow{opacity:0;position:absolute;width:14rem;height:5rem;left:50%;transform:translateX(-50%);bottom:13rem}
#main.active #visual .down_arrow{opacity:1;transition:all .5s 2.2s}
#visual .list {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  position: absolute;
  width: 67.5rem;
  max-width: var(--w2);
  margin-left: auto !important;
  margin-right: auto !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  bottom: -2rem;
  height: 12rem;
  padding: 0 8rem 3rem;
  -webkit-box-shadow: 0 0.4rem 1rem rgba(0, 0, 0, 0.06);
          box-shadow: 0 0.4rem 1rem rgba(0, 0, 0, 0.06);
  border-radius: 12rem;
  background-color: #fff;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  opacity: 0;
}
#visual .down_arrow::before, #visual .down_arrow::after {
  font-family: "remixicon";
  content: "\ea4e";
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  position: absolute;
  bottom:0;
  width: 2.5rem;
  height: 2.5rem;
  border-bottom: 0.2rem solid #231F20;
  border-right: 0.2rem solid #231F20;
  content: "";
  -webkit-transform: translateX(-50%) scaleY(0.8) rotate(45deg);
          transform: translateX(-50%) scaleY(0.8) rotate(45deg);
  -webkit-animation: arr 0.75s infinite alternate;
          animation: arr 0.75s infinite alternate;
}
#visual .down_arrow::after {
  margin-bottom: 0.8rem;
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
}
#visual .list li {
  -webkit-box-flex: 1;
      -ms-flex: 1 1;
          flex: 1 1;
}
#visual .list i {
  display: inline-block;
  overflow: hidden;
  width: 8.5rem;
  height: 8.5rem;
  text-align: center;
  line-height: 8.5rem;
  vertical-align: middle;
  display: block;
  margin: 0 auto;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
#visual .list span {
  display: inline-block;
  position: relative;
  margin-top: 1.5rem;
  padding-left: 0;
  font-size: 1.7rem;
  font-weight: 700;
  color: #2F4966;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#visual .list span::before {
  font-family: "remixicon";
  content: "\eb80";
  position: absolute;
  left: 0;
  top: -0.2rem;
  font-size: 2.5rem;
  font-weight: normal;
  color: #2E43B0;
  -webkit-transform: scale(2);
          transform: scale(2);
  opacity: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#visual .list button:hover i, #visual .list button:focus i {
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}
#visual .list .active button i {
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}
#visual .list .active button span {
  padding-left: 3rem;
  color: #2E43B0;
}
#visual .list .active button span::before {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: all 0.3s 0.1s;
  transition: all 0.3s 0.1s;
}
#visual .group {
  max-width: 25%;
  -webkit-box-flex: 1;
      -ms-flex: 1 1;
          flex: 1 1;
}
#visual .group .label::before, #visual .group .label::after, #visual .group .label a:not(.tag)::before {
  position: absolute;
  z-index: -1;
  width: 3.2rem;
  height: 5.3rem;
  background: url("/images/web/tongtong/main/tree.png") no-repeat center bottom;
  background-size: 100% auto;
  content: "";
  -webkit-clip-path: inset(100% 0 0 0);
          clip-path: inset(100% 0 0 0);
  -webkit-transform: scale(0.5) translateY(2rem);
          transform: scale(0.5) translateY(2rem);
}
#visual .group .tag {
  position: absolute;
  left: -3.5rem;
  top: -4.5rem;
  z-index: 0;
  height: 3.5rem;
  padding: 0 1.5rem;
  border-radius: 3.5rem;
  background-color: #166CC2;
  font-size: 1.6rem;
  color: #fff;
  line-height: 3.5rem;
  opacity: 0;
  -webkit-transform: translate(100%, 100%);
          transform: translate(100%, 100%);
  white-space: nowrap;
  z-index:1;
}
#visual .group .tag::before {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  z-index: -2;
  width: 100%;
  height: 100%;
  background-color: rgba(22, 108, 194, 1);
  border-radius: 3.5rem;
  content: "";
  opacity: 0;
}
#visual .group .tag::after {
  position: absolute;
  left: 100%;
  top: 50%;
  width: 12rem;
  height: 4.5rem;
  content: "";
}
#visual .group .tag.active::before {
  -webkit-animation: tag 1.5s infinite linear alternate;
          animation: tag 1.5s infinite linear alternate;
}
#visual .group .label {
  width: 40rem;
  max-width: 100%;
  margin-left: auto !important;
  margin-right: auto !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
}
#visual .group .label p {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  position: absolute;
  visibility: hidden;
  bottom: 20rem;
  z-index: -1;
  width: 26rem;
  margin-bottom: 5rem;
  padding: 2rem 2.5rem;
  -webkit-box-shadow: 0 0.4rem 3rem rgba(36, 38, 40, 0.15);
          box-shadow: 0 0.4rem 3rem rgba(36, 38, 40, 0.15);
  border-radius: 2rem;
  background-color: #fff;
  font-size: 1.5rem;
  color: #000;
  text-align: center;
  line-height: 150%;
  word-break: keep-all;
  opacity: 0;
  -webkit-transition: all 0.3s 0s;
  transition: all 0.3s 0s;
}
#visual .group .label p::before {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  position: absolute;
  bottom: -1.5rem;
  z-index: -1;
  width: 3rem;
  height: 3rem;
  background-color: #fff;
  content: "";
  -webkit-transform: translateX(-50%) scaleX(0.7) rotate(45deg);
          transform: translateX(-50%) scaleX(0.7) rotate(45deg);
}
#visual .group .label strong {
  display: block;
  margin-bottom: 1rem;
}
#visual .group .label i {
  position: relative;
  z-index: 0;
  display: block;
  top: 5rem;
  opacity: 0;
}
#visual .group .label i span {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#visual .group .label i span + span {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  -webkit-clip-path: inset(100% 0 0 0);
          clip-path: inset(100% 0 0 0);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#visual .group .label i img {
  width: 100%;
}
#visual .group.disable .label i span:first-child {
  opacity: 0.5;
}
#visual .group.active .label i span + span {
  -webkit-clip-path: inset(0 0 0 0);
          clip-path: inset(0 0 0 0);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
#visual .group.active .label p {
  margin-bottom: 0;
  opacity: 1;
  z-index: 1;
  -webkit-transition: margin 0.5s 0.4s, opacity 0.5s 0.4s, visibility 0s 0s;
  transition: margin 0.5s 0.4s, opacity 0.5s 0.4s, visibility 0s 0s;
}
#visual .group1 .tag::after {
  background: url("/images/web/tongtong/main/group1_line.png") no-repeat;
}
#visual .group2 .tag::after {
  background: url("/images/web/tongtong/main/group2_line.png") no-repeat;
}
#visual .group3 .tag::after {
  background: url("/images/web/tongtong/main/group3_line.png") no-repeat;
}
#visual .group4 .tag::after {
  background: url("/images/web/tongtong/main/group4_line.png") no-repeat;
}
#visual .group1 .label a:not(.tag)::before {
  display: none;
}
#visual .group1 .label::before {
  left: 30%;
  bottom: -4.5rem;
}
#visual .group1 .label::after {
  right: 4.5rem;
  top: -0.5rem;
}
#visual .group2 .label {
  left: -4.5rem;
}
#visual .group2 .label::before {
  left: -5rem;
  bottom: 50%;
}
#visual .group2 .label::after {
  bottom: -10rem;
  right: 60%;
}
#visual .group2 .label a:not(.tag)::before {
  right: -6rem;
  bottom: 45%;
}
#visual .group2 .tag1::after {
  left: calc(100% - 4rem);
}
#visual .group2 .tag2 {
  left: auto;
  right: -2.5rem;
  top: auto;
  bottom: -3.5rem;
  -webkit-transform: translate(-100%, -100%);
          transform: translate(-100%, -100%);
}
#visual .group2 .tag2::after {
  top: auto;
  bottom: 50%;
  left: auto;
  right: calc(100% - 4rem);
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
#visual .group2 .layerpopup .tabs [class*=tab] > button {
  width: calc(50% - 0.8rem);
}
#visual .group2 .layerpopup .tabs .tab2 > button {
  left: auto;
  right: 0;
}
#visual .group3 .label {
  left: 5rem;
}
#visual .group3 .label::before {
  bottom: -3.5rem;
  left: 3rem;
}
#visual .group3 .label::after {
  bottom: -7rem;
  left: 6rem;
}
#visual .group3 .label a:not(.tag)::before {
  bottom: -11rem;
  left: calc(50% - 1.5rem);
}
#visual .group3 .tag2 {
  top: 3rem;
  left: -9rem;
}
#visual .group3 .tag3 {
  top: -2rem;
  left: auto;
  right: -6.5rem;
  -webkit-transform: translate(-100%, 100%);
          transform: translate(-100%, 100%);
}
#visual .group3 .tag3::after {
  left: auto;
  right: 100%;
  -webkit-transform: rotateY(180deg);
          transform: rotateY(180deg);
}
#visual .group3 .tag4 {
  left: auto;
  right: 5rem;
  top: auto;
  bottom: -3rem;
  -webkit-transform: translate(-100%, -100%);
          transform: translate(-100%, -100%);
}
#visual .group3 .tag4::after {
  top: auto;
  bottom: 50%;
  left: auto;
  right: 100%;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
#visual .group3 .layerpopup .tabs [class*=tab] > button {
  width: calc(25% - 0.4rem);
}
#visual .group3 .layerpopup .tabs .tab2 > button {
  left: calc(25% + 0.4rem);
}
#visual .group3 .layerpopup .tabs .tab3 > button {
  left: auto;
  right: calc(25% - 0rem);
}
#visual .group3 .layerpopup .tabs .tab4 > button {
  left: auto;
  right: 0;
}
#visual .group4 .label::before {
  bottom: calc(100% + 3.5rem);
  left: 3.5rem;
}
#visual .group4 .label::after {
  bottom: -7rem;
  left: 55%;
}
#visual .group4 .label a::before {
  bottom: 50%;
  right: -4.5rem;
}
#visual .group4 .tag {
  left: auto;
  right: -5rem;
  top: -7.5rem;
  -webkit-transform: translate(-100%, 100%);
          transform: translate(-100%, 100%);
}
#visual .group4 .tag::after {
  left: auto;
  right: 100%;
  width: 7.5rem;
  height: 9.4rem;
}
#visual .group4 .tag2 {
  right: -10.5rem;
  top: 0;
  -webkit-transform: translate(-100%, 100%);
          transform: translate(-100%, 100%);
}
#visual .group4 .tag3 {
  top: auto;
  bottom: -2rem;
  -webkit-transform: translate(-100%, -100%);
          transform: translate(-100%, -100%);
}
#visual .group4 .tag3::after {
  top: auto;
  bottom: 50%;
  -webkit-transform: rotateX(180deg);
          transform: rotateX(180deg);
}
#visual .group4 .layerpopup .tabs [class*=tab] > button {
  width: calc(33.333% - 0.533rem);
}
#visual .group4 .layerpopup .tabs .tab2 > button {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
#visual .group4 .layerpopup .tabs .tab3 > button {
  left: auto;
  right: 0;
}
#visual .group1 {
  padding-top: 10%;
}
#visual .group1 .tag {
  background-color: #00A49A;
}
#visual .group1 .tag::before {
  background-color: rgb(0, 164, 154);
}
#visual .group3 {
  padding-top: 1%;
}
#visual .group3 .tag {
  background-color: #2E43B0;
}
#visual .group3 .tag::before {
  background-color: rgb(46, 67, 176);
}
#visual .group4 {
  padding-top: 11%;
}
#visual .group4 .tag {
  background-color: #5F31AA;
}
#visual .group4 .tag::before {
  background-color: rgb(95, 49, 170);
}
#visual .layerpopup {
  position: fixed;
}
#visual .layerpopup .item {
  top: 4.5rem;
  width: 61rem;
  padding-left: 6rem;
  padding-right: 6rem;
  padding-bottom: 6rem;
  text-align: left;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
#visual .layerpopup h2 + p {
  margin-bottom: 3.5rem;
}
#visual .layerpopup .swiper {
  position: relative;
  z-index: 0;
  margin: 0 0 3.5rem;
}
#visual .layerpopup .swiper::before, #visual .layerpopup .swiper::after {
  position: absolute;
  left: 100%;
  top: -1rem;
  z-index: 1;
  width: 6rem;
  height: calc(100% + 2rem);
  background-color: #fff;
  content: "";
}
#visual .layerpopup .swiper::after {
  left: auto;
  right: 100%;
}
#visual .layerpopup .swiper img {
  border-radius: 2rem;
}
#visual .layerpopup .swiper .control button {
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  position: absolute;
  display: inline-block;
  overflow: hidden;
  width: 4.5rem;
  height: 4.5rem;
  margin-top: -4rem;
  text-align: center;
  line-height: 4.5rem;
  vertical-align: middle;
  left: 0;
  z-index: 10;
  border-radius: 100%;
  background-color: #fff;
  font-size: 3rem;
  color: #555;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
#visual .layerpopup .swiper .control button::before {
  font-family: "remixicon";
  content: "\ea64";
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  text-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: inherit;
}
#visual .layerpopup .swiper .control button.next {
  left: auto;
  right: 0;
  -webkit-transform: translateX(50%);
          transform: translateX(50%);
}
#visual .layerpopup .swiper .control button.next::before {
  content: "\ea6e";
}
#visual .layerpopup .swiper + strong {
  display: block;
  margin-bottom: 2rem;
  font-size: 2rem;
  font-weight: 800;
  color: #000;
}
#visual .layerpopup .swiper + strong + ul {
  counter-reset: number;
}
#visual .layerpopup .swiper + strong + ul li {
  position: relative;
  padding-left: 2.5rem;
  text-align: left;
  font-size: 1.6rem;
}
#visual .layerpopup .swiper + strong + ul li::before {
  position: absolute;
  left: 0;
  top: auto;
  content: "";
}
#visual .layerpopup .swiper + strong + ul li::before {
  width: 2.5rem;
  font-weight: 800;
  color: #111;
  text-align: center;
  counter-increment: number;
  content: counter(number);
}

#visual .layerpopup .setting {margin-top: 0.5rem; text-align: center;}
#visual .layerpopup .pager {display: inline-block; margin-right: 0.5rem; vertical-align: middle;}
#visual .layerpopup .pager span {display: inline-block; width: 1.2rem; height: 1.2rem; margin: 0 0.5rem; border-radius: 100%; border: 1px solid #999; vertical-align: middle; transition: all 0.2s;}
#visual .layerpopup .pager .swiper-pagination-bullet-active {border-color: #27326B; background-color: #27326B;}
#visual .layerpopup .btns {display: inline-block; position: relative; width: 2rem; height: 2rem; font-size: 2rem; line-height: 2rem; vertical-align: middle;}
#visual .layerpopup .btns button {display: none; overflow: hidden; position: absolute; left: 0; top: 0; width: 100%; height: 100%;}
#visual .layerpopup .btns button::before {display: block; width: 100%; height: 100%; font-family: 'remixicon'; content: '\F00A';}
#visual .layerpopup .btns .pause::before {content: '\EFD8';}
#visual .layerpopup .btns .active {display: block;}

#visual .layerpopup .tabs {
  position: relative;
  padding-top: 7rem;
}
#visual .layerpopup .tabs [class*=tab] > button {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4rem;
  border-radius: 4rem;
  border: 1px solid #ddd;
  font-size: 1.6rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  white-space: nowrap;
}
#visual .layerpopup .tabs [class*=tab] > button:hover, #visual .layerpopup .tabs [class*=tab] > button:focus {
  border-color: #093A83;
  color: #093A83;
}
#visual .layerpopup .tabs [class*=tab] .box {
  visibility: hidden;
  overflow: hidden;
  width: 100%;
  height: 0;
  opacity: 0;
  position: relative;
  top: 2rem;
}
#visual .layerpopup .tabs [class*=tab] .box > a {
  height: 6rem;
  border: 0.2rem solid #2E43B0;
  line-height: 5.6rem;
  display: block;
  margin-top: 3.5rem;
  border-radius: 0.6rem;
  background-color: #2E43B0;
  font-size: 1.8rem;
  color: #fff;
  text-align: center;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#visual .layerpopup .tabs [class*=tab] .box > a:hover, #visual .layerpopup .tabs [class*=tab] .box > a:focus {
  background-color: #fff;
  color: #2E43B0;
}
#visual .layerpopup .tabs [class*=tab].active > button {
  border-color: #093A83;
  background-color: #093A83;
  color: #fff;
}
#visual .layerpopup .tabs [class*=tab].active .box {
  visibility: visible;
  overflow: visible;
  width: 100%;
  height: auto;
  opacity: 1;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  top: 0;
}

@-webkit-keyframes cloud {
  0% {
    margin-top: 0;
  }
  100% {
    margin-top: 2rem;
  }
}

@keyframes cloud {
  0% {
    margin-top: 0;
  }
  100% {
    margin-top: 2rem;
  }
}
@-webkit-keyframes tag {
  0% {
    width: 100%;
    height: 100%;
    opacity: 1;
  }
  100% {
    width: calc(100% + 5rem);
    height: calc(100% + 5rem);
    opacity: 0;
  }
}
@keyframes tag {
  0% {
    width: 100%;
    height: 100%;
    opacity: 1;
  }
  100% {
    width: calc(100% + 5rem);
    height: calc(100% + 5rem);
    opacity: 0;
  }
}
@-webkit-keyframes arr {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0.5;
  }
}
@keyframes arr {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0.3;
  }
}
#main {
  overflow: hidden;
  height: 0;
  background: url("/images/web/tongtong/main/main_bg.png") no-repeat 0 0/cover;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
}
#main + #footer {
  overflow: hidden;
  height: 0;
}
#main.active {
  overflow: visible;
  height: auto;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition: -webkit-transform 0.5s;
  transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
}
#main.active + #footer {
  overflow: visible;
  height: auto;
  padding: 5rem 0 8rem;
}
#main.active #visual .title img {
  -webkit-clip-path: inset(0 0 0 0);
          clip-path: inset(0 0 0 0);
  -webkit-transition: all 0.5s 0.5s;
  transition: all 0.5s 0.5s;
}
#main.active #visual .title p {
  padding-top: 0;
  opacity: 1;
  -webkit-transition: all 0.5s 1s;
  transition: all 0.5s 1s;
}
#main.active #visual .title::before, #main.active #visual .title::after, #main.active #visual .title p::before, #main.active #visual .title p::after {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-filter: blur(0);
          filter: blur(0);
  -webkit-transition: all 0.5s 1.2s;
  transition: all 0.5s 1.2s;
}
#main.active #visual::before {
  -webkit-clip-path: inset(0 0 0 0);
          clip-path: inset(0 0 0 0);
  -webkit-transition: all 1s 1s;
  transition: all 1s 1s;
}
#main.active #visual .group .tag {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  opacity: 1;
  -webkit-transition: all 0.5s 2.2s;
  transition: all 0.5s 2.2s;
}
#main.active #visual .group .label::before, #main.active #visual .group .label::after, #main.active #visual .group .label a:not(.tag)::before {
  -webkit-clip-path: inset(0 0 0 0);
          clip-path: inset(0 0 0 0);
  -webkit-transform: scale(1) translateY(0);
          transform: scale(1) translateY(0);
  -webkit-transition: all 0.5s 1.5s;
  transition: all 0.5s 1.5s;
}
#main.active #visual .group .label p {
  visibility: visible;
  -webkit-transition: margin 0.5s 0.4s, opacity 0.5s 0.4s, visibility 0s 2s;
  transition: margin 0.5s 0.4s, opacity 0.5s 0.4s, visibility 0s 2s;
}
#main.active #visual .group .label i {
  top: 0;
  opacity: 1;
  -webkit-transition: all 0.5s 1.8s;
  transition: all 0.5s 1.8s;
}
#main.active #visual .group1 .label::before, #main.active #visual .group2 .label::after, #main.active #visual .group3 .label a::before, #main.active #visual .group4 .label::before {
  -webkit-transition-delay: 1.6s;
          transition-delay: 1.6s;
}
#main.active #visual .group2 .label::before, #main.active #visual .group3 .label::after, #main.active #visual .group4 .label a::before {
  -webkit-transition-delay: 1.7s;
          transition-delay: 1.7s;
}
#main.active #visual .group2 .tag {
  -webkit-transition-delay: 2.3s;
          transition-delay: 2.3s;
}
#main.active #visual .group2 .label i {
  -webkit-transition-delay: 1.9s;
          transition-delay: 1.9s;
}
#main.active #visual .group3 .tag {
  -webkit-transition-delay: 2.4s;
          transition-delay: 2.4s;
}
#main.active #visual .group3 .label i {
  -webkit-transition-delay: 2s;
          transition-delay: 2s;
}
#main.active #visual .group4 .tag {
  -webkit-transition-delay: 2.5s;
          transition-delay: 2.5s;
}
#main.active #visual .group4 .label i {
  -webkit-transition-delay: 2.1s;
          transition-delay: 2.1s;
}
#main.active #visual .list {
  opacity: 1;
  -webkit-transition: all 0.5s 2.5s;
  transition: all 0.5s 2.5s;
}

#contents {
  width: 140rem;
  max-width: var(--w2);
  margin-left: auto !important;
  margin-right: auto !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 20rem 0;
  font-size: 1.7rem;
  color: #fff;
}
#contents article {
  position: relative;
  z-index: 1;
  overflow: hidden;
  padding: 7.5rem 0 7.5rem 6.5rem;
  border-radius: 2rem;
  background-color: #27326B;
  white-space: nowrap;
  -webkit-box-flex: 1;
      -ms-flex: 1 1;
          flex: 1 1;
}
#contents article::after {
  position: absolute;
  right: 0;
  top: 13.5rem;
  z-index: -1;
  width: 19.9rem;
  height: 12.8rem;
  background: url("/images/web/tongtong/main/group1_img.png") no-repeat right center;
  background-size: 100% auto !important;
  content: "";
}
#contents p {
  display: block;
  width: 35rem;
  max-width: 100%;
  height: 11rem;
  margin: 3.5rem 0;
  word-break: keep-all;
  white-space: normal;
}
#contents a {
  display: inline-block;
  height: 5.3rem;
  margin-right: 0.5rem;
  padding: 0 2.8rem;
  border-radius: 0.6rem;
  background-color: #404B86;
  font-size: 1.9rem;
  line-height: 5.3rem;
  vertical-align: middle;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#contents a:hover, #contents a:focus {
  background-color: #fff !important;
  color: #27326B;
}
#contents .group2 {
  margin-left: 2rem;
  background-color: #00A49A;
}
#contents .group2::after {
  top: auto;
  bottom: 0;
  width: 35.2rem;
  height: 32.7rem;
  background: url("/images/web/tongtong/main/group2_img.png") no-repeat right bottom;
}
#contents .group2 p {
  width: 28rem;
}
#contents .group2 a {
  background-color: rgba(0, 145, 136, 0.9);
}
#contents .group2 a:hover, #contents .group2 a:focus {
  color: #00A49A;
}

#footer {
  width: 140rem;
  max-width: var(--w2);
  margin-left: auto !important;
  margin-right: auto !important;
  position: relative;
  font-size: 1.7rem;
  color: #959595;
  line-height: 150%;
}
#footer::before {
  position: absolute;
  top: 0;
  z-index: -1;
  height: 100%;
  content: "";
  left: 50%;
  width: 10000%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background-color: #2C2C2C;
}

#siteinfo span {
  display: inline-block;
  vertical-align: middle;
}

.btn_top {
  position: absolute;
  top: 0;
  left: calc(100% + 1.5rem);
  z-index: 1;
  width: 12rem;
  height: 12rem;
  border-radius: 100%;
  background-color: rgba(0, 0, 0, 0.07);
  color: #2D2D2D;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.btn_top::before {
  font-family: "remixicon";
  content: "\ea76";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  display: inline-block;
  overflow: hidden;
  width: 9rem;
  height: 9rem;
  text-align: center;
  line-height: 9rem;
  vertical-align: middle;
  border-radius: 100%;
  background-color: #D2DC04;
  font-size: 2.5rem;
}
.btn_top::after {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 100%;
  background-color: rgba(0, 0, 0, 0.07);
  content: "";
  opacity: 0;
}
.btn_top:hover::after, .btn_top:focus::after {
  -webkit-animation: btn_top 1.5s infinite;
          animation: btn_top 1.5s infinite;
}

@-webkit-keyframes btn_top {
  0% {
    -webkit-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
    opacity: 1;
  }
  100% {
    -webkit-transform: translate(-50%, -50%) scale(2);
            transform: translate(-50%, -50%) scale(2);
    opacity: 0;
  }
}

@keyframes btn_top {
  0% {
    -webkit-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
    opacity: 1;
  }
  100% {
    -webkit-transform: translate(-50%, -50%) scale(2);
            transform: translate(-50%, -50%) scale(2);
    opacity: 0;
  }
}
#fnb {
  margin: 4rem 0 2rem;
  font-size: 2.1rem;
  font-weight: 700;
  color: #EEF1F3;
}
#fnb a {
  display: inline-block;
  position: relative;
  margin-right: 2rem;
  vertical-align: middle;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#fnb a::after {
  font-family: "remixicon";
  content: "\ea6c";
  position: absolute;
  right: 0;
  width: 2.5rem;
  font-weight: normal;
  opacity: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#fnb a:last-child {
  margin-right: 0;
}
#fnb a:hover, #fnb a:focus {
  padding-right: 3.5rem;
}
#fnb a:hover::after, #fnb a:focus::after {
  opacity: 1;
}

.related {
  position: absolute;
  right: 0;
  bottom: 8rem;
  width: 33.5rem;
}
.related button {
  height: 7rem;
  border: 1px solid #EEF1F3;
  line-height: calc(7rem - 2px);
  position: relative;
  width: 100%;
  padding: 0 7rem 0 3.5rem;
  border-radius: 1rem;
  font-size: 2.1rem;
  font-weight: 500;
  color: #fff;
  text-align: left;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.related button::after {
  font-family: "remixicon";
  content: "\ea78";
  position: absolute;
  right: 3rem;
  width: 2.5rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.related button:hover, .related button:focus {
  background-color: #EEF1F3;
  color: #2C2C2C;
}
.related ul {
  visibility: hidden;
  overflow: hidden;
  width: 100%;
  height: 0;
  opacity: 0;
  position: absolute;
  left: 0;
  bottom: calc(100% + 1rem);
  width: 100%;
  padding: 0 3.5rem;
  border-radius: 1rem;
  border: 1px solid #959595;
  background-color: #2C2C2C;
}
.related a {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.related a:hover, .related a:focus {
  color: #fff;
}
.related.active button::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.related.active ul {
  visibility: visible;
  overflow: visible;
  width: 100%;
  height: auto;
  opacity: 1;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  padding: 1.5rem 3.5rem;
  transition: all 0.3s;
}

/* 정비통통 배너 슬라이드 css @kjh 20250718 */
.footbanner_wrap{background:#fff;box-shadow:0 -.3rem .6rem rgba(0,0,0,.05)}
.footbanner_wrap .container{position:relative;padding:2.7rem 14rem 2.7rem 13rem; width:100%; max-width:1400px; margin:0 auto;}
.footbanner_wrap .title{position:absolute;left:0;top:50%;font-size:2.3rem;color:#000;transform:translateY(-50%);z-index:1}
.footbanner {position:static}
.footbanner .control {display: block;position: absolute;right: 0;top:50%;width:11.8rem;background-color: #fff;transform:translateY(-50%)}
.footbanner .control button {overflow: hidden;width:3.6rem;height:3.6rem;text-align: center;line-height:3.6rem;vertical-align: middle;display: block;float: left;border:1px solid #C4C4C4;border-radius:100%;color:#000;font-size:2rem;transition:all .2s}
.footbanner .control .play, 
.footbanner .control .pause {left: 50%;-webkit-transform: translateX(-50%);transform: translateX(-50%);position: absolute;display: none;top: 0}
.footbanner .control .play.active, 
.footbanner .control .pause.active {display: inline-block;}
.footbanner .control .next{float: right;}
.footbanner .control button:before{font-family:"remixicon";display:block;width:100%;height:100%;line-height:inherit}
.footbanner .prev::before{content:"\EA60"}
.footbanner .next::before{content:"\EA6C"}
.footbanner .play::before{content:"\f00a"}
.footbanner .pause::before{content:"\efd7"}
.footbanner .control button:hover{background-color:#2F5BC1;color:#fff;border-color:#2F5BC1}
.footbanner.type1 {padding: 2rem 0;}
.footbanner.type1 .control {display: none;}
.footbanner.type1 .list {-webkit-box-pack: center;-ms-flex-pack: center;justify-content: center;}
.swiper-initialized {overflow: hidden}
.swiper-initialized > * {display: -webkit-box;display: -ms-flexbox;display: flex;overflow: visible !important;}
.swiper-initialized > * > * {display: -webkit-box;display: -ms-flexbox;display: flex;-ms-flex-negative: 0;flex-shrink: 0;}
.swiper-initialized.swiper-vertical > * {-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;}
.swiper-initialized.swiper-vertical [role=group] {overflow: hidden;max-height: 100%;text-align: center;-webkit-box-pack: center;-ms-flex-pack: center;justify-content: center;-webkit-box-align: center;-ms-flex-align: center;align-items: center;}
.swiper-initialized .swiper-pagination-bullets {display: block;}
.swiper-pagination{z-index:3}
