/*------------ banner ------------*/

.banner {
    position: relative;
}

.banner .slick-arrow {
    position: absolute;
    width: 86px;
    height: 88px;
    display: block;
    border: 0;
    top: 50%;
    margin: -32px 0 0 0;
    z-index: 100;
    cursor: pointer;
    background: url('../../images/common/index/arrow.png');
}

.banner .slick-prev {
    left: 35px;
}

.banner .slick-next {
    left: auto;
    right: 35px;
    transform: rotate(180deg);
}

.banner .slick-arrow:hover {
    background-position: 0 100%;
}

/*------------ sect01 ------------*/

.sect01 {
    padding: 60px 0;
    position: relative;
    background: url(../../images/common/index/sect01_bg.jpg) no-repeat;
}

/*------------ products ------------*/

.products-box {
    float: right;
    width: 61%;
}

.products-box .title {
    text-align: center;
    position: relative;
    margin: 0 0 15px;
}

.products-box .title span {
    font-size: 70px;
    color: #555;
    font-weight: 400;
    display: block;
    margin: 0;
    font-family: 'Teko', serif;
    letter-spacing: 1.2px;
    line-height: 1.5;
}

.products-box .title span::first-letter {
    color: #F08519;
}

.products-box .title h2 {
    line-height: 1;
    color: #787878;
    font-size: 17px;
    position: relative;
    margin: 0;
    letter-spacing: 4.5px;
    width: fit-content;
    margin: 0 auto;
}

.products-box .title h2::before {
    content: '';
    position: absolute;
    background: url(../../images/common/title_ic.png) no-repeat;
    width: 40px;
    height: 35px;
    left: 120%;
    top: 1%;
    transform: translateY(-50%);
}

.products-box .title a {
    font-size: 20px;
    color: #888888;
    font-weight: normal;
    display: block;
    font-family: 'Teko', sans-serif;
    position: absolute;
    right: 100px;
    top: 57%;
    transform: translateY(-50%);
    z-index: 10;
    transition: all 0.3s ease;
    padding: 10px 5px 5px;
    border-bottom: 3px solid #888888;
    text-align: center;
    line-height: 1;
    letter-spacing: 1.8px;
    line-height: 1.2;
}

.products-box .title a:hover {
    color: #FFFFFF;
    border-color: #F08519;
}

.products-box .title a:before {
    content: '';
    display: block;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    position: absolute;
    height: 0;
    transition: all .3s ease;
    background: #F08519;
    z-index: -1;
}

.products-box .title a:hover::before {
    height: 100%;
}

.hot-arrow {
    position: absolute;
    top: 42%;
    transform: translateY(-50%);
    right: 0;
    width: 75px;
}

/* hot-arrow  */

.hot-arrow .slick-prev:before, .hot-arrow .slick-next:before {
    font-family: 'icon-font' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\f105";
    position: absolute;
    top: 8px;
    left: 0;
    right: 0;
    bottom: 8px;
    width: 35px;
    height: 17.5px;
    text-indent: 0;
    text-align: center;
    color: #fff;
    line-height: 17.5px;
    font-size: 20px;
    transition: all .3s ease;
}

.hot-arrow .slick-prev:before {
    content: "\f104";
}

.hot-arrow .slick-prev:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -3px;
    width: 20px;
    height: 2px;
    background: #fff;
    opacity: 0;
    transition: all 0.3s ease;
    margin-top: -1.5px;
}

.hot-arrow .slick-prev:hover:after {
    opacity: 1;
    width: 13px;
}

.hot-arrow .slick-next:after {
    content: "";
    margin-top: -1.5px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -7px;
    width: 20px;
    height: 2px;
    background: #fff;
    opacity: 0;
    transition: all .3s ease;
}

.hot-arrow .slick-next:hover:after {
    opacity: 1;
    width: 13px;
}

.hot-arrow .slick-next {
    left: 50%;
    margin-left: 1.5px;
}

.hot-arrow .slick-prev, .hot-arrow .slick-next {
    width: 35px;
    height: 35px;
    transition: all .3s ease;
    border: none;
    padding: 0;
    text-indent: -5000px;
    cursor: pointer;
    position: absolute;
    z-index: 1;
    background-repeat: no-repeat;
    background-position: center;
    border-radius: 50%;
    background: #BABABA;
}

.hot-arrow .slick-prev:hover, .hot-arrow .slick-next:hover {
    background: #F08519;
}

.hot-arrow .slick-next:hover:before {
    text-indent: 12px;
}

.hot-arrow .slick-prev:hover:before {
    text-indent: -4px;
}

/* hot-arrow  */

.product-list {
    margin: 0 -11px;
}

.product-list li {
    width: 25%;
    padding: 0 11px;
}

.product-list li .box {
    max-width: 280px;
    margin: 10px auto 10px;
    padding: 10px 10px 10px;
    background: rgba(255, 255, 255, 0.85);
    border: 1px solid #AAAAAA66;
    box-sizing: border-box;
    transition: all .3s ease;
    display: block;
    position: relative;
    top: 0;
    box-shadow: -1px 3px 5px rgb(0 0 0 / 10%);
    border-bottom: 4px solid #888;
}

.product-list li .box .cover {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 5;
    font-size: 0;
}

.product-list li .box:hover {
    border-color: #F0851966;
    top: -10px;
    border-bottom-color: #F08519;
}

.product-list li .description {
    font-size: 14px;
    line-height: 1.5;
    color: #999;
    text-align: center;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    height: 42px;
    margin: 10px 0 5px;
}

.product-list .pic {
    max-width: 260px;
    margin: 0 auto;
    position: relative;
    box-sizing: border-box;
    z-index: 1;
    overflow: hidden;
}

.product-list .pic img {
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -ms-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;
    transition: all 0.8s ease;
}

.product-list li:hover .pic img {
    -moz-transform: scale(1.2);
    -webkit-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
}

.product-list .name {
    text-align: center;
    line-height: 1.2;
    color: #3D3939;
    font-size: 17px;
    height: 25px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin: 25px 0 5px;
    letter-spacing: 0.5px;
}

.product-list .text {
    max-width: 280px;
    margin: 0 auto;
}

.product-list .btn {
    color: #888;
    display: block;
    padding: 20px 10px 0;
    font-size: 20px;
    font-family: 'Teko', serif;
    letter-spacing: 1.8px;
    transition: all .3s ease;
}

.product-list .box:hover .btn {
    color: #F08519;
    transition: all .3s ease;
}

.product-list li .box.new:before {
    content: '';
    display: block;
    width: 66px;
    height: 66px;
    position: absolute;
    top: 0;
    z-index: 15;
    left: 0;
    background: url(../../images/common/index/top.png);
}

/*------------ sect02 ------------*/

.sect02 {
    background: url(../../images/common/index/sect02_bg.jpg) top center;
    padding: 80px 0;
}

/*------------ news ------------*/

.news-box {
    float: left;
    width: 47%;
}

.news-box .sect-title {
    text-align: center;
    position: relative;
    margin: 0 0 30px;
    display: flex;
    align-items: center;
}

.news-box .news_title {
    display: flex;
    align-items: center;
}

.news-box .sect-title span {
    font-size: 70px;
    color: #555;
    font-weight: 400;
    display: block;
    margin: 0;
    font-family: 'Teko', serif;
    letter-spacing: 1.2px;
    line-height: 1;
}

.news-box .sect-title span::first-letter {
    color: #F08519;
}

.news-box .sect-title h2 {
    line-height: 1;
    color: #787878;
    font-size: 17px;
    position: relative;
    margin: 0;
    letter-spacing: 4.5px;
    padding: 15px 0 0 45px;
}

.news-box .sect-title h2::before {
    content: '';
    position: absolute;
    background: url(../../images/common/title_ic_s.png) no-repeat;
    width: 20px;
    height: 18px;
    left: 15px;
    bottom: 0;
}

.news-box .sect-title a {
    font-size: 20px;
    color: #888888;
    font-weight: normal;
    display: block;
    font-family: 'Teko', sans-serif;
    position: absolute;
    right: 15px;
    top: 57%;
    transform: translateY(-50%);
    z-index: 10;
    transition: all 0.3s ease;
    padding: 10px 5px 5px;
    border-bottom: 3px solid #888888;
    text-align: center;
    line-height: 1;
    letter-spacing: 1.8px;
    line-height: 1.2;
}

.news-box .sect-title a:hover {
    color: #FFFFFF;
    border-color: #F08519;
}

.news-box .sect-title a:before {
    content: '';
    display: block;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    position: absolute;
    height: 0;
    transition: all .3s ease;
    background: #F08519;
    z-index: -1;
}

.news-box .sect-title a:hover::before {
    height: 100%;
}

.news-list {
    margin: 0 -10px;
}

.news-list li {
    width: 50%;
    padding: 0 10px;
}

.news-list li:nth-child(2n+1) {
    clear: left;
}

.news-list li .box {
    transition: all .3s ease;
    position: relative;
    max-width: 375px;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 10px 0 0;
}

.news-list li .cover {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 5;
    font-size: 0;
}

.news-list li .pic {
    position: relative;
    box-sizing: border-box;
    overflow: hidden;
}

.news-list li .pic::before {
    content: '';
    position: absolute;
    width: calc(100% - 10px);
    height: calc(100% - 10px);
    border: 1px solid #AAAAAA66;
    top: 5px;
    left: 5px;
    z-index: 5;
    transition: all 0.3s ease;
}

.news-list li:hover .pic:before {
    border-color: #F08519;
}

.news-list .pic img {
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -ms-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;
    transition: all 0.8s ease;
}

.news-list li:hover .pic img {
    -moz-transform: scale(1.2);
    -webkit-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
}

.news-list li .date, .news-date {
    position: absolute;
    width: 57px;
    height: 63px;
    line-height: 1.2;
    color: #fff;
    font-size: 12px;
    text-align: center;
    background: url('../../images/common/news/date.png') 0 0% no-repeat;
    left: 25px;
    top: 0;
    z-index: 15;
    letter-spacing: 0.35px;
    font-family: 'Poppins', serif;
}

.news-list li:hover .date {
    background-position: 0 100%;
}

.news-list li .date b, .news-date b {
    font-size: 25px;
    color: #fff;
    display: block;
    transition: all .3s ease;
    margin: 5px 0 -2px 0;
}

.news-list li .name {
    font-size: 16px;
    line-height: 1.5;
    color: #3D3939;
    text-align: center;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    height: 45px;
    margin: 15px 0 5px;
    letter-spacing: 0.5px;
}

/*------------ about ------------*/

.about-box {
    float: right;
    width: 47%;
    position: relative;
}

.about-box .about-bg {
    position: relative;
}

.about-box .about-bg-box {
    display: flex;
    position: relative;
    background: #ECECEC;
    background: -moz-linear-gradient(bottom, #F2F2F2 0%, #ECECEC 100%);
    background: -webkit-linear-gradient(bottom, #F2F2F2 0%, #ECECEC 100%);
    background: linear-gradient(to bottom, #F2F2F2 0%, #ECECEC 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#F2F2F2', endColorstr='#ECECEC', GradientType=1);
    padding: 0 10px 10px;
}

.about-box .about-pic {
    width: 40%;
    position: relative;
}

.about-box .about-pic img {
    position: absolute;
    left: 0;
}

.about-box .about-editor {
    position: relative;
    width: 60%;
    padding: 50px 0 30px 50px;
}

.about-box .editor {
    position: relative;
    display: -webkit-box;
    -webkit-line-clamp: 6;
    -webkit-box-orient: vertical;
    overflow: hidden;
    height: 145px;
    color: #777777;
    letter-spacing: 0.8px;
    line-height: 1.8;
    font-size: 15px;
    text-align: justify;
}

.about-box .sect-title {
    text-align: center;
    position: relative;
    margin: 0 0 30px;
    display: flex;
    align-items: center;
}

.about-box .sect-title span {
    font-size: 70px;
    color: #555;
    font-weight: 400;
    display: block;
    margin: 0;
    font-family: 'Teko', serif;
    letter-spacing: 1.2px;
    line-height: 1;
}

.about-box .sect-title span::first-letter {
    color: #F08519;
}

.about-box .sect-title h2 {
    line-height: 1;
    color: #787878;
    font-size: 17px;
    position: relative;
    margin: 0;
    letter-spacing: 4.5px;
    padding: 15px 0 0 45px;
}

.about-box .sect-title h2::before {
    content: '';
    position: absolute;
    background: url(../../images/common/title_ic_s.png) no-repeat;
    width: 20px;
    height: 18px;
    left: 15px;
    bottom: 0;
}

.about-bg a {
    font-size: 20px;
    color: #888888;
    font-weight: normal;
    display: block;
    font-family: 'Teko', sans-serif;
    transform: translateY(-50%);
    z-index: 10;
    transition: all 0.3s ease;
    padding: 10px 5px 5px;
    border-bottom: 3px solid #888888;
    text-align: center;
    line-height: 1;
    letter-spacing: 1.8px;
    line-height: 1.2;
    position: relative;
    margin: 50px 0 0 0;
    width: 93px;
}

.about-bg a:hover {
    color: #FFFFFF;
    border-color: #F08519;
}

.about-bg a:before {
    content: '';
    display: block;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    position: absolute;
    height: 0;
    transition: all .3s ease;
    background: #F08519;
    z-index: -1;
}

.about-bg a:hover::before {
    height: 100%;
}

.about-box .about-editor h3 {
    color: #545454;
    font-size: 26px;
    letter-spacing: 6.5px;
    margin: 0;
    position: relative;
    display: inline-block;
    position: absolute;
    z-index: 5;
    top: -30px;
    left: 50px;
}

.about-box .about-editor h3 span {
    color: #F08519;
}

/*------------ sect03 ------------*/

.sect03 {
    padding: 60px 0;
}

/*------------ rwd ------------*/

@media screen and (max-width: 1280px) {
    .service-box, .products-box, .news-box, .about-box, .album-box, .links-box {
        float: none;
        width: 100%;
        text-align: center;
    }
    .news-box, .about-box {
        max-width: 800px;
        margin: 0 auto;
    }
    .about-box {
        padding: 80px 0 0 0;
    }
    .sect01 {
        background-position: top right;
    }
}

@media screen and (max-width: 1100px) {
    /* sect01-products */
    .sect01 {
        padding: 50px 0;
    }
    .products-box .title span {
        font-size: 35px;
    }
    /* sect02-news  */
    .sect02 {
        padding: 50px 0;
    }
    .news-box .sect-title span {
        font-size: 35px;
        line-height: 1.5;
    }
    .news-box .news_title {
        display: flex;
        flex-direction: column-reverse;
    }
    .news-box .sect-title {
        flex-direction: column;
        margin: 0;
    }
    /* about */
    .about-box {
        padding: 50px 0 0;
    }
    .about-box .sect-title span {
        font-size: 35px;
        line-height: 1.5;
    }
    .about-box .sect-title {
        flex-direction: column-reverse;
    }
    .about-box .about-editor h3 {
        position: relative;
        letter-spacing: 2.5px;
        top: initial;
        left: initial;
        display: block;
        text-align: left;
    }
    .about-box .about-bg-box {
        display: block;
    }
    .about-box .about-editor {
        position: relative;
        width: 100%;
        padding: 15px;
        box-sizing: border-box;
    }
    .about-box .about-pic {
        width: 100%;
    }
    .about-box .about-pic img {
        position: relative;
    }
    .about-box .more {
        margin: 40px auto 0;
        position: relative;
    }
    .about-box .editor {
        -webkit-line-clamp: initial;
        height: auto;
    }
}

@media screen and (max-width: 767px) {
    .banner .slick-prev {
        left: 5px;
    }
    .banner .slick-next {
        left: auto;
        right: 5px;
    }
    /* sect01-products */
    .products-box .title a {
        position: relative;
        width: 90px;
        left: 0;
        right: 0;
        margin: 0 auto;
        top: 15px;
    }
    .hot-arrow {
        width: 100%;
        top: 50%;
    }
    .hot-arrow .slick-prev {
        left: 0;
    }
    .hot-arrow .slick-next {
        right: 0;
        left: initial;
    }
    /* sect02-news  */
    .news-box .sect-title a {
        position: static;
        width: 90px;
        left: 0;
        right: 0;
        margin: 15px auto 0;
        top: 0;
    }
}

@media screen and (max-width: 600px) {
    .news-list {
        margin: 0;
    }
    .news-list li {
        width: 100%;
        padding: 0 0 30px;
    }
}