body {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
    color: #323c3f;
}


/**/

.mt0 {
    margin-top: 0px;
}

.mr0 {
    margin-right: 0px;
}

.mb0 {
    margin-bottom: 0px;
}

.ml0 {
    margin-left: 0px;
}

.m0 {
    margin: 0px;
}


/**/

.mt5 {
    margin-top: 5px;
}

.mr5 {
    margin-right: 5px;
}

.mb5 {
    margin-bottom: 5px;
}

.ml5 {
    margin-left: 5px;
}

.m5 {
    margin: 5px;
}


/**/

.mt10 {
    margin-top: 10px;
}

.mr10 {
    margin-right: 10px;
}

.mb10 {
    margin-bottom: 10px;
}

.ml10 {
    margin-left: 10px;
}

.m10 {
    margin: 10px;
}


/**/

.mt15 {
    margin-top: 15px;
}

.mr15 {
    margin-right: 15px;
}

.mb15 {
    margin-bottom: 15px;
}

.ml15 {
    margin-left: 15px;
}

.m15 {
    margin: 15px;
}


/**/

.mt30 {
    margin-top: 30px;
}

.mr30 {
    margin-right: 30px;
}

.mb30 {
    margin-bottom: 30px;
}

.ml30 {
    margin-left: 30px;
}

.m30 {
    margin: 30px;
}


/**/

.pt0 {
    padding-top: 0px;
}

.pr0 {
    padding-right: 0px;
}

.pb0 {
    padding-bottom: 0px;
}

.pl0 {
    padding-left: 0px;
}

.p0 {
    padding: 0px;
}


/**/

.pt15 {
    padding-top: 15px;
}

.pr15 {
    padding-right: 15px;
}

.pb15 {
    padding-bottom: 15px;
}

.pl15 {
    padding-left: 15px;
}

.p15 {
    padding: 15px;
}


/**/

.pt20 {
    padding-top: 20px;
}

.pr20 {
    padding-right: 20px;
}

.pb20 {
    padding-bottom: 20px;
}

.pl20 {
    padding-left: 20px;
}

.p20 {
    padding: 20px;
}


/**/

.pt25 {
    padding-top: 25px;
}

.pr25 {
    padding-right: 25px;
}

.pb25 {
    padding-bottom: 25px;
}

.pl25 {
    padding-left: 25px;
}

.p25 {
    padding: 25px;
}


/**/

.pt30 {
    padding-top: 30px;
}

.pr30 {
    padding-right: 30px;
}

.pb30 {
    padding-bottom: 30px;
}

.pl30 {
    padding-left: 30px;
}

.p30 {
    padding: 30px;
}


/**/

.link {
    color: #323c3f;
}

.link:hover {
    color: #145a8d;
}

.bg_before_white::before {
    background-color: white !important;
}

.img_shine {
    position: relative;
    display: block;
    overflow: hidden;
}

.img_shine::before {
    position: absolute;
    content: "";
    top: 0;
    left: -75%;
    z-index: 100;
    width: 50%;
    height: 100%;
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.5) 100%);
    transform: skewX(-25deg);
}

.img_shine:hover::before {
    animation: imgShine .75s ease-in-out;
}

.img_box::before {
    content: "";
    display: inline-block;
    background: #fff;
    width: 40px;
    height: 40px;
    clip-path: polygon(100% 0, 0 0, 0 100%);
    position: absolute;
    left: 14px;
    top: 14px;
    z-index: 9;
}

.img_box::after {
    content: "";
    display: inline-block;
    position: absolute;
    background: #fff;
    width: 40px;
    height: 40px;
    right: 14px;
    bottom: 14px;
    z-index: 9;
    clip-path: polygon(100% 0, 0 100%, 100% 100%);
}

.img_zoom {
    display: inline-block;
    overflow: hidden;
}

.img_zoom img {
    transition: transform .2s;
}

.img_zoom:hover img {
    transform: scale(1.1);
}

@-webkit-keyframes imgShine {
    100% {
        left: 125%
    }
}

@-moz-keyframes imgShine {
    100% {
        left: 125%
    }
}

@keyframes imgShine {
    100% {
        left: 125%
    }
}

.cate_title {
    position: relative;
}

.cate_title::before {
    content: "";
    display: inline-block;
    width: 125px;
    height: 7px;
    position: absolute;
    bottom: -5px;
    left: 0px;
    background: #f5f5f5 url('/themes/frontend/images/bg-heading.png') center no-repeat;
}

.cate_title.cate_title_center::before {
    left: 50%;
    transform: translateX(-50%);
}

.cate_title .cate_title_name {
    border-bottom: 1px solid #ccc;
    padding-bottom: 6px;
    font-family: "Oswald";
    text-transform: uppercase;
    font-weight: 400;
    font-size: 20px;
    line-height: 38px;
    margin-top: 0px;
}

.cate_title .cate_title_name a {
    color: #323c3f;
}

.cate_title .cate_title_name a:hover {
    text-decoration: unset;
}

.cate_title.cate_title_center .cate_title_name {
    text-align: center;
}

.cate_title .view_more {
    display: inline-block;
    position: absolute;
    right: 0px;
    top: 8px;
    color: #999;
}

.cate_title2 {
    border-bottom: 1px solid #ccc;
}

.cate_title2 .cate_title2_name {
    display: inline-block;
    border-bottom: 1px solid #d5d5d5;
    margin-bottom: 0px;
    margin-top: 0px;
    padding-bottom: 0px;
    font-family: "Oswald";
    text-transform: uppercase;
    font-weight: 400;
    font-size: 20px;
    line-height: 38px;
    color: #145a8d;
    margin-top: 0px;
}

#breadcrumb {
    background: #f5f5f5;
}

#breadcrumb .breadcrumb {
    margin-bottom: 0px;
    background-color: #e8e8e8;
    border-radius: 0px;
    position: relative;
    overflow: hidden;
}

#breadcrumb .breadcrumb::before,
#breadcrumb .breadcrumb::after {
    content: "";
    display: inline-block;
    background: #145a8d;
    position: absolute;
    width: 30px;
    height: 30px;
    left: 0px;
    top: 0px;
    transform: rotate(45deg) translateX(-20px);
}

#breadcrumb .breadcrumb::after {
    top: inherit;
    left: inherit;
    right: 0px;
    bottom: 0px;
    transform: rotate(45deg) translateX(21px);
}

#page_title {
    background: #f5f5f5;
}

.page_title {
    color: #464646;
    font-weight: bold;
    font-size: 20px;
    margin: 0px;
    font-family: "Oswald";
    text-transform: uppercase;
    line-height: 1.5;
}

.owl-carousel .owl-nav {
    position: absolute;
    width: 100%;
    top: 50%;
    transform: translateY(-50%);
}

.owl-carousel .owl-nav button {
    background: rgba(0, 0, 0, 0.5) !important
}

.owl-carousel .owl-nav button.owl-next {
    position: absolute;
    right: 0px;
}

.owl-carousel .owl-nav button span {
    padding: 5px 10px;
    color: white;
}


/* header */

header .header_top {
    position: relative;
    height: 45px;
    background: #e1e1e1;
}

header .box_right {
    position: relative;
    height: 45px;
    line-height: 45px;
    float: right;
    color: #145a8d;
}

header .search {
    position: relative;
    display: inline-block;
}

header .search .fa {
    display: inline-block;
    padding-left: 5px;
    padding-right: 5px;
}

header .search .fa:hover {
    cursor: pointer;
}

header .search .search_form {
    position: absolute;
    width: 252px;
    height: 50px;
    right: 0px;
    z-index: 999;
}

header .search .search_form input {
    border: 1px solid white;
    padding-left: 15px;
}

header .search .search_form button {
    position: absolute;
    border: 1px solid white;
    background: #e1e1e1;
}

header .box_right_line {
    display: inline-block;
    margin: 0px 5px;
}

header .cart {
    display: inline-block;
    padding-left: 5px;
    padding-right: 5px;
    position: relative;
}

header .cart:hover {
    cursor: pointer;
}

header .cart .total_item {
    display: inline-block;
    position: absolute;
    top: 5px;
    right: -10px;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    text-align: center;
    line-height: 20px;
    font-size: 12px;
    color: white;
    background: #145a8d;
}

.header_menu {
    background: #145a8d;
}

.main_menu {
    text-align: left;
    margin-left: 170px;
    height: 65px;
}

.main_menu .ul1 {
    display: inline-block;
    margin-bottom: 0px;
    padding-left: 0px;
}

.main_menu .ul1 .li1 {
    position: relative;
    float: left;
    list-style: none;
}

.main_menu .ul1 .li1>a {
    color: white;
    text-transform: uppercase;
    font-weight: bold;
    font-family: "Oswald";
    font-size: 14px;
    padding: 0px 5px 0px 50px;
    line-height: 65px;
    height: 65px;
    transition: all 0.3s ease 0s;
    display: inline-block;
}

.main_menu .ul1 .li1:first-child>a {
    padding-left: 5px;
}

.main_menu .ul1 .li1>a::before {
    content: "";
    display: block;
    position: absolute;
    width: 1px;
    left: 25px;
    transform: rotate(45deg);
    z-index: 1;
    border-right: 1px solid #3983c2;
    height: 90px;
    top: -13px;
}

.main_menu .ul1 .li1:first-child>a::before {
    content: unset;
}

.main_menu .ul1 .li1>.fa {
    color: white;
}

.main_menu .ul1 .li1 .ul2 {
    display: block;
    padding: 0px 10px;
    box-shadow: 0px 0px 16px -3px #999;
    background: #fff;
    list-style: none;
    border: 1px solid #145a8d;
    border-top: none;
    position: absolute;
    width: 150%;
    left: 0;
    z-index: 999;
}

.main_menu .ul1 .li1 .ul2 .li2>a {
    display: block;
    padding: 5px 0px;
}


/* header fix*/

.nav-fix .main_menu {
    margin-left: 0px;
}

.nav-fix {
    position: fixed !important;
    width: 100%;
    top: 0px;
    transition: transform .5s ease-in-out, transform .5s ease-in-out, background .5s ease-in-out;
    -moz-transition: height .5s ease-in-out, -moz-transform .5s ease-in-out, background .5s ease-in-out;
    -webkit-transition: height .5s ease-in-out, -webkit-transform .5s ease-in-out, background .5s ease-in-out;
    -o-transition: height .5s ease-in-out, -o-transform .5s ease-in-out, background .5s ease-in-out;
    -webkit-animation-duration: 0.5s;
    -moz-animation-duration: 0.5s;
    -o-animation-duration: 0.5s;
    animation-duration: 0.5s;
    z-index: 9999;
}

@keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        -ms-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0)
    }
    100% {
        opacity: 1;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none
    }
}

.fadeInDown {
    -webkit-animation-name: fadeInDown;
    animation-name: fadeInDown
}


/* end header */


/* end header */


/* #home_slide */


/* end #home_slide */


/* #home_about */

#home_about {
    background: #f5f5f5;
}


/* end #home_about */


/* #home_article_lib */

.home_article_item {
    border-bottom: 1px dashed #ccc;
}

.home_article_item_img {
    display: inline-block;
    width: 152px;
}

.home_article_item_img img {
    width: 100%;
    height: 114px;
    object-fit: cover;
}

.home_article_item_content {
    width: calc(100% - 152px);
    padding-left: 10px;
    float: right;
}

.home_article_name {
    margin-top: 0px;
    font-size: 16px;
    line-height: 1.5;
}

.home_article_name a {
    color: #323c3f;
    font-weight: bold;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

.home_article_item_date {
    display: inline-block;
    width: 50px;
    height: 56px;
    background: #eaeaea;
    margin-right: 10px;
    text-align: center;
    font-size: 24px;
    padding-top: 3px;
    position: relative;
}

.home_article_item_date .month {
    background: #999;
    color: #fff;
    font-size: 10px;
    position: absolute;
    left: 0px;
    bottom: 0px;
    width: 100%;
    display: inline-block;
}

.home_article_item_shot_content {
    width: calc(100% - 60px);
    float: right;
    margin-top: -4px;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 3;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}


/* end #home_article_lib */


/* home_product */

#home_product {
    background: #f5f5f5;
}

.product_item {
    background-color: white;
    padding: 5px;
    position: relative;
}

.product_name {
    font-size: 14px;
}

.product_name a {
    color: #323c3f;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 1;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

.price_min {
    font-weight: bold;
    color: #145a8d;
    font-size: 16px;
}

.price_max {
    display: inline-block;
    font-size: 14px;
    margin-left: 10px;
    text-decoration: line-through;
    color: #999;
}

.price_suffix {
    display: inline-block;
    padding-left: 5px;
    text-decoration: underline;
}

.btn_add_cart {
    display: inline-block;
    position: absolute;
    width: 50px;
    height: 50px;
    bottom: 0px;
    right: 0px;
    background: #145a8d;
    clip-path: polygon(50% 50%, 100% 0%, 100% 100%, 0% 100%);
    z-index: 1;
}

.btn_add_cart:hover {
    cursor: pointer;
}

.btn_add_cart .fa {
    position: absolute;
    bottom: 7px;
    right: 7px;
    color: white;
}

.sale {
    position: absolute;
    display: inline-block;
    right: 10px;
    top: 10px;
    background: #145a8d;
    color: white;
    padding: 0px 5px;
    font-size: 14px;
}


/* end #home_product */


/* #home_info */

#home_info {
    background: #e3e3e3;
}

#home_info .cate_title::before {
    background-color: #e3e3e3;
}


/* end #home_info */


/* #projects */

#projects {
    background: url('/themes/frontend/images/bg-footer.png');
    position: relative;
    background-size: 100%;
    background-color: #f5f5f5;
    background-repeat: repeat-x;
    background-position: left bottom;
    padding: 15px 0 50px 0;
}

#projects .img_box::before {
    background: #f5f5f5;
}

#projects .img_box::after {
    background: #f5f5f5;
}

#projects .project_name {
    display: inline-block;
    width: calc(100% - 30px);
    margin: 0px 15px;
    text-align: center;
    color: #fff;
    background: rgba(0, 0, 0, 0.5);
    height: 40px;
    position: absolute;
    bottom: 0px;
    left: 0px;
    transition: all 0.5s ease 0s;
    opacity: 0;
    transform: translateY(30px);
}

#projects .project_item:hover .project_name {
    opacity: 1;
    transform: translateY(-15px);
}

#projects .project_name a {
    color: #fff;
    font-size: 14px;
    display: inline-block;
    width: 100%;
    line-height: 20px;
    padding: 0px 0px 16px;
}

#projects .img_box img {
    height: 150px;
    width: 100%;
    object-fit: cover;
}


/* end #projects */


/* footer */

footer {
    background: #c4c5c5;
}

footer a {
    color: #323c3f;
}

footer address,
footer .footer_menu,
footer .footer_des {
    margin-top: 15px;
}

footer address .footer {
    text-transform: uppercase;
    font-weight: bold;
    font-size: 13px;
}

footer address p .fa {
    display: inline-block;
    width: 18px;
}

footer .footer_menu {
    padding-left: 15px;
}

footer .footer_menu li {
    position: relative;
    list-style: none;
}

footer .footer_menu li::before {
    content: "";
    display: inline-block;
    width: 5px;
    height: 5px;
    position: absolute;
    left: -15px;
    top: 7px;
    background: #323c3f;
    transform: rotate(45deg);
}

footer .footer_email input {
    width: 100%;
    height: 34px;
    padding: 0px 15px;
    border: 1px solid white;
}

footer .footer_email button {
    position: absolute;
    right: 15px;
    height: 34px;
    border: 1px solid white;
}

footer .copyright {
    background: #145a8d;
    padding-top: 10px;
    color: #ccc;
    font-size: 14px;
}

footer .copyright a {
    color: #ccc;
}

footer .copyright a:hover {
    text-decoration: none;
}


/* end footer */


/* article_categories */

.article_item {
    position: relative;
}

.article_item_date {
    display: inline-block;
    width: 50px;
    height: 56px;
    position: absolute;
    top: 0px;
    left: 0px;
    background: #3983c2;
    text-align: center;
    font-size: 24px;
    z-index: 1;
}

.article_item_img img {
    width: 100%;
    height: 165px;
    object-fit: cover;
}

.article_item_date .day {
    color: white;
}

.article_item_date .month {
    background: #145a8d;
    color: #fff;
    font-size: 10px;
    position: absolute;
    left: 0px;
    bottom: 0px;
    width: 100%;
    display: inline-block;
}

.article_item_info {
    padding: 10px;
    border: 1px solid #ddd;
    border-top: none;
    text-align: left;
}

.article_item_info .article_item_name a {
    font-weight: bold;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

.article_item_info .article_item_des p {
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 4;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

.aside_box_title {
    background: #145a8d;
    padding: 10px 15px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    border-bottom: 1px solid #145a8d;
}

.aside_box_title .aside_box_title_name {
    color: #fff;
    font-weight: bold;
    font-size: 20px;
    margin: 0px;
    text-transform: uppercase;
}

.aside_box_list {
    border: 1px solid #ddd;
    border-top: none;
}

.aside_box_list .aside_item {
    padding: 10px 0px;
    margin: 0px 10px;
    border-bottom: 1px solid #ddd;
}

.aside_box_list .aside_item:last-child {
    border-bottom: none;
}

.aside_box_list .aside_item a {
    color: #323c3f;
}


/* end article_categories */


/* articles */

.author small {
    font-style: italic;
    color: #999;
}

.related_articles_content a {
    color: #323c3f;
}


/**/
.menucontent {
    border: 1px solid #dadada;
    background: #f6f6f6;
    margin: 15px 0px;
    padding: 10px;
    max-width: 100%;
}
.menucontent .title {
    font-size: 17px;
    line-height: 30px;
    font-weight: bold;
    color: #666666;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: solid 1px rgba(0, 0, 0, 0.15);
}
.menucontent .click_show_menu{
    float: right;
    display: block;
    width: 40px;
    line-height: 30px;
    text-align: center;
}
.menucontent>ul{
    margin: 10px 0px 0px 0px;
}
.menucontent ul{
    padding-left: 0px;
}
.menucontent li {
    text-transform: inherit;
    list-style: none !important;
    margin-left: 20px !important;
    line-height: 26px;
}
.menucontent li a {
    color: #4c4c4c;
}
/**/

.menu_content_fix {}



.menu_content_fix_icon {

    text-align: center;

    background: #f6f6f6;

    border-radius: 5px;

    border: 1px solid #ccc;

    opacity: 0.8;

}



.menu_content_fix_icon:hover,

.menu_content_close:hover {

    cursor: pointer;

}



.menu_content_fix_icon .fa {

    font-size: 26px;

    display: inline-block;

    line-height: 1.5;

    color: #5e5e5e;

}



.menu_content_fix_content {}



.menu_content_fix .menucontent li {

    margin: 5px 0px;

}



.menu_content_fix .menucontent li a {

    font-size: 11pt;

}



.menu_content_fix .menucontent .ul-toc>li {

    margin-left: 0px !important;

}



.menu_content_fix .menucontent .ul-toc>li>a {

    font-weight: bold;

}



.menu_content_fix .menucontent .ul-toc>li li {

    margin-left: 15px !important;

}



.menu_content_title {

    display: inline-block;

    text-align: center;

    font-size: 12pt;

    font-weight: bold;

}



.menu_content_close {

    display: inline-block;

    padding: 0px 10px;

    float: right;

}



.line {

    margin-top: 5px;

    margin-bottom: 5px;

    border: 0;

    border-top: 1px solid #eee;

}





/**/
.content h2 {
    font-size: 13pt;
    font-weight: bold;
}

.content h3 {
    font-size: 13pt;
    font-weight: bold;
    font-style: italic;
}


/* end articles */


/* search */

.all_search_item_img img {
    object-fit: cover;
    border-radius: 5px;
    box-shadow: 0 0 10px #ccc;
}

.all_search_item_info a {
    display: inline-block;
    padding: 10px 0;
    font-weight: bold;
    color: #333;
}


/* end search */


/* contact */

.contact_info_name {
    font-weight: bold;
}

.contact_info address p .fa {
    display: inline-block;
    width: 18px;
}


/* end contact */