.view-more-btn {
  text-align: center;
  font-family: "iconfont";
  font-size: 7vw;
}
.home-banner {
  position: relative;
  min-height: 40vh;
  display: flex;
  align-items: center;
  color: #fff;
}
.home-banner .content {
  padding: 10vw 20px;
  text-align: center;
}
.home-banner .content h3 {
  font-size: 7vw;
}
.home-banner .content .desc {
  margin: 5vw 0 8vw;
  font-size: 4vw;
}
.home-banner .content .btn > a {
  padding: 3vw 10vw;
  font-size: 3.5vw;
  color: #fff;
  background-color: #000;
  border-radius: 10vw;
}
.home-banner figure {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.home-banner figure:before {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  content: "";
  background: linear-gradient(180deg, rgba(17, 18, 55, 0) 0%, rgba(17, 18, 55, 0.9) 100%);
}
.home-banner figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.analysis {
  display: flex;
  flex-wrap: wrap;
}
.analysis > li {
  position: relative;
  margin-top: 10vw;
  padding-left: 3vw;
  width: 50%;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.analysis > li:before {
  position: absolute;
  left: 0;
  top: 20%;
  width: 2px;
  height: 70%;
  content: "";
  background-color: #000;
  border-radius: 2px;
}
.analysis > li h4 {
  font-size: 7vw;
  line-height: 1.5;
}
.analysis > li .desc {
  font-size: 4vw;
  font-weight: 300;
  color: rgba(0, 0, 0, 0.7);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.gained-trust {
  font-size: 4vw;
}
.gained-trust > header {
  margin: 15vw 0 5vw;
  padding: 0 3vw;
  text-align: center;
  font-size: 4vw;
  line-height: 1.8;
}
.gained-trust > ul {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.gained-trust > ul > li {
  margin: 2vw 0;
  display: flex;
  align-items: center;
  color: #001729;
  padding-left: 10vw;
}
.gained-trust > ul > li .icon {
  margin-right: 3vw;
  width: 10vw;
  height: 10vw;
  line-height: 10vw;
  flex-shrink: 0;
  text-align: center;
  border-radius: 10vw;
  font-size: 10vw;
  color: #fff;
  font-family: "iconfont";
  background: #001729;
}
.production-video {
  margin-bottom: -30vw;
  height: 40vh;
  overflow: hidden;
}
.production-video video {
  margin: 0 auto;
  width: 100%;
  max-width: 100%;
  height: 100%;
  pointer-events: none;
  object-fit: cover;
}
.production-video img {
  max-width: 100%;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.production-list {
  display: flex;
  flex-wrap: wrap;
}
.production-list.gary li > a {
  border-color: rgba(141, 145, 154, 0.16);
  background: rgba(248, 248, 248, 0.7);
}
.production-list > li {
  margin-top: 5%;
  width: 50%;
  box-sizing: border-box;
}
.production-list > li:nth-of-type(odd) {
  padding-right: 2.5%;
}
.production-list > li:nth-of-type(even) {
  padding-left: 2.5%;
}
.production-list > li > a {
  padding: 8%;
  display: block;
  border-radius: 8%;
  border: 1px solid transparent;
  backdrop-filter: blur(40px);
  color: #000;
  text-align: center;
  font-size: 4vw;
  line-height: 1.5;
  box-sizing: border-box;
}
.production-list > li > a:hover {
  background: #fff;
  border-color: #000;
}
.production-list > li .title {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.production-list > li .desc {
  margin: 2vw 0;
  color: rgba(0, 0, 0, 0.5);
}
.service-wrap {
  padding: 10vw 0 10px;
  margin-right: -20px;
  overflow: auto;
}
.service-wrap .service-list {
  display: flex;
}
.service-wrap .service-list > li {
  margin-right: 5%;
  padding: 5% 5% 10%;
  position: relative;
  width: 85vw;
  flex-shrink: 0;
  border-radius: 10vw;
  height: 100vw;
  overflow: hidden;
  color: #fff;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  font-size: 4vw;
}
.service-wrap .service-list > li > figure {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.service-wrap .service-list > li > figure::before {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  content: "";
  background: rgba(1, 13, 21, 0.3);
  z-index: 1;
}
.service-wrap .service-list > li > figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.service-wrap .service-list > li .content {
  padding: 5% 10% 0 0;
}
.service-wrap .service-list > li .content .title {
  font-weight: 500;
  font-size: 6vw;
  white-space: nowrap;
}
.service-wrap .service-list > li .content .desc {
  margin-top: 5%;
  font-weight: 300;
  line-height: 1.5;
  text-shadow: 0px 1px 4px 0px rgba(0, 0, 0, 0.3);
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}
.service-wrap .service-list > li .tags-list {
  margin-bottom: 10vw;
}
.service-wrap .service-list > li .tags-list > li {
  margin: 2vw 0;
  display: flex;
  align-items: center;
}
.service-wrap .service-list > li .tags-list > li:before {
  margin-right: 2vw;
  width: 6vw;
  height: 6vw;
  line-height: 6vw;
  font-size: 6vw;
  border-radius: 50%;
  border: 1px solid #fff;
  content: "\e630";
  font-family: "iconfont";
}
.service-wrap .service-list > li .more-btn > a {
  padding: 1vw 5vw;
  color: #fff;
  border-radius: 10vw;
  border: 2px solid #fff;
}
.faq-list > li {
  margin: 5vw 0;
  font-size: 4vw;
  line-height: 1.5;
}
.faq-list > li .question {
  padding: 5%;
  background: rgba(255, 255, 255, 0.9);
  border: 0.5px solid rgba(141, 145, 154, 0.16);
  backdrop-filter: blur(15px);
  border-radius: 5vw;
  display: flex;
  align-items: center;
}
.faq-list > li .question:after {
  margin-left: 5vw;
  content: "+";
  font-size: 6vw;
  font-weight: 200;
}
.faq-list > li .answer {
  padding: 5% 5% 0;
  color: rgba(0, 0, 0, 0.5);
  max-height: 0;
  overflow: hidden;
}
.faq-list > li.expand .question:after {
  content: "-";
}
.faq-list > li.expand .answer {
  max-height: 500vw;
  transition: all 1s linear;
}
.intro-swiper-wrap {
  margin-right: -20px;
  overflow: auto;
  padding: 10vw 0 10px;
}
.intro-swiper-wrap .intro-swiper-list {
  display: flex;
}
.intro-swiper-wrap .intro-swiper-list > li {
  position: relative;
  flex-shrink: 0;
  width: 85vw;
  margin-right: 5%;
  height: 50vw;
  border-radius: 5vw;
  overflow: hidden;
  font-size: 4vw;
  line-height: 1.5;
}
.intro-swiper-wrap .intro-swiper-list > li > figure {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.intro-swiper-wrap .intro-swiper-list > li > figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.intro-swiper-wrap .intro-swiper-list > li .title {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 5%;
  box-sizing: border-box;
  color: #fff;
  background: linear-gradient(180deg, rgba(34, 34, 34, 0) 0%, rgba(34, 34, 34, 0.9) 100%);
}
.startup {
  position: relative;
  color: #fff;
  line-height: 1.5;
  text-align: center;
}
.startup .bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(37, 61, 104, 0.8);
  z-index: -1;
}
.startup .bg img,
.startup .bg video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  user-select: none;
}
.startup > .wrapper {
  position: relative;
  z-index: 1;
}
.startup h3 {
  font-size: 6vw;
}
.startup p {
  margin: 2vw 0 8vw;
  font-size: 4vw;
}
.startup .btn {
  line-height: 1;
}
.startup .btn > a {
  padding: 2vw 5vw;
  color: #fff;
  border-radius: 10vw;
  font-size: 4vw;
  border: 2px solid #fff;
}
.welcome {
  background: linear-gradient(180deg, #D4DFEB 0%, #FFFFFF 10%);
}
.welcome .innovation-experiment > li {
  margin-top: 10vw;
}
.welcome .site-header + .module {
  overflow: hidden;
}
.firstscreen .contact-flexbox {
  background-color: transparent;
}
.application-wrap {
  padding: 10vw 0 10px;
  margin-right: -20px;
  overflow: auto;
}
.application-wrap .application-list {
  display: flex;
  flex-wrap: nowrap;
}
.application-wrap .application-list > li {
  margin-right: 5vw;
  width: 80vw;
  flex-shrink: 0;
  color: #001729;
}
.application-wrap .application-list > li a {
  display: block;
  color: #001729;
}
.application-wrap .application-list > li figure {
  position: relative;
  width: 100%;
  height: 50vw;
  overflow: hidden;
  border-radius: 5vw;
}
.application-wrap .application-list > li figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.application-wrap .application-list > li figure figcaption {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 20vw 5vw 5vw;
  width: 100%;
  color: #fff;
  font-size: 5vw;
  box-sizing: border-box;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  background: linear-gradient(180deg, rgba(17, 18, 55, 0) 0%, rgba(17, 18, 55, 0.9) 100%);
}
.application-wrap .application-list > li .desc {
  margin-top: 5vw;
  font-size: 4vw;
  line-height: 1.5;
  font-weight: 300;
}
