@import url("https://fonts.googleapis.com/css2?family=Lato&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Inconsolata&family=Noto+Sans+TC:wght@300&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+TC:wght@600&display=swap");
a {
  background-color: transparent;
  text-decoration: none;
  color: inherit; }

a:active, a:hover, a:visited {
  color: inherit;
  outline: 0; }

body {
  letter-spacing: 0.1rem;
  background-image: url("../img/site/bg_main.jpg");
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover; }
  @media (max-width: 768px) {
    body {
      background-attachment: inherit;
      background-repeat: repeat-y;
      background-size: 100%; } }

body.freeze {
  overflow: hidden; }

.header {
  z-index: 9999;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.5) 50%, rgba(0, 0, 0, 0) 100%); }

.header-lifevibe {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 120px; }
  @media (max-width: 768px) {
    .header-lifevibe {
      height: 80px; } }
  .header-lifevibe .container-xxl {
    display: flex;
    align-items: center;
    justify-content: center; }
  .header-lifevibe .logo-container {
    position: relative;
    padding: 0.8rem 0;
    width: 50px; }
    .header-lifevibe .logo-container .logo {
      object-fit: cover; }
      .header-lifevibe .logo-container .logo-m {
        display: none; }
      @media (max-width: 768px) {
        .header-lifevibe .logo-container .logo {
          width: 12em; }
          .header-lifevibe .logo-container .logo-pc {
            display: none; }
          .header-lifevibe .logo-container .logo-m {
            display: block; } }
      @media (max-width: 576px) {
        .header-lifevibe .logo-container .logo {
          width: 9em; } }
    @media (max-width: 768px) {
      .header-lifevibe .logo-container {
        display: flex;
        width: 100%;
        justify-content: space-between; } }
  .header-lifevibe .btn-nav-container {
    display: none; }
    @media (max-width: 768px) {
      .header-lifevibe .btn-nav-container {
        display: flex;
        color: #D9D3C8;
        align-items: center; } }
  .header-lifevibe .btn-nav {
    font-size: 2em; }
    @media (max-width: 576px) {
      .header-lifevibe .btn-nav {
        font-size: 1.4em; } }

.nav-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0;
  display: flex;
  justify-content: space-around; }
.nav-item {
  position: relative; }
  .nav-item:after {
    content: '';
    position: absolute;
    bottom: 0;
    height: 2px;
    background-color: #666D60;
    opacity: 0;
    left: 50%;
    right: 50%;
    transition: all 0.2s ease-in-out; }
  @media (hover: hover) {
    .nav-item:hover:after {
      left: 1rem;
      right: 1rem;
      opacity: 1; } }
  .nav-item i {
    color: #666D60; }
.nav-link {
  color: #D9D3C8 !important;
  font-size: 1em;
  transition: all 0.2s ease-in-out; }
  @media (hover: hover) {
    .nav-link:hover {
      color: #D9D3C8;
      transform: translateY(-5px); } }
.nav-title {
  display: none; }
@media (max-width: 768px) {
  .nav-wrapper {
    pointer-events: none;
    opacity: 0;
    background-color: #fff;
    position: fixed;
    left: -70%;
    width: 70%;
    top: 0;
    bottom: 0;
    transition: left 0.3s ease-in-out; }
    .nav-wrapper.active {
      display: block;
      left: 0;
      opacity: 1;
      pointer-events: inherit; }
  .nav-container {
    flex-direction: column;
    padding: 0; }
  .nav-item {
    padding: 10px 10px 0 0;
    display: flex;
    align-items: center; }
    .nav-item:after {
      content: '';
      display: block;
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      content: "\f054";
      position: static;
      height: inherit;
      background-color: transparent; }
  .nav-link {
    flex: 1;
    color: #827460 !important; }
  .nav-title {
    display: block;
    background-color: #ededed;
    font-size: 0.875em;
    line-height: 1.8;
    font-weight: 400; } }

.header-lifevibe.fixed {
  position: fixed;
  top: 0;
  background-color: #fff;
  z-index: 999;
  width: 100%; }
  .header-lifevibe.fixed .container-xxl {
    display: flex;
    align-items: flex-end; }
  .header-lifevibe.fixed .logo-container {
    padding: 0.2em 0; }
    .header-lifevibe.fixed .logo-container a {
      width: 240px; }
  .header-lifevibe.fixed .nav-wrapper {
    flex: 1; }
  .header-lifevibe.fixed .nav-link {
    padding-bottom: 1.2em; }

.kv-swiper-wrapper {
  overflow: hidden;
  position: relative;
  background-color: #666D60; }
.kv-swiper-content {
  position: relative;
  z-index: 2;
  text-align: center;
  padding: 2rem 120px;
  border-radius: 2rem;
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  max-width: 70%; }
  .kv-swiper-content .locate {
    position: absolute;
    top: -12%;
    left: 40px;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background-color: #666D60;
    color: #D9D3C8;
    font-size: 2em;
    letter-spacing: 0.2rem;
    display: flex;
    justify-content: center;
    align-items: center;
    writing-mode: vertical-lr;
    font-weight: 500; }
  .kv-swiper-content .title {
    font-size: 3.4em;
    line-height: 1.8;
    font-weight: 500;
    color: #fff; }
  .kv-swiper-content .subtitle {
    font-size: 1.2em;
    line-height: 1.43;
    font-family: 'Noto Sans TC','Microsoft JhengHei',Verdana,sans-serif;
    color: #fff;
    padding-bottom: 0.5em; }
  .kv-swiper-content .btn {
    color: #666D60;
    background-color: rgba(255, 255, 255, 0.5);
    font-size: 1.2em;
    line-height: 1.43;
    padding: 0.375rem 1.4rem; }
  @media (max-width: 992px) {
    .kv-swiper-content {
      padding: 1.5rem 60px; }
      .kv-swiper-content .locate {
        font-size: 1.6em;
        width: 80px;
        height: 80px; }
      .kv-swiper-content .title {
        font-size: 2.6em; } }
  @media (max-width: 576px) {
    .kv-swiper-content {
      padding: 1.5rem 20px;
      border-radius: 1.2rem; }
      .kv-swiper-content .locate {
        left: 10px;
        font-size: 1.2em;
        width: 60px;
        height: 60px; }
      .kv-swiper-content .title {
        font-size: 1.8em; }
      .kv-swiper-content .subtitle {
        font-size: 1em; }
      .kv-swiper-content .btn {
        font-size: 0.8em; } }
  .kv-swiper-content.dark .title, .kv-swiper-content.dark .subtitle {
    color: #666D60; }

/****/
.home-section-container .picture {
  padding-top: 32%;
  position: relative; }
  @media (max-width: 1200px) {
    .home-section-container .picture {
      padding-top: 40%; } }
  .home-section-container .picture img {
    position: absolute;
    display: block;
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0; }
  @media (max-width: 576px) {
    .home-section-container .picture {
      order: 1;
      padding-top: 70%;
      background-color: #666D60; }
      .home-section-container .picture img {
        width: 80%;
        right: 0;
        left: 0;
        top: 10%;
        margin: auto; } }
.home-section-container .brief {
  display: flex;
  align-items: center;
  justify-content: flex-end; }
  @media (max-width: 992px) {
    .home-section-container .brief {
      padding: 0; } }
  @media (max-width: 576px) {
    .home-section-container .brief {
      order: 2; } }
  .home-section-container .brief-container {
    display: flex;
    flex-direction: row;
    background-color: #666D60;
    color: #D9D3C8;
    padding: 3em;
    position: relative;
    z-index: 1;
    right: -50px;
    width: 80%;
    max-width: 600px; }
    .home-section-container .brief-container h2 {
      writing-mode: vertical-lr;
      font-weight: 500;
      font-size: 1.6em;
      margin-right: 15px; }
      .home-section-container .brief-container h2 .en {
        word-break: keep-all; }
    .home-section-container .brief-container p {
      line-height: 2;
      font-family: 'Noto Sans TC','Microsoft JhengHei',Verdana,sans-serif;
      text-align: justify; }
    @media (max-width: 992px) {
      .home-section-container .brief-container {
        width: 100%;
        right: 0; } }
    @media (max-width: 576px) {
      .home-section-container .brief-container {
        flex-direction: column;
        padding: 2em; }
        .home-section-container .brief-container h2 {
          writing-mode: initial; }
          .home-section-container .brief-container h2 .en {
            display: block; } }
.home-section-container:nth-child(even) .brief {
  justify-content: flex-start; }
.home-section-container:nth-child(even) .brief-container {
  left: -50px;
  right: inherit; }
  @media (max-width: 992px) {
    .home-section-container:nth-child(even) .brief-container {
      left: 0; } }
@media (max-width: 576px) {
  .home-section-container:nth-child(even) .brief-container, .home-section-container:nth-child(even) .picture {
    background-color: #827460; } }
.home-section-container.tailor {
  position: relative;
  background-image: url("../img/site/img_home_tailor.jpg");
  background-size: cover;
  -webkit-background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed; }
  @media (max-width: 992px) {
    .home-section-container.tailor {
      background-attachment: inherit; } }
  .home-section-container.tailor .slogan {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 1200px; }
    .home-section-container.tailor .slogan .slogan-container {
      display: flex;
      align-items: center;
      justify-content: flex-start;
      font-family: 'Noto Sans TC';
      font-weight: 700;
      font-size: 2.3em;
      line-height: 1.4; }
      @media (max-width: 992px) {
        .home-section-container.tailor .slogan .slogan-container {
          justify-content: center;
          font-size: 1.8em; } }
      @media (max-width: 576px) {
        .home-section-container.tailor .slogan .slogan-container {
          font-size: 1.4em; } }
    .home-section-container.tailor .slogan .icon-container {
      display: flex;
      align-items: flex-end;
      justify-content: space-around; }
      .home-section-container.tailor .slogan .icon-container img {
        width: 33.3%; }
    .home-section-container.tailor .slogan .made-container {
      font-family: 'Noto Sans TC','Microsoft JhengHei',Verdana,sans-serif; }

/**form**/
.form-kv-container {
  padding-top: 40%;
  position: relative; }
  .form-kv-container:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-image: url("../img/site/img_home_brand.jpg");
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-size: cover;
    -webkit-background-size: cover;
    background-position: center;
    opacity: 0.8; }
    @media (max-width: 992px) {
      .form-kv-container:before {
        background-attachment: inherit; } }
  .form-kv-container .tailor-kv-content {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    text-align: center;
    color: #666D60; }
    .form-kv-container .tailor-kv-content h2 {
      font-size: 3em; }
    .form-kv-container .tailor-kv-content h3 {
      font-size: 1.2em;
      line-height: 1.6;
      font-family: 'Noto Sans TC','Microsoft JhengHei',Verdana,sans-serif; }
    @media (max-width: 576px) {
      .form-kv-container .tailor-kv-content h2 {
        font-size: 2em; }
      .form-kv-container .tailor-kv-content h3 {
        font-size: 0.95em; } }
  @media (max-width: 1200px) {
    .form-kv-container {
      padding-top: 46%; } }
  @media (max-width: 768px) {
    .form-kv-container {
      padding-top: 50%; } }
  @media (max-width: 576px) {
    .form-kv-container {
      padding-top: 100%; } }

.form-table-container {
  position: relative; }

.form-table-content {
  width: 700px;
  margin: 3em auto;
  position: relative;
  border-radius: 1rem;
  background-color: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(3px); }
  .form-table-content:before {
    content: '';
    display: block;
    padding-top: 270%; }
  .form-table-content iframe {
    position: absolute;
    height: 100%;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: 1; }
  @media (max-width: 576px) {
    .form-table-content {
      width: 96%; }
      .form-table-content:before {
        padding-top: 510%; } }

/**tailorMade**/
.tailor-kv-container {
  padding-top: 40%;
  position: relative; }
  .tailor-kv-container:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-image: url("../img/tailor/kv.jpg");
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-size: cover;
    -webkit-background-size: cover;
    background-position: center;
    opacity: 0.8; }
    @media (max-width: 992px) {
      .tailor-kv-container:before {
        background-attachment: inherit; } }
  .tailor-kv-container .tailor-kv-content {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    text-align: center;
    color: #fff; }
    .tailor-kv-container .tailor-kv-content h2 {
      font-size: 3em; }
    .tailor-kv-container .tailor-kv-content h3 {
      font-size: 1.2em;
      line-height: 1.6;
      font-family: 'Noto Sans TC','Microsoft JhengHei',Verdana,sans-serif; }
    @media (max-width: 576px) {
      .tailor-kv-container .tailor-kv-content h2 {
        font-size: 2em; }
      .tailor-kv-container .tailor-kv-content h3 {
        font-size: 0.95em; } }
  @media (max-width: 1200px) {
    .tailor-kv-container {
      padding-top: 46%; } }
  @media (max-width: 768px) {
    .tailor-kv-container {
      padding-top: 50%; } }
  @media (max-width: 576px) {
    .tailor-kv-container {
      padding-top: 100%; } }

/*****tailormade-process******/
.tailormade-process-container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-evenly;
  align-items: flex-start;
  padding: 4em 0; }
  @media (max-width: 576px) {
    .tailormade-process-container {
      width: 90%;
      flex-direction: column; } }

.tailormade-process-item {
  width: 28%;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  margin-bottom: 2em; }
  .tailormade-process-item .img-container {
    padding-top: 75%;
    position: relative;
    border-radius: 8px;
    overflow: hidden; }
    .tailormade-process-item .img-container h4 {
      position: absolute;
      bottom: 20px;
      left: 20px;
      font-size: 2em;
      color: #fff;
      z-index: 3; }
    .tailormade-process-item .img-container .mask {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      width: 100%;
      height: 100%;
      margin: auto;
      background-image: linear-gradient(to bottom, rgba(109, 100, 82, 0) 0%, rgba(109, 100, 82, 0) 50%, #6d6452 100%);
      z-index: 2; }
    .tailormade-process-item .img-container img {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      width: 100%;
      height: 100%;
      margin: auto;
      object-fit: cover;
      object-position: center;
      z-index: 1; }
  .tailormade-process-item .text-container {
    padding-top: 20px;
    text-align: justify;
    font-family: 'Noto Sans TC','Microsoft JhengHei',Verdana,sans-serif;
    line-height: 1.8;
    padding: 0 0.5em; }
  @media (max-width: 576px) {
    .tailormade-process-item {
      width: 100%;
      flex-direction: row; }
      .tailormade-process-item .img-container {
        width: 40%;
        margin-right: 1em;
        padding-top: 50%; }
        .tailormade-process-item .img-container h4 {
          font-size: 1.5em; }
      .tailormade-process-item .text-container {
        flex: 1;
        padding-top: 0; } }

/*****tailormade-charge******/
.tailormade-charge-container {
  padding: 4em 0;
  background-image: url("../img/tailor/bg_charge.jpg");
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  -webkit-background-size: cover;
  background-position: center; }
  @media (max-width: 992px) {
    .tailormade-charge-container {
      background-attachment: inherit; } }

.tailormade-charge-content {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  justify-content: space-evenly;
  align-items: flex-start; }
  @media (max-width: 576px) {
    .tailormade-charge-content {
      flex-direction: column; } }

.tailormade-charge-item {
  background-color: #fff;
  width: 30%;
  border-radius: 8px;
  padding: 2em;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  text-align: center;
  flex-wrap: wrap; }
  .tailormade-charge-item h4 {
    color: #666D60;
    display: flex;
    align-items: center;
    justify-content: center; }
  .tailormade-charge-item h5 {
    font-size: 1em;
    height: 3em;
    display: flex;
    align-items: center;
    justify-content: center; }
  .tailormade-charge-item img {
    margin: 1em auto;
    width: 5em; }
  .tailormade-charge-item .cancelCharge-block {
    padding: 0.5em 0;
    border: 1px solid #D9D3C8;
    color: #827460;
    width: 100%;
    font-family: 'Noto Sans TC','Microsoft JhengHei',Verdana,sans-serif; }
  @media (max-width: 992px) {
    .tailormade-charge-item h4 {
      height: 3em; }
    .tailormade-charge-item h5 {
      height: 3.6em; }
    .tailormade-charge-item .cancelCharge-block {
      height: 4em;
      display: flex;
      align-items: center;
      justify-content: center; } }
  @media (max-width: 576px) {
    .tailormade-charge-item {
      flex-direction: row;
      width: 90%;
      margin: 1em auto;
      padding: 1em; }
      .tailormade-charge-item img {
        order: 1;
        margin: 0 1em 0 0;
        width: 4em; }
      .tailormade-charge-item h4 {
        order: 2;
        flex: 1;
        justify-content: flex-start;
        text-align: left; }
      .tailormade-charge-item h5 {
        order: 3;
        flex-shrink: 0;
        width: 100%; }
      .tailormade-charge-item .cancelCharge-block {
        order: 4;
        flex-shrink: 0;
        height: auto; } }

/***tailormade-journey***/
.tailormade-journey-container {
  padding: 4em 0; }

.tailormade-journey-content {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-around;
  align-items: flex-start; }
  @media (max-width: 992px) {
    .tailormade-journey-content {
      justify-content: space-evenly; } }

.tailormade-journey-item {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 16%;
  height: 400px;
  transition: 0.3s ease-in-out width; }
  .tailormade-journey-item:after {
    position: absolute;
    content: '';
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 96%;
    margin: auto;
    border-radius: 8px;
    overflow: hidden;
    background-position: center;
    background-size: cover;
    -webkit-background-size: cover; }
    @media (max-width: 992px) {
      .tailormade-journey-item:after {
        width: 100%; } }
  .tailormade-journey-item.culture:after {
    background-image: url("../img/tailor/img_journey_culture.jpg"); }
  .tailormade-journey-item.food:after {
    background-image: url("../img/tailor/img_journey_food.jpg"); }
  .tailormade-journey-item.cruise:after {
    background-image: url("../img/tailor/img_journey_cruise.jpg"); }
  .tailormade-journey-item.nature:after {
    background-image: url("../img/tailor/img_journey_nature.jpg"); }
  .tailormade-journey-item.shopping:after {
    background-image: url("../img/tailor/img_journey_shopping.jpg"); }
  .tailormade-journey-item.golf:after {
    background-image: url("../img/tailor/img_journey_golf.jpg"); }
  @media (hover: hover) {
    .tailormade-journey-item:hover {
      width: 20%; }
      .tailormade-journey-item:hover h3 {
        opacity: 0;
        height: 0;
        overflow: hidden; }
      .tailormade-journey-item:hover p {
        opacity: 1;
        height: auto;
        padding: 0.6em; } }
  @media (max-width: 992px) {
    .tailormade-journey-item {
      width: 30%;
      margin-bottom: 1em; } }
  @media (max-width: 576px) {
    .tailormade-journey-item {
      width: 90%;
      height: 70vw; } }

.tailormade-journey-text {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 96%;
  margin: auto;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  z-index: 1; }
  .tailormade-journey-text h3 {
    color: #fff;
    font-size: 1.2em;
    transition: 0.3s linear opacity; }
  .tailormade-journey-text p {
    opacity: 0;
    height: 0;
    overflow: hidden;
    transition: 0.2s linear opacity;
    transition-delay: 0.3s;
    color: #fff;
    margin: 0;
    text-align: justify;
    font-family: 'Noto Sans TC','Microsoft JhengHei',Verdana,sans-serif;
    line-height: 1.8; }
  @media (max-width: 992px) {
    .tailormade-journey-text {
      width: 100%; }
      .tailormade-journey-text p {
        opacity: 1;
        height: auto;
        padding: 0.6em; } }

/**tour**/
.tour-kv-container {
  padding-top: 40%;
  position: relative; }
  @media (max-width: 1200px) {
    .tour-kv-container {
      padding-top: 46%; } }
  @media (max-width: 768px) {
    .tour-kv-container {
      padding-top: 50%; } }
  @media (max-width: 576px) {
    .tour-kv-container {
      padding-top: 100%; } }
  .tour-kv-container img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0.8;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    z-index: -1; }

.tour-kv-content {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 1;
  text-align: center;
  color: #fff; }
  .tour-kv-content > div {
    padding: 2rem 120px;
    border-radius: 2rem;
    background-color: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    max-width: 70%; }
    @media (max-width: 992px) {
      .tour-kv-content > div {
        padding: 1.5rem 60px; } }
    @media (max-width: 576px) {
      .tour-kv-content > div {
        padding: 1.5rem 20px;
        border-radius: 1.2rem; } }
  .tour-kv-content.dark {
    color: #666D60; }
  .tour-kv-content h2 {
    font-size: 3em; }
  .tour-kv-content h3 {
    font-size: 1.2em;
    line-height: 1.6;
    font-family: 'Noto Sans TC','Microsoft JhengHei',Verdana,sans-serif; }
  @media (max-width: 992px) {
    .tour-kv-content h2 {
      font-size: 2.6em; } }
  @media (max-width: 576px) {
    .tour-kv-content h2 {
      font-size: 2em; }
    .tour-kv-content h3 {
      font-size: 0.95em; } }

.tour-guide-container {
  max-width: 1200px;
  margin: 4em auto;
  padding: 0 1em; }
  .tour-guide-container h3, .tour-guide-container h4 {
    font-weight: 500; }
  .tour-guide-container h4 {
    font-size: 1em; }
    .tour-guide-container h4 i {
      margin-right: 4px;
      font-size: 0.6em; }
  .tour-guide-container p {
    font-family: 'Noto Sans TC','Microsoft JhengHei',Verdana,sans-serif;
    text-align: justify;
    line-height: 1.8; }
  @media (max-width: 992px) {
    .tour-guide-container {
      padding: 0 5em; } }
  @media (max-width: 576px) {
    .tour-guide-container {
      padding: 0 2em; } }

.tour-detail-container {
  background-color: #e1dcd3; }

.tour-detail-content {
  margin: 0 auto;
  padding: 4em 1em;
  max-width: 1200px; }
  .tour-detail-content .picture img {
    width: 100%; }
  .tour-detail-content .description {
    margin-top: 3em; }
    .tour-detail-content .description p {
      background: #fff;
      font-family: 'Noto Sans TC','Microsoft JhengHei',Verdana,sans-serif;
      text-align: justify;
      line-height: 1.8;
      padding: 1.5em;
      margin-left: -5em; }
      .tour-detail-content .description p:first-letter {
        font-size: 2em;
        font-weight: 500; }
  .tour-detail-content .row:nth-child(odd) .picture {
    order: 1; }
  .tour-detail-content .row:nth-child(odd) .description p {
    margin-left: inherit;
    margin-right: -5em;
    position: relative;
    z-index: 1; }
  @media (max-width: 992px) {
    .tour-detail-content {
      padding: 4em; }
      .tour-detail-content .description {
        margin: 0;
        order: 1; }
        .tour-detail-content .description p {
          margin: 0 !important; } }
  @media (max-width: 576px) {
    .tour-detail-content {
      padding: 2em; } }

.divider {
  display: block !important;
  width: 100% !important;
  height: 0.8em;
  margin-bottom: 0.8em;
  background: -webkit-linear-gradient(left, #b2b2b2, #b2b2b2 1px, transparent 1px, transparent 2px) repeat-x left bottom;
  background: linear-gradient(to right, #b2b2b2, #b2b2b2 1px, transparent 1px, transparent 2px) repeat-x left bottom;
  background-size: 3px 1px; }

/***top***/
.btn-top {
  position: absolute;
  right: -40px;
  font-size: 1.6em;
  color: #666D60;
  cursor: pointer;
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  width: 36px;
  height: 36px;
  display: flex;
  justify-content: center;
  align-items: center; }
  .btn-top-container {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 100px;
    display: none;
    z-index: 999; }

/***footer***/
.footer {
  background-color: #7D7D7D;
  color: #D9D3C8;
  font-family: 'Noto Sans TC'; }
  .footer-container {
    font-size: 0.875rem;
    display: flex;
    justify-content: center;
    flex-flow: column;
    max-width: 1200px; }
    @media (max-width: 576px) {
      .footer-container {
        flex-direction: column;
        padding: 1.6em !important; } }
  .footer-top-container {
    display: flex;
    align-items: flex-start; }
    .footer-top-container .logo-lifevibe {
      width: 220px; }
    .footer-top-container .logo-social {
      width: 36px;
      opacity: 0.8; }
      @media (hover: hover) {
        .footer-top-container .logo-social:hover {
          opacity: 1;
          transition: opacity ease-in-out 0.3s; } }
    .footer-top-container .btn-social {
      flex: 1;
      display: flex;
      justify-content: flex-end; }
    @media (max-width: 576px) {
      .footer-top-container {
        margin-bottom: 10px;
        flex-direction: column;
        align-items: center; }
        .footer-top-container .logo-lifevibe {
          width: 45vw; }
        .footer-top-container .info-company {
          padding: 1em 0 !important; } }
  .footer-copyright-container {
    border-top: 1px solid #D9D3C8; }
    @media (max-width: 576px) {
      .footer-copyright-container {
        font-size: 0.84em; } }

/****other***/
.bk-mask {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9998;
  backdrop-filter: blur(5px); }

/***catefory***/
.header-category {
  margin-top: 20px;
  position: relative;
  padding-top: 30%; }
  .header-category img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0.25rem; }
  @media (max-width: 768px) {
    .header-category {
      padding-top: 50%;
      margin-right: -0.75rem;
      margin-left: -0.75rem;
      margin-top: 0; }
      .header-category img {
        border-radius: 0; } }
  .header-category .description {
    position: absolute;
    background-color: rgba(0, 0, 0, 0.5);
    top: 10%;
    bottom: 10%;
    left: 8%;
    width: 40%;
    padding: 20px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    color: #fff; }
    .header-category .description h2 {
      font-weight: 500;
      font-size: 2.5rem; }
    @media (max-width: 576px) {
      .header-category .description {
        font-size: 0.875rem; }
        .header-category .description h2 {
          font-size: 1.25rem; } }

/**article**/
.article-wrapper {
  margin-bottom: 20px; }
  .article-wrapper h2, .article-wrapper h3 {
    font-weight: 500; }
.article-kv-container {
  margin-bottom: 20px; }
  .article-kv-container img {
    width: 100%;
    border-radius: 0.25rem; }
.article-header {
  position: relative;
  position: sticky;
  top: 60px;
  background-color: #fff;
  padding-top: 20px;
  padding-bottom: 5px;
  z-index: 10; }
  @media (max-width: 768px) {
    .article-header {
      top: 0; } }
.article-editor-container {
  color: #adb5bd;
  font-size: 0.875rem;
  padding: 0.5rem 0; }
  .article-editor-container i {
    margin-right: 5px; }
.article-tools-container {
  position: absolute;
  bottom: 10px;
  right: 0; }
  .article-tools-container .btn-share {
    color: #666D60; }
.article-content {
  padding-bottom: 20px; }
  .article-content img {
    width: 100% !important;
    border-radius: 0.25rem; }
  .article-content iframe {
    width: 100% !important;
    height: 360px !important; }
  @media (max-width: 768px) {
    .article-content iframe {
      width: 100% !important; }
    .article-content:after {
      content: '';
      border-bottom: 1px solid #dee2e6;
      display: table;
      width: 100%; } }

.blockquote {
  font-weight: 500;
  padding: 60px 60px 40px;
  position: relative;
  display: flex;
  justify-content: center; }
  .blockquote:before {
    position: absolute;
    font-family: 'FontAwesome';
    top: 0;
    left: 20px;
    content: "\f10d";
    font-size: 80px;
    color: rgba(0, 0, 0, 0.1); }
  .blockquote:after {
    content: "";
    top: 20px;
    left: 50%;
    margin-left: -100px;
    position: absolute;
    border-bottom: 3px solid #666D60;
    height: 3px;
    width: 200px; }
