/** Shopify CDN: Minification failed

Line 4411:126 Expected identifier but found bad string token
Line 4411:128 Unterminated string token

**/
/* 共通の設定 */
body{
    font-family: "Noto Sans JP", sans-serif;
}
.inner{
    max-width: 1400px;
    width: 100%;
    padding: 0 10px;
    margin: 0 auto;
}
*:focus-visible{
    outline: none !important;
}
a{
    transition: all .3s
}
a:hover{
    opacity: 0.7;
}
.sp{
    display: none !important;
}
@media screen and (max-width: 820px) {
    .pc{
        display: none !important;
    }
    .sp{
        display: block !important;
    }
    .inner{
        max-width: none;
        padding: 0 5.33333333333334vw;
    }
}


/* header
------------------------------ */
#header{
    display: flex;
    align-items: center;
    padding: 0 50px;
    margin: 0;
    max-width: none;
    width: 100%;
    height: 100px;
    color: #fff;
    background: #0052B7;
    transition: all .5s;
}
#header.solid-sticky{
    background: #fff !important;
    opacity: 1!important;
    transition: all .5s;
}
#header .header-wrapper{
    max-width: none;
    padding: 0;
    box-shadow: none;
    transition: all .5s;
}
#header.solid-sticky .header-wrapper{
    background: transparent !important;
    opacity: 1!important;
    transition: all .5s;
}
#header .header-wrapper .header-inner{
    padding: 0;
    margin: 0;
    width: 100% !important;
    transition: all .5s;
}
#header .h1 span{
    display: none;
}
#header .h1 .logo{
    position: relative;
    width: 230px;
    height: 50px;
    overflow: hidden;
}
#header .h1 .logo .logo-image{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: auto;
    transition: all .5s;
}
#header .h1 .logo .logo-default{
    opacity: 1;
}
#header .h1 .logo .logo-scroll{
    opacity: 0;
}
#header.solid-sticky .logo .logo-default{
    opacity: 0;
}
#header.solid-sticky .logo .logo-scroll{
    opacity: 1;
}
#header .header-navigation{
    display: flex;
    align-items: center;
    gap: 40px;
}
#header .header-navigation .menu-item{
    transition: all .3s;
}
#header .header-navigation .current-menu{
    position: relative;
}
#header .header-navigation .current-menu::before{
    content: "";
    position: absolute;
    top: calc(100% - -10px);
    left: 0;
    width: 260px;
    height: 40px;
    background: transparent;
    opacity: 0;
    z-index: -1;
}
#header .header-navigation .menu-item:hover{
    border-bottom: 1px solid #fff;
}
#header.solid-sticky .header-navigation .menu-item:hover{
    border-bottom: 1px solid #2a2f4e;
}
#header .header-navigation .menu-link{
    padding: 0 !important;
    transition: all .3s;
}
#header .header-navigation .menu-link:hover{
    opacity: 1;
}
#header .header-navigation .menu-link .menu-text{
    display: block;
    font-size: 17px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 500;
    letter-spacing: 0;
    color: #fff;
    transition: all .3s;
}
#header.solid-sticky .header-navigation .menu-link .menu-text{
    color: #2A2F4E;
}
#header .header-navigation .menu-link .menu-arrow,
#header .header-navigation .menu-link .menu-arrow svg{
    transition: all .3s;
    color: #fff;
    fill: #fff;
}
#header.solid-sticky .header-navigation .menu-link .menu-arrow,
#header.solid-sticky .header-navigation .menu-link .menu-arrow svg{
    color: #2A2F4E;
    fill: #2A2F4E;
}
#header .header-navigation .menu-item:hover .menu-link,
#header .header-navigation .menu-item:hover .menu-link .menu-text{
    text-decoration: none;
}
#header .header-navigation .sub-menu{
    top: calc(100% - -45px);
    width: 260px;
    background: #fff;
}
#header .header-navigation .sub-menu .menu-item{
    padding: 15px 30px;
}
#header .header-navigation .sub-menu .menu-item:nth-of-type(2){
    padding: 30px 30px 15px;
}
#header .header-navigation .sub-menu .menu-item:last-of-type{
    padding: 15px 30px 30px;
}
#header .header-navigation .sub-menu .menu-item:hover{
    opacity: 1;
    color: #0052B7;
    border: none;
}
#header .header-navigation .sub-menu .menu-item .menu-link{
    transition: all .3s;
}
#header .header-navigation .sub-menu .menu-item .menu-link span{
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0.06em;
    line-height: 1.4;
    color: #1A2C44;
}
#header .header-navigation .sub-menu .menu-item:hover .menu-link span{
    color: #0052B7;
}
#header .header-icons,
#header .header-icons .localization-form{
    gap: 25px;
    font-family: "Albert Sans", sans-serif;
}
#header .header-icons .dropdown-summary,
#header .header-icons .menu-text{
    font-size: 18px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 500;
    letter-spacing: 0;
    color: #fff;
    transition: all .3s;
}
#header.solid-sticky .header-icons .dropdown-summary,
#header.solid-sticky .header-icons .menu-text{
    color: #2A2F4E;
}
#header .header-icons .new-customer-accounts{
    position: relative;
    width: 25px;
    height: 25px;
    min-width: auto;
    overflow: hidden;
    transition: all .3s;
}
#header .header-icons .header-favorite,
#header .header-icons .country{
    display: none;
}
#header .header-icons svg path{
    fill: #fff;
    transition: all .3s;
}
#header.solid-sticky .header-icons svg path{
    fill: #2A2F4E;
}
#header.solid-sticky .header-icons .swym-header-icon-html .swym-advanced-header-icon,
#header.solid-sticky .header-icons .swym-header-icon-html svg path{
    color: #ff0000;
    fill: #ff0000;
}
#header .toggle-dropdown .dropdown-summary .country-flag{
    display: none;
}
#header .toggle-dropdown .dropdown-content {
    top: calc(100% - -45px);
}
#header .action-cart .item-count {
    font-family: "Heebo", sans-serif;
}
#header .quick-search{
    transform: translateY(calc(100% + 15px));
}

@media only screen and (max-width: 1400px) {
    #header{
        padding: 0 30px;
        height: 100px;
    }
    #header .header-nav{
        flex: none;
    }
    #header .header-navigation{
        gap: 25px;
    }
    #header .header-icons{
        gap: 15px;
        flex: none;
    }
    #header .header-icons .localization-form {
        gap: 15px;
    }
}
@media only screen and (max-width: 768px) {
    #header{
        padding: 0 5.333333333334vw;
        height: 16vw;
    }
    #header .header-wrapper .header-inner{
        justify-content: flex-start;
        gap: 0;
    }
    #header .header-nav .toggle-panel-button{
        width: 4.2666666666666666667vw;
        height: 4.2666666666666666667vw;
    }
    #header .header-nav .toggle-panel-button svg path{
        stroke: #fff;
        transition: all .3s;
    }
    #header.solid-sticky .header-nav .toggle-panel-button svg path{
        stroke: #2A2F4E;
    }
    #header .h1 .logo{
        width: 33.3333333333vw;
        height: 7.1999999999999vw;
        margin-left: 5.333333333334vw;
    }
    #header .header-icons{
        flex: 1;
        gap: 5.33333333334vw;
    }
    #header .header-icons .action-search{
        min-width: 5.3333333333333334vw;
        height: 5.3333333333333334vw;
    }
    #header .header-icons .action-search svg{
        width: 5.3333333333333334vw;
        height: 5.3333333333333334vw;
        stroke: #fff;
        color: #fff;
        transition: all .3s;
    }
    #header.solid-sticky .header-icons .action-search svg{
        stroke: #2A2F4E;
        color: #2A2F4E;
    }
    #header .header-icons .dropdown-summary,
    #header .header-icons .menu-text{
        font-size: 3.2vw;
        line-height: 1.33;
        padding-top: 3px;
        color: #fff;
    }
    #header .action-cart{
        height: 8vw;
    }
    #header .action-cart .item-count {
        font-size: 3.73333333333334vw;
        letter-spacing: 0;
        width: 6.66666666666667vw;
        height: 6.66666666666667vw;
        padding: 0;
        margin-left: 2.66666666667vw;
    }
    #header.solid-sticky .header-icons .dropdown-summary,
    #header.solid-sticky .header-icons .menu-text{
        color: #2A2F4E;
    }
    #header .site-panel-inner{
        background: #0052B7 !important;
    }
    #header .site-panel-inner .site-branding-wrap{
        color: #fff;
        padding: 5.33333333334vw;
    }
    #header .site-panel-inner .site-branding-wrap img{
        max-width: 33.333333333vw;
        width: 100%;
        margin: 0 auto;
    }
    #header .site-panel-inner .site-panel-close{
        padding: 0;
        color: #fff;
        background-color: transparent;
    }
    #header .site-panel-inner .site-panel-close svg{
        width: 6.6666666666666667vw;
        height: 6.6666666666666667vw;
    }
    #header .site-panel-inner .toggle-navigation a{
        padding: 5.33333333334vw 4vw;
        color: #fff;
    }
    #header .site-panel-inner .toggle-navigation .sub-menu{
        background: #0052B7;
    }
    #header .site-panel-inner .toggle-navigation .sub-menu .back{
        font-size: 4vw;
        font-weight: 500;
        color: #fff;
        padding: 5.33333333334vw 4vw;
    }
    #header .site-panel-inner .panel-footer{
        background-color: #2A2F4E;
        padding: 6.66666666666666667vw 5.333333333333334vw;
    }
    #header .site-panel-inner .panel-footer .social-media-list{
        display: none;
    }
    #header .site-panel-inner .panel-footer .action-account,
    #header .site-panel-inner .panel-footer .action-account span{
        color: #fff;
    }
    #header .site-panel-inner .panel-footer .action-account{
        margin: 0 0 4vw;
    }
    #header .site-panel-inner .panel-footer .action-account svg{
        width: 6.666666666666667vw;
        height: 6.666666666666667vw;
        margin-right: 4vw;
    }
    #header .site-panel-inner .panel-footer .action-account span{
        display: block;
        font-size: 15px;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        letter-spacing: 0.06em;
        color: #fff;
    }
    #header .site-panel-inner .panel-footer .localization-form{
        gap: 8vw;
    }
    #header .site-panel-inner .panel-footer .localization-form .dropdown-summary{
        color: #fff;
        background: transparent;
    }

    #header .quick-search{
        display: flex;
        align-items: center;
        gap: 4vw;
        width: auto;
        max-width: none;
        background-color: rgb(var(--background-color));
        transform: translateY(calc(100% + 2.6666667vw));
        left: 0;
        right: 0;
        padding: 4vw;
        margin: 0 -5.3333334vw;
    }
    #header .quick-search .quick-search-container{
        padding: 0;
    }
    #header .quick-search .form-wrapper .search-input{
        padding: 2.666666666666667vw 4vw;
        width: 80vw;
    }
    #header .quick-search .close-button{
        width: 8vw;
        height: 8vw;
        position: relative;
        top: auto;
        right: auto;
        left: auto;
        bottom: auto;
    }
}


/* footer
------------------------------ */
#common-cta{
    padding: 70px 0 65px;
    color: #fff;
    background-color: #152234;
}
#common-cta .cta-flex{
    display: flex;
    align-items: center;
}
#common-cta .cta-flex .item{
    flex: 1;
}
#common-cta .cta-flex .left-item h2{
    font-size: 40px;
    font-family: "Albert Sans", sans-serif;
    font-weight: bold;
    letter-spacing: 0.04em;
    line-height: 1.5;
    margin: 0 0 25px;
    color: #fff;
}
#common-cta .cta-flex .left-item .note{
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0.06em;
    line-height: 1.73;
    margin: 0;
}
#common-cta .cta-flex .mid-item{
    position: relative;
}
#common-cta .cta-flex .mid-item::before,
#common-cta .cta-flex .mid-item::after{
    content: "";
    width: 1px;
    height: 160px;
    background-color: #323F50;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
#common-cta .cta-flex .mid-item::before{
    left: 0;
}
#common-cta .cta-flex .mid-item::after{
    right: 0;
}
#common-cta .cta-flex .mid-item .tel{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 38px;
    font-family: "Heebo", sans-serif;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.47;
    margin: 0 auto -7px;
    color: #fff;
}
#common-cta .cta-flex .mid-item .tel .icon{
    content: "";
    width: 22px;
    height: 22px;
    transform: rotate(12deg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
#common-cta .cta-flex .mid-item .info-note{
    display: block;
    font-size: 12px;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.08em;
    margin: 0;
    color: #fff;
}
#common-cta .cta-flex .item .sub_ttl{
    display: block;
    font-size: 18px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.04em;
    margin: 0 auto 20px;
    color: #fff;
}
#common-cta .cta-flex .right-item .contact-btn a{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 600;
    text-align: center;
    letter-spacing: 0.04em;
    max-width: 270px;
    width: 100%;
    height: 60px;
    margin: 0 auto;
    color: #1A2C44;
    background-color: #fff;
    border-radius: 100vw;
    transition: all .3s;
}
#common-cta .cta-flex .right-item .contact-btn a:hover{
    opacity: 1;
    color: #fff;
    background-color: #1A2C44;
}
#common-cta .cta-flex .right-item .contact-btn a span img{
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    max-width: 12px;
    transition: all .3s;
}
#common-cta .cta-flex .right-item .contact-btn a span .hover{
    opacity: 0;
}
#common-cta .cta-flex .right-item .contact-btn a:hover span .default{
    opacity: 0;
}
#common-cta .cta-flex .right-item .contact-btn a:hover span .hover{
    opacity: 1;
}
@media only screen and (max-width: 768px) {
    #common-cta{
        padding: 13.33333333335vw 0 20vw;
    }
    #common-cta .cta-flex{
        display: block;
    }
    #common-cta .cta-flex .item{
        padding: 0 0 10vw;
        margin: 0 0 10vw;
        color: #fff !important;
        border-bottom: 1px solid #253852;
    }
    #common-cta .cta-flex .item:last-of-type{
        padding: 0;
        margin: 0;
        border-bottom: none;
    }
    #common-cta .cta-flex .left-item h2{
        font-size: 10vw;
        text-align: center;
        line-height: 1.58;
        margin: 0 0 6.6666666666667vw;
    }
    #common-cta .cta-flex .left-item .note{
        font-size: 4vw;
        text-align: center;
        line-height: 1.73;
    }
    #common-cta .cta-flex .mid-item::before,
    #common-cta .cta-flex .mid-item::after{
        display: none;
    }
    #common-cta .cta-flex .mid-item .tel{
        gap: 1.33333333333335vw;
        font-size: 8vw;
        text-align: center;
        line-height: 1.47;
        margin: 0 auto -0.5333333333vw;
        color: #fff !important;
    }
    #common-cta .cta-flex .mid-item .tel .icon{
        width: 5.333333333333334vw;
        height: 5.333333333333334vw;
        color: #fff !important;
    }
    #common-cta .cta-flex .mid-item .info-note{
        font-size: 3.2vw;
    }
    #common-cta .cta-flex .item .sub_ttl{
        font-size: 4vw;
        font-weight: 600;
        text-align: center;
        letter-spacing: 0.04em;
        margin: 0 auto 5.333333333334vw;
    }
    #common-cta .cta-flex .right-item .contact-btn a{
        font-size: 4vw;
        font-weight: 600;
        text-align: center;
        letter-spacing: 0.04em;
        max-width: 80vw;
        height: 13.333333333333335vw;
    }
}


.footer{
    padding: 95px 0 30px;
    background-color: #1A2C44;
}
.footer .ft-top{
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 0 75px;
}
.footer .ft-top .left-ctt{
    display: flex;
    align-items: center;
    gap: 110px;
}
.footer .ft-top .left-ctt .logo img{
    display: block;
    width: 340px;
    max-width: none;
    height: auto;
}
.footer .ft-top .left-ctt .note{
    display: block;
    width: 100%;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.06em;
    line-height: 1.64;
    margin: 0;
    color: #fff;
}
.footer .ft-top .right-ctt{
    display: flex;
    justify-content: right;
    align-items: center;
    gap: 50px;
    margin-right: 50px;
}
.footer .ft-top .right-ctt .sns-ttl{
    font-size: 18px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 600;
    letter-spacing: 0.04em;
    color: #fff;
    margin: 0;
}
.footer .ft-top .right-ctt .icon-area{
    display: flex;
    align-items: center;
    gap: 10px;
}
.footer .ft-top .right-ctt .icon-area .icon{
    display: block;
    max-width: 45px;
    width: 100%;
    height: auto;
}
.footer .ft-top .right-ctt .icon-area .icon img{
    display: block;
    width: 100%;
    height: auto;
}
.footer .ft-bottom{
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 30px;
    margin: 0 0 65px;
}
.footer .ft-bottom .menu-list{
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    width: 700px;
    gap: 20px;
}
.footer .ft-bottom .menu-list .footer-column{
    display: block;
}
.footer .ft-bottom .menu-list .footer-column .footer-title{
    font-size: 20px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.35;
    color: #fff;
    margin: 0 0 30px;
}
.footer .ft-bottom .menu-list .footer-column ul li a{
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.06em;
    line-height: 2.29;
    color: #fff;
}
.footer .ft-bottom .newsletter{
    flex-shrink: 0;
    display: block;
    max-width: 550px;
    width: 100%;
    margin-right: 20px;
}
.footer .ft-bottom .newsletter .footer-title{
    font-size: 20px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.35;
    color: #fff;
    margin: 0 0 30px;
}
.footer .ft-bottom .newsletter .note{
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.06em;
    line-height: 1.79;
    color: #fff;
    margin: 0 0 20px;
}
.footer .ft-bottom .newsletter .field-input{
    color: #2E2E2E;
    background-color: #fff;
    border: 1px solid #707070;
}
.footer .ft-block-newsletter [type=submit]{
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    letter-spacing: 0.1em;
    color: #fff;
    background-color: #1951B6;
    border: 1px solid #1951B6;
    width: 200px;
    height: 55px;
    padding: 0;
    margin: 0;
}
.footer .ft-block-newsletter [type=submit]:hover{
    color: #1951B6;
}
.footer .ft-bar{
    border: none;
}
.footer .ft-bar .container{
    padding: 0;
    max-width: none;
}
.footer .ft-bar .container .ft-bar-inner{
    padding: 0 0 30px;
    color: #fff;
}
.footer .ft-bar-inner .localization-form .dropdown-summary{
    color: #fff;
}
.footer .country,
#shopify-pc__banner{
    display: none !important;
}
@media only screen and (max-width: 768px) {
    .footer{
        padding: 8vw 0 13.33333333335vw;
    }
    .footer .ft-top{
        display: block;
        margin: 0 0 21.333333333336vw;
    }
    .footer .ft-top .left-ctt{
        display: block;
        margin: 0 auto 7.11111111113vw;
    }
    .footer .ft-top .left-ctt .logo img{
        width: 64vw;
        margin: 0 auto 8vw;
    }
    .footer .ft-top .left-ctt .note{
        font-size: 3.733333333334vw;
        letter-spacing: 0.06em;
        text-align: center;
        line-height: 1.64;
        margin: 0;
    }
    .footer .ft-top .right-ctt{
        display: block;
        margin: 0 auto;
    }
    .footer .ft-top .right-ctt .sns-ttl{
        font-size: 4.8vw;
        text-align: center;
        margin: 0 auto 5.3333333333334vw;
    }
    .footer .ft-top .right-ctt .icon-area{
        justify-content: center;
        gap: 2.66666666667vw;
    }
    .footer .ft-top .right-ctt .icon-area .icon{
        max-width: 12vw;
    }
    .footer .ft-bottom{
        display: block;
        margin: 0 0 13.333333333335vw;
    }
    .footer .ft-bottom .menu-list{
        display: block;
        width: 100%;
        margin: 0 auto 12vw;
    }
    .footer .ft-bottom .menu-list .footer-column{
        display: block;
        padding: 0 0 5.333333333334vw;
        margin: 0 0 5.333333334vw;
        border-bottom: 1px solid #273C5C;
    }
    .footer .ft-bottom .menu-list .footer-column:last-of-type{
        margin: 0;
    }
    .footer .ft-bottom .menu-list .footer-column .footer-title{
        position: relative;
        font-size: 4.8vw;
        letter-spacing: 0.06em;
        line-height: 1.35;
        color: #fff;
        margin: 0;
        transition: all .3s;
        cursor: pointer;
    }
    .footer .ft-bottom .menu-list .footer-column .footer-title::after{
        position: absolute;
        top: 35%;
        right: 2.4vw;
        content: "";
        display: inline-block;
        width: 2.66666666666667vw;
        height: 2.66666666666667vw;
        border-right: 2px solid #fff;
        border-bottom: 2px solid #fff;
        transform: rotate(45deg) translateY(-50%);
        transition: all .3s;
    }
    .footer .ft-bottom .menu-list .footer-column .footer-title.is-open::after{
        top: 30%;
        right: 0;
        transform: rotate(-135deg) translateY(-50%);
    }
    .footer .ft-bottom .menu-list .footer-column ul{
        max-height: 0;
        overflow: hidden;
        transition: all .3s;
    }
    .footer .ft-bottom .menu-list .footer-column ul.is-open{
        padding: 6.666666666667vw 0 2.66666666666667vw;
        max-height: 300px;
    }
    .footer .ft-bottom .menu-list .footer-column ul li a{
        display: block;
        font-size: 3.73333333333334vw;
        line-height: 1;
        margin: 0 0 4.266667vw;
    }
    .footer .ft-bottom .menu-list .footer-column ul li:last-child a{
        margin: 0;
    }
    .footer .ft-bottom .newsletter{
        display: block;
        max-width: none;
        margin: 0;
    }
    .footer .ft-bottom .newsletter .footer-title{
        font-size: 4.8vw;
        letter-spacing: 0.06em;
        text-align: center;
        line-height: 1.35;
        margin: 0 auto 6.4vw;
    }
    .footer .ft-bottom .newsletter .note{
        font-size: 3.733333333333334vw;
        line-height: 1.79;
        margin: 0 0 6.4vw;
    }
    .footer .ft-bottom .newsletter .field-input{
        padding: 0 4.266666666667vw;
        margin: 0 0 2.66666667vw;
        height: 13.33333333333335vw;
    }
    .footer .ft-block-newsletter [type=submit]{
        font-size: 4vw;
        letter-spacing: 0.1em;
        width: 100%;
        height: 13.33333333333335vw;
    }
    .footer .ft-bar .container .ft-bar-inner{
        padding: 0 0 30px;
        color: #fff;
    }
}


/* top
------------------------------ */
/* 共通パーツ */
.ttl_area{
    margin: 0 auto 50px;
    color: #0052B7;
}
.ttl_area p{
    font-size: 18px;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.06em;
    line-height: 1.39;
    margin: 0 0 16px;
    color: #0052B7;
}
.ttl_area h2{
    font-size: 55px;
    font-family: "Albert Sans", sans-serif;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.02em;
    margin: 0;
    color: #0052B7;
}
@media only screen and (max-width: 768px) {
    .ttl_area{
        margin: 0 auto 8vw;
    }
    .ttl_area p{
        font-size: 3.7333333333334vw;
        margin: 0 0 0.8vw;
    }
    .ttl_area h2{
        font-size: 10.1333333333333vw;
    }
}

.product-card .product-image{
    background-color: #fff;
}
.product-card .product-image img{
    padding: 20px;
}
.product-card .product-card-content{
    padding: 0;
    margin: 15px 0 0;
}
.product-card .product-card-content .product-vendor{
    margin: 0 0 15px;
}
.product-card .product-card-content .product-vendor .product-vendor-link{
    display: inline-flex;
    align-items: center;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0;
    padding: 5px 10px 4px;
    border: 1px solid #2A2F4E;
    border-radius: 100vw;
    color: #2A2F4E;
    background-color: #fff;
    opacity: 1;
    transition: all .3s;
}
.product-card .product-card-content .product-vendor .product-vendor-link:hover{
    opacity: 0.7;
    text-decoration: none;
}
.product-card .product-card-content .title-and-price{
    display: block;
    margin: 0;
}
.product-card .product-card-content .product-title{
    display: block;
    padding: 0;
    margin: 0 0 14px;
}
.product-card .product-card-content .product-title a{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.69;
    min-height: 42px;
    color: #000000;
    transition: all .3s;
}
.product-card .product-card-content .product-title a:hover{
    opacity: 1;
    text-decoration: underline;
    text-decoration-color: #000;
    text-decoration-thickness: 1px;
}
.product-card .product-card-content .title-and-price .price-item{
    font-size: 18px;
    font-weight: 600;
    text-align: left;
    letter-spacing: 0;
    color: #000000;
    margin: 0;
}
@media only screen and (max-width: 768px) {
    .product-card .product-image img{
        padding: 4.8vw;
    }
    .product-card .product-card-content{
        margin: 4vw 0 0;
    }
    .product-card .product-card-content .product-vendor{
        margin: 0 0 2.666666666667vw;
    }
    .product-card .product-card-content .product-vendor .product-vendor-link{
        display: -webkit-inline-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 1;
        overflow: hidden;
        text-overflow: ellipsis;
        font-size: 2.6666667vw;
        padding: 0.5333333333333vw 2.6666667vw;
        height: auto;
    }
    .product-card .product-card-content .product-title{
        margin: 0 0 2.666666666666667vw;
    }
    .product-card .product-card-content .product-title a{
        -webkit-line-clamp: 3;
        font-size: 3.46666666666663vw;
        line-height: 1.62;
        min-height: auto;
        max-height: 16.266667vw;
    }
    .product-card .product-card-content .title-and-price .price-item{
        font-size: 4.5333333333vw;
    }
}

/* mv */
#top_mv{
    position: relative;
    overflow: hidden;
}
#top_mv::after{
    background-color: rgba(0, 82, 183, 0.3);
}
#top_mv .container{
    padding: 0;
    margin: 0 auto;
    max-width: none;
    width: 100%;
}
#top_mv .mv-txt_info{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 145px 0 0;
    z-index: 2;
}
#top_mv .mv-txt_info .note{
    position: relative;
    display: flex;
    align-items: center;
    padding: 10px 5px 15px 17px;
    margin: 100px 0 0;
    border-radius: 5px;
    font-size: 28px;
    font-weight: bold;
    letter-spacing: 0;
    line-height: 1.5;
    color: #0052B7;
    background-color: #fff;
    border: 1px solid #707070;
}
#top_mv .mv-txt_info .note::after {
    content: "";
    position: absolute;
    bottom: -5px;
    left: 48%;
    transform: translate(-50%) rotate(135deg);
    width: 0;
    height: 0;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 30px solid #fff;
}
#top_mv .mv-txt_info .mv_img{
    position: relative;
    max-width: 470px;
    width: 100%;
    margin-right: -40px;
}
#top_mv .mv-txt_info .mv_img>img{
    display: block;
    width: 100%;
}
#top_mv .mv-txt_info .mv_img .rotate{
    position: absolute;
    top: -20px;
    right: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 118px;
    height: 118px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    animation: rotateLoop 20s linear infinite;
    transform-origin: center center;
}
#top_mv .mv-txt_info .mv_img .rotate span{
    content: "";
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0);
    backdrop-filter: blur(10px) brightness(1.15);
    -webkit-backdrop-filter: blur(10px) brightness(1.15);
}
@keyframes rotateLoop {
  0%   { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
#top_mv .text-slider {
    position: absolute;
    bottom: 20px;
    left: 0;
    right: 0;
    overflow: hidden;
    z-index: 1;
    white-space: nowrap;
    width: 100%;
}
#top_mv .text-slider .slide-track {
    display: inline-block;
    animation: slide 70s linear infinite;
}
#top_mv .text-slider .slide-track span {
    display: inline-block;
    font-size: 200px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.2;
    color: #fff;
}
@keyframes slide {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}
#top_mv .image-with-text-overlay{
    height: 750px !important;
    margin: 100px 0 0;
    background-color: #0052B7; 
}
#top_mv .image-with-text-overlay .two-columns{
    left: 0;
    right: 0;
    padding: 0 40px;
}
#top_mv .image-with-text-overlay .two-columns .collage-image-wrapper img{
    filter: grayscale(100%) sepia(100%) hue-rotate(190deg) saturate(500%);
    opacity: 0.8;
    border-radius: 5px;
}


@media only screen and (max-width: 768px) {
    #top_mv .mv-txt_info{
        flex-direction: column-reverse;
        justify-content: center;
        gap: 0;
        padding: 21.333333333333336vw 0 0;
    }
    #top_mv .mv-txt_info .note{
        padding: 1.66666668vw 0.8vw 2.1333333333335vw 2.666666666666667vw;
        margin: -1.06666666666667vw auto;
        border-radius: 1.066666666666667vw;
        font-size: 4.533333333333333vw;
    }
    :lang(en) #top_mv .mv-txt_info .note{
        font-size: 4vw;
    }
    #top_mv .mv-txt_info .note::after {
        bottom: -1.3333333333335vw;
        left: 48%;
        border-left: 5.33333333333334vw solid transparent;
        border-right: 5.33333333333334vw solid transparent;
        border-top: 5.33333333333334vw solid #fff;
    }
    #top_mv .mv-txt_info .mv_img{
        max-width: 60vw;
        margin: 0 auto;
    }
    #top_mv .mv-txt_info .mv_img .rotate{
        position: absolute;
        top: 0;
        right: 0;
        width: 17.06666666vw;
        height: 17.06666666vw;
    }
    #top_mv .mv-txt_info .mv_img .rotate span{
        width: 10.133333333333vw;
        height: 10.133333333333vw;
    }
    #top_mv .text-slider {
        bottom: 2.6666666666667vw;
    }
    #top_mv .text-slider .slide-track {
        animation: slide 70s linear infinite;
    }
    #top_mv .text-slider .slide-track span {
        font-size: 21.33333333333336vw;
        line-height: 1.2;
    }
    #top_mv .image-with-text-overlay{
        height: 128vw !important;
        margin: 0;
    }
    #top_mv .image-with-text-overlay .two-columns{
        left: 0;
        right: 0;
        padding: 0;
        gap: 1.33333333335vw;
    }
    #top_mv .image-with-text-overlay .two-columns .marquee{
        height: 122.6666666666666vw !important;
        width: 62.66666666666667vw !important;
    }
    #top_mv .image-with-text-overlay .two-columns .marquee.three-columns{
        width: 28.000000000000004vw !important;
    }
    #shopify-section-template--26138079068471__animated_image_collage_DXfdF8 .marquee-content{
        margin: 0.8vw 0 !important;
    }
}

/* custom-slider */
#top_custom-slider{
    padding: 120px 0 60px;
    background-color: #F4F6F9;
}
#top_custom-slider .swiper-slide{
    display: block;
    max-width: 450px;
    width: 100%;
}
#top_custom-slider .swiper-pagination{
    position: relative;
    top: auto;
    bottom: auto;
    margin: 18px auto 0;
    gap: 18px;
}
#top_custom-slider .swiper-pagination .swiper-pagination-bullet{
    margin: 0;
}
#top_custom-slider .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{
    background-color: #0052B7;
}
@media only screen and (max-width: 768px) {
    #top_custom-slider{
        padding: 16vw 0 10.666666666668vw;
    }
    #top_custom-slider .inner{
        padding: 0;
    }
    #top_custom-slider .swiper-slide{
        max-width: 66.66666666666vw;
    }
    #top_custom-slider .swiper-pagination{
        margin: 4vw auto 0;
        gap: 2.1333333333336vw;
    }
}

/* pickup item */
#pickup-item{
    padding: 70px 0 160px !important;
    background-color: #F4F6F9;
}
#pickup-item .tabs .tabs-head-desktop{
    display: flex;
    align-items: center;
    gap: 45px;
}
#pickup-item .tabs .tabs-head-desktop .tab-head{
    font-size: 18px;
    font-weight: 500;
    font-family: "Albert Sans", sans-serif;
    letter-spacing: 0.02em;
    color: #2A2F4E;
}
#pickup-item .tabs .tabs-head-desktop .tab-head.active{
    color: #0052B7;
    text-decoration: none;
    padding: 0 3px 3px;
    border-bottom: 1px solid #0052B7;
}
#pickup-item .tabs .tabs-content.carousel-swiper{
    overflow: hidden;
}
#pickup-item .tabs .tabs-content .tab-content{
    margin: 50px 0 0;
}
#pickup-item .tabs .tabs-content .tab-content .swiper-controls{
    position: relative;
    display: flex;
    align-items :center;
    justify-content: center;
    gap: 20px;
    margin: 50px auto 0;
}
#pickup-item .tabs .tabs-content .tab-content .swiper-controls .swiper-button-prev,
#pickup-item .tabs .tabs-content .tab-content .swiper-controls .swiper-button-next{
    position: relative;
    left: auto;
    right: auto;
    margin: 0;
    background-color: transparent;
    width: 15px;
    height: auto;
}
#pickup-item .tabs .tabs-content .tab-content .swiper-pagination{
    position: relative;
    top: auto;
    bottom: auto;
    width: auto;
    gap: 10px;
}
#pickup-item .tabs .tabs-content .tab-content .swiper-pagination .swiper-pagination-bullet{
    margin: 0;
}
#pickup-item .tabs .tabs-content .tab-content .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{
    background-color: #0052B7;
}
@media only screen and (max-width: 768px) {
    #pickup-item{
        padding: 0 0 16vw !important;
    }
    #pickup-item .tabs .tabs-head-desktop{
        display: none;
    }
    #pickup-item .tabs .tabs-head-mobile .dropdown-summary{
        gap: 4.5333333333333vw;
        align-items: center;
        transition: all .3s;
    }
    #pickup-item .tabs .tabs-head-mobile .dropdown-summary:hover{
        border-bottom: 1px solid #0052B7;
    }
    #pickup-item .tabs .tabs-head-mobile .dropdown-summary .summary-info{
        font-size: 4.8vw;
        font-family: "Albert Sans", sans-serif;
        font-weight: 500;
        letter-spacing: 0.02em;
        color: #0052B7;
    }
    #pickup-item .tabs .tabs-head-mobile .dropdown-summary svg{
        margin: 0;
        min-width: 2.133333333333336vw;
        height: 3.733333333333334vw;
    }
    #pickup-item .tabs .tabs-head-mobile .dropdown-summary svg path{
        fill: #0052B7;
    }
    #pickup-item .product-card .product-image img {
        padding: 4vw;
    }
    #pickup-item .tabs .tabs-content .tab-content{
        margin: 8vw 0 0;
    }
    #pickup-item .tabs .tabs-content .tab-content .swiper-controls{
        gap: 4vw;
        margin: 10.66666666668vw auto 0;
    }
    #pickup-item .tabs .tabs-content .tab-content .swiper-controls .swiper-button-prev,
    #pickup-item .tabs .tabs-content .tab-content .swiper-controls .swiper-button-next{
        width: 3.2vw;
    }
    #pickup-item .tabs .tabs-content .tab-content .swiper-pagination{
        gap: 2.666666666666667vw;
    }
}


/* liquor-type */
#liquortype{
    padding: 120px 0 105px;
    background-color: #EAEDF4;
}
#liquortype .liquor-grid{
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    gap: 20px;
    margin: 0 0 70px;
}
#liquortype .liquor-grid .liquor-item{
    display: flex;
    align-items: center;
    gap: 15px;
    max-width: 330px;
    width: 100%;
    padding: 15px;
    margin: 0;
    color: #fff;
    background-color: #0052B7;
    border-radius: 5px;
    transition: all .3s;
}
#liquortype .liquor-grid .liquor-item .img{
    flex-shrink: 0;
}
#liquortype .liquor-grid .liquor-item .img img{
    display: block;
    max-width: 90px;
    width: 100%;
}
#liquortype .liquor-grid .liquor-item .txt{
    flex: 1;
}
#liquortype .liquor-grid .liquor-item .txt .en{
    font-size: 14px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 600;
    letter-spacing: 0.02em;
    line-height: 1.43;
    margin: 5px 0;
    color: #fff;
}
:lang(en) #liquortype .liquor-grid .liquor-item .txt .en{
    display: none;
}
#liquortype .liquor-grid .liquor-item .txt .jp{
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.5;
    color: #fff;
    margin: 0;
}
#liquortype .liquor-grid .liquor-item:hover{
    opacity: 1;
    background-color: #2A2F4E;
}
#liquortype .pickup-brand .sub_ttl{
    font-size: 30px;
    font-family: "Albert Sans", sans-serif;
    font-weight: bold;
    letter-spacing: 0.04em;
    line-height: 1.33;
    text-align: center;
    margin: 0 auto 32px;
    color: #0052B7;
}
#liquortype .pickup-brand .brand-grid{
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    gap: 1px;
}
#liquortype .pickup-brand .brand-grid .brand-item{
    display: block;
    max-width: 275px;
    width: 100%;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.02em;
    text-align: center;
    line-height: 1.43;
    padding: 20px;
    margin: 0;
    color: #2A2F4E;
    background-color: #fff;
    transition: all .3s;
}
#liquortype .pickup-brand .brand-grid .brand-item:hover{
    opacity: 1;
    background-color: #2A2F4E;
    color: #fff;
}
@media only screen and (max-width: 768px) {
    #liquortype{
        padding: 16vw 0 17.333333333333336vw;
    }
    #liquortype .liquor-grid{
        justify-content: center;
        gap: 1.33333333333333335vw;
        margin: 0 0 5.3333333333333333334vw;
    }
    #liquortype .liquor-grid .liquor-item{
        gap: 2.66666666666666667vw;
        max-width: 44vw;
        padding: 1.33333333333335vw;
    }
    #liquortype .liquor-grid .liquor-item .img img{
        max-width: 13.33333333333335vw;
    }
    #liquortype .liquor-grid .liquor-item .txt .en{
        font-size: 2.1333333333333333336vw;
        line-height: 1.1;
        margin: 1.33333333333333335vw 0;
    }
    #liquortype .liquor-grid .liquor-item .txt .jp{
        font-size: 2.9333333333333333vw;
    }
    #liquortype .pickup-brand .sub_ttl{
        font-size: 5.3333333333333334vw;
        margin: 0 auto 4vw;
    }
    #liquortype .pickup-brand .brand-grid{
        gap: 1.3333333333333335vw;
    }
    #liquortype .pickup-brand .brand-grid .brand-item{
        max-width: 44vw;
        font-size: 2.66666666666666667vw;
        padding: 3.2vw;
    }
}

/* new arrival */
#new-arrival {
    padding: 110px 0 100px !important;
    background-color: #F4F6F9;
}
#new-arrival .view-all{
    margin: 50px auto 0;
}
#new-arrival .view-all .primary-button{
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 600;
    letter-spacing: 0.02em;
    padding: 15px 0;
    margin: 0 auto;
    max-width: 400px;
    width: 100%;
    border: 1px solid #2A2F4E;
    color: #2A2F4E;
    background-color: #fff;
    transition: all .3s;
}
#new-arrival .view-all .primary-button::before{
    display: none;
}
#new-arrival .view-all .primary-button:hover{
    opacity: 1;
    color: #fff !important;
    background-color: #2A2F4E !important;
}
@media only screen and (max-width: 768px) {
    #new-arrival {
        padding: 13.333333333335vw 0 !important;
    }
    #new-arrival .view-all{
        margin: 10.666666666666668vw auto 0;
    }
    #new-arrival .view-all .primary-button{
        font-size: 3.2vw;
        padding: 4vw 0;
        max-width: 74.66666666666667vw;
        width: 100%;
    }
}


/* NEWS/TOPICS */
#news-topicks .ttl_area{
    position: relative;
    padding: 135px 0;
    clip-path: inset(0);
}
#news-topicks .ttl_area p,
#news-topicks .ttl_area h2{
    color: #fff;
    position: relative;
    z-index: 2;
}
#news-topicks .ttl_area .bg{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1;
}
#news-topicks .blog-ctt{
    padding: 100px 0;
    background-color: #EAEDF4;
}
#news-topicks .blog-ctt .blog-list .swiper-wrapper{
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 20px;
    margin: 0 0 60px;
}
#news-topicks .blog-ctt .blog-list .item{
    display: block;
    max-width: 320px;
    width: 100%;
    padding: 20px 20px 45px;
    border: 1px solid #1A2C44;
    border-radius: 5px;
    background-color: #fff;
}
#news-topicks .blog-ctt .blog-list .item .img{
    position: relative;
    width: 280px;
    height: 180px;
    overflow: hidden;
    margin: 0 0 20px;
}
#news-topicks .blog-ctt .blog-list .item .img img{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: auto;
    transition: all .3s;
}
#news-topicks .blog-ctt .blog-list .item .blog-ttl{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.08em;
    line-height: 1.71;
    color: #2A2F4E;
    min-height: 45px;
    max-height: 45px;
    margin: 0 0 20px;
}
#news-topicks .blog-ctt .blog-list .item .blog-info{
    display: flex;
    align-items: center;
    gap: 25px;
    font-family: "Albert Sans", sans-serif;
}
#news-topicks .blog-ctt .blog-list .item .blog-info .date,
#news-topicks .blog-ctt .blog-list .item .blog-info .cat{
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 0.08em;
    line-height: 1.31;
    margin: 0;
    color: #2A2F4E;
}
#news-topicks .blog-ctt .blog-list .item:hover{
    opacity: 1;
}
#news-topicks .blog-ctt .blog-list .item:hover .img img{
    transform: scale(1.1);
}
#news-topicks .blog-ctt .view-all a{
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 600;
    letter-spacing: 0.02em;
    padding: 15px 0;
    margin: 0 auto;
    max-width: 400px;
    width: 100%;
    border: 1px solid #2A2F4E;
    color: #2a2f4e;
    background-color: #fff;
    transition: all .3s;
}
#news-topicks .blog-ctt .view-all a:hover{
    opacity: 1;
    color: #fff;
    background-color: #2a2f4e;
}
@media only screen and (max-width: 768px) {
    #news-topicks .ttl_area{
        padding: 20vw 0;
        margin: 0;
    }
    #news-topicks .ttl_area .bg{
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        width: 100%;
        height: 60vw;
        z-index: -1;
    }
    #news-topicks .blog-ctt{
        padding: 16vw 0;
    }
    #news-topicks .blog-ctt .inner{
        padding: 0;
    }
    #news-topicks .blog-ctt .blog-list .swiper-wrapper{
        display: flex;
        gap: 0;
        margin: 0 0 13.3333333333335vw;
    }
    #news-topicks .blog-ctt .blog-list .item{
        max-width: 65.333333vw;
        padding: 4vw 4vw 8vw;
    }
    #news-topicks .blog-ctt .blog-list .item .img{
        width: 57.333333333333336vw;
        height: 37.333333333333336vw;
        margin: 0 0 3.73333333334vw;
    }
    #news-topicks .blog-ctt .blog-list .item .blog-ttl{
        -webkit-line-clamp: 3;
        font-size: 3.46666666666666663vw;
        line-height: 1.77;
        min-height: 17.333333333333336vw;
        max-height: 17.333333333333336vw;
        margin: 0 0 3.73333333333334vw;
    }
    #news-topicks .blog-ctt .blog-list .item .blog-info{
        gap: 5.33333333333333334vw;
    }
    #news-topicks .blog-ctt .blog-list .item .blog-info .date,
    #news-topicks .blog-ctt .blog-list .item .blog-info .cat{
        font-size: 2.66666666666666667vw;
    }
    #news-topicks .blog-ctt .view-all a{
        font-size: 3.2vw;
        line-height: 1.33;
        padding: 4vw 0;
        max-width: 74.66666666666667vw;
    }
}


/* about us */
#about-us{
    padding: 150px 0 370px;
    background-image: var(--bg-pc);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
}
#about-us .inner{
    position: relative;
    z-index: 2;
}
#about-us .ctt-flex{
    display: flex;
    gap: 20px;
    justify-content: space-between;
}
#about-us .ctt-flex .img{
    margin-left: -85px;
}
#about-us .ctt-flex .img img{
    display: block;
    max-width: 800px;
    width: 100%;
    border-radius: 10px;
}
#about-us .ctt-flex .txt{
    max-width: 560px;
    width: 100%;
}
#about-us .ctt-flex .txt .sub_note{
    display: block;
    font-size: 17px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.47;
    margin: 0 0 14px;
    color: #fff;
}
#about-us .ctt-flex .txt h2{
    font-size: 55px;
    font-family: "Albert Sans", sans-serif;
    font-weight: bold;
    letter-spacing: 0.02em;
    line-height: 1.45;
    margin: 0 0 28px;
    color: #fff;
}
#about-us .ctt-flex .txt h3{
    font-size: 40px;
    font-weight: 600;
    letter-spacing: 0.08em;
    line-height: 1.5;
    margin: 0 0 50px;
    color: #fff;
}
#about-us .ctt-flex .txt .note{
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.06em;
    line-height: 1.88;
    margin: 0 0 35px;
    color: #fff;
}
#about-us .ctt-flex .txt .view-all a{
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 600;
    letter-spacing: 0.06em;
    padding: 18px 0;
    max-width: 300px;
    width: 100%;
    color: #2a2f4e;
    background-color: #fff;
    transition: all .3s;
}
#about-us .ctt-flex .txt .view-all a:hover{
    opacity: 1;
    color: #fff;
    background-color: #2a2f4e;
}
#about-us .text-slider {
    position: absolute;
    bottom: 55px;
    left: 0;
    right: 0;
    overflow: hidden;
    z-index: 1;
    white-space: nowrap;
    width: 100%;
}
#about-us .text-slider .slide-track {
    display: inline-block;
    animation: slide 80s linear infinite;
}
#about-us .text-slider .slide-track span {
    display: inline-block;
    font-size: 180px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1;
    color: #fff;
}
@keyframes slide {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}
@media only screen and (max-width: 768px) {
    #about-us{
        background-image: var(--bg-sp);
        padding: 13.33333333335vw 0 42.66666666666667vw;
    }
    #about-us .inner{
        padding: 0 6.666666666666667vw;
    }
    #about-us .ctt-flex{
        display: block;
    }
    #about-us .ctt-flex .img{
        margin-left: 0;
        margin: 0 0 16vw;
    }
    #about-us .ctt-flex .img img{
        max-width: none;
        border-radius: 5px;
    }
    #about-us .ctt-flex .txt{
        max-width: none;
    }
    #about-us .ctt-flex .txt .sub_note{
        font-size: 3.733333333333334vw;
        letter-spacing: 0.06em;
        text-align: center;
        line-height: 1.47;
        margin: 0 0 1.33333333333333335vw;
    }
    #about-us .ctt-flex .txt h2{
        font-size: 10.133333333333vw;
        letter-spacing: 0.02em;
        text-align: center;
        line-height: 1.18;
        margin: 0 0 4vw;
    }
    #about-us .ctt-flex .txt h3{
        font-size: 5.866666666666666666vw;
        text-align: center;
        line-height: 1.5;
        margin: 0 0 8.533333333333333vw;
    }
    #about-us .ctt-flex .txt .note{
        font-size: 3.73333333333333333334vw;
        font-weight: 400;
        letter-spacing: 0.06em;
        line-height: 1.88;
        margin: 0 0 8vw;
    }
    #about-us .ctt-flex .txt .view-all a{
        font-size: 3.2vw;
        line-height: 1.33;
        padding: 4vw 0;
        max-width: 74.66666666666667vw;
        margin:0 auto;
    }
    #about-us .text-slider {
        bottom: 9.3333333333333333334vw;
    }
    #about-us .text-slider .slide-track span {
        font-size: 21.333333336vw;
    }
}


/* feature */
#feature{
    position: retaive;
    padding: 118px 0 120px;
    background-color: #F4F6F9;
}
#feature .bg{
    content: "";
    width: 500px;
    height: 770px;
    background-color: #EAEDF4;
    border-radius: 0 150px 0 0;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 1;
}
#feature .inner{
    position: relative;
    z-index: 2;
}
#feature .slide-area{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    max-width: 1160px;
    width: 100%;
    margin: 0 auto 125px;
}
#feature .feature-slider{
    display: block;
    max-width: 1030px;
    margin: 0 auto;
}
#feature .feature-slider .swiper-slide{
    display: block;
    width: 100%;
    margin: 0 auto;
}
#feature .feature-slider .item{
    max-width: 1000px;
    display: flex;
    align-items: center;
    gap: 40px;
    padding: 40px;
    margin: 0 auto 6px;
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 6px 6px 0 0 rgba(42, 47, 78, 0.1);
}
#feature .feature-slider .item .img{
    flex-shrink: 0;
}
#feature .feature-slider .item .img img{
    display: block;
    max-width: 400px;
    width: 100%;
    border-radius: 5px;
}
#feature .feature-slider .item .txt{
    flex: 1;
    font-family: "Albert Sans", sans-serif;
}
#feature .feature-slider .item .txt .label{
    display: flex;
    align-items: flex-end;
    gap: 8px;
    margin: 0 0 20px;
    color: #0052B7
}
#feature .feature-slider .item .txt .label span{
    display: block;
    font-size: 15px;
    font-weight: bold;
    letter-spacing: 0.06em;
    margin: 0;
    padding: 0 0 4px;
}
#feature .feature-slider .item .txt .label .number{
    display: block;
    font-size: 30px;
    font-weight: 600;
    letter-spacing: 0.06em;
    line-height: 1.33;
    margin: 0;
}
#feature .feature-slider .item .txt .ttl{
    font-size: 24px;
    font-weight: bold;
    letter-spacing: 0.02em;
    margin: 0 0 25px;
    color: #0052B7;
}
#feature .feature-slider .item .txt .note{
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0.06em;
    line-height: 1.88;
    margin: 0;
    color: #2A2F4E
}
#feature .swiper-button{
    position: relative;
    top: auto;
    bottom: auto;
    left: auto;
    right: auto;
    transform: none;
}
#feature .swiper-button img{
    display: block;
    max-width: 50px;
    width: 100%;
    cursor: pointer;
    transition: all .3s;
}
#feature .swiper-button img:hover{
    opacity: 0.7;
}
#feature .swiper-button-next{
    transform: scale(-1);
}
#feature .insta-area .insta-txt{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 0 35px;
    color: #0052B7;
}
#feature .insta-area .insta-txt h3{
    display: block;
    font-size: 35px;
    font-family: "Albert Sans", sans-serif;
    font-weight: bold;
    letter-spacing: 0.02em;
    margin: 0;
    color: #0052B7;
}
#feature .insta-area .insta-txt p{
    display: block;
    font-size: 15px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 500;
    letter-spacing: 0;
    margin: 0;
    color: #0052B7;
}
#feature .insta-area .ctt .instafeed-new-layout-item{
    max-width: 215px;
    max-height: 215px;
}
@media only screen and (max-width: 768px) {
    #feature{
        padding: 16vw 0;
    }
    #feature .bg{
        width: 66.666666666666vw;
        height: 97.33333333333334vw;
        border-radius: 0 100px 0 0;
    }
    #feature .inner{
        padding: 0 6.666666666667vw;
    }
    #feature .slide-area{
        display: block;
        max-width: none;
        width: 100%;
        margin: 0 auto 37.333333333333336vw;
    }
    #feature .feature-slider{
        max-width: none;
    }
    #feature .feature-slider .swiper-wrapper{
        display: flex;
        align-items: stretch;
    }
    #feature .feature-slider .swiper-slide{
        display: block;
        max-width: 72vw;
        width: 100%;
        margin: 0 auto;
    }
    #feature .feature-slider .item{
        max-width: 72vw;
        display: block;
        padding: 3.2vw 3.2vw 9.3333333333333334vw;
    }
    #feature .feature-slider .item .img img{
        max-width: 65.33333333vw;
        margin: 0 0 4.8vw;
        border-radius: 2px;
    }
    #feature .feature-slider .item .txt{
        display: block;
        width: 100%;
    }
    #feature .feature-slider .item .txt .label{
        gap: 2.666666666666667vw;
        margin: 0 0 2.666666667vw;
    }
    #feature .feature-slider .item .txt .label span{
        font-size: 3.2vw;
        padding: 0;
    }
    #feature .feature-slider .item .txt .label .number{
        font-size: 5.3333333333333334vw;
    }
    #feature .feature-slider .item .txt .ttl{
        font-size: 4vw;
        margin: 0 0 4vw;
    }
    #feature .feature-slider .item .txt .note{
        font-size: 3.2vw;
        font-weight: 400;
        letter-spacing: 0.06em;
        line-height: 1.83;
    }
    #feature .swiper-button{
        display: none;
    }
    #feature .insta-area .insta-txt{
        margin: 0 0 5.333333333333333334vw;
    }
    #feature .insta-area .insta-txt h3{
        font-size: 5.3333333333333333334vw;
    }
    #feature .insta-area .insta-txt p{
        font-size: 2.93333333333333333vw;
    }
    #feature .insta-area .ctt .instafeed-new-layout-wrapper{
        display: flex !important;
        align-items: center;
        flex-wrap: wrap;
        gap: 1.666666666666667vw !important;
    }
    #feature .insta-area .ctt .instafeed-new-layout-item{
        max-width: 27.7333333333333vw;
        max-height: 27.7333333333333vw;
        width: 27.7333333333333vw !important;
        height: 27.7333333333333vw !important;
    }
}

/* service */
#service{
    position: relative;
    padding: 230px 0 110px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
#service .text-slider {
    position: absolute;
    top: 55px;
    left: 0;
    right: 0;
    overflow: hidden;
    z-index: 1;
    white-space: nowrap;
    width: 100%;
}
#service .text-slider .slide-track {
    display: inline-block;
    animation: slide 80s linear infinite;
}
#service .text-slider .slide-track span {
    display: inline-block;
    font-size: 90px;
    font-weight: 700;
    letter-spacing: 0.06em;
    line-height: 1.45;
    color: #fff;
}
@keyframes slide {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}
#service .ttl_note{
    font-size: 16px;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.06em;
    line-height: 1.88;
    margin: 0 auto 60px;
    color: #fff;
}
#service .link_area{
    display: flex;
    justify-content: center;
    align-items: stretch;
    gap: 35px;
}
#service .link_area .item{
    display: block;
    padding: 40px 0 0;
    max-width: 390px;
    width: 100%;
    border-radius: 10px;
    background-color: #fff;
    box-shadow: 10px 10px 0 rgba(0, 0, 0, 0.1);
    transition: all .5s;
}
#service .link_area .item .txt_area{
    margin: 0 auto 36px;
    color: #0052B7;
}
#service .link_area .item .txt_area .ttl{
    font-size: 43px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.11em;
    line-height: 1.16;
    margin: 0 auto 8px;
}
#service .link_area .item .txt_area .slug{
    font-size: 15px;
    font-family: "Albert Sans", sans-serif;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.06em;
}
#service .link_area .item .icon{
    display: block;
    min-height: 90px;
    margin: 0 auto 42px;
}
#service .link_area .item .icon img{
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
}
#service .link_area .item .note{
    font-size: 16px;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.06em;
    line-height: 1.56;
    color: #1A2C44;
    margin: 0 auto 34px;
}
#service .link_area .item .link_txt{
    position: relative;
    font-size: 14px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 600;
    text-align: center;
    letter-spacing: 0.06em;
    padding: 20px 0 25px;
    margin: 0;
    color: #0052B7;
    background-color: #EAEDF4;
    text-decoration: underline;
    border-radius: 0 0 9px 9px;
    transition: all .3s;
}
#service .link_area .item .link_txt::before{
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 92%;
    height: 1px;
    background-image: repeating-linear-gradient(to right, #1A5BAC 0px, #1A5BAC 1px, transparent 1px, transparent 5px);
}
#service .link_area .item:hover{
    opacity: 1;
    transform: translate(9px, 9px);
    box-shadow: 1px 1px 0 rgba(0, 0, 0, 0.1); 
}
#service .link_area .item:hover .link_txt{
    background-color: #0052B7;
    color: #Fff;
}
@media only screen and (max-width: 768px) {
    #service{
        padding: 34.6666666666663vw 0 13.33333333335vw;
    }
    #service .text-slider {
        top: 9.333333333333334vw;
    }
    #service .text-slider .slide-track span {
        font-size: 13.333333333333335vw;
    }
    #service .ttl_note{
        font-size: 3.7333333333333334vw;
        line-height: 1.79;
        margin: 0 auto 10.666666666668vw;
    }
    #service .link_area{
        flex-wrap:wrap;
        gap: 2.666666666667vw;
    }
    #service .link_area .item{
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 0;
        padding-left: 6.4vw;
        max-width: none;
        width: 100%;
        height: 32vw;
        overflow: hidden;
        border-radius: 5px;
        box-shadow: 5px 5px 0 rgba(0, 0, 0, 0.1);
    }
    :lang(en) #service .link_area .item{
        height: 40vw;
    }
    #service .link_area .item:hover{
        transform: none;
    }
    #service .link_area .item .icon{
        display: flex;
        align-items: center;
        justify-content: center;
        max-width: 14.6666666666666vw;
        min-height: auto;
        margin: 0 6.933333333333333vw 0 0;
        flex-shrink: 0;
    }
    :lang(en) #service .link_area .item .icon{
        margin: 0 5.333333333334vw 0 0;
    }
    #service .link_area .item .icon img{
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto;
    }
    #service .link_area .item .txt_area{
        display: block;
        flex: 1;
        margin: 0;
    }
    #service .link_area .item .txt_area .ttl{
        font-size: 6.66666666667vw;
        text-align: left;
        letter-spacing: 0.1em;
        margin: 0 auto 2.13333333333vw;
        color: #0052B7;
    }
    #service .link_area .item .note{
        font-size: 3.2vw;
        line-height: 1.67;
        text-align: left;
        margin: 0;
        color: #2A2F4E;
    }
    :lang(en) #service .link_area .item .note{
        font-size: 2.9333333333333vw;
    }
    #service .link_area .item .link_txt.sp{
        flex-shrink: 0;
        display: flex !important;
        align-items: center;
        justify-content: center;
        width: 10.6666666668vw;
        height: 100%;
        border-radius: 0 4px 4px 0;
        background-color: #EAEDF4;
    }
    #service .link_area .item .link_txt.sp img{
        width: 100%;
        max-width: 3.2vw;
    }
    #service .link_area .item .link_txt.sp .white{
        display: none;
    }
    #service .link_area .item .link_txt:before{
        display: none;
    }
    #service .link_area .item:hover .link_txt{
        background-color: #0052B7;
    }
    #service .link_area .item:hover .link_txt .white{
        display: block;
    }
    #service .link_area .item:hover .link_txt .blue{
        display: none;
    }
}


/* collections
------------------------------ */
#collections-ctt{
    padding: 0 !important;
}
#collections-ctt .collection-ttl{
    position: relative;
    padding: 160px 0;
    margin: 90px 0 0;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
#collections-ctt .collection-ttl h1{
    display: block;
    font-size: 55px;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-align: center;
    margin: 0;
    color: #fff;
}
#collections-ctt #product-list{
    padding: 100px 0;
    background: #F4F6F9 !important;
}
#collections-ctt #product-list .collections{
    display: block;
    max-width: 1480px;
    width: 100%;
    padding: 0 10px;
    margin: 0 auto;
}
#collections-ctt #product-list .collections .product-filter{
    gap: 65px;
    max-width: none;
    padding: 0;
    margin: 0;
}
/* #collections-ctt #product-list .collections .product-filter .layer-first .filter-item:last-of-type{
    display: none;
} */
#collections-ctt #product-list .collections .product-filter .layer-first .details-summary{
    cursor: pointer;
    padding: 25px 0;
}
#collections-ctt #product-list .collections .product-filter .layer-first .filter-item:first-child .details-summary{
    padding: 0 0 25px;
}
#collections-ctt #product-list .collections .product-filter .layer-first .details-content{
    border: none;
    border-bottom: 1px solid #E0DBD7;
    padding: 15px 0px 30px 10px;
    margin: 0;
}
#collections-ctt #product-list .collections .product-filter .layer-first .filter-title.jp{
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.08em;
    color: #2F231B;
}
#collections-ctt #product-list .collections .product-filter .layer-first .filter-title.en{
    font-size: 22px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: #1C1612
}
#collections-ctt #product-list .collections .product-filter .layer-first .plus{
    position: relative;
    width: 12px;
    height: 12px;
    overflow: hidden;
}
#collections-ctt #product-list .collections .product-filter .layer-first .plus:before,
#collections-ctt #product-list .collections .product-filter .layer-first .plus:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    margin: auto;
    background: #2F231B;
    transition: 0.3s;
}
#collections-ctt #product-list .collections .product-filter .layer-first .plus:after {
    transform: rotate(90deg);
}
#collections-ctt #product-list .collections .product-filter .layer-first .filter-item[open] .plus:after {
    transform: rotate(0deg);
}
#collections-ctt #product-list .collections .product-filter .layer-first .price-filter-item .details-content{
    padding: 0 0 30px;
}
#collections-ctt #product-list .collections .product-filter .layer-first .price-filter-item .details-content .range-slider{
    padding: 0;
}
#collections-ctt #product-list .collections .product-filter .layer-first .price-filter-item .details-content .range-slider .price-slider{
    margin: 0 0 25px;
}
#collections-ctt #product-list .collections .product-filter .layer-first .price-filter-item .details-content .range-slider .noUi-base{
    height: 1px;
}
#collections-ctt #product-list .collections .product-filter .layer-first .price-filter-item .details-content .range-slider .noUi-handle{
    top: -8px;
    width: 18px;
    height: 18px;
    background-color: #fff;
    border: 1px solid #1C1612;
}
#collections-ctt #product-list .collections .product-filter .layer-first .price-filter-item .details-content .range-slider .price-value{
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0;
    padding: 15px 15px 14px;
    width: 140px;
    height: auto;
    color: #1C1612;
    background-color: #fff;
    border: 1px solid #E6E1D9;
    border-radius: 0;
    box-shadow: none;
    opacity: 1;
}
#collections-ctt #product-list .collections .product-filter .layer-first .price-filter-item .details-content .range-slider .price-currency,
#collections-ctt #product-list .collections .product-filter .layer-first .price-filter-item .details-content .range-slider .price-value::placeholder{
    color: #1C1612;
    opacity: 1;
}
#collections-ctt #product-list .collections .product-filter .layer-first .price-filter-item .details-content .range-slider .separator{
    margin: 0;
}
#collections-ctt #product-list .collections .active-filter-item:not(.form-footer-button){
    padding: 7px 10px;
    color: #1A2C44;
    background-color: #fff;
    border: 1px solid #1A2C44;
}
#collections-ctt #product-list .collections .active-filter-item:not(.form-footer-button)[data-reset=all]{
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 0.06em;
    padding: 0;
    border: none;
    color: #1A2C44;
    background-color: transparent;
}
#collections-ctt #product-list .collections .product-filter .layer-first .details-content .item-list{
    padding: 0;
}
#collections-ctt #product-list .collections .product-filter .layer-first .details-content .item-list input{
    margin: 0 15px 0 0;
    width: 18px;
    height: 18px;
    border: 1px solid #2F231B;
    background: #fff;
    border-radius: 0;
}
#collections-ctt #product-list .collections .product-filter .layer-first .details-content .item-list li{
    margin: 0 0 15px;
}
#collections-ctt #product-list .collections .product-filter .layer-first .details-content .item-list li[disabled]{
    display: none;
}
#collections-ctt #product-list .collections .product-filter .layer-first .details-content .item-list li:last-child{
    margin: 0;
}
#collections-ctt #product-list .collections .product-filter .layer-first .details-content .item-list label{
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.08em;
    padding: 0;
    color: #1C1612;
}
#collections-ctt #product-list .collections .product-filter .layer-first .details-content .item-list input:checked{
    border: 1px solid #0052B7;
    background: #0052B7; 
}
#collections-ctt #product-list .collections .product-filter .layer-first .details-content .item-list input:checked::before{
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12px;
    height: 6px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: translate(-50%, -50%) rotate(-45deg);
    background: none;
}
#collections-ctt #product-list .collections .product-filter .layer-last{
    padding: 0;
    width: auto;
    flex: 1;
}
#collections-ctt #product-list .collections .product-filter .layer-last .layer-last-header{
    align-items: center;
}
#collections-ctt #product-list .collections .product-filter .layer-last .sort{
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 0.08em;
    width: 180px;
    height: 50px;
    color: #1A2C44;
    background-color: #fff;
    border: 1px solid #E8E8E8;
}
#collections-ctt #product-list .collections .product-filter .layer-last .sort .filter-sorting{
    padding: 0;
}
#collections-ctt #product-list .collections .product-filter .layer-last .products{
    gap: 60px 20px;
}
.pagination{
    margin: 60px auto 0 !important;
}
.pagination .pagination-item{
    font-size: 15px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 500;
    letter-spacing: 0.02em;
    color: #000000;
    background-color: transparent;
    border: none;
    transition: all .3s;
}
.pagination .pagination-item:hover{
    color: #fff;
    background-color: #0052B7;
    opacity: 1;
}
.pagination .pagination-item.current {
    color: #fff;
    background-color: #0052B7;
    border: none;
}
.pagination .pagination-item.dots:hover{
    color: #000000;
    background-color: transparent;
}

@media only screen and (max-width: 768px) {
    #collections-ctt .collection-ttl{
        margin: 15.33333335vw 0 0;
        padding: 18.666666666666668vw 0;
    }
    #collections-ctt .collection-ttl h1{
        font-size: 8vw;
    }
    #collections-ctt #product-list{
        padding: 13.3333333333335vw 0 20vw;
    }
    #collections-ctt #product-list .collections{
        max-width: none;
        padding: 0 4vw;
    }
    #collections-ctt #product-list .collections .mobile-filter{
        margin: 0 0 12vw;
    }
    #collections-ctt #product-list .collections .mobile-filter .filter-sort{
        font-size: 3.73333333333333334vw;
        font-weight: 500;
        letter-spacing: 0.02em;
        color: #2A2F4E;
        background-color: #fff;
        border: 1px solid #2A2F4E;
        padding: 3.466666666666663vw 0;
        height: 12.8vw;
    }
    #collections-ctt .has-product-filters .mobile-filter .mobile-filter-modal .form-footer{
        padding-top: 0;
    }
    #collections-ctt .has-product-filters .mobile-filter .mobile-filter-modal .form-footer .button{
        font-size: 15px;
        font-weight: 500;
    }
    #collections-ctt .has-product-filters .mobile-filter .mobile-filter-modal .form-footer .secondary-button{
        color: #0052B7;
        background-color: #fff;
        border: 1px solid #0052B7;
    }
    #collections-ctt .has-product-filters .mobile-filter .mobile-filter-modal .form-footer .primary-button{
        color: #fff;
        background-color: #0052B7;
        border: 1px solid #0052B7;
    }

    .pagination{
        margin: 10.666666666666668vw auto 0 !important;
    }
    .pagination .pagination-item{
        font-size: 3.733333333333334vw;
        min-height: 8vw;
        min-width: 8vw;
    }

}

/* single
------------------------------ */
#single-ctt{
    padding: 30px 0 135px !important;
    margin: 90px 0 0;
    background-color: #F4F6F9;
}
#single-ctt .breadcrumbs{
    display: flex;
    align-items: center;
    gap: 46px;
    margin: 0 0 70px;
}
#single-ctt .breadcrumbs a,
#single-ctt .breadcrumbs span{
    display: block;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0;
    color: #333333
}
#single-ctt .breadcrumbs a{
    position: relative;
    text-decoration: underline;
    transition: all .3s;
}
#single-ctt .breadcrumbs a::before{
    content: "";
    width: 1px;
    height: 18px;
    background-color: #707070;
    position: absolute;
    top: 50%;
    right: -23px;
    transform: translateY(-50%);
}
@media only screen and (max-width: 768px) {
    #single-ctt{
        padding: 6.66666666667vw 0 18.666666666666668vw !important;
        margin: 15.3333333333333336vw 0 0;
    }
    #single-ctt .breadcrumbs{
        flex-wrap: wrap;
        gap: 1.755555555555555555555vw 8vw;
        margin: 0 0 10.666666666666668vw;
    }
    #single-ctt .breadcrumbs a,
    #single-ctt .breadcrumbs span{
        font-size: 2.93333333333vw;
    }
    #single-ctt .breadcrumbs a::before{
        height: 4vw;
        right: -4vw;
    }
}


#single-ctt .main-product{
    padding: 0;
    gap: 70px !important;
}
#single-ctt .main-product .product-gallery{
    max-width: 710px;
    width: 51.45%;
}
#single-ctt .main-product .product-gallery .product-media-box{
    gap: 20px;
    margin: 0;
}
#single-ctt .main-product .product-gallery .product-media-box .product-main-slide{
    width: calc(100% - 20px - var(--vertical-thumb-width));
    max-width: 570px;
}
#single-ctt .main-product .product-gallery .product-media-box .swiper{
    margin: 0 auto;
    max-width: 100%;
    width: auto;
}
#single-ctt .main-product .product-summary{
    max-width: 600px;
    width: 43.5%;
    padding: 0 !important;
    margin: 0 !important;
}
#single-ctt .main-product .product-summary .summary-item{
    padding: 0 !important;
    margin: 0 !important;
}
#single-ctt .main-product .product-summary .summary-item .maker-p{
    display: block;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0;
    color: #1A2C44;
    margin: 0 0 10px;
}
#single-ctt .main-product .product-summary .summary-item .product-title{
    font-size: 30px;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.47;
    margin: 0 0 35px;
    color: #1A2C44;
}
#single-ctt .main-product .product-summary .summary-item .price{
    font-size: 30px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 600;
    letter-spacing: 0;
    margin: 0 0 50px;
    color: #1A2C44;
}
#single-ctt .main-product .product-summary .item-field{
    gap: 10px;
}
#single-ctt .main-product .product-summary .summary-item .quantity{
    width: 140px;
    height: 60px;
    border-radius: 5px;
    border: 1px solid #000000;
    box-shadow: none;
    color: #000000;
    background-color: #fff;
}
#single-ctt .main-product .product-summary .summary-item .quantity .quantity-button{
    opacity: 1;
    color: #000000;
}
#single-ctt .main-product .product-summary .summary-item .quantity .plus{
    position: relative;
    width: 13px;
    height: 13px;
    opacity: 1;
    color: #000000;
}
#single-ctt .main-product .product-summary .summary-item .quantity .plus::before{
    content: "";
    width: 100%;
    height: 2px;
    color: #000000;
    background-color: #000000;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
    opacity: 1;
}
#single-ctt .main-product .product-summary .summary-item .quantity .quantity-plus::after{
    content: "";
    width: 100%;
    height: 2px;
    color: #000000;
    background-color: #000000;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%) rotate(90deg);
    opacity: 1;
}
#single-ctt .main-product .product-summary .add-to-cart-button{
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0;
    padding: 0;
    margin: 0 0 20px;
    height: 60px;
    color: #fff;
    background-color: #1A2C44;
    border-radius: 5px;
    border: 1px solid #1A2C44;
    transition: all .3s;
}
#single-ctt .main-product .product-summary .add-to-cart-button:hover{
    opacity: 1;
    color: #1A2C44;
}
#single-ctt .main-product .product-summary #swym-atw-button-container{
    display: block;
    max-width: 60px;
    margin: 0;
}
#single-ctt .main-product .product-summary #swym-atw-button-container .atw-button{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 60px;
    height: 60px
}
#single-ctt .main-product .product-summary #more-payment-options-link{
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.02em;
    margin: 15px auto 40px;
    color: #1A2C44;
    text-decoration: underline;
}
#single-ctt .main-product .product-summary .pickup-availability-info{
    display: block;
    padding: 30px;
    margin: 0 0 60px;
    background-color: #fff;
}
#single-ctt .main-product .product-summary .pickup-availability-info-inner{
    width: 100%;
    margin: 0;
}
#single-ctt .main-product .product-summary .pickup-availability-info-inner .en{
    display: none !important;
}
:lang(en) #single-ctt .main-product .product-summary .pickup-availability-info-inner .en{
    display: block !important;
}
:lang(en) #single-ctt .main-product .product-summary .pickup-availability-info-inner .jp{
    display: none !important;
}
#single-ctt .main-product .product-summary .pickup-availability-info-title{
    display: block;
    font-size: 18px;
    font-weight: 600;
    text-align: center;
    letter-spacing: 0;
    margin: 0 auto 10px;
    color: #1A2C44;
}
#single-ctt .main-product .product-summary .pickup-availability-info-title span{
    color: #0052B7;
}
#single-ctt .main-product .product-summary .pickup-availability-stock{
    font-size: 14px;
    font-weight: 400;
    text-align: center;
    letter-spacing: 0;
    margin: 0 auto 20px;
    color: #1A2C44;
}
#single-ctt .main-product .product-summary .toggle-modal{
    display: block;
    font-size: 14px;
    font-weight: 400;
    text-align: center;
    letter-spacing: 0;
    text-decoration: underline;
    margin: 0 auto;
    transition: all .3s;
}
#single-ctt .main-product .product-summary .toggle-modal:hover{
    opacity: 0.7;
}
#single-ctt .main-product .product-summary .product-description{
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.87;
    color: #1A2C44;
}
@media only screen and (max-width: 1440px) {
    #single-ctt .main-product{
        gap: 3.66666666667% !important;
    }
}
@media only screen and (max-width: 768px) {
    #single-ctt .inner{
        padding: 0 4vw;
    }
    #single-ctt .main-product{
        padding: 0;
        gap: 8vw !important;
    }
    #single-ctt .main-product .product-gallery{
        max-width: none;
        width: 100%;
    }
    #single-ctt .main-product .product-gallery .product-media-box{
        margin: 0;
    }
    #single-ctt .main-product .product-gallery .product-media-box .product-main-slide{
        max-width: none;
        width: 100%;
    }
    #single-ctt .main-product .product-gallery .product-media-box .swiper{
        margin: 0 auto;
        max-width: 100%;
        width: auto;
    }
    #single-ctt .main-product .product-summary{
        max-width: none;
        width: 100%;
        padding: 0 !important;
    }
    #single-ctt .main-product .product-summary .summary-item .maker-p{
        font-size: 3.733333333333334vw;
        margin: 0 0 2.6666666666666667vw;
    }
    #single-ctt .main-product .product-summary .summary-item .product-title{
        font-size: 5.33333333333333334vw;
        margin: 0 0 6.666666666667vw;
    }
    #single-ctt .main-product .product-summary .summary-item .price{
        font-size: 5.33333333333334vw;
        margin: 0 0 9.333333333333334vw;
    }
    #single-ctt .main-product .product-summary .item-field{
        gap: 1.66666666667vw;
    }
    #single-ctt .main-product .product-summary .summary-item .quantity{
        width: 24vw;
        height: 12vw;
    }
    #single-ctt .main-product .product-summary .summary-item .quantity .plus{
        width: 3.2vw;
        height: 3.2vw;
    }
    #single-ctt .main-product .product-summary .summary-item .quantity .plus::before{
        height: 2px;
    }
    #single-ctt .main-product .product-summary .summary-item .quantity .quantity-plus::after{
        height: 2px;
    }
    #single-ctt .main-product .product-summary .add-to-cart-button{
        font-size: 4.26666666666666666666667vw;
        margin: 0 0 3.2vw;
        height: 12vw;
    }
    #single-ctt .main-product .product-summary #swym-atw-button-container{
        max-width: 12vw;
    }
    #single-ctt .main-product .product-summary #swym-atw-button-container .atw-button{
        width: 12vw;
        height: 12vw;
        padding: 0;
    }
    #single-ctt .main-product .product-summary #more-payment-options-link{
        font-size: 3.7333333333333333334vw;
        margin: 4vw auto 10.66666666666666668vw;
    }
    #single-ctt .main-product .product-summary .pickup-availability-info{
        padding: 8vw 5.33333333333334vw 5.33333333333333334vw;
        margin: 0 0 10.666666666668vw;
    }
    #single-ctt .main-product .product-summary .pickup-availability-info-title{
        font-size: 4vw;
        margin: 0 auto 3.2vw;
    }
    #single-ctt .main-product .product-summary .pickup-availability-stock{
        font-size: 3.2vw;
        margin: 0 auto 5.3333333333333334vw;
    }
    #single-ctt .main-product .product-summary .toggle-modal{
        font-size: 3.2vw;
    }
    #single-ctt .main-product .product-summary .product-description{
        font-size: 4vw;
    }
}


/* recommend
------------------------------ */
.another-product{
    padding: 115px 0 120px !important;
}
.another-product .wrapper-heading{
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 0 50px;
}
.another-product .wrapper-heading h2{
    font-size: 45px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: #0052B7;
    margin: 0;
}
.another-product .wrapper-heading .link-underline{
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 500;
    letter-spacing: 0.02em;
    color: #000000;
}
.another-product .wrapper-heading .link-underline::after{
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    background: linear-gradient(to bottom left, #1A2C44 50%, #EAEDF4 50%);
    transform: rotate(45deg);
}
@media only screen and (max-width: 768px) {
    .another-product{
        padding: 16vw 0 !important;
    }
    .another-product .wrapper-heading{
        display: block;
        text-align: center;
        margin: 0 0 9.33333333333333333334vw;
    }
    .another-product .wrapper-heading h2{
        font-size: 8vw;
        text-align: center;
        margin: 0 0 4.8vw !important;
    }
    .another-product .wrapper-heading .link-underline{
        justify-content: center;
        gap: 4vw;
        font-size: 4.26666666666666667vw;
    }
    .another-product .wrapper-heading .link-underline::after{
        width: 2.6666666666666667vw;
        height: 2.6666666666666667vw;
    }
}

#recommend{
    background-color: #EAEDF4;
}
#history{
    background-color: #F4F6F9;
}

/* blog-list
------------------------------ */
#mainblog-list{
    background-color: #F4F6F9;
}
#mainblog-list .blog-main-content{
    padding: 120px 0 !important;
}
#mainblog-list .blog-main-content .grid{
    row-gap: 60px;
    margin: 0;
}
#mainblog-list .blog-main-content .grid .grid-item{
    display: block;
    max-width: 320px;
    width: 100%;
}
#mainblog-list .blog-main-content .grid .grid-item .adapt-media{
    margin: 0 0 20px;
}
#mainblog-list .blog-main-content .grid .grid-item .card-image{
    position: relative;
    width: 100%;
    height: 13.666666668vw;
    max-height: 200px;
    overflow: hidden;
}
#mainblog-list .blog-main-content .grid .grid-item .card-image img{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: auto;
    max-height: 200px;
}
#mainblog-list .blog-main-content .grid .grid-item .article-title{
    font-size: 14px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    letter-spacing: 0.08em;
    line-height: 1.67;
    margin: 0 0 20px;
    color: #2A2F4E;
}
#mainblog-list .blog-main-content .grid .grid-item .article-title a:hover{
    opacity: 1;
    text-decoration-thickness: 1px;
}
#mainblog-list .blog-main-content .grid .grid-item .card-info{
    display: flex;
    align-items: center;
    gap: 30px;
    font-family: "Albert Sans", sans-serif;
    margin: 0;
}
#mainblog-list .blog-main-content .grid .grid-item .card-info .info-item{
    display: block;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 0.08em;
    line-height: 1.17;
    color: #2A2F4E;
}
@media only screen and (max-width: 768px) {
    #mainblog-list .blog-main-content{
        padding: 10.666666666668vw 0 16vw !important;
    }
    #mainblog-list .blog-main-content .grid{
        justify-content: center;
        align-items: center;
        row-gap: 10.6666666666668vw;
    }
    #mainblog-list .blog-main-content .grid .grid-item{
        max-width: 85.33333333333334vw;
        margin: 0 auto;
    }
    #mainblog-list .blog-main-content .grid .grid-item .adapt-media{
        margin: 0 0 4vw;
    }
    #mainblog-list .blog-main-content .grid .grid-item .card-image{
        height: 53.333333333333336vw;
        max-height: 200px;
    }
    #mainblog-list .blog-main-content .grid .grid-item .card-image img{
        max-height: 53.333333333333336vw;
    }
    #mainblog-list .blog-main-content .grid .grid-item .article-title{
        font-size: 3.7333333333334vw;
        margin: 0 0 5.33333333333334vw;
    }
    #mainblog-list .blog-main-content .grid .grid-item .card-info{
        gap: 5.33333333333334vw;
    }
    #mainblog-list .blog-main-content .grid .grid-item .card-info .info-item{
        font-size: 3.46666666666663vw;
    }
}


/* blog-article
------------------------------ */
#blog-article{
    padding: 80px 0 120px;
    background: #F4F6F9;
}
#blog-article .blog-main-content{
    max-width: 1230px !important;
    margin: 0 auto;
}
#blog-article .blog-main-content .blog-content{
    padding: 80px 115px 130px;
    margin: 0;
    background-color: #fff;
}
#blog-article .blog-main-content .blog-content .post-meta{
    display: flex;
    align-items: center;
    gap: 40px;
    font-family: "Inter", sans-serif;
    margin: 0 0 40px;
}
#blog-article .blog-main-content .blog-content .post-meta .meta-item,
#blog-article .blog-main-content .blog-content .post-meta .info-item{
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 0.08em;
    color: #1A2C44;
}
#blog-article .blog-main-content .blog-content .post-title{
    display: block;
    font-size: 45px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.56;
    color: #1A2C44;
    margin: 0 0 40px;
}
#blog-article .blog-main-content .blog-content .post-content{
    font-family: "Noto Sans JP", sans-serif;
    color: #1A2C44;
    margin: 0;
}
#blog-article .blog-main-content .blog-content .post-content pre{
    margin: 0;
}
#blog-article .blog-main-content .blog-content .post-content pre span{
    display: block;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.87;
}
#blog-article .blog-main-content .blog-content .post-content pre strong{
    display: block;
}
#blog-article .blog-main-content .blog-content .post-content pre strong span{
    display: block;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.25;
}
#blog-article .blog-main-content .blog-content .post-content h2{
    font-size: 30px;
    font-weight: bold;
    letter-spacing: 0.03em;
    margin: 0 0 30px;
    color: #1A2C44;
}
#blog-article .blog-main-content .blog-content .post-content h3{
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: 26px;
    font-weight: bold;
    letter-spacing: 0.03em;
    line-height: 1.27;
    margin: 0 0 25px;
    color: #1A2C44;
}
#blog-article .blog-main-content .blog-content .post-content h3::before{
    content: "";
    width: 5px;
    height: 35px;
    background-color: #1A2C44;
}
#blog-article .blog-main-content .blog-content .post-content h4{
    font-size: 22px;
    font-weight: bold;
    letter-spacing: 0.03em;
    padding: 0 0 10px;
    margin: 0 0 20px;
    border-bottom: 1px solid #1A2C44;
    color: #1A2C44;
}
#blog-article .blog-main-content .blog-content .post-content p{
    display: block;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.87;
    margin: 0 0 40px;
}
#blog-article .blog-main-content .blog-content .post-content ul{
    margin: 10px 0 30px;
}
#blog-article .blog-main-content .blog-content .post-content ul li{
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0;
}
@media only screen and (max-width: 768px) {
    #blog-article{
        padding: 10.666666666666668vw 0 16vw;
    }
    #blog-article .blog-main-content{
        max-width: none !important;
    }
    #blog-article .blog-main-content .blog-content{
        padding: 8vw 5.3333333334vw 10.6666666666666668vw;
    }
    #blog-article .blog-main-content .blog-content .post-meta{
        gap: 5.333333333334vw;
        margin: 0 0 5.33333333333333334vw;
    }
    #blog-article .blog-main-content .blog-content .post-meta .meta-item,
    #blog-article .blog-main-content .blog-content .post-meta .info-item{
        font-size: 3.2vw;
    }
    #blog-article .blog-main-content .blog-content .post-title{
        font-size: 6.66666666666667vw;
        line-height: 1.47;
        margin: 0 0 8vw;
    }
    #blog-article .blog-main-content .blog-content .post-content pre span{
        font-size: 3.733333333334;
    }
    #blog-article .blog-main-content .blog-content .post-content pre strong span{
        font-size: 5.33333333333333334vw;
    }
    #blog-article .blog-main-content .blog-content .post-content h2{
        font-size: 6.4vw;
        margin: 0 0 6.666666666666666667vw;
    }
    #blog-article .blog-main-content .blog-content .post-content h3{
        align-items: flex-start;
        gap: 2.6666666666666667vw;
        font-size: 5.8666666666666666666vw;
        margin: 0 0 5.33333333333333334vw;
    }
    #blog-article .blog-main-content .blog-content .post-content h3::before{
        width: 1.3333333333335vw;
        height: 8vw;
    }
    #blog-article .blog-main-content .blog-content .post-content h4{
        font-size: 4.26666666666666666667vw;
        padding: 0 0 2.666666666666667vw;
        margin: 0 0 5.33333333333333334vw;
    }
    #blog-article .blog-main-content .blog-content .post-content p{
        font-size: 3.73333333333333333334vw;
        margin: 0 0 8vw;
    }
    #blog-article .blog-main-content .blog-content .post-content ul{
        margin: 2.66666666666666667vw 0 8vw;
    } 
    #blog-article .blog-main-content .blog-content .post-content ul li{
        font-size: 3.733333333333333334vw
    }

}


/* page
------------------------------ */
.main-page-section{
    padding: 0;
}
.page-ctt{
    background-color: #f4f6f9;
}
.page-ctt .page-ttl{
    padding: 145px 0;
    margin: 90px 0 0;
    background-image: var(--pagebg-pc);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
}
.page-ctt .page-ttl .jp{
    font-size: 18px;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.06em;
    margin: 0 auto 10px;
}
:lang(en) .page-ctt .page-ttl .jp{
    display: none;
}
.page-ctt .page-ttl .en{
    font-size: 55px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 600;
    text-align: center;
    letter-spacing: 0;
    margin: 0;
    color: #fff;
}
.page-ctt .content .inner{
    max-width: 1220px;
}
@media only screen and (max-width: 768px) {
    .page-ctt .page-ttl{
        padding: 16vw 0 21.36666666666666666vw;
        margin: 15.33333333333333335vw 0 0;
        background-image: var(--pagebg-sp);
    }
    .page-ctt .page-ttl .jp{
        font-size: 3.2vw;
        margin: 0 auto 1.3333333333335vw;
    }
    .page-ctt .page-ttl .en{
        font-size: 8vw;
    }
}


/* about-info
------------------------------ */
.aboutus-info{
    overflow: unset;
}
#info-txt{
    position: relative;
    padding: 170px 0 150px;
    background-color: #F4F6F9;
}
#info-txt .left-img{
    z-index: 1;
    position: absolute;
    bottom: -50px;
    left: 6.944444444444445vw;
}
#info-txt .left-img img{
    display: block;
    max-width: 320px;
    width: 17.5vw;
}
#info-txt .right-img{
    z-index: 1;
    position: absolute;
    bottom: -50px;
    right: 6.944444444444445vw;
}
#info-txt .right-img img{
    display: block;
    max-width: 270px;
    width: 15vw;
}
#info-txt .inner{
    position: relative;
    z-index: 2;
}
#info-txt h2{
    display: block;
    font-size: 40px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.08em;
    line-height: 1.5;
    margin: 0 auto 90px;
    color: #1A2C44;
}
#info-txt h2 span{
    color: #0052B7;
}
#info-txt .note{
    display: block;
    font-size: 16px;
    font-weight: 400;
    text-align: center;
    letter-spacing: 0.06em;
    line-height: 2;
    margin: 0;
    color: #1A2C44;
}
#info-txt .bg-txt{
    display: block;
    width: 100%;
    position: absolute;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 200px;
    font-weight: 800;
    text-align: center;
    letter-spacing: 0;
    color: #fff;
}
@media only screen and (max-width: 768px) {
    #info-txt{
        display: flex;
        justify-content: center;
        align-items: flex-end;
        flex-wrap: wrap;
        gap: 16vw 1.3333333333335vw;
        padding: 16vw 0;
    }
    #info-txt .left-img{
        z-index: 1;
        position: relative;
        bottom: auto;
        left: auto;
        order: 2;
    }
    #info-txt .left-img img{
        display: block;
        max-width: 320px;
        width: 42.66666666666667vw;
    }
    #info-txt .right-img{
        z-index: 1;
        position: relative;
        bottom: auto;
        right: auto;
        order: 3;
    }
    #info-txt .right-img img{
        display: block;
        max-width: 270px;
        width: 36vw;
    }
    #info-txt .inner{
        width: 100%;
        order: 1;
    }
    #info-txt h2{
        font-size: 5.3333333333333334vw;
        letter-spacing: 0;
        line-height: 1.5;
        margin: 0 -1.0666666668vw 10.6666666666668vw;
    }
    #info-txt .note{
        font-size: 3.7333333333333334vw;
        line-height: 1.87;
    }
    #info-txt .bg-txt{
        top: 8vw;
        font-size: 14.66666666666vw;
        letter-spacing: 0.06em;
        color: #fff;
    }
}

#info-data{
    padding: 105px 0 110px;
    color: #fff;
    background-color: #1A2C44;
}
#info-data .cta-flex{
    display: flex;
    align-items: center;
    justify-content: center;
}
#info-data .cta-flex .item{
    flex: 1;
    max-width: 430px;
    width: 100%;
}
#info-data .cta-flex .middle-item{
    position: relative;
}
#info-data .cta-flex .middle-item:before,
#info-data .cta-flex .middle-item:after {
    content: "";
    width: 1px;
    height: 160px;
    background-image: repeating-linear-gradient( to bottom, #758EAF 0px, #758EAF 1px, transparent 1px, transparent 3px );
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
#info-data .cta-flex .middle-item:before{
    left: 0;
}
#info-data .cta-flex .middle-item:after{
    right: 0;
}
#info-data .cta-flex .item .note{
    display: block;
    font-size: 22px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.06em;
    margin: 0;
    color: #fff;
}
#info-data .cta-flex .item .number-note{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 14px;
    font-size: 53px;
    font-family: "Manrope", sans-serif;
    font-weight: bold;
    letter-spacing: 0;
    line-height: 1.25;
    margin: 0;
}
#info-data .cta-flex .item .number-note span{
    font-size: 19px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: bold;
    letter-spacing: 0.06em;
    padding-top: 12px;
}
@media only screen and (max-width: 768px) {
    #info-data{
        padding: 13.3333333333335vw 0 9.3333333333333334vw;
    }
    #info-data .cta-flex{
        display: block;
    }
    #info-data .cta-flex .item{
        display: block;
        max-width: none;
        width: 100%;
        padding: 0 0 30px;
        margin: 0 0 30px;
        border-bottom: 1px dashed #758EAF;
    }
    #info-data .cta-flex .right-item{
        padding: 0;
        margin: 0;
        border-bottom: none;
    }
    #info-data .cta-flex .middle-item:before,
    #info-data .cta-flex .middle-item:after {
        display: none;
    }
    #info-data .cta-flex .item .note{
        font-size: 4.533333333333333333vw;
    }
    #info-data .cta-flex .item .number-note{
        gap: 1.33333333335vw;
        font-size: 10.666666666666668vw;
    }
    #info-data .cta-flex .item .number-note span{
        font-size: 4vw;
        padding-top: 2.66666666666666667vw;
    } 
}

#about-reazon{
    padding: 110px 0 130px;
    background-image: var(--reazonbg-pc);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #FFFFFF;
}
#about-reazon .inner{
    max-width: 1220px;
}
#about-reazon .ttl_area{
    margin: 0 auto 75px;
}
#about-reazon .ttl_area p{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 25px;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0;
    text-align: center;
    margin: 0 auto 16px;
    color: #fff;
}
#about-reazon .ttl_area p .first{
    transform: scaleX(-1);
}
#about-reazon .ttl_area h2{
    font-size: 40px;
    font-weight: 600;
    text-align: center;
    letter-spacing: 0.06em;
    line-height: 1.5;
    color: #fff;
}
#about-reazon .ctt .item{
    display: flex;
    align-items: center;
    gap: 75px;
    padding-bottom: 60px;
    margin-bottom: 60px;
    border-bottom: 1px solid #4272AD;
}
#about-reazon .ctt .item:nth-of-type(2){
    flex-direction: row-reverse;
}
#about-reazon .ctt .item:last-of-type{
    padding: 0;
    margin: 0;
    border: none;
}
#about-reazon .ctt .item .img{
    flex-shrink: 0;
}
#about-reazon .ctt .item .img img{
    display: block;
    margin-top: 10px;
    border-radius: 5px;
}
#about-reazon .ctt .item .txt .label{
    max-width: 110px;
    width: 100%;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    font-family: "Manrope", sans-serif;
    font-weight: 600;
    letter-spacing: 0.02em;
    margin: 0 0 18px;
    color: #004BA8;
    background-color: #FFFFFF;
    border-radius: 100vw;
}
#about-reazon .ctt .item .txt .ttl{
    position: relative;
    font-size: 25px;
    font-weight: 500;
    letter-spacing: 0.06em;
    line-height: 1.44;
    margin: 0 0 32px;
}
#about-reazon .ctt .item .txt .ttl span{
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    font-size: 100px;
    font-family: "Manrope", sans-serif;
    font-weight: 600;
    letter-spacing: 0;
    opacity: 0.1;
}
#about-reazon .ctt .item .txt .note{
    font-size: 16px;
    letter-spacing: 0.06em;
    line-height: 2;
}
@media only screen and (max-width: 768px) {
    #about-reazon{
        padding: 16vw 0 18.6666666666666668vw;
    }
    #about-reazon .ttl_area{
        margin: 0 auto 10.66666666666668vw;
    }
    #about-reazon .ttl_area p{
        gap: 5.33333333333333333334vw;
        font-size: 4vw;
        margin: 0 auto 3.2vw;
    }
    #about-reazon .ttl_area p span img{
        width: 1.6vw;
        height: 8vw;
    }
    #about-reazon .ttl_area h2{
        font-size: 6.4vw;
        line-height: 1.69;
        margin: 0 -1.333333333335vw;
    }
    #about-reazon .ctt .item{
        flex-direction: column;
        gap: 8vw;
        padding-bottom: 10.6666666666666668vw;
        margin-bottom: 10.6666666666666668vw;
    }
    #about-reazon .ctt .item:nth-of-type(2){
        flex-direction: column;
    }
    #about-reazon .ctt .item .img img{
        margin: 0;
    }
    #about-reazon .ctt .item .txt .label{
        max-width: 26.666666666666668vw;
        height: 6.666666666666667vw;
        font-size: 3.4666666666666666663vw;
        margin: 0 0 4.8vw;
    }
    #about-reazon .ctt .item .txt .ttl{
        font-size: 5.333333333333333334vw;
        margin: 0 0 5.33333333333333334vw;
    }
    #about-reazon .ctt .item .txt .ttl span{
        font-size: 16vw;
    }
    #about-reazon .ctt .item .txt .note{
        font-size: 3.733333333333334vw;
    }
}

#about_shop-list {
    position: relative;
    padding: 100px 0 130px;
    border-radius: 120px 0 0;
    background-image: var(--shopbg-pc);
    background-color: #EAEDF4;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 563px auto;
}
#about_shop-list .inner{
    position: relative;
    z-index: 2;;
}
#about_shop-list .ttl_area {
    margin: 0 auto 80px;
}
#about_shop-list .ttl_area .in_txt{
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.06em;
    text-align: center;
    margin: 0 auto 20px;
    color: #0052B7;
}
#about_shop-list .ttl_area h2{
    font-size: 55px;
    font-weight: 800;
    text-align: center;
    letter-spacing: 0.04em;
    line-height: 1.43;
    margin: 0 auto 60px;
    color: #0052B7;
}
#about_shop-list .ttl_area .note{
    font-size: 17px;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.05em;
    margin: 0;
    color: #1A2C44
}
#about_shop-list .ctt{
    display: flex;
    justify-content: center;
    align-items: stretch;
    gap: 60px;
}
#about_shop-list .ctt .item{
    position: relative;
    max-width: 480px;
    width: 100%;
    color: #fff;
    background-color: #0052B7;
    border-radius: 10px;
    box-shadow: 10px 10px 0 rgba(0, 0, 0, 0.05);
    transition: all .5s;
}
#about_shop-list .ctt .item .txt{
    padding: 20px 20px 0;
}
#about_shop-list .ctt .item .txt .kind{
    position: absolute;
    top: 0;
    right: 0;
    display: inline-block;
    font-size: 15px;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.06em;
    padding: 7px 15px 9px;
    margin: 0;
    color: #fff;
    background-color: #1A2C44;
    border-radius: 0 10px 0 10px;
} 
#about_shop-list .ctt .item .txt .img img{
    display: block;
    border-radius: 10px;
    margin: 0 auto 27px;
}
#about_shop-list .ctt .item .txt .ttl{
    font-size: 28px;
    font-weight: 600;
    text-align: center;
    letter-spacing: 0.1em;
    line-height: 1.43;
    margin: 0 0 15px;
}
#about_shop-list .ctt .item .txt .address{
    font-size: 14px;
    text-align: center;
    letter-spacing: 0.06em;
    line-height: 1.67;
    margin: 0 0 5px;
}
#about_shop-list .ctt .item .txt .info_area{
    margin: 0 0 25px;
}
#about_shop-list .ctt .item .txt .info_area .tell{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-size: 41px;
    font-family: "Heebo", sans-serif;
    font-weight: 600;
    line-height: 1.46;
    margin: 0;
}
#about_shop-list .ctt .item .txt .info_area .tell img{
    width: 23px;
    height: 23px;
    transform: rotate(12deg);
}
#about_shop-list .ctt .item .txt .info_area .open{
    font-size: 13px;
    font-family: "Heebo", sans-serif;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.08em;
    margin: 0;
}
#about_shop-list .ctt .item .link_txt{
    font-size: 14px;
    font-family: "Manrope", sans-serif;
    letter-spacing: 0;
    text-align: center;
    line-height: 1.36;
    text-decoration: underline;
    padding: 25px 0 26px;
    margin: 0;
    background-color: #1A2C44;
    border-radius: 0 0 10px 10px;
    transition: all .3s;
}
#about_shop-list .ctt .item:hover{
    opacity: 1;
    transform: translate(9px, 9px);
    box-shadow: 1px 1px 0 rgba(0, 0, 0, 0.05); 
}
#about_shop-list .ctt .item:hover .link_txt{
    background-color: #137DE8;
}
@media only screen and (max-width: 768px) {
    #about_shop-list {
        padding: 17.333333333333336vw 0 21.333333333333336vw;
        border-radius: 16vw 0 0;
        background-position: center 26vw;
        background-repeat: no-repeat;
        background-size: 80vw auto;
    }
    #about_shop-list::before{
        top: -16vw;
        width: 16vw;
        height: 16vw;
    }
    #about_shop-list .ttl_area {
        margin: 0 auto 8vw;
    }
    #about_shop-list .ttl_area .in_txt{
        font-size: 4.266666666667vw;
        margin: 0 auto 1.333333333335vw;
    }
    #about_shop-list .ttl_area h2{
        font-size: 10.66666666668vw;
        margin: 0 auto 6.4vw;
    }
    #about_shop-list .ttl_area .note{
        font-size: 3.7333333333334vw;
    }
    #about_shop-list .ctt{
        flex-wrap: wrap;
        gap: 5.333333333334vw;
    }
    #about_shop-list .ctt .item{
        width: 100%;
        box-shadow: 5px 5px 0 rgba(0, 0, 0, 0.05); 
    }
    #about_shop-list .ctt .item .txt{
        padding: 2.66666666667vw 2.66666666666667vw 0;
    }
    #about_shop-list .ctt .item .txt .kind{
        font-size: 2.93333333333333vw;
        padding: 1.33333333333335vw 2.66666666666667vw;
    } 
    #about_shop-list .ctt .item .txt .img img{
        border-radius: 5px;
        margin: 0 auto 6.6666666666667vw;
    }
    #about_shop-list .ctt .item .txt .ttl{
        font-size: 4.8vw;
        margin: 0 0 3.466666666666663vw;
    }
    #about_shop-list .ctt .item .txt .address{
        font-size: 2.93333333333333vw;
        margin: 0 0 5.33333333333333334vw;
    }
    #about_shop-list .ctt .item .txt .info_area{
        margin: 0 0 3.46666666666663vw;
    }
    #about_shop-list .ctt .item .txt .info_area .tell{
        justify-content: center;
        gap: 1.0666666666666667vw;
        font-size: 7.199999999999999999vw;
    }
    #about_shop-list .ctt .item .txt .info_area .tell::before{
        width: 4vw;
        height: 4vw;
        margin-top: 5px;
    }
    #about_shop-list .ctt .item .txt .info_area .open{
        font-size: 2.66666666666667vw;
    }
    #about_shop-list .ctt .item .link_txt{
        font-size: 2.933333333333333vw;
        padding: 3.46666666666663vw 0 3.2vw;
    }
    #about_shop-list .ctt .item:hover{
        opacity: 1;
        transform: none;
        box-shadow: none; 
    }
}


/* faq
------------------------------ */
#faq{
    padding: 110px 0 120px;
}
#faq > p.note{
    display: block !important;
    font-size: 20px;
    font-weight: 400;
    text-align: center;
    letter-spacing: 0.06em;
    margin: 0 auto 85px;
    color: #1A2C44
}
#faq .accodion{
    display: block;
    padding: 25px 30px;
    margin: 0 0 10px;
    background-color: #fff;
}
#faq .accodion .question{
    position: relative;
    display: flex;
    align-items: center;
    gap: 20px;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.06em;
    color: #0052B7;
    transition: all .3s;
    cursor: pointer;
    margin: 0;
}
#faq .accodion .question::before{
    content: "Q";
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 600;
    letter-spacing: 0;
    padding: 10px 13px 8px;
    color: #fff;
    background-color: #1952B7;
    border-radius: 100vw;
    flex-shrink: 0;
}
#faq .accodion .question .plus{
    position: absolute;
    content: "";
    top: 50%;
    right: 0;
    transform: translateY(-50%) rotate(0);
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #2A2F4E;
    transition: all .3s;
}
#faq .accodion .question.is-open .plus{
    transform: translateY(-50%) rotate(180deg);
}
#faq .accodion .answer{
    transition: all .3s;
    padding-left: 60px;
}
#faq .accodion p{
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.87;
    color: #1A2C44;
}
@media only screen and (max-width: 768px) {
    #faq{
        padding: 10.66666666666668vw 0 16vw;
    }
    #faq > p.note{
        font-size: 4.2666666666666666667vw;
        margin: 0 auto 10.66666666666666668vw;
    }
    #faq .accodion{
        padding: 3.2vw 4vw;
        margin: 0 0 1.6666666666666667vw;
    }
    #faq .accodion .question{
        font-size: 4vw;
        gap: 3.2vw;
        padding-right: 4vw;
    }
    #faq .accodion .question::before{
        font-size: 4.2666666666666667vw;
        padding: 1.866666666666666667vw 2.666666666666667vw 1.3333333333333335vw;
    }
    #faq .accodion .question .plus{
        border-left: 1.666666666666667vw solid transparent;
        border-right: 1.666666666666667vw solid transparent;
        border-top: 1.666666666666667vw solid #2A2F4E;
    }
    #faq .accodion .answer{
        padding-left: 12vw;
    }
    #faq .accodion p{
        font-size: 3.73333333333334vw;
    }
}


/* outline
------------------------------ */
#outline{
    padding: 120px 0;
}
#outline table{
    display: block;
    width: 100% !important;
    height: auto !important;
    margin: 0;
    border: none !important;
}
#outline table tbody{
    display: block;
    width: 100% !important;
    height: auto !important;
    margin: 0;
    border: none !important;
}
#outline table tr{
    position: relative;
    display: flex;
    width: 100% !important;
    height: auto !important;
    padding: 0 0 40px;
    margin: 0 0 40px;
    border-bottom: 1px solid #D5E0EF;
}
#outline table tr::before{
    content: "";
    width: 40px;
    height: 1px;
    background-color: #0052B7;
    position: absolute;
    bottom: -1px;
    left: 0;
}
#outline table tr td{
    height: auto !important;
    padding: 0 !important;
    border: none !important;
}
#outline table tr td:first-of-type{
    display: block;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.06em;
    color: #1A2C44;
    width: 270px !important;
    flex-shrink: 0;
}
#outline table tr td:last-of-type{
    display: block;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.06em;
    line-height: 1.63;
    margin: 0;
    color: #1A2C44;
    width: auto !important;
    flex: 1;
}
#outline table tr td a{
    color: #0052B7;
    text-decoration: underline;
}
#outline .not-box{
    display: none;
}
@media only screen and (max-width: 768px) {
    #outline{
        padding: 10.66666666666668vw 0 16vw;
    }
    #outline table tr{
        display: block;
        padding: 0 0 6.6666666666666667vw;
        margin: 0 0 6.6666666666666667vw;
    }
    #outline table tr::before{
        width: 6.6666666666666667vw;
    }
    #outline table tr td:first-of-type{
        font-size: 3.733333333333333334vw;
        width: 100% !important;
        margin: 0 0 2.6666666667vw;
    }
    #outline table tr td:last-of-type{
        font-size: 3.733333333333333334vw;
    }
}


/* policy （ポリシーページ）
------------------------------ */
/* 共通 */
.shopify-policy__container{
    max-width: none;
    width: 100%;
    padding: 0;
    margin: 0;
    background-color: #f4f6f9;
}
.shopify-policy__container .shopify-policy__title{
    display: none;
}
.shopify-policy__container .page-ctt .page-ttl{
    padding: 145px 0;
    background-image: url('//liquorjoy-shop.com/cdn/shop/t/6/assets/page_ttl_bg.jpg?v=158961692386582241774257875');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
}
.shopify-policy__container .page-ctt .page-ttl .jp{
    font-size: 18px;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.06em;
    margin: 0 auto 10px;
}
.shopify-policy__container .page-ctt .page-ttl .en{
    font-size: 55px;
    font-family: "Albert Sans", sans-serif;
    font-weight: 600;
    text-align: center;
    letter-spacing: 0;
    margin: 0;
    color: #fff;
}
.shopify-policy__container .page-ctt .content{
    padding: 120px 0;
}
.shopify-policy__container .page-ctt .content .inner{
    max-width: 1220px;
}
.shopify-policy__container .page-ctt .content .item{
    display: block;
    width: 100%;
    margin: 0 0 70px;
}
.shopify-policy__container .page-ctt .content .item h2{
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.06em;
    margin: 0 0 30px;
    color: #1A2C44;
}
.shopify-policy__container .page-ctt .content .item .note{
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.73;
    color: #1A2C44;
}
.shopify-policy__container .page-ctt .content .item .note span{
    display: block;
    font-weight: 600;
    margin: 20px 0 15px;
}
.shopify-policy__container .page-ctt .content .item .note a{
    color: #0052B7;
}
@media only screen and (max-width: 768px) {
    .shopify-policy__container .page-ctt .page-ttl{
        padding: 16vw 0 21.36666666666666666vw;
        background-image: url('//liquorjoy-shop.com/cdn/shop/t/6/assets/page_ttl_bg_sp.jpg?v=177815996851801125381774423016');";
    }
    .shopify-policy__container .page-ctt .page-ttl .jp{
        font-size: 3.2vw;
        margin: 0 auto 1.3333333333335vw;
    }
    .shopify-policy__container .page-ctt .page-ttl .en{
        font-size: 8vw;
    }
    .shopify-policy__container .page-ctt .content{
        padding: 10.66666666666668vw 0 16vw;
    }
    .shopify-policy__container .page-ctt .content .item{
        margin: 0 0 10.6666666666668vw;
    }
    .shopify-policy__container .page-ctt .content .item h2{
        font-size: 4.8vw;
        margin: 0 0 5.3333333333333334vw;
    }
    .shopify-policy__container .page-ctt .content .item .note{
        font-size: 3.73333333333333334vw;
        line-height: 1.67;
    }
}

/* 配送ポリシー */
#shipping-policy dl{
    margin: 0 0 100px;
}
#shipping-policy dl:last-of-type{
    margin: 0;
}
#shipping-policy dl dt{
    display: block;
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.06em;
    line-height: 1.5;
    color: #1A2C44;
    margin: 0 0 30px;
}
#shipping-policy dl dd{
    display: block;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.73;
    color: #1A2C44;
    margin: 0;
}
@media only screen and (max-width: 768px) {
    #shipping-policy dl{
        margin: 0 0 10.6666666666668vw;
    }
    #shipping-policy dl dt{
        font-size: 4.8vw;
        margin: 0 0 5.3333333333333334vw;
    }
    #shipping-policy dl dd{
        font-size: 3.73333333333333334vw;
        line-height: 1.67;
    }
}

/* お問い合わせ */
#contact{
    padding: 100px 0 115px !important;
    background-color: #F4F6F9;
}
#contact .note{
    display: block;
    font-size: 16px;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.06em;
    line-height: 1.87;
    margin: 0 auto 60px;
    color: #1A2C44;
}
#contact .contact-wrapper{
    max-width: 820px !important;
    width: 100%;
    margin: 0 auto;
}
#contact .contact-wrapper .contact-form{
    padding: 0 !important;
}
#contact .contact-wrapper .contact-form .group-form-fields{
    gap: 18px !important;
    margin: 0 0 40px !important;
}
#contact .contact-wrapper .contact-form label{
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.02em;
    color: #1A2C44;
    margin: 0 0 10px;
}
#contact .contact-wrapper .contact-form input{
    width: 100%;
    padding: 20px;
    font-size: 16px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    letter-spacing: 0.02em;
    line-height: 1.75;
    color: #1A2C44;
    background-color: #fff;
    border: none !important;
    box-shadow: none !important;
}
#contact .contact-wrapper .contact-form .text-area{
    margin: 0 0 55px;
}
#contact .contact-wrapper .contact-form textarea{
    color: #1A2C44;
    background-color: #fff;
    height: 400px !important;
    border: none !important;
    box-shadow: none !important;
}
#contact .contact-wrapper .contact-form .info-bottom{
    display: flex;
    align-items: center;
    justify-content: center;
}
#contact .contact-wrapper .contact-form .info-bottom .button{
    max-width: 400px;
    width: 100%;
    height: 65px;
    margin: 0 auto;
    font-size: 16px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 600;
    text-align: center;
    letter-spacing: 0;
    line-height: 1.67;
    color: #fff;
    background-color: #0052B7 !important;
    border: 1px solid #0052B7;
    border-radius: 5px;
}
#contact .contact-wrapper .contact-form .info-bottom .button:hover{
    color: #0052B7;
    background-color: #fff;
}
@media only screen and (max-width: 768px) {
    #contact{
        padding: 10.66666666668vw 0 16vw !important;
    }
    #contact .note{
        font-size: 4vw;
        line-height: 1.87;
        margin: 0 auto 10.66666666666668vw;
    }
    #contact .contact-wrapper{
        max-width: none !important;
    }
    #contact .contact-wrapper .contact-form .group-form-fields{
        gap: 0 !important;
        margin: 0 0 10.66666666666668vw !important;
    }
    #contact .contact-wrapper .contact-form label{
        font-size: 4vw;
        margin: 0 0 4vw;
    }
    #contact .contact-wrapper .contact-form input{
        padding: 4vw;
        font-size: 4.26666666666666667vw;
        line-height: 1.75;
    }
    #contact .contact-wrapper .contact-form .field-form{
        margin: 0 0 10.66666666666668vw;
    }
    #contact .contact-wrapper .contact-form .text-area{
        margin: 0 0 10.66666666666668vw;
    }
    #contact .contact-wrapper .contact-form textarea{
        height: 74.66666666666667vw !important;
    }
    #contact .contact-wrapper .contact-form .info-bottom .button{
        max-width: 80vw;
        height: 12vw;
        font-size: 3.7333333333333334vw;
    }
}

/* popup表示 */
#shopify-section-sections--26138079330615__age_verification_6eB3Tn .newsletter-content{
    background-color: #FFFFFF;
}
#shopify-section-sections--26138079330615__age_verification_6eB3Tn .newsletter-content .popup h3{
    font-size: 25px;
    font-family: "Albert Sans", sans-serif !important;
    font-weight: 600;
    text-align: center;
    letter-spacing: 0.02em;
    color: #0052B7;
    margin: 0 auto 36px;
}
#shopify-section-sections--26138079330615__age_verification_6eB3Tn .newsletter-content .popup p{
    font-size: 15px;
    font-family: "Albert Sans", sans-serif !important;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.02em;
    line-height: 1.98;
    margin: 0 0 40px;
    color: #1A2C44;
}
#shopify-section-sections--26138079330615__age_verification_6eB3Tn .newsletter-content .yes-btn{
    font-size: 16px;
    font-family: "Albert Sans", sans-serif !important;
    font-weight: 600;
    text-align: center;
    letter-spacing: 0.02em;
    margin: 0 0 12px !important;
    color: #fff;
    background-color: #1542AC;
    border: 1px solid #707070;
}
#shopify-section-sections--26138079330615__age_verification_6eB3Tn .newsletter-content .yes-btn:hover{
    color: #1542AC;
    background-color: #fff;
    border: 1px solid #1542AC;
}
#shopify-section-sections--26138079330615__age_verification_6eB3Tn .newsletter-content .no-btn{
    font-size: 16px;
    font-family: "Albert Sans", sans-serif !important;
    font-weight: 600;
    text-align: center;
    letter-spacing: 0.02em;
    color: #0052B7;
    background-color: #fff;
    border: 1px solid #0052B7;
}
#shopify-section-sections--26138079330615__age_verification_6eB3Tn .newsletter-content .no-btn::before{
    background-color: #0052B7 !important;
}
#shopify-section-sections--26138079330615__age_verification_6eB3Tn .newsletter-content .no-btn:hover{
    color: #fff !important;
    background-color: #0052B7 !important;
}

/* カート関連 */
#shopify-section-template--26138078773559__cart-items{
    padding: 80px 0 0;
}
@media only screen and (max-width: 768px) {
    #shopify-section-template--26138078773559__cart-items{
        padding: 16vw 0 0;
    }
}

/* お気に入り機能 */
#shopify-section-template--26138079199543__main .content{
    background: #fff;
}
#shopify-section-template--26138079199543__main #swym-wishlist-render-container{
    padding: 40px 0 60px;
}

#collections-ctt #product-list .collections .product-filter .category-menu li a{
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.08em;
    padding: 0;
    color: #1C1612;
}
#collections-ctt #product-list .collections .product-filter .category-menu li a::before{
    content: "";
    width: 20px;
    height: 20px;
    background: #fff;
    border: 1px solid #2F231B;
}
#collections-ctt #product-list .collections .product-filter .category-menu li a:hover{
    opacity: 1;
}

#collections-ctt #product-list .collections .product-filter .filter-item.js-ready:not(.show-all) .item-list li:nth-child(n+11){
  display:none;
}
#collections-ctt #product-list .collections .product-filter .filter-item.show-all .item-list li:nth-child(n+11){
  display: list-item;
}
#collections-ctt #product-list .collections .product-filter .filter-more{
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.02em;
    line-height: 1.45;
    padding: 0 5px;
    margin: 0;
    color: #0052B7;
    background: none;
    border-bottom: 1px solid #0052B7;
    cursor: pointer;
}
#collections-ctt #product-list .collections .product-filter .filter-more::before{
    content: "+";
    font-size: 25px;
    font-weight: 500;
    letter-spacing: 0.01em;
    color: #0052B7;
}
