@charset "UTF-8";
/*===== Google Fonts =====*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+TC&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+TC&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100..900&display=swap");


html,
body {
    height: 100%;
}
.wrap {
    flex-grow: 1;
}
a{
	color:inherit;
	text-decoration:none;
}
hr{
	height:1.5px;
	opacity:1;
}
a.underline,
.underline {
	text-decoration:underline;
}
.main {
    padding-top:180px;
    padding-bottom: 81px;
}
@media(max-width:991px){
	.main {
	    padding-top:148px;
	    padding-bottom: 56px;
	}
}
@media(max-width:767px){
	.main {
	    padding-top:139px;
	}
}

.main.product {
    overflow: auto;
    padding-bottom: 350px;
}
@media (max-width: 991px) {
    .main-container {
        padding-top: 0px;
    }
}
@media (max-width: 767px) {
    .menu-container {
        padding-top: 0;
    }
}
.root {
	font-family: "futura-pt", "Noto Sans TC", sans-serif;
    display: inline-block;
    padding: 10px 0;
    width: 100%;
    font-size: 14px;
    font-weight:500;
    color: var(--color_primary, #000000);
    margin-top:16px;
}
@media(max-width:767px){
	.root {
		display:none;
	}

    .root.showCrumbs {
        display: inline-block;
    }

    .root.showCrumbs #div_crumb {
        display: flex;
    }
}
.root .adorn{
	padding:0 8px;
	color:var(--gray_400);
}
.div_crumb .adorn.p0{
	padding:0;
	color:var(--gray_400);
}

.root.gray_bg{
	background: transparent!important;
}
.root a {
    color: var(--color_primary, #000000);
}
.root a:hover {
    color: var(--header_sub_bg_color);
}
.row_crumb{
	padding:10px 0!important;
}
#div_crumb {
	display:flex;
	flex-wrap:wrap;
	font-size:14px;
	line-height:17px;
	font-family: "futura-pt", "Noto Sans TC", sans-serif;
    background: transparent;
    color: var(--gray_400);
    gap: 8px;
}
@media(max-width:767px){
	#div_crumb{
		display:none;
	}
}
.root #div_crumb a {
    color: var(--color_primary, #000000);
}
.root span.active {
    color: #666666;
}
.root-m-t {
    padding-top: 0;
    margin-top: 50px;
}
.root_top {
    margin-top: 16px;
}
@media (max-width: 767px) {
	.root_top {
	    margin-top: 0;
	}
}

#div_crumb h2 {
	font-size:14px !important;
    font-weight: inherit;
    line-height: inherit !important;
    display: inline;
    color:#666666;
}
#div_crumb .color-gray{
	color: var(--color_primary, #000000);
}
@media(max-width:767px){
	.root a,
	#div_crumb h2 {
        font-size: 14px;
	}
}
@media (max-width: 991px) {
    .root {
        padding: 66px 0 2px;
        margin-bottom: 0;
    }
    .root-m-t {
        margin-top: 80px;
    }
}
@media (max-width: 767px) {
    .root-m-t {
        margin-top: 70px;
    }
}
button{
	height:auto!important;
}
.p_relative{
	position:relative;
}
.cursor-default {
    cursor: default;
}
.init_cursor {
    cursor: initial !important;
}
.clearfix {
    clear: both;
}
.color-red {
    color: var(--header_sub_bg_color) !important;
}
.color-blue {
    color: #0075E0 !important;
}
.color-pink {
    color: var(--header_sub_bg_color) !important;
}
.color-gray {
    color: #999999;
}
.color-dark {
    color: var(--color_primary, #000000) !important;
}

/* 
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
	====================== Display =======================
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
*/
.float-left {
    float: left;
}
.float-right {
    float: right;
}
.white_bg {
    background: var(--bg_white) !important;
}
.gray_bg {
    background: #f5f5f5 !important;
}
.topic-block {
    border-top-left-radius: 25px;
    background: #ffffff;
    box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.1);
    padding: 0 0 20px;
}
.topic-block .section-content__title > h1 {
    margin: 50px 10px 0;
}
#div_brand_area .topic-img {
    object-fit: cover;
    width: 100%;
    height: auto;
    height:134px!important;
    object-fit:cover;
}
.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 10px;
}
.topic-des {
    color: #666666;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    height: 54px;
    border-top: 1px dotted #cccccc;
    padding-top: 5px;
}
@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;
    }
}
/* 
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
	===================== Preloader ======================
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
*/
.preloaderjs .spinner {
    display: none !important;
}
.preloaderjs#page-preloader {
    background: rgba(46, 46, 46, 0.99) !important;
}
#page-preloader {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #2e2e2e;
    z-index: 100500000000;
}
#page-preloader > .wrapper {
    width: 100%;
    text-align: center;
    margin-top: 20rem;
}
@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);
    }
}
@-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);
    }
}
/* 
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
	======================= Border =======================
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
*/
.border-top {
    border-top: 1px solid;
}
.border-0 {
    border: 0;
}
/* 
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
	================ Relative or absolute ================
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
*/
.bottom-10 {
    bottom: 10px;
}
/* 
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
	================== Container Layout ==================
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
*/
.container {
    width: 100%;
    max-width: 1536px;
    padding-right: 24px;
    padding-left: 24px;
    margin-right: auto;
    margin-left: auto;
}
@media(max-width:767px){
	.container {
		padding-right: 16px;
    	padding-left: 16px;
	}
}
.container-fluid {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    overflow-x: hidden;
}
/*

	::::::::::::::::::::::::::::::::::::::::::::::::::::::
	======================= Header =======================
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
*/
header .top-area {
    background-color: #F3F4F6;
    font-size: 16px;
    font-weight: 600;
    gap: 10px;
    height: 32px;
    line-height:32px;
    position: fixed;
    width: 100%;
    z-index: 1000;
    letter-spacing: 0.39px;
}
header .top-info {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap:16px;
    width: 100%;
    max-width: 1536px;
    padding-left: 24px;
    padding-right: 24px;
    margin-right: auto;
    margin-left: auto;
    align-items:center;
}
@media(max-width:991px){
	header .top-info {
	  padding:0;
	}
}
@media(max-width:767px){
	header .top-info {
	  height:auto;
	}
}
header .top-info .left-area {
    justify-self: start;
    white-space:nowrap;
    padding-left:0;
    position:relative;
    width: 150px;
}
header .top-info .left-area a{
	font-size:13px;
    letter-spacing: 0.39px;
}
.store-product-popup-menu li{
	line-height:15px;
	margin-bottom:16px;
}
.store-product-popup-menu li:last-child{
	line-height:15px;
	margin-bottom:8px;
}
.store-product-popup-menu a{
	font-size:15px!important;
	letter-spacing: 0.45px!important;
}
header .top-info .left-area a:hover{
	color:var(--color_primary, #000000);
}
header .top-info .left-area ul {
    display: flex;
    align-items: center;
    padding:0;
}
header .top-info .right-area ul{
    display: flex;
    justify-content:flex-end;
    font-family: "futura-pt", "Noto Sans TC", "Noto Serif TC";
    gap: 16px;
    padding:0;
    width: 150px;
    font-size:13px;
    color:#212529;
}
header .top-info .right-area ul a:hover,
header .top-info .right-area ul > a:hover{
	color:var(--color_primary, #000000);
}
@media(max-width:991px){
    header .top-area {
        background-color: #F3F4F6;
        font-size: 14px;
        font-weight: 500;
        text-align: center;
        gap: 10px;
        height: 32px;
        line-height:32px;
        position: fixed;
        width: 100%;
        z-index: 1001;
    }
    header .top-info {
        display: block;
        text-align: center;
    }
}
.header .mid-area {
    background-color: #ffffff;
    width: 100%;
    max-width: 1488px;
    padding: 16px 0;
    margin-top:10px;
    margin-right: auto;
    margin-left: auto;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 24px;
}
.header .mid-area div{
	padding:0;
}
.mid-area .left-layout {
    display: flex;
    align-items: center;
}
.mid-area .header__logo img {
    width: auto;
    height: 30px;
}
#header_view_cart{
	font-size:16px;
	font-weight:500!important;
	padding:14px 20px!important;
}

/* 手機版Header */
.header__mobile .mid-area{
    z-index: 1001;
    position: fixed;
    background: white;
}
.header__mobile .mid-area>div{
    height:56px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding:0;
}
.header__mobile .mid-area .header__mobile-logo img {
    height:28px;
}
.header__mobile .serch_div_mobile {
    z-index: 8;
    position: fixed;
    top: 86px;
    background: white;
}
.mid-area .right-action-icon {
    width: 167px;
    display: flex;
    justify-content: flex-end;
}
.mid-area .right-action-icon ul {
    display: flex;
    align-items: end;
    gap: 4px;
}
.mid-area .right-action-icon ul li a{
	padding: 6px;
    display: block;
}
.mid-area .right-action-icon ul li a:hover{
	color:var(--header_main_f_color, #000000);
}
.mid-area .right-action-icon i {
    font-size: 28px;
    display:flex;
}

.mid-area .right-action-icon img {
    height:28px;
    width:fit-content;
}

/* 跑馬燈 */
#div_header_marquee .slick-list {
    height: 32px !important;
}
#div_header_marquee .slick-slide {
    padding: 9px 0;
}
@media(max-width:767px){
	#div_header_marquee .slick-slide {
	    padding: 9px 16px;
	}
}
a.marquee_text:hover{
	color: var(--header_main_f_color, #000000);
}
#div_header_marquee {
    max-height: 32px;
    width: 100%;
    background: none;
    color: var(--header_main_f_color, #000000);
}
.marquee-item.hero-slider {
    display: flex !important;             /* 啟用 Flexbox */
    justify-content: center;   /* 水平置中 */
    align-items: center;       /* 垂直置中 */
    height: 100%;              /* 確保父層有高度，垂直置中才會生效 */
    width: 100%;               /* 確保寬度佔滿 */
}
.marquee_text{
    text-align: center;
}
.header__logo, .header__mobile-logo {
    height: auto;
    max-width: 167px;
    width:100%;
    text-align: center;
    float: left;
    color: #ffffff;
    font-weight: 500;
}
.header__mobile-logo {
    max-width: 180px;
    width: 100%;
}
.header__logo a {
    color: #ffffff;
}

.header__mobile {
    position: absolute;
    width: 100%;
    background: #ffffff;
    z-index: auto;
    top: 28px;
}
@media (min-width: 576px) {
    .header__mobile i {
        font-size: 26px;
    }
}
.header__mobile i:hover {
    color: var(--header_link_hover_color);
}
.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, #000000);
}
.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, #000000);
}

.header__mobile.is-sticky {
    position: fixed;
    width: 100%;
    top: 31px;
    left: 0;
    z-index: 100;
}
#div_header_marquee .slick-dots-container {
    display: none !important;
}
#div_header_marquee button {
    display: none !important;
}
/*
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
	===================== HeaderMenu =====================
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
*/
.cbp-hrmenu ul li ul{
	opacity:1!important;
}
.cbp-hrmenu {
    background: #ffffff;
    /* border-bottom: 2px solid white; */
}
.cbp-hrmenu .cbp-hrsub {
    width: 100% !important;
    left: 0 !important;
    top:146px;
    padding-bottom:30px!important;
}
.cbp-hropen .container {
    display: grid !important;
    grid-template-columns: 1fr minmax(auto, 2fr) 1fr;
}
.cbp-hrmenu > ul,
.cbp-hrmenu .cbp-hrsub-inner {
    max-width: inherit !important;
    margin: 0 auto !important;
    display: flex;
    justify-content: center;
}
.cbp-hrmenu .cbp-hrsub-inner>div a {
    line-height: 18px !important;
}
.cbp-hrsub .left-col {
    padding-top: 32px;
    align-items: center;
}
.cbp-hrsub .left-col ul {
    margin: 0;
    max-width: 150px;
    font-weight: 500;
    font-size: 16px;
    line-height: 120%;
    letter-spacing: 3%;
}
.cbp-hrmenu ul li ul{
    transition: .1s;
    display:flex;
    flex-direction:column;
}
.cbp-hrmenu ul li:hover ul{
    transition-delay: .2s !important;
}
.cbp-hrsub .left-col ul li {
    padding-bottom: 16px;
}
.cbp-hrmenu ul li ul li h4 a{
    color:var(--color_primary, #000000)!important;
}
.cbp-hrmenu ul li ul li a{
    color:#343A40!important;
    margin-bottom:10px;
}
.cbp-hrsub .mid-col {
    padding-top: 32px;
    max-width: 991px;
}
.cbp-hrsub .mid-col h4 {
    padding: 0 !important;
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 3%;
    margin-bottom: 14px !important;
}
.cbp-hrsub .mid-col h4:hover {
    font-weight: 600;
}
/* 1. 設定父層為 column-count 4 欄排版 */
.cbp-hrsub .mid-col .cbp-hrsub-inner {
    display: block !important; /* 必須是 block 才能讓 column-count 運作，覆蓋掉之前的 flex */
    width: 100%;
}

/* 2. 確保子元素不被切斷、填滿單一欄寬 */
.cbp-hrsub .mid-col .cbp-hrsub-inner > .cbp_div {
    float: none !important; /* 清除可能存在的浮動干擾 */
    margin-bottom: 24px; /* 每個大分類區塊之間的上下間距 */
    padding: 0;
}
.cbp-hrsub .mid-col .cbp-hrsub-inner::before,
.cbp-hrsub .mid-col .cbp-hrsub-inner::after {
    display: none !important;
}
.cbp-hrsub .right-col {
    padding-top: 32px;
}
.cbp-hrsub .right-col .menu-ad-block{
    align-items: flex-end;
    justify-items: end;
}
.cbp-hrsub .right-col .ad-block-small {
    max-width: 228px;
}
.cbp-hrsub .right-col .menu-activity-title {
    max-width: 228px;
    text-align: start;
}
.cbp-hrsub .right-col img {
    max-width: 228px;
}
.cbp-hrmenu>ul>li>a{
    padding:0 12px 10px !important;
}

.cbp-hrmenu > ul > li > a {
    position: relative;
}

.cbp-hrmenu > ul > li > a:hover,
.cbp-hrmenu > ul > li > a:active {
    font-weight:500;
}

.cbp-hrmenu > ul > li > a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    height: 5px;
    background: #000;
    transition: width 0.3s;
}
.cbp-hrmenu > ul > li:hover > a::after {
    width: 100%;
}
.cbp-hrmenu .cbp-hrsub-inner a:hover {
    color: var(--color_primary, #000000);
}

.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;
	margin-bottom:0;
	letter-spacing: 0.45px;
}
.cbp-hrmenu .cbp-hrsub-inner > div.w-25 {
    display: inline-flex;
    flex-direction: column;
}
.sticky-header {
    position: absolute;
    width: 100%;
    z-index: 9;
    background: #ffffff;
    height: 147px;
    top: 32px;
}
.sticky-header.is-sticky {
    position: fixed;
    width: 100%;
    top: 32px;
    left: 0;
    animation-duration: 1s;
    animation-fill-mode: both;
    animation-name: slideInDown;
    animation-duration: 0.5s;
    margin-top: 0;
    z-index: 100;
}
.sticky-header.is-sticky.header__color--silver {
    background: rgba(84, 101, 131, 0.95);
}
.header__nav {
    display: flex;
    margin: 0;
    font-size: 17px;
}
.header__nav-item {
    display: inline-block;
}
.header__nav-item.pos-relative {
    position: unset !important;
}
.header__nav-item:last-child {
    padding-right: 0;
}
.header__nav-link {
	font-size:17px;
    line-height: 49px;
    text-decoration: none !important;
    display: flex;
    align-items: center;
    letter-spacing: 0.51px;
}
@media (max-width: 991px) {
    .header__nav-link {
        height: auto;
        line-height: 2;
    }
}
.header__nav-link i {
    margin-left: 5px;
}
.header__nav-link--white {
    color: #000 !important;
}
.header__nav-item:hover .header__nav-link::after {
    width: 100%;
    left: 0;
    right: auto;
}
.dropdown__menu,
.dropdown__submenu {
    top: 100%;
    left: 0;
    width: 100vw;
    background: #ffffff;
    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);
    overflow-y: auto;
    padding: 30px;
    border-top:0.5px solid var(--gray_400);
}
.dropdown__submenu {
    top: 0;
    left: -100%;
}
.dropdown__menu .dropdown__list {
    margin-bottom: 12px;
    display: inline-flex;
    width: 20%;
}
.header__nav-item:hover .dropdown__menu,
.dropdown__list:hover .dropdown__submenu {
    visibility: visible;
    opacity: 1;
    transform: rotateX(0deg);
    transition: all 0.3s linear;
}
.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-menu li {
    position: relative;
    padding: 10px 5px;
    color: var(--header_main_f_color, #000000);
}
.offcanvas-menu li img {
    width: 100px;
    height: auto;
    border: 1px solid #999999;
    padding: 5px;
}
.offcanvas-menu > ul > li:last-child {
    border-bottom: none;
}
.offcanvas-menu li{
border-bottom: 1px solid rgba(92, 92, 92, 0.1);
}
.offcanvas-menu li a {
    display: block;
    color: var(--header_main_f_color, #000000);
    text-decoration: none;
    font-size: 0.95rem !important;
    font-weight: 500;
}
.offcanvas-menu li a::before {
	content:"";
	position:absolute;
	left:5px;
	bottom:0;
	height:2px;
	width:15px;
	background:var(--header_main_bg_color);
}
.offcanvas-menu li a:hover {
    color: var(--header_link_hover_color);
}
.offcanvas-menu li .sub-menu {
    display: none;
}
.offcanvas-menu li .sub-menu {
    position: relative;
    border-left: 2px solid var(--header_link_hover_color);
    margin: 12px 0 12px 17px;
    padding-left: 8px;
}
.offcanvas-menu li .sub-menu .sub-menu .sub-menu {
    display: none;
}
.offcanvas-menu li .sub-menu li{
	border:0;
}
.offcanvas-menu li .sub-menu li a {
    border-top: 0;
    padding: 0;
    line-height: 1.2;
    padding-left: 0;
    font-size: 0.95rem !important;
    font-weight:normal;
    color:var(--header_main_f_color, #000000);
}
.offcanvas-menu li .sub-menu li a::before {
    display: none;
}
.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: 40px;
}
.li-list04 {
    margin-left: 60px;
}
.menu-text {
    font-size: 0.95rem;
    font-weight: 400;
}

/* 側選單_強勢品牌 ******************************************************************* */
#header_side_menu_brand .brand_banner.s1 {
    border-radius: 100px;
    border: 1px solid #eeeeee;
    aspect-ratio: 1/1;
    padding: 10px;
}
#header_side_menu_brand{
	gap:10px 0;
}
.sidebar_tag{
	margin-top:16px!important;
}
/* 側選單_時尚焦點 ******************************************************************* */
.h2_fashion_title_s {
    margin-bottom: 5px;
    font-size: 20px;
    height: 24px;
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    color: #fff;
    font-weight: 500;
    letter-spacing: 1.2px;
}
.banner-wbg {
    background: rgba(0, 0, 0, 0.15);
    padding: 24px;
}
.banner__content {
    padding: 0px;
}
.banner__content--bottom {
    bottom: 0px;
}
/* 側選單_分類精選 ******************************************************************* */
.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;
    margin-bottom: 12px;
    background: rgba(215, 11, 25, 0.1) !important;
    border-radius: 8px;
    margin-top: 12px;
    word-break: break-word;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}
.categlory_list_div.bg-2 {
    background: rgba(0, 112, 194, 0.2) !important;
}
.categlory_list_div ul li a {
    color: #666666;
}
.categlory_list_div ul li a:hover {
    color: var(--header_link_hover_color) !important;
}
.categlory_list_div.p-l-20 {
    padding-left: 16px;
}

/* 
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
	================== Mobile-Side Menu ==================
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
*/
.header-menu-vertical .menu-title {
    color: #fff;
    font-size: 15px;
    font-weight: 500;
    text-transform: uppercase;
    cursor: pointer;
    margin: 0;
    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 0;
}
.header-menu {
    margin: 0 auto;
}
.style02 .header-menu {
    margin: 0;
}
@media (max-width: 767px) {
    .header-menu {
        display: none;
    }
}
/* 
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
	======================= Footer =======================
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
*/
/* 電腦版*/
.footer {
    font-family: "futura-pt", "Noto Sans TC", "Noto Serif TC";
    background: var(--footer_main_bg_color, #000000);
    font-size: 15px;
    color: var(--footer_main_f_color, #ffffff);
    height: auto;
    padding:60px 0 56px;
}

@media(max-width:767px){
	.footer {
	    padding:40px 0;
	}
}

.footer .booking_area{
    display: flex;
    flex-direction: column;
    gap:16px;
    max-width:354px;
    white-space: nowrap;
}

@media(max-width:991px){
    .footer .booking_area{
       margin:auto;
       text-align: center;
    }
}

.footer .booking_area h4{
    margin-bottom:0;
    font-size: 15px;
    font-weight: 400;
}
@media(max-width:991px){
    .footer .booking_area h4{
        font-size: 13px;
    }
}

.footer .booking_input{
    display: grid;
    grid-template-columns: 1fr auto;
    gap:0;
    width:100%;
}
.footer .booking_area input{
    border:1px solid #ffffff;
    background: transparent;
    padding:8px 16px;
}
.footer .booking_area .btn{
    padding:12px 13px;
}
.footer .download-area{
    display: flex;
    align-items: center;
    gap:4px;
    font-size:14px;
}

@media(max-width:991px){
    .footer .download-area{
        justify-content: center;
    }
}

.footer .download-area i{
    font-size:20px;
}

.footer-links-area{
    display: grid;
    grid-template-columns: 1fr 2fr 1fr;
    gap: 20px;
    padding-bottom:94px;
}
@media(max-width:991px){
    .footer-links-area{
        grid-template-columns: 1fr;
        gap: 32px;
        padding-bottom:32px;
    }
    .footer-links-area .order01{
        order:1;
    }
    .footer-links-area .order02{
        order:3;
        display: flex;
        max-width:354px;
        width:100%;
        margin:auto;
    }
    .footer-links-area .order03{
        order:2;
    }
}
.footer-middle-list{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    justify-content: space-between;
}
@media(max-width:991px){
    .footer-middle-list .footer-col{
        width:fit-content;
    }
}

ul.footer__nav{
	padding-left:0;
    gap: 20px;
    align-items: center;
}
.spread-child__nav {
    gap: 0 !important;
    display: grid;
    flex-wrap: wrap;
    grid-template-columns: repeat(3, 1fr);
}
.spread-child__nav .footer__list .footer__link {
    text-align: left;
    width: 100%;
}
@media(max-width:991px){
	.spread-child__nav .footer__list .footer__link {
    text-align: center;
	}
}

@media (max-width: 991px) {
    ul.footer__nav{
        text-align: center;
        justify-content: center;
    }
}

@media (max-width: 991px) {
    .footer__menu01 [class^="col"] {
        margin-bottom: 20px;
    }
}
.footer__copyright-area {
    color: #ffffff;
    font-size:14px;
    text-align: center;
}
@media(max-width:991px){
    .footer__copyright-area {
        font-size: 13px;
        padding:0;
    }
}

.footer__menu01 h4 {
    padding-left: 0;
    position: relative;
}
.footer__logo {
    padding-bottom: 40px;
}
.footer__logo img{
    width:178px;
    max-width:100%;
}
@media(max-width:991px){
    .footer__logo {
        text-align: center;
    }
    .footer__logo img{
        width:156px;
    }
}

ul.footer__social-area{
    display: flex;
    flex-wrap: wrap;
    gap:32px;
    margin-top:32px;
    padding:0;
}

@media(max-width:991px){
    ul.footer__social-area{
        justify-content: center;
        gap:16px;
        margin-top:14px;
    }
}

ul.footer__social-area li a{
    color:#ffffff;
}
ul.footer__social-area li i{
    font-size:22px;
}

.footer__list {
    margin-bottom: 20px;
}
@media (max-width: 991px) {
    .footer__list {
        margin-bottom: 16px;
        text-align: center;
    }
}
.footer__link {
    color: #DEE2E6;
    font-size: 14px;
    line-height:14px;
    font-weight:400;
    letter-spacing: 0.45px;
    text-decoration: none !important;
    display: block;
}
.footer__link:hover {
    color: var(--footer_link_hover_color, #de6f6f) !important;
}
.footer__copyright-text {
    text-align: center;
    margin-bottom: 0;
    padding: 0 12px;
}
.footer__copyright-text p {
    margin: 0;
    font-family: "futura-pt";
    letter-spacing: 0.7px;
    font-size:14px;
}
@media(max-width:767px){
	.footer__copyright-text p {
	    letter-spacing: 0.65px;
	    font-size:13px;
	    font-weight:400;
	}
}

.footer__copyright-text a {
    color: var(--footer_link_f_color, #e0e0e0) !important;
}
.footer__copyright-text a:hover {
    color: var(--footer_link_hover_color, #de6f6f) !important;
}
.flex-nav {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-left: 0;
    padding-right: 6px;
    height: 67px;
    background: var(--header_main_f_color, #000000);
}
.flex-nav li {
    width: 25%;
    text-align: center;
    margin-top: -6px;
}
.flex-nav li > a.btn {
    border-radius: 0;
    padding: 4px 0;
    line-height: 0;
    text-align: center;
    color: #ffffff;
    overflow: inherit;
}
.flex-nav li > a.btn i {
    display: inline-block;
    max-width: 24px;
    max-height: 24px;
}
.flex-nav li > a.btn span.icon-text {
    height: 30px;
    line-height: 30px;
    width: 30px;
    margin: 0 auto;
    display: block;
    border-radius: 0;
    border: 1px solid transparent;
}
.icon-text i {
    font-size: 18px;
}
.flex-nav li > a.btn span.text-name {
    display: block;
    height: 0;
    letter-spacing: -1px;
    color: #ffffff;
    position: relative;
    font-size: 12px;
    margin-top: 9px;
    letter-spacing: 0.1em;
}
.flex-nav li > a.btn span.text-name:after {
    content: "";
    display: block;
    opacity: 0;
    height: 2px;
    margin: 0 auto;
    position: absolute;
    bottom: 0px;
    left: 0;
    right: 0;
    background-color: transparent;
    border-radius: 2px;
}
.flex-nav li > a.btn:hover span.icon-text,
.flex-nav li > a.btn.active span.icon-text {
    border-radius: 50%;
    background: #ffffff;
    color: var(--header_main_bg_color) !important;
    display: flex;
    align-items: center;
    justify-content: center;
}
.flex-nav li > a.btn:hover span.text-name,
.flex-nav li > a.btn.active span.text-name {
    color: #ffffff;
    font-weight: bold;
}
.flex-nav li > a.btn:hover span.text-name:after,
.footer_menu a.btn.active span.text-name:after {
    opacity: 1;
    bottom: 5px;
}
.footer_menu {
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: 99;
    padding-bottom: env(safe-area-inset-bottom);
    box-shadow: 0px -3px 6px rgba(0, 0, 0, 0.08);
    -webkit-box-shadow: 0px -3px 6px rgba(0, 0, 0, 0.08);
    -moz-box-shadow: 0px -3px 6px rgba(0, 0, 0, 0.08);
    -ms-box-shadow: 0px -3px 6px rgba(0, 0, 0, 0.08);
    background: #ffffff;
}
.li_FollowUs i{
	font-size:21px;
}
.footer_copyright{
	margin-top:123px;
}
.footer_aboutus6 .footer__menu01{
	display:flex;
	flex-direction:column;
	gap:21px;
	color:#DEE2E6;
}
.footer_aboutus6 .footer__menu01 a:hover{
	color:#ffffff;
}
.footer_aboutus6 .footer__menu01 .item01{
	font-size:14px;
	font-weight:400;
	line-height:16.8px;
	letter-spacing: 0.42px;
	display: flex;
	align-items:center;
    gap: 4px;
}
.footer_aboutus6 .footer__menu01 .item01 i{
	display: flex;
	align-items:center;
    gap: 4px;
    line-height:16.8px;
}
@media(max-width:991px){
	.footer_aboutus6{
		margin:24px 0 12px;
		text-align:center;
	}
	.footer_aboutus6 .footer__menu01{
		display:flex;
		flex-direction:column;
		gap:52px;
	}
	.footer_aboutus6 .footer__menu01 .item01{
		order:2;
	}
	.footer_aboutus6 .footer__menu01 .item02{
		order:1;
	}
	.footer_copyright{
		margin-top:0;
	}
}
@media(max-width:767px){
	.footer_aboutus6 .footer__menu01 .item01{
		justify-content:center;
		letter-spacing: 0.42px;
	}
}

/* 
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
	====================== Margin =======================
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
*/
.m-t-33{
	margin-top:33px;
}

/* 
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
	====================== Font =======================
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
*/
.font14{
    font-size: 14px;
}
.font24{
    font-size: 24px;
}

/* 
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
	====================== Product =======================
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
*/
.product.m-b-100 {
    margin-bottom: 100px;
}
.product__img-nav--right li {
    margin-bottom: 5px;
}
.product__img-nav--right li a {
    display: flex;
    align-items: center;
    justify-content:center;
    width:32px;
    height:32px;
    color: var(--header_main_f_color, #000000);
}
.product__img-nav--right {
    top:12px;
    right: 14px;
    opacity: 1;
    visibility: visible;
    height:32px;
}
.product__img-nav--right i.fal{
    font-size:20px!important;
}
.product__img-nav--right i{
    font-size:20px!important;
    text-shadow:0.1px 0 currentColor,-0.1px 0 currentColor;
}
.product__img-nav--right i.heart-active{
    color:var(--red_color)!important;
}
.product__img-area {
    position: relative;
    width: 100%;
    height: auto !important;
}
.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;
}
.product__btag {
    position: absolute;
    bottom: 0;
    left: 0;
    text-align: center;
    padding: 1px 8px;
    color: #fff;
    font-size: 12px;
}
.product__tag--store {
    background: var(--header_main_f_color, #000000);
    font-size: 1rem !important;
    opacity: 0.6;
    padding: 10px;
    height: 40px;
    line-height: 20px;
}
.product__content{
    margin-top:16px;
    display:flex;
    flex-direction: column;
    gap:6px;
 }
 .product__content .clearfix{
    display:none;
 }
 .product__content .tag-area:empty {
    display: none;
}
.product__price{
	display:flex;
	flex-wrap:wrap;
	align-items: center;
	gap:0 8px;
	font-family: "futura-pt"
}
.product__price-del {
    font-size: 16px;
    font-weight: 400;
    text-decoration: line-through;
    min-height:20px;
    letter-spacing:0.3px;
}
@media(max-width:767px){
    .product__price-del {
        font-size: 15px;
    }
}

.product__price-reg {
    font-size: 16px;
    font-weight: 600;
    font-family: "futura-pt", sans-serif;
    color:var(--color_primary, #000000);
    letter-spacing: 0.3px;
    white-space: nowrap;
}
@media(max-width:767px){
    .product__price-reg {
        font-size: 15px;
    }
}
.product__price.ns1 > .product__price-reg {
    font-size: 18px;
    font-weight: 400;
    color: var(--color_primary, #000000);
}
.product__price.ns1 td{
	padding:0;
}
.product__link {
    color: var(--color_primary, #000000);
    font-size: 14px;
    line-height: 1.3;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    display: -webkit-box;
}
.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;
}
.product__link:hover {
    color: var(--header_link_hover_color);
}
.product__desc {
    font-size: 15px;
    line-height: 24px;
}
@media (max-width: 991px) {
    .product.m-t-100 {
        margin-top: 80px;
    }
    .product.m-b-100 {
        margin-bottom: 80px;
    }
    .product__tag--store {
        font-size: 0.9rem !important;
        padding: 8px;
        height: 35px;
        line-height: 20px;
    }
}
@media (max-width: 767px) {
    .product.m-t-100 {
        margin-top: 40px;
    }
}
@media (max-width: 575px) {
    .product__price-del {
        font-size: 15px;
    }
    .product__price-reg {
        font-size: 15px;
    }
}
/* 
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
	====================== 區塊大標題 =======================
	::::::::::::::::::::::::::::::::::::::::::::::::::::::
*/
.cut-title{
	font-family:"Noto Serif TC";
    color: var(--color_primary, #000000);
    letter-spacing: 1px;
    text-align: center;
    margin: auto;
    font-weight: 700;
    display: flex;
    flex-direction: column;
    margin-bottom:24px;
}
h1.cut-title,
.cut-title h2{
    font-size: 28px;
    line-height:33.6px;
    font-weight:600;
    margin:0;
}
h1.cut-title{
    font-size: 28px;
    line-height:33.6px;
    font-weight:600;
    margin-bottom:24px;
}
@media(max-width:767px){
    h1.cut-title,
    .cut-title h2{
        font-size:20px;
        font-weight:700;
        line-height:24px;
        letter-spacing: 0.6px;
    }
    h1.cut-title{
	    margin-bottom:32px;
	}
}

.page_title h1 {
    font-family:"Noto Serif TC";
    font-size: 28px;
    color: var(--color_primary, #000000);
    letter-spacing: 1px;
    font-weight: 700;    margin: auto;
    margin-bottom:24px;
}
.page_title.title_modal_5 h1 {
	font-size:20px!important;
	margin-bottom:0!important;
	line-height:1em!important;
}
.cut-title a {
    font-size: 14px;
    line-height:14px;
    letter-spacing: -0.28px;
    font-weight: 700;
    color:#212529;
    border-bottom: 1.5px solid #212529;
    width: fit-content;
    margin: auto;
    padding:4px 0 2.5px;
}
.cut-title a:hover {
    color:inherit;
}
@media (max-width: 767px) {
    .cut-title a {
        display: none;
    }
}

/*****************************
01 - Base - Default
*****************************/
* {
    margin: 0;
    padding: 0;
    list-style: none;
    word-wrap: break-word;
    outline: none;
}
*,
*::after,
*::before {
    box-sizing: border-box;
}
body {
    font-family: "futura-pt", "Noto Sans TC", "Noto Serif TC";
    font-weight: 400;
    line-height: 1.6;
    font-size: 14px;
    color: var(--color_primary, #000000);
    display: flex;
    flex-direction: column;
}

dl,
ol,
ul {
    margin-top: 0;
    margin-bottom: 0;
    padding: 0;
}

a {
    text-decoration: none;
    cursor: pointer;
}
a:hover {
    color:unset;
}
.underline a {
    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;
}
.pr {
    position: relative !important;
}
.pos-relative {
    position: relative !important;
}
.pos-absolute {
    position: absolute;
}
.overflow-hidden {
    overflow: hidden;
}
.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-color: var(--header_sub_bg_color) !important;
}
.pink-color {
    color: var(--header_sub_bg_color) !important;
}
.white-color {
    color: #fff !important;
}
.black-color {
    color: var(--header_main_f_color, #000000) !important;
}
.light-gray-bg {
    background-color: #F8F9FA !important;
}
.white-bg {
    background: #fff !important;
}

.red-color {
    color: var(--header_link_hover_color, #d0343d) !important;
}
.title--product {
    font-size: 22px;
    font-family: "Noto Serif TC";
}
@media(max-width:767px){
.title--product {
    font-size: 17px;
}
}

.title--white {
    color: #fff;
}
.section-content {
    position: relative;
}
.section-content__title,
.section-content__title h3 {
	font-family: "Noto Serif TC";
    font-size: 22px;
    font-weight:700;
    margin-bottom:14px;
    position: relative;
    color: var(--header_main_f_color, #000000);
    text-align: center;
    letter-spacing: 0;
}
@media (max-width: 992px) {
    .section-content__title h3 {
        font-size: 30px;
    }
}
@media (max-width: 767px) {
    .section-content__title h3 {
        font-size: 20px;
    }
}
.section-content__title > h1 {
    font-size: 1.2rem;
}
.section-content__title span {
    margin-left: 10px;
    font-size: 22px;
    font-weight: 400;
}
.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 {
    font-size:18px;
    display: inline-block;
    line-height: 1;
    outline: none;
    transition: all 0.3s ease;
    cursor: pointer;
    word-break: keep-all;
    border-radius: 0 !important;
    padding:13px 20px;
}
@media(max-width:767px){
	.btn {
	    font-size:16px;
	    padding:14px 20px;
	}
}
a.btn:hover{
	background:#0075E0;
}
.btn:focus {
    box-shadow: none;
}
/* 以防按鈕reload會閃一下 */
.btn:active,
.btn:focus,
.btn:focus-visible {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

.btn.disabled, .btn:disabled, fieldset:disabled .btn{
	background: var(--gray_200) !important;
    border-color: var(--gray_200) !important;
	color:rgba(0, 0, 0, 0.2)!important;
	opacity:1;
}

.btn--box {
    display: inline-block;
}
.btn--block {
    display: block;
}
.btn--radius {
    border-radius: 30px;
}

.btn--radius50 {
    border-radius: 50%;
}
.btn--border-white {
    color: var(--header_main_f_color, #000000);
    background: #dddddd;
    border-color: #dddddd;
}
.btn--border-white.radius {
    border-radius: 30px;
}
.radius-5 {
    border-radius: 5px;
}
.bg-lightgray {
    background-color: rgb(240, 242, 247);
}

.btn--border-white:hover {
    color: #fff;
    background: var(--header_sub_bg_color);
    border-color: var(--header_sub_bg_color);
}
.btn--border-white.active {
    color: #fff;
    background: var(--header_sub_bg_color);
    border-color: var(--header_sub_bg_color);
}
.btn--border-white01 {
    color: var(--header_main_f_color, #000000);
    background: #ffffff;
    border-color: #ffffff;
    width: 24px;
    height: 24px;
}
.btn--border-white01 i {
    font-size: 20px!important;
}
.btn--border-white01:hover i{
	font-size: 20px!important;
    color: var(--header_sub_bg_color);
    background: #ffffff;
    border-color: var(--header_sub_bg_color);
}
.btn--border-white01.active {
    color: var(--header_main_f_color, #000000);
    background: var(--header_main_f_color, #000000);
}
.btn--border-outline {
    color: var(--header_main_f_color, #000000);
    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, #000000);
}
.btn--underline-black:hover {
    color: var(--header_link_hover_color);
}
.btn--large {
    font-size: 16px;
    padding: 20px 30px;
}
.btn--medium {
    padding: 18px 20px;
}
.btn--small {
    padding: 12px 16px 10px;
}

.btn--small.p-style {
    padding: 7px 10px;
}
.btn--xs {
    padding: 5px 10px;
    font-size: 0.9rem;
}
.btn--tiny {
    padding: 10px 20px;
}
.btn--white {
    background: var(--bg_white, #ffffff);
    color: var(--color_primary, #000000) !important;
}
.btn--white-hover-black:hover {
    background: var(--btn_primary_bg, #000000);
    color: var(--btn_primary_text, #ffffff);
}
.btn--black {
    background: var(--btn_primary_bg, #000000) !important;
    color: var(--btn_primary_text, #ffffff)!important;
}

.swal2-close{
	color:var(--white_color, #ffffff)!important;
	background-color: rgba(0,0,0,0.2)!important;
    border-radius: 50px !important;
    position: absolute;
    top: -50px;
    right: 5px;
    width: 40px !important;
    height: 41px !important;
}
.swal2-close:hover{
	color:var(--white_color, #ffffff)!important;
	opacity:1!important;
}
.swal2-close i{
	font-family: 'icomoon' !important;
	font-size:24px;
}
.swal2-close i:before {
    content: "\e905";
}
.swal2-cancel{
	font-weight:500!important;
}
.swal2-confirm{
	border:1px solid var(--btn_primary_bg, #000000);
	font-weight:500!important;
	color:var(--black_color, #000000)!important;
	background:transparent!important;
}
.btn--black:hover,
.swal2-cancel:hover,
.btn--black-hover-red:hover {
    background: var(--btn_primary_border_hover, #0075E0)!important;
}
.swal2-confirm:hover{
    background: var(--bg_primary)!important;
    color: var(--white_color)!important;
}
/* //JW 2026/08/04 登入頁按下「網站會員登入」後改用 disabled 取代隱藏，需要看得出來的灰化狀態；
   .btn--black 與其 hover 都帶 !important，這裡必須同樣 !important 才蓋得過，hover 也要一併壓住不變色。 */
#submit_form:disabled,
#submit_form:disabled:hover {
    background: var(--gray_200) !important;
    border-color: var(--gray_200) !important;
	color:rgba(0, 0, 0, 0.2)!important;
    cursor: not-allowed;
}
.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: #000 !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: #000 !important;
    }
}
.btn--red {
    background: var(--red_color);
    color: #ffffff;
}
.btn--red:hover {
    background: var(--red_color_hover);
    color: #fff;
}
.btn--blue{
    background: var(--link_color_primary);
    color: #ffffff;
}
.btn--blue:hover{
    background: var(--link_color_primary_hover);
    color: #ffffff !important;
}
.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;
}
.internal-link {
    color: #fff;
    margin-left: 30px;
    transition: all 0.3s ease;
}
.internal-link:hover {
    color: #f17b08;
}

/*****************************
06 - Component - Hero Slider
*****************************/
.hero {
    position: relative;
    aspect-ratio: 1728 / 540;  /* 等比例 */
    background:#F8F9FA;
    display:grid;
    align-items: center;
}
.hero-slider{
        display: flex;
    }
@media(max-width:767px){
    .hero-slider{
        display: flex;
        flex-direction: column;
    }
    .hero-slider .order1{
        order:2;
    }
    .hero-slider .order2{
        order:1;
    }
    .hero {
        aspect-ratio: auto;      /* 手機不用橫幅比例 */
        max-height: none;
    }
}

.hero__content{
    display: flex;
    flex-direction: column;
    text-align: left;
    gap:20px;
    width:37%;
    position: relative;
    z-index:1;
}
@media(max-width:991px){
   .hero__content{
    gap:16px;
    }
}
@media(max-width:767px){
   .hero__content{
    width:100%;
    flex-direction: row;
    padding:20px 0;
    align-items: center;
    }
}

.hero__content h1 {
	font-family:"Noto Serif TC";
    font-size: 32px;
    line-height:38.4px;
    letter-spacing: 0.96px;
	text-transform: uppercase;
    font-weight: 700;
    width:100%;
    margin-bottom:0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    Overflow:hidden;
}
@media (max-width: 1199px) {
    .hero__content h1 {
        font-size: 26px;
    }
}
@media(max-width:991px){
    .hero__content h1 {
        -webkit-line-clamp: 1;
    }
}
@media(max-width:767px){
    .hero__content h1 {
        font-weight:700;
        line-height:31.2px;
        letter-spacing: 0.78px;
    }
}

@media(max-width:575px){
    .hero__content h1 {
        -webkit-line-clamp: 2;
    }
}

.hero__content p {
	font-family: "futura-pt", "Noto Sans TC", sans-serif;
    font-size: 17px;
    font-weight:400;
    line-height:23.8px;
    letter-spacing: 0.48px;
    margin-bottom:0;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    white-space: normal;
    Overflow:hidden;
}
@media(max-width:767px){
    .hero__content p {
        display: none;
    }
}

.hero__content .btn{
    width:fit-content;
}

.banner-img {
  position: absolute;
  top: 0;
  right: 0;
  width: 58vw;
  height: 100%;
  background-repeat: no-repeat;
  background-size: auto 100%;
}
@media(max-width:767px){
    .banner-img {
        position: relative; 
        width: 100%;
        aspect-ratio: 1 / 1;   /* 正方形 */
        background-size: cover;
        background-position: center center;
    }
}

/* 樣式一：文字在左，圖片在右 */
.theme-1 .banner-img {
  right:0;
  background-position: right center;
}

/* 樣式二：文字在右，圖片在左 */
.theme-2 .hero__content{
    float: right;
}
.theme-2 .banner-img {
  left:0;
  background-position: left center;
}

/* 樣式三：文字在中，圖片滿版 */
.hero.theme-3 {
    position: relative;
    aspect-ratio: 16 / 5;
}
@media(max-width:767px){
    .hero.theme-3 {
        aspect-ratio: 1 / 1;
    }
}
.theme-3 .hero__content{
    color:#ffffff;
    text-align: center;
    margin: auto;
    align-items: center;
    gap:8px;
}
.hero-decorate img{
    max-height:72px;
}
.theme-3 .banner-img {
  width:100%;
  background-size: cover;
}
@media(max-width:767px){
    .theme-3 .banner-img {
    background-position: center center;
    position: absolute;
    }
    .theme-3 .hero__content{
    flex-direction: column;
    }
}

.theme-3 .hero__content h1{
    font-size: 43px;
    margin-bottom:16px;
}
@media(max-width:1199px){
    .theme-3 .hero__content h1{
    font-size: 32px;
}
}
.theme-3 .hero__content .title-border{
    font-size: 24px;
    letter-spacing: 2px;
    font-weight: bold;
    border:1px solid #ffffff;
    border-radius: 100px;
    padding:8px 24px;
}
@media(max-width:767px){
    .theme-3 .hero__content .title-border{
        font-size:20px;
        display: block;
    }
}

.theme-3 .hero__content p{
    font-size:13px;
    letter-spacing: 2px;
}
@media(max-width:767px){
    .theme-3 .hero__content p{
        zoom:0.83;
        display: block;
    }
}

.theme-3 .hero__content .btn{
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 2px;
    width:fit-content;
    color:#ffffff;
    border-bottom:1px solid #ffffff;
    padding:0;
    padding-bottom:6px;
}
@media(max-width:1199px){
    .theme-3 .hero__content .btn{
        font-size:14px;
    }
}


.hero_h100 {
    position: relative;
    padding: 0;
    margin-top: 60px;
}
.hero .hero-slider img {
    width: 100%;
    height: auto;
}
@media (max-width: 991px) {
    #div_mobile_product_detail_img img {
        max-width: 100%;
        margin: 0 auto;
        aspect-ratio: 1 / 1;
        object-fit: contain;
    }
}

.kv-keyword ul{
    display: flex;
    flex-wrap: wrap;
    gap:20px;
    margin-top:12px;
}
@media(max-width:991px){
    .kv-keyword ul{
        height:40px;
        overflow: hidden;
        margin-top:0;
    }
}
@media(max-width:767px){
    .kv-keyword{
        display: none;
    }
}
.kv-keyword ul li a,
.kv-keyword ul li a:hover{
    font-size: 14px;
    font-weight: 600;
    color:#212529;
    border-bottom:1px solid #212529;
}
.hero__content .btn {
    font-size:16px;
    font-weight:600;
    line-height:16px;
    padding:15px 30px;
}
@media(max-width:991px){
    .hero__content .btn {
        margin-top: 0;
    }
}
@media(max-width:767px){
	.hero__content .btn {
	    font-size:15px;
	    font-weight:600;
	    line-height:15px;
	    padding:11px 19px;
	}
}

@media (max-width: 767px) {
    .theme-3 .hero__content .btn {
    margin-top: 30px;
    }
}
/*****************************
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 .btn {
    z-index: 9;
}
.banner__content--center {
    top: 50%;
    width: 100%;
    padding: 0 20%;
    transform: translateY(-50%);
}
/*****************************
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
*****************************/
.modal-content{
	border-radius:0;
	padding:40px;
	box-shadow:0 3px 4px 0 rgba(0, 0, 0, 0.30);
	border:0;	
}
@media(max-width:767px){
	.modal-content{
		padding:24px 16px;
	}
}


.modal__product-price {
    font-size: 26px!important;
    line-height:26px;
    color: var(--header_main_f_color, #000000);
    letter-spacing:2%;
}
.modal-header .close:hover{
	color:#ffffff;
}
button.close:hover{
	color:initial;
}
/*****************************
13 - Component - Shop Sorting
*****************************/
.select-sort {
    padding: 5px 100px 5px 15px;
    border-radius: 3px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.shop-grid #div_product_list_append{
	margin-left:-12px;
	margin-right:-12px;
}
.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);
}
/*****************************
14 - Component - Pagination
*****************************/
.page-pagination__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    overflow: hidden;
    align-items: center;
    width:100%;
    padding-top:40px;
    border-top:1px solid var(--gray_400, #CED4DA);
}
.page-pagination__link {
	font-size:16px !important;
    min-width: 40px;
    padding: 0 6px;
    color: var(--header_main_f_color) !important;
}
.page-pagination__link:hover, .page-pagination__link.active{
    border:1.5px solid var(--color_primary, #000000);
    border-bottom: 1.5px solid var(--color_primary, #000000) !important;
}
@media (max-width: 576px) {
    .page-pagination__list{
        flex-wrap: unset;
    }
}
/*****************************
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__tag li {
    display: inline-block;
}
.sidebar__tag li a {
    font-size: 14px;
    border: 1px solid #cccccc;
    color: var(--header_main_f_color, #000000);
    background: transparent;
    border-radius: 8px !important;
    padding:12px;
}
.sidebar__tag li a:hover {
    border: 1px solid var(--header_link_hover_color);
    color: #ffffff!important;
}
.accordion a {
    text-decoration: none !important;
    color: var(--header_main_f_color, #000000);
}
.accordion a:hover {
    color: var(--header_link_hover_color);
}

/*****************************
16 - Component - Gallery
*****************************/
.modal-product-image--large .slick-slide  {
    padding:0;
}
#gallery-zoom .slick-list{
	margin-left:-10px;
	margin-right:-10px;
}
.slick-slide {
    padding: 12px;
}
.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;
    font-weight: 700;
    margin-top: 12px;
}
@media (max-width: 767px) {
    .item .shop {
        font-size: 14px;
    }
}
@media (max-width: 575px) {
    .item .shop {
        font-size: 12px;
    }
}
.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 .swiper-slide {
    height: 100% !important;
}
.product-image--large .img-fluid {
    max-width: 100% !important;
}

/*Change the colour*/
.zoom-active img {
	border: 1px solid var(--gray_300);
}

/* .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: 8px;
}
.modal-product-image--thumb img{
    cursor: pointer;
    outline: 1px solid var(--gray_300) !important;
    margin-right: 10px;
}

.modal-product-image--thumb img:hover,
.product-image--thumb img:hover {
    outline: 1px solid var(--black_color) !important;
    border-color: var(--black_color);
    transition: none;
}
@media(max-width:767px){
	.product-image--thumb img {
	    cursor: pointer;
	    outline: 1px solid var(--gray_300) !important;
	    margin-right: 10px;
	}
	.modal-product-image--thumb img:hover,
	.product-image--thumb img:hover {
	    outline: 2px solid var(--black_color) !important;
	}
}

.modal-product-image--thumb img.slick-current,
.product-image--thumb a.slick-current > img {
    outline: 1px solid var(--black_color) !important;
    border-color: var(--black_color);
}

.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: 30px;
}
.product-var__text {
    display: block;
}

ul.product-social-link{
	display:inline-flex;
	align-items:center;
}
.product-social-link li {
    display: inline-block;
    margin-right: 10px;
}
.product-social-link li:last-child {
    margin-right: 0;
}

.product-social-link li:nth-child(1) a {
    background: #365493;
    border: 1px solid #365493;
    color: #ffffff;
}
.product-social-link li:nth-child(2) a {
    background: #4c4c4c;
    border: 1px solid #4c4c4c;
    color: #ffffff;
}
.product-social-link li:nth-child(3) a {
    background: #00c300;
    border: 1px solid #00c300;
    color: #ffffff;
}
.product-social-link li:nth-child(4) a {
    background: var(--header_sub_bg_color);
    border: 1px solid var(--header_sub_bg_color);
    color: #ffffff;
}
.product-social-link li:nth-child(1) a:hover {
    color: #ffffff;
    background: #7588b6;
    border: 1px solid #7588b6;
}
.product-social-link li:nth-child(2) a:hover {
    color: #ffffff;
    background: #00c300;
    border: 1px solid #00c300;
}
.product-social-link li:nth-child(3) a:hover {
    color: #ffffff;
    background: #00c300;
    border: 1px solid #00c300;
}
.product-social-link li:nth-child(4) a:hover {
    color: #ffffff;
    background: var(--header_sub_bg_color);
    border: 1px solid var(--header_sub_bg_color);
}
.product-social-link a {
    color: #777;
    width: 40px;
    height: 40px;
    border: 1px solid #dddddd;
    display: block;
    text-align: center;
    line-height: 37px;
    transition: all 0.3s ease;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.product-social-link a:hover {
    color: #fff;
    border: 1px solid transparent;
}
.product-social-link a i {
    font-size: 0.9rem;
}

/*****************************
17 - Component - Tabstyle
*****************************/
.tablist li {
    position: relative;
}
.tablist li a {
    border-bottom: 1px solid #dddddd;
}
.tablist--style-black .nav-link {
    color: #888;
    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::after {
    position: absolute;
    content: "";
    bottom: -1px;
    left: 50%;
    right: 50%;
    width: 0%;
    height: 2px;
    background: var(--header_sub_bg_color);
    transition: all 0.3s ease;
}
@media (min-width: 768px) {
    .tablist--style-black .nav-link::after {
        bottom: 0px;
    }
}
.tablist--style-black .nav-link.active,
.tablist--style-black .nav-link:hover {
    color: #000;
}
.tablist--style-black .nav-link.active::after,
.tablist--style-black .nav-link:hover::after {
    left: 0%;
    right: 0%;
    width: 100%;
}
.tablist--style-title li > .nav-link {
    font-size: 1.1rem;
    line-height: 22px;
    font-weight: 400;
    text-transform: uppercase;
    text-align: center;
    padding: 0 0 10px 0;
}
@media (max-width: 380px) {
    .tablist--style-title li > .nav-link {
        font-size: 1rem;
    }
}
.tablist--style-gap li:last-child > .nav-link {
    margin-right: 0;
}
.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;
}
#div_mobile_product_detail_ingredient{
	margin-top:40px;
}

/*****************************
18 - Component - Comment
*****************************/
.comment {
    padding: 0;
}
@media (min-width: 768px) {
    .comment {
        padding: 0px 20px 20px 20px;
    }
}
/*****************************
19 - Component - Form
*****************************/
#form-additional-info {
    min-height: 120px;
    resize: none;
}
.form-box__single-group {
    display: flex;
    flex-direction: column;
    margin-top: 24px;
    width: 100%;
}
.form-box__single-group label {
    font-size: 14px;
    line-height:14px;
    font-weight: 500;
    text-align: left;
    padding-bottom:8px;
    margin:0;
}
@media(max-width:767px){
	.form-box__single-group label {
	    font-size: 13px;
	    line-height:13px;
	}
}
.form-box__single-group input,
.form-box__single-group textarea,
.form-box__single-group select {
    border: 1px solid var(--header_main_f_color, #000000);
    height: 46px;
    padding: 12px 16px;
    width: 100%;
    border-radius: 0;
    outline: none;
    font-size: 16px;
    letter-spacing: 0.48px;
}

/* 一般輸入樣式 */
.form-control:focus{
	border: 2px solid var(--black_color)!important;
	box-shadow: none;
}
.form-box__single-group input:focus,
.form-box__single-group textarea:focus{
	border: 2px solid var(--color_info)!important;
	box-shadow: rgba(0, 117, 224, 0.9) 0px 0px 6px 0px!important;
}
/* //JW 2026/08/04 一般 focus 藍光有 !important，錯誤欄位需提高 selector 權重，避免點入後紅光變藍 */
.form-box__single-group.error input:focus,
.form-box__single-group.error textarea:focus,
.form-box__single-group .input--error:focus,
.form-box__single-group .input--error:active,
.input--error,
.input--error:focus,
.input--error:active {
	border: 2px solid var(--color_danger) !important;
	box-shadow: rgba(220, 53, 69, 0.9) 0px 0px 6px 0px !important;
}

.form-control {
    border: 1px solid rgba(129, 129, 129, 0.25);
    height: 40px;
    line-height: 18px;
    padding: 0.375rem 2.25rem 0.375rem 0.75rem;
    width: 100%;
    border-radius: 0;
    outline: none;
    font-size: 1rem;
}
.form-check{
	padding-left:0;
}

#modal-select{
	position: relative;
}
#modal-select select{
    -webkit-appearance: none;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    text-align: center;
    text-align-last: center;
    width: 100%;
    border: 1px solid var(--black_color);
    padding: 11px 8px 11px 12px;
    height:46px;
}
#modal-select::after {
    content: "\e900";
    font-family: 'icomoon' !important;
    position: absolute;
    right: 0;
    top: 40%;
    transform: translateY(-50%);
    pointer-events: none;
    font-size: 14px;
    color:#000000;
    text-shadow:0.3px 0 currentColor,-0.3px 0 currentColor;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}
@media(max-width:767px){
	select {
   	 padding: 9px 8px 11px 11px;
   	 height:40px;
	}
}
/* 調整原生的select樣式 */
.div_filter_item_sort {
    position: relative;
    display: inline-block;
}

.div_filter_item_sort select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 100%;
    padding-right: 40px;
    border:1.5px solid var(--gray_500);
    border-radius:0;
    padding:11px 8px 12px 11px;
    height:46px;
}
.div_filter_item_sort select:focus {
	border:2px solid var(--black_color);
}

.div_filter_item_sort::after {
    content: "\e900";
    font-family: 'icomoon' !important;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    font-size: 14px;
    color:#000000;
    text-shadow:0.3px 0 currentColor,-0.3px 0 currentColor;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}


label {
    font-size: 16px;
}
label > span {
    display: inline-block;
    font-weight: 400;
}

input::placeholder,
textarea::placeholder {
    color: #8E8E8E!important;
    opacity: 1;
}

/*Chrome 移除自動填入底色 */
input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px transparent inset !important;
    transition: background-color 9999s ease-in-out 0s;
}
input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none;
    appearance: none;
    display: none;
}
/* Chrome 自動填入專用 */
input:-webkit-autofill,
input:-webkit-autofill:focus,
input:-webkit-autofill:hover {
  -webkit-text-fill-color: #000 !important;
  transition: background-color 9999s ease-in-out 0s;
}

/* Chrome、Safari、Edge 不要看到上下箭頭 */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none!important;
    margin: 0!important;
}

/* Firefox 不要看到上下箭頭 */
input[type="number"] {
    -moz-appearance: textfield!important;
    appearance: textfield!important;
    outline: none!important;
}
input[type="checkbox"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: relative;
    background: #fff;
    border: 1.5px solid var(--gray_400) !important;
    border-radius: 0!important;
    vertical-align: middle;
    width: 24px;
    height: 24px;
    overflow: hidden;
    margin-left:0!important;
}

input[type="checkbox"]:checked {
	border:1px solid var(--header_main_f_color, #000000)!important;
	opacity:1;
}
input[type="checkbox"]:checked::after {
    content: "";
    font-family: "Font Awesome 5 Light";
    color: #fff;
    background: var(--header_main_f_color, #000000);
    border: 1.5px solid var(--header_main_f_color, #000000);
    border-radius: 0;
    margin-left: 0;
    padding: 2px 2px 2px 3px;
    line-height: 16px;
    position: absolute;
    width:100%;
    font-size:16px;
    height:24px;
}
@media(max-width:767px){
	input[type="checkbox"]:checked::after {
	    font-size:14px;
	}
}
.form-check-input{
	margin-top:0;
}
.form-check-input:checked + div {
    font-weight: 600;
}
.form-check-input:checked{
	background-color:var(--bg_white);
}
.form-check-input:focus { outline: none; box-shadow: none; }
.form-check-input:focus-visible { outline: 2px solid var(--color_primary); outline-offset: 2px; }

input[type="radio"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: relative;
    background: #fff;
    border: 1.5px solid var(--gray_400) !important;
    border-radius: 100%;
    vertical-align: middle;
    width: 24px!important;
    height: 24px!important;
    overflow: hidden;
    margin-left:0!important;
}
@media(max-width:767px){
	input[type="radio"] {
	    width: 20px!important;
	    height: 20px!important;
	}
}
input[type="radio"]:checked {
	border:1px solid var(--header_main_f_color, #000000)!important;
}
.form-box__single-group .line_h0{
	line-height:1;
}
.line_h0.v8-readonly-text{
	line-height:0;
}
input[type="radio"]:checked::after {
    content: "";
    font-family: "Font Awesome 5 Light";
    color: #fff;
    background: var(--header_main_f_color, #000000);
    border: 1px solid var(--header_main_f_color, #000000);
    border-radius: 100px;
    margin-left: 0;
    padding: 2px;
    line-height: 16px;
    position: absolute;
    width:100%;
    font-size:16px;
}
@media(max-width:767px){
	input[type="radio"]:checked::after {
	    padding: 2px;
	    line-height: 12px;
	    font-size:14px;
	}
}

.form-check-input:checked[type="radio"] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
}

.from-box__buttons {
    flex-direction: column;
    align-items: flex-start !important;
}
@media (min-width: 576px) {
    .from-box__buttons {
        flex-direction: row;
    }
}
.password__toggle {
    display: flex;
    align-items: center;
}
.password__toggle--btn {
    margin-left: -25px;
}

/*****************************
20 - Page - Shop
*****************************/
@media (max-width: 767px) {
    .shop-grid .product__box--default {
        margin-top: 0;
    }
}
.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;
    }
}

/*****************************
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;
    }
}

.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, #000000);
    display: flex;
    justify-content: space-between;
}

/*****************************
24 - Page - Checkout
*****************************/

.your-order-middle {
    color: #000;
    padding: 20px 0;
    margin: 20px 0;
}

.your-order-total {
	display:flex;
	align-items:center;
    padding: 16px 0 40px;
    gap:10px;
}

.your-order-bottom {
    padding: 10px 0 0;
}

.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 {
    font-weight: 400 !important;
}
@media (max-width: 767px) {
    .account-wrapper.ns {
        border: 1px solid transparent !important;
    }
}
@media (max-width: 767px) {
    .account-wrapper {
        padding-top: 24px;
    }
}
.login-form-container.account-wrapper {
	border:0;
	border-left:0;
	border-right:0;
	position:relative;
}
#div_choose_area{
	justify-content:center;
}
#div_choose_area   [class *='offset-']  {
    margin-left:0;
    display:flex;
    flex-direction:column;
}
#div_choose_area .account-wrapper h4 {
    display: block;
    text-align: center;
    position:relative;
    padding:0 10px;
    margin-bottom:20px;
}
#div_choose_area .account-wrapper h4::before{
	content:"";
	position:absolute;
	left:0;
	top:10px;
	height:1px;
	width:30%;
	background:#dddddd;
}
#div_choose_area .account-wrapper h4::after{
	content:"";
	position:absolute;
	right:0;
	top:10px;
	height:1px;
	width:30%;
	background:#dddddd;
}
#div_choose_area .account-wrapper h4.m-t-30::before{
	width:40%;
}
#div_choose_area .account-wrapper h4.m-t-30::after{
	width:40%;
}
.login-title-text{
	position:relative;
	z-index:1;
	background:var(--bg_white);
	padding:0 10px;
}
.account-wrapper h5 {
    font-size: 1rem !important;
}
.login_btn {
    margin: 20px auto 0;
    cursor: pointer;
    max-width: 268px;
}

.login_btn img {
    width: 268px;
}

.my-account-menu {
    margin-top: 1px;
    background: #f9f9f9;
}
.my-account-menu .account-menu-list li a {
    display: grid;
    grid-template-columns:22px 1fr;
    align-items: center;
    gap: 3px;
    width: 100%;
    height: 40px;
    line-height: 40px;
    padding: 0 10px;
    font-size: 15px;
    color: var(--header_main_f_color, #000000);
    border-bottom: 1px solid #e5e5e5;
    transition: all 0.3s linear;
    text-decoration: none;
    letter-spacing: 0;
}
@media (max-width: 991px) {
    .my-account-menu .account-menu-list li a {
        padding: 0 7px;
    }
}
.my-account-menu .account-menu-list li a:hover,
.my-account-menu .account-menu-list li a.active {
    background-color:var(--header_main_f_color, #000000);
    color: #fff;
    border-color:var(--header_main_f_color, #000000);
}
.my-account-menu .account-menu-list li a i,
.member-menu-feds-v15__icon i {
    font-size:24px;
}
.my-account-menu .account-menu-list li a i.icon-heart {
    text-shadow: 0.5px 0 currentColor, -0.5px 0 currentColor;
}
.my-account-menu .account-menu-list li a i.icon-arrow-right {
    font-size:16px;
}

.my-account-tab .account-title {
    font-size: 20px!important;
    font-weight: 700!important;
    color:var(--header_main_f_color, #000000);
}

.my-account-details .account-details .title {
    font-size: 20px!important;
    font-weight: 700!important;
    color:var(--header_main_f_color, #000000);
}

.account-table .table thead tr th {
    border: 1px solid #e5e5e5;
    font-size: 16px;
    font-weight: 500;
    color:var(--header_main_f_color, #000000);
    padding: 8px 15px;
}

.account-table .table tbody tr td {
    font-size: 14px;
    color:var(--header_main_f_color, #000000);
    font-weight: 400;
    vertical-align: middle;
    border: 1px solid #e5e5e5;
}

.account-table .table thead tr th.name {
    min-width: 140px;
}

.account-table .table thead tr th.date {
    min-width: 130px;
}

/*****************************
27 - Page - Login
*****************************/
.login-form-container {
    padding: 30px 20px;
    text-align: left;
}

/*****************************
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, #000000);
    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, #000000);
}
.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;
}

/*****************************
36 - Layout - Table
*****************************/
table {
    border: 1px solid #e0e0e0;
    width: 100%;
}
table thead > tr {
    background-color: #f9f9f9;
    border: 1px solid #e0e0e0;
}
table thead > tr > th {
    color: #1d1d1d;
    font-size: 14px;
    font-weight: 600;
    padding: 16px 45px 15px;
    text-align: center;
    text-transform: uppercase;
    vertical-align: middle;
    white-space: nowrap;
}
table tbody > tr {
    border-bottom: 1px solid #e0e0e0;
}
table tbody > tr td {
    color: var(--header_main_f_color, #000000);
    font-size: 14px;
    padding: 10px;
    text-align: center;
}
table tbody > tr td a {
    color: var(--header_main_f_color, #000000);
    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: var(--header_main_f_color, #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-display {
    display: table-cell !important;
}
.product-price-heart {
    width: 30px;
}
@media (max-width: 575px) {
    .vendor-cart-tb td {
        padding: 2px 6px;
    }
    .cart-table-content td {
        padding: 2px 6px;
    }
    .product-thumbnail.s1 {
        width: auto;
        max-height: 60px;
    }
    .product-thumbnail.s1 img {
        object-fit: contain;
    }
    .product-display {
        display: flex !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_main_f_color, #000000);
        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;
    }
}

.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, #000000);
    text-transform: capitalize;
    letter-spacing: 0.5px;
}

/*****************************
37 - Layout - Offacnvas
*****************************/
.offcanvas-close {
    color: var(--header_main_f_color, #000000);
}
.offcanvas-close i {
    font-size: 32px;
}
.offcanvas-overlay {
    position: fixed;
    z-index: 1000;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: none;
    background-color: rgba(0, 0, 0, 0.6);
    overflow: hidden;
}

/* OffCanvas */
.offcanvas {
    font-size: 16px;
    font-weight: 400;
    z-index: 999999;
    position: fixed;
    top: 0;
    right: 0;
    left: auto;
    display: block;
    overflow: auto;
    width: 360px;
    max-width: 100%;
    height: 100vh;
    padding: 40px 32px;
    transition: all 0.5s ease 0s;
    transform: translateX(100%);
    background-color: #F8F9FA ;
    box-shadow: none;
}
#offcanvas-add-cart__box.offcanvas{
    width: 100%;	
}
@media (max-width: 767px) {
    .offcanvas {
        padding: 40px 24px 120px;
    }
}
.black_bg {
    background: var(--bg_primary, #000000);
}
@media (min-width: 576px) {
    #offcanvas-mobile-menu.offcanvas,
    #offcanvas-add-cart__box.offcanvas {
        width: 400px;
    }
}
.offcanvas.offcanvas-open {
    transform: translateX(0);
}
.offcanvas-open {
    overflow: auto;
    height: 100%;
    position: fixed;
    z-index: 999;
}
#offcanvas-add-cart__box.offcanvas-open {
    z-index: 1002;
}
#div_filter_list_mobile.active + .offcanvas-overlay i {
    z-index: 1002;
    position: fixed;
    right: 22px;
    top: 46px;
    font-size: 28px;
    color: var(--white_color);
    padding:6px;
}
#div_filter_list_mobile.active + .offcanvas-overlay {
    z-index: 1001;
}
#offcanvas-add-cart__box.offcanvas-open + .offcanvas-overlay {
    z-index: 1001;
}
.offcanvas-cart .product__price-reg.addition-tag {
    position: absolute;
    right: 0px;
    left: 0px;
    border: 1px solid #000;
    width: fit-content;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 400;
    background-color: #fff;
    padding: 0 5px;
}
body.offcanvas-open {
    width: 100%;
}
.offcanvas__top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--header_main_f_color, #000000);
    text-transform: capitalize !important;
    margin-bottom: 8px;
}
.offcanvas__top-text {
	font-family: "futura-pt", "Noto Serif TC", sans-serif;
    font-size: 19px;
    font-weight: bold;
    margin-bottom: 0;
}
.offcanvas__top-text i {
    font-size: 20px;
    color: var(--header_main_f_color, #000000);
    text-align: center;
    display: inline-block;
    margin-right: 10px;
}
.offcanvas.offcanvas-mobile-menu {
    top: 88px;
    left: 0;
    padding: 0;
    transform: translateX(-100%);
    height: calc(100% - 88px);
    width: calc(100% - 64px);
    z-index: 1002;
}
.offcanvas.offcanvas-mobile-menu.offcanvas-open {
    transform: translateX(0);
}
.offcanvas__block {
    background: #ffffff;
    box-shadow: 0px -3px 6px rgba(0, 0, 0, 0.03);
    padding: 12px 12px 24px;
    border-radius: 20px 0 20px 0;
    margin-bottom: 20px;
}
.offcanvas__block .h2-title {
    position: relative;
    font-size: 20px;
    padding-bottom: 15px;
}
.offcanvas__block .h2-title::after {
    position: absolute;
    content: "";
    bottom: 5px;
    left: 0;
    height: 2px;
    width: 30px;
    background: var(--header_sub_bg_color) !important;
}
.offcanvas__block .h2-title .font_normal {
    color: var(--header_sub_bg_color) !important;
    font-size: 14px;
}
.offcanvas-open .offcanvas-toggle,
.offcanvas-close {
    display: none;
}
.offcanvas-open .offcanvas-close {
    display: flex;
    padding: 4px;
}
.row-m0 {
    margin: 0;
}
.block4 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}
.offcanvas-add-cart__detail .grid-1-10-1{
	align-items: unset;
}
/*****************************
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-right-info {
    font-size: 18px;
}
.offcanvas__block [class*="col-"] {
    margin-bottom: 0;
}
/*****************************
39 - Layout - Slider Customize
*****************************/
.slider-dot-fix .slick-dots li button {
    text-indent: -9999px;
    display: inline-block;
}
/* .dot-gap__X--10 .slick-dots li {
    margin-right: 10px;
}
.dot-gap__X--10 .slick-dots li:last-child {
    margin-right: 0;
} */
.slider-dot .slick-dots {
    /* display: flex; */
    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: 32px;
    height: 32px!important;
    font-size: 20px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}
.hero-slider__arrow--left {
    left: 20px;
}
.hero-slider__arrow--right {
    right: 20px;
}
.hero-slider__arrow i {
    font-size: 32px;
    color:var(--black_color);
    -webkit-text-stroke: 0.3px currentColor;
}
.hero .slick-dots {
    margin-top: -30px;
    padding-bottom: 10px;
}
.m-t-auto{
	margin-top:44px;
}
@media(max-width:991px){
	.m-t-auto{
		margin-top:66px;
	}
}
.default-slider__arrow {
    width: 50px;
    height: 50px;
    background: #fff;
    color: var(--header_main_f_color, #000000);
    font-size: 24px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0;
    border: 1px solid var(--header_main_f_color, #000000);
    transition: all 0.3s ease;
    z-index: 99;
    border-radius: 50%;
}
.default-slider__arrow:hover {
    color: var(--header_main_f_color, #000000) !important;
    opacity: 1 !important;
    border: 1px solid var(--header_main_f_color, #000000) !important;
}
.default-slider__arrow i {
    font-size: 24px;
}
@media (min-width: 992px) {
    .default-slider__arrow {
        display: block;
    }
}
.default-slider__arrow--left {
    left: 0;
    height:50px!important;
}
@media (min-width: 1566px) {
    .default-slider__arrow--left {
        left: calc(0% - 55px);
    }
}
.default-slider__arrow--right {
    right: 0;
    height:50px!important;
}
@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, #000000);
    background: #ffffff;
    border: 1px solid var(--header_main_f_color, #000000);
}
.default-slider--hover-bg-red .default-slider__arrow.slick-disabled {
    background: #fff;
    color: var(--header_main_f_color, #000000);
    border: 1px solid var(--header_main_f_color, #000000);
}
.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, #000000);
    border: 1px solid var(--header_main_f_color, #000000);
}
.default-slider--hover-bg-golden .default-slider__arrow.slick-disabled {
    background: #fff;
    color: var(--header_main_f_color, #000000);
    border: 1px solid var(--header_main_f_color, #000000);
}
.product-default-slider .slick-slide.slick-active {
    transform: scale(0.9913);
}

/* 組合商品卡片間距 */
#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, #000000);
    font-size: 16px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: none;
    opacity: 0;
    visibility: hidden;
    border: 1px solid var(--header_main_f_color, #000000);
    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;
}
/* 商品卡 */
.tag-area{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap:8px;
}
.sale-tag{
    font-size:12px;
    line-height:12px;
    background-color: var(--header_main_f_color, #000000);
    color:#ffffff;
    display: flex;
    border-radius:6px;
    padding:4px 6px;
    letter-spacing: 0.5px;
}
.sale-text{
    font-size:12px;
    line-height:12px;
    font-weight:bold;
    color:var(--header_main_f_color, #000000);
    box-shadow: inset 0 0 0 1px var(--gray_400);
    border-radius:6px;
    padding:4px 5px;
    letter-spacing: 0.5px;
}
.category-item{
    font-size:13px;
    color:var(--gray_400);
}

.icon-area {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position:relative;
    margin-top: 16px;
    padding: 0 5px;
}
.icon-area:has(.icon-btn-left:empty):has(.icon-btn-right:empty) {
    display: none;
    margin:0;
}

.icon-area:has(.icon-btn-left:empty) .icon-btn-right,
.icon-area:has(.icon-btn-right:empty) .icon-btn-left {
  margin: 0 auto;
}
.icon-btn-left .a_to_btn,
.icon-btn-right .a_to_btn {
    display: flex;
    gap: 4px;
    align-items: center;
}
.icon-btn-left,
.icon-btn-right{
	color:#999999;
	font-size:12px;
}
.icon-btn-left i,
.icon-btn-right i {
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content:center;
    border-radius:50%;
    border:1px solid var(--header_main_bg_color);
    color:var(--header_main_bg_color);
    width:24px;
    height:24px;
    font-size:13px;
}
.icon-btn-right i {
	border:1px solid var(--header_sub_bg_color);
    color:var(--header_sub_bg_color);
}
.icon-btn-left .icon-btn,
.icon-btn-right .icon-btn {
    display: flex;
    align-items: center;
    justify-content: center;
}
.div_prdlist .p-5 {
    padding: 0 !important;
}
.div_prdlist {
    margin-bottom: 48px;
}
@media (max-width: 767px) {
	.div_prdlist {
	    margin-bottom: 32px;
	}
}
.more_btn {
    color: #666666;
    font-size: 1.2rem;
    line-height: 0;
    cursor: pointer;
    position: absolute;
    right: 0;
    top: 30px;
}
.more_btn.pos-relative {
    color: #666666;
    font-size: 1.2rem;
    line-height: 0;
    cursor: pointer;
    position: relative;
    text-align: right;
    height: 30px;
    top: 10px;
}
@media (max-width: 767px) {
    .more_btn.pos-relative {
        height: auto;
        top: 30px;
        font-size: 14px;
    }
}
.more_btn a {
    color: #666666;
}
.more_btn a:hover {
    color: var(--header_sub_bg_color) !important;
}
@media (max-width: 767px) {
    .more_btn {
        position: relative;
        float: right;
        line-height: 1;
        margin-top: -10px;
        margin-bottom: 50px;
    }
}
@media (max-width: 480px) {
    .more_btn {
        margin-top: -17px;
        font-size: 1rem;
    }

    .section-content__title span {
        margin-left: 10px;
        font-size: 18px;
    }
}
.offcanvas_ns {
    color: var(--header_main_f_color, #000000);
    font-size: 1rem;
    border-bottom: 1px solid #cccccc;
}
.offcanvas_ns > input ::placeholder {
    color: #8E8E8E;
}
.search_btn {
    padding-top: 10px;
    text-align: center;
}
.btn_area {
    display: flex;
    gap: 16px;
    justify-content: center;
    margin-top: 32px!important;
}
.btn_area.border-top {
	padding-top:32px;
	margin-top:8px!important;
	border-top:1px solid #212529!important;
}
.btn_area .btn{
	font-size:16px;
	font-weight:400!important;
	max-width:223px;
	width:100%;
	padding:14px 20px;	
}
@media(max-width:767px){
	.btn_area .btn{
		max-width:100%;
	}
}

.btn_area .col-6 .btn{
    width:100%;
}

.unbind_btn_area {
    margin-bottom: 10px;
    text-align: center;
}
.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;
}
.btn > i {
    padding-right: 10px;
}

.nav {
    justify-content: center;
}

/*================= Header =================*/
.style02 {
    padding-bottom: 60px;
}
.style02 .header__logo {
    height: auto;
    width: 150px;
    line-height: 60px;
    margin: 0 auto;
    float: none;
}
.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: 130px !important;
    aspect-ratio: 1 / 1;
    object-fit: contain;
}
@media(max-width:575px){
	.add-cart__img {
	    width: 110px !important;
	}
}
.a_to_btn {
    font-weight: 400;
}
.a_to_btn,
.a_to_btn:hover {
    color: inherit;
    text-decoration: none;
}
/*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;
}
.branch-block{
	min-height:24px;
}
.brand_title {
    font-family: "futura-pt", "Noto Sans TC", sans-serif;
    color: var(--header_main_f_color, #000000);
    font-size: 18px;
    line-height:22px;
    text-align:left;
    margin-bottom:0;
    font-weight: 600;
    word-break: break-word;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}
@media(max-width:767px){
	.brand_title {
		line-height:21.6px;
	}
}
.brand_title a {
    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 var(--header_main_f_color, #000000);
}

.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;
}

@media (max-width: 480px) {
    .text-right.r_left {
        text-align: left !important;
    }
}
.height_auto {
    height: auto !important;
}
.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;
}
.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;
}
.w-50p {
    width: 50%;
}
.w200p {
    width: 200px;
}
.w250p {
    width: 250px;
}
.w-25 {
    width: 25% !important;
}
.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;
}
.my-account-area {
    padding-top: 32px;
}
@media (max-width: 767px) {
    .my-account-area {
        padding-top: 0;
        margin-bottom:0;
    }
}
.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;
}
a[id^="section"] {
    /* 173px (頂欄) + 額外的留白空間 */
    scroll-margin-top: 180px;
}
@media (max-width: 480px) {
    .table_checkbox_area {
        padding: 0 20px 10px 10px;
    }
}
.v_sub {
    vertical-align: sub;
}
.product-quantity-box {
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.product-quantity-box .btns-block{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
}
@media (min-width: 768px) {
    .product-links.p-l-10 {
        padding: 0;
    }
}
.align-items-center {
    display: flex;
    align-items: center;
}
.align-center {
    align-items: center;
}
.align-items-end {
    align-items: end;
}
.justify-end {
    justify-content: end;
}
.justify-between {
    justify-content: space-between;
}
.justify-center {
    justify-content: center;
}

/* * ==========================================

/* * ==========================================
* 滑動選單 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;
}
.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, #000000);
}
.find_nav_list ul li a:hover {
    color: var(--header_main_f_color, #000000);
}
.sideline {
    display: block;
    position: absolute;
    border: 0;
    height: 2px;
    background-color:var(--header_main_f_color, #000000);
    top: 43px;
    pointer-events: none;
}
.border_area {
    border: 1px solid #dddddd;
    padding: 20px;
    background: #f6f6f6;
}

/* Header 選單多層 */
.sub_title {
    color: var(--header_main_f_color, #000000);
    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;
}
.link_t01 a {
    font-weight: 400;
    font-size: 15px;
    line-height: 120% !important;
    letter-spacing: 3%;
    padding: 4px 0 6px;
    display:block;
    width:100%;
    height:100%;
}
.link_t01 a:hover {
    font-weight: 500;
}
.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;
    font-size: 1rem;
    color: #000;
    text-align: center;
    padding: 0 0px 16px;
    width: fit-content;
    margin: auto;
}
@media (max-width: 767px) {
    .page_title {
        padding: 40px 0 10px 0px;
    }
}
@media (max-width: 991px) {
    .main_title {
        margin-top: 1px;
    }
}
.product.main_title .item .shop{
	text-align:left;
}
/* * ==========================================
* 隱私權
* ========================================== */
.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: var(--header_main_f_color, #000000);
    line-height: 1.5;
    color: var(--header_main_f_color, #000000);
    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, #000000);
    line-height: 1.5;
    color: var(--header_main_f_color, #000000);
    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;
}
/* * ==========================================
* 購物車標籤
* ========================================== */
.success_active {
    position: relative;
    border: 1px solid #d6e9c6;
    background: #ffffff;
    margin-bottom: 10px;
}
.success_label {
    width: fit-content;
    background: #dff0d8;
    color: #3c763d;
    padding: 2px 6px;
}
.success_des {
    color: #3c763d;
    font-size: 0.9rem;
    padding: 4px 0 5px 0;
    width: 92%;
    margin: 0 auto;
}
.red_active {
    position: relative;
    border: 1px solid #ebccd1;
    margin-bottom: 10px;
    background: #ffffff;
}
.red_text {
    color: #a94442;
}
.red_label {
    width: fit-content;
    background: #f2dede;
    color: #a94442;
    padding: 2px 6px;
}
.red_des {
    color: #a94442;
    font-size: 0.9rem;
    padding: 4px 0 5px 0;
    width: 92%;
    margin: 0 auto;
}

.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;
}

.card-header {
    display: flow-root;
    min-height: 45px;
}
/* 訂單流程設計 */
.wizard-steps {
    list-style: none;
    display: table;
    width: 100%;
    padding: 0;
    margin: 0;
    position: relative;
}
.wizard-steps li {
    display: table-cell;
    text-align: center;
    width: 1%;
}
.wizard-steps li:first-child::before {
    max-width: 51%;
    left: 50%;
}
.wizard-steps li:last-child::before {
    max-width: 50%;
    width: 50%;
}
.wizard-steps li::before {
    display: block;
    content: "";
    width: 100%;
    height: 1px;
    font-size: 0;
    overflow: hidden;
    border-top: 4px solid #ced1d6;
    border-top-color: rgb(206, 209, 214);
    position: relative;
    top: 21px;
    z-index: 1;
}
.wizard-steps li.active::before,
.wizard-steps li.complete::before,
.wizard-steps li.active .step,
.wizard-steps li.complete .step {
    border-color: #e32929;
}
.wizard-steps li .step {
    border: 5px solid #ced1d6;
    border-top-color: rgb(206, 209, 214);
    border-right-color: rgb(206, 209, 214);
    border-bottom-color: rgb(206, 209, 214);
    border-left-color: rgb(206, 209, 214);
    color: #546474;
    font-size: 15px;
    border-radius: 100%;
    background-color: #fff;
    position: relative;
    z-index: 2;
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 30px;
    text-align: center;
}
.wizard-steps li.complete .title,
.wizard-steps li.active .title {
    color: var(--header_main_f_color, #000000);
    font-weight:500;
    line-height: 1em;
}
.wizard-steps li.current .title {
    color: #0075E0;
    font-weight: 700;
    line-height: 1em;
}
.wizard-steps li.current .time,
.wizard-steps li.current .trace-export {
    color: black;
    line-height: 1em;
}
.wizard-steps li .title,
.wizard-steps li .time,
.wizard-steps li .trace-export{
    display: block;
    margin-top: 4px;
    max-width: 100%;
    color: #6C757D;
    font-size: 14px;
    z-index: 104;
    text-align: center;
    table-layout: fixed;
    word-wrap: break-word;
    line-height: 1em;
}
@media(max-width:575px){
	.wizard-steps li .time{
		font-size:10px;
	}
}

.text-pre-wrap {
    white-space: pre-wrap;
}
.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 [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;
}
/*****************************
TAB Content
*****************************/
.para__content {
    line-height: 1.8;
    color: #666666;
    font-size: 1rem;
    border: 1px solid #eeeeee;
    border-radius: 10px;
}
#mobile_para_container{
    padding:10px;
}
.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: 0 !important;
    height: 46px !important;
    line-height: 18px;
    padding: 0.75rem !important;
    width: 100% !important;
    border-radius: 0 !important;
    outline: none !important;
    font-size: 1rem !important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b {
    display:none!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-dropdown {
    background-color: white;
    border: 1px solid rgba(129, 129, 129, 0.25) !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;
}

/*****************************
SWAL2 
*****************************/
.swal2-html-container{
	margin:0!important;
}
.swal2-html-container .section-content__title{
	text-align:left;
	margin:0 0 16px 0!important;
	font-family: "Noto Sans TC";
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	line-height: 24px;
	text-transform: uppercase;
	padding-bottom:16px;
	border-bottom:1px solid var(--color_primary, #000000);
}
.swal2-container.swal2-backdrop-show{
    background: rgba(0, 0, 0, .6) !important;
}
@media(max-width:767px){
	.swal2-container.swal2-center .swal2-popup {
	    padding: 24px 16px;
	}
	.swal2-container.swal2-backdrop-show{
	    background: rgba(0, 0, 0, .8) !important;
	}
}
.swal2-actions{
	display:flex;
	flex-wrap:nowrap!important;
	gap:16px;
}
.swal2-actions .btn{
	width:100%;
	margin:0!important;
}
.swal2-container.swal2-center .swal2-popup {
    padding: 40px;
}
.select2-container .select2-selection--single .select2-selection__rendered {
    padding-left: 0 !important;
    font-size: 16px;
    line-height: 24px !important;
}

/*****************************
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: var(--header_main_f_color, #000000);
    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: var(--header_main_bg_color);
    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;
    border-top: 1px dotted #ffffff;
    padding-bottom: 5px;
}
.ticket__date {
    font-size: 0.85rem;
    text-align: center;
    color: #666;
    display: grid;
    grid-template-columns: max-content max-content;
    align-items: center;
    border-top: 1px dotted #fff;
    padding: 10px 0px;
}
.ticket__button {
    font-size: 0.85rem;
    text-align: center;
    color: #666;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    border-top: 1px dotted #fff;
    padding: 10px 0px;
}
@media (max-width: 767px) {
    .ticket__name {
        height: 3.2rem;
    }
    .ticket__name_pink,
    .ticket__name {
        font-size: 1rem;
        height: 3.2rem;
    }
}
/*****************************
ERROR PAGE
*****************************/
.pink_bg {
    background: #f2d3cd !important;
}
.yellow_bg {
    background: #fff4dd;
}

.empty_img  img{
	max-width:260px;
	width:100%;
}
.error_img2 img{
	max-width:220px;
	width:100%;
}
.empty_img,
.error_content {
    display:flex;
    flex-direction:column;
    gap:8px;
    color:#333333;   
}
.empty_img img{
    margin:auto;
    margin-bottom:20px;  
}
.empty_img  h4,
.error_content h4{
    font-size: 22px;
    margin-bottom:0;
}
.empty_img h6,
.error_content h6{
    font-size: 18px;
    font-weight:400;
    margin-bottom:0;
}
@media (max-width: 767px) {
	.empty_img  h4{
	    font-size:16px; 
	    gap:4px;
	}
    .empty_img {
        width: 90%;
    }
    .empty_img  h4,
    .error_content h4{
    	font-size: 20px;
}
	.error_content h6,
	.error_content h6{
	    font-size: 16px;
	}
} 
/* 空白頁的撐起高度 */
.min-vh-70{
	min-height: 55vh;
}
/*****************************
POPUP
*****************************/
.overlay {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.7);
    /* 移除過渡效果，避免性能問題 */
    /* transition: opacity 500ms; */
    /* 預設狀態：完全隱藏且不佔用空間，不接收事件 */
    display: none;
    opacity: 0; /* 配合 display:flex 做漸變動畫 */
    z-index: 9999;
    overflow-y: auto;
    /* 確保隱藏時不干擾點擊 */
    pointer-events: none;
    /* 開啟硬體加速 */
    will-change: opacity, visibility;
    /* 新增：讓 popup 內容可以置中 */
    display: flex;
    align-items: center;
    justify-content: center;
    visibility: hidden; /* 保持 visibility 控制，配合 JS */
}
.overlay[style*="visibility: visible"],
.overlay[style*="opacity: 1"] {
    pointer-events: auto;
}
.overlay:target {
    visibility: visible;
    opacity: 1;
}
.popup {
    padding: 15px;
    background: #fff;
    max-width: 650px;
    width:100%;
    cursor: pointer;
    /* 開啟硬體加速 */
    will-change: transform;
    transform: scale(0.8);
}
.popup img {
    object-fit:contain;
}
@media (max-width: 575px) {
    .popup {
        width: max-content;
        transform: scale(0.9);
    }
}
.popup .content {
    max-height: 30%;
    overflow: auto;
}
.popup-text-area {
    display: flex;
    padding: 15px 0px 0px 0px;
}
.popup-text-area label{
    display: flex;
}
.popup-text-area input[type="checkbox"]:checked::after {
    width: 22px;
    height: 22px;
    line-height: 1;
}

/*****************************
右下角AD
*****************************/
#div_float_ad {
    position: fixed !important;
    position: absolute;
    right: 24px;
    bottom: 24px;
    cursor: pointer;
    max-width: 100%;
    height: auto;
    z-index: 1;
}
@media (max-width: 991px) {
    #div_float_ad {
        right: 16px;
        bottom: 16px;
    }
}
.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;
    color: #ffffff;
    text-align: center;
    background-color: rgba(0, 0, 0, 1);
    display: flex;
    justify-content: center;
    align-items: center;
}
#a_float_ad_close {
	padding:0;
	margin-left:unset;
	font-size:unset;
	opacity:1;
}
@media (max-width: 991px) {
    #close {
        right: -30px;
    }
}
.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;
    }
}
/*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 {
    /* 	padding: 15px !important; */
    display: block;
}
@media (max-width: 767px) {
    .m_brand_banner img {
        margin-top: 0;
    }
}
.m_brand_banner img {
    width: 100% !important;
    height: auto !important;
}

.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: var(--header_main_f_color, #000000);
}
#member_qrcode img {
    margin: 0 auto;
}
.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: var(--header_main_f_color, #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: 575px) {
    .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: var(--header_main_f_color, #000000);
}
.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;
}
@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: var(--header_main_f_color, #000000);
    line-height: 1.5;
    margin-bottom: 16px;
}
.tab_title::after {
    content: "";
    position: absolute;
    bottom: -20px;
    left: 0;
    height: 2px;
    width: 32px;
    background: var(--header_main_bg_color);
    margin-bottom: 12px;
}

/*****************************
區塊標準間距
*****************************/
.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;
}
.block_m_b {
    margin-bottom: 36px;
}
.block_p_t {
    padding-top: 30px;
}
.block_p_b {
    padding-bottom: 20px;
}
.block_p_tb {
    padding: 25px 0;
}
@media (max-width: 767px) {
    .block_p_t {
        padding-top: 16px;
    }
    .block_m_b {
        margin-bottom: 12px;
    }
    .block_p_b {
        padding-bottom: 16px;
    }
    .block_p_tb {
        padding: 25px 0;
    }
    .product_block {
        padding: 25px 20px 10px;
    }
    .hero--1.m-b-50 {
        margin-bottom: 15px;
        /* margin-top:15px; */
    }
}
/* /* * ==========================================
* 星星評分
* ========================================== */
.star {
    display: inline-block;
    font-size: 0;
    position: relative;
}
.star-item {
    display: inline-block;
    width: 24px;
    height: 23px;
    cursor: pointer;
    background: url("../../img/v15/star.webp") center top no-repeat;
    background-size:cover;
}
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;
}
/****************************頁面連結按鈕*****************************************/
.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;
}

/*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: var(--header_main_f_color, #000000);
}
.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;
}
.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_filter_item{
	border-top:1px solid var(--gray_400);
}
#div_filter_category_area:empty {
    display: none;
}

#div_filter_list {
	width:100%;
    margin-bottom: 10px;
}
.filter_list_left{
	flex: 0 0 auto;
    max-width: 296px;
	padding-right:28px!important;
	padding-left:8px!important;
}
.filter_list_right{
	flex: 1 1 auto;
    min-width: 0;
    margin-top:24px;
    padding-right:8px!important;
}
@media(max-width:767px){
	.filter_list_left{
		display:none;
	}
	.filter_list_right{
	    flex: 0 0 100%;
		max-width:100%;
		margin-top:8px;
	}
}

/* Banner區塊 */
#div_init_page_kv .slick-slide {
    padding: 0;
}
#div_init_page_kv_mobile .slick-slide {
    padding: 0;
}
#div_init_page_kv{
	position:relative;
}
#div_init_page_kv{
    padding:0;
}
#div_init_page_kv .slick-dots {
    position:absolute;
    bottom:0;
    padding-bottom:30px;
    left:50%;
    transform: translateX(-50%);
}
@media(max-width:767px){
	#div_init_page_kv .slick-dots {
		padding-bottom:20px;
	}
	[class *='col-'] :has(#div_init_page_kv) #div_init_page_kv {
	   width: calc(100% + var(--bs-gutter-x))!important;
       margin-left: calc(var(--bs-gutter-x) / -2);
       margin-right: calc(var(--bs-gutter-x) / -2);
	}
}

#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: var(--header_main_f_color, #000000);
    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%!important;
    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;
}

.nb {
    border: 1px solid transparent !important;
}
textarea.ns {
    border: 0;
    background: transparent;
    resize: none;
}
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;
}

.login_btn_line_bs {
    padding: 9px;
    font-size: 16px;
    text-align: center;
    color: #fff;
    border-radius: 4px;
    background: #35ad69;
}

.login_btn_area {
    padding: 11px 20px 10px;
    font-size: 16px;
    height:46px;
    text-align: center;
    color: #fff;
    background:var(--color_primary, #000000);
    margin-bottom:20px;
}
.login_btn_area:hover{
	background:var(--link_color_primary, #0075E0);
}
.login_btn_area:last-child {
	background:var(--header_main_f_color, #000000);
}
.login_btn_area:last-child:hover {
	background:var(--link_color_primary_hover, #0075E0);
}
.product-details-box {
    padding: 20px 16px!important;
}
@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: 20px;
}
.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: "futura-pt", "Noto Serif TC";
    font-size: 14px;
    line-height:16.8px;
    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: 20px;
}
.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 {
    border: 1px solid var(--header_main_f_color, #000000);
    padding: 6px 16px;
    display: inline-block;
}
.btn--review--small small {
    font-size: 14px !important;
}
.review_table {
    padding: 10px;
}
.slick-dots-container {
    max-width: 800px;
    overflow: hidden;
    position: relative;
    padding: 0;
    display: flex;
    transition: all 0.25s;
    margin: auto;
    list-style: none;
    align-items: center;
    justify-content: center;
    bottom: unset;
}
.slick-dots-container li {
    width: 10px;
    height: 10px;
    margin: 0 8px;
    border:1.5px solid var(--gray_400);
    border-radius: 50%;
}
@media(max-width:767px){
	.slick-dots-container li {
    width: 6px;
    height: 6px;
    margin: 0 4.5px;
	}
}

.slick-dots-container li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 0.625rem;
    height: 0.625rem;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: 0;
    background: 0 0;
}

.slick-dots-container li.slick-active {
    transform-origin: center;
    background: var(--header_sub_bg_color);
    border-color:var(--header_sub_bg_color);
}
.slick-dots li button:before {
    display: none;
}
.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;
    }
}
a.disabled {
    pointer-events: none;
    cursor: default;
}
.display_none {
    display: none;
}
.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 {
    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;
}
.img_customerQA {
    max-height: 300px !important;
    max-width: 300px !important;
    height: auto !important;
    width: auto !important;
}
.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;
}
.shopping-fa-color {
    color: #524845 !important;
}
.max_width_35 {
    max-width: 35px;
}
.step_time {
    font-size: 12px !important;
    line-height: 16px !important;
    padding-top: 2px !important;
    display: block;
}
.shoppingCenteredRespondent {
    background: var(--header_main_f_color, #000000);
    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-"] {
    padding: 0 8px;
}
.mdcl_hit .row .col-12,
.hit_brand_product .row .col-12 {
    padding: 0;
}

.hit_brand_product .square-block {
    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;
}
.expand-menu {
    background-color: #fff; /*var(--header_sub_bg_color);*/
    color: var(--header_main_bg_color); /*var(--header_main_bg_color);*/
    padding: 0 !important;
    position: absolute;
    left: 0px;
    top: 77px;
    padding: 5px 0px;
}
.div_searh label {
    width: 100%;
}
.div_searh {
    background-color: #F3F4F6;
    cursor: pointer;
    padding: 0;
}

.serch_li {
    display: flex;
    justify-content: center;
    margin-bottom: 12px;
}
.div_searh_width {
    height: 46px;
    display: flex;
    align-items: center;
    width: 500px;
    max-width:100%;
    border-radius:0;
}
@media(max-width:767px){
	.div_searh_width {
	    height:40px;
	    width:100%;
	}
}
.div_searh_style {
    display: flex;
    align-items: center;
    width: 180px;
    color: rgba(0, 0, 0, 0.3);
}
.float-right.div_searh_style {
	order:1;
}
.float-left.div_searh_style {
	order:2;
}
@media (min-width: 200px) {
    .div_searh_style {
        width: auto;
        font-size: 12px;
        transform: scale(1.1);
        white-space: nowrap;
    }
}
.div_searh_style i {
	display:flex;
    color: var(--header_main_f_color, #000000);
    padding:9px;
    font-size:21px;
}
@media (max-width: 991px) {
    .div_searh_style {
        display: flex;
        margin-top: -1px;
    }
}
@media (max-width: 767px) {
    .div_searh_style i {
        font-size: 20px;
        padding:0 12px;
        transform: none;
    }
}
.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;
}
a.product__link > h3 {
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    margin:0;
}
@media (max-width: 767px) {
#span_product_total_cnt{
	display:flex!important;
	gap:0!important;
}
}
#span_product_total_cnt > h1 {
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
}
.the-canvas {
    border: 1px solid black;
    direction: ltr;
}
.li_FollowUs {
    display: inline-flex;
    margin-right: 0;
    margin-top: 0;
}

.QA_max_w iframe {
    width: 100%;
}
.color_circle {
	position:relative;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    margin-right: 26px;
    margin-bottom: 8px;
}
.color_circle:before{
	content: "";
    position: absolute;
    top: -6px;
    left: -6px;
    right: -6px;
    bottom: -6px;
    border: 1px solid #878787;
    -webkit-border-radius: 50%;
    border-radius: 50%;
}
.color_circle.active::before {
    border:2px solid var(--header_main_f_color, #000000);
}
.no-scroll {
    overflow: hidden;
}
.page_article_tag {
    padding: 4px 15px;
}
.page_article_tag h7{
    font-size:14px;
    color:#666666;
}
.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 var(--header_main_f_color, #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: var(--header_main_f_color, #000000);
}
.red_li ul {
    font-family: Serif;
    list-style-image: var(--page_img_ul_li);
    color: var(--header_main_f_color, #000000);
    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: #8E8E8E !important;
}
.ft_color_main {
    color: var(--header_sub_bg_color) !important;
}

.c_subscribe {
    color: var(--header_main_f_color, #000000);
    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: #8E8E8E;
    text-align: center;
}
.color_black {
    color: #000;
}
.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: 575px) {
    .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;
}
#div_category_area{
	display: inline-flex;
    flex-wrap: wrap;
    align-items:center;
    gap: 10px 6px;
}
.classify_drop_li {
    border: none !important;
    padding: 0px !important;
}
.first_classify_title {
    font-size: 0.95rem !important;
    color: var(--header_main_f_color, #000000);
    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;
}
.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: var(--header_main_f_color, #000000);
    font-size: 15px;
    font-weight: bold;
    line-height: 1.3;
}
@media (max-width: 575px) {
    .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: 575px) {
    .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;
}
.align-content-center {
    align-content: 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: var(--header_main_f_color, #000000);
    margin-top: 10px;
    line-height: 1.3;
}
.search__toggle {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    min-width:284px;
    max-width:500px;
    margin:auto;
    background-color: #F3F4F6!important;
}
@media(max-width:767px){
    .search__toggle {
        width: 100%;
        max-width:100%;
    }
}

.header__mobile .search__toggle--btn {
    left: unset;
}
.search__toggle--btn {
    position: absolute;
    left: 10px;
    font-size: 24px;
}
.search__toggle input {
    font-size: 15px;
    padding: 11px 5px 11px 48px;
    width: 100%;
    outline: none;
    border:0;
    letter-spacing: 0.75px;
    background-color: #F3F4F6!important;
}
.search__toggle input:focus {
	outline:2px solid var(--color_primary, #000000);
}
@media(max-width:767px){
	.search__toggle input {
    padding: 8px 5px 8px 36px;
	}
}
.disabled-link {
    pointer-events: none; /* 阻止點擊事件 */
    color: gray;          /* 視覺上變灰 */
    cursor: default;      /* 鼠標樣式變為預設 */
    text-decoration: none; /* 去除下劃線 */
}
.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;
}

.material-scrolltop {
    color: var(--header_main_f_color, #000000)!important;
}
.material-scrolltop::before {
	font-family: icomoon;
	content: "\e915";
    color: var(--header_main_f_color, #000000)!important;
}
.material-scrolltop.reveal {
	font-size:20px;
	height:32px!important;
	width:32px;
    border-radius: 50px !important;
    color: var(--header_main_f_color, #000000)!important;
    background:var(--white_color);
    border:1px solid var(--header_main_f_color, #000000);
}
.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-left: 5px;
    white-space:nowrap;
}
.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: contain;
}
@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;
}
.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;
    }
}
@media (max-width: 1024px) {
    .modal__product-price {
        font-size: 28px !important;
    }
}
@media (max-width: 767px) {
    .modal__product-price {
        font-size: 17px !important;
    }
}

.product-title{
	font-family: "futura-pt", "Noto Sans TC", sans-serif;
    font-size: 14px !important;
    line-height: 17px!important;
    color:var(--gray_800);
    height:35px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    letter-spacing:0.28px;
    margin-bottom:6px;
}
@media(max-width:767px){
    .product-title{
        font-size:13px!important;
    }
}

.hit_brand_title {
    height: 22px;
    font-size: 18px !important;
    line-height: 1.5 !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
}

.bottom-mix {
    overflow: hidden;
}
.display_ruby {
    display: ruby;
}
.display_ruby img {
    display: inline-block;
}
.main-p-top {
    padding-top: 60px;
}
@media (max-width: 991px) {
    .main-p-top {
        padding-top: 0;
    }
}
.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-datepicker .ui-datepicker-next span {
    top: 60%;
}

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

@media (max-width: 1299px) {
    .cbp-hrmenu .cbp-hrsub-inner > .cbp_div {
        width: 20% !important;
    }
    .h-auto {
        height: auto;
    }
}
.h-38p {
    height: 38px !important;
}
.invisible {
    visibility: hidden;
}
.col-form-label-md {
    font-size: 16px;
}
#span_product_detail_add_cart button,
#a_product_detail_add2cart button {
    height: auto;
}
#span_product_detail_add_cart button,
#a_product_detail_add2cart button {
    height: auto;
    padding:19px 20px;
}
@media(max-width:767px){
	#span_product_detail_add_cart button,
	#a_product_detail_add2cart button {
	    padding:14px 20px;
	}
}
#product_shipping_method {
    width: fit-content;
}
/* ***************************************** 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;
    }
}

/* ***************************************** 客製化id區塊調整 *****************************************  */
#div_product_detail_rmd .product__box.p-5{
	margin:10px!important;
	padding:0!important;
}
@media(max-width:767px){
	#div_product_detail_rmd .product__box.p-5{
		margin:8px!important;
	}
}
.recmd_block.recmd_title_nextline .product__box{
	overflow:hidden;
	margin-bottom:0;
}
.product__box a:hover{
	color:inherit;
}
#div_promote_brand_area{
	margin-bottom:12px;
	background:var(--header_main_f_color, #000000);
	color:#ffffff;
	font-weight:500;
}
#div_product_detail_relate .slick-list,
#div_product_detail_rmd .slick-list{
	margin-left:-10px;
	margin-right:-10px;
}
/* ***************************************** 標題造型 *****************************************  */
.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;
    }
}
.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;
    }
}
.combination-block {
    background: #f9eff0;
    padding: 20px 12px 0;
}
.tab_title.m-t-20 {
    margin-top: 40px !important;
}
.combination-block .product__box--default {
    background: #ffffff;
    border-radius: 10px;
    margin-top: -8px !important;
}
.circle-no {
    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;
    justify-content: space-between;
}
/* 橫向 */
.gap0 {
    display: flex;
    gap: 0px;
    align-items: center;
}
.gap4 {
    display: flex;
    gap: 4px;
    align-items: center;
}
.gap8 {
    display: flex;
    align-items: center;
    gap: 8px;
}
.gap12 {
    display: flex;
    align-items: center;
    gap: 12px;
}
.gap24 {
    display: flex;
    align-items: center;
    gap: 24px;
}

/* 直向 */
.column-gap0 {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.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: 1px solid #dddddd;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}
.h-30-m-5 {
    height: 30px;
    margin: 5px;
}
.addEvent-add-to-cart-block {
    height: 36px;
    font-size: 14px;
    font-weight: 500;
    background-color: var(--link_color_primary);
    color: #fff;
    width: 60px;
    float: right;
    text-align: center;
    margin-right: 10px;
}
.addEvent-add-to-cart-block:hover {
	background-color: var(--link_color_primary_hover);
}
.addEvent-info{
	line-height:26px;
}
.addEvent-title{
    margin-left: 24px;
    border-radius: 8px 8px 0 0;
    background-color: var(--link_color_primary);
    color: #fff;
    width: fit-content;
    padding: 0 12px;
    font-size: 16px;
    font-weight: 600;
    line-height: 28px;
    height: 28px;
}
.upsell-container {
    padding: 24px;
    background: #ffffff;
    border-radius: 12px;
    border: solid 1.5px rgba(1, 1, 1, 1);
}
.product_zone {
    row-gap: 20px;
}
@media(max-width:575px){
.upsell-container {
	padding: 24px 0;
}
.upsell-container .quantity-input{
	width:70px;
}
}
.upsell-container .product__box{
	border:0;
    display: grid;
    grid-template-columns: 1fr 3fr;
    gap: 16px;
}
.upsell-container .product__box .product__img-area {
    height: 100px !important;
}
.upsell-container .product__box .product__content {
    margin-top: 0px;
}
.upsell-container .product__box .product__content .brand_title {
    font-size: 16px;
    line-height: 16px;
    font-weight: 450;
}
.upsell-container .product__box .product__content .quantity-input {
    width: 36px;
}

.quantity-input {
    width: 81px;
    border: 1px solid #dddddd;
    border-right: 0;
    border-left: 0;
    float: left;
    text-align: center;
    height: 100%;
    -moz-appearance: textfield !important;
}
.flex-input {
    display: flex;
    margin-bottom: 10px;
}
.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;
    margin-bottom:12px;
}
@media(max-width:575px){
.primary-tab .tab-menu-swiper .swiper-slide{
	margin-bottom:8px;
}
}
.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;
}
#span_product_detail_add_cart .btn{
	height:100%;
	font-weight:500!important;
	line-height:16px;
}
#span_product_detail_add_cart .btn.btn--red{
	margin:0;
	background:var( --btn_primary_bg, #000000)!important;
    color: var(--btn_primary_text, #ffffff) !important;
}
#span_product_detail_add_cart .btn.btn--red:hover{
	background:var(--btn_primary_bg_hover, #000000)!important;
    color: var( --btn_primary_text_hover, #ffffff) !important;
}

/* 我的帳戶 通知設定*/
.light-bluebg-btn{
	display:flex;
	align-items:center;
	background:#e5eef6;
	border-radius:30px;
	padding:0 8px;
	font-size:12px;
	width:fit-content;
	color:#004ea2;
	cursor:pointer;
}
.m-b-0{
	margin-bottom:0!important;
}
.light-bluebg-btn i{
	padding-right:4px;
	font-size:12px;
}
/* 強勢品牌 箭頭位置 */
#div_brand_area .hero-slider__arrow--left{
	left:-10px;
}
#div_brand_area .hero-slider__arrow--right{
	right:-10px;
}

/*JW 要解決倍 modal-over-backdrop z-index 被蓋過*/
.modal-over-backdrop{
    z-index: 2222 !important;
}
/* Tag樣式 */
.tag_area {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.tag_full{
    width:100%;
    height:auto;
}
.tag_full img{
    width:100%;
    top: 0px;
    left: 0px;
}
.coop_advantage_laptop-block{
    width:100%;
    overflow: hidden;
}
.coop_advantage_laptop-block .p-lr-20{
	padding:0!important;
}	
	
/*發燒嚴選 mobile價錢要斷行*/
@media(max-width:575px){
[id *='div_hit_product_'] .product__price.nowrap{
	display: flex;
    justify-content: center;
    flex-direction: column;
}
}
/*購物車 右邊線條*/
.cart .vendor-cart-tb tr.cart-item td.product-remove:last-child {
    border-right-width: 0;
}
/* 其他 */
/*
2026.01.03 會造成頁面管理，輪播商品異常
.product__box--default.p-5{
	padding:0!important;
}
*/
.v11-mt50{
	margin-top:50px;
}
@media(max-width:767px){
.v11-mt50{
	margin-top:20px;
}
}
/* ***************************************** 推薦商品 ***************************************** */
.recmd_block.recmd_title_nextline{
    padding: 56px 0px 80px;
}
@media(max-width:767px){
	.recmd_block.recmd_title_nextline{
	    padding: 24px 0px 32px;
	}
}
#div_pd_rmd {
    padding: 0 0px 80px;
}
@media(max-width:767px){
	#div_pd_rmd  {
	    padding: 0 0px 32px;
	}
}
.product__box{
	margin-bottom:0;
}
.recmd-bg-black .hero-slider__arrow i{
	color:#ffffff;
}


/* 商品區塊左右箭頭 */
.recmd_block.recmd_title_nextline .hero-slider__arrow--left{
	left:-33px;
	top:33%;
}
.recmd_block.recmd_title_nextline .hero-slider__arrow--right{
	right:-30px;
	top:33%;
}
#div_product_detail_rmd_append .hero-slider__arrow--left,
#div_product_cart_add_event .hero-slider__arrow--left{
	left:-40px;
	top:34%;
}
#div_product_detail_rmd_append .hero-slider__arrow--right,
#div_product_cart_add_event .hero-slider__arrow--right {
	right:-40px;
	top:34%;
}
@media(max-width:1570px){
	.recmd_block.recmd_title_nextline .hero-slider__arrow--left,
    #div_product_cart_add_event .hero-slider__arrow--left {
		top:32%;
		left:-24px;
	}
	.recmd_block.recmd_title_nextline .hero-slider__arrow--right,
    #div_product_cart_add_event .hero-slider__arrow--right {
		top:32%;
		right:-24px;
	}
	#div_product_detail_rmd_append .hero-slider__arrow--left,
    #div_product_cart_add_event .hero-slider__arrow--left {
		left:-28px;
	}
	#div_product_detail_rmd_append .hero-slider__arrow--right,
    #div_product_cart_add_event .hero-slider__arrow--right {
		right:-28px;
	}
}
@media(max-width:991px){
	.recmd_block.recmd_title_nextline .hero-slider__arrow--left,
	#div_product_detail_rmd_append .hero-slider__arrow--left,
    #div_product_cart_add_event .hero-slider__arrow--left {
		left:-16px;
	}
	.recmd_block.recmd_title_nextline .hero-slider__arrow--right,
	#div_product_detail_rmd_append .hero-slider__arrow--right,
    #div_product_cart_add_event .hero-slider__arrow--right {
		right:-16px;
	}
	#div_product_detail_rmd_append .hero-slider__arrow--left,
    #div_product_cart_add_event .hero-slider__arrow--left {
		top:32%;
	}
	#div_product_detail_rmd_append .hero-slider__arrow--right,
    #div_product_cart_add_event .hero-slider__arrow--right {
		top:32%;
	}
}
@media(max-width:767px){
	.recmd_block.recmd_title_nextline .hero-slider__arrow--left{
		left:-16px;
		top:31%;
	}
	.recmd_block.recmd_title_nextline .hero-slider__arrow--right{
		right:-16px;
		top:31%;
	}
	#div_product_detail_rmd_append .hero-slider__arrow--left{
		top:32%;
	}
	#div_product_detail_rmd_append .hero-slider__arrow--right {
		top:32%;
	}
}

.recmd_block .p-5.recmd_full_img {
    padding: 0 !important;
}
.div_clio_product_row_4{
    display: grid;
    gap: 0 24px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}
@media(max-width:991px){
    .div_clio_product_row_4{
        grid-template-columns: repeat(3, minmax(0, 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;
}
.dp_row_3{
    display: flex;
	flex-direction:column;
	gap:14px;
}
.icon_preorder{
    width:35px;
}
.grid-a1fr {
    display: grid;
    grid-template-columns: auto 1fr;
    text-align: left;
    position: relative;
    gap: 0;
    margin: 0;
    margin-top: 5px;
}
#stampImg {
    width: 100px;
    height: 100px;
    object-fit: cover;
}

/* 加價購 */
.pdp-sale-block .slick-slide{
	padding:0;
}


/* header的管別下拉選單 */
.div-popup {
    display: none; /* 初始由 JS 控制 */
    position: fixed !important;
    z-index: 10000 !important;
    background: white !important;
    border: 1.5px solid var(--gray_400) !important;
    box-shadow: 0px 3px 4px 0 rgba(0, 0, 0, 0.3);
    padding: 16px 40px;
    margin: 0 !important;

    /* 動畫初始狀態 */
    opacity: 0;
    transform: translateY(-10px); /* 往上縮一點，做出往下掉落的效果 */
    transition: opacity 0.3s ease, transform 0.3s ease;

    /* 防止透明時誤點擊 */
    pointer-events: none;
}
/* 當啟動顯示時（例如加上 .active 類別） */
.div-popup.show {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}
ul.div-popup-menu {
    display: block !important;
    color: #000000;
}
ul.div-popup-menu a {
	font-size:15px;
    font-weight: 400;
    color: #000000;
}
ul.div-popup-menu a:hover {
    font-weight: 600;
}

.popup-btn {
    display: flex;
    align-items: center;
}
.popup-btn .popup-btn-arw {
    display: inline-block; /* 必須是 block 或 inline-block 才能旋轉 */
    transition: transform 0.3s ease; /* 與選單消失的時間一致，看起來才順手 */
    transform: rotate(0deg);
    font-size:13px;
    font-weight:bold;
    margin-top:-2px;
    text-shadow: 0.5px 0 currentColor, -0.5px 0 currentColor;
}
.popup-btn.is-active .popup-btn-arw {
    transform: rotate(180deg);
}
#business-info-popup ul{
    width: auto;
}
#store-select-block .store-btn2www{
    position: relative;
    color: #343A40;
    padding: 7px 16px;
    width: 100%;
    max-width: 214px;
    font-size: 16px;
    font-weight: 400;
    white-space:nowrap;
    z-index: 1;
    transition: color .5s ease;
    border: 1px solid black;
}

#store-select-block .store-btn2www::before{
    content:"";
    position:absolute;
    inset:0;
    background:black;
    transform:scaleX(0);
    transform-origin:left;
    transition:transform .5s ease;
    z-index:-1;
}

#store-select-block .store-btn2www:hover{
    color:white;
}

#store-select-block .store-btn2www:hover::before{
    transform:scaleX(1);
}



#store-select-block {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}
@media(max-width:991px){
	#store-select-block {
		grid-template-columns: repeat(2, 1fr);
	}
	#store-select-block .store-btn2www {
		max-width: 100%;
	}
}

@media(max-width:767px){
    #store-select-block {
        height: 240px;
        overflow-y: auto;
        overflow-x: hidden;
        grid-template-columns: 1fr;
    }
}
#store-select-modal .modal-dialog {
    position: fixed; /* 固定在瀏覽器視窗 */
    top: 50%;        /* 距離頂部 50% */
    left: 50%;       /* 距離左側 50% */

    /* 關鍵：將元素往回推自己寬高的一半，達到真正的中心對齊 */
    transform: translate(-50%, -50%) !important;

    margin: 0 !important; /* 移除原本可能干擾的 margin */
    max-width:732px!important;
    min-width:300px;
}
#store-select-modal  .modal-body {
    position: relative;
    flex: 1 1 auto;
    padding: 1rem 0 0;
}
.popup .close-btn,
.modal .close-btn {
    position: absolute;
    top: -52px;
    right: -0;
    z-index: 1060;
    cursor: pointer;
    font-size: 20px;
    height: 40px;
    width: 40px;
    color: #fff;
    transition: all 0.2s ease;
    background: rgba(0,0,0,0.2);
    border-radius: 50%;
}
.popup .close-btn,
#store-select-modal.modal .close-btn {
    background: #00000033;
}
.popup .icon-close,
#store-select-modal.modal .icon-close {
    font-size: 20px;
    position: absolute;
    top: 10px;
    left: 10px;
}
.modal .modal-header {
    border-bottom: 1px solid var(--header_main_f_color, #000000);
}

#store-select-modal .modal-header {
    font-weight: 700;
    font-size: 20px;
    background: #fff;
    color: var(--header_main_f_color, #000000);
}
#modal-select {
    padding-bottom: 12px;
}
#modal-select label{
    width:100%;
}
#modal-type-select {
    border-radius: 0;
    background-color: white;
    padding: 9px 64px;
    width:100%;
    text-align: center;
}
@media(max-width:767px){
	.modal-body.article-list{
		max-height:300px;
		overflow-y:auto;
	}
}
.ion-ios-arrow-down {
    display: none;
}

/* ==== 頁首跑馬燈（header下方的跑馬燈） START ==== */
div.hero.marquee-list {
    aspect-ratio: auto !important;      /* 跑馬燈不需要固定比例 */
    height: 40px !important;            /* 強制高度 */
    max-height: 40px !important;
    min-height: 40px !important;
    align-items: center !important;     /* 垂直置中基準線 */
    padding: 0 !important;
    overflow: hidden !important;
}
@media(max-width:575px){
	div.hero.marquee-list {
		height: 32px !important;            /* 強制高度 */
	    max-height: 32px !important;
	    min-height: 32px !important;
	}
}
div.hero.marquee-list a {
    height: 100%;
    width: 100%;
    text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
	padding:1px 16px 0;
	line-height:40px;
	font-weight:600;
	letter-spacing: 0.42px;
}
@media(max-width:767px){
	div.hero.marquee-list a {
		line-height:15.6px;
		font-weight:500;
	}
}
@media(max-width:575px){
	div.hero.marquee-list a {
		line-height:16px;
	}
}
#div_page_marquee {
    top: 179px;
}
#div_page_marquee .hero-slider__arrow i{
	font-size:16px;
	color: var(--white_color);
	text-shadow:0.5px 0 currentColor,-0.5px 0 currentColor;
}
#div_page_marquee .hero-slider__arrow{
	right:20px;
}
#div_page_marquee button {
    top:21px;
}
@media (max-width: 991px) {
	#div_page_marquee {
	    top: 140px;
	}
	#div_page_marquee button {
	    top:23px;
	}
}

#div_page_marquee .slick-dots-container {
    display: none !important;
}
#div_page_marquee .slick-slide {
    padding: 0;
    text-align: center;
    display: flex;
}

/* 針對 Slick 自動產生的層級進行強制校正 */
.marquee-list .slick-list,
.marquee-list .slick-track {
    height: 100% !important;
    align-items: center !important;     /* 確保軌道內內容垂直置中 */
}
.marquee-list {
    height:40px !important;
    width: 100%;
    background-color: var(--header_main_f_color, #000000);
}

@media (max-width: 767px) {
    #div_page_marquee .hero-slider__arrow {
        display: none !important;
    }
}
/* ==== 跑馬燈 END ==== */
/* ==== login page START ==== */
.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;
}
/* ==== login page END ==== */

/* ==== Skeleton START ==== */
/* 閃爍動畫 Pulse */
@keyframes pulse {
    0% { opacity: 1; }
    50% { opacity: 0.4; }
    100% { opacity: 1; }
}
@keyframes shimmer-loading {
    0% { background-position: -200% 0; }
    100% { background-position: 200% 0; }
}

.sk-pulse {
    display: inline-block;
    background-color: #E5E7EB; /* 淺灰色 */
    border-radius: 4px;
    vertical-align: middle;
    animation: pulse 1.5s ease-in-out infinite;
}

/* 配送方式骨架：寬 120px 高 10px */
.sk-express {
    width: 120px;
    height: 10px;
}

/* 物流編號骨架：寬 180px 高 10px */
.sk-billno {
    width: 180px;
    height: 10px;
    margin-left: 10px; /* 稍微間隔 */
}

/* 用於包覆 Skeleton 的容器，載入後會被隱藏 */
.sk-wrapper {
    display: inline-block;
}
/* ==== Skeleton END ==== */


/* ==== Bootstrap START ==== */
.row {
    --bs-gutter-x: 1rem;
    display: flex;
    flex-wrap: wrap;
    margin-top: calc(var(--bs-gutter-y) * -1);
}
.row > [class *='col-'] {
	padding-left:12px;
	padding-right:12px;
}
@media(max-width:767px){
	.row > [class *='col-'] {
		padding-left:8px!important;
		padding-right:8px!important;
	}
}
/* ==== Bootstrap END ==== */


/* ==== Sweetalert START ==== */
.sweepstake_event_name{
	font-size:16px;
	margin-top:16px;
}
/* ==== Sweetalert END ==== */



/* 會員專區 */
.h4.account-title,h4.account-title{
	font-size:20px!important;
	font-family: "futura-pt","Noto Serif TC";
	font-weight:600!important;
	line-height:24px!important;
}
/* 評價 */
.review-score{
	padding-left:0;
}

.tag-area .tag {
    font-family: Noto Sans TC;
    font-weight: 700;
    font-size: 12px;
    line-height: 100%;
    letter-spacing: 2%;
    gap: 10px;
    padding: 4px 5px;
    border-radius: 6px;
    border: 1px solid var(--gray_400);

}

/* ==== 商品總數 START ==== */
.div_list_cnt_outer {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items:center;
    margin-bottom:24px;
    color:#6C757D;
}
.div_list_cnt_outer b{
    font-weight:500;
    color:#000000 !important;
}
.div_list_cnt_outer i{
	display:flex;
    font-size:24px;
    line-height:1.6;
    color: var(--header_main_f_color, #000000);
}
#span_product_total_cnt {
    margin-right: auto;
    display:flex;
    align-items:center;
    margin-top:0;
}
#a_m_filter_display{
    border: 1.5px solid var(--gray_500);
    padding: 8px 14px;
    width: 100% !important;
    display: grid;
    grid-template-columns: 1fr auto;
    text-align: left;
    align-items: center;
}
#a_m_filter_display i{
    font-size:15px;
}
@media (max-width: 767px) {
    #span_product_total_cnt{
        margin-top:0px;
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
        align-items: baseline;
        text-align:left !important;
    }
    .div_list_cnt_outer{
        display:grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }
    #a_filter_display{
        width:100%;
    }
}
@media(max-width:575px){
    .div_list_cnt_outer i{
        font-size:20px;
    }
}
/* ==== 商品總數 END ==== */

/* ==== 篩選側選單 START ==== */
.div_filter_item {
    border-top: none;
}

.filter_main_type_area{
    border-bottom: 1px solid var(--gray_400)!important;
}
.filter-title-area{
    margin:24px 0px;
    font-size:16px;
    font-weight:600;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}
.filter-title-area a:hover{
	color:unset!important;
}
.filter-title-area > a{
    position: absolute;
    inset: 0;
    z-index: 1;
    text-align:right;
}
.task-checklist{
    line-height: 2;
}
.task-checklist li:first-child {
    margin-top: 0px;
}
.task-checklist {
    padding-bottom:24px;
}
.task-checklist li:last-child {
    margin-bottom: unset;
}
#Reset_PLP_Filter{
    margin-top: 16px;
    border-bottom: 1.5px solid #000000;
}
[name="li_filter_category"] {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
}
[class*='btn_display_kid_layer_']{
    display: grid;
    /*gap: 10px;*/
    margin-top:10px;
}
.ul_filter_brand .form-check-label,
.task-checklist .form-check-label {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 12px;
    align-items: center;
}
.div_kid_layer_outer {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
}
@media (max-width: 767px) {
    .filter-title-area {
        padding: 16px 0px;
    }
}
#div_filter_list > div > .filter_main_type_area:last-of-type {
    border-color:#212529 !important;
}
.filter_main_type_area.brand-des{
    border-color:#212529 !important;
}

/* 側選單Mobile */
#div_filter_list_mobile {
    position: fixed;
    left: 0px;
    top: 0px;
    width: 100vw;
    height: 100vh;
    overflow-y: scroll;
    overflow-x: hidden;
    padding: 50px 16px 20px;
    z-index: 1001;
    background: #ffffff;
}
#btn_close_filter_area{
    position: absolute;
    top: 60px;
    right: -10vw;
    font-size: 35px;
    color: #ffffff;
}
#btn_close_filter_area:last-child{
    position: absolute;
    top: 60px;
    right: -10vw;
    font-size: 35px;
    color: #ffffff;
}
/* ==== 篩選側選單 END ==== */

.special-form .form-box__single-group{
	margin-top: 0;
	margin-bottom: 24px;
}
.icon-search-order, .icon-search-brand {
    font-size: 70px;
    color: black;
}
.activity-card-box:hover {
    font-weight: 700;
    background-color: rgba(243, 244, 246, 1);
    color: black;
}
.empty-message h4,
.empty-message div {
	font-weight:400;
    color:var(--gray_600);
    font-size:16px;
    line-height:20.8px;
}
/* 登入頁 */
.login-register-form .btn_area{
	padding:0;
}
.login-register-form .btn_area .btn.btn--gray:hover{
	color:var(--black-color)!important;
}
.login-register-form .btn_area .col-6{
	flex:1;
}
.login-register-form .btn_area .col-6 .btn{
	max-width: 100%;
	margin:0;
}
#div_init_plp_brand_sort .hero-slider__arrow.slick-disabled {
    opacity: 0;
    pointer-events: none; /* 停用點擊 */
}
#history-link {
	display:block;
    font-size: 14px;
    line-height:14px;
    color:var(--color_primary);
    font-weight:600;
    text-decoration:underline;
    margin-top:8px;
}
#history-link:hover {
    color:var(--color_primary);
}
body.v15-web-offcanvas-mask::before,
body.v15-web-offcanvas-mask .offcanvas-overlay {
    pointer-events: none;
}
/* 其他推薦 */
.section-block.black_bg .hero-slider__arrow i{
	color: var(--white_color);
    -webkit-text-stroke: 0.3px currentColor;
}

/* 警示框 */
.jq-toast-wrap {
    height: 40px;
    max-height: 40px;
}

.jq-toast-wrap .jq-toast-single {
    padding: 11px 10px;
    color: black !important;
    font-family: Noto Sans TC;
    font-weight: 400;
    font-size: 15px;
    line-height: 100%;
    letter-spacing: 3%;
    box-shadow: 1px 2px 6px 0px #00000059;
    border-radius: unset !important;
    display: flex;
    align-items: center !important;
    gap: 8px;
}

.jq-toast-single h2 {
    margin: 0px !important;
    font-weight: 600;
}

.jq-toast-single .jq-toast-heading {
    display: flex;
    align-items: center !important;
    gap: 8px;
    padding-top: 2px;
}

.jq-toast-loader {
    display: none !important;
}

.close-jq-toast-single {
    top: unset !important;
    padding-bottom: 0 !important;
}

.close-jq-toast-single i:before {
    font-size: 20px;
}

.jq-icon-success .jq-toast-heading i:before,
.jq-icon-success #toast_heading_text {
    color: #1AA179;
}

.jq-icon-success {
    background-color: #E8F4F1 !important;
}

.jq-icon-info .jq-toast-heading i:before,
.jq-icon-info #toast_heading_text {
    color: #0075E0;
}

.jq-icon-info {
    background-color: #E8F2FC !important;
}

.jq-icon-warning .jq-toast-heading i:before {
    color: #FFC107;
}

.jq-icon-warning {
    background-color: #FFF9E6 !important;
}

.jq-icon-error .jq-toast-heading i:before,
.jq-icon-error #toast_heading_text {
    color: #DC3545;
}

.jq-icon-error {
    background-color: #FDF4F6 !important;
}