.select2.select2-container.select2-container--default{z-index:1}nav.top_menu>ul>li{padding:0 2px}.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal{margin:10px}.coupon-notice{background:#f7f5ee;border-left:4px solid #7c6825;margin:10px 0 14px;padding:10px 14px;font-size:14px}.coupon-code{color:#7c6825;font-weight:700}.coupon-limit{color:#888;margin-top:4px;font-size:11px}.main-side.woocommerce.page#content{width:60%}#rh_woo_mbl_sidebar.rh-content-wrap.clearfix .sidebar{padding-top:250px}.product-type-woosb .rh-300-content-area{float:left!important;width:77%!important}.product-type-woosb .rh-300-sidebar{float:right!important;width:22%!important;margin-bottom:30px!important}.fix-add-to-cart-btn .add_to_cart_button{background-color:#440260;padding-top:8px;padding-bottom:8px}.fix-add-to-cart-btn .add_to_cart_button:hover{background-color:#29002d}body.single-product #rh_latest_compare-1{display:none}
#customer_login{padding:125px}@media (width<=767px){#customer_login{padding:50px}}.woocommerce-account .password-input{width:100%;display:block;position:relative}.woocommerce-account .password-input input{padding-right:45px!important}.woocommerce-account .show-password-input{cursor:pointer;z-index:5;top:50%;right:12px;transform:translateY(-50%);width:28px!important;min-width:28px!important;height:28px!important;box-shadow:none!important;background:0 0!important;border:none!important;margin:0!important;padding:0!important;position:absolute!important}.woocommerce-account .show-password-input:after{content:"早";color:#3b0056;font-size:16px;line-height:28px}
.elementor-menu-cart__footer-buttons .elementor-button--checkout{font-size:13px;font-weight:700!important}
:root{
    --js-login-purple:#4a0a68;
    --js-login-purple-deep:#2f0b43;
    --js-login-purple-soft:#f5eef9;
    --js-login-ink:#241b2a;
    --js-login-muted:#766c7d;
    --js-login-line:#e9e2ed;
    --js-login-surface:#ffffff;
    --js-login-field:#fcfbfd;
}

/* ---------------------------------------------------------
   POPUP CARD
--------------------------------------------------------- */

.rehub-login-popup{
    box-sizing:border-box!important;
    width:min(92vw,480px)!important;
    max-width:480px!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    max-height:calc(100vh - 48px)!important;
    margin:0 auto!important;
    padding:34px 38px 30px!important;
    color:var(--js-login-ink)!important;
    background:
        radial-gradient(circle at 100% 0,rgba(112,31,151,.055),transparent 31%),
        var(--js-login-surface)!important;
    border:1px solid rgba(74,10,104,.10)!important;
    border-radius:20px!important;
    overflow:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    box-shadow:
        0 26px 70px rgba(31,11,45,.18),
        0 5px 18px rgba(31,11,45,.07)!important;
}

/* Remove old float/clearfix behavior inside the modal. */
.rehub-login-popup,
.rehub-login-popup *{
    box-sizing:border-box!important;
}

.rehub-login-popup .re_title_inmodal{
    width:100%!important;
    margin:0 0 28px!important;
    padding:0!important;
    color:var(--js-login-ink)!important;
    text-align:center!important;
    letter-spacing:-.025em!important;
    font-size:28px!important;
    font-weight:750!important;
    line-height:1.15!important;
}

/* ---------------------------------------------------------
   FORM
--------------------------------------------------------- */

.rehub-login-popup #rehub_login_form_modal{
    width:100%!important;
    margin:0!important;
    padding:0!important;
}

.rehub-login-popup #rehub_login_form_modal .re-form-group{
    width:100%!important;
    margin:0 0 20px!important;
    padding:0!important;
    position:relative!important;
}

.rehub-login-popup #rehub_login_form_modal .re-form-group:last-of-type{
    margin-bottom:0!important;
}

.rehub-login-popup #rehub_login_form_modal label{
    display:block!important;
    width:100%!important;
    margin:0 0 8px!important;
    padding:0!important;
    color:var(--js-login-ink)!important;
    font-size:13px!important;
    font-weight:800!important;
    line-height:1.25!important;
}

.rehub-login-popup #rehub_login_form_modal .re-form-input,
.rehub-login-popup #rehub_login_form_modal input[type="text"],
.rehub-login-popup #rehub_login_form_modal input[type="password"],
.rehub-login-popup #rehub_login_form_modal input[type="email"]{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:48px!important;
    min-height:48px!important;
    margin:0!important;
    padding:0 14px!important;
    color:var(--js-login-ink)!important;
    background:var(--js-login-field)!important;
    border:1px solid var(--js-login-line)!important;
    border-radius:10px!important;
    outline:0!important;
    font-size:14px!important;
    font-weight:500!important;
    line-height:48px!important;
    transition:
        border-color .17s ease,
        box-shadow .17s ease,
        background .17s ease!important;
    box-shadow:
        inset 0 1px 2px rgba(31,11,45,.025)!important;
}

.rehub-login-popup #rehub_login_form_modal .re-form-input:hover,
.rehub-login-popup #rehub_login_form_modal input[type="text"]:hover,
.rehub-login-popup #rehub_login_form_modal input[type="password"]:hover,
.rehub-login-popup #rehub_login_form_modal input[type="email"]:hover{
    border-color:rgba(74,10,104,.24)!important;
}

.rehub-login-popup #rehub_login_form_modal .re-form-input:focus,
.rehub-login-popup #rehub_login_form_modal input[type="text"]:focus,
.rehub-login-popup #rehub_login_form_modal input[type="password"]:focus,
.rehub-login-popup #rehub_login_form_modal input[type="email"]:focus{
    background:#fff!important;
    border-color:rgba(74,10,104,.60)!important;
    box-shadow:
        0 0 0 3px rgba(74,10,104,.08),
        inset 0 1px 2px rgba(31,11,45,.02)!important;
}

/* Password reset link sits neatly below the password field. */
.rehub-login-popup #rehub_login_form_modal a.alignright{
    float:none!important;
    display:block!important;
    width:max-content!important;
    max-width:100%!important;
    margin:9px 0 0 auto!important;
    padding:0!important;
    color:var(--js-login-purple)!important;
    text-align:right!important;
    font-size:12.5px!important;
    font-weight:650!important;
    line-height:1.3!important;
    text-decoration:none!important;
}

.rehub-login-popup #rehub_login_form_modal a.alignright:hover{
    color:var(--js-login-purple-deep)!important;
    text-decoration:underline!important;
    text-underline-offset:3px!important;
}

/* ---------------------------------------------------------
   REMEMBER ME
--------------------------------------------------------- */

.rehub-login-popup #rehub_login_form_modal label[for="rehub_remember"]{
    display:inline-flex!important;
    width:auto!important;
    max-width:100%!important;
    align-items:center!important;
    gap:9px!important;
    margin:0!important;
    color:var(--js-login-ink)!important;
    cursor:pointer!important;
    font-size:13px!important;
    font-weight:700!important;
    line-height:1.2!important;
}

.rehub-login-popup #rehub_remember{
    -webkit-appearance:none!important;
    appearance:none!important;
    flex:0 0 17px!important;
    width:17px!important;
    min-width:17px!important;
    height:17px!important;
    min-height:17px!important;
    margin:0!important;
    padding:0!important;
    cursor:pointer!important;
    background:#fff!important;
    border:1.5px solid #cfc5d5!important;
    border-radius:4px!important;
    position:relative!important;
    box-shadow:none!important;
}

.rehub-login-popup #rehub_remember:checked{
    background:linear-gradient(135deg,#3b0753 0%,#5a0c7a 55%,#7417a0 100%)!important;
    border-color:var(--js-login-purple)!important;
}

.rehub-login-popup #rehub_remember:checked:after{
    content:""!important;
    display:block!important;
    width:4px!important;
    height:8px!important;
    border:solid #fff!important;
    border-width:0 2px 2px 0!important;
    position:absolute!important;
    top:2px!important;
    left:5px!important;
    transform:rotate(45deg)!important;
}

/* ---------------------------------------------------------
   LOGIN BUTTON
--------------------------------------------------------- */

.rehub-login-popup #rehub_login_form_modal button[type="submit"],
.rehub-login-popup #rehub_login_form_modal .rehub_main_btn{
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:48px!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0!important;
    padding:0 18px!important;
    color:#fff!important;
    background:
        radial-gradient(circle at 20% 0,rgba(255,255,255,.18),transparent 34%),
        linear-gradient(135deg,#351047 0%,#4a0a68 54%,#741f98 100%)!important;
    border:0!important;
    border-radius:10px!important;
    cursor:pointer!important;
    text-align:center!important;
    text-transform:none!important;
    letter-spacing:.01em!important;
    font-size:14px!important;
    font-weight:850!important;
    line-height:1!important;
    transition:
        transform .17s ease,
        box-shadow .17s ease,
        filter .17s ease!important;
    box-shadow:
        0 11px 24px rgba(74,10,104,.22),
        inset 0 1px rgba(255,255,255,.18)!important;
}

.rehub-login-popup #rehub_login_form_modal button[type="submit"]:hover,
.rehub-login-popup #rehub_login_form_modal .rehub_main_btn:hover{
    transform:translateY(-1px)!important;
    filter:saturate(1.04)!important;
    box-shadow:
        0 14px 30px rgba(74,10,104,.28),
        inset 0 1px rgba(255,255,255,.20)!important;
}

/* ---------------------------------------------------------
   ERRORS
--------------------------------------------------------- */

.rehub-login-popup .rehub-errors{
    width:100%!important;
    margin:14px 0 0!important;
    padding:0!important;
}

.rehub-login-popup .rehub-errors:not(:empty){
    padding:10px 12px!important;
    color:#9b3142!important;
    background:#fff3f5!important;
    border:1px solid #f1cfd5!important;
    border-radius:8px!important;
    font-size:12px!important;
    line-height:1.4!important;
}

/* ---------------------------------------------------------
   SIGN-UP FOOTER
--------------------------------------------------------- */

.rehub-login-popup .rehub-login-popup-footer{
    width:auto!important;
    margin:28px -38px -30px!important;
    padding:21px 38px!important;
    color:var(--js-login-muted)!important;
    background:
        linear-gradient(180deg,#fbf9fc 0%,#f7f2fa 100%)!important;
    border-top:1px solid var(--js-login-line)!important;
    border-radius:0 0 20px 20px!important;
    text-align:center!important;
    font-size:13px!important;
    font-weight:500!important;
    line-height:1.4!important;
}

.rehub-login-popup .rehub-login-popup-footer .act-rehub-login-popup,
.rehub-login-popup .rehub-login-popup-footer .color_link{
    color:var(--js-login-purple)!important;
    cursor:pointer!important;
    font-weight:800!important;
    text-decoration:none!important;
}

.rehub-login-popup .rehub-login-popup-footer .act-rehub-login-popup:hover,
.rehub-login-popup .rehub-login-popup-footer .color_link:hover{
    color:var(--js-login-purple-deep)!important;
    text-decoration:underline!important;
    text-underline-offset:3px!important;
}

/* ---------------------------------------------------------
   TABLET
--------------------------------------------------------- */

@media (width<=1024px){
    .rehub-login-popup{
        width:min(92vw,460px)!important;
        padding:30px 32px 26px!important;
        border-radius:18px!important;
    }

    .rehub-login-popup .rehub-login-popup-footer{
        margin:26px -32px -26px!important;
        padding:19px 32px!important;
        border-radius:0 0 18px 18px!important;
    }
}

/* ---------------------------------------------------------
   MOBILE
--------------------------------------------------------- */

@media (width<=767px){
    .rehub-login-popup{
        width:calc(100vw - 24px)!important;
        max-width:420px!important;
        height:auto!important;
        min-height:0!important;
        max-height:calc(100dvh - 36px)!important;
        margin:0 auto!important;
        padding:24px 18px 20px!important;
        border-radius:18px!important;
        overflow:auto!important;
        box-shadow:
            0 20px 50px rgba(31,11,45,.19),
            0 4px 14px rgba(31,11,45,.07)!important;
    }

    .rehub-login-popup .re_title_inmodal{
        margin-bottom:22px!important;
        font-size:24px!important;
        font-weight:750!important;
    }

    .rehub-login-popup #rehub_login_form_modal .re-form-group{
        margin-bottom:17px!important;
    }

    .rehub-login-popup #rehub_login_form_modal label{
        margin-bottom:7px!important;
        font-size:12.5px!important;
    }

    .rehub-login-popup #rehub_login_form_modal .re-form-input,
    .rehub-login-popup #rehub_login_form_modal input[type="text"],
    .rehub-login-popup #rehub_login_form_modal input[type="password"],
    .rehub-login-popup #rehub_login_form_modal input[type="email"]{
        height:46px!important;
        min-height:46px!important;
        padding:0 13px!important;
        border-radius:9px!important;
        font-size:16px!important;
        line-height:46px!important;
    }

    .rehub-login-popup #rehub_login_form_modal a.alignright{
        margin-top:8px!important;
        font-size:12px!important;
    }

    .rehub-login-popup #rehub_login_form_modal label[for="rehub_remember"]{
        font-size:12.5px!important;
    }

    .rehub-login-popup #rehub_login_form_modal button[type="submit"],
    .rehub-login-popup #rehub_login_form_modal .rehub_main_btn{
        min-height:46px!important;
        border-radius:9px!important;
        font-size:13.5px!important;
    }

    .rehub-login-popup .rehub-login-popup-footer{
        margin:24px -18px -20px!important;
        padding:18px 18px 19px!important;
        border-radius:0 0 18px 18px!important;
        font-size:12.5px!important;
    }
}

/* Very small phones */
@media (width<=390px){
    .rehub-login-popup{
        width:calc(100vw - 16px)!important;
        padding:22px 14px 18px!important;
        border-radius:16px!important;
    }

    .rehub-login-popup .re_title_inmodal{
        margin-bottom:19px!important;
        font-size:22px!important;
    }

    .rehub-login-popup .rehub-login-popup-footer{
        margin:22px -14px -18px!important;
        padding:17px 14px!important;
        border-radius:0 0 16px 16px!important;
    }
}

/* Avoid motion for users who request reduced motion. */
@media (prefers-reduced-motion:reduce){
    .rehub-login-popup *,
    .rehub-login-popup *:before,
    .rehub-login-popup *:after{
        transition:none!important;
        animation:none!important;
    }
}


/* ---------------------------------------------------------
   REHUB / PGWMODAL OUTER WHITE SHELL
   PERFORMANCE-SAFE CSS-ONLY FIX

   ReHub opens this login popup through PgwModal. PgwModal paints
   its own .pm-body and .pm-content white behind our actual
   .rehub-login-popup card.

   We only make those two known outer layers transparent.
   No MutationObserver, no polling, no resize scanning, no DOM walk.
--------------------------------------------------------- */

#pgwModal.re-user-popup-wrap .pm-body,
.re-user-popup-wrap .pm-body{
    background-color:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
}

#pgwModal.re-user-popup-wrap .pm-content,
.re-user-popup-wrap .pm-content{
    background-color:transparent!important;
    background-image:none!important;
}

/*
 * Keep the actual Japan Shoppy login card white.
 * This intentionally overrides only the real form card.
 */
#pgwModal.re-user-popup-wrap .rehub-login-popup,
.re-user-popup-wrap .rehub-login-popup{
    background:
        radial-gradient(circle at 100% 0,rgba(112,31,151,.055),transparent 31%),
        #ffffff!important;
}

/*
 * Do not touch #pgwModalBackdrop / .pgwModalBackdrop.
 * That remains the dark page overlay behind the modal.
 */