body,html {
    margin: 0;
    padding: 0;
    font-size: 16px;
    font-family: OPPSansR;
}
p,ul,li{
    margin: 0;
    padding: 0;
    list-style: none;
}
a {
    text-decoration:none;
    color:#BEBEBE;
}
@font-face {
    font-family: 'OPPSansB';
    src: url('../fonts/OPPOSans-B.ttf') format('truetype');
}
@font-face {
    font-family: 'OPPSansM';
    src: url('../fonts/OPPOSans-M.ttf') format('truetype');
}
@font-face {
    font-family: 'OPPSansR';
    src: url('../fonts/OPPOSans-R.ttf') format('truetype');
}
@font-face {
    font-family: 'OPPSansH';
    src: url('../fonts/OPPOSans-H.ttf') format('truetype');
}
img {
    max-width:100%;
    vertical-align: top;
}
.hide{
        display:none
}
.submenu_back {
    display:none
}
section {
    opacity:0;
    transform: translateY(50px);
    transition: transform 0.8s ease-in-out 0s, opacity 0.8s ease-in-out 0s;
}
footer {
    opacity:0;
    transition: transform 0.8s ease-in-out 0s, opacity 0.8s ease-in-out 0s;
}

section.scroll_show,footer.scroll_show {
    opacity: 1;
    transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
}

/* header nav */
header{
    min-width: 1180px;
}
header .nav {
    position: fixed;
    display: flex;
    justify-content: space-between;
    z-index: 5;
    padding: 24px;
    width: 100%;
    min-width: 1180px;
    box-sizing: border-box;
    transition:all .3s;
}
header .nav_list {
    display: flex;
    justify-content: space-around;
    width: 60%;
    font-size: 1rem;
}

header .nav_list .nav_item {
    padding-top:10px;
    position:relative
}   
header .nav.scroll_nav .nav_list .nav_item{
    padding-bottom:10px
}
header .nav_list .nav_item:hover a:after,
header .nav_list .nav_item.active a:after {
    content:'';
    width:100%;
    position:absolute;
    height:2px;
    background:#fff;
    left:0;
    top: 50px;
}
header .nav_list .nav_item:hover a,
header .nav_list .nav_item.active a{
    color:#fff;
    font-family: 'OPPSansB';
}
header .nav_contact {
    display: flex;
    justify-content: space-between;
    min-width: 184px;
    font-size: 12px;
    height: 24px;
    line-height: 24px;
    color: rgba(255,255,255,.8);
    padding-top: 10px;
}
header .nav_contact a {
    color: rgba(255,255,255,.8);
}

header  .nav_contact .contact_icon {
    display: flex;
    gap: 14px;
}

header  .nav_contact .contact_chat,
header  .nav_contact .contact_in ,
header  .nav_contact .contact_search {
    position:relative;
    z-index: 111;
}
header  .nav_contact .contact_btn {    
position:relative;    
background: url(../img/search_white.png);    
width:24px;    
height:24px;    
cursor: pointer;
}
header  .nav_contact .contact_show {
    display:none
}
header  .nav_contact .contact_show.active {
    display:block
}
header  .nav_contact .contact_chat .chat_bg{
    background: url(../img/chat_white.png);
    cursor:pointer
}
header  .nav_contact .contact_show.search_show {
    
position: absolute;
    
right: 24px;
    
top: 0;
}
header .nav.scroll_nav .nav_contact .contact_chat .chat_bg{
    background: url(../img/chat.png);
}
header .nav.scroll_nav .nav_contact .contact_search .search_bg{
    background: url(../img/search.png);
}

header .nav.scroll_nav {
    background:#fff;
    box-shadow: 0px 5px 20px 0px rgba(0,0,0,0.05);
    padding: 10px 20px;
}
header .nav  .nav_logo{
    width: 252px;
    transition: all .5s;
}
header .nav  .nav_logo a,
header .nav.scroll_nav  .nav_logo img {    
    transition: all .3s;
}
header .nav.scroll_nav  .nav_logo{
    transition: all .3s;
    padding: 10px;
    box-sizing: content-box;
    width: 180px;
}
header .nav.scroll_nav .nav_item a ,
header .nav.scroll_nav .nav_contact,
header .nav.scroll_nav .nav_contact a{
    color:#414141;
}
header .nav.scroll_nav .nav_list .nav_item:hover a:after, 
header .nav.scroll_nav .nav_list .nav_item.active a:after {
    background:#414141;
    width: 80%;
    left:50%;
    transform:translateX(-50%);
    top: 45px;
}

header .nav_contact .contact_chat .chat_show img,
header .nav_contact .contact_in .in_show img{
        min-width:60px;
    max-width:140px;
}
header .nav_contact .contact_chat .chat_show,
header .nav_contact .contact_in .in_show{
    position:absolute;
    top:24px;
    text-align: center;
    left:50%;
    transform:translateX(-50%);
    background: #fff;
    padding: 2px;
    border: 1px solid #ebebeb;
    z-index: 11111;
}
header  .nav_contact .contact_chat .chat_show img {
    cursor:unset;
}

header .nav {
    box-shadow: 0px 5px 20px 0px rgba(0,0,0,0.05);
    background: #fff;
}
header .nav_list .nav_item a {
    color: #131415d4;
}
header .nav_list .nav_item.active a ,
header .nav_list .nav_item:hover a {
    color: #131415;
}
header .nav.scroll_nav .nav_list .nav_item:hover a:after, 
header .nav.scroll_nav .nav_list .nav_item.active a:after,
header .nav_list .nav_item:hover a:after, 
header .nav_list .nav_item.active a:after {
    width: 28px;
    background: #131415;
    left: 50%;
    transform: translateX(-50%);
    top: 50px;
}
header .nav .nav_item a, header .nav .nav_contact, header .nav .nav_contact a {
    color:#414141;        
}
header .nav .nav_contact .contact_chat .chat_bg {
        background: url(../img/chat.png);
}

header .nav .nav_contact .contact_in .in_bg {
        background: url(../img/in.png);
        background-size: 100%;
}
header .nav .nav_contact .contact_search .search_bg{
    background: url(../img/search.png);
}

.nav_item:hover .submenu {
    display:block;
}
.submenu {
    padding-bottom: 15px;
    display:none;
    position: fixed;
    width: 100%;
    left: 0;
    background: #ebebeb;
    top: 78px;
    z-index: 1;
}
.scroll_nav .submenu{
    top: 66px;
}
.submenu a:after {
    display:none
}
.submenu{
    box-shadow: 0 5px 10px 0 rgba(111,111,111,.1);
}
.nav_item .submenu ul  {
    display: flex;
    height: 100%;
    list-style: none;
    text-align: center;
    justify-content: center;
}
.nav_item .submenu ul li {
    display: flex;
    text-align: center;
    flex-direction: column;
}

.nav_item .submenu ul li.main-category1{
    margin-top:10px;
}
header .nav_list .nav_item:hover .submenu .main-category1 a,
header .nav_list .nav_item.active .submenu .main-category1 a{
    font-family:normal;
}
header .nav_list .nav_item:hover .submenu .main-category1 a:hover,
header .nav_list .nav_item.active .submenu .main-category1 a:hover{
    
    color:#000;
}

.nav_item .submenu ul li.main-category,
.nav_item .submenu ul li.main-category1{
    border-right: 1px solid #c7c7c7;
    padding: 10px 20px;
    gap: 15px;
}
.nav_item .submenu ul li.main-category1:last-child,
.nav_item .submenu ul li.main-category:last-child {
    border-right:none
}
.nav_item .submenu ul li .sub-category {
    display: flex;
    gap: 15px;
    flex-direction: column;
    justify-content: flex-start;
}
.nav_item .submenu ul li .sub-category li {
    display:grid;
}
.nav_item .submenu ul li.main-category a,
.nav_item .submenu ul li.main-category1 a{   
    color:#414141;
}

.nav_item .submenu ul li .sub-category a {
    font-family:OPPSansR; 
}
.nav_item .submenu ul li.main-category a:hover {
    color:#000;
    font-weight:bold
}

/* section */
section {
    position:relative;
    width:100%;
    background: #fff;
    padding-top: 80px;
}
section .section_main {
    margin: 0 auto;
    display: grid;
    width: 1320px;
}

section .section_main .section_content {
    display: flex;
    font-size: 18px;
}
.section_tit {
    position:relative;
    font-size:90px;
    display:flex;
    color: #F0F0F0;
    margin-bottom: 82px;
    height: 90px;
    line-height: 90px;
    margin-left: 160px;
    transform: translateY(-20px);
    transition: all .8s;
}
section.scroll_show .section_tit {
    transform: translateY(0);
}
.section_tit span {
    position:absolute;
    color: #414141;
    font-size:44px;
    line-height: 44px;
    left:0;
    top: 60px;
}

/* footer */
footer {
    background:#FAFAFA;
}

footer .footer_map {
    width:1200px;
    margin:0 auto;
    padding: 80px 0 115px;
}
footer .contact_list {
    display: flex;
    justify-content: space-between;
}

footer .contact_list .contact_item  {
    display:grid;
    gap: 32px;
}
footer .contact_list .contact_item  a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 32px;
}
footer .contact_list .contact_item  .contact_tit {
    color: #414141;
    font-size: 20px;
    font-weight: bold;
    line-height: 24px;
}
footer .contact_list .contact_item a .contact_tit span {
    position:relative;
    padding-right: 35px;
}
footer .contact_list .contact_item a .contact_tit span:after {
    content:'';
    position:absolute;
    width:25px;
    height:25px;
    background:url(../img/map.png) center right no-repeat;
    background-size:100%;
    right: 0;
}

footer .contact_list .contact_item  .contact_txt {
    font-size:12px;
    line-height: 18px;
    color: #0A0A0F;
}

footer .contact_list .contact_item.contact_consult {    
    gap: 20px;
}
footer .contact_list .contact_item.contact_consult .contact_txt  {
    position:relative;
    padding-left:24px;
    display: grid;
    gap: 13px;
}
footer .contact_list .contact_item.contact_consult .contact_txt span  {
    color:#8C94A3;
    font-size:14px;
    position: relative;
}
footer .contact_list .contact_item.contact_consult .contact_txt span:after {
    content:'';
    position:absolute;
    width:18px;
    height:18px;
    left: -23px;
    top:0;
    background:url(../img/email.png) center no-repeat;
    background-size:100%
}

footer .contact_list .contact_item.contact_consult .contact_txt span.contact_tel:after {    
    background-image:url(../img/telephone.png);
}


footer .copyright {
    background:#353535;
    height:60px;
}
footer .copyright .copyright_content  {
    max-width:1320px;
    margin:0 auto;
    display: flex;
    justify-content: space-between;
    font-size: 12px;
    color: #bebebe;
    height: 40px;
    padding: 10px;
}
footer .copyright .copyright_content  p {
    line-height: 40px;
}
footer .copyright .copyright_content  p:last-child {
    display:none
}
footer .copyright .copyright_content  span {
    line-height:40px
}



/* mobile */
@media screen and (max-width:700px){
    header {
        min-width:unset
    }
    /* m subnav */
    .submenu_back {
        position:absolute;
        right: -600px;
        top:20px;
        display: block;
        width: 100%;
        text-align: center;
        line-height: 20px;
        padding-bottom: 5px;
        border-bottom: 1px solid #6d727894;
        transition: all .3s;
    }
    header .nav .nav_list.show_menu .nav_item .submenu_back a {
        font-weight: bold;
    }
    .submenu_back .back_btn:after,
    .submenu_back .back_btn:before {
        content:'';
        position:absolute;
        width: 10px;
        height: 10px;
        background: #2245FF;
        left: 20px;
        transform: rotateZ(45deg);
        top: 5px;
        z-index:1;
    }
    .submenu_back .back_btn{
        cursor:pointer;
    }
    .submenu_back .back_btn:before {
        background:#fff;
        z-index:2;
        left: 23px;
    }
    .nav_list .nav_item .submenu ul .main-category1,
    .nav_list .nav_item .submenu ul .main-category,
    .nav_item .submenu ul li .sub-category li{
        width: 138px;
        z-index: 1;
        margin: 0 auto;
        padding: 0;
        line-height: 23px;
        text-align: center;
        position: relative;
        border: none;
    }
    
    .nav_list .nav_item .submenu ul .main-category.active {
        z-index:2
    }
    .nav_list .nav_item .submenu ul .main-category1  a{
        color: #6D7278;
        font-size: 14px;
    }
    .nav_list .nav_item .submenu ul .main-category1.current a {
        
        background: #2245FF;
        width: 138px;
        height: 40px;
        border-radius: 20px;
        display: block;
        text-align: center;
        line-height: 40px;
        color: #fff;
    }
    .nav_list .nav_item .submenu{
        display: unset;
    }
    .submenu ,.nav_item .submenu,
    .nav_item .submenu ul li .sub-category{
        position: fixed;
        right: 0;
        width: 174px;
        height: 100%;
        top: 0;
        left: unset;
        background: #fff;
        right: -600px;
        top: 0;
        opacity: 0;
        border-radius: 12px 0 0 12px;
        z-index: 10;
        display: block;
        transition: all .3s;
    }
    
    .nav_list .nav_item .submenu ul {
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        margin-top: 70px;
        gap: 30px;
        z-index: 11;
        position: relative;
    }
    .nav_item .submenu.current {
        right: 0;
        opacity: 1;
        transition: all .3s;
    }
    /* sub */
    .nav_item .submenu ul li .sub-category{
        transition: all .3s;
    }
    .nav_item .submenu ul li .sub-category.current {
        opacity: 1;
        right: 0;
        top: 0;
        margin: 0;
        padding-top: 70px;
    }
    .nav_item .submenu ul li .sub-category li {
        margin-bottom:30px;
    }
    
    .nav_item .submenu.current   ul .main-category .submenu_back{
        transition:all .5s;
        position: fixed;
        width: 174px;
        opacity: 0;
        right: -600px;
        transition: all .5s;
    }
    .nav_item .submenu.current  .submenu_back {
        opacity: 1;
        right: 0;
        z-index: 10;
        transition: all .5s;
    }
    .nav_item .submenu ul .main-category.active .submenu_back{
        opacity: 1;
        right: 0;
        z-index: 11;
        transition: all .3s;
    }

    
    header .home_banner {
        margin-top:50px;
    }
    header .home_banner img:nth-child(2) {
        display:none
    }
    header .home_banner .banner_m {
        display:block
    }
    header .nav_list {
        position:fixed;
        flex-direction: column;
        width: 174px;
        height:100%;
        top: 0;
        margin-left: 0;
        z-index: 1;
        justify-content: flex-start;
        gap: 30px;
        z-index: 5;
        right: -200px;
        transition: all .3s;
    }
    .nav_mask.menu_hide  {
        background:rgba(0,0,0,0);
        left: 100%;
    }
    .nav_mask {
        position:fixed;
        width:100%;
        height:100%;
        left: 0;
        background:rgba(0,0,0,.5);
        overflow: hidden;
        z-index: 2;
        transition: all .3s;
        top:0;
    }
    header .nav_list.show_menu {
        display:flex;
        margin-left: calc( 100% - 174px);
        padding-top: 0;
        right: 0;
        top: 0;
        gap: 0;
        z-index: 3;
    }
    header .nav_list:after {
        content:'';
        position:absolute;
        width:174px;
        height:100%;
        background:#fff;
        right:0;
        top:0;
        border-radius: 12px 0 0 12px;
        z-index: 0;
    }
    header .nav_list .nav_item.active{
        z-index:2;
        background:#2245FF;
        margin-bottom: 7px;
        border-radius: 20px;
    }
    header .nav_list .nav_item {
        width: 138px;
        position: unset;
        z-index: 1;
        margin: 0 auto;
        padding: 0;
        height: 40px;
        line-height: 40px;
        text-align: center;
        z-index:1
    }
    header .nav_list .nav_item:first-child {
        margin-top: 47px;
    }
    header .nav,
    header .nav.scroll_nav{
        padding:0 0;
        background:#fff;
        box-shadow: 0px 5px 20px 0px rgba(0,0,0,0.05);
        min-width: unset;
        /* overflow: hidden; */
        top: 0;
    }
    header .nav.scroll_nav .nav_logo,
    header .nav .nav_logo {
        padding:12px 16px;
        width:108px;
        height:24px;
    }
    header .nav .nav_contact{
        position: relative;
        z-index: 1;
    }
    header .nav .nav_contact .contact_txt {
        visibility:hidden
    }
    header .nav .nav_list.show_menu .nav_item a {
        color:#6D7278;
        font-size: 14px;
        font-family: 'OPPSansR';
    } 
    header .nav .nav_list .nav_item.active a {
        color:#fff;
        font-family: 'OPPSansM';
    }
   
    header .nav .nav_list .nav_item.active .submenu  a {
        color:#6D7278;
    }
    
    header .nav_item .submenu ul li.main-category a:hover {
        color:#6D7278;
        font-weight:normal
    }
    header .nav_list.show_menu .nav_item.active a.nav_menu_a {
        background:#2245FF;
        width:138px;
        height:40px;
        border-radius: 20px;
        display: block;
        text-align: center;
        line-height: 40px;
        color: #fff;
        font-weight: bold;
    }
    header .nav_list .nav_item:hover a:after, 
    header .nav_list .nav_item.active a:after {
        content:unset
    }
    .nav_contact {
        display:none
    }
    .nav_m_btn {
        background:url(../img/nav_menu.png) center no-repeat;
        width: 25px;
        height: 25px;
        margin: 12px 15px;
    }
    header .home_banner .banner_content {
        gap:30px;
        width: 90%;
    }

    header .home_banner .banner_content .banner_txt {
        font-size:14px;
        gap: 5px;
    }
    header .home_banner .banner_content .banner_txt p {
        font-size:24px;
        font-weight: bold;
    }
    header .home_banner .banner_content .go_about {
        width:32px;
        height: 32px;
    }
    header .home_banner img {
        vertical-align:top;
    }

    /* section */
    section {
        padding-top: 40px;
    }
    section .section_main {
        width: 100%;
        box-sizing: border-box;
    }
    .section_tit {
        font-size:24px;
        height: 25px;
        line-height: 25px;
        margin-bottom: 32px;
        margin-left: 0;
    }
    .section_tit span {
        font-size:20px;
        line-height: 20px;
        top: 16px;
        font-weight: bold;
        color: rgba(0,0,0,.9);
    }
    /* footer */
    footer .contact_list .contact_item.contact_consult {
        margin-bottom: 18px;
        border-bottom: navajowhite;
        padding-bottom: 0;
    }
    footer .contact_list {
        display: grid;
        justify-content: center;
        padding: 0 24px;
        grid-template-columns: repeat(1, 1fr);
    }
    footer .contact_list .contact_item {
        width:100%;
        text-align: center;
        border-bottom: 1px solid #EBEBEB;
        padding: 20px 0;
    }
    footer .contact_list .contact_item:last-child {
        border-bottom:none;
        padding-bottom: 0;
    }
    footer .footer_map {
        width:100%;
        padding: 40px 0;
    }
    footer .contact_list .contact_item.contact_consult .contact_tit {
        display:none;
    }
    footer .contact_list .contact_item.contact_consult .contact_txt {
        display: unset;
        padding: 0;
    }
    footer .contact_list .contact_item.contact_consult .contact_txt span {
        /* padding-left: 30px; */
        line-height: 24px;
        display: inline-block;
        height: 25px;
        margin-bottom: 12px;
    }
    footer .contact_list .contact_item.contact_consult .contact_txt span:after {
        width:25px;
        height:25px;
        left: -30px;
    }
    footer .contact_list .contact_item.contact_consult .contact_txt p {
        color: #0A0A0F;
        font-size:16px;
        width:100%;
        height: 40px;
        background: #fff;
        line-height: 40px;
        border-radius: 20px;
    }
    footer .contact_list .contact_item.contact_consult .contact_txt p:last-child {
        margin-top: 12px;
    }
    footer .contact_list .contact_item a {
        gap: 6px;
    }
    footer .contact_list .contact_item a .contact_tit span{
        color:#8C94A3;
        font-size:12px;
        font-weight:normal;
        padding-right: 18px;
    }
    footer .contact_list .contact_item a .contact_tit span:after {
        width:17px;
        height:17px;
        top: 0;
    }
    footer .contact_list .contact_item .contact_txt {
        font-size: 10px;
        display: flex;
        justify-content: center;
    }
    footer .contact_list .contact_item .contact_txt p {
        position:relative;
    }
    footer .contact_list .contact_item .contact_txt p:first-child {
        padding-right:8px;
    }
    footer .contact_list .contact_item .contact_txt p:first-child:after {
        content:'';
        position:absolute;
        top:50%;
        transform:translateY(-50%);
        right: 1px;
        width:5px;
        height:1px;
        background:#0A0A0F;
    }
    footer .copyright .copyright_content {
        width:100%;
        max-width:unset;
        display: block;
        height: 14px;
        padding: 20px 0;
    }
    footer .copyright {
        height:unset;
    }
    footer .copyright .copyright_content p {
        text-align:center;
        color:#8C94A3;
        line-height: 14px;
        font-size: 8px;
        display: block;
    }

    footer .copyright .copyright_content .footer_right {
        display:none;
    }
    .pop_img {
        width:80%;
        top: 45%;
    }
}
