﻿@keyframes mouseMove {
  0% {
    transform: translate(0, -5px);
  }
  50% {
    transform: translate(0, 5px);
  }
  100% {
    transform: translate(0, -5px);
  }
}

* {
  box-sizing: border-box;
}
img {
  max-width: 100%;
  height: auto;
}
::-webkit-scrollbar {
  width: 2px;
  height: 2px;
}
::-webkit-scrollbar-track-piece {
  background-color: rgba(0, 0, 0, 0.2);
  -webkit-border-radius: 6px;
}
::-webkit-scrollbar-thumb:vertical {
  height: 2px;
  background-color: rgba(27, 193, 98, 1);
  -webkit-border-radius: 6px;
}
::-webkit-scrollbar-thumb:horizontal {
  width: 2px;
  background-color: rgba(27, 193, 98, 1);
  -webkit-border-radius: 6px;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
sub,
sup,
tt,
var,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: normal;
  vertical-align: baseline;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
ol,
ul,
li {
  list-style: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
a {
  color: inherit;
  text-decoration: none;
  -webkit-backface-visibility: hidden;
}

.height100 {
  height: 100%;
  padding-top: 80px;
}
.hover-text {
  transition: color 0.3s;
}
.hover-text:hover {
  color: #1bc162 !important;
}
@font-face {
  font-family: 'AlimamaFangYuanTiVF';
  src: url('../font/AlimamaFangYuanTiVF-Thin.ttf');
}

html,
body {
  width: 100%;
  font-family: 'AlimamaFangYuanTiVF', 'Microsoft YaHei', '微软雅黑', sans-serif;
  font-size: 16px;
  box-sizing: border-box;
  overflow: hidden;
}
body {
  -webkit-text-size-adjust: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  
}
input,
button,
textarea,
select,
option {
  outline: none;
}

img {
  max-width: 100%;
}

.w-1400 {
  width: 90%;
  max-width: 1400px;
  margin: 0 auto;
}

.header {
  height: 80px;
  padding: 0 90px;
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  display: flex;
  align-items: center;
  z-index: 999;
  background: #fff;
  border-bottom: 1px solid rgba(27, 193, 98, 0.15);
  z-index: 9;
  transition: all 0.5s;
}

.header:hover .head-nav ul li {
  color: #262626 !important;
}
.header:hover {
  background: #fff !important;
}
.header:hover .menu {
  background: #1bc162 !important;
}
.header:hover .right {
  color: #1bc162 !important;
}
.header:hover svg {
  fill: #1bc162 !important;
}
.header:hover .head-nav .arrow {
  background: url(../image/down.png) no-repeat center right / 11px auto;
}
.header .head-nav > ul > li {
  position: relative;
  height: 80px;
  line-height: 80px;
}
.header .head-nav > ul > li a {
  padding-right: 20px;
}
.header .head-nav .arrow {
  background: url(../image/down.png) no-repeat center right / 11px auto;
}
.white .header .head-nav .arrow {
  background: url(../image/down-w.png) no-repeat center right / 11px auto;
}

.header .head-nav > ul > li:hover ul {
  opacity: 1;
  visibility: visible;
}
.header ul ul {
  position: absolute;
  top: 80px;
  left: -100px;
  width: 430px;
  background: #fff;
  border-top: 1px solid rgba(0, 0, 0, 0.05);
  padding: 0 20px;
  border-radius: 0px 0px 15px 15px;
  padding-top: 35px;
  padding-bottom: 60px;
  opacity: 0;
  visibility: hidden;
  transition: all 0.5s;
}
.header ul ul li {
  display: block;
  width: 100%;
  border-radius: 25px;
}
.header ul ul li a {
  display: flex;
  align-items: center;
  height: 50px;
  overflow: hidden;
  padding: 0 30px;
  background: url(../image/right.png) no-repeat center right 30px / 11px auto;
}
.header ul ul li:hover {
  background: rgba(27, 193, 98, 0.05) url(../image/right-g.png) no-repeat
    center right 30px / 11px auto;
}
.header ul ul li:hover p {
  color: #1bc162;
}
.header ul ul p,
.header ul ul span {
  line-height: 1em;
}
.header ul ul p {
  font-size: 16px;
  font-weight: 600;
  color: #000000;
  margin-right: 20px;
  padding-right: 20px;
  position: relative;
}
.header ul ul p::after {
  content: '';
  width: 3px;
  height: 3px;
  background: #cfcfcf;
  border-radius: 50%;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.header ul ul span {
  font-size: 14px;
  font-weight: 400;
  color: #666666;
}
.header .logo {
  display: block;
  width: 90px;
  height: 35px;
  position: absolute;
  left: 60px;
  top: 0;
  bottom: 0;
  margin: auto;
  color: #fff;
}
.header svg {
  fill: #1bc162;
}
.header .head-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.header .head-nav > ul {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.header .head-nav li {
  font-size: 16px;
  font-weight: normal;
  color: #262626;
  margin-right: 100px;
}
.header .head-nav li:last-child {
  margin-right: 0;
}

.header .right {
  font-size: 16px;
  font-weight: normal;
  color: #1bc162;
  position: relative;
  padding-right: 20px;
}
.header .right::after,
.header .right::before {
  content: '';
  position: absolute;
  right: 0;
  top: 3px;
  background: currentColor;
}
.header .right::after {
  width: 8px;
  height: 2px;
}
.header .right::before {
  width: 2px;
  height: 8px;
}

.header .menu .line:last-child {
  width: 20px;
}
.header .menu {
  cursor: pointer;
  height: 80px;
  width: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #1bc162;
  position: absolute;
  right: 0;
}
.header .menu .line {
  transition: transform 0.3s;
}
.header .menu.active .line {
  position: absolute;
  inset: 0;
  margin: auto;
}
.header .menu.active .line:nth-child(2) {
  display: none;
}
.header .menu.active .line:first-child {
  transform: rotate(45deg);
  transform-origin: center;
}
.header .menu.active .line:last-child {
  width: 30px;
  transform: rotate(-45deg);
  transform-origin: center;
}
.header .menu .line {
  width: 30px;
  height: 2px;
  background: #fff;
  margin: 5px 0;
}
.header .menu.active {
  background: transparent;
}
.header .menu.active .line {
  background: #000;
}

.home.swiper-container {
  height: 100vh;
  background: #404040;
}
.swiper-container .swiper-slide.footer-swiper {
  height: auto;
}
.swiper-right-bar {
  position: fixed;
  width: 100px;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 999;
  border-left: 1px solid rgba(27, 193, 98, 0.15);
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  justify-content: space-between;
  padding: 0 0 60px;
  pointer-events: none;
}

.swiper-right-bar .scroll p {
  font-size: 14px;
  font-weight: normal;
  color: #1bc162;
  margin-top: 20px;
}
.swiper-right-bar .scroll .img {
  border: 2px solid rgba(27, 193, 98, 0.3);
  width: 46px;
  height: 66px;
  border-radius: 40px;
  position: relative;
  margin: 0 auto;
}
.swiper-right-bar .scroll .img::after {
  content: '';
  width: 2px;
  height: 12px;
  background: #1bc162;
  position: absolute;
  inset: 0;
  margin: auto;
  transform: translate(0, -5px);
  animation: mouseMove 2s linear infinite;
}
.swiper-right-bar .scroll img {
  display: none;
}
.swiper-right-bar .home-bar {
  width: 30px;
  top: 50%;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
}
.swiper-right-bar .swiper-pagination-bullet::after {
  content: '';
  display: block;
  clear: both;
}
.swiper-right-bar .swiper-pagination-bullet {
  width: 15px;
  height: 1px;
  background: #1bc162;
  opacity: 0.5;
  float: right;
  margin-left: 20px !important;
  transition: width 0.3s;
}
.swiper-right-bar .swiper-pagination-bullet.swiper-pagination-bullet-active {
  width: 30px;
  opacity: 1;
}
.flex-layout {
  display: flex;
  align-items: center;
  height: 100%;
}
.white .head-nav ul li {
  color: #fff;
}
.white .header {
  border-bottom-color: rgba(255, 255, 255, 0.1);
  background: transparent;
}
.white .swiper-right-bar {
  border-left-color: rgba(255, 255, 255, 0.1);
}
.white .menu {
  background: transparent;
}
.white .swiper-right-bar .scroll p {
  color: #fff;
}
.white .swiper-right-bar .scroll .img {
  border-color: #fff;
}
.white .swiper-right-bar .scroll .img::after {
  background: #fff;
}
.white .header .right {
  color: #fff;
}

.white .header svg {
  fill: #fff;
}
.white .swiper-right-bar .swiper-pagination-bullet {
  background: #fff;
}
.home-title {
  max-width: 50%;
  position: relative;
  z-index: 2;
}
.home-title.white * {
  color: #fff;
}
.home-title p {
  font-size: 48px;
  font-weight: 600;
  color: #000000;
  margin-bottom: 25px;
}
.home-title span {
  font-size: 16px;
  color: #4d4d4d;
  line-height: 32px;
}

.home-title1 {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  position: relative;
  z-index: 2;
}
.home-title1.white * {
  color: #fff;
}
.home-title-child {
  width: 50%;
  text-align: center;
}
.home-title-child p {
  font-size: 48px;
  font-weight: 600;
  color: #000000;
  margin-bottom: 18px;
}
.home-title-child span {
  font-size: 16px;
  color: #4d4d4d;
  line-height: 24px;
}
.more-btn {
  width: 174px;
  line-height: 60px;
  border-radius: 100px;
  display: block;
  padding: 0 40px;
  color: #fff;
  cursor: pointer;
  background: #1bc162 url(../image/arrow-w.png) no-repeat center right 40px/ 11px;
}
.customer-container .swiper-wrapper {
  transition-timing-function: linear !important;
}
.footer,
.footer-swiper {
  background: #404040;
}
.footer .footer-line {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #fff;
  padding: 80px 0 60px 0;
}
.footer .line {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.footer .footer-line .text {
  font-size: 32px;
  font-weight: normal;
  color: #ffffff;
  line-height: 50px;
}
.footer .back {
  width: 66px;
  height: 66px;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  position: relative;
  cursor: pointer;
  backdrop-filter: blur(10px);
}
.footer .back::after,
.footer .back::before {
  content: '';
  width: 13px;
  height: 2px;
  background: #fff;
  display: block;
  position: absolute;
  top: 50%;
  left: calc(50% - 4px);
  transform: translate(-50%, -50%) rotate(-45deg);
}
.footer .back::before {
  left: calc(50% + 4px);
  transform: translate(-50%, -50%) rotate(45deg);
}
.footer .logo-box svg {
  width: 100px;
  height: 38px;
  fill: #fff;
}
.footer .footer-line2 {
  padding: 60px 0 170px 0;
  display: flex;
  justify-content: space-between;
}
.footer .logo-box svg {
  margin-bottom: 35px;
}
.footer .logo-box ul li {
  font-size: 14px;
  font-weight: normal;
  color: #ffffff;
  line-height: 36px;
}
.footer .nav-box p {
  font-size: 20px;
  font-weight: 600;
  color: #ffffff;
}
.footer .nav-box {
  display: flex;
  justify-content: space-between;
  margin-right: 60px;
}
.footer .nav-box .nav-ul {
  margin-left: 160px;
}
.footer .nav-box .nav-ul:first-child {
  margin-left: 0;
}
.footer .nav-box .nav-ul p {
  margin-bottom: 30px;
}
.footer .nav-box .nav-ul a {
  font-size: 14px;
  font-weight: normal;
  color: rgba(255, 255, 255, 0.8);
  line-height: 36px;
}

.footer .footer-icp {
  background: rgba(0, 0, 0, 0.1);
  font-size: 14px;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.5);
  line-height: 24px;
  padding: 18px 0;
}
.footer .footer-icp .w-1400 .right {
  float: right;
}
.footer .footer-icp br {
  display: none;
}
.mb {
  display: none;
}
.mb-menu {
  position: fixed;
  top: 60px;
  right: -100%;
  height: calc(100% - 60px);
  width: 90%;
  background: #fff;
  z-index: 2;
}
.mb-menu-bg {
  width: 100%;
  height: calc(100% - 60px);
  position: fixed;
  right: 0;
  top: 60px;
  opacity: 0;
  display: none;
  background: rgba(0, 0, 0, 0.5);
}
.mb-menu > ul {
  padding: 20px 30px;
}
.mb-menu > ul li a {
  font-size: 16px;
  padding: 15px 0;
  display: block;
  border-bottom: 1px solid #efefef;
}
.mb-menu > ul li ul a {
  padding-left: 30px;
}
.mb-menu > ul li a:has(+ ul) {
  background: url(../image/down.png) no-repeat center right / 12px auto;
}
.mb-menu > ul li a + ul {
  height: 0;
  overflow: hidden;
}
.pc-menu {
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: url(../image/img-1.jpg) no-repeat center / cover;
  z-index: 2;
  display: flex;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s;
}
.pc-menu.active {
  opacity: 1;
  visibility: visible;
}
.pc-menu .head-menu a {
  font-size: 16px;
  font-weight: normal;
  color: #000000;
  line-height: 42px;
}
.pc-menu .right-nav {
  width: 35%;
  margin-top: 80px;
  padding-top: 20vh;
  text-align: center;
  border-top: 1px solid rgba(178, 175, 176, 0.2);
}

.pc-menu ul:last-child {
  margin-right: 0;
}
.pc-menu ul p {
  font-size: 24px;
  color: #000000;
  margin-bottom: 35px;
  font-weight: 600;
}
.pc-menu .head-menu {
  display: flex;
  width: 65%;
  justify-content: center;
  margin-top: 80px;
  padding-top: 20vh;
  border-right: 1px solid rgba(178, 175, 176, 0.2);
  border-top: 1px solid rgba(178, 175, 176, 0.2);
}
.pc-menu .right-nav p {
  font-size: 16px;
  font-weight: 600;
  color: #000000;
}
.pc-menu .right-nav .tel {
  font-size: 48px;
  color: #000000;
  margin: 45px 0;
}
.pc-menu .right-nav .email {
  font-size: 16px;
  color: #000000;
}
.pc-menu .right-nav .btn {
  width: 174px;
  line-height: 59px;
  background: #1bc162 url(../image/arrow-w.png) no-repeat right 36px center /
    11px auto;
  border-radius: 30px;
  display: block;
  margin: 0 auto;
  color: #fff;
  margin-top: 40px;
}
.menu-act .header .right,
.menu-act .head-nav ul li {
  color: #000;
}
.menu-act .header svg {
  fill: #1bc162;
}
@media screen and (max-width: 1620px) {
  .w-1400 {
    width: 85%;
  }
}
@media screen and (max-width: 1440px) {
  .w-1400 {
    width: 85%;
  }
  .swiper-right-bar,
  .header .menu {
    width: 80px;
  }
  .header {
    padding: 0 70px;
  }
  .header .logo {
    left: 40px;
  }
}
@media screen and (max-width: 1366px) {
  .footer .footer-line2 {
    padding-bottom: 100px;
  }
}

@media screen and (max-width: 1355px) {
  .home-title {
    max-width: 60%;
  }
}

@media screen and (max-width: 1024px) {
  .header ul ul {
    position: static;
    padding-top: 0;
    padding-bottom: 0;
    opacity: 1;
    visibility: visible;
  }
  .home.swiper-container {
    background: transparent;
  }
  .w-1400 {
    padding: 0 20px;
    width: 100%;
  }
  .header .logo {
    left: 30px;
  }
  .height100,
  .home > .swiper-wrapper,
  .home.swiper-container {
    height: auto;
  }
  .height100 {
    padding-top: 0;
  }
  .home > .swiper-wrapper {
    display: block;
  }
  html,
  body {
    overflow: auto;
  }
  .header .head-nav,
  .swiper-right-bar {
    display: none;
  }
  .home-title {
    padding-top: 60px;
    max-width: 100%;
  }
  .home-title p {
    font-size: 24px;
  }
  .home-title span {
    font-size: 14px;
    line-height: 26px;
  }
  .footer .nav-box,
  .footer .footer-line {
    display: none;
  }
  .mb {
    display: block;
  }
  .footer .back {
    width: 46px;
    height: 46px;
  }
  .footer .back::after,
  .footer .back::before {
    width: 8px;
    left: calc(50% - 2px);
  }
  .footer .back::before {
    left: calc(50% + 2px);
  }
  .footer .footer-line2 {
    padding: 40px 0;
  }
  .footer .footer-icp {
    background: transparent;
    line-height: 24px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
  }
  .footer .footer-icp br {
    display: block;
  }
  .header {
    height: 60px;
  }
  .header .menu {
    width: 60px;
    height: 60px;
  }
  .header .logo {
    width: 80px;
  }
  .home-title-child {
    width: 100%;
    margin-top: 60px;
    padding: 0 20px;
    text-align: left;
  }
  .home-title-child p {
    font-size: 24px;
  }
  .home-title-child span {
    font-size: 14px;
  }
  .service-swiper .swiper-pagination-box {
    gap: 30px !important;
  }
  .service-swiper-btn {
    display: none;
  }

  .service-swiper .swiper-slide .swiper-slide-text-box {
    left: 0px !important;
    top: 20px !important;
    padding: 20px;
  }
  .serviceBox .service-swiper .swiper-slide {
    height: 300px;
  }
}