/* CSS Document */
.textEditor.descriptionBox .btn1 a::before {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

@-webkit-keyframes location {
  0%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  70% {
    -webkit-transform: translateY(-4px);
            transform: translateY(-4px);
  }
}

@keyframes location {
  0%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  70% {
    -webkit-transform: translateY(-4px);
            transform: translateY(-4px);
  }
}
@-webkit-keyframes filter {
  to {
    -webkit-filter: brightness(10);
            filter: brightness(10);
  }
}
@keyframes filter {
  to {
    -webkit-filter: brightness(10);
            filter: brightness(10);
  }
}
@-webkit-keyframes color {
  to {
    color: #fff;
  }
}
@keyframes color {
  to {
    color: #fff;
  }
}
@-webkit-keyframes background {
  to {
    background: #746c65;
  }
}
@keyframes background {
  to {
    background: #746c65;
  }
}
.mainArea {
  overflow: hidden;
}
@media (min-width: 1201px) {
  .mainArea {
    margin-top: 37px;
  }
}

.classBoxRow {
  margin: 20px 0 20px;
  text-align: center;
}
.classBoxRow .classCurrent {
  display: block;
  opacity: 1;
  pointer-events: auto;
  visibility: initial;
  text-align: left;
  letter-spacing: 0.5px;
  cursor: pointer;
  padding: 10px 40px 10px 20px;
}
.classBoxRow .classContent {
  display: inline-block;
  min-width: 200px;
}
.classBoxRow .classLink {
  display: block;
  width: 100%;
  background-color: #fff;
  -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
          box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1;
}
.classBoxRow .classLink.open {
  display: block;
}
.classBoxRow .classLink > li {
  margin: 0;
}
.classBoxRow .classLink > li:not(:first-child) {
  border-top: 1px solid #ccc;
}
.classBoxRow .classLink > li > a.current {
  color: #746c65;
}
.classBoxRow .classLink a {
  min-width: auto;
  height: auto;
  border: 0;
  color: #2f2f2f;
  background-color: #fff;
  display: block;
  text-align: left;
  font-size: 14px;
  padding: 14px 20px;
  position: relative;
}
.classBoxRow .classLink a.current {
  background-color: transparent;
}

.informationList {
  padding-top: 46px;
  margin-bottom: 88px;
}
@media (max-width: 1200px) {
  .informationList {
    margin-bottom: 50px;
  }
}

.informationItem:not(:last-child) {
  margin-bottom: 100px;
}
@media (max-width: 1200px) {
  .informationItem:not(:last-child) {
    margin-bottom: 50px;
  }
}

.albumBox {
  position: relative;
}
.albumBox .albumList.slick-dotted {
  margin-bottom: 0;
}
.albumBox .albumList .slick-dots {
  bottom: -15px;
  left: calc(100% + 9px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 25px;
  height: 100%;
}
@media (max-width: 1440px) {
  .albumBox .albumList .slick-dots {
    height: 25px;
    bottom: -25px;
    left: 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
  }
}
.albumBox .albumList .slick-dots li {
  width: 9px;
  height: 9px;
  margin: 15px 10px;
}
.albumBox .albumList .slick-dots li button {
  width: 100%;
  height: 100%;
  padding: 0;
}
.albumBox .albumList .slick-dots li button::before {
  content: "";
  width: 100%;
  height: 100%;
  border: 1px solid #746c65;
  border-radius: 50%;
  opacity: 1;
}
.albumBox .albumList .slick-dots li.slick-active button:before {
  background-color: #746c65;
  opacity: 1;
}
.albumBox .albumList img {
  width: 100%;
  display: block;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.albumBox .arrowBox {
  width: calc(100% - 120px);
  top: 50%;
}
@media (max-width: 959px) {
  .albumBox .arrowBox {
    width: calc(100% - 40px);
  }
}
@media (min-width: 1201px) {
  .albumBox:hover .arrow {
    opacity: 1;
  }
}

.Txt {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 34px 0 41px;
}
@media (max-width: 1440px) {
  .Txt {
    margin: 59px 0 41px;
  }
}
@media (max-width: 768px) {
  .Txt {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.Txt .left {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.Txt .right {
  max-width: 230px;
  width: 100%;
  padding-left: 50px;
  margin-top: -5px;
}
@media (max-width: 768px) {
  .Txt .right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    max-width: 100%;
    padding-left: 0;
    margin: 15px -5px 0;
  }
}
.Txt h3.title {
  color: #000;
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 20px;
}
.Txt .location .title,
.Txt .tel .title {
  color: #000;
  font-family: "Noto Sans TC";
}
.Txt .location .text,
.Txt .tel .text {
  color: #626262;
  font-family: "Noto Sans TC";
  letter-spacing: 0.5px;
  margin-right: 5px;
}
@media (min-width: 1201px) {
  .Txt .location .text:hover,
.Txt .tel .text:hover {
    color: #746c65;
  }
}
.Txt .location {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 6px;
}
.Txt .location .title {
  margin-right: 19px;
}
.Txt .location .text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 1201px) {
  .Txt .location .text:hover .icon {
    -webkit-animation: location 1s ease-in-out infinite;
            animation: location 1s ease-in-out infinite;
  }
}
.Txt .location .icon {
  display: inline-block;
  width: 12px;
  height: 16px;
  background: url(../images/icon/location.png) no-repeat;
  margin-left: 10px;
}
.Txt .tel .title {
  margin-right: 15px;
}
.Txt .tel a {
  color: #626262;
}
@media (min-width: 1201px) {
  .Txt .tel a:hover {
    color: #746c65;
  }
}
.Txt .btn1 {
  margin: 10px 0;
}
@media (max-width: 768px) {
  .Txt .btn1 {
    margin: 5px;
  }
}
.Txt .btn1 a {
  min-width: 180px;
  height: 43px;
  border-color: #dfd4b7;
}
@media (min-width: 1201px) {
  .Txt .btn1 a:hover {
    -webkit-animation: background 0.5s 0.5s linear forwards;
            animation: background 0.5s 0.5s linear forwards;
  }
  .Txt .btn1 a:hover .icon {
    -webkit-animation: filter 0s 0.6s linear forwards;
            animation: filter 0s 0.6s linear forwards;
  }
  .Txt .btn1 a:hover .text {
    -webkit-animation: color 0.5s 0.35s linear forwards;
            animation: color 0.5s 0.35s linear forwards;
  }
}
.Txt .btn1 .icon {
  margin-right: 10px;
}
.Txt .btn1.menuBtn .icon {
  width: 13px;
  height: 17px;
  background: url(../images//icon/menu.png) no-repeat;
}
.Txt .btn1.bookingBtn .icon {
  width: 17px;
  height: 14px;
  background: url(../images//icon/booking.png) no-repeat;
}

.textEditor {
  font-family: "Noto Sans TC";
  letter-spacing: 0.5px;
}
.textEditor.descriptionBox {
  position: relative;
  border-top: 1px solid #dfd4b7;
  border-bottom: 1px solid #dfd4b7;
  padding: 30px 40px 20px 0;
}
.textEditor.descriptionBox .btn1 {
  position: absolute;
  top: 30px;
  right: 0;
}
.textEditor.descriptionBox .btn1 a {
  min-width: auto;
  min-height: auto;
  width: 35px;
  height: 35px;
}
.textEditor.descriptionBox .btn1 a::before, .textEditor.descriptionBox .btn1 a::after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  left: calc(50% - 5px);
  width: 10px;
  height: 2px;
  background-color: #746c65;
}
.textEditor.descriptionBox .btn1 a::before {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.textEditor.descriptionBox .btn1 a.show::before {
  -webkit-transform: rotate(0);
          transform: rotate(0);
}
.textEditor.detailBox {
  display: none;
  padding: 20px 0 30px;
  border-bottom: 1px solid #dfd4b7;
}
.textEditor .title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.textEditor span.tw {
  color: #000;
}
.textEditor span.en {
  position: relative;
  color: #626262;
  font-size: 14px;
  padding-left: 5px;
  margin-left: 6px;
}
.textEditor span.en::before {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  -webkit-transform: rotate(17deg);
          transform: rotate(17deg);
  width: 1px;
  height: 13px;
  background-color: #626262;
}
.textEditor .content {
  color: #746c65;
  font-size: 15px;
  line-height: 1.75;
  margin-top: 15px;
}
.textEditor .content table {
  margin-top: 19px;
}
@media (min-width: 480px) {
  .textEditor .content table {
    min-width: 430px;
  }
}