.about_banner {
  padding: 15.3125rem 0 22.1875rem;
  background: url(../img/about-banner.jpg) no-repeat center / cover;
  position: relative;
  padding-top: 60px;
  padding-bottom: 150px;
}

.about_banner strong {
  display: inline-block;
  padding-left: 6.875rem;
  position: absolute;
  color: #fff;
  font-weight: 300;
  left: 50%;
  bottom: 8.125rem;
  transform: translateX(-50%) rotate(90deg);
}

.about_banner strong::after {
  content: "";
  display: block;
  width: 5.625rem;
  height: 1px;
  background-color: #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}

.about_banner .head {
  width: 60%;
  margin: 0 auto;
  text-align: center;
}

.about_banner .head h1 {
  font-size: 4.375rem;
  line-height: 4.9rem;
  padding-top: 1.25rem;
}

.about_banner .head p {
  width: 65%;
  margin: 0 auto;
  color: #fff;
  font-size: 1.0625rem;
  font-weight: 300;
  padding-top: 1.5625rem;
}

.about_about {
  padding: 3rem 0;
}

.about_about .head div:first-child {
  flex: 1;
  padding-right: 5.625rem;
}

.about_about .head div:first-child img {
  margin-top: 2.1875rem;
}
.about_about .head {
  margin-bottom: 1rem;
}

.about_about .head div.img {
  width: 50%;
  padding-top: 0;
}

.about_about .head div.img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin-top: 0;
  object-position: top;
}

.about_about .head div p span {
  color: inherit;
}

.about_about .head div:last-child .button {
  display: inline-block;
  margin-top: 2rem;
  padding: 1rem;
}

.about_about .main {
  position: relative;
  /*padding-top: 48.25rem;*/
}

.about_about .main .video {
  width: 100%;
  height: 43.25rem;
  position: absolute;
  top: 5.625rem;
  right: 0;
}

.about_about .main .video video,
.about_about .main .video iframe {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.about_about .main .nums {
  height: 14.375rem;
}

.about_about .main .nums ul {
  height: 100%;
}

.about_about .main .nums ul li {
  flex: 1;
  text-align: center;
}

.about_about .main .nums ul li span {
  font-size: 3.25rem;
  font-weight: 600;
  color: var(--theme_color);
}

.about_about .main .nums ul li p {
  padding-top: 0.75rem;
  font-size: 1.125rem;
  color: #1c232f;
  font-weight: 300;
}

.about_history {
  padding: 6.5625rem 0 7.1875rem;
  overflow: hidden;
  background: url(../img/about-his-bg.jpg) no-repeat center / cover;
}

.about_history .head {
  text-align: center;
}

.about_history .head h2 {
  color: #fff;
}

.about_history .head ul {
  width: 56.875rem;
  height: 0.625rem;
  border-radius: 0.3125rem;
  background-color: #363642;
  position: relative;
  margin: 3.4375rem auto 5.625rem;
}

.about_history .head ul .line {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  background-color: var(--theme_color);
  transition: all 0.3;
  width: 0;
  border-radius: 0.3125rem;
}

.about_history .head ul li:not(.line) {
  flex: 1;
  color: #fff;
  font-size: 0.9375rem;
  position: relative;
  padding-top: 1.5625rem;
  transition: all 0.3s;
  cursor: pointer;
  margin: 0 1rem;
}

.about_history .head ul li:not(.line).active {
  font-size: 1.125rem;
}

.about_history .head ul li:not(.line).active::after {
  top: -3px;
  width: 1rem;
  height: 1rem;
  background-color: var(--theme_color);
  border: 2px solid #fff;
}

.about_history .head ul li:not(.line)::after {
  content: "";
  display: block;
  width: 0.625rem;
  height: 0.625rem;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.5);
  box-sizing: border-box;
  transition: all 0.3s;
  border: 2px solid transparent;
}

.about_history .about_history_swiper {
  max-width: 58.5rem;
  margin: 0 auto;
}

.about_history .about_history_swiper .swiper-slide {
  transition: all 0.3s;
  transform: scale(0.752);
}

.about_history .about_history_swiper .swiper-slide.swiper-slide-active {
  transform: scale(1);
}

.about_history .about_history_swiper .swiper-slide.swiper-slide-active .info {
  opacity: 1;
}

.about_history .about_history_swiper .swiper-slide .img {
  width: 100%;
  height: 31rem;
  border-radius: 5px;
  overflow: hidden;
}

.about_history .about_history_swiper .swiper-slide .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.about_history .about_history_swiper .swiper-slide .info {
  padding-top: 1rem;
  display: flex;
  opacity: 0;
  transition: all 0.3s;
}

.about_history .about_history_swiper .swiper-slide .info span {
  font-size: 3.5rem;
  font-weight: 500;
  color: var(--theme_color);
}

.about_history .about_history_swiper .swiper-slide .info div {
  padding-left: 1.875rem;
  padding-top: 1.125rem;
}

.about_history .about_history_swiper .swiper-slide .info h3 {
  color: #fff;
  font-size: 1.5rem;
  font-weight: 500;
  margin-bottom: 0.75rem;
}

.about_history .about_history_swiper .swiper-slide .info p {
  font-size: 0.9375rem;
  color: #fff;
  font-weight: 200;
}

.about_factory {
  overflow: hidden;
  padding: 3rem 0;
}

.about_factory .head {
  text-align: center;
  margin-bottom: 2.5rem;
}

.about_factory .head h2 {
  padding-top: 1.5rem;
}

.about_factory .main {
  position: relative;
  height: 34rem;
}

.about_factory .main .nav {
  padding-top: 2.5rem;
  width: 27.5rem;
}

.about_factory .main .nav ul {
  padding-bottom: 0.625rem;
  border-left: 1px solid rgba(0, 0, 0, 0.1);
}

.about_factory .main .nav ul li {
  padding: 0 5.625rem 0 2.1875rem;
  position: relative;
  left: -2px;
  border-left: 3px solid transparent;
  transition: all 0.3s;
  margin-bottom: 1.75rem;
}

.about_factory .main .nav ul li:last-child {
  margin-bottom: 0;
}

.about_factory .main .nav ul li.active,
.about_factory .main .nav ul li:hover {
  border-color: var(--theme_color);
}

.about_factory .main .nav ul li.active h3,
.about_factory .main .nav ul li:hover h3 {
  color: #1c232f;
}

.about_factory .main .nav h3 {
  font-size: 1.5rem;
  color: #878787;
  font-weight: 500;
  transition: all 0.3s;
  cursor: pointer;
}

.about_factory .main .nav p {
  display: none;
  margin-top: 0.9375rem;
  font-size: 1rem;
  color: gray;
  line-height: 1.5625rem;
  word-break: break-all;
}

.about_factory .main .swiper_box {
  width: 78.125rem;
  height: auto;
  position: absolute;
  left: 26.5625rem;
  top: 0;
  padding: 0 0 3.125rem 0.9375rem;
  overflow: hidden;
}

.about_factory .main .about_factory_swiper {
  height: 100%;
  width: 48.625rem;
  position: relative;
}

.about_factory .main .about_factory_swiper ul li {
  overflow: hidden;
  border-radius: 4px;
  transition: all 0.3s;
  transform: scale(0.8);
  opacity: 0.8;
}

.about_factory .main .about_factory_swiper ul li.swiper-slide-active {
  transform: scale(1);
  opacity: 1;
}

.about_factory .main .about_factory_swiper ul li img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.about_factory .main .about_factory_swiper .swiper-pagination {
  bottom: -3.125rem;
  z-index: 2;
}

.about_factory
  .main
  .about_factory_swiper
  .swiper-pagination
  .swiper-pagination-bullet {
  width: 1.875rem;
  height: 0.125rem;
  background-color: var(--theme_color);
}

.about_certification {
  overflow: hidden;
  padding: 4rem 0;
  background: url(../img/about-cer-bg.svg) no-repeat center / cover;
}

.about_certification .head {
  padding-top: 5.625rem;
  width: 26.875rem;
  padding-right: 4.0625rem;
}

.about_certification .head p {
  padding-top: 2.1875rem;
  font-size: 1.0625rem;
  color: #757575;
}

.about_certification .head .about_certification_prev,
.about_certification .head .about_certification_next {
  margin-top: 4.375rem;
  width: 5rem;
  height: 5rem;
  border-radius: 4px;
  background: url(../img/left-w.svg) no-repeat center / 20%;
  background-color: var(--theme_color);
  transition: all 0.3s;
  cursor: pointer;
}

.about_certification .head .about_certification_prev {
  margin-right: 1.125rem;
}

.about_certification .head .about_certification_prev.swiper-button-disabled {
  background-color: #ddd;
  background-image: url(../img/left-b.svg);
  cursor: default;
}

.about_certification .head .about_certification_next {
  background-image: url(../img/right-w.svg);
}

.about_certification .head .about_certification_next.swiper-button-disabled {
  background-color: #ddd;
  background-image: url(../img/right-b.svg);
  cursor: default;
}

.about_certification .about_certification_swiper_box {
  position: absolute;
  left: 26.875rem;
  top: 0;
  width: 100%;
  overflow: hidden;
}

.about_certification .about_certification_swiper {
  width: 49.375rem;
  padding: 0.9375rem 0 0.9375rem 0.9375rem;
}

.about_certification .about_certification_swiper .swiper-slide .img {
  height: 32.75rem;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
}

.about_certification .about_certification_swiper .swiper-slide .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.about_certification .about_certification_swiper .swiper-slide p {
  padding-top: 2.25rem;
  font-size: 1.25rem;
  font-weight: 500;
  color: var(--title_color);
}

.home_service2 {
  padding: 0;
}

.home_service2 .head {
  text-align: center;
}

.home_service2 .head p {
  width: 60%;
  margin: 1rem auto 2.5rem;
  color: gray;
  font-size: 1.125rem;
}

.home_service2 .main ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem 1.375rem;
}

.home_service2 .main ul li {
  text-align: center;
  border-radius: 0.3125rem;
  overflow: hidden;
}

.home_service2 .main ul li a:hover > img {
  top: 0;
}

.home_service2 .main ul li a:hover strong {
  top: 50%;
  opacity: 1;
}

.home_service2 .main ul li a:hover .img,
.home_service2 .main ul li a:hover h3,
.home_service2 .main ul li a:hover p {
  transform: scale(0.9);
}

.home_service2 .main ul li a {
  display: block;
  width: 100%;
  height: 100%;
  padding: 4.0625rem 2.8125rem;
  position: relative;
}

.home_service2 .main ul li .img {
  aspect-ratio: 16/9;
  transition: all 0.3s;
}

.home_service2 .main ul li .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home_service2 .main ul li h3 {
  color: #292929;
  font-size: 1.375rem;
  font-weight: 500;
  margin: 1rem 0 1.25rem;
  transition: all 0.3s;
}

.home_service2 .main ul li p {
  color: gray;
  transition: all 0.3s;
}

.home_service2 .main ul li a > img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 100%;
  left: 0;
  transition: all 0.35s;
}

.home_service2 .main ul li strong {
  font-size: 1.125rem;
  font-weight: 500;
  text-align: center;
  line-height: 3.375rem;
  width: 12.125rem;
  height: 3.375rem;
  transition: all 0.3s;
  color: #fff;
  background-color: #1c232f;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 0.25rem;
  opacity: 0;
}

@media screen and (max-width: 786px) {
  .home_service2 .head p {
    width: 100%;
    margin: 1rem 0 0;
    font-size: 0.9rem;
    line-height: 1.5rem;
  }

  .home_service2 .main {
    padding-top: 1.25rem;
  }

  .home_service2 .main ul {
    display: flex;
    overflow: scroll;
    gap: 1.25rem;
    padding: 1rem;
  }

  .home_service2 .main ul li {
    height: auto;
    min-width: 80%;
  }

  .home_service2 .main ul li {
    padding: 0;
  }

  .home_service2 .main ul li .img {
    aspect-ratio: 16/9;
  }

  .home_service2 .main ul li h3 {
    font-size: 1rem;
    margin: 1.5rem 0 0.5rem;
  }

  .home_service2 .main ul li p {
    font-size: 0.9rem;
    line-height: 1.5rem;
  }

  .home_service2 .main ul li strong {
    width: 7.5rem;
    height: 2.5rem;
    line-height: 2.5rem;
    font-size: 0.875rem;
  }

  .about_banner {
    padding: 4rem 0;
  }

  .about_banner .head h1 {
    font-size: 2rem;
    line-height: 1.3;
    padding-top: 0;
  }

  .about_banner .head {
    width: 100%;
  }

  .about_factory .head {
    margin-bottom: 1.5rem;
  }
}

@media screen and (min-width: 786px) and (max-width: 1200px) {
  .home_service2 .head p {
    width: 80%;
  }

  .home_service2 .main ul li a {
    padding: 2rem 1rem;
  }

  .home_service2 .main ul li a .img {
    width: 3rem;
    height: 3rem;
  }
}
