body{font-size: 16px; overflow-x: hidden; padding: 0 2vw; overflow-x: hidden;} 
.inner{ width:84vw;   margin: 0 auto;  }
.pl-inner{ padding-left: 8vw;}
.pr-inner{ padding-right: 8vw;}
.ml-inner{ margin-left:8vw;}
.mr-inner{ margin-right: 8vw;}

.w96{ width: 96%;}
.pl-w96{ padding-left: 2vw;}
.pr-w96{ padding-right: 2vw;}
.ml-w96{ margin-left:2vw;}
.mr-w96{ margin-right: 2vw;}

.shadow-color{ box-shadow: 0 0 15px rgba(30, 66, 144, 0.15);}

.zwHeader{ height: 100px;}
.zw{ margin-top: -100px; padding-top: 100px;}

.h-40{ height: 40px;}.w-40{ width: 40px; }
.h-50{ height: 50px;}.w-50{ width: 50px; }
.h-60{ height: 60px;}.w-60{ width: 60px;}
.w-70{ width: 70px;} .h-70{ height: 70px;}


header{ background: #fff; width: 100%; position: fixed; top: 0; left: 0; z-index: 100;}
header .con{ padding: 0 2vw;}

header.scroll{ box-shadow: 0 0 15px rgba(0, 0, 0, .1);}
.oneNav{ line-height:100px; white-space: nowrap; font-weight: bold; display: block; padding: 0  1vw; font-size: 18px;  }
.oneNav span { position: relative;}
.oneNav span::after{ width: 100%; height: 2px; display: block; content: ''; background:var(--color); transition: all .36s; transform:scale(0,1) ; position: absolute; left: 0; bottom: -10px; -webkit-transition: all .36s; -moz-transition: all .36s; -ms-transition: all .36s; -o-transition: all .36s; -webkit-transform:scale(0,1) ; -moz-transform:scale(0,1) ; -ms-transform:scale(0,1) ; -o-transform:scale(0,1) ; }
nav li{ position: relative;}
nav li.on .oneNav span ,nav li:hover .oneNav span { color: var(--color);}
nav li.on .oneNav span::after,nav li:hover .oneNav span::after{ transform: scale(1,1); -webkit-transform: scale(1,1); -moz-transform: scale(1,1); -ms-transform: scale(1,1); -o-transform: scale(1,1); }
nav:hover > li:not(:hover) .oneNav{ color: #333; }
nav:hover > li:not(:hover) .oneNav  span::after{ transform:scale(0,1) ;  }
nav  li dl{position:absolute;text-align: center;min-width:150px; width: auto;top:100%;left: 50%; background:#fff;   -webkit-box-shadow:0 13px 42px 11px rgba(0,0,0,.15);box-shadow:0 13px 42px 11px rgba(0,0,0,.15); border-bottom-left-radius:5px;border-bottom-right-radius:5px;}
nav  li dl dd{white-space: nowrap;height:50px;line-height:50px;border-bottom:1px solid #eee;transition:all .36s ease;-ms-transition:all .36s ease;-o-transition:all .36s ease;-webkit-transition:all .36s ease;-moz-transition:all .36s ease}
nav  li dl dd:last-child{border-bottom:0}
nav  li dl dd a{ padding: 0 20px;  font-size:14px; color:#333!important; font-weight: normal!important; transition:all .36s ease;-ms-transition:all .36s ease;-o-transition:all .36s ease;-webkit-transition:all .36s ease;-moz-transition:all .36s ease;display:block }
nav  li dl dd:hover{background:var(--color)}
nav  li dl dd:hover a{color:#fff!important;}
/* nav  li dl:before{content:"";position:absolute;border-width:0 9px 9px;border-style:solid;border-color:transparent transparent #f6f1e1;top:-9px;left:50%;margin-left:-9px} */
nav  li dl{pointer-events: none;  visibility:hidden; opacity:0; filter:alpha(opacity=0); transform:translateX(-50%) translateY(20px); -ms-transform:translateX(-50%) translateY(20px); -o-transform:translateX(-50%) translateY(20px); -webkit-transform:translateX(-50%) translateY(20px); -moz-transform:translateX(-50%) translateY(20px); transition:all .5s ease; -ms-transition:all .5s ease; -o-transition:all .5s ease; -webkit-transition:all .5s ease; -moz-transition:all .5s ease; }
nav  li:hover dl{ pointer-events: auto;visibility:visible; opacity:1; filter:alpha(opacity=100); transform:translateX(-50%); -ms-transform:translateX(-50%); -o-transform:translateX(-50%); -webkit-transform:translateX(-50%); -moz-transform:translateX(-50%); }
 

.h_nav{ height: 60px; width: 60px;  padding: 18px  15px   ;    align-items: flex-end; display: flex;}
.h_nav .burger{ width: 100%;  height: 2px ; background: #333;  transition: .8s; display:inline-block;       }
header.scroll .h_nav .burger,header:hover .h_nav .burger{ background: #333;}
.h_nav .burger:nth-of-type(2){  width:66%;}
  /* .h_nav .burger:first-child{ animation: long 2s linear infinite; -webkit-animation: long 2s linear infinite; }

.h_nav .burger:nth-of-type(3){ animation: long 3s linear infinite; -webkit-animation: long 3s linear infinite; }   */
.h_nav.close .burger:first-child{ display: none;}
.h_nav.close .burger:nth-of-type(3){ display: none;}
.h_nav.close .burger:nth-of-type(2) {    position: relative;    z-index: 1; width: 80%;}
.h_nav.close .burger:nth-of-type(2):before, .h_nav.close .burger:nth-of-type(2):after {      content: '';   position: absolute;      top: 0;      left: 0;      width: 100%;      height: 100%;      background: #333;      opacity: 0;      z-index: 1;}
.h_nav.close .burger:nth-of-type(2) {    background: transparent;    transform: rotate(-180deg); }
.h_nav.close .burger:nth-of-type(2):before, .h_nav.close .burger:nth-of-type(2):after {      opacity: 1;      transition: all .3s; }
.h_nav.close .burger:nth-of-type(2):before {     transform: rotate(45deg); }   .h_nav .burger:nth-of-type(2):after {     transform: rotate(-45deg); }
.nav{ padding-bottom: 60px; width: 100vw; display: none; height:  130vh ; animation: leftFloat .8s; transition:all .6s ; background: #fff; position: fixed; top: 60px; right: 0; flex-direction: column; -webkit-transition:all .6s ; -moz-transition:all .6s ; -ms-transition:all .6s ; -o-transition:all .6s ; -webkit-animation: leftFloat .8s; }
.nav.show{  display: block; }
.nav li.go-child{ border-top: 1px solid rgba(0, 0, 0, 0.15); position: relative;}
.nav li.go-child>a{ line-height: 60px; padding: 0 20px; font-size: 16px;}
.h_nav.close{align-items: center; justify-content: center;}
.erji{ width: 60px; height: 60px; position: absolute; right: 0 ; top: 0; display: flex; align-items: center; justify-content: center; font-size: 30px; z-index: 10;
 background: url(../images/jia.png) no-repeat center center; background-size: 40% auto;}
 .nav li.go-child.on .erji{ background: url(../images/jian.png) no-repeat center center; background-size: 40% auto;}
.nav-down li a{ line-height: 50px; border-top: 1px solid rgba(0, 0, 0, 0.15); display: block; padding-left: 25px; font-size: 14px; opacity: 0.8; }
.nav{   overflow-y: scroll;   }
.nav::-webkit-scrollbar {/*滚动条整体样式*/    /*高宽分别对应横竖滚动条的尺寸*/  width: 1px;}
.nav::-webkit-scrollbar-thumb {/*滚动条里面小方块*/border-radius: 3px; background: #fff; width: 1px; }
.nav::-webkit-scrollbar-track {/*滚动条里面轨道*/border-radius: 3px; background: #efefef; width: 1px; }




.idxBanImg{ width: 100%; min-height: 360px; object-fit: cover; max-height: 100vh; width: 100%;}
.idxBan .text{ position: absolute; left: 50%; top: 55%; transform: translateX(-50%); -webkit-transform: translateX(-50%); -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); -o-transform: translateX(-50%); }

.idxBan .pagination{ position: absolute; left: 0; bottom: 7%; z-index: 10;}
.idxBan .pagination .swiper-pagination-bullet{ position: relative; margin: 0 1vw 0 0; min-width: 20px; min-height: 20px; width:1.56vw ; height: 1.56vw; border: 1px solid transparent; max-width: 30px; max-height: 30px; background: transparent; opacity: 1;}
.idxBan .pagination .swiper-pagination-bullet::after{ display: block; content: '';  width: 40%; height: 40%; position: absolute; left: 30%; top: 30%; background:#fff  ; border-radius: 50%; -webkit-border-radius: 50%; -moz-border-radius: 50%; -ms-border-radius: 50%; -o-border-radius: 50%;   }
.idxBan .pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{border: 1px solid #fff;}

/* .idxServiceUl li .idxServiceIcon{ width: 1em; height: 1em;}
.idxServiceUl li .idxServiceIcon path{  fill: transparent  ;}
.idxServiceUl li.on .idxServiceIcon path{  fill: var(--color);} */

.idxServiceUl a + a{ margin-left: 6vw;}
.idxServiceUl a .idxServiceIcon{ transition: all .2s; -webkit-transition: all .2s; -moz-transition: all .2s; -ms-transition: all .2s; -o-transition: all .2s; }
.idxServiceUl a .icon02{ position: absolute;  left: 0; bottom: 0;   opacity: 0;}
.idxServiceUl a.on .icon02{ opacity: 1;}
.idxServiceUl a.on .icon01{ opacity: 0;}
.idxServiceUl a.on{ color: var(--color);}

.idxServiceUl a::after{ display: block; content: ''; width: 4vw; height: 2px; position: absolute; left: calc(100% + 1vw); bottom: .8em; background:rgba(30, 66, 144, 0.12) }
.idxServiceUl a:last-child::after{ display: none;}


.w53{ width: 53%;}
.idxServiceImg{   height: 32vw; width: 100%; object-fit: cover;}
.idxServiceSwiper .text{ position: absolute; right: 0; top: 0;}

.idxAboutUl{ display: grid;grid-gap: 1vw; grid-template-columns: repeat(4,1fr);}
.idxAboutUl a .img{ aspect-ratio: 32/45;}
.idxAboutUl a .text{ position: absolute; left: 0; height: 32%; bottom: 0; z-index: 5;background:linear-gradient(to top,rgba(30,66,144,.32),transparent); }
.idxAboutUl a:hover .text{ height: 100%;}

.idxNewsTab .on{ background: var(--color); color: #fff;}
.idxNewsLeft{ width: 43.7%;}
.idxNewsRight{ width: 55%;}
.w68{ width: 68%;}
.idxNewsLeft a .img{ aspect-ratio:35/23;}

.idxNewsRight a:first-child{ margin-top: 0;}
.idxNewsRight a .img{ aspect-ratio: 4/3;}
.idxNewsSwiper a:hover .more{ letter-spacing: 2px;}
/* .idxNewsSwiper a:hover{ box-shadow: 0 0 15px rgba(30, 66, 144, 0.1);} */

.idxSecuritySwiper .swiper-slide .img{ aspect-ratio: 13/10;}
.idxSecurityF8::after{ display: block; content: ''; width:100vw; height: 100%; position: absolute; left: -2vw; top: 0; background: #f8f9fd }


.idxSecurityTab .on{ background: var(--color); color: #fff;}

.swiperBtn:hover{ background: var(--color); color: #fff;}
/* .idxSecuritySwiper .swiperBtn{ position: absolute; top: 50%; transform: translateY(-50%); z-index: 10; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -o-transform: translateY(-50%); }
.idxSecuritySwiper .swiperBtn.prev{ right: calc(100% + 1vw);}
.idxSecuritySwiper .swiperBtn.next{ left: calc(100% + 1vw);} */

.idxWorkTab .on{ background: var(--color); color: #fff;}

.idxWorkSwiper .swiper-slide{display: grid; grid-gap: 1vw; grid-template-columns: repeat(3,1fr);}
.idxWorkSwiper .swiper-slide li.item{ aspect-ratio: 26/31;}
.idxWorkSwiper .swiper-slide li.item .text{ position: absolute; top: 0; left: 0; width: 100%; z-index: 10;}
.idxWorkSwiper .swiper-slide li.item .img{ height: 50%; position: absolute; bottom: 0; left: 0;}

.idxWorkSwiper a:hover .more{ letter-spacing: 2px;}
.idxWorkSwiper .swiper-slide li.item.on .text{ bottom: 5%; top: auto;}
.idxWorkSwiper .swiper-slide li.item.on .img{ height: 100%;}
.idxWorkSwiper .swiper-slide li.item.on .img img{ opacity: .65;}
.idxWorkSwiper .swiper-slide li.item.on .text div,.idxWorkSwiper .swiper-slide li.item.on .text strong{ color: #fff !important;}

.idxWorkSwiper .swiper-slide li.right a{ height: calc(100% / 5);}
.idxWorkSwiper .swiper-slide li.right a::after{ display: block; content: ''; width:20%; opacity: 0; transition: all .36s; height: 100%; position: absolute; left: 0; top: 0; background:rgba(255,255,255,.2) ; -webkit-transition: all .36s; -moz-transition: all .36s; -ms-transition: all .36s; -o-transition: all .36s; }
.idxWorkSwiper .swiper-slide li.right a:hover::after{ width: 100%; opacity: 1;}

footer{ background: #161a26; color: #fff;}
footer::after{ display: block; content: ''; width:100vw; height: 100%; position: absolute; left: -2vw; top: 0; background: #161a26 }
.footForm .keys{ background: url(../images/search-w.png) no-repeat center left / auto 30%;} 
footer a:hover{ color: rgba(255,255,255,.8);}
.footForm{ width: 23%;}
.footNav{ width: 71.8%;}

.footEwm .ewmImg{ max-width: 130px; width:7vw ; min-width: 96px;}

.neiBanImg{ width: 100%; min-height: 160px; max-height: 50vh; object-fit: cover;}
.neiBan .text{ position: absolute; top: 50%; left: 0; transform: translateY(-50%); z-index: 10; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -o-transform: translateY(-50%); }

.subNav{color: rgba(30, 66, 144, 0.5); position: sticky; left: 2vw; top: 0; z-index: 88;}
.subNav li{ flex: 1; }
.subNav li::after{ display: block; content: ''; width: 2px; height: 1em; position: absolute; left: 0; top: 50%; background:#e2e6f2; transform: translateY(-50%); -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -o-transform: translateY(-50%); }
.subNav li:first-child::after{ display: none;}
.subNav li.on{ color: var(--color);}

.mapBox .con{ width: 100%; height: 30vw; max-height:500px ; min-height: 300px;}
.messageCon{ width: 85%;  }

.input_name{ background: url(../images/input_name.png) no-repeat left 1vw center / auto 32%; padding-left: 2.8vw;}
.input_tel{ background: url(../images/input_tel.png) no-repeat left 1vw center / auto 32%; padding-left: 2.8vw;}
.input_email{ background: url(../images/input_email.png) no-repeat left 1vw center / auto 32%; padding-left: 2.8vw;}
.input_con{ background: url(../images/input_con.png) no-repeat left 1vw top 1vw / 1.8% auto  ; padding-left: 2.8vw; padding-top: 1vw;}

.message button{ min-width: 150px;}


.noticeList li:first-child{ margin-top: 0;}
.noticeList li .img{ width: 18%; aspect-ratio: 4/3;}
.noticeList li .text .desc{ height: 4em;}
.noticeList li:hover{ box-shadow: 0 0 15px rgba(30, 66, 144, 0.12);}
.noticeList li .more:hover{ letter-spacing: 2px;}

.serviceList{ display: grid; grid-gap: 2vw; grid-template-columns: repeat(2,1fr);}
.serviceList li:hover{ box-shadow: 0 0 15px rgba(30, 66, 144, 0.12); transform: translateY(-1vw); -webkit-transform: translateY(-1vw); -moz-transform: translateY(-1vw); -ms-transform: translateY(-1vw); -o-transform: translateY(-1vw); }
.serviceList li .img{   aspect-ratio: 2/1;}
.serviceList li .more:hover{ letter-spacing: 2px;}


.serviceList li .img::before {content: "";width: 100%;height: 100%;position: absolute;z-index: 10;left: 0px;}
.serviceList li:hover .img::before { animation: gradient-rectangle 1s ; animation-delay: 0s; -webkit-animation-timing-function: cubic-bezier(0, 0, 0.18, 0.96); -webkit-animation: gradient-rectangle 1s ; }

.rightList{ position: sticky; left: 0; top: 5vw;}
 
.cultureUl{ display: grid; grid-gap: 1vw; grid-template-columns: repeat(3,1fr);}
.cultureUl li {   aspect-ratio:52/35;}

.cultureTextUl li span{  -webkit-clip-path: polygon(85% 0,100% 100%, 0 100%, 0 0);}
 
.cultureTextUl li  .img{ width: 9vw; max-width: 170px; min-width: 50px;}
.cultureTextUl li .tit{  width: 5em; }

.honorlsit{ display: grid; grid-gap: 1.5vw; grid-template-columns: repeat(4,1fr);}
.honorlsit li .img {   aspect-ratio:1/ 1;}

.caselist{ display: grid; grid-gap: 1vw; grid-template-columns: repeat(3,1fr);}
.caselist li .img {   aspect-ratio:13/10;}