@charset "utf-8";

body {
  overflow-x: hidden;
}

.footer {
  color: #fff;
  background-color: #a38b78;
  text-align: center;
  padding: 24px 15px;
  margin-bottom: 67px;
}

.footer a {
  color: #ffd95a;
}

@media (min-width: 992px) {
  .footer {
    margin-bottom: 0;
  }
}

.share {
  margin: 8px 0;
}

.share img {
  margin: 0 2px;
}

.backtop {
  position: fixed;
  z-index: 99;
  width: 48px;
  height: 48px;
  left: 100%;
  top: 100%;
  margin-top: -130px;
  margin-left: -64px;
  padding: 7px;
  background-color: rgba(000, 000, 000, 0.5);
  text-align: center;
  color: #fff;
  font-size: 1.3rem;
  border-radius: 50%;
  cursor: pointer;
  -webkit-transition: background 0.3s;
  /* Safari */
  transition: background 0.3s;
}

.backtop:hover {
  background-color: #a38b77;
}

@media (min-width: 992px) {
  .backtop {
    margin-top: -130px;
  }
}

/*==========header css==========*/

.fadeInRight {
  -webkit-animation: fadeInRight 0.4s;
  /* Safari 4+ */
  -moz-animation: fadeInRight 0.4s;
  /* Fx 5+ */
  -o-animation: fadeInRight 0.4s;
  /* Opera 12+ */
  animation: fadeInRight 0.4s;
  /* IE 10+, Fx 29+ */
}

.social_content {
  position: fixed;
  z-index: 99;
  top: 100%;
  left: 0;
  margin-top: -68px;
  height: 68px;
  width: 100%;
  background-color: #37516c;
  text-align: center;
}

.social_content .social_item {
  float: left;
  width: 25%;
  margin: 8px 0;
}

.social_content .social_item a {
  color: #fff;
  font-size: 1.3rem;
  text-decoration: none;
}

.social_content .social_item a:hover {
  color: #76ace4;
}

.social_content .social_item a span {
  font-size: 0.8rem;
  display: block;
}

@media (min-width: 992px) {
  .social_content {
    position: fixed;
    z-index: 99;
    top: 33%;
    left: 100%;
    margin-left: -90px;
    width: 330px;
    padding: 15px;
    border-radius: 30px;
    background-color: transparent;
    text-align: center;
  }

  .social_content .social_item {
    float: none;
    text-align: center;
    border-bottom: 1px solid #37516c;
    padding: 15px 8px;
  }

  .social_content .social_item:last-child {
    border-bottom: none;
  }

  .social_content .social_item a {
    color: #37516c;
  }

  .social_item_fb {
    padding-left: 3px;
  }
}

/*@media (min-width:1920px){
	.social_content{ top:65%; margin-top:-350px;}
}*/

/*========================================================
                     main css
=========================================================*/
.view_lg {
  display: none;
}

@media (min-width: 992px) {
  .view_sm {
    display: none;
  }

  .view_lg {
    display: block;
  }
}

/*========================================================
                     top_banner
=========================================================*/
.top_banner_block {
  min-height: 90vh;
  padding: 55% 0;
}

.top_banner_block video {
  width: 100%;
  height: 300px;
}

@media (min-width: 992px) {
  .top_banner_block {
    min-height: 100vh;
    padding: 0;
  }

  .top_banner_block video {
    height: 800px;
  }
}

/*========================================================
                     360
=========================================================*/
.panorama_block {
  position: relative;
}

.panorama_block .text {
  position: absolute;
  top: 20px;
  width: 100%;
  z-index: 10;
}

.panorama_block .text p {
  text-align: center;
  color: #fff;
}

@media (min-width: 768px) {
  .panorama_block .text {
    top: 50px;
  }

  .panorama_block .text p {
    font-size: 1.7rem;
  }
}

/*========================================================
                     內頁設定
=========================================================*/

.top_block img {
  width: 100%;
}

.top_block .container-fluid {
  padding: 40px 20px;
}

@media (min-width: 1024px) {
  .top_block .container-fluid {
    padding: 80px 100px;
  }
}

@media (min-width: 1440px) {
  .top_block .container-fluid {
    padding: 80px 200px;
  }
}

.top_block .text_block .title {
  padding-bottom: 35px;
}

.top_block .text_block p {
  color: #717071;
  font-family: "華康中明體(P)", Geneva, sans-serif;
  font-size: 1rem;
}

.top_block .pic_block {
  padding-bottom: 30px;
}

@media (min-width: 768px) {
  .top_block .text_block p {
    font-size: 1.1rem;
    line-height: 1.7;
  }
}

.block1 {
  position: relative;
  padding-bottom: 90px;
}

.block1 .pic_block {
  position: relative;
}

.block1 .pic_block .text {
  position: absolute;
  z-index: 10;
  right: 5%;
  bottom: 10%;
  color: #fff;
  text-shadow: 1px 1px 3px #000;
}

.block1 .text_block .title {
  max-width: 80%;
}

.block1 .deco {
  position: absolute;
  left: 10%;
  top: 7%;
  z-index: 10;
}

.block1 .deco img {
  max-width: 14%;
}

.block1 .container-fluid .text_block .text p {
  margin-bottom: unset;
}

.block2 {
  position: relative;
}

.block2 .pic_block {
  position: relative;
}

.block2 .pic_block .decotext {
  position: absolute;
  bottom: 9%;
  left: 0;
}

/*.block2 .pic_block .decotext img{ max-width:40%;}*/
.block2 .text_block .decotext {
  text-align: right;
  padding-bottom: 15px;
}

.block2 .text_block .decotext img {
  max-width: 35%;
}

.block2 .pic_block .pic {
  text-align: right;
}

.block2 .pic_block .pic img {
  max-width: 90%;
}

.block2 .text_block .text p {
  text-align: right;
}

.block2 .deco {
  position: absolute;
  top: 0;
  left: 5%;
  mix-blend-mode: multiply;
}

.block2 .deco img {
  max-width: 60%;
}

.block2_slide_block .title {
  padding: 0 15px 15px 15px;
}

.block2_slide_block .title img {
  max-width: 100%;
}

.block2_slide_block .slider {
  padding-bottom: 10px;
  z-index: 50;
}

.block2_slide_block .slider_item {
  position: relative;
  padding: 0 10px;
}

.block2_slide_block .slider_item .text {
  position: absolute;
  right: 19px;
  bottom: 5px;
  z-index: 10;
  color: #fff;
}

.block2_slide_block .text_block {
  padding: 0 15px;
}

.slick-dots li button:before {
  content: "　";
  border: 1px solid #a8a8a9;
  border-radius: 50%;
  width: 15px;
  height: 15px;
  opacity: 1;
}

.slick-dots li.slick-active button:before {
  background-color: #a8a8a9;
}

.slick-dots li {
  margin: 0 2px;
}

.block3 {
  background: url(../img/block3_bg.png) right 9% no-repeat;
  background-size: 50%;
  position: relative;
}

.block3 .decotext {
  padding-bottom: 20px;
}

.block3 .decotext img {
  max-width: 35%;
}

.block3 .deco {
  position: absolute;
  left: 0;
  top: -4%;
  max-width: 20%;
}

.block4 .text1 {
  padding-bottom: 25%;
}

.block4 .text1 .pic {
  padding-bottom: 8%;
}

.block4 .text1 .text_block {
  display: flex;
}

.block4 .text1 .text_block .title {
  max-width: 11%;
}

.block4 .text1 .text_block .text {
  padding-left: 25px;
}

.block4 .text1 .text_block .text .decotext {
  padding-bottom: 20px;
}

.block4 .text1 .text_block .text .decotext img {
  max-width: 35%;
}

.block4 .slide_block {
  background: url(../img/block4_bgs.jpg) right top no-repeat;
  background-size: 90%;
  /*margin-top:-10%;*/
  padding-top: 14%;
}

.block4 .slide_block .slide {
  max-width: 90%;
  margin-bottom: 13%;
}

.block4 .slide_block .text_block {
  padding-left: 10px;
}

.block4 .slide_block .decotext {
  padding-bottom: 15px;
}

.block4 .slide_block .decotext img {
  max-width: 35%;
}

.block4 .slide_block .title {
  padding-bottom: 20px;
}

.block4 .slide_block .title img {
  max-width: 80%;
}

.block4 .carousel-indicators {
  margin-bottom: -2.2rem;
}

.block4 .carousel-indicators [data-bs-target] {
  width: 15px;
  height: 15px;
  margin: 5px;
  border-radius: 50%;
  background: transparent;
  border: 1px solid #bebdbd;
  opacity: 1;
}

.block4 .carousel-indicators .active {
  background: #bebdbd;
}

/*.block5{ background:url(../img/block5_bg.jpg) center center no-repeat; background-size:100%; background-color:#e9e9e9;}
.block5 .container-fluid{ padding-top:0; padding-bottom:0;}
.block5 .slide{ max-width:85%; margin:0 auto;}*/

.video_block {
  position: relative;
  aspect-ratio: 16 / 9;
}

.video_block iframe {
  display: block;
  width: 100% !important;
  height: auto !important;
  pointer-events: none !important;
  aspect-ratio: 16 / 9;
}

@media screen and (min-width: 992px) {
  .video_block {
    aspect-ratio: 2 / 1;
  }

  .video_block iframe {
    aspect-ratio: 2 / 1;
  }
}

@media (min-width: 768px) {
  .block1 {
    padding-bottom: 0;
  }

  .block1 .pic_block img {
    float: right;
    max-width: 90%;
  }

  .block1 .pic_block .text {
    right: 3%;
    bottom: 8%;
  }

  .block1 .text_block {
    position: absolute;
    z-index: 10;
    left: 7%;
    top: 55%;
    padding: 25px 40px;
    background-color: #fff;
    max-width: 450px;
  }

  .block1 .text_block .title {
    max-width: 100%;
  }

  .block1 .deco {
    position: absolute;
    left: 5%;
    top: 7%;
    z-index: 10;
  }

  .block1 .deco img {
    max-width: 10%;
  }

  .block2 {
    padding-top: 23%;
    padding-bottom: 3%;
  }

  .block2 .deco img {
    max-width: 40%;
  }

  .block2 .pic_block .pic img {
    max-width: 65%;
  }

  .block2 .pic_block .decotext {
    bottom: 6%;
    left: 28%;
  }

  .block2 .pic_block .decotext img {
    max-width: 14%;
  }

  .block2_slide_block .container-fluid {
    padding: 0;
  }

  .block2_slide_block .slider {
    max-width: 100%;
    padding-left: 15%;
  }

  .block2_slide_block .title {
    text-align: right;
    padding: 0 8% 20px 0;
  }

  .block2_slide_block .title img {
    max-width: 50%;
  }

  .block2_slide_block .slick-dots {
    text-align: left;
    padding-left: 10px;
  }

  .block3 .deco {
    left: 0;
    top: -18%;
    max-width: 17%;
  }
}

@media (min-width: 992px) {
  .block1 .deco {
    left: 5%;
    top: 7%;
  }

  .block1 .deco img {
    max-width: 14%;
  }

  .block1 .pic_block .text {
    right: 2%;
    bottom: 6%;
  }

  .block2 {
    padding-top: 13%;
  }

  .block2 .deco {
    top: 17%;
    left: 5%;
  }

  .block2 .deco img {
    max-width: 62%;
  }

  .block2_slide_block .text_block {
    text-align: right;
    margin-top: -29px;
    padding-right: 7%;
  }

  .block3 .text_block {
    position: relative;
  }

  .block3 .text_block .content {
    position: absolute;
    left: 10px;
    bottom: 10px;
  }

  .block3 .decotext img {
    max-width: 9%;
  }

  .block4 {
    background: none;
  }

  .block4 .pic_block {
    margin-top: -12%;
    position: relative;
  }

  .block4 .pic_block .text1 {
    position: absolute;
    top: 41%;
    left: 58%;
    z-index: 10;
    display: flex;
  }

  .block4 .pic_block .text1 .title {
    max-width: 9.5%;
  }

  .block4 .pic_block .text1 .text_block {
    padding-left: 5%;
    padding-top: 38%;
  }

  .block4 .pic_block .text2 {
    position: absolute;
    bottom: 18%;
    left: 52%;
    z-index: 10;
  }

  .block4 .pic_block .text2 .title {
    max-width: 60%;
  }

  .block4 .pic_block .text2 .text_block {
    padding-top: 7%;
  }

  .video_block video {
    height: 850px;
  }
}

@media (min-width: 1920px) {
  .block1 .deco {
    left: 10%;
    top: 7%;
  }

  .block1 .pic_block .text {
    right: 2%;
    bottom: 5%;
  }

  .block2 {
    padding-top: 0;
  }

  .block2 .pic_block .decotext {
    bottom: 3%;
    left: 31%;
  }

  .block2 .deco {
    top: 0%;
    left: 5%;
  }

  .block2 .deco img {
    max-width: 50%;
  }

  .block4 .pic_block .text1 {
    left: 52%;
  }

  .block4 .pic_block .text2 {
    bottom: 22%;
  }
}

/*========================================================
                     聯絡區塊
=========================================================*/

.top_contact_block .top_box {
  padding-bottom: 10%;
  border-bottom: 1px solid #000;
}

.top_contact_block .logo_block {
  padding-bottom: 40px;
}

.top_contact_block .logo_block img {
  max-width: 40%;
  margin: 0 auto;
  display: block;
}

/*表單樣式*/
/*#form1 label{ color:#424866; text-align:left;}*/
#form1 .form-group {
  padding-bottom: 20px;
}

#form1 .form-control {
  border-radius: 0;
}

#form1 input,
#form1 textarea {
  background: transparent;
  box-shadow: rgba(146, 147, 146, 0.2) -3px 6px 10px 0px inset;
}

#form1 .footer-box a {
  color: #424866;
  text-decoration: underline;
}

#form1 .footer-box a:hover {
  color: #8296e0;
  transition: all 0.3s;
}

#form1 button {
  padding: 10px 30px;
  background: url(../img/send_btn.jpg) top left no-repeat;
  background-size: cover;
  color: #fff;
  width: 100%;
  border-radius: 0;
  font-family: "華康中明體(P)", Geneva, sans-serif;
  letter-spacing: 1px;
  font-size: 1.3rem;
  transition: all 0.3s;
}

#form1 button:hover {
  color: #f4e829;
}

#form1 select {
  color: #4c4948;
  width: 47%;
  height: 38px;
  padding: 4px 12px;
  font-size: 16px;
  background: transparent;
  border: 1px solid #ced4da;
  box-shadow: rgba(146, 147, 146, 0.2) -3px 6px 10px 0px inset;

  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  background-image: url(../img/arrow.png);
  background-repeat: no-repeat;
  background-position: center right;
  background-size: 24px auto;
}

#form1 select:first-child {
  margin-right: 6%;
}

#form1 #twzipcode input {
  display: none;
}

#form1 label {
  color: #38526c;
}

#form1 .for_room select {
  width: 100%;
}

#form1 .custom-control-label::before {
  border-radius: 0;
  border: 1pa solid #c2c0be;
  background-color: transparent;
  color: #000;
}

#form1
  .custom-checkbox
  .custom-control-input:checked
  ~ .custom-control-label::after {
  background-color: #424866;
}

#form1 .check_box {
  text-align: center;
}

.top_contact_block .map_block {
  padding: 2% 0;
  border-bottom: 1px solid #000;
  margin-bottom: 4%;
}

.top_contact_block .map_block iframe {
  width: 100%;
  height: 500px;
}

/*--google recaptcha 隱藏----*/
.grecaptcha-badge {
  visibility: hidden;
}

@media (min-width: 768px) {
  .top_contact_block .logo_block img {
    max-width: 75%;
  }

  #form1 select {
    width: 47%;
  }

  .top_contact_block .map_block {
    margin-bottom: 2%;
  }
}

@media (min-width: 992px) {
  .top_contact_block .logo_block img {
    max-width: 40%;
  }
}

@media (min-width: 1920px) {
  .top_contact_block .logo_block img {
    max-width: 32%;
  }

  #form1 select {
    width: 48%;
  }

  #form1 select:first-child {
    margin-right: 4%;
  }
}

/*------------------cookies--------------------*/

#cookies-box {
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 9999999;
  background-color: rgba(0, 0, 0, 0.9);
  padding: 50px 50px;
  width: 100%;
  font-size: 1rem;
  line-height: 36px;
  color: #fff;
  /*	display: none;*/
}

#cookies-box h4 {
  font-size: 1.3rem;
  font-weight: bold;
}

#cookies-box p {
  margin: 0;
}

#cookies-box a {
  color: #fff;
  border-bottom: 2px solid #37516c;
  padding-bottom: 2px;
  margin: 0 3px;
}

#cookies-box .cookies-btn {
  margin-top: 10px;
  text-align: center;
}

#cookies-box .cookies-btn a {
  display: inline-block;
  width: 140px;
  border: 1px solid #fff;
  color: #fff;
  text-decoration: none;
  text-align: center;
}

#cookies-box .cookies-btn a:hover {
  background-color: #76ace4;
  border-color: #60c1a1;
}

@media (min-width: 992px) {
  #cookies-box .cookies-btn {
    margin-top: -5px;
    margin-left: 50px;
  }
}

.privacy_block .container-fluid {
  max-width: 1200px;
}

.privacy_block h3 {
  color: #555;
  font-weight: 700;
  border-bottom: 1px solid #ccc;
  padding-bottom: 15px;
  margin-bottom: 15px;
}
