@charset "UTF-8";
/*N*/
:root {
  --main-color1: rgb(var(--mc1RGB));
  --main-color2: rgb(var(--mc2RGB));
  --sw: #E3E3E3;
  --gray: #6B6B6B;
  --bg-gray: #F2F2F2;
  --border: #949494;
  --text-indark: #ffffff;
  --text-inlight: #2C2C2C;
  --icon-color: var(--text-inlight);

  --text-about: 'MACHINERY';

  --tt50: translate(-50%, 50%);
  --svg-search: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 48 48'%3E%3Cpath stroke='%23333' stroke-linejoin='round' stroke-width='4' d='M21 38a17 17 0 1 0 0-34 17 17 0 0 0 0 34Z'/%3E%3Cpath stroke='%23333' stroke-linecap='round' stroke-linejoin='round' stroke-width='4' d='M26.7 14.3a8 8 0 0 0-11.4 0M33.2 33.2l8.5 8.5'/%3E%3C/svg%3E");
  --svg-mail: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='19' fill='none'%3E%3Cg fill='%23fff' clip-path='url(%23a)'%3E%3Cpath d='M14.3 11.4a2.6 2.6 0 0 1-3.3 0l-1.4-1.2-8 8.1c.4.2.7.3 1.1.3h19.9c.4 0 .7-.1 1-.3l-8-8-1.3 1.1ZM.4 2.2c-.2.3-.3.7-.3 1.1V16l.3 1.2 7.9-8L.4 2Z'/%3E%3Cpath d='m13.1 10 10.5-9c-.3-.2-.7-.3-1-.3H2.7c-.3 0-.7 0-1 .2L12.2 10c.2.3.7.3 1 0ZM17 9l7.9 8c.2-.3.2-.7.2-1V3.2c0-.4 0-.8-.2-1.1L17 9Z'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M.1.7h25v18H.1z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
  --svg-mail2: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' width='60' height='60' style='enable-background:new 0 0 60 60'%3E%3Cpath d='m38.4 15.9-7.2-5.6a2 2 0 0 0-2.4 0L21.7 16M15.4 20.7l-5.8 4.6-.2.3v24.2c0 .4.4.8.8.8h39.6c.4 0 .8-.4.8-.8V25.6c0-.1 0-.3-.2-.3l-5.8-4.6' style='fill:none%3Bstroke:%232c2c2c%3Bstroke-width:2%3Bstroke-linecap:round%3Bstroke-linejoin:round'/%3E%3Cpath d='M15.5 29.8v-14h29v14M24.7 38.2l-15-12.5M50 25.9 35.3 38.2M12.9 47.7l12.8-10.2a7 7 0 0 1 8.7 0l12.8 10.2M21.8 23.3h16.4M21.8 28.9h16.4' style='fill:none%3Bstroke:%232c2c2c%3Bstroke-width:2%3Bstroke-linecap:round%3Bstroke-linejoin:round'/%3E%3C/svg%3E");
  --svg-arr1: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' viewBox='0 0 48 48'%3E%3Cpath stroke='%23333' stroke-linecap='round' stroke-linejoin='round' stroke-width='4' d='M36 24H12M24 12l12 12-12 12'/%3E%3C/svg%3E");

  --bs-font-sans-serif: Arial, "Noto Sans TC", "Noto Sans SC", "Microsoft JhengHei", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --title-font: "Noto Sans TC", "Noto Sans SC", "Microsoft JhengHei";
  --bngt: #1E1F2E;
  
  --tbh: 40px;
  --hmbH: 40px;

  --min-size: 16;
  --max-size: 28;

  --bs-gutter-x: 7.8%;
  /*
  code by muki.tw:
  --font-size: calc((var(--min-size) * 1px) + (var(--max-size) - var(--min-size)) * ((100cqw - 320px) / (1920 - 320)));
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
    */
}
/* html tag */
html[lang=en] {
  --title-font: "Poppins";
  --bs-font-sans-serif: Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}
body {
  color: var(--text-inlight);
  /* word-break: break-all; */
}
a {
  color: inherit;
  text-decoration: none;
}
a:hover {
  color: inherit;
}
p {
  color: var(--gray);
}
img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}
.br {
  border-radius: 0.5rem;
}
button, select {
  background-color: transparent;
  border: 1px solid var(--border);
  color: inherit;
}
/* Common name */
.FCC {
  display: flex;
  align-items: center;
  justify-content: center;
}
.rw-df {
  display: flex;
  flex-direction: column;
  gap: 1rem 2rem;
}
.ai-fs {align-items: flex-start;}
header.caption {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  margin-bottom: 1.5rem;
}
header.caption::before {
  content: attr(data-title);
  font-size: 3rem;
  font-weight: bold;
  background: linear-gradient(180deg, rgba(var(--mc2RGB),.15) 25%, #FFFFFF 80%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.heading {
  font-weight: bold;
}
.container-fluid.alugn-gutter {
  --bs-gutter-x: 15.6%;
}
.box-shadow {box-shadow: 0 0 10px 6px var(--sw);}
.btn {
  font-weight: 400;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  user-select: none;
  border: 2px solid transparent;
  padding: 0.6rem 2rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 0.25rem;
  background-color: var(--main-color2);
  --btn-color: var(--text-inC2);
  color: var(--btn-color);
}
/* btn effect */
.btn {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  overflow: hidden;
  transition: .3s ease;
  transition-property: background-color, color;
  z-index: 0;
}
.btn.arrow::after {
  content: '';
  -webkit-mask: var(--svg-arr1) no-repeat center;
  background-color: var(--btn-color);
  display: inline-block;
  margin-left: 0.5em;
  height: 1em;
  width: 1em;
  vertical-align: text-top;
  transition: background-color .3s ease;
}
.btn:hover {
  background-color: transparent;
  border-color: var(--main-color2);
  --btn-color: var(--main-color2);
  color: var(--btn-color);
}
.btn::before {
  position: absolute;
  z-index: -1;
  transform: rotate(-30deg);
  width: 100%;
  height: 0;
  border-radius: 5px;
  --maskColor: #fff;
  background-color: var(--maskColor);
  content: '';
  transition: height .3s ease;
}
.btn:hover:before {height: 350%;}
.btn-text {position: relative;}
.btn:focus, .btn.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.btn.disabled, .btn:disabled {
  opacity: 0.65;
}
.btn:not(:disabled):not(.disabled) {
  cursor: pointer;
}
.btn:not(:disabled):not(.disabled):active, .btn:not(:disabled):not(.disabled).active {
  background-image: none;
}
a.btn.disabled {
  pointer-events: none;
}
.collapse:not(.show) {
  display: none !important;
}
.effebtn {
  position: relative;
  display: inline-block;
  cursor: pointer;
  outline: none;
  border: 0;
  vertical-align: middle;
  text-decoration: none;
  background: transparent;
  padding: 0;
  height: 3rem;
}
.effebtn .circle {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  position: absolute;
  top: 0;
  bottom: 0;
  display: block;
  margin: 0;
  width: 3rem;
  height: 3rem;
  background: var(--main-color1);
  border-radius: 1.625rem;
}
.effebtn:hover .circle {width: 100%;}
.effebtn .circle .arrow {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  left: 0.625rem;
  width: 1.125rem;
  height: 0.125rem;
  background: none;
}
.effebtn:hover .circle .arrow {
  transform: translate(1rem, 0);
}
.effebtn .circle .arrow::before {
  position: absolute;
  content: "";
  top: -0.25rem;
  right: 0.0625rem;
  width: 0.625rem;
  height: 0.625rem;
  border-top: 0.125rem solid #fff;
  border-right: 0.125rem solid #fff;
  transform: rotate(45deg);
}
.selected .effebtn .circle .arrow::before {
  top: -0.45rem;
  right: -0.3375rem;
  width: 1.025rem;
  transform: rotate(135deg);
}
.effebtn .btn-text {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  position: relative;
  padding: 0.75rem 2.5rem 0.75rem 3.25rem;
  text-align: right;
  z-index: 1;
  display: inline-block;
}
.effebtn:hover .btn-text { color: var(--text-inC1);}
.fade {
  transition: opacity 0.15s linear;
}
@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}
.fade:not(.show) {
  opacity: 0;
}


.circle_btn {
  width: 3rem;
  height: 3rem;
  border: 2px solid var(--text-inlight);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.flex-container {
  display: flex;
  align-items: center;
  justify-content: center;
}

/*icon*/
.icon_search {
  -webkit-mask: var(--svg-search) no-repeat center;
}
.icon_lock {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24'%3E%3Cpath stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M12 14.5v2M7 10H17M7 10c-.6 0-1 .1-1.4.3a3 3 0 0 0-1.3 1.3c-.3.7-.3 1.5-.3 3.2v1.4c0 1.7 0 2.5.3 3.2.3.5.8 1 1.3 1.3.7.3 1.5.3 3.2.3h6.4c1.7 0 2.5 0 3.2-.3a3 3 0 0 0 1.3-1.3c.3-.7.3-1.5.3-3.2v-1.4c0-1.7 0-2.5-.3-3.2a3 3 0 0 0-1.3-1.3c-.4-.2-.8-.2-1.4-.3M7 10V8a5 5 0 0 1 10 0v2'/%3E%3C/svg%3E") no-repeat center;
}
.icon_cart {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 48 48'%3E%3Cpath d='M39 32H13L8 12h36l-5 20Z'/%3E%3Cpath stroke='%23333' stroke-linecap='round' stroke-linejoin='round' stroke-width='4' d='M3 6h4l1 6m0 0 5 20h26l5-20H8Z'/%3E%3Ccircle cx='13' cy='39' r='3' stroke='%23333' stroke-linecap='round' stroke-linejoin='round' stroke-width='4'/%3E%3Ccircle cx='39' cy='39' r='3' stroke='%23333' stroke-linecap='round' stroke-linejoin='round' stroke-width='4'/%3E%3Cpath stroke='%23333' stroke-linecap='round' stroke-linejoin='round' stroke-width='4' d='M22 22h8M26 26v-8'/%3E%3C/svg%3E") no-repeat center;
}
#header-menuBar .icon_cart {
  display: inline-block;
  margin-right: 0.25rem;
}
.icon_mail {
  -webkit-mask: var(--svg-mail) no-repeat center;
}
.icon_mail2 {
  -webkit-mask: var(--svg-mail2) no-repeat center;
}
.icon_close {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' viewBox='0 0 48 48'%3E%3Cpath stroke='%23333' stroke-linecap='round' stroke-linejoin='round' stroke-width='4' d='m42 42-9-9M6 6l9 9-9-9ZM6 42l9-9M42 6l-9 9 9-9ZM24 29a5 5 0 1 0 0-10 5 5 0 0 0 0 10Z'/%3E%3C/svg%3E") no-repeat center;
}
.icon_user {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 48 48'%3E%3Cpath stroke='%23333' stroke-linecap='round' stroke-linejoin='round' stroke-width='4' d='M24 44a20 20 0 1 0 0-40 20 20 0 0 0 0 40Z' clip-rule='evenodd'/%3E%3Cpath stroke='%23333' stroke-linejoin='round' stroke-width='4' d='M24 23a5 5 0 1 0 0-10 5 5 0 0 0 0 10Z'/%3E%3Cpath stroke='%23333' stroke-linecap='round' stroke-linejoin='round' stroke-width='4' d='M10 38c0-5 5-9 10-9h8c5 0 10 4 10 9'/%3E%3C/svg%3E") no-repeat center;
}
.icon_mobile {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' fill='none'%3E%3Cpath stroke='%232C2C2C' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M37.8 9.4H22.2c-2 0-3.6 1.6-3.6 3.6v34c0 2 1.6 3.6 3.6 3.6h15.6c2 0 3.6-1.6 3.6-3.6V13c0-2-1.6-3.6-3.6-3.6Z'/%3E%3Cpath stroke='%232C2C2C' stroke-linejoin='round' stroke-width='2' d='M38.8 44H21.2M21.2 16h17.6'/%3E%3Cpath stroke='%232C2C2C' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M27.5 47.3h5M13.6 37.3c-4-4-4-10.6 0-14.6'/%3E%3Cpath stroke='%232C2C2C' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M10.4 41.1c-6.1-6.1-6.1-16 0-22.2M46.4 37.3c4-4 4-10.6 0-14.6'/%3E%3Cpath stroke='%232C2C2C' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M49.6 41.1c6.1-6.1 6.1-16 0-22.2'/%3E%3Cpath stroke='%232C2C2C' stroke-linecap='round' stroke-linejoin='round' stroke-width='.7' d='M29.4 12.7h1.2'/%3E%3C/svg%3E") no-repeat center;
}
.icon {
  display: inline-block;
  background-color: var(--icon-color);
  width: 22px;
  height: 22px;
  -webkit-mask-size: 22px;
  vertical-align: calc(1rem - 22px);
  transition: background-color 0.2s ease;
}
.icon:hover {}
a:hover > .icon {}
a svg path {transition: fill 0.2s ease;}
a:hover .icon path {fill: var(--main-color1);}
/* menu */
#MMenuBtn {
  font-size: 20px;
  padding: 0;
  border: 0;
}
@media (min-width: 768px) {
  .rw-df {
    flex-direction: row;
  }
  #navSide.collapse {
    display: block !important;
  }
}

/* header */
#HEADER {
  background-color: #ffffff;
  border-bottom: 1px solid var(--gray);
  color: var(--text-inlight);
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
}
#topBar {
  background-color: var(--main-color1);
  color: var(--text-inC1);
  --icon-color: var(--text-inC1);
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
#topSupName {
  min-height: var(--tbh);
  /* line-height: var(--tbh); */
  font-size: 1.25rem;
  padding: calc( (var(--tbh) - 30px) / 2 ) 0;
}
#toolbarWrap {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  /* height: var(--tbh); */
  padding: calc( (var(--tbh) - 24px) / 2 ) 0;
}
#toolbarWrap > * {
  padding: 0 1rem;
}
#toolbarWrap > * + * {
  border-left: 1px solid var(--text-inC1);
}
#toolbarWrap li {
  display: inline-block;
  white-space: nowrap;
  text-align: center;
  background-color: var(--bg-gray);
}
#header-content {
  display: none;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  gap: 0.75rem;
}
#header-content .icon {
  width: 60px;
  height: 60px;
  -webkit-mask-size: 60px;
  vertical-align: -8px;
}
#header-content .icon_globe {margin-right: 2px;}
.headerContactBtn {
  display: grid;
  grid-template: 
  "img A" 30px
  "img B" 30px / 60px auto;
}
.hcbM {grid-area: img;}
.hcbA {align-self: end; line-height: 1;}
.hcbB {font-weight: 700; font-size: 1rem;}
#header-menuBar {
  background-color: var(--main-color1);
  color: var(--text-inC1);
  --icon-color: var(--text-inC1);
  font-size: 1.25rem;
  white-space: nowrap;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#cartbtn {
  background-color: var(--main-color2);
  height: var(--hmbH);
  line-height: var(--hmbH);
  padding: 0 2rem;
  font-size: 14px;
}
.header-btn {padding: 5px 30px;}
#header-logo {justify-content: center;}
.supplier-logo {
  padding: 0 0.5rem;
}
.supplier-logo > img {
  max-height: 120px;
}
#header-langMenu {
  position: relative;
}
#header-langMenu::before {
  position: absolute;
  content: "";
  top: 0.35rem;
  right: 0;
  width: 0.625rem;
  height: 0.625rem;
  border-top: 0.125rem solid #fff;
  border-right: 0.125rem solid #fff;
  transform: rotate(135deg);
}
#languageCollapse,
#languageCollapse2 {
  position: absolute;
  right: 0;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  background-color: var(--bs-body-bg);
  border: 1px solid var(--border);
  color: var(--text-inlight);
  z-index: 1;
}
#languageCollapse2 {
  top: -1px;
  left: 0;
  transform: translateY(-100%);
  width: 100%;
  z-index: 1;
}
.langList a {
  padding: 0.25rem 2rem;
  display: block;
}
.langList a:hover {
  background-color: var(--main-color1);
  color: var(--text-inC1);
}
.iconList {
  margin: 0 6px;
}
.iconList > a {
  width: 22px;
  height: 22px;
  background-color: #fff;
  display: inline-block;
}
@media (max-width: 767.98px) {
  #HEADER + * {
    margin-top: calc( var(--tbh) * 2 + var(--hmbH) + 1px );
  }
}
@media (min-width: 768px) {
  #HEADER {position: relative;}
  #topBar {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 0 3rem;
  }
  #MMenuBtn {display: none;}
  #header-menuBar {
    --hmbH: 70px;
    padding-left: 3rem;
  }
  #header-content {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  #header-content > div {
    display: flex;
    align-items: center;
  }
  .hcbB {font-size: 1.25rem;}
}
@media (min-width: 992px) {
  #toolbarWrap {
    flex-wrap: nowrap;
  }
  
  #header-content > div {
    gap: 0 1.5rem;
  }
}
@media (max-width: 767.98px) {
  .header-btn {padding: 5px 15px;}
}

@keyframes bounce {
  70% {
    transform: translateY(0%);
  }
  80% {
    transform: translateY(-15%);
  }
  90% {
    transform: translateY(0%);
  }
  95% {
    transform: translateY(-7%);
  }
  97% {
    transform: translateY(0%);
  }
  99% {
    transform: translateY(-3%);
  }
  100% {
    transform: translateY(0);
  }
}
/* Search */
#headerSearch {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  width: 42%;
  min-width: 320px;
  height: 36%;
  padding: 1rem;
  background: #fff;
  flex-direction: column;
  cursor: auto;
}
#search-heading {
  font-size: 2.5rem;
  font-weight: bold;
}
.btn-search {
  width: 3.75rem;
  height: 3.75rem;
  border: 0;
  background-color: var(--main-color1);
}
.btn-search:before {
  content: '';
  display: block;
  width: 24px;
  height: 24px;
  background-color: var(--text-inC1);
  -webkit-mask: var(--svg-search) no-repeat center;
}
.btn-close {
  width: 10%;
  aspect-ratio: 1/1;
  padding: 0;
  background-color: var(--main-color2);
  --icon-color: var(--text-inC2);
  position: absolute;
  right: 0;
  top: 0;
}
#ke {
  background-color: #ffffff;
  width: 76%;
  height: 3.75rem;
  margin: 0 auto;
}
#ke input {
  border: 1px solid var(--border);
  border-right: none;
  background-color: #ffffff; flex: 1;
  width: 100%;
  height: 100%;
  font-size: 2rem;
}
#overlay {
  position: fixed;
  display: none;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0,0,0,0.7);
  z-index: 999;
  cursor: pointer;
}

/* navbar */
.navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.navbar > .container,
.navbar > .container-fluid,
.navbar > .container-sm,
.navbar > .container-md,
.navbar > .container-lg,
.navbar > .container-xl,
.navbar > .container-xxl {
  display: flex;
  flex-wrap: inherit;
  align-items: center;
  justify-content: space-between;
}
.navbar-brand {
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  text-decoration: none;
  white-space: nowrap;
}
#main-menu {
  flex-direction: row;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
#main-menu .nav-link {
  padding-right: 0;
  padding-left: 0;
}

@media (max-width: 767.98px) {
  #SASpuInfo {display: none;}
  #navSide {
    position: fixed;
    top: calc( var(--tbh) * 2 + var(--hmbH) + 1px );
    left: 0;
    background-color: var(--main-color1);
    width: 100%;
    overflow: auto;
  }
  #main-menu {
    height: calc(100vh - var(--tbh) * 2 - var(--hmbH) - 1px );
  }
  #main-menu .dropdown-menu {
    position: relative !important;
    transform: none !important;
  }
}
@media (min-width: 768px) {
  #main-menu {display: flex;}
}
.attrcart::after {
  content: "(" attr(data-cart) ")";
}
.navbar-text {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center;
}

.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
  transition: box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .navbar-toggler {
    transition: none;
  }
}
.navbar-toggler:hover {
  text-decoration: none;
}
.navbar-toggler:focus {
  text-decoration: none;
  outline: 0;
  box-shadow: var(--text-inC1) 0 0 0 0.25rem
}
.navbar-toggler-text {display: none;}
.navbar-toggler-icon {
  display: inline-block;
  width: var(--hmbH);
  height: var(--hmbH);
  vertical-align: middle;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 48 48'%3E%3Cpath stroke='%23333' stroke-linecap='round' stroke-linejoin='round' stroke-width='4' d='M8 12h32M8 24h32M8 36h32'/%3E%3C/svg%3E") no-repeat center;
  -webkit-mask-size: var(--hmbH);
}
#menu-products {
  padding: 0;
}
/* #menu-products auto scroll */
#menu-productList-box, #menu-products {
  overflow: auto;
}
#menu-productList-box {
  display: flex;
  flex-direction: column;
}
@media (min-width: 768px) {
  #menu-productList-box {
    margin-bottom: 3rem;
  }
}


.dropup,
.dropend,
.dropdown,
.dropstart {
  position: relative;
}
.dropdown-toggle {
  white-space: nowrap;
}
.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent;
}
.dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropdown-menu {
  position: absolute;
  z-index: 1000;
  display: none;
  margin: 0;
  color: var(--text-inlight);
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  box-shadow: 0px 4px 10px 0px #00000040;
}

.dropdown-menu[data-bs-popper] {
  top: 100%;
  left: 0;
  margin-top: 0.125rem;
}

.dropdown-menu.show {
  display: block;
}

.dropdown-header {
  display: block;
  padding: 0.5rem 1rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #6c757d;
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: 0.25rem 1rem;
  color: #212529;
}


.animate {
  animation-duration: 0.3s;
  -webkit-animation-duration: 0.3s;
  animation-fill-mode: both;
  -webkit-animation-fill-mode: both;
}
@keyframes scaleTIn {
  0% {
    transform: scaleY(0);
    opacity: 0;
  }
  100% {
    transform: scaleY(1);
    opacity: 1;
  }
  0% {
    transform: scaleY(0);
    opacity: 0;
  }
}
@-webkit-keyframes scaleTIn {
  0% {
    -webkit-transform: transform;
    -webkit-opacity: 0;
  }
  100% {
    -webkit-transform: scaleY(1);
    -webkit-opacity: 1;
  }
  0% {
    -webkit-transform: scaleY(0);
    -webkit-opacity: 0;
  }
}
.scaleTIn {
  -webkit-animation-name: scaleTIn;
  animation-name: scaleTIn;
  transform-origin: top;
}

/* 套版特有風格 */
.heading {
  font-size: 2.5rem;
  line-height: 1;
}
main {overflow: hidden;} /* 防下層進場動畫產生 bug */
main#page {
  padding: 2rem 0;
  background-color: #fff;
  background-repeat: no-repeat;
  background-image: 
  linear-gradient(135deg, var(--main-color2) 49.9%, transparent 50%),
  linear-gradient(0deg, #FFF 0%, transparent 80%),
  linear-gradient(225deg, rgba(var(--mc2RGB),.1) 49.9%, transparent 50%),
  linear-gradient(180deg, #FFF 0%, transparent 100%),
  linear-gradient(45deg, rgba(var(--mc2RGB),.1) 49.9%, transparent 50%);
  background-size:
  9vw 9vw,
  50vw 50vw,
  50vw 50vw,
  30vw 30vw,
  30vw 30vw;
  background-position: left top, right top, right top, left bottom, left bottom;
}
#main-menu .nav-link {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 1rem;
  height: 70px;
}

#main-menu .nav-link:hover,
#main-menu .dropdown-toggle[aria-expanded=true] {
  background-color: var(--main-color2);
}
#main-menu .dropdown-item {
  display: block;
  font-weight: bold;
  padding: 1rem;
  border-bottom: 4px solid transparent;
}
#main-menu .dropdown-item:hover {
  color: var(--main-color2);
  border-color: var(--main-color2);
}

.rect-btn {
  transition: 0.5s ease;
  transition-property: background-color, color;
}
.rect-btn:hover {
  background-color: var(--main-color1);
  color: var(--text-inC1);
}
@media (max-width: 991.98px) {
  #HEADER {}
}
@media (min-width: 768px) {
  main#page {padding: 4rem 0;}
}

/**----------------------------
			頁尾
----------------------------**/

#page-footer {
  background-color: var(--main-color1);
  color: var(--text-inC1);
  padding: 2rem;
  padding-bottom: 24px;
}
#page-footer ul {
  padding: 0;
  list-style-type: none;
}
#page-footer > hr {opacity: 1;}
#footer-container {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
}
#footer-logo {
	-webkit-mask-size: contain;
	background-color: #fff;
	/* width: 100%; */
	max-width: 300px;
	/* aspect-ratio: 3/1.5; */
}
.ft-box {
    display: flex;
    flex-direction: column;
}
#footer1 {
  gap: 1rem;
  align-items: center;
  align-self: center;
}
#footer-bottom {
  display: flex;
  flex-direction: column;
  align-self: flex-end;
}

.footerCN {}
.menu-email-form {width: 100%;}
.email-btn {
  display: inline-block;
  padding: 0.5rem 1rem;
  border: 1px solid;
  background-color: transparent;
  color: var(--text-indark);
  transition: background-color 0.2s ease;
}
.email-btn:hover {background-color: var(--main-color1);}
.inquity-btn {
  padding: 1rem;
  width: 100%;
}

.inquity-btn::before {
  content: '';
  width: 24px;
  height: 24px;
  display: inline-block;
  vertical-align: middle;
  margin: 0px 12px;
  -webkit-mask: var(--svg-mail) no-repeat center;
  background-color: var(--text-inC2);
}
.footer-social-group {
  margin: 1rem 0;
}
.footer-social {
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.footer-social-item {
  list-style-type: none;
  padding: 0.5rem;
  border: 1px solid;
  border-radius: 5rem;
  margin: 0.5rem;
}
#copyright {
	font-size: 0.9rem;
	font-weight: 100;
  text-align: center;
}
@media (min-width: 768px) {
  #page-footer {
    padding: 6rem 7.8% 0;
  }
  #footer1 {
    align-self: auto;
  }
  #footer-container {
    flex-direction: row;
  }
  #footer-contactus {width: auto; text-align-last: left;}
  #footer-contactus h3 {margin-bottom: 2em;}
  .footer-social {
    justify-content: flex-end;
  }
  .email-btn.inquity-btn {
    padding: 24px 84px;
  }
}

/**----------------------------
		  次頁開始
----------------------------**/

#suboBanner {
  background-position: center center;
  background-size: cover;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-indark);
  padding-top: 25%;
}
.page-heading {
  --min-size: 24;
  --max-size: 42;
  font-size: 2.5rem;
  --font-size: calc((var(--min-size) * 1px) + (var(--max-size) - var(--min-size)) * ((100cqw - 320px) / (1920 - 320)));
    font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
  margin-bottom: 0.5em;
}
#bannerInfo {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
/* 麵包屑 */
.breadcrumb {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  font-size: 1rem;
  flex-wrap: wrap;
  color: var(--gray);
}
.breadcrumb li a:hover {color: var(--main-color1);}
.breadcrumb li + li::before {
 content: '＞';
 margin: 0 1.5em 0 0.75em;
}
@media (min-width: 992px) {
  html[lang*="zh"] .breadcrumb {font-size: 1.25rem;}
}

	/* bootstrap css */
	.collapsing {
		height: 0;
		overflow: hidden;
		transition: height .35s ease;
	}

/*----------------------------------
  			Back To Top
------------------------------------*/
#goTop {
  position: fixed;
  bottom: 30px;
  right: 30px;
  z-index: 9;
  font-size: 1rem;
  text-align: center;
  border: 0;
  border-radius: 50%;
  outline: none;
  cursor: pointer;
  width: 50px;
  height: 50px;

  background-color: rgba(var(--mc2RGB),.5);
  color: var(--text-inC2);
  transition: .3s ease;
  transition-property: background-color, color;
}

#goTop:hover {
  background: var(--main-color2);
	color: #fff;}

@media (max-width: 450px){

	#goTop {
  	  width: 48px;
  	  height: 48px;	  
	  font-size: 0.5rem;
	  right: 20px;
	}

}
/*----------------------------------
  			不同頁，共同效果
------------------------------------*/

/* animate.css */
.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
@-webkit-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
@keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}
@-webkit-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}
@-webkit-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    transform: translate3d(2000px, 0, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
@keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    transform: translateY(2000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

/* template effect */
.caption h2,
.caption h1,
.caption:before {
  -webkit-clip-path: polygon(0 0,0% 0,0% 100%,0 100%);
  clip-path: polygon(0 0,0% 0,0% 100%,0 100%);
  transition: clip-path .5s ease;
}
.caption:before {
  transition: .4s ease .5s;
}
.caption.animed h2,
.caption.animed h1,
.caption.animed:before {
  -webkit-clip-path:  polygon(0 0,100% 0,100% 100%,0 100%);
  clip-path: polygon(0 0,100% 0,100% 100%,0 100%);
}