/* Vendor Style*/
.enter-banner {
  position: relative;
  margin: 0 auto;
  padding: 3vw 0;
  max-width: 90%;
  overflow: hidden;
  text-align: center;
}
.enter-banner__img-box {
  position: relative;
  overflow: hidden;
}
.enter-banner__img-box:before {
  content: "";
  display: block;
  padding-top: 25.77%;
}
.enter-banner__img {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  display: block;
  background-size: cover;
  background-position: bottom center;
}
.enter-banner__inside {
  position: relative;
  display: block;
  margin: 0 auto;
}
.enter-banner__text-box {
  position: absolute;
  z-index: 5;
  top: 6%;
  left: 10%;
  width: 50%;
  height: 88%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.enter-banner__en {
  font-size: 0;
  line-height: 1;
  text-transform: uppercase;
  color: #fff;
}
.enter-banner__en.advanced span {
  font-size: 5vw;
}
.enter-banner__en.taiwan span {
  font-size: 10vw;
}
.enter-banner__zh {
  position: absolute;
  left: 50%;
  top: 43%;
  width: 100%;
  font-size: 2vw;
  line-height: 1;
  letter-spacing: 0.5em;
  color: #1a3560;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.enter-banner__zh:before, .enter-banner__zh:after {
  content: "";
  position: absolute;
  top: 50%;
  width: 34%;
  height: 1px;
  display: block;
  background: currentColor;
}
.enter-banner__zh:before {
  left: 0;
}
.enter-banner__zh:after {
  right: 0;
}
.enter-banner--dark-text .enter-banner__en {
  color: #1a3560;
}
.enter-banner--dark-text .enter-banner__zh {
  color: #1a3560;
}
@media print, screen and (min-width: 64em) {
  .enter-banner__img-box {
    -webkit-transition: -webkit-transform 0.8s;
    transition: -webkit-transform 0.8s;
    transition: transform 0.8s;
    transition: transform 0.8s, -webkit-transform 0.8s;
  }
  .enter-banner__inside {
    overflow: hidden;
  }
  .enter-banner__inside:hover .enter-banner__img-box, .enter-banner__inside:focus .enter-banner__img-box {
    -webkit-transition-duration: 0.3s;
            transition-duration: 0.3s;
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
.enter-banner[has-ani] .enter-banner__img {
  opacity: 0;
}
.enter-banner[has-ani] .enter-banner__en span {
  opacity: 0;
  display: inline-block;
}
.enter-banner[has-ani] .enter-banner__en.advanced span {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}
.enter-banner[has-ani] .enter-banner__en.taiwan span {
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
}
.enter-banner[has-ani] .enter-banner__zh span,
.enter-banner[has-ani] .enter-banner__zh strong {
  opacity: 0;
  display: inline-block;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}
.enter-banner[has-ani] .enter-banner__zh strong {
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
}
.enter-banner[has-ani] .enter-banner__zh:before, .enter-banner[has-ani] .enter-banner__zh:after {
  width: 50%;
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
}
.enter-banner[has-ani].is-active .enter-banner__img {
  opacity: 1;
  -webkit-transition: opacity 0.8s 0.2s, -webkit-transform 0.8s 0.2s;
  transition: opacity 0.8s 0.2s, -webkit-transform 0.8s 0.2s;
  transition: opacity 0.8s 0.2s, transform 0.8s 0.2s;
  transition: opacity 0.8s 0.2s, transform 0.8s 0.2s, -webkit-transform 0.8s 0.2s;
  -webkit-animation: bgPos 1s 1s forwards ease;
          animation: bgPos 1s 1s forwards ease;
}
@-webkit-keyframes bgPos {
  100% {
    -webkit-transform: translateY(50%);
            transform: translateY(50%);
  }
}
@keyframes bgPos {
  100% {
    -webkit-transform: translateY(50%);
            transform: translateY(50%);
  }
}
.enter-banner[has-ani].is-active .enter-banner__inside:hover .enter-banner__img, .enter-banner[has-ani].is-active .enter-banner__inside:focus .enter-banner__img {
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.enter-banner[has-ani].is-active .enter-banner__en span {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, transform 0.3s;
  transition: opacity 0.3s, transform 0.3s, -webkit-transform 0.3s;
  -webkit-animation: rotateText 5s 4s infinite;
          animation: rotateText 5s 4s infinite;
}
.enter-banner[has-ani].is-active .enter-banner__en.advanced span:nth-child(1) {
  -webkit-transition-delay: 2.5s;
          transition-delay: 2.5s;
  -webkit-animation-delay: 6.5s;
          animation-delay: 6.5s;
}
.enter-banner[has-ani].is-active .enter-banner__en.advanced span:nth-child(2) {
  -webkit-transition-delay: 2.6s;
          transition-delay: 2.6s;
  -webkit-animation-delay: 6.6s;
          animation-delay: 6.6s;
}
.enter-banner[has-ani].is-active .enter-banner__en.advanced span:nth-child(3) {
  -webkit-transition-delay: 2.7s;
          transition-delay: 2.7s;
  -webkit-animation-delay: 6.7s;
          animation-delay: 6.7s;
}
.enter-banner[has-ani].is-active .enter-banner__en.advanced span:nth-child(4) {
  -webkit-transition-delay: 2.8s;
          transition-delay: 2.8s;
  -webkit-animation-delay: 6.8s;
          animation-delay: 6.8s;
}
.enter-banner[has-ani].is-active .enter-banner__en.advanced span:nth-child(5) {
  -webkit-transition-delay: 2.9s;
          transition-delay: 2.9s;
  -webkit-animation-delay: 6.9s;
          animation-delay: 6.9s;
}
.enter-banner[has-ani].is-active .enter-banner__en.advanced span:nth-child(6) {
  -webkit-transition-delay: 3s;
          transition-delay: 3s;
  -webkit-animation-delay: 7s;
          animation-delay: 7s;
}
.enter-banner[has-ani].is-active .enter-banner__en.advanced span:nth-child(7) {
  -webkit-transition-delay: 3.1s;
          transition-delay: 3.1s;
  -webkit-animation-delay: 7.1s;
          animation-delay: 7.1s;
}
.enter-banner[has-ani].is-active .enter-banner__en.advanced span:nth-child(8) {
  -webkit-transition-delay: 3.2s;
          transition-delay: 3.2s;
  -webkit-animation-delay: 7.2s;
          animation-delay: 7.2s;
}
.enter-banner[has-ani].is-active .enter-banner__en.taiwan span:nth-child(1) {
  -webkit-transition-delay: 3.5s;
          transition-delay: 3.5s;
  -webkit-animation-delay: 7.5s;
          animation-delay: 7.5s;
}
.enter-banner[has-ani].is-active .enter-banner__en.taiwan span:nth-child(2) {
  -webkit-transition-delay: 3.6s;
          transition-delay: 3.6s;
  -webkit-animation-delay: 7.6s;
          animation-delay: 7.6s;
}
.enter-banner[has-ani].is-active .enter-banner__en.taiwan span:nth-child(3) {
  -webkit-transition-delay: 3.7s;
          transition-delay: 3.7s;
  -webkit-animation-delay: 7.7s;
          animation-delay: 7.7s;
}
.enter-banner[has-ani].is-active .enter-banner__en.taiwan span:nth-child(4) {
  -webkit-transition-delay: 3.8s;
          transition-delay: 3.8s;
  -webkit-animation-delay: 7.8s;
          animation-delay: 7.8s;
}
.enter-banner[has-ani].is-active .enter-banner__en.taiwan span:nth-child(5) {
  -webkit-transition-delay: 3.9s;
          transition-delay: 3.9s;
  -webkit-animation-delay: 7.9s;
          animation-delay: 7.9s;
}
.enter-banner[has-ani].is-active .enter-banner__en.taiwan span:nth-child(6) {
  -webkit-transition-delay: 4s;
          transition-delay: 4s;
  -webkit-animation-delay: 8s;
          animation-delay: 8s;
}
.enter-banner[has-ani].is-active .enter-banner__zh span,
.enter-banner[has-ani].is-active .enter-banner__zh strong {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: opacity 0.5s 5.5s, -webkit-transform 0.5s 5.5s;
  transition: opacity 0.5s 5.5s, -webkit-transform 0.5s 5.5s;
  transition: opacity 0.5s 5.5s, transform 0.5s 5.5s;
  transition: opacity 0.5s 5.5s, transform 0.5s 5.5s, -webkit-transform 0.5s 5.5s;
}
.enter-banner[has-ani].is-active .enter-banner__zh:before {
  -webkit-animation: zhLineLeft 1s 4.5s forwards;
          animation: zhLineLeft 1s 4.5s forwards;
}
.enter-banner[has-ani].is-active .enter-banner__zh:after {
  -webkit-animation: zhLineRight 1s 4.5s forwards;
          animation: zhLineRight 1s 4.5s forwards;
}
@-webkit-keyframes zhLineLeft {
  0% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: right center;
            transform-origin: right center;
  }
  50% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: right center;
            transform-origin: right center;
  }
  50.01% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: left center;
            transform-origin: left center;
  }
  100% {
    -webkit-transform: scaleX(0.55);
            transform: scaleX(0.55);
    -webkit-transform-origin: left center;
            transform-origin: left center;
  }
}
@keyframes zhLineLeft {
  0% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: right center;
            transform-origin: right center;
  }
  50% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: right center;
            transform-origin: right center;
  }
  50.01% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: left center;
            transform-origin: left center;
  }
  100% {
    -webkit-transform: scaleX(0.55);
            transform: scaleX(0.55);
    -webkit-transform-origin: left center;
            transform-origin: left center;
  }
}
@-webkit-keyframes zhLineRight {
  0% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left center;
            transform-origin: left center;
  }
  50% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: left center;
            transform-origin: left center;
  }
  50.01% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: right center;
            transform-origin: right center;
  }
  100% {
    -webkit-transform: scaleX(0.55);
            transform: scaleX(0.55);
    -webkit-transform-origin: right center;
            transform-origin: right center;
  }
}
@keyframes zhLineRight {
  0% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left center;
            transform-origin: left center;
  }
  50% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: left center;
            transform-origin: left center;
  }
  50.01% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: right center;
            transform-origin: right center;
  }
  100% {
    -webkit-transform: scaleX(0.55);
            transform: scaleX(0.55);
    -webkit-transform-origin: right center;
            transform-origin: right center;
  }
}
@media screen and (max-width: 30em) {
  .enter-banner__text-box {
    top: 26%;
    height: 33%;
  }
  .enter-banner__img-box:before {
    padding-top: 83.33%;
  }
  .enter-banner__img {
    width: 180vw;
    left: auto;
    right: -110px;
  }
  @-webkit-keyframes bgPos {
    100% {
      -webkit-transform: translateY(20%);
              transform: translateY(20%);
    }
  }
  @keyframes bgPos {
    100% {
      -webkit-transform: translateY(20%);
              transform: translateY(20%);
    }
  }
}

@-webkit-keyframes rotateText {
  0% {
    -webkit-transform: rotateY(0);
            transform: rotateY(0);
  }
  20%, 100% {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg);
  }
}

@keyframes rotateText {
  0% {
    -webkit-transform: rotateY(0);
            transform: rotateY(0);
  }
  20%, 100% {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg);
  }
}
.fulljustify {
  display: block;
  text-align: justify;
  text-justify: inter-ideograph;
  -ms-text-justify: inter-ideograph;
  -moz-text-align-last: justify;
  -webkit-text-align-last: justify;
}
.fulljustify:after {
  content: "";
  display: inline-block;
  width: 100%;
}