@charset "UTF-8";
.faq-style-4 .collapse-app > .item .content:hover, .faq-style-4 .collapse-app > .item .content.collapsed, .faq-style-4 .collapse-app > .item .content, .sidebar.open, .sidebar .second-wrapper.open, .sidebar .second-wrapper, .sidebar, .btn-gotop.style-2::before {
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}

.dropdown-style-1 .item-dropdown {
  -webkit-box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
}

/*--------------------------------------------------------------------------*/
/*------------------------------- 全站通用樣式 -------------------------------*/
/*----- 基礎設定 -----*/
body {
  font-size: 18px;
  background: #F5F5F3;
  color: #1C1C1C;
  font-family: Arial, Microsoft JhengHei, sans-serif;
}
@media (max-width: 1199px) {
  body {
    font-size: 16px;
  }
}

a, a:hover {
  color: #1C1C1C;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}

:focus {
  outline: none;
}

ul li:not(:last-child) {
  margin-bottom: 6px;
}
ul.list {
  padding-left: 0;
}
ul.list li {
  list-style: none;
  padding-left: 0;
}

.result-page .btn {
  background: #888;
}

.main {
  min-height: calc(100vh - 76px - 120px);
}
@media (max-width: 767px) {
  .main {
    min-height: calc(100dvh - 76px - 120px);
  }
}

@media (min-width: 768px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl {
    max-width: 600px;
  }
}
@media (max-width: 767px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl {
    max-width: 100%;
  }
}
/*----- GoTop -----*/
.btn-gotop.style-1 {
  color: white;
  position: absolute;
  top: auto;
  bottom: 8rem;
  left: auto;
  right: 3rem;
  z-index: 4;
}
.btn-gotop.style-1:hover {
  opacity: 0.8;
}
.btn-gotop.style-1::before {
  content: "";
  width: 37px;
  height: 1px;
  background: white;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.btn-gotop.style-1.left {
  padding-left: 65px;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transform-origin: bottom right;
          transform-origin: bottom right;
}
.btn-gotop.style-1.left::before {
  left: 12px;
}
.btn-gotop.style-1.right {
  padding-right: 65px;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transform-origin: bottom right;
          transform-origin: bottom right;
}
.btn-gotop.style-1.right::before {
  right: 12px;
}
.btn-gotop.style-1 {
  animation: icon-scroll 0.8s infinite alternate;
  -moz-animation: icon-scroll 0.8s infinite alternate;
  -webkit-animation: icon-scroll 0.8s infinite alternate;
}
.btn-gotop.style-1:hover {
  color: white;
}
.btn-gotop.style-2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.btn-gotop.style-2::before {
  content: "\f106";
  font-family: fontello;
  width: 45px;
  height: 45px;
  background: #777777;
  color: white;
  font-size: 1.25rem;
  font-weight: 700;
  border-radius: 100%;
  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;
  margin-right: 15px;
}

@-webkit-keyframes icon-scroll {
  0% {
    -webkit-transform: translateY(0) rotate(90deg);
            transform: translateY(0) rotate(90deg);
  }
  100% {
    -webkit-transform: translateY(-15px) rotate(90deg);
            transform: translateY(-15px) rotate(90deg);
  }
}

@keyframes icon-scroll {
  0% {
    -webkit-transform: translateY(0) rotate(90deg);
            transform: translateY(0) rotate(90deg);
  }
  100% {
    -webkit-transform: translateY(-15px) rotate(90deg);
            transform: translateY(-15px) rotate(90deg);
  }
}
/*----- 社群分享 or 連結 -----*/
.social-medias {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-left: -5px;
  margin-right: -5px;
  margin-bottom: 0;
  padding-left: 0;
}
.social-medias li {
  list-style: none;
  padding-left: 0;
  padding-left: 5px;
  padding-right: 5px;
}
.social-medias .item {
  font-size: 1rem;
}
.social-medias.circle .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-line-pack: center;
      align-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 30px;
  height: 30px;
  border-radius: 100%;
  background: #EB2627;
  color: white;
  font-size: 80%;
}
.social-medias.circle .item img {
  width: 80%;
}
.social-medias.circle .item:hover {
  opacity: 0.8;
}
.social-medias.circle.light .item {
  background: white;
  color: #EB2627;
}
.social-medias.circle.dark .item a {
  background: #777777;
  color: #EB2627;
}
.social-medias.circle.dark .item a:hover {
  background: #EB2627;
  color: white;
}

/*----- 內頁分類連結樣式 -----*/
.nav_sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 0;
  margin-left: -1.822916666vw;
  margin-right: -1.822916666vw;
}
.nav_sub .item {
  list-style: none;
  padding: 0;
  padding-left: 1.822916666vw;
  padding-right: 1.822916666vw;
}
.nav_sub .item a {
  color: #bababa;
}
.nav_sub .item:hover a {
  color: #EB2627;
}
.nav_sub .item.active a {
  color: #EB2627;
}

/*----- 搜尋列樣式 -----*/
.searchbar-wrapper {
  position: relative;
}
.searchbar-wrapper .searchbar {
  padding: 10px clamp(20px, 2.60416vw, 50px) 10px clamp(15px, 1.5625vw, 30px);
  border: 1px solid #bababa;
  color: #bababa;
  border-radius: 100px;
  min-width: 20vw;
}
.searchbar-wrapper .search {
  position: absolute;
  top: 50%;
  right: clamp(15px, 1.0416vw, 20px);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 2;
  background: transparent;
}
.searchbar-wrapper .search .material-symbols-outlined {
  font-size: 20px;
  color: #bababa;
}
.searchbar-wrapper .search:hover .material-symbols-outlined {
  color: #EB2627;
}

/*----- Google icons -----*/
.material-symbols-outlined {
  font-size: inherit;
}

/*----- logo 大小 -----*/
/* 電腦版 Header */
.desktop .logo img {
  width: clamp(180px, 14.583vw, 280px);
  height: clamp(37px, 2.34375vw, 58px);
}

/* 電腦版 Footer */
.footer {
  width: 100%;
  height: 120px;
}
.footer .logo img {
  width: auto;
  height: 60px;
}
.footer-style-3 .content {
  padding: 15px 25px;
}

/*--------------------------------------------------------------------------*/
/*------------------------------ Header 樣式 --------------------------------*/
/*----- 語系樣式 -----*/
.lan .dropdown-menu {
  /* base.css 給 .dropdown-menu 的 min-width 是 10rem（160px），
     在 390px 的手機上佔掉 41% 寬度。改成依內容撐開。

     注意：這裡絕對不能設 display。base.css 是用 display 控制開合的
     （.dropdown-menu{display:none} / .dropdown-menu.show{display:block}），
     而 .lan .dropdown-menu 的權重比 .dropdown-menu 高，
     一旦在這裡寫 display，就會蓋掉預設的 none，選單會變成常駐展開。
     所以語系之間的行距改用下面的 margin 做，不用 flex gap。 */
  min-width: 0;
  width: -webkit-max-content;
  width: max-content;
  padding: 6px;
}
.lan .dropdown-menu .dropdown-item + .dropdown-item {
  margin-top: 4px;
}
.lan .dropdown-item button {
  /* 手指點擊範圍：每項至少 48px 高（iOS HIG 建議 44、Material 建議 48）。
     原本只有 26px，在手機上很難點中。 */
  min-height: 48px;
  padding: 0 22px;
  font-size: 16px;
  line-height: 1.3;
  white-space: nowrap;
  border-radius: 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.lan .dropdown-item button:hover {
  color: #EB2627;
  background: rgba(235, 38, 39, 0.08);
}
/*----- 目前語系 -----*/
.lan .dropdown-item.active button {
  color: #EB2627;
  font-weight: 700;
}

/*----- 下拉樣式 -----*/
.dropdown-style-1 .nav-item.dropdown {
  position: revert !important;
}
.dropdown-style-1 .item-dropdown {
  width: 60vw;
  position: absolute;
  right: clamp(35px, 3.64583vw, 70px);
  left: auto;
  top: calc(5.468743vw + 2px);
  background: white;
  padding: 2.60416vw;
  z-index: 5;
}
.dropdown-style-1 .item-dropdown .img-hover-larger {
  background: #ebebeb;
}
.dropdown-style-1 .item-dropdown .title-main {
  margin-bottom: 20px;
  font-weight: 700;
  color: #EB2627;
}
.dropdown-style-1 .item-dropdown .title {
  text-align: center;
  margin-top: 15px;
  color: #1C1C1C;
}
.dropdown-style-2 .nav-item.dropdown {
  position: revert !important;
}
.dropdown-style-2 .item-dropdown {
  padding: clamp(35px, 3.64583vw, 70px);
  background: #EB2627;
  color: white;
  left: 0;
  width: 100%;
}
.dropdown-style-3 .nav-item.dropdown {
  position: revert !important;
}
.dropdown-style-3 .nav-item.dropdown:hover > a::before {
  display: none !important;
}
.dropdown-style-3 .item-dropdown {
  left: 50% !important;
  -webkit-transform: translate(-50%, 0) !important;
          transform: translate(-50%, 0) !important;
}
@media (min-width: 1921px) {
  .dropdown-style-3 .item-dropdown {
    width: 1540px;
  }
}
@media (max-width: 1920px) {
  .dropdown-style-3 .item-dropdown {
    width: calc(63.54168vw + 60px);
  }
}
@media (max-width: 1440px) {
  .dropdown-style-3 .item-dropdown {
    width: 86vw;
  }
}
@media (max-width: 768px) {
  .dropdown-style-3 .item-dropdown {
    width: 100%;
  }
}
.dropdown-style-3 .item-dropdown .wrapper {
  background: white;
  padding: clamp(20px, 2.60416vw, 50px) clamp(35px, 3.64583vw, 70px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.dropdown-style-3 .item-dropdown .title-main {
  font-weight: 700;
  color: #EB2627;
  margin-bottom: 20px;
}
.dropdown-style-3 .item-dropdown .list {
  margin-bottom: 0;
  border-left: 1px solid #bababa;
  padding-left: clamp(20px, 1.5625vw, 30px);
  margin-left: clamp(20px, 1.5625vw, 30px);
  height: 100%;
}
.dropdown-style-3 .item-dropdown .list .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #777777;
  margin-bottom: clamp(15px, 1.0416vw, 20px);
  height: 100%;
}
.dropdown-style-3 .item-dropdown .list .material-symbols-outlined {
  color: #EB2627;
  margin-right: 5px;
}

/*----- Header 樣式 -----*/
.header {
  background: white;
  /* .header 與 .main 都是 position:relative + z-index:auto，這種情況照 DOM 順序疊，
     .main 在後面所以蓋在 header 上。語系選單展開後會延伸到 header 以外，
     那一段會被 .main 吃掉點擊事件（看得到但點不到）。所以要在 .header 這層拉高。
     註：選單現在整個開在 header 下方，更需要這一行。 */
  z-index: 10;
}
.header .lan {
  font-weight: 700;
  padding: clamp(15px, 1.0416vw, 20px) 0 clamp(20px, 1.822916vw, 35px);
  margin-left: 0;
}
.header .lan .dropdown-toggle {
  background: none;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #1C1C1C;
}
.header .lan .dropdown-toggle .material-symbols-outlined {
  margin-right: 5px;
}
.header .lan .dropdown-toggle::after {
  display: none;
}
.header .top-bar {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #EB2627;
  color: white;
  padding: 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1;
}
.header .top-bar .icon {
  margin-right: 10px;
  -webkit-transform: translateY(-3px);
          transform: translateY(-3px);
}
.header .top-bar .icon img {
  width: clamp(15px, 1.0416vw, 20px);
  height: clamp(15px, 1.0416vw, 20px);
}
.header .nav-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: clamp(20px, 1.822916vw, 35px);
}
.header .nav {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-left: clamp(-20px, -1.0416vw, -10px);
  margin-right: clamp(-20px, -1.0416vw, -10px);
}
.header .nav > .nav-item {
  padding-left: clamp(10px, 1.0416vw, 20px);
  padding-right: clamp(10px, 1.0416vw, 20px);
}
.header .nav > .nav-item > a {
  padding: clamp(15px, 1.0416vw, 20px) 0 clamp(20px, 1.822916vw, 35px);
  font-weight: 700;
  color: #1C1C1C;
}
.header .nav > .nav-item:hover a, .header .nav > .nav-item.active a {
  color: #EB2627;
}
.header .desktop {
  -webkit-box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
}
.header .desktop .left, .header .desktop .right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.header .mobile .logo {
  background: #222222;
  color: white;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.header .mobile .mobile-nav .logo {
  background: #707070;
  color: white;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.header .mobile .logo {
  padding: 10px 25px 6px;
  height: 76px;
}
.header .mobile .logo a img {
  /* 原本寫死 195x60（比例 3.25），是配合舊 logo 的 1024x319.7。
     新的 logo.svg 是 2149x732（比例 2.94），再套死尺寸會被橫向拉長約 10%。
     改成鎖高度、寬度自動，換 logo 也不會變形。 */
  width: auto;
  height: 60px;
}
.header .mobile .btn {
  color: white;
  /* base.css 把這顆按鈕寫死 width:48px，只放得下一個圖示。
     加上「清單」文字後會被擠成直排，所以要放寬並禁止換行。 */
  width: auto;
  gap: 6px;
  white-space: nowrap;
}
.header .mobile .btn .label {
  /* 按鈕本身是 1.8rem（給圖示用的），文字要單獨縮回正常大小 */
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
}
.header .mobile .lan {
  /* 原本用 top:50% + translateY(-50%) 垂直置中，選單的 top:100% 會落在按鈕正下方
     （約 y=49），而 header 有 76px 高，所以展開時必定蓋住 logo。
     改成撐滿 header 高度、內部用 flex 置中：外觀位置不變，
     但選單的 top:100% 會落在 header 底部，不再擋住 logo。 */
  position: absolute;
  color: white;
  left: 25px;
  top: 0;
  bottom: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.header .mobile .lan .dropdown-toggle {
  color: white;
  /* 原本整顆按鈕只有 18px 高，比選單項目還難點。撐到 48px，
     用負 margin 抵銷 padding，讓文字視覺位置維持在 left:25px。 */
  min-height: 48px;
  padding: 0 10px;
  margin-left: -10px;
  gap: 6px;
  /* 這行是 min-height 的配套，不能省。
     .header .lan .dropdown-toggle 有設 display:flex 但沒設 align-items，
     預設的 stretch 會把 <i> 與 <span> 拉成滿高，文字就貼在各自方塊頂端。
     按鈕只有 18px 高時看不出來，撐到 48px 後會明顯偏上。 */
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.header .mobile .lan .dropdown-toggle .lang-abbr {
  display: none;
}
@media (max-width: 600px) {
  /* 手機版 header 左側只剩約 82px（logo 置中、右側還有清單按鈕），
     放完整語系名稱會疊到 logo，所以改顯示縮寫。 */
  .header .mobile .lan .dropdown-toggle .lang-full {
    display: none;
  }
  .header .mobile .lan .dropdown-toggle .lang-abbr {
    display: inline;
  }
}
.header .mobile .lan .dropdown-item a:hover, .header .mobile .lan .dropdown-item button:hover {
  color: black;
}
/*-------------------------------------------------------------------------*/
/*-------------------------------- Index ----------------------------------*/
.form-control {
  border: 1px solid #707070;
  border-radius: 10px;
  height: 70px;
}
.form-control.error {
  border-color: red;
}

.btn-send-style {
  background: black;
  color: white;
  border-radius: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 50px;
}
.btn-send-style:hover {
  color: white;
}

.btn-add-style {
  background: green;
  color: white;
  border-radius: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 50px;
}
.btn-add-style:hover {
  color: white;
}

.btn-back {
  width: 100%;
  background: #707070;
  border-radius: 10px;
  color: white;
  height: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.btn-back:hover {
  background: #707070;
  color: white;
  opacity: 0.8;
}

.btn-delete-style {
  background: red;
  color: white;
  width: 160px;
  height: 50px;
  border-radius: 10px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.checkbox-style-wrapper input {
  display: none;
}
.checkbox-style-wrapper .checkbox-style {
  text-align: left;
  position: relative; /* 建立定位上下文，方便偽元素絕對定位 */
  padding-left: 36px; /* 為自訂核選方塊留出空間 */
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  width: 100%;
  margin-bottom: 0;
}
.checkbox-style-wrapper .checkbox-style::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 26px;
  height: 26px;
  border: 1px solid #707070;
  background-color: white; /* 預設背景色 */
}

/* 選取後的樣式 */
input:checked + .checkbox-style::before {
  background-color: #1C1C1C;
}

.amount {
  width: 35px;
  height: 35px;
  color: white;
  background: #707070;
  border-radius: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-right: 10px;
}

.sidebar {
  position: fixed;
  left: 0;
  top: 0;
  height: 100vh;
  width: calc(100% - 20px);
  -webkit-transform: translateX(-100vw);
          transform: translateX(-100vw);
  -webkit-box-shadow: 0 5px 25px rgba(0, 0, 0, 0.15);
          box-shadow: 0 5px 25px rgba(0, 0, 0, 0.15);
  z-index: 5;
}
.sidebar * {
  pointer-events: none;
}
.sidebar .wrapper {
  background: white;
  min-height: 100vh;
  width: 100%;
}
.sidebar .wrapper .main {
  height: calc(100vh - 76px - 180px);
  padding: 10px 0;
  overflow-y: auto;
}
.sidebar .wrapper .main .list {
  padding-left: 0;
  margin-bottom: 0;
}
.sidebar .wrapper .main .list li {
  padding-left: 0;
  border-bottom: 1px solid #C6C6C6;
}
.sidebar .wrapper .main .list li > button {
  padding: 20px 20px 20px 40px;
  background: transparent;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.sidebar .wrapper .main .list li > button .amount {
  margin-left: auto;
  width: 35px;
  height: 35px;
  color: white;
  background: #707070;
  border-radius: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-right: 10px;
}
.sidebar .second-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  -webkit-transform: translateX(-100vw);
          transform: translateX(-100vw);
  background: white;
}
.sidebar .second-wrapper.open {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
.sidebar .second-wrapper.open * {
  pointer-events: auto;
}
.sidebar .second-wrapper .logo > .close-btn {
  right: auto;
  left: 25px;
}
.sidebar .btn-wrapper {
  position: fixed;
  bottom: 0;
  left: 0;
  padding: 10px;
  width: 100%;
}
.sidebar .btn-wrapper .btn-send-style {
  margin-bottom: 10px;
}
.sidebar .logo {
  padding: 15px 25px 15px;
  background: #707070;
  position: relative;
  height: 76px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: white;
  font-weight: 700;
}
.sidebar .logo .close-btn {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 20px;
  background: transparent;
  padding: 0;
  color: white;
}
.sidebar .logo img {
  width: 220px;
  height: 46px;
}
.sidebar.open {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
.sidebar.open * {
  pointer-events: auto;
}

.select-wrapper-2 {
  border: 1px solid #707070;
  border-radius: 10px;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  background: white;
}
.select-wrapper-2 .btn {
  width: 100%;
  background: transparent;
  padding: 0 15px;
  height: 70px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.select2-container {
  width: 100% !important;
}

.select2-container .select2-selection--single {
  height: 60px;
  width: 100%;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 60px;
  font-size: 22px;
  text-align: center;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.select2-container--default .select2-results__group, .select2-container--default .select2-results__option .select2-results__option {
  font-size: 22px;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
  height: 50px;
  font-size: 22px;
  padding: 5px 10px;
}

ul.tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  margin-left: -5px;
  margin-right: -5px;
}
ul.tags li {
  padding-left: 5px;
  padding-right: 5px;
}
ul.tags li .tag {
  padding: 5px 15px;
  border-radius: 50px;
  border: 1px solid #707070;
  display: block;
}

.security .form-control {
  width: calc(100% - 115px);
}

label.error {
  margin-top: 10px;
  font-size: 16px;
  opacity: 0.8;
  color: red;
}

/*-------------------------------------------------------------------------*/
/*-------------------------------- Result ----------------------------------*/
.list.model-main .item {
  padding: 20px 35px;
}
.list.model-main .title {
  color: #333;
  margin-bottom: 10px;
  font-size: 24px;
}
.list.model-main > li {
  padding: 30px 35px;
}
.list.model-main > li:not(:last-child) {
  border-bottom: 1px solid #D4D4D4;
}
.list.model-sec li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #1C1C1C;
  font-size: 20px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.list.model-sec li:not(:last-child) {
  margin-bottom: 10px;
}
.list.model-sec li .title {
  color: #1C1C1C;
  margin-bottom: 0;
  width: 145px;
  padding-right: 15px;
  font-size: 20px;
}
.list.model-sec li .des {
  width: calc(100% - 145px);
  margin-top: 1px;
}
.list.model-sec li .form-control {
  height: 40px;
  max-width: 180px;
}

.faq {
  padding: 0;
}
.faq .btn {
  font-size: 22px;
}

.faq-style-4 .collapse-app > .item:hover .content > .title {
  color: unset;
}
.faq-style-4 .collapse-app > .item .content {
  padding: 20px 35px;
  font-size: 26px;
  background: #707070;
  color: white;
}
.faq-style-4 .collapse-app > .item .content.collapsed {
  background: #999999;
}
.faq-style-4 .collapse-app > .item .content:hover {
  background: #707070;
}
.faq-style-4 .collapse-app > .item .list {
  margin-bottom: 0;
  padding-left: 0;
}
.faq-style-4 .collapse-app > .item .list.model-main .title {
  color: #333;
  margin-bottom: 10px;
  font-size: 24px;
}
.faq-style-4 .collapse-app > .item .list.model-main > li {
  padding: 30px 35px;
}
.faq-style-4 .collapse-app > .item .list.model-main > li:not(:last-child) {
  border-bottom: 1px solid #D4D4D4;
}
.faq-style-4 .collapse-app > .item .list.model-sec li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #1C1C1C;
  font-size: 20px;
}
.faq-style-4 .collapse-app > .item .list.model-sec li:not(:last-child) {
  margin-bottom: 10px;
}
.faq-style-4 .collapse-app > .item .list.model-sec li .title {
  color: #1C1C1C;
  margin-bottom: 0;
  width: 145px;
  padding-right: 15px;
  font-size: 20px;
}
.faq-style-4 .collapse-app > .item .list.model-sec li .des {
  width: calc(100% - 145px);
  margin-top: 1px;
}
.faq-style-4 .collapse-app > .item .list.model-sec li .form-control {
  height: 40px;
}

.table.inquiry {
  font-size: 16px;
}
.table.inquiry .btn-delete-style {
  width: 30px;
  height: 30px;
}
.table.inquiry .form-control {
  padding: 5px;
  font-size: 16px;
  height: auto;
  border-radius: 0px;
}
.table.inquiry tr th, .table.inquiry tr td {
  border: 1px solid #aaa;
  padding: 5px;
  background: white;
}
.table.inquiry thead tr th, .table.inquiry thead tr td {
  background: #333;
  color: white;
}
.table.inquiry tbody tr th {
  background: #666;
  color: white;
}
.table.inquiry button {
  background: transparent;
  padding: 0;
}
@media (max-width: 375px) {
  .table.inquiry {
    font-size: 12px;
  }
  .table.inquiry .form-control {
    font-size: 12px;
  }
}
/*--------------------------------------------------------------------------*/
/*------------- 對齊 layout 的視覺語彙（字距、主標階梯） --------------------*/
/*----- layout 的區塊大標都帶字距，calc 這邊沿用同一組數值，
        兩個站點的標題看起來才是同一套設計。
        .letter-space 原本只定義在 layout 的 style_acaa.scss 裡。 -----*/
.letter-space {
  letter-spacing: clamp(4px, 0.520833vw, 10px);
  text-indent: clamp(4px, 0.520833vw, 10px);
}
@media (max-width: 550px) {
  .letter-space {
    letter-spacing: 0;
    text-indent: 0;
  }
}

/*----- 「我是品牌代表」連結 -----*/
/* 原本掛 color-darkblue（calc 獨有的變數，layout 沒有這個色），
   在頁面上就是瀏覽器預設的藍色底線連結，跟站上其他元素格格不入。
   改成品牌黑，hover 用深金 #C41E1F —— 主金 #EB2627 在淺底只有 2:1，
   layout 那邊的淺色底金字也是統一改用深金。
   順帶把原本寫在 HTML 的 inline white-space 移進來。 */
.link-owner {
  white-space: nowrap;
  /* 金色文字：主金 #EB2627 在這頁的淺底只有 2:1 對比，
     所以用深金 #C41E1F（layout 的淺色底金字也是統一用這個），
     hover 再轉品牌黑做狀態變化。底線已從 HTML 移除。 */
  color: #C41E1F;
  text-decoration: none;
  transition: all 0.25s ease-in-out;
}
.link-owner:hover {
  color: #1C1C1C;
}
