@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400;1,500&family=Cormorant+Upright:wght@300;400;500;600;700&family=Noto+Sans+TC:wght@500;600;700&family=Noto+Serif+TC:wght@300;400;500;600;700&display=swap");
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  text-decoration: none;
  list-style: none;
}

body {
  margin: 0;
  padding: 0;
}

img {
  width: 100%;
}

.loading-screen {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: 9999999;
  background-color: #ffffff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}
@media all and (max-width: 500px) {
  .loading-screen {
    height: calc(var(--loadingvh, 1vh) * 99);
  }
}
.loading-screen .loading-text {
  display: flex;
  justify-content: center;
  font-family: "Noto Serif TC";
  align-items: center;
  letter-spacing: 0.1em;
  font-weight: 600;
  font-size: 1vw;
  font-style: italic;
  padding-left: 0vw;
  color: #555757;
  margin-top: 0.5vw;
}
@media all and (max-width: 1440px) {
  .loading-screen .loading-text {
    font-size: 1.1vw;
  }
}
@media all and (max-width: 1024px) {
  .loading-screen .loading-text {
    font-size: 3.2vw;
  }
}
@media all and (max-width: 500px) {
  .loading-screen .loading-text {
    font-size: 5vw;
  }
}

header {
  position: fixed;
  top: 0px;
  left: 0px;
  display: flex;
  justify-content: space-between;
  width: 100%;
  background-color: #d2d2d2;
  z-index: 400;
  transition: background-color 0.3s ease;
  padding: 0.7vw 5vw;
}
@media screen and (max-width: 1024px) {
  header {
    padding: 3vw 5vw;
    box-shadow: 0 0px 1em 0 rgba(0, 0, 0, 0.15), 0 0px 0px 0 rgba(0, 0, 0, 0.19);
  }
}
@media screen and (max-width: 500px) {
  header {
    padding: 4vw 6.5vw;
    padding-top: 4.5vw;
  }
}
header .logo-box {
  display: flex;
  flex-direction: column;
  width: 6.5vw;
  vertical-align: bottom;
}
@media screen and (max-width: 1440px) {
  header .logo-box {
    width: 8vw;
  }
}
@media screen and (max-width: 1024px) {
  header .logo-box {
    width: 26vw;
    align-items: center;
    align-self: center;
  }
}
@media screen and (max-width: 500px) {
  header .logo-box {
    width: 32vw;
  }
}
header .logo-box img {
  width: 100%;
}
header .link-box {
  display: flex;
}
@media screen and (max-width: 1024px) {
  header .link-box {
    display: none;
  }
}
header .link-box .link {
  font-family: "Noto Sans TC Light";
  font-size: 0.9vw;
  color: #333333;
  letter-spacing: 0.2em;
  margin-right: 2vw;
  padding-left: 0vw;
  align-self: center;
  transition: 0.4s ease-in-out;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 1440px) {
  header .link-box .link {
    font-size: 1vw;
  }
}
header .link-box .link::after {
  content: "";
  position: absolute;
  left: 0%;
  right: 50%;
  bottom: -25%;
  height: 1px;
  width: 0%;
  background-color: #937e29;
  transition: 0.3s ease-in-out;
}
header .link-box .link:hover {
  color: #937e29;
}
header .link-box .link:hover::after {
  left: 1%;
  right: 0%;
  width: 96%;
}
header .link-box .link:last-child {
  margin-right: 0vw;
}
header .link-box .active {
  color: #937e29;
}
header .link-box .active::after {
  content: "";
  position: absolute;
  bottom: -25%;
  height: 1px;
  left: 1%;
  right: 0%;
  width: 96%;
  background-color: #937e29;
}
header .menu-icon {
  display: none;
  position: relative;
}
@media screen and (max-width: 1024px) {
  header .menu-icon {
    display: flex;
    justify-content: center;
    flex-direction: column;
    width: 14vw;
    padding: 2vw;
    margin-right: -1vw;
  }
}
header .menu-icon img {
  width: 100%;
}
header .menu-icon .close-menu {
  position: absolute;
  top: 1vw;
  left: 3vw;
  width: 7vw;
  opacity: 0;
  display: none;
}
@media screen and (max-width: 500px) {
  header .menu-icon .close-menu {
    width: 8vw;
  }
}

header.transparent {
  background-color: rgba(255, 255, 255, 0.6);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}
@media screen and (max-width: 1024px) {
  header.transparent {
    background-color: rgba(255, 255, 255, 0.5) !important;
  }
}

.footer {
  position: absolute;
  bottom: 0px;
  display: flex;
  z-index: 10;
  background-color: #333333;
  width: 100%;
  align-items: center;
  padding-bottom: 1vw;
  padding-top: 1vw;
  justify-content: center;
}
@media all and (max-width: 1024px) {
  .footer {
    padding-bottom: 3.5vw;
    padding-top: 4vw;
  }
}
.footer .footer-box {
  display: flex;
  justify-content: center;
  gap: 1.5%;
  width: 67%;
}
@media all and (max-width: 1024px) {
  .footer .footer-box {
    flex-direction: column;
    width: 100%;
  }
}
.footer .name {
  color: #ffffff;
  font-family: "Noto Sans TC Regular";
  font-size: 0.9vw;
  letter-spacing: 0.3em;
  align-self: center;
}
@media screen and (max-width: 1440px) {
  .footer .name {
    font-size: 1vw;
  }
}
@media all and (max-width: 1024px) {
  .footer .name {
    font-size: 3.6vw;
    margin-bottom: 3vw;
  }
}
.footer .address,
.footer .copyright-box {
  color: #a9a9a9;
  font-size: 0.8vw;
  letter-spacing: 0.2em;
  font-family: "微軟正黑體";
  align-self: center;
}
@media all and (max-width: 1024px) {
  .footer .address,
  .footer .copyright-box {
    color: #ffffff;
    font-size: 3.4vw;
    margin-bottom: 0.7vw;
    letter-spacing: 0.12em;
  }
}
.footer .address .two,
.footer .copyright-box .two {
  text-align: center;
  margin-left: 1vw;
}
@media all and (max-width: 1024px) {
  .footer .address .two,
  .footer .copyright-box .two {
    font-size: 3.1vw;
    text-align: center;
  }
}
.footer .copyright-box {
  display: flex;
}
@media all and (max-width: 1024px) {
  .footer .copyright-box {
    flex-direction: column;
    line-height: 1.8;
    text-align: center;
  }
}

.menu-box {
  max-width: 1024px;
  background-color: #d2d2d2;
  height: 0vh;
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100vw;
  overflow: hidden;
  display: none;
}
@media all and (max-width: 1024px) {
  .menu-box {
    display: block;
  }
}
.menu-box .menu {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100svh;
  margin: 0 auto;
  justify-content: center;
  align-items: center;
}
.menu-box .menu .item-box {
  display: flex;
  flex-direction: column;
  margin-top: -10vw;
  width: 100%;
  text-align: center;
}
.menu-box .menu .item-box .item {
  padding: 4vw 0vw;
}
.menu-box .menu .item-box .item a {
  color: #333333;
  font-family: "Noto Sans TC Regular";
  letter-spacing: 0.2em;
  font-size: 5vw;
  padding: 4vw 6vw;
}

.index-body {
  display: flex;
  flex-direction: column;
  position: relative;
}
.index-body .card1 {
  width: 100%;
  background-color: #d2d2d2;
  position: relative;
  display: flex;
}
@media screen and (max-width: 1024px) {
  .index-body .card1 {
    flex-direction: column-reverse;
    height: 100svh;
    justify-content: space-between;
  }
}
.index-body .card1 .bottom-bg {
  position: absolute;
  bottom: 0px;
  pointer-events: none;
  left: 0px;
  width: 40vw;
}
@media screen and (max-width: 1024px) {
  .index-body .card1 .bottom-bg {
    display: none;
  }
}
.index-body .card1 .left {
  display: flex;
  flex-direction: column;
  padding-left: 5vw;
  width: 40%;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .index-body .card1 .left {
    width: 100%;
    padding-left: 0vw;
    height: 50%;
    align-items: center;
    justify-content: center;
  }
}
.index-body .card1 .left .title-bg-mobile {
  display: none;
  width: 100%;
}
@media screen and (max-width: 1024px) {
  .index-body .card1 .left .title-bg-mobile {
    display: flex;
    position: absolute;
    bottom: 0px;
    left: 0px;
  }
}
.index-body .card1 .left .logo-box {
  display: flex;
  flex-direction: column;
  width: 6.5vw;
  margin-top: 3vw;
  margin-bottom: 3vw;
}
.index-body .card1 .left .logo-box img {
  width: 100%;
}
@media screen and (max-width: 1440px) {
  .index-body .card1 .left .logo-box {
    width: 8.5vw;
  }
}
@media screen and (max-width: 1024px) {
  .index-body .card1 .left .logo-box {
    display: none;
  }
}
.index-body .card1 .left .link-box {
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 1024px) {
  .index-body .card1 .left .link-box {
    display: none;
  }
}
.index-body .card1 .left .link-box .link {
  font-family: "Noto Sans TC Light";
  font-size: 0.9vw;
  color: #333333;
  letter-spacing: 0.2em;
  padding: 0.7vw 2vw;
  padding-left: 0vw;
  width: 45%;
  transition: 0.3s ease-in-out;
}
.index-body .card1 .left .link-box .link:hover {
  color: #937e29;
}
@media screen and (max-width: 1440px) {
  .index-body .card1 .left .link-box .link {
    font-size: 1vw;
  }
}
.index-body .card1 .left .swiper-content-box {
  position: absolute;
  right: 4vw;
  top: 10vw;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 1024px) {
  .index-body .card1 .left .swiper-content-box {
    right: initial;
    top: initial;
    writing-mode: initial;
    -webkit-writing-mode: initial;
    text-align: center;
  }
}
.index-body .card1 .left .swiper-content-box .swiper-content {
  font-family: "Noto Sans TC Light";
  font-size: 0.9vw;
  color: #333333;
  letter-spacing: 0.2em;
  line-height: 2;
}
@media screen and (max-width: 1440px) {
  .index-body .card1 .left .swiper-content-box .swiper-content {
    font-size: 1vw;
  }
}
@media screen and (max-width: 1024px) {
  .index-body .card1 .left .swiper-content-box .swiper-content {
    font-size: 3.9vw;
  }
}
@media screen and (max-width: 1024px) {
  .index-body .card1 .left .swiper-content-box .swiper-content .pc {
    display: none;
  }
}
.index-body .card1 .left .swiper-content-box .swiper-content .mobile {
  display: none;
}
@media screen and (max-width: 1024px) {
  .index-body .card1 .left .swiper-content-box .swiper-content .mobile {
    display: flex;
  }
}
.index-body .card1 .left .swiper-content-box .title {
  letter-spacing: 0.2em;
  font-family: "Noto Sans TC Regular";
  font-size: 1.2vw;
  margin-left: 1vw;
}
@media screen and (max-width: 1024px) {
  .index-body .card1 .left .swiper-content-box .title {
    font-size: 4.2vw;
    margin-left: 0vw;
    margin-bottom: 2vw;
  }
}
.index-body .card1 .left .txt-active {
  animation: topToDown 1.5s forwards;
}
.index-body .card1 .left .txt-inactive {
  animation: centerToDown 1.5s forwards;
}
@keyframes topToDown {
  0% {
    transform: translateY(-30%);
    opacity: 0;
  }
  70% {
    opacity: 1;
  }
  100% {
    transform: translateY(0%);
    opacity: 1;
  }
}
@keyframes centerToDown {
  0% {
    transform: translateY(0%);
    opacity: 1;
  }
  70% {
    opacity: 0;
  }
  100% {
    transform: translateY(40%);
    opacity: 0;
  }
}
.index-body .card1 .right {
  width: 60%;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 1024px) {
  .index-body .card1 .right {
    width: 100%;
    margin-top: 10vw;
  }
}
.index-body .card1 .right .swiper-btn-squre {
  position: absolute;
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  z-index: 10;
  pointer-events: none;
}
.index-body .card1 .right .swiper-btn-squre .squre-item {
  width: 100%;
  height: 100%;
  background-color: #d2d2d2;
}
.index-body .card1 .right .c1-swiper {
  position: relative;
  height: 100%;
  width: 100%;
  overflow: hidden;
}
.index-body .card1 .right .c1-swiper .swiper-pagination {
  color: white;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  flex-direction: column;
  width: 4vw;
  left: 90%;
  bottom: 46%;
  gap: 10px;
  transition: all 0.5s;
  font-family: "Jost";
}
.index-body .card1 .right .c1-swiper .swiper-page-top-inactive {
  cursor: pointer;
  font-size: 0.9vw;
  transition: all 0.5s;
}
@media screen and (max-width: 1024px) {
  .index-body .card1 .right .c1-swiper .swiper-page-top-inactive {
    font-size: 3.6vw;
  }
}
.index-body .card1 .right .c1-swiper .swiper-page-top-inactive span {
  transition: all 0.5s;
}
.index-body .card1 .right .c1-swiper .swiper-page-top-active {
  font-size: 1.1vw;
  transition: all 0.5s;
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
}
@media screen and (max-width: 1024px) {
  .index-body .card1 .right .c1-swiper .swiper-page-top-active {
    font-size: 4.1vw;
  }
}
.index-body .card1 .right .c1-swiper .swiper-page-top-active span {
  display: inline-block;
  width: 1.25vw;
  height: 1px;
  background-color: white;
  transition: all 0.5s;
}
@media screen and (max-width: 1024px) {
  .index-body .card1 .right .c1-swiper .swiper-page-top-active span {
    width: 5vw;
    height: 1.5px;
  }
}
.index-body .card1 .right .c1-swiper .swiper-slide {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  position: relative;
}
.index-body .card1 .right .c1-swiper .swiper-slide .article-1-right-small-txt {
  position: absolute;
  bottom: 10%;
  left: 47%;
  width: 10%;
  transform: translate(-50%, 0%);
}
.index-body .card1 .right .c1-swiper .swiper-slide > img {
  height: 100%;
}
.index-body .card1 .right .c1-swiper .swiper-slide > video {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.index-body .card1 .right .c1-swiper .swiper-slide img,
.index-body .card1 .right .c1-swiper .swiper-slide video,
.index-body .card1 .right .c1-swiper .swiper-slide canvas {
  width: 100%;
  display: block;
}
.index-body .card1 .right .c1-swiper .article-1-right-txt {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  mix-blend-mode: soft-light;
}
@media screen and (max-width: 1024px) {
  .index-body .card1 .right .c1-swiper .article-1-right-txt {
    display: none;
  }
}
.index-body .card1 .right .c1-swiper .article-1-right-txt img {
  height: 100%;
}
.index-body .card1 .right .c1-swiper .article-1-right-txt-mobile {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  mix-blend-mode: soft-light;
  display: none;
}
@media screen and (max-width: 1024px) {
  .index-body .card1 .right .c1-swiper .article-1-right-txt-mobile {
    display: flex;
  }
}
.index-body .card1 .right .c1-swiper .article-1-right-txt-mobile img {
  height: 100%;
}
.index-body .card2 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
  z-index: 1;
  background-color: white;
}
@media screen and (max-width: 1024px) {
  .index-body .card2 {
    height: 100svh;
  }
}
.index-body .card2 .c2-container {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 400px 400px 400px 400px;
  transform: scale(0.25);
}
@media screen and (max-width: 1024px) {
  .index-body .card2 .c2-container {
    transform: scale(1);
    border-radius: 0px;
  }
}
.index-body .card2 .c2-container .c2-content-box {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  padding: 2vw;
  z-index: 1;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  .index-body .card2 .c2-container .c2-content-box {
    flex-direction: column;
    justify-content: space-evenly;
    text-align: center;
    align-items: center;
    padding: 0vw;
  }
}
.index-body .card2 .c2-container .c2-content-box .c2-content1 {
  font-family: "Noto Sans TC Light";
  color: #ffffff;
  letter-spacing: 0.3em;
  font-size: 1.1vw;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 1440px) {
  .index-body .card2 .c2-container .c2-content-box .c2-content1 {
    font-size: 1.4vw;
  }
}
@media screen and (max-width: 1024px) {
  .index-body .card2 .c2-container .c2-content-box .c2-content1 {
    font-size: 3.9vw;
    letter-spacing: 0.15em;
    writing-mode: initial;
  }
}
.index-body .card2 .c2-container .c2-content-box .c2-content1 .big-title {
  display: none;
}
@media screen and (max-width: 1024px) {
  .index-body .card2 .c2-container .c2-content-box .c2-content1 .big-title {
    display: flex;
    font-size: 120pt;
    font-size: 15vw;
    color: white;
    font-family: "Jost";
    letter-spacing: 0.05em;
    margin-bottom: -2vw;
  }
}
.index-body .card2 .c2-container .c2-content-box .c2-content2 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: white;
  letter-spacing: 0.15em;
  font-family: "Noto Sans TC Light";
  text-align: center;
}
.index-body .card2 .c2-container .c2-content-box .c2-content2 .title {
  font-size: 1.6vw;
  font-weight: 500;
  margin-bottom: 2vw;
}
@media screen and (max-width: 1024px) {
  .index-body .card2 .c2-container .c2-content-box .c2-content2 .title {
    font-size: 4.85vw;
    letter-spacing: 0.15em;
  }
}
.index-body .card2 .c2-container .c2-content-box .c2-content2 .content {
  font-size: 0.9vw;
  line-height: 2;
  margin-bottom: 3vw;
}
@media screen and (max-width: 1440px) {
  .index-body .card2 .c2-container .c2-content-box .c2-content2 .content {
    font-size: 1vw;
  }
}
@media screen and (max-width: 1024px) {
  .index-body .card2 .c2-container .c2-content-box .c2-content2 .content {
    font-size: 3.9vw;
    letter-spacing: 0.15em;
  }
}
.index-body .card2 .c2-container .c2-content-box .c2-content2 .c2-more {
  display: flex;
  flex-direction: column;
  width: 3.5vw;
}
@media screen and (max-width: 1024px) {
  .index-body .card2 .c2-container .c2-content-box .c2-content2 .c2-more {
    width: 12vw;
    display: none;
  }
}
.index-body .card2 .c2-container .c2-content-box .c2-content2 .c2-more img {
  width: 100%;
  transition: 0.4s ease-in-out;
}
.index-body .card2 .c2-container .c2-content-box .c2-content2 .c2-more img:hover {
  scale: 1.1;
}
@media screen and (max-width: 1024px) {
  .index-body .card2 .c2-container .c2-content-box .c2-content2 .c2-more img:hover {
    scale: 1;
  }
}
.index-body .card2 .c2-container .c2-content-box .c2-content3 {
  width: 5.5%;
  display: flex;
  align-items: flex-end;
}
@media screen and (max-width: 1024px) {
  .index-body .card2 .c2-container .c2-content-box .c2-content3 {
    display: none;
  }
}
.index-body .card2 .c2-container .c2-content-box .c2-more-mobile {
  display: flex;
  flex-direction: column;
  width: 12vw;
  display: none;
}
@media screen and (max-width: 1024px) {
  .index-body .card2 .c2-container .c2-content-box .c2-more-mobile {
    display: flex;
  }
}
.index-body .card2 .c2-container .c2-content-box .c2-more-mobile img {
  width: 100%;
  transition: 0.4s ease-in-out;
}
.index-body .card2 .c2-container .c2-content-box .c2-more-mobile img:hover {
  scale: 1;
}
@media screen and (max-width: 1024px) {
  .index-body .card2 .c2-container .c2-content-box .c2-more-mobile img:hover {
    scale: 1;
  }
}
.index-body .card2 .c2-container .c2-img {
  width: 100%;
  height: 100%;
}
.index-body .card2 .c2-container .c2-img img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.index-body .card3 {
  display: flex;
  position: relative;
  width: 100%;
  height: 100%;
  background-color: #d2d2d2;
  padding: 8vw;
  align-items: center;
  justify-content: space-between;
}
@media (max-width: 1024px) {
  .index-body .card3 {
    flex-direction: column;
    padding: 30vw 8vw 45vw 8vw;
  }
}
.index-body .card3 .swiper-pagination-bullet-active {
  background-color: #2a2a2a;
}
.index-body .card3 .bottom-bg {
  position: absolute;
  pointer-events: none;
  bottom: 0px;
  left: 0px;
  width: 30vw;
}
.index-body .card3 .left-box {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin-bottom: 4vw;
}
.index-body .card3 .left-box .title {
  display: flex;
  flex-direction: column;
  margin-bottom: 6vw;
  align-self: center;
}
@media (max-width: 1024px) {
  .index-body .card3 .left-box .title {
    flex-direction: column-reverse;
  }
}
.index-body .card3 .left-box .title .zh {
  color: #333333;
  font-size: 1.1vw;
  letter-spacing: 0.1em;
  font-family: "Noto Sans TC Regular";
  margin-bottom: -0.5vw;
}
@media (max-width: 1024px) {
  .index-body .card3 .left-box .title .zh {
    font-size: 3.9vw;
    letter-spacing: 0.15em;
  }
}
.index-body .card3 .left-box .title .zh .clip-text {
  overflow: hidden;
}
@media (max-width: 1024px) {
  .index-body .card3 .left-box .title .zh .clip-text {
    text-align: center !important;
  }
}
.index-body .card3 .left-box .title .en {
  font-family: "Jost";
  color: #333333;
  letter-spacing: 0.05em;
  font-size: 5.7vw;
}
@media (max-width: 1024px) {
  .index-body .card3 .left-box .title .en {
    font-size: 15vw;
    margin-bottom: 1vw;
  }
}
.index-body .card3 .left-box .title .en .clip-text {
  overflow: hidden;
}
.index-body .card3 .left-box .content {
  position: relative;
  height: 10vw;
  letter-spacing: 0.1em;
}
@media (max-width: 1024px) {
  .index-body .card3 .left-box .content {
    height: 30vw;
  }
}
.index-body .card3 .left-box .content .slide_content {
  position: absolute;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  opacity: 0;
}
.index-body .card3 .left-box .content .slide_content:nth-of-type(1) {
  opacity: 1;
}
.index-body .card3 .left-box .content div {
  font-size: 0.9vw;
  font-family: "Noto Sans TC Light";
  line-height: 2;
}
@media screen and (max-width: 1440px) {
  .index-body .card3 .left-box .content div {
    font-size: 1vw;
  }
}
@media (max-width: 1024px) {
  .index-body .card3 .left-box .content div {
    font-size: 3.9vw;
    letter-spacing: 0.15em;
  }
}
.index-body .card3 .left-box .content .name {
  font-size: 1.1vw;
  font-family: "Noto Sans TC Regular";
  margin-bottom: 0.8vw;
}
@media (max-width: 1024px) {
  .index-body .card3 .left-box .content .name {
    font-size: 4.85vw;
    margin-bottom: 0vw;
    letter-spacing: 0.15em;
  }
}
.index-body .card3 .left-box .content .c3-more {
  display: flex;
  flex-direction: column;
  width: 3vw;
  align-self: center;
  margin-top: 2.3vw;
}
@media (max-width: 1024px) {
  .index-body .card3 .left-box .content .c3-more {
    width: 13vw;
    position: absolute;
    top: 522%;
  }
}
.index-body .card3 .left-box .content .c3-more img {
  width: 100%;
  transition: 0.4s ease-in-out;
}
.index-body .card3 .left-box .content .c3-more img:hover {
  scale: 1.1;
}
.index-body .card3 .right-box {
  width: 60%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media (max-width: 1024px) {
  .index-body .card3 .right-box {
    width: 100%;
  }
}
.index-body .card3 .right-box .img-box {
  width: 100%;
}
.index-body .card3 .right-box .img-box img {
  width: 100%;
}
.index-body .card4 {
  width: 100%;
  margin-bottom: 3vw;
}
@media screen and (max-width: 1024px) {
  .index-body .card4 {
    height: auto;
    padding-top: 5vw;
    margin-bottom: 10vw;
  }
}
@media screen and (max-width: 500px) {
  .index-body .card4 {
    padding-top: 7vw;
  }
}
.index-body .card4 .c4-container {
  width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 1024px) {
  .index-body .card4 .c4-container {
    height: auto !important;
    flex-direction: column;
  }
}
.index-body .card4 .c4-container .c4-left {
  width: 67%;
  display: flex;
  justify-content: flex-start;
}
@media screen and (max-width: 1024px) {
  .index-body .card4 .c4-container .c4-left {
    display: none;
  }
}
.index-body .card4 .c4-container .c4-left .c4-left-img {
  position: relative;
  flex: 0 1 20%;
  overflow: hidden;
  transition: all 0.5s;
}
.index-body .card4 .c4-container .c4-left .c4-left-img > img {
  transform: translateX(-105%);
}
.index-body .card4 .c4-container .c4-left .c4-left-img .content-box {
  position: absolute;
  left: 0;
  bottom: 0;
  height: 100%;
  opacity: 0;
  width: 4.5vw;
  z-index: 3;
  transition: all 0.5s;
  color: white;
  display: flex;
  justify-content: end;
  writing-mode: vertical-rl;
  align-items: center;
  font-size: 0.9vw;
  background-image: url(../images/content_bg.png);
  background-position: bottom;
  background-size: cover;
}
@media screen and (max-width: 1440px) {
  .index-body .card4 .c4-container .c4-left .c4-left-img .content-box {
    font-size: 1vw;
  }
}
.index-body .card4 .c4-container .c4-left .c4-left-img .content-box .date {
  font-family: "Noto Sans TC";
  letter-spacing: 0.2em;
  margin-bottom: 1.5vw;
}
.index-body .card4 .c4-container .c4-left .c4-left-img .content-box .content {
  font-family: "Noto Sans TC Regular";
  letter-spacing: 0.15em;
  text-orientation: upright;
  margin-bottom: 2vw;
}
.index-body .card4 .c4-container .c4-left .c4-left-img img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.index-body .card4 .c4-container .c4-left .c4-left-img .img-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 2;
  transition: all 0.5s;
  opacity: 0;
}
.index-body .card4 .c4-container .c4-left .c4-left-img:hover {
  flex: 3;
  transition: all 0.5s;
}
.index-body .card4 .c4-container .c4-left .c4-left-img:hover .content-box {
  opacity: 1;
}
.index-body .card4 .c4-container .c4-left .c4-left-img:hover .img-bg {
  opacity: 0 !important;
}
.index-body .card4 .c4-container .c4-right-box {
  display: flex;
  width: 33%;
  background-color: white;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .index-body .card4 .c4-container .c4-right-box {
    width: 100%;
  }
}
.index-body .card4 .c4-container .c4-right-box .c4-right {
  display: flex;
  flex-direction: column;
  width: 100%;
  justify-content: center;
}
.index-body .card4 .c4-container .c4-right-box .title-box {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100%;
}
@media screen and (max-width: 1024px) {
  .index-body .card4 .c4-container .c4-right-box .title-box {
    flex-direction: column;
  }
}
.index-body .card4 .c4-container .c4-right-box .title-box .zh-title {
  color: #333333;
  font-size: 1.1vw;
  letter-spacing: 0.1em;
  font-family: "Noto Sans TC Regular";
  writing-mode: vertical-rl;
  margin-top: 0.5vw;
}
@media screen and (max-width: 1024px) {
  .index-body .card4 .c4-container .c4-right-box .title-box .zh-title {
    writing-mode: horizontal-tb;
    font-size: 3.9vw;
    letter-spacing: 0.15em;
    text-align: center;
    margin-top: -1.5vw;
  }
}
.index-body .card4 .c4-container .c4-right-box .title-box .en-title {
  font-family: "Jost";
  color: #333333;
  letter-spacing: 0.05em;
  font-size: 5.7vw;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 1024px) {
  .index-body .card4 .c4-container .c4-right-box .title-box .en-title {
    writing-mode: horizontal-tb;
    font-size: 15vw;
    text-align: center;
  }
}
.index-body .card4 .c4-container .c4-right-box .title-box .en-title .news-text {
  margin-right: -1.5vw;
}
@media screen and (max-width: 1024px) {
  .index-body .card4 .c4-container .c4-right-box .title-box .en-title .news-text {
    margin-top: -4.5vw;
    margin-right: 0vw;
  }
}
.index-body .card4 .c4-container .c4-right-box .more {
  position: absolute;
  bottom: 13vw;
  width: 3vw;
  left: 11vw;
}
@media screen and (max-width: 1440px) {
  .index-body .card4 .c4-container .c4-right-box .more {
    bottom: 10vw;
  }
}
@media screen and (max-width: 1024px) {
  .index-body .card4 .c4-container .c4-right-box .more {
    display: none;
  }
}
.index-body .card4 .c4-container .c4-right-box .more img {
  width: 100%;
  transition: 0.4s ease-in-out;
}
.index-body .card4 .c4-container .c4-right-box .more img:hover {
  scale: 1.1;
}
@media screen and (max-width: 1024px) {
  .index-body .card4 .c4-container .c4-right-box .more img:hover {
    scale: 1;
  }
}
.index-body .card4 .c4-container .c4-more {
  display: flex;
  flex-direction: column;
  width: 12vw;
  display: none;
}
@media screen and (max-width: 1024px) {
  .index-body .card4 .c4-container .c4-more {
    display: flex;
    align-self: center;
  }
}
.index-body .card4 .c4-container .c4-more img {
  width: 100%;
}
.index-body .card4 .c4-container .c4-mobile-swiper {
  display: none;
  position: relative;
  width: 87%;
  align-self: center;
  margin-top: 7.5vw;
  margin-bottom: 10vw;
}
@media screen and (max-width: 1024px) {
  .index-body .card4 .c4-container .c4-mobile-swiper {
    display: flex;
  }
}
@media screen and (max-width: 500px) {
  .index-body .card4 .c4-container .c4-mobile-swiper {
    margin-top: 10vw;
  }
}
.index-body .card4 .c4-container .c4-mobile-swiper .swiper-slide {
  width: 100%;
  position: relative;
}
.index-body .card4 .c4-container .c4-mobile-swiper .swiper-slide img {
  width: 100%;
  display: block;
}
.index-body .card4 .c4-container .c4-mobile-swiper .swiper-slide .content-box {
  display: flex;
  flex-direction: column;
  position: absolute;
  bottom: 0vw;
  width: 100%;
  height: 36vw;
  left: 0vw;
  z-index: 20;
  background-image: url(../images/swiper_bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  padding: 5vw;
}
.index-body .card4 .c4-container .c4-mobile-swiper .swiper-slide .content-box .date {
  font-family: "Jost";
  font-size: 4.5vw;
  letter-spacing: 0.12em;
  color: white;
  margin-bottom: 1.5vw;
}
.index-body .card4 .c4-container .c4-mobile-swiper .swiper-slide .content-box .text {
  font-family: "Noto Sans TC Light";
  letter-spacing: 0.12em;
  font-size: 3.9vw;
  color: white;
  font-weight: 400;
}
.index-body .card4 .c4-container .c4-mobile-swiper .swiper-pagination-bullet {
  opacity: 0.5;
  background: white;
  z-index: 10;
  width: 6px;
  height: 6px;
  margin: 5px;
}
.index-body .card4 .c4-container .c4-mobile-swiper .swiper-pagination-bullet-active {
  opacity: 1;
  background: white;
  scale: 1.3;
}
.index-body .card4 .c4-container .c4-mobile-swiper .c4-prev,
.index-body .card4 .c4-container .c4-mobile-swiper .c4-next {
  width: 16vw;
  z-index: 30;
  position: absolute;
  padding: 2vw;
  top: 41vw;
}
.index-body .card4 .c4-container .c4-mobile-swiper .c4-prev img,
.index-body .card4 .c4-container .c4-mobile-swiper .c4-next img {
  width: 100%;
}
.index-body .card4 .c4-container .c4-mobile-swiper .c4-prev {
  left: 1vw;
}
.index-body .card4 .c4-container .c4-mobile-swiper .c4-next {
  right: 1vw;
}
@media screen and (max-width: 1600px) {
  .index-body .card4 .c4-container {
    height: 80vh;
  }
}
.index-body header {
  display: none;
}
@media screen and (max-width: 1024px) {
  .index-body header {
    display: flex;
    background-color: #d2d2d2;
    transition: background-color 0.3s ease;
  }
}
@media screen and (max-width: 1024px) {
  .index-body footer {
    position: relative;
  }
}

.about-body {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  background-color: white;
}
@media screen and (max-width: 1024px) {
  .about-body {
    padding-bottom: 36vw;
  }
}
.about-body .top-title {
  background-color: #d2d2d2;
  width: 100%;
  height: 22vw;
  position: relative;
  display: flex;
}
@media screen and (max-width: 1024px) {
  .about-body .top-title {
    height: 60vw;
  }
}
@media screen and (max-width: 500px) {
  .about-body .top-title {
    height: auto;
    margin-top: 17vw;
    padding-bottom: 13vw;
    padding-top: 13vw;
  }
}
.about-body .top-title picture {
  position: absolute;
  bottom: 0px;
  width: 46vw;
  display: flex;
}
@media screen and (max-width: 1024px) {
  .about-body .top-title picture {
    width: 60vw;
  }
}
.about-body .top-title .title {
  color: #333333;
  font-family: "Jost";
  align-self: center;
  align-content: center;
  letter-spacing: 0.05em;
  margin: 0 auto;
  font-size: 8vw;
}
@media screen and (max-width: 1024px) {
  .about-body .top-title .title {
    font-size: 15vw;
    margin-top: 13vw;
  }
}
@media screen and (max-width: 500px) {
  .about-body .top-title .title {
    margin-top: 0vw;
  }
}
.about-body .top-title .title .clip-text {
  overflow: hidden;
}
.about-body .nav-box {
  display: flex;
  width: 100%;
  justify-content: center;
  padding-top: 3vw;
}
@media screen and (max-width: 1024px) {
  .about-body .nav-box {
    padding-top: 5vw;
  }
}
.about-body .nav-box a.nav {
  color: #333333;
  font-family: "Noto Sans TC Regular";
  letter-spacing: 0.15em;
  font-size: 1.1vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-right: 3vw;
}
@media screen and (max-width: 1024px) {
  .about-body .nav-box a.nav {
    font-size: 3.9vw;
    margin-right: 5vw;
  }
}
.about-body .nav-box a.nav img {
  width: 3vw;
  margin-top: 0.4vw;
  display: none;
}
@media screen and (max-width: 1024px) {
  .about-body .nav-box a.nav img {
    width: 12vw;
    height: 6%;
    margin-top: 0.8vw;
  }
}
.about-body .nav-box a.nav .img-line-active {
  display: block;
}
.about-body .nav-box a.nav:last-child {
  margin-right: 0vw;
}
.about-body .nav-fixed {
  position: fixed;
  z-index: 30;
  width: 100%;
  opacity: 0.9;
  background-color: white;
  padding-top: 1.5vw;
  padding-bottom: 1.5vw;
}
.about-body .card1 {
  display: flex;
  position: relative;
  justify-content: space-between;
  margin: 0 auto;
  width: 85%;
  margin-bottom: 3vw;
}
@media screen and (max-width: 1024px) {
  .about-body .card1 {
    flex-direction: column;
    padding-bottom: 50vw;
    margin-bottom: 8vw;
    margin-top: 6vw;
  }
}
.about-body .card1 .img-item-box {
  display: flex;
  overflow: hidden;
  align-self: center;
}
@media screen and (max-width: 1024px) {
  .about-body .card1 .img-item-box {
    order: 2;
    position: absolute;
    bottom: 2vw;
  }
}
.about-body .card1 .img-item-box .item {
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  align-self: center;
  overflow: hidden;
}
.about-body .card1 .img-item-box .item img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.about-body .card1 .img-item-box .item1 {
  width: 6vw;
  height: 24vw;
  align-items: end;
}
@media screen and (max-width: 1024px) {
  .about-body .card1 .img-item-box .item1 {
    width: 11vw;
    height: 43vw;
  }
}
.about-body .card1 .img-item-box .item1 img {
  margin-left: -25%;
  margin-top: -4%;
  width: 110%;
}
.about-body .card1 .img-item-box .item2 {
  width: 6vw;
  height: 27vw;
  align-items: center;
  margin-left: 2vw;
  margin-right: 2vw;
}
@media screen and (max-width: 1024px) {
  .about-body .card1 .img-item-box .item2 {
    width: 10vw;
    height: 36vw;
    margin-left: 2.5vw;
    margin-right: 2.5vw;
  }
}
.about-body .card1 .img-item-box .item2 img {
  width: 110%;
}
.about-body .card1 .img-item-box .item3 {
  width: 7vw;
  align-items: start;
  height: 26vw;
}
@media screen and (max-width: 1024px) {
  .about-body .card1 .img-item-box .item3 {
    width: 15vw;
    height: 46vw;
  }
}
.about-body .card1 .img-item-box .item3 img {
  width: 120%;
}
@media screen and (max-width: 1024px) {
  .about-body .card1 .img-item-box .item3 img {
    width: 113%;
  }
}
.about-body .card1 .img-item-box .item-margin1 {
  align-items: end;
}
@media screen and (max-width: 1024px) {
  .about-body .card1 .left-box {
    left: 0vw;
  }
}
@media screen and (max-width: 1024px) {
  .about-body .card1 .right-box {
    right: 0vw;
  }
}
.about-body .card1 .center-box {
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 1024px) {
  .about-body .card1 .center-box {
    order: 1;
    margin-top: -2vw;
    margin-bottom: 1.5vw;
  }
}
@media screen and (max-width: 500px) {
  .about-body .card1 .center-box {
    margin-bottom: 3vw;
  }
}
.about-body .card1 .center-box .big-title {
  color: #333333;
  font-family: "Jost";
  align-self: center;
  align-content: center;
  letter-spacing: 0.03em;
  font-size: 11vw;
}
@media screen and (max-width: 1024px) {
  .about-body .card1 .center-box .big-title {
    font-size: 15vw;
  }
}
.about-body .card1 .center-box .small-title {
  font-family: "Jost";
  text-align: center;
  font-size: 17.5pt;
  color: #333333;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1024px) {
  .about-body .card1 .center-box .small-title {
    margin-top: -2vw;
    margin-bottom: -2vw;
    font-size: 3vw;
  }
}
.about-body .card2 {
  display: flex;
  position: relative;
  flex-direction: column;
  width: 100%;
  padding-bottom: 15vw;
}
@media screen and (max-width: 1024px) {
  .about-body .card2 {
    padding-bottom: 0vw;
  }
}
.about-body .card2 .top-logo {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  align-items: center;
  margin-bottom: 5.5vw;
}
@media screen and (max-width: 1024px) {
  .about-body .card2 .top-logo {
    margin-bottom: 8vw;
  }
}
.about-body .card2 .top-logo .logo {
  width: 4vw;
  margin-bottom: 1vw;
}
@media screen and (max-width: 1024px) {
  .about-body .card2 .top-logo .logo {
    width: 10vw;
  }
}
.about-body .card2 .top-logo .logo img {
  width: 100%;
}
.about-body .card2 .top-logo .name-box {
  display: flex;
  justify-content: center;
}
.about-body .card2 .top-logo .name-box .name {
  color: #333333;
  font-family: "Noto Serif TC";
  letter-spacing: 0.15em;
  font-weight: bold;
  font-size: 1.8vw;
}
@media screen and (max-width: 1024px) {
  .about-body .card2 .top-logo .name-box .name {
    font-size: 5.2vw;
  }
}
.about-body .card2 .top-logo .name-box img {
  width: 1.5vw;
  height: 1.5vw;
  align-self: center;
  margin-left: 1vw;
  margin-right: 1.2vw;
  margin-bottom: -0.2vw;
}
@media screen and (max-width: 1024px) {
  .about-body .card2 .top-logo .name-box img {
    width: 4.5vw;
    height: 4.5vw;
    margin-left: 3vw;
    margin-right: 3.3vw;
  }
}
.about-body .card2 .content-box {
  display: flex;
  width: 75%;
  align-self: center;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .about-body .card2 .content-box {
    display: none;
  }
}
.about-body .card2 .content-box .text-box {
  display: flex;
  position: absolute;
  right: 0px;
}
.about-body .card2 .content-box .text-box .content {
  font-size: 0.9vw;
  font-family: "Noto Sans TC Light";
  letter-spacing: 0.1em;
  color: #333333;
  line-height: 2;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 1440px) {
  .about-body .card2 .content-box .text-box .content {
    font-size: 1vw;
  }
}
.about-body .card2 .content-box .text-box .title {
  font-size: 1.6vw;
  font-family: "Noto Sans TC Regular";
  letter-spacing: 0.15em;
  color: #333333;
  margin-left: 1.5vw;
  writing-mode: vertical-rl;
}
.about-body .card2 .content-box .img-box1 {
  position: relative;
  width: 37vw;
  height: 21vw;
  overflow: hidden;
  z-index: 3;
  -webkit-mask-image: url(../images/about/mask_1.png);
          mask-image: url(../images/about/mask_1.png);
  mask-size: 200% 200%;
  mask-repeat: no-repeat;
  mask-position: 200% -100%;
  -webkit-mask-size: 200% 200%;
  -webkit-mask-position: 200% -100%;
  -webkit-mask-repeat: no-repeat;
}
.about-body .card2 .content-box .img-box1 img {
  width: 39vw;
  margin-left: -2vw;
  margin-top: -22%;
}
.about-body .card2 .content-box .img-box2 {
  position: relative;
  width: 17vw;
  height: 15vw;
  overflow: hidden;
  z-index: 3;
  margin-left: 2vw;
  margin-top: 12vw;
  -webkit-mask-image: url(../images/about/mask_1.png);
          mask-image: url(../images/about/mask_1.png);
  mask-size: 200% 200%;
  mask-repeat: no-repeat;
  mask-position: 200% -100%;
  -webkit-mask-size: 200% 200%;
  -webkit-mask-position: 200% -100%;
  -webkit-mask-repeat: no-repeat;
}
.about-body .card2 .content-box .img-box2 img {
  width: 33vw;
  margin-left: -10vw;
  margin-top: 0%;
}
.about-body .card2 .content-box2 {
  margin-top: 10vw;
}
.about-body .card2 .content-box2 .text-box {
  display: flex;
  position: absolute;
  left: 3vw;
}
.about-body .card2 .content-box2 .text-box .content {
  font-size: 0.9vw;
  font-family: "Noto Sans TC Light";
  letter-spacing: 0.1em;
  color: #333333;
  line-height: 2;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 1440px) {
  .about-body .card2 .content-box2 .text-box .content {
    font-size: 1vw;
  }
}
@keyframes identifier {
  0% {
    mask-position: 200% -100%;
    -webkit-mask-position: 200% -100%;
  }
  100% {
    mask-position: 0% 100%;
    -webkit-mask-position: 0% 100%;
  }
}
.about-body .card2 .content-box2 .img-box3 {
  position: relative;
  width: 17vw;
  height: 15vw;
  overflow: hidden;
  z-index: 3;
  margin-left: 18vw;
  margin-top: 12vw;
  -webkit-mask-image: url(../images/about/mask_1.png);
          mask-image: url(../images/about/mask_1.png);
  mask-size: 200% 200%;
  mask-repeat: no-repeat;
  mask-position: 200% -100%;
  -webkit-mask-size: 200% 200%;
  -webkit-mask-position: 200% -100%;
  -webkit-mask-repeat: no-repeat;
}
.about-body .card2 .content-box2 .img-box3 img {
  width: 31vw;
  margin-left: -4vw;
  margin-top: -8%;
}
.about-body .card2 .content-box2 .img-box4 {
  position: relative;
  width: 37vw;
  height: 21vw;
  overflow: hidden;
  margin-left: 2vw;
  z-index: 3;
  -webkit-mask-image: url(../images/about/mask_1.png);
          mask-image: url(../images/about/mask_1.png);
  mask-size: 200% 200%;
  mask-repeat: no-repeat;
  mask-position: 200% -100%;
  -webkit-mask-size: 200% 200%;
  -webkit-mask-position: 200% -100%;
  -webkit-mask-repeat: no-repeat;
}
.about-body .card2 .content-box2 .img-box4 img {
  width: 50vw;
  margin-left: -3vw;
  margin-top: -14%;
}
.about-body .mobile-swiper-box,
.about-body .mobile-swiper-box2 {
  display: none;
  margin-bottom: 7vw;
}
@media screen and (max-width: 1024px) {
  .about-body .mobile-swiper-box,
  .about-body .mobile-swiper-box2 {
    display: flex;
  }
}
.about-body .mobile-swiper-box .swiper,
.about-body .mobile-swiper-box2 .swiper {
  width: 87%;
}
.about-body .swiper-content {
  display: none;
}
@media screen and (max-width: 1024px) {
  .about-body .swiper-content {
    display: flex;
    color: #333333;
    flex-direction: column;
    text-align: center;
    margin-bottom: 14vw;
  }
}
.about-body .swiper-content .title {
  font-family: "Noto Sans TC";
  font-size: 5.2vw;
  letter-spacing: 0.15em;
  margin-bottom: 2.5vw;
}
.about-body .swiper-content .content {
  font-family: "Noto Sans TC";
  font-weight: 400;
  font-size: 3.9vw;
  letter-spacing: 0.12em;
  line-height: 2;
}
@media screen and (max-width: 1024px) {
  .about-body .swiper-content .content {
    padding: 0% 8%;
    text-align: justify;
  }
}

.about-m-body {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  background-color: white;
}
@media screen and (max-width: 1024px) {
  .about-m-body {
    padding-bottom: 32vw;
  }
}
.about-m-body .top-title {
  background-color: #d2d2d2;
  width: 100%;
  height: 22vw;
  position: relative;
  display: flex;
}
@media screen and (max-width: 1024px) {
  .about-m-body .top-title {
    height: 60vw;
  }
}
@media screen and (max-width: 500px) {
  .about-m-body .top-title {
    height: auto;
    margin-top: 17vw;
    padding-bottom: 13vw;
    padding-top: 13vw;
  }
}
.about-m-body .top-title picture {
  position: absolute;
  bottom: 0px;
  width: 46vw;
  display: flex;
}
@media screen and (max-width: 1024px) {
  .about-m-body .top-title picture {
    width: 60vw;
  }
}
.about-m-body .top-title .title {
  color: #333333;
  font-family: "Jost";
  align-self: center;
  align-content: center;
  letter-spacing: 0.05em;
  margin: 0 auto;
  font-size: 8vw;
}
@media screen and (max-width: 1024px) {
  .about-m-body .top-title .title {
    font-size: 15vw;
    margin-top: 13vw;
  }
}
@media screen and (max-width: 500px) {
  .about-m-body .top-title .title {
    margin-top: 0vw;
  }
}
.about-m-body .top-title .title .clip-text {
  overflow: hidden;
}
.about-m-body .nav-box {
  display: flex;
  width: 100%;
  justify-content: center;
  padding-top: 3vw;
}
@media screen and (max-width: 1024px) {
  .about-m-body .nav-box {
    padding-top: 5vw;
  }
}
.about-m-body .nav-box a.nav {
  color: #333333;
  font-family: "Noto Sans TC Regular";
  letter-spacing: 0.15em;
  font-size: 1.1vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-right: 3vw;
}
@media screen and (max-width: 1024px) {
  .about-m-body .nav-box a.nav {
    font-size: 3.9vw;
    margin-right: 5vw;
  }
}
.about-m-body .nav-box a.nav img {
  width: 3vw;
  margin-top: 0.4vw;
  display: none;
}
@media screen and (max-width: 1024px) {
  .about-m-body .nav-box a.nav img {
    width: 12vw;
    height: 6%;
    margin-top: 0.8vw;
  }
}
.about-m-body .nav-box a.nav .img-line-active {
  display: block;
}
.about-m-body .nav-box a.nav:last-child {
  margin-right: 0vw;
}
.about-m-body .nav-fixed {
  position: fixed;
  z-index: 30;
  width: 100%;
  opacity: 0.9;
  background-color: white;
  padding-top: 1.5vw;
  padding-bottom: 1.5vw;
}
.about-m-body .card1 {
  width: 100%;
  display: flex;
  margin-top: 1vw;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .about-m-body .card1 {
    flex-direction: column;
    margin-top: 6vw;
  }
}
.about-m-body .card1 .left-title-box {
  display: flex;
  background-color: #f0f0f0;
  padding: 3vw 5vw;
  padding-bottom: 2.5vw;
}
@media screen and (max-width: 1024px) {
  .about-m-body .card1 .left-title-box {
    flex-direction: column-reverse;
    padding: 0vw;
    align-items: center;
    padding-top: 5vw;
    padding-bottom: 7vw;
  }
}
.about-m-body .card1 .left-title-box .en-title {
  color: #333333;
  font-family: "Jost";
  font-size: 7.6vw;
  writing-mode: vertical-rl;
  display: flex;
}
@media screen and (max-width: 1024px) {
  .about-m-body .card1 .left-title-box .en-title {
    writing-mode: horizontal-tb;
    font-size: 15vw;
  }
}
.about-m-body .card1 .left-title-box .en-title .clip-text {
  margin-bottom: 3vw;
}
.about-m-body .card1 .left-title-box .small-title {
  font-family: "Jost";
  text-align: center;
  font-size: 0.85vw;
  color: #333333;
  letter-spacing: 0.05em;
  writing-mode: vertical-rl;
  line-height: 1.8;
}
@media screen and (max-width: 1440px) {
  .about-m-body .card1 .left-title-box .small-title {
    font-size: 1vw;
  }
}
@media screen and (max-width: 1024px) {
  .about-m-body .card1 .left-title-box .small-title {
    writing-mode: horizontal-tb;
    font-size: 3vw;
    line-height: 1.45;
    margin-top: -2vw;
  }
}
.about-m-body .card1 .mobile-content-box {
  display: none;
}
@media screen and (max-width: 1024px) {
  .about-m-body .card1 .mobile-content-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #333333;
    padding-top: 10vw;
    padding-bottom: 10vw;
  }
}
.about-m-body .card1 .mobile-content-box .title {
  margin-bottom: 2.5vw;
  font-family: "Noto Sans TC";
  font-size: 5.2vw;
  letter-spacing: 0.15em;
}
.about-m-body .card1 .mobile-content-box .content {
  font-family: "Noto Sans TC";
  font-weight: 400;
  font-size: 3.9vw;
  letter-spacing: 0.12em;
  line-height: 2;
  text-align: center;
}
@keyframes move1 {
  0% {
    transform: translateX(0vw);
  }
  100% {
    transform: translateX(-110vw);
  }
}
@keyframes move2 {
  0% {
    transform: translateX(-129.5vw);
  }
  100% {
    transform: translateX(-41vw);
  }
}
.about-m-body .card1 .swiper-container {
  width: 100%;
  overflow: hidden;
  display: none;
  width: 100%;
  height: 100%;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .about-m-body .card1 .swiper-container {
    display: block;
  }
}
.about-m-body .card1 .swiper-container .swiper-wrapper {
  transition-timing-function: linear !important;
  position: relative;
}
.about-m-body .card1 .swiper-container .swiper-wrapper .swiper-slide {
  width: auto;
}
.about-m-body .card1 .swiper-container .swiper-wrapper .swiper-slide img {
  width: auto;
  height: 33vw;
  display: block;
}
.about-m-body .card1 .mobile-top-swiper {
  margin-bottom: 3.5vw;
}
.about-m-body .card1 .right-scroll-box {
  display: flex;
  flex-direction: column;
  position: relative;
  justify-content: center;
  width: 100%;
  overflow: hidden;
  margin-left: 5vw;
}
@media screen and (max-width: 1024px) {
  .about-m-body .card1 .right-scroll-box {
    margin-left: 0vw;
    display: none;
  }
}
.about-m-body .card1 .right-scroll-box .top-box {
  display: flex;
  align-items: center;
  overflow: hidden;
  margin-bottom: 1vw;
  width: 220vw;
  transform: translateX(0vw);
  animation: move1 40s linear infinite;
}
.about-m-body .card1 .right-scroll-box .top-box .item-box {
  margin-left: 0.5%;
  margin-right: 0.5%;
}
.about-m-body .card1 .right-scroll-box .top-box .item-box img {
  width: 100%;
}
.about-m-body .card1 .right-scroll-box .bottom-box {
  display: flex;
  position: relative;
  width: 100%;
  overflow: hidden;
}
.about-m-body .card1 .right-scroll-box .bottom-box .content-box {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 32vw;
}
@media screen and (max-width: 1024px) {
  .about-m-body .card1 .right-scroll-box .bottom-box .content-box {
    display: none;
  }
}
.about-m-body .card1 .right-scroll-box .bottom-box .content-box .title {
  font-size: 1.6vw;
  font-family: "Noto Sans TC Regular";
  letter-spacing: 0.1em;
  color: #333333;
  margin-bottom: 1vw;
}
.about-m-body .card1 .right-scroll-box .bottom-box .content-box .content {
  font-size: 0.9vw;
  font-family: "Noto Sans TC Light";
  letter-spacing: 0.1em;
  color: #333333;
  line-height: 2;
}
@media screen and (max-width: 1440px) {
  .about-m-body .card1 .right-scroll-box .bottom-box .content-box .content {
    font-size: 0.9vw;
  }
}
.about-m-body .card1 .right-scroll-box .bottom-box .bottom-scroll {
  align-items: center;
  overflow: hidden;
  width: 100%;
}
.about-m-body .card1 .right-scroll-box .bottom-box .bottom-scroll .over-scroll {
  width: 177vw;
  display: flex;
  align-items: center;
  transform: translateX(-129.5vw);
  animation: move2 40s linear infinite;
}
.about-m-body .card1 .right-scroll-box .bottom-box .bottom-scroll .item-box {
  margin-left: 0.5%;
  margin-right: 0.5%;
}
.about-m-body .card1 .right-scroll-box .bottom-box .bottom-scroll .item-box img {
  width: 100%;
}
.about-m-body .card2 {
  width: 100%;
  position: relative;
  display: flex;
  overflow: hidden;
}
.about-m-body .card2 .bg-video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .about-m-body .card2 .bg-video {
    height: 100svh;
  }
}
.about-m-body .card2 .main-box {
  display: flex;
  justify-content: center;
  z-index: 10;
  width: 100%;
  position: relative;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.about-m-body .card2 .main-box #line-svg {
  width: 35vw;
}
@media screen and (max-width: 1024px) {
  .about-m-body .card2 .main-box #line-svg {
    width: 78vw;
  }
}
.about-m-body .card2 .main-box #line-svg .top-cicle {
  z-index: 30;
  position: relative;
}
.about-m-body .card2 .main-box .fixed-line {
  position: absolute;
  width: 27vw;
  top: 42%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 1024px) {
  .about-m-body .card2 .main-box .fixed-line {
    width: 59vw;
  }
}
.about-m-body .card2 .main-box .m-logo {
  position: absolute;
  width: 10vw;
  top: 44%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 1024px) {
  .about-m-body .card2 .main-box .m-logo {
    width: 19vw;
    top: 40%;
    left: 50%;
  }
}
.about-m-body .card2 .main-box .main-text-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: 30;
  cursor: pointer;
  position: absolute;
}
.about-m-body .card2 .main-box .main-text-box .zh {
  font-family: "Noto Sans TC Light";
  letter-spacing: 0.1em;
  font-size: 1.6vw;
  color: white;
}
@media screen and (max-width: 1024px) {
  .about-m-body .card2 .main-box .main-text-box .zh {
    font-size: 4.1vw;
  }
}
.about-m-body .card2 .main-box .main-text-box .en {
  font-family: "Jost";
  font-size: 0.9vw;
  letter-spacing: 0.07em;
  color: white;
}
@media screen and (max-width: 1440px) {
  .about-m-body .card2 .main-box .main-text-box .en {
    font-size: 1vw;
  }
}
@media screen and (max-width: 1024px) {
  .about-m-body .card2 .main-box .main-text-box .en {
    font-size: 3vw;
  }
}
.about-m-body .card2 .main-box .mind {
  top: -1.5vw;
  right: 39vw;
  padding-bottom: 3vw;
}
@media screen and (max-width: 1024px) {
  .about-m-body .card2 .main-box .mind {
    top: 1.5vw;
    right: 18vw;
  }
}
.about-m-body .card2 .main-box .marvelous {
  top: 26vw;
  right: 31vw;
  top: 18.6vw;
  right: 29.5vw;
  padding-left: 3vw;
}
@media screen and (max-width: 1024px) {
  .about-m-body .card2 .main-box .marvelous {
    top: 45vw;
    right: 3vw;
  }
}
.about-m-body .card2 .main-box .custom {
  top: 28.3vw;
  right: 46.2vw;
  padding-top: 3vw;
}
@media screen and (max-width: 1024px) {
  .about-m-body .card2 .main-box .custom {
    top: 66.5vw;
    right: 39.2vw;
  }
}
.about-m-body .card2 .main-box .management {
  top: 26vw;
  left: 29.8vw;
  top: 18.6vw;
  left: 29vw;
  padding-right: 3vw;
}
@media screen and (max-width: 1024px) {
  .about-m-body .card2 .main-box .management {
    top: 45vw;
    left: 3vw;
  }
}
.about-m-body .card2 .main-box .environment {
  top: 7vw;
  left: 38.5vw;
  top: -1.5vw;
  left: 38vw;
  padding-bottom: 3vw;
}
@media screen and (max-width: 1024px) {
  .about-m-body .card2 .main-box .environment {
    top: 1.5vw;
    left: 9vw;
  }
}
.about-m-body .card2 .main-box .main-text-content {
  font-family: "Noto Serif TC";
  font-size: 1.2vw;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.1em;
  color: white;
  position: absolute;
  top: 59%;
  left: 46.5%;
  opacity: 0;
}
@media screen and (max-width: 1024px) {
  .about-m-body .card2 .main-box .main-text-content {
    font-size: 3.6vw;
    top: 55%;
    left: 38.5%;
  }
}

.news-body {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  background-color: white;
}
@media screen and (max-width: 1024px) {
  .news-body {
    padding-bottom: 40vw;
  }
}
.news-body .top-title {
  background-color: #d2d2d2;
  width: 100%;
  height: 22vw;
  position: relative;
  display: flex;
}
@media screen and (max-width: 1024px) {
  .news-body .top-title {
    height: 60vw;
  }
}
@media screen and (max-width: 500px) {
  .news-body .top-title {
    height: auto;
    margin-top: 17vw;
    padding-bottom: 10vw;
    padding-top: 10vw;
  }
}
.news-body .top-title picture {
  position: absolute;
  bottom: 0px;
  width: 46vw;
}
@media screen and (max-width: 1024px) {
  .news-body .top-title picture {
    width: 60vw;
  }
}
.news-body .top-title .title {
  color: #333333;
  font-family: "Jost";
  align-self: center;
  align-content: center;
  letter-spacing: 0.05em;
  margin: 0 auto;
  font-size: 8vw;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .news-body .top-title .title {
    font-size: 15vw;
    margin-top: 13vw;
    line-height: 1.1;
  }
}
@media screen and (max-width: 500px) {
  .news-body .top-title .title {
    margin-top: 0vw;
  }
}
.news-body .top-title .title .clip-text {
  overflow: hidden;
}
.news-body .news-content {
  display: flex;
  flex-direction: column;
  width: 70%;
  justify-content: center;
  margin: 0 auto;
  padding-top: 4vw;
  padding-bottom: 4vw;
}
@media screen and (max-width: 1440px) {
  .news-body .news-content {
    padding-top: 5vw;
  }
}
@media screen and (max-width: 1024px) {
  .news-body .news-content {
    width: 87%;
    padding-top: 7vw;
  }
}
@media screen and (max-width: 500px) {
  .news-body .news-content {
    padding-top: 9vw;
  }
}
.news-body .news-content .news-item {
  display: flex;
  margin-bottom: 4vw;
  width: 100%;
}
@media screen and (max-width: 1440px) {
  .news-body .news-content .news-item {
    margin-bottom: 5vw;
  }
}
@media screen and (max-width: 1024px) {
  .news-body .news-content .news-item {
    flex-direction: column;
  }
}
.news-body .news-content .news-item:nth-child(even) {
  flex-direction: row-reverse;
}
@media screen and (max-width: 1024px) {
  .news-body .news-content .news-item:nth-child(even) {
    flex-direction: column;
  }
}
.news-body .news-content .news-item:nth-child(even) .content-box {
  padding-left: 0vw;
  padding-right: 2vw;
}
.news-body .news-content .news-item:hover .img-box img {
  scale: 1.1;
}
@media screen and (max-width: 1024px) {
  .news-body .news-content .news-item:hover .img-box img {
    scale: 1;
  }
}
.news-body .news-content .news-item:hover .content-box {
  color: rgb(147, 126, 41);
}
@media screen and (max-width: 1024px) {
  .news-body .news-content .news-item:hover .content-box {
    color: #333333;
  }
}
.news-body .news-content .news-item .img-box {
  overflow: hidden;
  display: flex;
  width: 52%;
  height: 22vw;
}
@media screen and (max-width: 1024px) {
  .news-body .news-content .news-item .img-box {
    width: 100%;
    height: auto;
    margin-bottom: 5vw;
  }
}
.news-body .news-content .news-item .img-box picture {
  display: flex;
  width: 100%;
}
.news-body .news-content .news-item .img-box img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: all 0.5s ease-in-out;
}
.news-body .news-content .news-item .content-box {
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #333333;
  width: 48%;
  padding-left: 2vw;
  transition: all 0.5s ease-in-out;
}
@media screen and (max-width: 1024px) {
  .news-body .news-content .news-item .content-box {
    width: 100%;
    padding-left: 0vw;
  }
}
.news-body .news-content .news-item .content-box .date {
  font-family: "Jost";
  font-size: 1.1vw;
  margin-bottom: 0.3vw;
}
@media screen and (max-width: 1024px) {
  .news-body .news-content .news-item .content-box .date {
    font-size: 4.5vw;
    margin-bottom: 1.5vw;
  }
}
.news-body .news-content .news-item .content-box .title {
  font-family: "Noto Sans TC";
  font-size: 1.1vw;
  letter-spacing: 0.15em;
  margin-bottom: 1.5vw;
}
@media screen and (max-width: 1024px) {
  .news-body .news-content .news-item .content-box .title {
    font-size: 4.7vw;
    margin-bottom: 4vw;
  }
}
.news-body .news-content .news-item .content-box .content {
  font-family: "Noto Sans TC";
  font-weight: 400;
  font-size: 0.9vw;
  letter-spacing: 0.15em;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  line-height: 2;
}
@media screen and (max-width: 1440px) {
  .news-body .news-content .news-item .content-box .content {
    font-size: 1vw;
  }
}
@media screen and (max-width: 1024px) {
  .news-body .news-content .news-item .content-box .content {
    font-size: 3.9vw;
    margin-bottom: 8vw;
  }
}
.news-body .news-content .page-number-box {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 7vw;
  margin-top: 5vw;
}
.news-body .news-content .page-number-box .arrow-box {
  display: flex;
  padding-top: 1vw;
  padding-bottom: 1vw;
  padding-right: 0.5vw;
  padding-left: 0.5vw;
  cursor: pointer;
  width: 2.5vw;
  transition: 0.4s ease-in-out;
}
@media screen and (max-width: 1440px) {
  .news-body .news-content .page-number-box .arrow-box {
    width: 3vw;
  }
}
.news-body .news-content .page-number-box .arrow-box img {
  width: 100%;
}
.news-body .news-content .page-number-box .prev-box:hover {
  transform: translateX(-10%);
}
.news-body .news-content .page-number-box .next-box:hover {
  transform: translateX(10%);
}
.news-body .news-content .page-number-box .page-number {
  font-family: "Jost";
  font-size: 0.7vw;
  color: #333333;
  cursor: pointer;
  margin-left: 0.5vw;
  margin-right: 0.5vw;
  transition: 0.3s ease-in-out;
}
@media screen and (max-width: 1440px) {
  .news-body .news-content .page-number-box .page-number {
    font-size: 1.1vw;
  }
}
.news-body .news-content .page-number-box .page-number:hover {
  color: #937e29;
}
.news-body .news-content .page-number-box .current-page-number {
  font-size: 1.1vw;
  font-weight: bold;
}
@media screen and (max-width: 1440px) {
  .news-body .news-content .page-number-box .current-page-number {
    font-size: 1.3vw;
  }
}
.news-body .news-content .paginationjs-pages ul {
  display: flex;
  align-items: center;
}
@media (max-width: 1024px) {
  .news-body .news-content .paginationjs-pages ul {
    gap: 1.5vw;
  }
}
.news-body .news-content .paginationjs-pages ul li.active a {
  font-size: 1.1vw;
  font-weight: bold;
}
@media (max-width: 1024px) {
  .news-body .news-content .paginationjs-pages ul li.active a {
    font-size: 4.5vw;
  }
}
.news-body .news-content .paginationjs-pages ul li a {
  font-family: "Jost";
  font-size: 0.7vw;
  color: #333333;
  cursor: pointer;
  margin-left: 0.5vw;
  margin-right: 0.5vw;
  transition: 0.3sease-in-out;
}
@media (max-width: 1024px) {
  .news-body .news-content .paginationjs-pages ul li a {
    font-size: 3.6vw;
  }
}
.news-body .news-content .paginationjs-pages ul .paginationjs-prev {
  display: flex;
  padding-top: 1vw;
  padding-bottom: 1vw;
  padding-right: 0.5vw;
  padding-left: 0.5vw;
  cursor: pointer;
  width: 3.5vw;
  transition: 0.4s ease-in-out;
}
@media (max-width: 1024px) {
  .news-body .news-content .paginationjs-pages ul .paginationjs-prev {
    width: 7.5vw;
  }
}
.news-body .news-content .paginationjs-pages ul .paginationjs-next {
  display: flex;
  padding-top: 1vw;
  padding-bottom: 1vw;
  padding-right: 0.5vw;
  padding-left: 0.5vw;
  cursor: pointer;
  width: 3.5vw;
  transition: 0.4s ease-in-out;
}
@media (max-width: 1024px) {
  .news-body .news-content .paginationjs-pages ul .paginationjs-next {
    width: 7.5vw;
  }
}

.news-content-body {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  background-color: white;
}
@media screen and (max-width: 1024px) {
  .news-content-body {
    padding-bottom: 36vw;
  }
}
.news-content-body .top-content-box {
  background-color: #d2d2d2;
  width: 100%;
  position: relative;
  display: flex;
  padding-top: 6vw;
  padding-left: 5vw;
  padding-bottom: 2.5vw;
  overflow: hidden;
  display: flex;
}
@media screen and (max-width: 1024px) {
  .news-content-body .top-content-box {
    padding-top: 23vw;
    padding-left: 0vw;
    flex-direction: column;
  }
}
.news-content-body .top-content-box .mobile-content-box {
  display: none;
}
@media screen and (max-width: 1024px) {
  .news-content-body .top-content-box .mobile-content-box {
    display: flex;
    color: #333333;
    flex-direction: column;
    margin-top: 5vw;
    margin-bottom: 5vw;
    padding: 0 6vw;
  }
}
.news-content-body .top-content-box .mobile-content-box .title {
  font-family: "Noto Sans TC";
  font-size: 5.2vw;
  letter-spacing: 0.15em;
  margin-bottom: 5vw;
  text-align: center;
}
.news-content-body .top-content-box .mobile-content-box .content {
  font-family: "Noto Sans TC";
  font-weight: 400;
  font-size: 3.9vw;
  letter-spacing: 0.12em;
  line-height: 2;
  margin-bottom: 4vw;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .news-content-body .top-content-box .mobile-content-box .content br {
    display: none;
  }
}
.news-content-body .top-content-box .left-box {
  display: flex;
  width: 53%;
}
@media screen and (max-width: 1024px) {
  .news-content-body .top-content-box .left-box {
    width: 87%;
    justify-content: center;
    align-self: center;
  }
}
.news-content-body .top-content-box .left-box .img-box {
  overflow: hidden;
  width: 100%;
  height: 30vw;
}
@media screen and (max-width: 1024px) {
  .news-content-body .top-content-box .left-box .img-box {
    width: 100%;
    height: auto;
  }
}
.news-content-body .top-content-box .left-box .img-box picture {
  display: flex;
  width: 100%;
}
.news-content-body .top-content-box .left-box .img-box img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.news-content-body .top-content-box .right-box {
  width: 47%;
  display: flex;
  color: #333333;
  flex-direction: column;
  justify-content: center;
}
@media screen and (max-width: 1024px) {
  .news-content-body .top-content-box .right-box {
    width: 100%;
  }
}
.news-content-body .top-content-box .right-box .title {
  font-family: "Noto Sans TC";
  font-size: 1.6vw;
  letter-spacing: 0.15em;
  margin-bottom: 2.5vw;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .news-content-body .top-content-box .right-box .title {
    display: none;
  }
}
.news-content-body .top-content-box .right-box .content {
  font-family: "Noto Sans TC";
  font-weight: 300;
  font-size: 0.9vw;
  letter-spacing: 0.15em;
  margin-bottom: 4vw;
  text-align: center;
  line-height: 2;
}
@media screen and (max-width: 1440px) {
  .news-content-body .top-content-box .right-box .content {
    font-size: 1vw;
  }
}
@media screen and (max-width: 1024px) {
  .news-content-body .top-content-box .right-box .content {
    display: none;
  }
}
.news-content-body .top-content-box .right-box .date-share-box {
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 1024px) {
  .news-content-body .top-content-box .right-box .date-share-box {
    margin-top: 8vw;
    margin-bottom: 8vw;
  }
}
.news-content-body .top-content-box .right-box .date-share-box .date-share {
  display: flex;
}
.news-content-body .top-content-box .right-box .date-share-box .left-box {
  display: flex;
  font-family: "Jost";
  font-size: 1.1vw;
  flex-direction: column;
  font-weight: bold;
}
@media screen and (max-width: 1024px) {
  .news-content-body .top-content-box .right-box .date-share-box .left-box {
    font-size: 4.35vw;
    font-weight: 400;
    margin-right: 7vw;
  }
}
.news-content-body .top-content-box .right-box .date-share-box .left-box div {
  display: flex;
  justify-content: left;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1024px) {
  .news-content-body .top-content-box .right-box .date-share-box .left-box div {
    margin-top: 0.3vw;
  }
}
.news-content-body .top-content-box .right-box .date-share-box .left-box .date-title {
  margin-bottom: 0.7vw;
}
@media screen and (max-width: 1024px) {
  .news-content-body .top-content-box .right-box .date-share-box .left-box .date-title {
    margin-bottom: 0vw;
    margin-bottom: 2vw;
  }
}
.news-content-body .top-content-box .right-box .date-share-box .right-box {
  display: flex;
  justify-content: center;
  font-family: "Jost";
  font-size: 1.1vw;
  flex-direction: column;
}
.news-content-body .top-content-box .right-box .date-share-box .right-box .date {
  font-family: "Jost";
  font-size: 1.1vw;
  margin-bottom: 0.7vw;
}
@media screen and (max-width: 1024px) {
  .news-content-body .top-content-box .right-box .date-share-box .right-box .date {
    font-size: 4.6vw;
    font-weight: 400;
    margin-bottom: 3vw;
  }
}
.news-content-body .top-content-box .right-box .date-share-box .right-box .share-icon-box {
  display: flex;
}
.news-content-body .top-content-box .right-box .date-share-box .right-box .share-icon-box .social-media-item {
  padding-right: 1vw;
  cursor: pointer;
}
@media screen and (max-width: 1024px) {
  .news-content-body .top-content-box .right-box .date-share-box .right-box .share-icon-box .social-media-item {
    padding-right: 4vw;
  }
}
.news-content-body .top-content-box .right-box .date-share-box .right-box .share-icon-box .social-media-item img {
  height: 1vw;
}
@media screen and (max-width: 1024px) {
  .news-content-body .top-content-box .right-box .date-share-box .right-box .share-icon-box .social-media-item img {
    height: 5vw;
  }
}
.news-content-body .main-content-box {
  position: relative;
  width: 100%;
  margin-top: 4vw;
  margin-bottom: 10vw;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 1024px) {
  .news-content-body .main-content-box {
    align-items: center;
    margin-bottom: 13vw;
  }
}
.news-content-body .main-content-box .back-link {
  position: absolute;
  right: 4vw;
  top: 10vw;
  transition: 0.4s ease-in-out;
}
.news-content-body .main-content-box .back-link:hover {
  transform: translateX(-15%);
}
@media screen and (max-width: 1024px) {
  .news-content-body .main-content-box .back-link:hover {
    transform: translateX(0%);
  }
}
@media screen and (max-width: 1024px) {
  .news-content-body .main-content-box .back-link {
    position: initial;
    right: initial;
    top: initial;
  }
}
.news-content-body .main-content-box .back-link img {
  width: 2.5vw;
}
@media screen and (max-width: 1024px) {
  .news-content-body .main-content-box .back-link img {
    width: 10vw;
  }
}
.news-content-body .main-content-box .top-btn {
  position: absolute;
  right: 50vw;
  bottom: 0vw;
  cursor: pointer;
  transition: 0.4s ease-in-out;
}
.news-content-body .main-content-box .top-btn:hover {
  transform: translateY(-15%);
}
@media screen and (max-width: 1024px) {
  .news-content-body .main-content-box .top-btn {
    display: none;
  }
}
.news-content-body .main-content-box .top-btn img {
  width: 2.5vw;
}
.news-content-body .main-content-box .main-content {
  background-color: white;
  display: flex;
  flex-direction: column;
  width: 57%;
  align-self: center;
  color: #333333;
  margin-bottom: 6vw;
}
@media screen and (max-width: 1024px) {
  .news-content-body .main-content-box .main-content {
    width: 87%;
    padding-top: 4vw;
    margin-bottom: 8vw;
  }
}
.news-content-body .main-content-box .main-content h1 {
  font-size: 1.1vw;
  font-weight: 500;
  letter-spacing: 0.15em;
  font-family: "Noto Sans TC";
  margin-bottom: 1vw;
}
@media screen and (max-width: 1440px) {
  .news-content-body .main-content-box .main-content h1 {
    font-size: 1.2vw;
  }
}
@media screen and (max-width: 1024px) {
  .news-content-body .main-content-box .main-content h1 {
    font-family: "Noto Sans TC";
    font-size: 5.2vw;
    letter-spacing: 0.15em;
    text-align: center;
    margin-bottom: 5vw;
  }
}
.news-content-body .main-content-box .main-content p {
  font-family: "Noto Sans TC";
  font-weight: 300;
  font-size: 0.9vw;
  letter-spacing: 0.15em;
  margin-bottom: 1vw;
  line-height: 2;
  text-align: justify;
}
@media screen and (max-width: 1440px) {
  .news-content-body .main-content-box .main-content p {
    font-size: 1vw;
  }
}
@media screen and (max-width: 1024px) {
  .news-content-body .main-content-box .main-content p {
    font-family: "Noto Sans TC";
    font-weight: 400;
    font-size: 3.9vw;
    letter-spacing: 0.12em;
    line-height: 2;
    text-align: justify;
    margin-bottom: 8vw;
  }
}
.news-content-body .main-content-box .main-content img {
  margin-bottom: 2vw;
  max-width: 100%;
  height: auto !important;
}
@media screen and (max-width: 1024px) {
  .news-content-body .main-content-box .main-content img {
    margin-bottom: 8vw;
  }
}

.progress-body {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  background-color: white;
  min-height: 100svh;
}
@media screen and (max-width: 1024px) {
  .progress-body {
    padding-bottom: 36vw;
  }
}
@media screen and (max-width: 500px) {
  .progress-body {
    padding-bottom: 0vw;
  }
}
.progress-body .top-title {
  background-color: #d2d2d2;
  width: 100%;
  height: 22vw;
  position: relative;
  display: flex;
}
@media screen and (max-width: 1024px) {
  .progress-body .top-title {
    height: 60vw;
  }
}
@media screen and (max-width: 500px) {
  .progress-body .top-title {
    height: auto;
    margin-top: 17vw;
    padding-bottom: 13vw;
    padding-top: 13vw;
  }
}
.progress-body .top-title picture {
  position: absolute;
  bottom: 0px;
  width: 46vw;
  display: flex;
}
@media screen and (max-width: 1024px) {
  .progress-body .top-title picture {
    width: 60vw;
  }
}
.progress-body .top-title .title {
  color: #333333;
  font-family: "Jost";
  align-self: center;
  align-content: center;
  letter-spacing: 0.05em;
  margin: 0 auto;
  font-size: 8vw;
}
@media screen and (max-width: 1024px) {
  .progress-body .top-title .title {
    font-size: 15vw;
    margin-top: 13vw;
  }
}
@media screen and (max-width: 500px) {
  .progress-body .top-title .title {
    margin-top: 0vw;
  }
}
.progress-body .top-title .title .clip-text {
  overflow: hidden;
}
.progress-body .page-container {
  padding-top: 5vw;
  margin-bottom: 14vw;
}
@media all and (max-width: 1024px) {
  .progress-body .page-container {
    margin-bottom: 17vw;
  }
}
.progress-body .page-container .form-box {
  width: 27%;
  display: flex;
  justify-content: center;
  flex-direction: column;
  margin: 0 auto;
}
@media all and (max-width: 1024px) {
  .progress-body .page-container .form-box {
    width: 87%;
  }
}
.progress-body .page-container .form-box form {
  margin-bottom: 2vw;
  z-index: 30;
}
@media all and (max-width: 1024px) {
  .progress-body .page-container .form-box form {
    margin-bottom: 8vw;
  }
}
.progress-body .page-container .form-box form .input-box {
  display: flex;
  width: 100%;
  justify-content: left;
  padding-top: 1.25vw;
  padding-bottom: 1.25vw;
  border-bottom: 1px solid #d8d8d8;
}
@media all and (max-width: 1024px) {
  .progress-body .page-container .form-box form .input-box {
    padding-top: 3.8vw;
    padding-bottom: 3.8vw;
    border-bottom: 1px solid #aaaaaa;
  }
}
.progress-body .page-container .form-box form .input-box .title {
  color: #333333;
  font-family: "Noto Sans TC Regular";
  font-size: 1.1vw;
  text-align: center;
  letter-spacing: 0.3em;
  font-weight: 500;
  margin-right: 1vw;
}
@media all and (max-width: 1024px) {
  .progress-body .page-container .form-box form .input-box .title {
    font-size: 3.75vw;
  }
}
.progress-body .page-container .form-box form .input-box select {
  width: 65%;
  border: none;
  background: none;
  color: #333333;
  font-family: "Noto Sans TC Regular";
  font-size: 1.1vw;
  letter-spacing: 0.15em;
  font-weight: 500;
  margin-left: 2vw;
  padding-right: 4vw;
  cursor: pointer;
  background: url("../images/select_arrow.svg") no-repeat right center;
  background-size: 20px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-left: 1px solid #d8d8d8;
  border-right: 1px solid #d8d8d8;
  background-position: 90% center;
  padding-left: 2vw;
}
@media all and (max-width: 1440px) {
  .progress-body .page-container .form-box form .input-box select {
    background-size: 12px;
  }
}
@media all and (max-width: 1024px) {
  .progress-body .page-container .form-box form .input-box select {
    font-size: 3.75vw;
    background-size: 3vw;
    margin-left: 9vw;
    padding-left: 9vw;
    border-left: 1px solid #aaaaaa;
    border-right: 1px solid #aaaaaa;
    background: url("../images/select_arrow_m.svg") no-repeat right center;
    background-size: 3.5vw;
    background-position: 85% center;
  }
}
.progress-body .page-container .form-box form .input-box input {
  color: #333333;
  font-family: "Noto Sans TC Regular";
  font-size: 1.1vw;
  letter-spacing: 0.15em;
  font-weight: 500;
  border: none;
  background: none;
  width: 60%;
  margin-left: 2vw;
}
@media all and (max-width: 1024px) {
  .progress-body .page-container .form-box form .input-box input {
    font-size: 3.75vw;
    margin-left: 7vw;
  }
}
@media all and (max-width: 1024px) {
  .progress-body .page-container .form-box form .input-box {
    font-size: 3.75vw;
  }
}
.progress-body .page-container .form-box .select-box {
  position: relative;
}
.progress-body .page-container .button-box {
  display: flex;
  justify-content: center;
  z-index: 30;
  padding-top: 0.7vw;
  position: relative;
  padding-bottom: 0.7vw;
  border: 1px solid #d8d8d8;
  border-radius: 0.3vw;
  transition: 0.4s ease-in-out;
  cursor: pointer;
}
@media all and (max-width: 1024px) {
  .progress-body .page-container .button-box {
    border: 1px solid #aaaaaa;
    border-radius: 0.9vw;
  }
}
.progress-body .page-container .button-box::after {
  content: "";
  border-radius: 0.3vw;
  position: absolute;
  left: 0%;
  right: 0%;
  bottom: 0;
  width: 100%;
  z-index: 1;
  height: 0%;
  background-color: #a7a7a7;
  transition: 0.2s ease-in-out;
}
@media all and (max-width: 1024px) {
  .progress-body .page-container .button-box::after {
    display: none;
  }
}
.progress-body .page-container .button-box:hover button {
  color: white;
  z-index: 10;
}
@media all and (max-width: 1024px) {
  .progress-body .page-container .button-box:hover button {
    z-index: initial;
    color: #333333;
  }
}
.progress-body .page-container .button-box:hover::after {
  left: 0%;
  right: 0%;
  height: 100%;
}
@media all and (max-width: 1024px) {
  .progress-body .page-container .button-box:hover::after {
    height: initial;
  }
}
.progress-body .page-container .button-box button {
  background: none;
  color: #333333;
  font-family: "Noto Sans TC Regular";
  font-size: 1.1vw;
  letter-spacing: 0.2em;
  border: none;
  cursor: pointer;
  transition: 0.4s ease-in-out;
}
@media all and (max-width: 1024px) {
  .progress-body .page-container .button-box button {
    font-size: 3.75vw;
    padding-top: 2.5vw;
    padding-bottom: 2.5vw;
    padding-left: 4.5vw;
    padding-right: 3vw;
  }
}

.progress-content-body {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  min-height: 100vh;
  background-color: white;
}
@media screen and (max-width: 1024px) {
  .progress-content-body {
    padding-bottom: 30vw;
  }
}
.progress-content-body .top-title-box {
  background-color: #d2d2d2;
  width: 100%;
  height: 22vw;
  position: relative;
  display: flex;
  margin-bottom: 5vw;
  color: #333333;
  justify-content: center;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .progress-content-body .top-title-box {
    height: auto;
    margin-top: 15vw;
    padding-bottom: 8vw;
    padding-top: 8vw;
    overflow: hidden;
    margin-bottom: 0vw;
  }
}
@media screen and (max-width: 500px) {
  .progress-content-body .top-title-box {
    height: auto;
    margin-top: 17vw;
  }
}
.progress-content-body .top-title-box .top-title {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.progress-content-body .top-title-box .top-title .name {
  font-size: 1.6vw;
  letter-spacing: 0.15em;
  font-family: "Noto Sans TC Regular";
  padding-bottom: 1vw;
  margin-bottom: 1vw;
  position: relative;
  border-bottom: 1px solid #999999;
}
@media screen and (max-width: 1024px) {
  .progress-content-body .top-title-box .top-title .name {
    font-size: 5.8vw;
    padding-bottom: 3vw;
    margin-bottom: 3vw;
  }
}
.progress-content-body .top-title-box .top-title .zh-title {
  font-family: "Noto Sans TC Regular";
  font-size: 1.3vw;
  letter-spacing: 0.15em;
  margin-bottom: 0.8vw;
}
@media screen and (max-width: 1024px) {
  .progress-content-body .top-title-box .top-title .zh-title {
    font-size: 4.5vw;
  }
}
.progress-content-body .top-title-box .top-title .en-title {
  font-family: "Jost";
  letter-spacing: 0.05em;
  font-size: 1.1vw;
}
@media screen and (max-width: 1024px) {
  .progress-content-body .top-title-box .top-title .en-title {
    font-size: 3.6vw;
  }
}
.progress-content-body .page-container .list_box {
  display: flex;
  flex-direction: column;
  width: 100%;
  position: relative;
  align-items: center;
  margin-bottom: 7vw;
}
@media screen and (max-width: 1024px) {
  .progress-content-body .page-container .list_box {
    padding-top: 8vw;
    margin-bottom: 15vw;
  }
}
.progress-content-body .page-container .item-box {
  width: 75%;
  display: flex;
  flex-direction: column;
  margin-bottom: 4vw;
}
@media screen and (max-width: 1024px) {
  .progress-content-body .page-container .item-box {
    margin-bottom: 10vw;
    width: 85%;
  }
}
.progress-content-body .page-container .item-box .date-title-box {
  display: flex;
  align-items: center;
  margin-bottom: 2vw;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .progress-content-body .page-container .item-box .date-title-box {
    align-items: flex-start;
    margin-bottom: 6vw;
  }
}
.progress-content-body .page-container .item-box .date-title-box::after {
  content: "";
  width: 100%;
  background-color: #cccccc;
  position: absolute;
  right: 0px;
  height: 2px;
  top: 0.85vw;
}
@media screen and (max-width: 1024px) {
  .progress-content-body .page-container .item-box .date-title-box::after {
    display: none;
  }
}
.progress-content-body .page-container .item-box .date-title-box .bg {
  display: flex;
  z-index: 10;
  align-items: center;
  background-color: white;
  padding-right: 2vw;
}
@media screen and (max-width: 1024px) {
  .progress-content-body .page-container .item-box .date-title-box .bg {
    flex-direction: column;
    align-items: flex-start;
  }
}
.progress-content-body .page-container .item-box .date-title-box .bg .date {
  font-size: 0.7vw;
  font-family: "Jost";
  letter-spacing: 0.1em;
  color: #333333;
  margin-right: 1.5vw;
}
@media screen and (max-width: 1440px) {
  .progress-content-body .page-container .item-box .date-title-box .bg .date {
    font-size: 1vw;
  }
}
@media screen and (max-width: 1024px) {
  .progress-content-body .page-container .item-box .date-title-box .bg .date {
    font-size: 4.3vw;
    margin-bottom: 1.5vw;
    letter-spacing: 0.08em;
  }
}
.progress-content-body .page-container .item-box .date-title-box .bg .title {
  font-size: 1.1vw;
  font-family: "Noto Sans TC Regular";
  letter-spacing: 0.1em;
  color: #333333;
}
@media screen and (max-width: 1024px) {
  .progress-content-body .page-container .item-box .date-title-box .bg .title {
    font-size: 3.9vw;
  }
}
.progress-content-body .page-container .item-box .img-list {
  display: flex;
  gap: 2%;
  flex-wrap: wrap;
}
@media screen and (max-width: 1024px) {
  .progress-content-body .page-container .item-box .img-list {
    flex-direction: column;
    width: 100%;
  }
}
.progress-content-body .page-container .item-box .img-list .img-box {
  flex: 0 1 32%;
  width: 23vw;
  height: 17vw;
  overflow: hidden;
  margin-bottom: 2%;
}
@media screen and (max-width: 1024px) {
  .progress-content-body .page-container .item-box .img-list .img-box {
    display: none;
  }
}
.progress-content-body .page-container .item-box .img-list .img-box:first-child a {
  width: 100%;
}
@media screen and (max-width: 1024px) {
  .progress-content-body .page-container .item-box .img-list .img-box:first-child {
    display: flex !important;
    width: 100%;
    height: auto;
  }
}
.progress-content-body .page-container .item-box .img-list .img-box:hover img {
  scale: 1.1;
}
@media screen and (max-width: 1024px) {
  .progress-content-body .page-container .item-box .img-list .img-box:hover img {
    scale: 1;
  }
}
.progress-content-body .page-container .item-box .img-list .img-box img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 0.6s ease-in-out;
}
.progress-content-body .page-container .page-number-box {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 3vw;
  margin-top: 3vw;
}
@media screen and (max-width: 1024px) {
  .progress-content-body .page-container .page-number-box {
    margin-top: 5vw;
  }
}
.progress-content-body .page-container .page-number-box .arrow-box {
  display: flex;
  padding-top: 1vw;
  padding-bottom: 1vw;
  padding-right: 0.5vw;
  padding-left: 0.5vw;
  cursor: pointer;
  width: 2.5vw;
  transition: 0.4s ease-in-out;
}
@media screen and (max-width: 1440px) {
  .progress-content-body .page-container .page-number-box .arrow-box {
    width: 3vw;
  }
}
@media screen and (max-width: 1024px) {
  .progress-content-body .page-container .page-number-box .arrow-box {
    width: 12vw;
    padding-top: 2vw;
    padding-bottom: 2vw;
    padding-right: 2vw;
    padding-left: 2vw;
  }
}
.progress-content-body .page-container .page-number-box .arrow-box img {
  width: 100%;
}
.progress-content-body .page-container .page-number-box .prev-box:hover {
  transform: translateX(-10%);
}
@media screen and (max-width: 1024px) {
  .progress-content-body .page-container .page-number-box .prev-box:hover {
    transform: none;
  }
}
.progress-content-body .page-container .page-number-box .next-box:hover {
  transform: translateX(10%);
}
@media screen and (max-width: 1024px) {
  .progress-content-body .page-container .page-number-box .next-box:hover {
    transform: none;
  }
}
.progress-content-body .page-container .page-number-box .page-number {
  font-family: "Jost";
  font-size: 0.7vw;
  color: #333333;
  cursor: pointer;
  margin-left: 0.5vw;
  margin-right: 0.5vw;
  transition: 0.3s ease-in-out;
}
@media screen and (max-width: 1440px) {
  .progress-content-body .page-container .page-number-box .page-number {
    font-size: 1.1vw;
  }
}
@media screen and (max-width: 1024px) {
  .progress-content-body .page-container .page-number-box .page-number {
    font-size: 3.9vw;
    margin-left: 1.5vw;
    margin-right: 1.5vw;
  }
}
.progress-content-body .page-container .page-number-box .page-number:hover {
  color: #937e29;
  transform: scale(1.1);
}
@media screen and (max-width: 1024px) {
  .progress-content-body .page-container .page-number-box .page-number:hover {
    color: #333333;
    transform: scale(1);
  }
}
.progress-content-body .page-container .page-number-box .current-page-number {
  font-size: 1.1vw;
  font-weight: bold;
}
.progress-content-body .page-container .page-number-box .current-page-number:hover {
  color: #333333;
  transform: scale(1);
}
@media screen and (max-width: 1440px) {
  .progress-content-body .page-container .page-number-box .current-page-number {
    font-size: 1.3vw;
  }
}
@media screen and (max-width: 1024px) {
  .progress-content-body .page-container .page-number-box .current-page-number {
    font-size: 4.8vw;
    font-weight: 400;
  }
}
.progress-content-body .paginationjs {
  margin-bottom: 7%;
}
.progress-content-body .paginationjs .paginationjs-pages ul {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.7%;
}
@media (max-width: 1024px) {
  .progress-content-body .paginationjs .paginationjs-pages ul {
    gap: 3%;
  }
}
.progress-content-body .paginationjs .paginationjs-pages ul li {
  font-family: "Jost";
  font-size: 0.7vw;
  color: #333333;
  cursor: pointer;
  transition: 0.3s ease-in-out;
}
@media (max-width: 1024px) {
  .progress-content-body .paginationjs .paginationjs-pages ul li {
    font-size: 3.9vw;
    font-weight: 400;
  }
}
.progress-content-body .paginationjs .paginationjs-pages ul li.active {
  font-size: 1.1vw;
  font-weight: bold;
}
@media (max-width: 1024px) {
  .progress-content-body .paginationjs .paginationjs-pages ul li.active {
    font-size: 4.8vw;
  }
}
.progress-content-body .paginationjs .paginationjs-pages .paginationjs-next a,
.progress-content-body .paginationjs .paginationjs-pages .paginationjs-prev a {
  display: flex;
  padding-top: 1vw;
  padding-bottom: 1vw;
  padding-right: 0.5vw;
  padding-left: 0.5vw;
  cursor: pointer;
  width: 2.5vw;
  transition: 0.4s ease-in-out;
}
@media (max-width: 1024px) {
  .progress-content-body .paginationjs .paginationjs-pages .paginationjs-next a,
  .progress-content-body .paginationjs .paginationjs-pages .paginationjs-prev a {
    width: 12vw;
    padding-top: 2vw;
    padding-bottom: 2vw;
    padding-right: 2vw;
    padding-left: 2vw;
  }
}

.contact-body {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  background-color: white;
  min-height: 100svh;
}
.contact-body .top-title {
  background-color: #d2d2d2;
  width: 100%;
  height: 22vw;
  position: relative;
  display: flex;
}
@media screen and (max-width: 1024px) {
  .contact-body .top-title {
    height: 60vw;
  }
}
@media screen and (max-width: 500px) {
  .contact-body .top-title {
    height: auto;
    margin-top: 17vw;
    padding-bottom: 13vw;
    padding-top: 13vw;
  }
}
.contact-body .top-title picture {
  position: absolute;
  bottom: 0px;
  width: 46vw;
  display: flex;
}
@media screen and (max-width: 1024px) {
  .contact-body .top-title picture {
    width: 60vw;
  }
}
.contact-body .top-title .title {
  color: #333333;
  font-family: "Jost";
  align-self: center;
  align-content: center;
  letter-spacing: 0.05em;
  margin: 0 auto;
  font-size: 8vw;
}
@media screen and (max-width: 1024px) {
  .contact-body .top-title .title {
    font-size: 15vw;
    margin-top: 13vw;
  }
}
@media screen and (max-width: 500px) {
  .contact-body .top-title .title {
    margin-top: 0vw;
  }
}
.contact-body .top-title .title .clip-text {
  overflow: hidden;
}
.contact-body .page-container {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding-bottom: 15vw;
}
@media all and (max-width: 1024px) {
  .contact-body .page-container {
    padding-top: 5vw;
    padding-bottom: 45vw;
  }
}
.contact-body .page-container .contact-content {
  display: flex;
  justify-content: center;
}
@media all and (max-width: 1024px) {
  .contact-body .page-container .contact-content {
    flex-direction: column-reverse;
  }
}
.contact-body .page-container .contact-content .map-box {
  margin-top: 5vw;
  width: 41vw;
  margin-right: 6vw;
}
@media all and (max-width: 1024px) {
  .contact-body .page-container .contact-content .map-box {
    margin-right: 0vw;
    width: 87vw;
    height: 66vw;
    align-self: center;
  }
}
.contact-body .page-container .contact-content .map-box img {
  width: 100%;
}
.contact-body .page-container .contact-content .map-box iframe {
  width: 100%;
  height: 100%;
  filter: grayscale(1);
}
.contact-body .page-container .contact-content .reservation-box {
  display: flex;
  margin-top: 4vw;
  flex-direction: column;
  width: 30vw;
  align-items: center;
}
@media all and (max-width: 1024px) {
  .contact-body .page-container .contact-content .reservation-box {
    width: 88vw;
    justify-content: center;
    margin: 0 auto;
  }
}
.contact-body .page-container .contact-content .reservation-box .form-box {
  display: flex;
  width: 100%;
  flex-direction: column;
  padding-top: 1vw;
  justify-content: space-between;
}
.contact-body .page-container .contact-content .reservation-box .form-box form .input-box {
  display: flex;
  width: 100%;
  justify-content: space-between;
  padding-top: 1.2vw;
  padding-bottom: 1.2vw;
  border-bottom: 1px solid #d9d9d9;
}
@media all and (max-width: 1024px) {
  .contact-body .page-container .contact-content .reservation-box .form-box form .input-box {
    padding-top: 4vw;
    padding-bottom: 4vw;
    border-bottom: 1px solid #aaaaaa;
  }
}
.contact-body .page-container .contact-content .reservation-box .form-box form .input-box .title {
  color: #333333;
  font-size: 1.1vw;
  font-family: "Noto Sans TC Regular";
  text-align: center;
  letter-spacing: 0.3em;
  font-weight: 500;
  width: 20%;
}
@media all and (max-width: 1024px) {
  .contact-body .page-container .contact-content .reservation-box .form-box form .input-box .title {
    font-size: 3.75vw;
    width: 24.5%;
  }
}
.contact-body .page-container .contact-content .reservation-box .form-box form .input-box input {
  color: #333333;
  font-size: 1.1vw;
  font-family: "Noto Sans TC Regular";
  letter-spacing: 0.15em;
  font-weight: 500;
  width: 78%;
  border: none;
  background: none;
}
@media all and (max-width: 1024px) {
  .contact-body .page-container .contact-content .reservation-box .form-box form .input-box input {
    font-size: 3.75vw;
    width: 72%;
  }
}
.contact-body .page-container .contact-content .reservation-box .form-box form .input-box textarea {
  width: 100%;
  background: none;
  resize: none;
  border: none;
  color: #333333;
  font-size: 1.1vw;
  font-family: "Noto Sans TC Regular";
  margin-top: 1vw;
  letter-spacing: 0.15em;
  font-weight: 500;
  outline: none;
  height: 6vw;
}
@media all and (max-width: 1024px) {
  .contact-body .page-container .contact-content .reservation-box .form-box form .input-box textarea {
    height: 15vw;
    margin-top: 2vw;
    font-size: 3.75vw;
    padding-left: 1vw;
  }
}
.contact-body .page-container .contact-content .reservation-box .form-box form .textarea-box {
  display: flex;
  flex-direction: column;
}
.contact-body .page-container .contact-content .reservation-box .form-box .button-box {
  cursor: pointer;
  display: flex;
  justify-content: center;
  z-index: 30;
  padding-top: 0.7vw;
  position: relative;
  padding-bottom: 0.7vw;
  border: 1px solid #d9d9d9;
  border-radius: 0.3vw;
  margin-top: 2vw;
  transition: 0.4s ease-in-out;
}
@media all and (max-width: 1024px) {
  .contact-body .page-container .contact-content .reservation-box .form-box .button-box {
    border: 1px solid #aaaaaa;
    border-radius: 1vw;
    margin-top: 9vw;
    margin-bottom: 5vw;
  }
}
.contact-body .page-container .contact-content .reservation-box .form-box .button-box::after {
  content: "";
  border-radius: 0.3vw;
  position: absolute;
  left: 0%;
  right: 0%;
  bottom: 0;
  width: 100%;
  z-index: 1;
  height: 0%;
  background-color: #a7a7a7;
  transition: 0.2s ease-in-out;
}
@media all and (max-width: 1024px) {
  .contact-body .page-container .contact-content .reservation-box .form-box .button-box::after {
    display: none;
  }
}
.contact-body .page-container .contact-content .reservation-box .form-box .button-box:hover button {
  color: white;
  z-index: 10;
}
@media all and (max-width: 1024px) {
  .contact-body .page-container .contact-content .reservation-box .form-box .button-box:hover button {
    color: #333333;
    z-index: 10;
  }
}
.contact-body .page-container .contact-content .reservation-box .form-box .button-box:hover::after {
  left: 0%;
  right: 0%;
  height: 100%;
}
@media all and (max-width: 1024px) {
  .contact-body .page-container .contact-content .reservation-box .form-box .button-box:hover::after {
    left: 0%;
    right: 0%;
    height: 100%;
  }
}
.contact-body .page-container .contact-content .reservation-box .form-box .button-box a {
  z-index: 10;
  position: relative;
}
.contact-body .page-container .contact-content .reservation-box .form-box .button-box button {
  background: none;
  color: #333333;
  font-family: "Noto Sans TC Regular";
  font-size: 1.1vw;
  letter-spacing: 0.2em;
  border: none;
  cursor: pointer;
}
@media all and (max-width: 1024px) {
  .contact-body .page-container .contact-content .reservation-box .form-box .button-box button {
    font-size: 3.75vw;
    padding-top: 2.5vw;
    padding-bottom: 2.5vw;
  }
}
@media all and (max-width: 1024px) {
  .contact-body.land-body .page-container .contact-content {
    flex-direction: column;
  }
}
.contact-body.land-body .page-container .contact-content .map-box {
  width: 36vw;
  margin-right: 9vw;
}
@media screen and (max-width: 1024px) {
  .contact-body.land-body .page-container .contact-content .map-box {
    width: 88vw;
    height: auto;
    margin: 2vw 0;
  }
}
.contact-body.land-body .page-container .contact-content .map-box h2 {
  font-size: 1.4vw;
  letter-spacing: 0.2em;
  font-weight: 400;
  font-family: "Noto Sans TC Regular";
  margin: 2% 0;
}
@media screen and (max-width: 1024px) {
  .contact-body.land-body .page-container .contact-content .map-box h2 {
    font-size: 6vw;
  }
}
.contact-body.land-body .page-container .contact-content .map-box p {
  font-family: "Noto Sans TC Light";
  line-height: 1.8;
  letter-spacing: 0.15em;
  font-size: 0.8vw;
}
@media screen and (max-width: 1024px) {
  .contact-body.land-body .page-container .contact-content .map-box p {
    font-size: 4vw;
  }
  .contact-body.land-body .page-container .contact-content .map-box p br {
    display: none;
  }
}
.contact-body.land-body .page-container .contact-content .reservation-box .form-box {
  padding-top: 0vw;
  margin-top: -0.6vw;
}
@media screen and (max-width: 1024px) {
  .contact-body.land-body .page-container .contact-content .reservation-box .form-box {
    margin: 0;
  }
}

.major-events-body {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  background-color: #ffffff;
  padding-bottom: 27vw;
}
@media screen and (max-width: 1024px) {
  .major-events-body {
    padding-bottom: 65vw;
  }
}
.major-events-body .top-title {
  background-color: #d2d2d2;
  width: 100%;
  height: 22vw;
  position: relative;
  display: flex;
}
@media screen and (max-width: 1024px) {
  .major-events-body .top-title {
    height: 60vw;
  }
}
@media screen and (max-width: 500px) {
  .major-events-body .top-title {
    height: auto;
    margin-top: 17vw;
    padding-bottom: 13vw;
    padding-top: 13vw;
  }
}
.major-events-body .top-title picture {
  position: absolute;
  bottom: 0px;
  width: 46vw;
  display: flex;
}
@media screen and (max-width: 1024px) {
  .major-events-body .top-title picture {
    width: 60vw;
  }
}
.major-events-body .top-title .title {
  color: #333333;
  font-family: "Jost";
  align-self: center;
  align-content: center;
  letter-spacing: 0.05em;
  margin: 0 auto;
  font-size: 8vw;
}
@media screen and (max-width: 1024px) {
  .major-events-body .top-title .title {
    font-size: 15vw;
    margin-top: 13vw;
  }
}
@media screen and (max-width: 500px) {
  .major-events-body .top-title .title {
    margin-top: 0vw;
  }
}
.major-events-body .top-title .title .clip-text {
  overflow: hidden;
}
.major-events-body .nav-box {
  display: flex;
  width: 100%;
  justify-content: center;
  padding-top: 3vw;
  background-color: #e8e8e8;
}
@media screen and (max-width: 1024px) {
  .major-events-body .nav-box {
    padding-top: 5vw;
    background-color: #fff;
  }
}
.major-events-body .nav-box a.nav {
  color: #333333;
  font-family: "Noto Sans TC Regular";
  letter-spacing: 0.15em;
  font-size: 1.1vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-right: 3vw;
}
@media screen and (max-width: 1024px) {
  .major-events-body .nav-box a.nav {
    font-size: 3.9vw;
    margin-right: 5vw;
  }
}
.major-events-body .nav-box a.nav img {
  width: 3vw;
  margin-top: 0.4vw;
  display: none;
}
@media screen and (max-width: 1024px) {
  .major-events-body .nav-box a.nav img {
    width: 12vw;
    height: 6%;
    margin-top: 0.8vw;
  }
}
.major-events-body .nav-box a.nav .img-line-active {
  display: block;
}
.major-events-body .nav-box a.nav:last-child {
  margin-right: 0vw;
}
.major-events-body .nav-fixed {
  position: fixed;
  z-index: 30;
  width: 100%;
  opacity: 0.9;
  background-color: white;
  padding-top: 1.5vw;
  padding-bottom: 1.5vw;
}
.major-events-body picture {
  display: flex;
}
.major-events-body .card1 {
  width: 100%;
  display: flex;
  flex-direction: column;
  padding-top: 4vw;
  padding-bottom: 4vw;
  align-items: center;
  background-color: #e8e8e8;
}
@media screen and (max-width: 1024px) {
  .major-events-body .card1 {
    padding-top: 1vw;
    padding-bottom: 0vw;
    background-color: #fff;
    margin-top: 3vw;
    margin-bottom: 6vw;
  }
}
.major-events-body .card1 .img-box {
  width: 70%;
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .major-events-body .card1 .img-box {
    width: 100%;
  }
}
.major-events-body .card1 .img-box img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.major-events-body .card1 .img-box .founder-content-mobile {
  display: none;
}
@media screen and (max-width: 1024px) {
  .major-events-body .card1 .img-box .founder-content-mobile {
    display: flex;
    flex-direction: column;
    position: absolute;
    bottom: 7vw;
    left: 0vw;
    z-index: 10;
    width: 100%;
    color: white;
  }
}
.major-events-body .card1 .img-box .founder-content-mobile .title-box {
  display: flex;
  flex-direction: column;
  text-align: center;
  align-items: center;
  margin-bottom: 2vw;
}
.major-events-body .card1 .img-box .founder-content-mobile .title-box .title {
  display: flex;
  font-family: "Noto Sans TC Regular";
  font-size: 5.8vw;
  letter-spacing: 0.12em;
}
.major-events-body .card1 .img-box .founder-content-mobile .title-box .title:first-child {
  margin-left: -0.6vw;
}
.major-events-body .card1 .img-box .founder-content-mobile .title-box .title .number {
  color: #c6a82e;
  font-family: "Jost";
  font-weight: 600;
  margin-right: 1.5vw;
  letter-spacing: 0em;
  font-size: 5.8vw;
  margin-top: 0.5vw;
}
.major-events-body .card1 .img-box .founder-content-mobile .content {
  font-size: 3.9vw;
  font-family: "Noto Sans TC Light";
  letter-spacing: 0.1em;
  text-align: center;
  line-height: 2;
  margin-bottom: 5vw;
}
.major-events-body .card1 .img-box .founder-content-mobile .name {
  display: flex;
  align-self: center;
  flex-direction: column;
  width: 70%;
}
.major-events-body .card1 .img-box .founder-content-mobile .name img {
  width: 100%;
}
@media screen and (max-width: 1024px) {
  .major-events-body .card1 .founder-content {
    display: none;
  }
}
.major-events-body .card1 .founder-content .title-box {
  display: flex;
  flex-direction: column;
  margin-top: 3vw;
  text-align: center;
  align-items: center;
  margin-bottom: 1vw;
}
.major-events-body .card1 .founder-content .title-box .title {
  display: flex;
  color: #333333;
  font-family: "Noto Sans TC";
  font-weight: 500;
  font-size: 1.6vw;
  letter-spacing: 0.08em;
}
.major-events-body .card1 .founder-content .title-box .title:first-child {
  margin-left: -0.6vw;
}
.major-events-body .card1 .founder-content .title-box .title .number {
  color: #937e28;
  font-family: "Jost";
  font-weight: 600;
  margin-right: 0.2vw;
  margin-top: 0.2vw;
  letter-spacing: 0em;
  font-size: 2.1vw;
  margin-top: -0.2vw;
}
.major-events-body .card1 .founder-content .content {
  font-size: 0.9vw;
  font-family: "Noto Sans TC Light";
  letter-spacing: 0.1em;
  color: #333333;
  text-align: center;
  line-height: 2;
}
@media screen and (max-width: 1440px) {
  .major-events-body .card1 .founder-content .content {
    font-size: 1vw;
  }
}
.major-events-body .second-page {
  position: relative;
  display: flex;
  background-color: white;
  padding-top: 5vw;
}
@media screen and (max-width: 1024px) {
  .major-events-body .second-page {
    display: none;
  }
}
.major-events-body .wrapper {
  margin: 0 auto;
  padding: 0 0px 50px 0px;
}
.major-events-body article {
  position: relative;
  margin: 0 auto;
}
.major-events-body .timeline {
  margin: auto;
  display: flex;
  align-items: flex-start;
  width: 100%;
  position: relative;
  justify-content: flex-end;
  margin-right: 14vw;
}
.major-events-body .timeline__nav {
  position: sticky;
  z-index: 99;
  top: 0;
  left: 7vw;
  width: 7.5vw;
  transition: top 1s ease-out;
  height: auto;
  top: 4vw;
}
.major-events-body .fixed {
  position: fixed;
}
.major-events-body .sticky {
  position: sticky;
}
.major-events-body .absolute {
  position: absolute;
}
.major-events-body .timeline__nav::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0.5vw;
  width: 0.5px;
  height: 100%;
  opacity: 0.3;
}
.major-events-body .timeline__nav ul {
  list-style: none;
  list-style-position: inside;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  position: relative;
  min-height: 50vh;
}
.major-events-body .timeline__nav ul li {
  list-style-type: none;
}
.major-events-body .timeline__nav ul li span {
  padding: 0.2em 0.8em;
  font-family: "Jost";
  font-size: 0.8vw;
  display: inline-block;
  color: #333333;
  cursor: pointer;
  transition: all 0.5s ease-in;
  border-radius: 1vw;
  margin-top: 0.5em;
  letter-spacing: 0.1em;
}
.major-events-body .timeline__nav ul li.active span {
  color: #ffffff;
  background-color: #333333;
}
.major-events-body .timeline__nav ul li span:hover {
  color: #ffffff;
  background-color: #333333;
}
.major-events-body .milestone {
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
}
.major-events-body .timeline__section {
  width: 37vw;
}
.major-events-body .timeline__section .cards {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 3%;
  padding-left: 1vw;
}
.major-events-body .timeline__section .cards .line {
  position: absolute;
  width: 100%;
  bottom: 0vw;
  left: 0vw;
}
.major-events-body .timeline__section .year {
  margin-top: 1.5vw;
  width: 6.7vw;
  display: flex;
  align-items: center;
  justify-content: start;
  word-wrap: normal;
  color: #333333;
  white-space: nowrap;
  position: relative;
}
.major-events-body .timeline__section .year p {
  color: #333333;
  font-family: "Jost";
  font-size: 2.8vw;
}
.major-events-body .timeline__section .infoDiv {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  padding-top: 1.5vw;
  padding-bottom: 1.5vw;
}
.major-events-body .timeline__section .infoDiv .card {
  position: relative;
  padding-top: 1vw;
  border-left: 1px solid #e9e9e9;
  padding-bottom: 1vw;
  padding-left: 1.5vw;
  display: flex;
}
.major-events-body .timeline__section .infoDiv .card .name {
  color: #333333;
  font-family: "Noto Sans TC Regular";
  letter-spacing: 0.15em;
  font-size: 1.3vw;
  margin-right: 1vw;
}
.major-events-body .timeline__section .infoDiv .card .location {
  font-size: 0.7vw;
  font-family: "Noto Sans TC Light";
  letter-spacing: 0.15em;
  align-self: center;
  border-radius: 0.2vw;
  border: 1px solid #cccccc;
  padding-left: 0.2vw;
  padding-right: 0.1vw;
  padding-top: 0.1vw;
  padding-bottom: 0.1vw;
  margin-right: 1vw;
}
.major-events-body .timeline__section .infoDiv .card .info {
  font-family: "Noto Sans TC Light";
  letter-spacing: 0.05em;
  align-self: center;
  font-size: 0.9vw;
}
.major-events-body .timeline__section .card:nth-last-of-type(1)::after {
  display: none;
}
.major-events-body .yearCard {
  position: relative;
  transition: all 0.9s ease-in-out;
}
.major-events-body .yearCard-active {
  transition: all 0.9s ease-in-out;
  background-color: rgba(156, 156, 156, 0.1);
}
.major-events-body .yearDiv {
  top: 20vh;
  top: 15vh;
  position: sticky;
  width: 16vw;
  left: 24vw;
  display: grid;
  scale: 1.8;
  width: 40vw;
  left: 33vw;
}
.major-events-body .yearDiv .year-text {
  position: absolute;
  font-family: "Jost";
  color: #937e29;
  letter-spacing: 0.05em;
  top: 10vw;
  left: 5.7vw;
  font-size: 0.8vw;
}
.major-events-body .yearDiv .div-1,
.major-events-body .yearDiv .div-2,
.major-events-body .yearDiv .div-3,
.major-events-body .yearDiv .div-4 {
  position: absolute;
  flex-grow: 1;
  box-sizing: content-box;
  width: 5vw;
  height: 5vw;
  height: 4.8vw;
  overflow: hidden;
  margin: 0px;
  padding: 0px;
}
.major-events-body .yearDiv .div-1 img,
.major-events-body .yearDiv .div-2 img,
.major-events-body .yearDiv .div-3 img,
.major-events-body .yearDiv .div-4 img {
  margin: 0px;
  padding: 0px;
  width: 70%;
  width: 68%;
  height: auto;
  transition: 0.5s ease-in-out;
}
.major-events-body .yearDiv .div-1 {
  left: 1.4vw;
}
.major-events-body .yearDiv .div-2 {
  left: 4.8vw;
}
.major-events-body .yearDiv .div-3 {
  top: 5vw;
  left: 5vw;
}
.major-events-body .yearDiv .div-4 {
  top: 5.05vw;
  left: 8.3vw;
}
.major-events-body .top-btn {
  position: absolute;
  width: 2.5vw;
  cursor: pointer;
  bottom: 10vw;
  align-self: center;
}
@media screen and (max-width: 1024px) {
  .major-events-body .top-btn {
    width: 10vw;
    bottom: 50vw;
  }
}
.major-events-body .list-btn-mobile-box {
  display: none;
}
@media screen and (max-width: 1024px) {
  .major-events-body .list-btn-mobile-box {
    display: flex;
    justify-content: center;
  }
}
.major-events-body .list-btn {
  position: absolute;
  top: 7.2vw;
  right: 4vw;
  cursor: pointer;
  display: flex;
  font-weight: 300;
  background-color: #333333;
  padding-top: 0.3vw;
  padding-bottom: 0.3vw;
  padding-left: 0.7vw;
  padding-right: 0.6vw;
  border-radius: 0.3vw;
}
@media screen and (max-width: 1024px) {
  .major-events-body .list-btn {
    font-size: 3.9vw;
    position: initial;
    top: 0vw;
    right: 0vw;
    padding-top: 1.5vw;
    padding-bottom: 2vw;
    padding-left: 3.5vw;
    padding-right: 3vw;
    border-radius: 0.6vw;
    right: 35vw;
    z-index: 20;
    margin-top: 2vw;
  }
}
.major-events-body .list-btn .icon-box {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-right: 0.5vw;
}
@media screen and (max-width: 1024px) {
  .major-events-body .list-btn .icon-box {
    margin-right: 3vw;
  }
}
.major-events-body .list-btn .icon-box img {
  width: 1.25vw;
}
@media screen and (max-width: 1024px) {
  .major-events-body .list-btn .icon-box img {
    width: 4vw;
  }
}
.major-events-body .list-btn .text {
  font-size: 0.9vw;
  align-items: center;
  align-self: center;
  cursor: pointer;
  color: white;
  font-weight: 100;
  letter-spacing: 0.15em;
  font-family: "Noto Sans TC";
}
@media screen and (max-width: 1024px) {
  .major-events-body .list-btn .text {
    font-size: 3.9vw;
    letter-spacing: 0.2em;
  }
}
.major-events-body .list-btn-fixed {
  position: fixed !important;
}
.major-events-body .mobile-list-fixed {
  position: fixed;
  opacity: 0.7;
}
.major-events-body .lightbox-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 400;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-in-out, visibility 0.4s ease-in-out;
}
@media (max-width: 1024px) {
  .major-events-body .lightbox-overlay .swiper-slide {
    width: 1700px;
  }
}
.major-events-body .lightbox-overlay.active {
  opacity: 1;
  visibility: visible;
}
.major-events-body .lightbox-content {
  text-align: center;
  position: relative;
  transform: scale(0.8);
  transition: transform 0.4s ease-in-out;
}
@media screen and (max-width: 1024px) {
  .major-events-body .lightbox-content {
    padding-top: 15vw;
  }
}
.major-events-body .lightbox-overlay.active .lightbox-content {
  transform: scale(1);
}
.major-events-body .list-light-box {
  position: fixed;
  top: 0px;
  align-self: anchor-center;
  left: 0px;
  width: 100%;
  height: auto;
  height: 100svh;
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: #e8e8e8;
}
.major-events-body .list-light-box .close {
  position: absolute;
  width: 2vw;
  right: 2vw;
  top: 2vw;
  cursor: pointer;
}
@media screen and (max-width: 1024px) {
  .major-events-body .list-light-box .close {
    width: 5vw;
    right: 6vw;
    top: 5vw;
  }
}
.major-events-body .list-light-box .title {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 4vw;
  margin-bottom: 4vw;
}
.major-events-body .list-light-box .title .zh {
  font-size: 1.6vw;
  font-family: "Noto Sans TC";
  letter-spacing: 0.18em;
  color: #333333;
  margin-bottom: 0.5vw;
}
@media screen and (max-width: 1024px) {
  .major-events-body .list-light-box .title .zh {
    font-size: 4.1vw;
  }
}
.major-events-body .list-light-box .title .en {
  font-size: 1.1vw;
  letter-spacing: 0.05em;
  font-family: "Jost";
  color: #808080;
}
@media screen and (max-width: 1024px) {
  .major-events-body .list-light-box .title .en {
    font-size: 3.5vw;
  }
}
.major-events-body .list-light-box .swiper-box {
  display: flex;
  justify-content: center;
  width: 100%;
}
@media screen and (max-width: 1024px) {
  .major-events-body .list-light-box .swiper-box {
    overflow: auto;
  }
}
.major-events-body .list-light-box .swiper-box .swiper {
  width: 90%;
}
.major-events-body .list-light-box .prev,
.major-events-body .list-light-box .next {
  width: 2.5vw;
  position: absolute;
  cursor: pointer;
  z-index: 15;
}
@media (max-width: 1024px) {
  .major-events-body .list-light-box .prev,
  .major-events-body .list-light-box .next {
    width: 9vw;
    top: 45vw !important;
  }
}
.major-events-body .list-light-box .prev img,
.major-events-body .list-light-box .next img {
  width: 100%;
}
.major-events-body .list-light-box .prev {
  left: 1.5vw;
  top: 20vw;
}
.major-events-body .list-light-box .next {
  right: 1.5vw;
  top: 20vw;
}
.major-events-body .mobile-timeline-box {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  display: none;
}
@media all and (max-width: 1024px) {
  .major-events-body .mobile-timeline-box {
    display: flex;
  }
}
.major-events-body .mobile-timeline-box .year-item-box {
  display: flex;
  flex-direction: column;
  position: relative;
  margin: 0 auto;
  margin-top: 9vw;
}
.major-events-body .mobile-timeline-box .year-item-box .item {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-bottom: 10vw;
}
.major-events-body .mobile-timeline-box .year-item-box .item .year {
  display: flex;
  justify-content: center;
  margin-top: 3vw;
  word-wrap: normal;
  color: #333333;
  white-space: nowrap;
  position: relative;
  width: 50%;
}
.major-events-body .mobile-timeline-box .year-item-box .item .year p {
  color: #333333;
  font-family: "Jost";
  font-size: 9vw;
}
.major-events-body .mobile-timeline-box .year-item-box .item .infoDiv {
  display: flex;
  flex-direction: column;
  width: 50%;
  border-left: 1px solid #ababab;
  color: #333333;
}
.major-events-body .mobile-timeline-box .year-item-box .item .infoDiv .card {
  position: relative;
  padding-top: 1vw;
  margin-bottom: 5vw;
  padding-left: 1.5vw;
  display: flex;
  flex-direction: column;
  padding-left: 8vw;
}
.major-events-body .mobile-timeline-box .year-item-box .item .infoDiv .card:last-child {
  margin-bottom: 0vw;
}
.major-events-body .mobile-timeline-box .year-item-box .item .infoDiv .card .name {
  color: #333333;
  font-family: "Noto Sans TC";
  font-size: 5.2vw;
  letter-spacing: 0.15em;
  margin-bottom: 2vw;
}
.major-events-body .mobile-timeline-box .year-item-box .item .infoDiv .card .location {
  font-size: 3.6vw;
  font-family: "Noto Sans TC Light";
  letter-spacing: 0.15em;
  display: flex;
  margin-bottom: 2vw;
}
.major-events-body .mobile-timeline-box .year-item-box .item .infoDiv .card .location div {
  border-radius: 0.8vw;
  border: 1px solid rgba(171, 171, 171, 0.3137254902);
  padding-left: 1vw;
  padding-right: 0.3vw;
  padding-top: 0.1vw;
  padding-bottom: 0.4vw;
}
.major-events-body .mobile-timeline-box .year-item-box .item .infoDiv .card .info {
  font-family: "Noto Sans TC Light";
  letter-spacing: 0.05em;
  font-size: 3.6vw;
  line-height: 1.8;
}

.project-body {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  background-color: white;
  padding-bottom: 6.5vw;
}
@media screen and (max-width: 1024px) {
  .project-body {
    padding-bottom: 52vw;
  }
}
.project-body .top-title {
  background-color: #d2d2d2;
  width: 100%;
  height: 22vw;
  position: relative;
  display: flex;
}
@media screen and (max-width: 1024px) {
  .project-body .top-title {
    height: 60vw;
  }
}
@media screen and (max-width: 500px) {
  .project-body .top-title {
    height: auto;
    margin-top: 17vw;
    padding-bottom: 13vw;
    padding-top: 13vw;
  }
}
.project-body .top-title picture {
  position: absolute;
  bottom: 0px;
  width: 46vw;
  display: flex;
}
@media screen and (max-width: 1024px) {
  .project-body .top-title picture {
    width: 60vw;
  }
}
.project-body .top-title .title {
  color: #333333;
  font-family: "Jost";
  align-self: center;
  align-content: center;
  letter-spacing: 0.05em;
  margin: 0 auto;
  font-size: 8vw;
}
@media screen and (max-width: 1024px) {
  .project-body .top-title .title {
    font-size: 15vw;
    margin-top: 13vw;
  }
}
@media screen and (max-width: 500px) {
  .project-body .top-title .title {
    margin-top: 0vw;
  }
}
.project-body .top-title .title .clip-text {
  overflow: hidden;
}
.project-body .nav-box {
  display: flex;
  width: 100%;
  justify-content: center;
  padding-top: 3vw;
  margin-bottom: 2vw;
}
@media screen and (max-width: 1024px) {
  .project-body .nav-box {
    padding-top: 5vw;
  }
}
.project-body .nav-box .nav {
  color: #333333;
  font-family: "Noto Sans TC Regular";
  letter-spacing: 0.15em;
  font-size: 1.1vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-right: 3vw;
}
@media screen and (max-width: 1024px) {
  .project-body .nav-box .nav {
    font-size: 3.9vw;
    margin-right: 5vw;
  }
}
.project-body .nav-box .nav img {
  width: 3vw;
  margin-top: 0.4vw;
  display: none;
}
@media screen and (max-width: 1024px) {
  .project-body .nav-box .nav img {
    width: 12vw;
    height: 6%;
    margin-top: 0.8vw;
  }
}
.project-body .nav-box .nav .img-line-active {
  display: block;
}
.project-body .nav-box .nav:last-child {
  margin-right: 0vw;
}
.project-body .nav-fixed {
  position: fixed;
  z-index: 30;
  width: 100%;
  opacity: 0.9;
  background-color: white;
  padding-top: 1.5vw;
  padding-bottom: 2vw;
}
.project-body .swiper-box {
  width: 100%;
  overflow: hidden;
  position: relative;
  padding-bottom: 2vw;
}
@media screen and (max-width: 1024px) {
  .project-body .swiper-box {
    display: none;
  }
}
.project-body .swiper-box .swiper {
  width: 100%;
  transform: scale(1.12);
  padding-bottom: 8vw;
  min-height: 31.25vw;
}
.project-body .swiper-box .swiper .project-content-box {
  display: flex;
  width: 100%;
  position: absolute;
  flex-direction: column;
  color: #333333;
  bottom: -5.5vw;
  text-align: center;
  align-self: center;
  transition: all 0.3s ease-in-out;
  opacity: 0;
}
.project-body .swiper-box .swiper .project-content-box .project-name {
  font-size: 1.6vw;
  font-family: "Noto Sans TC";
  letter-spacing: 0.1em;
  margin-bottom: 0.5vw;
}
.project-body .swiper-box .swiper .project-content-box .content {
  font-size: 0.9vw;
  font-family: "Noto Sans TC Light";
  letter-spacing: 0.15em;
}
.project-body .swiper-box .swiper .swiper-slide {
  width: 100%;
  transform: scale(0.7) translateZ(0);
  transition: all 0.8s ease-in-out;
}
.project-body .swiper-box .swiper .swiper-slide img {
  transition: all 0.8s ease-in-out;
}
.project-body .swiper-box .swiper .swiper-slide-active {
  padding-top: 2vw;
  transform: scale(1) translateZ(0);
}
.project-body .swiper-box .swiper .swiper-slide-active .project-content-box {
  opacity: 1;
  transition: all 0.3s ease-in-out;
}
.project-body .swiper-box .swiper .swiper-slide-prev,
.project-body .swiper-box .swiper .swiper-slide-next {
  padding-top: 2vw;
}
.project-body .swiper-box .prev,
.project-body .swiper-box .next {
  width: 2.5vw;
  position: absolute;
  top: 10.5vw;
  z-index: 20;
  cursor: pointer;
  transition: 0.4s ease-in-out;
}
.project-body .swiper-box .prev {
  left: 33vw;
}
.project-body .swiper-box .prev:hover {
  transform: translateX(-10%);
}
.project-body .swiper-box .next {
  right: 33vw;
}
.project-body .swiper-box .next:hover {
  transform: translateX(10%);
}
.project-body .pagination-box {
  display: flex;
  justify-content: center;
  width: 100%;
}
@media screen and (max-width: 1024px) {
  .project-body .pagination-box {
    display: none;
  }
}
.project-body .pagination-box .prev-arrow {
  width: 0.4vw;
  margin-right: 0.7vw;
  cursor: pointer;
}
@media screen and (max-width: 1440px) {
  .project-body .pagination-box .prev-arrow {
    width: 0.6vw;
  }
}
.project-body .pagination-box .prev-arrow img {
  width: 100%;
}
.project-body .pagination-box .next-arrow {
  width: 0.4vw;
  margin-left: 0.7vw;
  cursor: pointer;
}
@media screen and (max-width: 1440px) {
  .project-body .pagination-box .next-arrow {
    width: 0.6vw;
  }
}
.project-body .pagination-box .next-arrow img {
  width: 100%;
}
.project-body .pagination-box .swiper-pagination {
  position: relative;
  align-self: center;
  top: initial; /* 讓進度條靠近底部 */
  left: initial;
  width: 8.5% !important;
  height: 2px !important; /* 設定進度條高度 */
  background: rgba(51, 51, 51, 0.5);
}
.project-body .pagination-box .swiper-pagination-progressbar-fill {
  background: #333333 !important; /* 設定進度條顏色 */
}
.project-body .pagination-box .swiper-counter {
  font-family: "Jost";
  font-size: 0.7vw;
  letter-spacing: 0.05em;
  margin-left: 1vw;
  width: 3vw;
  align-self: center;
  display: flex;
}
@media screen and (max-width: 1440px) {
  .project-body .pagination-box .swiper-counter {
    font-size: 0.8vw;
  }
}
.project-body .pagination-box .swiper-counter .swiper-current-counter {
  font-weight: 600;
}
.project-body .mobile-project-box {
  display: none;
}
@media screen and (max-width: 1024px) {
  .project-body .mobile-project-box {
    display: flex;
    flex-direction: column;
    width: 87%;
    align-self: center;
    margin-top: 6vw;
  }
}
.project-body .mobile-project-box .item-box {
  display: flex;
  flex-direction: column;
  width: 100%;
  color: #333333;
  align-items: center;
  margin-bottom: 9vw;
}
.project-body .mobile-project-box .item-box .img-box {
  width: 100%;
  overflow: hidden;
}
.project-body .mobile-project-box .item-box .img-box img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: all 0.5s ease-in-out;
}
.project-body .mobile-project-box .item-box .project-content-box {
  display: flex;
  flex-direction: column;
  text-align: center;
}
.project-body .mobile-project-box .item-box .project-content-box .project-name {
  font-family: "Noto Sans TC";
  font-size: 5.2vw;
  letter-spacing: 0.15em;
  margin-bottom: 2vw;
  margin-top: 3vw;
}
.project-body .mobile-project-box .item-box .project-content-box .content {
  font-family: "Noto Sans TC";
  font-weight: 400;
  font-size: 3.9vw;
  letter-spacing: 0.12em;
  line-height: 2;
}

.history-project-body {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  background-color: white;
  padding-bottom: 7vw;
}
@media screen and (max-width: 1024px) {
  .history-project-body {
    padding-bottom: 50vw;
  }
}
.history-project-body .top-title {
  background-color: #d2d2d2;
  width: 100%;
  height: 22vw;
  position: relative;
  display: flex;
}
@media screen and (max-width: 1024px) {
  .history-project-body .top-title {
    height: 60vw;
  }
}
@media screen and (max-width: 500px) {
  .history-project-body .top-title {
    height: auto;
    margin-top: 17vw;
    padding-bottom: 13vw;
    padding-top: 13vw;
  }
}
.history-project-body .top-title picture {
  position: absolute;
  bottom: 0px;
  width: 46vw;
  display: flex;
}
@media screen and (max-width: 1024px) {
  .history-project-body .top-title picture {
    width: 60vw;
  }
}
.history-project-body .top-title .title {
  color: #333333;
  font-family: "Jost";
  align-self: center;
  align-content: center;
  letter-spacing: 0.05em;
  margin: 0 auto;
  font-size: 8vw;
}
@media screen and (max-width: 1024px) {
  .history-project-body .top-title .title {
    font-size: 15vw;
    margin-top: 13vw;
  }
}
@media screen and (max-width: 500px) {
  .history-project-body .top-title .title {
    margin-top: 0vw;
  }
}
.history-project-body .top-title .title .clip-text {
  overflow: hidden;
}
.history-project-body .nav-box {
  display: flex;
  width: 100%;
  justify-content: center;
  padding-top: 3vw;
  margin-bottom: 2vw;
}
@media screen and (max-width: 1024px) {
  .history-project-body .nav-box {
    padding-top: 5vw;
  }
}
.history-project-body .nav-box .nav {
  color: #333333;
  font-family: "Noto Sans TC Regular";
  letter-spacing: 0.15em;
  font-size: 1.1vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-right: 3vw;
}
@media screen and (max-width: 1024px) {
  .history-project-body .nav-box .nav {
    font-size: 3.9vw;
    margin-right: 5vw;
  }
}
.history-project-body .nav-box .nav img {
  width: 3vw;
  margin-top: 0.4vw;
  display: none;
}
@media screen and (max-width: 1024px) {
  .history-project-body .nav-box .nav img {
    width: 12vw;
    height: 6%;
    margin-top: 0.8vw;
  }
}
.history-project-body .nav-box .nav .img-line-active {
  display: block;
}
.history-project-body .nav-box .nav:last-child {
  margin-right: 0vw;
}
.history-project-body .nav-fixed {
  position: fixed;
  z-index: 30;
  width: 100%;
  opacity: 0.9;
  background-color: white;
  padding-top: 1.5vw;
  padding-bottom: 1.5vw;
}
.history-project-body .content-text {
  display: flex;
  flex-direction: column;
  color: #333333;
  margin-top: 1vw;
  margin-bottom: 4vw;
}
@media screen and (max-width: 1024px) {
  .history-project-body .content-text {
    margin-bottom: 6vw;
    margin-top: 6vw;
  }
}
.history-project-body .content-text .title {
  font-size: 1.6vw;
  font-family: "Noto Sans TC Regular";
  letter-spacing: 0.1em;
  margin-bottom: 0.5vw;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .history-project-body .content-text .title {
    font-family: "Noto Sans TC";
    font-size: 5.2vw;
    letter-spacing: 0.15em;
  }
}
.history-project-body .content-text .content {
  font-size: 0.9vw;
  font-family: "Noto Sans TC Light";
  letter-spacing: 0.15em;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .history-project-body .content-text .content {
    font-family: "Noto Sans TC";
    font-weight: 400;
    font-size: 3.9vw;
    letter-spacing: 0.12em;
    line-height: 2;
  }
}
.history-project-body .project-list {
  margin: 0 auto;
  display: flex;
  width: 75%;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  .history-project-body .project-list {
    flex-direction: column;
    width: 88%;
  }
}
.history-project-body .project-list .item {
  display: flex;
  flex-direction: column;
  margin-bottom: 4vw;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .history-project-body .project-list .item {
    width: 100%;
    margin-bottom: 8vw;
  }
}
.history-project-body .project-list .item .state-box {
  position: absolute;
  top: 0px;
  left: 0px;
  display: flex;
  flex-direction: column;
  width: 11vw;
  z-index: 20;
}
@media screen and (max-width: 1024px) {
  .history-project-body .project-list .item .state-box {
    width: 34vw;
  }
}
.history-project-body .project-list .item .state-box img {
  width: 100%;
}
.history-project-body .project-list .item .state-box .text {
  font-size: 1.1vw;
  font-family: "Noto Sans TC Light";
  color: white;
  letter-spacing: 0.15em;
  position: absolute;
  top: 0.6vw;
  left: 1vw;
}
@media screen and (max-width: 1024px) {
  .history-project-body .project-list .item .state-box .text {
    font-size: 3.6vw;
    top: 1.6vw;
    left: 3vw;
  }
}
.history-project-body .project-list .item .img-box {
  overflow: hidden;
  width: 36vw;
  height: 24vw;
}
@media screen and (max-width: 1024px) {
  .history-project-body .project-list .item .img-box {
    width: 100%;
    height: auto;
  }
}
.history-project-body .project-list .item .img-box img {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  transition: all 0.5s;
}
.history-project-body .project-list .item a:hover .img-box img {
  transform: scale(1.3);
}
.history-project-body .project-list .item .item-content {
  display: flex;
  color: #333333;
  margin-top: 0.8vw;
}
@media screen and (max-width: 1024px) {
  .history-project-body .project-list .item .item-content {
    justify-content: center;
    margin-top: 1.5vw;
  }
}
.history-project-body .project-list .item .item-content .year {
  font-family: "Jost";
  letter-spacing: 0.06em;
  font-size: 3.5vw;
  margin-right: 1.5vw;
}
@media screen and (max-width: 1024px) {
  .history-project-body .project-list .item .item-content .year {
    font-size: 9vw;
  }
}
.history-project-body .project-list .item .item-content .name {
  font-size: 1.6vw;
  font-family: "Noto Sans TC Regular";
  letter-spacing: 0.12em;
  align-self: center;
}
@media screen and (max-width: 1024px) {
  .history-project-body .project-list .item .item-content .name {
    font-size: 5.2vw;
  }
}

.project-info-body {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  background-color: white;
  padding-bottom: 20vw;
}
@media screen and (max-width: 1024px) {
  .project-info-body {
    padding-bottom: 40vw;
  }
}
.project-info-body .top-content-box {
  background-color: #d2d2d2;
  width: 100%;
  position: relative;
  display: flex;
  justify-content: center;
  padding-top: 5vw;
  padding-left: 8vw;
  padding-right: 5vw;
  padding-bottom: 2vw;
  overflow: hidden;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box {
    flex-direction: column;
    padding-left: 0vw;
    padding-right: 0vw;
    padding-bottom: 8vw;
    padding-top: 15vw;
  }
}
@media screen and (max-width: 500px) {
  .project-info-body .top-content-box {
    padding-top: 18vw;
  }
}
.project-info-body .top-content-box .left-box {
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .left-box {
    align-items: center;
  }
}
.project-info-body .top-content-box .left-box .project-name {
  letter-spacing: 0.15em;
  font-family: "Noto Sans TC";
  font-size: 1.3vw;
  margin-bottom: 1.6vw;
  color: #333333;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .left-box .project-name {
    font-size: 5.8vw;
    align-self: center;
    margin-top: 6vw;
    margin-bottom: 6vw;
  }
}
.project-info-body .top-content-box .left-box .swiper-box {
  overflow: hidden;
  width: 43vw;
  height: 26vw;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .left-box .swiper-box {
    width: 88%;
    height: auto;
  }
}
.project-info-body .top-content-box .left-box .swiper-box img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.project-info-body .top-content-box .left-box .swiper-box .swiper {
  width: 100%;
}
.project-info-body .top-content-box .left-box .swiper-box .prev,
.project-info-body .top-content-box .left-box .swiper-box .next {
  width: 2vw;
  position: absolute;
  top: 11vw;
  z-index: 20;
  cursor: pointer;
  transition: 0.4s ease-in-out;
}
@media (max-width: 1024px) {
  .project-info-body .top-content-box .left-box .swiper-box .prev,
  .project-info-body .top-content-box .left-box .swiper-box .next {
    width: 8vw;
    top: 23vw;
  }
}
.project-info-body .top-content-box .left-box .swiper-box .prev {
  left: 1vw;
}
.project-info-body .top-content-box .left-box .swiper-box .prev:hover {
  transform: translateX(-10%);
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .left-box .swiper-box .prev:hover {
    transform: none;
  }
}
.project-info-body .top-content-box .left-box .swiper-box .next {
  right: 1vw;
}
.project-info-body .top-content-box .left-box .swiper-box .next:hover {
  transform: translateX(10%);
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .left-box .swiper-box .next:hover {
    transform: none;
  }
}
.project-info-body .top-content-box .left-box .info-link-box {
  display: flex;
  margin-top: 4%;
  justify-content: center;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .left-box .info-link-box {
    width: 100%;
    margin-top: 8vw;
    gap: 4%;
  }
}
.project-info-body .top-content-box .left-box .info-link-box a.link {
  display: flex;
  flex-direction: column;
  color: #333333;
  padding-right: 1vw;
  padding-left: 1vw;
  position: relative;
}
.project-info-body .top-content-box .left-box .info-link-box a.link:hover .box .icon img {
  transform: scale(1.1);
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .left-box .info-link-box a.link:hover .box .icon img {
    transform: none;
  }
}
.project-info-body .top-content-box .left-box .info-link-box a.link:hover .box .text {
  color: #937e29;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .left-box .info-link-box a.link:hover .box .text {
    color: #333333;
  }
}
.project-info-body .top-content-box .left-box .info-link-box a.link::after {
  content: "";
  position: absolute;
  right: 0vw;
  height: 98%;
  width: 1px;
  background-color: rgba(51, 51, 51, 0.3);
  top: 0vw;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .left-box .info-link-box a.link::after {
    right: -1.5vw;
  }
}
.project-info-body .top-content-box .left-box .info-link-box a.link:last-child::after {
  display: none;
}
.project-info-body .top-content-box .left-box .info-link-box a.link:first-child {
  padding-left: 0vw;
}
.project-info-body .top-content-box .left-box .info-link-box a.link .box {
  display: flex;
  position: relative;
  flex-direction: column;
  align-items: center;
}
.project-info-body .top-content-box .left-box .info-link-box a.link .box .icon {
  display: flex;
  margin-bottom: 0.6vw;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .left-box .info-link-box a.link .box .icon {
    margin-bottom: 1.5vw;
  }
}
.project-info-body .top-content-box .left-box .info-link-box a.link .box .icon img {
  height: 1.1vw;
  width: initial;
  transition: 0.3s ease-in-out;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .left-box .info-link-box a.link .box .icon img {
    height: 4vw;
  }
}
.project-info-body .top-content-box .left-box .info-link-box a.link .box .text {
  font-size: 0.9vw;
  font-family: "Noto Sans TC";
  font-weight: 300;
  letter-spacing: 0.1em;
  align-items: center;
  align-self: center;
  transition: 0.3s ease-in-out;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .left-box .info-link-box a.link .box .text {
    font-size: 3.9vw;
  }
}
.project-info-body .top-content-box .right-box {
  display: flex;
  color: #333333;
  flex-direction: column;
  justify-content: space-between;
  padding-top: 6vw;
  padding-bottom: 2vw;
  width: 100%;
  margin-left: 12vw;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .right-box {
    padding-top: 0vw;
    margin-left: 0vw;
    width: 88%;
    align-self: center;
    margin-top: 8vw;
  }
}
.project-info-body .top-content-box .right-box .info-box {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
}
.project-info-body .top-content-box .right-box .info-box::after {
  content: "";
  position: absolute;
  left: 5vw;
  height: 90%;
  width: 1px;
  background-color: rgba(51, 51, 51, 0.3764705882);
  top: 0.3vw;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .right-box .info-box::after {
    left: 21.5vw;
    height: 93%;
    top: 1.4vw;
  }
}
.project-info-body .top-content-box .right-box .info-box .info {
  display: flex;
  margin-bottom: 0.8vw;
  width: 100%;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .right-box .info-box .info {
    margin-bottom: 2.5vw;
  }
}
.project-info-body .top-content-box .right-box .info-box .info .title {
  font-size: 0.9vw;
  font-family: "Noto Sans TC";
  letter-spacing: 0.1em;
  width: 20%;
  padding-right: 1vw;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .right-box .info-box .info .title {
    font-size: 3.9vw;
    width: 30%;
    margin-top: 0.5vw;
  }
}
.project-info-body .top-content-box .right-box .info-box .info .content {
  font-size: 0.9vw;
  font-family: "Noto Sans TC";
  font-weight: 300;
  letter-spacing: 0.08em;
  align-items: center;
  align-self: center;
  color: #333333;
  width: 80%;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .right-box .info-box .info .content {
    font-size: 3.9vw;
    width: 70%;
    text-align: justify;
    line-height: 1.7;
  }
}
.project-info-body .top-content-box .right-box .info-link-box {
  display: flex;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .right-box .info-link-box {
    width: 100%;
    margin-top: 8vw;
    gap: 4%;
  }
}
.project-info-body .top-content-box .right-box .info-link-box a.link {
  display: flex;
  flex-direction: column;
  color: #333333;
  padding-right: 1vw;
  padding-left: 1vw;
  position: relative;
}
.project-info-body .top-content-box .right-box .info-link-box a.link:hover .box .icon img {
  transform: scale(1.1);
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .right-box .info-link-box a.link:hover .box .icon img {
    transform: none;
  }
}
.project-info-body .top-content-box .right-box .info-link-box a.link:hover .box .text {
  color: #937e29;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .right-box .info-link-box a.link:hover .box .text {
    color: #333333;
  }
}
.project-info-body .top-content-box .right-box .info-link-box a.link::after {
  content: "";
  position: absolute;
  right: 0vw;
  height: 98%;
  width: 1px;
  background-color: rgba(51, 51, 51, 0.3);
  top: 0vw;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .right-box .info-link-box a.link::after {
    right: -1.5vw;
  }
}
.project-info-body .top-content-box .right-box .info-link-box a.link:last-child::after {
  display: none;
}
.project-info-body .top-content-box .right-box .info-link-box a.link:first-child {
  padding-left: 0vw;
}
.project-info-body .top-content-box .right-box .info-link-box a.link .box {
  display: flex;
  position: relative;
  flex-direction: column;
  align-items: center;
}
.project-info-body .top-content-box .right-box .info-link-box a.link .box .icon {
  display: flex;
  margin-bottom: 0.6vw;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .right-box .info-link-box a.link .box .icon {
    margin-bottom: 1.5vw;
  }
}
.project-info-body .top-content-box .right-box .info-link-box a.link .box .icon img {
  height: 1.1vw;
  width: initial;
  transition: 0.3s ease-in-out;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .right-box .info-link-box a.link .box .icon img {
    height: 4vw;
  }
}
.project-info-body .top-content-box .right-box .info-link-box a.link .box .text {
  font-size: 0.9vw;
  font-family: "Noto Sans TC";
  font-weight: 300;
  letter-spacing: 0.1em;
  align-items: center;
  align-self: center;
  transition: 0.3s ease-in-out;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-content-box .right-box .info-link-box a.link .box .text {
    font-size: 3.9vw;
  }
}
.project-info-body .main-content-box {
  position: relative;
  width: 100%;
  margin-top: 4vw;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 1024px) {
  .project-info-body .main-content-box {
    align-items: center;
  }
}
.project-info-body .main-content-box .back-link {
  position: absolute;
  right: 4vw;
  top: 18vw;
  transition: 0.4s ease-in-out;
}
@media screen and (max-width: 1024px) {
  .project-info-body .main-content-box .back-link {
    position: initial;
    right: initial;
    top: initial;
    display: none;
  }
}
.project-info-body .main-content-box .back-link:hover {
  transform: translateX(-15%);
}
@media screen and (max-width: 1024px) {
  .project-info-body .main-content-box .back-link:hover {
    transform: translateX(0%);
  }
}
.project-info-body .main-content-box .back-link img {
  width: 2.5vw;
}
@media screen and (max-width: 1024px) {
  .project-info-body .main-content-box .back-link img {
    width: 10vw;
  }
}
.project-info-body .main-content-box .main-content {
  background-color: white;
  display: flex;
  flex-direction: column;
  width: 60%;
  align-self: center;
  color: #333333;
  margin-bottom: 1vw;
}
@media screen and (max-width: 1024px) {
  .project-info-body .main-content-box .main-content {
    width: 87%;
    padding-top: 4vw;
    margin-bottom: 8vw;
  }
}
.project-info-body .main-content-box .main-content h1 {
  font-size: 1.1vw;
  font-weight: 500;
  letter-spacing: 0.15em;
  font-family: "Noto Sans TC";
  margin-bottom: 1vw;
}
@media screen and (max-width: 1440px) {
  .project-info-body .main-content-box .main-content h1 {
    font-size: 1.2vw;
  }
}
@media screen and (max-width: 1024px) {
  .project-info-body .main-content-box .main-content h1 {
    font-family: "Noto Sans TC";
    font-size: 5.2vw;
    letter-spacing: 0.15em;
    text-align: justify;
    margin-bottom: 5vw;
  }
}
.project-info-body .main-content-box .main-content p {
  font-family: "Noto Sans TC";
  font-weight: 300;
  font-size: 0.9vw;
  letter-spacing: 0.15em;
  line-height: 2;
}
@media screen and (max-width: 1440px) {
  .project-info-body .main-content-box .main-content p {
    font-size: 1vw;
  }
}
@media screen and (max-width: 1024px) {
  .project-info-body .main-content-box .main-content p {
    font-family: "Noto Sans TC";
    font-weight: 400;
    font-size: 3.9vw;
    letter-spacing: 0.12em;
    line-height: 2;
    text-align: justify;
    margin-bottom: 3vw;
  }
}
.project-info-body .main-content-box .main-content img {
  margin-top: 3vw;
  margin-bottom: 3vw;
}
@media screen and (max-width: 1024px) {
  .project-info-body .main-content-box .main-content img {
    margin-bottom: 7vw;
    margin-top: 3vw;
  }
}
.project-info-body .reservation-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  align-self: center;
  width: 60%;
  margin-top: 2.5vw;
}
@media screen and (max-width: 1024px) {
  .project-info-body .reservation-box {
    margin-top: 0vw;
    width: 87%;
  }
}
.project-info-body .reservation-box .title-box {
  display: flex;
  flex-direction: column;
  margin-bottom: 3vw;
}
@media screen and (max-width: 1024px) {
  .project-info-body .reservation-box .title-box {
    margin-bottom: 5vw;
  }
}
.project-info-body .reservation-box .title-box .zh-title {
  color: #333333;
  letter-spacing: 0.15em;
  font-family: "Noto Sans TC";
  font-size: 1.6vw;
  margin-bottom: 0.5vw;
}
@media screen and (max-width: 1024px) {
  .project-info-body .reservation-box .title-box .zh-title {
    font-size: 5.2vw;
    margin-bottom: 1vw;
  }
}
.project-info-body .reservation-box .title-box .en-title {
  color: #b2b2b2;
  letter-spacing: 0.04em;
  font-family: "Jost";
  font-size: 1.1vw;
}
@media screen and (max-width: 1024px) {
  .project-info-body .reservation-box .title-box .en-title {
    font-size: 3.6vw;
  }
}
.project-info-body .reservation-box .form-box {
  display: flex;
  width: 65%;
  flex-direction: column;
  padding-top: 1.5vw;
  justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  .project-info-body .reservation-box .form-box {
    width: 100%;
    padding-top: 3vw;
    margin-bottom: 5vw;
  }
}
.project-info-body .reservation-box .form-box form {
  width: 100%;
}
.project-info-body .reservation-box .form-box form .input-box {
  display: flex;
  width: 100%;
  justify-content: space-between;
  padding-top: 1.2vw;
  padding-bottom: 1.2vw;
  border-bottom: 2px solid #d9d9d9;
}
@media screen and (max-width: 1440px) {
  .project-info-body .reservation-box .form-box form .input-box {
    border-bottom: 1px solid #d9d9d9;
  }
}
@media all and (max-width: 1024px) {
  .project-info-body .reservation-box .form-box form .input-box {
    padding-top: 4vw;
    padding-bottom: 4vw;
    border-bottom: 1px solid #aaaaaa;
  }
}
.project-info-body .reservation-box .form-box form .input-box .title {
  color: #333333;
  font-size: 1.1vw;
  font-family: "Noto Sans TC";
  letter-spacing: 0.3em;
  font-weight: 500;
  width: 15%;
}
@media all and (max-width: 1024px) {
  .project-info-body .reservation-box .form-box form .input-box .title {
    font-size: 3.75vw;
    width: 24.5%;
  }
}
.project-info-body .reservation-box .form-box form .input-box input {
  color: #333333;
  font-size: 1.1vw;
  font-family: "Noto Sans TC";
  letter-spacing: 0.15em;
  font-weight: 500;
  width: 83%;
  border: none;
  background: none;
}
@media all and (max-width: 1024px) {
  .project-info-body .reservation-box .form-box form .input-box input {
    font-size: 3.75vw;
    width: 72%;
  }
}
.project-info-body .reservation-box .form-box form .input-box textarea {
  width: 100%;
  background: none;
  resize: none;
  border: none;
  color: #333333;
  font-size: 1.1vw;
  font-family: "Noto Sans TC";
  margin-top: 1vw;
  letter-spacing: 0.15em;
  font-weight: 500;
  outline: none;
  height: 5vw;
}
@media all and (max-width: 1024px) {
  .project-info-body .reservation-box .form-box form .input-box textarea {
    height: 18vw;
    width: 100%;
    margin-top: 3vw;
    font-size: 3.75vw;
    padding-left: 0vw;
  }
}
.project-info-body .reservation-box .form-box form .textarea-box {
  display: flex;
  flex-direction: column;
}
.project-info-body .reservation-box .form-box .button-box {
  cursor: pointer;
  display: flex;
  justify-content: center;
  z-index: 30;
  position: relative;
  padding-top: 0.7vw;
  padding-bottom: 0.7vw;
  border: 2px solid #d9d9d9;
  border-radius: 0.35vw;
  margin-top: 3vw;
  transition: 0.4s ease-in-out;
  width: 70%;
  align-self: center;
}
@media screen and (max-width: 1440px) {
  .project-info-body .reservation-box .form-box .button-box {
    border-bottom: 1px solid #d9d9d9;
  }
}
@media all and (max-width: 1024px) {
  .project-info-body .reservation-box .form-box .button-box {
    border: 1px solid #aaaaaa;
    border-radius: 1vw;
    margin-top: 9vw;
    margin-bottom: 10vw;
    width: 100%;
  }
}
.project-info-body .reservation-box .form-box .button-box::after {
  content: "";
  border-radius: 0.3vw;
  position: absolute;
  left: 0%;
  right: 0%;
  bottom: 0;
  width: 100%;
  z-index: 1;
  height: 0%;
  background-color: #a7a7a7;
  transition: 0.2s ease-in-out;
}
@media all and (max-width: 1024px) {
  .project-info-body .reservation-box .form-box .button-box::after {
    display: none;
    transition: none;
  }
}
.project-info-body .reservation-box .form-box .button-box:hover button {
  color: white;
  z-index: 10;
}
@media all and (max-width: 1024px) {
  .project-info-body .reservation-box .form-box .button-box:hover button {
    color: #333333;
  }
}
.project-info-body .reservation-box .form-box .button-box:hover::after {
  left: 0%;
  right: 0%;
  height: 100%;
}
@media all and (max-width: 1024px) {
  .project-info-body .reservation-box .form-box .button-box:hover::after {
    left: initial;
    right: initial;
    height: initial;
    display: none;
  }
}
.project-info-body .reservation-box .form-box .button-box button {
  background: none;
  color: #333333;
  font-family: "Noto Sans TC";
  font-size: 1.1vw;
  letter-spacing: 0.2em;
  border: none;
  cursor: pointer;
}
@media all and (max-width: 1024px) {
  .project-info-body .reservation-box .form-box .button-box button {
    font-size: 3.75vw;
    padding-top: 2.5vw;
    padding-bottom: 2.5vw;
    width: 100%;
    height: 100%;
  }
}
.project-info-body .mobile-back-link {
  display: none;
}
@media screen and (max-width: 1024px) {
  .project-info-body .mobile-back-link {
    display: flex;
    position: initial;
    right: initial;
    top: initial;
    align-self: center;
    margin-bottom: 10vw;
  }
}
.project-info-body .mobile-back-link img {
  width: 2.5vw;
}
@media screen and (max-width: 1024px) {
  .project-info-body .mobile-back-link img {
    width: 10vw;
  }
}
.project-info-body .map-box {
  width: 100%;
}
.project-info-body .map-box iframe {
  width: 100%;
  height: 600px;
  filter: grayscale(1);
}
@media (max-width: 1024px) {
  .project-info-body .map-box iframe {
    height: 300px;
  }
}
.project-info-body .top-btn {
  position: absolute;
  right: 49vw;
  bottom: 0vw;
  bottom: 10vw;
  cursor: pointer;
  transition: 0.4s ease-in-out;
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-btn {
    display: none;
  }
}
.project-info-body .top-btn:hover {
  transform: translateY(-15%);
}
@media screen and (max-width: 1024px) {
  .project-info-body .top-btn:hover {
    transform: none;
  }
}
.project-info-body .top-btn img {
  width: 2.5vw;
}

.project-nonpublic-body {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  background-color: white;
  padding-bottom: 20vw;
}
@media screen and (max-width: 1024px) {
  .project-nonpublic-body {
    padding-bottom: 40vw;
  }
}
.project-nonpublic-body .top-content-box {
  background-color: #d2d2d2;
  width: 100%;
  position: relative;
  display: flex;
  justify-content: center;
  padding-top: 5vw;
  padding-bottom: 2vw;
  overflow: hidden;
}
@media screen and (max-width: 1024px) {
  .project-nonpublic-body .top-content-box {
    flex-direction: column;
    padding-left: 0vw;
    padding-right: 0vw;
    padding-bottom: 8vw;
    padding-top: 15vw;
  }
}
@media screen and (max-width: 500px) {
  .project-nonpublic-body .top-content-box {
    padding-top: 18vw;
    padding-bottom: 10vw;
  }
}
.project-nonpublic-body .top-content-box .project-box {
  display: flex;
  flex-direction: column;
  align-self: center;
}
@media screen and (max-width: 1024px) {
  .project-nonpublic-body .top-content-box .project-box {
    width: 100%;
    align-items: center;
  }
}
.project-nonpublic-body .top-content-box .project-box .project-name {
  letter-spacing: 0.15em;
  font-family: "Noto Sans TC Regular";
  font-size: 1.3vw;
  margin-bottom: 1.6vw;
  color: #333333;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .project-nonpublic-body .top-content-box .project-box .project-name {
    font-size: 5.8vw;
    align-self: center;
    margin-top: 6vw;
    margin-bottom: 6vw;
  }
}
.project-nonpublic-body .top-content-box .project-box .swiper-box {
  overflow: hidden;
  width: 43vw;
  height: 26vw;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .project-nonpublic-body .top-content-box .project-box .swiper-box {
    width: 88%;
    height: auto;
  }
}
.project-nonpublic-body .top-content-box .project-box .swiper-box img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.project-nonpublic-body .top-content-box .project-box .swiper-box .swiper {
  width: 100%;
}
.project-nonpublic-body .top-content-box .project-box .swiper-box .prev,
.project-nonpublic-body .top-content-box .project-box .swiper-box .next {
  width: 2vw;
  position: absolute;
  top: 11vw;
  z-index: 20;
  cursor: pointer;
  transition: 0.4s ease-in-out;
}
.project-nonpublic-body .top-content-box .project-box .swiper-box .prev {
  left: 1vw;
}
.project-nonpublic-body .top-content-box .project-box .swiper-box .prev:hover {
  transform: translateX(-10%);
}
@media all and (max-width: 1024px) {
  .project-nonpublic-body .top-content-box .project-box .swiper-box .prev:hover {
    transform: none;
  }
}
.project-nonpublic-body .top-content-box .project-box .swiper-box .next {
  right: 1vw;
}
.project-nonpublic-body .top-content-box .project-box .swiper-box .next:hover {
  transform: translateX(10%);
}
@media all and (max-width: 1024px) {
  .project-nonpublic-body .top-content-box .project-box .swiper-box .next:hover {
    transform: none;
  }
}
.project-nonpublic-body .main-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
}
.project-nonpublic-body .main-content .back-link {
  position: absolute;
  right: 4vw;
  top: 18vw;
  transition: 0.4s ease-in-out;
}
@media screen and (max-width: 1024px) {
  .project-nonpublic-body .main-content .back-link {
    position: initial;
    right: initial;
    top: initial;
    display: none;
  }
}
.project-nonpublic-body .main-content .back-link:hover {
  transform: translateX(-15%);
}
@media all and (max-width: 1024px) {
  .project-nonpublic-body .main-content .back-link:hover {
    transform: none;
  }
}
.project-nonpublic-body .main-content .back-link img {
  width: 2.5vw;
}
.project-nonpublic-body .main-content .reservation-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  align-self: center;
  width: 60%;
  margin-top: 2.5vw;
}
@media screen and (max-width: 1024px) {
  .project-nonpublic-body .main-content .reservation-box {
    margin-top: 0vw;
    width: 87%;
    margin-top: 10vw;
  }
}
.project-nonpublic-body .main-content .reservation-box .title-box {
  display: flex;
  flex-direction: column;
  margin-bottom: 3vw;
}
@media screen and (max-width: 1024px) {
  .project-nonpublic-body .main-content .reservation-box .title-box {
    margin-bottom: 5vw;
  }
}
.project-nonpublic-body .main-content .reservation-box .title-box .zh-title {
  color: #333333;
  letter-spacing: 0.15em;
  font-family: "Noto Sans TC Regular";
  font-size: 1.6vw;
  margin-bottom: 0.5vw;
}
@media screen and (max-width: 1024px) {
  .project-nonpublic-body .main-content .reservation-box .title-box .zh-title {
    font-size: 5.2vw;
    margin-bottom: 1vw;
  }
}
.project-nonpublic-body .main-content .reservation-box .title-box .en-title {
  color: #b2b2b2;
  letter-spacing: 0.04em;
  font-family: "Jost";
  font-size: 1.1vw;
}
@media screen and (max-width: 1024px) {
  .project-nonpublic-body .main-content .reservation-box .title-box .en-title {
    font-size: 3.6vw;
  }
}
.project-nonpublic-body .main-content .reservation-box .form-box {
  display: flex;
  width: 65%;
  flex-direction: column;
  padding-top: 1vw;
  justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  .project-nonpublic-body .main-content .reservation-box .form-box {
    width: 100%;
    padding-top: 3vw;
    margin-bottom: 15vw;
  }
}
.project-nonpublic-body .main-content .reservation-box .form-box form {
  width: 100%;
}
.project-nonpublic-body .main-content .reservation-box .form-box form .input-box {
  display: flex;
  width: 100%;
  justify-content: space-between;
  padding-top: 1.2vw;
  padding-bottom: 1.2vw;
  border-bottom: 2px solid #d9d9d9;
}
@media screen and (max-width: 1440px) {
  .project-nonpublic-body .main-content .reservation-box .form-box form .input-box {
    border-bottom: 1px solid #d9d9d9;
  }
}
@media all and (max-width: 1024px) {
  .project-nonpublic-body .main-content .reservation-box .form-box form .input-box {
    padding-top: 4vw;
    padding-bottom: 4vw;
    border-bottom: 1px solid #aaaaaa;
  }
}
.project-nonpublic-body .main-content .reservation-box .form-box form .input-box .title {
  color: #333333;
  font-size: 1.1vw;
  font-family: "Noto Sans TC Regular";
  letter-spacing: 0.3em;
  font-weight: 500;
  width: 15%;
}
@media all and (max-width: 1024px) {
  .project-nonpublic-body .main-content .reservation-box .form-box form .input-box .title {
    font-size: 3.75vw;
    width: 24.5%;
  }
}
.project-nonpublic-body .main-content .reservation-box .form-box form .input-box input {
  color: #333333;
  font-size: 1.1vw;
  font-family: "Noto Sans TC Regular";
  letter-spacing: 0.15em;
  font-weight: 500;
  width: 83%;
  border: none;
  background: none;
}
@media all and (max-width: 1024px) {
  .project-nonpublic-body .main-content .reservation-box .form-box form .input-box input {
    font-size: 3.75vw;
    width: 72%;
  }
}
.project-nonpublic-body .main-content .reservation-box .form-box form .input-box textarea {
  width: 100%;
  background: none;
  resize: none;
  border: none;
  color: #333333;
  font-size: 1.1vw;
  font-family: "Noto Sans TC Regular";
  margin-top: 1vw;
  letter-spacing: 0.15em;
  font-weight: 500;
  outline: none;
  height: 5vw;
}
@media all and (max-width: 1024px) {
  .project-nonpublic-body .main-content .reservation-box .form-box form .input-box textarea {
    height: 18vw;
    width: 100%;
    margin-top: 3vw;
    font-size: 3.75vw;
    padding-left: 0vw;
  }
}
.project-nonpublic-body .main-content .reservation-box .form-box form .textarea-box {
  display: flex;
  flex-direction: column;
}
.project-nonpublic-body .main-content .reservation-box .form-box .button-box {
  cursor: pointer;
  display: flex;
  justify-content: center;
  z-index: 30;
  padding-top: 0.7vw;
  position: relative;
  padding-bottom: 0.7vw;
  border: 2px solid #d9d9d9;
  border-radius: 0.35vw;
  margin-top: 3vw;
  transition: 0.4s ease-in-out;
  width: 70%;
  align-self: center;
}
@media screen and (max-width: 1440px) {
  .project-nonpublic-body .main-content .reservation-box .form-box .button-box {
    border-bottom: 1px solid #d9d9d9;
  }
}
@media all and (max-width: 1024px) {
  .project-nonpublic-body .main-content .reservation-box .form-box .button-box {
    border: 1px solid #aaaaaa;
    border-radius: 1vw;
    margin-top: 9vw;
    margin-bottom: 5vw;
  }
}
.project-nonpublic-body .main-content .reservation-box .form-box .button-box::after {
  content: "";
  border-radius: 0.3vw;
  position: absolute;
  left: 0%;
  right: 0%;
  bottom: 0;
  width: 100%;
  z-index: 1;
  height: 0%;
  background-color: #a7a7a7;
  transition: 0.2s ease-in-out;
}
@media all and (max-width: 1024px) {
  .project-nonpublic-body .main-content .reservation-box .form-box .button-box::after {
    display: none;
  }
}
.project-nonpublic-body .main-content .reservation-box .form-box .button-box:hover button {
  color: white;
  z-index: 10;
}
@media all and (max-width: 1024px) {
  .project-nonpublic-body .main-content .reservation-box .form-box .button-box:hover button {
    color: #333333;
  }
}
.project-nonpublic-body .main-content .reservation-box .form-box .button-box:hover::after {
  left: 0%;
  right: 0%;
  height: 100%;
}
@media all and (max-width: 1024px) {
  .project-nonpublic-body .main-content .reservation-box .form-box .button-box:hover::after {
    left: initial;
    right: initial;
    height: initial;
    display: none;
  }
}
.project-nonpublic-body .main-content .reservation-box .form-box .button-box a {
  z-index: 10;
  position: relative;
}
.project-nonpublic-body .main-content .reservation-box .form-box .button-box button {
  background: none;
  color: #333333;
  font-family: "Noto Sans TC Regular";
  font-size: 1.1vw;
  letter-spacing: 0.2em;
  border: none;
  cursor: pointer;
}
@media all and (max-width: 1024px) {
  .project-nonpublic-body .main-content .reservation-box .form-box .button-box button {
    font-size: 3.75vw;
    padding-top: 2.5vw;
    padding-bottom: 2.5vw;
    width: 100%;
    height: 100%;
  }
}
.project-nonpublic-body .mobile-back-link {
  display: none;
}
@media screen and (max-width: 1024px) {
  .project-nonpublic-body .mobile-back-link {
    display: flex;
    position: initial;
    right: initial;
    top: initial;
    align-self: center;
    margin-bottom: 15vw;
  }
}
.project-nonpublic-body .mobile-back-link img {
  width: 2.5vw;
}
@media screen and (max-width: 1024px) {
  .project-nonpublic-body .mobile-back-link img {
    width: 10vw;
  }
}
.project-nonpublic-body .top-btn {
  position: absolute;
  right: 49vw;
  bottom: 0vw;
  bottom: 10vw;
  cursor: pointer;
  transition: 0.4s ease-in-out;
}
@media screen and (max-width: 1024px) {
  .project-nonpublic-body .top-btn {
    display: none;
  }
}
.project-nonpublic-body .top-btn:hover {
  transform: translateY(-15%);
}
@media all and (max-width: 1024px) {
  .project-nonpublic-body .top-btn:hover {
    transform: none;
  }
}
.project-nonpublic-body .top-btn img {
  width: 2.5vw;
}