html.open-popup, 
body.open-popup {
    overflow: hidden;
}
a:focus {
    color: unset;
    outline: unset;
    outline-offset: unset;
}
.wrap {
    display: block;
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
}


.section-product-page {  
    position: relative;
}
.section-product-page-image {
    position: relative;
    left: 50%;
    width: 1920px;
    height: auto;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
.section-product-page-image img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
}

.section-product-page-button-container {
    position: relative;
    width: 100%;
    text-align: center;
}
.section-product-page-button-container:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 28px;
    background-image: url(images/product_page/bg-button-tab.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

.section-product-page-button-box {
    width: 100%;
    padding: 52px 0;
}
.section-product-page-button-wrapper {
    display: inline-block;
    vertical-align: top;
    width: 210px;
    height: 62px;
    border: 3px solid #df2123;
    border-radius: 12px;
    margin: 0 12px;
    color: #535353;
    background-color: #fff;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
}

.section-product-page-button-wrapper.active,
.section-product-page-button-wrapper:hover {
    background-color: #df2123;
    color: #fff;
}

.section-product-page-button-inner {
    position: relative;
    display: inline-block;
    vertical-align: top;
    top: -22px;
    left: 0;
}

.section-product-page-button-icon {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    height: 106px;
    margin: 0 auto;
}
.section-product-page-button-icon img {
    display: block;
    height: 100%;
    width: auto;
    margin: 0 auto;
}
.section-product-page-button-wrapper span {
    display: inline-block;
    vertical-align: middle;
    font-family: "PSLOmyimProReg";
    font-size: 24px;
    line-height: 0.9;
    text-align: left;
}

.section-product-page-button-wrapper:nth-of-type(3) span,
.section-product-page-button-wrapper:nth-of-type(4) span {
    margin-left: 12px;
}


.section-product-page-container {
    width: 100%;
    position: relative;
    text-align: center;
    background-image: url(images/product_page/bg-product-des.jpg);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 1920px auto;
}
.section-product-page-container:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-image: url(images/product_page/bg-button-tab.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

.section-product-page-header-box {
    width: 100%;
    margin-top: 52px;
}

.section-product-page-header-title {
    display: block;
    font-family: "PSLOmyimProBold";
    font-size: 54px;
    color: #df2123;
    line-height: 1;
    margin: 0;
}
.section-product-page-header-des {
    display: block;
    font-family: "PSLOmyimProReg";
    font-size: 35px;
    color: #535353;
    line-height: 1;
    margin: 0;
    margin-top: 6px;
}

.section-product-page-slide {
    position: relative;
    display: block;
    max-width: 960px;
    margin: 20px auto 48px;;
}

.section-product-page-item {
    display: inline-block;
    vertical-align: top;
}

.section-product-page-box {
    display: block;
    width: 197px;
    color: #535353;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
}
.section-product-page-box:hover {
    color: #df2123;
}
.section-product-page-box:hover img {
    -ms-transform: scale(1.09);
    -webkit-transform: scale(1.09); 
    transform: scale(1.09); 
}


.section-product-page-slide-img {
    position: relative;
    display: block;
    height: 259px;
}
.section-product-page-slide-img.new-product:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 64px;
    height: 62px;
    background-image: url(images/product_page/tag-new-product.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

.section-product-page-slide-img img {
    display: block;
    width: auto;
    height: 100%;
    margin: 0 auto;
    -webkit-transition: all 0.25s ease;
    transition: all 0.25s ease;
}
.section-product-page-slide-name {
    display: block;
    font-family: "PSLOmyimProReg";
    font-size: 24px;
    line-height: 1.1;
    text-align: center;
    margin: 24px 0 6px;
}
.section-product-page-slide-subname {
    display: block;
    font-family: "PSLOmyimProReg";
    font-size: 20px;
    color: #535353;
    line-height: 1.1;
    text-align: center;
    padding: 0 16px;
}

.section-product-page-slide .slick-prev, 
.section-product-page-slide .slick-next {
    width: 39px;
    height: 39px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: auto 100%;
    -webkit-transition: all .25s ease;
    transition: all .25s ease;
}
.section-product-page-slide .slick-prev {
    left: -70px;
    top: 40%;
    background-image: url(images/product_page/icon-arrow-prev.png);
}
.section-product-page-slide .slick-next {
    right: -70px;
    top: 40%;
    background-image: url(images/product_page/icon-arrow-next.png);
}
.section-product-page-slide .slick-prev:before, 
.section-product-page-slide .slick-next:before {
    display: none;
}
.section-product-page-slide .slick-prev:hover, 
.section-product-page-slide .slick-next:hover {
    opacity: 0.7;
}

.flickity-button {
    background: #df2123 !important;
    color: #fff !important;
}

.flickity-prev-next-button {
    top: 44% !important;
}

.flickity-prev-next-button.previous {
    left: -50px !important;
}

.flickity-prev-next-button.next {
    right: -78px !important;
}



img.d {
    display: block;
}
img.m {
    display: none;
}


@media (max-width: 1440px) {
    .section-product-page-image {
        width: 133.3333333333vw;
    }
    .section-product-page-button-box {
        padding: 3.6111111111vw 0;
    }
    .section-product-page-button-wrapper {
        width: 14.5833333333vw;
        height: 4.3055555556vw;
        border: 0.2083333333vw solid #df2123;
        border-radius: 0.8333333333vw;
        margin: 0 0.8333333333vw;
    }
    .section-product-page-button-inner {
        top: -1.5277777778vw;
    }
    .section-product-page-button-icon {
        height: 7.3611111111vw;
    }
    .section-product-page-button-wrapper span {
        font-size: 1.6666666667vw;
    }
    .section-product-page-button-wrapper:nth-of-type(3) span,
    .section-product-page-button-wrapper:nth-of-type(4) span {
        margin-left: 0.8333333333vw;
    }
    .section-product-page-container {
        background-size: 133.3333333333vw auto;
    }
    .section-product-page-container:after {
        height: 0.1388888889vw;
    }
    .section-product-page-header-box {
        margin-top: 3.6111111111vw;
    }
    .section-product-page-header-title {
        font-size: 3.75vw;
    }
    .section-product-page-header-des {
        font-size: 2.4305555556vw;
        margin-top: 0.4166666667vw;
    }
    .section-product-page-slide {
        max-width: 66.6666666667vw;
        margin: 1.3888888889vw auto 3.3333333333vw;
    }
    .section-product-page-box {
        width: 13.6805555556vw;
    }
    .section-product-page-slide-img {
        height: 17.9861111111vw;
    }
    .section-product-page-slide-img.new-product:before {
        width: 4.444444444444445vw;
        height: 4.305555555555555vw;
    }
    .section-product-page-slide-name {
        font-size: 1.6666666667vw;
        margin: 1.6666666667vw 0 0.4166666667vw;
    }
    .section-product-page-slide-subname {
        font-size: 1.3888888889vw;
        padding: 0 1.1111111111vw;
    }
    .section-product-page-slide .slick-prev,
    .section-product-page-slide .slick-next {
        width: 2.7083333333vw;
        height: 2.7083333333vw;
    }
    .section-product-page-slide .slick-prev {
        left: -4.8611111111vw;
    }
    .section-product-page-slide .slick-next {
        right: -4.8611111111vw;
    }


    .flickity-prev-next-button {
        width: 3.0555555555555554vw !important;
        height: 3.0555555555555554vw !important;
    }
    .flickity-prev-next-button.previous {
        left: -3.4722222222222223vw !important;
    }

    .flickity-prev-next-button.next {
        right: -5.416666666666667vw !important;
    }


}

@media (max-width: 768px) {
    

    .section-product-page-button-container:after {
        height: 2.864583333333333vw;
        background-image: url(images/product_page/bg-button-tab-m.jpg);
        bottom: -1.5625vw;
        z-index: 2;
    }

    .section-product-page-image {
        width: 100%;
    }

    .section-product-page-button-container {
        text-align: unset;
    }
    .section-product-page-button-box {
        padding: 0;
    }
    .section-product-page-button-wrapper {
        position: relative;
        width: 33.33333333333333vw;
        height: 17.1875vw;
        border: 0;
        border-radius: 0;
        margin: 0;
        float: left;
        border-bottom: 2px solid #d9d9d9;
        text-align: center;
    }
    .section-product-page-button-wrapper:nth-of-type(4),
    .section-product-page-button-wrapper:nth-of-type(5) {
        width: 50%;
        border: unset;
    }
    .section-product-page-button-wrapper:after {
        content: '';
        position: absolute;
        right: 0;
        top: 50%;
        width: 0.26041666666666663vw;
        height: 13.020833333333334vw;
        background-image: url(images/product_page/rods-red.png);
        background-repeat: no-repeat;
        background-position: center center;
        background-size: 100% auto;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }
    .section-product-page-button-wrapper:nth-of-type(3):after,
    .section-product-page-button-wrapper:nth-of-type(5):after {
        content: unset;
    }

    .section-product-page-button-inner {
        top: 0;
    }
    .section-product-page-button-icon {
        height: 17.1875vw;
        padding-top: 1.6927083333333333vw;
    }
    .section-product-page-button-wrapper span {
        font-size: 3.90625vw;
        padding-right: 2.083333333333333vw;
    }   

    .section-product-page-container {
        background-size: 133.3333333333vw auto;
        border-bottom: 1px solid #f1f1f1;
    }


    .section-product-page-header-box {
        margin-top: 13.020833333333334vw;
    }
    .section-product-page-header-title {
        font-size: 10.677083333333332vw;
        padding: 0 5.208333333333334vw;
    }
    .section-product-page-header-des {
        font-size: 7.03125vw;
        margin-top: 1.0416666666666665vw;
        padding: 0 5.34375vw;
    }


    .section-product-page-box:hover {
        color: unset;
    }
    .section-product-page-box:hover img {
        transform: unset; 
    }


    .section-product-page-item.is-selected .section-product-page-box {
        color: #df2123;
    }
    .section-product-page-item.is-selected .section-product-page-box img {
        -ms-transform: scale(1.09);
        -webkit-transform: scale(1.09); 
        transform: scale(1.09); 
    }



    .section-product-page-box {
        width: 100%;
    }
    .section-product-page-container {
        background-image: url(images/product_page/bg-product-des-m.jpg);
        background-size: 100% auto;
        border-bottom: 1px solid #f1f1f1;
    }

    .section-product-page-slide-img {
        height: 55.598958333333336vw;
    }
    .section-product-page-slide {
        max-width: unset;
        margin: 1.3888888889vw auto 3.3333333333vw;
    }
    .section-product-page-item {
        width: 50%;
    }
    .section-product-page-slide-img.new-product:before {
        width: 11.197916666666668vw;
        height: 10.9375vw;
        top: 3.6458333333333335vw;
        left: 2.34375vw;
    }
    .section-product-page-slide-name {
        font-size: 6.510416666666667vw;
        margin: 4.666667vw 0 1.416667vw;
    }
    .section-product-page-slide-subname {
        font-size: 4.6875vw;
        padding: 0 2.111111vw;
        margin-bottom: 8.510417vw;
    }






    img.d {
        display: none;
    }
    img.m {
        display: block;
    }

}