﻿.banner video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: fill;
}

.banner {
  position: relative;
}

.banner_text {
  width: 100%;

  box-sizing: border-box;
  color: #fff;
  z-index: 9;
  bottom: 75rem;
  position: absolute;
  left: 0;
  opacity: 0;
  visibility: hidden;
  transition: all 1s;
  -webkit-transition: all 1s;
  -moz-transition: all 1s;
  -o-transition: all 1s;
  -ms-transition: all 1s;
  -webkit-transform: translateX(40%);
  -moz-transform: translateX(40%);
  -o-transform: translateX(40%);
  -ms-transform: translateX(40%);
  transform: translateX(200px);
}

.banner li.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);
}

.banner_text h3 {
  font-size: 50rem;
  line-height: 1.1em;
  
  margin-bottom: 20rem;

}

.banner_text p {
  line-height: 1.25em;
  height: 2.5em;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.banner li::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.24);
}
.banner .ban_img {
  position: relative;
}
.banner .ban_img > img {
  display: none;
}

.baner_but {
  display: none;
}

.indexpage_out {
  position: absolute;
  right: 115rem;
  bottom: 40rem;

  z-index: 5;
}

.banner .swiper-pagination {
  position: static;
  display: inline-block;
}
.banner .swiper-pagination span i {
  color: #fff;
  position: absolute;
  left: 0;
  top: -14rem;
  width: 100%;
  text-align: center;
  opacity: 0;
  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 span {
  margin: 0 5rem;
  background: none;
  opacity: 1;
  width: 40rem;
  height: 10px;

  opacity: 0.3;
  position: relative;
  opacity: 1;
}

.banner .swiper-pagination span.swiper-pagination-bullet-active {
  opacity: 1;
  width: 80rem;
}
.banner .swiper-pagination span.swiper-pagination-bullet-active i {
  opacity: 1;
}
.banner .swiper-pagination span::before,
.banner .swiper-pagination span:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 4px;
  border-radius: 5rem;
}

.banner .swiper-pagination span::before {
  width: 100%;
  background: rgba(255, 255, 255, 0.46);
}

.banner .swiper-pagination span:after {
  width: 0;
  background: #f29b0a;
  transition: all 1s;
  -webkit-transition: all 2s;
  -moz-transition: all 2s;
  -o-transition: all 2s;
  -ms-transition: all 2s;
}

.banner .swiper-pagination span.swiper-pagination-bullet-active:after {
  width: 100%;
}

.indexpage_bf {
  display: inline-block;
  color: #fff;
  font-size: 20px;
  cursor: pointer;
  height: 20px;
  line-height: 20px;
  width: 30px;
  text-align: center;
  position: relative;
  top: 5px;
  margin-left: 10px;
}

.indexpage_bf .icon-bofang1 {
  display: none;
  font-size: 16px;
}

.indexpage_bf.on .icon-zanting1 {
  display: none;
}

.indexpage_bf.on .icon-bofang1 {
  display: block;
}

@media only screen and (max-width: 1024px) {
  .banner_text h3 {
    margin-bottom: 10rem;
    font-size: 50rem;
  }

  .indexpage_out {
    bottom: 20rem;
  }
}

@media only screen and (max-width: 767px) {
  .banner_text {
    bottom: 40px;
  }

  .banner_text h3 {
    font-size: 18px;
    line-height: 24px;
    max-height: 48px;
  }

  .banner_text p {
    font-size: 14px;
    line-height: 20px;
    max-height: 40px;
  }

  .banner_text p br {
    display: none;
  }

  .banner video {
    display: none;
  }

  /*.banner .ban_img>img{display: block;}*/
  .banner li {
    height: 300px !important;
  }

  .banner ul,
  .ban_img {
    height: auto !important;
  }

  .banner li:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.2);
  }

  .ban_img {
    position: relative;
    z-index: 5;
    height: 100% !important;
  }

  .banner .swiper-pagination span {
    height: 2px;
  }
  .banner .swiper-pagination span i {
    display: none;
  }
}

.index_01,
.index_02 {
  background-position: 0 0 !important;
}
.index_01 {
  padding: 140rem 0 110rem 0;
  position: relative;
  overflow: hidden;
}
.index_01 .wrap {
  position: relative;
  z-index: 5;
}

.index_intr_p {
  color: #777777;
}
.index_intr_t {
  overflow: hidden;
  margin-bottom: 230rem;
}
.index_intr_t .left {
  width: 45%;
  float: left;
}
.index_intr_t .left .index_title {
  margin-bottom: 0;
}
.index_intr_t .right {
  width: 49.2%;
  float: right;
  margin-top: 40rem;
}
.index_intr_b li {
  max-width: 25%;
}
.index_intr_b ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.index_intr_b dt {
  color: #005ca7;
  line-height: 1em;
  margin-bottom: 30rem;
}
.index_02 {
  padding: 90rem 0 120rem 0;
  background: #f5f8fb;
}

.index_pro {
}
.index_pro .left,
.index_pro .right li {
  border-radius: 10rem;

  position: relative;
}
.index_pro .left a,
.index_pro .right a {
  display: block;
  position: relative;
  border-radius: 20rem;
  overflow: hidden;
}
.index_pro .left {
  width: 49.2%;
  float: left;
}
.index_pro .right {
  width: 50.8%;
  float: right;
}

.index_card {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 30rem;
  padding: 0 20rem;
}
.index_card_title {
  background: #fff;
  padding: 30rem;
  padding-top: 30rem;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;

  background: rgba(255, 255, 255, 0.83);
  border-radius: 15rem;

  transition: transform 0.5s ease;
  -webkit-transition: transform 0.5s ease;
}
.index_card_title .index_card_titleh3 {
  max-width: calc(100% - 360rem);
  padding-right: 30rem;
}
.index_card_titleh3 {
  line-height: 1.25em;

  position: relative;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.index_card_titleh3 sup {
  /*margin: 0 5rem;*/
  line-height: 1em;
}
.index_card_titleh3 i {
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
  position: absolute;
  right: 0;
  top: 50%;
}
.index_card_title p {
  width:340rem;
  /*max-height: 2.6em;*/
  color: #333;
  display: block;
    -webkit-line-clamp: inherit;
    -webkit-box-orient: inherit;
}

.index_pro li {
  /*width: calc(50% - 10rem);
  float: left;*/
  width: 100%;
}
.index_pro li a {
  margin-bottom: 20rem;
}

.index_pro li:nth-child(2) a {
  margin-bottom: 0;
}

.index_pro .right ul {
  margin-left: 20rem;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.index_pro li:nth-child(3) {
  float: none;
  width: 100%;
}
.index_pro li:nth-child(3) a {
  margin-bottom: 0;
}
.index_pro li h3 {
  margin-bottom: 20rem;
}
.index_pro li p {
  max-height: 2.6em;
  color: #333;
}
.index_probox {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding:60rem 30rem;
}
.carf_tips {
  line-height: 1.4em;
  max-height: 2.8em;
  color: #333;
  position: absolute;
  left: 0;
  bottom: 30rem;
  width: 50%;
  padding: 0 30rem;
}

.index_03 {
  padding: 110rem 0 380rem 0;
  overflow: hidden;
  position: relative;
}

.index_03 .wrap {
  position: relative;
  z-index: 5;
}
.index_03 .left {
  width: 35.2%;
  float: left;
  margin-bottom: 60rem;
}
.index_03 .right {
  width: 60.5%;
  float: right;
}
.index_03 .index_title {
  margin-bottom: 40rem;
}

.index_hz li {
  width: 50%;
  float: left;
  margin-bottom: 20rem;
}
.index_hz ul {
  margin: 0 -10rem;
  display: flex;
  flex-wrap: wrap;
}
.index_hz dl {
  background: rgba(255, 255, 255, 0.6);
  border-radius: 20rem;
  padding: 30rem 20rem;
  margin: 0 10rem;
  height: 100%;
}
.index_hz dt {
  margin-bottom: 60rem;
}
.index_hz dt span {
  line-height: 1em;
}

.index_04 {
  position: relative;
  z-index: 5;
  margin-top: -290rem;
}
.index_04 .wrap {
  height: 100%;
  position: relative;
  border-radius: 15rem;
  overflow: hidden;
  padding: 175rem 0 220rem 0;
}
.index_04 .wrap::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
}

.index_gx {
  position: relative;
  float: right;
  z-index: 9;

  margin-right: 200rem;

  width: 720rem;
}
.index_gx .index_title,
.index_gx .index_title h4 {
  color: #fff;
}
.index_gx .index_title h4 {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.index_gx .index_title p {
  margin-bottom: 80rem;
  max-height: 3.4em;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.index_gx .index_title h3 {
  max-height: 2.6em;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.index_gxbg {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 609rem;
  height: 446rem;
}
.index_gxbg div {
  position: absolute;
  right: -100%;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-size: 100% 100%;
  transition: all 2s;
  -webkit-transition: all 2s;
  -moz-transition: all 2s;
  -o-transition: all 2s;
  -ms-transition: all 2s;
}
.bg01 {
  background: url(../images/pro_ani01.png) no-repeat;
  z-index: 3;
  right: -100%;
}
.bg02 {
  background: url(../images/pro_ani02.png) no-repeat;

  z-index: 2;
  right: -200%;
}
.bg03 {
  background: url(../images/pro_ani03.png) no-repeat;

  z-index: 1;
  right: -300%;
}
.end .index_gxbg .bg01 {
  right: 0;
}
.end .index_gxbg .bg02.end2 {
  right: 0;
}
.end .index_gxbg .bg03.end3 {
  right: 0;
}

.index_05 {
  padding: 110rem 0 70rem 0;
}
.index_news ul {
  margin: 0 -20rem;
  display: flex;
  flex-wrap: wrap;
}
.index_news li > a {
  display: block;
  margin: 0 20rem;
  border-radius: 20rem;
  overflow: hidden;
  background: url(../images/index_newsbg.jpg) no-repeat;

  background-size: cover;
}
.index_news li dl {
  background: #f5f8fb;
  padding: 50rem 35rem;
  padding-bottom: 80rem;
}
.index_news li {
  width: 50%;
  float: left;
  margin-bottom: 40rem;
}
.index_news dt span {
  margin-bottom: 40rem;
  display: block;
  font-weight: bold;
}
.index_news dt h3 {
  height: 2.5em;
  margin-bottom: 20rem;
}
.index_news dt p {
  height: 5.1em;
  -webkit-line-clamp: 3;
  color: #777;
}
.index_06 {
  padding: 480rem 0 150rem 0;
  position: relative;
  background-attachment: fixed;
}
.index_06 .wrap {
  position: relative;
  z-index: 5;
  color: #fff;
}
.index_06 .index_title h4 {
  color: #fff;
}
.index_06::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.21);
}
.index_deve {
  overflow: hidden;
}
.index_deve .left {
  width: 50%;
  float: left;
}
.index_deve .right {
  width: 41.6%;
  float: right;
}
.index_deve .right > i {
  display: block;
  width: 39rem;
  height: 39rem;
  margin-bottom: 20rem;
}
.index_deve .right > i > img {
  width: 100%;
  height: 100%;
}
.index_deve .right p {
  margin-bottom: 30rem;
}
@media only screen and (max-width: 1440px) {
  .index_01 {
    padding: 110rem 0;
  }
  .index_intr_t {
    margin-bottom: 150rem;
  }
}
@media only screen and (max-width: 1024px) {
  .index_01,
  .index_02,
  .index_03 {
    padding: 80rem 0;
  }
  .index_05 {
    padding: 80rem 0;
    padding-bottom: 50rem;
  }
  .index_06 {
    padding: 100rem 0;
  }
  .index_intr_t .left,
  .index_intr_t .right {
    float: none;
    width: 100%;
  }
  .index_intr_t {
    margin-bottom: 100rem;
  }
  .index_card_title {
  }
  .index_card_title .index_card_titleh3 {
    width: fit-content;
    max-width: 60%;
  }
  .index_pro li h3,
  .index_card_title .index_card_titleh3 {
    margin-bottom: 10rem;
  }
  .index_pro .left,
  .index_pro .right {
    float: none;
    width: 100%;
  }
  .index_pro .right ul {
    margin: 0;
    margin-top: 20rem;
  }
  .index_03 .left,
  .index_03 .right {
    float: none;
    width: 100%;
    margin-bottom: 0;
  }
  .index_hz li {
    width: 33.33%;
  }
  .index_hz dt {
    margin-bottom: 40rem;
  }
  .index_gx {
    float: none;
    margin: 0;
    padding: 0 30rem;
  }
  .index_gx .index_title p {
    margin-bottom: 0;
  }
  .index_gxbg {
    width: 430rem;
    height: 278rem;
  }
  .index_04 .wrap {
    padding: 100rem 0;
    padding-bottom: 150rem;
  }

  .index_news ul {
    margin: 0 -10rem;
  }
  .index_news li > a {
    margin: 0 10rem;
  }
  .index_news li {
    margin-bottom: 20rem;
  }
  .index_deve .left,
  .index_deve .right {
    float: none;
    width: 100%;
  }
  .index_deve .right > i {
    width: 30rem;
    height: 30rem;
    margin-bottom: 10rem;
  }
  .index_deve .left {
    margin-bottom: 50rem;
  }
  .index_04 {
    margin-top: 80rem;
  }
}
@media only screen and (max-width: 767px) {
  .index_01,
  .index_02 {
    padding: 30px 0;
  }
  .index_01 {
    padding-bottom: 0px;
  }
  .index_intr_b li {
    width: 50%;
    max-width: inherit;
    margin-bottom: 30px;
  }
  .index_intr_b dt {
    margin-bottom: 10px;
  }
  .index_intr_t {
    margin-bottom: 40px;
  }
  .index_card_title {
    display: block;
  }
  .index_card_title p {
    width: 100%;
  }
  .index_card_title .index_card_titleh3 {
    max-width: 100%;
  }
  .index_pro li h3,
  .index_card_title .index_card_titleh3 {
    margin-bottom: 10px;
  }
  .index_pro li {
    width: 100%;
    margin-bottom: 10px;
  }
  .index_pro li:last-child {
    margin-bottom: 0;
  }
  .carf_tips {
    position: static;
    padding: 0;
    width: 100%;
    margin-top: 10px;
  }
  .index_pro li .index_probox {
    position: static;        padding: 30rem;
  }
  .index_pro .left {
    margin-bottom: 10px;
  }
  .index_card {
    position: static;
    background: none;
    padding: 30rem;
  }
  .index_card_title {
    padding: 0;
    background: none;
  }
  .index_hz li {
    width: 50%;
  }
  .index_gx {
    width: 100%;
  }
  .index_news ul {
    margin: 0;
  }

  .index_news li > a {
    margin: 0;
  }
  .index_news li dl {
    padding: 20px;
  }
  .index_news li {
    margin-bottom: 20rem;
    width: 100%;
    float: none;
  }
  .index_news li:last-child {
    margin-bottom: 0;
  }
  .index_news dt h3 {
    height: auto;
    line-height: 1.6em;
    max-height: 3.2em;
  }
  .index_news dt p {
    height: auto;
    max-height: 5.1em;
  }
  .index_news dt span {
    margin-bottom: 10px;
    font-weight: normal;
  }
}
@media only screen and (min-width: 1025px) {
  .index_pro .left:hover .index_card_title {
    transform: translateY(-6rem);
    -webkit-transform: translateY(-6rem);
  }
  .index_news li dl {
    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_news li dl:hover {
    background: none;
    background-size: cover;
    color: #fff;
  }
  .index_news li > a:hover {
    -webkit-transform: translateY(-10rem);
    -moz-transform: translateY(-10rem);
    -o-transform: translateY(-10rem);
    -ms-transform: translateY(-10rem);
    transform: translateY(-10rem);
    box-shadow: 0 7px 14px 2px rgba(0, 15, 79, 0.1);
  }
  .index_news li dl:hover p,
  .index_news li dl:hover h3,
  .index_news li dl:hover span {
    color: #fff;
  }
}

/* map */
.moduler-8 {
  width: 78.4%;
  margin: auto;
  height: 400rem;
  position: relative;
}

.moduler-8 canvas {
}

.info-wrap,
.info-div {
  line-height: 1;
  height: 20px;
  font-size: 24px;
  cursor: default;
}

.info-div > .info-wrap {
  transform: translate(-12px, -12px);
  color: #fff;
  display: flex;
}

.info-div > .info-wrap::before,
.info-div > .info-wrap::after {
  content: "";
  background: rgba(255, 255, 255, 0.3);
  width: 30px;
  height: 30px;
  transform: translate(-50%, -50%);
  border-radius: 90px;
  position: absolute;
  left: 10px;
  top: 10px;
}

.info-div > .info-wrap::after {
  width: 40px;
  height: 40px;
  background: rgba(0, 0, 0, 0.1);
}

.info-div span {
  max-width: 0;
  overflow: hidden;
  display: block;
  position: relative;
  z-index: 2;
}

.info-div .jia {
  max-width: none;
  width: 20px;
  height: 20px;
  line-height: 20px;

  text-align: center;

  color: #000;
}

.info-div span.name {
  position: absolute;
  left: 50%;
  top: 50%;
  width: auto;
  height: 100%;
  white-space: nowrap;
  height: 40px;
  line-height: 40px;
  padding-left: 30px;
  padding-right: 20px;
  margin-left: -20px;
  margin-top: -20px;
  opacity: 0;
  background: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  border-radius: 90px;
  z-index: 1;
  color: #000;
  font-size: 16px;
  transition: 0.5s;
}

.info-div:hover {
  z-index: 999 !important;
}

.info-div span.name {
  max-width: 220px;
  position: absolute;
  opacity: 1;
}

.info-div span i {
  display: inline-block;
  width: 24px;
  height: 24px;
  line-height: 24px;
  margin-left: 5px;
  border-radius: 50%;
  color: #fff;
  background: #005ca7;
  text-align: center;
  font-size: 12px;display: none;
}
@media only screen and (max-width: 1024px) {
  .index_03 .right {
    padding-top: 400px;
    margin-top: 50rem;
  }
  .moduler-8 {
    width: 100%;
    height: 200px;
    margin-top: -400px;
  }
}
@media only screen and (max-width: 767px) {
  .index_03 .right {
    padding-top: 300px;
    margin-top: 50rem;
  }

  .moduler-8 {
    width: 100%;
    height: 160px;
    margin-top: -300px;
  }
}
@media only screen and (min-width: 1025px) {
  .index_pro .right li a {
    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_card_title {
    transition: all 0.6s;
    -webkit-transition: all 0.6s;
    -moz-transition: all 0.6s;
    -o-transition: all 0.6s;
    -ms-transition: all 0.6s;
  }

  .index_pro .right li a:hover {
    -webkit-transform: translateY(-10rem);
    -moz-transform: translateY(-10rem);
    -o-transform: translateY(-10rem);
    -ms-transform: translateY(-10rem);
    transform: translateY(-10rem);
    box-shadow: 0 7px 14px 2px rgba(0, 15, 79, 0.1);
  }
  .index_pro .left:hover .index_card_title {
    -webkit-transform: translateY(-10rem);
    -moz-transform: translateY(-10rem);
    -o-transform: translateY(-10rem);
    -ms-transform: translateY(-10rem);
    transform: translateY(-10rem);
    box-shadow: 0 7px 14px 2px rgba(0, 15, 79, 0.1);
  }
}
