/*
* CSS Document
* ==========================================================================
* 版權所有 2014 鉅潞科技網頁設計公司，並保留所有權利。
* 網站地址: http://www.grnet.com.tw
* ==========================================================================
* $Author: Rain $
* $Date: 2016-07-06 (四) $
*/

/*
2023.07.18 更新
*/

/* ==== font ==== */
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+TC:wght@200..900&display=swap');

/* NotoSansCJKtc */
@font-face {
  font-display: swap;
  font-family: 'NotoSansCJKtc';
  font-style: normal;
  font-weight: 300;
  src:  url('../fonts/NotoSansCJKtc/NotoSansCJKtc-Light.woff2') format('woff2'),
        url('../fonts/NotoSansCJKtc/NotoSansCJKtc-Light.woff') format('woff');
}
@font-face {
  font-display: swap;
  font-family: 'NotoSansCJKtc';
  font-style: normal;
  font-weight: 400;
  src:  url('../fonts/NotoSansCJKtc/NotoSansCJKtc-Regular.woff2') format('woff2'),
        url('../fonts/NotoSansCJKtc/NotoSansCJKtc-Regular.woff') format('woff');
}
@font-face {
  font-display: swap;
  font-family: 'NotoSansCJKtc';
  font-style: normal;
  font-weight: 500;
  src:  url('../fonts/NotoSansCJKtc/NotoSansCJKtc-Medium.woff2') format('woff2'),
        url('../fonts/NotoSansCJKtc/NotoSansCJKtc-Medium.woff') format('woff');
}

/* MADEMirage 英文 */
@font-face {
  font-family: 'MADEMirage';
  font-display: swap;
  font-style: normal;
  font-weight: 500;
  src:  url('../fonts/MADEMirage/MADEMirage-Medium.woff2') format('woff2'),
        url('../fonts/MADEMirage/MADEMirage-Medium.woff') format('woff'),
        url('../fonts/MADEMirage/MADEMirage-Medium.ttf')  format('truetype');
}
@font-face {
  font-family: 'MADEMirage';
  font-display: swap;
  font-style: normal;
  font-weight: 700;
  src:  url('../fonts/MADEMirage/MADEMirage-Bold.woff2') format('woff2'),
        url('../fonts/MADEMirage/MADEMirage-Bold.woff') format('woff'),
        url('../fonts/MADEMirage/MADEMirage-Bold.ttf')  format('truetype');
}

/* Hind 英文 */
@font-face {
  font-family: 'Hind';
  font-display: swap;
  font-style: normal;
  font-weight: 400;
  src:  url('../fonts/Hind/Hind-Regular.woff2') format('woff2'),
        url('../fonts/Hind/Hind-Regular.woff') format('woff'),
        url('../fonts/Hind/Hind-Regular.ttf')  format('truetype');
}
@font-face {
  font-family: 'Hind';
  font-display: swap;
  font-style: normal;
  font-weight: 500;
  src:  url('../fonts/Hind/Hind-Medium.woff2') format('woff2'),
        url('../fonts/Hind/Hind-Medium.woff') format('woff'),
        url('../fonts/Hind/Hind-Medium.ttf')  format('truetype');
}

/* ShipporiMincho 中文 */
@font-face {
  font-family: 'ShipporiMincho';
  font-display: swap;
  font-style: normal;
  font-weight: 500;
  src:  url('../fonts/ShipporiMincho/ShipporiMincho-Medium.woff2') format('woff2'),
        url('../fonts/ShipporiMincho/ShipporiMincho-Medium.woff') format('woff'),
        url('../fonts/ShipporiMincho/ShipporiMincho-Medium.ttf')  format('truetype');
}
@font-face {
  font-family: 'ShipporiMincho';
  font-display: swap;
  font-style: normal;
  font-weight: 600;
  src:  url('../fonts/ShipporiMincho/ShipporiMincho-SemiBold.woff2') format('woff2'),
        url('../fonts/ShipporiMincho/ShipporiMincho-SemiBold.woff') format('woff'),
        url('../fonts/ShipporiMincho/ShipporiMincho-SemiBold.ttf')  format('truetype');
}
@font-face {
  font-family: 'ShipporiMincho';
  font-display: swap;
  font-style: normal;
  font-weight: 700;
  src:  url('../fonts/ShipporiMincho/ShipporiMincho-Bold.woff2') format('woff2'),
        url('../fonts/ShipporiMincho/ShipporiMincho-Bold.woff') format('woff'),
        url('../fonts/ShipporiMincho/ShipporiMincho-Bold.ttf')  format('truetype');
}

/* ==== load ==== */
.load-ani {
  pointer-events: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: fixed;
  z-index: 1002;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-beige-light);
  -moz-animation: ani_fadeout .6s 1.6s forwards;
  -webkit-animation: ani_fadeout .6s 1.6s forwards;
  animation: ani_fadeout .6s 1.6s forwards;
}
.load-ani.finish {
  pointer-events: none;
  visibility: hidden;
  overflow: hidden;
}
.load-ani .box {
  position: relative;
  margin-top: -50px;
  width: 210px;
  height: 80px;
}
.load-ani .box > svg, .load-ani .box > div {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.load-ani .ani-icon {
  bottom: 11px;
  width: 100%;
  height: 33.83px;
  overflow: hidden;
}
#svg-logo-icon {
  width: 100%;
  -moz-animation: ani_svg_icon .5s forwards;
  -webkit-animation: ani_svg_icon .5s forwards;
  animation: ani_svg_icon .5s forwards;
}

#svg-logo-en path:nth-child(1) { --from-x: 120px; }
#svg-logo-en path:nth-child(2) { --from-x: 60px; }
#svg-logo-en path:nth-child(3) { --from-x: 0px; }
#svg-logo-en path:nth-child(4) { --from-x: -60px; }
#svg-logo-en path:nth-child(5) { --from-x: -120px; }
#svg-logo-en {
  bottom: 0;
  width: 100%;
}
#svg-logo-en path {
  transform-box: fill-box;     /* 以 path 自己為座標 */
  transform-origin: center;   /* 以中心計算 */
  opacity: 0;
  transform: translateX(var(--from-x));
  animation: moveToOrigin 0.6s ease-out forwards;
  animation-delay: 0.45s;
}

#svg-logo-tw {
  top: 10px;
  width: 11.2px;
  opacity: 0;
  -moz-animation: ani_svg_tw .5s .5s forwards;
  -webkit-animation: ani_svg_tw .5s .5s forwards;
  animation: ani_svg_tw .5s .5s forwards;
}

@keyframes ani_svg_icon {
  0% {
    transform: translateY(33.83px);
  }
  100% {
    transform: translateY(0);
  }
}
@-webkit-keyframes ani_svg_icon {
  0% {
    transform: translateY(33.83px);
  }
  100% {
    transform: translateY(0);
  }
}

@keyframes moveToOrigin {
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
@-webkit-keyframes moveToOrigin {
  to {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes ani_svg_tw {
  0% {
    top: 10px;
    opacity: 0;
  }
  100% {
    top: 0;
    opacity: 1;
  }
}
@-webkit-keyframes ani_svg_tw {
  0% {
    top: 10px;
    opacity: 0;
  }
  100% {
    top: 0;
    opacity: 1;
  }
}

@keyframes ani_fadeout {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes ani_fadeout {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

/* ==== 進場動畫 ==== */
/* fade-up */
.ani-fadeup {
  opacity: 0;
  -webkit-transform: translate(0, 60px);
  transform: translate(0, 60px);
  -webkit-transition: opacity .6s, -webkit-transform 1.2s;
  transition: opacity .6s, transform 1.2s;
}
.ani-fadeup.scroll-view {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

/* fade-in */
.ani-fadein {
  opacity: 0;
  -webkit-transition: opacity 1s;
  transition: opacity 1s;
}
.ani-fadein.scroll-view {
  opacity: 1;
}

/* 延遲 */
.delay-15 {
  -webkit-transition-delay: .15s;
  transition-delay: .15s;
  -webkit-animation-delay: .15s;
  animation-delay: .15s;
}
.delay-40 {
  -webkit-transition-delay: .4s;
  transition-delay: .4s;
  -webkit-animation-delay: .4s;
  animation-delay: .4s;
}
.delay-65 {
  -webkit-transition-delay: .65s;
  transition-delay: .65s;
  -webkit-animation-delay: .65s;
  animation-delay: .65s;
}

@keyframes ani_slideIn {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes ani_slideOut {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(0);
  }
}

/* ==== 宣告 ==== */
:root {
  /* 顏色 */
  --color-main: #372925; /* 主色 */
  --color-main-rgba: 55,41,37; 
  --color-secondary: #5f4c46; /* 副色 */
  --color-secondary-rgba: 95,76,70;
  --color-beige-light: #fcfbf8;
  --color-beige-rgba: 236,229,210; /* 米色 */
  --color-beige-2: #ded5bd;

  /* 字型 */
  --font-style-mix: 'MADEMirage', 'ShipporiMincho', 'Noto Serif TC', serif;
  --font-style-en: 'MADEMirage', 'ShipporiMincho', 'Noto Serif TC', serif;
  --font-style-tw: 'ShipporiMincho', 'Noto Serif TC', serif;

  /* 字元間距 */
  --letter-spac: 0.15rem;

  /* 架構 */
  --spacing: 30px;
  --wrap-1190: 1190px;
  --container-1190: calc(1190px + (var(--spacing) * 2));

  /* header */
  --wrap-spac-mb: 92.55px;
  --header-box-h: 125px;
  --sticky-news-h: 41px;
  --header-spac: 18px;
  --header-spac-fixed: 15px;
  --logo-spac: 63px;
  --link-spac: 24px;
  --logo-w: 245px;
  --topnav-w: calc((18px * 2) + (var(--link-spac) * 2) + 19px);

  --float-links-h: 60px;

  /* box space */
  --box-spac-pc: 220px;
  --box-spac: 40px;

  /* size */
  --size-headline: 2.4rem;

  /* radius */
  --border-radius-lg: 8px;
  --border-radius-md: 6px;
  --border-radius-sm: 4px;
  --border-radius-sx: 3px;
}

@media (max-width: 1279px) {
  :root {
    --box-spac-pc: 110px;
    --box-spac: 30px;
  }
}
@media (max-width: 1079px) {
  :root {
    --header-box-h: 115px;
    --header-spac: 15px;
    --logo-spac: 53px;
    --logo-w: 180px;
    --box-spac-pc: 80px;
  }
}
@media (max-width: 991px) {
  :root {
    --header-box-h: 75px;
    --header-h: calc(var(--sticky-news-h) + var(--header-box-h));
  }
}
@media (max-width: 767px) {
  :root {
    --letter-spac: 0.05rem;
    --sticky-news-h: 39px;
    --logo-spac: 43px;
    --link-spac: 20px;
    --box-spac: 50px;
    --size-headline-mb: 2.2rem;
  }
}

/* ==== 全域設定 ==== */
img {
  max-width: 100%;
  height: auto !important;
  vertical-align: top;
  border: 0;
}
a, a:visited, a:hover, a:focus, a:active,
button, button:visited, button:hover, button:focus, button:active {
  text-decoration: none;
  outline: none;
}
a {
  color: var(--color-secondary);
  -webkit-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out;
}
:focus, :active {
  outline: 0;
}
h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}
p {
  line-height: inherit;
}
label {
  margin-bottom: 0;
  color: var(--color-main);
  font-weight: inherit;
}
input, button, textarea, select, optgroup, option {
  font-family: inherit;
  font-size: inherit;
  *font-size: 100%;
  font-style: inherit;
  font-weight: inherit;
  outline: 0;
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
}
/* input, textarea, select, input[type=text], input[type=radio], input[type=checkbox] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
} */
button {
  padding: 0;
  text-align: center;
  border: none;
  border-radius: 0;
  background: none;
  box-shadow: none;
}
select::-ms-expand {
  display: none;
}

::-webkit-input-placeholder, ::-moz-placeholder, :-ms-input-placeholder, :-moz-placeholder {
  font-size: 1.4rem;
  color: rgba(var(--color-main-rgba), .5);
  font-weight: 300;
}

section, article, aside, footer, header, nav, main {
  display: block;
}

/* body */
html, body {
  font-size: 10px;
}
body {
  font-family: 'Hind', 'Arial', 'sans-serif', 'NotoSansCJKtc', 'Microsoft JhengHei', '微軟正黑體';
  font-size: 1.4rem;
  color: var(--color-main);
  font-weight: 300;
  letter-spacing: var(--letter-spac);
  line-height: 1.8;
  overflow-x: hidden;
  background-color: var(--color-beige-light);
  -webkit-text-size-adjust: none;
}
body > div {
  overflow: hidden;
}
@media (max-width: 767px) {
  .pContent .pMain {
    font-weight: 500;
  }
}


/* ==== 架構 ==== */
.container-1190 {
  position: relative;
  margin: 0 auto;
  padding: 0 var(--spacing);
  max-width: calc(1190px + (var(--spacing) * 2));
}
.container {
  padding: 0 var(--spacing);
}

#page.bg-white {
  background-color: #fff;
}

.wrap-style {
  position: relative;
  left: calc((100% - var(--wrap-1190)) / 2 );
  overflow: hidden;
}
@media (max-width: 1279px) {
  .wrap-style {
    left: 0;
    padding-left: var(--spacing);
  }
}
@media (max-width: 767px) {
  .wrap-spac-mb {
    padding-top: var(--wrap-spac-mb);
  }
  .wrap-style {
    padding: 0 var(--spacing);
  }
}

/* ==== 共用區塊/樣式 ==== */
.hidden-ele {
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(0px 0px 99.9% 99.9%);
  clip-path: inset(0px 0px 99.9% 99.9%);
  overflow: hidden;
  height: 1px;
  width: 1px;
  padding: 0;
  border: 0
}

ol.reset, ul.reset, li.reset, ul.ulSet {
  margin: 0;
  padding: 0;
  list-style: none;
}

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.flex2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: normal;
  align-items: flex-end;
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.txt-right {
  text-align: right;
  line-height: 1;
}
.txt-center {
  text-align: center;
}

.headline {
  margin: 0 0 35px 0;
  font-family: var(--font-style-mix);
  font-size: var(--size-headline);
  font-weight: 700;
  line-height: 1;
}
.headline span {
  padding-left: 10px;
}
.brief {
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 2;
  text-align: justify;
  text-justify: inter-ideograph;
}
@media (max-width: 767px) {
  .headline {
    margin-bottom: 30px;
    font-size: var(--size-headline-mb);
  }
  .brief {
    font-weight: 500;
  }
}

/* Title */
.iTitle {
  margin-bottom: 24px;
  padding-top: 112px;
  font-family: var(--font-style-mix); 
  font-size: var(--size-headline);
  text-align: center;
  font-weight: 700;
  background: url('../images/line_1.png') no-repeat center 4px;
}
.iTitle a:hover {
  color: var(--color-main);
  text-decoration: underline;
}
.iSmalTi {
  text-align: center;
  margin: 0 auto;
  font-family: var(--font-style-tw);
  font-size: 1.2em;
  color: var(--color-main);
  font-weight: 700;
}

.font-tw {
  font-family: var(--font-style-tw);
}

/* 數量 */
.qu-select {
  position: relative;
  width: 100%;
  height: 30px;
  line-height: 30px;
  border: var(--color-main) solid 1px;
  background-color: #fff;
  border-radius: var(--border-radius-sx);
  overflow: hidden;
}
.qu-select .link,
.qu-select input {
  display: block;
  width: 33.333%;
  outline: none;
}
.qu-select input {
  border: none;
}
.qu-select .link {
  position: absolute;
  z-index: 2;
  top: 0;
  height: 28px;
}
.qu-select .qty-minus {
  left: 0;
  border-radius: var(--border-radius-sx) 0 0 var(--border-radius-sx);
  overflow: hidden;
}
.qu-select .qty-plus {
  right: 0;
  border-radius: 0 var(--border-radius-sx) var(--border-radius-sx) 0;
  overflow: hidden;
}
.qu-select .link span {
  display: block;
  width: 100%;
  height: 100%;
}
.qu-select .link span::before,
.qu-select .link span::after {
  display: block;
  content: "";
  position: absolute;
  background-color: var(--color-main);
}
.qu-select .qty-minus span::before,
.qu-select .qty-plus span::before {
  top: 50%;
  left: 50%;
  margin-top: -0.7px;
  width: 10px;
  height: 1px;
}
.qu-select .qty-minus span::before {
  margin-left: -8px;
}
.qu-select .qty-minus span::after {
  display: none;
}
.qu-select .qty-plus span::before {
  margin: -1px 0 0 -2.7px;
}
.qu-select .qty-plus span::after {
  top: 50%;
  left: 50%;
  margin: -5px 0 0 2px;
  width: 1px;
  height: 10px;
}
.qu-select input[type="text"] {
  padding: 0;
  width: 100%;
  height: 31px;
  font-size: 1.4rem;
  color: var(--color-main);
  text-align: center;
  background-color: #fff;
}

/* 按鈕 */
.btn-style {
  display: block;
  width: 100%;
  max-width: 160px;
  height: 30px;
  font-size: 1.4rem;
  color: var(--color-main);
  font-weight: 300;
  text-align: center;
  line-height: 32px;
  border: var(--color-main) solid 1px;
  background-color: #fff;
  border-radius: var(--border-radius-sx);
  overflow: hidden;
}
.btn-style.black {
  color: #fff;
  background: var(--color-main);
}
.btn-style:hover,
.btn-style:active,
.btn-style:focus {
  color: var(--color-main);
}
.btn-style.black:hover {
  color: #fff;
}

/* ==== 置頂消息輪播 ==== */
.sticky-news {
  position: relative;
  padding: 4px var(--spacing);
	width: 100%;
	height: var(--sticky-news-h);
  color: var(--color-beige-rgba);
  overflow: hidden;
}
.sticky-news.is-close {
  display: none;
  pointer-events: none;
}
.sticky-news .btn-close {
  position: absolute;
  z-index: 2;
  top: 50%;
  right: 10px;
  width: 16px;
  height: 16px;
  opacity: 1;
  cursor: pointer;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out;
}
.sticky-news .btn-close:hover {
  -webkit-transform: translateY(-50%) rotate(180deg);
  -ms-transform: translateY(-50%) rotate(180deg);
  transform: translateY(-50%) rotate(180deg);
}
.sticky-news .btn-close::before,
.sticky-news .btn-close::after {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -1px 0 0 -50%;
  width: 100%;
  height: 1px;
  background-color: #fff;
  box-shadow: 0 0 12px rgba(0, 0, 0, .7);
}
.sticky-news .btn-close::before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.sticky-news .btn-close::after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.sticky-news .marquee-list {
  display: block;
  position: relative;
  margin: 0 auto;
  max-width: 1190px;
  overflow: hidden;
  -webkit-transition: left .5s;
  transition: left .5s;
}
.sticky-news .marquee-list .slick-slide,
.sticky-news .marquee-list .slick-slide > div {
  width: 100%;
  line-height: 0;
}
.sticky-news .marquee-list .item {
  display: block;
  padding: 0 20px;
  width: 100%;
  text-align: center;
  overflow: hidden;
}
.sticky-news .marquee-list .item a {
  display: inline-block;
  font-size: 1.2rem;
  color: #fff;
  white-space: nowrap;
  line-height: calc(var(--sticky-news-h) - 5px);
}
.sticky-news .marquee-list .item a:hover {
  color: #fff;
}
.sticky-news .marquee-list .slick-arrow {
  position: absolute;
  top: 50%;
  margin: 0;
  width: 30px;
  height: 30px;
  text-indent: -9999px;
  border-radius: 0;
  overflow: hidden;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.sticky-news .marquee-list .slick-prev {
  left: 50px;
}
.sticky-news .marquee-list .slick-next {
  right: 50px;
}

@media (max-width: 767px) {
  .sticky-news {
    padding-right: calc(var(--spacing) + 20px + 16px);
  }
  .sticky-news .btn-close {
    right: 20px;
  }
}
@media (max-width: 599px) {
  .sticky-news {
    padding: 0 40px 0 5px;
  }
  .sticky-news .marquee-list .item {
    padding: 0 10px;
    text-align: left;
  }
  .sticky-news .marquee-list .item a {
    line-height: 42px;
  }
}

/* ==== header ==== */
#header, .logo, .nav-menu a {
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}

.header-top {
  position: relative;
  z-index: 100;
}
#header {
  width: 100%;
  background-color: #fff;
}
#header .container-1190 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}

/* logo */
.logo {
  margin: 4px 0 0;
  width: 100%;
  max-width: var(--logo-w);
}
.logo a {
  display: block;
  width: 100%;
}
.logo .icon {
  display: block;
  width: 100%;
  background: url(../images/logo.svg) no-repeat 0 0;
  background-size: contain;
  overflow: hidden;
}
.logo .icon::before {
  display: block;
  content: "";
  padding-bottom: 20%;
  width: 100%;
}

/* topnav */
.top-nav .leftMenu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  align-items: center;
}
.top-nav .leftMenu li {
  margin-left: var(--link-spac);
}
.top-nav .leftMenu a {
  display: block;
  font-size: 0;
  line-height: 1;
}
.top-nav .leftMenu span {
  font-size: 13px;
}
.top-nav .leftMenu i {
  display: inline-block;
  height: 19px;
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: contain;
  overflow: hidden;
}
.top-nav .leftMenu li.member i {
  width: 17px;
  background-image: url(../images/icon_member.svg);
}
.top-nav .leftMenu li.cart i {
  width: 15px;
  background-image: url(../images/icon_cart.svg);
}

/* nav-switch */
.nav-switch {
  display: none;
  position: absolute;
  z-index: 5;
  top: 50%;
  right: var(--spacing);
  width: 18px;
  font-size: 0;
  cursor: pointer;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: right .3s;
  transition: right .3s;
}
.nav-switch::after {
  display: block;
  content: "";
  padding-bottom: 100%;
  width: 100%;
}
.nav-switch span {
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 1px;
  background-color: #000;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.nav-switch span:nth-child(1) {
  margin-top: -50%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.nav-switch span:nth-child(2) {
  -webkit-transition: width 0.3s;
  transition: width 0.3s;
}
.nav-switch span:nth-child(3) {
  margin-top: 50%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.nav-switch.is-open {
  right: calc(var(--spacing) - 10px);
}
.nav-switch.is-open span:nth-child(1) {
  margin-top: 0px;
  -webkit-transition: margin 0.3s, -webkit-transform 0.3s 0.3s;
  transition: margin 0.3s, -webkit-transform 0.3s 0.3s;
  transition: margin 0.3s, transform 0.3s 0.3s;
  transition: margin 0.3s, transform 0.3s 0.3s, -webkit-transform 0.3s 0.3s;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}
.nav-switch.is-open span:nth-child(2) {
  width: 0;
}
.nav-switch.is-open span:nth-child(3) {
  margin-top: 0px;
  -webkit-transition: margin 0.3s, -webkit-transform 0.3s 0.3s;
  transition: margin 0.3s, -webkit-transform 0.3s 0.3s;
  transition: margin 0.3s, transform 0.3s 0.3s;
  transition: margin 0.3s, transform 0.3s 0.3s, -webkit-transform 0.3s 0.3s;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}

/* 選單 */
.nav-menu > li > a {
  display: block;
  font-family: var(--font-style-tw);
  font-size: 1.46rem;
  font-weight: 700;
  color: var(--color-main);
}
.nav-menu > li > ul a {
  display: block;
  font-size: 1.4rem;
  color: var(--color-main);
  font-weight: 300;
  text-transform: uppercase;
}

/* nav mask */
.nav-open-mask {
  position: fixed;
  z-index: 3;
  top: calc(var(--sticky-news-h) + 64px);
  left: 0;
  width: 100%;
  height: calc(var(--vh, 1vh) * 100 - var(--sticky-news-h) - 64px);
  cursor: pointer;
  visibility: hidden;
  background-color: rgb(255,255,255,0);
  -webkit-transition: visibility .3s;
  transition: visibility .3s;
}
.nav-open-mask.is-open {
  visibility: visible;
}

/* fixed-header */
.is-fixed-header .header-top {
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  width: 100%;
}

@media (min-width: 992px) {
  .logo {
    position: absolute;
    left: 49.5%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }

  .top-nav {
    position: absolute;
    top: 50%;
    right: var(--spacing);
    transform: translateY(-50%);
  }

  .menu-main {
    width: calc(100% - var(--topnav-w));
  }
  .nav-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .nav-menu > li {
    position: relative;
  }
  .nav-menu > li > a {
    position: relative;
    padding: calc(var(--header-spac) + 10.86px) 0;
  }
  .nav-menu > li > a::after {
    display: block;
    content: "";
    position: absolute;
    left: 0;
    bottom: calc(var(--header-spac) + 10.86px);
    width: 0;
    height: 1px;
    background-color: #000;
    transition: width .3s;
  }
  .nav-menu > li > a:hover::after,
  .nav-menu > li.current > a::after {
    width: 100%;
  }

  .nav-menu > li > ul {
    display: none !important;
  }

  .js-submenu-pos {
    display: block;
    width: 100%;
    background: #fff;
  }
  .js-submenu-pos > ul {
    display: none;
    position: relative;
    margin: 0 auto;
    padding: 5px var(--spacing) 15px;
    max-width: var(--container-1190);
    font-size: 0;
    text-align: left;
    overflow: hidden;
  }
  .js-submenu-pos > ul.sub-right {
    text-align: right;
    padding-right: 150px;
  }
  .js-submenu-pos > ul > li {
    position: relative;
    display: inline-block;
    padding-right: var(--link-spac);
    vertical-align: top;
  }
  .js-submenu-pos > ul > li:last-child {
    padding-right: 0;
  }
  .js-submenu-pos > ul > li > a {
    display: block;
    padding: 7px 0;
    font-size: 1.4rem;
    color: var(--color-main);
    text-transform: uppercase;
    line-height: 1;
  }
  .js-submenu-pos > ul > li > a:hover {
    color: var(--color-secondary) !important;
  }

  .is-fixed-header .js-submenu-pos {
    position: fixed;
    z-index: 100;
    top: var(--header-box-h);
    left: 0;
  }

  /* 調整 */
  .menu-main {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-right: max(40px, 3vw);
  }
  .nav-menu.left > li {
    padding-right: max(var(--link-spac), 4.2vw);
  }
  .nav-menu.left > li[data-idx="4"],
  .nav-menu.left > li[data-idx="5"] {
    display: none;
  }
  .nav-menu.left > li.search {
    display: none;
  }

  .nav-menu.right > li {
    padding-left: max(var(--link-spac), 4.2vw);
  }
}

@media (max-width: 991px) {
  .header-top {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #fff;
  }
  .js-submenu-pos {
    display: none !important;
  }

  #header .container-1190 {
    justify-content: space-between;
    height: var(--header-box-h);
  }

  .logo {
    margin-right: calc(100% - var(--logo-w) - 18px - var(--topnav-w) - var(--link-spac));
  }
  .top-nav {
    margin-right: calc(var(--link-spac) + 20px);
  }
  .top-nav .leftMenu .search {
    display: none;
  }

  .nav-switch {
    display: block;
  }

  .menu-main {
    position: fixed;
    z-index: 3;
    top: var(--sticky-news-h);
    right: 0;
    padding-top: 90px;
    width: 135px;
    height: calc(var(--vh, 1vh) * 100 - var(--sticky-news-h));
    background-color: #fff;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-transform: translateX(135px);
    transform: translateX(135px);
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
    transition: transform 0.3s;
  }
  .nav-menu.right {
    display: none;
  }
  ul.nav-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 0 15px;
    text-align: center;
  }
  .nav-menu > li {
    margin-bottom: 15px;
  }
  .nav-menu.left > li.search {
    display: block;
  }
  ul.nav-sub {
    display: none;
    padding-top: 10px;
  }
  .nav-sub li:not(:last-child) {
    margin-bottom: 5px;
  }
  .nav-sub a {
    font-size: 1.3rem !important;
    line-height: 1.4;
  }

  html.is-open {
    overflow: hidden;
  }
  .menu-main.is-open {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@media (max-width: 767px) {
  .top-nav {
    margin-right: calc(var(--link-spac) + 20px);
  }
}

/* search */
.search {
  position: relative;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #fff;
}
.search-btn {
  width: 19px;
  height: 19px;
  cursor: pointer;
  background: url(../images/icon_search.svg) no-repeat 0 0;
  background-size: contain;
}
.search-wrap {
  width: 100%;
  height: 19px;
  border-bottom: #000 solid 1px;
  overflow: hidden;
}
.search-wrap .box {
  position: relative;
  width: 100%;
}
.search-wrap .input-style {
  display: block;
  width: 100%;
  height: 19px;
  font-size: 1.3rem;
  line-height: 19px;
  border: none;
  border-radius: 0;
  background-color: #fff;
  box-shadow: none;
}

@media (min-width: 768px) {
  .search-wrap {
    width: 0;
    visibility: hidden;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .search-btn.is-open {
    margin-left: 8px;
  }
  .search-wrap.is-open {
    margin-left: 10px;
    width: 110px;
    visibility: visible;
  }
  .search-wrap .search-btn {
    display: none;
  }
}
@media (max-width: 767px) {
  .search > .search-btn {
    display: none;
  }
  .search-wrap,
  .search-wrap .input-style {
    height: 24px;
    line-height: 24px;
  }
  .search-wrap {
    margin-bottom: 15px;
  }
  .search-wrap .input-style {
    padding-right: 25px;
  }
  .search-wrap .search-btn {
    display: block;
    position: absolute;
    top: 2px;
    right: 0;
    text-indent: -9999px;
    outline: none;
    border: none;
    box-shadow: none;
    background-color: #fff;
    overflow: hidden;
  }
}

/* ==== footer ==== */
#footer {
  position: relative;
  margin-top: 120px;
  padding: 60px 0;
  font-size: 1.2rem;
  color: #fff;
  background-color: var(--color-secondary);
}
#footer .container-1190 > .footer-logo {
  display: none;
}
#footer .footer-logo {
  margin: 0 55px 4px 0;
  width: 225px;
}
#footer .footer-logo i {
  display: block;
  width: 100%;
  background: url(../images/footer_logo.svg) no-repeat 0 0;
  background-size: cover;
}
#footer .footer-logo i::before {
  display: block;
  content: "";
  padding-bottom: 20%;
  width: 100%;
}

#footer ul li {
  line-height: 1;
}
#footer ul li a {
  color: #fff;
}
#footer .font-tw {
  font-size: 1.4rem;
  font-weight: 700;
}

#footer .links {
  margin-right: 55px;
  width: 100px;
}
#footer .links li {
  margin-top: 13px;
  margin-bottom: 4px;
  width: 100%;
}
#footer .links li:nth-child(3),
#footer .links li:nth-child(4),
#footer .links li:nth-child(6) {
  display: none;
}

#footer .contact {
  margin-top: 8px;
  margin-right: 93px;
}
#footer .contact .ti a {
  color: #fff;
}
#footer .contact .store {
  display: grid;
  grid-template-columns: 1fr 1fr; /* 桌面版两列 */
  grid-auto-rows: auto;
  gap: 10px;
  list-style: none;
  padding: 0;
  margin: 0;
}
#footer .contact .store li:nth-child(2) {
  grid-column: 1; /* 放在第一列 */
  grid-row: 2; /* 第二行 */
}
#footer .contact .store li:nth-child(3) {
  grid-column: 2; /* 放在第二列 */
  grid-row: 1; /* 第一行 */
}
#footer .container-1190 .contact li {
  line-height: 20px;
  margin: 4px 15px 0 0;
}

#footer .social > li {
  margin-top: 13px;
  margin-bottom: 4px;
}
#footer .community li {
  margin-right: 8px;
}
#footer .community a {
  display: block;
  position: relative;
  width: 20px;
  height: 20px;
  border-radius: 3px;
  background-color: #fff;
  overflow: hidden;
}
#footer .community i {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: cover;
}
#footer .community .ig i {
  background-image: url(../images/icon_ig.svg);
}
#footer .community .fb i {
  background-image: url(../images/icon_fb_black.svg);
}
#footer .community .line i {
  background-image: url(../images/icon_line.svg);
}

#go-top {
  position: fixed;
  z-index: 100;
  right: var(--spacing);
  bottom: 3.6vw;
  width: 60px;
  font-size: 0;
  opacity: 0;
  background-color: var(--color-secondary);
  transform: translateY(30px);
  -webkit-transition: opacity 0.25s, -webkit-transform 0.25s;
  transition: opacity 0.25s, -webkit-transform 0.25s;
  transition: opacity 0.25s, transform 0.25s;
  transition: opacity 0.25s, transform 0.25s, -webkit-transform 0.25s;
  border-radius: 15px;
}
.is-fixed-header #go-top {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}
#go-top > div {
  position: relative;
  padding-bottom: calc(100% - 2px);
  width: 100%;
  border: #fff solid 1px;
  border-radius: 15px;
}
#go-top span {
  display: block;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
#go-top span.aw {
  top: 35%;
  width: 25%;
  height: 25%;
  border-width: 1px;
  border-style: solid;
  border-color: #fff #fff transparent transparent;
  -webkit-transform: translateX(-50%) rotate(-45deg);
          transform: translateX(-50%) rotate(-45deg);
}
#go-top span.line {
  bottom: 35%;
  width: 35%;
  height: 1px;
  background-color: #fff;
}
#go-top.dark > div {
  border-color: transparent;
}

.float-links {
  display: none;
}

#footer .contact > li:nth-child(5) {
  display: none;
}

@media (min-width: 992px) {
  #footer .right {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    margin-left: auto;
    transform: translateX(-30px);
  }
}

@media (max-width: 1279px) {
  #footer {
    margin-top: 40px;
  }
}
@media (max-width: 991px) {
  #footer {
    padding: 75px 0 calc(var(--float-links-h) + 125px);
  }
  #footer > .container-1190.flex,
  #footer > .container-1190.flex2 {
    display: block;
    position: static;
  }

  #footer .container-1190 > .footer-logo {
    display: block;
  }
  #footer .footer-logo {
    margin: 0 auto;
  }
  #footer .footer-logo i {
    background-image: url(../images/footer_logo_mb.svg);
  }
  #footer .footer-logo i::before {
    padding-bottom: 39.112%;
  }

  #footer .links {
    margin: 40px auto 19px;
    width: 100%;
    max-width: 186px;
  }
  #footer .links li {
    padding: 0 6px;
    width: 50%;
    text-align: center;
  }

  #footer .contact {
    margin-right: 0;
    text-align: center;
  }
  #footer .contact > li:nth-child(1),
  #footer .contact > li:nth-child(2),
  #footer .contact > li:nth-child(3) {
    display: none;
  }
  #footer .contact > li:nth-child(5) {
    display: block;
    text-align: center;
    padding-top: 9px;
  }
  
  #footer .contact .store {
    grid-template-columns: 1fr;
  }
  #footer .contact .store li {
    /* flex: 0 0 100%; */
    margin: 4px 0 0 0;
  }
  #footer .contact .store li:nth-child(2) {
    grid-column: 1; /* 放在第一列 */
    grid-row: 2; /* 第二行 */
  }
  #footer .contact .store li:nth-child(3) {
    grid-column: 1; /* 放在第二列 */
    grid-row: 3; /* 第一行 */
  }

  #footer .right .footer-logo {
    display: none;
  }
  #footer .right .social > li:nth-child(2) {
    display: block;
    text-align: center;
    padding-top: 9px;
  }
  #footer .community {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
  }
  #footer .community li {
    margin: 0 7.5px;
  }
  #footer .community a {
    width: 30px;
    height: 30px;
    border-radius: 5px;
  }

  #go-top {
    width: 36px;
    bottom: calc(var(--spacing) + var(--float-links-h));
  }

  .float-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: fixed;
    z-index: 10;
    left: 0;
    bottom: 0;
    width: 100%;
    height: var(--float-links-h);
    background: rgba(255,255,255,.8);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
  }
  .float-links a {
    display: block;
    width: 25%;
    font-family: var(--font-style-tw);
    font-size: 1.4rem;
    color: #000;
    font-weight: 700;
    text-align: center;
    line-height: var(--float-links-h);
  }
}

/* ==========================================
Index Set.
==========================================
*/
.indexWrap {
  margin: 0 auto;
}

.mouse {
  position: absolute;
  width: 54px;
  height: 46px;
  display: block;
  bottom: 50px;
  left: 50%;
  margin-left: -28px;
  background: url(../images/scroll.png) center no-repeat;
  opacity: 1;
  cursor: pointer;
  z-index: 2;
}
.mouse:before {
  content: '';
  width: 1px;
  height: 40px;
  background: #fff;
  position: absolute;
  left: 50%;
  bottom: 55px;
}
.mouse:after {
  content: '';
  width: 1px;
  height: 40px;
  background: #fff;
  position: absolute;
  left: 50%;
  bottom: -50px;
}

#index .banner {
  position: relative;
  width: 100%;
  overflow: hidden;
}

#index .ban-slick,
#index .ban-slick .slick-list,
#index .ban-slick .slick-track,
#index .ban-slick .slick-slide {
  height: auto;
}

#index .banner .ban-slick .pic {
  display: block;
  width: 100%;
}
#index .banner .ban-slick img {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
}

#index .banner .slick-prev.slick-arrow,
#index .banner .slick-next.slick-arrow {
  position: absolute;
  top: 50%;
  width: 13px;
  height: 21px;
  border: none;
  font-size: 0;
  z-index: 1;
}

#index .banner .slick-prev.slick-arrow {
  background: url('../images/btn_left.png');
  left: 20px;
}

#index .banner .slick-next.slick-arrow {
  background: url('../images/btn_right.png');
  right: 20px;
}

@media (max-width: 767px) {
  .mouse {
    display: none;
  }
  #index .banner {
    margin-top: var(--wrap-spac-mb);
  }
}

@media (max-width: 680px) {
  #index .banner .slick-prev.slick-arrow,
  #index .banner .slick-next.slick-arrow {
    opacity: 0;
  }
}

@media (max-width: 575px) {
  #index .banner .ban-slick .item {
    position: relative;
    padding-bottom: 690px;
    overflow: hidden;
  }
  #index .banner .ban-slick .pic {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  #index .banner .ban-slick img {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    transition: all .35s;
  }
}

/* NEWS */
#iNews {
  background: url('../images/line2.png') center 164px no-repeat;
  padding: 0 0 70px;
  width: 100%;
}

#iNews .iTitle {
  background: url('../images/line_1.png') no-repeat center -16px;
  margin-bottom: 74px;
}

#iNews .left {
  margin-left: 0;
  padding-left: 0;
  width: 45%;
}

#iNews .right {
  margin-right: 0;
  padding-right: 0;
  float: right;
  width: 45%;
  margin-top: 64px;
}

#iNews .newsBox {
  position: relative;
}

#iNews .newsBox:after {
  content: '';
  width: 99%;
  height: 97%;
  border: 1px solid var(--color-beige-2);
  left: 4%;
  top: 8%;
  z-index: -1;
  position: absolute;
  border-radius: var(--border-radius-md);
  overflow: hidden;
}

#iNews .newsBox .picBox {
  display: block;
  width: 100%;
  margin: 0 auto;
  border-radius: var(--border-radius-lg);
  overflow: hidden;
}
#iNews .newsBox .picBox img { transition: all .3s ease; -o-transition: all .3s ease;-moz-transition: all .3s ease; -webkit-transition: all .3s ease;}
#iNews .newsBox .picBox:hover img { -webkit-transform: scale(1.1); -ms-transform: scale(1.1); transform: scale(1.1); }

#iNews .newsBox .date {
  position: absolute;
  background: var(--color-beige-light);
  right: -25px;
  top: 20%;
  padding: 8px 20px;
  width: 130px;
  font-style: italic;
  line-height: 1.6;
  border-radius: var(--border-radius-sm);
  overflow: hidden;
}
#iNews .newsBox:hover .date {
  color: #fff;
  background: var(--color-main);
}

#iNews .right .newsBox .date {
  left: -25px;
}

#iNews .newsBox .txt {
  position: absolute;
  bottom: -19px;
  left: 14%;
  padding: 17px 30px;
  width: 72%;
  font-size: 1.6rem;
  line-height: 1.6em;
  background: var(--color-beige-light);
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  border-radius: var(--border-radius-sm);
  overflow: hidden;
}
@media (max-width: 1199px) {
  #iNews .newsBox .txt{ position: relative }
  #iNews .newsBox .txt:after{ content: '. . .'; position: absolute; right: 15px; bottom: 0;  }
}

@media (max-width: 991px) {
  #iNews{ padding-bottom: 50px; }
}

@media (max-width: 767px) {
  #iNews .newsBox .txt:after{ display: none; }
  #iNews{ padding-bottom: 20px; }
  #iNews .left,
  #iNews .right {
    padding: 0 15px;
    float: none;
    box-sizing: border-box;
    width: 100%;
  }
  #iNews .newsBox,
  #iNews .newsBox .picBox {
    width: 100%;
    overflow: hidden;
  }
  #iNews .left .newsBox .date,
  #iNews .right .newsBox .date {
    left: 0;
  }
  #iNews .newsBox .txt {
    position: relative;
    left: 1px;
    bottom: 1px;
    width: 99%;
    height: 100%;
  }
  #iNews .newsBox:after,
  #iNews .newsBox.right:after {
    display: none;
  }
}

@media (max-width: 991px) {
  #iPro{ margin: 20px auto 0; }
}

#iPro {
  width: calc(100vw - 4%);
  overflow: hidden;
  position: relative;
  margin: 0 auto;
}

#iPro .pic { transition: all .3s ease; -o-transition: all .3s ease;-moz-transition: all .3s ease; -webkit-transition: all .3s ease; }

#iPro .linkBox {
  padding: 6% 20px;
  background: rgba(55, 142, 158, 0.8);
  text-align: center;
  position: absolute;
  top: 0;
  min-width: 30%;
  display: inline-block;
  height: 100%;
}

#iPro .pic img {
  width: 100%;
  display: block;
}

#iPro .title {
  position: relative;
  margin: 0 auto 37px;
  font-size: 2em;
  display: block;
  width: 90%;
  height: 2em;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #fff;
}

#iPro .title:after {
  content: '';
  width: 1px;
  height: 28px;
  position: absolute;
  left: 50%;
  top: 54px;
  background: #fff;
}

#iPro .txt {
  margin: 6% auto 0%;
  color: #fff;
  width: 100%;
  height: 3em;
  overflow: hidden;
}

#iPro .btnMore {
  display: inline-block;
  background: #fff;
  color: rgba(55, 142, 158, 1);
  padding: 10px;
  text-transform: uppercase;
  font-weight: bold;
  transition: all .3s ease; -o-transition: all .3s ease;-moz-transition: all .3s ease; -webkit-transition: all .3s ease;
}
#iPro:hover .btnMore{ background: #333; color: #fff; }
#iPro:hover .pic{ opacity: 0.8 }
@media (max-width: 1199px) {
  #iPro .linkBox {
    padding: 3% 5%;
  }
}

@media (max-width: 992px) {
  #iPro .linkBox {
    position: relative;
    width: 100%;
    height: auto;
    padding-bottom: 6%;
  }
  #iPro .txt {
    margin: 2% auto 0;
  }
}

#iInstgram {
  text-align: center;
}
#iInstgram .iTitle a {
  color: var(--color-main);
}
#iInstgram .iTitle a:hover {
  text-decoration: none;
}

#iInstgram .sTi {
  text-align: center;
  font-family: 'Hind', 'Arial', 'sans-serif';
  font-size: 14px;
  color: rgba(var(--color-main-rgba), .7);
  font-weight: normal;
}
#iInstgram .iTitle a:hover .sTi {
  text-decoration: underline;
}

#iInstgram .proBox {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

#iInstgram .proBox .pic {
  width: 100%;
  overflow: hidden;
}

#iInstgram .proBox .pic img {
  width: 100%;
  max-width: 100%;
  transition: all .3s ease; -o-transition: all .3s ease;-moz-transition: all .3s ease; -webkit-transition: all .3s ease;
}
#iInstgram .proBox:hover .pic img{-webkit-transform: scale(1.1); -ms-transform: scale(1.1); transform: scale(1.1);}
#iInstgram .owl-theme .owl-controls{ margin: 10px auto 20px; }
#iInstgram .owl-theme .owl-dots{ text-align: center; }
#iInstgram .owl-theme .owl-dots .owl-dot{ display: inline-block; }
#iInstgram .owl-theme .owl-dots .owl-dot span {
  width: 12px;
  height: 12px;
  margin: 4px;
  background: #ccc;
  display: block;
  -webkit-backface-visibility: visible;
  -webkit-transition: opacity 200ms ease;
  -moz-transition: opacity 200ms ease;
  -ms-transition: opacity 200ms ease;
  -o-transition: opacity 200ms ease;
  transition: opacity 200ms ease;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  border-radius: 30px;
  background: transparent;
  display: block;
  border: 1px solid #ccc;
}

#iInstgram .owl-theme .owl-dots .owl-dot.active span, #iInstgram .owl-theme .owl-dots .owl-dot:hover span {
  background: #ccc;
  text-align: center;
  width: 14px;
  height: 14px;
}

@media (max-width: 680px) {
  #iInstgram .proBox {
    margin: 0 auto;
    height: 100%;
  }
}

#iItems {
  position: relative;
  margin: 3% auto 6%;
  padding: 7% 0;
  background: rgba(var(--color-beige-rgba), .5);
}

#iItems:before {
  content: '';
  width: 5px;
  height: 101px;
  position: absolute;
  left: 50%;
  top: -50px;
  background: url('../images/line_1.png') no-repeat center center;
  margin-left: -3px;
}


#iItems:after {
  content: '';
  width: 5px;
  height: 101px;
  position: absolute;
  left: 50%;
  bottom: -50px;
  background: url('../images/line_1.png') no-repeat center center;
  margin-left: -3px;
}

#iItems .itemsBox {
  position: relative;
  border-radius: var(--border-radius-lg);
  overflow: hidden;
}

#iItems .itemsBox .more {
  display: block;
  position: absolute;
  left: 50%;
  color: #fff;
  border: 2px solid #fff;
  padding: 7px 25px;
  height: 40px;
  font-size: 1.2em;
  text-transform: uppercase;
  font-style: italic;
  margin-left: -75px;
  bottom: -50%;
  transition: all .3s ease;
  -o-transition: all .3s ease;
  -moz-transition: all .3s ease;
  -webkit-transition: all .3s ease;
}

#iItems .itemsBox:hover .more {
  bottom: 12%;
}

#iItems .itemsBox .play {
  display: block;
  position: absolute;
  top: 0%;
  opacity: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url('../images/play_icon.png') rgba(0, 0, 0, 0.5) center center no-repeat;
  transition: all .3s ease; -o-transition: all .3s ease;-moz-transition: all .3s ease; -webkit-transition: all .3s ease;
}

#iItems .itemsBox:hover .play {
  opacity: 1
}

#iItems .owl-prev,
#iItems .owl-next {
  position: absolute;
  top: 50%;
  margin-top: -23px;
  background: url('../images/left.png') center center no-repeat;
  width: 45px;
  height: 45px;
  box-sizing: border-box;
  border-radius: 45px;
  font-size: 0;
}

#iItems .owl-prev {
  left: -20px;
}

#iItems .owl-next {
  background: url('../images/right.png') center center no-repeat #403a3a;
  right: -20px;
}
@media (max-width: 991px) {
  #iItems { margin-bottom: 0 }
  #iItems:before {
  content: '';
  width: 5px;
  height: 35px;
  position: absolute;
  left: 50%;
  top: -35px;
  background: url(../images/line_1.png) no-repeat center top;
  margin-left: -3px;
  }
  #iItems:after {
    background: url(../images/line_1.png) no-repeat center bottom;
    top: 0;
    height: 35px;
    overflow: hidden;
  }
}

@media (max-width: 767px) {
  #iItems {
    margin: 6% auto 0;
  }
  #iItems .container {
    background-size: 90%
  }
  #iItems .owl-prev{ left: 5px; }
  #iItems .owl-next{ right: 5px; }
}
@media (max-width: 680px) {
  #iItems {
    padding-top: 11%;
  }
}

#page #share .iTitle{ background: url('../images/page_ti.png') no-repeat center top; } */

#iVodeo {
  margin: 25px auto;
  width: 100%;
  padding: 0;
}

.mfp-iframe-holder .mfp-close {
  color: #666;
}

.mfp-fade.mfp-bg {
  opacity: 0;
  -webkit-transition: all 0.15s ease-out;
  -moz-transition: all 0.15s ease-out;
  transition: all 0.15s ease-out;
}

.mfp-fade.mfp-bg.mfp-ready {
  opacity: 0.8;
}

.mfp-fade.mfp-bg.mfp-removing {
  opacity: 0;
}

.mfp-fade.mfp-wrap .mfp-content {
  opacity: 0;
  -webkit-transition: all 0.15s ease-out;
  -moz-transition: all 0.15s ease-out;
  transition: all 0.15s ease-out;
}

.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
}

.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}
@media (max-width: 991px) {
  #index .iTitle{ padding-top: 50px; background: url(../images/line_1.png) no-repeat center -60px;  margin-bottom: 10px;}
}

/*
==========================================
Page Set.
==========================================
*/

/* Title*/
#page .iTitle {
  margin: max(12px, 1.2vw) 0 16px;
  padding-top: 80px;
  font-family: var(--font-style-en);
  font-size: var(--size-headline);
  font-weight: 700;
  color: var(--color-main);
  text-align: center;
  text-transform: uppercase;
  line-height: 1;
  background: url('../images/page_ti.png') no-repeat center top;
}
#page #share .iTitle {
  margin-bottom: 25px;
}

#page .iTitle span {
  font-weight: normal;
}

#page .iSmalTi {
  margin: 0 auto max(30px, 2.8vw);
  font-family: var(--font-style-tw);
  font-size: 2rem;
  color: var(--color-main);
  font-weight: 700;
  text-align: center;
  line-height: 1;
}

#pBanner {
  width: 100%;
}
.is-fixed-header #pBanner {
  margin-top: var(--header-h);
}
#pBanner img {
  width: 100%
}
@media (max-width: 991px) {
  #pBanner {
    margin-top: var(--header-h);
  }
}

@media (max-width: 991px) {
  #page .iTitle { background-position: center -30px; padding-top: 50px;}
  #page #share .iTitle { padding-top: 35px; margin-bottom: 15px; background: url(../images/page_ti.png) no-repeat center -35px; }
  #page #share { margin-bottom: 10px }
}

.pContent {
  margin: 0 auto;
  width: 70%;
}
.pContentSm {
  margin: 5% auto;
}
@media (max-width: 1366px) {
  .pContent {
    width: 100%;
  }
}

.breadcrumb {
  margin-bottom: 0;
  padding: 8px 0;
  font-size: 1.3rem;
  background: transparent;
}
.breadcrumb img {
  margin-top: -2px;
  vertical-align: middle;
}
.breadcrumb a {
  color: rgba(var(--color-secondary-rgba), 0.7);
}
.breadcrumb a.active {
  color: var(--color-main);
}
.breadcrumb a:hover {
  color: var(--color-main);
}

.pMain {
  width: 81%;
  float: right;
}

#aside {
  float: left;
  width: 17%;
  margin: 0 1% 0 0;
}


/* ASIDE 選單 */
#navCategory {
  letter-spacing: 0;
  background: #fff;
  border-radius: var(--border-radius-md);
  overflow: hidden;
}
#navCategory > li:last-child a {
  padding-bottom: 20px;
}
#navCategory > li.has-child,
#navCategory > li.current {
  background-position: 15px -6px;
}
#navCategory > li > a {
  display: block;
  color: rgba(var(--color-main-rgba), .7);
  padding: 12px 15px 8px 40px;
  font-size: 1.5rem;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
#navCategory > li > a:hover {
  color: var(--color-main);
  text-decoration: none;
}

#navCategory > li > ul {
  background: url(../images/aside_sub_bg.png) 15px center repeat-y #fff;
}
#navCategory > li.current > ul > li > a {
  background-color: rgba(var(--color-beige-rgba),.5);
}

#navCategory > li > ul > li > a {
  display: block;
  padding: 8px 5px 2px 55px;
  width: 100%;
  color: rgba(var(--color-main-rgba), .7);
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 1.4;
  overflow: hidden;
}

#navCategory > li > a.current {
  color: var(--color-main);
}
#navCategory > li > ul > li > a:hover {
  color: var(--color-main);
  text-decoration: underline
}

#navCategory > li:last-child {
  background: url('../images/aside_li_bg_last.png') 15px top no-repeat;
}

#navCategory > li > a.asideImg {
  display: block;
  width: 100%;
  height: auto;
  margin: 20px auto;
  border: 1px solid #ccc;
  padding: 0;
}

#navCategory > li > a.asideImg img {
  width: 100%;
}

@media (min-width: 992px) {
  .md-show {
    display: none;
  }
  #navCategory {
    vertical-align: top;
    width: 100%;
    border-right: rgba(var(--color-beige-rgba), .8) solid 1px;
    border-bottom: rgba(var(--color-beige-rgba), .8) solid 1px;
  }
  #navCategory h2 {
    font-weight: normal;
    font-size: 1.7rem;
    color: #fff;
    padding: 15px 0 13px 40px;
    margin: 0;
  }
  #navCategory > li {
    width: auto;
    padding: 0;
    background: url('../images/aside_li_bg.png') 15px center repeat-y;
  }
  #navCategory > li:first-child {
    background: url('../images/aside_ti_bg.png') 20px 125% no-repeat rgba(var(--color-secondary-rgba), 0.8);
  }

  #navCategory > li:first-child,
  #navCategory > li:last-child {
    border: none;
  }
}

@media screen and (max-width: 991px) {
  .pMain {
    width: 100%;
    float: none;
  }
  .md-show {
    display: block;
  }
  #aside {
    float: none;
    width: 100%;
    margin-top: 16px;
    margin-bottom: 16px;
    padding: 0;
    box-sizing: border-box;
    position: relative;
  }
  .navCateBtn {
    position: relative;
    margin-top: 15px;
    padding: 0 15px 0 35px;
    font-size: 15px;
    cursor: pointer;
    background: url('../images/aside_ti_bg.png') 20px bottom no-repeat rgba(var(--color-main-rgba), .8);
    color: #fff;
    border-radius: var(--border-radius-sm);
    overflow: hidden;
  }
  .navCateBtn span {
    display: inline-block;
    padding: 9px 0 4px;
  }
  .navCateBtn .icon {
    position: absolute;
    right: 15px;
    font-size: 12px;
    font-weight: 100;
    top: 50%;
    color: #fff;
    transform: translate(-50%, -50%);
  }
  .navCateBtn .icon.iconDel {
    display: none;
    padding-top: 11px;
  }

  #navCategory {
    margin: 0;
    width: 100%;
    display: none;
    padding: 0;
  }
  #navCategory > li {
    margin: 0;
    padding-left: 15px;
    padding: 0;
    display: block;
    background: url('../images/aside_li_bg.png') 15px center no-repeat;
  }
  #navCategory > li:last-child {
    background: url('../images/aside_li_bg_last.png') 15px -9px no-repeat;
  }
  #navCategory li a {
    display: block;
    box-sizing: border-box;
    padding: 13px 35px 7px;
  }

  #navCategory > li > a > li > a.current {
    background: #fff;
    color: #333;
  }
  #navCategory > li > a > li > a.current:hover {
    color: #000;
  }
  #navCategory > li.current > ul {
    margin-bottom: 0;
  }
  #navCategory > li h2 {
    margin: 0;
    font-size: 13px;
    opacity: 0;
    display: none;
  }
}

/* pager */
.p-pager {
text-align: center;
font-size: 0;
margin: 30px 0 50px;
}

.p-pager a {
  display: inline-block;
  height: 28px;
  line-height: 27px;
  font-size: 12px;
  color: var(--color-main);
  border: 1px solid rgba(var(--color-main-rgba), .2);
  text-align: center;
  margin: 2px 5px;
  text-decoration: none;
  font-family: 'Arial';
  border-radius: 100%;
}

.p-pager a.prev,
.p-pager a.next {
  width: 28px;
}

.p-pager a.num {
  width: 28px;
}

.p-pager a:hover,
.p-pager a:active {
  background: rgba(var(--color-beige-rgba), 0.5);
}

.p-pager a.current {
  color: #fff;
  border-color: transparent;
  background: rgba(var(--color-main-rgba), 0.7);
}

.p-pager a.disable {
  color: rgba(var(--color-main-rgba), 0.5);
  background: rgba(var(--color-beige-rgba), 0.35);
  cursor: not-allowed;
}

.center {
  text-align: center;
  margin: 0 auto;
}

/*
==========================================
  Products list Set.
==========================================
*/
#proList .pMain{ width: 78%;}
#proList .proBox{ margin-bottom: 5%; }
#proList .proBox .picBox{
  width: 100%;
  position: relative;
  overflow: hidden;
  margin-bottom: 5%;
  display: block;
}
#proList .proBox .picBox .pic {
  position: relative;
  border-radius: var(--border-radius-lg);
  overflow: hidden;
}
#proList .proBox .picBox .pic::after {
  display: block;
  content: "";
  padding-bottom: 100%;
  width: 100%;
}
#proList .proBox .picBox .pic img{
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100% !important;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
#proList .proBox .hover {
  display: block;
  position: absolute;
  z-index: 2;
  background: url('../images/icon_search.png') no-repeat rgba(var(--color-main-rgba), .85) center center;
  top: 20%;
  left: 20%;
  width: 60%;
  height: 60%;
  border-radius: 100%;
  text-align: center;
  overflow: hidden;
  font-size: 0.8em;
  font-family: 'Arial';
  padding-top: 40%;
  color: #fff;
  opacity: 0;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
  transition: all .3s ease;
  -o-transition: all .3s ease;
  -moz-transition: all .3s ease;
  -webkit-transition: all .3s ease;
}

#proList .proBox:hover .hover {
  opacity: 1;
}
#proList .proBox .title {
  display: block;
  height: 1.8em;
  font-family: var(--font-style-tw);
  font-size: 1.5rem;
  color: var(--color-main);
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: center;
}
#proList .proBox .price {
  margin: 2% 0 3%;
  font-family: var(--font-style-en);
  color: var(--color-main);
  text-align: center;
  /*letter-spacing: -.01rem;*/
}
#proList .proBox .price .oldPrice {
  text-decoration: line-through;
  margin-right: 20px;
}
#proList .proBox .price .new {
  margin-right: 20px;
}

@media screen and (max-width: 991px) {
  #proList .pMain {
  width: 100%;
  }
}

@media screen and (max-width: 767px) {
  #proList .proBox {
  width: 50%;
  float: left;
  }
}

@media screen and (max-width: 480px) {
  #proList .proBox {
  width: 100%;
  float: left;
  }
}

/* ==== prod view ==== */
#prod-view .data-top {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 auto;
  max-width: 1440px;
}
#prod-view .data-top .pic {
  width: 51.522%;
  max-width: 730px;
}
#prod-view .data-top .txt {
  padding: 0 var(--spacing) 0 97px;
  width: calc(100% - 51.522%);
  max-width: calc(97px + 370px + var(--spacing));
}

.prod-swiper img {
  max-width: 730px !important;
}
.prod-swiper .btn-control {
  position: absolute;
  left: 50%;
  bottom: 40px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.gallery-thumbs .swiper-slide a {
  display: block;
  width: 100%;
  background-color: #fff;
}
.gallery-thumbs .swiper-slide:not(.swiper-slide-thumb-active) img {
  opacity: .5;
}

#prod-view .data-top .name {
  margin: 0 0 var(--box-spac) 0;
  font-family: var(--font-style-mix);
  font-size: var(--size-headline);
  color: var(--color-main);
  font-weight: 700;
  line-height: 1.6;
}

#prod-view .data-top .brief {
  font-family: 'NotoSansCJKtc', 'Microsoft JhengHei', '微軟正黑體';
  color: var(--color-secondary);
}
#prod-view .data-top .brief ul li {
  position: relative;
  padding-left: 14px;
  line-height: 1.6;
}
#prod-view .data-top .brief ul li::before {
  display: block;
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
  width: 4px;
  height: 4px;
  border-radius: 100%;
  background-color: var(--color-secondary);
}
#prod-view .data-top .brief ul li:not(:last-child) {
  margin-bottom: 4px;
}

#prod-view .data-top .color-box {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  position: relative;
  margin-top: var(--box-spac);
  width: 100%;
}
#prod-view .data-top .color-box .list {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 285px;
  flex: 0 0 285px;
}
#prod-view .data-top .color-box a {
  display: block;
  margin: 0 1px 1px 0;
  padding: 5px;
  max-width: 56px;
  border: #fff solid 1px;
  border-radius: var(--border-radius-sm);
  overflow: hidden;
}
#prod-view .data-top .color-box a:hover,
#prod-view .data-top .color-box a.current {
  border: var(--color-main) solid 1px;
}
#prod-view .data-top .color-box img {
  width: 44px !important;
  border-radius: var(--border-radius-sx);
  overflow: hidden;
}
#prod-view .data-top .color-box span {
  display: block;
  width: 44px;
  height: 44px;
}
#prod-view .data-top .color-box .color-name {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 calc(100% - 285px);
  flex: 0 0 calc(100% - 285px);
  padding: 0 0 3px 5px;
  font-size: 1.35rem;
  color: var(--color-secondary);
  font-weight: 300;
  word-break: normal;
  line-height: 1.2;
}

#prod-view .data-top .price {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: var(--box-spac) 0;
  font-family: var(--font-style-en);
  font-weight: 500;
  line-height: 1;
}
#prod-view .data-top .price .old-price {
  margin-right: 15px;
  font-size: 1.7rem;
  color: #666;
  text-decoration: line-through;
}
#prod-view .data-top .price .new {
  margin-right: 15px;
  font-size: 2.4rem;
  color: var(--color-main);
}
#prod-view .data-top .price .sale {
  padding: 6px 16px 4px;
  font-size: 1.2rem;
  color: #fff;
  border-radius: 20px;
  background: rgba(0, 0, 0, .5);
}

#prod-view .data-top .operate-btn .qu-select {
  margin-bottom: 8px;
}
#prod-view .data-top .operate-btn .btn-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  gap: 6px;
}
#prod-view .data-top .operate-btn .btn-group a {
  width: 33.333%;
  max-width: 100%;
}

@media (min-width: 768px) {
  .gallery-thumbs {
    display: none;
  }
}

@media (max-width: 1279px) {
  #prod-view .data-top .txt {
    padding-left: 50px;
  }
}
@media (max-width: 1079px) {
  #prod-view .data-top .txt {
    padding-left: var(--spacing);
  }
  #prod-view .data-top .color-box .list {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 265px;
    flex: 0 0 265px;
  }
  #prod-view .data-top .color-box a {
    padding: 4px;
    max-width: 52px;
  }
  #prod-view .data-top .color-box img {
    width: 42px !important;
  }
  #prod-view .data-top .color-box span {
    width: 42px;
    height: 42px;
  }
  #prod-view .data-top .color-box .color-name {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc(100% - 265px);
    flex: 0 0 calc(100% - 265px);
  }
}
@media (max-width: 1024px) {
  .mb #prod-view .data-top .color-box .color-name {
    display: none !important;
  }
  .mb #prod-view .data-top .color-box .list {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
  }
}
@media (max-width: 991px) {
  #prod-view .data-top {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  #prod-view .data-top .txt {
    padding-top: 10px;
    padding-bottom: 15px;
  }
  .prod-swiper .btn-control {
    bottom: 15px;
  }
}
@media (max-width: 849px) {
  .pc #prod-view .data-top .color-box .color-name {
    display: none !important;
  }
  .pc #prod-view .data-top .color-box .list {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
  }
  #prod-view .data-top .price .sale {
    margin-top: 8px;
  }
}
@media (max-width: 767px) {
  #prod-view .data-top .pic {
    width: 100%;
    max-width: 100%;
  }
  #prod-view .data-top .txt {
    padding: var(--box-spac) var(--spacing);
    width: 100%;
    max-width: 100%;
  }
  #prod-view .data-top .name {
    margin-bottom: calc(var(--box-spac) - 15px);
  }
  #prod-view .data-top .color-box {
    margin-top: calc(var(--box-spac) - 10px);
  }
  .prod-swiper .btn-control {
    position: absolute;
    left: unset;
    right: calc(var(--spacing) - 5px);
    transform: none;
  }
  #prod-view .data-top .price .old-price {
    margin-right: 10px;
  }
  #prod-view .data-top .price .new {
    margin-right: 10px;
  }
  #prod-view .data-top .price .sale {
    margin-top: 0;
    padding: 5px 10px;
  }
}
@media (max-width: 374px) {
  #prod-view .data-top .price .sale {
    margin-top: 8px;
  }
}

/* 規格 */
#prod-view .specification {
  position: relative;
  margin: 0 auto;
  padding: 120px 0;
  max-width: 1440px;
  background-color: var(--color-main);
}
#prod-view .specification .container-1190 {
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  position: relative;
  z-index: 2;
}
#prod-view .specification .pic-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto 100%;
  -webkit-transition: background .5s;
  transition: background .5s;
}
#prod-view .specification .pic-bg::before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  background-color: rgba(0,0,0,.4);
  -webkit-transition: opacity .5s;
  transition: opacity .5s;
}
#prod-view .specification .pic-bg.is-mask::before {
  opacity: 1;
}
#prod-view .specification .pic-box {
  padding-left: 97px;
  width: calc(100% - 50.841%);
}
#prod-view .specification .pic-box .wrap {
  position: relative;
  width: 96.315%;
  max-width: 470px;
  border-radius: var(--border-radius-lg);
  overflow: hidden;
}
#prod-view .specification .pic-box .wrap::after {
  display: block;
  content: "";
  padding-bottom: 100%;
  width: 100%;
}
#prod-view .specification .pic-box #js-img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  overflow: hidden;
}
#prod-view .specification .pic-box #js-img.is-in {
  -webkit-animation: ani_slickIn 1s both;
          animation: ani_slickIn 1s both;
}
@keyframes ani_slickIn {
  0% {
    opacity: 0;
    transform: scale(1.08);
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
#prod-view .specification .list {
  width: 50.841%;
  color: #fff;
}
#prod-view .specification .item .img {
  display: none;
}
#prod-view .specification .item .box-ti {
  position: relative;
  padding: 10px 0;
  cursor: pointer;
  border-bottom: #fff solid 1px;
}
#prod-view .specification .item .ti {
  margin: 0;
  font-family: var(--font-style-mix);
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.45;
}
#prod-view .specification .item .ti span {
  padding-left: 10px;
}
#prod-view .specification .item .btn-view {
  position: absolute;
  top: 14.5px;
  right: 0;
  width: 12px;
  height: 12px;
}
#prod-view .specification .item .btn-view::before,
#prod-view .specification .item .btn-view::after {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 1px;
  background-color: #fff;
  transition: all .3s;
}
#prod-view .specification .item .btn-view::before {
  transform: translate(-50%, -50%);
}
#prod-view .specification .item .btn-view::after {
  transform: translate(-50%, -50%) rotate(-90deg);
}
#prod-view .specification .item.is-open .btn-view::before {
  opacity: 0;
}
#prod-view .specification .item.is-open .btn-view::after {
  transform: translate(-50%, -50%) rotate(180deg);
}
#prod-view .specification .item .box-txt {
  display: none;
  padding: 35px 0;
  max-width: 470px;
}
#prod-view .specification .item .brief {
  line-height: 1.6;
}

@media (max-width: 1279px) {
  #prod-view .specification .pic-box {
    padding-left: 50px;
  }
}
@media (max-width: 991px) {
  #prod-view .specification .pic-box {
    padding-left: var(--spacing);
  }
  #prod-view .specification .pic-box .wrap {
    width: 100%;
    max-width: 100%;
  }
}
@media (max-width: 767px) {
  #prod-view .specification {
    padding: 0 0 var(--box-spac);
    background-color: #fff;
  }
  #prod-view .specification .pic-bg {
    display: none !important;
  }
  #prod-view .specification .container-1190 {
    padding: 0
  }
  #prod-view .specification .pic-box {
    padding-left: 0;
    width: 100%;
  }
  #prod-view .specification .list {
    padding: calc(var(--box-spac) - 20px) var(--spacing) 0;
    width: 100%;
    color: #000;
  }
  #prod-view .specification .item .box-ti {
    padding: 12px 20px 8px 0;
    font-size: 1.6rem;
    border-bottom-color: #000;
  }
  #prod-view .specification .item .ti span {
    padding-left: 5px;
  }
  #prod-view .specification .item .btn-view {
    top: 17px;
    width: 10px;
    height: 10px;
  }
  #prod-view .specification .item .btn-view::before,
  #prod-view .specification .item .btn-view::after {
    background-color: #000;
  }
  #prod-view .specification .item .box-txt {
    padding: 30px 0;
    max-width: 100%;
  }
}

/* 介紹 */
#prod-view .intro {
  padding-top: 60px;
}
#prod-view .intro .text-display {
  transform: translateY(0);
}
#prod-view .intro .text-display .slider-sync__text,
#prod-view .intro .text-display .headline {
  position: relative;
  left: calc(100% - 370px);
  max-width: 370px;
  text-align: left;
}
#prod-view .intro .text-display .headline {
  margin-bottom: 25px;
}
#prod-view .intro > .headline {
  display: none;
}
#prod-view .intro .text2 {
  margin-bottom: 15px;
  font-family: var(--font-style-tw);
  font-size: 1.7rem;
  font-weight: 700;
}
#prod-view .intro .text2 span {
  padding-right: 8px;
}
#prod-view .intro .text3 {
  min-height: 112px;
}

#prod-view .intro .list {
  display: none;
}

.slider-sync__wrap.slider-pc {
  display: block !important;
}
.slider-sync__wrap.slider-mb {
  display: none !important;
}

/*
 * 單張多圖輪播/進離場客製化
 */
.slider-sync__wrap {
  position: relative;
  padding-top: 200px;
  padding-bottom: 100px;
  overflow: hidden;
}
.slider-sync__list {
  position: relative;
  z-index: 0;
}
.slider-sync__item {
  position: relative;
  cursor: pointer;
}
.slider-sync__item .img {
  position: relative;
  padding-bottom: 128.379%;
  border-radius: var(--border-radius-lg);
  overflow: hidden;

}
.slider-sync__item img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  transform: translate(-50%, -50%);
}
.slider-sync__list .num {
  padding: 10px 0 0 20px;
  font-family: var(--font-style-en);
  font-size: 2rem;
  font-weight: 700;
}
.slider-sync__item .txt {
  display: none;
  pointer-events: none;
}

@media (min-width: 768px) {
  #prod-view .intro .btn-wrap {
    position: absolute;
    z-index: 11;
    bottom: 35%;
    right: var(--spacing);
  }
}

@media (max-width: 1079px) {
  #prod-view .intro {
    padding-top: 20px;
  }
}
@media (max-width: 991px) {
  #prod-view .intro {
    padding-top: 0;
  }
  .slider-sync__wrap {
    padding-top: 180px;
  }
}
@media (max-width: 767px) {
  #prod-view .intro {
    padding-bottom: calc(var(--box-spac) - 10px);
  }
  #prod-view .intro .container-1190 {
    padding-right: 0;
  }
  #prod-view .intro > .headline {
    display: block;
  }
  #prod-view .intro > .text-display {
    display: none;
  }
  #prod-view .intro .btn-wrap {
    margin: 20px -5px 0 0;
  }
  #prod-view .intro .btn-wrap .btn-control {
    display: inline-block;
  }

  .slider-sync__wrap.slider-pc {
    display: none !important;
  }
  .slider-sync__wrap.slider-mb {
    display: block !important;
  }

  .slider-sync__wrap {
    padding: 0;
    overflow: visible;
  }
  .slider-sync__item.swiper-slide-active {
    z-index: 2;
  }
  .slider-sync__item .img,
  .slider-sync__item .num {
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
  }
  .slider-sync__item .img {
    padding-bottom: 100%;
    transform: translate(-70px, 15px) !important;
  }
  .slider-sync__item .num {
    transform: translate(-70px, 15px) !important;
  }
  .slider-sync__item.swiper-slide-active .img,
  .slider-sync__item.swiper-slide-active .num {
    transform: translate(0) !important;
  }
  .slider-sync__item .txt {
    margin-top: calc(var(--box-spac) - 20px);
    opacity: 0;
  }
  .slider-sync__item.swiper-slide-active .txt {
    display: block;
  }

  .slider-sync__item.is-in .txt {
    -webkit-animation: ani_slideIn 1s both;
            animation: ani_slideIn 1s both;
  }
  .slider-sync__item.is-out .txt {
    -webkit-animation: ani_slideOut 1s both;
            animation: ani_slideOut 1s both;
  }
}

/* 其他資訊 */
#prod-view .others {
  position: relative;
  margin: 0 auto;
  padding-bottom: var(--box-spac-pc);
  max-width: 1440px;
}
.others-swiper {
  width: 100%;
}
.others-swiper .control-wrap {
  position: relative;
  left: calc(100% - 49.306%);
  margin-top: 20px;
  width: 49.306%;
  max-width: 710px;
}
.others-swiper .control-wrap .btn-control {
  margin: 0 auto;
}

.others-swiper .slider-item.flex {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  align-items: center;
}
.others-swiper .slider-item .pic {
  position: relative;
  width: 49.306%;
  max-width: 710px;
  border-radius: var(--border-radius-lg);
  overflow: hidden;

}
.others-swiper .slider-item .pic::before {
  display: block;
  content: "";
  padding-bottom: 71.5%;
  width: 100%;
}
.others-swiper .slider-item .pic img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.others-swiper .slider-item .txt {
  opacity: 0;
  padding: 0 7.5vw 0 calc((100% - 1190px) / 2);
  width: calc(100% - 49.306%);
}

.others-swiper .slider-item.is-in .txt {
  -webkit-animation: ani_slideIn 1s both;
          animation: ani_slideIn 1s both;
}
.others-swiper .slider-item.is-out .txt {
  -webkit-animation: ani_slideOut 1s both;
          animation: ani_slideOut 1s both;
}

@media (max-width: 1279px) {
  .others-swiper .swiper-slide .txt {
    padding-left: var(--spacing);
  }
}
@media (max-width: 1079px) {
  .others-swiper .swiper-slide .txt {
    padding-right: var(--spacing);
  }
}

@media (max-width: 767px) {
  #prod-view .others {
    padding: 0 0 calc(var(--box-spac) - 10px);
  }

  .others-swiper .slider-item .pic {
    width: 100%;
    max-width: 100%;
  }
  .others-swiper .slider-item .txt {
    padding-top: calc(var(--box-spac) * 1.2);
    width: 100%;
  }

  .others-swiper .control-wrap {
    position: absolute;
    z-index: 2;
    top: 0;
    right: 0;
    left: 0;
    width: 100%;
    max-width: 100%;
  }
  .others-swiper .control-wrap::after {
    display: block;
    content: "";
    padding-bottom: calc(71.5% + 6%);
    width: 100%;
  }
  .others-swiper .control-wrap .btn-control {
    position: absolute;
    bottom: 0;
    right: calc(var(--spacing) - 5px);
  }
}

/* 情境展示 */
#prod-view .exhibit {
  position: relative;
  padding-bottom: var(--box-spac-pc);
}
.cross-slider-wrap {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
}
.cross-slider-wrap > .btn-control {
  display: none;
}
.cross-slider-wrap .img {
  position: relative;
  border-radius: var(--border-radius-lg);
  overflow: hidden;

}
.cross-slider-wrap img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
}
.cross-slider-wrap .swiper-slide {
  position: relative;
}

.cross-slider-source {
  display: none;
}

.cross-slider-single-wrap {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 590px;
          flex: 0 0 590px;
  position: relative;
  z-index: 0;
  /*width: 31.004%;*/
  max-width: 590px;
  overflow: hidden;
}
.cross-slider-single {
  /*width: 122.891vw;*/
  width: 400%;
}
.cross-slider-single .img {
  /*aspect-ratio: 0.855;*/
  padding-bottom: 116.95%;
}
.cross-slider-single .txt {
  display: none;
}
.cross-slider-single .swiper-slide {
  pointer-events: none;
}
.cross-slider-single .swiper-slide.swiper-slide-active {
  pointer-events: auto;
}

.cross-slider-mutiple-wrap {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  position: relative;
  z-index: 2;
  margin-left: 15px;
  overflow: hidden;
}
.cross-slider-mutiple {
  width: 135.94%;
}
.cross-slider-mutiple .swiper-slide {
  cursor: pointer;
}
.cross-slider-mutiple .swiper-slide .img {
  aspect-ratio: 1.41;
}
.cross-slider-mutiple .swiper-slide .txt {
  display: none;
}
.cross-slider-mutiple .swiper-slide-active {
  position: relative;
}
.cross-slider-mutiple .swiper-slide-active::before {
  display: block;
  content: "";
  position: absolute;
  z-index: 15;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#prod-view .exhibit .text-display {
  position: absolute;
  bottom: var(--box-spac-pc);
  right: calc((100% - 1190px) / 2);
  width: 370px;
}
/*#prod-view .exhibit .text-display .brief {
  opacity: 0;
}*/
#prod-view .exhibit .text-display .brief.is-in {
  -webkit-animation: ani_slideIn 1s both;
          animation: ani_slideIn 1s both;
}
#prod-view .exhibit .text-display .brief.is-out {
  -webkit-animation: ani_slideOut 1s both;
          animation: ani_slideOut 1s both;
}

.cross-slider-single .control-wrap {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  max-width: 590px;
}
.cross-slider-single .control-wrap::after {
  display: block;
  content: "";
  padding-bottom: 116.95%;
  width: 100%;
}
.cross-slider-single .control-wrap .btn-control {
  position: absolute;
  left: var(--spacing);
  bottom: calc(var(--spacing) - 15px);
}

@media (max-width: 1559px) {
  .cross-slider-mutiple {
    width: 215.974%;
  }
}
@media (max-width: 1279px) {
  .cross-slider-single-wrap {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 500px;
    flex: 0 0 500px;
    max-width: 500px;
  }
  .cross-slider-mutiple {
    width: 255%;
  }
  #prod-view .exhibit .text-display {
    right: var(--spacing);
  }
}
@media (max-width: 991px) {
  .cross-slider-single-wrap {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 45%;
    flex: 0 0 45%;
    max-width: 45%;
  }
  .cross-slider-mutiple {
    width: 320%;
  }
  .cross-slider-wrap > .btn-control {
    display: block;
    position: absolute;
    left: calc(45% + 15px);
    bottom: 0;
  }
  .cross-slider-single .control-wrap {
    display: none;
  }
  #prod-view .exhibit .text-display {
    position: static;
    right: unset;
    bottom: unset;
    padding: var(--box-spac) var(--spacing) 0;
    width: 100%;
  }
}
@media (max-width: 839px) {
  .cross-slider-single-wrap {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 68%;
    flex: 0 0 68%;
    max-width: 68%;
  }
  .cross-slider-mutiple {
    width: 1200%;
  }
  .cross-slider-wrap > .btn-control {
    left: calc(68% + 15px);
    bottom: 0;
  }
}
@media (max-width: 767px) {
  #prod-view .exhibit {
    padding: 0 0 calc(var(--box-spac) - 10px);
  }
  #prod-view .exhibit .wrap-style {
    padding: 0;
  }
  .cross-slider-single-wrap {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc(100% - 100px - 15px);
    flex: 0 0 calc(100% - 100px - 15px);
    max-width: calc(100% - 100px - 15px);
  }
  .cross-slider-mutiple-wrap {
    max-width: 100px;
  }
  .cross-slider-wrap > .btn-control {
    left: calc(100% - 105px);
    bottom: 20px;
  }
}
@media (max-width: 439px) {
  .cross-slider-mutiple {
    width: 1398.5%;
  }
}

/* 推薦商品 */
#prod-view .recommend {
  position: relative;
}
.recommend-swiper {
  margin: 0 -8.5px;
}
.recommend-swiper .swiper-slide {
  padding: 0 8.5px;
  width: 25%;
  max-width: 467px;
}
.recommend-swiper .swiper-slide a {
  display: block;
  position: relative;
  padding-bottom: 67.778%;
  width: 100%;
  border-radius: var(--border-radius-lg);
  overflow: hidden;
}
.recommend-swiper .swiper-slide img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
}

#prod-view .recommend > .txt-right {
  padding-right: calc(var(--spacing) - 5px);
}

@media (min-width: 768px) {
  #prod-view .recommend > .txt-right {
    position: absolute;
    top: -8px;
    right: 0;
  }
}
@media (min-width: 1280px) {
  #prod-view .recommend > .txt-right {
    right: calc((100% - var(--wrap-1190)) / 2 - 5px );
    padding-right: 0;
  }
}

@media (max-width: 1439px) {
  .recommend-swiper .swiper-slide {
    width: 33.333%;
  }
}
@media (max-width: 767px) {
  #prod-view .recommend {
    padding: 0 0 var(--box-spac);
  }
  .recommend-swiper {
    margin: 0 -10px;
  }
  .recommend-swiper .swiper-slide {
    padding: 0 10px;
    width: 50%;
  }
  .recommend-swiper .swiper-slide a {
    padding-bottom: 100%;
  }
  #prod-view .recommend > .txt-right {
    padding-top: var(--spacing);
  }
  #prod-view .recommend .btn-control {
    display: inline-block;
  }
}

/*
2023.07.18 更新 結束
*/

#share {
  text-align: center;
  margin: 0 auto;
  background: #fff;
  padding-bottom: 50px;
}

#page #share .iTitle {
  background: none;
}

#share .shareIcon {
  display: inline-block;
  width: 35px;
  height: 35px;
  border-radius: 35px;
  color: #fff;
  line-height: 35px;
  font-size: 1.3em;
  margin: 0 5px;
}

#share .shareIcon:hover {
  opacity: 0.9;
}

#share .iTitle {
  background: none;
  margin-top: 0;
  padding: 0;
}

#share .shareIcon.fb {
  background: #3765a3;
}

#share .shareIcon.instg {
  background: url('../images/icon_instg.png')
}

/*
==========================================
  About Set.
==========================================
*/
.about #footer { margin-top: 0; }
#about .aboutBan { position: relative; }
#about .aboutBan .boxOne img{ width: 100%; max-width: 100%; }
#about .aboutBan .iTitle{ position: absolute; top: 395px; left:50%; margin-left: -55px; color: #fff; background: none;}
#about .aboutBan .iSmalTi{ position: absolute; top: 505px; left:50%; margin-left: -25px; color: #fff; }
#about .aboutBan .breadcrumb{ position: absolute; bottom: 0;}
#about .aboutBan .breadcrumb a{ color: #fff; }
#about .boxTwo{ background: url('../images/about_img.jpg') center center no-repeat; line-height: 2em; padding-bottom: 50px; background-size: cover; min-height: 400px; }
#about .boxTwo p { margin-bottom: 20px; font-size: 1.4rem;}
#about .boxTwo .iTitle{ text-align: left; background: transparent; }
#about .boxTwo .iSmalTi{text-align: left;margin-bottom: 4%;}
#about .boxThree{ position: relative; background: url('../images/view_bg.png'); text-align: center; padding: 4% 0; }
#about .boxThree .container{ width: 55%; }
#about .boxThree .brandTxt{ text-align: center; margin: 0 auto 4%; color: #fff; font-size: 1.3em; text-shadow: 1px 1px 4px rgba(0,0,0,0.2); }
#about .boxThree .brandTxt img{ width: 450px; margin: 0 auto 8px;}
#about .boxThree .imgBox img{ max-width: 168px; margin: 0 auto; width: 100%;}
#about .boxThree .imgBox p{ margin: 20px auto; font-size: 1.2em; color: #fff; text-shadow: 1px 1px 4px rgba(0,0,0,0.2); }
#about .boxThree:after{ content: ''; width: 5px; height: 55px; position: absolute; bottom: 0; left: 50%; background: url('../images/page_ti_2_w.png') center top no-repeat; margin-left: -2px; }
#about .boxFour{ position: relative; background: url('../images/about_img2.jpg') center top no-repeat; background-size: cover;}
#about .boxFour .container{ background: url('../images/page_ti.png') no-repeat center top; }
#about .boxFour .container .box { position: relative; width: 75%; background: rgba(255, 255, 255, 0.9); margin: 8% auto; padding: 30px 30px 60px; text-align: center; line-height: 2em; border-radius: var(--border-radius-lg);}
#about .boxFour .container .box:after{ content: ''; position: absolute; left: 20px; top: 20px; width: 100%; height: 100%; border: 3px solid rgba(255, 255, 255, 0.8); border-radius: var(--border-radius-lg); overflow: hidden;}
#about .boxFour .container .box .iTitle{ background: none; margin-bottom: 10px; }
#about .boxFour:after{ content: ''; width: 5px; height: 55px; position: absolute; bottom: 0; left: 50%; background: url('../images/page_ti_2_w.png') center top no-repeat; margin-left: -2px; }
#about .boxFour .container .box P{ margin-bottom: 30px; font-size: 1.4rem;}

@media screen and (max-width: 1199px) {
  #about .aboutBan .iTitle{
  top: 200px; }
  #about .aboutBan .iSmalTi{ top: 300px; }
  #about .aboutBan .breadcrumb{ margin-bottom: 5px; }
  #about .boxTwo br{ display: none; }
  #about .boxThree .container{ width: 65%; }
}
@media screen and (max-width: 991px) {
  #about .aboutBan .iTitle{ top: 90px; }
  #about .aboutBan .iSmalTi{ top: 200px; }
  #about .boxThree .container{ width: 100%;}
}
@media screen and (max-width: 767px) {
  #about .boxThree{ padding: 10% 0; }
  #about .aboutBan{ margin-top: 55px; }
  #about .boxFour .container .box{ text-align: left; width: 95%; margin: 24% auto;}
  #about .boxFour .container .box .iTitle { margin-bottom: 20px; }
  #about .boxFour .container .box .xs-ta-c { text-align: center; }
  #about .boxFour .container .box .xs-ta-r { text-align: right; }
}
@media screen and (max-width: 680px) {
  #about .aboutBan .iTitle{ top: 50px; left: 0; margin: 0; }
  #about .aboutBan .iSmalTi{ top: 0; left: 0; }
  #about .aboutBan .iTitle{ position: relative; color: #333; margin: 0; top: 0; padding-top: 20px;}
  #about .aboutBan .iSmalTi{ position: relative; color: #666; margin: 0 auto 40px}
  #about .aboutBan{ margin-top: 55px; }
  #about .boxTwo{ margin-top: 50px; }
  #about .boxFour .container .box:after{ left: 10px; top: 10px; border-width: 2px; }
  #about .boxFour br{ display: none; }
}
@media screen and (max-width: 480px) {
  #about .boxThree .imgBox{ width: 100%; }
}

/*
==========================================
  NEWS Set.
==========================================
*/
#news .item {
	width: 31.333333%;
	margin: 0 1% 50px;
	border-bottom: 1px solid rgba(var(--color-secondary-rgba), 0.35);
  border-radius: var(--border-radius-lg);
  overflow: hidden;
}

#news .newsBox {
	position: relative;
	background: #fff;
	overflow: hidden
}

#news .newsBox .date {
	position: absolute;
	background: rgba(255, 255, 255, 0.8);
	right: 10px;
	top: 20px;
	padding: 10px 15px 8px;
	font-style: italic;
  line-height: 1;
  border-radius: var(--border-radius-sm);
  overflow: hidden;

}
#news .newsBox:hover .date {
	background: rgba(255, 255, 255, 0.95);
}

#news .newsBox .ti {
	display: block;
	margin: 19px 7% 0;
  font-family: var(--font-style-tw);
	font-size: 1.6rem;
	color: var(--color-main);
	font-weight: bold;
  line-height: 1.6;
}

#news .newsBox:hover .ti {
	color: var(--color-main);
}

#news .newsBox .picBox {
	width: 100%;
	overflow: hidden;
}

#news .newsBox .picBox img {
	width: 100%;
	transition: all .3s ease;
	-o-transition: all .3s ease;
	-moz-transition: all .3s ease;
	-webkit-transition: all .3s ease;
}

#news .newsBox:hover .picBox img {
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}

#news .newsBox .txt {
	padding: 7%;
  font-size: 1.4rem;
	color: var(--color-secondary);
	text-align: justify;
	line-height: 1.8em;
}

.share {
	text-align: center;
}

.share .icon {
  position: relative;
	color: #fff;
	font-size: 0.7em;
	line-height: 18px;
	display: inline-block;
	width: 28px;
	height: 28px;
  vertical-align: middle;
	border-radius: 20px;
	background: rgba(var(--color-main-rgba), 0.7);
}
.share .icon img {
  position: absolute;
  top: 50%;
  left: 50%;
	width: 12px;
	height: 10px;
  transform: translate(-50%, -50%);
}
.share .icon:hover {
	opacity: 0.8
}

@media screen and (max-width:680px) {
	#news .item {
		width: 48%;
		margin-bottom: 20px;
	}
}

@media screen and (max-width:480px) {
	#news .item {
		width: 100%;
	}

}

#newsView .newsBox {
	background: #fff;
	padding-bottom: max(40px, 4.2vw);
  border-radius: var(--border-radius-lg);
  overflow: hidden;

}
#newsView .picBox img {
	width: 100%;
}
#newsView .bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
	margin: 0 auto max(40px, 3.2vw);
	padding: 40px 0 12px;
	width: 90%;
	background: url('../images/aside_li_bg_last.png') center top no-repeat;
	border-bottom: 1px solid #a2a2a2;
}
#newsView .bar .date {
	font-style: italic;
}
#newsView .bar .share {
	text-align: right;
}

#newsView .ti {
  font-family: var(--font-style-mix);
	font-size: var(--size-headline);
  font-weight: 700;
	text-align: center;
  line-height: 1.6;
}
#newsView #share .iTitle {
	background: transparent;
}
#newsView .form-btn {
  padding: 0 20px;
}

/*
==========================================
  User Set.
==========================================
*/
#user{ }
#user .userBox{ margin-bottom: 30px; }
#user .userBox .picBox{ display: block; position: relative; width: 100%; height: 100%; border-radius: 100%; overflow: hidden;max-width: 320px; margin: 0 auto; }
#user .userBox .pic{ width: 100%; height: 100%; margin: 0 auto; border-radius: 100%; max-width: 314px; max-width: 320px; border: 1px solid #9ed6d5;}
#user .userBox .picBox img{ display: block; width: 95%; margin: 7px auto; height: 98%; max-width: 300px; border-radius: 100%; overflow: hidden;}
#user .userBox .picBox .hover{ transform: rotateY(180deg); position: absolute; top: 20%; left: 20%; width: 60%; height: 60%; border-radius: 100%; background: url('../images/page_ti_2_w.png') center bottom no-repeat rgba(158,214,213, 0.5); text-align: center; line-height: 200px;  color: #fff; transition: all .6s ease; -o-transition: all .6s ease;-moz-transition: all .6s ease; -webkit-transition: all .6s ease; opacity: 0}
#user .userBox .picBox:hover .hover{transform: rotateY(360deg); opacity: 1}
#user .userBox .txtBox{ text-align: center; background: #fff; margin-top: -100px; padding: 120px 40px 40px; border: 1px #efefef solid;}
#user .userBox .name{ color: #378e9e; font-size: 1.6em; height: 1.8em; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#user .userBox .name img{ display: inline-block; margin: 10px;}
#user .userBox .title{ display: block; font-size: 1.2em; font-weight: bold; margin: 20px auto; height: 3em; overflow: hidden; }
#user .userBox .txt{ position: relative; line-height: 2em; height: 6em; overflow: hidden;  }
#user .userBox .txt:after{ content: '. . .';
  position: absolute;
  right: 0;
  bottom: 0;
  width: 49px;
  height: 31px;
  right: 0;
  bottom: 0;
  z-index: 10;
  background: #fff;
  line-height: 30px;}

@media screen and (max-width: 991px) {
  #user .userBox{ margin: 0 0 20px 0;  padding:10px;}
#user .userBox .picBox{ width: 80%; height: 80%; margin: 0 auto; }
#user .userBox .picBox img{ width: 95%; }
#user .userBox .txtBox{ padding: 108px 10px 10px 10px; }
#user .userBox .picBox .hover{ line-height: 100px }
}

@media screen and (max-width: 767px) {
  #user .userBox{ width: 50%; padding: 5px; }
  #user .userBox .picBox img{ width: 93%; }
  #user .userBox .picBox .hover{ line-height: 80px }
}
@media screen and (max-width: 680px) {
   #user .userBox .picBox img{ width: 90%; }
  }
@media screen and (max-width: 320px) {
  #user .userBox{ width: 100% }
}


/*
==========================================
 Help Set.
==========================================
*/
#faq .list{ margin-bottom: 50px; }
#faq .list .item {
  text-decoration: none;
  display: block;
  position: relative;
  padding: 20px 15px 20px 50px;
  transition: all .3s linear;
  -ms-transition: all .3s linear;
  -moz-transition: all .3s linear;
  -webkit-transition: all .3s linear;
  border-bottom: 1px solid rgba(var(--color-secondary-rgba), .35);
  line-height: 1.5em;
  border-radius: var(--border-radius-lg);
}
#faq .list .item.open { background: #fff; box-shadow: 0px 0px 3px rgba(var(--color-beige-rgba), .8); }

#faq .list .item:before {
  content: 'Q';
  display: block;
  position: absolute;
  width: 32px;
  height: 32px;
  font-family: var(--font-style-en);
  line-height: 32px;
  font-weight: 500;
  color: #fff;
  background: rgba(var(--color-main-rgba), 0.6);
  border-radius: 32px;
  top: 21px;
  left: 15px;
  text-align: center;
  transition: all .3s linear;
  -ms-transition: all .3s linear;
  -moz-transition: all .3s linear;
  -webkit-transition: all .3s linear;
}

#faq .list .item.open:before {
  transform: scale(0);
  -ms-transform: scale(0);
  -moz-transform: scale(0);
  -webkit-transform: scale(0);
}

#faq .list .item:after {
  content: 'A';
  display: block;
  position: absolute;
  width: 32px;
  height: 32px;
  font-family: var(--font-style-en);
  line-height: 32px;
  font-weight: 500;
  color: #fff;
  background: var(--color-main);
  border-radius: 26px;
  top: 21px;
  left: 15px;
  text-align: center;
  transform: scale(0);
  -ms-transform: scale(0);
  -moz-transform: scale(0);
  -webkit-transform: scale(0);
  transition: all .3s linear;
  -ms-transition: all .3s linear;
  -moz-transition: all .3s linear;
  -webkit-transition: all .3s linear;
}

#faq .list a.item.open:after {
  transform: scale(1);
  -ms-transform: scale(1);
  -moz-transform: scale(1);
  -webkit-transform: scale(1);
}

#faq .list .item p.ti {
  font-family: var(--font-style-tw);
  font-size: 1.7rem;
  color: var(--color-main);
  font-weight: 700;
  margin-left: 10px;
  margin-top: 5px;
}

#faq .list .item .info {
  display: none;
  padding-left: 15px;
  padding: 0 10px;
  color: var(--color-secondary);
}

#faq .date {
  color: #333;
  text-align: right;
}

#faq .date> i {
  color: #7474b5;
  font-size: 2em;
  margin-right: 10px;
}
@media (max-width: 767px) {
  #faq .list .item { padding: 10px 15px 10px 60px; }
  #faq .list .item:before, #faq .list .item:after {
    top: 12px;
  }
  #faq .list .item p.ti {
    margin-left: 0;
  }
  #faq .list .item .info {
    padding: 0;
  }
}

/*
==========================================
  Store Set.
==========================================
*/
#store .pMain {
  width: 75%;
}
#store .storeBox {
  overflow: hidden;
  margin-bottom: 2%;
}
#store .storeBox .picBox {
  display: block;
  position: relative;
  margin: 0 auto 5%;
  border: 1px solid #efefef;
  overflow: hidden;
}
#store .storeBox .picBox .pic {
  background: #fff;
}
#store .storeBox .picBox .pic img {
  margin: 0 auto;
  width: 100%;
  max-width: 230px;
}
#store .storeBox .picBox .hover {
  display: block;
  position: absolute;
  top: 4%;
  left: 2%;
  opacity: 0;
  width: 96%;
  height: 92%;
  text-align: center;
  color: #fff;
  background: url(../images/icon_store.png) 77% center no-repeat rgba(var(--color-main-rgba), .85);
  overflow: hidden;
  line-height: 5em;
  font-size: 1.2em;
  transition: all .3s ease;
  -o-transition: all .3s ease;
  -moz-transition: all .3s ease;
  -webkit-transition: all .3s ease;
}
#store .storeBox .picBox:hover .hover {
  opacity: 1;
}
#store .storeBox .title {
  text-align: center;
  display: block;
  height: 2em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
#store .storeBox:hover .title {
  color: #333;
}

@media (max-width: 991px) {
  #store .pMain {
    width: 100%
  }
}
@media (max-width: 767px) {
  #store .storeBox {
    width: 50%;
    float: left;
  }
}
@media (max-width: 480px) {
  #store .storeBox {
    width: 100%
  }
  #store .storeBox .picBox .hover {
    top: 5%;
    left: 2%;
    width: 96%;
    height: 90%;
  }
}

/*
==========================================
  Sitemap Set.
==========================================
*/
#sitemap .box {
  margin-bottom: 52px;
  padding: 0 15px;
  box-sizing: border-box;
}
#sitemap .displayflex-wrap {
  display: flex;
  flex-wrap: wrap;
}
#sitemap .box h3 {
  margin-top: 0;
  font-size: 1.2em;
  color: #fff;
  background: url(../images/aside_ti_bg.png) #000 10px center no-repeat;
  height: 49px;
  line-height: 50px;
  text-transform: uppercase;
  position: relative;
}

#sitemap .box h3:after {
  content: '';
  width: 100%;
  height: 1px;
  background: #fff;
  display: block;
  position: absolute;
  bottom: 1px;
}


#sitemap .box h3 a{ color: #fff; padding-left: 30px;}
#sitemap .box ul {
  list-style: none;
}

#sitemap .box ul li a {
  display: block;
  height: 50px;
  line-height: 50px;
  background: url('../images/icon_li_dot.png') 15px center no-repeat;
  padding-left: 40px;
  color: #666;
  border-bottom: 1px solid #ccc;
}

#sitemap .box ul li a:hover {
  color: #000;
  text-decoration: none;
}

#sitemap .box ul li span {
  display: inline-block;
  margin-right: 8px;
  width: 3px;
  height: 3px;
  vertical-align: middle;
  overflow: hidden;
}

#sitemap .box ul li span i {
  display: block;
  width: 100%;
  height: 100%;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

#sitemap .box ul li a:hover span i {
  height: 100%;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}
@media (max-width: 991px) {


}
@media (max-width: 767px) {
  #sitemap .box:nth-child(even):after{ content: ''; position: relative; width: 100%; height: 10px; clear: both; }
  #sitemap .box{ width: 48%; float: left}
#sitemap .box h3 a{ display: inline; }
}
@media (max-width: 680px) {
  #sitemap .box{ width: 100%; margin-bottom: 10px; float: none }
  }




/*
==========================================
 Contact Set.
==========================================
*/
#contact {
  /* background: url('../images/contact_bg.png') 70% bottom #f7f7f7 no-repeat; */
  background: #f7f7f7;
}
#contact .form {width: 600px; margin: 0 auto; padding-bottom: 5%;}
#contact .btnDef {
 color: #fff;
 border: 1px solid #aaa;
 background: #979c9d;
 padding: 5px 30px;
 display: inline-block;
 transition: all .3s ease;
 -o-transition: all .3s ease;
 -moz-transition: all .3s ease;
 -webkit-transition: all .3s ease;
 height: 35px;
 box-sizing: border-box;
 vertical-align: middle;
 border: none;
 box-shadow: 2px 2px 1px rgba(0,0,0,0.2);
}
#contact .reset{
 margin-right: 20px;}
#contact .submit{ background: #378e9e; }
.iconInfo {
  display: none;
}
.iconInfo .pic{ width: 100px; height: 65px; margin: 0 auto }
.iconInfo .pic img{ }
iframe.contact{ width: 100%; height: 400px; border: 0; }
.iconInfo{ text-align: center; margin: 5% auto; }
.iconInfo img{ display: block; margin: 0 auto; }
@media (max-width: 991px) {
  #contact .form{ width: 100%; }
  #contact .form-horizontal .control-label{ margin-bottom: 7px; padding-top: 7px; text-align: left;}
  #contact{ box-sizing: border-box; padding: 20px;}
  .iconInfo .pic{ height: 40px; }
  .iconInfo .pic img{ max-height: 30px;  margin-bottom: 10px;}
}
@media (max-width: 767px) {
  #contact{ padding: 15px; margin: 0;}
}
@media (max-width: 480px) {
  .iconInfo .pic { width: 100%; }
}

/* ==========================================
  Form Set.
  ==========================================
*/
.form-group { 
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px 0;
}
.form-group .label-ti {
  width: 80px;
  color: var(--color-secondary);
  font-weight: 300;
  line-height: 1.4;
}
.form-group .label-ti .star  {
  color: var(--color-main-rgba);
}
.form-group .field {
  flex: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px 10px;
}
.form-group .field input {
  flex: 1;
}
.form-group .field.data {
  padding-left: 12px;
}

.form-control {
  height: 36px;
  color: var(--color-main);
  border: 1px solid rgba(var(--color-secondary-rgba), .2);
  /* -webkit-appearance: none; */
  box-shadow: none;
  line-height: 36px;
  padding-top: 10px;
  border-radius: var(--border-radius-sx);
}
.form-control:focus {
  outline: 0;
  border-color: rgba(var(--color-secondary-rgba), .7);
  box-shadow: none;
}

.form-control[disabled], .form-control[readonly] {
  background-color: rgba(var(--color-secondary-rgba), .06);
}

.inText {
  /* -webkit-appearance: none; */
  border-radius: 0;
  border: 1px solid rgba(var(--color-secondary-rgba), .2);
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 34px;
  padding-top: 10px;
  color: var(--color-main);
  background-color: #fff;
  background-image: none;
  box-shadow: none;
  border-radius: var(--border-radius-sx);
}

.textarea { width: 100%; box-sizing: border-box; padding: 5px; min-height: 120px; border:  1px solid #aaa; }

.form-group.add .field > .select {
  width: 120px;
}

.join .form-group {
  padding: 0 10px;
}
.join .form-group.add .field > .select:first-child {
  width: 120px;
}
.join .form-group.add .field .select:has(.hide) {
  display: none;
}
.join .form-group.add .field .select:has([style="display: inline !important;"]) {
  display: block;
  width: 120px;
}

input[type=radio], input[type=checkbox] {
  display: inline-block;
  margin-top: -2px;
  vertical-align: middle;
}

.sex input[type=radio] {
  margin-top: -3px;
}

.imgCode {
  width: 120px;
  line-height: 36px;
  height: 36px;
  text-align: center;
  background: #dfecec;
  color: #333;
  font-size: 1.2em;
  font-style: italic;
  display: inline-block;
}

.security {
  height: 40px;
  display: inline-block;
  line-height: 40px;
  text-align: center;
  background: #ececec;
  color: #e88aaa;
  font-style: italic;
  margin: 0 5px;
}

.select {
  position: relative;
  font-size: 13px;
  box-sizing: border-box;
  padding: 0;
}
.select select {
  padding: 0 6px;
  width: 100%;
  height: 36px;
  font-size: 1.4rem;
  color: var(--color-main);
  font-weight: 300;
  line-height: 36px;
  border: 1px solid rgba(var(--color-secondary-rgba), .2);
  border-radius: var(--border-radius-sx);
}

input[type="checkbox"], input[type="radio"] {
  accent-color: var(--color-secondary); /* 勾選後的主色 */
}

.form-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 10px;
  padding-top: 20px;
}
#member .form-btn.cart {
  padding-top: max(20px, 1.8vw);
}

.w10 {
  width: 10%;
}

.w20 {
  width: 20%;
}

.w30 {
  width: 20%;
}

.w40 {
  width: 40%;
}

.w48 {
  width: 48%;
}

.w50 {
  width: 50%;
}

.w60 {
  width: 60px;
}

.w75 {
  width: 75px;
}

.w90 {
  width: 90%;
}

.wAll {
  width: 100%;
}

@media (max-width: 991px) {
  .form-group {
    margin-bottom: 16px;
  }
  .form-horizontal .control-label{ text-align: left; margin-bottom: 5px; }
  .security {
    margin: 10px 0 0 0;
  }
  .select label {
    width: 100%
  }

  .join .form-btn {
    padding: 0 10px;
  }
}

@media (max-width: 767px) {
  .form-group .label-ti {
    width: 100%;
  }
  .form-group .field {
    flex: 0 0 100%;
  }
  .form-group .field.data {
    padding-left: 0;
  }

  .form-btn .btn-style {
    max-width: 100%;
  }
}

@media (max-width: 575px) {
  #member .boxL {
    padding: 0 0 max(30px, 2.2vw);
  }
  #member .boxR {
    padding: max(30px, 2.2vw) 0 0;
  }

  #member .form-group.add .field > .select {
    width: 100% !important;
  }
  #member .form-group.add .field input {
    flex: 0 0 100%;
  }
}

@media (max-width:480px) {
  .inText { width: 100%; margin-bottom: 5px;}
  .inText.nomar { margin: 0 }
}

/* ==========================================
  Member Set.
  ==========================================
*/

/* 會員登入 */
#member .boxL {
  overflow: hidden;
  border-right: 1px solid #e2e2e2;
  padding: 0 10% 0 15%;
}
#member .boxR {
  padding: 0 15% 0 10%;
}
#member .boxL p,
#member .boxR p {
  margin: 0;
  font-size: 1.8rem;
  color: var(--color-main);
  font-weight: 400;
}
#member .boxL p.en,
#member .boxR p.en {
  font-size: 1.2rem;
  margin-bottom: 15px;
}
#member .boxL .note {
  font-size: 1.4rem;
}
#member .boxL .btn-style {
  max-width: 100%;
}
#member .boxR .btn-style {
  margin: 12px 0 0;
  max-width: 100%;
}

#member .loginBox {
  width: 100%;
}
#member .loginBox td {
  padding: 6px 0;
}

#member .loginBox .info a {
  display: inline-block;
  margin-right: 10px;
  text-decoration: none;
  color: var(--color-secondary);
  text-align: left;
}
#member .loginBox .info a:hover {
  color: var(--color-main);
  text-decoration: underline;
}

/* 加入會員 */
#member .form-group.name .sex {
  width: 78px;
  line-height: 1;
}
#member .form-group.birthday .select {
  width: calc(33.33% - 6.8px);
}
#member .form-group.agree {
  padding-left: 90px;
  font-size: 1.4rem;
}
#member .form-group.agree input[type=checkbox]  {
  margin-top: -5px;
}

.mfp-bg {
  background: rgba(var(--color-beige-rgba), 1);
}
.mfp-close-btn-in .mfp-close {
  color: var(--color-secondary);
}

#termsBox {
  position: relative;
  width: 850px;
  margin: 10px auto;
  height: 485px;
  border: 1px solid var(--color-beige-2);
  line-height: 2em;
  padding: 30px 20px 30px 30px;
  background: #fff;
  border-radius: var(--border-radius-lg);
}

#termsBox .ti {
  font-family: var(--font-style-tw);
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  margin: 25px 0 20px;
}

@media (max-width: 991px) {
  #member .boxL, #member .boxR { padding:5% 7% 5% 5%;}
  #member .loginBox td { padding: 6px 0 }
}

@media (max-width: 767px) {
  #member .boxL {
    padding: 0 var(--box-spac) max(30px, 2.2vw);
    text-align: center;
    border-right: none;
    border-bottom: #aaa solid 1px;
  }
  #member .boxR {
    padding: max(30px, 2.2vw) var(--box-spac) 0;
    text-align: center;
  }
  #member .boxL p.en, #member .boxR p.en {
    margin-bottom: 10px;
  }

  #member .form-group.agree {
    padding: 0 10px;
  }
}

@media (max-width: 575px) {
  #member .boxL {
    padding: 0 0 max(30px, 2.2vw);
  }
  #member .boxR {
    padding: max(30px, 2.2vw) 0 0;
  }
}

#member .memberpBox {
  width: 80%;
  margin: 0 auto;
}
@media (max-width: 680px) {
  #member .memberpBox {
    width: 100%;
  }
}

#member h3 {
  line-height: 33px;
  font-size: 1.5rem;
  margin: 45px 0 20px 0;
  font-weight: normal;
  border-bottom: 1px solid rgba(var(--color-secondary-rgba), .5);
  padding-left: 10px;
}
#member h3 .fa { color: #666; font-size: 1.5em; margin-right: 10px; }

#member .link {
  text-decoration: underline;
}

@media (max-width: 991px) {
  #termsBox {
    width: 100%;
  }
}

/* 會員專區 */
#member.pContent {
  padding-top: max(10px, 2.5vw);
}
#page #member .iTitle {
  margin-top: 0;
}

/* 會員中心 */
#member .centerWrap {
  margin: 0 auto;
  width: 94%;
}
#member .centerWrap .state {
  margin-bottom: max(15px, 1.8vw);
  text-align: center;
}
#member .centerWrap .state span {
  text-decoration: underline;
}

#member .centerBox {
  border-right: 1px #ccc dotted;
  padding: max(10px, 1.2vw) 15px;
}
#member .centerBox:last-child {
  border: none
}

#member .centerBox th {
  padding-left: 10px;
  width: 18%;
  vertical-align: top;
}
#member .centerBox td {
  width: 82%;
  vertical-align: top;
}

#member .centerBox .enter {
  display: block;
  font-family: var(--font-style-tw);
  font-size: 1.7rem;
  color: var(--color-main);
  font-weight: 700;
  text-decoration: none;
}
#member .centerBox .enter img {
  padding-top: 7px;
}
#member .centerBox .enter:hover {
  color: #000;
}

#member .centerBox .icon {
  margin-bottom: 4px;
  vertical-align: top;
}
#member .centerBox .icon + div {
  color: var(--color-secondary);
}

@media (max-width: 991px) {
  #member .centerWrap {
    padding: 0 15px;
    width: 100%;
  }
  #member .centerBox {
    border: none;
    border-bottom: 1px #ccc dotted;
    padding: 10px 15px;
  }
  #member .centerBox th {
    width: 15%;
  }
  #member .centerBox td {
    width: 85%;
  }
  #member .centerBox th {
    padding: 0;
  }
  #member .centerBox:last-child {
    border-bottom: 1px #ccc dotted;
  }
}

/* 表格 */
#member .memberpBox2 {
  margin-bottom: max(20px, 1.8vw);
  padding: max(20px, 1.8vw) max(20px, 2.4vw) max(24px, 2.2vw);
  width: 100%;
  background-color: #fff;
  border-radius: var(--border-radius-lg);
  box-shadow: 0px 0px 3px rgba(var(--color-beige-rgba), .8);
  border-bottom: 1px solid rgba(var(--color-secondary-rgba), .35);
}

#member .bar-ti {
  display: flex;
  align-items: center;
  gap: 0 16px;
  margin-bottom: 16px;
}
#member .bar-ti .with-value {
  padding-top: 5px;
}
#member .bar-ti .with-value input[type="checkbox"] {
  margin-top: -2px;
}
#member .pad {
  font-family: var(--font-style-tw);
  font-size: 1.7rem;
  font-weight: 700;
}
#member .bar-ti .with-value {
  padding-top: 5px;
}
#member .bar-ti .with-value input[type="checkbox"] {
  margin-top: -2px;
}

#member .memberpBox2 .box {
  display: flex;
  flex-wrap: wrap;
  gap: 0 max(20px, 2.4vw);
}
#member .memberpBox2 .box .infoBox {
  width: calc(50% - (max(20px, 2.4vw) / 2));
}

#member .memberpBox2 .form-group:last-child {
  margin-bottom: 0;
}

#member .table {
  margin: 0 auto;
  width: 100%;
}

#member .table th.txtCenter {
  text-align: center;
}

#member .table > thead > tr > th {
  padding: 12px 8px;
  font-family: var(--font-style-tw);
  font-weight: 700;
  border-bottom: rgba(var(--color-secondary-rgba), .35) 1px solid;
  background-color: rgba(var(--color-beige-rgba),.6);
}
#member .table > thead > tr > th.qua {
  width: 60px;
}
#member .table th,
#member .table td {
  vertical-align: middle;
  text-align: center;
  line-height: 1.6;
}
#member .table td {
  color: var(--color-secondary);
}

#member .table .num {
  color: #A4A4A4;
}

#member .table td .img {
  max-width: 100px;
  display: block;
  text-align: center;
  margin: 5px auto;
  border-radius: var(--border-radius-md);
  overflow: hidden;
}

#member .table td .img img {
  width: 100%;
}

#member .table td.name a {
  display: block;
  margin: 0 auto 16px;
  height: 20px;
  color: var(--color-main);
  text-decoration: none;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
#member .table td.name a:hover {
  color: #000;
}

#member .table p {
  margin-bottom: 0;
}

#member .table td.del a.btnDel {
  display: block;
  /* width: 20px; */
  height: 17px;
  margin: 0 auto;
  overflow: hidden;
}
#member .table td.del a.btnDel:hover {
  color: var(--color-main);
}

#member .table td.count {
  width: 10%;
}

#member .table .btn-style {
  display: inline-block;
  max-width: 75px;
  vertical-align: middle;
  background-color: transparent;
}

@media (min-width: 768px) {
  #member .table {
    background-color: #fff;
    box-shadow: 0px 0px 3px rgba(var(--color-beige-rgba), .8);
    border-radius: var(--border-radius-lg);
    overflow: hidden;
  }
  #member .table tbody tr:last-child {
    border-bottom: 1px solid rgba(var(--color-secondary-rgba), .35);
    border-radius: 0 0 var(--border-radius-lg) var(--border-radius-lg);
    overflow: hidden;
  }
  #member .table tr:not(:last-child) td {
    border-bottom: 1px solid rgba(var(--color-secondary-rgba), .15);
  }
  #member .table tr:last-child td {
    border-bottom: none;
  }
}

@media (max-width: 991px) {
  #member .memberpBox2 .box .infoBox {
    width: 100%;
  }
}

@media (max-width: 767px) {
  #member .table th, #member .table td {
    vertical-align: middle;
    text-align: left;
  }

  #member .table tr {
    border-bottom: none;
    background: #fff;
    border-radius: var(--border-radius-lg);
    box-shadow: 0px 0px 3px rgba(var(--color-beige-rgba), .8);
    border-bottom: 1px solid rgba(var(--color-secondary-rgba), .35);
  }
  #member .table td .img {
    margin: 0;
  }
}

/* 訂單查詢 */
.orderList .view {
  color: var(--color-main);
}
.orderList .view:hover {
  color: var(--color-main);
  text-decoration: none;
}
.orderList td.date {
  display: none;
}

/* 付款通知*/
#payBox, #returnBox {
  position: relative;
  width: 650px;
  padding: 40px 30px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid #ccc;
}

#payBox .padT {
  padding-top: 7px
}

#payBox .payTi,
#returnBox .payTi {
  margin-bottom: 16px;
  width: 100%;
  font-family: var(--font-style-tw);
  font-size: 1.7rem;
  font-weight: 700;
}

#payBox table, #returnBox table {
  width: 100%;
  color: #fff;
  box-sizing: border-box;
  text-align: left;
}

#returnBox .input-item {
  display: inline-block;
  margin-top: -3px;
  vertical-align: middle;
}

@media (max-width: 991px) {
  #payBox,#returnBox {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .orderList,
  .orderList thead,
  .orderList tbody,
  .orderList th,
  .orderList td,
  .orderList tr {
    display: block;
  }
  .table.orderList thead {
    display: none;
  }
  .table.orderList tr {
    margin-bottom: 16px;
  }
  .table.orderList td {
    position: relative;
    padding: 14px 16px 14px 105px;
    text-align: left;
    line-height: 1;
    border: none;
    border-bottom: 1px solid rgba(var(--color-secondary-rgba), .15);
  }
  .table.orderList .clock {
    border-color: rgba(var(--color-secondary-rgba), .35);
    background: rgba(var(--color-beige-rgba), .6);
    border-radius: var(--border-radius-lg) var(--border-radius-lg) 0 0;
  }
  .table.orderList .clock .date {
    display: none;
  }
  .table.orderList td.date {
    display: block;
    position: relative;
    padding-left: 105px;
  }
  .table.orderList tr td:nth-of-type(even) {
    background: rgba(255, 255, 255, 1);
  }
  .table.orderList td::before {
    display: block;
    position: absolute;
    top: 52.5%;
    left: 16px;
    width: 90px;
    white-space: nowrap;
    transform: translateY(-50%);
  }
  .table.orderList td:nth-of-type(1)::before {
    content: "訂單編號";
  }
  .table.orderList td:nth-of-type(2)::before {
    content: "訂單日期";
  }
  .table.orderList td:nth-of-type(3)::before {
    content: "訂單金額";
  }
  .table.orderList td:nth-of-type(4)::before {
    content: "付款狀態";
  }
  .table.orderList td:nth-of-type(5)::before {
    content: "訂單狀態";
  }
  .table.orderList td:nth-of-type(6)::before {
    content: "取消訂單";
  }

  .table.orderList td:nth-of-type(5) {
    border-bottom: none;
  }
}

/*訂單詳細頁*/
#member .money {
  text-align: right;
  margin: 20px 3% max(20px, 1.8vw);
}

#member .total {
  font-family: var(--font-style-mix);
  color: var(--color-main);
  font-size: 2.4rem;
  font-weight: 700;
}

table.infoBox {
  color: var(--color-secondary);
}
table.infoBox td:not(.ti) {
  padding-top: 6px;
  padding-right: 6px;
}
table.infoBox td.ti span {
  display: block;
  margin-bottom: 12px;
  padding-left: 20px;
  font-size: 1.5rem;
  color: var(--color-main);
  text-align: left;
  background: url(../images/icon_li_dot.png) no-repeat 4px 40%;
  border-bottom: 1px solid rgba(var(--color-secondary-rgba), .5);
}
table.infoBox td.title {
  padding-left: 20px;
  width: 130px;
  vertical-align: top;
}
table.infoBox td.txt {
  width: calc(100% - 130px);
}

@media (max-width: 991px) {
  .memberpBox2 table.infoBox:not(:last-child) {
    margin-bottom: 30px;
  }
}

@media (max-width: 767px) {
  table.infoBox td.title {
    width: 100px;
  }
  table.infoBox td.txt {
    width: calc(100% - 100px);
  }
}

@media (max-width: 575px) {
  table.infoBox td.title {
    padding-left: 0;
    width: 80px;
  }
  table.infoBox td.txt {
    width: calc(100% - 80px);
  }
}

/* ==========================================
  Cart Set.
  ==========================================
*/
.stepBar {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 max(20px, 2.4vw);
  margin: 0px auto max(30px, 2.4vw);
  width: 80%;
}
.stepBar .step .stepDiv {
  display: flex;
  align-items: center;
  gap: 0 16px;
  padding: 10px;
  color: rgba(var(--color-main-rgba), .6);
}
.stepBar .step .stepDiv .nu {
  width: 58px;
  height: 58px;
  font-family: var(--font-style-en);
  font-size: 2.6rem;
  font-weight: 700;
  font-style: italic;
  text-align: center;
  line-height: 58px;
  border: rgba(var(--color-main-rgba), .2) solid 1px;
  border-radius: 100%;
  overflow: hidden;
}
.stepBar .step .stepDiv .txt {
  line-height: 1.2;
}
.stepBar .step .stepDiv span {
  display: block;
  text-transform: lowercase;
  font-size: 1.2rem;
}
.stepBar .step.current .stepDiv {
  color: rgba(var(--color-main-rgba), 1);
}
.stepBar .step.current .stepDiv .nu {
  color: #fff;
  border-color: transparent;
  background-color: rgba(var(--color-main-rgba), .7);
}

@media (max-width: 991px) {
  .stepBar {
    width: 100%;
    margin: 0 auto 20px;
  }
}

/* Step1 */
#member .step1 {
  margin-bottom: max(20px, 2.4vw);
}

#member .table.carList {
  background-color: #fff;
}
#member .table.carList th:nth-child(2) {
  width: 46%;
}
#member .table.carList th:nth-child(3) {
  width: 80px;
}

#member .table.carList td {
  padding-top: 12px;
  padding-bottom: 12px;
  text-align: center;
}
#member .table.carList img {
  max-width: 110px;
}
#member .table.carList td.name {
  color: var(--color-main);
  text-align: left;
}
#member .table.carList .format {
  margin-top: 8px;
  color: rgba(var(--color-secondary-rgba), .7);  
}
#member .table.carList .format div {
  display: flex;
  align-items: flex-start;
  position: relative;
  padding-top: 3px;
  line-height: 1.4;
}
#member .table.carList .format div span {
  width: 50px;
  flex: 0 0 50px;
}

#member td.price .old {
  font-style: italic;
  color: #888;
  margin-bottom: 3%;
  letter-spacing: -0.5px;
  text-decoration: line-through;
}

#member .packeg {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 10px;
}
#member .packeg .select {
  max-width: 160px;
}
#member .packeg .select select {
  color: #444;
}
#member .packeg .inText {
  display: block;
  margin-top: 5px;
  padding: 3px;
  width: 50%;
  height: 30px;
}

#member .payWay {
  border-top: 1px solid #ccc;
}
#member .payWay li {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 16px;
  position: relative;
  padding: 12px 16px 12px 32px;
}
#member .payWay li:not(:last-child) {
  border-bottom: 1px solid #ccc;
}
#member .payWay li:last-child {
  padding-bottom: 0;
}
#member .payWay li input {
  position: absolute;
  top: 18px;
  left: 8px;
}
#member .payWay li label {
  width: 140px;
}
#member .payWay li p {
  margin-bottom: 0;
}

@media (min-width: 992px) {
  #member .table.carList .format div {
    padding-left: 16px;
  }
  #member .table.carList .format div::before {
    display: block;
    content: "";
    position: absolute;
    top: 10px;
    left: 4px;
    width: 2px;
    height: 2px;
    border-radius: 100%;
    background-color: rgba(var(--color-secondary-rgba), .7);
  }
  #member .table.carList .format div:not(.sew) span {
    display: none;
  }
}

@media (max-width: 991px) {
  #member .table.carList td.qua .select {
    margin: 0;
    width: 100px;
  }
  #member .table.carList .name .packeg {
    gap: 16px 10px;
  }
  #member .table.carList .name .packeg .select {
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 100%;
  }
  #member .table.carList .name .packeg .select:last-child {
    margin-bottom: 0;
  }
  #member .table.carList .name .packeg .select select {
    flex: 1;
  }
  #member .table.carList .name .packeg .select::before {
    display: block;
    content: "";
    width: 50px;
    text-align: left;
  }
  #member .table.carList .name .packeg .select:nth-child(1):before {
    content: "配件";
  }
  #member .table.carList .name .packeg .select:nth-child(2):before {
    content: "搬運";
  }
  #member .table.carList .name .packeg .select:nth-child(3):before {
    content: "保固";
  }
  #member .table.carList .packeg .inText {
    margin-top: 5px;
  }

  #member .table.carList,
  #member .table.carList thead,
  #member .table.carList tbody,
  #member .table.carList th,
  #member .table.carList td,
  #member .table.carList tr {
    display: block;
  }
  #member .table.carList thead tr {
    display: none;
  }
  #member .table.carList tbody tr {
    position: relative;
    margin-bottom: 10px;
    padding-bottom: 16px;
    border-radius: var(--border-radius-lg);
    box-shadow: 0px 0px 3px rgba(var(--color-beige-rgba), .8);
    border-bottom: 1px solid var(--color-beige-2);
  }
  #member .table.carList td {
    position: relative;
    padding: 8px 16px 8px 190px;
    text-align: left;
    vertical-align: top;
    border-top: none;
  }
  #member .table.carList td.pic .img {
    margin: 0 auto;
  }
  #member .table.carList td.name {
    padding: 24px 16px 8px 140px;
  }
  #member .table.carList td.qua .select {
    width: 100%;
  }

  #member .table.carList td::before {
    position: absolute;
    top: 50%;
    left: 140px;
    width: 50px;
    transform: translateY(-50%);
  }
  #member .table.carList td:nth-child(1)::before, #member .table.carList td:nth-child(2)::before {
    display: none;
  }
  #member .table.carList td:nth-of-type(1)::before {
    content: "圖片";
  }
  #member .table.carList td:nth-of-type(2)::before {
    content: "名稱";
  }
  #member .table.carList td:nth-of-type(3)::before {
    content: "數量";
  }
  #member .table.carList td:nth-of-type(4)::before {
    content: "單價";
  }
  #member .table.carList td:nth-of-type(5)::before {
    content: "小計";
  }
  #member .table.carList td:nth-of-type(6)::before {
    content: "刪除";
  }

  #member .table.carList.confirm td {
    padding: 4px 16px 4px 190px;
  }
  #member .table.carList.confirm td.name {
    padding: 24px 16px 4px 140px;
  }
  #member .table.carList .format {
    color: var(--color-secondary);
  }
  #member .table.carList .format div {
    padding: 4px 0;
    line-height: 1.6;
  }

  #member .payWay li label {
    width: 100%;
  }
}

@media (min-width: 576px) and (max-width: 991px) {
  #member .table.carList td.pic {
    position: absolute;
    top: 16px;
    left: 16px;
    padding: 0;
  }
}

@media (max-width: 575px) {
  #member .table.carList td {
    padding: 8px 16px 8px 65px;
  }
  #member .table.carList td.pic {
    padding: 24px 16px 16px;
  }
  #member .table.carList td.name {
    padding: 8px 16px;
    text-align: center;
  }
  #member .table.carList td::before {
    left: 16px;
  }

  #member .table.carList.confirm td {
    padding: 4px 16px 4px 65px;
  }
  #member .table.carList.confirm td.pic {
    padding: 24px 16px 16px;
  }
  #member .table.carList.confirm td.name {
    padding: 8px 16px 4px;
  }
  #member .table.carList .format {
    text-align: left;
  }
}

/* Step2 */
#member .step2 {
  margin-bottom: max(20px, 1.8vw);
}
#member .step2 .money {
  margin-bottom: 0;
}

#member .click {
  display: inline-block;
  color: var(--color-main);
  text-decoration: underline;
  cursor: pointer;
}

#member .openBox {
  display: none;
  padding-bottom: 16px;
}

/* Step3 */
#cart .done {
  text-align: center;
  padding: 2%;
  margin: 25px auto;
  line-height: 1.6em;
  font-size: 15px;
  width: 80%;
}
#cart .done a { color: var(--color-main); }

#cart .noticeBox {
  margin: 0 auto 50px;
  padding: 2px;
  width: 80%;
  border: 1px solid #D8D8D8;
}
#cart .payOline {  margin-top: 30px;
  width: 151px;
  padding: 5px 10px;
  height: 40px; }
#cart .payOline:hover { color: #fff; }
#cart .payOline .fa { font-size: 1.5em; }
#cart .notice {
  width: 100%;
  line-height: 1.6em;
  border: 1px solid #D9D9D9;
  padding: 30px;
}

#cart ul.aw {
  line-height: 2em;
  margin-left: 100px;
  width: 85%;
  margin: 0 auto 21px;
}

#cart ul.aw li {
  list-style-image: url(../images/icon_site.gif);
}

@media (max-width: 680px) {
  #cart .noticeBox,
  #cart .done{width: 90%;}
}

/* Store */
#pStore .table {
  width: 100%;
  background-color: #fff;
}
#pStore .table th, #pStore .table td {
  text-align: center;
  vertical-align: middle;
}
#pStore .table > thead > tr > th {
  padding: 12px 8px;
  font-family: var(--font-style-tw);
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
  border-bottom: rgba(var(--color-secondary-rgba), .35) 1px solid;
  background-color: rgba(var(--color-beige-rgba),.6);
}
#pStore .table td {
  padding: 12px 8px;
  color: var(--color-secondary);
  border: none;
}

#pStore .table .link a {
  display: inline-block;
  position: relative;
  width: 30px;
  height: 30px;
  font-size: 1.3rem;
  color: #fff;
  border-radius: 100%;
  line-height: 30px;
  background: rgba(var(--color-main-rgba), 0.7);
}
#pStore .table .link a i, #pStore .table .link a img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#pStore .table .link a img {
  width: 10px;
}

@media (min-width: 768px) {
  #pStore .table {
    border-radius: var(--border-radius-lg);
    box-shadow: 0px 0px 3px rgba(var(--color-beige-rgba), .8);
    overflow: hidden;
  }
  #pStore .table tbody tr:last-child {
    border-bottom: 1px solid rgba(var(--color-secondary-rgba), .35);
  }
  #pStore .table tbody tr:not(:last-child) td {
    border-bottom: 1px solid rgba(var(--color-secondary-rgba), .15);
  }
}

@media (max-width: 767px) {
  #pStore .table {
    background-color: transparent;
  }
  #pStore table,
  #pStore thead,
  #pStore tbody,
  #pStore th,
  #pStore td,
  #pStore tr {
    display: block;
    border: none;
  }
  #pStore .table thead {
    display: none;
  }
  #pStore .table th, #pStore .table td {
    text-align: left;
  }
  #pStore .table tbody tr {
    margin-bottom: 16px;
    padding: 0 0 8px;
    border-bottom: rgba(var(--color-secondary-rgba), .35) 1px solid;
    background-color: #fff;
    border-radius: var(--border-radius-lg);
    box-shadow: 0px 0px 3px rgba(var(--color-beige-rgba), .8);
  }
  #pStore .table tr td:not(:last-child) {
    border-bottom: 1px solid rgba(var(--color-secondary-rgba), .15);
  }
  #pStore .table td {
    position: relative;
    padding: 10px 16px 8px 65px;
    min-height: 32px;
    line-height: 1.6;
    border: none;
  }
  #pStore .table tr td:nth-child(1) {
    border-bottom: rgba(var(--color-secondary-rgba), .35) 1px solid;
    background-color: rgba(var(--color-beige-rgba), .6);
    border-radius: var(--border-radius-lg) var(--border-radius-lg) 0 0;
  }
  #pStore .table td.pic {
    padding-left: 20px;
  }
  #pStore .table .link {
    line-height: 1;
  }
  #pStore .table .link a {
    margin-top: 2px;
  }
  #pStore .table td::before {
    position: absolute;
    top: 53%;
    left: 16px;
    width: 50px;
    white-space: nowrap;
    transform: translateY(-50%);
  }

  #pStore .table td:nth-of-type(1)::before {
    content: "門市";
  }
  #pStore .table td:nth-of-type(2)::before {
    content: "電話";
  }
  #pStore .table td:nth-of-type(3)::before {
    content: "時間";
  }
  #pStore .table td:nth-of-type(4)::before {
    content: "地址";
  }
  #pStore .table td:nth-of-type(5)::before {
    content: "Map";
  }
  #pStore .table td:nth-of-type(6)::before {
    content: "連結";
  }
}

/* ==== 2024.03.21 追加 廣告輪播 ==== */
#billing {
  margin-top: max(3.5vw, 40px);
  margin-bottom: max(1.5vw, 20px);
}
#billing .iTitle {
  margin-bottom: max(2vw, 25px);
  padding-top: 0;
  line-height: 1;
  background: none;
}
#billing .iTitle span {
  display: inline-block;
  margin: -8px 0 0 15px;
  vertical-align: middle;
}
.billing-swiper {
  margin: 0 -12.5px;
}
.billing-swiper .item {
  padding: 0 8px;
}
.billing-swiper .item .pic {
  border-radius: var(--border-radius-lg);
  overflow: hidden;
}
.billing-swiper .item img {
  transition: transform .35s;
}
.billing-swiper .item .name {
  margin-top: max(15px, .8vw);
  font-size: 1.6rem;
  color: var(--color-main);
  line-height: 1.4;
  text-align: center;
}
.billing-swiper .item a:hover img {
  transform: scale(1.15);
}

@media (min-width: 1366px) {
  #billing.container {
    padding-left: 40px;
    padding-right: 40px;
    width: 100%;
    max-width: 100%;
  }
}

@media (max-width: 1365px) {
  .billing-swiper {
    margin: 0 -10px;
  }
  .billing-swiper .item {
    padding: 0 5px;
  }
}

@media (max-width: 767px) {
  #billing .iTitle span {
    display: block;
    margin: 10px 0 0 0;
  }
}

/* 991px以下隱藏"關於慕日"導航項 */
@media (max-width: 991px) {
  .hide-under-991 {
    display: none !important;
  }
}

