/* ============= common style ============= */
img {
    max-width: 100%;
    transform: translateZ(0);
}

/* ================================ header and aside ================================ */
.lr-head {
}

.head-space {
    height: 60px;
}

.head-sect {
    width: 100%;
    background-color: rgba(255,255,255,0.95);
    height: 60px;
    color: #333;
    box-shadow:0px 0px 4px 0px rgba(0,0,0,0.2);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 40px;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 1;
}

.head-logo {
    display: inline-block;
}

.head-logo img, .head-logo svg {
    display: inline-block;
    max-width: 150px;
    max-height: 22px;
    width: 9.25rem;
    height: 1.25rem;
}

.head-link-list {
    display: flex;
}

.head-link-item a {
    color: #333;
}

.head-link-item:not(:first-of-type) {
    margin-left: 20px;
}

.head-icon-menu {
    padding: 6px;
    cursor: pointer;
    display: none;
}

.head-icon-menu svg, .head-icon-menu img {
    display: block;
    width: 1.25rem;
    height: 1.25rem;
    min-width: 16px;
    min-height: 16px;
}

.asideNav-mask {
    position: fixed;
    z-index: 2;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.4);
    transition: 0.4s ease;
    display: none;
}
.asideNav-mask.hide {
    visibility: hidden;
    opacity: 0;
}

.asideNav {
    position: fixed;
    z-index: 2;
    right: 0;
    top: 0;
    height: 100%;
    width: 250px;
    max-width: 60vw;
    background-color: #fff;
    transition: 0.4s ease;
    display: none;
}
.asideNav.hide {
    visibility: hidden;
    transform: translate(100%, 0);
}

.asideNav-icon-exit {
    position: absolute;
    right: 10px;
    top: 10px;
    padding: 6px;
    cursor: pointer;
}

.asideNav-icon-exit svg, .asideNav-icon-exit img {
    display: block;
    width: 1.25rem;
    height: 1.25rem;
    min-width: 16px;
    min-height: 16px;
}

@media (max-width: 900px) {
    .head-space {
        height: 60px;
        height: 45px;
    } 

    .head-sect {
        padding: 0 20px;
        height: 45px;
    }

    .head-link-list {
        display: none;
    }
    .head-link-list.show {
        display: block;
        padding-top: 60px;
        text-align: center;
    }

    .head-link-item {
        margin: 0 20px;
    }
    .head-link-item a {
        display: block;
        width: 100%;
        height: 100%;
        padding: 14px 0;
        border-bottom: 1px solid #eee;
        transition: 0.1s ease;
    }
    .head-link-item a:hover {
        border-color: #333;
    }

    .head-icon-menu {
        display: block;
    }

    .asideNav, .asideNav-mask {
        display: block;
    }
}

@media (max-width: 400px) {
    .head-sect {
        padding: 0 15px;
    }
}
/* ============================== header and aside (end) ============================== */


/* ================================ banner ================================ */
.banner {
}

.banner-sect {
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
    height: 60vw;
    max-height: 600px;
    min-height: 300px;
}

.banner-sect > img {
	max-width: 100%;
}

.banner-title {
    margin: 0;
    font-size: 3rem;
}

.banner-describe {
    margin-bottom: calc(2.5rem - 4px);
    font-size: 1.6rem;
}

.banner-describe, .banner-title {
    text-shadow:0px 0px 10px rgba(0,0,0,0.5);
    text-align: center;
}

.banner-btn-list {
    display: flex; 
    flex-wrap: wrap;
    justify-content: center;
}

.banner-btn-list .btn-normal {
    margin: 4px;
}

.banner-carousel {
    position: absolute;
    z-index: -2;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.banner-carousel-item {
    width: 100%;
    height: 100%;
    height: 60vw;
    max-height: 600px;
    min-height: 300px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.banner-carousel-item img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 300px;
}

.banner .owl-dots {
    position: absolute;
    width: 100%;
    bottom: 0;
}

@media (max-width: 600px) {
    .banner-title {
        font-size: 2.1875rem;
    }
}

/* ============================== banner (end) ============================== */


/* ================================ footer ================================ */
.foot {
    padding: 12px 40px;
    background-color: #333;
    color: #fff;
}

.foot a {
    color: #fff;
}

.foot-sect {
    /* border: 1px solid blue; */
    max-width: 1280px;
    margin: auto;
    display: flex;
    /* justify-content: center; */
    padding: 0;
    position: relative;
}

.foot-company-area {
    /* border: 1px solid blue; */
    margin-right: 8.75rem;
}

.foot-tag-area {
    /* border: 1px solid #fbb; */
    display: flex;
    flex-wrap: wrap;
}

.foot-tag {
    /* border: 1px solid red; */
    margin-bottom: 20px;
}

.foot-tag-title {
    color: #999;
}

.foot-tag:not(:last-of-type) {
    margin-right: 2.5rem;
}

.foot-company {
    margin-bottom: 5px;
}

.foot-company-en {
    font-size: 0.75rem;
}

.foot-copyright {
    color: #666;
    font-size: 11px;
    position: absolute;
    left: 0;
    bottom: 0;
    margin-bottom: 0;
}

.foot-info-list {
    margin-right: 10px;
}

.foot-icon-list {
    display: flex;
    flex-direction: column;
}
.foot-icon-list.atAside {
    position: absolute;
    left: 0;
    bottom: 30px;
    width: 100%;
    display: flex;
    justify-content: center;
    flex-direction: row;
}
.foot-icon-list li {
    margin-bottom: 5px;
}
.foot-icon-list.atAside li + li {
    margin-left: 10px;
}
.foot-icon-item {
    display: block;
    cursor: pointer;
    width: 2.5rem;
    height: 2.5rem;
    background-size: 100% 100%;
    background-repeat: no-repeat;        
    transition: 0.2s ease;
    margin-top: 0;
    opacity: 0.8;
}

.foot-icon-item:hover {
    opacity: 1;
}

.foot-icon-item.fb {
    background-image: url("data:image/svg+xml,%3Csvg width='35px' height='35px' viewBox='0 0 35 35' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg id='style-guide' transform='translate(-40.000000, -815.000000)' fill-rule='nonzero'%3E%3Cg id='ic_fb' transform='translate(40.000000, 815.000000)'%3E%3Ccircle id='Oval' fill='%231277F2' cx='17.3754867' cy='17.3754867' r='17.3754867'%3E%3C/circle%3E%3Cpath d='M21.5226458,17.3465613 L18.9273068,17.3465613 L18.9273068,26.8546803 L14.9951479,26.8546803 L14.9951479,17.3465613 L13.125,17.3465613 L13.125,14.0050299 L14.9951479,14.0050299 L14.9951479,11.8426796 C14.9951479,10.2963657 15.7296729,7.875 18.9623089,7.875 L21.875,7.88718591 L21.875,11.1307114 L19.7616525,11.1307114 C19.4150024,11.1307114 18.9275661,11.3039069 18.9275661,12.0415432 L18.9275661,14.0081412 L21.8661847,14.0081412 L21.5226458,17.3465613 Z' id='Path' fill='%23FFFFFF'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

.foot-icon-item.line {
    background-image: url("data:image/svg+xml,%3Csvg width='35px' height='35px' viewBox='0 0 35 35' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg id='style-guide' transform='translate(-85.000000, -815.000000)' fill-rule='nonzero'%3E%3Cg id='ic_line' transform='translate(85.000000, 815.000000)'%3E%3Ccircle id='Oval' fill='%2300B900' cx='17.5' cy='17.5' r='17.5'%3E%3C/circle%3E%3Cg id='TYPE_A' transform='translate(5.833333, 7.000000)' fill='%23FFFFFF'%3E%3Cpath d='M11.6666667,1.70530257e-13 C18.0978034,1.70530257e-13 23.3333333,4.23469145 23.3333333,9.43631383 C23.3333333,11.5157978 22.5235948,13.3972357 20.8339597,15.2378994 L20.8339597,15.2378994 L20.6450965,15.4503757 C18.1188654,18.2252973 12.880836,21.4694342 11.6666667,21.9947661 C10.4213647,22.5335679 10.6055291,21.6598352 10.6552243,21.3685909 L10.6552243,21.3685909 L10.8218492,20.375448 C10.8898043,20.0266811 10.8768055,19.6670499 10.783847,19.3240562 C10.6552243,18.9920378 10.1378101,18.8231161 9.75778836,18.7415677 C4.15100643,18.0047198 -1.9096183e-13,14.0962219 -1.9096183e-13,9.43631383 C-1.9096183e-13,4.23469145 5.23552994,1.70530257e-13 11.6666667,1.70530257e-13 Z M9.12461774,7 L8.37538226,7 C8.26114877,7 8.1681312,7.1056801 8.16666667,7.23715241 L8.16666667,12.593101 C8.16666667,12.7257777 8.26011182,12.8333333 8.37538226,12.8333333 L9.12461774,12.8333333 C9.23988818,12.8333333 9.33333333,12.7257777 9.33333333,12.593101 L9.33333333,7.23715241 C9.3318688,7.1056801 9.23885123,7 9.12461774,7 Z M14.9456588,7 L14.1749646,7 C14.0540033,7 13.9555075,7.1056801 13.9539567,7.23715241 L13.9539567,10.4186906 L11.6872091,7.10471665 L11.6787088,7.07083773 L11.6787088,7.05543823 L10.7210079,7.05543823 C10.6000466,7.05542742 10.5015508,7.16111833 10.5,7.29259064 L10.5,12.593101 C10.5,12.7257777 10.5989486,12.8333333 10.7210079,12.8333333 L11.5228699,12.8333333 C11.5812276,12.8333333 11.6371549,12.8079307 11.678153,12.7627876 C11.7191511,12.7176446 11.7418022,12.6565297 11.7410443,12.593101 L11.7410443,9.41464273 L14.0077919,12.7316966 L14.0340278,12.7633568 L14.0340278,12.7633568 L14.0644606,12.7902147 L14.0956284,12.7902147 C14.1144013,12.7934428 14.1335243,12.7934428 14.1522971,12.7902147 L14.9456588,12.7902147 C15.0677181,12.7902147 15.1666667,12.682659 15.1666667,12.5499824 L15.1666667,7.23715241 C15.1651159,7.1056801 15.06662,7 14.9456588,7 Z M4.47559055,7 L3.71496063,7 C3.59730913,7 3.50150835,7.10579172 3.5,7.23740288 L3.5,12.5990081 C3.50051219,12.6403773 3.51030484,12.6805889 3.52809853,12.7161297 L3.56062992,12.7654985 C3.6002019,12.8093452 3.65375439,12.8337536 3.70944882,12.8333333 L6.78503937,12.8333333 C6.90375885,12.8333333 7,12.7256586 7,12.5928418 L7,11.7295586 C7,11.5967419 6.90375885,11.4890726 6.78503937,11.4890726 L6.78503937,11.4952389 L4.69055118,11.4952389 L4.69055118,7.23740288 C4.68904283,7.10579172 4.59324206,7 4.47559055,7 Z M19.6211121,7 L16.5372739,7 C16.5006589,6.99957852 16.4650006,7.01032945 16.433928,7.0305712 L16.3912119,7.06784172 C16.3665253,7.09740728 16.3491083,7.13320528 16.340188,7.17176697 L16.3333333,7.2312487 L16.3333333,12.5990139 C16.3330829,12.6405524 16.3426961,12.6810259 16.3607454,12.7165101 L16.3939678,12.765504 C16.4326928,12.8088816 16.4852303,12.8333333 16.5400298,12.8333333 L19.6211121,12.8333333 C19.6778727,12.8333333 19.7322693,12.8079039 19.7721453,12.7627132 C19.8120213,12.7175225 19.8340526,12.6563432 19.8333333,12.5928476 L19.8333333,11.7295654 C19.8340526,11.6660698 19.8120213,11.6048905 19.7721453,11.5596998 C19.7322693,11.5145091 19.6778727,11.4890743 19.6211121,11.4890797 L17.5211258,11.4890797 L17.5211258,10.5918828 L19.6183562,10.5918828 C19.6751168,10.5918882 19.7295134,10.5664534 19.7693894,10.5212627 C19.8092654,10.4760721 19.8312967,10.4148927 19.8305595,10.3513971 L19.8305595,9.48811494 C19.8312967,9.42461936 19.8092654,9.36343998 19.7693894,9.3182493 C19.7295134,9.27305861 19.6751168,9.24762383 19.6183562,9.24762919 L17.5211258,9.24762919 L17.5211258,8.34118291 L19.6211121,8.34118291 C19.6778727,8.34118827 19.7322693,8.3157535 19.7721453,8.27056281 C19.8120213,8.22537212 19.8340526,8.16419274 19.8333333,8.10069717 L19.8333333,7.24049815 C19.8340526,7.17700257 19.8120213,7.1158232 19.7721453,7.07063251 C19.7322693,7.02544182 19.6778727,7 19.6211121,7 Z' id='Combined-Shape'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

.foot-icon-item-text {
    color: #fff;
    font-size: inherit;
}

.icon-wrapper {
    display: flex;
    align-items: center;
    padding: 0 15px;
    border-radius: 20px;
}

.icon-wrapper.fb {
    background-color: #1277F2;
}

.icon-wrapper.line {
    background-color: #00B900;
}

@media(max-width: 1200px) {
    .foot-company-area {
        margin-right: 60px;
    }

    .foot-company-area {
        /* border: 1px solid blue; */
        margin-bottom: 25px;
    }
}

@media (max-width: 800px) {
    .foot-sect {
        display: block;
        padding-bottom: 20px;
    }
}

@media (max-width: 600px) {
    .foot {
        padding: 12px;
    }
}
/* ============================== footer (end) ============================== */

.wysiwyg-part table td {
    padding: 10px;
}