/*
Theme Name: Flatsome Child
Template: flatsome
*/

/*

 Theme Name: Flatsome Child

 Description: Flatsome Child Theme

 Template: flatsome

*/

h1, 
h2, 
h3, 
h4, 
h5, 
h6, 
.heading-font, 
.off-canvas-center .nav-sidebar.nav-vertical > li > a
footer h5 {
    font-family: "Roboto", serif !important;
}
/* form.cart {
    display: none
} */
.button,
button,
fieldset,
input,
select,
textarea {
    margin-bottom: 3px
}
.nav-small .image-icon {
    display: flex;
    align-items: center
}
.page-wrapper {
    padding: 0
}
.container {
    max-width: 1180px !important;
}
.row.row-small{
    max-width: 1180px !important;
}
.select-resize-ghost,
.select2-container .select2-choice,
.select2-container .select2-selection,
input[type=date],
input[type=email],
input[type=number],
input[type=password],
input[type=search],
input[type=tel],
input[type=text],
input[type=url],
select,
textarea {
    box-shadow: unset
}
.container .row-small:not(.row-collapse), 
.row .row-small:not(.row-collapse){
    margin: 0 auto
}
#text-box-293718890 {
    width: 100%
}
.current-lang {
    opacity: .6
}
.bg.bg-loaded {
    background-position: center left !important
}
.img-center .bg.bg-loaded {
    background-position: center center !important
}
.off-canvas .sidebar-menu{
    padding: 0;
}
.off-canvas:not(.off-canvas-center) li.html .logo{
    padding: 7px 0;
}
/* ============= header =============== */
.menu-item{
    position: relative;
}

.menu-item::before{
    content: "";
    position: absolute;
    height: 2px;
    background: #ccaa14;
    bottom: 4px;
    left: 50%;
    right: 50%;    
    transition: .3s;
}
.current-menu-item::before{
    content: "";
    position: absolute;
    height: 2px;
    background: #ccaa14;
    bottom: 4px;
    left: 2%;
    right: 2%;    
    transition: .3s;
}
.lang-item{
    transition: .3s;
}
.lang-item:hover::before{
    display: none;
}
.menu-item:hover::before{
    left: 2%;
    right: 2%;
}
.lang-item.menu-item:hover{
    opacity: .5;
}
.button.icon.circle {
    margin-right: 5px !important
}
.button.icon.circle:last-child {
    margin-right: 0 !important
}
.ux-menu-title {
    font-size: 1em;
    padding: 0 !important;
    line-height: 1;
    min-height: unset;
    margin-bottom: 15px !important;
}
input[type=submit] {
    margin: 10px auto 0 !important;
    min-width: 100%;
    display: block;
}
textarea {
    min-height: 35px
}
.button {
    margin: 0 !important
}
i[class^=icon-] {
    display: flex;
    align-items: center;
    margin-right: 5px;
    margin-bottom: 2px;
}
.woocommerce-tabs {
    display: none;
}
.header-language-dropdown .image-icon img {
    top: -3px;
    margin-top: -5px;
}
.header-language-dropdown .image-icon {
    margin-left: 3px;
}
.hdn-pc {
    display: none !important;
}
.button i, button i{
    top: 0;
}
.off-canvas-left.mfp-ready .mfp-content {
    background: #ffff;
}
.hamburger-menu .ux-logo-link{
    padding: 7px 0 !important;
}
.section-title-container{
    margin-bottom: 1em;
}
@media(max-width:849px){
    .menu-item::before{
        right: unset;
        left: 0;
    }
    .menu-item:hover::before{
        left: 15px;
        right: unset;
        width: 30px;
    }
    .current-menu-item::before{
        width: 30px;
        left: 15px;
        right: unset;
    }
    .lang-item {
        position: absolute !important;
        left: unset !important;
        right: 15px !important;
        width: 16px !important;
        padding: 0 !important;
        top: 29px !important;
    }
    .lang-item-en {
        right: 40px !important;
    }
}
@media(max-width: 860px) {
    .w100-sp {
        width: 80% !important;
        right: 0;
        left: 0;
        margin: 0 auto;
    }
}
@media(max-width: 750px) {
    .pt3-sp {
        padding-top: 30px !important
    }
    .hdn-sp {
        display: none !important
    }
    .hdn-pc {
        display: block !important;
    }
    .bg.bg-loaded {
        background-position: center center !important
    }
}
@media(max-width:549px){
    .hamburger-menu .ux-logo-link{
        padding: 2px 0 !important;
    }
    .lang-item {
        top: 24px;
    }
}
/* ============ footer ============== */
footer .menu-item:hover::before{
    display: none;
}
footer ul li {
    list-style: none;
    margin-left: 0 !important;
    margin-bottom: 5px !important
}
.footer-wrapper {
    border-top: 1px solid #949599
}
.copyright-footer p {
    margin-bottom: 0
}
@media(max-width: 960px) {
    footer .wpcf7 p:nth-child(2),
    footer .wpcf7 p:nth-child(3) {
        width: 100%
    }
}
@media(max-width:768px) {
    .col6-768 {
        max-width: 50%;
        flex-basis: 50%;
    }
    .col12-768 {
        max-width: 100%;
        flex-basis: 100%;
    }
    footer #image_2038453752 {
        margin: 0 auto !important;
    }
}
@media(max-width:480px) {
    .col12-480 {
        max-width: 100%;
        flex-basis: 100%;
    }
}
/* ============ product ============ */
.product-section{
    padding: 0px 10px 20;
    border-top: unset;
}
.product-section h3 {
    border-top: 1px solid #ececec;
    padding-top: 30px;
}
@media(max-width: 520px){
    .products.row-small>.col{
        padding: 0 0 15px;
    }
    .product-main {
        padding-bottom: 0;
    }
}
.absolute-footer {
    padding: 8px 0
}
/* ============= subbanner ============= */
.subanner-box {
    -webkit-perspective: 1000;
    border: 1px solid #fff;
    background: transparent;
    width: 100%;
}
.subanner-box:hover .inner,
.subanner-box.hover .inner {
    -webkit-transform: rotateY(180deg);
    transform: rotateY(180deg);
}
.subanner-box .front-box,
.subanner-box .back-box,
.subanner-box img {
    width: 100%;
    height: 100%;
}
.subanner-box .inner {
    -webkit-transition: .5s;
    -webkit-transform-style: preserve-3d;
    position: relative;
}
.subanner-box .front-box,
.subanner-box .back-box {
    -webkit-backface-visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
}
.subanner-box .front-box {
    z-index: 2;
}
.subanner-box .back-box {
    -webkit-transform: rotateY(180deg);
}
.subanner-box .txt-box {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    color: #fff;
    padding: 25px 20px 30px;
    font-size: 14px;
    line-height: 1.5;
    background: rgba(0, 0, 0, 0.8);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.subanner-box .txt-box h2 {
    font-size: 24px;
    line-height: 1.3;
    text-align: center;
    position: relative;
    color: #fff;
    margin-bottom: 10px
}
.subanner-box img {
    width: 100%;
    height: 275px;
    object-fit: cover;
    object-position: center;
}
.subanner-box .txt-box h2::after {
    content: "";
    position: absolute;
    width: 40px;
    height: 2px;
    background: rgba(255, 255, 255, 0.7);
    bottom: -6px;
    left: 50%;
    margin-left: -20px;
}
.subanner-box .txt-box.fm1 {
    background: rgba(0, 0, 0, 0.25);
    display: flex;
    justify-content: center;
    align-items: center;
}
.subanner-box .txt-box.fm1 h2 {
    margin-bottom: 0;
}
.subanner-box .txt-box p {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}
.subanner-box .txt-box.fm1 h2::after {
    display: none;
}
.about-service {
    padding-top: 20px;
}
@media (max-width:1200px) {
    .subanner-box .txt-box h2 {
        font-size: 18px
    }
}
@media(max-width:960px){
    .about-service .col {
        max-width: 50%;
        flex-basis: 50%;
    }
}
@media(max-width:750px){
    .other-service .subanner-box{
        padding: 0 15px 5px;
    }
}
@media(max-width:549px) {
    .subanner-box img {
        height: auto
    }
    .subanner-box{
        border: unset;
        padding: 5px 15px 0;
    }
    .service-item {
        padding-top: 10px;
    }
    .about-service .col {
        max-width: 100%;
        flex-basis: 100%;
    }
    .about-service{
        padding-bottom: 20px;
    }
    .about-service{
        padding-top: 0;
    }
}
@media(max-width:374px) {
    .subanner-box .txt-box p {
        -webkit-line-clamp: 2;
    }
    .subanner-box .txt-box{
        padding: 15px 20px 20px;
    }
}
/* ========== articles =========== */
.articles-page{
    padding-top: 45px;
    padding-bottom: 30px;
    margin: 0 auto !important;
}
.articles .box-text a:not(.button),
.articles .box-text h1,
.articles .box-text h2,
.articles .box-text h3,
.articles .box-text h4,
.articles .box-text h5,
.articles .box-text h6 {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    height: 45px
}
.articles .box-text p {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
@media(max-width:849px) {
    .articles .box-text a:not(.button),
    .articles .box-text h1,
    .articles .box-text h2,
    .articles .box-text h3,
    .articles .box-text h4,
    .articles .box-text h5,
    .articles .box-text h6 {
        height: unset;
        font-size: 20px
    }
}
@media(max-width:750px){
    .articles-page{
        padding-top: 30px;
        padding-bottom: 15px;
    }
}
/* ======== pagination ========= */
.nav-dropdown>li>a {
    display: flex;
    align-items: center;
}
.nav-pagination>li>a,
.nav-pagination>li>span {
    display: flex;
    align-items: center;
    justify-content: center;
}
.nav-pagination>li i {
    margin: 0;
}
ul.links {
    display: flex;
    justify-content: center;
    align-items: center;
}
ul.links li a {
    line-height: 1
}
/* ======== social-button ========= */
.social-button,
.social-icons .button.icon:hover,
.social-icons .button.icon:not(.is-outline) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px
}
.social-icons {
    display: flex;
    flex-wrap: wrap;
    align-items: center
}
.icon-facebook:before {
    padding-top: 2px
}
.button.icon.circle {
    margin-right: 5px !important;
    display: flex;
    justify-content: center;
    align-items: center;
}
.filter-button {
    display: flex
}
/* =========== category ============ */
.category-filter-row {
    padding: 4px 0 10px;
    display: flex;
    justify-content: center
}
.category-page-row .box-image {
    width: 100%;
}
.category-page-row .box-image>a,
.category-page-row .box-image>div>a {
    padding-top: 132%;
    position: relative
}
.category-page-row .box-image>a img,
.category-page-row .box-image>div>a img {
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%
}
.category-page-row .box-image>div>a.quick-view {
    padding-top: .5em
}

.row-small>.col {
    padding: 0 5px 15px;
}
.row-small>.flickity-viewport>.flickity-slider>.col{
    padding: 0 5px
}
@media(max-width: 849px){
    .category-page-row{
        padding-top: 0;
    }
    .mobile-sidebar .html .social-icons{
        justify-content: center;
    }
    .category-filtering strong{
        display: none;
    }
    .shop-page-title .flex-col{
        display: flex;
        align-items: center;
        justify-content: flex-end;
        flex-direction: row-reverse;
        padding: 0 0 0 10px;
    }
    .filter-button{
        padding-right: 5px;
        margin-top: 0;
    }
}
@media(max-width:520px){
    .shop-page-title .flex-col{
        padding: 0;
    }
}
@media(max-width: 480px){
    .small-columns-2 .flickity-slider>.col{
        max-width: 100%;
        flex-basis: 100%;
    }
}
/* ========== woocommerce ========== */
/* .woocommerce-result-count {
    display: none
}
.woocommerce-ordering {
    display: none
} */
.widget>ul>li ul,
ul.menu>li ul {
    display: block;
    border-left: unset;
    padding-left: 0;
    margin: 0
}
.widget>ul>li ul li {
    border-top: 1px solid #ececec;
}
.widget>ul>li ul li a {
    font-size: 16px;
    padding: 6px 0 6px 18px;
    position: relative
}
.widget>ul>li ul li a::before {
    content: "";
    position: absolute;
    width: 12px;
    height: 1px;
    background: #334862;
    left: 0px;
    top: 50%;
    margin-top: -1px;
    border-radius: 0
}
/* #shop-sidebar .toggle {
    display: none
} */
.single-post #content {
    padding-top: 60px
}
/* .single-post .entry-header-text .entry-divider{
    display: none;
 } */
 .single-post .entry-header-text.text-center{
    padding: 0 0 10px 0;
}
@media(max-width:750px){
    .single-post #content{
        padding-top: 30px;
    }
    .single-post .entry-header-text.text-center{
        text-align: left;
    }
    .single-post h1.entry-title{
        font-size: 1.2em;
    }
}
.badge-circle .badge-inner,
.badge-circle-inside .badge-inner {
    border-radius: 0 !important
}
.recent-blog-posts {
    display: flex;
    align-items: center !important
}
.recent-blog-posts a {
    margin-bottom: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    font-size: 14px;
    line-height: 1.5
}
.recent-blog-posts .mr-half {
    margin-right: 10px
}
.recent-blog-posts .badge {
    width: 4.2em
}
/* .single-post #comments {
    display: none
} */
.nav-pagination>li i {
    top: 0px
}
ul.links {
    padding-top: 30px;
    padding-bottom: 50px
}
.box-text p {
    font-size: 16px
}
.row-small>.col {
    padding: 10px
}
@media(max-width: 1024px) {
    .gallery-columns-3 .gallery-item,
    .large-columns-3 .flickity-slider>.col,
    .large-columns-3>.col {
        max-width: 50%;
        flex-basis: 50%
    }
}
@media(max-width: 849px) {
    .gallery-columns-3 .gallery-item,
    .large-columns-3 .flickity-slider>.col,
    .large-columns-3>.col {
        max-width: 33.33%;
        flex-basis: 33.33%
    }
}
@media(max-width: 768px) {
    .gallery-columns-3 .gallery-item,
    .large-columns-3 .flickity-slider>.col,
    .large-columns-3>.col {
        max-width: 50%;
        flex-basis: 50%
    }
}
@media(max-width: 520px) {
    .gallery-columns-3 .gallery-item,
    .large-columns-3 .flickity-slider>.col,
    .large-columns-3>.col {
        max-width: 100%;
        flex-basis: 100%
    }
    ul.links {
        padding-top: 0px;
        padding-bottom: 30px;
    }
    .category-page-row {
        padding-top: 0
    }
    .category-filter-row {
        padding-bottom: 0
    }
}
@media(max-width: 500px) {
    .service-item .col {
        max-width: 100%;
        flex-basis: 100%
    }
}
@media(max-width: 750px) {
    .col-sp-12 {
        max-width: 100% !important;
        flex-basis: 100%
    }
}
@media(max-width: 480px){
 
}
.home .banner-inner {
    border-bottom: 1px solid #fff;
}
.home .banner h1,
.home .banner h2,
.home .banner h3,
.home .banner h4,
.home .banner h5,
.home .banner h6 {
    text-shadow: 1px 1px #ffffffdb;
}
.img-center h2 {
    text-shadow: unset
}
.home .row.row-small{
    padding: 0 10px;
}
@media(max-width:1300px) {
    .home .banner h1 {
        font-size: 2.5em
    }
}
@media(max-width:1100px) {
    .home .banner {
        padding-top: 450px !important
    }
    .home .banner h2 {
        font-size: 2.2em
    }
    .home .banner h3 {
        font-size: 1.8em
    }
}
@media(max-width: 860px) {
    .w100-sp {
        width: 80% !important;
        right: 0;
        left: 0;
        margin: 0 auto;
    }
}
@media(max-width:849px) {
    .off-canvas:not(.off-canvas-center) .nav-vertical li>a {
        padding: 0
    }
    .nav-vertical>li {
        flex-direction: column;
        align-items: flex-start;
        padding: 10px 15px
    }
    .html .social-icons {
        display: flex;
        align-items: center
    }
    .html .social-icons a {
        margin: 0 5px 0 0;
    }
    .mobile-sidebar .html .social-icons{
        margin-top: 15px;
    }
}
@media(max-width:550px) {
    .w100-sm {
        width: 93% !important
    }
    .home .banner h2 {
        font-size: 1.8em;
        line-height: 1.45
    }
    .home .banner {
        padding-top: 350px !important
    }
}
.mb-text p{
		margin-bottom: 10px
}
.items{
		padding: 0 10px
}
.off-canvas:not(.off-canvas-center) li.html{
    padding: 10px 15px;
}
/* ========== contact-box ========= */
.contact-box {
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    padding: 30px 25px 20px
}
.single-post .text-center .social-icons{
    justify-content: center;
    margin-top: 10px;
}
.single-post .entry-content.single-page{
    padding-bottom: 0;
}
@media(max-width: 750px){
    .contact-box {
    padding: 30px 15px 20px
}
    .contact-box h2{
            font-size: 1.4em;
            margin-bottom: 20px
    }
}
@media(max-width: 480px){
    .contact-box h2{
            font-size: 1.2em;
            margin-bottom: 20px
    }
}