/*
Theme Name: TOKUGAWA
Version: 1.0
*/


/******
 ****** Global
 ******/

.white {
    color: #fff !important;
}

.bg-light {
    background-color: #fff !important;
}

.eee {
    color: #eee !important;
}

.blank {
    color: #000 !important;
}

.bold {
    font-weight: bold !important;
}

img {
    width: auto;
    height: auto;
    max-width: 100%;
}

.alignleft {
    float: left;
}

.alignright {
    float: right;
}

.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.alignnone {
    float: none;
}

.zoom-out,
.zoom-in {
    position: relative;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.zoom-out img,
.zoom-in img {
    transition: all .3s ease-in-out;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.zoom-in:hover img {
    -webkit-transform: scale(1.15);
    transform: scale(1.15);
}

.zoom-out:hover img {
    -webkit-transform: scale(0.85);
    transform: scale(0.85);
}

.content-float {
    transition: all .2s linear;
}

.content-float:hover {
    transform: translate3d(0, -3px, 0);
    -webkit-transform: translate3d(0, -3px, 0);
}

.content-float:hover {
    box-shadow: 0 20px 20px 0 rgba(0, 0, 0, 0.1);
}

.shadow-hover {
    transition: all .3s ease-in-out;
}

.shadow-hover:hover {
    background-color: #fff;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.08);
}


/******
 ****** Ratio
 ******/

.ratio {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    overflow: hidden;
}

.ratio::before {
    display: block;
    content: "";
}

.ratio>.ratio-area {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.ratio-1by1::before {
    padding-top: 100%;
}

.ratio-4by3::before {
    padding-top: 75%;
}

.ratio-2by1::before {
    padding-top: 50%;
}

.ratio-16by9::before {
    padding-top: 56.25%;
}

.ratio-21by9::before {
    padding-top: 42.857143%;
}

@media (min-width: 576px) {
    .ratio-sm-1by1::before {
        padding-top: 100%;
    }
    .ratio-sm-4by3::before {
        padding-top: 75%;
    }
    .ratio-sm-2by1::before {
        padding-top: 50%;
    }
    .ratio-sm-16by9::before {
        padding-top: 56.25%;
    }
    .ratio-sm-21by9::before {
        padding-top: 42.857143%;
    }
}

@media (min-width: 768px) {
    .ratio-md-1by1::before {
        padding-top: 100%;
    }
    .ratio-md-4by3::before {
        padding-top: 75%;
    }
    .ratio-md-2by1::before {
        padding-top: 50%;
    }
    .ratio-md-16by9::before {
        padding-top: 56.25%;
    }
    .ratio-md-21by9::before {
        padding-top: 42.857143%;
    }
}

@media (min-width: 992px) {
    .ratio-lg-1by1::before {
        padding-top: 100%;
    }
    .ratio-lg-4by3::before {
        padding-top: 75%;
    }
    .ratio-lg-2by1::before {
        padding-top: 50%;
    }
    .ratio-lg-16by9::before {
        padding-top: 56.25%;
    }
    .ratio-lg-21by9::before {
        padding-top: 42.857143%;
    }
}

@media (min-width: 1200px) {
    .ratio-xl-1by1::before {
        padding-top: 100%;
    }
    .ratio-xl-4by3::before {
        padding-top: 75%;
    }
    .ratio-xl-2by1::before {
        padding-top: 50%;
    }
    .ratio-xl-16by9::before {
        padding-top: 56.25%;
    }
    .ratio-xl-21by9::before {
        padding-top: 42.857143%;
    }
}


/******
 ****** caldera form按钮
 ******/

.caldera-grid-wrap .caldera-grid .btn {
    font-size: 14px;
    line-height: 1;
    font-weight: bold;
    padding: 12px 80px;
}

.caldera-grid-wrap .caldera-grid .btn-sm {
    font-size: 12px;
    padding: 2px 10px;
}

.caldera-grid-wrap .caldera-grid .btn-lg {
    font-size: 14px;
    padding: 12px 100px;
}

.caldera-grid-wrap .caldera-grid .btn-primary {
    border-radius: 0;
    outline: none;
    border: 0;
    color: #fff;
    background-color: #2196F2;
}

.caldera-grid-wrap .caldera-grid .btn-primary:not(:disabled):not(.disabled):hover,
.caldera-grid-wrap .caldera-grid .btn-primary:not(:disabled):not(.disabled):focus {
    background-color: #93D100;
    color: #fff;
    box-shadow: none;
}

.caldera-grid-wrap .caldera-grid .btn-green {
    color: #fff;
    background-color: #93D100;
}

.caldera-grid-wrap .caldera-grid .btn-green:not(:disabled):not(.disabled):hover,
.caldera-grid-wrap .caldera-grid .btn-green:not(:disabled):not(.disabled):focus {
    background-color: #2196F2;
    color: #fff;
    box-shadow: none;
}

.caldera-grid-wrap .caldera-grid .btn-block {
    padding-left: 0;
    padding-right: 0;
}

@media (min-width: 992px) {
    .caldera-grid-wrap .caldera-grid .btn {
        font-size: 18px;
    }
    .caldera-grid-wrap .caldera-grid .btn-small {
        font-size: 13px;
    }
    .caldera-grid-wrap .caldera-grid .btn-lg {
        font-size: 18px;
    }
}


/******
****** caldera form
******/

.caldera-grid .form-group .control-label {
    font-size: 12px;
    color: #222;
    margin-bottom: 8px;
}

.caldera-grid .form-group .form-control {
    height: 32px;
    font-size: 12px;
    padding: 5px 10px;
    color: #222;
    border-color: transparent;
    background-color: #eee;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.caldera-grid .form-group textarea.form-control {
    height: auto !important;
}

.caldera-grid-wrap .caldera-grid .row {
    margin: 0 -15px;
    padding: 0;
    max-width: none;
}

.caldera-grid-wrap .caldera-grid [class*="col"] {
    width: 100%;
    max-width: none;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    padding: 0 15px;
}

@media (min-width: 768px) {
    .contact-form-wrap .caldera-grid .form-group .control-label {
        font-size: 13px;
        margin-bottom: 15px;
    }
    .contact-form-wrap .caldera-grid .form-group .form-control {
        font-size: 13px;
        padding: 10px 15px;
    }
    .caldera-grid-wrap .caldera-grid .col-sm-1 {
        -ms-flex: 0 0 8.333333%;
        flex: 0 0 8.333333%;
        max-width: 8.333333%;
    }
    .caldera-grid-wrap .caldera-grid .col-sm-2 {
        -ms-flex: 0 0 16.666667%;
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
    }
    .caldera-grid-wrap .caldera-grid .col-sm-3 {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%;
    }
    .caldera-grid-wrap .caldera-grid .col-sm-4 {
        -ms-flex: 0 0 33.333333%;
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }
    .caldera-grid-wrap .caldera-grid .col-sm-5 {
        -ms-flex: 0 0 41.666667%;
        flex: 0 0 41.666667%;
        max-width: 41.666667%;
    }
    .caldera-grid-wrap .caldera-grid .col-sm-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }
    .caldera-grid-wrap .caldera-grid .col-sm-7 {
        -ms-flex: 0 0 58.333333%;
        flex: 0 0 58.333333%;
        max-width: 58.333333%;
    }
    .caldera-grid-wrap .caldera-grid .col-sm-8 {
        -ms-flex: 0 0 66.666667%;
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
    }
    .caldera-grid-wrap .caldera-grid .col-sm-9 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%;
    }
    .caldera-grid-wrap .caldera-grid .col-sm-10 {
        -ms-flex: 0 0 83.333333%;
        flex: 0 0 83.333333%;
        max-width: 83.333333%;
    }
    .caldera-grid-wrap .caldera-grid .col-sm-11 {
        -ms-flex: 0 0 91.666667%;
        flex: 0 0 91.666667%;
        max-width: 91.666667%;
    }
    .caldera-grid-wrap .caldera-grid .col-sm-12 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
    .caldera-grid .form-group .control-label {
        font-size: 14px;
    }
    .caldera-grid .form-group .form-control {
        height: 50px;
        font-size: 14px;
        padding: 15px;
    }
}


/******
 ****** Grid
 ******/

.zero-row {
    margin-left: 0;
    margin-right: 0;
}

.zero-row>[class*="col"] {
    padding-left: 0;
    padding-right: 0;
}

.tiny-row {
    margin-left: -5px;
    margin-right: -5px;
}

.tiny-row>[class*="col"] {
    padding-left: 5px;
    padding-right: 5px;
}

.small-row {
    margin-left: -10px;
    margin-right: -10px;
}

.small-row>[class*="col"] {
    padding-left: 10px;
    padding-right: 10px;
}

.small-row-5 {
    margin-left: -15px;
    margin-right: -15px;
}

.small-row-5>[class*="col"] {
    padding-left: 15px;
    padding-right: 15px;
}

.mid-row {
    margin-left: -20px;
    margin-right: -20px;
}

.mid-row>[class*="col"] {
    padding-left: 20px;
    padding-right: 20px;
}

.mid-row-5 {
    margin-left: -25px;
    margin-right: -25px;
}

.mid-row-5>[class*="col"] {
    padding-left: 25px;
    padding-right: 25px;
}

.big-row {
    margin-left: -30px;
    margin-right: -30px;
}

.big-row>[class*="col"] {
    padding-left: 30px;
    padding-right: 30px;
}

.big-row-5 {
    margin-left: -35px;
    margin-right: -35px;
}

.big-row-5>[class*="col"] {
    padding-left: 35px;
    padding-right: 35px;
}

.large-row {
    margin-left: -40px;
    margin-right: -40px;
}

.large-row>[class*="col"] {
    padding-left: 40px;
    padding-right: 40px;
}

.large-row-5 {
    margin-left: -45px;
    margin-right: -45px;
}

.large-row-5>[class*="col"] {
    padding-left: 45px;
    padding-right: 45px;
}

.col-55,
.col-sm-55,
.col-md-55,
.col-lg-55,
.col-lg-40,
.col-xl-55,
.col-77,
.col-sm-77,
.col-md-77,
.col-lg-77,
.col-xl-77,
.col-88,
.col-sm-88,
.col-md-88,
.col-lg-88,
.col-xl-88,
.col-99,
.col-sm-99,
.col-md-99,
.col-lg-99,
.col-xl-99,
.col-1010,
.col-sm-1010,
.col-md-1010,
.col-lg-1010,
.col-xl-1010,
.col-1111,
.col-sm-1111,
.col-md-1111,
.col-lg-1111,
.col-xl-1111,
.col-1212,
.col-sm-1212,
.col-md-1212,
.col-lg-1212,
.col-xl-1212 {
    position: relative;
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
}

.col-55 {
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%;
}

.col-77 {
    -ms-flex: 0 0 14.2857%;
    flex: 0 0 14.2857%;
    max-width: 14.2857%;
}

.col-88 {
    -ms-flex: 0 0 12.5%;
    flex: 0 0 12.5%;
    max-width: 12.5%;
}

.col-99 {
    -ms-flex: 0 0 11.1111%;
    flex: 0 0 11.1111%;
    max-width: 11.1111%;
}

.col-1010 {
    -ms-flex: 0 0 10%;
    flex: 0 0 10%;
    max-width: 10%;
}

.col-1111 {
    -ms-flex: 0 0 9.0909%;
    flex: 0 0 9.0909%;
    max-width: 9.0909%;
}

.col-1212 {
    -ms-flex: 0 0 8.3333%;
    flex: 0 0 8.3333%;
    max-width: 8.3333%;
}

@media (min-width: 576px) {
    .zero-sm-row {
        margin-left: 0;
        margin-right: 0;
    }
    .zero-sm-row>[class*="col"] {
        padding-left: 0;
        padding-right: 0;
    }
    .tiny-sm-row {
        margin-left: -5px;
        margin-right: -5px;
    }
    .tiny-sm-row>[class*="col"] {
        padding-left: 5px;
        padding-right: 5px;
    }
    .small-sm-row {
        margin-left: -10px;
        margin-right: -10px;
    }
    .small-sm-row>[class*="col"] {
        padding-left: 10px;
        padding-right: 10px;
    }
    .small-sm-row-5 {
        margin-left: -15px;
        margin-right: -15px;
    }
    .small-sm-row-5>[class*="col"] {
        padding-left: 15px;
        padding-right: 15px;
    }
    .mid-sm-row {
        margin-left: -20px;
        margin-right: -20px;
    }
    .mid-sm-row>[class*="col"] {
        padding-left: 20px;
        padding-right: 20px;
    }
    .mid-sm-row-5 {
        margin-left: -25px;
        margin-right: -25px;
    }
    .mid-sm-row-5>[class*="col"] {
        padding-left: 25px;
        padding-right: 25px;
    }
    .big-sm-row {
        margin-left: -30px;
        margin-right: -30px;
    }
    .big-sm-row>[class*="col"] {
        padding-left: 30px;
        padding-right: 30px;
    }
    .big-sm-row-5 {
        margin-left: -35px;
        margin-right: -35px;
    }
    .big-sm-row-5>[class*="col"] {
        padding-left: 35px;
        padding-right: 35px;
    }
    .large-sm-row {
        margin-left: -40px;
        margin-right: -40px;
    }
    .large-sm-row>[class*="col"] {
        padding-left: 40px;
        padding-right: 40px;
    }
    .large-sm-row-5 {
        margin-left: -45px;
        margin-right: -45px;
    }
    .large-sm-row-5>[class*="col"] {
        padding-left: 45px;
        padding-right: 45px;
    }
    .col-sm-55 {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
    .col-sm-77 {
        -ms-flex: 0 0 14.2857%;
        flex: 0 0 14.2857%;
        max-width: 14.2857%;
    }
    .col-sm-88 {
        -ms-flex: 0 0 12.5%;
        flex: 0 0 12.5%;
        max-width: 12.5%;
    }
    .col-sm-99 {
        -ms-flex: 0 0 11.1111%;
        flex: 0 0 11.1111%;
        max-width: 11.1111%;
    }
    .col-sm-1010 {
        -ms-flex: 0 0 10%;
        flex: 0 0 10%;
        max-width: 10%;
    }
    .col-sm-1111 {
        -ms-flex: 0 0 9.0909%;
        flex: 0 0 9.0909%;
        max-width: 9.0909%;
    }
    .col-sm-1212 {
        -ms-flex: 0 0 8.3333%;
        flex: 0 0 8.3333%;
        max-width: 8.3333%;
    }
}

@media (min-width: 768px) {
    .zero-md-row {
        margin-left: 0;
        margin-right: 0;
    }
    .zero-md-row>[class*="col"] {
        padding-left: 0;
        padding-right: 0;
    }
    .tiny-md-row {
        margin-left: -5px;
        margin-right: -5px;
    }
    .tiny-md-row>[class*="col"] {
        padding-left: 5px;
        padding-right: 5px;
    }
    .small-md-row {
        margin-left: -10px;
        margin-right: -10px;
    }
    .small-md-row>[class*="col"] {
        padding-left: 10px;
        padding-right: 10px;
    }
    .small-md-row-5 {
        margin-left: -15px;
        margin-right: -15px;
    }
    .small-md-row-5>[class*="col"] {
        padding-left: 15px;
        padding-right: 15px;
    }
    .mid-md-row {
        margin-left: -20px;
        margin-right: -20px;
    }
    .mid-md-row>[class*="col"] {
        padding-left: 20px;
        padding-right: 20px;
    }
    .mid-md-row-5 {
        margin-left: -25px;
        margin-right: -25px;
    }
    .mid-md-row-5>[class*="col"] {
        padding-left: 25px;
        padding-right: 25px;
    }
    .big-md-row {
        margin-left: -30px;
        margin-right: -30px;
    }
    .big-md-row>[class*="col"] {
        padding-left: 30px;
        padding-right: 30px;
    }
    .big-md-row-5 {
        margin-left: -35px;
        margin-right: -35px;
    }
    .big-md-row-5>[class*="col"] {
        padding-left: 35px;
        padding-right: 35px;
    }
    .large-md-row {
        margin-left: -40px;
        margin-right: -40px;
    }
    .large-md-row>[class*="col"] {
        padding-left: 40px;
        padding-right: 40px;
    }
    .large-md-row-5 {
        margin-left: -45px;
        margin-right: -45px;
    }
    .large-md-row-5>[class*="col"] {
        padding-left: 45px;
        padding-right: 45px;
    }
    .col-md-55 {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
    .col-md-77 {
        -ms-flex: 0 0 14.2857%;
        flex: 0 0 14.2857%;
        max-width: 14.2857%;
    }
    .col-md-88 {
        -ms-flex: 0 0 12.5%;
        flex: 0 0 12.5%;
        max-width: 12.5%;
    }
    .col-md-99 {
        -ms-flex: 0 0 11.1111%;
        flex: 0 0 11.1111%;
        max-width: 11.1111%;
    }
    .col-md-1010 {
        -ms-flex: 0 0 10%;
        flex: 0 0 10%;
        max-width: 10%;
    }
    .col-md-1111 {
        -ms-flex: 0 0 9.0909%;
        flex: 0 0 9.0909%;
        max-width: 9.0909%;
    }
    .col-md-1212 {
        -ms-flex: 0 0 8.3333%;
        flex: 0 0 8.3333%;
        max-width: 8.3333%;
    }
}

@media (min-width: 992px) {
    .zero-lg-row {
        margin-left: 0;
        margin-right: 0;
    }
    .zero-lg-row>[class*="col"] {
        padding-left: 0;
        padding-right: 0;
    }
    .tiny-lg-row {
        margin-left: -5px;
        margin-right: -5px;
    }
    .tiny-lg-row>[class*="col"] {
        padding-left: 5px;
        padding-right: 5px;
    }
    .small-lg-row {
        margin-left: -10px;
        margin-right: -10px;
    }
    .small-lg-row>[class*="col"] {
        padding-left: 10px;
        padding-right: 10px;
    }
    .small-lg-row-5 {
        margin-left: -15px;
        margin-right: -15px;
    }
    .small-lg-row-5>[class*="col"] {
        padding-left: 15px;
        padding-right: 15px;
    }
    .mid-lg-row {
        margin-left: -20px;
        margin-right: -20px;
    }
    .mid-lg-row>[class*="col"] {
        padding-left: 20px;
        padding-right: 20px;
    }
    .mid-lg-row-5 {
        margin-left: -25px;
        margin-right: -25px;
    }
    .mid-lg-row-5>[class*="col"] {
        padding-left: 25px;
        padding-right: 25px;
    }
    .big-lg-row {
        margin-left: -30px;
        margin-right: -30px;
    }
    .big-lg-row>[class*="col"] {
        padding-left: 30px;
        padding-right: 30px;
    }
    .big-lg-row-5 {
        margin-left: -35px;
        margin-right: -35px;
    }
    .big-lg-row-5>[class*="col"] {
        padding-left: 35px;
        padding-right: 35px;
    }
    .large-lg-row {
        margin-left: -40px;
        margin-right: -40px;
    }
    .large-lg-row>[class*="col"] {
        padding-left: 40px;
        padding-right: 40px;
    }
    .large-lg-row-5 {
        margin-left: -45px;
        margin-right: -45px;
    }
    .large-lg-row-5>[class*="col"] {
        padding-left: 45px;
        padding-right: 45px;
    }
    .col-lg-55 {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
    .col-lg-40 {
        -ms-flex: 0 0 40%;
        flex: 0 0 40%;
        max-width: 40%;
    }
    .col-lg-77 {
        -ms-flex: 0 0 14.2857%;
        flex: 0 0 14.2857%;
        max-width: 14.2857%;
    }
    .col-lg-88 {
        -ms-flex: 0 0 12.5%;
        flex: 0 0 12.5%;
        max-width: 12.5%;
    }
    .col-lg-99 {
        -ms-flex: 0 0 11.1111%;
        flex: 0 0 11.1111%;
        max-width: 11.1111%;
    }
    .col-lg-1010 {
        -ms-flex: 0 0 10%;
        flex: 0 0 10%;
        max-width: 10%;
    }
    .col-lg-1111 {
        -ms-flex: 0 0 9.0909%;
        flex: 0 0 9.0909%;
        max-width: 9.0909%;
    }
    .col-lg-1212 {
        -ms-flex: 0 0 8.3333%;
        flex: 0 0 8.3333%;
        max-width: 8.3333%;
    }
}

@media (min-width: 1200px) {
    .zero-xl-row {
        margin-left: 0;
        margin-right: 0;
    }
    .zero-xl-row>[class*="col"] {
        padding-left: 0;
        padding-right: 0;
    }
    .tiny-xl-row {
        margin-left: -5px;
        margin-right: -5px;
    }
    .tiny-xl-row>[class*="col"] {
        padding-left: 5px;
        padding-right: 5px;
    }
    .small-xl-row {
        margin-left: -10px;
        margin-right: -10px;
    }
    .small-xl-row>[class*="col"] {
        padding-left: 10px;
        padding-right: 10px;
    }
    .small-xl-row-5 {
        margin-left: -15px;
        margin-right: -15px;
    }
    .small-xl-row-5>[class*="col"] {
        padding-left: 15px;
        padding-right: 15px;
    }
    .mid-xl-row {
        margin-left: -20px;
        margin-right: -20px;
    }
    .mid-xl-row>[class*="col"] {
        padding-left: 20px;
        padding-right: 20px;
    }
    .mid-xl-row-5 {
        margin-left: -25px;
        margin-right: -25px;
    }
    .mid-xl-row-5>[class*="col"] {
        padding-left: 25px;
        padding-right: 25px;
    }
    .big-xl-row {
        margin-left: -30px;
        margin-right: -30px;
    }
    .big-xl-row>[class*="col"] {
        padding-left: 30px;
        padding-right: 30px;
    }
    .big-xl-row-5 {
        margin-left: -35px;
        margin-right: -35px;
    }
    .big-xl-row-5>[class*="col"] {
        padding-left: 35px;
        padding-right: 35px;
    }
    .large-xl-row {
        margin-left: -40px;
        margin-right: -40px;
    }
    .large-xl-row>[class*="col"] {
        padding-left: 40px;
        padding-right: 40px;
    }
    .large-xl-row-5 {
        margin-left: -45px;
        margin-right: -45px;
    }
    .large-xl-row-5>[class*="col"] {
        padding-left: 45px;
        padding-right: 45px;
    }
    .col-xl-55 {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
    .col-xl-77 {
        -ms-flex: 0 0 14.2857%;
        flex: 0 0 14.2857%;
        max-width: 14.2857%;
    }
    .col-xl-88 {
        -ms-flex: 0 0 12.5%;
        flex: 0 0 12.5%;
        max-width: 12.5%;
    }
    .col-xl-99 {
        -ms-flex: 0 0 11.1111%;
        flex: 0 0 11.1111%;
        max-width: 11.1111%;
    }
    .col-xl-1010 {
        -ms-flex: 0 0 10%;
        flex: 0 0 10%;
        max-width: 10%;
    }
    .col-xl-1111 {
        -ms-flex: 0 0 9.0909%;
        flex: 0 0 9.0909%;
        max-width: 9.0909%;
    }
    .col-xl-1212 {
        -ms-flex: 0 0 8.3333%;
        flex: 0 0 8.3333%;
        max-width: 8.3333%;
    }
}


/******
 ****** General
 ******/

.content {
    padding: 40px 0;
}

.none-pd-content {
    padding: 0 !important;
}

.home-wrapper .content {
    padding: 0;
}

.banner {
    background-color: #1E1F4A;
    background-repeat: no-repeat;
    background-position: 70% 50%;
    background-size: cover;
}

.main-title-wrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    align-items: flex-end;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
    height: 120px;
}

.main-title {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    align-items: flex-start;
    -ms-flex-pack: center;
    justify-content: center;
}

.main-title-right {
    align-items: flex-end;
    text-align: right;
}

.en-title {
    font-size: 30px;
    line-height: 1;
    margin-bottom: 0;
}

.cn-title {
    margin-top: 10px;
    border-top: 2px solid #FFFFFF;
    padding-top: 10px;
    margin-bottom: 0;
    position: relative;
    font-size: 25px;
}

.cn-title::after {
    content: '';
    width: 30%;
    height: 2px;
    background-color: #B92A2F;
    position: absolute;
    left: 0;
    top: -2px;
    z-index: 2;
}

.banner {
    position: relative;
}

.breadcrumbs-wrap {
    position: absolute;
    width: 100%;
    left: 0;
    top: 100%;
    margin-top: 10px;
}

.breadcrumbs,
.breadcrumbs a {
    font-size: 14px;
    color: #999;
}

.breadcrumbs>span {
    color: #000;
}

.breadcrumbs a:hover,
.breadcrumbs a:focus {
    color: #000;
}

.archive-breadcrumbs-wrap .breadcrumbs,
.archive-breadcrumbs-wrap .breadcrumbs a {
    color: #C4C4C4;
}

.archive-breadcrumbs-wrap .breadcrumbs>span {
    color: #C4C4C4;
}

@media(max-width: 991px) {
    .breadcrumbs-wrap {
        display: none;
    }
}

@media(min-width: 768px) {
    .main-title-wrap {
        height: 250px;
    }
    .banner {
        background-position: center center;
    }
    .content {
        padding: 80px 0;
    }
    .en-title {
        font-size: 55px;
    }
    .cn-title {
        font-size: 40px;
        margin-top: 20px;
        border-top: 3px solid #FFFFFF;
        padding-top: 20px;
        margin-bottom: 0;
        position: relative;
    }
    .cn-title::after {
        height: 3px;
        top: -3px;
    }
    .breadcrumbs,
    .breadcrumbs a {
        font-size: 16px;
    }
    .breadcrumbs-wrap {
        margin-top: 20px;
    }
}

@media(min-width: 1200px) {
    .content {
        padding: 100px 0;
    }
    .en-title {
        font-size: 55px;
    }
    .cn-title {
        font-size: 40px;
    }
}


/******
 ****** Pagenavi
 ******/

.wp-pagenavi {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.wp-pagenavi span,
.wp-pagenavi a {
    cursor: pointer;
    font-family: "Montserrat-Regular";
    font-size: 13px;
    line-height: 1;
    color: #000000;
    font-weight: normal;
    margin-right: 20px;
    background-color: transparent;
    border: 0;
    padding: 0 3px;
    min-width: 30px;
    min-height: 30px;
    border-radius: 0 !important;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.wp-pagenavi .current,
.wp-pagenavi a:hover {
    color: #000000;
    background-color: #BEBEBE;
    font-weight: normal !important;
}

@media(min-width: 1200px) {
    .wp-pagenavi span,
    .wp-pagenavi a {
        min-width: 36px;
        min-height: 36px;
        font-size: 16px;
    }
    .wp-pagenavi .previouspostslink,
    .wp-pagenavi .nextpostslink {
        font-size: 30px;
    }
}


/******
 ****** 404
 ******/

.error-404-wrapper {
    padding: 60px 0;
    text-align: center;
}

.img-404 {
    line-height: 0;
}

.img-404 img {
    max-height: 150px;
}

@media(min-width: 768px) {
    .error-404-wrapper {
        padding: 80px 0;
    }
    .img-404 img {
        max-height: 200px;
    }
}

@media(min-width: 992px) {
    .error-404-wrapper {
        padding: 100px 0;
    }
    .img-404 img {
        max-height: 260px;
    }
}

@media(min-width: 1200px) {
    .error-404-wrapper {
        padding: 150px 0;
    }
    .img-404 img {
        max-height: 320px;
    }
}


/******
 ****** Footer
 ******/

footer,
footer p,
footer a {
    font-size: 16px;
}

.footer-dark {
    background-color: #1E1F4A;
}

.footer-dark,
.footer-dark p,
.footer-dark a {
    color: rgba(255, 255, 255, 0.8);
    font-size: 14px !important;
}

.footer-dark a:hover {
    color: #23C3FF;
}

.footer-light {
    background-color: #f2f3f7;
}

.footer-light,
.footer-light p,
.footer-light a {
    color: #222;
}

.footer-light a:hover {
    color: rgba(0, 0, 0, 0.8);
}

.fixed-item,
.fixed-item a,
.fixed-item a:hover,
.fixed-item a:focus {
    color: #fff;
}

.fixed-item {
    cursor: pointer;
    background-color: #b92a2f;
    height: 48px;
    width: 48px;
    border-bottom: #aa262a solid 1px;
    font-size: 12px;
}

@media(min-width: 992px) {
    .fixed-item {
        height: 70px;
        width: 80px;
    }
}

@media(max-width: 991px) {
    .fixed-item img {
        max-height: 30px;
    }
}

.fixed-item {
    overflow: hidden;
}

.fixed-item:hover,
.fixed-item:focus {
    overflow: visible;
}

.fixed-item .fixed-des,
.fixed-item .fixed-des {
    transition: all .3s ease-in-out;
    background-color: #b92a2f;
    right: -200px;
    font-size: 150%;
}

.fixed-item:hover .fixed-des,
.fixed-item:focus .fixed-des {
    right: 100%;
}

.flaticon-large {
    font-size: 180%;
}


/******
 ****** Home
 ******/

.logo-item {
    text-align: center;
    margin-bottom: 30px !important;
}


/******
 ****** swiper
 ******/

.swiper-container {
    --swiper-navigation-size: 16px;
}

.swiper-button-next,
.swiper-button-prev {
    border-radius: 24px;
    width: 32px;
    height: 32px;
    margin-top: -16px;
    border: 1px solid transparent;
}

.swiper-white {
    --swiper-theme-color: #fff;
    --swiper-navigation-color: #000;
}

.swiper-black {
    --swiper-theme-color: #000;
    --swiper-navigation-color: #fff;
}

.swiper-white .swiper-button-next,
.swiper-white .swiper-button-prev {
    border-color: #000;
    outline: none;
    background-color: rgba(255, 255, 255, 0.2);
}

.swiper-black .swiper-button-next,
.swiper-black .swiper-button-prev {
    border-color: #fff;
    outline: none;
    background-color: rgba(0, 0, 0, 0.2);
}

.swiper-button-next:hover,
.swiper-button-prev:hover {
    opacity: 0.5;
}

@media(min-width: 768px) {
    .swiper-container {
        --swiper-navigation-size: 20px;
    }
    .swiper-button-next,
    .swiper-button-prev {
        border-radius: 48px;
        width: 48px;
        height: 48px;
        margin-top: -24px;
    }
}


/******
 ****** siderbar
 ******/


/* 侧边栏分块样式，非必要 */

aside section {
    margin-bottom: 15px;
}

.fixed-panel {
    position: fixed;
    top: 90px;
    /* header高度 */
    width: 255px;
    /* sidebar需固定宽度 */
    z-index: 10;
}


/* sidebar widget */

.sidebar .widget {
    position: relative;
}

.sidebar .widget ul {
    list-style: none;
    margin: 0;
    padding-left: 15px;
}

.sidebar .widget>ul {
    padding: 0;
}

.sidebar .widget ul li {
    padding-top: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.sidebar .widget ul li:last-child {
    border-bottom: 0;
}

.global-sidebar-list-wrap ul {
    list-style: none;
}

.global-sidebar-list>li {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.global-sidebar-list>li>a {
    display: block;
    font-size: 13px;
    padding-top: 15px;
    padding-bottom: 15px;
}

.global-sidebar-list>li.current_page_item>a,
.global-sidebar-list>li.current-cat>a {
    color: #000;
}

.global-sidebar-list>li:last-child {
    border: 0;
}

.global-sidebar-menu li {
    position: relative;
    padding-left: 24px;
}

.global-sidebar-menu>li.cat_item_has_children,
.global-sidebar-menu>li.page_item_has_children {
    cursor: pointer;
}

.global-sidebar-menu>li.cat_item_has_children::before,
.global-sidebar-menu>li.page_item_has_children::before {
    content: "\f196";
    font: normal normal normal 14px/1 FontAwesome;
    position: absolute;
    top: 18px;
    left: 0;
    font-size: 20px;
    color: #E50114;
}

.global-sidebar-menu>li.cat_item_has_children.global-menu-show::before,
.global-sidebar-menu>li.page_item_has_children.global-menu-show::before {
    content: "\f147";
}

.global-sidebar-menu>li>.children {
    display: none;
}

.global-sidebar-menu li>.children {
    padding: 0;
    margin: 0 0 15px;
}

.global-sidebar-menu li .children li a {
    font-size: 13px;
    line-height: 2;
    color: #999;
}

.global-sidebar-menu li .children li.current-cat a,
.global-sidebar-menu li .children li a:hover,
.global-sidebar-menu li .children li a:focus {
    color: #E50114;
}

@media(min-width: 992px) {
    .global-sidebar-list>li>a {
        font-size: 16px;
        padding-top: 20px;
        padding-bottom: 20px;
    }
    .global-sidebar-menu>li.cat_item_has_children::before,
    .global-sidebar-menu>li.page_item_has_children::before {
        top: 23px;
        font-size: 20px;
    }
    .global-sidebar-menu li .children {
        margin: 0 0 20px;
    }
}


/******
 ****** blog & news
 ******/

.blog-item {
    position: relative;
}

.blog-category-tag {
    position: absolute;
    right: 0;
    top: 0;
    color: #fff;
    background-color: rgba(0, 0, 0, 0.6);
    padding: 10px;
    z-index: 99;
    line-height: 1;
    font-size: 12px;
}

.single-blog-title {
    font-size: 24px;
    background: rgba(49, 51, 136, 1);
    background: -moz-linear-gradient(left, rgba(49, 51, 136, 1) 0%, rgba(49, 51, 136, 0) 100%);
    background: -webkit-gradient(left top, right top, color-stop(0%, rgba(49, 51, 136, 1)), color-stop(100%, rgba(49, 51, 136, 0)));
    background: -webkit-linear-gradient(left, rgba(49, 51, 136, 1) 0%, rgba(49, 51, 136, 0) 100%);
    background: -o-linear-gradient(left, rgba(49, 51, 136, 1) 0%, rgba(49, 51, 136, 0) 100%);
    background: -ms-linear-gradient(left, rgba(49, 51, 136, 1) 0%, rgba(49, 51, 136, 0) 100%);
    background: linear-gradient(to right, rgba(49, 51, 136, 1) 0%, rgba(49, 51, 136, 0) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#313388', endColorstr='#313388', GradientType=1);
}

.blog-date i,
.sidebar-blog-date i,
.single-blog-date i {
    margin-right: 10px;
}

.single-blog-excerpt {
    position: relative;
    font-size: 13px;
    line-height: 2;
    color: #999;
    margin-bottom: 30px;
}

.single-blog-excerpt::before {
    content: '';
    position: absolute;
    left: 0;
    bottom: -10px;
    width: 80px;
    height: 2px;
    background-color: #EEE;
}

.single-blog-content-wrap {
    padding-bottom: 0;
}

.post-navigation {
    margin-top: 30px;
}

.post-navigation h1,
.post-navigation h2,
.post-navigation h3,
.post-navigation h4,
.post-navigation h5,
.post-navigation h6 {
    display: none !important;
}

.post-navigation .nav-previous,
.post-navigation .nav-next {
    margin-top: 5px;
}


/******
 ****** product
 ******/

.single-product-swiper {
    margin-bottom: 10px;
}

.single-product-title {
    padding-bottom: 15px;
    border-bottom: 1px solid #DDD;
    margin-bottom: 15px;
    line-height: 1.4;
}

.single-product-desc {
    padding-bottom: 15px;
    border-bottom: 1px solid #DDD;
    margin-bottom: 15px;
}

.single-product-desc ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.single-product-desc ul li {
    display: flex;
    flex-wrap: wrap;
    font-size: 13px;
    line-height: 1.6;
    color: #3E3E3F;
}

.single-product-desc ul li p {
    font-size: 13px;
    color: #3E3E3F;
}

.single-product-desc ul li span {
    min-width: 140px;
    margin-right: 15px;
    color: #999;
}

.single-product-excerpt {
    font-size: 12px;
    line-height: 1.6;
    color: #999;
    margin-bottom: 20px;
}

.tab-wrap {
    padding-top: 30px;
}

.custom-tab-btn {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 35px;
    border-bottom: 1px solid #DDD;
}

.tab-btn {
    color: #999;
    padding: 10px 20px;
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    position: relative;
    bottom: -1px;
    border-right: 1px solid #DDD;
    border-left: 1px solid #DDD;
    border-top: 1px solid #DDD;
    margin-left: 10px;
}

.tab-btn.active-tab {
    color: #E50114;
    border-bottom: 1px solid #fff;
}

.tab-content {
    min-height: 100px;
    display: none;
}

.tab-content.active-content {
    display: block;
}

.tab-content table {
    font-size: 13px;
    line-height: 1.6;
    color: #999;
}

.tab-content table strong {
    color: #222;
}

.tab-content .table th,
.tab-content .table td {
    padding-top: 15px;
    padding-bottom: 15px;
}

.product-tab-content h2,
.product-tab-content h3,
.product-tab-content h4,
.product-tab-content h5 {
    margin-bottom: 20px;
}

@media(min-width: 992px) {
    .tab-wrap {
        padding-top: 40px;
    }
    .custom-tab-btn {
        margin-bottom: 55px;
    }
}

.main-font-warp-banner,
.main-font-warp-patch,
.main-font-warp {
    font-size: 60px;
    color: rgba(247, 240, 255, 0.3);
    position: relative;
}

.main-font-warp-banner {
    font-size: 50px;
}

.main-font-warp-banner::after,
.main-font-warp-banner::before {
    position: absolute;
    content: "";
    height: 2px;
    right: 0;
    bottom: 0;
}

.main-font-warp::after,
.main-font-warp::before {
    position: absolute;
    content: "";
    height: 2px;
    left: 0;
    bottom: 0;
}

.main-font-warp-banner::after {
    width: 50%;
    background-color: #C62305;
}

.main-font-warp-banner::before {
    width: 40%;
    background-color: #fff;
    z-index: 1;
}

.main-font-warp::after {
    width: 50%;
    background-color: #fff;
}

.main-font-warp::before {
    width: 10%;
    background-color: #C62305;
    z-index: 1;
}

.main-font-warp-patch {
    color: rgba(49, 51, 136, 0.15);
}

.main-font-warp-patch::after,
.main-font-warp-patch::before {
    position: absolute;
    content: "";
    height: 2px;
    left: 0;
    bottom: 0;
}

.main-font-warp-patch::after {
    width: 40%;
    background-color: #313388;
}

.main-font-warp-patch::before {
    width: 10%;
    background-color: #C62305;
    z-index: 1;
}

.main-font-warp-patch.text-center::after,
.main-font-warp-patch.text-center::before {
    left: 30%;
}

.el-icon-warp {
    max-width: 65px;
}

.el-item-warp {
    background: linear-gradient(-45deg, transparent 21px, #fff 0)bottom right, linear-gradient(-135deg, transparent 0px, #fff 0)top right, linear-gradient(135deg, transparent 21px, #fff 0)top left, linear-gradient(45deg, transparent 0px, #fff 0)bottom left;
    background-size: 50% 50%;
    background-repeat: no-repeat;
    padding: 25px 45px;
    max-width: 280px;
}

.el-item-warp:hover,
.el-item-warp:focus {
    color: #fff;
    background: linear-gradient(-45deg, transparent 21px, #b92a2f 0)bottom right, linear-gradient(-135deg, transparent 0px, #b92a2f 0)top right, linear-gradient(135deg, transparent 21px, #b92a2f 0)top left, linear-gradient(45deg, transparent 0px, #b92a2f 0)bottom left;
    background-size: 50% 50%;
    background-repeat: no-repeat;
    transition: all .3s ease-in-out;
    transform: scale(1.1);
}

.el-item-warp:hover svg path,
.el-item-warp:focus svg path {
    fill: #fff;
}

.text-primary {
    color: #313388 !important;
}

.text-primary-light {
    color: rgba(49, 51, 136, .33);
}

.text-white-light {
    color: rgba(255, 255, 255, .33);
}

.text-danger {
    color: #B92A2F !important;
}

.bg-primary {
    background: #313388 !important;
}

.bg-danger {
    background: #B92A2F !important;
}

.font-decoration-red-line,
.font-decoration-line {
    display: inline-block;
    position: relative;
}

.font-decoration-red-line::after,
.font-decoration-red-line::before,
.font-decoration-line::after,
.font-decoration-line::before {
    content: '/';
    position: absolute;
    top: 0;
    color: #313388;
}

.font-decoration-line.text-white::after,
.font-decoration-line.text-white::before {
    color: #fff;
}

.font-decoration-red-line::after,
.font-decoration-red-line::before {
    color: #B92A2F;
}

.font-decoration-red-line::before {
    left: -15px;
}

.font-decoration-line::before {
    left: -20px;
}

.font-decoration-red-line::after {
    right: -15px;
}

.font-decoration-line::after {
    right: -20px;
}

@media(min-width: 992px) {
    .font-decoration-red-line::before {
        left: -25px;
    }
    .font-decoration-line::before {
        left: -50px;
    }
    .font-decoration-red-line::after {
        right: -25px;
    }
    .font-decoration-line::after {
        right: -50px;
    }
}

.footer-menu .menu {
    list-style: none;
    padding-left: 15px;
    position: relative;
}

.footer-menu .menu li {
    padding: 5px 0;
}

.footer-menu .menu li span {
    min-width: 68px;
    display: inline-block;
}

.textwidget {
    position: relative;
}

.footer-menu .menu::before {
    content: "";
    position: absolute;
    width: 1px;
    height: 100%;
    top: 0;
    left: -5px;
    background: #707070;
}

@media(min-width: 992px) {
    .textwidget::before,
    .footer-menu .menu::before {
        content: "";
        position: absolute;
        width: 1px;
        height: 100%;
        top: 0;
        left: -5px;
        background: #707070;
    }
}

.footer-menu .menu .sub-menu {
    list-style: none;
    padding-left: 25px;
}

.footer-menu .menu .sub-menu li {
    position: relative;
}

.footer-menu .menu .sub-menu li::before {
    position: absolute;
    content: "-";
    left: -20px;
    top: 50%;
    margin-top: -12px;
    color: #707070;
}

.footer-menu .menu .sub-menu li a {
    color: rgba(255, 255, 255, 0.5);
}

.footer-menu .menu .sub-menu li a:hover {
    color: rgba(255, 255, 255, 0.7);
}

.section-copyright {
    background-color: #0F1141;
}

.section-footer-menu {
    background: url(assets/images/bg-footer.png) no-repeat center center /cover;
}

.section-products-and-service {
    background: url(assets/images/bg-products-service.png) no-repeat center center /cover;
}

.section-about-us {
    padding: 100px 0;
}

.products-first-item,
.front-item-warp {
    position: relative;
}

.front-item-warp::after,
.front-item-warp::before {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
}

.front-item-warp::after {
    width: 60%;
    height: 6px;
    background: rgba(185, 42, 47, 0);
    background: -moz-linear-gradient(left, rgba(185, 42, 47, 0) 0%, rgba(185, 42, 47, 1) 100%);
    background: -webkit-gradient(left top, right top, color-stop(0%, rgba(185, 42, 47, 0)), color-stop(100%, rgba(185, 42, 47, 1)));
    background: -webkit-linear-gradient(left, rgba(185, 42, 47, 0) 0%, rgba(185, 42, 47, 1) 100%);
    background: -o-linear-gradient(left, rgba(185, 42, 47, 0) 0%, rgba(185, 42, 47, 1) 100%);
    background: -ms-linear-gradient(left, rgba(185, 42, 47, 0) 0%, rgba(185, 42, 47, 1) 100%);
    background: linear-gradient(to right, rgba(185, 42, 47, 0) 0%, rgba(185, 42, 47, 1) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#b92a2f', endColorstr='#b92a2f', GradientType=1);
}

.front-item-warp::before {
    width: 6px;
    height: 60%;
    background: rgba(185, 42, 47, 0);
    background: -moz-linear-gradient(top, rgba(185, 42, 47, 0) 0%, rgba(185, 42, 47, 1) 100%);
    background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(185, 42, 47, 0)), color-stop(100%, rgba(185, 42, 47, 1)));
    background: -webkit-linear-gradient(top, rgba(185, 42, 47, 0) 0%, rgba(185, 42, 47, 1) 100%);
    background: -o-linear-gradient(top, rgba(185, 42, 47, 0) 0%, rgba(185, 42, 47, 1) 100%);
    background: -ms-linear-gradient(top, rgba(185, 42, 47, 0) 0%, rgba(185, 42, 47, 1) 100%);
    background: linear-gradient(to bottom, rgba(185, 42, 47, 0) 0%, rgba(185, 42, 47, 1) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#b92a2f', endColorstr='#b92a2f', GradientType=0);
}

.products-first-item::before {
    content: url(assets/images/products-first-item.png);
    position: absolute;
    left: 0px;
    top: 0px;
}

.parts-equipment-warp {
    background: #fff;
}

.table-contact-us td {
    padding: 5px 0;
}

.table-contact-us td:first-child {
    width: 55%;
}

.table-contact-us {
    color: rgba(255, 255, 255, 0.8);
}

.ps-attr-name-warp {
    background-color: #2B2F83;
}

.product-service-title-warp {
    padding-left: 30px;
    transition: all .3s ease-in-out;
}

.product-service-title-warp a {
    color: #2B2F83;
    z-index: 9;
}

.product-service-title-warp::before,
.product-service-title-warp::after {
    position: absolute;
}

.product-service-title-warp::before {
    content: url(assets/svg/p-s-icon.svg);
    top: 16px;
    left: 12px;
    z-index: 9;
}

.no-after::before {
    content: url(assets/svg/p-s-icon.svg) !important;
}

.product-service-title-warp:hover::before,
.product-service-title-warp:focus::before {
    content: url(assets/svg/p-s-icon-hover.svg);
}

.product-service-title-warp::after {
    content: "";
    width: 115%;
    height: 100%;
    background-color: #313388;
    top: 0;
    left: 85%;
    z-index: 0;
    transition: all .3s ease-in-out;
    transform: skewX(-10deg);
}

.product-service-title-warp:hover:after,
.product-service-title-warp:hover:focus {
    left: -15%;
}

.product-service-title-warp:hover a,
.product-service-title-warp:focus a {
    color: #fff;
}

.product-service-item,
.product-service-info {
    background-color: #E7E8F8;
}

.product-service-thumb {
    border: 2px solid #313388;
    background-color: #fff;
}

.product-service-info .flaticon {
    top: 0;
    right: 0;
    color: #fff;
    background-color: #313388;
}

.product-service-info .flaticon i {
    transform: rotate(180deg);
}

.about-us-content-warp {
    position: relative;
}

.about-us-content-warp>* {
    z-index: 100;
}

.first-layer-title {
    position: relative;
}

.first-layer-title::before,
.first-layer-title::after {
    position: absolute;
    content: "";
    height: 3px;
    left: 0;
    bottom: 0;
}

.first-layer-title::before {
    width: 100%;
    background-color: #313388;
}

.first-layer-title::after {
    width: 35%;
    background-color: #C62305;
}

.first-layer-title a {
    font-size: 24px;
}

.third-layer-title-warp,
.second-layer-title-warp {
    border-bottom: 1px solid #DBDBDB;
}

.third-layer-title {
    position: relative;
}

.third-layer-title a {
    color: #605E5E;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 2rem;
}

.third-layer-title a::before {
    position: absolute;
    content: "-";
    left: 17px;
    top: 50%;
    margin-top: -12px;
    color: #707070;
}

.third-layer-title a:hover:before {
    color: #B92A2F;
}

.single-gray-bg,
.single-white-bg {
    font-size: 20px;
}

.single-gray-bg {
    background-color: #F8F8F8;
}

.single-white-bg {
    background-color: #fff;
}

.single-num-primary-warp,
.single-num-danger-warp {
    font-size: 30px;
    height: 50px;
    width: 50px;
    padding-right: 5px;
    min-width: 50px;
    margin-right: 50px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    color: #fff;
    position: relative;
}

.single-num-danger-warp {
    background-color: #C62305;
}

.single-num-primary-warp {
    background-color: #313388;
}

.single-num-primary-warp::before,
.single-num-danger-warp::before {
    content: '';
    position: absolute;
    left: 100%;
    bottom: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 50px 0 0 25px;
}

.single-num-primary-warp::before {
    border-color: transparent transparent transparent #313388;
}

.single-num-danger-warp::before {
    border-color: transparent transparent transparent #C62305;
}


/* .single-num-danger-warp {
    background: linear-gradient( 65deg, #C62305 60px, transparent 0);
}

.single-num-primary-warp {
    background: linear-gradient( 65deg, #313388 60px, transparent 0);
} */

.font-25 {
    font-size: 25px;
}

.font-24 {
    font-size: 24px;
}

.font-22 {
    font-size: 22px;
}

@media(max-width: 991px) {
    .adaptive-circle .font-22 {
        font-size: 16px;
    }
}

.tax-name-warp {
    font-size: 18px;
    font-weight: bold;
    color: #313388;
    position: relative;
}

@media(min-width: 992px) {
    .tax-name-warp {
        font-size: 24px;
    }
}

.tax-name-warp::before {
    position: absolute;
    content: "";
    left: 0;
    bottom: 0;
    background: #313388;
    width: 100%;
    height: 1px;
}

.tax-name-warp .d-inline-block {
    position: relative;
}

.tax-name-warp .d-inline-block::before {
    position: absolute;
    content: "";
    left: 0;
    bottom: 0;
    background: #B92A2F;
    width: 100%;
    height: 4px;
}

.global-product-service-sidebar a:hover {
    background: #DBDBDB;
    color: #B92A2F;
}

.font-decoration-underline {
    border-bottom: #B92A2F 1px solid;
}

.adaptive-circle {
    min-width: 90px;
    width: 90px;
    height: 0;
    padding-top: 90px;
    border-radius: 100%;
    box-sizing: border-box;
    position: relative;
}

.adaptive-circle .layout {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    text-align: center;
}

.adaptive-circle .layout.middle:before {
    display: inline-block;
    vertical-align: middle;
    content: '';
    height: 100%;
    width: 0;
    overflow: hidden;
}

.adaptive-circle .layout.middle div:first-child {
    display: inline-block;
    vertical-align: middle;
}

.time-line-contact {
    position: relative;
}

.time-line-contact::after {
    position: absolute;
    content: "";
    height: 21px;
    width: 1px;
    top: 100%;
    left: 50%;
    margin-top: 15px;
    background: #B92A2F;
}

.about-us-logo-warp img {
    max-height: 30px;
}

@media(min-width: 992px) {
    .about-us-logo-warp img {
        max-height: 54px;
    }
}

.standard-logo-warp {
    position: relative;
    z-index: 1;
}

.standard-logo-warp img {
    max-height: 56px;
    max-width: 56px;
}

@media(max-width: 767px) {
    .about-us-logo-warp {
        padding: 0 50px;
    }
    .about-us-logo-warp .border {
        border-top: 0 !important;
        border-left: 0 !important;
        border-right: 0 !important;
    }
    .standard-logo-warp img {
        max-height: 36px;
        max-width: 36px;
    }
}

.standard-logo-warp-blue::after,
.standard-logo-warp-red::after {
    position: absolute;
    content: "";
    width: 120%;
    height: 120%;
    left: -10%;
    top: -10%;
    z-index: -1;
    transform: rotate(45deg);
}

.standard-logo-warp-red::after {
    background-color: #B92A2F;
}

.standard-logo-warp-blue::after {
    background-color: #313388;
}

.swiper-button-wrapper {
    position: absolute;
    left: 0;
    width: 100%;
    height: 78px;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-top: 1px solid #DBDBDB;
    padding-top: 30px;
}

.swiper-button-next-gallery-top,
.swiper-button-prev-gallery-top {
    position: relative;
    color: #000;
    top: auto;
    right: auto;
    left: auto;
}

.gallery-thumbs-button {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
    font-weight: bold;
    margin-bottom: 30px;
    color: #fff;
}

.gallery-thumbs-button .content-one {
    font-size: 18px;
}

.gallery-thumbs-button .content-two {
    font-size: 13px;
}

.swiper-slide-thumb-active .gallery-thumbs-button,
.gallery-thumbs-button:hover {
    background: rgba(255, 255, 255, 1);
}

.swiper-slide-thumb-active .gallery-thumbs-button,
.gallery-thumbs-button:hover .content-one {
    color: #313388;
}

.gallery-thumbs-button:hover .content-two {
    color: #000;
}

.content-border {
    border-bottom: 1px solid #fff;
}

.swiper-slide-thumb-active .gallery-thumbs-button .content-border,
.gallery-thumbs-button:hover .content-border {
    border-bottom: 1px solid #313388;
}

@media(max-width: 767px) {
    .section-standard .font-24 {
        font-size: 16px;
    }
}

@media(min-width: 768px) {
    .embed-responsive-25::before {
        padding-top: 25% !important;
    }
    .gallery-thumbs-button {
        width: 150px;
        height: 150px;
        border-radius: 50%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        background: rgba(255, 255, 255, 0.2);
        color: #fff;
        font-weight: bold;
        margin-bottom: 30px;
        color: #fff;
    }
    .gallery-thumbs-button .content-one {
        font-size: 24px;
    }
    .gallery-thumbs-button .content-two {
        font-size: 16px;
    }
}

.section-bg {
    background-color: #ffffff;
    background-repeat: no-repeat;
    background-size: cover;
}

.content-company-title {
    margin-bottom: 30px;
    color: #313388;
}

.contact-info-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.contact-info-list li {
    display: flex;
    align-items: center;
    padding-bottom: 15px;
    border-bottom: 1px solid #DBDBDB;
    margin-bottom: 15px;
}

.contact-info-list li a {
    color: #B92A2F;
}

.contact-info-icon {
    width: 16px;
    height: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 20px;
}

@media(min-width: 768px) {
    .content-company-title {
        margin-bottom: 50px;
    }
}

@media(min-width: 992px) {
    .contact-info-icon {
        width: 24px;
        height: 24px;
    }
}

.service-content {
    padding: 0 !important;
}

.section-standard {
    padding-top: 80px;
    padding-bottom: 100px;
    padding-bottom: 10px;
}

.section-standard .px-4 {
    margin-bottom: 40px;
}

.service-bottom-content {
    padding: 40px 0;
}

.procedure-section {
    padding: 30px 0;
    background-color: #1E2563;
    overflow: hidden;
}

.procedure-right {
    background-color: #fff;
    padding: 30px;
    position: relative;
}

.procedure-right .swiper-container {
    padding-bottom: 100px;
    position: relative;
}

.procedure-list-title {
    margin-bottom: 30px;
}

.procedure-list-title span {
    color: #313388;
    font-weight: normal;
    margin-right: 20px;
}

.procedure-index {
    position: relative;
    padding-left: 50px;
    margin-bottom: 20px;
}

.procedure-index span {
    position: absolute;
    left: 0;
    top: 0;
    width: 30px;
    height: 100%;
    font-size: 20px;
    color: #fff;
    font-weight: bold;
    background-color: #B92A2F;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media(min-width: 768px) {
    .section-standard {
        padding-top: 80px;
        padding-bottom: 40px;
    }
    .service-bottom-content {
        padding: 60px 0;
    }
    .procedure-section {
        padding: 40px 0;
    }
}

@media(min-width: 1200px) {
    .section-standard {
        padding-top: 100px;
        padding-bottom: 60px;
    }
    .service-bottom-content {
        padding: 80px 0;
    }
    .procedure-section {
        padding: 60px 0;
    }
    .procedure-right {
        padding: 50px 0 0 50px;
    }
    .procedure-right::after {
        content: '';
        position: absolute;
        left: 100%;
        top: 0;
        height: 100%;
        width: 3000px;
        background-color: #fff;
    }
}

.about-content {
    padding: 0 !important;
    overflow: hidden;
}

.global-section-first {
    padding-top: 40px;
    padding-bottom: 40px;
}

.global-section,
.about-us-section04,
.about-us-section05,
.about-us-section03,
.about-us-section02,
.about-us-section01 {
    padding: 40px 0;
}

.px-wrap {
    background-color: rgba(255, 255, 255, .68);
    padding: 30px;
}

.summary-item {
    display: flex;
    color: #000000;
}

.summary-item .summary-item-title {
    flex: 0 0 120px;
    max-width: 120px;
    position: relative;
    width: 100%;
    color: #fff;
    background-color: #1E2563;
    text-align: center;
    padding: 10px 0;
    border-bottom: 1px solid #313388;
    display: flex;
    align-items: center;
    justify-content: center;
}

.summary-item:first-child .summary-item-title {
    border-top: 1px solid #1E2563;
}

.summary-item-content {
    flex: 1;
    padding: 5px 0 5px 15px;
    border-bottom: 1px solid #DBDBDB;
    display: flex;
    align-items: center;
}

.summary-item:first-child .summary-item-content {
    border-top: 1px solid #DBDBDB;
}

@media(min-width: 768px) {
    .global-section-first {
        padding-top: 80px;
        padding-bottom: 60px;
    }
    .about-us-section01 {
        padding-top: 80px;
        padding-bottom: 40px;
    }
    .global-section,
    .about-us-section04,
    .about-us-section05,
    .about-us-section03,
    .about-us-section02 {
        padding: 60px 0;
    }
    .about-us-section02 {
        background-position: 50% 50%;
    }
    .center-list-wrap {
        position: relative;
        left: 50%;
        margin-left: -44px;
    }
    .px-wrap {
        background-color: rgba(255, 255, 255, .68);
        margin: 0 200px;
        padding: 40px 0;
        position: relative;
        min-height: 400px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }
    .px-wrap::before {
        content: '';
        position: absolute;
        right: 100%;
        top: 0;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 0 0 400px 200px;
        border-color: transparent transparent rgba(255, 255, 255, .68) transparent;
    }
    .px-wrap::after {
        content: '';
        position: absolute;
        left: 100%;
        top: 0;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 400px 200px 0 0;
        border-color: rgba(255, 255, 255, .68) transparent transparent transparent;
    }
    .summary-item .summary-item-title {
        flex: 0 0 250px;
        max-width: 250px;
    }
    .summary-item .summary-item-title {
        padding: 18px 0;
    }
    .summary-item-content {
        padding: 5px 0 5px 40px;
    }
}

@media(min-width: 1200px) {
    .global-section-first {
        padding-top: 100px;
        padding-bottom: 80px;
    }
    .about-us-section01 {
        padding-top: 100px;
        padding-bottom: 60px;
    }
    .global-section,
    .about-us-section04,
    .about-us-section05,
    .about-us-section03,
    .about-us-section02 {
        padding: 80px 0;
    }
}

.taxonomy-item {
    padding: 20px;
    background-color: #F2F2F2;
    margin-bottom: 20px;
    display: block;
    position: relative;
    z-index: 1;
}

.taxonomy-item:hover {
    background-color: #E7E8F8;
}

.taxonomy-name {
    position: absolute;
    left: 0;
    bottom: 5px;
    z-index: 2;
    width: 50%;
    min-width: 200px;
    background-color: #1E2563;
    overflow: hidden;
    font-size: 16px;
    padding: 10px 20px 10px 15px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #fff !important;
    font-weight: bold;
}

.taxonomy-link-icon {
    position: relative;
    z-index: 10;
    list-style: 0;
}

.taxonomy-link-icon img {
    max-height: 14px;
}

.taxonomy-item:hover .taxonomy-name::after {
    left: -10%;
}

.taxonomy-link-wrap {
    position: absolute;
    left: 0;
    bottom: 5px;
    z-index: 2;
    width: 50%;
    min-width: 200px;
}

.taxonomy-link {
    background-color: #1E2563;
    overflow: hidden;
    font-size: 16px;
    padding: 10px 20px 10px 15px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 20px 10px 15px;
    font-size: 16px;
    color: #fff !important;
    position: relative;
    z-index: 2;
    font-weight: bold;
}

.taxonomy-name::after,
.taxonomy-link::after {
    content: "";
    position: absolute;
    width: 115%;
    height: 100%;
    background-color: #B92A2F;
    top: 0;
    left: 73%;
    z-index: 0;
    transition: all .3s ease-in-out;
    transform: skewX( -10deg);
    z-index: -1;
}

.taxonomy-item:hover .taxonomy-link-more::after,
.taxonomy-link:hover::after {
    left: -10%;
}

.taxonomy-link-child {
    opacity: 0;
    transition: all .3s ease-in-out;
}

.taxonomy-item:hover .taxonomy-link-child {
    opacity: 1;
}

.taxonomy-item:hover .taxonomy-link-icon-more {
    display: none;
}

.tax-title-wrap {
    display: flex;
    flex-direction: column;
}

.tax-title-wrap {
    margin-bottom: 40px;
}

.tax-name-warpper {
    flex: 1;
}

.tax-name-warp {
    border-bottom: 1px solid #313388;
    position: relative;
    display: flex;
}

.tax-name {
    position: relative;
    padding-bottom: 12px;
    margin-bottom: -1px;
    z-index: 2;
    border-bottom: 4px solid #B92A2F;
}

.tax-desc-warp {
    margin-top: 20px;
}

#contentLeft {
    margin-bottom: 40px;
}

@media(min-width: 768px) {
    .taxonomy-item {
        padding: 40px;
        margin-bottom: 40px;
    }
    .taxonomy-name {
        bottom: 25px;
        padding: 15px 30px 15px 20px;
        font-size: 24px;
    }
    .taxonomy-link-icon img {
        max-height: 20px;
    }
    .taxonomy-link-wrap {
        bottom: 25px;
    }
    .taxonomy-link {
        font-size: 24px;
        padding: 15px 30px 15px 20px;
    }
}

.category-icons-warp {
    margin-bottom: 30px;
    text-align: center;
}

.category-icons-warp img {
    max-height: 180px;
}

@media(min-width: 992px) {
    #contentLeft {
        position: relative;
        margin-top: -80px;
    }
    .category-icons-warp {
        margin-right: 60px;
        margin-bottom: 0;
        text-align: left;
    }
    .tax-title-wrap {
        flex-direction: row;
        align-items: center;
    }
}

.single-product-title {
    background-color: #E7E8F8;
    padding: 12px;
    text-align: center;
    color: #313388;
    margin-bottom: 30px;
}

.single-product-title img {
    margin-right: 20px;
}

@media(max-width: 991px) {
    .about-us-section01 .w-75 {
        width: 100% !important;
    }
    .bg-right {
        background-position: center right;
    }
}

.section-en-title {
    font-size: 20px;
}

@media(min-width: 992px) {
    .section-en-title {
        font-size: 40px;
    }
}

.parts-item-warp {
    padding: 70px 50px;
    text-align: center;
}

.home-product-service-title {
    margin-bottom: 20px;
}

.home-product-service-content {
    margin-bottom: 20px;
}

.parts-equipment-warp {
    margin-bottom: 30px;
}

.product-service-item-info {
    font-size: 14px;
}

@media(max-width: 991px) {
    .parts-item-warp {
        padding: 40px 70px;
    }
    .home-product-service-title {
        font-size: 16px;
    }
    .home-product-service-content,
    .home-product-service-content p {
        text-align: left;
        font-size: 12px;
    }
    .front-item-warp {
        height: auto !important;
        margin-bottom: 20px;
    }
    .front-item-warp-top {
        margin-top: 0 !important;
    }
    .product-service-item-info {
        font-size: 12px;
    }
    .main-font-warp {
        margin-bottom: 15px !important;
        padding-bottom: 15px !important;
    }
    .section-contact-us,
    .section-equipment,
    .section-products-service {
        background-color: #1E2563 !important;
        background-image: none !important;
    }
    .section-about-us {
        padding: 50px 0;
        background: url(assets/images/about-mobile.jpg) no-repeat center center /cover !important;
    }
    .section-about-us-content {
        margin-top: 240px;
    }
    .section-contact-us .main-font-warp-patch .text-blue {
        color: #fff !important;
    }
    .section-contact-us .contact-us-content-warp .text-danger,
    .section-contact-us .contact-us-content-warp .text-primary {
        color: #fff !important;
    }
    .section-contact-us .main-font-warp-patch::after {
        background-color: #fff;
    }
    .section-contact-us .btn-outline-dark.border-bottom {
        color: #f8f9fa;
        border-bottom: 1px solid #fff !important;
    }
    .section-contact-us .btn-outline-dark:hover,
    .section-contact-us .btn-outline-dark:not(:disabled):not(.disabled):active,
    .section-contact-us .btn-outline-dark:not(:disabled):not(.disabled).active {
        color: #fff;
        background-color: #B92A2F;
        border-color: #B92A2F !important;
    }
    .product-service-item {
        max-width: 300px;
        margin-left: auto;
        margin-right: auto;
    }
    .single-product-title,
    .product-service-title-warp {
        font-size: 18px;
    }
    .section-standard .px-4 {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .section-standard p {
        padding: 0 15px;
    }
    .left-img-wrap {
        margin-bottom: 30px;
    }
    .bg-cover-sm {
        background-size: cover !important;
    }
    .tp-bullets.ares {
        bottom: -35px !important;
        top: inherit !important;
    }
    .ares .tp-bullet {
        width: 8px;
        height: 8px;
    }
    .equipment-item-wrap {
        flex-direction: column;
    }
    .equipment-item-icon,
    .equipment-item-text {
        display: block;
        margin-left: 0 !important;
    }
    .equipment-item-icon {
        margin-bottom: 15px;
    }
    .el-item-warp {
        padding: 15px;
    }
    .about-us-section02 {
        background-image: url(./assets/images/bg-about.png) !important;
        background-size: auto;
        background-position: left top;
        background-color: #F8F8F8;
    }
    .section-contact-us {
        padding-bottom: 100px;
    }
    .contact-us-btn {
        bottom: -260px;
    }
}

.no-after::after {
    content: none;
}

.no-after a {
    color: #2B2F83 !important;
}

.no-after .pr-5 {
    padding-right: 1rem !important;
}
