@charset "utf-8";
body{
    background: #f7f7f7;
}
.n-banner{
	width: 100%;
	position: relative;
	overflow:hidden;
}
.n-banner > img{
	width: 100%;
	display: block;
}
.n-banner .banner-con {
	padding-top: 80px;
    position: absolute;
    left: 3%;
    top: 50%;
    transform: translateY(-50%);
}
.n-banner .banner-con .text {
    font-size: 48px;
    line-height: 1.1;
    position: relative;
    color: #fff;
    font-weight: bold;
    padding-top: 40px;
    padding-bottom: 50px;
}
.n-banner .banner-con .text::before {
    position: absolute;
    content: "";
    width: 56px;
    height: 7px;
    background-color: #fff;
    top: 0px;
    left: 0px;
    -webkit-transform: skew(-30deg);
    -moz-transform: skew(-30deg);
    -o-transform: skew(-30deg);
    -ms-transform: skew(-30deg);
    transform: skew(-30deg);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
    transition: all 0.3s;
}
.n-banner .banner-con .arrow-down {
    width: 70px;
    display: inline-block;
    -webkit-animation-name: tds-keyframe-bounce;
    animation-name: tds-keyframe-bounce;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    cursor: pointer;
}
.n-banner .n-path{
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
}
.n-banner .n-path > div{
    display: flex;
    align-items: center;
    padding:0 15px;
    height: 60px;
    background: -moz-linear-gradient(left, rgba(215, 45, 33, .9) 0%, rgba(215, 45, 33, .1) 100%);
    background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba(215, 45, 33, .9)), color-stop(100%,rgba(215, 45, 33, .1)));
    background: -webkit-linear-gradient(left, rgba(215, 45, 33, .9) 0%,rgba(215, 45, 33, .1) 100%);
    background: -o-linear-gradient(left, rgba(215, 45, 33, .9) 0%,rgba(215, 45, 33, .1) 100%);
    background: -ms-linear-gradient(left, rgba(215, 45, 33, .9) 0%,rgba(215, 45, 33, .1) 100%);
    background: linear-gradient(to right, rgba(215, 45, 33, .9) 0%,rgba(215, 45, 33, .1) 100%);
}
.n-banner .n-path .icon-dizhi{
    margin-right: 4px;
}
.n-banner .n-path .icon-jiantouyou{
    margin:0 2px;
}
@keyframes tds-keyframe-bounce {
    0%,20%,50%,80%,to {
        transform: translateY(0)
    }

    40% {
        transform: translateY(-5px)
    }

    60% {
        transform: translateY(-3px)
    }
}

.n-type{
    width: 100%;
	background: #fff;
	overflow:hidden;
}
.n-type li{
	text-align: center;
}
.n-type a{
	line-height: 70px;
	text-align: center;
	display: inline-block;
	position: relative;
    font-size: 16px;
}
.n-type a:after{
	content: "";
    width: 100%;
    height: 2px;
    position: absolute;
    background: #da251c;
    bottom: 0;
    left:0;
    transform-origin: center;
    transform: scale(0, 1);
    transition: transform .3s cubic-bezier(1, 0, 0, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.n-type li:last-child a:before{
	display: none;
}
.n-type li.on a{
	color: #da251c;
}
.n-type li:hover a:after,
.n-type li.on a:after{
	transform-origin: center;
    transform: scale(1);
}

/*公共内容*/
.n-y{
    overflow:hidden;
}
.n-y img{
    max-width: 100%;
    height: auto;
}

.no-data{
    width: 100%;
    text-align: center;
}
.n-page{
    width: 100%;
    border-top: 1px #eee solid;
    display: flex;
    justify-content: space-between;
    align-items: center;
    overflow: hidden;
}
.n-page .pagetext{
    color: #888;
}
.n-page ul{
    display: flex;
}
.n-page li{
    border:1px #eee solid;
    margin-right: 4px;
}
.n-page li:last-child{
    margin-right: 0;
}
.n-page a{
    padding:4px 10px;
    display: block;
}
.n-page li.disabled{
    background:#eee;
    pointer-events: none;
}
.n-page li.active{
    background: #da251c;
}
.n-page li.active a{
    color: #fff;
}

/*单页*/
.n-single{
    width: 100%;
    background: #fff;
    padding:60px;
    overflow: hidden;
}

/*工程监理*/
.n-case{
    width: 100%;
    overflow: hidden;
}
.n-case .case-list{
    width: 100%;
    overflow: hidden;
}
.n-case .case-list li{
    width: 23.5%;
    float: left;
    margin-right: 2%;
    margin-bottom: 2%;
    padding:6px;
}
.n-case .case-list li:nth-child(4n){
    margin-right: 0;
}
.n-case .case-list a{
    display: block;
    background: #fff;
}
.n-case .case-list a:hover{
    box-shadow: 0 0 6px rgba(0, 0, 0, .3);
}
.n-case .case-list .image{
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    position: relative;
    overflow: hidden;
}
.n-case .case-list .image .box{
    width: 100%;
    height: 100%;
    position: absolute;
    left:0;
    top:0;
}
.n-case .case-list .image .box img{
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}
.n-case .case-list .title{
    padding:20px;
    text-align: center;
    /*超出部分隐藏*/
    overflow: hidden;
    /*强制在一行*/
    white-space: nowrap;
    /*文本超出部分省略*/
    text-overflow: ellipsis;
}
.n-case .case-detail{
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    overflow: hidden;
}
.n-case .case-detail .detail-left,
.n-case .case-detail .deatil-right{
    background: #fff;
}
.n-case .case-detail .detail-left{
    width: 74%;
    padding:50px;
}
.n-case .case-detail .detail-left .title{
    text-align: center;
}
.n-case .case-detail .detail-left .date{
    width: 100%;
    border:1px #eee solid;
    line-height: 35px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    overflow: hidden;
}
.n-case .case-detail .detail-left .date .left{
    width: 210px;
    background: url(../images/time-bg_03.png) no-repeat center left;
    padding-left: 15px;
    display: flex;
    align-items: center;
}
.n-case .case-detail .detail-left .date .left i{
    margin-right: 6px;
}
.n-case .case-detail .detail-left .date .center{
    display: flex;
    align-items: center;
}
.n-case .case-detail .detail-left .date .right{
    padding-right: 15px;
}
.n-case .case-detail .detail-left .page{
    border-top: 1px #eee solid;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.n-case .case-detail .detail-left .page .left{
    line-height: 32px;
}
.n-case .case-detail .detail-left .page .right{
    background: #eee;
    width: 140px;
    height: 48px;
}
.n-case .case-detail .detail-left .page .right a{
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.n-case .case-detail .detail-left .page .right i{
    margin-right: 6px;
}
.n-case .case-detail .detail-left .page .right a:hover{
    background: #da251c;
    color: #fff;
}
.n-case .case-detail .detail-right{
    width: 24%;
}
.n-case .case-detail .detail-right .title{
    padding:20px;
    display: flex;
    background: #fff;
}
.n-case .case-detail .detail-right .title i{
    color: #da251c;
    margin-right: 10px;
    font-size: 20px;
}
.n-case .case-detail .detail-right .content{
   
}
.n-case .case-detail .detail-right .content li{
    width: 100%;
    float: left; 
    background: #fff;
}
.n-case .case-detail .detail-right .content li .image{
    width: 100%;
    overflow: hidden;
}
.n-case .case-detail .detail-right .content li .image img{
    display: block;
}
.n-case .case-detail .detail-right .content li .title{
    padding:20px;
    text-align: center;
    /*超出部分隐藏*/
    overflow: hidden;
    /*强制在一行*/
    white-space: nowrap;
    /*文本超出部分省略*/
    text-overflow: ellipsis;
}

/*人力资源*/
.n-job{
    width: 100%;
    overflow: hidden;
}
.n-job .concept-box{
    width: 100%;
    overflow: hidden;
}
.n-job .concept-box ul li {
    float: left;
    width: 100%;
    position: relative;
    background: #fff;
    margin-bottom: 20px;
    padding: 60px 50px;
}
.n-job .concept-box ul li dt {
    width: 100%;
    height: 100%;
}
.n-job .concept-box ul li .txt {
    float: left;
    width: 27%;
    padding-right: 3%;
    padding-left: 2%;
    position: relative;
}
.n-job .concept-box ul li .txt:after {
    content:'';
    position: absolute;
    left: 0;
    top: 0;
    width: 8px;
    height: 8px;
    border: 3px solid #000;
    border-radius: 100px;
}
.n-job .concept-box ul li .txt b {
    display: block;
    font-weight: normal;
    margin-bottom: 40px;
}
.n-job .concept-box ul li .txt p {
    font-size: 16px;
}
.n-job .concept-box ul li img {
    float: right;
    width: 72%;
    padding-left: 5%;
    border-left: 1px solid #c1c1c1;
}
.n-job .jobbox {
    overflow: hidden;
}
.n-job .jobbox .desc {
    height: 60px;
    line-height: 60px;
    background: #da251c;
    padding-left: 3%;
}
.n-job .jobbox .desc span {
    float: left;
    color: #fff;
    font-size: 16px;
    padding-right: 10px;
}
.n-job .jobbox .desc span:nth-child(1) {
    width: 25%;
}
.n-job .jobbox .desc span:nth-child(2) {
    width: 10%;
}
.n-job .jobbox .desc span:nth-child(3) {
    width: 10%;
}
.n-job .jobbox .desc span:nth-child(4) {
    width: 45%;
}
.n-job .jobbox .desc span:nth-child(5) {
    width: 10%;
}
.n-job .jobbox ul li {
    border-bottom: 1px solid #dfdfdf;
}
.n-job .jobbox ul li .jobtop {
    padding:18px 0 18px 3%;
    background: #fff;
    cursor: pointer;
    display: flex;
}
.n-job .jobbox ul li dt {
    background: #ddd;
    padding:2% 3%;
    display: none;
}
.n-job .jobbox ul li span {
    float: left;
    color: #000;
    font-size: 16px;
    align-self: center;
    padding-right: 10px;
}
.n-job .jobbox ul li span:nth-child(1) {
    width: 25%;
}
.n-job .jobbox ul li span:nth-child(2) {
    width: 10%;
}
.n-job .jobbox ul li span:nth-child(3) {
    width: 10%;
}
.n-job .jobbox ul li span:nth-child(4) {
    width: 45%;
}
.n-job .jobbox ul li span:nth-child(5) {
    width: 10%;
}
.n-job .jobbox ul li .jobdes div {
    color: #000;
    margin-bottom: 20px;
}
.n-job .jobbox ul li .job-in {
    width: 170px;
    height: 50px;
    line-height: 50px;
    font-size: 16px;
    color: #fff;
    text-align: center;
    background: #da251c;
    display: block;
}

/*新闻中心*/
.n-news{
    width: 100%;
    overflow: hidden;
}
.n-news .news-list{
    width: 100%;
    overflow: hidden;
}
.n-news .news-list li{
    width: 100%;
    float: left;
    margin-bottom: 30px;
    padding:3px;
}
.n-news .news-list a{
    padding:20px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.n-news .news-list a:hover{
    box-shadow: 0 0 6px rgba(0, 0, 0, .15);
}
.n-news .news-list .image{
    width: 20%;
}
.n-news .news-list .image img{
    display: block;
}
.n-news .news-list .word{
    width: 78%;
}
.n-news .news-list .word .title{
    /*超出部分隐藏*/
    overflow: hidden;
    /*强制在一行*/
    white-space: nowrap;
    /*文本超出部分省略*/
    text-overflow: ellipsis;
}
.n-news .news-list .word .summary{
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.n-news .news-list .word .more{
    width: 132px;
    height: 44px;
    background: #da251c;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color:#fff;
}
.n-news .news-list .word .more i{
    margin-left:10px;
}
.n-news .news-list a:hover .word .more i{
    -webkit-animation-name: more-keyframe-left;
    animation-name: more-keyframe-left;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
}
.n-news .news-detail{
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    overflow: hidden;
}
.n-news .news-detail .detail-left,
.n-news .news-detail .deatil-right{
    background: #fff;
}
.n-news .news-detail .detail-left{
    width: 74%;
    padding:50px;
}
.n-news .news-detail .detail-left .title{
    text-align: center;
}
.n-news .news-detail .detail-left .date{
    width: 100%;
    border:1px #eee solid;
    line-height: 35px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    overflow: hidden;
}
.n-news .news-detail .detail-left .date .left{
    width: 210px;
    background: url(../images/time-bg_03.png) no-repeat center left;
    padding-left: 15px;
    display: flex;
    align-items: center;
}
.n-news .news-detail .detail-left .date .left i{
    margin-right: 6px;
}
.n-news .news-detail .detail-left .date .center{
    display: flex;
    align-items: center;
}
.n-news .news-detail .detail-left .date .right{
    padding-right: 15px;
}
.n-news .news-detail .detail-left .page{
    border-top: 1px #eee solid;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.n-news .news-detail .detail-left .page .left{
    line-height: 32px;
}
.n-news .news-detail .detail-left .page .right{
    background: #eee;
    width: 140px;
    height: 48px;
}
.n-news .news-detail .detail-left .page .right a{
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.n-news .news-detail .detail-left .page .right i{
    margin-right: 6px;
}
.n-news .news-detail .detail-left .page .right a:hover{
    background: #da251c;
    color: #fff;
}
.n-news .news-detail .detail-right{
    width: 24%;
}
.n-news .news-detail .detail-right .title{
    padding:20px;
    display: flex;
    background: #fff;
}
.n-news .news-detail .detail-right .title i{
    color: #da251c;
    margin-right: 10px;
    font-size: 20px;
}
.n-news .news-detail .detail-right .content{
   
}
.n-news .news-detail .detail-right .content li{
    width: 100%;
    float: left; 
    padding:20px;
    background: #fff;
}
.n-news .news-detail .detail-right .content li .t{
    padding-bottom: 20px;
    border-bottom: 1px #eee solid;
}
.n-news .news-detail .detail-right .content li .s{
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

/*联系我们*/
.n-contact{
    width: 100%;
    overflow: hidden;
}
.n-contact .contact-box,
.n-contact .feedback-box{
    width: 100%;
    background: #fff;
    overflow: hidden;
}
.n-contact .contact-box{
    display: flex;
    align-items: stretch;
    justify-content: space-between;
}
.n-contact .contact-box .left{
    width: 47%;
}
.n-contact .contact-box .left{
    padding:60px;
}
.n-contact .contact-box .left .title{
    padding-bottom: 20px;
    border-bottom: 1px #eee solid;
}
.n-contact .contact-box .left .content li{
    line-height: 32px;
}
.n-contact .contact-box .right{
    width: 50%;
}
.n-contact .contact-box .right .my-map{
    width: 100%;
    height: 100%;
}
.n-contact .feedback-box{
    padding:60px;
}
.n-contact .feedback-box .title{
    width: 100%;
    border-bottom: 1px #eee solid;
    padding-bottom: 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    line-height: 36px;
    overflow: hidden;
}
.n-contact .feedback-box .content{
    width: 100%;
    overflow: hidden;
}
.n-contact .feedback-box .content li{
    width: 100%;
    float: left;
    margin-bottom: 20px;
}
.n-contact .feedback-box .content li.half{
    width: 49%;
}
.n-contact .feedback-box .content li.half:nth-child(2n){
    float:right;
}
.n-contact .feedback-box .content input{
    width: 100%;
    height: 54px;
    background: #eee;
    border:none;
    padding:0 20px;
}
.n-contact .feedback-box .content textarea{
    width: 100%;
    background: #eee;
    border:none;
    height: 160px;
    display: block;
    resize: none;
    padding:20px;
}
.n-contact .feedback-box .content li:last-child{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.n-contact .feedback-box .content label{
    display: flex;
    align-items: center;
}
.n-contact .feedback-box .content label input{
    width: 160px;
    text-transform: uppercase;
}
.n-contact .feedback-box .content label img{
    display: block;
    margin-left: 10px;
}
.n-contact .feedback-box .content button{
    width: 140px;
    height: 54px;
    background: #da251c;
    border:none;
    color: #fff;
    cursor: pointer;
}