@charset "UTF-8";
/*公版*/
.dtwrap {
	max-width: unset;
	width: 100%;
}
.memberWrap {
	padding: 0 0px!important;
	/*margin-bottom: -30px;*/
	overflow-x: hidden;
}
footer {margin-top: 0px;}
header {
    z-index: 18;
    }
@media (min-width: 1008px){
.has-headerBanner.mainContent {
    padding: 144px 0 0;
}
}

/*Base */
html, body { max-width: 100vw; }
html { font-size: 100%; overflow-x: hidden; -webkit-tap-highlight-color: transparent;}
body { margin: 0;-webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
main section{clear: both;float: left; }
main p {margin: 0;max-width: 100%;height: auto;display:block;clear:both;font-weight: 300;}
main a { text-decoration: none; color: #333;  -webkit-transition: all 0.2s ease-in-out; -o-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out;display: inline-block;}
main a:hover { background: #transparent; }
main a:hover,main a:focus,main a:active { text-decoration: none; background: #transparent; }
h1,h2,h3,h4,h5,h6 {
  letter-spacing: 0.1em;
  font-weight: 400;
  line-height: 1.1;
}
h1 {
  font-size: 36px;
  line-height: 2.8em;
}

h2 {
  font-size: 22px;
  line-height: 2.5em;
}

h3 {
  font-size: 18px;
  line-height: 2.2em;
}

h4 {
  font-size: 15px;
  line-height: 2em;
}

h5 {
  font-size: 13px;
  line-height: 1.8em;
}

h6 {
  font-size: 10px;
  line-height: 1.8em;
}
*:before, *:after,*  {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
img {
    max-width: 100%;
    height: auto;
    border: 0;
}
main{
  background: #e7e1d3;
}
 figure, footer, header, hgroup, main, menu, nav, section{
    display: block;
	margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0;
    margin-inline-end: 0;
}

/*Container*/
.container,.container-2 {
    margin-right: auto;
    margin-left: auto;
    padding-left: 15px;
    padding-right: 15px;
}
@media screen and (max-width: 767px) {
.container {padding-left: 25px;padding-right: 25px;}
}
@media (min-width: 768px){.container{width:95%;}}
@media (min-width: 900px){.container{width:95%}}
@media (min-width: 992px){.container{width:95%}}
@media (min-width: 1200px){.container{width:92%}}
@media (min-width: 1920px){.container{max-width:1360px;width:85%}}

body {
	background-color: #fff;
	z-index: -3;
	font-size: 15px;
}
/*網站的Header要置頂*/
header.has-headerBanner {
    z-index: 10;
}
.backTop{
    display:none;
}
.container,.container-2{
	margin-top:3%;
}
@media screen and (max-width: 767px) {
.container,.container-2{padding-left: 0;padding-right: 0;}
}

/* =========================================
   主視覺 Banner 設定
   ========================================= */
.section_banner {
    position: static;
    width: 100%;
    margin: 0 auto;
    padding: 0;
    overflow: hidden; /* 確保動畫過程不出現捲軸 */
}

.section_banner .top-pc {
    width: 100%;
    display: flex;
    flex-direction: row;
    
    /* 修改這裡：原本是 wrap，改成 nowrap 防止因為重疊或誤差導致第二張圖掉下去 */
    flex-wrap: nowrap; 
    
    justify-content: center;
    align-items: stretch;
}

/* 左右圖片容器 */
.section_banner .top-pc picture {
    display: block;
    width: 50%;
    position: relative;
    overflow: hidden;
    line-height: 0;
    
    /* 新增下面這行：讓圖片稍微往左擠 1px */
    margin-right: -1px; 
    
    /* 或者是讓寬度稍微大一點點 (配合 flex-wrap: nowrap 使用) */
    width: 50.1%;
}

/* 圖片本體 */
.section_banner .top-pc picture img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover; /* 確保圖片填滿容器且不變形 */
}

/* 中間 Logo */
.section_banner .top-logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); /* 絕對置中 */
    z-index: 15;
    width: 100%;
    max-width: 400px; /* 根據實際圖檔調整 */
    pointer-events: none; /* 讓滑鼠可以點擊穿透到底下的圖片 */
    opacity: 0; /* 預設隱藏，交給 JS 處理淡入 */
}

.section_banner .top-logo img {
    width: 100%;
    height: auto;
    display: block;
}
/* =========================================
   RWD 手機版設定 (max-width: 768px)
   ========================================= */
@media screen and (max-width: 768px) {
    .section_banner .top-pc {
        flex-direction: column; /* 改為垂直排列 */
        flex-wrap: nowrap;
    }

    .section_banner .top-pc picture {
        width: 100%; /* 寬度佔滿 */
        margin-right: 0; /* 清除桌機版的右邊距修正 */
        margin-bottom: -1px; /* 新增：消除垂直排列時圖片中間的縫隙 */
    }
    
    /* 修正最後一張圖不需要負邊距，避免下方有空隙 */
    .section_banner .top-pc picture:last-child {
        margin-bottom: 0;
    }
    .section_banner .top-logo {
        max-width: 250px; /* 根據實際圖檔調整 */
        top: 55%;
    }
}
/* 前言 */
.section__desc {
    padding: 5rem 3rem 6rem;
    text-align: center;
}

@media screen and (max-width: 600px) {
    .section__desc {
        padding: 3rem 2.5rem 0;
    }
}
.section__desc p{
    margin: 40px 0;
}
.section__desc .text-center {
    text-align: center;
}


@media screen and (max-width: 500px) {
    .section__desc .text-center{
        text-align: justify;
    }
}

.section__desc .text-center span{
    display: block;
    letter-spacing: 0.05em;
    line-height: 2;
    font-weight: 400;
    text-align: center;
    font-size: 16px;
    font-feature-settings: "palt";
}

@media screen and (max-width: 500px) {
    .section__desc .text-center span{
        display: inline;
        text-align: justify;
        line-height: 1.7778;
    }
}

/* style */
.order-1 {
    order: 1;
}

.order-2 {
    order: 2;
}

.order-3 {
    order: 3;
}

@media print, screen and (min-width: 768px) {
    .order-1 {
        order: 1;
    }
    .order-2 {
        order: 2;
    }
    .order-3 {
        order: 3;
    }
}
/*商品介紹*/
.look-wrapper{
	display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: center;
    align-items: center;
}
.look-wrapper img {
    width: 100%;
    height: auto;
}

.style {  
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin:0  auto;
    width:85%;
    max-width: 1180px;
}

@media print, screen and (min-width: 768px) {
    .style {
        width: calc(100% - 60px);
    }
    .style > .style__header {
        display: none;
    }
}

@media screen and (max-width: 767px) {
    .style {
        margin-top: calc(10%);
        display: block;
    }
}

.style__visual {
    position: relative;
    width: 55%;
}

@media screen and (max-width: 767px) {
    .style__visual {
        width: auto;
    }
}

.style__detail {
    position: sticky;
    top: 40px;
    width: 41%;
}

@media screen and (max-width: 767px) {
    .style__detail {
        margin: 20px auto;
        width: auto;
    }
    .style__detail .style__header {
        display: none;
    }
}

.style__detail .c-paragraph {
    margin-top: 20px;
}

.style-figure {
    position: sticky;
    top: 40px;
    z-index: 2;
}

@media screen and (max-width: 767px) {
    .style-figure {
        top: 70px;
    }
}

.style-figure.is-right {
    margin-left: auto;
}

.style-figure.is-center {
    margin-inline: auto;
}

.style-figure.is-w-500 {
    width: 88.65248%;
}

@media screen and (max-width: 767px) {
    .style-figure.is-w-500 {
        margin-inline: auto;
        width: 92%;
    }
}

.style-figure.is-w-420 {
    width: 74.46809%;
}

@media screen and (max-width: 767px) {
    .style-figure.is-w-420 {
        width: 74.46809%;
    }
}

.style-figure + .style-figure {
    margin-top: 20px;
}

@media screen and (max-width: 767px) {
    .style-figure + .style-figure {
        margin-top: 20px;
    }
}

.style-headline {
    margin-top: 25px;
    letter-spacing: 0.05em;
    line-height: 1.7778;
    font-weight: 400;
    text-align: justify;
    font-size: 18px;
    font-feature-settings: "palt";
}

@media screen and (max-width: 767px) {
    .style-headline {
        margin-top: 22px;
        font-size: 16px;
    }
}

@media screen and (max-width: 767px) {
    .style__header {
        margin-bottom: 25px;
    }
}

.style-count {
    text-align: left;
    line-height: 1;
    font-family: 'El Messiri', sans-serif;
}

.style-count__main {
    margin-top: 0.1em;
    display: block;
    font-size: 30px;
    letter-spacing: 0.03em;
}

@media screen and (max-width: 767px) {
    .style-count__main {
        font-size: 20px;
    }
}

.c-products-wrap {
    display: flex;
    flex-direction: column;
    border-bottom: 1px dotted #707070;
    border-top: 1px dotted #707070;
}

.c-products-wrap.is-pickup {
    margin-top: 35px;
}

@media screen and (max-width: 767px) {
    .c-products-wrap.is-pickup {
        margin: 30px 10%;
    }
}

.c-products-wrap.is-pickup .c-products {
    display: flex;
    align-items: center;
    gap: 0 4.54545%;
    padding: 17px 10px;
}

@media screen and (max-width: 767px) {
    .c-products-wrap.is-pickup .c-products {
        gap: 0 5.33333vw;
        padding: 17px 10px;
    }
}

@media print, screen and (min-width: 768px) {
    .c-products-wrap.is-pickup .c-products:hover .c-products__button {
        color: #fff;
        background-color: #333333;
    }
}

.c-products-wrap.is-pickup .c-products__detail {
    flex-grow: 1;
    font-weight: 400;
}

.c-products-wrap.is-pickup .c-itemprice {
    margin-top: 0.5em;
}

.c-products-wrap.is-pickup .c-products__button {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    border: 1px solid #333333;
    background-color: #fff;
    padding-top: 2px;
    height: 25px;
    width: 80px;
    font-size: 13px;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .c-products-wrap.is-pickup .c-products__button {
        width: 52px;
        font-size: 12px;
    }
}
/*----輪播特效----*/
.swiper-box {
	width: 80%;
	margin: 20px auto;
}
.trend-img{
	width:100%;
}
@media (max-width: 767px) {

	.trend-img{
		width:100%;
		margin:0 auto ;
	}
}
.swiper {
	width: 100%;
	height: auto;
}
.swiper-slide {
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
-webkit-justify-content: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
-webkit-align-items: center;
align-items: center;
}
.swiper-slide img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}

/* MORE BTN */
.section__more {
    clear: both;
    display: block;
    width: 100%;
    text-align: center;
    float: left;
    margin: 0 auto 10rem;
}
@media screen and (max-width: 400px) {
    .section__more {
        margin: 0 auto 8rem;
    }
}
.section__more .button {
    transition: all 0.2s ease-in-out;
    background-color: #000000;
    color: #FFFFFF;
    padding: 1rem 1.2rem 0.9rem;
    margin: 0 auto;
    width: 50%;
    max-width: 180px;
}
.section__more .button:after {
    content: "→";
    margin-left: 0.5rem;
    top: 1px;
    position: relative;
}
.section__more .button:hover {
    transform: translateX(3px);
    color: #FFFFFF;
}

/* === 載入畫面滿版遮罩 === */
#loader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  z-index: 9999;
  transition: opacity 1s ease, visibility 1s ease;
}
/* 載入內容區 */
.loader-content {
  text-align: center;
}
.loading-gif {
  width: 170px;
  height: auto;
  margin: 0 auto 60px auto;
}
/* 進度條外框*/
.loading-bar {
  width: 200px;
  height: 6px;
  background: #ddd;
  border-radius: 3px;
  overflow: hidden;
  margin: 0 auto;
}
/* 進度條動畫*/
.loading-progress {
  width: 0%;
  height: 100%;
  background: #000;
  animation: loading 2s ease forwards;
}
@keyframes loading {
  0% { width: 0%; }
  100% { width: 100%; }
}
/*淡出效果*/
#loader.fade-out {
  opacity: 0;
  visibility: hidden;
}

/*聯名介紹*/
.brand-box{
	width:100%;
	display: flex;
    flex-direction: column;
	align-items: center;
	margin:0 auto;
}
.brand-box p{
	font-size:16px;
	letter-spacing:2px;
	line-height:2;
	text-align:center;
}
@media screen and (max-width: 900px) {
	.brand-box{
		margin:4rem auto 0 auto;
	}
}
@media screen and (max-width: 600px) {
	.brand-box{
		margin:4rem auto 0 auto;
		width:85%;
	}
	.brand-box p{
	    text-align:justify;
	}
	.brand-box p br{
		display:none;
	}
	
}
.brand-box .Plateau{
	width: 80%;
    max-width: 700px;
    margin: 0 auto 100px auto;
    padding: 50px;
    background: #ffffff;
    display: flex;
    flex-direction: column;
    align-items: center;
	border: 1px solid #000000; 
    box-sizing: border-box; /* 確保邊框不影響元素的總寬度 */
}
.brand-box .Plateau img{
	width:80%;
	max-width:260px;
	margin:0 auto 30px auto;
}
.brand-box .Plateau .info-text{
	width:95%;
	text-align:justify;
	letter-spacing: 0.05em;
    line-height: 1.7778;
    font-weight: 400;
    text-align: justify;
    font-size: 16px;
    font-feature-settings: "palt";
}
@media screen and (max-width: 900px) {
	.brand-box.Plateau{
		width: 80%;
		padding: 40px;
		margin: 0 auto 100px auto;
	}
	.brand-box .Plateau .info-text{
	width: 100%;
    text-align: justify;
	}
	.brand-box .Plateau img{
		width:70%;
		max-width:250px;
	}
}
@media screen and (max-width: 600px) {
	.brand-box .Plateau {
		padding: 30px;
		width: 100%;
		margin:0 auto 80px auto;
	}
	.brand-box.Plateau img{
		width:70%;
		max-width:190px;
		margin: 0 auto 20px auto;
	}
}
/* 手機平板區塊隱藏 */
@media screen and (max-width: 767px) {
    .dsk {
        display: none;
    }
}

.section_banner .top-pc picture .sp, .sp{
    display: none;
}

@media screen and (max-width: 767px) {
    .section_banner .top-pc picture .sp, .sp {
        display: block;
    }
    .section_banner .top-pc picture .dsk {
        display: none;
    }
	.dsk,#scroll-down {
        display: none; 
	} 
}
