/* 字體 */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100;300;400;500;700;900&family=Noto+Serif+TC:wght@200;300;400;500;600;700;900&display=swap");

@font-face {
  font-family: "GOTHIC";
  src: url(../fonts/GOTHIC.TTF);
}

@font-face {
  font-family: "NotoSansCJKjp-Regular";
  src: url(../fonts/NotoSansCJKjp-Regular.otf);
}

body,
html {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  background-color: #f7f8f8;
}

a:link,
a:visited,
a:hover,
a:active {
  text-decoration: none;
}

img {
  display: block;
}

.Futura-Std-Book {
  font-family: "Futura-Std-Book";
}

.all {
  width: 100%;
  height: 100vh;
}

.all-swiper {
  height: 100vh !important;
  -webkit-overflow-scrolling: touch !important;
  transform: translate3d(0, 0, 0);
}

.swiper-wrapper {
  -webkit-perspective: 3000;
  -webkit-backface-visibility: hidden;
  -webkit-overflow-scrolling: touch !important;
}

.all-swiper > .swiper-wrapper > .swiper-slide {
  height: 100%;
  transform: translate3d(0, 0, 0) !important;
  transition-duration: 0ms !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: cover !important;
}

/*header*/
.header {
  width: 100%;
  height: 3vw;
  line-height: 3vw;
  background-color: transparent;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 999;
  border-bottom: 1px solid #a4815b;
}

.header-logo {
  width: 6.2%;
  height: auto;
  position: absolute;
  left: 3.8%;
  top: 50%;
  transform: translateY(-50%);
}

.menu-icon {
  width: 10vw;
  height: 100%;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

.menu-icon-li {
  width: 25%;
  height: 100%;
  float: left;
  display: block;
  box-sizing: border-box;
  position: relative;
  cursor: pointer;
}

.menu-icon-li::after {
  content: "";
  width: 1px;
  height: 1.3vw;
  background-color: #a4815b;
  position: absolute;
  right: 0;
  top: 0.95vw;
}

.menu-icon-li:last-child:after {
  background-color: transparent;
}

.menu-icon-li img {
  display: block;
}

.phone {
  padding: 15% 4.5% 0 8%;
}

.fb {
  padding: 9.5% 8% 0 10.5%;
}

.locate {
  padding: 9.5% 7% 0 10%;
}

.book {
  padding: 11% 5% 0 0;
}

.phone::after {
  right: -1vw;
}

.locate::after {
  right: -0.2vw;
}

.book::after {
  right: -0.3vw;
}

.header-w {
  border-bottom: 1px solid #fff;
}

.header-w .menu-icon-li::after {
  background-color: #fff !important;
}

.header-w .menu-icon-li:last-child:after {
  background-color: transparent !important;
}

/*頁面1*/
.main1 {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  transform: translate3d(0, 0, 0) !important;
  transition-duration: 0ms !important;
}

.main1-pic1 {
  width: 15.5%;
  height: auto;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 11vw;
}

.main1-pic2 {
  width: 100%;
  height: auto;
  position: absolute;
  left: 0;
  top: 0;
  transform: scale(1.1);
  animation: main1-pic2 5s linear;
  animation-delay: 0;
  animation-fill-mode: forwards;
}

@keyframes main1-pic2 {
  0% {
    transform: scale(1.1);
  }

  100% {
    transform: scale(1);
  }
}

.main1-txt {
  color: #a5805b;
  font-size: 1.05vw;
  font-weight: 600;
  font-family: "NotoSansCJKjp-Regular";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 19.5vw;
  letter-spacing: 0.6vw;
  text-indent: 0.6vw;
}

/*頁面2345*/
.main2 {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  transform: translate3d(0, 0, 0) !important;
  transition-duration: 0ms !important;
}

.main2-txt {
  width: 25%;
  height: auto;
  position: absolute;
  left: 3.8%;
  transform: translateY(-50%);
  top: 50%;
  font-family: "NotoSansCJKjp-Regular";
  z-index: 1;
  color: #fff;
}

.main2-txt h2 {
  width: 100%;
  font-size: 1.6vw;
  letter-spacing: 0.15vw;
  line-height: 3vw;
  position: relative;
  margin: 0 0 0.5vw 0;
  font-weight: normal;
}

.main2-txt h4 {
  width: 100%;
  box-sizing: border-box;
  font-size: 1vw;
  line-height: 2.1vw;
  letter-spacing: 0.05vw;
  position: relative;
  margin: 0 auto;
  text-align: justify;
  text-justify: inter-ideograph;
  font-weight: normal;
}

.banner-txt {
  height: 1.5vw;
  line-height: 1.5vw;
  background-color: rgba(255, 255, 255, 0.75);
  position: absolute;
  right: 1vw;
  bottom: 1vw;
  font-family: "NotoSansCJKjp-Regular";
  color: #3e3a39;
  font-size: 0.9vw;
  letter-spacing: 0.1vw;
  box-sizing: border-box;
  padding: 0 0.2vw 0 0.5vw;
}

/*頁面5*/
.main5 {
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  position: absolute;
  transform: translate3d(0, 0, 0) !important;
  transition-duration: 0ms !important;
}

.main5-txt {
  width: 38%;
  transform: none;
  top: 6vw;
}

/*頁面6789*/
.main6 {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  transform: translate3d(0, 0, 0) !important;
  transition-duration: 0ms !important;
}

.main6-banner {
  width: 100%;
  height: auto;
  position: relative;
}

.main6-banner .swiper-container {
  height: 100%;
}

.main6-banner .swiper-container .swiper-slide {
  width: 100%;
  height: 100%;
}

.main6-img {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.main6-img-ani {
  width: 73.5%;
  height: calc(100vh - 3vw);
  position: relative;
  margin: 3vw 0 0 26.5%;
  overflow: hidden;
}

.main6-img2 {
  width: 73.5%;
  height: calc(100vh - 3vw);
  position: relative;
  margin: 3vw 0 0 26.5%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.main6 .swiper-pagination {
  width: 20vw;
  top: 79%;
  left: 10.6vw;
  bottom: auto;
}

.main6 .swiper-pagination-bullet {
  background-image: url(../img/dot2.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  width: 0.8vw;
  height: 0.8vw;
  margin-left: 0.5vw !important;
  margin-right: 0.5vw !important;
  opacity: 1;
  border: none;
  background-color: transparent !important;
  border-radius: 0;
}

.main6 .swiper-pagination-bullet-active {
  background-image: url(../img/dot1.png);
  background-color: transparent;
}

.main6-txt {
  width: 18%;
  height: auto;
  position: absolute;
  left: 3.8vw;
  top: 50%;
  transform: translateY(-50%);
  font-family: "NotoSansCJKjp-Regular";
  z-index: 1;
  color: #3e3a39;
}

.main6-txt h2 {
  width: 100%;
  font-size: 1.6vw;
  letter-spacing: 0.15vw;
  line-height: 3vw;
  position: relative;
  margin: 0 0 1vw 0;
  font-weight: normal;
}

.main6-txt h4 {
  width: 100%;
  box-sizing: border-box;
  font-size: 1vw;
  line-height: 2.1vw;
  letter-spacing: 0.05vw;
  position: relative;
  margin: 0 auto;
  text-align: justify;
  text-justify: inter-ideograph;
  font-weight: normal;
}

.main6-txt h5 {
  width: 100%;
  box-sizing: border-box;
  color: #4b4948;
  font-size: 0.9vw;
  line-height: 1.5vw;
  letter-spacing: 0.05vw;
  position: relative;
  margin: 3vw auto 0 5vw;
  font-weight: lighter;
}

.main7-txt-img {
  width: 57%;
  position: relative;
  margin: 1.5vw auto 0 auto;
}

/*頁面10*/
.main10 {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  transform: translate3d(0, 0, 0) !important;
  transition-duration: 0ms !important;
}

.main10-banner {
  width: 100%;
  height: 100vh;
  position: relative;
}

.main10-banner .swiper-container {
  height: 100%;
}

.main10-banner .swiper-container .swiper-slide {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  width: 100%;
  height: 100%;
}

.main10 .swiper-pagination {
  bottom: 5vw;
}

.main10 .swiper-pagination-bullet {
  background-image: url(../img/dot2.png);
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  width: 0.8vw;
  height: 0.8vw;
  margin-left: 0.5vw !important;
  margin-right: 0.5vw !important;
  opacity: 1;
  border: none;
  background-color: transparent;
  border-radius: 0;
}

.main10 .swiper-pagination-bullet-active {
  background-image: url(../img/dot1.png);
  background-color: transparent;
}

.main10-txt {
  width: 40%;
  height: auto;
  position: absolute;
  left: 20vw;
  transform: translateY(-50%);
  top: 50%;
  font-family: "NotoSansCJKjp-Regular";
  color: #3e3a39;
}

.main10-txt-li {
  height: 3.2vw;
  display: inline-block;
  margin: 0 0 -0.3vw 0;
}

.main10-txt h1 {
  width: 100%;
  font-size: 2vw;
  letter-spacing: 0.1vw;
  line-height: 2.5vw;
  position: relative;
  margin: 0 0 0.1vw 0;
  font-weight: normal;
}

.main10-txt h2 {
  width: 100%;
  font-size: 2.2vw;
  letter-spacing: 0.05vw;
  line-height: 3vw;
  position: relative;
  margin: 0 0 1.8vw 0;
  font-weight: normal;
  font-family: "GOTHIC";
}

.main10-txt h2::after {
  content: "";
  width: 118%;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: -0.8vw;
  background-color: #3e3a39;
}

.main10-txt h3 {
  width: 100%;
  font-size: 1.35vw;
  letter-spacing: 0.01vw;
  line-height: 1.5vw;
  position: relative;
  margin: 0 0 2.5vw 0;
  font-weight: normal;
}

.main10-txt h4 {
  width: 100%;
  font-size: 1.25vw;
  letter-spacing: 0.05vw;
  line-height: 1.5vw;
  position: relative;
  margin: 0 0 0.8vw 0;
  font-weight: bold;
}

.main10-txt h5 {
  width: 100%;
  box-sizing: border-box;
  font-size: 1.1vw;
  line-height: 1.8vw;
  letter-spacing: 0.05vw;
  position: relative;
  margin: 0 auto;
  text-align: justify;
  text-justify: inter-ideograph;
  font-weight: normal;
}

.main10-txt-space {
  margin-top: 2vw;
}

.main10-img {
  width: 25vw;
  position: absolute;
  right: 20vw;
  top: 50%;
  transform: translateY(-50%);
}

.main10-pic {
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
}

/*頁面11&12*/
.main11 {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  transform: translate3d(0, 0, 0) !important;
  transition-duration: 0ms !important;
}

.main11-banner {
  width: 100%;
  height: auto;
  position: relative;
}

.main11-banner .swiper-container {
  height: 100%;
}

.main11-banner .swiper-container .swiper-slide {
  width: 100%;
  height: 100%;
}

.main11-img {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.main11-img-ani {
  width: 73.5%;
  height: calc(100vh - 3vw);
  position: relative;
  margin: 3vw 0 0 0;
  overflow: hidden;
}

.main11-img2 {
  width: 73.5%;
  height: calc(100vh - 3vw);
  position: relative;
  margin: 3vw 0 0 0;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.main11 .swiper-pagination {
  width: 20vw;
  top: 87%;
  left: auto;
  right: -4.5vw;
  bottom: auto;
}

.main11 .swiper-pagination-bullet {
  background-image: url(../img/dot2.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  width: 0.8vw;
  height: 0.8vw;
  margin-left: 0.5vw !important;
  margin-right: 0.5vw !important;
  opacity: 1;
  border: none;
  background-color: transparent !important;
  border-radius: 0;
}

.main11 .swiper-pagination-bullet-active {
  background-image: url(../img/dot1.png);
  background-color: transparent;
}

.main11-txt {
  width: 18.5%;
  height: auto;
  position: absolute;
  right: 3.8vw;
  top: 50%;
  transform: translateY(-50%);
  font-family: "NotoSansCJKjp-Regular";
  z-index: 1;
  color: #3e3a39;
}

.main11-txt h2 {
  width: 100%;
  font-size: 1.6vw;
  letter-spacing: 0.15vw;
  line-height: 3vw;
  position: relative;
  margin: 0 0 1.7vw 0;
  font-weight: 600;
}

.main11-txt h4 {
  width: 100%;
  box-sizing: border-box;
  font-size: 1vw;
  line-height: 2.1vw;
  letter-spacing: 0.05vw;
  position: relative;
  margin: 2vw auto 0 auto;
  text-align: justify;
  text-justify: inter-ideograph;
  font-weight: normal;
}

/*main14*/
.main14 {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  transform: translate3d(0, 0, 0) !important;
  transition-duration: 0ms !important;
}

.main14-logo {
  width: 23vw;
  position: relative;
  margin: 6.8vw auto 2vw auto;
}

.main14-txt {
  width: 100%;
  margin: 0 auto 0 auto;
  font-family: "NotoSansCJKjp-Regular";
  color: #3e3a39;
  letter-spacing: 0.15vw;
  font-size: 1.6vw;
  line-height: 5vw;
  text-align: center;
  font-weight: 500;
}

.main14-m {
  width: 64%;
  margin: 0 auto;
}

.main14-m::after {
  content: "";
  clear: both;
  display: block;
}

.map-b {
  width: 35%;
  margin: 2.5vw auto 0 0;
  float: left;
}

.form {
  width: 56%;
  position: relative;
  height: auto;
  float: left;
  margin: 2vw auto 0 9%;
  font-family: "NotoSansCJKjp-Regular";
}

.form-title {
  width: 100%;
  margin: 0 auto 0.7vw auto;
  height: auto;
  text-align: center;
  font-family: "NotoSansCJKjp-Regular";
  color: #4c4948;
  font-size: 1.2vw;
  letter-spacing: 0.7vw;
  font-weight: 600;
}

.form input[type="text"] {
  width: 100%;
  height: 3vw;
  line-height: 3vw;
  font-size: 1.1vw;
  border: none;
  border-bottom: 1px solid #cfcfcf;
  background-color: transparent;
  color: #3e3a39;
  box-sizing: border-box;
  -webkit-appearance: none;
  -webkit-border-radius: 0px;
  -moz-appearance: none;
  outline: none;
  letter-spacing: 0.1vw;
  position: relative;
  font-family: "NotoSansCJKjp-Regular";
}

.form input[type="text"]:first-child {
  border-top: 1px solid #3e3a39;
}

.form input::placeholder {
  color: #3e3a39 !important;
}

.check-item-sex {
  width: 100%;
  position: relative;
  height: 3vw;
  line-height: 3vw;
  font-size: 1.1vw;
  z-index: 1;
  color: #3e3a39;
  letter-spacing: 0.1vw;
  border-bottom: 1px solid #cfcfcf;
  font-family: "NotoSansCJKjp-Regular";
}

.check-item-sex label {
  height: 3vw;
  line-height: 3vw;
  cursor: pointer;
  margin-right: 3%;
}

.check-item-sex label input[type="radio"] {
  width: 1.1vw;
  height: 1.1vw;
  margin: 0 1% -0.5% 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-border-radius: 0px;
  background: url(../img/check.png) no-repeat top center;
  background-size: 1.1vw 1.1vw;
  border: none;
  cursor: pointer;
}
.check-item-sex label input:checked {
  background: url("../img/checked.png") no-repeat top center;
  background-size: 1.1vw 1.1vw;
}

.check-item {
  height: 3vw;
  line-height: 3vw;
  font-size: 1.1vw;
  color: #3e3a39;
  margin: 0 auto 0 auto;
  vertical-align: middle;
}

.check-label {
  width: 9vw;
  float: left;
}

.check-item label {
  height: 3vw;
  line-height: 3vw;
  cursor: pointer;
  display: block;
}

.check-item label input {
  width: 1.1vw;
  height: 1.1vw;
  margin: 0% 0.5% -2.5% 0;
  -webkit-appearance: none;
  -webkit-border-radius: 0px;
  -moz-appearance: none;
  appearance: none;
  background: url(../img/check.png) no-repeat top center;
  background-size: 1.1vw 1.1vw;
  border: none;
}
.check-item label input:checked {
  background: url("../img/checked.png") no-repeat top center;
  background-size: 1.1vw 1.1vw;
}

.agreeBtn {
  width: fit-content;
  height: 3vw;
  float: left;
  cursor: pointer;
}

.openTxtBtn {
  display: inline-block;
  font-size: 1.1vw;
  line-height: 2vw !important;
  white-space: nowrap;
  border-bottom: 1px solid #3e3a39;
}

.form input[type="submit"] {
  height: 2.3vw;
  line-height: 2.3vw;
  letter-spacing: 0.01vw;
  border: none;
  border-bottom: 1px solid #3e3a39;
  background-color: transparent;
  font-size: 1.1vw !important;
  color: #3e3a39;
  border-radius: 0;
  -webkit-appearance: none;
  -webkit-border-radius: 0px;
  outline: none;
  float: right;
  text-align: center !important;
  margin: 0.3vw 0 0 0;
  font-family: "NotoSansCJKjp-Regular";
  cursor: pointer;
  padding: 0;
}

.information {
  width: 64%;
  margin: 1vw auto 0 auto;
  position: relative;
}

.information::before{
  content: '';
  width: 102%;
  height: 1px;
  position: absolute;
  top: -1.5vw;
  left: 50%;
  transform: translateX(-50%);
  background-color: #9fa0a0;
}

/*同意書照片預覽*/

.black {
  display: none;
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0px;
  top: 0px;
  background-color: rgba(0, 0, 0, 0.9);
  z-index: 11111;
  font-family: "微軟正黑體";
}
.closeBtn {
  width: 30px;
  position: absolute;
  right: 5%;
  top: 4%;
  cursor: pointer;
}

.infoWrap {
  width: 100%;
  margin: 0 auto;
  max-width: 47%;
  position: relative;
  height: 100vh;
  overflow: auto;
}

.infoWrap ul {
  list-style: none;
  font-size: 1vw;
  padding-inline-start: 2vw;
}

.infoWrap ul > li > ul {
  list-style: none;
  font-size: 1vw;
  padding-inline-start: 1vw;
}

.li1::before {
  content: "一、";
  position: absolute;
  left: 0vw;
}

.li2::before {
  content: "二、";
  position: absolute;
  left: 0vw;
}

.li3::before {
  content: "三、";
  position: absolute;
  left: 0vw;
}

.li4::before {
  content: "四、";
  position: absolute;
  left: 0vw;
}

.li5::before {
  content: "五、";
  position: absolute;
  left: 0vw;
}

.li1-li::before {
  content: "（１）";
  position: absolute;
  left: 0vw;
}

.li2-li::before {
  content: "（２）";
  position: absolute;
  left: 0vw;
}

.li3-li::before {
  content: "（３）";
  position: absolute;
  left: 0vw;
}

.li4-li::before {
  content: "（４）";
  position: absolute;
  left: 0vw;
}

.infoBox {
  width: 100%;
  height: calc(100% - 150px);
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  overflow-y: auto;
  color: #fff;
  text-align: left;
}

.infoBox h3 {
  font-size: 1.5vw;
  line-height: 130%;
  margin-bottom: 25px;
  text-align: center;
}

.infoBox h4 {
  font-size: 1.1vw;
  line-height: 130%;
  margin-bottom: 25px;
}

.infoBox h5 {
  font-size: 1.5vw;
  line-height: 130%;
  margin-bottom: 25px;
}

.infoBox p {
  font-size: 1.1vw;
  line-height: 150%;
}
