body {
  background: #F0F2F5
}

.banner {
  position: relative;
  border-radius: 10px;
  overflow: hidden;
  margin: 0 2.08333vw
}

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

.banner .t {
  position: absolute;
  left: 3.64583vw;
  bottom: 2.34375vw;
  color: white;
  font-weight: 700;
  line-height: 1.2;
  text-transform: capitalize
}

.common_bg {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1
}

.animate_text p .chars {
  opacity: 0.12;
  display: inline-block
}

.about1 {
  padding: 4.42708vw 5.72917vw 5.46875vw 5.72917vw;
  display: flex;
  justify-content: space-between
}

.about1 .title {
  color: #27265F;
  font-style: normal;
  font-weight: 700;
  line-height: 120%;
  text-transform: capitalize
}

.about1 .r {
  width: 61.25vw
}

.about1 .r .text {
  color: #000;
  font-style: normal;
  font-weight: 400;
  line-height: 150%
}

.about1 .r .text p {
  margin: .52083vw 0
}

.about2 {
  height: 100vh;
  position: relative;
  z-index: 1;
  padding: 4.6875vw 5.72917vw
}

.about2 .swiper-pagination {
  right: 5.72917vw;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  left: unset;
  width: .10417vw;
  height: 15.625vw;
  background: rgba(255, 255, 255, 0.2)
}

.about2 .swiper-pagination span {
  background: #fff
}

.about2 .wrap .title {
  color: #FFF;
  font-style: normal;
  font-weight: 700
}

.about2 .wrap .content {
  display: flex;
  margin: 3.75vw 0 0 0
}

.about2 .wrap .content .yearSwiper {
  width: 44.6875vw;
  margin: 0 0 0 2.76042vw;
  height: 29.375vw
}

.about2 .wrap .content .yearSwiper .swiper-slide {
  cursor: pointer
}

.about2 .wrap .content .yearSwiper .swiper-slide .item .p1 {
  color: #FFF;
  font-style: normal;
  font-weight: 700;
  margin: 0 0 .72917vw;
  transition: all 600ms
}

.about2 .wrap .content .yearSwiper .swiper-slide .item .p2 {
  margin: .72917vw 0 0;
  color: #FFF;
  font-size: 1.04167vw;
  font-style: normal;
  font-weight: 700;
  transition: all 600ms;
  line-height: 100%
}

.about2 .wrap .content .yearSwiper .swiper-slide-active .item .p1 {
  transform: scale(1.2) translateX(3.75vw)
}

.about2 .wrap .content .yearSwiper .swiper-slide-active .item .p2 {
  transform: scale(1.2) translateX(3.75vw)
}

.about2 .wrap .content .left .leftSwiper {
  width: 5.20833vw;
  height: 29.375vw;
  position: relative
}

.about2 .wrap .content .left .leftSwiper:after {
  content: '';
  position: absolute;
  width: 1px;
  height: 28.17708vw;
  top: .78125vw;
  right: 1.09375vw;
  z-index: -1;
  background: rgba(255, 255, 255, 0.4)
}

.about2 .wrap .content .left .leftSwiper .swiper-slide {
  cursor: pointer
}

.about2 .wrap .content .left .leftSwiper .swiper-slide .item {
  display: flex;
  align-items: center;
  gap: .625vw
}

.about2 .wrap .content .left .leftSwiper .swiper-slide .item .year {
  color: #FFF;
  font-style: normal;
  font-weight: 700
}

.about2 .wrap .content .left .leftSwiper .swiper-slide .item .circle {
  width: .52083vw;
  height: .52083vw;
  border-radius: 50%;
  background: #fff
}

.about3 {
  padding: 5.20833vw 5.72917vw;
  background: #FAFAFA
}

.about3 .title {
  color: #27265F;
  font-style: normal;
  font-weight: 700;
  text-transform: capitalize;
  margin: 0 0 4.0625vw
}

.about3 .content {
  position: relative;
  width: 82.08333vw;
  margin: auto
}

.about3 .content .map {
  width: 100%
}

.about3 .content .position {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 2;
  pointer-events: none
}

@keyframes scaleA {
  100% {
    transform: translate(-50%, -50%) scale(2.5);
    opacity: 0
  }
}

.about3 .content .position .point {
  pointer-events: auto;
  position: absolute;
  cursor: pointer
}

.about3 .content .position .point.point1 {
  top: 9.375vw;
  left: 13.02083vw
}

.about3 .content .position .point.point2 {
  top: 8.28125vw;
  right: 14.58333vw
}

.about3 .content .position .point.point3 {
  top: 16.51042vw;
  right: 16.66667vw
}

.about3 .content .position .point.point4 {
  top: 19.58333vw;
  right: 7.55208vw
}

.about3 .content .position .point.point5 {
  top: 23.59375vw;
  right: 15.625vw
}

.about3 .content .position .point:hover .show {
  opacity: 0;
  pointer-events: none;
  transition: unset
}

.about3 .content .position .point:hover .hide {
  opacity: 1;
  pointer-events: auto
}

.about3 .content .position .point .circle {
  width: .72917vw;
  height: .72917vw;
  border-radius: 50%;
  background: #27265F;
  position: relative;
  z-index: 1
}

.about3 .content .position .point .circle:after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #27265F;
  opacity: .5;
  z-index: -1;
  border-radius: inherit;
  animation: scaleA 1s linear infinite;
  pointer-events: none
}

.about3 .content .position .point .show {
  width: max-content;
  height: 3.125vw;
  position: absolute;
  left: 50%;
  transform: translate(-50%, -1.5625vw);
  bottom: 0;
  border-radius: .52083vw;
  background: #FFF;
  box-shadow: 0 4px 20px rgba(96, 4, 4, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 1.71875vw;
  z-index: 5;
  transition: .6s ease
}

.about3 .content .position .point .show svg {
  width: 1.19792vw;
  height: 1.19792vw;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -15px
}

.about3 .content .position .point .hide {
  position: absolute;
  left: 50%;
  transform: translate(-50%, -1.5625vw);
  bottom: 0;
  border-radius: 10px;
  background: #FFF;
  box-shadow: 0 4px 20px rgba(96, 4, 4, 0.2);
  padding: 1.30208vw 1.71875vw 1.77083vw 1.25vw;
  z-index: 5;
  width: max-content;
  opacity: 0;
  transition: .6s ease;
  pointer-events: none
}

.about3 .content .position .point .hide svg {
  width: 1.19792vw;
  height: 1.19792vw;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -.78125vw
}

.about3 .content .position .point .hide .up {
  display: flex;
  align-items: flex-end;
  gap: 2.08333vw
}

.about3 .content .position .point .hide .up .dis {
  display: flex;
  align-items: center;
  gap: .625vw
}

.about3 .content .position .point .hide .up .dis .img {
  width: 1.45833vw;
  height: 1.09375vw;
  display: flex;
  align-items: center;
  justify-content: center
}

.about3 .content .position .point .hide .up .dis .img img {
  object-fit: contain
}

.about3 .content .position .point .hide .up .dis p {
  color: #27265F;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  white-space: nowrap
}

.about3 .content .position .point .hide .up .icon {
  display: flex;
  gap: .52083vw
}

.about3 .content .position .point .hide .up .icon img {
  width: 2.08333vw;
  height: 2.08333vw
}

.about3 .content .position .point .hide .down {
  margin: 1.45833vw 0 0 2.08333vw;
  color: #333;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.48px
}

.about3 .content .position2 {
  position: absolute;
  left: -3.28125vw;
  bottom: 0;
  z-index: 2
}

.about3 .content .position2 .list {
  display: flex;
  align-items: center;
  gap: 1.04167vw
}

.about3 .content .position2 .list:not(:last-child) {
  margin: 0 0 1.5625vw
}

.about3 .content .position2 .list .img {
  width: 4.16667vw;
  height: 4.16667vw
}

.about3 .content .position2 .list .img img {
  width: 100%
}

.about3 .content .position2 .list p {
  color: #666;
  font-style: normal;
  font-weight: 500;
  line-height: normal
}

.about4 {
  background: #F0F2F5;
  padding: 5.20833vw 5.72917vw 6.25vw 5.72917vw;
  position: relative;
  z-index: 1;
  overflow: hidden
}

.about4 .title {
  font-weight: bold;
  color: #27265F;
  font-style: normal;
  text-transform: capitalize
}

.about4 .content {
  margin: 4.375vw 0 0 0
}

.about4 .content .honorSwiper {
  width: 94.27083vw;
  margin: 0
}

.about4 .content .honorSwiper .swiper-slide .item {
  width: 100%;
  border-radius: .48307vw;
  background: #FFF;
  padding: .83333vw 1.14583vw
}

.about4 .content .honorSwiper .swiper-slide .item .img {
  width: 100%;
  height: 22.60417vw
}

.about4 .content .honorSwiper .swiper-slide .item .img:hover img {
  transform: scale(1.05)
}

.about4 .content .honorSwiper .swiper-slide .item .img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: .6s ease
}

.about4 .content .honorSwiper .swiper-slide .item .text {
  border-top: 1px dashed rgba(255, 150, 0, 0.6);
  margin: .88542vw 0 0 0;
  padding: .88542vw 0 0 0;
  color: #333;
  text-align: center;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  text-transform: capitalize
}

.about5 {
  height: 100vh
}

.about5 .fix {
  height: 100vh;
  position: sticky;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: center
}

.about5 .fix .title {
  color: #27265F;
  font-style: normal;
  font-weight: 700;
  text-align: center
}

.about5 .fix .content {
  margin: 2.60417vw auto 0;
  width: 88.54167vw;
  position: relative
}

.about5 .fix .content .matter {
  width: 100%
}

.about5 .fix .content .matter:not(:first-child) {
  position: absolute;
  top: 0;
  left: 0;
  transform: translateY(100vh)
}

.about5 .fix .content .matter .joke {
  height: 32.8125vw;
  position: relative;
  transform-origin: top;
  transition: .6s ease
}

.about5 .fix .content .matter .joke .img {
  width: 100%;
  height: 100%;
  border-radius: .52083vw;
  overflow: hidden
}

.about5 .fix .content .matter .joke .img img {
  width: 100%;
  height: 100%;
  transition: .6s ease
}

.about5 .fix .content .matter .joke .position {
  width: 41.66667vw;
  position: absolute;
  left: 1.66667vw;
  bottom: 1.5625vw;
  z-index: 2;
  border-radius: 1.5625vw;
  background: #FFF;
  padding: 1.25vw 1.45833vw
}

.about5 .fix .content .matter .joke .position .p1 {
  color: #27265F;
  font-style: normal;
  font-weight: 500;
  line-height: normal
}

.about5 .fix .content .matter .joke .position .text {
  margin: .72917vw 0 0 0;
  color: #333;
  font-style: normal;
  font-weight: 400;
  line-height: 150%
}

@media screen and (max-width: 768px) {
  .banner {
    margin: 0 5%
  }

  .banner img {
    height: 200px
  }

  .banner .t {
    left: 20px;
    bottom: 20px;
    font-size: 24px
  }

  .animate_text p .chars {
    opacity: 1 !important
  }

  .about1 {
    padding: 30px 5%;
    flex-direction: column;
    gap: 0px
  }

  .about1 .r {
    width: 100% !important
  }

  .about2 {
    padding: 60px 5%;
    overflow: hidden;
    height: auto
  }

  .about2 .swiper-pagination {
    left: 50%;
    transform: translateX(-50%);
    right: 0;
    width: 90%;
    height: 2px;
    display: none
  }

  .about2 .wrap .content {
    width: 95vw;
    margin: 30px 0 0 0
  }

  .about2 .wrap .content .left {
    display: none
  }

  .about2 .wrap .content .yearSwiper {
    width: 100%;
    height: auto;
    margin: 0
  }

  .about2 .wrap .content .yearSwiper .swiper-slide .item .p1 {
    margin: 0 0 20px;
    transform: none !important
  }

  .about2 .wrap .content .yearSwiper .swiper-slide .item .p2 {
    font-size: 14px;
    line-height: 22px;
    transform: none !important
  }

  .about3 {
    padding: 50px 5%
  }

  .about3 .content {
    margin: 50px 0 0 0
  }

  .about3 .content .position .point .hide {
    display: none !important
  }

  .about3 .content .position .point .circle {
    width: 10px;
    height: 10px
  }

  .about3 .content .position .point .show {
    font-size: 9px;
    height: auto;
    padding: 10px 4px;
    border-radius: 10px;
    transform: translate(-50%, 0);
    background: transparent;
    box-shadow: none
  }

  .about3 .content .position .point .show svg {
    display: none
  }

  .about3 .content .position2 {
    position: static;
    left: 0;
    margin: 20px 0 0 0
  }

  .about3 .content .position2 .list {
    gap: 10px
  }

  .about3 .content .position2 .list .img {
    width: 30px;
    height: 30px
  }

  .about4 {
    padding: 30px 5%
  }

  .about4 .content {
    margin: 30px 0 0 0
  }

  .about4 .content .honorSwiper {
    width: 95vw
  }

  .about4 .content .honorSwiper .swiper-slide .item {
    padding: 20px
  }

  .about4 .content .honorSwiper .swiper-slide .item .img {
    height: auto
  }

  .about4 .content .honorSwiper .swiper-slide .item .text {
    padding: 20px 0 0 0;
    margin: 20px 0 0 0
  }

  .about5 {
    height: auto !important;
    padding: 30px 0 0 0
  }

  .about5 .fix {
    height: auto
  }

  .about5 .fix .wrap .content {
    width: 90%;
    margin: 30px auto 0
  }

  .about5 .fix .wrap .content .matter {
    position: relative !important;
    transform: none !important;
    border-radius: 10px;
    overflow: hidden
  }

  .about5 .fix .wrap .content .matter:not(:last-child) {
    margin: 0 0 30px
  }

  .about5 .fix .wrap .content .matter .joke {
    height: auto;
    background: #fff
  }

  .about5 .fix .wrap .content .matter .joke .img {
    border-radius: 10px
  }

  .about5 .fix .wrap .content .matter .joke .position {
    position: static;
    width: 100%;
    border-radius: 0;
    padding: 15px
  }

  .about5 .fix .wrap .content .matter .joke .position .p1 {
    margin: 0 0 10px;
    font-size: 16px
  }

  .about5 .fix .wrap .content .matter .joke .position .text {
    margin: 0;
    font-size: 14px
  }
}