@charset "UTF-8";
:root {
  --header-height: 50px;
  --primaryNav-height: 50px;
}

body {
  display: flex;
  flex-flow: column nowrap;
  min-height: 100vh;
  justify-content: stretch;
  padding-top: var(--header-height);

  /* .body-index */
  background: #fff;
}
header {
  --header-bg: rgba(255, 255, 255, 0.9);
  position: fixed;
  width: 100%;
  top: 0;
  background: var(--header-bg);
  z-index: 20;
}
header .dropdown-menu {
  --bs-dropdown-border-radius: 0 !important;
}
.navbar-index {
  padding: 0;
}
header .navbar-mainHeader {
  height: var(--header-height);
  z-index: 9999;
}
header .offcanvas-top {
  top: var(--header-height) !important;
}

.navbar-primaryNav {
  --bs-nav-link-color: var(--bs-gray-700);
  --bs-nav-link-hover-color: var(--bs-gray-900);
  --bs-nav-link-disabled-color: var(--bs-gray-500);
}
.navbar-brand {
  --bs-navbar-brand-padding-y: 0.5rem;
  display: flex;
  flex: 1;
  width: 0;
  height: 100%;
}
._logo {
  width: auto;
  height: auto;
  max-height: 100%;
  max-width: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

/* main */
main {
  flex: 1;
}
:is(.section-index-parallax, .section-search-parallax) {
  --block-w: 100%;
  --block-py: 70px;
  --block-mx: auto;
  --container-parallax-img-fit: cover;
  --container-parallax-img-h: auto;
  --container-parallax-img-w: 100%;
  position: relative;
  overflow: hidden;
}
:is(.section-index-parallax, .section-search-parallax) .block-search {
  width: var(--block-w);
  height: var(--block-h);
  padding-top: var(--block-py);
  padding-bottom: var(--block-py);
  margin-left: var(--block-mx);
  margin-right: var(--block-mx);
}
:is(.section-index-parallax, .section-search-parallax) .index-parallax-img {
  position: absolute;
  bottom: 0;
  left: 0;
  width: var(--container-parallax-img-w);
  height: var(--container-parallax-img-h);
  min-height: 100%;
  object-fit: var(--container-parallax-img-fit);
  z-index: -1;
}
:is(.section-index-parallax, .section-search-parallax) [class*="btn-outline-"] {
  --bs-btn-bg: #fff;
}
.section-search-parallax .index-parallax-img {
  display: block;
  /* transition: transform 1s ease-in-out;
	transform:matrix3d() */
}
.section-topics {
  padding-top: 60px;
}
.section-topics .block-cardWide:is(:hover, :focus) {
  cursor: pointer;
}
.section-topics .block-cardWide:is(:focus-within) .block-interactive {
  border: 4px solid var(--bs-main);
}
.section-topics .block-cardWide .p-card {
  position: absolute;
  width: 100%;
  height: 40px;
  bottom: 0;
  padding: 0.75rem 0.5rem;
  background: var(--bs-main);
}

/* .section-topics .g-td:nth-child(even) .block-cardWide .p-card {
  background: #d05353;
} */

.section-topics .g-td:nth-child(4n + 1),
.section-topics .g-td:nth-child(4n + 2) .block-cardWide .p-card {
  background: #d05353;
}
.section-topics .g-td:nth-child(4n + 3) .block-cardWide .p-card {
  background: #d05353;
}

/* .section-topics .g-td:nth-child(4n + 1) .block-cardWide .p-card {
  background: #3a4a5a;
}

.section-topics .g-td:nth-child(4n + 2) .block-cardWide .p-card {
  background: #d68c6c;
}

.section-topics .g-td:nth-child(4n + 3) .block-cardWide .p-card {
  background: #d05353;
} */

.section-topics .block-cardWide .title {
  position: absolute;
  bottom: 0.5rem;
  width: 100%;
  font-weight: var(--bs-fw-bold);
  font-size: var(--bs-fs-h3);
  line-height: var(--bs-lh-base);
  letter-spacing: 0.256px;
  color: #ffffff;
  text-shadow: 2px 1px 0px rgba(0, 0, 0, 0.24);
}
.section-topics .block-cardWide:is(:hover, :focus) .title {
  text-shadow: 2px 1px 0px rgba(0, 0, 0, 0.48);
}

.section-collection {
  position: relative;
  padding-top: 60px;
  padding-bottom: 60px;
  overflow: hidden;
}
.section-collection .swiper-wrapper {
  height: 100%;
  padding-top: 1.5rem;
}
.section-collection .swiper-slide {
  display: flex;
  flex-flow: column nowrap;
  gap: calc(24px + var(--slider-line-height));
  height: auto;
}

:is(.section-collection, .block-item) .block-cardWide {
  --card-py: 0.5rem;
  --card-px: 0.5rem;
  padding: 0.5rem;
  display: flex;
  flex-flow: column nowrap;
  flex: 1 0 100%;
  border: 1px solid var(--bs-gray-300);
  border-radius: var(--card-radius);
  box-shadow: var(--bs-box-shadow);
  background: #fff;
  height: 100%;
}
:is(.section-collection, .block-item .block-cardWide)
  .block-cardWide
  .block-interactive {
  display: flex;
  flex-flow: column nowrap;
  text-decoration: none;
  flex-shrink: 0;
}

:is(.block-item-image, .block-searchItem-image) {
  background: var(--bs-gray-200);
}
:is(.block-item-image, .block-searchItem-image) :is(img, ._img) {
  --img-fit: contain;
}
:is(.section-collection, .block-item .block-cardWide) .block-cardWide .p-card {
  display: flex;
  flex: 1 1 0%;
  flex-direction: column;
  align-self: stretch;
}
.section-collection .block-cardWide .title,
.block-item .block-cardWide ._title {
  letter-spacing: 0.256px;
  font-weight: var(--bs-fw-bold);
  font-size: var(--bs-fs-h5);
  line-height: var(--bs-lh-base);
  color: var(--bs-gray-800);
  text-decoration: none;
  height: 100%;
}
:is(.section-collection, .block-item .block-cardWide) ._decoration {
  position: absolute;
  left: -60px;
  top: 0px;
  z-index: -1;
}
:is(.block-searchItem-title, .block-item) ._title {
  color: var(--bs-gray-800);
}
:is(.block-searchItem-title, .block-item) ._title:is(:hover, :focus) {
  color: var(--bs-main);
}
:is(.section-collection, .block-item) .block-cardWide:is(:hover, :focus) {
  box-shadow: var(--bs-box-shadow-lg);
  color: var(--bs-main);
}

.indexSwiper {
  --slider-line-height: 2px;
  --slider-line-color: var(--bs-main);
  --slider-order-height: 2.625rem;
  position: relative;
  display: flex;
  flex-flow: column nowrap;
  gap: 24px;
}
.indexSwiper .swiper-wrapper {
  flex: 1 1 0;
}
.indexSwiper .swiper-slide {
  display: flex;
  flex-flow: column nowrap;
  gap: calc(24px + var(--slider-line-height));
}
.indexSwiper .swiper-slide ._order {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  gap: 12px;
  height: var(--slider-order-height);
}
.indexSwiper .swiper-slide ._order ._num {
  position: relative;
  border: 1px solid var(--bs-main);
  border-radius: var(--bs-border-radius-pill);
  color: var(--bs-main);
  font-size: 1rem;
  padding: 0.5rem 0.75rem;
  background: #fff;
}
.indexSwiper .swiper-slide ._order ._num::before {
  content: "";
  position: absolute;
  display: block;
  width: 1rem;
  height: 50%;
  background: var(--bs-main);
  bottom: -1px;
  left: -1px;
  z-index: -1;
}
.indexSwiper .swiper-slide :is(._description, ._description .figure) {
  display: flex;
  flex-flow: column nowrap;
  gap: 12px;
}
.indexSwiper .swiper-slide ._description .figure {
  margin-bottom: 0;
}
.indexSwiper .swiper-slide ._description ._list {
  display: flex;
  flex-flow: row nowrap;
  align-items: start;
  gap: 12px;
}
.indexSwiper .swiper-slide ._description ._list > *:first-child {
  flex: 0;
}
.indexSwiper .swiper-footer {
  --swiper-navigation-sides-offset: 0;
  --swiper-pagination-bullet-size: 10px;
  --swiper-pagination-bottom: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 3%;
}
.indexSwiper
  .swiper-footer
  :is(.swiper-pagination, .swiper-button-next, .swiper-button-prev) {
  position: relative;
  left: 0;
  margin-top: 0;
  transform: translateX(0%);
}

.section-search {
  background: rgba(255, 255, 255, 0);
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}

.section-search.fixed-bottom ~ footer {
  --search-height: 124px;
}

.content-moments {
  background: #e4e7ed;
}
.content-moments > .tab-content {
  max-height: 90vh;
  overflow-y: auto;
}
/* 自訂元件、組件 */
.btn-gotop {
  --bs-btn-bg: #fff;
  --bs-btn-hover-bg: #fff;
  --bs-btn-border-color: var(--bs-btn-color);
  --bs-btn-hover-border-color: var(--bs-btn-hover-color);
  position: fixed;
  border-radius: 100px;
  border: 0;
  right: 24px;
  bottom: 24px;
  font-size: 2rem;
  line-height: 1;
  padding: 0;

  z-index: 1033;
}
.input-group .btn-group > .btn {
  --bs-btn-border-radius: 0 !important;
}
.btn-select {
  --bs-btn-bg: #fff;
  --bs-btn-hover-bg: #fff;
  --bs-btn-focus-bg: #fff;
  --bs-btn-active-bg: #fff;
  --bs-btn-active-border-color: #86b7fe;
  --bs-btn-hover-border-color: var(--bs-border-color);
  --bs-btn-focus-border-color: #86b7fe;
  border: var(--bs-border-width) solid var(--bs-border-color);
}
.btn-select:focus {
  border-color: #86b7fe;
  -webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.nav-content-mainLeft {
  --bs-nav-link-font-size: var(--bs-fs-h5);
}
.nav-content-mainRight {
  --bs-nav-link-font-size: var(--bs-fs-h4);
}
.content-mainCenter ._content {
  line-height: var(--bs-line-height-lg);
}
/* - block-search搜尋元件 */
.block-search .form-select {
  flex-grow: 0;
  width: auto;
}
/* - block-searchList搜尋區塊 */
.block-searchList {
  display: flex;
  flex-flow: column nowrap;
  gap: 24px;
}
.block-searchList-footer input[type="number"] {
  width: 6rem;
}
/* 組件-block-item */
.block-item-container {
  display: flex;
}

/* 組件-block次區塊 */
.block-pageTitle {
  align-content: stretch;
}
.block-pageTitle-content {
  display: flex;
  align-self: center;
}
.block-searchItem {
  --bg-lighter: #fff;
  --border: 1px solid rgba(var(--bs-main-rgb), 0.5);
  --border-hover: 1px solid rgba(var(--bs-main-rgb), 1);
  display: flex;
  flex-flow: row nowrap;
  gap: 1rem !important;
  justify-content: center;
  align-items: stretch;
  width: 100%;
  background: var(--bg-lighter);
}
.block-searchItem._list:not(:last-of-type) {
  border-bottom: var(--border);
}
.block-searchItem._list:not(:last-of-type):is(:hover, :focus) {
  border-bottom: var(--border-hover);
}
.block-searchItem:hover,
.block-searchItem:focus {
  --bg-lighter: rgba(var(--bs-accessoryLight-rgb), 0.1);
  transition: all 0.3s;
}
.block-searchItem-order {
  min-width: 48px;
  flex: 0 0 48px;
  word-break: break-word;
}
.block-searchItem-order .form-check {
  display: block;
}
.block-searchItem-main {
  display: flex;
  flex-flow: column nowrap;
  flex: 1 1 auto !important;
  min-width: 0;
  gap: 12px;
  /* margin-top: -.375rem; */
}
.block-searchItem-title {
  display: flex;
  align-items: center;
}
.block-searchItem-title a {
  text-decoration: none;
}
:is(.block-searchItem-title, .block-item) ._title {
  font-weight: var(--bs-fw-bold);
}
/* .block-searchItem-content dl{
	border-bottom:0;
} */
.block-searchItem .block-save {
  right: -0.625rem;
  top: -0.625rem;
}

/* 組件-block _nameCard  block-nameWithBadge */
.block-nameWithBadge {
  display: flex;
  gap: 12px;
  align-items: end;
}
.block-nameWithBadge > :is(:first-child, ._name) {
  flex: 1 1 0%;
}
.block-nameWithBadge > ._badge {
  flex: 0 0 auto;
  align-self: center;
}
/* 組件-block-title-header */
.block-pageTitle .block-title-header ._title {
  font-size: var(--bs-fs-h4);
  font-weight: var(--bs-fw-bold);
  text-align: center;
}
/* 組件-標籤block-bookTag */
.block-bookTag {
  position: absolute;
  display: flex;
  flex-flow: row wrap;
  gap: 0.25rem;
  justify-content: end;
  align-items: end;
  padding: 0.25rem;
  z-index: 2;
}
/* 組件-文章區塊content-essay block-essay */
/* .content-essayMain ._content{} */
.block-essay {
  --content-gap: 1.5rem 0;
  --footer-bg: rgba(var(--bs-accessoryLight-rgb), 0.25);
  --footer-padding: 12px 24px;
  --footer-gap: 6px 12px;

  display: flex;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-item-align: stretch;
  align-self: stretch;
  gap: var(--content-gap);
}
.block-essay ._footer {
  display: flex;
  flex-flow: row wrap;
  gap: var(--footer-gap);
  padding: var(--footer-padding);
  background: var(--footer-bg);
}
/* 組件-地圖 block-map RWD*/
/* .block-map ._itemTab{
	display: flex;
	height: 100%;
} */
.block-map ._itemMap {
  position: relative;
  display: flex;
  flex: 0 0 auto;
}
.block-map ._itemMap ._contentWrapper {
  position: relative;
  flex: 1 0 auto;
  overflow-y: auto;
  height: 30vh;
}
.block-map ._itemMap ._contentWrapper > ._content {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}
/* 組件-地圖 block-equalHeight*/
.block-equalHeight ._itemEqual {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: start;
}
/* 組件-照片block-photoBrick */
.block-photoBrick {
  --grid-gap: 0.5rem;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: 300px 120px;
  grid-gap: var(--grid-gap);
  width: 100%;
}
.block-photoBrick ._itemPhoto {
  display: block;
  overflow: hidden;
}
.block-photoBrick ._itemPhoto img {
  display: block;
}
.block-photoBrick a._itemPhoto:nth-child(1) {
  grid-row: 1 / span 1;
  grid-column: 1 / span 4;
}
.block-photoBrick a._itemPhoto:nth-child(2) {
  grid-row: 2 / span 1;
  grid-column: 1 / span 1;
}
.block-photoBrick a._itemPhoto:nth-child(3) {
  grid-row: 2 / span 1;
  grid-column: 2 / span 1;
}
.block-photoBrick a._itemPhoto:nth-child(4) {
  grid-row: 2 / span 1;
  grid-column: 3 / span 1;
}
.block-photoBrick a._itemPhoto:nth-child(5) {
  grid-row: 2 / span 1;
  grid-column: 4 / span 1;
}
.block-photoBrick a._itemPhoto:nth-child(1n + 6) {
  display: none;
}
.block-photoBrick ._itemPhoto._itemPhotoMore {
  position: relative;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  grid-row: 2 / span 1;
  grid-column: 4 / span 1;
  z-index: 4;
}
.block-photoBrick ._itemPhoto._itemPhotoMore > a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  font-size: var(--bs-fs-h4);
}
.block-photoBrick a._itemPhoto:only-of-type {
  grid-row: auto/ span 2 !important;
  grid-column: auto/ span 4 !important;
}
/* 組件-看更多 */
.block-showMore {
  --gap: 1rem;
  display: flex;
  flex-flow: column nowrap;
  gap: var(--gap);
}
.block-showMore._show > .block-product-discription {
  max-height: 100%;
  /* transition: all .3s; */
}
.block-showMore:not(._show) > .block-product-discription {
  /* max-height: calc(3rem * 1.5)!important;
	transition: all .3s; */
  overflow: hidden;
}
.block-showMore .btn-more {
  position: relative;
  display: flex;
  align-items: center;
}
.block-showMore .btn-more::before {
  content: " ";
  display: block;
  flex: 1 0 0;
  width: 100%;
  height: 50%;
  /* border-bottom: 1px dashed #D1B094; */
}
.block-showMore .btn-more::after {
  font-family: "bootstrap-icons";
  border: 0;
  display: inline-block;
  vertical-align: baseline;
  font-size: 0.75rem;
  line-height: 1;
  content: "\f282";
}
.block-showMore._show .btn-more::after {
  content: "\f286";
}
/* 組件-客製區塊block-custom */
.block-custom ._content {
  font-weight: var(--bs-fw-light, 300);
  line-height: calc(var(--bs-line-height-lg) + 0.5);
}

/* 組件-dl */
/* .block-dataListCustom dt{
	flex:0 1 auto!important
} */
.block-dataListCustom {
  display: flex;
  flex-flow: column nowrap;
  gap: 12px;
}
.block-dataListCustom ._discription {
  font-weight: 300;
}
/* 組件-grid-table */
.grid-table {
  --cell-p-y: 1.25rem;
}
.grid-table a {
  text-decoration: none;
}
.grid-table .g-header .g-td {
  font-weight: var(--bs-fw-bold);
}
.grid-table._hover .g-tr {
  --bg-lighter: #fff;
  background: var(--bg-lighter);
}
.grid-table._border-bottom .g-tr {
  --border-color: rgba(var(--bs-main-rgb), 0.5);
}
.grid-table._border-bottom .g-tr:not(:last-of-type) {
  box-shadow: 0px -1px 0px 0px var(--border-color) inset;
  -webkit-box-shadow: 0px -1px 0px 0px var(--border-color) inset;
  -moz-box-shadow: 0px -1px 0px 0px var(--border-color) inset;
}

@media (hover: hover) {
  .grid-table._hover .g-tr:is(:hover, :focus) {
    --bg-lighter: rgba(var(--bs-accessoryLight-rgb), 0.1);
    transition: all 0.3s;
  }
  .grid-table._border-bottom .g-tr:is(:hover, :focus) {
    --border-color: rgba(var(--bs-main-rgb), 0.8) !important;
    transition: all 0.3s;
  }
}
/* 組件-flex擴充 */
.flex-0 {
  flex: 0;
  /* 0 1 0% */
}
.flex-1 {
  flex: 1;
  /* 1 1 0% */
}
.flex-auto {
  flex: auto;
  /* 1 1 auto */
}
/* 組件-步驟 */
.wizard {
  --wz-color: var(--bs-body-color);
  --wz-bg: var(--bs-gray-300);
  --wz-line: var(--bs-gray-400);
  --wz-line-active: var(--bs-main);
  display: flex;
}
.wizard_step {
  /* Make all steps have the same width */
  flex: 1;
}
.wizard_step.active {
  --wz-color: var(--bs-gray-900);
  --wz-bg: var(--bs-white);
  /* color:var(--bs-main); */

  font-weight: 900;
}
.wizard_dot {
  /* Center the content */
  align-items: center;
  display: flex;
  justify-content: center;
}
.wizard_connector {
  flex: 1;
  height: 1px;
  background-color: var(--wz-line);
}
.wizard_step:first-child .wizard_connector:first-child,
.wizard_step:last-child .wizard_connector:last-child {
  background-color: transparent;
}
.active .wizard_step:first-child .wizard_connector:last-child,
.active .wizard_step:not(:last-child) .wizard_connector:first-child {
  background-color: var(--wz-line-active);
}
.wizard_number {
  /* Center the content */
  align-items: center;
  display: flex;
  justify-content: center;

  /* Rounded border */
  background-color: var(--wz-bg);
  border-radius: 9999px;
  height: 2rem;
  width: 2rem;

  /* OPTIONAL: Spacing between it and connectors */
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}
.active .wizard_number {
  border: 1px solid var(--wz-line-active);
}
.wizard_title {
  text-align: center;
}
/* 組件-block _nameCard  block-nameWithBadge */
.block-nameWithBadge {
  display: flex;
  gap: 12px;
  align-items: end;
}
.block-nameWithBadge > ._badge {
  flex: 0 0 auto;
  align-self: center;
}
/* 組件-巢狀 */
/* 組件-巢狀導覽列 手風琴 */
.navbar-nestCollapse {
  --nest-main: #002130;
  --nest-text: #394f66;
  --nest-text-hover: #0a58ca;
  --nest-textSecondary: #6c757d;
  --nest-boxBd: #6c757d;
  --nest-boxBG: #fff;
  --nest-boxBg-hover: #f6f6f6;
  --nest-itemBg: #fff;
  --nest-itemBg-hover: #eee;
  --nest-titleFw: 900;
  --nest-paddingTimes: 1rem;
  --nest-badge-border-radius: 5rem;
  --nest-badgeFs: 0.75rem;
  --item-height: 50px;
  display: flex;
  flex-direction: column !important;
}
.navbar-nestCollapse a {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  height: var(--item-height);
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-right: var(--nest-paddingTimes) !important;
  color: var(--nest-text) !important;
  font-weight: var(--nest-titleFw);
  background: var(--nest-itemBg);
}
.navbar-nestCollapse a.nav-link {
  padding-left: var(--nest-paddingTimes) !important;
}
.navbar-nestCollapse .dropdown-item:not(.dropdown-toggle) {
  --nest-titleFw: 500;
}
.navbar-nestCollapse a.dropdown-toggle .badge,
.navbar-nestCollapse a.dropdown-item .badge {
  border-radius: var(--nest-badge-border-radius) !important;
  font-weight: normal;
  font-size: var(--nest-badgeFs);
  color: var(--nest-textSecondary) !important;
  background: var(--nest-boxBg-hover);
}
.navbar-nestCollapse a.dropdown-toggle::after {
  display: flex;
  justify-content: flex-end;
  margin-left: auto !important;
  font-family: bootstrap-icons !important;
  font-style: normal;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  vertical-align: -0.125em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  border: 0 !important;
}
.navbar-nestCollapse .dropdown-menu.show {
  position: relative !important;
  transform: translate(0px, 0px) !important;
  border: 0;
  padding: 0 !important;
  left: 0;
}
.navbar-nestCollapse.navbar-dropdown a.dropdown-toggle.show::after {
  content: "\f286";
}
.navbar-nestCollapse.navbar-dropdown a.dropdown-toggle::after {
  content: "\f282";
}
.navbar-nestCollapse .dropdown-menu .dropdown-item {
  padding-left: calc(var(--nest-paddingTimes) * 2);
}
.navbar-nestCollapse .dropdown-menu .dropdown-menu .dropdown-item {
  padding-left: calc(var(--nest-paddingTimes) * 3);
}
.navbar-nestCollapse
  .dropdown-menu
  .dropdown-menu
  .dropdown-menu
  .dropdown-item {
  padding-left: calc(var(--nest-paddingTimes) * 4);
}
.navbar-nestCollapse
  .dropdown-menu
  .dropdown-menu
  .dropdown-menu
  .dropdown-menu
  .dropdown-item {
  padding-left: calc(var(--nest-paddingTimes) * 5);
}
.navbar-nestCollapse.navbar-dropdown a.dropdown-toggle.show,
.navbar-nestCollapse .nav-link.active {
  color: var(--nest-text-hover) !important;
  background: var(--nest-itemBg-hover);
  font-weight: var(--nest-titleFw);
}
.navbar-nestCollapse.navbar-dropdown .dropdown-menu.show a {
  color: var(--bs-body-color);
  font-weight: var(--nest-titleFw);
}
.navbar-nestCollapse .dropdown-item:is(:hover, :focus),
.navbar-nestCollapse a:is(:hover, :focus) {
  color: var(--nest-text-hover) !important;
  background-color: var(--nest-boxBg-hover);
}
/* 組件-nav-pills._mainLike*/
.nav-pills._mainLike {
  --bs-nav-link-padding-x: 1.5rem !important;
  --bs-nav-link-padding-y: 0.75rem !important;
  --bs-navbar-nav-link-padding-x: 1.5rem !important;
  --bs-navbar-nav-link-padding-y: 0.75rem !important;
  --bs-nav-link-font-weight: var(--bs-fw-bold);
  --bs-nav-link-color: var(--bs-white);
  --bs-nav-link-hover-color: var(--bs-accessoryLight);
  --bs-nav-link-active-color: var(--bs-accessoryLight);
  --bs-nav-link-disabled-color: var(--bs-gray-300);
  --bs-nav-link-font-size: var(--font-size-h1);
  --bs-navbar-active-color: var(--bs-accessoryLight);
  background: var(--bs-main);
  width: max-content;
}

.nav-pills .nav-item {
  display: flex;
}
.nav-pills .nav-item .nav-link {
  --bs-nav-pills-border-radius: 0;
  flex-shrink: 0;
  flex-grow: 1;
}
.nav-pills .nav-item .nav-link:is(.show, .active, :hover) {
  background: rgba(0, 0, 0, 0.5);
}
/* 組件-載入動畫 */
.block-loader {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  max-width: 100%;
  height: 200px;
  align-items: center;
  justify-content: center;
  padding: 10vh 0;
  gap: 24px;
}
.square-spin > div {
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  width: 50px;
  height: 50px;
  background: var(--bs-main);
  -webkit-animation: square-spin 2.4s 0s cubic-bezier(0.09, 0.57, 0.49, 0.9)
    infinite;
  animation: square-spin 2.4s 0s cubic-bezier(0.09, 0.57, 0.49, 0.9) infinite;
}

/* 自訂互動元件 */
.ratio {
  display: block;
}
:is(.block-item-image, .block-searchItem-image) {
  --radius: 0;
  --img-w: 80px;
  position: relative;
  overflow: hidden;
  border-radius: var(--radius);
}
.block-searchItem-image._imgSizeList {
  min-width: var(--img-w);
  flex: 0 0 var(--img-w);
}
.block-searchItem-image._imgSizeList._lg {
  --img-w: 100px;
}
:is(.block-item-image, .block-searchItem-image) img {
  /* opacity:.9; */
  object-fit: contain;
  border-radius: var(--radius);
}
.block-interactive {
  position: relative;
  overflow: hidden;
}
.block-interactive .interactive-item._go {
  --go-bg: rgba(169, 117, 24, 0.7);
  height: 0;
  opacity: 0;
}
.block-interactive._opacityIncrease img {
  opacity: 1;
  /* 沒有hover狀態的手機版透明度不變 */
}
.block-interactive._opacityIncrease .interactive-item._go {
  /* --go-bg: rgba(255,255,255,0.2); */
  --go-bg: linear-gradient(
    0deg,
    rgba(255, 255, 255, 0.6) 0%,
    rgba(255, 255, 255, 0.6) 8rem,
    rgba(255, 255, 255, 0) 8rem,
    rgba(255, 255, 255, 0) 100%
  );
}
.block-interactive._hover._fromCenter .interactive-item._go {
  position: absolute;
  height: 100%;
  top: 0;
} /* b-fromCenter */
/* 可以 hovers 時才會套用，可懸停(hover: hover)，不可懸停(hover: none) */
@media (hover: hover) {
  .block-interactive._opacityIncrease img {
    opacity: 0.7;
  }
  :is(.block-item-image, .block-searchItem-image)._hover:is(:hover, :focus) img,
  .block-interactive._opacityIncrease:is(:hover, :focus) img {
    opacity: 1;
    transition: all 0.3s;
  } /* a */
  .interactive-item._go:has(._hover:hover, ._hover:focus) {
    position: absolute;
    height: 100%;
    width: 100%;
    opacity: 1;
    background: var(--go-bg);
    transition: all 0.3s;
    z-index: 2;
  } /* b-default */
  .block-interactive._hover:is(:hover, :focus) .interactive-item._go {
    position: absolute;
    height: 100%;
    width: 100%;
    opacity: 1;
    background: var(--go-bg);
    transition: all 0.3s;
    z-index: 2;
  } /* b-default */
  .block-interactive._hover:is(._fromTop, ._fromCenter):is(:hover, :focus)
    .interactive-item._go {
    top: 0;
    left: 0;
  } /* b-fromTop,fromCenter */
  .block-interactive:is(:hover, :focus) ._scale {
    transform: scale(1.08);
    transition: all 0.3s ease-in-out;
  } /* c-scale */
}
:is(.block-item-image, .block-searchItem-image):focus img {
  opacity: 1;
  transition: all 0.3s;
} /* a' */
.interactive-item._go:has(._hover:focus) {
  height: 100%;
  opacity: 1;
  background: rgba(0, 0, 0, 0.8);
  transition: all 0.3s;
  z-index: 2;
} /* b'-default */
.block-interactive._hover:focus .interactive-item._go {
  position: absolute;
  height: 100%;
  width: 100%;
  opacity: 1;
  background: var(--go-bg);
  transition: all 0.3s;
  z-index: 2;
} /* b'-default */
.block-interactive._hover:is(._fromTop, ._fromCenter):is(:focus)
  .interactive-item._go {
  top: 0;
  left: 0;
} /* b'-fromTop */
.block-interactive:focus ._scale {
  transform: scale(1.08);
  transition: all 0.3s ease-in-out;
} /* c'-scale */
.interactive-item._go:has(:focus) a {
  border: 4px solid var(--bs-main);
}
/* 互動元件-火狐設定 不支援的選取器要分開寫 */
.block-interactive .interactive-item._go {
  z-index: 2;
}
/* -無法 hovers 時才會套用，可懸停(hover: hover)，不可懸停(hover: none) */
@media (hover: none) {
  .block-interactive .interactive-item._go {
    height: 100%;
    opacity: 0;
  }
}
.block-interactive:focus .interactive-item._go a {
  border: 4px solid var(--bs-main);
}
/* 互動元件-收藏、選取框 */
.block-save {
  position: absolute;
  display: flex;
  left: unset !important;
  right: 0.375rem;
  top: 0.375rem;
  width: auto;
  height: auto;
  z-index: 4;
}
.block-save + .block-save {
  top: 3.75rem;
}
.block-save._hover .interactive-item {
  display: none;
}
/* 可以 hovers 時才會套用，可懸停(hover: hover)，不可懸停(hover: none) */
@media (hover: hover) {
  /* .block-save._hover:is(:hover,:focus) .interactive-item{
	display:block;
	transition:all .3s;	
} */
  .block-save._hover:is(:hover, :focus) .interactive-item {
    display: block;
    transition: all 0.3s;
  }
}
.btn-save {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  width: 1.5rem;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  box-sizing: content-box;
  border-color: transparent !important;
  border-radius: 50rem;
  color: var(--bs-btn-color);
  background-color: rgba(255, 255, 255, 0.7) !important;
  box-shadow: var(--shadow-tabPills);
}
/* -收藏、選取選項 */
.block-save > .btn-check:checked + .btn-save._heart i::before {
  content: "\f415";
  color: var(--bs-red);
}
.block-save > .btn-check:checked + .btn-save._check i::before {
  content: "\F26C";
  color: var(--bs-main);
}

.btn-check + .btn-save:hover {
  color: var(--bs-btn-color);
  background-color: rgba(255, 255, 255, 1) !important;
}
.btn-check:focus + .btn-save,
.btn-save:focus {
  outline: 2px solid var(--bs-main);
  background-color: rgba(255, 255, 255, 0.9) !important;
  box-shadow: 0px 2px 8px rgba(66, 43, 97, 0.35);
}
.btn-save:hover {
  color: var(--bs-secondary);
  background-color: rgba(255, 255, 255, 0.9) !important;
}
/* 互動客製新增 */
:is(.section-main .content-indexCategory, .content-historyCategory)
  .block-interactive
  .interactive-item._go {
  position: absolute;
  bottom: 0;
  height: auto !important;
  width: 100%;
  padding: 0.75rem;
  opacity: 1;
  background: rgba(0, 0, 0, 0.6) !important;
}
.content-historicalIcons .block-interactive .interactive-item._go {
  position: absolute;
  top: 100%;
  height: auto !important;
  width: 100%;
  padding: 0.75rem;
  opacity: 1;
  background: rgba(255, 255, 255, 0.8) !important;
}
@media (hover: hover) {
  :is(.section-main .content-indexCategory, .content-historyCategory)
    .block-interactive:is(:hover, :focus)
    .interactive-item._go {
    background: rgba(0, 0, 0, 1) !important;
  }
  .content-historicalIcons
    .block-interactive:is(:hover, :focus)
    .interactive-item._go {
    top: unset;
    bottom: 0;
  }
}

/* 預設元件新增、調整 */
p {
  word-break: break-word;
}
.breadcrumb {
  --bs-breadcrumb-margin-bottom: 0 !important;
}
.dropdown-menu.show {
  margin-top: 0;
}
.navbar-index .navbar-toggler {
  --bs-navbar-color: var(--bs-main);
  --bs-navbar-toggler-font-size: 1.875rem;
  --bs-navbar-toggler-border-color: transparent;
  height: 40px;
}
img[class*="object-fit-"] {
  width: 100%;
  height: 100%;
}
/* -漢堡動畫 */
.hamburger-toggler [class^="_line"] {
  width: 30px;
  height: 2px;
  margin: 6px 0;
  background: var(--bs-navbar-color);
  transition: all 0.24s ease;
}
.hamburger-toggler[aria-expanded="true"] ._line_1 {
  transform: rotate(-45deg) translate(-5px, 6px);
}
.hamburger-toggler[aria-expanded="true"] ._line_2 {
  transition: all 0.12s ease;
  width: 0;
}
.hamburger-toggler[aria-expanded="true"] ._line_3 {
  transform: rotate(45deg) translate(-5px, -6px);
}
/* 預設元件-dl */
:is(.block-item-content, .block-searchItem-content) dl {
  --bg-dl: rgba(255, 255, 255, 0.5);
  --bg-dl-hover: rgba(255, 255, 255, 1);
  --bg-dl-title: rgba(var(--bs-accessory-rgb), 0.25);
  display: flex;
  width: 100%;
  align-items: center;
  margin-bottom: 0;
  padding: 0.5rem;
  border-bottom: 1px solid var(--bs-secondary-bg);
  font-weight: 300;
  background-color: var(--bg-dl);
}
:is(.block-item-content, .block-searchItem-content) dl:is(:hover, :focus) {
  background-color: var(--bg-dl-hover);
}
:is(.block-item-content, .block-searchItem-content) dl:last-child {
  border-bottom: 0;
}
:is(.block-item-content, .block-searchItem-content) dt {
  width: 8.5rem;
  padding-right: 0.5rem;
  flex: none;
}
:is(.block-item-content, .block-searchItem-content) dd {
  display: flex;
  flex-direction: column;
  margin-bottom: 0;
  word-break: break-word;
}
:is(.block-item-content, .block-searchItem-content) :is(dd, ._content) p {
  margin: 0;
}
dd ._content {
  word-break: break-word;
}
dd ._content iframe {
  max-width: 100% !important;
}
:is(.block-item-content, .block-searchItem-content) dl.title {
  background-color: var(--bg-dl-title);
}
/* 既有元件新增調整 */
/* 既有元件新增調整-nav-underline */
.nav-underline {
  --bs-nav-underline-border-width: 0.125rem;
  --bs-nav-underline-link-active-color: var(--bs-gray-800);
  --bs-nav-link-font-weight: var(--bs-fw-light);
  --bs-nav-link-color: var(--bs-gray-800);
  --bs-nav-link-hover-color: var(--bs-link-hover-color);
  --bs-nav-link-disabled-color: var(--bs-secondary-color);
}
.nav-underline-index {
  --bs-nav-underline-gap: 1rem;
  --bs-nav-underline-border-width: 0.125rem;
  --bs-nav-underline-link-active-color: var(--bs-gray-800);
  --bs-nav-link-padding-x: 1rem;
  --bs-nav-link-padding-y: 0;
  --bs-nav-link-font-weight: var(--bs-fw-light);
  --bs-nav-link-color: var(--bs-gray-800);
  --bs-nav-link-hover-color: var(--bs-link-hover-color);
  --bs-nav-link-disabled-color: var(--bs-secondary-color);
  --bs-nav-link-font-size: var(--bs-fs-h6);
}
:is(.nav-underline, .nav-underline-index, .nav-underline-index-lg)
  .nav-link.active,
:is(.nav-underline, .nav-underline-index, .nav-underline-index-lg)
  .show
  > .nav-link {
  --bs-nav-link-font-weight: var(--bs-fw-bold);
  font-weight: var(--bs-fw-bold);
  border-bottom-color: var(--bs-accessory);
}
.nav-underline-index-lg {
  --bs-nav-underline-gap: 1rem;
  --bs-nav-underline-border-width: 0.125rem;
  --bs-nav-underline-link-active-color: var(--bs-gray-800);
  --bs-nav-link-padding-x: 1rem;
  --bs-nav-link-padding-y: 0;
  --bs-nav-link-font-weight: var(--bs-fw-light);
  --bs-nav-link-color: var(--bs-gray-800);
  --bs-nav-link-hover-color: var(--bs-link-hover-color);
  --bs-nav-link-disabled-color: var(--bs-secondary-color);
  --bs-nav-link-font-size: var(--bs-fs-h4);
}
/* 既有元件新增調整-表單元素 */
fieldset legend {
  font-size: var(--bs-body-font-size);
}
:is(label, legend, p, span)._must {
  font-weight: var(--bs-fw-bold);
}
:is(label, legend, p, span)._must::after {
  content: "(Required fields)";
  position: relative;
  display: inline-block;
  color: var(--bs-danger);
  font-size: var(--bs-fs-sm);
  font-weight: var(--bs-fw-normal);
}
[lang="zh-Hant-TW"] :is(label, legend, p, span)._must::after {
  content: "(必填)";
}
/* 既有元件新增調整-scrollBar調整 */
.overflow-auto,
.overflow-x-auto,
.overflow-y-auto,
.overflow-scroll,
.overflow-x-scroll,
.overflow-y-scroll,
.modal-content,
.block-map ._itemMap ._contentWrapper {
  scrollbar-color: rgba(var(--bs-main-rgb), 0.7) rgba(255, 255, 255, 0.3);
}
/* 既有元件新增調整-accordion */
.accordion-button {
  font-weight: var(--bs-fw-bold);
}
/* 既有元件新增調整-card 新增accordion */
.card-accordion {
  --bs-card-spacer-y: 1rem;
  --bs-card-spacer-x: 1.25rem;
  --bs-card-title-spacer-y: 0;
  --bs-card-title-color: var(--bs-body-color);
  --bs-card-border-color: rgba(var(--bs-accessory-rgb), 0.25);
  --bs-card-cap-padding-y: 1rem;
  --bs-card-cap-padding-x: 1.25rem;
  --bs-card-cap-bg: rgba(var(--bs-accessory-rgb), 0.25);
  --bs-card-cap-color: var(--bs-body-color);
  --bs-card-color: var(--bs-secondary);
  --bs-card-bg: var(--bs-white);
  --bs-card-img-overlay-padding: 1rem 1.25rem;
}
.card-accordion :is(.card-header, .card-title) {
  font-weight: var(--bs-fw-bold);
}
.card-accordion .card-body {
  font-weight: var(--bs-fw-light);
}
/* 組件-btn-fakeSelect */
.btn-fakeSelect {
  --bs-btn-color: var(--bs-body-color);
  --bs-btn-bg: #fff;
  --bs-btn-border-color: var(--bs-gray-300);
  --bs-btn-hover-color: var(--bs-gray-900);
  --bs-btn-hover-bg: #fff;
  --bs-btn-hover-border-color: #86b7fe;
  --bs-btn-focus-shadow-rgb: 13, 110, 253;
  --bs-btn-active-color: var(--bs-gray-900);
  --bs-btn-active-bg: #fff;
  --bs-btn-active-border-color: var(--bs-gray-300);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: var(--bs-gray-500);
  --bs-btn-disabled-bg: var(--bs-gray-200);
  --bs-btn-disabled-border-color: var(--bs-gray-300);
  display: flex;
  border: var(--bs-btn-border-width) solid var(--bs-btn-border-color) !important;
}
.btn-fakeSelect:focus {
  -webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.btn-fakeSelect .dropdown-toggle {
  --bs-nav-link-font-size: 1.125rem;
  --bs-nav-link-color: var(--bs-gray-700);
  --bs-nav-link-hover-color: var(--bs-gray-900);
  --bs-navbar-active-color: var(--bs-gray-900);
  display: flex;
  justify-content: space-between;
  align-items: center;
  /* gap: 24px;
	padding: 12px 24px; */
}
.btn-fakeSelect .dropdown-toggle::after {
  border: 0 !important;
  width: 1rem;
  height: 1rem;
  background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3Csvg version='1.1' id='layer' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 16 16' style='enable-background:new 0 0 16 16;' xml:space='preserve'%3E%3Cpolyline id='path' class='st0' fill='none' stroke='%23495057' stroke-width='1' points='12.9,6.5 8,11.4 3.1,6.5 '/%3E%3C/svg%3E%0A");
}
.navbar-primaryNav .btn-fakeSelect {
  align-items: center;
}
/* 既有元件-img新增 */
.img-memberResault {
  object-fit: contain;
  background: var(--bs-gray-200);
}
/* 與JS搭配元件 */
/* block-editInput */
.block-editInput ._editableInput.form-control-plaintext {
  background-color: rgba(255, 255, 255, 0.5);
}
.block-editInput ._editableInput:is(:focus) {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  background-color: rgba(255, 255, 255, 1);
  transition: all 0.3s;
}
/* 套件 */
/* 套件-滾動吸頂FixedTop */
.fixed {
  -webkit-transition: top 0.3s 0.3s ease-in-out;
  transition: top 0.3s 0.3s ease-in-out;
}
:is(.mlFixed-top, .mlFixed-bottom).fixed {
  position: fixed !important;
  width: 100%;
  z-index: 100;
}
.mlFixed-top {
  top: 0;
  bottom: unset !important;
}
.mlFixed-bottom {
  top: unset !important;
  bottom: 0;
}
.sticky {
  -webkit-transition: top 0.3s ease-in-out;
  transition: top 0.3s ease-in-out;
}
:is(.mlSticky-top, .mlSticky-bottom).sticky {
  position: sticky !important;
  z-index: 100;
}
.mlSticky-top {
  top: 0;
  bottom: unset !important;
}
.mlSticky-bottom {
  top: unset !important;
  bottom: 0;
}
/* 套件-bs offcanvas調整 */
.offcanvas-dataFilter {
  --bs-offcanvas-height: 60vh;
  left: 0;
  width: 100%;
  max-height: 100%;
}
.offcanvas-dataDropDown {
  --bs-offcanvas-height: 60vh;
}
/* 套件-viewer */
.viewer-section {
  position: relative;
}
.viewer-container_imgSet,
.viewer-container.viewer-backdrop {
  width: 100% !important;
  height: 100vh !important;
}
.viewer-container_imgSet {
  position: relative;
  overflow: hidden;
}
.viewer-container.viewer-backdrop {
  background-color: var(--bs-tertiary-bg);
}
.block-viewerInfo {
  display: flex;
  flex-direction: column;
  height: 90vh;
}
.block-viewerInfo-content {
  background: var(--bg-main);
}
.block-viewerCovered .btn {
  position: absolute;
  top: calc(50vh - 2rem);
  z-index: 999;
}
.block-viewerCovered .btn.prev {
  left: 0;
}
.block-viewerCovered .btn.next {
  right: 0;
}
.item-pageControl {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 999;
}
.input-pageControl {
  max-width: 6rem;
}
.viewer-toolbar > ul {
  display: flex;
  gap: 6px;
  justify-content: center;
}
@media screen and (min-width: 992px) {
  .content-essaySide,
  .content-essayMain {
    display: flex;
    flex-direction: column;
    /* ^等高 */
  }
  :is(.content-essaySide, .content-essayMain) > ._content {
    flex: 1 1 auto;
    height: 100%;
  }
}
/* 套件Swiper */

.indexSwiperMain .swiper-slide {
  height: var(--swiperMain-height);
}
.indexSwiperMain .swiper-slide > img {
  min-width: 100%;
  object-fit: cover;
}
.indexSwiperThumb {
  position: relative;
  width: var(--swiperThumb-width);
  display: flex;
  flex-flow: column nowrap;
  padding: 1.5rem 0.75rem;
  background: #fff;
}
.indexSwiperThumb .swiper-pagination {
  display: none;
}
.indexSwiperThumb
  .swiper-wrapper
  .swiper-slide:not(.swiper-slide-thumb-active) {
  opacity: 0 !important;
}

.swiper-imgNav {
  max-height: 60vh;
}
/* /套件Swiper */
/* 套件-bs5LightBox */
.lightbox ._description,
.block-photoBrick ._itemPhoto ._description {
  position: absolute;
  color: #fff;
  background: rgba(0, 0, 0, 0.5);
  height: auto;
  width: 100%;
  top: unset;
  bottom: 0;
  padding: 0.875rem 1rem;
  text-align: center;
  z-index: 2;
}
.block-photoBrick ._itemPhoto {
  position: relative;
}
/* .block-photoBrick ._itemPhoto ._description{
  z-index: 2;
  bottom: 0;
  top: unset;
} */
/* 動畫系統 */
/* -載入動畫 */
@-webkit-keyframes square-spin {
  25% {
    -webkit-transform: perspective(100px) rotateX(180deg) rotateY(0);
    transform: perspective(100px) rotateX(180deg) rotateY(0);
  }
  50% {
    -webkit-transform: perspective(100px) rotateX(180deg) rotateY(180deg);
    transform: perspective(100px) rotateX(180deg) rotateY(180deg);
  }
  75% {
    -webkit-transform: perspective(100px) rotateX(0) rotateY(180deg);
    transform: perspective(100px) rotateX(0) rotateY(180deg);
  }
  100% {
    -webkit-transform: perspective(100px) rotateX(0) rotateY(0);
    transform: perspective(100px) rotateX(0) rotateY(0);
  }
}

@keyframes square-spin {
  25% {
    -webkit-transform: perspective(100px) rotateX(180deg) rotateY(0);
    transform: perspective(100px) rotateX(180deg) rotateY(0);
  }
  50% {
    -webkit-transform: perspective(100px) rotateX(180deg) rotateY(180deg);
    transform: perspective(100px) rotateX(180deg) rotateY(180deg);
  }
  75% {
    -webkit-transform: perspective(100px) rotateX(0) rotateY(180deg);
    transform: perspective(100px) rotateX(0) rotateY(180deg);
  }
  100% {
    -webkit-transform: perspective(100px) rotateX(0) rotateY(0);
    transform: perspective(100px) rotateX(0) rotateY(0);
  }
}
@-webkit-keyframes heart {
  0% {
    transform: scale(1);
  }
  17.5% {
    transform: scale(0.5);
  }
}
@keyframes heart {
  0% {
    transform: scale(1);
  }
  17.5% {
    transform: scale(0.5);
  }
}
#Heart_2_ {
  will-change: transform;
  transform-origin: 50% 50%;
  -webkit-animation: heart 1.8s cubic-bezier(0.17, 0.89, 0.32, 1.49);
  animation: heart 1.8s cubic-bezier(0.17, 0.89, 0.32, 1.49);
}
@-webkit-keyframes bubble {
  0%,
  100% {
    transform: scale(0);
    opacity: 0;
    stroke-width: 0;
    stroke: rgba(233, 172, 193, 0);
  }
  15% {
    fill: #e9acc1;
  }
  50% {
    transform: scale(1);
    opacity: 1;
    stroke: #e9acc1;
    stroke-width: 6;
  }
  100% {
    fill: rgba(233, 172, 193, 0);
  }
}
@keyframes bubble {
  0%,
  100% {
    transform: scale(0);
    opacity: 0;
    stroke-width: 0;
    stroke: rgba(233, 172, 193, 0);
  }
  15% {
    fill: #e9acc1;
  }
  50% {
    transform: scale(1);
    opacity: 1;
    stroke: #e9acc1;
    stroke-width: 6;
  }
  100% {
    fill: rgba(233, 172, 193, 0);
  }
}
#Circle {
  fill: #e9acc1;
  will-change: transform;
  transform: scale(0);
  transform-origin: 50% 50%;
  -webkit-animation: bubble 1.8s cubic-bezier(0.21, 0.61, 0.35, 1);
  animation: bubble 1.8s cubic-bezier(0.21, 0.61, 0.35, 1);
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}

/* 文字系統 */
/* 文字-規則-斷行 */
[class*="line-clamp-"] {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: normal;
  text-overflow: ellipsis;
  word-break: break-all;
}
.line-clamp-1 {
  -webkit-line-clamp: 1;
}
.line-clamp-2 {
  -webkit-line-clamp: 2;
}
.line-clamp-3 {
  -webkit-line-clamp: 3;
}
.line-clamp-4 {
  -webkit-line-clamp: 4;
}
.line-clamp-5 {
  -webkit-line-clamp: 5;
}
.line-clamp-6 {
  -webkit-line-clamp: 6;
}
.line-clamp-7 {
  -webkit-line-clamp: 7;
}
.ellipsis {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.highlight {
  --highlight: var(--bs-gray-900);
  --highlight-bg: rgba(var(--bs-warning-rgb), 0.2);
  color: var(--highlight);
  background: var(--highlight-bg);
  font-style: normal;
  position: relative;
}
.highlight::after {
  content: " ";
  position: absolute;
  height: 2px;
  width: 100%;
  left: 0;
  bottom: 0;
  background: var(--bs-main);
}
img.bi {
  display: inline-block;
  vertical-align: -0.125em;
  width: 1em;
  height: 1em;
}
.title-index {
  font-size: var(--bs-fs-h3);
  font-weight: var(--bs-fw-bold);
  line-height: 1.8;
}
.title-underline {
  --TU-lineColor: var(--bs-accessory);
  --TU-lineWidth: 4rem;
  --TU-lineThick: 0.125rem;
  position: relative;
  font-weight: var(--bs-fw-bold);
}
.title-underline::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: calc((var(--TU-lineThick) + 0.5rem) * -1);
  width: var(--TU-lineWidth);
  height: var(--TU-lineThick);
  background: var(--TU-lineColor);
}
:is(
    .h1,
    .h2,
    .h3,
    .h4,
    .h5,
    .h6,
    h1,
    h2,
    h3,
    h4,
    h5,
    h6
  ).title-underline::after {
  bottom: calc((var(--TU-lineThick) + 0.75rem) * -1);
}
.bg-pattern {
  background: url("../img/bg-pattern_noise.png") repeat;
}
.bg-patternDeepBlue {
  background: url("../img/bg-index-s02.jpg") repeat;
}
.card-accordion .card-body.bg-patternDeepBlue {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-grow: 1;
}
.card-accordion .card-body:not(.bg-patternDeepBlue) {
  flex-grow: 0;
  color: var(--bs-gray-800);
}
/* xs 當螢幕小於575px時 */
@media screen and (max-width: 575px) {
}
/* sm 當螢幕大於576px時*/
@media screen and (min-width: 576px) {
  .section-collection ._decoration {
    left: 50%;
  }
  /* 互動元件 */
  .block-searchItem-image._imgSizeList {
    --img-w: 120px;
  }
  .block-searchItem-image._imgSizeList._lg {
    --img-w: 220px;
  }
}
/* 平板直向時 */
@media screen and (min-width: 768px) and (min-height: 992px) {
}
/* md 當螢幕 小於768px時*/
@media screen and (max-width: 768px) {
  .section-search.fixed-bottom ~ footer .btn-gotop {
    bottom: 7rem;
  }

  /* 組件-grid-table */
  .grid-table ._rwd-title {
    display: flex;
    flex-flow: column nowrap;
  }
  .grid-table ._rwd-title::before {
    content: attr(aria-label);
    position: relative;
    display: block;
    font-size: var(--bs-fs-sm);
  }
  /* 組件-grid-table客製 */
  .grid-table ._rwd-title {
    padding: 0 calc(var(--cell-p-x) / 2) calc(var(--cell-p-y) / 2)
      calc(var(--cell-p-x) / 2);
  }
  .title-size:is(.h1, h1) {
    font-size: 3rem;
  }
  .title-size:is(.h2, h2) {
    font-size: 2.25rem;
  }
  .title-size:is(.h3, h3) {
    font-size: 2rem;
  }
  .title-size:is(.h4, h4) {
    font-size: 1.5rem;
  }
  .title-size:is(.h5, h5) {
    font-size: 1.125rem;
  }
  .title-size:is(.h6, h6) {
    font-size: 1rem;
  }
  .content-indexCategory .title-size:is(.h3, h3) {
    font-size: 1.25rem;
  }
}
/* md 當螢幕大於768px時*/
@media screen and (min-width: 768px) {
  .section-search.fixed-bottom ~ footer {
    --search-height: 78px;
  }
  /* 文字-規則-斷行 */
  .line-clamp-md-1 {
    -webkit-line-clamp: 1;
  }
  .line-clamp-md-2 {
    -webkit-line-clamp: 2;
  }
  .line-clamp-md-3 {
    -webkit-line-clamp: 3;
  }
  .line-clamp-md-4 {
    -webkit-line-clamp: 4;
  }
  .line-clamp-md-5 {
    -webkit-line-clamp: 5;
  }
  .line-clamp-md-6 {
    -webkit-line-clamp: 6;
  }
  .line-clamp-md-7 {
    -webkit-line-clamp: 7;
  }
  /* 規則 */
}
/* lg 當螢幕小於992px時 */
@media screen and (max-width: 992px) {
  .section-search.fixed-bottom {
    --block-py: 0;
    position: fixed;
    background: rgba(255, 255, 255, 0.9);
  }
  .section-search.fixed-bottom .index-parallax-img {
    display: none;
  }
  .section-search.fixed-bottom ~ footer {
    padding-bottom: var(--search-height);
  }
  .offcanvas-collapse {
    position: fixed;
    top: var(--header-height); /* Height of navbar */
    bottom: 0;
    left: 100%;
    width: 100%;
    padding-right: 1rem;
    padding-left: 1rem;
    overflow-y: auto;
    visibility: hidden;
    background-color: #fff;
    transition: transform 0.3s ease-in-out, visibility 0.3s ease-in-out;
  }
  .offcanvas-collapse.open {
    visibility: visible;
    transform: translateX(-100%);
  }

  .content-essaySide > .rounded-top {
    border-top-right-radius: 0 !important;
    border-bottom-left-radius: var(--bs-border-radius);
  }
}
/* lg 當螢幕大於992px時*/
@media screen and (min-width: 992px) {
  body {
    padding-top: 0;
  }
  header,
  footer {
    --header-bg: #fff;
    --header-padding: 30px 12px;
  }
  .container-footer {
    padding: var(--header-padding) !important;
  }
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  header {
    position: relative;
  }
  .navbar-brand {
    --bs-navbar-brand-padding-y: 0;
  }
  .navbar-index {
    --logo-width: 200px;
    padding: var(--header-padding);
    align-items: start;
  }
  .navbar-mainHeader {
    flex: 0 0 var(--logo-width);
    max-width: var(--logo-width);
    margin-left: 0;
    margin-right: 0;
  }
  .navbar-mainContent {
    flex: 0 0 calc(100% - var(--logo-width));
    max-width: calc(100% - var(--logo-width));
    justify-content: center !important;
    margin-left: 0;
    margin-right: 0;
  }
  /* .navbar-index>div:first-child{
		margin-left: calc(var(--bs-gutter-x) * -0.5);
	} */
  .navbar-index > div:last-child:not(.navbar-mainContent) {
    margin-right: calc(var(--bs-gutter-x) * -0.5);
  }
  .navbar-index-body {
    position: relative;
    display: flex;
    align-items: start;
    flex-flow: column wrap;
    width: 100%;
  }
  .navbar-index-body > .navbar-primaryNav {
    --bs-nav-link-padding-x: 0.75rem !important;
    --bs-navbar-nav-link-padding-x: 0.75rem !important;
    --bs-nav-link-padding-y: 0.75rem !important;
    --bs-navbar-nav-link-padding-y: 0.75rem !important;
    --bs-nav-link-font-weight: var(--bs-fw-bold);
    --bs-nav-link-color: var(--bs-gray-800);
    --bs-nav-link-hover-color: var(--bs-dark);
    --bs-nav-link-active-color: var(--bs-dark);
    --bs-nav-link-disabled-color: var(--bs-gray-500);
    --bs-nav-link-font-size: var(--bs-fs-h6);
    --bs-navbar-active-color: var(--bs-dark);
  }
  .navbar-index-body > .navbar-primaryNav .nav-item {
    flex-shrink: 0;
  }
  .navbar-index-body > .navbar-primaryNav .nav-item .nav-link {
    position: relative;
  }
  .navbar-index-body > .navbar-primaryNav .nav-item .nav-link::before {
    content: " ";
    position: absolute;
    width: 0;
    bottom: 0.5rem;
    left: 0 var(--bs-nav-link-padding-x);
    opacity: 0;
  }
  .navbar-index-body
    > .navbar-primaryNav
    .nav-item
    .nav-link:is(.active, :hover, :focus)::before {
    width: calc(100% - (var(--bs-nav-link-padding-x) * 2));
    height: 2px;
    background: var(--bs-main);
    opacity: 1;
    transition: all 0.24s ease;
  }
  .navbar-index-body > .navbar-supportNav {
    --bs-nav-link-padding-x: 1.5rem !important;
    --bs-nav-link-padding-y: 0.75rem !important;
    --bs-navbar-nav-link-padding-x: 1.5rem !important;
    --bs-navbar-nav-link-padding-y: 0.75rem !important;
    --bs-nav-link-font-weight: var(--bs-fw-bold);
    --bs-nav-link-color: var(--bs-white);
    --bs-nav-link-hover-color: var(--bs-accessoryLight);
    --bs-nav-link-active-color: var(--bs-accessoryLight);
    --bs-nav-link-disabled-color: var(--bs-gray-300);
    --bs-nav-link-font-size: var(--font-size-h1);
    --bs-navbar-active-color: var(--bs-accessoryLight);
    background: var(--bs-main);
    position: absolute;
    top: calc(100% + 6px);
    width: max-content;
  }
  .navbar-supportNav .nav-item {
    display: flex;
  }
  .navbar-supportNav .nav-item .nav-link {
    flex-shrink: 0;
  }
  .navbar-supportNav .nav-item .nav-link:is(.show, .active, :hover) {
    background: rgba(0, 0, 0, 0.5);
  }
  /* main */
  .section-index-parallax {
    --block-w: 60%;
    --block-py: 70px;
    --block-mx: auto;
    --container-parallax-img-h: auto;
    --container-parallax-img-w: 100%;
  }
  .section-search-parallax {
    --block-py: 70px;
    --block-mx: auto;
    --container-parallax-img-h: auto;
    --container-parallax-img-w: 100%;
  }
  .section-topics .block-cardWide .title {
    font-size: var(--bs-fs-h2);
  }

  .section-collection ._decoration {
    left: unset;
    right: -60px;
    top: unset;
    bottom: 40px;
  }

  /* 組件-照片block-photoBrick */
  .block-photoBrick {
    --grid-gap: 0.5rem;
    display: grid;
    grid-template-columns: calc(70% - var(--grid-gap)) 30%;
    grid-template-rows: repeat(4, 120px);
    grid-gap: var(--grid-gap);
    width: 100%;
  }
  .block-photoBrick a._itemPhoto:nth-child(1) {
    grid-row: 1 / span 4;
    grid-column: 1 / span 1;
  }
  .block-photoBrick a._itemPhoto:nth-child(2) {
    grid-row: 1 / span 1;
    grid-column: 2 / span 1;
  }
  .block-photoBrick a._itemPhoto:nth-child(3) {
    grid-row: 2 / span 1;
    grid-column: 2 / span 1;
  }
  .block-photoBrick a._itemPhoto:nth-child(4) {
    grid-row: 3 / span 1;
    grid-column: 2 / span 1;
  }
  .block-photoBrick a._itemPhoto:nth-child(5) {
    grid-row: 4 / span 1;
    grid-column: 2 / span 1;
  }
  .block-photoBrick ._itemPhoto._itemPhotoMore {
    grid-row: 4 / span 1;
    grid-column: 2 / span 1;
  }
  .block-photoBrick a._itemPhoto:only-of-type {
    grid-row: 1 / span 4 !important;
    grid-column: 1 / span 2 !important;
  }

  /* 組件-地圖 block-map RWD*/
  .block-map ._itemMap ._contentWrapper {
    height: unset;
  }

  /* 套件-滾動吸頂FixedTop */
  .mlFixed-lg-none {
    position: relative;
  }

  /* 互動元件 */
  .block-searchItem-image._imgSizeList {
    --img-w: 120px;
  }

  .indexSwiperMain ._description {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    right: 0;
    top: calc(var(--swiperMain-height) - 90px);
    width: 300px;
    height: 90px;
    background: rgba(255, 255, 255, 0.7);
    z-index: 2;
  }

  .swiper-imgNav {
    max-height: auto;
  }

  .title-index {
    font-size: var(--bs-fs-h2);
  }
}
/* xl 當螢幕大於1200px時*/
@media screen and (min-width: 1200px) {
  .navbar-index {
    --logo-width: 240px;
  }

  /* main */
  .section-index-parallax {
    --block-w: 50%;
  }
  .section-collection ._decoration {
    right: 40px;
    bottom: 40px;
  }

  .section-indexBanner {
    --swiperMain-height: 60vh;
    --swiperThumb-width: 417px;
    --swiperThumb-height: auto;
    --swiperThumb-right: 1.5rem;
  }
  .nav-underline-index-lg {
    --bs-nav-underline-gap: 1.5rem;
  }
  .navbar-index-body > .navbar-primaryNav {
    --bs-nav-link-font-size: var(--bs-fs-h5);
  }
}
/* xxl 當螢幕大於1400px時*/
@media screen and (min-width: 1400px) {
  header {
    height: 170px;
    align-items: center;
  }
  header,
  footer {
    --header-padding: 30px calc((100% - 1320px) / 2);
  }
  .navbar-index {
    --logo-width: 400px;
    height: 100%;
    align-items: center;
  }
  /* main */
  .section-index-parallax {
    --block-w: 40%;
  }
  .section-collection ._decoration {
    right: calc((100% - 1440px) / 2 - 60px);
    bottom: 100px;
  }
}
/* 精準觸控 */
@media (hover: hover) and (pointer: fine) {
}
