body {
  background: #011118
}

.banner {
  position: relative
}

.banner img {
  width: 100%;
  display: block;
  object-fit: cover
}

.banner .text {
  position: absolute;
  left: 0;
  top: 14.58333vw;
  width: 100%;
  color: white;
  padding: 0 8.33333vw
}

.banner .text .t {
  line-height: 1.5;
  font-weight: 300;
  margin-bottom: .83333vw
}

.banner .text .des {
  color: #FFF;
  font-weight: 400;
  line-height: 150%
}

.sec1 {
  padding: 5.10417vw 0 0;
  position: relative;
  z-index: 5;
  text-align: center
}

.sec1 .wave {
  position: absolute;
  left: 0;
  width: 100%;
  z-index: -1;
  top: -7.29167vw;
  display: none;
}

.sec1 .title {
  color: #FFF;
  font-weight: 400;
  line-height: 150%
}

.sec1 .p {
  color: #FFF;
  font-weight: 400;
  line-height: 150%;
  margin: 1.5625vw 0
}

.sec1 .h5 {
  color: #FFF;
  font-weight: 300;
  line-height: 150%
}

.sec1 .img {
  width: 100%;
  height: 27.65625vw;
  overflow: hidden;
  margin: 3.02083vw 0 0
}

.sec1 .img img {
  display: block;
  width: 100%;
  object-fit: cover
}

.sec2 {
  padding: 4.375vw 11.45833vw 8.75vw 8.33333vw;
  display: flex;
  justify-content: space-between;
  align-items: flex-start
}

.sec2 .h5 {
  color: #FFF;
  font-weight: 300
}

.sec2 .p {
  width: 28.125vw;
  color: #FFF;
  font-weight: 400;
  line-height: 150%
}

.sec3 {
  padding: 0 2.44792vw 0 2.29167vw
}

.sec3 .title {
  padding: 0 5.9375vw;
  color: #FFF;
  font-weight: 300;
  line-height: 150%;
  margin-bottom: 3.69792vw
}

.sec3 .list {
  width: 100%
}

.sec3 .list .item {
  width: 100%;
  padding: 2.34375vw 6.19792vw;
  display: flex;
  align-items: center;
  gap: 5.98958vw;
  transition: 0.6s;
  border-top: .05208vw solid #404040;
  cursor: pointer
}

.sec3 .list .item:nth-last-child(1) {
  border-bottom: .05208vw solid #404040
}

.sec3 .list .item.item_active {
  padding: 5.9375vw 6.19792vw
}

.sec3 .list .item.item_active .icon {
  transform: scale(1.6667)
}

.sec3 .list .item.item_active .item_box .block {
  font-weight: 700
}

.sec3 .list .item .icon {
  width: 3.125vw;
  height: 3.125vw;
  transition: 0.6s
}

.sec3 .list .item .icon img {
  display: block;
  width: 100%
}

.sec3 .list .item .item_box {
  width: 70%
}

.sec3 .list .item .item_box .block {
  color: #FFF;
  font-weight: 300;
  line-height: 150%;
  letter-spacing: .25vw;
  transition: 0.6s
}

.sec3 .list .item .item_box .p {
  color: #FFF;
  font-weight: 400;
  line-height: 150%;
  padding: 1.5625vw 0 0;
  display: none
}

.sec4 {
  padding: 4.32292vw 8.33333vw 7.29167vw
}

.sec4 .title {
  color: #FFF;
  font-weight: 300;
  line-height: 150%;
  margin-bottom: 1.82292vw
}

.sec4 .list {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2.08333vw 2.76042vw
}

.sec4 .list .item .item_box {
  width: 100%;
  padding: 0 0 1.30208vw;
  cursor: pointer;
  transition: 0.8s;
  box-shadow: 0 .22917vw .6875vw 0 rgba(220, 223, 224, 0)
}

.sec4 .list .item .item_box .img {
  height: 18.75vw;
  width: 100%;
  overflow: hidden
}

.sec4 .list .item .item_box .img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover
}

.sec4 .list .item .item_box .name {
  color: #FFF;
  font-weight: 400;
  line-height: 150%;
  padding: 0 .26042vw
}

.sec4 .list .item .item_box .p {
  color: #DCDFE0;
  font-weight: 400;
  line-height: 150%;
  margin: .41667vw 0 0;
  padding: 0 .26042vw
}

.sec4 .list .item .item_box:hover {
  transform: scale(1.08);
  box-shadow: 0 .22917vw .6875vw 0 rgba(220, 223, 224, 0.4)
}

.sec4 .page {
  display: flex;
  justify-content: flex-end;
  gap: 3.64583vw;
  margin: 4.32292vw 0 0
}

.sec4 .page .jt {
  width: 1.19792vw;
  cursor: pointer
}

.sec4 .page .jt svg {
  display: block;
  width: 100%;
  height: auto
}

.sec4 .page .jt svg path {
  stroke-width: 1px;
  stroke: #FFF;
  transition: 0.6s
}

.sec4 .page .jt:hover svg path {
  fill: transparent
}

.fixed {
  width: 100%;
  height: 100vh;
  position: fixed;
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0;
  left: 0;
  opacity: 0;
  pointer-events: none;
  transition: .6s
}

.fixed.show {
  opacity: 1;
  pointer-events: auto
}

.fixed .fixed_shadow {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(.10417vw);
  cursor: pointer
}

.fixed .fixed_box {
  width: 61.71875vw;
  height: 34.375vw;
  background: #01090D;
  position: relative;
  display: flex;
  align-items: center;
  gap: 2.55208vw
}

.fixed .fixed_box .close {
  position: absolute;
  top: 2.39583vw;
  right: 3.54167vw;
  cursor: pointer;
  width: 1.82292vw;
  transition: 0.6s
}

.fixed .fixed_box .close svg {
  display: block;
  width: 100%;
  height: auto
}

.fixed .fixed_box .close svg rect,
.fixed .fixed_box .close svg line {
  transition: 0.6s
}

.fixed .fixed_box .r_box {
  width: 27.44792vw
}

.fixed .fixed_box .r_box .name {
  color: #FFF;
  font-weight: 400;
  line-height: 150%
}

.fixed .fixed_box .r_box .position {
  color: #FFF;
  font-weight: 400;
  line-height: 150%;
  margin: 1.04167vw 0
}

.fixed .fixed_box .r_box .des {
  color: #FFF;
  font-weight: 400;
  line-height: 150%;
  max-height: 13.125vw;
  overflow-y: auto
}

.fixed .fixed_box .img {
  width: 25.3125vw;
  height: 100%
}

.fixed .fixed_box .img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover
}

@media screen and (max-width: 768px) {
  .banner {
    margin-top: 60px
  }

  .banner img {
    height: 200px
  }

  .banner .text {
    top: 50%;
    transform: translateY(-50%);
    padding: 0 5%
  }

  .banner .text .t {
    font-size: 24px;
    line-height: 1.5;
    margin-bottom: 10px
  }

  .sec1 {
    padding: 50px 0
  }

  .sec1 .wave {
    top: -28px
  }

  .sec1 .title {
    font-size: 24px;
    padding: 0 5vw
  }

  .sec1 .p {
    font-size: 16px;
    margin: 20px 0;
    padding: 0 5vw
  }

  .sec1 .h5 {
    font-size: 20px;
    padding: 0 5vw
  }

  .sec1 .img {
    margin: 25px 0 0;
    height: 50vw
  }

  .sec2 {
    padding: 10px 5vw 40px;
    display: block
  }

  .sec2 .title {
    font-size: 24px
  }

  .sec2 .p {
    font-size: 16px;
    width: 100%;
    margin: 25px 0 0
  }

  .sec3 {
    padding: 0 5vw
  }

  .sec3 .title {
    padding: 40px 0 25px;
    font-size: 24px;
    margin: 0
  }

  .sec3 .list .item {
    padding: 20px 0 !important;
    gap: 20px
  }

  .sec3 .list .item .icon {
    width: 40px;
    height: 40px
  }

  .sec3 .list .item .item_box {
    width: calc(100% - 60px)
  }

  .sec3 .list .item .item_box .block {
    font-size: 20px
  }

  .sec3 .list .item .item_box .p {
    padding: 15px 0 0;
    font-size: 15px
  }

  .sec4 {
    padding: 50px 5vw;
    overflow: hidden
  }

  .sec4 .title {
    font-size: 24px;
    margin-bottom: 25px
  }

  .sec4 .list {
    display: none
  }

  .sec4 .swiper {
    display: block !important
  }

  .sec4 .swiper .swiper-slide .item {
    width: 100%;
    padding: 0 0 15px
  }

  .sec4 .swiper .swiper-slide .item .img {
    height: 70vw;
    width: 100%;
    overflow: hidden
  }

  .sec4 .swiper .swiper-slide .item .img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover
  }

  .sec4 .swiper .swiper-slide .item .name {
    color: #FFF;
    font-weight: 400;
    line-height: 150%;
    padding: 0 5px;
    font-size: 18px
  }

  .sec4 .swiper .swiper-slide .item .p {
    color: #DCDFE0;
    font-weight: 400;
    line-height: 150%;
    margin: 8px 0 0;
    padding: 0 5px;
    font-size: 15px
  }

  .sec4 .page {
    margin: 30px 0 0;
    gap: 20px
  }

  .sec4 .page .jt {
    width: 14px
  }

  .fixed .fixed_box {
    width: 80vw;
    height: auto;
    display: block
  }

  .fixed .fixed_box .close {
    width: 24px;
    top: -40px;
    right: 0
  }

  .fixed .fixed_box .img {
    width: 100%;
    height: 70vw
  }

  .fixed .fixed_box .r_box {
    padding: 20px;
    width: 100%
  }

  .fixed .fixed_box .r_box .name {
    font-size: 18px
  }

  .fixed .fixed_box .r_box .position {
    font-size: 15px;
    margin: 10px 0
  }

  .fixed .fixed_box .r_box .des {
    font-size: 14px;
    max-height: 50vw
  }
}