:root {
  --clipHeight: 100vh;
  --clipClipTop: 8vw;
  --clipClipBottom: calc(100% - 8vw);
}

/* 英文樣式 */

/* @import url("https://fonts.googleapis.com/css2?family=Libre+Baskerville&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100;300;400;500;700;900&family=Noto+Serif+TC:wght@200;300;400;500;600;700;900&display=swap"); */

/* font-family: 'Libre Baskerville', serif; */

* {
  line-height: 1.5;
  letter-spacing: 0.2em;
  padding: 0px;
  margin: 0px;
}

.pc {
  display: block;
}

.ph {
  display: none;
}

html,
body {
  padding: 0;
  margin: 0;
  overflow-x: hidden;
  background-color: #050404;
}

.d-cc {
  display: flex;
  align-items: center;
  justify-content: center;
}

.fd-row {
  flex-direction: row;
}

.fd-rowRe {
  flex-direction: row-reverse;
}

.fd-col {
  flex-direction: column;
}

ul {
  list-style: none;
}

a,
a:hover {
  text-decoration: none;
}

p {
  font-weight: 200;
  text-align: justify;
  font-family: "Noto Serif TC", sans-serif;
  font-size: 0.9vw;
  line-height: 2.5;
  letter-spacing: 0.2em;
  color: #ffffff;
}

img {
  display: block;
  width: 100%;
  height: auto;
}

span {
  font-family: inherit;
  color: inherit;
}

.mainNav {
  flex-direction: column;
  position: fixed;
  width: 100vw;
  padding: 15px auto 15px auto;
  top: 0px;
  left: 0px;
  right: 0px;
  z-index: 99;
  background: #00000000;
}

.mainNav .navbar-brand {
  width: 8vw;
  margin-top: 3vh;
  margin-bottom: 3vh;
}

.mainNav .navbar-brand-link {
  width: 100%;
  display: block;
  margin: auto;
}

.mainNav ul {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.mainNav .nav-item {
  padding: 0.5em;
  margin: auto 0.5em;
}

.mainNav .nav-link {
  color: #ffffff;
  font-size: 0.9vw;
  font-family: "Noto Sans TC", sans-serif;
  font-weight: 300;
  letter-spacing: 0.2em;
  position: relative;
}

.navbar-nav .active .nav-link {
  color: #857c7a;
}

.mainNav {
  /* background-image: linear-gradient(
    to bottom,
    #000000 0%,
    #000000dd 80%,
    transparent 100%
  ); */
  background-color: #00000000;
  transition: all 1s;
  backdrop-filter: blur(0px);
}

.mainNav.move {
  background-color: #000000aa;
  backdrop-filter: blur(5px);
}

.mainNav .navbar-brand {
  transition: all 1s;
}

.mainNav.move .navbar-brand {
  width: 8vw;
  margin-top: 1vh;
  margin-bottom: 1vh;
}

.mainNav.move .dropdown-menu {
  background-color: #000000aa;
  backdrop-filter: blur(5px);
}

/* font-family
jinxuan-300
jinxuan-500
jinxuan-600
jinxuan-700 */

/*-- ajax loading -- */
.ajax_loading{
  position: fixed;
  z-index: 10000;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  backdrop-filter: blur(20px);
  background-color: rgb(0 0 0 / 60%);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s, visibility 0.5s;
}
.ajax_loading h3{
  color: #fff;
}
.ajax_loading.show_in{
  opacity: 1;
  visibility: visible;
}
.ajax_loading .l_txt{ text-align: center;}
.ajax_loading .sk-spinner-three-bounce div{
  width: 10px;
  height: 20px;
  margin: 0 3px;
  background-color: #333;
  border-radius: 5px;
}

.title-en {
  white-space: nowrap;
  font-family: "Cormorant Garamond", serif;
  font-size: 3vw;
  font-weight: 600;
  letter-spacing: 0.05em;
  color: #b48d53;
  margin-bottom: 1vw;
}

.title {
  white-space: nowrap;
  font-family: "jinxuan-500", serif;
  font-size: 1.3vw;
  letter-spacing: 0.1em;
  color: #b48d53;
}

.sectitleDiv {
  margin-bottom: 2em;
}

.sectitle {
  white-space: nowrap;
  font-family: "jinxuan-500", serif;
  font-size: 1.2vw;
  letter-spacing: 0.2em;
  color: #b48d53;
  line-height: 1.5;
}

.sectitle:nth-child(2) {
  margin-left: 2em;
}

.thirdtitle {
  white-space: nowrap;
  font-family: "Noto Serif TC", serif;
  font-size: 1.1vw;
  font-weight: 500;
  letter-spacing: 0.2em;
  color: #b48d53;
}

.text-jinxuan {
  font-family: "jinxuan-500", serif;
}

.text-jinxuan-300 {
  font-family: "jinxuan-300", serif;
}

.text-roboto {
  font-family: "Roboto Serif", serif;
}

.color-black {
  color: #ffffff;
}

.color-black {
  color: #000000;
}

.borderWhiter::after {
  background-color: #fff;
}

.text-ve {
  writing-mode: vertical-rl;
}

.text-ho {
  writing-mode: horizontal-tb;
}

.deco-city {
  width: 45vw;
  position: absolute;
  left: 0%;
  bottom: 0%;
}

.container,
.container-lg,
.container-md,
.container-sm,
.container-xl {
  max-width: 100%;
}

/*修改BS*/

.navbar-expand-lg .navbar-nav .nav-link {
  padding-left: 1em;
  padding-right: 1em;
  transition: all 0.5s;
  opacity: 0.7;
}

.dropdown-toggle::after {
  margin-left: 0px;
  border: none;
}

.mainNav .nav-link::before,
.mainNav .nav-link::after {
  position: absolute;
  content: " ";
  left: 0%;
  right: 0%;
  height: 1px;
  top: -15%;
  bottom: auto;
  background-color: #ffffff55;
  transition: all 0.4s;
  opacity: 0;
}

.mainNav .nav-link::after {
  top: auto;
  bottom: -15%;
}

.li.dropdown {
  z-index: 20;
}

.dropdown-menu {
  width: 100%;
  background-color: #00000055;
  color: #fff;
  font-size: 0.9vw;
  padding: 0px;
  margin: 0px;
  text-align: center;
  min-width: 0px;
  transition: all 0.5s;
  opacity: 0;
  transform: translateY(-2em);
  display: block;
  pointer-events: none;
  z-index: 10;
  border: none;
}

.dropdown-menu.open {
  opacity: 1;
  transform: translateY(0em);
  pointer-events: all;
}
.dropdown-item {
  position: relative;
  color: #fff;
  padding: 0.5rem 1.5rem;
  transition: all 0.5s;
}

.dropdown-item:active{
  background: none;
}

.dropdown-item::after {
  position: absolute;
  content: " ";
  left: 20%;
  right: 20%;
  height: 1px;
  bottom: 0%;
  background-color: #ffffff55;
}

.dropdown-item:nth-last-of-type(1):after {
  opacity: 0;
}

/* .mainNav .nav-link:hover::after {
    bottom: -0.8em;
    opacity: 1;
} */

.mainNav .navbar-collapse {
  justify-content: flex-end;
}

.container,
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl {
  padding-left: 0px;
  padding-right: 0px;
}

footer {
  position: relative;
  display: flex;
  align-items: stretch;
  justify-content: center;
  flex-wrap: wrap;
  padding-top: 1vh;
  padding-bottom: 1vh;
  z-index: 40;
  background-color: #19140b;
}

footer .infogroup {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0px;
  padding-left: 1.5em;
  padding-right: 1.5em;
  position: relative;
}

footer .infogroup::after {
  position: absolute;
  content: " ";
  right: 0px;
  top: 30%;
  bottom: 30%;
  background-color: #725830;
  width: 1px;
  opacity: 0.5;
}

footer .infogroup:nth-last-of-type(1):after,
footer .infogroup:nth-last-of-type(2):after {
  opacity: 0;
}

footer .infogroup .innerTxt {
  color: #725830;
  font-size: 0.8vw;
  letter-spacing: 0.1em;
  margin-bottom: 0px;
  font-family: "jinxuan-500", "Noto Sans TC", sans-serif;
}

footer .infogroup .innerTxt a {
  color: #725830;
}

footer .footer_make {
  width: 100%;
  text-align: center;
  font-size: 0.7vw;
  margin-bottom: 0px;
  color: #4c3517;
  line-height: 1;
  display: none;
}

footer .icon {
  width: 1.5vw;
  margin: 0.5vw;
  opacity: 0.5;
  transition: all 0.3s;
}

footer .icon:hover {
  opacity: 1;
}

.padding-rl-normal {
  padding-left: 8vw;
  padding-right: 8vw;
}

.padding-tb-normal {
  padding-top: 5vh;
  padding-bottom: 5vh;
}

.pc-block {
  display: block;
}

.ph-block {
  display: inline;
}

.webLine {
  content: " ";
  top: 0px;
  bottom: 0px;
  left: 5%;
  position: absolute;
  width: 1px;
  background-color: #eaeaea;
  z-index: 5;
}

.webLine.line-right {
  left: auto;
  right: 8.5vw;
}

.container {
  position: relative;
  z-index: 10;
}

.card {
  background-color: #ffffff00;
}

/*導覽列按鈕*/

.navbar-toggler {
  position: relative;
  width: 14vw;
  height: 10vw;
}

.navbar-toggler span {
  display: block;
  position: absolute;
  height: 2px;
  width: 60%;
  background: #aaaaaa;
  border-radius: 9px;
  opacity: 1;
  left: 20%;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: 0.25s ease-in-out;
  -moz-transition: 0.25s ease-in-out;
  -o-transition: 0.25s ease-in-out;
  transition: 0.25s ease-in-out;
}

/*未展開*/

.navbar-toggler.collapsed span:nth-child(1) {
  top: 2vw;
  width: 60%;
  left: 20%;
  opacity: 1;
}

.navbar-toggler.collapsed span:nth-child(2) {
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  width: 60%;
  top: 4.5vw;
  opacity: 0;
}

.navbar-toggler.collapsed span:nth-child(3) {
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  width: 60%;
  top: 4.5vw;
}

.navbar-toggler.collapsed span:nth-child(4) {
  bottom: 2vw;
  width: 60%;
  left: 20%;
  transform-origin: right bottom;
  opacity: 1;
}

/*展開*/

.navbar-toggler span:nth-child(1) {
  top: 2vw;
  left: 20%;
  opacity: 0;
}

.navbar-toggler span:nth-child(2) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  opacity: 1;
}

.navbar-toggler span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.navbar-toggler span:nth-child(4) {
  bottom: 2vw;
  left: 20%;
  opacity: 0;
}

section.s1 {
  min-height: 100vh;
}

.containerBG {
  width: 100vmax;
  height: 100%;
  position: fixed;
  background-color: #000000;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  pointer-events: none;
}

.innerContainer {
  width: 100%;
  height: 100%;
  position: relative;
}

.innerContainer::before {
  content: " ";
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #000000;
  opacity: 0;
  transition: all 1s;
  pointer-events: none;
}

.innerContainer.move::before {
  opacity: 0.8;
}

.news-page .s1 {
  position: relative;
}

.mainTitle {
  position: absolute;
  z-index: 30;
  bottom: 10%;
  right: 10%;
  width: 20vw;
}

.mainTitle .titleDiv {
  text-align: center;
  position: relative;
  /* border: 1px solid #725830; */
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

.mainTitle .innerTitle {
  display: inline;
  position: relative;
  margin-bottom: -1vw;
  margin-left: 0.8vw;
}

.mainTitle .innerTitle span {
  font-family: "Noto Serif TC", serif;
  font-weight: normal;
  letter-spacing: -0.6vw;
  color: #fff;
  font-size: 2vw;
  position: relative;
  display: inline-block;
}

.mainTitle .innerTitle span:nth-of-type(1) {
  font-size: 3.75vw;
  margin-right: 1vw;
}

.mainTitle .innerTitle span:nth-of-type(2) {
  position: absolute;
  font-size: 2.5vw;
  left: 3.5vw;
  top: -1vw;
}

.mainTitle .innerTitle span.en {
  font-weight: 100;
  font-size: 1.1vw;
  position: absolute;
  left: 6.5vw;
  top: 0.5vw;
  letter-spacing: 0px;
}

.mainTitle .mountain {
  z-index: 30;
  width: 100%;
}

.mainTitle .mountain svg {
  width: 100%;
}

.subTitleDiv {
  padding-top: 20vh;
  padding-bottom: 10vh;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
  margin-right: auto;
  width: 28vw;
}

.subTitleDiv .line {
  position: relative;
  content: " ";
  width: 0px;
  height: 1px;
  background-color: #b38c5355;
}

.subTitle {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  position: relative;
  margin-left: 1vw;
  margin-right: 1vw;
}

.subTitle .title {
  font-size: 1.25vw;
  font-family: "Noto Serif TC", serif;
  margin-bottom: 0px;
  padding-right: 0.1em;
}

.subTitle .title-en {
  letter-spacing: 0.2vw;
  line-height: 1;
  padding-left: 0.2em;
}

/*一般設定*/

.allNewsDiv {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.newsCard {
  width: 25%;
  margin: 0px 1.5em;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  position: relative;
}

.newsCard .imgDiv {
  position: relative;
  z-index: 10;
  margin-top: 1em;
  width: 100%;
  overflow: hidden;
  height: 17vw;
  width: 9.5vw;
}

.newsCard .imgDiv img {
  transition: all 0.75s;
  height: 100%;
  object-fit: cover;
}

.newsCard .dateDiv {
  background-color: #b08551;
  background: linear-gradient(top, #b08551 0%, #866d3f 100%);
  background: -webkit-linear-gradient(top, #b08551 0%, #866d3f 100%);
  position: absolute;
  top: 0%;
  left: -6%;
  /* width: 25%; */
  padding-left: 2%;
  padding-right: 3%;
  padding-bottom: 5%;
  height: 20%;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  flex-direction: column;
  z-index: 20;
}

.newsCard .dateDiv p {
  font-family: "Roboto Serif", serif;
  line-height: 1.5;
  font-size: 0.8vw;
  margin-bottom: 0px;
  letter-spacing: 0.5px;
}

.newsCard .dateDiv p.year {
  font-size: 0.7vw;
}

.newsCard p.name {
  white-space: nowrap;
  font-weight: 300;
  margin-top: 1em;
  margin-bottom: 1em;
  transition: all 0.75s;
  position: relative;
  line-height: 1.8;
  padding-left: 1em;
  padding-right: 1em;
  text-align: center;
  width: 170px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.newsCard p.name::after,
.newsCard p.name::before {
  content: " ";
  position: absolute;
  left: 50%;
  right: 50%;
  height: 1px;
  top: 0px;
  background-color: #fff;
  opacity: 0;
  transition: all 0.5s;
}

.newsCard p.name::after {
  top: auto;
  bottom: 0px;
}

.newsCard:hover .imgDiv img {
  transform: scale(1.1);
}

.newsCard:hover p.name {
  letter-spacing: 0.3em;
}

.newsCard:hover p.name::after,
.newsCard:hover p.name::before {
  opacity: 0.5;
  left: 0px;
  right: 0px;
}

/*一般設定結束*/

/* 分頁器 */
a,
.swiper-pagination-bullet {
  outline: none;
}

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 2vw;
}

.swiper-container-vertical
  > .swiper-pagination-bullets
  .swiper-pagination-bullet {
  opacity: 1;
  width: 3.5vw;
  height: 4.7vh;
  position: relative;
  background-color: #ffffff00;
}

.swiper-container-vertical
  > .swiper-pagination-bullets
  .swiper-pagination-bullet:hover::after {
  background-color: #ffffff;
  left: 10%;
}

.swiper-container-vertical
  > .swiper-pagination-bullets
  .swiper-pagination-bullet::after {
  position: absolute;
  content: " ";
  /* top: 49.75%;
  bottom: 49.75%; */
  top: 48%;
  bottom: 48%;
  left: 30%;
  right: 40%;
  background-color: #ffffffff;
  transition: all 0.3s;
}

.swiper-container-vertical
  > .swiper-pagination-bullets
  .swiper-pagination-bullet-active::after {
  left: 10%;
}

/* 動畫區 */

.mountain {
  content: " ";
  width: 100%;
  height: 100%;
  mask: url("../img/share/mourainMask.png");
  mask-position: center top;
  mask-repeat: no-repeat;
  mask-size: contain;
  -webkit-mask: url("../img/share/mourainMask.png");
  -webkit-mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;
}

.mountain .mountainLine {
  fill: none;
  stroke: rgb(255, 255, 255);
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 20px;
  stroke-dasharray: 700;
  stroke-dashoffset: 700;
  animation: mountainLineDraw 5s forwards 1s;
}

.mountainSlide {
  animation: mountainLineDraw 5s forwards 1s;
}

.mountain path:nth-child(2) {
  animation: mountainLineDraw 5s forwards 2s;
}

.mountain path:nth-child(3) {
  animation: mountainLineDraw 5s forwards 3s;
}

@keyframes mountainLineDraw {
  100% {
    stroke-dashoffset: 0;
  }
}

.subTitleDiv .line {
  width: 0%;
  animation-name: subTitleLineDAni;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards;
  animation-delay: 0.5s;
}

@keyframes subTitleLineDAni {
  0% {
    width: 0vw;
  }
  100% {
    width: 10vw;
  }
}

.fadeInDown {
  opacity: 0;
  transform: translateY(-30px);
  animation-name: fadeInDown;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards;
}

@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0px);
  }
}

.fadeInRight {
  opacity: 0;
  transform: translateX(30px);
  animation-name: fadeInRight;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards;
}

@keyframes fadeInRight {
  0% {
    opacity: 0;
    transform: translateX(30px);
  }
  100% {
    opacity: 1;
    transform: translateX(0px);
  }
}

.fadeInLeft {
  opacity: 0;
  transform: translateX(-30px);
  animation-name: fadeInLeft;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards;
}

@keyframes fadeInLeft {
  0% {
    opacity: 0;
    transform: translateX(-30px);
  }
  100% {
    opacity: 1;
    transform: translateX(0px);
  }
}

.fadeInUp {
  opacity: 0;
  transform: translateY(30px);
  animation-name: fadeInUp;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-in-out;
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0px);
  }
}

.bgZoomInOnce {
  -webkit-animation: bgZoomInOnce 10s ease-out forwards;
  animation: bgZoomInOnce 10s ease-out forwards;
}

@keyframes bgZoomInOnce {
  0% {
    opacity: 0;
    background-size: 130% auto;
  }
  30% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    background-size: 110% auto;
  }
}

.bgZoomIn {
  -webkit-animation: bgZoomIn 20s alternate ease-out infinite;
  animation: bgZoomIn 20s alternate ease-out infinite;
}

.bgZoomOut {
  -webkit-animation: bgZoomIn 20s alternate-reverse ease-out infinite;
  animation: bgZoomIn 20s alternate-reverse ease-out infinite;
}

@keyframes bgZoomIn {
  0% {
    opacity: 0;
    background-size: 130% auto;
  }
  30% {
    opacity: 1;
  }
  80% {
    opacity: 1;
    background-size: 110% auto;
  }
  100% {
    opacity: 1;
    background-size: 110% auto;
  }
}

.bg_imgZoomOut {
  -webkit-animation: bg_imgZoomOut 20s alternate-reverse ease-out infinite;
  animation: bg_imgZoomOut 20s alternate-reverse ease-out infinite;
}

@keyframes bg_imgZoomOut {
  0% {
    opacity: 0;
    transform: scale(1.3);
  }
  30% {
    opacity: 1;
  }
  80% {
    opacity: 1;
    transform: scale(1);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.zommAllIn {
  overflow: hidden;
}

.zommAllIn img {
  display: block;
  -webkit-animation: zoomBig 40s linear infinite;
  animation: zoomBig 40s linear infinite;
}

@keyframes zoomBig {
  0% {
    transform: scale(1);
  }
  40% {
    transform: scale(1.2);
  }
  50% {
    transform: scale(1.2);
  }
  90% {
    transform: scale(1);
  }
  100% {
    transform: scale(1);
  }
}

.zommAllOut {
  overflow: hidden;
}

.zommAllOut img {
  display: block;
  -webkit-animation: zoomSmall 40s linear infinite;
  animation: zoomSmall 40s linear infinite;
}

@keyframes zoomSmall {
  0% {
    transform: scale(1.2);
  }
  40% {
    transform: scale(1);
  }
  50% {
    transform: scale(1);
  }
  90% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1.2);
  }
}

.bgZommAll {
  -webkit-animation: bgZommAll 15s alternate-reverse linear infinite;
  animation: bgZommAll 15s alternate-reverse linear infinite;
}

@keyframes bgZommAll {
  0% {
    background-size: 120% auto;
  }
  100% {
    background-size: 100% auto;
  }
}

.title {
  opacity: 0;
  filter: blur(20px);
  animation-name: blurIn;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-in-out;
}

.title-en {
  /* filter: blur(20px); */
  opacity: 0;
  animation-name: fadeInUp;
  /* animation-name: goShort; */
  animation-duration: 1s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-out;
  letter-spacing: 0px;
}

.sectitle {
  opacity: 0;
  animation-name: fadeInUp;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-in-out;
}

.blurIn {
  opacity: 0;
  animation: blurIn 2s forwards;
}

@keyframes blurIn {
  0% {
    filter: blur(20px);
    opacity: 0;
  }
  100% {
    filter: blur(0px);
    opacity: 1;
  }
}

.blurInUp {
  opacity: 0;
  filter: blur(5px);
  animation: blurInUp 2s forwards;
}

@keyframes blurInUp {
  0% {
    transform: translateY(20px);
    filter: blur(5px);
    opacity: 0;
  }
  100% {
    transform: translateY(0px);
    filter: blur(0px);
    opacity: 1;
  }
}

.blurInRight {
  opacity: 0;
  animation: blurInRight 2s forwards;
}

@keyframes blurInRight {
  0% {
    transform: translateX(50px);
    filter: blur(5px);
    opacity: 0;
  }
  100% {
    transform: translateX(0px);
    filter: blur(0px);
    opacity: 1;
  }
}

@keyframes goShort {
  0% {
    opacity: 0;
    letter-spacing: 0.25em;
  }
  50% {
    opacity: 0.2;
    letter-spacing: 0.1em;
  }
  100% {
    opacity: 1;
    letter-spacing: 0.05em;
  }
}

.delay-025 {
  animation-delay: 0.25s;
}
.delay-05 {
  animation-delay: 0.5s;
}

.delay-075 {
  animation-delay: 0.75s;
}

.delay-1 {
  animation-delay: 1s;
}

.delay-125 {
  animation-delay: 1.25s;
}
.delay-15 {
  animation-delay: 1.5s;
}

.delay-175 {
  animation-delay: 1.75s;
}

.delay-2 {
  animation-delay: 2s;
}

.delay-225 {
  animation-delay: 2.25s;
}

.delay-25 {
  animation-delay: 2.5s;
}

.delay-275 {
  animation-delay: 2.75s;
}

.delay-3 {
  animation-delay: 2.75s;
}

.delay-35 {
  animation-delay: 3s;
}

.delay-4 {
  animation-delay: 4s;
}

@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }
  .ph {
    display: block;
  }
  .mainNav .navbar-brand-link {
    width: 150px;
    margin-left: 20px;
  }
  .navbar-toggler {
    color: #fff;
  }
}

/* .falseFooter {
    width: 100%;
    position: absolute;
    bottom: 0px;
    z-index: 50;
    margin-bottom: 20px;
}

.falseFooter::after {
    position: absolute;
    content: " ";
    height: 20px;
    background-color: rgb(140, 151, 155);
} */

/* 選取時顏色 */

::-moz-selection {
  background: #b48d53;
  color: white;
}

::selection {
  background: #b48d53;
  color: white;
}

/* youtube影片 */

.embed-container {
  position: relative;
  width: 100%;
  padding-bottom: 57%;
  overflow: visible;
}

.embed-container .yt_div {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
  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;
}

.embed-container .yt_div a {
  display: inline-block;
  width: 130px;
  height: 130px;
  overflow: hidden;
  border-radius: 100%;
  z-index: 10;
  /* background-color: #333; */
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  -webkit-transition: all 1s;
  transition: all 1s;
}

.embed-container .yt_div a.play {
  -webkit-transform: translateY(-10px);
  transform: translateY(-10px);
  -webkit-filter: blur(10px);
  filter: blur(10px);
  opacity: 0;
  visibility: hidden;
}

.embed-container .yt_div img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: all 1s;
  transition: all 1s;
}

.embed-container .yt_div img.play {
  opacity: 0;
}

.embed-container .yt_div::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 20vw;
  /* FF3.6-15 */
  /* Chrome10-25,Safari5.1-6 */
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(10%, black),
    to(rgba(0, 0, 0, 0))
  );
  background: linear-gradient(to bottom, black 10%, rgba(0, 0, 0, 0) 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

/* 電腦板專屬 */
@media screen and (min-width: 1024px) {
  .community:nth-last-of-type(1) {
    margin-right: 0px;
  }

  .mainNav .nav-item-community {
    padding-right: 0px;
  }
  .mainNav .nav-link:hover {
    opacity: 1;
  }

  .mainNav .nav-link:hover::before {
    top: 0%;
    bottom: auto;
    opacity: 1;
  }

  .mainNav .nav-link:hover::after {
    top: auto;
    bottom: 0%;
    opacity: 1;
  }
}

/* 平板 */
@media screen and (max-width: 1023px) {
  .swiper-container-vertical
    > .swiper-pagination-bullets
    .swiper-pagination-bullet {
    width: 10vw;
    height: 7vh;
  }

  .newsCard .dateDiv p.year {
    font-size: 14px;
  }
  .newsCard .dateDiv p {
    font-size: 12px;
  }
  .subTitleDiv {
    padding-top: 10vh;
    padding-bottom: 5vh;
  }
  .delay-025 {
    animation-delay: 0s;
  }
  .delay-05 {
    animation-delay: 0s;
  }

  .delay-075 {
    animation-delay: 0s;
  }

  .delay-1 {
    animation-delay: 0s;
  }

  .delay-125 {
    animation-delay: 0s;
  }
  .delay-15 {
    animation-delay: 0s;
  }

  .delay-175 {
    animation-delay: 0s;
  }

  .delay-2 {
    animation-delay: 0s;
  }

  .delay-225 {
    animation-delay: 0s;
  }

  .delay-25 {
    animation-delay: 0s;
  }

  .delay-275 {
    animation-delay: 0s;
  }

  .delay-3 {
    animation-delay: 0s;
  }

  .delay-35 {
    animation-delay: 0s;
  }

  .delay-4 {
    animation-delay: 0s;
  }

  @keyframes bgZoomInOnce {
    0% {
      opacity: 0;
      background-size: auto 130%;
    }
    30% {
      opacity: 1;
    }
    100% {
      opacity: 1;
      background-size: auto 110%;
    }
  }

  @keyframes bgZoomIn {
    0% {
      opacity: 0;
      background-size: auto 120%;
    }
    30% {
      opacity: 1;
    }
    80% {
      opacity: 1;
      background-size: auto 100%;
    }
    100% {
      opacity: 1;
      background-size: auto 100%;
    }
  }

  .mainNav {
    flex-direction: row;
    padding: 15px 8.5vw 15px 8.5vw;
    background-color: #000000dd;
  }
  .mainNav .navbar-brand {
    width: 20vw;
  }
  .mainNav.move .navbar-brand {
    width: 10vw;
  }
  .navbar-toggler {
    width: 7vw;
    height: 5vw;
  }
  .navbar-toggler.collapsed span:nth-child(1) {
    top: 1vw;
  }
  .navbar-toggler.collapsed span:nth-child(2),
  .navbar-toggler.collapsed span:nth-child(3) {
    top: 2.2vw;
  }
  .navbar-toggler.collapsed span:nth-child(4) {
    bottom: 1vw;
  }
  .mainNav .dropdown-menu {
    transition: all 1s;
    height: 0px;
  }
  .mainNav .dropdown-menu.open {
    height: auto;
  }

  .mainNav.move .navbar-brand {
    width: 25vw;
  }

  .mainNav ul {
    transition: all 0.5s;
  }

  .dropdown {
    transition: all 0.5s;
  }

  .mainNav .nav-item {
    padding: 0.5em;
    transition: all 0.5s;
  }
  .mainNav .nav-link {
    font-size: 24px;
    display: block;
  }
  .mainNav .nav-link::after {
    bottom: -0.5em;
  }
  .mainNav .nav-link:hover::after {
    bottom: -0.2em;
  }
  .community {
    height: 50px;
  }
  .mainNav ul {
    margin-top: 1.5em;
    height: 90vh;
    justify-content: flex-start;
  }
  .mainNav .nav-item-community {
    margin-top: 1.5em;
  }
  .mainNav .nav-item {
    margin: 1vh 1em;
  }

  /*一般狀態開始 */
  .title {
    font-size: 30px;
    filter: blur(0px);
    opacity: 0;
  }

  .sectitle {
    font-size: 28px;
  }

  .thirdtitle {
    font-size: 22px;
  }

  .title-en {
    font-size: 30px;
    margin-right: 0.25em;
  }

  p {
    font-size: 18px;
  }

  .subTitleDiv {
    width: 50vw;
  }

  .subTitle {
    margin-left: 3vw;
    margin-right: 2vw;
  }

  .subTitle .title {
    font-size: 40px;
  }

  .subTitle .title-en {
    font-size: 30px;
  }

  .mainTitle {
    width: 40vw;
    bottom: 30%;
  }

  .mainTitle .innerTitle span:nth-of-type(1) {
    font-size: 60px;
  }

  .mainTitle .innerTitle span:nth-of-type(2) {
    top: -20px;
    right: 10px;
    font-size: 40px;
  }

  .mainTitle .innerTitle span {
    font-size: 30px;
  }

  .mainTitle .innerTitle span.en {
    left: 120px;
    top: -10px;
    font-size: 28px;
  }
  footer .infogroup:nth-of-type(2):after {
    opacity: 0;
  }

  .dropdown-item:focus, .dropdown-item:hover{
    background:none;
  }
  /*一般狀態結束 */
}

/* 手機板 */

@media screen and (max-width: 500px) {
  .mainTitle {
    width: 60vw;
    right: 0px;
  }

  footer .infogroup:nth-of-type(1):after,
  footer .infogroup:nth-of-type(2):after {
    opacity: 0;
  }

  .bgZoomIn {
    /* -webkit-animation: none;
    animation: none; */
  }

  .bgZoomOut {
    -webkit-animation: none;
    animation: none;
  }

  .swiper-pagination-bullets .swiper-pagination-bullet {
    width: 10vw;
    height: 7vh;
  }

  section.s1 {
    min-height: 90vh;
  }

  .padding-rl-normal {
    padding-left: 5vw;
    padding-right: 5vw;
  }

  p {
    font-size: 14px;
    letter-spacing: 0.1em;
  }

  .header {
    background-size: cover;
    background-attachment: scroll;
    background-position: center center;
    animation: none;
  }
  .title {
    opacity: 0;
    animation: blurIn 1s forwards;
    white-space: nowrap;
  }
  .navbar-brand {
    width: 100%;
  }
  .navbar {
    position: fixed;
    background-image: url("../img/share/bg.webp");
    background-size: contain;
  }
  .mainNav ul {
    padding-left: 0px;
    padding-right: 0px;
  }
  .mainNav .nav-link {
    font-size: 18px;
  }

  .container {
    margin-top: 8vh;
  }

  /*一般狀態開始 */

  .mainTitle .innerTitle {
    letter-spacing: 0px;
  }

  .mainTitle .innerTitle span:nth-of-type(1) {
    font-size: 40px;
  }

  .mainTitle .innerTitle span:nth-of-type(2) {
    top: -20px;
    right: 0px;
    font-size: 30px;
  }

  .mainTitle .innerTitle span {
    font-size: 20px;
  }

  .mainTitle .innerTitle span.en {
    left: 80px;
    top: -5px;
    font-size: 16px;
  }

  .subTitleDiv {
    width: 80vw;
  }

  .subTitle .title {
    font-size: 30px;
  }

  .subTitle .title-en {
    font-size: 20px;
  }
  /*一般狀態結束 */

  .fadeInDown {
    opacity: 0;
    transform: translateY(-50px);
    animation: fadeInDown 1.25s forwards ease-in 0s;
  }
  .fadeInRight {
    opacity: 0;
    transform: translateX(50px);
    animation: fadeInRight 1.25s forwards ease-in 0s;
  }
  .fadeInLeft {
    opacity: 0;
    transform: translateX(-50px);
    animation: fadeInLeft 1.25s forwards ease-in 0s;
  }
  .fadeInUp {
    opacity: 0;
    transform: translateY(50px);
    /* animation:  0.75s forwards ease-in-out; */
    animation-name: fadeInUp;
    animation-duration: 1.25s;
    animation-fill-mode: forwards;
    animation-timing-function: ease-in-out;
    animation-delay: 0s;
  }
  @keyframes fadeInUp {
    0% {
      opacity: 0;
      transform: translateY(100px);
    }
    100% {
      opacity: 1;
      transform: translateY(0px);
    }
  }

  .title {
    font-size: 26px;
    writing-mode: horizontal-tb;
    white-space: nowrap;
    margin: 0px;
  }
  .sectitle {
    font-size: 22px;
    writing-mode: horizontal-tb;
    white-space: nowrap;
    margin: 0px;
  }
  .thirdtitle {
    font-size: 20px;
  }
  .title-en {
    font-size: 20px;
  }
  .addbg-blue {
    font-size: 18px;
  }
  .pc-block {
    display: inline;
  }
  .ph-block {
    display: block;
  }
  .deco-city {
    width: 100vw;
  }

  label {
    font-size: 14px;
    white-space: nowrap;
    font-weight: 300;
  }
  footer {
    flex-direction: column;
    flex-wrap: wrap;
    
  }
  footer .title {
    font-size: 24px;
    margin-top: 10px;
    margin-bottom: 10px;
  }
  footer .infogroup.title {
    font-size: 24px;
    margin-top: 5px;
    margin-bottom: 10px;
  }
  footer .infogroup {
    margin-top: 3px;
    margin-bottom: 3px;
    align-items: center;
    line-height: 2;
  }
  footer .infogroup .subtitle {
    margin-top: 2px;
    font-size: 10px;
    margin-right: 8px;
    line-height: 2;
  }
  footer .infogroup .innerTxt {
    font-size: 12px;
  }
  footer .infogroup .innerTxt a {
    font-size: 12px;
  }
  footer .copyRight {
    font-size: 12px;
    font-weight: 300;
  }
  footer .footer_make {
    font-size: 12px;
  }
  .inputGroup button {
    margin-top: 3vh;
    margin-bottom: 3vh;
  }
  /*動畫區*/

  @keyframes scrollDown {
    0% {
      bottom: 20%;
    }
    50% {
      bottom: 10%;
    }
    100% {
      bottom: 20%;
    }
  }
}
