﻿/*banner*/
.banner {
  width: 100%;
}

.bannerbut {
  display: none;
}

.banner_text {
  transition: all 1.5s;
  -webkit-transition: all 1.5s;
  -moz-transition: all 1.5s;
  -o-transition: all 1.5s;
  -ms-transition: all 1.5s;
  visibility: hidden;
  opacity: 0;
  /*-webkit-transform: translateX(20%); -moz-transform: translateX(20%);-o-transform: translateX(20%);-ms-transform: translateX(20%);transform: translateX(20%);*/
  transform: translate(20%, 0);
  -webkit-transform: translate(20%, 0);
  -ms-transform: translate(20%, 0);
  -moz-transform: translate(20%, 0);
  -o-transform: translate(20%, 0);
}

.banner .swiper-slide-active .banner_text {
  visibility: visible;
  opacity: 1;
  /*-webkit-transform: translateX(0px); -moz-transform: translateX(0px);-o-transform: translateX(0px);-ms-transform: translateX(0px);transform: translateX(0px);*/
  transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -o-transform: translate(0, 0);
}

.banner_text {
  z-index: 2;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 95rem;
  color: #fff;
}
.banner_text .wrap {
  display: flex;
  justify-content: space-between;
  align-items: end;
}
.banner_text h3 {
  line-height: 1.14em;
  max-height: 2.28em;
  -webkit-line-clamp: 2;
  max-width: 50%;
}
.banner_text p {
  line-height: 1.3em;
  max-height: 5.2em;
  -webkit-line-clamp: 4;
  max-width: 48%;
  padding-left: 135rem;
  position: relative;
}
.banner_text p::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 98rem;
  height: 3rem;
  background: #fff;
}
.banner {
  position: relative;
  overflow: hidden;
  background: #d2dffa;
}

.banner li {
  position: relative;
  overflow: hidden;
  /* transform: scale(1.01, 1.01);
  margin-left: 1px; */
}

.banner li .v_box {
  width: 100%;
}

.banner li video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.banner li img {
  width: 100%;
  height: 100%;
}

.banner_scale {
  position: relative;
  height: 100%;
  overflow: hidden;
}

.banner_scale .v_box {
  overflow: hidden;
}

.banner li > a {
  display: block;
  position: relative;
  height: 100%;
  color: #000 !important;
}

.banner .swiper-pagination {
  width: 100%;
  bottom: 3%;
  display: none;
}

.banner .swiper-pagination-bullet {
  width: 40rem;
  height: 4px;
  opacity: 0.3 !important;
  background: none;
  margin: 0 3px;
  background: #fff;
  border-radius: 3px;
  transition: all 0.3s;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -ms-transition: all 0.3s;
}

.banner .swiper-pagination-bullet-active {
  opacity: 1 !important;
  width: 80rem;
}

.banner_scale .phone_banner {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .banner_text p {
    padding-left: 70rem;
  }
  .banner_text p::after {
    width: 60rem;
  }
}
@media only screen and (max-width: 767px) {
  .banner,
  .banner li {
    height: 300px !important;
  }
  .banner li .v_box{
    height: 300px !important;
  }
  .banner li .v_box img{object-fit: cover;}
  /*.banner li .v_box img{display: none;}*/
  .banner_text .wrap {
    display: block;
  }
  .banner_text h3,
  .banner_text p {
    width: 100%;
    max-width: 100%;
  }
  .banner_text h3 {
    margin-bottom: 10px;
    line-height: 1.5em;
    max-height: 3em;
  }
  .banner_text p {
    padding-left: 0;
    line-height: 1.5em;
    max-height: 6em;
    font-size: 14px;
  }
  .banner_text p::after {
    width: 30rem;
    display: none;
  }
  .banner_text {
    bottom: 20%;
  }
  .banner .swiper-pagination {
    display: block;
    bottom: 20px;
  }
}

.index_01 {
  background: #f7f7f7;
  padding: 140rem 0 50rem 0;
}
.index_01 .left {
  float: left;
  width: 45.1%;
  position: sticky;
  top: 100rem;
}
.index_01 .left dl {
  border-radius: 10rem;
  position: relative;
}
.index_01 .left dd {
  position: absolute;
  left: 0;
  bottom: 50rem;
  width: 100%;
  color: #fff;
  padding: 0 55rem;
}
.index_01 .right {
  float: right;
  width: 45.8%;
  padding-right: 80rem;
}
.index_time {
  line-height: 1em;
  margin-bottom: 30rem;
}

.index_dot.cur {
  padding-bottom: 140rem;
}
.index_dot li {
  float: left;
  width: 50%;
  margin-bottom: 50rem;
  position: relative;
}
.index_dot li:nth-child(2n + 1) {
  clear: both;
}
.index_dot li:nth-child(2n) {
  top: 140rem;
}
.index_dot ul {
  margin: 0 -45rem;
  flex-wrap: wrap;
}
.index_dot a {
  display: block;
  margin: 0 45rem;
}
.index_dot dt {
  overflow: hidden;
  border-radius: 10rem;
  margin-bottom: 30rem;
}
.index_dot dd h3 {
  max-height: 4.5em;
  -webkit-line-clamp: 3;
}
.index_dot dd {
  color: #000;
}
.index_dot dd .index_time {
  margin: 0;
  padding-top: 20rem;
}

.index_02 {
  padding: 135rem 0 145rem 0;
}
.index_02 .left {
  width: 30%;
  float: left;
  padding-top: 50rem;
}
.index_02 .right {
  width: 66.1%;

  float: right;
}
.index_jy {
  width: 100%;
  height: 683rem;
  border-radius: 10rem;
  overflow: hidden;
}
.index_jy ul {
  height: 100%;
  position: relative;
}
.index_jy ul::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.1);
}
.index_jy li {
  width: 53.5%;
  color: #fff;
  float: left;
  position: relative;
  z-index: 5;
}

.index_jy li dl {
  height: 100%;
  position: relative;
}
.index_jy li dt {
  padding: 45rem 40rem;
}
.index_jy li dt em {
  display: block;
  margin-bottom: 400rem;
}
.index_jy li dt h3 {
}
.index_jy li dt h3 span {
  padding-top: 20rem;
  border-top: 3rem solid #fff;
}

.index_jy li dd h3 {
  line-height: 1em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 40rem;
}
.index_jy li dd p {
  height: 5.7em;
  -webkit-line-clamp: 3;
}
.index_jy .index_more2 a {
  color: #fff;
}

@media only screen and (min-width: 1025px) {
  .index_jy .index_more2 a:hover {
    color: #fff !important;
    opacity: 0.9;
  }
  .index_jy li,
  .index_jy dl,
  .index_jy dt,
  .index_jy dd {
    height: 100%;
  }
  .index_jy li dt {
    width: 43.35%;
    position: relative;
  }
  .index_jy li,
  .index_jy dt,
  .index_jy dt h3,
  .index_jy dd,
  .index_jy li dt::after {
    transition: all 0.3s;
    -webkit-transition: all 0.8s;
    -moz-transition: all 0.8s;
    -o-transition: all 0.8s;
    -ms-transition: all 0.8s;
  }
  .index_jy li {
    position: absolute;
    top: 0;
    left: 0;
  }
  .index_jy li dt::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.1);
  }
  .index_jy li:nth-child(2n) dt:after {
    background: rgba(0, 0, 0, 0.2);
  }

  .index_jy li dd {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 190rem 80rem;
    visibility: hidden;
    opacity: 0;
    -webkit-transform: translateY(-50rem);
    -moz-transform: translateY(-50rem);
    -o-transform: translateY(-50rem);
    -ms-transform: translateY(-50rem);
    transform: translateY(-50rem);
  }
  .index_jy li dt h3 {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -o-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  .index_jy li.on dt::after {
    opacity: 0;
    visibility: hidden;
  }
  .index_jy li.on dt {
    padding-left: 80rem;
    padding-right: 80rem;
  }

  .index_jy li.on dt h3 {
    visibility: hidden;
    opacity: 0;
    -webkit-transform: translateY(-50rem);
    -moz-transform: translateY(-50rem);
    -o-transform: translateY(-50rem);
    -ms-transform: translateY(-50rem);
    transform: translateY(-50rem);
  }

  .index_jy li.on dd {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -o-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }

  /* width: 53.5%;   23.25*/
  .index_jy li:nth-child(2) {
    left: 53.5%;
  }
  .index_jy li:nth-child(3) {
    left: 76.75%;
  }

  .state_2 li:nth-child(1) {
    left: 0;
  }

  .state_2 li:nth-child(2) {
    left: 23.25%;
  }

  .state_3 li:nth-child(1) {
    left: 0;
  }

  .state_3 li:nth-child(2) {
    left: 23.25%;
  }
  .state_3 li:nth-child(3) {
    left: 46.5%;
  }
}

.index_03 {
  padding: 115rem 0;
  padding-bottom: 0;
  background: #f7f7f7;
  position: relative;
  z-index: 5;
}
.index_03 .wrap {
  height: 100%;
}
.mapimg {
  width: 810rem;

  position: absolute;
  top: 0rem;
  left: 330rem;
}
.mapimg img {
  max-width: 100%;
  max-height: 100%;
}

.index_03 .left {
  padding-top: 50rem;
  height: 100%;
}
.index_03 .left .index_title {
  position: relative;
  z-index: 5;
}
.index_address li {
  margin-bottom: 40rem;
}
.index_address dl {
  position: relative;
  box-shadow: 0 7px 14px 2px rgba(0, 15, 79, 0.1);
  border-radius: 10rem;
  overflow: hidden;
}
.index_address dt {
  margin-bottom: 0 !important;
}
.index_address dd {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 30rem;
  padding-top: 40rem;
}
.index_address dd h2 {
  line-height: 1em;
  margin-bottom: 20rem;
}
.index_address dd h2 i {
  margin-right: 15rem;
}
.index_address dd h4 {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.index_address dd .index_address_p {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  padding: 30rem;
}
.index_address_p p {
  max-height: 7.6em;
  -webkit-line-clamp: 4;
}

.index_04 {
  background: #fff;
  position: relative;
  z-index: 8;
  padding-top: 70rem;
}

.index_04_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.index_04_bg img {
  width: 100%;
}

.index_04 .wrap {
  position: relative;
  z-index: 5;
}
.index_04 .index_title {
  color: #fff;
}
.index_04 .index_title h4 i {
  background: #fff;
}

.index_research {
  background: #fff;
  padding: 40rem 130rem;
  padding-bottom: 60rem;
  border-radius: 10rem;
  box-shadow: 0 -15rem 10rem 2px rgba(0, 15, 79, 0.05);
}
.index_research li {
  padding: 60rem 0;
  padding-right: 35rem;
  border-bottom: 1px solid #d1d1d1;
}
.index_research li:last-child {
  border-bottom: 0;
}
.index_research dt {
  float: left;
  width: 60%;
  overflow: hidden;
}
.index_research dt h3 {
  width: 155rem;
  float: left;
  line-height: 1em;
  padding-top: 18rem;
  position: relative;
  color: #282828;
}
.index_research dt h3::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 24rem;
  height: 3rem;
  background: #282828;
}
.index_research dt .index_research_p {
  width: calc(100% - 165rem);
  float: right;
  padding-top: 15rem;
}
.index_research dt .index_research_p p {
  height: 4.5em;
  -webkit-line-clamp: 3;
}
.index_research dd {
  float: right;
  width: 36.8%;
}
.index_research dd span {
  float: left;
  line-height: 1em;
  font-weight: 100;
  color: #9b1f24;
}
.index_research dd .img {
  width: 79.4%;
  float: right;
  border-radius: 10rem;
  box-shadow: 0 0 10rem 2px rgba(0, 15, 79, 0.2);
}

.index_05 {
  background: #fff;
  padding: 120rem 0;
  overflow: hidden;
}
.index_join li {
  width: 50%;
  float: left;
}
.index_join ul {
  margin: 0 -40rem;
}
.index_join dl {
  margin: 0 40rem;
  border-radius: 10rem;
  position: relative;
}
.index_join dd {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: #fff;
  padding: 80rem 65rem;
  padding-right: 85rem;
}
.index_join .index_title h4 i {
  background: #fff;
}
.index_join .index_more2 a {
  color: #fff;
}

.index_join .index_title {
  margin-bottom: 0;
}

.index_join .index_j_cont {
  position: absolute;
  width: 100%;
  bottom: 145rem;
  left: 0;
  padding: 0 65rem;
  display: flex;
  justify-content: space-between;
  align-items: end;
}
.index_join .index_more2 {
  padding-top: 0;
}
.index_title .index_j_p {
  padding-top: 170rem;
}
.index_title .index_j_p p {
  margin: 0;
  line-height: 40rem;
  margin-bottom: 20rem;
}
.index_j_ewm {
  overflow: hidden;
}
.index_j_ewm .iteam_wem {
  width: 65rem;
  height: 65rem;
  float: left;
  margin-left: 40rem;
}
.index_j_ewm .iteam_wem:first-child {
  margin-left: 0;
}
.iteam_wem img {
  width: 100%;
  height: 100%;
}

@media only screen and (max-width: 1660px) {
  .index_01 .right {
    padding-right: 0;
  }
}
@media only screen and (max-width: 1024px) {
  .index_01,
  .index_02,
  .index_05 {
    padding: 80rem 0;
  }
  .index_01 .left dd {
    padding: 0 20rem;
    bottom: 20rem;
  }
  .index_dot.cur {
    padding-bottom: 80rem;
  }
  .index_dot li:nth-child(2n) {
    top: 80rem;
  }
  .index_dot ul {
    margin: 0 -20rem;
  }

  .index_dot a {
    margin: 0 20rem;
  }
  .index_dot dt {
    margin-bottom: 20rem;
  }
  .index_02 .left {
    padding-top: 0;
  }
  .index_02 .left,
  .index_02 .right {
    float: none;
    width: 100%;
  }
  .index_title p {
    margin-top: 40rem;
  }
  .mapimg {
    left: 0;
  }
  .index_address dd h2 {
    margin-bottom: 10rem;
  }
  .index_address dd {
    padding: 30rem 20rem;
  }
  .index_address dd .index_address_p {
    padding: 20rem;
  }
  .index_research {
    padding: 20rem 40rem;
  }
  .index_join dd {
    padding: 30rem;
  }
  .index_title .index_j_p {
    padding-top: 0;
  }
  .index_join .index_j_cont {
    padding: 0 30rem;
    bottom: 30rem;
  }
  .index_join ul {
    margin: 0 -20rem;
  }

  .index_join dl {
    margin: 0 20rem;
  }

  .index_jy {
    height: auto;
    padding: 30rem 0;
    position: relative;
  }
  .index_jy ul {
    position: static;
  }

  .index_jy li {
    width: 100%;
    float: none;
    padding: 30rem 20rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }
  .index_jy li:last-child {
    border: 0;
  }
  .index_jy li dt {
    margin-bottom: 10rem;
  }
  .index_jy li dt em {
    margin-bottom: 10rem;
  }
  .index_jy li dt h3 span {
    padding: 0;
    border: 0;
  }
  .index_jy li dd h3 {
    display: none;
  }
  .index_jy li dt,
  .index_jy li dd {
    padding: 0;
  }
}

@media only screen and (max-width: 767px) {
  .index_01 .left,
  .index_01 .right {
    float: none;
    width: 100%;
  }
  .index_01 .left dd {
    padding: 0 20px;
    bottom: 20px;
  }
  .index_01 .left {
    position: static;
    margin-bottom: 30px;
  }
  .index_dot li:nth-child(2n) {
    top: 0rem;
  }
  .index_dot.cur {
    padding-bottom: 0rem;
  }
  .index_dot li {
    width: 100%;
  }
  .index_address li {
    width: 50%;
  }
  .mapimg {
    width: 100%;
    position: absolute;
    top: 17%;
    left: 0;
  }
  .index_research dt,
  .index_research dd {
    float: none;
    width: 100%;
  }
  .index_research dt {
    margin-bottom: 20px;
  }
  .index_research dt h3,
  .index_research dt .index_research_p {
    width: 100%;
    float: none;
  }
  .index_research dt h3 {
    padding-top: 10px;
  }
  .index_research dt h3::after {
    width: 24px;
    height: 2px;
  }
  .index_research dt .index_research_p {
    padding-top: 20px;
  }
  .index_research dt .index_research_p p {
    height: auto;
    max-height: 4.5em;
  }
  .index_join li {
    float: none;
    width: 100%;
    margin-bottom: 20px;
  }
  .index_join li:last-child {
    margin-bottom: 0;
  }
  .index_join dd {
    padding: 20px;
  }
  .index_join .index_j_cont {
    padding: 0 20px;
    bottom: 20px;
  }
  .index_j_ewm .iteam_wem {
    width: 65px;
    height: 65px;
    margin-left: 10px;
  }

  .index_jy {
    padding: 20px 0;
  }

  .index_jy li {
    padding: 20px;
  }
  .index_research dd span {
    float: none;
    margin-bottom: 10px;
    display: block;
  }
  .index_research dd .img {
    float: none;
    width: 100%;
  }
}
@media only screen and (min-width: 1025px) {
  .index_address dl dd {
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
  }
  .index_address dl:hover dd {
    background: rgba(151, 31, 36, 0.95);
    color: #fff;
  }
}

.phoneslide_box {
  position: relative;
}
@media only screen and (max-width: 767px) {
  .phoneslide_box ul,
  .phoneslide_box li > a {
    margin: 0;
    flex-wrap: nowrap;
  }

  .phoneslide_box li {
    margin-bottom: 0;
    width: 100%;
  }

  .index_address .phoneslide_box02 {
    padding-bottom: 50px;
  }

  .index_address .index_btn > div {
    top: auto;
    margin: 0;
    bottom: 0;
  }

  .index_address .swiper-button-prev {
    left: calc(50% - 50px);
  }

  .index_address .swiper-button-next {
    right: calc(50% - 50px);
  }
}

