@charset "UTF-8";
/*===== Google Fonts =====*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@200;300;400;500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap");

/*Theme Set*/
:root {
    --hint_bg: #666666;
    --hint_color: #ffffff;
}
html,
body {
    height: 100%;
}

h1.no-mb,
h2.no-mb,
h3.no-mb,
h4.no-mb,
h5.no-mb,
h6.no-mb {
    margin-bottom: 0;
}

.wrap {
    flex-grow: 1;
}
.wrap.min_h100 {
    min-height: 100% !important;
}

.security_body {
    margin-bottom: 20px;
}
.security_desc {
    font-size: 12px;
    text-align: right;
    float: right;
}
.security_hint {
    font-size: 12px;
    line-height: 25px;
}
.icon_security {
    width: 16px;
    height: 16px;
}
.icon_security_level {
    width: 100%;
}

.main {
	padding-top:207px;
    padding-bottom: 104px;
}
@media(max-width:1199px){
.main {
	padding-top:123px;
}
}
@media(max-width:767px){
.main {
	padding-top:124px;
	padding-bottom: 56px;
}
}
.main2 {
    overflow: auto;
    padding-bottom: 310px;
}
.main3 {
    overflow: auto;
    padding-bottom: 50px;
}
.main.product {
    overflow: auto;
    padding-bottom: 350px;
}
.menu-container {
    padding-top: 60px;
}
@media (max-width: 991px) {
    .menu-container {
        padding-top: 0px;
    }
}
.social-area {
    display: inline-flex;
    flex-wrap:wrap;
    gap: 8px;
}
.social-area .footer__list {
    margin-bottom: 0;
}
.clearfix {
    clear: both;
}
.iotec-error {
    color: #af7d27;
    border-color: #e0b252;
    background-color: transparent;
}
.iotec-error a {
    color: #af7d27;
    text-decoration: underline;
}
.iotec-error a:hover {
    color: #af7d27;
    text-decoration: underline;
}

.login_error_msg_show {
    display: static;
}

.p_hint_div_v1 {
    position: absolute;
    width: 20%;
    z-index: 65536;
    font-size: 1rem;
}

.login_error_msg_hide {
    display: none;
}

.iotec-error {
    border: 2px solid;
    border-top-color: currentcolor;
    border-right-color: currentcolor;
    border-bottom-color: currentcolor;
    border-left-color: currentcolor;
    border-radius: 0;
    overflow: hidden;
    margin: 0 0 20px 0;
    margin-right: 0px;
    margin-left: 0px;
    padding: 14px 25px 14px 55px;
    line-height: 1.4;
    position: relative;
    font-size: 14px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/* ======= PRELOADER ========== */
.preloaderjs .spinner {
    display: none !important;
}

.preloaderjs#page-preloader {
    background: rgba(255, 255, 255, 0.6) !important;
}

#page-preloader {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.7) !important;
    z-index: 100500000000;
}
#page-preloader > .wrapper {
    width: 100%;
    text-align: center;
    margin-top: 20rem;
}
.circle {
    color: #fff;
    font-size: 10px;
    display: inline-block;
    width: 15px;
    height: 15px;
    background-color: #fcdc29;
    border-radius: 50%;
    animation: loading 1.5s cubic-bezier(0.8, 0.5, 0.2, 1.4) infinite;
    transform-origin: bottom center;
    position: relative;
}
@keyframes loading {
    0% {
        transform: translateY(0px);
        background-color: var(--header_sub_bg_color);
    }
    50% {
        transform: translateY(50px);
        background-color: #ef584a;
    }
    100% {
        transform: translateY(0px);
        background-color: var(--header_sub_bg_color);
    }
}
.circle-1 {
    animation-delay: 0.1s;
}
.circle-2 {
    animation-delay: 0.2s;
}
.circle-3 {
    animation-delay: 0.3s;
}
.circle-4 {
    animation-delay: 0.4s;
}
.circle-5 {
    animation-delay: 0.5s;
}
.circle-6 {
    animation-delay: 0.6s;
}
.circle-7 {
    animation-delay: 0.7s;
}
.circle-8 {
    animation-delay: 0.8s;
}
@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes spin {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
/*****************************
01 - Base - Default
*****************************/
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,600;0,700;0,800;1,300;1,400;1,600;1,700;1,800&display=swap");
* {
    margin: 0;
    padding: 0;
    word-wrap: break-word;
    outline: none;
}
*,
*::after,
*::before {
    box-sizing: border-box;
}
html,
body {
    height: 100%;
}
body {
    font-family: "Roboto", "Apple Color Emoji","Noto Sans TC", sans-serif;
    font-weight: 400;
    line-height: 1.6;
    font-size: 14px;
    color: #3B3B3B;
    display: flex;
    flex-direction: column;
}

dl,
ol,
ul {
    margin-top: 0;
    margin-bottom: 0;
    padding-left: 16px;
    list-style-type:none;
}
.article ol{
  list-style-type: decimal;
}
.article ul {
  list-style-type: disc;
}


a {
    color: #3B3B3B;
    text-decoration: none;
    cursor: pointer;
}
a:hover {
    color: #FF3C74;
}
.underline{
    text-decoration:underline !important;
}
.underline:hover {
    text-decoration: underline !important;
}

i {
    font-size: 16px;
}

* button {
    border: none;
    background: transparent;
    outline: none !important;
}
.img-responsive {
    width: 100%;
    height: auto;
}

.border-around {
    border: 1px solid #e0e0e0;
    border-radius: 3px;
}

.list-space--small li {
    margin-bottom: 10px;
    margin-right: 5px;
}
.list-space--small li:last-child {
    margin-bottom: 0;
}

.pos-relative {
    position: relative !important;
}
.pr {
    position: relative !important;
}
.pos-absolute {
    position: absolute !important;
}

.overflow-hidden {
    overflow: hidden;
}

.float-left {
    float: left;
}

.float-right {
    float: right;
}

.float-grid-2 {
    width: 50% !important;
}

.float-grid-3 {
    width: 100%;
}
@media (min-width: 576px) {
    .float-grid-3 {
        width: 50%;
    }
}
@media (min-width: 768px) {
    .float-grid-3 {
        width: 50%;
    }
}
@media (min-width: 992px) {
    .float-grid-3 {
        width: 33.3333%;
    }
}

.float-20-per {
    width: 20%;
}

.float-80-per {
    width: 80%;
}

.gray-bg.p-tb-100 {
    padding-top: 60px;
    padding-bottom: 60px;
}
@media (min-width: 768px) {
    .gray-bg.p-tb-100 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
}
@media (min-width: 992px) {
    .gray-bg.p-tb-100 {
        padding-top: 100px;
        padding-bottom: 100px;
    }
}

.gray-bg.m-t-100 {
    margin-top: 50px;
}
@media (min-width: 768px) {
    .gray-bg.m-t-100 {
        margin-top: 70px;
    }
}
@media (min-width: 992px) {
    .gray-bg.m-t-100 {
        margin-top: 90px;
    }
}

/*****************************
02 - Base - Color
*****************************/
.gray-bg {
    background-color: #f5f5f5;
}

.pink-bg {
    background:var(--header_link_hover_color,#ff3c74);
}
.pink-color {
    color:var(--header_link_hover_color,#ff3c74);
}
.white-color {
    color: #fff !important;
}

.black-color {
    color:var(--header_main_f_color,#3B3B3B) !important;
}

.yellow-color {
    color: #fdd835 !important;
}

.yellow-bg {
    background-color: #fdd835 !important;
}

.white-bg {
    background: #fff !important;
}

.dark-red-color {
    color: #D1254E;
}

.red-color {
    color:var(--header_link_hover_color,#ff3c74);
}
.gray-color {
    color: #999999 !important;
}

.title--white {
    color: #fff;
}
.section-content {
    position: relative;
}
.section-content__title {
    font-size: 22px;
    line-height: 1.6;
    color:var(--header_main_f_color,#3B3B3B);
    display: inline-flex;
    align-items: baseline;
}
.section-content__title > h1 {
    font-size: 1.2rem;
}
.section-content__title span {
    margin-left: 10px;
    font-size: 22px;
    font-weight: 400;
}
.topic-block .section-content__title > h1 {
    margin: 50px 10px 0;
}
@media (max-width: 767px) {
    .section-content__title .float_left {
        float: left;
    }
    .section-content__title > h1 {
        font-size: 1.9rem;
        float: left;
        text-align: left;
        word-break: break-all;
        line-height: 1.6;
    }
    .topic-block .section-content__title > h1 {
        margin: 30px 10px 0;
        text-align: center;
        width: 100%;
    }
}
@media (max-width: 480px) {
    .section-content__title > h1 {
        font-size: 1.5rem;
    }
}
.section-content--border {
    padding-bottom: 28px;
    border-bottom: 1px solid #ddd;
}
@media (min-width: 992px) {
    .section-content--border {
        padding-bottom: 38px;
    }
}

.block-quote {
    margin-left: 80px;
    color: #666;
    background: #eef0f1;
    border-left: 5px solid var(--header_sub_bg_color);
    padding: 15px 30px;
    margin: 30px 0 30px 80px;
    text-align: justify;
    font-weight: 600;
    font-style: italic;
    line-height: 1.8;
    word-break: break-all;
}

.text--gray {
    color: #666;
}
.text-area {
    margin-bottom: 60px;
}
.text-area:last-child {
    margin-bottom: 0;
}
@media (min-width: 768px) {
    .text-area {
        margin-bottom: 80px;
    }
}
@media (min-width: 992px) {
    .text-area {
        margin-bottom: 100px;
    }
}
.text-area h5 {
    margin-bottom: 30px;
}

/*****************************
05 - Component - Button
*****************************/
.btn,
input.btn {
    display: inline-flex;
    justify-content:center;
    align-items:center;
    outline: none;
    cursor: pointer;
    word-break: keep-all;
    white-space:nowrap;
    color: #ffffff;
    border: 0;
    background:linear-gradient(to bottom, #ff769d 0%, #ff3c74 100%);
    line-height: 0; /* 本來是0 我改1 byCM*//* 先改回0 不然v14按鈕會跑版 by taka */
    padding: 8px 56px;
    height: 40px;
    font-size: 17px;
    font-weight:600;
}
@media(max-width:575px){
.btn {
    font-size: 12px;
    padding: 8px 24px;
}
}
input.btn {
	color:#ffffff!important;
}
.btn.width-auto{
	display: flex;
    align-items: center;
    justify-content: center;
}
.btn.btn--large.width-auto{
	padding:8px 104px;
	width:fit-content;
}
.btn:disabled {
    color:#C2C2C2!important;
    background: #F5F5F5;
    box-shadow: inset 0 0 0 1px #C2C2C2;
    opacity: 1;
    font-weight:500;
}
.btn:hover {
    color: #ffffff;
    opacity: 0.7;
}
.btn--font:hover {
    opacity: 0.7;
}
.btn--font i {
    font-size: 24px;
}
.btn:focus {
    box-shadow: none;
}
.btn--border {
    color: #ff3c74;
    box-shadow: inset 0 0 0 1px #ff3c74;
    background: transparent;
    line-height:0;
}
.btn--border:focus {
    color: #ff3c74;
    box-shadow: inset 0 0 0 1px #ff3c74;
}
.btn--border:hover {
    opacity: 0.7;
    color: #ff3c74;
    box-shadow: inset 0 0 0 1px #ff3c74;
}
input.btn--large,
.btn--large {
    padding: 8px 104px;
    height: 56px;
    font-size: 20px;
    line-height:30px;
}
.btn--small {
    padding: 4px 24px 3px;
    height: 31px;
    line-height:24px;
    font-size: 15px;
}
@media(max-width:767px){
.btn--small {
    padding: 1px 12px;
    height: 31px;
    line-height:28px;
    font-size: 12px;
}
}
.btn--xs {
    padding: 4px 12px;
    height: 26px;
    font-size: 12px;
}
.btn--border-white {
    color:var(--header_main_f_color,#3B3B3B);
    background: #dddddd;
    box-shadow: inset 0 0 0 1px #dddddd;
}
.btn--border-white.radius {
    border-radius: 30px;
}
.btn--box {
    display: inline-block;
    white-space:nowrap;
}
.btn--block {
    display: block;
}
.btn--radius {
    border-radius: 30px;
}
.btn--radius50 {
    border-radius: 50%;
}
.radius-0 {
    border-radius: 0 !important;
}
.radius-top0{
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}
.radius-5 {
    border-radius: 5px;
}
.radius-15 {
    border-radius: 15px;
}
.radius-16 {
    border-radius: 16px;
}
.bg-lightgray {
    background-color: rgb(240, 242, 247);
}

.btn--border-white.active {
    color: #fff;
    background: var(--header_sub_bg_color);
}
.btn--border-white01 {
    color: #FF769D;
    width: 45px;
    height: 45px;
}
.btn--border-white01:has(.color-red){
	background:#E2E2E2;
}
.btn--border-white01 .color-red{
	color: #ffffff!important;
}
.btn--border-white01:has(.color-red.heart-active) {
    background:linear-gradient(to bottom, #ff769d 0%, #ff3c74 100%);
	color: #ffffff;
}
.btn--border-white01 .color-red.heart-active{
	color: #ffffff!important;
}

.btn--border-white01.p-l-12{
	padding-left:13px;
}
.btn--border-white01 i {
    font-size: 20px;
}
.btn--border-white01:hover {
    opacity:0.7;
}
.btn--border-white01.active {
    color: var(--header_main_bg_color);
    background: #ffffff;
    border-color: #ffffff;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.15);
}
.btn--border-outline {
    color:var(--header_main_f_color,#3B3B3B);
    background: transparent;
    border: 2px solid #666666;
}
.btn--border-outline:hover {
    color: #fff;
    background: var(--header_link_hover_color);
    border: 2px solid var(--header_link_hover_color);
}
.btn--border-outline .active {
    color: #fff;
    background: var(--header_link_hover_color);
    border-color: var(--header_link_hover_color);
}
.btn--underline {
    padding-bottom: 3px;
    border-bottom: 1px solid;
}
.btn--underline-black {
    color:var(--header_main_f_color,#3B3B3B);
}
.btn--underline-black:hover {
    color: var(--header_link_hover_color);
}
.btn--large {
    padding: 12px 20px;
}
@media (min-width: 768px) {
    .btn--large {
        padding: 13px 25px;
    }
}
@media (min-width: 992px) {
    .btn--large {
        padding: 14px 35px;
    }
}
@media (min-width: 1200px) {
    .btn--large {
        padding: 15px 40px;
    }
}
.btn--medium {
    padding: 13px 40px;
}
@media (max-width: 375px) {
    .btn--small.s1 {
        padding: 5px 10px;
        font-size: 0.9rem !important;
    }
}
@media (max-width: 340px) {
    .btn--small.s1 {
        padding: 8px;
    }
}
.btn--small.p-style {
    padding: 7px 10px;
}
.btn--tiny {
    padding: 10px 20px;
}
.btn--white {
    background: #fff;
    color:var(--header_main_f_color,#3B3B3B) !important;
}
.btn--white-hover-black:hover {
    background: var(--header_main_f_color,#3B3B3B);
    color: #fff;
}
.btn--black {
    background: var(--header_main_f_color,#3B3B3B)  !important;
    color: #ffffff !important;
}
.btn--primary-border {
    background: #ffffff !important;
    color: var(--header_link_hover_color) !important;
    border: 1px solid var(--header_link_hover_color);
}
.btn--gray {
    background: #e0e0e0 !important;
    color: var(--header_main_f_color,#3B3B3B)  !important;
}
.btn--gray-hover-red:hover {
    background: var(--header_link_hover_color);
    color: #ffffff !important;
}
.btn--gray-hover-red:hover i {
    color: #ffffff !important;
}
@media (max-width: 480px) {
    .btn--gray-hover-red:hover {
        background: #e0e0e0 !important;
        color: var(--header_main_f_color,#3B3B3B)  !important;
    }
}
.btn--red {
    background: linear-gradient(to bottom, #ff769d 0%, #ff3c74 100%);
    color: #ffffff !important;
}
.btn--red-hover-red:hover {
    background: linear-gradient(to bottom, #ff769d 0%, #ff3c74 100%);
    color: #fff;
    opacity:0.7;
}
.btn--red-hover-black:hover {
    background: rgba(0, 0, 0, 0.9);
    color: #fff;
}
@media (max-width: 480px) {
    .btn--red-hover-red:hover {
        background: var(--header_link_hover_color);
        color: #fff;
    }
    .btn--red-hover-black:hover {
        background: var(--header_link_hover_color);
        color: #fff;
    }
}
.btn--uppercase {
    text-transform: uppercase;
}

button.btn--block {
    width: 100%;
}
.link--gray {
    color: #666;
    text-decoration: none !important;
    font-weight: 600;
}
.link--gray:hover {
    color: var(--header_link_hover_color);
}
.link--icon-left {
    display: inline-flex;
    align-items: center;
}
.link--icon-left i {
    margin-right: 10px;
}

.internal-link {
    color: #fff;
    margin-left: 30px;
    transition: all 0.3s ease;
}
.internal-link:hover {
    color: #f17b08;
}

/*****************************
06 - Component - Hero Slider
*****************************/
.hero {
    position: relative;
   /*NR照成手機跑版  overflow: hidden; */
}
.hero .hero-slider {
    position: relative;
    padding: 0;
    text-align: center;
}
.hero_h100 {
    position: relative;
    padding: 0;
    margin-top: 60px;
}
.hero .hero-slider img {
    width: 100%;
    height: auto;
}
#div_mobile_product_detail_img{
	width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
}
@media (max-width: 991px) {
    #div_mobile_product_detail_img img {
        max-width: 100%;
        margin: 0 auto;
    }
}
@media (min-width: 768px) {
    .hero .hero-slider img {
        margin: 0 auto;
        width: 100%;
    }
}
@media (max-width: 767px) {
    .hero_h100 {
        margin-top: 60px;
    }
}
.sub_img img {
    height: auto !important;
    max-width: 100% !important;
    filter: drop-shadow(0px 0px 5px rgba(255, 255, 255, 0.8));
}
.hero__content {
    position: absolute;
    top: 60%;
    left: 0;
    width: 100%;
    transform: translateY(-50%);
}
.hero__content h1 {
    font-size: 4rem;
    padding: 0.5rem 0 1.5rem;
    text-shadow: 0 0 0.1em #888888;
}
.hero__content h3 {
    font-size: 2rem;
    text-shadow: 0 0 0.1em #888888;
}
.hero__content h5 {
    font-size: 1.5rem;
    text-shadow: 0 0 0.1em #888888;
}
@media (max-width: 992px) {
    .hero__content h1 {
        font-size: 3.5rem;
        padding: 0.5rem 0 1.5rem;
    }
    .hero__content h3 {
        font-size: 1.5rem;
        font-weight: 300;
    }
    .hero__content h5 {
        font-size: 1.3rem;
        font-weight: 100;
    }
}
@media (max-width: 767px) {
    .hero__content h1 {
        font-size: 3rem;
        padding: 0.5rem 0 1.5rem;
    }
    .hero__content h3 {
        font-size: 1.2rem;
        font-weight: 300;
    }
    .hero__content h5 {
        font-size: 1rem;
        font-weight: 100;
    }
}
@media (max-width: 480px) {
    .hero__content h1 {
        font-size: 2rem;
        padding: 0.5rem 0 1.5rem;
    }
}
.hero__content .title--small.pos-relative {
    padding-left: 40px;
    margin-top: 27px;
}
@media (min-width: 768px) {
    .hero__content .title--small.pos-relative {
        margin-top: 32px;
    }
}
.hero__content .btn {
    margin-top: 30px;
}
@media (min-width: 768px) {
    .hero__content .btn {
        margin-top: 45px;
    }
}
.hero .slick-active .hero__content--inner .hero-title-1 {
    animation: animate-top 0.5s linear 0.2s backwards;
}
.hero .slick-active .hero__content--inner .hero-title-2 {
    animation: animate-top 0.5s linear 0.8s backwards;
}
/*****************************
06-1 - Component - Hero Slider
*****************************/
.hero2 {
    position: relative;
    overflow: hidden;
    margin-top: 100px;
}
.hero2 img {
    max-width: 100%;
    object-fit: cover;
    height: auto;
}
@media (min-width: 768px) {
    .hero2 img {
        margin: 0 auto;
        width: 100%;
        height: auto;
        padding: 0 !important;
    }
}
@media (max-width: 767px) {
    .hero2 {
        margin-top: 68px !important;
    }
    .hero2 iframe {
        width: 100%;
        height: 186px;
    }
}
/*****************************
08 - Component - Banner
*****************************/
.banner.m-t-100 {
    margin-top: 60px;
}
@media (min-width: 768px) {
    .banner.m-t-100 {
        margin-top: 80px;
    }
}
@media (min-width: 992px) {
    .banner.m-t-100 {
        margin-top: 100px;
    }
}
.banner .col-12 > .banner__box {
    margin-bottom: 30px;
}
@media (min-width: 768px) {
    .banner .col-12 > .banner__box {
        margin-bottom: 0px;
    }
    .banner .col-12:last-child > .banner__box {
        margin-bottom: 0;
    }
}
.banner__box {
    max-width: 100%;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.banner__box--single {
    margin-left: auto;
    margin-right: auto;
}
.banner__box--single-text-style-1 .btn {
    left: 50%;
    transform: translateX(-50%);
}
.banner__link {
    display: block;
}
.banner__img {
    width: 100%;
    height: auto;
    object-fit: cover;
}
.banner__content {
    padding: 0 20px;
}
@media (min-width: 1200px) {
    .banner__content {
        padding: 0 60px;
    }
}
.banner__content .btn {
    z-index: 9;
}
.banner__content--center {
    top: 50%;
    width: 100%;
    padding: 0 20%;
    transform: translateY(-50%);
}
.banner__title {
    line-height: 1;
    text-shadow: 0 0 0.1em #888888;
}
.banner__title--small {
    font-size: 16.666px;
}
@media (min-width: 992px) {
    .banner__title--small {
        font-size: 18px;
    }
}
@media (min-width: 1200px) {
    .banner__title--small {
        font-size: 30px;
    }
}
.banner__title--medium {
    font-size: 22px;
}
@media (min-width: 992px) {
    .banner__title--medium {
        font-size: 25px;
    }
}
@media (min-width: 1200px) {
    .banner__title--medium {
        font-size: 40px;
    }
}

/*****************************
09 - Component - Product
*****************************/
.product.m-t-100 {
    margin-top: 100px;
}
@media (max-width: 991px) {
    .product.m-t-100 {
        margin-top: 80px;
    }
}
@media (max-width: 767px) {
    .product.m-t-100 {
        margin-top: 40px;
    }
}
.product.m-b-100 {
    margin-bottom: 100px;
}
@media (max-width: 991px) {
    .product.m-b-100 {
        margin-bottom: 80px;
    }
}
@media (max-width: 767px) {
    .product.m-t-100 {
        margin-top: 40px;
    }
}
.product__img-nav--right {
    top: 10px;
    right: 0px;
    background: #fff;
    padding: 10px 15px;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    visibility: hidden;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.15);
    line-height: initial;
}
.product__img-nav--right li {
    margin-bottom: 5px;
}
.product__img-nav--right li a {
    display: inline-block;
    text-align: center;
    color: var(--header_main_f_color,#3B3B3B);
    transition: all 0.3s ease;
}
.product__img-nav--right li a:hover {
    color: var(--header_link_hover_color);
}
.product__img-box:hover .product__img-nav--right {
    right: 10px;
    opacity: 1;
    visibility: visible;
}

.product__img-area {
    position: relative;
    width: 100%;
    height: auto !important;
}
/* 商品卡頂天立地 */
.index-sale-p-layout .slick-slide > a,
.index-limited-block .slick-slide > a,
#div_init_product_limit_mbl .product__box > a,
.index-limited-quantity-block .slick-slide > a,
#div_init_product_rank .slick-slide > a,
.index-limited-quantity-block .product__box > a,
#div_init_product_recommend .product__box > a,
#div_product_list_append .product__box > a {
    display:contents;
}

/* 圖片不要吃點擊 */
.product__img-area img {
  pointer-events: none;
}
.product__img-area.p-10 {
	padding:0;
}
.product__img-area:hover .product__img-nav--right {
    right: 10px;
    opacity: 1;
    visibility: visible;
}
.product__tag {
    position: absolute;
    top: 10px;
    left: 10px;
    text-align: center;
    padding: 1px 8px;
    color: #fff;
    font-size: 13px;
    height: 50px;
    width: 50px;
    line-height: 47px;
    border-radius: 50%;
    font-weight: 500;
}
@media (max-width: 480px) {
    .product__tag {
        height: 40px;
        width: 40px;
        line-height: 40px;
        padding: 0;
    }
}
.product__btag {
    position: absolute;
    bottom: 0;
    left: 0;
    text-align: center;
    padding: 1px 8px;
    color: #fff;
    font-size: 12px;
}
.product__tag--store {
    background: #000000;
    font-size: 1rem !important;
    opacity: 0.6;
    padding: 10px;
    height: 40px;
    line-height: 20px;
}
@media (max-width: 991px) {
    .product__tag--store {
        font-size: 0.9rem !important;
        padding: 8px;
        height: 35px;
        line-height: 20px;
    }
}
@media (max-width: 480px) {
    .product__tag--store {
        font-size: 0.8rem !important;
        padding: 5px;
    }
}
.product__price-reg {
    display: flex;
    align-items: baseline;
    font-size: 20px;
    line-height: 25px;
    font-weight: 500;
}
@media(max-width:1199px){
	.product__price-reg {
	 align-self: end;
	}
}
.product__price-del{
	color:#999999;
	font-size:14px;
	font-weight:400;
}
.product__price-del span{
	text-decoration: line-through;
}
.product__price-del:not(:empty) {
    margin-right: 8px;
}
.product__price-del .small-font {
      font-size: 10px;
    }
.product__price-del b{
	font-weight:350;
}
.product__price-del .numFormat {
        font-size: 14px;
        font-weight:400;
    }
@media (max-width: 991px) {
    .product__price-del .numFormatl {
        font-size: 13px;
    }
    .product__price-reg {
        font-size: 18px;
        line-height:18px;
    }
}
@media (max-width: 575px) {
    .product__price-del .numFormat{
        font-size: 12px;
        transform:scale(0.92);
    }
    .product__price-reg {
        font-size: 16px;
    }
}
.product__price.ns1 > .product__price-del {
    font-size: 1.2rem;
    color: #a4a4a4;
    font-weight: 400;
    text-decoration: line-through;
    margin-right: 5px;
}
.product__price.ns1 > .product__price-reg {
    font-size: 2rem;
    font-weight: 400;
    color: #de6f6f;
}
.product__link {
    color:var(--header_main_f_color,#3B3B3B);
    font-size: 0.95rem;
    line-height: 1.3;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    display: -webkit-box;
    margin-bottom: 5px;
}
@media (max-width: 480px) {
    .product__link {
        font-size: 0.85rem;
    }
}
.product__link.row3 {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    white-space: normal;
    height: 60px;
    margin-bottom: 10px;
    overflow: hidden;
}
.product__brand {
    font-size: 1.2rem;
}
@media (max-width: 480px) {
    .product__brand {
        font-size: 0.9rem;
    }
}
.product__link:hover {
    color: var(--header_link_hover_color);
}

.product__desc {
  color: #777777;
  font-size: 15px;
  line-height: 24px;
}

.product__box {
    position: relative;
    background-color: rgb(255, 255, 255);
    box-shadow: 0px 1px 10px rgba(0, 0, 0, 0.1);
    cursor: pointer;
    justify-content: space-between;
    gap: 8px;
    padding: 8px;
    border-radius: 15px;
    overflow: hidden;
    margin: 0 10px;
    height:100%;
}
@media(max-width:767px){
	.product__box {
		box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.1);
	}
}

.product__box:hover{
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
}
.div_prdlist {
    margin-bottom:16px;
}
.div_prdlist .product__box{
    display: flex;
    flex-direction: column;
}
.div_prdlist .brand_title a{
    color: var(--header_main_bg_color);
}
@media(max-width:767px){
    .product__box {
        margin:0 4px;
    }
}
.product__box.p-5{
 	padding:10px!important;
 	}
.product__price__block div:empty{
	display:none;
}

/* 20251114 NR會出問題拿掉 針對手機版-page頁的價錢太長會被裁掉調整 */
@media(max-width:575px){
.product-default-slider-4grid-1rows.slick-slider .product__box {
    padding: 10px!important;
}
}
.product__box--border-hover {
    border: 2px solid #888;
    transition: all 0.3s ease;
    border-radius: 5px;
}
.product__box--border-hover:hover {
    border-color: var(--header_link_hover_color);
}
.product__box:hover .product__content--bottom {
    bottom: 0;
    opacity: 1;
    visibility: visible;
    align-items: center;
    font-size: 15px;
    position: absolute;
}
#cardp- .product__box .product__content--bottom {
    flex-direction: column;
}
#cardp- .product__box:hover .product__content--bottom {
    flex-direction: column;
    bottom: -8px;
}
#cardp- .topic-block {
    padding-bottom: 30px;
}
#cardp- .product__content--bottom {
    padding: 3px 0 4px;
}
#cardp- .product__content {
    overflow: visible;
}
#cardp- .product__price__block {
    margin-top: 10px;
}
@media (max-width: 380px) {
    .col_m0 {
        margin: 0 !important;
    }
    .col_p0 {
        padding: 0 !important;
    }
}
/*****************************
10 - Brand - Slider
*****************************/
.company-logo__area .slick-list {
    margin-left: -100px;
}
.company-logo__area .slick-slide {
    margin-left: 100px;
}
.company-logo__item {
    text-align: center;
}
.company-logo__link {
    display: block;
}
.company-logo__img {
    max-width: 100%;
    height: auto;
    transition: all 0.3s ease;
    opacity: 0.7;
}
.company-logo__img:hover {
    opacity: 1;
}
/*****************************
11 - Component - Modal
*****************************/

@media (min-width: 1200px) {
    .modal-dialog {
        min-width: 825px !important;
    }
}
@media (min-width: 576px) {
    .modal-md {
        max-width: 500px !important;
    }
    .modal-md.modal-dialog {
        min-width: 500px !important;
    }
    .modal-sm {
        max-width: 300px !important;
    }
    .modal-sm.modal-dialog {
        min-width: 300px !important;
        max-width: 540px !important;
    }
}
.modal-content {
    display: flex;
    flex-direction: column;
    max-height: 90vh;
}

.modal-body {
    flex: 1 1 auto;
    max-height: 65vh;
    overflow-y: auto;
}
#search-form .modal-body {
    overflow: visible;
}

.modal-footer {
    flex-shrink: 0;
    background: #ffffff;
    padding-top:8px;
}
.modal-footer{
    background: #ffffff;
    padding-top:8px;
}
/*****************************
12 - Component - Breadcrumb
*****************************/
.page-breadcrumb {
    background: #000000;
    text-align: center;
    padding: 70px 0 10px 0px;
    margin-bottom: 60px;
    font-size: 1rem;
}
@media (min-width: 768px) {
    .page-breadcrumb {
        margin-bottom: 80px;
    }
}
@media (min-width: 992px) {
    .page-breadcrumb {
        margin-bottom: 50px;
    }
}
.page-breadcrumb__menu {
    font-size: 1.3rem;
    color:var(--header_main_f_color,#3B3B3B);
}
.page-breadcrumb__nav {
    display: inline-block;
    margin-right: 10px;
    position: relative;
    color: #fff;
}
.page-breadcrumb__nav a {
    color: #fff;
    text-decoration: none;
}
.page-breadcrumb__nav a:hover {
    color: var(--header_link_hover_color);
}
.page-breadcrumb__nav.active {
    color: #e1e1e1;
}

/*****************************
13 - Component - Shop Sorting
*****************************/
.sort-box {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    font-size: 13px;
    flex-direction: column;
}
@media (min-width: 768px) {
    .sort-box {
        flex-direction: row;
        align-items: center;
    }
}
.sort-box__left,
.sort-box__right {
    display: flex;
    align-items: center;
}
.sort-box__left span,
.sort-box__right span {
    display: inline-block;
}
.sort-box__left {
    margin-bottom: 20px;
}
.sort-box__left span {
    margin-left: 55px;
}
@media (min-width: 768px) {
    .sort-box__left {
        margin-bottom: 0;
    }
}
.sort-box__right span {
    margin-right: 20px;
}
.sort-box__tab-list li {
    margin-right: 15px;
    display: inline-block;
}
.sort-box__tab-list li:last-child {
    margin-right: 0;
}

.sort-nav-link {
    display: block;
    font-size: 18px;
    text-decoration: none !important;
    color:var(--header_main_f_color,#3B3B3B);
    background: transparent;
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    border-radius: 50%;
    transition: all 0.3s ease;
}
.sort-nav-link:hover,
.sort-nav-link.active {
    color: #fff;
    background: var(--header_link_hover_color);
}

.select-sort {
    padding: 5px 100px 5px 15px;
    border-radius: 3px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.select-sort option {
    text-align: right;
    border: 1px solid #777;
    padding: 5px 15px;
    margin: 5px 0;
}

.shop-grid .product__box--default {
    transform: scale(0.3);
    transition: all 0.3s ease;
    background: #ffffff;
    padding-bottom: 10px;
    overflow: hidden;
}

.shop-grid.active .product__box--default {
    transform: scale(1);
}

.shop-list > .product__box--list {
    transform: translateX(100px);
    transition: all 0.5s ease;
}

.shop-list.active > .product__box--list {
    transform: translateX(0);
}

.product__box--list .product__img {
    margin: 0 auto;
    text-align: center;
    display: block;
}
/*****************************
14 - Component - Pagination
*****************************/
.page-pagination__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    overflow: hidden;
    align-items: center;
}
.page-pagination__link {
    display: block;
    min-width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    font-size: 16px;
    padding: 0 6px;
    border: unset;
}
.page-pagination__link.active {
    background: transparent;
    border: 1px solid var(--header_sub_bg_color);
    color: var(--header_sub_bg_color);
}
.page-pagination__link:hover {
    background: #f9f9f9 !important;
    border: 1px solid #f9f9f9 !important;
    color: var(--header_main_f_color) !important;
}
/*****************************
15 - Component - Sidebar Widget
*****************************/
.sidebar {
    margin-top: 60px;
}
@media (min-width: 768px) {
    .sidebar {
        margin-top: 80px;
    }
}
@media (min-width: 992px) {
    .sidebar {
        margin-top: 0px;
    }
}
.sidebar__widget {
    margin-bottom: 40px;
}
.sidebar__widget:last-child {
    margin-bottom: 0;
}
.sidebar__box {
    position: relative;
}
.sidebar__box::after {
    position: absolute;
    content: "";
    width: 60px;
    height: 2px;
    background-color: var(--header_sub_bg_color);
    bottom: -19.5px;
    left: 0;
}
.sidebar__box::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 1px;
    background-color: #e0e0e0;
    bottom: -20px;
    left: 0;
}
.sidebar__title {
    font-size: 18px;
    margin-bottom: 40px;
    text-transform: uppercase;
}
.sidebar__menu > li {
    margin-bottom: 10px;
}
.sidebar__menu > li:last-child {
    margin-bottom: 0;
}
.sidebar__menu-collapse-list:last-child .accordion__title {
    margin-bottom: 0;
}
.sidebar__post-img {
    width: 40%;
}
.sidebar__post-content {
    width: 60%;
    margin-left: 10px;
}
.sidebar__post-content a {
    font-size: 15px;
    word-wrap: break-word;
    font-weight: 500;
}
.sidebar__post-content span {
    font-size: 13px;
}
.sidebar__tag li {
    display: inline-block;
}
.sidebar__tag li a {
    border: 1px solid #cccccc;
    color:#3B3B3B;
    background: transparent;
}
.sidebar__tag li a:hover {
    border: 1px solid var(--header_link_hover_color);
    color: #ffffff;
}
.sidebar__menu-filter-list {
    margin-bottom: 10px;
}
.sidebar__menu-filter-list:last-child {
    margin-bottom: 0;
}

.accordion__title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
}
.accordion__category-list {
    border-top: 1px solid #e0e0e0;
}
.accordion__category-list li {
    padding-left: 5px;
    padding: 5px;
    display: block;
}
.accordion a {
    text-decoration: none !important;
    color:var(--header_main_f_color,#3B3B3B);
}
.accordion a:hover {
    color: var(--header_link_hover_color);
}

/*****************************
16 - Component - Gallery
*****************************/
.product-gallery-box {
    padding: 20px 5px 10px;
}
.slick-slide {
    padding: 10px;
}
.slick-slide .shop {
    text-align: center;
    font-size: 1.2rem;
    display: block;
    cursor: pointer;
}
.item .shop {
    text-align: center;
    font-size: 16px;
    line-height: 1.2;
    display: block;
    cursor: pointer;
}
@media (max-width: 480px) {
    .item .shop {
        font-size: 0.9rem;
    }
}
.slick-slide .brand {
    text-align: center;
    font-size: 1rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    cursor: pointer;
    width: 85%;
    margin: 20px auto 0;
}
@media (max-width: 480px) {
    .slick-slide .brand {
        width: 100%;
    }
}
.product-gallery-box__vertical {
    display: flex;
    align-items: center;
}
.product-gallery-box__tab-left {
    flex-direction: row-reverse;
}
.product-gallery-box .swiper-slide {
    height: 100% !important;
}

.product-gallery-box--gallery {
    float: left;
}

.gallery--right {
    width: 80%;
}
.gallery--left {
    width: 20%;
}
.product-image--large,
.product-image--large .square-block {
	border-radius:10px;
	overflow:hidden;
	position: relative;
    display: flex;
    align-items: center;
    object-position: center top;
}
.product-image--large .img-fluid {
    max-width: 100% !important;
}
.product-image--gallery .img-responsive {
    margin: 10px;
}

/*set a border on the images to prevent shifting*/
#gallery-zoom img {
    border: 2px solid #777;
}

/*Change the colour*/
.zoom-active img {
    border: 2px solid #333 !important;
}

.modal-product-image--thumb-horizontal,
.product-image--thumb-horizontal {
    margin-top: 20px;
}
.modal-product-image--thumb-horizontal .slick-list,
.product-image--thumb-horizontal .slick-list {
    margin-right: -10px;
}
.modal-product-image--thumb-horizontal .slick-slide,
.product-image--thumb-horizontal .slick-slide {
    margin-right: 10px;
}
.modal-product-image--thumb-vertical .slick-list,
.product-image--thumb-vertical .slick-list {
    margin-bottom: -10px;
}
.modal-product-image--thumb-vertical .slick-slide,
.product-image--thumb-vertical .slick-slide {
    margin-bottom: 10px;
}
.modal-product-image--thumb img,
.product-image--thumb img {
    cursor: pointer;
    border: 1px solid rgba(84, 101, 131, 0.2) !important;
    transition: all 0.3s ease;
    margin-right: 10px; /* 2022.04.01 */
}
.modal-product-image--thumb img:hover,
.product-image--thumb img:hover {
    border-color: var(--header_link_hover_color) !important;
}

/* 2022.04.11*/
.modal-product-image--thumb img.slick-current,
.product-image--thumb a.slick-current > img {
    border-color: var(--header_sub_bg_color) !important;
}

.text-reference {
    font-size: 15px;
    color: #666;
}

.product__stock {
    font-weight: 700;
    color: #777;
}
.product__stock--in {
    color: #62ab00;
}

.product-var {
    border-top: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    display: grid;
}
.product-var__item {
    margin-bottom: 24px;
}
.product-var__text {
    display: block;
    margin-bottom: 9px;
}

/*****************************
17 - Component - Tabstyle
*****************************/
.tablist li {
    position: relative;
}
.tablist--style-black .nav-link {
    color: #3B3B3B;
    margin-bottom: 20px;
    position: relative;
    justify-content: center;
}
@media (min-width: 768px) {
    .tablist--style-black .nav-link {
        margin-bottom: 0px;
    }
}

.tablist--style-black .nav-link.active,
.tablist--style-black .nav-link:hover {
    color:var(--header_main_f_color,#3B3B3B);
}
.tablist--style-black .nav-link.active::after,
.tablist--style-black .nav-link:hover::after {
    left: 0%;
    right: 0%;
    width: 100%;
}
@media (max-width: 380px) {
    .tablist--style-title li > .nav-link {
        font-size: 1rem;
    }
}
.tablist--style-gap li:last-child > .nav-link {
    margin-right: 0;
}
.tablist--style-gap-20 li > .nav-link {
    margin-right: 20px;
}
.tablist--style-gap-30 li > .nav-link {
    margin-right: 30px;
}
.tablist--style-gap-70 li > .nav-link {
    margin: 0 30px;
}

.tab-content .tab-pane {
    display: block;
    height: 0;
    max-width: 100%;
    visibility: hidden;
    overflow: hidden;
    opacity: 0;
}

.tab-content .tab-pane.active {
    height: auto;
    visibility: visible;
    opacity: 1;
    overflow: visible;
}

.tab-animate-zoom .tab-pane {
    transform: translateY(-100px) scale(0.5);
    transition: all 0.5s ease;
}

.tab-animate-zoom .tab-pane.active {
    transform: translateY(0) scale(1);
}
.tab-content .tab-pane .row > *,
.tab-content .tab-pane .row {
    padding-right: calc(var(--bs-gutter-x) / 4);
    padding-left: calc(var(--bs-gutter-x) / 4);
}
/*****************************
18 - Component - Comment
*****************************/
.comment {
    padding: 0;
}
@media (min-width: 768px) {
    .comment {
        padding: 0px 20px 20px 20px;
    }
}
.comment__list {
    border-bottom: 1px solid #e0e0e0;
    padding-top: 20px;
    padding-bottom: 15px;
}
.comment__list:last-child {
    border-bottom: none;
}
.comment__list:first-child {
    padding-top: 0;
}
.comment__list > .comment__reply {
    margin-left: 0;
}
@media (min-width: 768px) {
    .comment__list > .comment__reply {
        margin-left: 100px;
    }
}
.comment__reply li {
    border-top: 1px solid #e0e0e0;
    padding-top: 20px;
    margin-top: 15px;
}
.comment__wrapper {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
}
@media (min-width: 576px) {
    .comment__wrapper {
        flex-direction: row;
    }
}
.comment__img {
    margin-right: 30px;
    margin-bottom: 20px;
    border-radius: 5px;
}
.comment__img img {
    width: 78px;
    height: 78px;
    border-radius: 5px;
}
.comment__name {
    font-weight: 600;
    margin-right: 10px;
}
.comment__content-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    flex-wrap: wrap;
}

/*****************************
19 - Component - Form
*****************************/
#form-additional-info {
    height: 60px;
    resize: none;
}
.form-box__single-group {
    display: flex;
    flex-direction: column;
    margin-top: 8px;
    width: 100%;
}
@media(max-width:575px){
.form-box__single-group {
    margin-top: 16px;
}
}
.form-box__single-group label {
    font-size: 14px;
    font-weight: 400;
}
@media(max-width:575px){
.form-box__single-group label {
    font-size: 12px;
}
}
.form-box__single-group input,
.form-box__single-group textarea,
.form-box__single-group select {
    border: 1px solid #E2E2E2;
    height: 44px;
    line-height: 18px;
    padding: 8px 12px;
    width: 100%;
    border-radius: 8px;
    outline: none;
    font-size: 18px;
    color:#3B3B3B;
}
.form-box__single-group textarea{
    line-height: 22px;
}
@media(max-width:991px){
.form-box__single-group input,
.form-box__single-group textarea,
.form-box__single-group select {
    font-size: 16px!important;
}
}
@media(max-width:767px){
	.form-box__single-group input,
	.form-box__single-group textarea,
	.form-box__single-group select {
	    /* iOS：font-size < 16px 會觸發點選輸入框自動放大 */
	    font-size: 14px!important;
	    height: 40px;
	}
	.form-box__single-group textarea{
	    font-size: 16px;
	}
}
@media(max-width:420px){
	.form-box__single-group input,
	.form-box__single-group textarea,
	.form-box__single-group select {
	    font-size: 13px!important;
	}
}

.form-control,
input {
    border: 1px solid #E2E2E2;
    color:var(--header_main_f_color,#3B3B3B)!important;
    height: 36px;
    line-height: 18px;
    padding: 8px 12px;
    width: 100%;
    border-radius: 8px;
    outline: none;
    font-size: 18px;
    min-height:auto;
}
.form-control:focus {
	border: 1px solid #E2E2E2;
	box-shadow: none;
}
@media(max-width:575px){
.form-control {
    font-size: 14px;
}
}
.form-select {
    color:var(--header_main_f_color,#3B3B3B);
}
select {
    outline: none;
    border: 1px solid #E2E2E2;
    padding: 5px 15px;
}
label {
    font-size: 14px;
}
label > span {
    display: inline-block;
    padding-left: 5px;
    font-weight: 400;
}

.product-color-select {
    position: relative;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.product-color-select::after {
    position: absolute;
    content: "";
    width: 20px;
    height: 20px;
}
.product-color-select:checked::after {
    content: "" !important;
    color: #fff;
}
.product-color-select[value="color-red"]::after {
    background: #ed3c32 !important;
}
.product-color-select[value="color-green"]::after {
    background: #62ab00 !important;
}
.product-color-select[value="color-blue"]::after {
    background: #0063d1 !important;
}

input[type="checkbox"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: relative;
    background: #fff;
    border: 1px solid #999999;
    border-radius: 4px;
    vertical-align: middle;
    width: 17px;
    height: 17px;
    overflow: hidden;
    border-radius: 4px;
    padding:0;
}
input[type="checkbox"]:checked {
  border-color: #ff3c74;
}
input[type="checkbox"]:checked::after {
    content: "\e90c";
    font-family: "icomoon";
    color: #fff;
    background: #ff3c74;
    accent-color: #ff3c74;
    line-height: 15px;
    font-size:15px;
    position: absolute;
    top:0;
    left:0;
    width:20px;
    height:20px;
}
.form-check-input{
    margin-top:0;
}
.form-check-input:active{
	filter:none;
}

/* Chrome, Safari, Edge 原生不顯示 */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox 原生不顯示 */
input[type="number"] {
  -moz-appearance: textfield!important;
  appearance: textfield!important;
}

input[type="radio"]{
	position:relative;
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border:1px solid #999999;
    width:17px;
    height:17px;
    border-radius:30px;
    background-color: #ffffff;
    border-color:#999999;
    transition: all 0.3s ease;
    padding:0;
}
input:focus {
  outline: none !important;
  box-shadow: 0 0 0 4px rgba(255, 60, 116, 0.2) !important;
}
.form-check-input:checked{
	background-color: #ffffff;
    border-color:#999999;
}

input[type="radio"]:checked::after {
	position:absolute;
	content:"";
	top:2px;
	left:2px;
    background: #ff3c74;
    width:11px;
    height:11px;
    border-radius:30px;
}
.form-check-input:focus, .form-select:focus{
    border-color: #FF3C74;
    outline: 0;
}

.from-box__buttons {
    flex-direction: column;
    align-items: flex-start !important;
}
@media (min-width: 576px) {
    .from-box__buttons {
        flex-direction: row;
    }
}

.form-box-right {
    margin-top: 25px;
}
@media (min-width: 576px) {
    .form-box-right {
        margin-top: 0;
    }
}

.password__toggle,
.psd__toggle {
	position:relative;
    display: flex;
    align-items: center;
}
.password__toggle--btn,
.psd__toggle--btn {
	font-size:24px;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    color: #787878;
    opacity:0.6;
    transition: color 0.3s ease;
}

.password__toggle--btn:hover,
.psd__toggle--btn:hover {
    opacity:0.7;
}

/* placeholder */
input::placeholder,textarea::placeholder,select::placeholder{
    color: #E2E2E2;
}
.form-check{
    display: flex;
    align-items: center;
    gap:4px;
    padding-left:0;
}
.form-check-label{
	margin-top:0!important;
}
.form-check-label:active,
.form-check-label:focus
{
	color:#FF3C74;
}

/*****************************
20 - Page - Shop
*****************************/
.border-right.pos-absolute {
    border-right: none !important;
}
@media (min-width: 768px) {
    .border-right.pos-absolute {
        border-right: 1px solid #dee2e6 !important;
        height: 100%;
        right: 0;
    }
}

/*****************************
21 - Page - Product Single
*****************************/
.product-details-tab-box {
    position:relative;
    padding: 30px 10px;
}
@media (max-width: 480px) {
    .product-details-tab-box {
        padding: 0 10px;
    }
}
/*****************************
22 - Page - Blog
*****************************/
.blog.m-t-100 {
    margin-top: 57px;
}
@media (min-width: 768px) {
    .blog.m-t-100 {
        margin-top: 80px;
    }
}
@media (min-width: 992px) {
    .blog.m-t-100 {
        margin-top: 100px;
    }
}
.blog__title {
    font-size: 26px;
    font-weight: 400;
}
@media (min-width: 576px) {
    .blog__title {
        font-size: 30px;
    }
}
@media (min-width: 768px) {
    .blog__title {
        font-size: 32px;
    }
}
@media (min-width: 992px) {
    .blog__title {
        font-size: 36px;
    }
}
.blog-feed__img-box {
    overflow: hidden;
    position: relative;
}
.blog-feed__img--link {
    display: block;
    transition: all 0.3s ease;
    transform: scale(1);
}
.blog-feed__img--link:hover {
    transform: scale(1.03);
}
.blog-feed__img {
    width: 100%;
    height: auto;
    max-height: auto !important;
}
.blog ~ .page-pagination {
    margin-top: 10px;
}
@media (min-width: 768px) {
    .blog ~ .page-pagination {
        margin-top: 30px;
    }
}
@media (min-width: 992px) {
    .blog ~ .page-pagination {
        margin-top: 50px;
    }
}

.popup-icon i {
    color: #fff;
    width: 50px;
    height: 50px;
    line-height: 50px;
    background: blue;
    text-align: center;
    border-radius: 50%;
}

.popup-icon {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.45);
    display: flex !important;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
}

/*****************************
23 - Page - Cart
*****************************/
.total-shipping {
    padding: 15px 0;
    border-top: 1px solid #777;
    border-bottom: 1px solid #777;
    margin-top: 20px;
}

.total-cost {
    display: flex;
    justify-content: space-between;
    font-weight: 300;
}
.total-cost span {
    font-weight: 500;
}

.shipping-cost li {
    display: flex;
    justify-content: space-between;
    margin-bottom: 15px;
}

.grand-total {
    color:var(--header_main_f_color,#3B3B3B);
    display: flex;
    justify-content: space-between;
}

/*****************************
24 - Page - Checkout
*****************************/
.your-order-section {
    margin-top: 10px;
}
@media (min-width: 992px) {
    .your-order-section {
        margin-top: 0px;
    }
}

.your-order-box {
    padding: 0 16px 40px;
}
@media (max-width: 480px) {
    .your-order-box {
        padding: 16px;
    }
}

.your-order-middle {
    color: #666;
    padding: 20px 0;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    margin: 20px 0;
}

.your-order-total {
    padding: 10px 0 0;
    /**border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;**/
}

.your-order-bottom {
    padding: 10px 0 0;
    border-bottom: 1px solid #ddd;
}

.open-create-account,
.open-shipping-account {
    display: none;
}

/*****************************
26 - Page - My Account
*****************************/
.my-account-order .state_img img {
    width: 100px;
    margin: auto;
    height: auto;
}
@media (max-width: 767px) {
    .my-account-order .state_img img {
        width: 80px;
        margin: auto;
        height: auto;
    }
}
@media (max-width: 480px) {
    .my-account-order .state_img img {
        width: 60px;
        margin: auto;
        height: auto;
    }
}
.account-wrapper {
    padding-left:72px;
}
@media(max-width:1199px){
.account-wrapper {
	padding-left:54px;
    }
}
@media(max-width:991px){
.account-wrapper {
	padding:0;
    }
}
@media (max-width: 767px) {
    .account-wrapper.ns {
        border: 1px solid transparent !important;
    }
}
.account-wrapper h4 {
    font-size: 1.1rem !important;
    display: flex;
    justify-content: space-between;
}
.account-wrapper h5 {
    font-size: 1rem !important;
}
.login_btn {
    margin: 20px auto 0;
    cursor: pointer;
    max-width: 268px;
}

.login_btn img {
    width: 268px;
}

@media(max-width:767px){
	.my-account-order .btn--large{
		height:31px;
		font-size:15px;
		padding:20px;
		line-height:2px;
	}
}



/*****************************
27 - Page - Login
*****************************/
.login-form-container {
    max-width:535px;
    margin:auto;
    text-align: left;
    padding:0!important;
}
.login-form-container.mx856 {
	max-width:856px;
}
.login-form-container.gap56,
.login-register-form.gap56 {
	display:flex;
	flex-direction:column;
	gap:56px;
}
.login-form-container h4,
.virtual-page-title{
    position: relative;
    font-size: 31px!important;
    color:var(--header_main_f_color,#3B3B3B);
    text-align: center;
    width: fit-content;
    margin: auto;
    margin-top:104px;
    font-weight:600;
    letter-spacing: 3px;
}
@media(max-width:767px){
.login-form-container h4{
	margin-top:56px;
}
}
.login-form-container .btn_area{
	margin-top:56px;
}
.login-form-container .btn_area input,
.login-form-container .btn_area button{
	width:100%;
}
.title_remind{
	display:flex;
	flex-direction:column;
	text-align:center;
	gap:16px;
}
@media(max-width:767px){
	.title_remind{
	gap:8px;
}
}
.login-register-form.gap88 {
	display:flex;
	flex-direction:column;
	gap:88px;
}
.login-register-form.gap88 .btn_area{
	margin-top:88px;
}
.login_btn_line_bs,
.login_btn_facebook,
.login_btn_google {
	display:flex;
	gap:16px;
	align-items:center;
	justify-content:center;
    padding: 10px;
    font-size: 20px;
    text-align: center;
    color:var(--header_main_f_color,#3B3B3B);
    border-radius: 30px;
    background: #F5F5F5;
    cursor:pointer;
}
@media(max-width:767px){
.login_btn_line_bs,
.login_btn_facebook,
.login_btn_google {
	font-size: 15px;
	gap:8px;
	padding: 16px 10px;
}
}
.login_btn_line_bs :hover,
.login_btn_facebook :hover,
.login_btn_google :hover {
	opacity:0.7;
}
.login_btn_line_bs img,
.login_btn_facebook img,
.login_btn_google img{
	width:36px;
	height:36px;
}
@media(max-width:767px){
.login_btn_line_bs img,
.login_btn_facebook img,
.login_btn_google img{
	width:24px;
	height:24px;
}
}

.login_btn_area {
    padding: 9px;
    font-size: 16px;
    text-align: center;
    color: #fff;
    border-radius: 30px;
    background: linear-gradient(to bottom, #ff769d 0%, #ff3c74 100%);
}

.login-register-form{
	display:flex;
	flex-direction:column;
	gap:32px;
	width:100%;
}
@media(max-width:767px){
	.login-register-form{
		gap:24px;
    }
    .login-register-form .link--blue{
        font-size:12px;
    }
	.login-register-form .btn--large,
	.btn_area .btn--large {
	    padding: 8px 56px;
	    height: 40px;
	    font-size: 17px;
	    line-height:25px;
	}
}
.login-register-form .form-box{
	display:flex;
	flex-direction:column;
	gap:10px;
}
.login-register-form .form-box button{
	margin-top:22px;
}
@media(max-width:767px){
	.login-register-form .form-box{
		gap:16px;
	}
	.login-register-form .form-box button{
	margin-top:8px;
}
}

#form_change_pwd_container .form-box__single-group{
	margin-top:16px!important;
}
#form_change_pwd_container .btn_area{
	margin-top:32px;
}
@media(max-width:767px){
.form-box .form-box__single-group{
	margin-top:0;
}
}
.hr-text-area{
	display:grid;
	grid-template-columns:1fr auto 1fr;
}
.hr-text-area .hr-text{
	color:#787878;
	background:#ffffff;
	font-size:14px;
	line-height:33px;
	padding:0 10px;
}
.hr-text-area .hr{
	border-color:#787878;
}
.login-remind{
	max-width:535px;
	width:100%;
	margin:auto;
}
.sigup-remind{
	font-size:14px;
	text-align:center;
	margin-bottom:32px;
}
.login-form-gap .btn_area{
	margin-top:32px;
}
@media(max-width:767px){
	.sigup-remind{
	font-size:12px;
	margin-bottom:24px;
	}
	.login-remind{
	font-size:12px;
	}
}
.large-main-img{
	text-align:center;
	margin:56px auto;
}
.large-main-img i{
	font-size:160px;
	color:#C2C2C2;
}
.login-form-gap .form-box__single-group{
	margin-top:16px;
}
@media(max-width:767px){
.login-form-gap .form-box__single-group{
	margin-top:24px;
}
.login-form-gap .btn_area{
	margin-top:24px;
}
}
.form-info-list{
	margin-top:32px;
	display:flex;
	gap:8px;
	align-items:center;
}
.form-info-list .form-check:first-child{
	padding-left:0;
}
@media(max-width:767px){
.form-info-list{
	margin-top:24px;
	display:flex;
	flex-direction:column;
	gap:4px;
	align-items: flex-start;
}
.form-info-list .form-check{
	padding-left:0;
}
}
/* 會員中心基本資料 */
/* 電梯+checkbox 排版樣式 */
.elevator-flex{
	margin-top:28px;
}
.elevator-flex label{
	white-space: nowrap;
}
@media(max-width:991px){
.elevator-flex{
	margin-top:46px;
}
.elevator-flex{
	display:flex;
	gap:8px;
}
.elevator-flex .order01{
	order:1;
}
.elevator-flex .order02{
	order:2;
}
}
@media(max-width:991px){
	.elevator-flex .order01{
	order:2;
}
	.elevator-flex .order02{
	order:1;
}
}
/* 註冊會員基本資料 */
.login-form-container .elevator-flex{
	margin-top:28px;
}
@media(max-width:991px){
	.login-form-container .elevator-flex{
		margin-top:46px;
	}
}
@media(max-width:767px){
	.login-form-container .elevator-flex{
		margin-top:24px;
	}
}
.login-form-gap .form-order .order01{
	order:1;
}
.login-form-gap .form-order .order02{
	order:2;
}
.login-form-gap .form-order .order03{
	order:3;
}
.login-form-gap .form-order .order04{
	order:4;
}
.login-form-gap .form-order .order05{
	order:5;
}
.login-form-gap .form-order .order06{
	order:6;
}
.login-form-gap .form-order .order07{
	order:7;
}
.login-form-gap .form-order .order08{
	order:8;
}
@media(max-width:991px){
	.login-form-gap .form-order .order04{
		order:6;
	}
	.login-form-gap .form-order .order05{
		order:4;
	}
	.login-form-gap .form-order .order06{
		order:5;
	}
	.login-form-gap .form-order .order07{
		order:7;
	}
	.login-form-gap .form-order .order08{
		order:8;
	}
}

/*****************************
28 - Page - Contact
*****************************/
#map iframe {
    width: 100%;
    border: none;
    height: 600px;
}
@media (min-width: 576px) {
    #map iframe {
        height: 400px;
    }
}
@media (min-width: 360px) {
    #map iframe {
        height: 340px;
    }
}

.contact-form {
    padding: 25px 20px;
}
@media (min-width: 576px) {
    .contact-form {
        padding: 25px 30px;
    }
}
@media (min-width: 768px) {
    .contact-form {
        padding: 30px 40px;
    }
}

.social-link li {
    display: inline-block;
    margin-right: 15px;
}

.social-link a {
    color:var(--header_main_f_color,#3B3B3B);
    font-size: 22px;
}

/*****************************
29 - Page - FAQ
*****************************/
.accordian {
    width: 100%;
}
.accordian-item {
    margin-bottom: 20px;
}
.accordian-item:last-child {
    margin-bottom: 0;
}
.accordian-item-header {
    padding: 15px 45px 15px 10px;
    display: flex;
    align-items: center;
    position: relative;
    cursor: pointer;
    background: #eef0f1;
    color:var(--header_main_f_color,#3B3B3B);
}
.accordian-item-header.active {
    background: var(--header_link_hover_color);
    color: #fff;
}
.accordian-item-header.active::after {
    content: "−";
}
.accordian-item-header h4 {
    margin-bottom: 0;
    font-size: 16px;
    font-weight: 700;
}
.accordian-item-header::after {
    content: "+";
    font-size: 2rem;
    font-weight: bold;
    position: absolute;
    right: 1rem;
}

/*****************************
31 - Layout - Header
*****************************/
.header__mobile {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 100;
    position: fixed;
    z-index: 11;
}
.header-add-cart i {
    font-size: 20px;
}
@media (min-width: 576px) {
    .header__mobile i {
        font-size: 22px;
    }
}
.header__mobile i:hover {
    color: var(--header_link_hover_color);
}
.header__mobile-logo {
    max-width: 250px;
    color: #ffffff;
    font-weight: 500;
    font-size: 1.5rem;
}
.header__mobile--rightside li,
.header__mobile--leftside li {
    margin-right: 20px;
}
.header__mobile--rightside li a,
.header__mobile--leftside li a {
    color: var(--header_main_f_color);
}
@media (min-width: 576px) {
    .header__mobile--rightside li,
    .header__mobile--leftside li {
        margin-right: 30px;
    }
}
.header__mobile--rightside li:last-child,
.header__mobile--leftside li:last-child {
    margin-right: 0;
}
.header__search-form {
    position: relative;
}
.header__search-input {
    display: flex;
    font-size: 13px;
    color: #fff;
}
.header__search-input button {
    margin-right: 10px;
}
.header__search-input button i {
    font-size: 26px;
    color:var(--header_main_f_color,#3B3B3B);
}
.header__search-input input {
    width: 100%;
    height: 44px;
    padding: 10px 10px 10px 10px;
    outline: none;
    border: none;
    background: transparent;
    color:var(--header_main_f_color,#3B3B3B);
}
.header__search-input input::placeholder {
    color:var(--header_main_f_color,#3B3B3B);
}
.header__search-input-white-bg input {
    color:var(--header_main_f_color,#3B3B3B);
}
.header__search-input-white-bg input::placeholder {
    color:var(--header_main_f_color,#3B3B3B);
}
.header__search-input--mobile input {
    padding: 10px 10px 10px 140px;
}
@media (min-width: 576px) {
    .header__search-input--mobile input {
        padding: 10px 10px 10px 184px;
    }
}
.header__user-action-icon {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    font-weight: 600;
    font-size: 0.9rem;
}
.header__user-action-icon .ion-ios-search-strong {
    font-size: 24px;
}
.style04 .header__user-action-icon.left {
    margin-top: 0;
    margin-left: 15px;
}
.style04 .header__logo {
    margin: 0 auto;
    float: none;
}
.header__user-action-icon li {
    margin-right: 27px;
    font-weight: 400;
    color: #ffffff;
}
@media (max-width: 1199px) {
    .header__user-action-icon li {
        margin-right: 18px;
    }
}
.header__user-action-icon li a {
    color: var(--header_main_f_color, #ffffff) !important;
}
.header__user-action-icon li img {
    width: 20px;
    height: 20px;
}
.header__user-action-icon li:last-child {
    margin-right: 0;
}
.header__user-action-icon a {
    text-decoration: none;
}
.header__user-action-icon i {
    font-size: 28px;
}
.header__user-action-icon i.fal.fa-user {
    font-size: 21px;
    font-weight: 600;
}
.header__popup-search-form {
    position: absolute;
    top: 30px;
    right: 0;
    display: none;
    z-index: 99;
}
.header__popup-search-form input {
    padding: 10px 10px;
    width: 200px;
}
@media (min-width: 576px) {
    .header__popup-search-form input {
        padding: 10px 10px;
        width: 220px;
    }
}
.header__popup-search-form button {
    padding: 0 15px;
}
@media (min-width: 576px) {
    .header__popup-search-form button {
        padding: 0 20px;
    }
}
.header__popup-search-form i {
    color: #fff !important;
}

.wishlist-item-count {
    bottom: 5px;
    right: -10px;
    color: #fff;
    border-radius: 50%;
    width: 18px;
    height: 18px;
    line-height: 18px;
    text-align: center;
    font-size: 11px;
    font-weight: 700;
    /* JW 2025/12/16 數字 badge 可點（行為已轉發到購物車），游標也要跟著變手指，避免看起來「點了沒用」 */
    cursor: pointer;
}
.wishlist-item-count--red {
    border: 0px solid var(--header_sub_bg_color, #d22d26);
    background-color: var(--header_main_bg_color, #d22d26) !important;
    display: flex;
    justify-content: center;
    align-items: center;
}
/*footer 購物車icon*/
a[name=footer_cart_icon] .wishlist-item-count {
    right: calc(50% - 22px);
    bottom: 21px;
    position: relative;
}

/* Header Menu*/
.cbp-hrmenu .cbp-hrsub {
    width: 100% !important;
    left: 2.5% !important;
    border-radius: 16px;
    max-width: 1336px;
    border-bottom: none !important;
    padding-top:32px;
    padding-bottom:  16px !important;
    box-shadow: 0 8px 12px rgba(0, 0, 0, 0.1) !important;
    max-height: 73vh;      /* 高度最多到螢幕高度 */
    display: flex;          /* 左右欄併排 */
}
.cbp-hrmenu > ul,
.cbp-hrmenu .cbp-hrsub-inner {
    max-width: inherit !important;
    margin: 0 auto !important;
    padding: inherit !important;
    gap: 8px 0;
    justify-content: left;
}
@media(max-width:1439px){
	.cbp-hrmenu > ul,
	.cbp-hrmenu .cbp-hrsub-inner {
		gap: 16px;
	}
}
.cbp-hrmenu ul li ul{
	opacity:1!important;
}
.cbp-hrmenu .cbp-hrsub-inner {
	padding-bottom:12px!important;
    border-right:1px solid #ff9881;
}
.cbp-hrmenu .cbp-hrsub-inner a:hover {
    color:var(--header_main_f_color,#3B3B3B);
}
.cbp-hrmenu>ul>li>a{
	padding:0 20px!important;
}
@media(max-width: 1439px){
	.cbp-hrmenu>ul>li>a{
		padding:0 8px!important;
	}
}
.cbp-hrsub-inner > h4 {
    font-size: 1rem;
}
.header_catergory_brand_area {
    padding: 0px 10px;
    border-right: 2px solid #f9eff0;
}
.cbp-hrmenu .cbp-hrsub-inner > div a {
    min-width: 150px;
}
/* cbp-hrsub開啟 body沒有捲軸 */
body:has(.cbp-hropen),
body:has(.modal-open) {
    overflow:hidden;
}

.expand-dropdown-menu li {
    padding: 0;
    border-bottom: 1px solid #e5e5e5;
    transition: all 0.3s ease;
}
.expand-dropdown-menu a {
    display: block;
    padding: 10px 0;
    color: #7e7e7e;
    line-height: 25px;
    font-size: 13px;
    text-decoration: none;
}
.expand-dropdown-menu a img {
    margin-right: 3px;
}

.expand-dropdown-menu.dropdown-menu {
    margin: 0;
}
.expand-dropdown-menu.dropdown-menu.show {
    top: 100% !important;
}

/* *************************** Header Menu **********************************/
.header__color--red {
    background: var(--header_main_bg_color, #d22d26) !important;
}

.sticky-header {
    position: absolute;
    width: 100%;
    z-index: 9;
    background:#ffffff;
}
@media(max-width:1199px){
	.sticky-header {
		border-bottom:1px solid #D8D8D8;
	}
}
.sticky-header.is-sticky {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    animation-duration: 1s;
    animation-fill-mode: both;
    animation-name: slideInDown;
    animation-duration: 0.5s;
    margin-top: 0;
    z-index: 100;
    transition: all 0.5s;
    background:#ffffff;
}
.sticky-header.is-sticky.header__color--silver {
    background: rgba(84, 101, 131, 0.95);
}
.header__nav {
    display: flex;
    margin: 0;
    font-size: 16px;
}
.header__nav-item {
    padding-right: 20px;
    display: inline-block;
}
@media (min-width: 1566px) {
    .header__nav-item {
        padding-right: 30px;
    }
}
.header__nav-item:last-child {
    padding-right: 0;
}
.header__nav-link {
    display: block;
    height: 40px;
    line-height: 40px;
    text-decoration: none !important;
    font-weight: 400;
    display: flex;
    align-items: center;
}
@media (max-width: 991px) {
    .header__nav-link {
        height: auto;
        line-height: 2;
    }
}
.header__nav-link i {
    margin-left: 5px;
}
.header__nav-link--white {
    color: #ffffff !important;
}
.header__nav-link--white-hover-white::after {
    background: #fff;
}
.header__nav-link--black {
    color:var(--header_main_f_color,#3B3B3B);
}
.header__nav-link--black-hover-golden::after {
    background: #ffffff;
    opacity: 0.4;
}
.header__nav-link--black-hover-golden.active::after {
    position: absolute;
    content: "";
    height: 2px;
    width: 100%;
    left: auto;
    right: 0;
    background: #ffffff;
    opacity: 1;
}
.header__nav-item:hover .header__nav-link--white-hover-white {
    color: #fff;
}
.header__nav-item:hover .header__nav-link--black-hover-golden {
    color: #ffffff;
}
.header__nav-item:hover .header__nav-link::after {
    width: 100%;
    left: 0;
    right: auto;
}

.dropdown__menu,
.dropdown__submenu {
    top: 100%;
    left: 0;
    width: 230px;
    background: #fff;
    z-index: 999;
    visibility: hidden;
    opacity: 0;
    border-bottom: 2px solid var(--header_main_bg_color);
    transform-origin: 0% 0%;
    transform-style: preserve-3d;
    transform: rotateX(-90deg);
    transition: all 0s linear;
    padding: 10px 0;
    text-transform: uppercase;
    font-size: 14px;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.15);
    max-height: 80vh;
    overflow-y: auto;
}
.dropdown__submenu {
    top: 0;
    left: -100%;
}
@media (min-width: 1566px) {
    .dropdown__submenu {
        left: 100%;
    }
}
.dropdown__list {
    padding: 8px 15px;
    display: block;
    position: relative;
}
.dropdown__link,
.dropdown__submenu-link {
    text-decoration: none !important;
    display: inline-block;
    width: 100%;
    color: #252525;
    transition: all 0.3s ease;
}
.dropdown__link:hover,
.dropdown__submenu-link:hover {
    color: var(--header_link_hover_color);
}

.mega-menu {
    top: 100%;
    left: 100%;
    margin: 0 auto;
    width: 800%;
    background: #fff;
    z-index: 999;
    visibility: hidden;
    opacity: 0;
    padding: 10px 30px 30px;
    text-transform: uppercase;
    transform-origin: 0% 0%;
    transform-style: preserve-3d;
    transform: translateX(-45%) rotateX(-90deg);
    transition: all 0s linear;
    border-bottom: 2px solid var(--header_main_bg_color);
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.15);
    font-size: 16px;
}
@media (min-width: 1566px) {
    .mega-menu {
        transform: translateX(0%) rotateX(-90deg);
        left: 0;
        right: 0;
    }
}
.mega-menu__box {
    display: flex;
    justify-content: space-between;
    max-height: 80vh;
    overflow-y: auto;
    overflow-x: hidden;
    padding:8px 15px;
}
.mega-menu__item-box {
    margin-right: 30px;
}
.mega-menu__item-box:last-child {
    margin-right: 0;
}
.mega-menu__title {
    display: block;
    font-weight:600;
    font-size: 1rem;
    color: var( --header_main_f_color, #3B3B3B) !important;
}
.mega-menu__item {
    margin-top: 5px;
    margin-bottom: 10px;
}
.mega-menu__item a {
    color: var( --header_main_f_color, #3B3B3B) !important;
    font-size: 14px;
}
.mega-menu__item a:hover {
    color: var( --header_main_f_color, #3B3B3B)!important;
}
.mega-menu__item p {
    color: #666666;
    font-size: 12px;
    line-height: 18px;
}
.mega-menu__list a:hover {
    color: var( --header_main_f_color, #3B3B3B);
}
.mega-menu__list:last-child {
    margin-bottom: 0;
}
.mega-menu__list {
    font-weight: 500;
}
.mega-menu__list ul li > a:hover {
    color: var(--header_link_hover_color);
}
.mega-menu__link {
    text-decoration: none !important;
    display: inline-block;
    width: 100%;
    color: #252525;
    line-height: 2;
}
.mega-menu__link:hover {
    color: var(--header_link_hover_color);
}

.header__nav-item:hover .dropdown__menu,
.dropdown__list:hover .dropdown__submenu {
    visibility: visible;
    opacity: 1;
    transform: rotateX(0deg);
    transition: all 0.3s linear;
}

.header__nav-item:hover .mega-menu {
    visibility: visible;
    opacity: 1;
    transition: all 0.3s linear;
    transform: translateX(-45%) rotateX(0deg);
}
@media (min-width: 1566px) {
    .header__nav-item:hover .mega-menu {
        transform: translateX(0%) rotateX(0deg);
    }
}

.popup-expand-menu-button i {
    color: #fff;
    font-size: 37px;
}
.popup-expand-menu-button i:hover {
    color: #ffffff;
}

.popup-expand-menu {
    display: none;
    border-top: 1px solid #e0e0e0;
    padding: 0 !important;
}

/*****************************
32 - Layout - Mobile Menu
*****************************/

.offcanvas {
    padding: 40px 20px 80px;
}
.offcanvas-menu li img {
    width: 100px;
    height: auto;
    border: 1px solid #999999;
    padding: 5px;
}
.offcanvas-menu > ul > li {
    border-bottom: 1px solid rgba(92, 92, 92, 0.23);
}
.offcanvas-menu > ul > li:last-child {
    border-bottom: none;
}
.offcanvas-menu li a {
    display: block;
    color: #fff;
    text-decoration: none;
    font-size: 0.95rem !important;
}
.offcanvas-menu li a:hover {
    color: var(--header_link_hover_color);
}
.offcanvas-menu li .sub-menu {
    display: none;
    overflow:hidden;
}
.offcanvas-menu li .sub-menu .sub-menu .sub-menu {
    display: none;
}
.offcanvas-menu li .sub-menu li a {
    border-top: 1px solid rgba(92, 92, 92, 0.23);
    padding: 15px 0 0;
    line-height: 5px;
    padding-left: 0;
    font-size: 0.95rem !important;
}
.offcanvas-menu li .sub-menu li a::before {
    display: inline-block;
    width: 8px;
    height: 3px;
    margin-top: -2px;
    margin-right: 10px;
    content: "";
    vertical-align: middle;
    background-color: var(--header_sub_bg_color);
}
.offcanvas__menu-expand::after {
    content: "";
    position: absolute;
    font-family: "Font Awesome 5 Free";
    right: 0;
    transition: all 0.3s ease;
    transform: rotate(0deg);
    color: var(--header_main_bg_color);
    padding: 0 15px;
    cursor: pointer;
}
.sub-menu .offcanvas__menu-expand::after,
.sub-menu ul.sub-menu .offcanvas__menu-expand::after {
    content: "";
    position: absolute;
    font-family: "Font Awesome 5 Free";
    right: 0;
    transition: all 0.3s ease;
    transform: rotate(0deg);
    color: #fff;
    padding: 10px 15px;
    cursor: pointer;
}
.sub-menu li .offcanvas__menu-expand::after {
    content: "";
    position: absolute;
    font-family: "Font Awesome 5 Free";
    transition: all 0.3s ease;
    transform: rotate(0deg);
    color: #fff;
    padding: 5px 15px;
    cursor: pointer;
}
.offcanvas-menu .active > .offcanvas__menu-expand,
.sub-menu > .active .offcanvas__menu-expand {
    border-bottom: 1px solid #ddd;
}
.offcanvas-menu .active > .offcanvas__menu-expand:last-child,
.sub-menu > .active .offcanvas__menu-expand:last-child {
    border-bottom: none;
}
.offcanvas-menu .active > .offcanvas__menu-expand::after,
.sub-menu > .active .offcanvas__menu-expand::after,
.sub-menu ul.sub-menu > .active .offcanvas__menu-expand::after {
    transform: rotate(90deg);
    color: var(--header_sub_bg_color);
}
.sub-menu.li-list01 li a {
    margin-left: 40px;
    padding-top: 10px !important;
}
.li-list02 {
    margin-left: 20px;
}
.li-list03 {
    margin-left: 27px;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    padding: 16px 0 5px !important;
}
.li-list04 {
    margin-left: 60px;
}
.menu-text {
    font-size: 0.95rem;
    font-weight: 400;
}
.block4{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:10px;
}

/*****************************
33 - Layout - Vertical Menu
*****************************/
.header-menu-vertical .menu-title {
    color: #fff;
    font-size: 15px;
    font-weight: 500;
    text-transform: uppercase;
    cursor: pointer;
    margin: 0;
    background: #0063d1;
    padding: 15px 20px;
    border-radius: 3px;
    display: block;
}
.header-menu-vertical .menu-content {
    width: 100%;
    background: #fff;
    border: 1px solid #eaeaea;
    top: 100%;
    left: 0;
    display: none;
}
@media (min-width: 992px) {
    .header-menu-vertical .menu-content {
        display: block;
    }
}
.header-menu-vertical .menu-content li {
    display: block;
    position: relative;
}
.header-menu-vertical .menu-content li:hover .sub-menu {
    opacity: 1;
    visibility: visible;
}
.header-menu-vertical .menu-content li a {
    position: relative;
    display: block;
    overflow: hidden;
    line-height: 24px;
    text-transform: capitalize;
    word-wrap: break-word;
    background: #fff;
    color: #47494a;
    padding: 7px 20px;
    font-size: 14px;
    font-weight: 400;
    transition: all 0.3s linear;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.header-menu-vertical .menu-content li a:hover {
    color: #0063d1;
}
.header-menu-vertical .menu-content li.expand a i {
    padding-right: 15px;
    font-weight: 700;
}
.header-menu-vertical .menu-content li .sub-menu {
    position: absolute;
    z-index: 9;
    text-align: left;
    top: 0;
    left: 100%;
    background: #fff;
    padding: 15px 10px 15px 10px;
    display: inline-block;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s linear;
    border: 1px solid #eaeaea;
    width: 705px;
}
@media (min-width: 1200px) {
    .header-menu-vertical .menu-content li .sub-menu {
        width: 890px;
    }
}
.header-menu-vertical .menu-content li .sub-menu > li {
    width: 33.33%;
    float: left;
}
.header-menu-vertical .menu-content li .sub-menu li a {
    margin: 5px 0px 5px 0px;
}
.header-menu {
    margin: 0 auto;
}
.style02 .header-menu {
    margin: 0;
}
@media (max-width: 767px) {
    .header-menu {
        display: none;
    }
}
/*****************************
34 - Layout - Footer
*****************************/

.footer {
    background: #ffffff;
    font-size: 14px;
    height: auto;
}

.footer .footer_border{
	display:block;
	margin-bottom:16px;
}

.footer__top {
    padding-top: 60px;
    padding-bottom: 60px;
}

@media (min-width: 768px) {
    .footer__top {
        padding-top: 80px;
        padding-bottom: 80px;
    }
}

@media (min-width: 992px) {
    .footer__top {
        padding-top: 80px;
        padding-bottom: 80px;
    }
}

.footer__top [class^="col"] {
    margin-bottom: 40px;
}
.footer__top [class^="col"]:last-child {
    margin-bottom: 0;
}
.footer__top_2 {
    padding-top: 40px;
    overflow-x:hidden;
}
@media (min-width: 576px) {
    .footer__top [class^="col"] {
        margin-bottom: 40px;
    }
}

@media (min-width: 992px) {
    .footer__top [class^="col"] {
        margin-bottom: 0;
    }

}
@media (max-width: 991px) {
    .footer__menu01 [class^="col"] {
        margin-bottom: 20px;
    }
}

ul.footer__social-area {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 8px;
}
a.footer__social-link i {
    width: 30px;
    height: 30px;
    border-radius: 30px;
    color: #464646;
    background-color: #e2e2e2;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size:20px;
    cursor:pointer;
}
@media (max-width: 767px) {
    a.footer__social-link i {
        width: 38px;
        height: 38px;
        font-size: 20px;
    }
}

a.footer__social-link i:hover{
    color: #ffffff;
    background-color: var(--header_link_hover_color ,#ff3c74);
}
.footer__menu {
    margin-top: 0px;
}
.footer__menu h4 {
    padding-left: 14px;
}
ul.footer__nav{
    padding:10px 0;
}
@media(max-width:767px){
ul.footer__nav{
    padding:0 0 8px;
}
}

.footer__nav-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: default;
    font-size:20px;
    margin-bottom:18px;
}
.footer__list {
    margin-bottom: 14px;
}
@media(max-width:767px){
	ul.footer__nav .footer__list:last-child{
	    margin-bottom:0;
	}
}

.footer__link {
    color: var(--footer_link_f_color, #e0e0e0) !important;
    transition: all 0.3s ease;
    font-size: 14px;
    text-decoration: none !important;
    display: block;
}
@media(max-width:767px){
	.footer__link {
		font-size:12px;
	}
}

.footer__link:hover {
    color: #ff3c74 !important;
}
.footer__link.special {
    color: #ff3c74 !important;
}

.footer__line-guide-block .footer__nav-title,
.footer__line-guide-mobile .footer__link {
    color: #ffffff !important;
}

.footer__line-guide-mobile {
    padding: 8px 15px 0;
}

.footer__line-guide-mobile .footer__link {
    padding-left: 0;
}

.footer-links-area{
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 20px;
}
@media(max-width:991px){
.footer-links-area{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}
}

.footer-col {
    min-width: 120px;
}


.footer_aboutus i {
    display: none;
}

.footer__copyright-area {
    padding-top: 16px;
    display: flex;
    justify-content: space-between;
}

@media (max-width: 767px) {
    .footer__top_2{
        padding-top: 0;
    }
    .footer__copyright-area {
        flex-direction: column;
        border-top: 1px solid #e2e2e2;
        gap: 16px;
    }
    .footer_aboutus {
        width: 100% ; /* 強制滿寬 */
        border-bottom: 1px solid #e2e2e2; /* 分隔線 */
        margin-bottom: 0 ;
        padding-bottom: 0;

    }

    .footer-links-area {
        display: block; /* 區塊堆疊 */
        width: 100%;
    }
    .footer-links-area  .m-b-20:last-child {
    	margin-bottom:0;
    	margin-top:28px;
   	}
    /* 2. 標題設定 */
    .footer__nav-title {
        cursor: pointer;
        margin: 8px 16px;
        font-weight: 500;
        font-size:15px;
    }
    /* 3. icon */
    .footer_aboutus i {
      font-size: 24px;
        display: flex;
    }

    /* active icon 狀態 */
    .footer_aboutus.active i {
       color: #FF3C74;
    }
    .footer__nav {
        display: none;
        padding-bottom: 15px;
    }
    /* 4. 點擊後展開選單 */
    .footer_aboutus.active .footer__nav {
        display: block;
    }
    .footer_aboutus.active {
        border-color:#FF3C74;
    }
    .footer_aboutus.active  .footer__nav-title {
        border-left: 4px solid #FF3C74;
        padding-left:12px;
        margin: 8px 15px 8px 0;
    }

    .footer__list{
        margin-left:15px;
    }
    /* 5. follow us 區塊 */
    .footer_aboutus6 .container_FollowUs {
        justify-content:center;
    }
    .footer_aboutus6 .footer__nav {
        display: flex;
        justify-content:center;
    }
}
.footer-phone{
	display:flex;
	align-items:center;
	gap:12px;
}
@media(max-width:767px){
	.footer-phone{
		justify-content:center;
		margin-top:10px;
	}
}

.footer .toggle-item {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 8px 0;
    border-bottom: 1px solid #e2e2e2;
}
.footer .toggle-item.active {
    border-bottom: 1px solid #ff3c74;
}
.footer .toggles-wrap {
    display: flex;
    flex-direction: column;
}
@media (max-width: 767px) {
    .footer .toggles-wrap {
        padding-top: 27px;
        padding-bottom: 114px;
    }
}
.toggle-item > h4 {
    font-size: 15px !important;
    padding: 0 16px 0 12px;
    cursor: pointer;
    position: relative;
    border-left: 4px solid transparent;
    line-height: 24px;
    margin-bottom: 0;
}
.toggle-item.active > h4 {
    border-left: 4px solid #ff3c74;
    border-bottom: 0;
}
.toggle-item.active > h4 i {
    color: #ff3c74;
}
.toggle-content ul {
    list-style: outside;
    padding-left: 16px;
}
.toggle-content ul li {
    font-size: 12px;
    line-height: 25px;
}
.toggle-item > h4 i {
    position: absolute;
    right: 16px;
    top: 4px;
    font-size: 16px;
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
}
.footer-fixbg {
    background-color: #ffffff;
    height: 95px;
    width: 100%;
    position: fixed;
    left: 0;
    bottom: 0;
}
.footer_grid{
    display: grid;
    grid-template-columns: 60% auto;
    margin-bottom:17px;
    justify-content:space-between;
}
@media (max-width: 1199px){
	.footer_grid{
		margin-bottom:113px;
	}
}

.container.footer_aboutus9{
	padding:0;
}
.footer_aboutus9{
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 32px;
    align-items: center;
}
@media (max-width: 767px){
    .footer_grid{
        grid-template-columns: 1fr;
    }
    .footer_aboutus9{
        grid-template-columns: repeat(2, auto);
        justify-content:space-between;
    }
}
.footer_app_download{
    text-align: end !important;
    padding-top: 10px;
    padding-right: 10px;
}
.footer-img-gap{
	display:flex;
	gap:17px;
}
.footer-img-gap img{
	height:44px;
	max-width:100%;
	object-fit:contain;
}
@media(max-width:767px){
.footer-img-gap{
	gap:4px;
}
.footer-img-gap img{
	height:40px;
}
}

/*****************************
35 - Layout - Custom Layout
*****************************/
.container {
    width: 100%;
    max-width: 1336px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
    box-sizing: border-box;;
}
@media (max-width: 1288px) {
.container {
	max-width:1104px;
    }
}
@media (max-width: 767px) {
    .container {
        padding-left: 16px;
        padding-right: 16px;
    }
}

.container-fluid {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    overflow-x: hidden;
}

/* Footer copyright */
.footer__about.container{
	padding:0;
}
.footer__about.container p{
	margin-bottom:5px;
}
.footer_copyright p.color-gray2{
	color:#464646!important;
}
.footer_copyright p{
	margin-bottom:0;
}
.footer_copyright p:empty{
	display:none;
}

/*****************************
36 - Layout - Table
*****************************/
table {
    border: 1px solid #e0e0e0;
    width: 100%;
}
table thead > tr {
    border: 1px solid #D3D3D3;
}
table thead > tr > th {
    color: #999999;
    font-size: 15px;
    padding: 16px 45px 15px;
    font-weight:normal;
    text-align: center;
    text-transform: uppercase;
    vertical-align: middle;
    white-space: nowrap;
}
table tbody > tr {
    border-bottom: 1px solid #D3D3D3;
}
table tbody > tr td {
    font-size: 14px;
    padding: 10px;
    text-align: center;
}
table tbody > tr td a {
    color: #999999;
    text-decoration: none !important;
    display: inline-block;
}
table tbody > tr td a:hover {
    color: var(--header_link_hover_color);
}
.product-thumbnail {
    width: 435px;
}

.product-remove {
    width: 30px;
}
.product-thumbnail {
    width: 150px;
}

.product-remove a {
    color: #ffffff;
    font-size: 14px;
    margin: 0 10px;
    background: #000000;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    line-height: 23px;
}
.product-remove a:hover {
    color: #ffffff;
}
.quantity {
    height: 46px !important;
}

/*購物車樣式2*/
.cart-table-content {
    overflow-x: hidden;
}
.product-thumbnail.s1 {
    width: 100px;
    margin: 0 auto;
    display: block;
}
.product-name{
	word-break:break-word;
}
.product-display {
    display: table-cell !important;
}
.product-price-heart {
    width: 30px;
}
.cart-table-content.v14 table td{
	padding:16px 12px 16px 4px;
}
.cart-table-content.v14 table td.product-name{
	padding-right:0;
}
.cart-table-content.v14 table td.product-name i{
	color:var(--header_main_f_color,#3B3B3B);
}
.grid2-td{
	display:grid;
	grid-template-columns:1fr 24px;
	align-items:center;
	gap:10px;
}
.product-list-name{
	word-break:break-all;
}
@media(max-width:767px){
.cart-table-content.v14 table td{
	padding:16px 10px 16px 0;
}
.cart-table-content.v14 table td.product-thumbnail.s1.w-100p {
    width:100px;
}
}
.cart-table-content.v14 table td.product-price-heart{
	width:auto;
}
@media (max-width: 576px) {
    .vendor-cart-tb td {
        padding: 2px 6px;
    }
    .cart-table-content td {
        padding: 2px 6px;
    }
    .product-display {
        display: flex !important;
    }
    #tbodyArrivalNotice .product-display,
    #tbodyMemberFavoriteInfo .product-display{
        display: table-cell !important;
    }
    .product-name.s1 {
        display: block;
        width: 100%;
        text-align: left;
    }
    .product-price-cart.s1 {
        display: block;
        width: 100%;
        text-align: left;
    }
    .product-price-shopping.s1 {
        display: block;
        width: 100%;
        text-align: left;
    }
    .product-price-heart.s1 {
        display: revert;
    }

    .product-quantities.s1 {
        float: left;
        text-align: left;
        height: 10px;
        margin-right: 20px;
    }

    .product-subtotal.s1 {
        display: flex;
        width: 100%;
        text-align: left;
        font-weight: 600;
        color: var(--header_sub_bg_color);
        margin-top: 35px;
    }
    .product-remove.s1 {
        display: revert;
    }
    .product-remove a {
        border-radius: 50%;
        width: 20px;
        height: 20px;
        padding-top: 2px;
    }
    .product-remove a i {
        float: left;
        font-size: 14px;
        margin-top: 1px;
        margin-left: 5px;
    }
    .cart-table-content {
        overflow-x: inherit;
    }
    .quantity.s1 input {
        height: 30px;
        float: left;
        padding: 0;
        margin: 0;
        border: 1px solid #eee;
        background: #ffffff;
        text-align: center;
        border-radius: 0;
        -webkit-appearance: none;
    }
    .vendor-cart-tb .quantity-button.quantity-up {
        position: absolute;
        height: 30px !important;
        top: 0;
        border: 1px solid #eee;
        line-height: 2.1;
    }
    .vendor-cart-tb .quantity-button.quantity-down {
        position: absolute;
        height: 30px;
        top: 0;
        left: -74px;
        border: 1px solid #eee;
        line-height: 2.1;
    }
}

.compare-table .table tbody tr td {
    text-align: center;
    border: none;
    padding: 25px 30px;
    vertical-align: middle;
    border-bottom: 1px solid #e0e0e0;
    border-left: 1px solid #e0e0e0;
}

.first-column {
    min-width: 160px;
    font-size: 18px;
    font-weight: 600;
    color:var(--header_main_f_color,#3B3B3B);
    margin: 0;
    line-height: 1;
}

.product-image-title {
    min-width: 300px;
    vertical-align: bottom;
    padding-top: 70px;
}

.image {
    clear: both;
    width: 100%;
    margin-bottom: 40px;
    display: block;
}

.category {
    float: left;
    clear: both;
    font-size: 13px;
    line-height: 15px;
    color:var(--header_main_f_color,#3B3B3B);
    text-transform: capitalize;
    letter-spacing: 0.5px;
}

.pro-stock {
    font-size: 16px;
    font-weight: 600;
    color:var(--header_main_f_color,#3B3B3B);
}

.pro-remove button:hover {
    color: #ed3c32;
}

/*****************************
38 - Layout - Addcart Offcanvas
*****************************/
.offcanvas-add-cart__item-dismiss {
    border-radius: 100% !important;
}
@media (max-width: 480px) {
    .offcanvas-add-cart__price {
        font-size: 14px;
    }
}
.offcanvas-add-cart__checkout-left-info {
    color: #777;
}
.offcanvas-add-cart__checkout-right-info {
    font-size: 18px;
}
/*****************************
39 - Layout - Slider Customize
*****************************/
.gap__col--30 .slick-list {
    margin-left: -15px;
    margin-right: -15px;
}
.gap__col--30 .slick-slide {
    margin-left: 15px;
    margin-right: 15px;
    margin-bottom: 10px;
}
.gap__row--30 .slick-slide > div {
    margin-bottom: 30px;
}
.gap__row--30 .slick-slide > div:last-child {
    margin-bottom: 0;
}

.slider-dot-fix .slick-dots li button {
    text-indent: -9999px;
    display: inline-block;
}
.dot-gap__X--10 .slick-dots li:last-child {
    margin-right: 0;
}

.slider-dot .slick-dots {
    text-align: center;
}
.slider-dot .slick-dots li {
    display: inline-block !important;
}
.slider-dot.slider-dot--start .slick-dots {
    justify-content: flex-start;
}
.slider-dot-size--medium .slick-dots li button {
    width: 10px;
    height: 10px;
}
@media (max-width: 480px) {
    .slider-dot-size--medium .slick-dots li button {
        width: 8px;
        height: 8px;
    }
}

.hero-slider__arrow {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.8);
    -webkit-box-shadow: 0 0 8px rgb(0 0 0 / 20%);
    -moz-box-shadow: 0 0 8px rgb(0, 0, 0, 0.2);
    box-shadow: 0 0 8px rgb(0 0 0 / 20%);
    color: #999999;
    font-size: 20px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}
@media(max-width:767px){
	.hero-slider__arrow {
	    width: 30px;
	    height: 30px;
	}
}
.hero-slider__arrow--left {
    left: 20px;
}
.hero-slider__arrow--right {
    right: 20px;
}

/*
// 2026.05.07 例會決議不要center mode：但有說要有空間呼吸
!* KV專用左右箭頭 *!
*/
#div_init_page_kv .hero-slider__arrow--left {
    left: 3%;
}
#div_init_page_kv .hero-slider__arrow--right {
    right: 3%;
}
@media(max-width:575px){
	#div_init_page_kv .hero-slider__arrow--left {
   		left: 7.5%;
	}
	#div_init_page_kv .hero-slider__arrow--right {
	    right: 7.5%;
	}
}

.default-slider__arrow {
    width: 50px;
    height: 50px;
    background: #fff;
    color:var(--header_main_f_color,#3B3B3B);
    font-size: 24px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    opacity: 1;
    border: 1px solid #E2E2E2;
    transition: all 0.3s ease;
    z-index: 99;
    border-radius: 50%;
}
.default-slider__arrow:hover {
    color:var(--header_link_hover_color,#ff3c74)!important;
    opacity: 1 !important;
    border: 1px solid var(--header_link_hover_color,#ff3c74)!important;
    background:#ffffff!important;
}
.default-slider__arrow i {
    font-size: 24px;
}
@media (min-width: 992px) {
    .default-slider__arrow {
        display: block;
    }
}
.default-slider__arrow--left {
    left: 0;
}
@media (min-width: 1566px) {
    .default-slider__arrow--left {
        left: calc(0% - 55px);
    }
}
.default-slider__arrow--right {
    right: 0;
}
@media (min-width: 1566px) {
    .default-slider__arrow--right {
        right: calc(0% - 55px);
    }
}
.default-slider:hover .default-slider__arrow {
    opacity: 1;
    visibility: visible;
}
.default-slider:hover .default-slider__arrow--left {
    left: calc(0% - 25px);
}
@media (min-width: 992px) {
    .default-slider:hover .default-slider__arrow--left {
        left: calc(0% - 15px);
    }
}
@media (min-width: 1566px) {
    .default-slider:hover .default-slider__arrow--left {
        left: calc(0% - 65px);
    }
}
.default-slider:hover .default-slider__arrow--right {
    right: calc(0% - 25px);
}
@media (min-width: 992px) {
    .default-slider:hover .default-slider__arrow--right {
        right: calc(0% - 15px);
    }
}
@media (min-width: 1566px) {
    .default-slider:hover .default-slider__arrow--right {
        right: calc(0% - 65px);
    }
}
@media (max-width: 991px) {
    .default-slider:hover .default-slider__arrow--right {
        right: calc(0% - 0px);
    }
    .default-slider:hover .default-slider__arrow--left {
        left: calc(0% - 0px);
    }
}
.default-slider--hover-bg-red .default-slider__arrow {
    color:var(--header_main_f_color,#3B3B3B);
    background: #ffffff;
    border: 1px solid var(--header_main_f_color,#3B3B3B);
}
.default-slider--hover-bg-red .default-slider__arrow.slick-disabled {
    background: #fff;
    color:var(--header_main_f_color,#3B3B3B);
    border: 1px solid var(--header_main_f_color,#3B3B3B);
}
.default-slider--hover-bg-golden .default-slider__arrow:hover {
    color: #fff;
    background: var(--header_main_bg_color);
    border-color: var(--header_main_bg_color);
}
.default-slider--hover-bg-golden .default-slider__arrow:focus {
    background: #fff;
    color:var(--header_main_f_color,#3B3B3B);
    border: 1px solid var(--header_main_f_color,#3B3B3B);
}
.default-slider--hover-bg-golden .default-slider__arrow.slick-disabled {
    background: #fff;
    color:var(--header_main_f_color,#3B3B3B);
    border: 1px solid var(--header_main_f_color,#3B3B3B);
}
.product-default-slider .slick-slide.slick-active {
    transform: scale(1);
}
.product-default-slider .slick-slide.slick-active {
    transform: scale(1);
}
/* 組合商品卡片間距 */
#div_group_items .slick-slide.slick-active {
    transform: scale(0.95);
}

.gallery__nav {
    position: absolute;
    color: #777;
    z-index: 1;
}
.gallery__nav-horizontal {
    top: 50%;
    transform: translateY(-50%);
}
.gallery__nav-horizontal--right {
    right: -15px;
}
.gallery__nav-horizontal--left {
    left: -15px;
}
.gallery__nav-vertical {
    left: 50%;
    transform: translateX(-50%);
}
.gallery__nav-vertical--up {
    top: -20px;
}
.gallery__nav-vertical--down {
    bottom: -20px;
}

.inner-slider__arrow {
    width: 30px;
    height: 30px;
    background: #fff;
    color:var(--header_main_f_color,#3B3B3B);
    font-size: 16px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: none;
    opacity: 0;
    visibility: hidden;
    border: 1px solid var(--header_main_f_color,#3B3B3B);
    transition: all 0.3s ease;
    z-index: 99;
    line-height: 18px;
}
.inner-slider__arrow i {
    font-size: 18px;
}
.inner-slider__arrow--left {
    left: calc(0% + 5px);
}
.inner-slider__arrow--right {
    right: calc(0% + 5px);
}
.inner-slider:hover .inner-slider__arrow {
    opacity: 1;
    visibility: visible;
}
.inner-slider:hover .inner-slider__arrow--left {
    left: calc(0% + 15px);
}
.inner-slider:hover .inner-slider__arrow--right {
    right: calc(0% + 15px);
}

.inner-slider-grid-4 .slick-list {
    margin-right: -20px;
}
.inner-slider-grid-4 .slick-slide {
    margin-right: 20px;
}

/*****************************
NEW ADD
*****************************/
@media (max-width: 480px) {
    .section-content__title span {
        margin-left: 10px;
        font-size: 18px;
    }
}
.offcanvas_ns {
    color:var(--header_main_f_color,#3B3B3B);
    font-size: 1rem;
    border-bottom: 1px solid #cccccc;
}
.offcanvas_ns > input ::placeholder {
    color:var(--header_main_f_color,#3B3B3B) !important;
}
.search_btn {
    padding-top: 10px;
    text-align: center;
}
.btn_area {
    margin-top: 24px;
    text-align: center;
}

.unbind_btn_area {
    margin-bottom: 10px;
    text-align: center;
}

.font_normal {
    font-size: 1.2rem;
}
.block_list ul {
    list-style-type: none;
}
.block_list ul li .banner__link img {
    max-width: 100%;
    object-fit: contain;
}
.block_list ul li {
    float: left;
    width: 158px;
    height: 158px;
    margin: 6px;
    line-height: 154px;
    text-align: center;
    background: #ffffff;
    overflow: hidden;
}
@media (max-width: 575px) {
    .block_list ul li {
        float: left;
        width: 108px;
        height: 108px;
        line-height: 97px;
        background: #ffffff;
    }
}

.video_bg {
    background: #bbbbbb;
    box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.3);
}

.channel_content.main {
    color: #ffffff;
}
.channel_title {
    font-size: 1.3rem;
    font-weight: 400;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    display: -webkit-box;
}
@media (max-width: 480px) {
    .channel_title {
        font-size: 1rem;
        font-weight: 400;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        white-space: normal;
        overflow: hidden;
        display: -webkit-box;
    }
}
.channel_des {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-height: 1.5;
    font-size: 0.9rem;
    font-weight: 300;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    min-height: 45px;
}
.channel_time {
    overflow: hidden;
    position: absolute;
    bottom: 0;
    text-align: left;
    width: 100%;
    padding: 0 15px;
}
/*2026/01/22 NR 不需要
 .btn > i {
    padding-right: 10px;
} */
.nav {
    justify-content: center;
}

/* root ***********************************************************/
.root {
    display: inline-flex;
    width: 100%;
    font-size: 14px;
}
.root a {
    color: #787878 !important;
}
#div_product_detail_crumb{
    display: inline-flex;
    width: 100%;
    font-size: 14px;
    letter-spacing: 1px;
}

#div_product_detail_crumb {
	width: 100%;
    max-width: 1336px;
    padding: 16px 24px;
    background: transparent;
    margin-bottom: 0;
}
.container #div_crumb{
	padding-left:0;
	padding-right:0;
}
#div_crumb{
	width: 100%;
    max-width: 1336px;
    padding:16px 24px;
    background: transparent;
    margin-bottom: 0;
}
@media (max-width: 1288px) {
	#div_product_detail_crumb,
	#div_crumb{
		max-width:1104px;
	    }
}
@media(max-width:767px){
    #div_crumb,
    #div_product_detail_crumb{
        font-size:12px;
        padding:16px 16px 8px;
    }
}
#div_product_detail_crumb,
#div_crumb,
#div_crumb a,
.row_crumb a {
	font-size:14px;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
    gap:2px;
    color:#787878!important;
}
@media(max-width:767px){
	#div_crumb,
	#div_crumb a,
	.row_crumb a {
		font-size:12px;
	}
}
#div_crumb a:hover{
    color: #FF3C74;
}
#div_crumb h2{
	font-size:14px;
	font-weight:normal;
	margin:0;
}
@media(max-width:767px){
#div_crumb h2{
	font-size:12px;
}
}

.header__logo {
    height: auto;
    width: 150px;
    line-height: 60px;
    text-align: center;
    float: left;
    color: #ffffff;
    font-weight: 500;
    font-size: 2rem;
    margin-top:1px;
}
.header__logo a {
    color: #ffffff;
}
.style02 {
    padding-bottom: 60px;
}
.style02 .header__logo {
    height: auto;
    width: 150px;
    line-height: 60px;
    margin: 0 auto;
    float: none;
}
.header__logo img {
    max-width: 100%;
    height: auto;
    margin-top:-10px;
}
.shop_banner {
    max-height: 600px;
    overflow: hidden;
    padding-top: 77px;
    margin-bottom: 30px;
    background-position: center;
    object-fit: cover;
}
@media (max-width: 1199px) {
    .shop_banner {
        padding-top: 59px;
        margin-bottom: 30px;
    }
}
.shop_banner img {
    max-width: 100%;
}
.add-cart__img {
    width: 60px !important;
    height: auto;
    max-height: 60px;
    aspect-ratio: 1 / 1;
    object-fit: contain;
}
.a_to_btn {
    font-weight: 400;
}
.a_to_btn,
.a_to_btn:hover {
    color: inherit;
    text-decoration: none;
}
.a_to_btn:hover {
    color: #f95548;
}
/*ALIGN*/
.t_right {
    text-align: right !important;
}
.t_left {
    text-align: left !important;
}
.t_center {
    text-align: center !important;
}
.t_justify {
    text-align: justify !important;
}
/*FONT SIZE*/
.f10 {
    font-size: 10px !important;
}
.f14 {
    font-size: 14px !important;
}
.f20 {
    font-size: 20px !important;
}
.f25 {
    font-size: 25px !important;
}
.f30 {
    font-size: 30px !important;
}
.f38 {
    font-size: 38px !important;
}
.f18 {
    font-size: 18px !important;
}
.small_size {
    font-size: 0.9rem !important;
}

.brand_title {
    text-align: left;
    font-size: 0.85rem;
    font-weight: 400;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    line-height: 1.3;
    font-weight: 500;
    color:var(--header_main_bg_color);
}
.product_brand {
    font-size: 1.2rem;
}
.brand_banner {
    width: 100%;
    object-fit: contain;
}
.brand_logo img {
    border-radius: 50%;
    border: 1px solid #333333;
}

.sales-button-list {
    display: flex;
    justify-content: center;
    margin-top: 10px;
}

.sales-box-inactive {
    border-radius: 10px;
    background: #e0e0e0;
    display: flex;
    justify-content: center;
    cursor: pointer;
}

.sales-box-active {
    border-radius: 10px;
    background: #ffffff;
    display: flex;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 0 3px 3px rgba(255, 55, 155, 0.5);
}

.sales-box-inactive img {
    border-radius: 50%;
    width: 120px;
    height: 120px;
}

.sales-box-active img {
    border-radius: 50%;
    width: 120px;
    height: 120px;
}

.sales-box-inactive .male {
    color: #4c95f5;
}

.sales-box-inactive .female {
    color: #e4685d;
}

.sales-box-active .male {
    color: #4c95f5;
}

.sales-box-active .female {
    color: #e4685d;
}

.brand_letter ul {
    list-style: none;
}
.brand_letter ul li {
    display: inline-block;
}
.brand_letter ul li a {
	font-size:20px;
	font-weight:600;
    padding: 3px 16px;
    background:#F5F5F5;
    display: inline-block;
    border-radius:30px;
    text-align: center;
    min-width:201px;
}
@media(max-width:991px){
.brand_letter ul li a {
	font-size:18px;
	min-width:150px;
}
}
@media(max-width:767px){
.brand_letter ul li a {
	font-size:16px;
	min-width:unset;
	width:100%;
}
}
.brand_letter ul li :hover {
    background: var(--header_link_hover_color);
    color: #ffffff;
    display: inline-block;
    text-align: center;
}
.brand h4 {
    border-bottom: 1px solid #c2c2c2;
    text-align: center;
    padding-bottom: 21px;
    margin-top:48px;
    margin-bottom:10px;
    font-size: 24px;
}
#brand_List > div:first-child h4 {
	margin-top:0;
	padding-top:32px;
}
@media(max-width:767px){
	#brand_List > div:first-child h4 {
		padding-top:16px;
	}
}

@media (max-width: 480px) {
    .text-right.r_left {
        text-align: left !important;
    }
}

.height_auto {
    height: auto !important;
}

.brand_list [class*="col-"] {
    margin-bottom: 20px;
}
.btn_categlory {
    word-break: break-word;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    line-height: 20px; /* fallback */
    height: 22px; /* fallback */
    -webkit-line-clamp: 1; /* number of lines to show */
    -webkit-box-orient: vertical;
}
.categlory_list ul li {
    line-height: 3;
    padding-left: 30px;
}
.categlory_list ul li a {
    color: #666666;
}
.categlory_list ul li a:hover {
    color: var(--header_link_hover_color) !important;
}
.categlory_list_div {
    line-height: 2;
    padding-left: 30px;
    font-weight: 345;
}
.categlory_list_div ul li a {
    color: #666666;
}
.categlory_list_div ul li a:hover {
    color: var(--header_link_hover_color) !important;
}
.topic_block {
    position: relative;
    height: auto;
    width: 100%;
}
.topic_content {
    position: absolute;
    top: 60px;
    left: 20px;
}
@media (max-width: 991px) {
    .topic_content.ptype01 {
        position: absolute;
        top: 60px;
        left: 20px;
    }
}

.topic_content > .title {
    color: #ffffff;
    font-weight: 600;
    font-size: 1.8rem;
    width: 220px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    text-shadow: 0 0 0.1em #888888;
}
.topic_content > .des {
    color: #ffffff;
    font-weight: 500;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    width: 220px;
    text-shadow: 0 0 0.1em #777777;
}
@media (max-width: 991px) {
    .topic_content > .title.s01 {
        color: #ffffff;
        font-weight: 600;
        font-size: 1.5rem;
        display: -webkit-box;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        white-space: normal;
        overflow: hidden;
        width: 200px;
        text-shadow: 0 0 0.1em #777777;
    }
    .topic_content > .des.s01 {
        color: #ffffff;
        font-weight: 500;
        display: -webkit-box;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        white-space: normal;
        overflow: hidden;
        width: 200px;
        text-shadow: 0 0 0.1em #777777;
    }
}
.topic_content_s {
    position: absolute;
    bottom: 10px;
    left: 8px;
}
.topic_content_s > .title {
    color: #ffffff;
    font-weight: 600;
    font-size: 1rem;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    text-shadow: 0 0 0.1em #888888;
}
.topic_content_s > .des {
    color: #ffffff;
    font-size: 0.8rem;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    text-shadow: 0 0 0.1em #777777;
}
.topic_left h5 {
    font-size: 1.8rem !important;
}
@media (max-width: 767px) {
    .topic_left {
        text-align: left !important;
        padding-left: 20px;
    }
    .topic_left h5 {
        font-size: 1.8rem !important;
    }
}
.side_alllink {
    text-align: right;
    font-size: 0.9rem;
}

/* WIDTH */
.w_1 {
    width: 1%;
}
.w10 {
    width: 10px;
}
.w25 {
    width: 25px;
}
.w55 {
    width: 55px;
}
.w200p {
    width: 200px;
}
.w_50 {
    width: 50%;
}
.w_90 {
    width: 90%;
}
.w_auto {
    width: auto !important;
}
/* HIGHT */
.h50 {
    height: 50px;
}
.h70 {
    height: 70px;
}
.h90 {
    height: 90px !important;
}
/* CARD */
.card {
    background: #ffffff;
    margin-bottom: 30px;
    text-align: left;
    padding: 20px;
    box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.1);
}
.card-title {
    margin-left: 14px;
    font-size: 1.3rem;
}
.card-title::before {
    position: absolute;
    content: "";
    width: 3px;
    height: 25px;
    background-color: var(--header_sub_bg_color);
    top: 18px;
    left: 20px;
}
.card-body {
    line-height: 2;
}
.i_btn {
    cursor: pointer;
}
.cursor-pointer {
    cursor: pointer;
}
.hide {
    display: none !important;
}
.show {
    display: block !important;
}

@media (max-width: 991px) {
    .zoomContainer {
        display: none !important;
    }
}
[id*="section_"] {
    scroll-margin-top: 4em;
}
@media (max-width: 480px) {
    .table_checkbox_area {
        padding: 0 20px 10px 10px;
    }
}
.v_sub {
    vertical-align: sub;
}
.product-quantity-box {
    overflow: hidden;
    display: flex;
    gap: 10px;
}
.product-quantity .btns-block{
	display:flex;
	gap:16px;
	width: 100%;
}
.product-quantity .btns-block span {
    flex: 1;
}
.product-quantity .btns-block button{
	padding:7px 0!important;
	width:100%;
}
@media (min-width: 768px) {
    .product-links.p-l-10 {
        padding: 0;
    }
}
.align-items-center {
    display: flex;
    align-items: center;
}
.align-items-start {
    display: flex;
    align-items: flex-start;
}
.align-items-end {
    align-items: end!important;
}
.justify-end {
    justify-content: end;
}
.justify-between {
    justify-content: space-between;
}

/* * ==========================================
* 滑動選單 Mobile
* ========================================== */
.find_nav {
    width: 100%;
    top: -10px;
    z-index: 99;
    display: -moz-box;
    display: -webkit-box;
    display: box;
    position: absoulte;
}
.find_nav_left {
    height: 35px;
    position: relative;
    -moz-box-flex: 1;
    -webkit-box-flex: 1;
    box-flex: 1;
    overflow: hidden;
    display: flex;
    align-items: center;
}
@media (max-width: 767px) {
    .find_nav_left {
        overflow: hidden;
    }
}
.shadow_bar {
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.2);
}
.find_nav_list {
    position: absolute;
    left: 0;
}
.find_nav_list ul {
    position: relative;
    white-space: nowrap;
    font-size: 0;
    padding:0;
}
.find_nav_list ul li {
    font-weight: 400;
    display: inline-flex;
    padding: 0 13px;
}
.find_nav_list ul li a {
    display: block;
    width: 100%;
    height: 100%;
    line-height: 35px;
    font-size: 18px;
    text-align: center;
    color:var(--header_main_f_color,#3B3B3B);
}
.find_nav_list ul li a:hover {
    color:var(--header_main_f_color,#3B3B3B);
}
.sideline {
    display: block;
    position: absolute;
    border: 0;
    height: 2px;
    background-color: var(--header_main_bg_color);
    top: 43px;
    pointer-events: none;
}
.info_area {
    padding: 20px;
    background: #f9f9f9;
    font-size: 16px;
    clear: both;
}
.info_area.border {
    background: transparent;
    border: 1px solid #eeeeee !important;
    padding: 5px 10px;
    font-size: 14px;
    line-height: 24px;
}
.info_area ul li {
    margin-bottom: 10px;
}
.info_area li h2 {
    font-size: 16px !important;
    margin: 0 !important;
}
.border_area {
    border: 1px solid #dddddd;
    padding: 20px;
    background: #f6f6f6;
}
.p_relative {
    position: relative;
}
.gray_bg {
    background: #f7f7f7 !important;
}
.white_bg {
    background: #ffffff !important;
}
.live {
    font-size: 15px;
}
/* Header 選單多層 */
.sub_title {
    color:var(--header_main_f_color,#3B3B3B);
    margin: 5px 0 0 20px;
    padding-left: 0;
}
.sub_title a {
    margin-left: -5px;
}
.sub_title a:hover {
    color: var(--header_link_hover_color);
}
.link_t01 {
    position: relative;
    font-size: 0.9rem !important;
    font-weight: 400;
    padding-left: 5px;
}
.link_t01::before {
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    position: absolute;
    top: 2px;
    font-size: 1rem !important;
    font-weight: 100;
    color:#C2C2C2;
    right:0 !important;
}
.link_t01 a {
    padding-left: 15px;
}
.link_t02 {
    list-style-position: outside;
    color: #999999;
    margin-left: 14px;
}
.link_t02 a {
    margin-left: 0px;
}
.link_t02 a:hover {
    color: var(--header_link_hover_color);
}
.nav.s1 {
    justify-content: start !important;
    font-size: 0.9rem;
}
.search_area .product__link {
    text-align: center;
    line-height: 1.3;
    -webkit-box-orient: vertical;
    white-space: normal;
    display: -webkit-box;
}
@media (max-width: 480px) {
    .search_area .brand_title {
        font-size: 0.9rem;
    }
}
.banner_area {
    position: relative;
}
.banner_area button {
    display: block;
}
.fixed {
    top: 36%;
    right: 10px;
    position: absolute;
    text-align: center;
}
@media (max-width: 767px) {
    .fixed {
        text-align: right;
    }
}
.fixed img {
    width: 60%;
    height: auto;
}
@media (max-width: 991px) {
    .md-m-t-30 {
        margin-top: 30px;
    }
}
@media (max-width: 767px) {
    .md-m-t-30 {
        margin-top: 0;
    }
}
.page_title {
    position: relative;
    text-align: center;
    padding: 104px 0px 0;
    width: fit-content;
    margin: auto;
}
.page_title.p-t-88 {
	padding-top:88px;
}
.page_title.progress-style {
	padding-top:32px;
	padding-bottom:16px;
}
.page_title.progress-style h1{
	font-size:31px!important;
}
.page_title .m-b-16{
	font-size:31px!important;
	margin-bottom:16px!important;
}
@media (max-width: 767px) {
    .page_title {
        padding: 56px 0 0 0px;
    }
    .page_title.progress-style {
	   padding-top:24px;
	   padding-bottom:8px;
    }
    .page_title.progress-style h1{
       font-size:26px!important;
    }
	.page_title .m-b-16{
	    font-size:26px!important;
		margin-bottom:8px!important;
	}
}

/* * ==========================================
* 隱私權
* ========================================== */
.heading {
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 20px;
    width: 100%;
    position: relative;
}
.heading::after {
    border-top: 2px solid var(--header_sub_bg_color);
    width: 100%;
    content: "";
    position: absolute;
    top: 13px;
    margin-left: 10px;
}
@media (max-width: 480px) {
    .heading::after {
        border: 0;
    }
    .heading {
        border-left: 3px solid var(--header_sub_bg_color);
        line-height: 1.4;
        padding-left: 10px;
    }
}
.policy_content {
    padding-left: 40px;
    margin-bottom: 30px;
    line-height: 2;
}
.policy_content ol li {
    list-style: decimal;
    list-style-position: outside;
    line-height: 2;
}
.ulreset > li {
    list-style: none !important;
}
.arrow > li {
    list-style: none !important;
    position: relative;
    padding-left: 30px;
}
.arrow > li::before {
    content: "";
    position: absolute;
    left: 6px;
    color: var(--header_sub_bg_color);
    content: "\f105";
    font-family: "Font Awesome 5 Free";
}
/* * ==========================================
* 策展Layout
* ========================================== */
.comment-header {
    position: relative;
    padding: 10px 10px 10px;
    overflow: auto;
}
@media (max-width: 767px) {
    .comment-header {
        position: relative;
        padding: 15px 10px 5px;
        overflow: auto;
    }
}
.comment-block {
    border-radius: 5px;
    box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.1);
    margin-bottom: 50px;
}
.comment-brand {
    float: left;
    height: 42px;
    width: 42px;
    background-position: center center;
    background-repeat: no-repeat;

    background-size: cover;
    border-radius: 50%;
    margin-right: 10px;
    cursor: pointer;
}
.comment-brand-large {
    float: left;
    height: 60px;
    width: 60px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #ffffff;
    border-radius: 50%;
    margin-right: 10px;
}
.comment-name {
    cursor: pointer;
    padding-top: 2px;
    font-size: 1rem;
    font-weight: 600;
    font-style: normal;
    text-transform: uppercase;
    color: #333;
    line-height: 1.5;
    color:var(--header_main_f_color,#3B3B3B);
    width: 70%;
    word-break: break-word;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}
.comment-people {
    font-size: 13px;
    font-weight: 400;
    color: #666666;
}
.comment-date {
    font-size: 13px;
    font-weight: 400;
    color: #666666;
}
.comment-name-large {
    padding-top: 6px;
    font-size: 1.2rem;
    font-weight: 600;
    font-style: normal;
    text-transform: uppercase;
    color:var(--header_main_f_color,#3B3B3B);
    line-height: 1.5;
    width: 70%;
    word-break: break-word;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}
.comment-people-large {
    font-size: 1rem;
    font-weight: 400;
    color: #666666;
}
.comment-img {
    object-fit: cover;
    width: 100%;
    height: 200px;
    margin-top: 10px;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}
.comment-focus {
    position: absolute;
    right: 10px;
    bottom: 0;
}
.comment-focus a {
    font-size: 0.8rem;
    font-weight: 400;
}
.comment-tab {
    position: absolute;
    right: 0;
    bottom: 0;
}
.comment-tab li i {
    font-size: 1.7rem;
}
.comment-footer {
    padding: 15px;
    font-size: 1rem;
    font-weight: 600;
}
.topic-img {
    object-fit: cover;
    width: 100%;
    height: auto;
}
.topic-content {
    padding: 5px 10px;
    font-weight: 400;
}
.topic-title {
    font-weight: 600;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    height: 50px;
    font-size: 1.1rem;
    margin: 5px auto;
}
.topic-des {
    color: #666666;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    height: 50px;
    padding-top: 5px;
}
/* * ==========================================
* 購物車標籤
* ========================================== */
.success_active {
    position: relative;
    border: 0;
    background: #53AD501A;
    margin-bottom: 10px;
    border-radius: 8px;
    padding: 5px;
}
.success_label {
    width: fit-content;
    color: #53AD50;
}

.success_des {
    color: #53AD50;
    font-size: 0.9rem;
    padding-top: 4px;
    margin-left: 1em;
}
.success_des a{
	color: inherit;
	font-weight: 300;
}
.red_active {
    position: relative;
    border: 0;
    border-radius: 8px;
    padding: 5px;
    margin-bottom: 10px;
    background: #FF79791A;
}
.red_text {
    color: #a94442;
}
.red_label {
    width: fit-content;
    color: #CA0030;
}
.red_des {
    color: #CA0030;
    font-size: 0.9rem;
    padding-top: 4px;
    margin-left: 1em;
}
.red_des a{
	color: inherit;
	font-weight: 300;
}
.red_need_more {
    font-size: 12px;
    margin-right: 5px;
    background-color: #FF7979;
    color: #fff;
    padding: 2px 10px;
    border-radius: 8px;
    position: absolute;
    right: 0px;
    top: 6px;
}
.warn_active {
    position: relative;
    border: 1px solid #ffc237;
    font-weight: 400;
    margin-bottom: 10px;
    background: #ffffff;
}
.warn_label {
    width: fit-content;
    background: #ffeaa8;
    color: #826200;
    padding: 2px 6px;
}
.warn_des {
    color: #826200;
    font-size: 0.9rem;
    padding: 4px 0 5px 0;
    width: 92%;
    margin: 0 auto;
}

.brand_large {
    background: #fff;
/*     height: 130px;
    width: 130px; */
    cursor: pointer;
    /* background-size: cover; */
    border-radius: 50%;
    margin: 10px;
    box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.2);
    -ms-box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.2);
}
@media (max-width: 991px) {
	.brand_large {
		margin:8px;
	}
}
.card-header {
    display: flow-root;
    min-height: 45px;
}

/* 訂單流程設計process */
ul.wizard-steps,
ul.wizard-steps li {
  margin: 0;
  padding: 0;
  display: flex;
  width: 100%;
}
ul.wizard-steps {
  counter-reset: num;
}
ul.wizard-steps li {
  flex-direction: column;
  align-items: center;
  position: relative;
}
ul.wizard-steps li ~ li::after {
  content: '';
  position: absolute;
  width: 100%;
  right: 50%;
  height: 1px;
  background: #E2E2E2;
  top: calc(0.75em - -15px);
}
@media(max-width:767px){
	ul.wizard-steps li ~ li::after {
	  top: calc(0.75em - -2px);
	}
}
@media(max-width:575px){
	ul.wizard-steps li ~ li::after {
	  top: calc(0.75em - 0px);
	}
}

ul.wizard-steps li.is-complete::after,
.order-progress__item.is-current::after,
.wizard-steps li.active::after,
.wizard-steps li.before_active::after {
  background: #ff3c74;
}
.wizard-steps li.active .step,
.wizard-steps li.complete .step {
	font-weight:bold;
	color:#ffffff!important;
    background: linear-gradient(to bottom, #ff769d 0%, #ff3c74 100%)!important;
}

/* 白底的step */
.wizard-steps li .step {
	display: inline-flex;
    justify-content: center;
    color: #8E8E8E;
    font-size: 14px;
    border-radius: 100%;
    background-color: #F5F5F5;
    position: relative;
    z-index: 2;
    width: 52px;
    height: 52px;
    border:8px solid #ffffff;
}

@media(max-width:767px){
.wizard-steps li .step {
	width:24px;
	height:24px;
	border:0;
	margin:auto;
}

.wizard-steps li .step i{
	line-height:8px;
}
}
/* 灰底的step */
.member-gray-block .wizard-steps li .step {
	 border-color: #FAFAFA;
	 background-color:#E2E2E2;
}
.wizard-steps li.complete .title,
.wizard-steps li.active .title {
    color:var(--header_main_f_color,#3B3B3B);
    line-height: 1em;
}
.wizard-steps li .title {
	text-align:left;
    display: block;
   color:var(--header_main_f_color,#3B3B3B);
    font-size: 16px;
    line-height:24px;
    z-index: 1;
    word-wrap: break-word;
    padding-right:8px;
}
@media(max-width:1199px){
	.wizard-steps li .title {
		text-align:center;
		font-size:14px;
		line-height:1;
	}
}
@media(max-width:1199px){
	.wizard-steps li .title {
	 padding:0;
	}
}
@media(max-width:767px){
	.wizard-steps li .title {
		font-size:12px;
	}
}

.step_time {
    font-size: 14px !important;
    line-height: 22px !important;
    color:#818181;
    display: block;
}
.step-info:not(:has(.step_time)) {
    padding: 0 10px;
}
/* @media(max-width:1439px){
	.step_time {
		font-size:12px!important;
		line-height:14px!important;
	}
} */
@media(max-width:767px){
	.step_time {
		font-size:10px!important;
		line-height:14px!important;
	}
}

.step-block{
	display:flex;
	align-items:center;
	position: relative;
    z-index: 1;
    width: fit-content;
    padding-right: 10px;
    background:#FFFFFF;
    gap:8px;
}
@media(max-width:767px){
	.step-block{
		flex-direction:column;
		gap:6px;
	}
}
.step {
  display:flex;
  align-items:center;
  justify-content:center;
}

.member-gray-block .step-block{
	background:#FAFAFA;
}
.step-flex{
	display:flex;
	flex-direction:column;
}
.wizard-steps li.before_active .step{
	color: #ff3c74;
	background:#FFDFE8;
}
.wizard-steps li.active .step{
	color: #ff3c74;
	background:#FFDFE8;
}
.wizard-steps.order-progress li:first-child::before,
.wizard-steps.order-progress li:last-child::before {
	content: none;
}
.wizard-steps.order-progress li::before {
	content: none;
}
.order-progress__item {
	flex: 1 1 0;
	align-items: center;
	list-style: none;
	padding: 0;
	margin: 0;
	text-align: left;
	gap: 0;
}
.order-progress__content {
	display: flex;
	min-width: 0;
	background:#ffffff;
}
@media(max-width:1199px){
	.order-progress__content {
		flex-direction:column;
		gap:0;
	}
}
@media(max-width:767px){
	.order-progress__content {
		gap:4px;
	}
}

.order-progress__item .step {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: #dddddd;
	color: #5f6473;
	font-weight: 600;
	font-size: 16px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.order-progress__item.is-current .step {
	background-color: #FF3C74;
	color: #ffffff;
}
@media(max-width:1199px){
	.order-progress__item.is-current .step{
		margin:auto;
	}
}

.order-progress__item.is-complete .step {
	background: #FFE0EB;
	color: #FF3C74;
}
@media(max-width:1199px){
	.order-progress__item.is-complete .step{
		margin:auto;
	}
}
@media (max-width: 767px) {
	.order-progress__item .step {
		width: 36px;
		height: 36px;
		font-size: 14px;
	}
}
.order-progress__item .step-info {
	display: flex;
	flex-direction: column;
	justify-content:center;
	gap: 2px;
	min-width: 0;
	margin-top:4px;
	background:#ffffff;
	z-index:1;
}
.order-progress__item .title {
	font-size: 16px;
	color:var(--header_main_f_color,#3B3B3B);
	line-height: 1.4;
	word-break: break-word;
}
@media (max-width: 767px) {
	.order-progress__item .title {
		font-size: 14px;
	}
}
.order-progress__item .step_time {
	color: #6e6e6e;
	font-size: 14px;
}
@media (max-width: 767px) {
	.order-progress__item .step_time {
	text-align:center;
	}
}

.text-pre-wrap {
    white-space: pre-wrap;
    word-break:break-word;
}
.order_list .price {
    white-space: nowrap;
    color: #666666;
}
.order_list ul {
    list-style: none;
}
.order_list ul li {
    border-bottom: 1px dotted #cccccc;
    padding: 11px 10px 5px;
    text-align: left;
}
.order_des {
    text-align: right;
    border-radius: 5px;
    margin-top: 10px;
}
.order_des ul li {
    list-style: none;
    display: inline-block;
    border: 0;
}
.order_info {
    line-height: 2;
    border: 1px dotted #cccccc;
    padding: 10px;
}
.order_info [class*="col-"] {
    margin-bottom: 16px;
}
.order_info [class*="col-"]:last-child {
    margin-bottom: 0;
}
.storepick-photo {
    width: 90%;
}
.customer_area {
    min-height: 300px;
    padding-left: 10px;
}
.customer_area .a {
    text-align: left;
    margin-bottom: 20px;
    border-radius: 20px;
    background: #f6f6f6;
    padding: 10px;
    display: table;
}
.customer_area .q {
    text-align: right;
    margin-bottom: 20px;
    border-radius: 20px;
    background: #fbe7e7;
    padding: 10px;
    display: table;
    float: right;
}
.customer_area img {
    width: 20px;
    height: 20px;
    object-fit: contain;
}
.a .time {
    font-size: 0.7rem;
    margin-top: 5px;
    color: #666666;
    text-align: left;
}
.q .time {
    font-size: 0.7rem;
    margin-top: 5px;
    color: #666666;
    text-align: right;
}
.line {
    border-bottom: 1px dotted #cccccc;
    margin-top: 10px;
}
.b0 {
    border: 0 !important;
}
.pick-qr {
    display: flex;
    justify-content: center;
}
.line-height1-5{
	line-height:1.5!important;
}
.line-height1-6{
	line-height:1.6!important;
}

/* /* * ==========================================
* 星星評分
* ========================================== */
.star {
    display: inline-block;
    font-size: 0;
    position: relative;
}
.star-item {
    display: inline-block;
    width: 25px;
    height: 19px;
    cursor: pointer;
    background-position: center top;
    background-repeat: no-repeat;
}
input[type="radio"]:checked + .star-item ~ .star-item {
    background-position: center bottom;
}
.star:hover label.star-item {
    background-position: center top !important;
}
label.star-item:hover ~ .star-item {
    background-position: center bottom !important;
}
.star-item:after {
    position: absolute;
    width: 100px;
    font-size: 14px;
    height: 19px;
    line-height: 19px;
    right: 0;
    margin-right: -105px;
    color: #666;
}
.star:hover .star-item:after {
    content: "" !important;
}

input[type="radio"]:checked + .star-item:after {
    content: attr(title);
}

.star:hover .star-item:hover:after {
    content: attr(title) !important;
}
.border-top {
    border-top: 1px solid;
}
.border-top-dashed {
    border-top: 1px dashed #ddd;
}
.border-0 {
    border: 0 !important;
}

/* Nav Bar */
/* * ==========================================
* 置底選單
* ========================================== */
.footer_menu {
	position: fixed;
    z-index: 99;
    background:#ffffff;
    bottom: 0;
    left: 0;
    padding: 0 16px 21px;
    width: 100%;
}
@media(max-width:991px){
	.footer_menu {
		background:transparent;
	}
}

.flex-nav{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    padding: 4px 8px;
    border-radius: 100px;
    box-shadow: 0px -1px 8px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 0px -1px 8px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0px -1px 8px rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 0px -1px 8px rgba(0, 0, 0, 0.1);
    background: #ffffff;
}

.flex-nav li,
.flex-nav li > a.btn {
    width: 100%;
    height: 51px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    background:unset;
    color:unset;
    line-height:unset;
}
.flex-nav li a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.flex-nav li > a.btn {
    padding: 4px 0 0;
}
.flex-nav li > a.btn i {
    display: inline-block;
    max-width: 24px;
    max-height: 24px;
}
.icon-text i {
    font-size: 24px;
}
.flex-nav li .text-name {
    font-size: 12px;
    letter-spacing: 0.1em;
}

.flex-nav li.active {
    border-radius: 30px;
    background: linear-gradient(to bottom, #ff769d 0%, #ff3c74 100%);
    color: #ffffff;
    opacity:1;
}
.flex-nav li.active a{
    color: #ffffff;
}
.flex-nav li a .wishlist-item-count--red {
	color:#ffffff!important;
	background: var(--header_link_hover_color ,#ff3c74)!important;
}
.flex-nav li.active a .wishlist-item-count--red {
	color:var(--header_link_hover_color ,#ff3c74)!important;
	background:#ffffff!important;
}

/*****************************
分類 Filter Area
*****************************/
.taskcard {
    cursor: pointer;
    user-select: none;
    /*     margin-bottom: 1rem; */
    position: relative;
}
.taskcard .user-avatar-group {
    flex-wrap: wrap;
}
.taskcard .card {
    border: 0 !important;
    background: transparent !important;
}
.taskcard .card-body {
    padding: 0 !important;
}
.taskcard .task-details__title {
    font-size: 16px;
    font-weight: 500;
    text-transform: uppercase;
    padding-top: 16px;
    margin-bottom: 4px;
}
.task-details__title::after {
    content: "";
    bottom: 0;
    display: block;
    margin-top: 5px;
    width: 30px;
    height: 2px;
    background: var(--header_sub_bg_color);
}
.taskcard .task-details {
    margin-top: 20px;
    margin-bottom: 0;
    padding: 0 20px;
    background: #ffffff;
}
.taskcard .task-details.layer {
    position: absolute;
    z-index: 1;
    right: 0;
    top: -35px;
    padding: 0 10px 10px;
    opacity: 1;
    width: 100%;
    display: block;
    box-shadow: 0px 8px 6px rgba(0, 0, 0, 0.1);
}
.taskcard .task-details .task-checklist {
    padding-top: 0.3125rem;
    margin: 0;
    list-style-type: none;
    font-size: 1rem;
    font-weight: 500;
}
ul.task-checklist{
	padding:0;
}
.task-checklist li {
    font-weight: 400;
    font-size: 16px;
    line-height: 2.5;
}
@media(max-width:991px){
.task-checklist li {
    font-size: 14px;
}
}
.task-checklist li a,
.task-checklist li a.color-gray2
 {
    color: #3B3B3B!important;
}
.task-expander {
    font-weight: 400;
}
/*****************************
TAB Content
*****************************/
.para__content {
    line-height: 1.8;
    color: #3B3B3B;
    font-size: 1rem;
}
.tab-pane > .para__content img {
    max-width: 100% !important;
    height: auto !important;
}
@media (max-width: 992px) {
    .tablist--style-gap-70 li > .nav-link {
        margin: 0 10px;
    }
}
@media (max-width: 380px) {
    .nav {
        justify-content: flex-start;
    }
    .tablist--style-gap-70 li > .nav-link {
        margin: 0 5px;
    }
}
/*****************************
SELECT2
*****************************/
.select2-container--default .select2-selection--single {
    border: 1px solid #E2E2E2 !important;
    height: 40px !important;
    line-height: 18px;
    padding: 0.375rem 0.75rem 0.375rem 0.75rem !important;
    width: 100% !important;
    border-radius: 0 !important;
    outline: none !important;
    font-size: 1rem !important;
    border-radius:8px!important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 100% !important;
    top: 0 !important;
    right: 10px !important;
    width: 20px !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 12px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b {
    display:none;
}
.form-select:disabled,
.select2-container--default.select2-container--disabled .select2-selection--single{
	background-color:#F5F5F5!important;
}
.select2-dropdown {
    background-color: white;
    border: 1px solid #E2E2E2 !important;
    border-radius: 0;
}
.select2-container--open .select2-dropdown--below {
    border-radius: 0 !important;
}
.select2-container--default .select2-selection--single .select2-selection__clear {
    margin-right: -15px !important;
}
button.select2-selection__clear span {
    color: #444 !important;
}
.select2-container .select2-selection--single .select2-selection__rendered {
    padding-left: 0 !important;
    font-size: 18px;
    line-height: 27px !important;
}
@media(max-width:991px){
.select2-container .select2-selection--single .select2-selection__rendered {
    font-size: 16px;
}
}
@media(max-width:767px){
.select2-container .select2-selection--single .select2-selection__rendered {
	font-size:14px;
}
}
.search__toggle select,
.search__toggle input{
    padding:8px 12px 8px 36px;
}

/*****************************
SWAL2 視窗設計
*****************************/
.swal2-container{
	padding: 0.625em 2em 0 !important;
}
.swal2-container.swal2-center .swal2-popup {
	max-width:800px;
	width:100%;
	box-sizing: border-box;
	transform: none !important;
	padding:40px;
}
.swal2-popup.swal2-modal:has( .embed-responsive){
	padding:0!important;
}
@media(max-width:767px){
	.swal2-html-container{
	  margin-right:0!important;
	  margin-left:0!important;
	}
	.swal2-container.swal2-center .swal2-popup{
		padding:24px;
	}
}
.swal2-container.swal2-backdrop-show, .swal2-container.swal2-noanimation {
    background: rgba(0, 0, 0, .6)!important;
}

.swal2-actions {
	gap: 16px;
	flex-wrap:nowrap!important;
}

.swal2-actions button{
	border-radius:30px;
}
.swal2-actions button{
	padding: 8px;
    height: 56px !important;
    font-size: 20px;
    display: inline-block;
    outline: none;
    cursor: pointer;
    word-break: keep-all;
    width:100%;
    max-width:514px;
}
.swal2-confirm{
    color: #ffffff;
    border: 0;
    font-weight: 600 !important;
    background: linear-gradient(to bottom, #ff769d 0%, #ff3c74 100%);
}
.swal2-cancel{
    border: 0;
    font-weight: 500 !important;
    background: #ffffff !important;
    color:var(--header_link_hover_color,#ff3c74)!important;
    border:1px solid var(--header_link_hover_color,#ff3c74);
}
@media(max-width:767px){
	.swal2-actions button{
	    height: 40px !important;
	    font-size: 17px;
	    line-height:1;
	}
}
/* 由於 X 樣式不統一，先不呈現 */
.swal2-close{
	display:none!important;
}
.swal2-popup.v14-video-swal{
    padding: 20px 20px 16px;
}
.swal2-popup.v14-video-swal .swal2-html-container{
    margin: 0;
    padding: 0;
}
.swal2-popup.v14-video-swal .p-lr-20{
    padding-left: 0;
    padding-right: 0;
}
.swal2-popup.v14-video-swal .swal2-close{
    display: flex !important;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    position: absolute;
    width: 36px;
    height: 36px;
    line-height: 1.1;
    font-size: 2rem;
    color: #3B3B3B;
    background-color: rgba(255, 255, 255, 1);
    text-shadow: none;
    right: -16px;
    top: -16px;
    opacity: 1;
    border-radius: 30px;
}
@media(max-width:767px){
	.swal2-popup.v14-video-swal .swal2-close{
		width: 26px;
        height: 26px;
        font-size: 1.5rem;
        right: -12px;
        top: -12px;
	}
}
.swal2-popup.v14-video-swal .swal2-close:hover{
    opacity: 0.6;
}
.swal2-popup.v14-video-swal .swal2-close:focus{
    box-shadow: none;
}
.swal2-popup.v14-video-swal .swal2-close i.icon-close{
    pointer-events: none;
}
.swal2-popup.v14-video-swal .section-content__title{
    padding-right: 44px;
}

/*****************************
TICKET
*****************************/
.ticket {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    padding: 20px;
    border-radius: 10px;
    background: #f0f0f0;
    margin-bottom: 30px;
}
.ticket:before,
.ticket:after {
    content: "";
    position: absolute;
    left: 5px;
    height: 6px;
    width: 95%;
}
.ticket:before {
    top: -5px;
    background: radial-gradient(circle, transparent, transparent 50%, #f0f0f0 50%, #f0f0f0 100%) -7px -8px / 16px 16px repeat-x;
}
.ticket:after {
    bottom: -5px;
    background: radial-gradient(circle, transparent, transparent 50%, #f0f0f0 50%, #f0f0f0 100%) -7px -2px / 16px 16px repeat-x;
}
.ticket__content {
    box-sizing: border-box;
    height: 100%;
    width: 100%;
    border: 2px solid #d8d8d8;
}

.ticket_pink {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    padding: 20px;
    border-radius: 10px;
    background: #f7e2e9;
    color:#3B3B3B;
    margin-bottom: 30px;
}
.ticket_pink:before,
.ticket_pink:after {
    content: "";
    position: absolute;
    left: 5px;
    height: 6px;
    width: 95%;
}
.ticket_pink:before {
    top: -5px;
    background: radial-gradient(circle, transparent, transparent 50%, #f7e2e9 50%, #f7e2e9 100%) -7px -8px / 16px 16px repeat-x;
}
.ticket_pink:after {
    bottom: -5px;
    background: radial-gradient(circle, transparent, transparent 50%, #f7e2e9 50%, #f7e2e9 100%) -7px -2px / 16px 16px repeat-x;
}
.ticket__content_pink {
    box-sizing: border-box;
    height: 100%;
    width: 100%;
    border: 2px solid #ffffff;
}

.ticket__text {
    padding: 10px;
    font-family: "Helvetica", "Arial", sans-serif;
    line-height: 1.5;
}
.ticket__name {
    font-size: 1.2rem;
    text-transform: uppercase;
    font-weight: 600;
    color: #666666;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    height: 3.8rem;
}
.ticket__name_pink {
    font-size: 1.2rem;
    text-transform: uppercase;
    font-weight: 600;
    color:#3B3B3B;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    height: 3.8rem;
}
.ticket__no {
    color: #999999;
    text-align: center;
    border-top: 1px dotted #cccccc;
    padding-bottom: 5px;
}
.ticket__no_pink {
    font-weight: 700;
    text-align: center;
    color:#333333;
    border-top: 1px dotted #ffffff;
    padding-bottom: 5px;
}
.ticket__date {
    font-size: 0.85rem;
    text-align: center;
    color: #666;
}
@media (max-width: 767px) {
    .ticket__name {
        height: 3.2rem;
    }
    .ticket__name_pink,
    .ticket__name {
        font-size: 1rem;
        height: 3.2rem;
    }
}
/*****************************
ERROR PAGE
*****************************/
.error_img {
    width: 99%;
    margin: 0 auto;
    position: relative;
    padding-top: 60px;
}
.error_img img {
    width: 40%;
    margin: 0 auto;
    padding-top: 30px;
    max-height: 800px;
}
.error_img2 {
    width: 99%;
    margin: 0 auto;
    position: relative;
    min-height: 300px;
}
.error_img2 img {
    width: 40%;
    margin: 0 auto;
    padding-top: 30px;
}
@media (max-width: 767px) {
    .error_img2 img {
        width: 60%;
        margin: 0 auto;
        padding-top: 30px;
    }
}
.error_content {
    width: 99%;
    margin: -40px auto 0;
    position: relative;
}
.pink_bg {
    background: #f2d3cd !important;
}
.yellow_bg {
    background: #fff4dd;
}
.empty_img {
    width: 45%;
    margin: 60px auto 0;
}
@media (max-width: 767px) {
    .empty_img {
        width: 90%;
    }
}
.empty_img .btn{
      display:flex;
      align-items:center;
    }

/*****************************
POPUP
*****************************/
.overlay {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.6);
    transition: opacity 1;
    visibility: hidden;
    opacity: 0;
    z-index: 9999;
    overflow-y: auto;
}
.overlay:target {
    visibility: visible;
    opacity: 1;
}
.popup {
    width: max-content;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); /* 3.使用translate讓元素移動自身的50%距離 */
    padding: 15px;
    color: #fff;
    max-width: 650px;
    position: relative;
    cursor: pointer;
}
.popup img {
    max-width: 100%;
    width: auto;
    border-radius:30px;
}
@media (max-width: 991px) {
    .popup {
        padding: 10px;
    }
}
@media (max-width: 767px) {
    .popup {
        width: max-content;
        max-width: 90%;
    }
}

.popup .close {
    cursor: pointer;
    position: absolute;
    width: 36px;
    height: 36px;
    line-height: 1.1;
    font-size: 2rem;
    color: #3B3B3B;
    text-align: center;
    background-color: rgba(255, 255, 255, 1);
    text-shadow: none;
    right: -4px;
    top: -4px;
    opacity: 1;
    border-radius:30px;
}
@media(max-width:767px){
	.popup .close {
		width: 26px;
	    height: 26px;
	    font-size: 1.5rem;
	    right: 0;
        top: 0;
	}
}
.popup .close:hover {
    opacity:0.7;
}
.popup .content {
	max-height: 30%;
    overflow: auto;
}
.popup-text-area {
    display: flex;
    padding: 15px 0px 0px 0px;
    justify-content:center;
}
.popup-text-area input[type="checkbox"]:checked::after {
    width: 22px;
    height: 22px;
    line-height: 1;
}

/*****************************
右下角AD
*****************************/
#div_float_ad {
    position: fixed;
    right: 20px;
    bottom: 20px;
    cursor: pointer;
    max-width: 100%;
    z-index: 999;
    width:192px;
    height: auto;
}
@media (max-width: 1199px) {
    #div_float_ad {
        right: 15px;
        bottom: 90px;
    }
}
.side_ad_block {
    position: relative;
    text-align: right;
}
.side_ad_block a {
    color: #ffffff;
    text-shadow: none;
}
.side_ad_block a:hover {
    color: #ffffff;
    text-shadow: none;
    opacity: 1;
}
.side_ad_block img {
    max-height: 192px;
    max-width: 100%;
    cursor: pointer;
    -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.3));
    filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.3));
    object-fit: contain;
}
@media (max-width: 480px) {
    .side_ad_block img {
        height: 180px;
        max-width: 100%;
        cursor: pointer;
    }
    .m-t-45 {
        margin-top: 35px;
    }
}
.side_ad_block #close {
    position: absolute;
    right: -7px;
    top: -14px;
    border-radius: 50%;
    cursor: pointer;
    width: 30px;
    height: 30px;
    line-height: 32px;
    color: #ffffff;
    text-align: center;
    background-color: rgba(0, 0, 0, 1);
}
@media (max-width: 991px) {
    #close {
        right: -30px;
    }
}
#a_float_ad_close{
	margin-left: -20px;
	line-height:1.1;
}

.margin_top4 {
    scroll-margin-top: 4em;
}
.margin_top5_5 {
    scroll-margin-top: 5.5em;
}
.margin_top6 {
    scroll-margin-top: 8em;
}
@media (max-width: 991px) {
    .margin_top6 {
        scroll-margin-top: 6em;
    }
}

/*JW 2025/12/30 V14 手機版：APP下載頁「會員權益」表格過寬，讓表格可在手機寬度內顯示（避免橫向撐爆）。*/
@media (max-width: 767px) {
    /*JW 2025/12/30 V14 手機版：#title_xxx_xxx 錨點避免被 sticky header 蓋住（搭配 page.js 動態量測 header 高度）。*/
    [id^="title_"] {
        scroll-margin-top: var(--v14-anchor-offset, 180px);
    }

    table.custom_app_section_6_table {
        width: 100% !important;
        max-width: 100% !important;
        table-layout: fixed;
    }
    table.custom_app_section_6_table th,
    table.custom_app_section_6_table td {
        padding: 6px !important;
        font-size: 12px;
        word-break: break-word;
    }
    table.custom_app_section_6_table img {
        max-width: 100%;
        height: auto;
    }
}

/*JW 2025/12/30 表格太窄時，表頭（三個會員等級）會擠在一起：把觸發點從 375px 放寬到 480px。*/
@media (max-width: 480px) {
    /* 表格第一列是會員等級表頭（實際結構是 th + div.custom_app_section_5_label01）：縮字 + icon/文字改直排。 */
    table.custom_app_section_6_table tr:first-child th {
        padding: 4px 2px !important;
        white-space: normal !important;
    }
    table.custom_app_section_6_table tr:first-child th .custom_app_section_5_label01 {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 2px !important;
        white-space: normal !important;
        min-width: 0 !important;
    }
    table.custom_app_section_6_table tr:first-child th .custom_app_section_5_label01 span {
        font-size: 11px !important;
        line-height: 1.2 !important;
        letter-spacing: 0 !important;
        white-space: normal !important;
        word-break: break-word !important;
        overflow-wrap: anywhere !important;
    }
    table.custom_app_section_6_table tr:first-child th .custom_app_section_5_label01 img {
        max-width: 20px !important;
        height: auto;
    }
}

/*JW 2025/12/30 超窄螢幕（<360px）再降一階字級。*/
@media (max-width: 360px) {
    table.custom_app_section_6_table tr:first-child th .custom_app_section_5_label01 span {
        font-size: 9px !important;
    }
    table.custom_app_section_6_table tr:first-child th .custom_app_section_5_label01 img {
        max-width: 16px !important;
    }
}
/*Only Safari*/
@media not all and (min-resolution: 0.001dpcm) {
    #brand_List.brand .margin_top6 {
        position: absolute;
    }
    #mobile_container .margin_top6 {
        position: absolute;
    }
    .product_details_tab_area.margin_top4 {
        position: relative;
        scroll-margin-top: 0;
    }
}
/*Only Firefox*/
@-moz-document url-prefix() {
    #brand_List.brand .margin_top6 {
        scroll-margin-top: 6em;
    }
}
.m_brand_banner span {
    display: block;
}
@media (max-width: 767px) {
    .m_brand_banner img {
        margin-top: 0;
    }
}
.m_brand_banner img {
    width: 100% !important;
    height: auto !important;
}
/* 麵包屑 */
.row_crumb.gray_bg{
	background:transparent!important;
}
/*****************************
爆品STYLE
*****************************/
.page_banner {
    position: relative;
}
.page_banner a img {
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}
.page_text {
    position: absolute;
    text-align: center;
    width: 100%;
    top: 30%;
    color:#3B3B3B;
}
#member_qrcode img {
    margin: 0 auto;
}
.cursor-default {
    cursor: default;
}
.width-content {
    width: fit-content;
}
.add_block {
    padding: 20px 0;
    position: absolute;
    top: 15%;
    right: 0;
    width: 90px;
    z-index: 9;
    text-align: right;
    cursor: pointer;
}
@media (max-width: 767px) {
    .add_block {
        top: 4%;
        text-align: right;
    }
}
.add img {
    width: 50px;
    right: 0;
    cursor: pointer;
    -webkit-filter: drop-shadow(0px 0px 7px rgba(0, 0, 0, 0.7));
    filter: drop-shadow(0px 0px 7px rgba(0, 0, 0, 0.7));
}
@media (max-width: 480px) {
    .add img {
        width: 50%;
    }
}
.pr .product__tag {
    position: absolute;
    top: 0px;
    left: 0px;
    text-align: center;
    color: #fff;
    font-size: 10px !important;
    height: 35px;
    width: 35px;
    border-radius: 50%;
    z-index: 1;
    font-weight: 500;
    padding: 2px;
    line-height: 2.8;
}

.slick-slide img {
    cursor: pointer;
}
/*****************************
策展商品區域
*****************************/
.curation_area {
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat;
    border-radius: 10px;
    padding: 20px 10px 10px;
    width: 100%;
}
.curation_timer {
    line-height: 1.2;
    font-weight: 500;
    position: relative;
    top: 32%;
    width: 90%;
    margin: 0 auto;
}
.curation_timer .no {
    font-size: 33px;
    background: #000000;
    color: #ffffff;
    height: 100px;
    margin: 0 auto 20px;
    padding: 10px;
    text-align: center;
    line-height: 1.5;
}
@media (min-width: 576px) and (max-width: 767px) {
    .curation_timer .no {
        margin-top: -30px;
    }
}
.curation_timer .no span {
    width: 100%;
    display: block;
}
.curation_timer .time {
    font-size: 18px;
    font-weight: 300;
}
@media (max-width: 991px) {
    .curation_timer {
        top: 18%;
    }
    .curation_timer .no {
        position: relative;
        top: 18%;
        width: 100%;
    }
}
@media (max-width: 576px) {
    .curation_timer {
        position: inherit;
    }
    .curation_timer .no {
        height: auto;
        font-size: 30px;
        color: #ffffff !important;
        height: auto;
        margin: 0 auto 20px;
        padding: 10px;
        text-align: center;
        line-height: 1;
    }
    .curation_timer .no span {
        width: auto;
        display: block;
    }
    .curation_timer .time {
        font-size: 15px;
    }
}
@media (max-width: 480px) {
    .curation_timer .no {
        font-size: 18px;
    }
    .curation_timer .time {
        font-size: 12px;
    }
}
.product_area {
    background-position: center top;
    background-size: contain;
    background-repeat: no-repeat;

    padding: 20px 30px;
}
.product_content {
    position: absolute;
    z-index: 9;
    top: 24%;
    color:#3B3B3B;
}
.product_img {
    margin-top: 30px;
    position: relative;
    right: 13px;
}
.product_title {
    font-size: 30px;
    font-weight: 600;
    line-height: 40px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    text-align: left;
}
.product_price {
    font-size: 55px;
    font-weight: bold;
    color: #d22d26;
    width: 100%;
    line-height: 40px;
}
.v_align_b {
    vertical-align: baseline;
}
@media (max-width: 1200px) {
    .product_area {
        padding: 20px;
    }
    .product_title {
        font-size: 30px;
        font-weight: 600;
        line-height: 40px;
        display: -webkit-box;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        white-space: normal;
        overflow: hidden;
        text-align: left;
        margin-bottom: 10px;
    }
    .product_img {
        margin-top: 30px;
        position: relative;
        right: 2px;
    }
    .product_price {
        font-size: 50px;
        font-weight: bold;
        color: #d22d26;
        width: 100%;
        line-height: 50px;
    }
}
@media (max-width: 991px) {
    .product_price {
        font-size: 45px;
        line-height: 45px;
    }
}
@media (max-width: 767px) {
    .product_title {
        font-size: 40px;
        font-weight: 600;
        line-height: 40px;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        white-space: normal;
        overflow: hidden;
        text-align: left;
        margin-bottom: 10px;
    }
    .product_price {
        font-size: 55px;
        line-height: 60px;
    }
    .product_img {
        right: 10px;
    }
}
@media (max-width: 640px) {
    .product_title {
        font-size: 30px;
        font-weight: 600;
        line-height: 40px;
        display: -webkit-box;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        white-space: normal;
        overflow: hidden;
        text-align: left;
        margin-bottom: 10px;
    }
    .product_price {
        font-size: 50px;
        line-height: 60px;
    }
}
@media (max-width: 480px) {
    .product_area {
        padding: 10px;
    }
    .product_title {
        margin-bottom: 0;
        font-size: 25px;
    }
    .product_content {
        top: 19%;
    }
    .product_price {
        font-size: 32px;
        line-height: 24px;
    }
}
/*****************************
輪播文字圖片block
*****************************/
.owl-theme .item {
    text-align: center;
}

.owl-carousel .item h4 {
    color: #fff;
    font-weight: 400;
    font-size: 1.4375rem;
    margin-top: 0rem;
}
.owl-theme.w_80 img {
    width: 80%;
    margin: 0 auto;
}
@media (max-width: 767px) {
    .owl-theme.w_80 img {
        width: 90%;
        margin: 0 auto;
    }
}
/*****************************
分店分類商品block
*****************************/
#div_sub_category_area {
    height: 0;
}
.tab_title {
    width: 100%;
    font-size: 20px;
    position: relative;
    color:#3B3B3B;
    padding-left: 15px;
    line-height: 1.5;
}
.tab_title::after {
    background: #FF3C74;
    content: "";
    height: 20px;
    width: 4px;
    top: 4px;
    left: 0;
    position: absolute;
}
/*****************************
Sale TAG
*****************************/
.tag_area {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 46px;
    height: 46px;
    overflow: hidden;
    z-index:8;
    pointer-events: none;
}
@media (max-width: 1288px) {
    .tag_area {
        width: 36px;
        height: 36px;
    }
}
@media (max-width: 1199px) {
    .tag_area {
        width: 46px;
        height: 46px;
    }
}
@media (max-width: 991px) {
    .tag_area {
        overflow: hidden;
    }
}
@media (max-width: 767px) {
	.tag_area {
	    top:2px;
		right:4px;
		width: 36px;
        height: 36px;
	}
	.tag_area .m-t-5{
	    margin-top:2px;
	 }
}
.tag_area img {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 8px;
    width: 100%;
    pointer-events: none;
}
.tag_area01 {
    position: absolute;
    top: 0;
    right: 0;
    width: 40px;
    z-index: 1;
}
.tag_area01 img {
    position: absolute;
    top: 2px;
    left: 2px;
    width: 32px;
    height: auto;
}

.modal-body .tag_area{
	top:0;
	left:13px;
}
@media(min-width:768px){
.modal-body .tag_area{
	left:16px;
}
}
.tag_area_r {
    position: absolute;
    top: 2px;
    right: 13px;
    width: 40px;
    z-index: 8;
}
.tag_area_r img {
    width: 100%;
}
@media (max-width: 767px) {
    .tag_area01 {
        right: 15px;
    }
}
.tag_full{
    width:100% !important;
    height:auto;
    top: 0px;
    left: 0px;
}
.tag_full img{
    width:100% !important;
    height:auto;
}
.tag_area > *:nth-child(n+5) {
    display: none;
}
.p_promote_hint {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    color: #ffffff;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-radius: 0 0 100px 100px;
    background:var(--header_main_bg_color);
    padding:10px;
    display:flex;
    flex-direction:column;
    align-items:center;
    width:66px;
    height:66px;
    font-size: 19px;
    line-height:20px;
}
.p_promote_hint div {
    line-height:15px;
}
.p_promote_hint:has(> div:empty):not(:has(> div:not(:empty))) {
    display: none;
}
.p_promote_hint {
    display:flex;
}
@media (max-width: 1288px) {
    .p_promote_hint {
        width:50px;
        height:56px;
        font-size: 14px;
        line-height:15px;
    }
}
@media (max-width: 1199px) {
    .p_promote_hint {
        width:66px;
        height:66px;
        font-size: 19px;
        line-height:20px;
    }
}
@media (max-width: 767px) {
    .p_promote_hint {
        width:50px;
        height:56px;
        font-size: 14px;
        line-height:15px;
    }
}
/*
@media (max-width: 1199px) {
    .p_promote_hint {
    	height:38px;
        padding:7.5px;
    }
     .p_promote_hint div{
	     font-size:12px;
	     line-height:14px;
    }
}
@media (max-width: 991px) {
     .p_promote_hint div{
	     font-size:9px;
	     line-height:10px;
    }
}
*/
.pcard_row .tag_area img {
    margin-top:2px;
}
.pcard_row .p_promote_hint{
    top:-10px;
    left:-10px;
    font-size: 14px;
    line-height:15px;
}
@media(max-width:1199px){
	.pcard_row .p_promote_hint{
	    font-size: 12px;
	    line-height:14px;
	}
}
@media(max-width:991px){
	.pcard_row .p_promote_hint{
	    font-size: 9px;
	    line-height:10px;
	}
}
/*****************************
標準間距
*****************************/
.block_m_b {
    margin-bottom: 20px;
}
.block_p_tb {
    padding: 20px 24px;
}
.block_p_b {
    padding-bottom: 20px;
}
.section-content_m-b-10 {
    margin-bottom: 10px;
}
@media (max-width: 767px) {
    .section-content {
        margin-bottom: 0;
    }
    .section-content.short {
        margin-bottom: 0;
    }
}
.product_block {
    border-radius: 5px;
    background: #ffffff;
    box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.1);
    margin-bottom: 30px;
    padding: 50px 20px;
}
.product_block {
    border-radius: 5px;
    background: #ffffff;
    box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.1);
    margin-bottom: 30px;
    padding: 50px 20px 10px;
}
.hero--1.m-b-50 {
    margin-bottom: 35px;
}
@media (max-width: 767px) {
    .block_m_b {
        margin-bottom: 0;
    }
    .block_p_b {
        padding-bottom: 35px;
    }
    .block_p_tb {
        padding: 25px 0;
    }
    .product_block {
        padding: 25px 20px 10px;
    }
    .hero--1.m-b-50 {
        margin-bottom: 15px;
    }
}
/****************************頁面連結按鈕*****************************************/
.inner_link_parent {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.inner_link_element_50 {
    flex: 1 1 50%;
    padding: 2px;
    margin-bottom: 5px;
}
.inner_link_element_33 {
    flex: 1 1 33%;
    padding: 2px;
    margin-bottom: 5px;
}
.inner_link_element_16 {
    flex: 1 1 16%;
    padding: 2px;
    margin-bottom: 5px;
}
.inner_link_element_25 {
    flex: 1 1 25%;
    padding: 2px;
    margin-bottom: 5px;
}
.inner_link_element_20 {
    flex: 1 1 20%;
    padding: 2px;
    margin-bottom: 5px;
}
.swal2-icon-content.content-size {
    font-size: 4em !important;
}

:root {
    --header_main_bg_color: #ffffff;
    --header_main_f_color: #3B3B3B;
    --header_sub_bg_color: #f5f5f5;
    --header_btn_top_bg_color:#3B3B3B;
    --header_btn_top_f_color: #ffffff;
    --header_link_f_color:#3B3B3B;
    --header_link_hover_color: #ff3c74;
    --mega-menu_left: 0%;
    --mega-menu_width: 800%;
    --footer_main_bg_color:#ffffff;
    --footer_main_f_color: #3B3B3B;
    --footer_sub_bg_color: #ffffff;
    --footer_link_f_color:#3B3B3B;
    --footer_link_hover_color: #ff3c74;
    --upload_filenam_display: block;
    --upload_statusbar_width: 500px;
    --upload_statusbar_margin: 5px;
    --upload_progress_width: 250px;

     /*2025/11/10, bjwu, validation 相關樣式*/
    --hint_err_color: #CA0030;
}

/*OTHER*/
.security_hint .row {
    margin-left: 20px;
}
@media screen and (min-width: 414px) and (max-width: 767px) {
    .security_hint .row {
        margin-left: 60px;
    }
}
@media (max-width: 417px) {
    .security_hint .row {
        margin-left: 0;
    }
}

a:hover.d-revert {
    color:#3B3B3B;
}
.serif-font {
    font-family: "Noto Serif TC", serif;
}
.noto-sans-font {
    font-family: "Noto Sans TC";
}
input,
textarea {
    -webkit-appearance: none !important;
}
.nowrap {
    white-space: nowrap;
}
.alphabetBlock > [class*="col-"] {
    line-height: 2.5;
}
.cookie {
    background: rgba(222, 111, 111, 0.92);
    color: #ffffff;
    text-align: center;
    padding: 15px 10px;
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 9999;
    font-weight: 400;
    font-size: 1rem;
}
.cookie .btn {
    padding: 7px 10px;
    font-size: 0.95rem;
}
@media (max-width: 767px) {
    .cookie {
        font-size: 0.9rem !important;
    }
    .cookie .btn {
        font-size: 0.85rem;
    }
}
#div_init_page_kv_mobile .slick-slide {
    padding: 0;
}
#member_qrcode.w_90 {
    width: 90%;
    height: auto;
    margin: 0 auto;
}
.vertical_top {
    vertical-align: top;
}
.border_white {
    border-bottom: 1px solid #ffffff;
    height: 1px;
    opacity: 0.5;
}
.border_white01 {
    border-bottom: 1px dotted #ffffff;
    height: 1px;
    opacity: 0.2;
}
@media (max-width: 480px) {
    .border_white01 {
        display: none;
    }
}
.border_area01 {
    background: #f7f7f7;
    color:#3B3B3B;
    font-size: 1.3rem;
    line-height: 2;
    padding: 20px;
}
.w_90 img {
    width: 90%;
    height: auto;
}
.category_gray {
    background: #ffffff;
    padding: 40px 20px 0;
    margin-top: -10px;
}
@media (max-width: 767px) {
    .category_gray {
        padding: 20px 0 0;
    }
}
.m_width_100 img {
    max-width: 100%;
    height: auto !important;
    display: block;
}
.m_width_100 iframe {
    max-width: 100%;
    object-fit: cover;
    display: block;
}
#div_outer_brand .product__tag {
    height: 40px;
    width: 40px;
    font-size: 12px;
    line-height: 40px;
    padding: 0;
}
@media (max-width: 767px) {
    .background-cover {
        background-size: cover !important;
    }
}
.m_auto {
    margin: 0 auto;
}
.d_flex {
    display: flex;
}
.d_block {
    display: block;
}
.line_h0 {
    line-height: 0;
}
.line_h3 {
    line-height: 3;
}

.nb {
    border: 1px solid transparent !important;
}
textarea.ns {
    resize: none;
}
@media(max-width:575px){
textarea.ns.mh-210px{
    min-height:auto;
}
}
table.nb > tbody > tr {
    border: 0;
}
.w_full {
    width: 100% !important;
}
@media (max-width: 767px) {
    .w_full {
        width: 100%;
    }
}
.footer-right {
    margin-left: auto;
    margin-right: 0;
}
.d_none {
    display: none;
}
.d_r_float {
    float: right;
}
.promote_color {
    color: #369e0a;
}
textarea.ban {
    resize: none;
    border: 0;
}
.review_sort {
    padding: 5px 40px 5px 15px !important;
}

.product-details-box {
    padding: 20px;
}
@media (max-width: 350px) {
    .product-details-box {
        padding: 0;
    }
}
.b-t-0 {
    border-bottom: 0 !important;
}
.border_none {
    border: none;
}

.no_border {
    border: 0px solid #000;
}

.review_vertical {
    width: 30px;
    vertical-align: top;
}
.td_review {
    width: 95%;
    text-align: left;
}
.margin_review {
    margin: 3px 0px 5px 0px;
}
.review_msg {
    font-size: 95%;
    background: #fafafa;
    padding: 10px;
}
.review_div_hidden {
    visibility: hidden;
    height: 30px;
}
.review_border {
    border: 1px #dddddd solid;
    background: #f6f6f6;
}
.review_table {
    table-layout: fixed;
    width: 100%;
    background: #fff;
    border: 2px solid #ffffff;
}
.review_table td {
    padding: 5px 10px;
}
.review_avatar {
    width: 25px;
    height: auto;
}
.review_p5 {
    padding: 5px;
}
.review_p1 {
    padding: 1px;
}
.review_time_r {
    font-family: Arial;
    font-size: 13px;
    float: right;
    color: #999999;
}

.review_time {
    font-family: Arial;
    font-size: 13px;
    text-align: left;
    color: #999999;
}
@media (max-width: 1199px) {
    .review_time {
        float: right;
    }
}
.img_block {
    border: 1px dotted var(--header_sub_bg_color);
    text-align: center;
}
@media (max-width: 575px) {
    .review_time {
        float: none;
    }
    .review_time_r {
        float: none;
    }
}
.review_div {
    margin-bottom: 10px;
}
.review_center {
    margin: auto;
    width: 100%;
    padding: 40px;
    height: 100px;
    background-color: #fff;
}
.containerRespondent {
    position: relative;
    text-align: center;
    color: white;
}

.centeredRespondent {
    position: absolute;
    background: var(--header_sub_bg_color);
    width: 25px;
    height: 25px;
    line-height: 25px;
    border-radius: 50%;
}
.btn--review--small {
    padding: 3px 20px;
}
.btn--review--small small {
    font-size: 14px !important;
}
.review_table {
    padding: 10px;
}
/*---------------slick-dots滑動效果---------------*/
.slick-dots-container {
    max-width:800px;
    height: 8px;
    position: relative;
    padding: 0;
    display: flex;
    transition: all 0.25s;
    margin: auto;
    list-style: none;
    align-items: center;
    justify-content: center;
    margin-top:16px;
    margin-bottom:16px;
}
@media(max-width:1499px){
	#div_init_page_kv .slick-dots-container {
		margin-top:6px;
	}
}
/* 預設灰色圓點 */
ul.slick-dots-container{
  list-style-type: none!important;
}
.slick-dots-container li {
    width: 8px;
    height: 8px;
    margin: 0 8px;
    background-color: #222222;
    opacity:0.2;
    border: none;
    border-radius: 30px;
    transition: all 0.35s ease;
}
@media(max-width:767px){
.slick-dots-container li {
	margin:0 4px;
}
}

/* 清除預設 button 樣式 */
.slick-dots-container li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 100%;
    height: 100%;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: 0;
    background: transparent;
}

/* active 狀態變長條，有滑動延展效果 */
.slick-dots-container li.slick-active {
    background-color: #222222 !important;
    opacity:0.7;
    width: 108px;
    border-radius: 30px;
    transition: all 0.35s ease;
}
@media(max-width:1439px){
.slick-dots-container li.slick-active {
	width: 81px;
}
}
@media(max-width:991px){
.slick-dots-container li.slick-active {
	width: 54px;
}
}

/* 移除 slick 預設 before 點 */
.slick-dots li button:before {
    display: none;
}
/*---------------2021.11.25 Freya---------------*/
.dis_margin {
    margin-top: 0px !important;
}
.review_textarea {
    width: 100%;
    height: 10em !important;
}
.g-recaptcha {
    transform: scale(0.9);
    transform-origin: 0 0;
    height: auto;
}
@media only screen and (max-width: 460px) {
    .g-recaptcha {
        transform: scale(0.74);
        transform-origin: 0 0;
    }
}
.ajax-file-upload-filename {
    display: var(--upload_filenam_display, block) !important;
    color:#464646;
}
.ajax-file-upload-statusbar {
    width: var(--upload_statusbar_width, 500px) !important;
    margin: var(--upload_statusbar_margin, 5px) !important;
}
.ajax-file-upload-progress {
    width: var(--upload_progress_width, 250px) !important;
}
a.disabled {
    pointer-events: none;
    cursor: default;
}
.display_none {
    display: none;
}

.review_img_div {
    width: 100%;
    height: 90px;
    background-color: #d4e6f8;
    text-align: center;
    margin-top: 15px;
}
.review_i {
    width: 80px;
    height: 50px;
    margin: 3px auto 3px auto;
}

.review_img_center {
    text-align: center !important;
}
.review_button {
    padding: 10px 10px;
}
.div_recaptcha_button {
    margin-top: 5px;
}
.div_recaptcha {
    float: left;
    height: 85px;
}
.review_float {
    float: right;
    margin-top: 35px;
}

@media (max-width: 575px) {
    .review_float {
        float: left;
        margin-top: 0;
    }
}
@media (max-width: 460px) {
    .div_recaptcha {
        height: 70px;
    }
}
.div_review_border {
    border: 1px #dddddd solid;
}
.review_p {
    line-height: 1.6 !important;
}
.reviews-hover-red:hover {
    color: var(--header_sub_bg_color);
}
.review_fit_content {
    width: auto;
    font-size: 14px;
    font-weight: 600;
}
.review_font_size_1 {
    font-size: 1em;
}

.review_select {
    width: 200px;
}
.review_hr {
    border-bottom: 1px dotted #cccccc;
    margin: 10px auto;
}
.QA_img {
    width: 100%;
}
.QA_max_w {
    max-width: 300px;
    word-break: break-all;
}
.resize_none {
    resize: none;
}
.inline_block {
    display: inline-block;
}
button:disabled .shopping-fa-color{
    color: inherit !important;
}
.max_width_35 {
    max-width: 35px;
}
.shoppingCenteredRespondent {
    background:var(--header_main_f_color,#3B3B3B);
    width: 35px;
    height: 33px;
    border-radius: 50%;
    font-weight: bold;
    color: #fff;
    cursor: auto !important;
}
.table-cell {
    display: table-cell !important;
}
.hit_brand_product {
    background: #fff;
    text-align: center;
    font-size: 1.1rem;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}
.hit_brand_product .row {
    margin: 0;
}
.hit_brand_product .row > [class*="col-"] .product__box {
    padding: 10px !important;
    height:100%;
    margin: 0 8px;
}
@media(max-width:767px){
	.hit_brand_product .row > [class*="col-"] .product__box {
	    margin: 0 4px;
	}
}
[id *='div_hit_product_hb-'] [class*="col-"]{
	margin:16px 0;
}
[id *='div_hot_blist_hb-'] .slick-slide img{
	border:1px solid #e2e2e2;
	transform:scale(0.9)
}

.hit_brand_product .square-block {
/*20251126 NR 圖縮小了先mark掉     width: 97%; */
    margin: auto;
}
.hit_brand_product .square-block img {
    transform: scale(1);
}
.footer__nav_title--dash::before {
    content: "";
    position: absolute;
    width: 11px;
    height: 3px;
    top: 50%;
    left: -15px;
    transform: translateY(-50%);
}
.hit_brand_product .col-10 {
    aspect-ratio: 1/1;
    border: 1px solid #eeeeee;
    padding: 10px;
    margin: auto;
    margin-bottom: 10px;
    margin-top: 10px;
}
@media (max-width: 767px) {
    .hit_brand_product .col-10 {
        border: 0;
    }
}
.hit_brand_product .col-12:last-child {
    margin-bottom: 0;
}
.footer__nav_title--dash {
    position: relative;
    margin-left: 15px;
}
.container_FollowUs {
    /* 	margin-top: -30px; */
    width: 100%;
}
.icon_FollowUs {
    font-size: 2em;
}
.expand-menu {
    color: var(--header_main_bg_color);
    background-color: var(--header_sub_bg_color);
    border-top: 1px solid #e0e0e0;
    padding: 0 !important;
    position: absolute;
    left: 0px;
    top: 60px;
}
.m-r--10 {
    margin-right: -10px;
}
.div_searh {
    background-color: white;
    cursor: pointer;
    border: solid 2px #ddd;
    padding: 0 5px 0 10px;
}

.m-t-03 {
    margin-top: 3px;
}

.m-t-3 {
    margin-top: -2px;
}
.m-t-0{
	margin-top:0!important;
}
.m-t--2 {
    margin-top: 0;
}

.padding_15 {
    padding: 15px 0;
}
.padding_10 {
    padding: 10px;
}
.padding_20 {
    padding: 20px;
}

.footer_border {
    border-top: 4px solid #ff3c74;
    border-bottom: 4px solid #ff3c74;
    height: 11px;
}
.footer_copyright {
    padding-bottom: 32px;
}
.footer-m-t-0 {
    margin-top: 0px !important;
}
.header_logo_auto {
    width: auto;
}
.header_logo_auto_max_width {
    max-height: 43px;
}
@media (min-width: 576px) {
    .header_logo_auto_max_width {
        max-height: 50px;
    }
}
@media (min-width: 992px) {
    .header_logo_auto_max_width {
        max-height: 40px;
    }
}
.div_searh_width {
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 130px;
}
.div_searh_style {
    display: flex;
    align-items: center;
    width: 180px;
    color: rgba(0, 0, 0, 0.3);
}
@media (min-width: 200px) {
    .div_searh_style {
        width: auto;
        font-size: 12px;
        transform: scale(1.1);
        white-space: nowrap;
        color: #000;
    }
}
@media (min-width: 420px) {
    .div_searh_width {
        width: 150px;
    }
    .div_searh_style {
        font-size: 11px;
    }
}
@media (max-width: 991px) {
    .div_searh_style {
        display: flex;
        margin-top: -1px;
    }
}
@media (max-width: 575px) {
    .div_searh_style i {
        font-size: 20px;
        transform: none;
    }
}

.m-t--10 {
    margin-top: -10px !important;
}
.full_Page {
    max-width: 100%;
    max-height: 80vh;
    object-fit: contain;
    background-color: rgba(255, 255, 255, 0.7);
    padding: 5px;
    overflow: auto;
}
.popUp_Div {
    display: none;
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.7);
    text-align: center;
}
.popUp_Div_center {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}
.full_src {
    max-width: 100vh;
}
.full_img_cross {
    height: 30px;
    width: 100%;
    background-color: black;
}
.setFull_img_cross {
    height: 30px;
    margin-left: auto;
    width: 30px;
    color: white;
    font-size: 18px;
    cursor: pointer;
}
.setFull_img_cross:hover {
    color: gray;
}
.page_title h1{
   font-size: 40px!important;
   line-height: 57px !important;
   font-weight: 600;
   text-align: center;
   margin-bottom: 24px;
   letter-spacing: 3px;
}
@media(max-width:1199px){
	.page_title h1{
	   font-size: 32px!important;
	   line-height: 1.5em !important;
	}
}
@media(max-width:991px){
	.page_title h1{
	   font-size: 24px!important;
	   line-height: 26px !important;
	}
}
.color-gray > h2 {
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    display: inline;
}
a.product__link > h3 {
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
}
#span_product_total_cnt > h1 {
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
}
#ul_product_detail_brand > a > h2 {
    font-size: 16px;
    font-weight: inherit;
    line-height: inherit;
    color:#1B71E9;
    text-decoration:underline;
}
.the-canvas {
    border: 1px solid black;
    direction: ltr;
}
.li_FollowUs {
    display:flex;
    align-items:center;
    justify-content:center;
}

.QA_max_w iframe {
    width: 100%;
}
.color_circle {
    width: 25px;
    height: 25px;
    border-radius: 50%;
    margin-right: 7px;
    border: 2px solid #fff;
    -webkit-box-shadow: 0 0 2px #878787;
    -moz-box-shadow: 0 0 2px #878787;
    box-shadow: 0 0 2px #878787;
}
.color_circle.active {
    box-shadow: 0 0 0px 2px #878787;
}
.color_circle.mask:not(.active) {
    opacity: 0.3;
}
.color_circle_board_dark {
    border: 2px solid #f3f3f3;
}
.order_detail_line_feedback {
    float: right;
    margin-top: -10px;
    width: 130px;
}
@media (max-width: 480px) {
    .order_detail_line_feedback {
        margin-top: -20px;
    }
}
.no-scroll {
    overflow: hidden;
}
.page_article_tag {
    padding: 4px 15px;
}
.article_lh_ftw {
    line-height: 1.3;
    font-weight: normal;
}
.article_lh_ftw.gray {
    color: #999999 !important;
}
.title_border_area {
    position: relative;
    text-align: center;
}
.title_border_dark {
    border-top: 1px solid #000000;
}
.border_pattern {
    width: 100px;
    height: 6px;
    margin: -1px auto 0;
    display: flex;
}
.border_red {
    width: 30%;
    height: 5.5px;
    background: #ca2d26;
}
.border_black {
    width: 70%;
    height: 5.5px;
    background: #000000;
}
.red_li ul {
    font-family: Serif;
    list-style-image: var(--page_img_ul_li);
    color:#3B3B3B;
    list-style-position: outside;
    line-height: 1.8;
}
.red_li ul li {
    font-size: 18px;
    line-height: 1.5;
    padding-left: 3px;
    font-weight: 700;
    text-decoration: underline;
}
.red_li ul li::marker {
    font-size: 22px;
}
.udl_none {
    text-decoration: none !important;
}
.ft_size_1 {
    font-size: 1rem !important;
}
.li_square {
    list-style: square;
}
.button_i_circle {
    width: 25px;
    height: 25px;
    border-radius: 25px;
    background: #fff;
    color: #777;
    text-align: center;
    padding-left: 2px;
}
.button_i_circle > i {
    font-size: 15px;
}
#div_sub_mh_area {
    margin-top: -44px;
}
#div_sub_mh_area > task-details layer {
    padding: 0px 35px 10px;
    border-bottom: 4px solid;
}
.select2-selection__placeholder {
    color: #3B3B3B !important;
}
.ft_color_main {
    color: var(--header_sub_bg_color) !important;
}

.c_subscribe {
    color:#3B3B3B;
    background-color: #c84e49;
    text-align: center;
}
.a_subscribe {
    background-color: #13243e;
    color: #ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 40px;
}
.input_subscribe {
    height: 40px;
    margin-bottom: 10px;
}
.input_subscribe::placeholder {
    color: black;
    text-align: center;
}
.width_90p {
    width: 90% !important;
}
.width_80p {
    width: 80% !important;
}
.width_50p {
    width: 50% !important;
}
.width_30px {
    width: 30px !important;
}
.sub_tab_active {
    color: #0b2e13;
    border-bottom: 2px solid red;
    cursor: pointer;
}

.sub_tab_inactive {
    color: gray;
    border-bottom: 2px solid lightgray;
    cursor: pointer;
}
.width_max_215 {
    max-width: 215px !important;
}
@media (max-width: 1550px) {
    .width_max_215 {
        max-width: 100px !important;
    }
}
@media (max-width: 991px) {
    .width_max_215 {
        max-width: 120px !important;
    }
}
@media (max-width: 576px) {
    .width_max_215 {
        max-width: 100px !important;
    }
}
@media (max-width: 480px) {
    .width_max_215 {
        max-width: 80px !important;
    }
}
@media (max-width: 375px) {
    .width_max_215 {
        max-width: 70px !important;
    }
}
.page_category_2_br {
    height: 25px;
    margin-top: 5px;
    border: 1px solid #979797;
    margin-left: 10px;
}
.img_product_outline {
    width: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
}
.label_round {
    text-align: center;
    border-radius: 500%;
    padding: 10px;
    width: fit-content;
    margin-bottom: 5px;
}
.label_square {
    text-align: center;
    padding: 5px 10px;
    width: fit-content;
    margin-bottom: 5px;
}
.page_btn {
    padding: 10px 20px;
}
.page_btn.padding0 {
    padding: 0;
}
.page_pmanual_fbtn {
    text-align: center;
    width: 100%;
    padding: 10px 30px;
    display: block;
}
.bg-banner img {
    object-fit: cover;
    height: 262px;
}
.hot_title {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    font-size: 18px;
    line-height: 21px;
    font-weight: 500;
    margin-top: 10px;
}
.hot_des {
    font-size: 14px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    margin-top: 10px;
}
.ft_init {
    font-size: initial;
    margin-bottom: 0;
}
.lnh_init {
    line-height: initial;
}
.classify_drop_li {
    border: none !important;
    padding: 0px !important;
}
.first_classify_title {
    font-size: 0.95rem !important;
    font-weight: 600;
    color:#3B3B3B;
    margin-bottom: 5px;
}
.first_classify_title::before {
    content: "";
    font-family: "Font Awesome 5 Free";
    position: relative;
    left: 0;
    margin-right: 5px;
    font-weight: 300;
    color: var(--header_sub_bg_color);
}
.circle_img {
    height: 50px;
    width: 50px;
    object-fit: cover;
    border-radius: 25px;
}
.div_group_img_input_area {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 20px;
}
.div_group_img_area {
    width: 100px;
    height: 100px;
    border: 1px #cdcdcd solid;
    border-radius: 50px;
    justify-self: end;
    position: relative;
    overflow: hidden;
    cursor: pointer;
}
.div_group_img_area img {
    width: 100px;
    height: 100px;
    border-radius: 50px;
    object-fit: cover;
    background: #fff;
}
.div_group_img_area .div_edit {
    position: absolute;
    bottom: 0px;
    color: #fff;
    width: 100%;
    text-align: center;
    background: rgba(0, 0, 0, 0.5);
}
.div_group_img_input_line {
    border-left: dotted 1.5px #cdcdcd;
    height: 100%;
}
#modalViewMember .div_group_img_input_area {
    display: grid;
    grid-template-columns: auto auto 1fr;
    align-items: center;
    gap: 20px;
}
#modalViewMember .div_group_img_area,
#modalViewMember .div_group_img_area img {
    width: 70px;
    height: 70px;
    border-radius: 35px;
    cursor: unset;
}

.main_color_bg {
    background-color: var(--header_link_hover_color, #d0343d);
    color: #fff !important;
}
.main_color_bd {
    border: 1px solid var(--header_link_hover_color, #d0343d);
    color: var(--header_link_hover_color, #d0343d) !important;
}
.product_tag {
    text-align: center;
    border-radius: 10px;
    background-color: var(--header_link_hover_color, #d0343d);
    padding: 0px 5px;
    margin-right: 5px;
    color: #fff !important;
}
.hint-block {
    background-color: var(--hint_bg);
    color: var(--hint_color);
    font-size: 14px;
}
.tooltip-arrow.hint-block-arrow::before {
    border-top-color: var(--hint_bg) !important;
    border-bottom-color: var(--hint_bg) !important;
}
.div_header .tooltip {
    z-index: 100;
}
.share-cart-step {
    text-align: center;
    box-sizing: border-box;
    flex-flow: row wrap;
    width: 100%;
    display: flex;
    height: auto;
    justify-content: center;
}
.share-cart-img {
    padding: 30px 0 20px;
    text-align: center;
    width: 100%;
}
.share-cart-img img {
    width: 80px;
    height: auto;
}
@media (max-width: 567px) {
    .share-cart-img img {
        width: 60px;
    }
}
.share-cart-block {
    box-sizing: border-box;
    margin: 0px;
    flex-basis: 33.3333%;
    -webkit-box-flex: 0;
    flex-grow: 0;
    max-width: 33.3333%;
    position: relative;
    height: auto;
    padding-left: 6px;
    padding-right: 6px;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
    text-align: center;
    font-size: 0.775rem;
}
.share-cart-block::after {
    position: absolute;
    content: "";
    right: -6px;
    top: 40%;
    width: 0px;
    height: 0px;
    border-top: 5px solid transparent;
    border-left: 10px solid var(--header_main_bg_color);
    border-bottom: 5px solid transparent;
}
.share-cart-block::after {
    position: absolute;
    content: "";
    right: -6px;
    top: 40%;
    width: 0px;
    height: 0px;
    border-top: 5px solid transparent;
    border-left: 10px solid var(--header_main_bg_color);
    border-bottom: 5px solid transparent;
}
.share-cart-block:last-child::after {
    display: none;
}
@media (max-width: 567px) {
    .share-cart-block::after {
        border-top: 3px solid transparent;
        border-left: 7px solid var(--header_main_bg_color);
        border-bottom: 3px solid transparent;
        right: -4px;
    }
}
.share-step-bg {
    height: 120px;
    width: 120px;
    border-radius: 50%;
    background-color: rgb(238, 238, 238);
    margin-bottom: 10px;
    display: flex;
    justify-content: center;
    flex-direction: column;
}
.step-title {
    font-weight: bold;
    font-size: 15px;
    color: var(--header_main_bg_color);
}
.step-text {
    color:#3B3B3B;
    font-size: 15px;
    font-weight: bold;
    line-height: 1.3;
}
@media (max-width: 576px) {
    .share-step-bg {
        width: 90px;
        height: 90px;
    }
    .step-text {
        font-size: 12px;
    }
}
@media (max-width: 375px) {
    .share-step-bg {
        width: 80px;
        height: 80px;
    }
}
.set-block {
    background-color: #f3f3f3;
    padding: 20px 10px;
    width: 100%;
}
.set-col {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    gap: 15px;
    margin-top: 15px;
}
@media (max-width: 991px) {
    .set-col {
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }
}
@media (max-width: 767px) {
    .set-col {
        grid-template-columns: 1fr 1fr 1fr;
    }
}
@media (max-width: 576px) {
    .set-col {
        grid-template-columns: 1fr 1fr;
    }
}
.col-wbg {
    position: relative;
    background-color: #ffffff;
    padding: 10px;
}
.col-rt-btn {
    position: absolute;
    top: -10px;
    right: -5px;
    padding: 2px;
    cursor: pointer;
}
.col-rt-btn i {
    font-size: 20px;
}
.text-center {
    text-align: center;
}
.col-brand {
    height: 120px;
    width: 120px;
    margin: auto;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}
.set-brand-text {
    text-align: center;
    color:#3B3B3B;
    margin-top: 10px;
    line-height: 1.3;
}
.search__toggle {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
}
.category-list ul {
    padding-left: 0;
}
.category-list li {
    display: inline-block;
    padding: 3px 12px;
    margin-bottom: 10px;
    border: 1px solid #cccccc;
    border-radius: 30px;
    margin-right: 5px;
    cursor: pointer;
}
.category-list li.active {
    border: 1px solid var(--header_main_bg_color);
    color: var(--header_main_bg_color);
}
.brand-item ul {
    padding-left: 0;
}
.brand-item li {
    display: inline-block;
    text-align: center;
    border: 1px solid #dddddd;
    padding: 10px;
    margin-right: 8px;
    cursor: pointer;
    margin-bottom: 10px;
}
.brand-item li.active {
    border: 1px solid var(--header_main_bg_color);
}
.brand-item li .set-brand-text {
    font-size: 12px;
    margin-top: 10px;
}
.group-btn {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    align-items: center;
}
.display-revert {
    display: revert !important;
}

.filter-grid-layout {
    display: grid;
    grid-template-columns: auto auto;
    margin-top: -10px;
    gap: 10px;
    margin-right: 10px;
}

.checkmark {
    position: absolute;
    top: 0;
    right: 0;
    width: 50px;
    height: 50px;
    transform: translate(50%, -50%);
}

.checkmark::before,
.checkmark::after {
    content: "";
    position: absolute;
    background: red;
}

.checkmark::before {
    top: 20px;
    left: 10px;
    width: 30px;
    height: 10px;
}

.checkmark::after {
    top: 10px;
    left: 20px;
    width: 10px;
    height: 30px;
}
.checkmark::before {
    transform: rotate(-45deg);
}

.checkmark::after {
    transform: rotate(-45deg);
}
.tick {
    position: absolute;
    top: -10px; /* Adjust these values */
    right: -10px; /* Adjust these values */
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background-color: white;
    border: solid 2px #d22d26;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #d22d26 !important;
    font-size: 11px !important;
}
.init_cursor {
    cursor: initial !important;
}
.material-scrolltop {
	background: var(--header_btn_top_bg_color,linear-gradient(to bottom, rgba(255,118,157,1) 0%, rgba(255,60,116,1) 100%));
}
.material-scrolltop::before {
    color: var(--header_main_f_color),#ffffff;
}
.material-scrolltop.reveal {
    border-radius: 50px !important;
    width:70px;
    height:70px;
    font-size: 18px;
    border:0;
}
.material-scrolltop.reveal.ns  {
        right: 20px;
    }
@media (max-width: 1199px) {
    .material-scrolltop.reveal.ns  {
        bottom: 90px!important;
        right:14px;
    }
}
@media (max-width: 991px) {
    .material-scrolltop.reveal.ns  {
        font-size:13px;
    }
    .material-scrolltop.reveal {
        width:50px;
        height:50px;
    }
}
.cart-btn-area {
    margin-top: 20px;
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    justify-content: space-between;
}
.cart-btn-area .left-block {
    justify-content: flex-start;
}
.cart-btn-area .right-block {
    justify-content: flex-end;
}
.sub-total-text {
    display: inline-flex;
    justify-content: flex-end;
    margin-right: 10px;
}
.counter-wrap {
    border: 0 !important;
}
.counter-shmethod {
    background: #eeeeee !important;
}
.page_custom_pcmenu {
    background: #ffffff;
    z-index: 999;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.15);
    padding: 10px 20px 30px;
    border-radius: 10px;
    border: 1px solid #eee;
}
.page_custom_pcmenu .sub_title {
    margin-top: -18px;
}
.page_custom_pcmenu .link_t02 a {
    margin-left: -26px !important;
    position: relative;
    font-weight: 400;
    padding-left: 15px;
}
.page_custom_pcmenu .link_t02 a::before {
    position: absolute;
    content: "";
    top: 10px;
    left: 0px;
    height: 2px;
    width: 5px;
    background: var(--header_sub_bg_color, #d22d26);
    border-radius: 3px;
}
.w-35-rem {
    width: 35rem !important;
}
.des-bg {
    background: #bbbbbb;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
}
/* scroller */
.nav_bar_wrapper .scroller ul li {
    border: 1px solid #eeeeee;
    aspect-ratio: 1/1;
    height: 60px;
    width: 60px;
}
.hit_brand_img {
    aspect-ratio: 1/1;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
@media (max-width: 767px) {
    .nav_bar_wrapper .scroller {
        width: 100% !important;
        padding: 10px 0;
    }
    .nav_bar_wrapper .scroller ul {
        display: inline-flex;
        align-items: center;
        gap: 16px;
    }
    .hit_brand_img {
        width: 100%;
    }
}
.border-bottom0 {
    border-bottom: 0;
}
.popular-area {
    border-bottom: 1px solid #eee;
    padding: 10px;
    display: flex;
    align-items: center;
    gap: 10px;
    border-radius: 5px;
    margin-bottom: 10px;
    flex-wrap: wrap;
}
@media (max-width: 767px) {
    .popular-area {
        gap: 5px;
    }
}
.group-total {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 8px;
}
.img_100_cover {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.inner-layout {
    width: 98%;
    margin: auto;
}
@media (max-width: 1199px) {
    .inner-layout {
        width: 96.5%;
        margin: auto;
    }
}
.product-title,
.v14_product-title,
.hit_brand_title {
    height: 44px;
    font-weight:500!important;
    font-size: 16px!important;
    text-align:left;
    line-height: 1.5 !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    word-break: break-all;
    margin-top:8px;
}
@media (max-width: 991px) {
    .product-title,
.v14_product-title,
.hit_brand_title {
   		 font-size: 14px !important;
   		 height:38px;
    }
}
.bottom-mix {
    overflow: hidden;
}
.display_ruby {
    display: ruby;
}
.display_ruby img {
    display: inline-block;
}
.input-flex {
    display: flex;
    align-items: center;
    gap: 10px;
}
.tab-menu-swiper03 {
    padding-bottom: 0 !important;
}
.manual-set {
    top: 6px;
    background: transparent;
    position: absolute;
    z-index: 0;
    left: 0;
    width: 100%;
}

/*datepicker*/
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
    width: 50%;
}
.ui-datepicker .ui-datepicker-title {
    margin: 0 2em;
}
.ui-widget-header{
	background:#ffffff;
	border:0;
}
.ui-widget-content .ui-state-default{
	background:#ffffff;
	border:0;
	text-align:center;
	cursor:pointer;
}
.ui-widget-content a{
	display:block;
	cursor:pointer;
}
.ui-datepicker-calendar{
	border:0;
}
table.ui-datepicker-calendar tr{
	border:0;
}
.ui-state-default.ui-state-active{
	background: linear-gradient(to bottom, #ff769d 0%, #ff3c74 100%);
	border-radius:30px;
	display: flex;
	align-items:center;
    justify-content: center;
    width:32px;
    height:32px;
}

/*Componet*/
.cbp-hrmenu .cbp-hrsub-inner > .cbp_div {
    width: 14.2% !important;
}
@media (max-width: 1499px) {
    .cbp-hrmenu .cbp-hrsub-inner > .cbp_div {
        width: 16.6% !important;
    }

    .w-25 {
        width: 25% !important;
    }
}

@media (max-width: 1299px) {
    .cbp-hrmenu .cbp-hrsub-inner > .cbp_div {
        width: 20% !important;
    }
    .h-auto {
        height: auto;
    }
}
.h-38p {
    height: 38px !important;
}
.w-25 {
    width: 25% !important;
}
.col-form-label-md {
    font-size: 16px;
}
#span_product_detail_add_cart button,
#a_product_detail_add2cart button {
    height: auto;
}
#product_shipping_method {
    width: fit-content;
}
/*商品單頁放大鏡會遮到右邊的內容*/
.bg-zindex {
    position: relative;
    background: #ffffff;
    z-index: 1;
}

/* ***************************************** Header ***************************************** */
.head_mode_btn {
    border: 1px solid #dddddd;
    padding: 6px 10px 6px 10px;
    text-align: center;
    float: left;
    width: 45%;
}
.head_mode_btn.active {
    background: var(--header_sub_bg_color);
}
.head_mode_btn.active a {
    color: #ffffff;
}
.head_mode_btn a {
    display: block;
    color: #999999;
}
.head_mode_line {
    width: 1px;
    height: 24px;
    border-left: 1.5px dashed #cccccc;
}
.flex-btn {
    display: flex;
    gap: 5%;
    align-items: center;
}
.header_mobile_search {
    color: #000;
    font-size: 35px;
    margin-top: 5px;
}
@media (max-width: 575px) {
    .head_mode_btn {
        width: 45%;
        padding: 2px;
        font-size: 12px;
    }
}
/* ***************************************** 標題造型 *****************************************  */
.h2_title_bdb {
    border-bottom: 2px dashed #cccccc;
    margin-top: 30px;
    margin-bottom: 40px;
    letter-spacing: 5px;
}
@media (max-width: 575px) {
    .h2_title_bdb {
        font-size: 20px;
        margin-bottom: 24px;
    }
}
.h2_title_fit_width {
    width: fit-content;
}
.h2_title_block {
    width: 100%;
    text-align: -webkit-center;
}
.badge-border {
    border: 1px solid #e0e0e0;
    color: #999999;
    border-radius: 0.25rem;
    padding: 4px 8px;
    font-size: 12px;
}
@media (max-width: 575px) {
    .badge-border {
        font-size: 10px;
        padding: 4px 4px;
    }
}
.align-center {
    align-items: center;
}
.justify-center {
    justify-content: center;
}
.total-gap12 {
    display: flex;
    gap: 12px;
    align-items: center;
    justify-content: end;
}
.total-gap12 .price {
    min-width: 80px;
}
.min-80p {
    min-width: 80px;
}
.total-gap12 .btn--small {
    display: flex;
    padding: 10px 20px;
}
@media (max-width: 991px) {
    .total-gap12.header {
        flex-direction: column;
    }
    .total-gap12 .btn--small {
        padding: 8px 10px;
        font-size: 14px;
    }
    .account-wrapper h5 {
        font-size: 14px !important;
    }
}
@media (max-width: 991px) {
    .total-gap12 .price {
        min-width: 100%;
        text-align: right;
    }
}
.btn--small.sm {
    font-size: 14px;
    padding: 6px 16px;
    font-weight: normal;
    display: inline-flex;
    align-items: center;
}
@media (max-width: 575px) {
    .btn--small.sm {
        font-size: 12px;
        padding: 4px 12px;
    }
}

.w-50p {
    width: 50%;
}
.combination-block {
    background: #f9eff0;
    padding: 20px 12px 0;
}
.tab_title.m-t-20 {
    margin-top: 0 !important;
}
.combination-block .tab_title.m-t-20 {
    margin-bottom: 4px;
}
.combination-block .product__box--default {
    background: #ffffff;
    border-radius: 10px;
    margin-top: -8px !important;
}
.circle-no {
	display:flex;
	justify-content:center;
    height: 20px;
    width: 20px;
    line-height: 18px;
    border-radius: 30px;
    background: #eeeeee;
    margin-right: 5px;
}
.grid-merge {
    grid-column: 1 / -1;
}

/* 出貨modal 上方名稱樣式 */
.m-ship-title {
    font-size: 16px;
    line-height: 1.8;
}
.m-qrcode-title label {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    height: 100%;
}
@media (max-width: 991px) {
    .m-qrcode-title label {
        justify-content: center;
    }
}
@media (max-width: 575px) {
    .m-ship-title label {
        font-size: 14px;
        text-align: left;
    }
    .m-ship-title {
        font-size: 14px;
        text-align: left;
    }
    .m-qrcode-title label {
        font-size: 14px;
    }
}
.export_batch_detail_area.table-list h5 {
    font-size: 16px;
    margin-bottom: 4px;
}
.export_batch_detail_area.table-list [class*="col-"] {
    margin-bottom: 6px;
}
.order_list .export_batch_detail_area.table-list li {
    padding-bottom: 0;
}
.export_batch_pre_detail .order_des {
    margin-top: 0;
}
.export_batch_pre_detail .card-header {
    padding: 0 1rem;
    min-height: auto;
}
.export_batch_pre_detail .order_des ul li {
    padding-top: 6px;
}
.export_batch_pre_detail_arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 30px;
    width: 30px;
    border-radius: 50px;
    border: 1px solid #d1d1d1;
    background-color: #ffffff;
    color: #313032;
    padding: 10px 5px 8px;
    cursor: pointer;
    position: absolute;
    left: 50%;
    bottom: -15px;
    transform: translateX(-50%);
}
.border-dashed-top {
    border-top: 1px dotted #cccccc;
}
.border-dashed-bottom {
    border-bottom: 1px dotted #cccccc;
}
.letter-s1 {
    letter-spacing: 1px;
}
.img_icon {
    width: auto;
    height: 30px;
    padding: 4px;
    object-fit: contain;
    background: #fff2f2;
    border-radius: 5px;
}
.cart-selection {
    margin-bottom: 12px;
}
/* ***************************************** Layout ***************************************** */
.grid2 {
    display: flex;
    flex-wrap:wrap;
    justify-content: space-between;
}
.package-list {
    margin-top: 30px;
    margin-bottom: 20px;
}
.package-list ul {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 16px;
    padding: 0;
}
@media (max-width: 991px) {
    .package-list ul {
        grid-template-columns: 1fr 1fr;
    }
}
@media (max-width: 575px) {
    .package-list ul {
        grid-template-columns: 1fr;
    }
}
.package-list ul li {
    display: grid;
    grid-template-rows: auto 1fr;
    padding: 10px;
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0px 1px 6px 1px rgb(0 0 0 / 10%);
}
.package-title {
    display: flex;
    gap: 5px;
    align-items: center;
    border-bottom: 1px solid #eeeeee;
    padding-bottom: 4px;
}
.package-content {
    display: flex;
    flex-direction: column;
    padding: 10px 0;
}
.package-btn-area {
    display: flex;
    gap: 8px;
    justify-content: space-between;
    align-items: flex-end;
    justify-content: space-between;
    flex-grow: 1;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .package-btn-area {
        flex-direction: column;
    }
}
.package-btn-area .btn--small.sm {
    width: 100%;
    display: block;
    padding: 8px 16px !important;
}
.package-card {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.package-header {
    font-size: 14px;
    display: flex;
    justify-content: space-between;
    gap: 5px;
    align-items: center;
    padding-bottom: 4px;
}
.package-header .date {
    font-weight: bold;
}
.package-card-content ul {
    margin-top: 16px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.package-card-content ul li {
    border: 1px solid var(--header_sub_bg_color) !important;
    background: transparent !important;
    border-radius: 3px !important;
    display: grid;
    grid-template-columns: 1fr auto;
    box-shadow: none !important;
    align-items: center;
    padding: 2px 4px !important;
    gap: 4px;
}
.package-p-name {
    word-break: break-word;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    line-height: 21px;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}
.quantity-nav {
    float: left;
    position: relative;
    height: 45px;
}
.quantity-adjuster {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    border: 1px solid #dddddd;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}
.quantity-nav input[type="number"] {
    width: fit-content;
    margin: auto;
    border: 0;
    text-align: center;
    border: 0;
    width: 50%;
    font-weight: bold;
    font-size: 16px;
}

.package-list .quantity-nav {
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: space-between;
    height: 50px;
    width: 60%;
    margin: auto;
    float: none;
    margin-top: 10px;
}
.package-list .quantity-adjuster {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    border: 1px solid #dddddd;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}
.package-list .quantity-nav input[type="number"] {
    width: fit-content;
    margin: auto;
    border: 0;
    text-align: center;
    border: 0;
    width: 50%;
    font-weight: bold;
    font-size: 16px;
}
.empty-content {
    color: #999999;
    border: 1px solid #dddddd;
    padding: 16px;
    border-radius: 6px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 20px 0;
}
@media (max-width: 575px) {
    .empty-content {
        padding: 12px 16px;
    }
}
.primary-tab {
    margin-top: 16px;
}
.primary-tab .swiper-wrapper {
    justify-content: space-evenly;
}
.primary-tab .tab-menu-swiper .swiper-slide {
    font-weight: bold;
    border-right: 0;
}
.primary-tab .tab-menu-swiper .swiper-slide.selected a {
    color: var(--header_link_hover_color);
    padding: 0 26px 10px;
    border-bottom: 2px solid var(--header_link_hover_color);
}
.primary-tab .tab-menu-border {
    border-bottom: 2px solid #dddddd;
}
.primary-tab .tab-menu-border {
    margin-top: -12px;
}
@media (max-width: 575px) {
    .primary-tab .tab-menu-border {
        margin-top: -7px;
    }
}
.primary-tab .tab-menu-swiper .swiper-slide.selected a:after {
    display: none;
}
.other-padding{
	padding-top:24px;
}
@media(max-width:767px){
	.other-padding{
		padding-top:16px;
	}
	.other-padding > .row:first-child {
	  	margin:0 -16px
	}
}

/* ******活動報名******* */
.participant.border-dashed-bottom {
    margin-bottom: 10px;
    padding-bottom: 20px;
}
.participant.border-dashed-bottom:last-child {
    border-bottom: 0px;
    padding-bottom: 0px;
}
.participant .form-box__single-group {
    margin-top: 0;
}
.quantity_subject {
    line-height: 46px;
    color: #777;
}
.t_main_color {
    color: var(--header_link_hover_color, #d0343d) !important;
}
.course_register_export.btn:disabled {
    opacity: 0.15;
}
/*** 會員分級 ***/
.member-grade-area {
    position: absolute;
    z-index: 9999;
    padding: 10px;
}
.member-grade-area.level1 {
    background-color: #e51538;
}
.member-grade-area.level2 {
    background-color: #cfb057;
}
.member-grade-area.level3 {
    background-color: #060303;
}
.member-grade-area .member_grade {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 40px;
}
.member-grade-area .member_grade span,
.member-grade-area ul li {
    white-space: nowrap;
}
.member-grade-area .member_period {
    width: 100%;
    border-radius: 5px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
    cursor: pointer;
}
.member-grade-area .member_period {
    width: 100%;
    border-radius: 5px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
    cursor: pointer;
}
.member-grade-area.level1 .member_period {
    background-color: #b38651;
}
.member-grade-area.level2 .member_period {
    background-color: #b38651;
}
.member-grade-area.level3 .member_period {
    background-color: #b38651;
}
.member-grade-area .member_period .period-info {
    white-space: nowrap;
}
/*** 會員分級 ***/
.grid-a1fr {
    display: grid;
    align-items: center;
    grid-template-columns: auto 1fr;
    text-align: left;
    position: relative;
    width:fit-content;
}
.grid-a1fr.small{
	font-size:16px!important;
}
@media (max-width: 767px) {
    .grid-a1fr {
        gap: 0;
        margin: 3px 0;
    }
}
.grid-a1fr input[type="radio"]::after {
    top: 2px;
}
.ds_pinfo_column2 {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: baseline;
}
.align_base {
    align-items: baseline;
}
.align_center {
    align-items: center;
}

@media (max-width: 991px) {
    .order-detail-info {
        display: block;
    }
}
.break-all{
    word-break: break-all;
}
.break-word{
    word-break: break-word;
}

.member-tag{
    display: grid;
    grid-template-columns:auto 1fr;
    align-items:center;
    gap:6px;
    line-height: 24px;
    position: relative;
    margin: 0 16px 8px 0;
    padding: 0 10px 0 6px;
    background-color: #f1776d;
    -webkit-border-bottom-right-radius: 3px;
    border-bottom-right-radius: 3px;
    -webkit-border-top-right-radius: 3px;
    border-top-right-radius: 3px;
    color: #ffffff;
    font-size: 12px;
    text-decoration: none;
    font-weight: bold;
    width:fit-content;
    word-break:break-all;
}
.member-tag i{
	font-size:12px;
}
.member-tag:before {
    content: "";
    position: absolute;
    top:50%;
    transform: translateY(-50%);
    left: -12px;
    width: 0;
    height: 0;
    border-color: transparent #f1776d transparent transparent;
    border-style: solid;
    border-width: 12px 12px 12px 0;
}
.threads-svg{
    width: 30px;
    background: #E2E2E2;
    height: 30px;
    border-radius: 50%;
    padding: 7px;
}
@media(max-width:767px){
	.threads-svg{
	    width: 38px;
	    height: 38px;
	    padding: 10px;
	}
}
.threads-svg:hover{
	fill:#ffffff;
	background:var(--header_link_hover_color);
}
#ContactUsModal .modal-header {
    background: #FFFFFF !important;
    border-bottom: 0;
    z-index:9;
}
#ContactUsModal .modal-header button {
    background: transparent !important;
    position: absolute;
    right: 10px;
    top: 10px;
    padding: 10px;
    color: #6c6c6c !important;
}

/* 個資告知聲明modal 樣式 */
#btn_modal_confirm_privacy_statement .page_title h1{
	font-size:24px;
	font-weight:700;
	line-height:31px;
}

/***********************************************************
       2005 NEW ADD
***********************************************************/


/*================= Hight =================*/
.h-100{
	height:100%!important;
}
.h-32p{
	height:32px;
}
.mh-210px{
	min-height:210px;
}
/*================= Width =================*/
.w-fit{
	width:fit-content;
}
.w-1 {
    width: 1%;
}
.w-40{
    width:40%;
}
.w-50{
    width:50%;
}
.w-100{
    width:100%;
}

.w-90p{
	width:90px;
}
.w-100p{
	width:100px;
}
.w-120p{
	width:120px;
}
.min-62{
	min-width:62px;
}
.max-500{
	max-width:500px;
	width:100%;
}
.max-535{
	max-width:535px;
	width:100%;
}
.max-560{
	max-width:560px;
	width:100%;
}
.max-856{
	max-width:856px;
	width:100%;
}
/*================= Font =================*/
.font10{
    font-size: 10px;
}
.font12{
    font-size: 12px!important;
}
.font13{
    font-size: 13px;
}
.font14{
    font-size: 14px!important;
}
.font15{
    font-size: 15px;
}
.font16{
    font-size: 16px;
}
.font18{
    font-size: 18px;
}
.font20{
    font-size: 20px;
}
.font22{
    font-size: 22px!important;
}
.font25{
    font-size: 25px;
}

.font-weight-500{
	font-weight:500;
}
.font-weight-bold{
	font-weight:bold;
}

/*================= Header =================*/
.v14_top-area {
    gap:16px;
    background-color: #f5f5f5;
    border-bottom: 1px solid #d8d8d8;
    font-size: 12px;
    gap: 10px;
    height: 37px;
    line-height:37px;
    position: relative;
}
@media(max-width:767px){
.v14_top-area {
	display:flex;
	line-height:40px;
}
}
.v14_top-info {
    width: 100%;
    max-width: 1336px;
    padding-left: 24px;
    padding-right: 24px;
    margin-right: auto;
    margin-left: auto;
    display:flex;
    align-items:center;
    height:40px;
}
@media(max-width:767px){
	.v14_top-info {
		height:auto;
		padding-left: 16px;
    	padding-right: 16px;
	}
}
@media (max-width: 1288px) {
	.container {
		max-width:1104px;
	    }
}
.v14_top-info .left-area {
    justify-self: start;
    white-space:nowrap;
    padding-left:0;
    position:relative;
    top:-4px;
    color:#000000;
}
.v14_top-info .left-area a{
	color:#000000;
}
@media(max-width:767px){
	.v14_top-info .left-area {
		top:0;
	}
}
.v14_top-info .left-area ul {
    display: flex;
    align-items: center;
    padding:0;
    position:absolute;
    top:-16px;
}
@media(max-width:767px){
	.v14_top-info .left-area ul {
		position:relative;
		top:0;
	}
}
.v14_top-info .left-area ul li {
    position: relative;
    padding-right: 20px;
    font-size:14px;
    font-weight: 500;
}
.v14_top-info .left-area ul li a {
    display: flex;
    align-items: center;
}
.v14_top-info .left-area ul li::after {
    position: absolute;
    content: "";
    top: 11px;
    background-color: #c2c2c2;
    width: 1px;
    height: 14px;
    right: 10px;
}
@media(max-width:767px){
	.v14_top-info .left-area ul li::after {
	top:14px;
	}
}
.v14_top-info .left-area ul li:last-child:after {
    width: 0;
}
.v14_top-info .left-area ul li select{
	font-size:14px !important;
}
.marquee-close{
	float:right;
	margin-left:10px;
	height:22px;
	display:flex;
	align-items:center;
}
.v14_marquee-area{
	position:relative;
	z-index:99;
	padding-right:0;
}
.v14_marquee-area a{
	font-size:14px;
	font-weight:350;
}
.v14_marquee-area a span{
	width: 352px;
	text-align:right!important;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    margin-right:20px;
	background:transparent;
}
/* JW 2026/01/30 修正桌面版跑馬燈在 Slick 初始化前展開所有項目的閃爍問題（FOUC）：僅顯示第一個項目 */
.v14_marquee-area #div_page_marquee:not(.slick-initialized) .marquee_text:not(:first-child) {
    display: none;
}
@media (max-width: 767px) {
    .v14_marquee-area {
        position: relative;
        padding: 0.5px 8px 2px;
        background: linear-gradient(to right, #ff769d 0%, #ff3c74 100%);
        height:24px;
        color: #ffffff;
        font-size: 12px;
        /* JW 2026/01/07 修正跑馬燈初始化前會展開所有項目的閃爍問題（FOUC）：限制高度並隱藏溢出 */
        overflow: hidden;
        max-height: 24px;
    }
    .v14_marquee-area a {
        display: block;
        position: relative;
        right: 0;
        text-align: center;
        color: #fff;
        padding: 3px 22px 0 5px;
    }
    .v14_marquee-area a span{
     display: block;
     width: 100%;
     margin-right:0;
     text-align:center!important;
	}
    .v14_marquee-area [name="btn_close_marquee"]{
        position: absolute;
        right: 2px;
        top: 50%;
        transform: translateY(-50%);
        cursor: pointer;
    }
    .v14_marquee-area [name="btn_close_marquee"] i{
        position: static;
        line-height: 0;
    }
    .v14_marquee-area a .text {
        transform: scale(0.92);
        width: 100%;
        text-align: center;
        text-overflow: ellipsis;
        overflow: hidden;
        white-space: nowrap;
    }
    .v14_marquee-area i {
        position: relative;
        font-size: 16px;
        cursor: pointer;
    }
}
[name="select_more_info"]{
    background: #f5f5f5;
    color:#000000;
    font-weight:500;
    border:none;
    padding: unset;
}
.marquee_text{
    text-align:right;
    margin-right:10px;
    position:relative;
}
.v14_marquee-area .marquee_text .marquee-close{
    /* JW 2026/02/14 桌機版叉叉固定在右側，避免跑位到文字左邊 */
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 3;
    cursor: pointer;
}
.v14_marquee-area .marquee_text .marquee-close i{
    position: static;
}
@media (max-width: 767px) {
	.marquee_text{
		margin-right:0;
	}
}

.marquee_text i {
    position: absolute;
    top: 11px;
    right:0;
}
@media (max-width: 767px) {
	.marquee_text i{
		position:static;
		line-height:0;
	}
	.marquee_text i:hover{
	 color:unset;
	 }
}
.marquee_text.slick-slide{
    padding:9px 10px;
    padding-right:0;
    line-height:1.5;
    display:flex;
    justify-content:end;
}
@media (max-width: 767px) {
	.marquee_text.slick-slide{
    padding:0;
    line-height:24px;
    display: block;
    text-align: center;
     }
}

.v14_mid-area {
    background-color: #ffffff;
    width: 100%;
    max-width: 1336px;
    padding: 12px 24px;
    margin-right: auto;
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 72px;
    justify-content: space-between;
    clear:both;
}
@media (max-width: 1288px) {
.v14_mid-area {
    max-width:1104px;
    padding-top:12px;
    padding-bottom:12px;
    }
}
@media (max-width: 767px) {
    .v14_mid-area {
        border-bottom:1px solid #D8D8D8;
        padding: 4px 16px;
    }
}

.v14_mid-area .left-layout {
    display: flex;
    align-items: center;
    gap: 72px;
}
.v14_mid-area .logo-area img {
    width: auto;
    height: 100px;
}
@media (max-width: 1199px) {
.v14_mid-area .logo-area img {
	height:64px;
}
}
@media (max-width: 767px) {
.v14_mid-area .logo-area img {
	height:62px;
}
}
.v14_mid-area .promotion-area ul {
    display: flex;
    align-items: center;
    gap: 24px;
    padding:0;
}
.offcanvas .promotion-area ul {
    display: flex;
    align-items: center;
    gap: 32px;
}
@media (max-width: 767px) {
    .offcanvas .promotion-area ul {
        gap: 8px;
    }
}
.v14_mid-area .promotion-area ul li img,
.offcanvas .promotion-area ul li img {
    width: 60px;
    height: 60px;
    object-fit: contain;
}
.v14_mid-area .promotion-area{
	max-width:480px;
	overflow:hidden;
}
@media(max-width:1439px){
	.v14_mid-area .promotion-area ul li:nth-child(6),
	.v14_mid-area .promotion-area ul li:nth-child(7){
		display:none;
	}
}
@media(max-width:1288px){
	.v14_mid-area .promotion-area ul li:nth-child(5),
	.v14_mid-area .promotion-area ul li:nth-child(6),
	.v14_mid-area .promotion-area ul li:nth-child(7){
		display:none;
	}
}
@media(max-width:1199px){
	.v14_mid-area .promotion-area{
		display:none;
	}
}
.v14_mid-area .right-layout {
    display: grid;
    grid-template-columns: minmax(0, 411px) 1fr;
    gap: 24px;
}
.v14_mid-area .header-keyword,
.offcanvas .header-keyword {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.v14_mid-area .header-keyword{
	width:100%;
	max-width:411px;
}
.v14_mid-area .input-key-word,
.offcanvas .input-key-word {
    display: flex;
    align-items: center;
    font-size: 12px;
    color: #c2c2c2;
}
.v14_mid-area .input-key-word .key-block,
.offcanvas .input-key-word .key-block {
    position: relative;
    padding-right: 16px;
}
.v14_mid-area .input-key-word .key-block:first-child,
.offcanvas .input-key-word .key-block:first-child {
    padding-left: 16px;
}
.v14_mid-area .input-key-word .swiper-slide::after,
.offcanvas .input-key-word .swiper-slide::after {
    position: absolute;
    content: "";
    top: 6px;
    background-color: #b7b7b7;
    width: 1px;
    height: 14px;
    right: 0;
}
.v14_mid-area .input-key-word .swiper-slide:last-child:after,
.offcanvas .input-key-word .swiper-slide:last-child:after {
    width: 0;
}
.header-keyword .search__toggle{
	width: 100%;
}
.header-keyword .search__toggle input::placeholder{
	font-size:14px;
}
.v14_mid-area .right-action-icon ul {
    display: flex;
    align-items: center;
    gap: 16px;
    height: 36px;
}
.v14_mid-area .right-action-icon i {
    font-size: 24px;
    display:flex;
}
.v14_mid-area .search__toggle a .icon-close-circle {
    color: #8e8e8e;
}
.v14_mid-area .search__toggle a:hover .icon-close-circle {
    color: #ff3c74;
}
.v14_main-menu-area {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f8f8f8;
    border-top: 1px solid #d8d8d8;
    height: 48px;
    width: 100%;
}
.v14_main-menu {
    width: 100%;
    max-width: 1336px;
    gap: 32px;
}
@media (max-width: 1288px) {
    .v14_main-menu {
        max-width: 1104px;
    }
}
@media (max-width: 767px) {
    .v14_main-menu {
        justify-content: space-between;
    }
}
.v14_main-menu {
    display: flex;
    gap: 24px;
    justify-content: center;
    align-items: center;
}
.v14_main-menu .v14_menu-item {
    display: flex;
    align-items: center;
    height: 48px;
}
.v14_main-menu .v14_menu-item a {
    font-size: 14px;
    color: #464646;
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 8px;
    border-radius: 30px;
    height: auto;
}
.v14_main-menu .v14_menu-item a:hover {
    color: #ff3c74;
    background: rgba(255, 60, 116, 0.1);
    border-radius: 30px;
}
.v14_main-menu .v14_menu-item a.list-title {
    padding: 2px 12px 2px 2px;
}
.v14_main-menu .v14_menu-item a.list-title:hover {
    color: currentColor !important;
}
.v14_main-menu ul li i {
    font-size: 18px;
    color: #c2c2c2;
}

/*======================= Color樣式 =======================*/
.primary-red-color {
    color: #ff3c74;
}
.dark-purple-color {
    color: #634aed;
}
.dark-purple-color01 {
    color: #7a64f2;
}
.rainbow-color {
    background: linear-gradient(to right, #7db9e8 1%, #ff97d6 100%);
    background: -webkit-linear-gradient(to right, #7db9e8 1%, #ff97d6 100%);
    background-clip: text;
    -webkit-background-clip: text;
    color: transparent;
}
.orange-color01 {
    color: #ff963b;
}
.gray-999-color{
	color:#999999;
}
.gray-4646-color{
	color:#464646;
}
.gray-8e8e-color{
	color:#8E8E8E!important;
}
.green-color{
	color:#53AD50;
}
.color-red {
    color: var(--header_link_hover_color,#ff3c74) !important;
}
.color-pink {
    color: var(--header_link_hover_color,#ff3c74) !important;
}
.color-gray {
    color: #999999 !important;
}
.color-gray2 {
    color: #666666 !important;
}
.color-dark {
    color: #333333 !important;
}

/*==================== Background ====================*/
.light-green-bg {
    background-color: #e6f2ea;
}
.light-pink-bg {
    background-color: #ffe8f2;
}
.light-pink-bg01 {
    background-color: #ffeaf0;
}
.light-purple-bg {
    background-color: #f3effa;
}
.light-yellow-bg {
    background-color: #fff6e3;
}
.light-blue-bg {
    background-color: #d2efff;
}
.light-blue-bg01 {
    background-color: #dcf4f5;
}
.light-blue-bg02 {
    background-color: #e5f7ff;
}
.dark-purple-bg {
    background-color: #634aed;
}
.dark-purple-bg01 {
    background-color: #7a64f2;
}
.light-purple-bg02 {
    background-color: #f3effa;
}
.primary-red-bg {
    background-color: #ff3c74;
}
.rainbow-bg {
    background-color: linear-gradient(to bottom, #ff97d6 9%, #7db9e8 100%);
}
.rainbow-bg01 {
    background-color: linear-gradient(to right, #7db9e8 1%, #ff97d6 100%);
}
.orange-bg {
    background: #ff851c;
}
.orange-bg01 {
    background-color: #ff963b;
}
.light-orange-bg {
    background-color: #ffe9e5;
}
.light-orange-bg01 {
    background-color: #ffeccd;
}
.light-gray-bg{
	background-color: #fafafa;
}


/*============== Layout ==============*/
/* 分隔的大區塊 */
.section-block {
    padding:48px 0;
}
@media (max-width: 1199px) {
	.section-block {
	    padding:24px 0;
	}
}
@media (max-width: 767px) {
    .section-block {
	    padding-top:16px;
	    padding-bottom:16px;
	    margin:0;
    }
}
/* 有底色的大區塊/web版時居中 */
.bg-section-block {
    padding-top:24px;
    padding-bottom:24px;
}
.bg-section-block .slick-list{
	padding:8px 0;
}
@media (max-width: 991px) {
    .bg-section-block {
	    margin:0;
	    padding:24px;
    }
    .bg-section-block .container{
    	padding:0;
    	}
    .bg-section-block .slick-list{
		margin-left:-8px;
		margin-right:-8px;
}
}
@media (max-width: 767px) {
	.bg-section-block {
	    padding:0;
    }
    .bg-section-block .slick-list{
		margin-left:12px!important;
		margin-right:12px!important;
}
	.bg-section-block .slick-list .product__box{
		    box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.1);
	}
}

/* 有底圖滿版的大區塊 */
.bgimg-section-block {
    padding:48px 0;
}
.bgimg-section-block:has(.slick-dots-container) {
	padding:48px 0 32px;
}
.bgimg-section-block .index_main_title{
	margin-bottom:0;
}
.bg_recommend .index_main_title{
	margin-bottom:16px;
}
.bgimg-section-block .slick-list{
	margin-left:-10px;
	margin-right:-10px;
	padding:8px 0;
	display:grid;
}
@media (max-width: 1199px) {
	.bgimg-section-block .slick-list{
		margin-left:-12px;
		margin-right:-12px;
	}
}
@media (max-width: 991px) {
    .bgimg-section-block {
        padding:24px;
	    margin:0;
    }
    .bgimg-section-block:has(.slick-dots-container) {
        padding:24px 0 8px;
    }
}
@media (max-width: 767px) {
	.bgimg-section-block {
	    	padding:24px 0;
	    }
	.bgimg-section-block:has(.slick-dots-container) {
			padding:24px 0 8px;
		}

	.bgimg-section-block .slick-list{
		margin-left:-4px;
		margin-right:-4px;
	}
	.bgimg-section-block  .slick-list .product__box{
	    display:flex;
	    flex-direction:column;
	}
	.bgimg-section-block .column-gap24{
	    	gap:16px;
	   	}
}
@media (max-width: 575px) {
    .bgimg-section-block .column-gap24{
    	gap:8px;
	    }
	.bg_recommend .index_main_title{
		margin-bottom:8px;
	}
	.bgimg-section-block .slick-list{
		margin-left:-4px;
		margin-right:-4px;
	}
}

.gap0 {
    display: flex;
    gap: 0;
    align-items: center;
}
.gap4 {
    display: flex;
    gap: 4px;
    align-items: center;
}
.gap5 {
    display: flex;
    gap: 5px;
    align-items: center;
}
.gap7 {
    display: flex;
    gap: 7px;
    align-items: center;
}
.gap8 {
    display: flex;
    gap: 8px;
    align-items: center;
}
.gap12 {
    display: flex;
    gap: 12px;
    align-items: center;
}
.gap19 {
    display: flex;
    gap: 19px;
    align-items: center;
}
.gap24 {
    display: flex;
    gap: 24px;
    align-items: center;
}
.gap32 {
    display: flex;
    gap: 32px;
    align-items: center;
}
.gap56 {
    display: flex;
    gap: 56px;
    align-items: center;
}
.flex-column{
    display: flex;
    flex-direction: column;
}
.column-gap4 {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.column-gap5 {
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.column-gap8 {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.column-gap10 {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.column-gap12 {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.column-gap16 {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.column-gap24 {
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.column-gap48 {
    display: flex;
    flex-direction: column;
    gap: 48px;
}
.grid2-between{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.grid2-between a{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/*==================== Form ====================*/
input[type="text"] {
    font-size: 18px;
}
input::placeholder {
    color: #c2c2c2;
}
input:-webkit-autofill {
  background: transparent;
  transition: background-color 50000s ease-in-out 0s;
  -webkit-text-fill-color: unset;
}
.search__toggle {
    position: relative;
}
.v14_search-input {
    border-radius: 30px;
    border: 1px solid #e2e2e2;
    background-color: #ffffff;
    height: 40px;
    padding: 4px 4px 4px 43px;
    position:relative;
    z-index:3;
}
.search__toggle:has(> .skey_auto_box tr) > .v14_search-input{
  border-radius: 20px 20px 0 0;
  border-bottom: 0;
}
.search__toggle--btn {
	position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: bold;
    left: 4px;
    border-radius: 30px;
    min-width: 28px;
    height: 28px;
    padding-bottom:2px;
    z-index:3;
    color: #ffffff;
    background: linear-gradient(to bottom, #ff769d 0%, #ff3c74 100%);
}
.close--camera__toggle--btn {
    position: absolute;
    right: 8px;
    top: 2px;
    z-index:3;
    background:#ffffff;
    padding:10px 0 4px 3px;
    border-radius:0 30px 30px 0;
}
.close--camera__toggle--btn i {
    font-size: 16px;
    cursor: pointer;
}
.close--camera__toggle--btn a:first-child {
    border-right: 1px solid #8e8e8e;
    padding-right: 8px;
    margin-right: 4px;
    /*display: inline-flex;*/
    display:none;
}
/* placeholder */
input::placeholder,textarea::placeholder,select::placeholder{
    color: #C2C2C2!important;
}
@media(max-width:430px){
	input::placeholder,textarea::placeholder,select::placeholder{
		font-size:12px;
	}
}
.pic-upload-area input[type="file"] {
    display: none;
}
/*==================== Element ====================*/
.v14_root {
    display: inline-flex;
    flex-wrap: wrap;
}
.v14_root li {
    position: relative;
    color: #787878;
}
.v14_root li::after {
    position: absolute;
    left: 0;
    top: 0;
    content: "\e904";
}
.header .pic-upload-area {
    max-width:419px;
}
.pic-upload-area {
    position: relative;
    background-color: #ffffff;
    border: 1px solid #e2e2e2;
    border-radius: 18px;
    padding: 0 8px 8px;
    display: flex;
    flex-direction: column;
}
.pic-upload-title {
    color: #3b3b3b;
    font-size: 14px;
    line-height: 24px;
    text-align: center;
    padding: 12px 0;
    box-shadow: none;
}
.pic-upload-area .close-btn {
    position: absolute;
    right: 8px;
    top: 12px;
}
.pic-upload-area .close-btn i {
    font-size: 18px;
    font-weight: bold;
}
 .file-upload {
    flex-grow: 1;
    background: #fafafa;
    border: 1px dashed #d3d3d3;
    border-radius: 8px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top:15px;
    padding-bottom:15px;
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-grow: 1;
    margin-top:0!important;
}
.header .pic-upload-area {
    box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
}
.header .file-upload {
    height: 263px;
    cursor: pointer;
}
.upload-content {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.upload-icon i {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50px;
    width: 56px;
    height: 56px;
    background-color: rgba(255, 118, 157, 0.3);
    color: #ff3c74;
    font-size: 28px;
    margin: auto;
}
.upload-small-text{
    text-align: center;
    font-size:10px;
    line-height:14px;
}
.redmind{
    color: #D1254E;
}
.link--blue {
    letter-spacing: 0.5px;
    color:#1B71E9 !important;
    cursor:pointer;
}
.link--blue i{
    font-size: 12px;
}
.link--blue:hover {
    color:#1B71E9;
    opacity: 0.7;
}
.opacity-02{
	opacity:0.2;
}

/*==================== 商品卡 ====================*/
.v14_product-card {
    position: relative;
    display: grid !important;
    grid-template-columns: minmax(0, 168px) 1fr;
    gap: 8px;
    background-color: #ffffff;
    box-shadow: 0px 1px 10px rgba(0, 0, 0, 0.1);
    margin: 8px;
    padding:10px;
    border-radius: 15px;
    overflow: hidden;
    cursor: pointer;
    justify-content: space-between;
    height:100%;
}
@media (max-width: 1439px) {
    .v14_product-card {
        grid-template-columns: minmax(0, 150px) minmax(0, 1fr);
    }
}
@media (max-width: 767px) {
    .v14_product-card {
        margin: 8px 0;
        padding:6px 10px;
    }
}
@media (max-width: 991px) {
	.v14_product-title {
	        font-size: 14px;
	    }
}
@media (max-width: 767px) {
	.v14_product-title {
	        font-size: 12px;
	        height: 38px;
	    }
}
.v14_product-card:hover {
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
    -ms-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
}
.v14_tag-list {
    position: absolute;
    top: 8px;
    right: 8px;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.v14_tag-list img {
    width: 32px;
    height: 32px;
    object-fit: contain;
}
@media (max-width: 1199px) {
    .v14_tag-list img {
        width: 28px;
        height: 28px;
    }
}
@media (max-width: 991px) {
    .v14_tag-list img {
        width: 24px;
        height: 24px;
    }
}
.v14_product-pic {
    position: relative;
    display: flex;
    align-items: flex-start;
}
.img-box img {
    width: 100%;
    height: auto;
    display: block;
}
.v14_discount-info {
    font-size: 16px;
    padding: 3px 0;
    line-height: 1.5;
    color:var(--header_main_bg_color);
    min-height:40px;
}
/* 商品卡內容詳細的間距調整 */
.index-branch-block .v14_discount-info {
	min-height:50px;
}
@media(max-width:767px){
	#div_init_product_recommend .v14_discount-info,
	#div_init_product_rank .v14_discount-info{
		min-height:auto;
		height:auto;
	}
}
.v14_discount-info {
    display: none;
}
.div_prdlist .branch-block {
    display: none;
}
.div_prdlist .v14_discount-info {
    display: block;
}
.v14_discount-info:has(.text:not(:empty)) {
    display: block;
}
.v14_discount-info:has(.text-badge:not(:empty)) {
    display: block;
}
.v14_product-card .v14_pcard-top .v14_discount-info,
.product__content .v14_pcard-top .v14_discount-info{
	min-height:21px;
	padding:0;
}
.v14_discount-info .info-badge-list {
  min-height: 22px;
  display: flex;
  gap: 4px;
  margin-bottom: 4px;
}

/* 針對搜尋的商品卡片排版 */
.div_prdlist .v14_discount-info:not(:has(.info-badge-list)) .text {
  margin-top: 0;
}

/* 針對橫式卡片 */
.v14_discount-info:not(:has(.info-badge-list)) .text {
  margin-top: 26px;
}
.index-sale-area .v14_pcard-top:first-child,
.index-branch-block .v14_pcard-top:first-child,
.plp-promote-p-layout .v14_pcard-top:first-child
 {
  min-height:48px;
}
@media(max-width:767px){
	.v14_discount-info:not(:has(.info-badge-list)) .text {
	  margin-top: 0;
	  min-height:0;
	}
	.index-sale-area .v14_discount-info:not(:has(.info-badge-list)) .text ,
	.index-limited-quantity-block .v14_discount-info:not(:has(.info-badge-list)) .text ,
	.index-limited-block .v14_discount-info:not(:has(.info-badge-list)) .text {
	  margin-top: 26px!important;
	}
	.index-branch-block .v14_product-card .v14_pcard-top .v14_discount-info{
	  height:auto;
	  min-height:0;
	}
	.index-sale-area .v14_pcard-top:first-child,
	.index-branch-block .v14_pcard-top:first-child {
	  height: auto;
	  min-height:0;
	}
	.index-branch-block .v14_discount-info:not(:has(.info-badge-list)) .text {
	  margin-top:0;
	}
	.index-branch-block .info-badge-list:not(:has(.text-badge)) {
	  display: none;
	}
	.index-sale-area .product-default-slider-4grid-1rows.slick-slider .product__box{
		padding:0 10px;
	}
}

@media (max-width: 1199px) {
    .v14_discount-info {
        padding: 0;
    }
}

.v14_discount-info .text{
	font-size:16px;
	text-align:left;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    word-break: break-all;
}

.v14_discount-info .info-badge-list span {
    color: #ffffff;
    font-weight: 500;
    display: flex;
    align-items: center;
    padding: 1px 4px 0;
    border-radius: 4px;
}
.text-badge{
    background:var(--header_main_bg_color);
}
.v14_product-card-content{
    display: grid;
    grid-template-rows: 1fr auto;
    gap: 8px;
    color:unset;
}
@media (max-width: 1199px) {
    .v14_product-card-content{
        gap: 4px;
    }
}
/* 橫式卡片調整 */
.v14_product-card-content .product-title,
.v14_product-card-content .v14_product-title,
.v14_product-card-content .hit_brand_title{
    margin-top:0;
}

.v14_pcard-top {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
@media (max-width: 1199px) {
    .v14_pcard-top {
        gap: 4px;
    }
}
.product__price-area {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding-left: 9px;
}
@media (max-width: 1199px) {
    .mix-price-area {
        padding-left: 0;
    }
}
.product__price__block{
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    width:100%;
}
.product__price {
    display:flex;
	align-items:center;
    color:var(--header_main_bg_color);
}
@media (max-width: 1199px) {
	.product__price {
    display: grid;
    height: 53px;
    grid-template-rows: auto 1fr;
	}
}
@media (max-width: 991px) {
	.product__price {
    height: 42px;
	}
}

.product__price td{
	padding:0;
}
.card-i i {
    font-size: 18px;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    width: 40px;
    height: 40px;
    border-radius: 30px;
    background:var(--header_main_bg_color);
}
.card-i:hover{
	opacity:0.7;
}
@media (max-width: 1199px) {
    .card-i i {
        width: 32px;
        height: 32px;
        font-size: 16px;
    }
}
@media (max-width: 767px) {
    .card-i i {
        width: 24px;
        height: 24px;
    }
}
.original-price {
    display: flex;
    align-items: baseline;
    gap: 2px;
    color: #8e8e8e;
    font-size: 14px;
    line-height: 1.1;
    text-decoration: line-through;
}
@media (max-width: 991px) {
    .original-price {
        font-size: 13px;
    }
}
@media (max-width: 767px) {
    .original-price {
        font-size: 12px;
        transform: scale(0.92);
    }
}
.card-price {
    display: flex;
    align-items: baseline;
    gap: 2px;
    font-size: 20px;
    line-height: 24px;
    line-height: 1.2;
    font-weight: bold;
}
@media (max-width: 1199px) {
    .card-price {
        font-size: 18px;
    }
}
@media (max-width: 991px) {
    .card-price {
        font-size: 16px;
    }
}
.small-font {
    font-size: 12px;
}
/* 商品卡品名hover變色取消 */
.product__img--link:hover,
.product__link:hover{
	color:unset;
}
/*箭頭按鈕設計*/
.arrow-border{
	display: flex;
    align-items: center;
    justify-content: center;
	height:48px;
	width:48px;
	border:1.5px solid #FF3C74;
	border-radius:30px;
}
.arrow-border:hover{
	opacity:0.7;
}
.arrow-border i{
	font-size:16px;
	color:#FF3C74;
}
@media(max-width:991px){
.arrow-border{
	height:36px;
	width:36px;
}
}
@media(max-width:575px){
.arrow-border{
	height:24px;
	width:24px;
}
}

/*==================== Header ====================*/
/* ---- 移除 CBP 舊 dropdown 延遲 ---- */
.cbp-hrmenu ul li ul {
    transition-delay: 0s !important;
}

/* ---- 移除 CBP 舊 dropdown 的固定寬度 86% 與 left:7%（破壞置中） ---- */
.cbp-hrmenu .cbp-hrsub {
    left: 50% !important;
    transform: translateX(-50%) !important;
    box-shadow: 0 5px 15px -2px rgb(255 60 116 / 30%)!important;
}
.header-menu {
    position: relative;
    background: #f8f8f8;
    border-top: 1px solid #d8d8d8;
    z-index:0;
}

.header-menu ul {
    /*display: flex; 2025.11.05 Freya 此行，會造成DropDownMenu寬度無法滿版 */
    justify-content: center;
    list-style: none;
    margin: 0;
    padding: 0;
}

.header-menu ul li {
    /*position: relative; 2025.11.05 Freya 此行，會造成DropDownMenu寬度無法滿版 */
    padding: 3px 0 1px;
}

.header-menu ul li a {
    display: flex;
    align-items: center;
    gap: 4px;
    justify-content: space-between;
    width: 100%;
    padding: 7px 8px;
    color: #3b3b3b !important;
    font-weight: 350;
    font-size: 14px;
}
.header-menu ul li a:hover {
    background-color: rgba(255, 60, 116, 0.1);
    border-radius: 30px;
}

.header-menu {
    position: relative;
    width: 100%;
}

/* Mega menu */
.v14_mega-menu {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%) translateY(4px);
    width: 100%;
    max-width: 1344px;
    background: #fff;
    border-radius: 16px;
    padding: 32px;
    box-shadow: 0 16px 10px rgba(0, 0, 0, 0.06);
    pointer-events: none;
    overflow:hidden;
}

@media (max-width: 1439px) {
    .v14_mega-menu {
        width: 95%;
    }
}

/* 綁 hover，不閃爍、不延遲 */
.header-menu:hover .v14_mega-menu,
.v14_mega-menu:hover {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
    pointer-events: auto;
}

/* 內容 */
.v14_mega-menu-content {
    display: grid;
    grid-template-columns: 1fr 39%;
    gap: 16px;
    padding-right: 32px;
}

/* 左邊欄：可滾動 */
.left-col {
	max-height: 650px;      /* 左邊最多到螢幕高度 */
    overflow-y: auto;       /* 超過才 scroll */
}

/* 右邊欄：固定 */
.right-col {
    max-height: 680px;      /* 右邊廣告最多到螢幕高度 */
    overflow:auto;
}
.v14_mega-list-item {
  display: inline-block;
  width: 100% !important;
  break-inside: avoid;
  padding-right: 32px;
  padding-bottom:12px;
}
.v14_mega-list-item h4 a{
	font-size:16px !important;
	font-weight:500 !important;
}
.v14_mega-list-item ul li a {
    padding: 4px 0;
}
.v14_mega-list-item .list-title {
    color: #3b3b3b;
    display: inline-flex;
    gap: 6px;
    font-size: 16px;
    font-weight: 500;
    border-radius: 100px;
    padding: 2px 12px 2px 2px;
    width: fit-content;
    align-items: center;
    line-height: 28px;
}
.v14_mega-list-item .list-title img {
    width: 28px;
    height: 28px;
    object-fit: contain;
}
.v14_mega-list-item .list-title a:hover {
    color: #3b3b3b !important;
    background-color: unset !important;
}
.v14_mega-list-item ul {
    display: flex;
    flex-direction: column;
    padding-left: 36px;
}
.v14_mega-list-item ul li {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    padding: 2px 0 !important;
}
.menu-ad-block a:hover,
.v14_mega-list-item ul li a:hover {
    background-color: transparent !important;
}
.menu-list-block {
  column-count: 2;
  column-gap: 24px;
  position: relative;
}
.menu-list-block a:hover{
	background-color:transparent!important;
}
.menu-list-block:after {
    position: absolute;
    content:"";
    bottom:0;
    right:0;
    height:100%;
    width:1px;
    background:#ff9881;
}
.menu-ad-block {
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap:16px;
    padding-right:0;
    overflow:auto;
}
.menu-ad-block img{
	border-radius:12px;
}
.ad-block-small a{
	padding:0;
}
.ad-block-small img{
	aspect-ratio: 1/1 ;
	object-fit:cover;
}
.ad-block-large img{
	aspect-ratio: 2/4.9 ;
	object-fit:cover;
}
.menu-ad-content {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.menu-ad-vertical img {
    width: 100%;
    max-width: 260px;
}
.menu-activity a {
    display: flex;
    flex-direction: column;
    gap: 10px !important;
}
.menu-ad-vertical a:hover,
.menu-activity a:hover {
    background-color: transparent !important;
}
.menu-activity a img {
    width: 150px;
    height: 150px;
    border-radius: 12px;
    object-fit: contain;
}
.menu-activity-title {
    font-size: 16px;
    font-weight: 500;
    width: 100%;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    height: 46px;
}

/*==================== Footer ====================*/

.footer__content {
    padding: 32px 0;
}
@media (max-width: 1199px) {
    .footer__content .row {
        gap: 55px 0;
    }
}
.app-download {
    display: flex;
    gap: 32px;
    align-items: center;
}
.app-gap {
    display: flex;
    gap: 32px;
}
@media (max-width: 1199px) {
    .app-download {
        flex-direction: column;
        gap: 8px;
    }
    .app-download span {
        width: 100%;
    }
    .app-gap {
        gap: 4px;
    }
}
.app-download img {
    height: 44px;
    max-width: 100%;
    object-fit: contain;
}
@media (max-width: 767px) {
    .footer {
        display: flex;
        flex-direction: column;
    }
    .app-download {
        flex-direction: row;
        justify-content: space-between;
    }
    .app-download span {
        width: auto;
    }
    .app-download img {
        height: 39.5px;
    }
}
/*==================== Offcanvas ====================*/
.offcanvas .close--camera__toggle--btn {
    top: 1px;
    padding: 8px 0 4px 3px;
}
.offcanvas-close{
	color:var(--header_main_f_color, #3B3B3B);
}
.offcanvas-title {
    font-size: 16px;
    font-weight: bold;
    line-height: 30px;
    display: flex;
    align-items: center;
    gap: 4px;
    border-radius: 30px;
    color: #ffffff;
    padding: 0 8px;
    width: fit-content;
}
.offcanvas-title.category {
    background-color: #ff9881;
}
.offcanvas-title.brand {
    background-color: #634aed;
}
.offcanvas-title.category i {
    font-size: 20px;
}
.offcanvas-block {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.offcanvas-category-block {
    padding: 12px;
    border-radius: 16px;
    background-color: #f5f5f5;
}
.offcanvas-category-block ul {
    display: grid;
    grid-template-columns: repeat(5, 1fr) 1fr;
    grid-template-rows: auto;
    gap: 12px;
}
.offcanvas-category-block ul {
    grid-template-columns: repeat(6, 1fr) 1fr;
    justify-content: space-between;
}
@media (max-width: 991px) {
    .offcanvas-category-block ul {
        grid-template-columns: repeat(4, 1fr) 1fr;
        justify-content: space-between;
    }
}
@media (max-width: 767px) {
    .offcanvas-category-block ul {
        grid-template-columns: repeat(2, 1fr) 1fr;
        justify-content: space-between;
    }
}
.offcanvas-category-block ul li a {
    padding: 4px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
}
.offcanvas-category-block ul li a:hover {
    color: unset;
}
.offcanvas-category-block ul li a .category-img {
    width: 97px;
    height: 97px;
    border-radius: 100px;
    border: 2px solid #ffffff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.offcanvas-category-block ul li a .category-img i {
    font-size: 56px;
}
.offcanvas-category-block ul li a .category-text {
    font-size: 12px;
    text-align: center;
}
.offcanvas-brand-block {
    padding: 12px 10px;
    border-radius: 16px;
    background-color: rgba(99, 74, 237, 0.1);
}
.offcanvas-brand-block ul {
    display: grid;
    grid-template-columns: repeat(7, 1fr) 1fr;
    grid-template-rows: auto;
    gap: 12px;
}
@media (max-width: 767px) {
    .offcanvas-brand-block ul {
        grid-template-columns: repeat(3, 1fr) 1fr;
        gap: 8px 0;
        justify-content: space-between;
    }
}
.offcanvas-brand-block ul li a {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
}
.offcanvas-brand-block ul li a:hover {
    color: unset;
}
.offcanvas-brand-block ul li a img {
    width: 80px;
    height: 80px;
    border-radius: 100px;
    background-color: #ffffff;
    border: 1px solid #e2e2e2;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4px;
}
.offcanvas-brand-block ul li a .brand-text {
    font-size: 12px;
    text-align: center;
}
.offcanvas-block-brand-name{
	width: 100%;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
	padding:0 4px;
}

/*==================== 會員中心 ====================*/
.my-account-area.m-t-20 {
    margin-top: 0;
}
h1.v14_page-title{
    font-size: 40px;
    line-height: 57px;
    white-space: nowrap;
    font-weight: 600;
    text-align: center;
    margin-bottom:24px;
    letter-spacing:3px;
}
@media(max-width:767px){
 h1.v14_page-title{
    font-size: 24px;
    line-height:26px;
 	margin-top:16px;
    margin-bottom:0;
 }
}
/* 維修排版gap */
.maintenance-gap24{
    display: flex;
    flex-direction: column;
    gap:24px;
}
.previous-step a{
    display: flex;
    align-items: center;
    gap:8px;
    font-size: 18px;
    color:#FF3C74;
}
.maintenance-content{
    padding:24px 32px;
    border-radius: 12px;
    background-color: #FAFAFA;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.maintenance-content.large{
	padding:56px;
}
@media(max-width:767px){
	.maintenance-content.large{
	padding:56px 16px;
	}
}
.maintenance-block{
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.remind{
    font-size: 14px;
}
.item-caption{
    font-size: 18px;
    font-weight: bold;
}

/* table手機版排列 */
@media(max-width:575px){
.mobile-table-content{
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
}
}
.mobile-table-list ul{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap:8px;
}
@media(max-width:575px){
.mobile-table-list ul{
    grid-template-columns: 1fr;
    gap:8px;
}
}
.maintenance-card{
    border:1px solid #E2E2E2;
    padding:16px;
    display: grid;
    grid-template-columns: 1fr auto;
    gap:16px;
    border-radius: 10px;
}
.maintenance-card:hover{
    background-color: #ffffff;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
    color:unset;
}
.maintenance-card .btn--font{
    height: fit-content;
}
.apply-info-grid2{
    display: flex;
    flex-direction: column;
    gap:8px;
}
.apply-info-grid2.gap16{
    gap:16px;
}
@media(max-width:991px){
.apply-info-grid2.gap16{
    gap:14px;
}
}
@media(max-width:575px){
.apply-info-grid2.gap16{
    gap:12px;
}
}
.apply-info-grid2 .item-list{
    display: grid;
    grid-template-columns: 68px 1fr;
    align-items: center;
    gap:24px;
    width:100%;
}
.apply-info-grid2 .item-list .item{
    font-size: 12px;
    line-height:24px;
    white-space: nowrap;
}
.apply-info-grid2 .item-list .item-content{
    font-size: 15px;
}

/* ---------- 維修中心 ---------- */
.maintain01 {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}

.maintain01 .order01 {
  order: 1;
  display: flex;
  flex-direction: column;
}
.maintain01 .order02 {
  order: 2;
  display: flex;
  flex-direction: column;
}
@media (max-width: 575px) {
  .maintain01 {
    gap: 16px;
  }
  .maintain01 .order01 {
    order: 2;
  }
  .maintain01 .order02 {
    order: 1;
  }
}
/* 上傳區塊與進度區塊 */
.upload-file-area {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 8px 12px;
  flex: 1;
}

.upload-file-block {
  font-size: 12px;
  width: 100%;
  display: grid;
  align-items: center;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.upload-file {
  display: flex;
  align-items: center;
}

/* 進度條區塊設定 */
.progress-grid2 {
  display: flex;
  align-items: center;
  flex: 1;
  gap: 8px;
  max-width: 244px;
}
.progress-grid2 .progress {
  flex: 1;
  height: 2px;
}
.progress-bar {
  background-color: #FF3C74;
}
.progress-grid2 a {
  display: flex;
}
.progress-grid2 i {
  font-size: 24px;
}
.article-link-area{
    border-top:1px solid #d3d3d3;
    padding:32px 0;
    margin:0 32px;
    display: grid;
    grid-template-columns: auto 1fr;
    gap:56px;
    align-items:baseline;
    margin-top:16px;
}
.article-link-area ul{
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.article-link-area a{
	text-decoration: underline;
}
.bottom-btn{
    padding: 24px;
    margin: auto;
    display: flex;
    justify-content: center;
    gap: 24px;
}
@media(max-width:575px){
.bottom-btn{
    margin:0;
    gap: 8px;
}
}
.bottom-btn .btn{
    width:fit-content;
}
@media(max-width:575px){
    .bottom-btn .btn{
    width:100%;
}
}
.member-tab-area{
    display: flex;
    flex-direction: column;
    border-radius: 12px 12px 0 0;
    overflow: hidden;
}
.member-tab-area .maintenance-content{
    margin-top:-2px;
}
.member-tab-area .nav{
    display: flex;
    justify-content: space-evenly;
}
.member-tab-area .nav-tabs{
    border-bottom:1px solid #FAFAFA;
    gap:1px;
}
.member-tab-area .nav-tabs .nav-link.active{
    background-color: #FAFAFA;
    border:0;
}
.member-tab-area .nav-link{
    font-size:17px;
    line-height:40px;
    background-color:#D8D8D8;
    border-radius: 0;
}

/*===== 主標題 Start =======*/
.page_main_title{
	font-size:40px;
	line-height:57px;
	font-weight:500;
	letter-spacing:6px;
	text-align:center;
	margin-bottom:24px;
	text-align:center;
}
@media(max-width:1199px){
.page_main_title{
	font-size:32px;
}
}
@media(max-width:767px){
.page_main_title{
	font-size:24px;
	line-height:34px;
}
}
/*============= form validation ================*/
.form-check-label,
.form-check-label * {
  opacity: 1 !important;
}
.form-check-label:active,
.form-check-label:active * {
  opacity: 1 !important;
}

.valid-feedback {
    display: none;
    width: 100%;
    margin-top: 0.25rem;
    font-size: 0.875em;
}
.valid-tooltip {
    position: absolute;
    top: 100%;
    z-index: 5;
    display: none;
    max-width: 100%;
    padding: 0.25rem 0.5rem;
    margin-top: 0.1rem;
    font-size: 0.875rem;
    color: #fff;
    border-radius: 0.25rem;
}
.is-valid ~ .valid-feedback,
.is-valid ~ .valid-tooltip,
.was-validated :valid ~ .valid-feedback,
.was-validated :valid ~ .valid-tooltip {
    display: block;
}
.form-control.is-valid,
.was-validated .form-control:valid {
    padding-right: calc(1.5em + 0.75rem);
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated textarea.form-control:valid,
textarea.form-control.is-valid {
    padding-right: calc(1.5em + 0.75rem);
    background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}
.form-select.is-valid,
.was-validated .form-select:valid {
    padding-right: calc(0.75em + 2.3125rem);
    background-position: right 0.75rem center, center right 1.75rem;
    background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.form-check-input.is-valid,
.was-validated .form-check-input:valid {
    border-color: #999999;
    padding:7px;
}
.form-check-input.is-valid:checked,
.was-validated .form-check-input:valid:checked {
    background-color: #ffffff;
    padding:7px;
}
.form-check-inline .form-check-input ~ .valid-feedback {
    margin-left: 0.5em;
}
.form-file-input.is-valid ~ .form-file-label,
.was-validated .form-file-input:valid ~ .form-file-label {
    border-color: #999999;
}
.form-check .form-check-input{
	padding:7px;
	margin-left:4px;
}
.invalid-feedback {
    display: none;
    width: fit-content;
    margin-top: 0.25rem;
    font-size: 12px;
    color: var(--hint_err_color);
}
.invalid-tooltip {
    position: absolute;
    top: 100%;
    z-index: 5;
    display: none;
    max-width: 100%;
    padding: 0.25rem 0.5rem;
    margin-top: 0.1rem;
    font-size: 0.875rem;
    color: #fff;
    background-color: rgba(220, 53, 69, 0.9);
    border-radius: 0.25rem;
}
.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip,
.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip {
    display: block;
}
.form-control.is-invalid,
.was-validated .form-control:invalid {
    padding-right: calc(1.5em + 0.75rem);
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated textarea.form-control:invalid,
textarea.form-control.is-invalid {
    padding-right: calc(1.5em + 0.75rem);
    background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}
.form-select.is-invalid,
.was-validated .form-select:invalid {
    padding-right: calc(0.75em + 2.3125rem);
    background-position: right 0.75rem center, center right 1.75rem;
    background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.form-check-inline .form-check-input ~ .invalid-feedback {
    margin-left: 0.5em;
}
.header_menu_icon_area{
    grid-template-columns: auto 1fr;
    display: grid;
    align-items: center;
    gap:5px;
}
.header_menu_icon_area img{
	width:24px;
	height:24px;
	object-fit:contain;

}
.v14_mega-list-item > .mega-menu__title{
    padding-left:0px;
}
.v14_mega-list-item > [name="hm_kids_append_area"]{
    padding-left:20px;
}

/* 商品卡在col的排版 */
[class*="col-"] .product__box{
	margin: 0;
	padding:0;
    grid-template-columns: 1fr;
    height: 100%;
    display:grid;
    grid-template-rows:auto 1fr;
}
[class*="col-"] .product__content{
	display: grid;
	align-items: flex-end;
}
/* 倒數商品卡 */
.product__content .count_backwards{
	justify-content:center!important;
	gap:10px;
}
/* 預購小圖 */
.icon_preorder{
    height: 35px !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain;
    display: inline-block;
    vertical-align: middle;
    padding:2px 0;
}

/*============= 頁面下方插圖 ================*/
.plp_div_bg{
    background-image: url("../../img/v14/bg_plp_paint.png");
    background-size: contain;
    background-repeat: repeat-x;
    aspect-ratio: 10/1 ;
}
@media(max-width:767px){
	.plp_div_bg{
	aspect-ratio: 6/1 ;
	}
}
/*============= 頁面範例模組 ================*/
/* 模組：其他 ********************************************************************/
.product-social ul{
	display:flex;
	gap:10px;
	align-items:center;
	border-radius:30px;
	padding:0;
}
.product-social ul li a{
	margin:0;
	border:0;
	justify-content:center;
	color:#3B3B3B!important;
	border-radius:30px;
	background:#E2E2E2
}
.container >.container{
	padding:0;
}
.img_grid5_gap,
.image_group_3_first,
.image_group_3_last{
    gap:16px;
}
[id*='div_page_igroup_'] > .row,
[id*='div_page_igrid_'] > .row {
	gap:16px;
}
[id*='div_page_igroup_'] > .row > [class *='col-'],
[id*='div_page_igrid_'] > .row > [class *='col-']{
	flex:1;
	padding:0;
}
/* 單排系列要換行的設定 */
@media(max-width:767px){
	.mdcl_image_group_2 [id*='div_page_igroup_'] > .row > [class *='col-12'] ,
	.mdcl_image_group_full_2 [id*='div_page_igroup_'] > .row > [class *='col-12'],
	.mdcl_image_group_3 [id*='div_page_igroup_'] > .row > [class *='col-12'] ,
	.mdcl_image_group_full_3 [id*='div_page_igroup_'] > .row > [class *='col-12'] {
		flex:none;
	}
	.mdcl_image_group_2 [id*='div_page_igroup_'] > .row > [class *='col-12'].m-b-10 ,
	.mdcl_image_group_full_2 [id*='div_page_igroup_'] > .row > [class *='col-12'].m-b-10,
	.mdcl_image_group_3 [id*='div_page_igroup_'] > .row > [class *='col-12'].m-b-10 ,
	.mdcl_image_group_full_3 [id*='div_page_igroup_'] > .row > [class *='col-12'].m-b-10,
	.mdcl_image_group_4 [id*='div_page_igroup_'] > .row > [class *='col-6'].m-b-10 ,
	.mdcl_image_group_full_4 [id*='div_page_igroup_'] > .row > [class *='col-6'].m-b-10 {
		margin-bottom:0;
	}
	/* 單排3 */
	.mdcl_image_group_3 div[id*="div_page_igroup_"][id$="_mobile"][data-display_type="first"] > .row{
		grid-template-columns: 1fr;
	}
	/* 單排4 */
	.mdcl_image_group_4 [id*='div_page_igroup_'] > .row ,
	.mdcl_image_group_full_4 [id*='div_page_igroup_'] > .row {
		gap:8px;
	}
}
/* 單排4 */
.mdcl_image_group_full_4 [id*='div_page_igroup_'] > .row > [class *='col-6']{
  width:100%;
}
.mdcl_image_group_4 [id*='div_page_igroup_'] > .row > [class *='col-6']{
  width:100%;
}
.mdcl_image_group_full_4 .row.p-lr-0:has(.col-6) {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.mdcl_image_group_4 .row.p-lr-0:has(.col-6) {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}

/* 3宮格 */
[id*='div_page_igrid_'] > .row .col-12 .col-6{
	width:100%;
	margin:0!important;
}
[id*='div_page_igrid_'] .row > .col-4{
	display:flex;
	flex-direction:column;
	gap:16px;
}

/* 4宮格/一排兩張共兩排 */
.mdcl_image_grid_4 [id*='div_page_igrid_'] > .row{
	display:grid;
	grid-template-columns:1fr 1fr;
}
.mdcl_image_grid_4 [id*='div_page_igrid_'] > .row > [class *='col-']{
	width:100%;
}
[id*='div_page_kv_'] .slick-slide {
	padding-right:16px!important;
}
[id*='div_page_kv_'] .slick-list {
	margin-right:-16px!important;
}

/* 已上圖片模組手機版 */
@media(max-width:767px){
	.img_grid5_gap,
	.image_group_3_first,
	.image_group_3_last
	{
	    gap:8px;
	}
	[id*='div_page_igroup_'] > .row,
	[id*='div_page_igrid_'] > .row {
		gap:8px;
		margin:0;
	}
	[id*='div_page_igrid_'] .row > .col-4{
		gap:8px;
	}
	/* 3宮格 */
	div[id*="div_page_igroup_"][id$="_mobile"][data-display_type="first"] > .row{
		display:grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	[id$="_mobile"][data-display_type="first"] > .row > .col-4:first-child{
		grid-column: 1 / -1;
	}
	[id$="_mobile"][data-display_type="first"] > .row > .col-4{
		width:100%;
	}

	/* 5宮格 */
	[id*='div_page_igrid_'] > .row .col-12{
	display:grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap:16px;
}
	[id*='div_page_igrid_'] > .row .col-12{
		gap:8px;
	}
	/* 輪播 */
	[id*='div_page_kv_'] .slick-slide {
		padding-right:8px!important;
	}
	[id*='div_page_kv_'] .slick-list {
		margin-right:-8px!important;
	}

	[id*="div_igrid_"][id$="_mobile"] {
		padding:0;
	}

	/* 4宮格滿 */
	[id*='div_page_igrid_'][id$="_mobile"] > .p-lr-12{
		padding-left:16px;
		padding-right:16px;
	}
	[id*='div_page_igrid_'] .p-lr-12 > .m-b-16{
		margin-bottom:8px;
	}

	/* 4宮格/左一長圖右三橫圖 */
	[id*='div_page_igrid_'].container > .p-lr-12 > .m-b-16{
		margin-bottom:8px;
	}
	/* 3宮格 */
	[id*="div_page_igrid_"][id$="_mobile"] > .row > .row.m-lr-0 {
		padding:0;
		margin:0;
		gap:8px;
	}
	[class*="div_igrid_"].m-b-16 {
		margin-bottom:0;
	}
	[id*="div_page_igrid_"][id$="_mobile"] > .row > .row.m-lr-0 .col-6 {
		flex:1;
	}
}

/* 頁面管理統一設定 */
#div_page_init_wrap .page_title{
	padding-top:48px;
	max-width:1336px;
	margin-left: auto;
    margin-right: auto;
    padding-left: 12px;
    padding-right: 12px;
    box-sizing: border-box;
    width:100%;
}
@media(max-width:1288px){
	#div_page_init_wrap .page_title{
		max-width: 1104px;
	}
}
@media(max-width:767px){
	#div_page_init_wrap .page_title{
	padding-top:32px;
	padding-left: 16px;
    padding-right: 16px;
	}
}

#div_page_init_wrap .page_title h1{
	font-size:32px!important;
	line-height:40px;
	text-align:justify;
}
@media(max-width:991px){
	#div_page_init_wrap .page_title h1{
		font-size:24px!important;
		line-height:32px!important;
	}
}
@media(max-width:767px){
	#div_page_init_wrap .page_title h1{
		font-size:20px!important;
		line-height:26px!important;
	}
}

/* 足跡頁 */
#div_page_init_wrap.footprint .page_title h1{
	font-size: 32px !important;
    line-height: 1.5em !important;
	text-align:center;
}
@media(max-width:991px){
	#div_page_init_wrap.footprint .page_title h1{
		font-size: 24px !important;
        line-height: 26px !important;
	}
}


#div_init_product_rank .tag_area {
	top:46px;
}
@media (max-width: 767px) {
	#div_init_product_rank .tag_area {
		top:30px;
	}
}
@media (max-width: 575px) {
	#div_init_product_rank .tag_area {
		top:22px;
	}
}
#div_init_product_rank .product__box {
	display:flex;
    flex-direction:column;
	gap:6px;
	margin:0 8px;
}
@media(max-width:767px){
	#div_init_product_rank .product__box {
	margin:0 6px;
	}
}
#div_init_product_rank .slick-list {
	 margin-left: -6px;
	 margin-right: -6px;
}
@media(max-width:1439px){
	#div_init_product_rank .slick-list {
		 margin-left: 0;
		 margin-right: 0;
	}
}
@media(max-width:767px){
	#div_init_product_rank .slick-list {
		 margin-left: 6px;
		 margin-right: 6px;
	}
}

.bottom-mix .row > [class *='col-'] {
	margin-bottom:16px;
}
#div_page_init_wrap .green_product_area{
	margin:0 -4px;
}
#div_page_init_wrap .embed-responsive{
	width:720px;
	max-width:100%;
	margin:auto;
}
@media(max-width:767px){
	#div_page_init_wrap .embed-responsive{
		max-width:100%;
	}
}
#div_page_init_wrap a.btn:hover{
	opacity:1;
}

.card-block {
    position: relative;
    background: #ffffff;
    overflow: hidden;
    display: grid;
    grid-template-rows: 1fr auto;
    flex-direction: column;
    background-color: rgb(255, 255, 255);
    box-shadow: 0px 1px 10px rgba(0, 0, 0, 0.1);
    border-radius:15px;
    padding:24px;
}
.card-block img{
	border-radius:14px;
}
.card-block .product__content{
	padding-top:16px;
}
h2.t_justify.font_16{
	font-size:19px!important;
	position:relative;
	padding-left:10px;
	margin-top:12px;
}
h2.t_justify.font_16::before{
	position:absolute;
	content:"";
	width:3px;
	height:22px;
	background:#FF3C74;
	left:0;
	top:5px;
}
.font--light.t_justify.t_justify{
	padding-left:12px;
}
.promotion-time a{
	color:#8E8E8E;
	font-size:18px;
	padding-left:12px;
}

/* 社群youtube */
.channel_area .slick-list{
	padding:12px 0;
}
.channel_area .product__box{
	grid-template-columns:unset;
	padding:32px 24px;
}
.channel_content{
	margin-bottom:24px;
}
.channel_content .channel_title{
	font-size:24px;
	margin-bottom:16px;
	font-weight:500;
}

/* 主題卡片 */
.topic-title{
	color:#3B3B3B;
	position:relative;
	padding-left: 12px;
}
.topic-title::before {
    position: absolute;
    content: "";
    width: 3px;
    height: 22px;
    background: #FF3C74;
    left: 0;
    top: 3px;
}
/* 商品banner-版型A */
@media (max-width: 767px) {
    .block4-cloumns3 {
        grid-template-columns: 1fr;
        grid-template-rows: 1fr;
        padding: 0;
    }
    .block4-cloumns3 .grid2,
    .block4-cloumns3 .grid2-1 {
        grid-template-columns: 1fr;
        gap: 0;
    }
    .block4-cloumns3 .grid2-1 {
        gap: 0;
    }
}

/* 組合模組： ********************************************************************/
@media(max-width:767px){
	[id*='div_page_igrid_'].container{
		padding:0;
	}
	div[id*="div_page_igrid_"][id$="_mobile"]:has(.grid2-1) {
	  padding:0 16px;
	}
	[id*='div_page_igrid_'].container > .p-lr-12{
		padding:0 8px;
	}
	[id*='div_page_igrid_'].container > .row{
		margin:0 16px;
	}
}
 [id*='div_inner_page_rmd_'] .title--small{
 	font-size:14px;
	color:#8E8E8E;
 }
#div_inner_page_rmd_ .title--small{
	font-size:13px;
	color:#8E8E8E;
}
@media(max-width:991px){
.div_page_module_2{
	grid-template-columns: 1fr!important;
}
}
.bottom-mix .topic-block{
	height: 100%;
    display: flex;
    flex-direction: column;
}
.topic_block .product__box{
	grid-template-columns:1fr!important;
}
.topic-block .row.m-lr-0{
	flex: 1;
	padding-bottom:6px;
}
.topic-block .page_banner{
	margin-bottom:16px;
}
.topic-block .page_banner img{
	border-radius:15px;
}
.product-default-slider-4grid-1rows .product-image--large{
	display:flex;
}

.topic-block [class*="col-"] .product-image--large{
	height:auto;
}

.topic-block [class*="col-"] .product__price__block{
	display:grid;
	grid-template-columns: 1fr auto;
}

/* 發燒嚴選 */
.product-default-slider-8grid-2rows .slick-list{
	padding:14px 0;
	display:grid;
}
.product-default-slider-8grid-2rows .product__box{
	gap:0;
}
.product-default-slider-8grid-2rows .slick-list .product__price__block{
	display:grid;
	grid-template-columns:1fr auto;
}
.hit_brand_product .product__box{
	display: flex;
    flex-direction: column;
}
.hit_brand_product .product__content{
	flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.s-type-4block .product-default-slider-4grid-1rows .slick-list,
[id*='div_page_countdown_']{
	padding:8px 0;
	margin:0;
}
[id*='div_page_countdown_']{
   margin-left: 0!important;
   margin-right: 0!important;
}
[id*='div_page_product_']{
   margin-left: 0!important;
   margin-right: 0!important;
   margin-top: 8px!important;
}
[id*='div_page_product_'] .tag_area,
[id*='div_page_slider_product_'] .tag_area,
[id*='div_outer_card_6_product_'] .tag_area,
[id*='div_page_countdown_'] .tag_area{
	top:18px;
	right:18px;
}
[id*='div_page_product_'] .tag_area.tag_full,
[id*='div_page_slider_product_'] .tag_area.tag_full,
[id*='div_outer_card_6_product_'] .tag_area.tag_full,
[id*='div_page_countdown_'] .tag_area.tag_full{
	top:0;
	right:0;
}

/* 各id的呈現調整 */
#div_product_list_append .product__box.p-5,
.product-default-slider-4grid-1rows .product__box.p-5{
	padding:0!important;
}
.product-default-slider-4grid-1rows .product__box{
	margin:8px 4px!important;
}
.product-default-slider-4grid-1rows [class *='col-']{
	padding: 0 4px !important;
	margin:0;
}
.div_prdlist .product__content,
.product-default-slider-4grid-1rows .product__content{
	padding:10px;
}

/* product_classify 商品卡價錢跑版 */
@media (max-width: 1439px) {
	  #div_product_list_append .product__price{
	    flex-direction: column;
	  }
}
@media (max-width: 767px) {
	#div_product_list_append .product__price{
	    flex-direction: row;
	  }
}

[id*='cardp-'] .product__img,
[id*='div_page_product_'] .product__img,
[id*='div_page_slider_product_'] .product__img,
[id*='div_page_countdown_'] .product__img,
.div_prdlist .product__img{
	transform:scale(0.93);
	border-radius:5px;
}
[id*='div_page_slider_product_'] .slick-track {
    display: flex !important;
    gap:8px;
}
[id*='div_page_slider_product_'] .slick-slide .product__box {
    height: 100%;
    display: flex;
    flex-direction: column;
}
[id*='div_page_slider_product_'] .product__content {
    display: flex;
    flex-direction: column;
}
[id*='div_page_slider_product_'] .slick-slide{
    display: flex;
    flex-direction: column;
    height: auto !important;
}
[id*='div_page_slider_product_'] .slick-slide .product__box{
    height: 100%;
    display: flex;
    flex-direction: column;
}
[id*='div_outer_countdown_'] .product__price-del{
	height:22px;
	display:block;
}
[id*='div_outer_countdown_'] .product__content div:empty{
	display:none;
}
[id*='div_curation_detail_append'] > .product__box{
	padding:10px;
}


/*===== fileUpload Start =======*/
.upload_progress{
    display: grid;
    gap: 5px;
}
.upload_progress .ajax-file-upload-statusbar {
    display: flex;
    width: 100% !important;
    align-items: center;
    border: none;
    padding: 0;
    margin: 0 !important;
    gap: 5px;
}
.upload_progress .ajax-file-upload-statusbar .ajax-file-upload-filename{
    margin: 0;
    color:#464646;
}
.upload_progress .ajax-file-upload-statusbar .ajax-file-upload-filename::before {
    content: "\e929";
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin-right: 6px;
    font-size: 16px;
    vertical-align: middle;
}

.upload_progress .ajax-file-upload-statusbar .ajax-file-upload-progress{
    display: flex;
    height: 2px;
    overflow: hidden;
    font-size: 0.75rem;
    background-color: #e9ecef;
    border-radius: 0.25rem;
    border: none;
    padding: 0;
    margin: 0;
    max-width: var(--upload_progress_width, 250px) !important;
    width: 100% !important;
}
.upload_progress .ajax-file-upload-statusbar .ajax-file-upload-progress .ajax-file-upload-bar{
    background-color: var(--header_link_hover_color ,#ff3c74);
    text-shadow: none !important;
    color: transparent;
    height: 2px;
}
.upload_progress .ajax-file-upload-statusbar .ajax-file-upload-abort,
.upload_progress .ajax-file-upload-statusbar .ajax-file-upload-red{
    box-shadow: none;
    background-color: transparent;
    padding: 0;
    color: var(--header_main_f_color, #3B3B3B);
    text-decoration: none;
    border: none;
    text-shadow: none;
    margin-right: 0;
    display: flex;
}
.upload_progress .ajax-file-upload-statusbar .ajax-file-upload-abort i,
.upload_progress .ajax-file-upload-statusbar .ajax-file-upload-red i{
    font-size: 24px;
}
/*===== fileUpload End =======*/

/* ===== 購買記錄/線上購物 Start ===== */
.member-table tbody > tr td .nodata-gap,
.nodata-gap{
	display:flex;
	flex-direction:column;
	gap:32px;
	width:fit-content;
	padding:33px 0 1px;
	margin:auto;
	color:#999999;
}
@media(max-width:767px){
	.member-table tbody > tr td .nodata-gap,
	.nodata-gap{
		gap:16px;
	}
}
/* ===== 購買記錄/線上購物 End ===== */

/*===== 沒資料顯示 START ======*/
.empty-message{
	padding:56px 0;
	text-align:center;
	color:#999999;
	 display: flex;
	justify-content: center;
}
@media(max-width:767px){
	#div_plp_product_list_area .empty-message{
		padding:0;
	}
}
/*===== 沒資料顯示END ======*/
h1.company_page-title {
    font-size: 40px;
    line-height: 57px;
    font-weight: 500;
    letter-spacing: 6px;
    text-align: center;
    margin-bottom: 40px;
    text-align:center;
}
@media(max-width:991px){
	h1.company_page-title {
		display:none;
	}
}
/*================= Input+Icon =================*/
.input_icon {
	position:relative;
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: baseline;
}
.input_icon i{
	position:absolute;
	right:10px;
	top:12px;
}
.hm_arrow_up{
    position: absolute;
    width: 0px;
    height: 0px;
    margin-left:30px;
    filter: drop-shadow(rgba(0, 0, 0, 0.05) 0px -2px 2px);
    transform: translateY(-50%);
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-bottom: 20px solid rgb(255, 255, 255);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0s linear;
}
/*JW 2026/04/30 V14 類別 menu 三角形要跟 popup 一起等 hover timer，不再只靠 hover 立即出現。*/
.cbp-hrmenu>ul>li.cbp-hropen .hm_arrow_up{
	opacity: 1;
    visibility: visible;
    transition: opacity 0s linear;
}

/*================= Date Range =================*/
.date-range-display {
    display: flex;
    align-items: center;
    font-size: 18px;
    font-weight: normal;
    color: var(--header_main_f_color, #3B3B3B);
}
@media(max-width:767px){
	.date-range-display {
		font-size:17px;
		padding-top:2px;
	}
}
/*================= 九大分類Banner距離 =================*/
.other-padding #div_init_page_kv img{
	border-radius:35px;
}
#div_brand_banner_area [id*='banner_kv_']{
    border-radius:35px;
}
@media(max-width:767px){
	.other-padding #div_init_page_kv img{
	    border-radius:20px;
	}
    #div_brand_banner_area [id*='banner_kv_']{
        border-radius:20px;
    }
}
/*================= Modal 個資告知聲明 =================*/
#div_page_init_wrap__iframe__privacy-policy .page_title h1{
	font-size:31px!important;
	line-height:45px!important;
}
@media(max-width:767px){
	#div_page_init_wrap__iframe__privacy-policy .page_title h1{
		font-size:24px!important;
		line-height:35px!important;
		margin-bottom: 16px;
    }
}
/*================= Modal 服務條款 =================*/
#div_page_init_wrap__iframe__terms-service .page_title h1{
	font-size:31px!important;
	line-height:45px!important;
}
@media(max-width:767px){
	#div_page_init_wrap__iframe__terms-service .page_title h1{
		font-size:24px!important;
		line-height:35px!important;
		margin-bottom: 16px;
    }
}
/*================= 搜尋AUTO Complete =================*/
.skey_auto_box{
    position: absolute;
    top: 23px;
    background: linear-gradient(    to bottom,    rgba(255,255,255,0) 0%,    rgba(255,255,255,0) 0%,    #ffffff 6%,    #ffffff 100%  );
    z-index: 1;
    border: none;
    width: 100%;
    border-bottom: 1px solid #e2e2e2;
    border-left: 1px solid #e2e2e2;
    border-right: 1px solid #e2e2e2;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    padding-top: 24px;
    padding-bottom:24px;
    max-height: 500px;
    overflow-y: auto;
}
.skey_auto_box td{
	padding:4px 0;
}
#table_skey_auto{
    border: none;
}
#table_skey_auto_mobile{
    border: none;
}

/* ==================== iOS input focus zoom prevention (V14) ==================== */
/* iOS Safari/Chrome：輸入框字體 < 16px 時，點選會自動放大頁面；V14 手機版統一提高字體避免畫面跳動 */
@media (max-width: 767px) {
	input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="button"]):not([type="submit"]):not([type="reset"]),
	select,
	textarea {
		font-size: 16px !important;
	}
}
/*================= 訪客訂單-訂單內容區域 =================*/
.account-wrapper:has(> .empty-message){
    padding-left: 0;
}
/*================= grecaptcha的高度調整 =================*/
.grecaptcha-badge{
	bottom:112px!important;
}
@media(max-width:1199px){
	.grecaptcha-badge{
		bottom:170px!important;
	}
}
@media(max-width:991px){
	.grecaptcha-badge{
		bottom:160px!important;
	}
}
.order-button-area{
	display: flex;
    gap: 24px;
    justify-content: center;
    margin-top:48px;
}
.order-button-area button{
	max-width: 245px;
    width: 100%;
}
@media(max-width:767px){
	.order-button-area{
	    justify-content: center;
	    margin-top:24px;
	}
	.order-button-area .btn--large{
		padding:0;
	}
}
/*================= Title =================*/
.sub-title{
	font-size:24px;
}
@media(max-width:767px){
	.sub-title{
		font-size:18px;
	}
}
/* 猜你喜歡 */
.recmd_title {
    display: block;
    text-align: center;
    padding-bottom: 24px;
}
.recmd_title h3{
    color: #3B3B3B;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 40px;
    font-style: normal;
    font-weight: 700;
    line-height: 120%;
    letter-spacing: 2px;
}
.recmd_block.recmd_title_nextline {
    padding: 60px 0px 20px;
}
.div_clio_product_row_4{
    display: grid;
    gap: 0;
    grid-template-columns: 1fr 1fr 1fr 1fr;
}
@media(max-width:991px){
    .div_clio_product_row_4{
        grid-template-columns: 1fr 1fr 1fr;
    }
}
@media(max-width:767px){
    .div_clio_product_row_4{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
.div_clio_product_row_2{
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.recmd_block .offcanvas__block .div_prdlist{
    margin-bottom:0;
}

[id^="div_recmd_"] .product__box {
    margin: 8px;
    padding: 8px;
    gap: 8px;
}

/* 品牌介紹 */
#div_brand_banner_area img{
  max-width: 100% !important;
}

/* 防止客戶寫死尺寸 */
#div_brand_banner_area img[width],
#div_brand_banner_area img[height],
#div_brand_banner_area img[style] {
  width: 100% !important;
  height: auto !important;
}