@charset "UTF-8";
* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  font-family: "Noto Sans TC";
}

/* 區塊重置或覆寫 */
#tripFeatures > .container.clearfix {
  width: 100%;
  max-width: 100%;
}
#tripFeatures > .container.clearfix .group_table_box {
  padding: 30px 0;
}

#ys-feature-all .container h2 {
  color: unset;
  text-shadow: unset;
}

#ys-feature-all .group_table_box p,
#ys-feature-all .day_con .info_box .info p {
  line-height: initial;
  font-size: 18px;
  word-break: unset;
}
@media (max-width: 575.98px) {
  #ys-feature-all .group_table_box p,
  #ys-feature-all .day_con .info_box .info p {
    font-size: 16px;
  }
}

#ys-feature-all h4 {
  border-bottom: 0;
}

/* 外部 outer*/
#ys-feature-all {
  background-repeat: repeat-y;
  background-size: 120%;
  padding-top: 0;
  margin-bottom: 0;
  width: 100%;
  overflow: hidden;
}

#ys-feature-all .container .group_table_box {
  margin-top: 0;
  padding-top: 0;
}

#tripFeatures h2 {
  display: none;
}

section.group_table.trip_features .container .group_table_box .title_s {
  display: none;
}

section#tripNote {
  margin-top: 0;
}

/* container */
section.ys-feature-all {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0 auto !important;
  background-color: transparent;
}

.ys-feature-part-sec {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  width: 100%;
}
@media (max-width: 991.98px) {
  .ys-feature-part-sec {
    padding: 40px 20px;
  }
}

.ys-feature-part-cnt {
  width: 1440px;
  position: relative;
}
@media (max-width: 1679.98px) {
  .ys-feature-part-cnt {
    width: calc(100% - 40px);
  }
}

.full-wide {
  width: 100%;
  position: relative;
}

/* 主題客製 */
#ys-for-website {
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
}

/* 錨點選單客製 */
.ft-anchor-navi-link {
  background-color: #6d7186 !important;
}
.ft-anchor-navi-link:hover {
  color: #fff !important;
  background-color: #030c1f !important;
}

.ft-anchor-navi-mb-btn {
  background-color: #030c1f !important;
}

/* slash title */
.slash-title-wrapper {
  position: relative;
  width: 100%;
  display: flex;
}
.slash-title-wrapper.reverse {
  flex-direction: row-reverse;
}
@media (max-width: 991.98px) {
  .slash-title-wrapper.reverse {
    flex-direction: column;
  }
}
.slash-title-wrapper.a-right {
  justify-content: flex-end;
}
.slash-title-wrapper .slash-title {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .slash-title-wrapper .slash-title {
    font-size: 18px !important;
  }
}
.slash-title-wrapper .slash-title {
  display: flex;
  gap: 0 6px;
  color: #071b4c !important;
  font-weight: 400 !important;
  white-space: nowrap;
  margin: 0 !important;
}
.slash-title-wrapper .slash-title::before, .slash-title-wrapper .slash-title::after {
  display: block;
  content: "///";
}
@media (max-width: 575.98px) {
  .slash-title-wrapper .slash-title {
    flex-direction: column;
    white-space: wrap;
  }
  .slash-title-wrapper .slash-title::after {
    align-self: flex-end;
  }
}

/* 阿聯酋航空 */
.emirates-airline {
  padding: 100px 0 0 0;
}

.title-set-wrapper.ci-flight.for-emirates > h1 {
  color: #003c78;
  text-align: center;
}
.title-set-wrapper.ci-flight.for-emirates > p {
  color: #226eb9;
  justify-content: center;
}
.title-set-wrapper.ci-flight.for-emirates::before {
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/中東/杜拜/DXB07EKG/images/deco_txt_Emirates.webp);
}
.title-set-wrapper.ci-flight.for-emirates::after {
  transform: translate(100%, -50%);
}

.flight-award > h4 {
  background-color: #003c78;
  padding: 4px 40px;
  margin: 0 0 20px 0 !important;
  color: #fff !important;
  letter-spacing: 6px;
  display: flex;
  justify-content: center;
  align-items: baseline;
  font-size: 16px;
  font-weight: 400;
  position: relative;
}
@media (max-width: 767.98px) {
  .flight-award > h4 {
    flex-wrap: wrap;
  }
}
.flight-award > h4::before {
  display: block;
  content: "";
  position: absolute;
  width: calc(100% - 40px);
  height: calc(100% + 20px);
  border: 1px solid #226eb9;
  top: 0;
  transform: translateY(-10px);
}
.flight-award > h4 > span {
  color: #ffea00;
  display: block;
  margin: 0 4px;
}
.flight-award > h4 > span > b {
  font-size: 28px;
}
.flight-award .en-award-text {
  font-size: 16px;
  color: #003c78;
  font-family: "Noto Serif TC";
}
@media (max-width: 419.98px) {
  .flight-award .en-award-text {
    font-size: 14px;
  }
}

.title-set-wrapper.ci-flight::before {
  mix-blend-mode: luminosity;
}

.title-set-wrapper.ci-flight::after {
  mix-blend-mode: exclusion;
}

/* 行程亮點 */
.ys-feature-part-sec.tour-highlight {
  background-color: #1365aa;
}

.tour-hl-dialogue {
  width: 75%;
  border: 1px solid #fff;
  padding: 40px;
  border-radius: 27px;
  display: flex;
  align-items: center;
  gap: 0 32px;
  margin: 0 auto;
}
@media (max-width: 991.98px) {
  .tour-hl-dialogue {
    width: 100%;
  }
}
.tour-hl-dialogue > img {
  display: block;
  flex-grow: 0;
  flex-shrink: 0;
}
@media (max-width: 575.98px) {
  .tour-hl-dialogue > img {
    margin: 0 0 20px 0;
  }
}
.tour-hl-dialogue .hl-dialogue-article > h3 {
  font-size: 30px;
  font-weight: 700;
  color: #fff;
  letter-spacing: 2px;
  margin: 0 0 10px 0;
}
@media (max-width: 991.98px) {
  .tour-hl-dialogue .hl-dialogue-article > h3 {
    font-size: 28px;
  }
}
@media (max-width: 575.98px) {
  .tour-hl-dialogue .hl-dialogue-article > h3 {
    font-size: 24px;
    text-align: center;
  }
}
.tour-hl-dialogue .hl-dialogue-article > h5 {
  font-size: 18px;
  font-weight: 100;
  color: #fff !important;
  letter-spacing: 1px;
  opacity: 0.9;
}
@media (max-width: 575.98px) {
  .tour-hl-dialogue .hl-dialogue-article > h5 {
    text-align: center;
  }
}
@media (max-width: 419.98px) {
  .tour-hl-dialogue .hl-dialogue-article > h5 {
    font-size: 16px;
    font-weight: 300;
  }
}
@media (max-width: 575.98px) {
  .tour-hl-dialogue {
    width: 100%;
    flex-direction: column;
    align-items: center;
    padding: 20px;
  }
}

/* KV模組 */
.north-europe-kv-sec {
  position: relative;
  width: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  overflow: hidden;
}
@media (max-width: 1679.98px) {
  .north-europe-kv-sec {
    padding-bottom: 70%;
    background-position: center bottom;
  }
}
@media (max-width: 1199.98px) {
  .north-europe-kv-sec {
    padding-bottom: 80%;
    background-position: center bottom;
  }
}
.north-europe-kv-sec::after {
  display: block;
  content: "";
  width: 100%;
  padding-bottom: 15%;
  background: linear-gradient(180deg, rgba(249, 249, 249, 0) 0%, rgb(249, 249, 249) 75%);
  position: absolute;
  z-index: 2;
  bottom: 0;
  left: 0;
}

.north-europe-kv-txt-wrapper {
  position: absolute;
  display: flex;
  flex-direction: row;
  justify-content: center;
  top: 10%;
  z-index: 3;
  padding: 0;
}

.north-europe-kv-light {
  display: block;
  width: 100%;
  padding-bottom: 50.67%;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/kv_sec_skandi_theme_bg.webp);
  background-size: cover;
  background-repeat: no-repeat;
  font-size: 0;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
}
@media (max-width: 1679.98px) {
  .north-europe-kv-light {
    padding-bottom: 65%;
  }
}
@media (max-width: 1199.98px) {
  .north-europe-kv-light {
    padding-bottom: 75%;
  }
}
@media (max-width: 575.98px) {
  .north-europe-kv-light {
    padding-bottom: 120%;
  }
}

.kv-title-sparkle {
  position: absolute;
  width: 20px;
  height: 20px;
  background-color: #fff;
  border-radius: 50%;
  pointer-events: none;
  z-index: 12;
  filter: blur(1px) drop-shadow(0 0 5px rgba(255, 255, 255, 0.8));
}

.north-europe-kv-title {
  display: block;
  position: relative;
  z-index: 4;
  top: 150%;
  width: 60% !important;
  max-width: unset !important;
}
@media (max-width: 1679.98px) {
  .north-europe-kv-title {
    top: 10%;
    width: 50% !important;
  }
}
@media (max-width: 1199.98px) {
  .north-europe-kv-title {
    width: 60% !important;
  }
}
@media (max-width: 991.98px) {
  .north-europe-kv-title {
    top: 2%;
    width: 80% !important;
  }
}
@media (max-width: 575.98px) {
  .north-europe-kv-title {
    width: 90% !important;
  }
}

.north-europe-kv-theme-set {
  display: flex;
  transform: translateY(20%);
}
.north-europe-kv-theme-set::before {
  display: block;
  content: "";
  width: 100%;
  padding-bottom: 5%;
  position: absolute;
  top: 0;
  left: 0;
  background: #ffffff;
  z-index: 3;
  background: linear-gradient(180deg, rgb(255, 255, 255) 0%, rgba(249, 249, 249, 0) 100%);
}
@media (max-width: 1679.98px) {
  .north-europe-kv-theme-set {
    transform: translateY(0);
    position: absolute;
    bottom: 0;
    left: 0;
  }
}

.north-europe-kv-theme-blanket {
  width: 25%;
  position: relative;
  margin: 0 !important;
}
@media (max-width: 1199.98px) {
  .north-europe-kv-theme-blanket {
    transform: translateY(0%);
  }
}
.north-europe-kv-theme-blanket > img {
  width: 100%;
  display: block;
}

.cloud-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 1;
}

.cloud {
  position: absolute;
  will-change: transform, opacity;
}

.back-layer .cloud {
  opacity: 0.3;
}

.front-layer .cloud {
  opacity: 0.5;
}

/* 藍色溫泉湖 */
.blue-lagoon-sec {
  background-color: #f9f9f9;
  position: relative;
  padding: 40px 0 0 0;
}
.blue-lagoon-sec::after {
  display: block;
  width: 100%;
  padding-bottom: 40px;
  content: "";
  background: #ffffff;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgb(249, 249, 249) 100%);
}
@media (max-width: 767.98px) {
  .blue-lagoon-sec {
    padding: 0;
  }
}

.blue-lagoon-intro-set {
  display: flex;
  align-items: center;
  margin: 40px 0;
  perspective: 1200px; /* 增加 3D 視距 */
}
@media (max-width: 767.98px) {
  .blue-lagoon-intro-set {
    flex-wrap: wrap;
    gap: 30px 0;
  }
}
.blue-lagoon-intro-set.reverse {
  flex-direction: row-reverse;
}
@media (max-width: 767.98px) {
  .blue-lagoon-intro-set.reverse {
    flex-direction: row;
  }
}

.blue-lagoon-intro {
  width: 50%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0 30px;
  will-change: transform, opacity;
}
@media (max-width: 767.98px) {
  .blue-lagoon-intro {
    width: 100%;
    padding: 0;
  }
}

.blue-lagoon-intro-title-set {
  display: flex;
  flex-direction: column;
  margin: 0 0 24px 0;
  border-left: 2px solid #071536;
  padding: 0 10px;
}
.blue-lagoon-intro-title-set > h4 {
  font-size: 28px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .blue-lagoon-intro-title-set > h4 {
    font-size: 24px !important;
  }
}
.blue-lagoon-intro-title-set > h4 {
  padding: 0 !important;
  color: #071536;
  margin: 0 0 2px 0 !important;
  font-weight: 700 !important;
}
.blue-lagoon-intro-title-set > h6 {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .blue-lagoon-intro-title-set > h6 {
    font-size: 18px !important;
  }
}
.blue-lagoon-intro-title-set > h6 {
  color: #071536;
  padding: 0 !important;
  margin: 0 !important;
}

.blue-lagoon-intro-parag {
  font-size: 16px;
  letter-spacing: 2px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 767.98px) {
  .blue-lagoon-intro-parag {
    font-size: 14px !important;
  }
}
.blue-lagoon-intro-parag {
  color: #6d7186;
  margin: 0 0 16px 0;
}

.blue-lagoon-gallery {
  position: relative;
  width: 50%;
  will-change: transform, opacity;
}
@media (max-width: 767.98px) {
  .blue-lagoon-gallery {
    width: 100%;
  }
}
.blue-lagoon-gallery > img {
  display: block;
  width: 100%;
}

.blue-lagoon-deco-hot-springs {
  display: block;
  width: 70%;
  padding-bottom: 9%;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/blue_lagoon_hot_spring_ico.svg);
  background-size: cover;
  background-repeat: no-repeat;
  font-size: 0;
  margin: 50px 0 0 0;
}

/* 藍色溫泉湖全景 */
.blue-lagoon-full-scene-sec {
  width: 100%;
  padding-bottom: 28.55%;
  position: relative;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/blue_lagoon_fullview.webp);
  background-size: cover;
  background-repeat: no-repeat;
  justify-content: center;
  overflow: hidden;
  isolation: isolate;
}
@media (max-width: 575.98px) {
  .blue-lagoon-full-scene-sec {
    background-image: none;
    padding: 0;
  }
  .blue-lagoon-full-scene-sec::before {
    display: block;
    content: "";
    width: 100%;
    padding-bottom: 65%;
    background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/blue_lagoon_fullview.webp);
    background-size: cover;
    background-repeat: no-repeat;
  }
}

.blue-lagoon-steam-field {
  position: absolute;
  inset: 0;
  z-index: 2;
  overflow: hidden;
  pointer-events: none;
}

.blue-lagoon-steam-particle {
  position: absolute;
  border-radius: 50%;
  background: radial-gradient(ellipse at center, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 38%, rgb(255, 255, 255) 75%);
  opacity: 0;
  mix-blend-mode: screen;
  transform: translate3d(0, 0, 0);
  will-change: transform, opacity;
}

.blue-lagoon-full-scene-cnt {
  position: relative;
  z-index: 4;
  background-color: #fff;
  width: 100%;
  left: 0;
  bottom: 0;
  align-items: flex-start;
  padding: 20px 40px;
  backdrop-filter: blur(2px);
  clip-path: inset(0 100% 0 0);
  will-change: clip-path;
}
@media (max-width: 575.98px) {
  .blue-lagoon-full-scene-cnt {
    position: absolute;
    padding: 0;
  }
}

/* 霧氣層 */
.blue-lagoon-steam {
  position: absolute;
  left: -10%;
  bottom: -15%;
  width: 120%;
  height: 75%;
  pointer-events: none;
  font-size: 0;
  background: radial-gradient(ellipse at 15% 80%, rgba(255, 255, 255, 0.4) 0%, rgba(255, 255, 255, 0.18) 28%, transparent 65%), radial-gradient(ellipse at 48% 90%, rgba(255, 255, 255, 0.35) 0%, rgba(255, 255, 255, 0.15) 30%, transparent 68%), radial-gradient(ellipse at 82% 75%, rgba(255, 255, 255, 0.32) 0%, rgba(255, 255, 255, 0.12) 30%, transparent 65%);
  filter: blur(28px);
  opacity: 0;
  will-change: transform, opacity;
}

/* 維克小鎮 */
.vik-town-sec {
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/vik_town_view_sec_bg.webp);
  padding: 80px 0 50px 0;
}

.vik-town-title-set {
  display: flex;
  flex-direction: column;
  position: relative;
  align-items: flex-start;
  margin: 0 0 30px 0;
}
.vik-town-title-set::after {
  display: block;
  content: "";
  width: 1px;
  height: 60px;
  background-color: #071536;
  align-self: center;
  margin: 30px 0 0 0;
}
.vik-town-title-set > .label-straight {
  writing-mode: vertical-rl;
  font-size: 36px !important;
  font-weight: 700 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .vik-town-title-set > .label-straight {
    font-size: 28px !important;
  }
}
.vik-town-title-set > .label-straight {
  color: #071536;
  border-left: 2px double #071536;
  border-right: 2px double #071536;
  padding: 0 4px !important;
  margin: 0 0 8px 0;
}
.vik-town-title-set > .label-straight.side-attach {
  position: absolute;
  border: 0;
  white-space: nowrap;
  left: 0;
  transform: translate(-120%, 20%);
  letter-spacing: 8px;
}
@media (max-width: 767.98px) {
  .vik-town-title-set > .label-straight {
    writing-mode: horizontal-tb;
    border-top: 2px double #071536;
    border-bottom: 2px double #071536;
    border-left: 0;
    border-right: 0;
  }
  .vik-town-title-set > .label-straight.side-attach {
    position: static;
    transform: translate(0, 0);
  }
}
.vik-town-title-set > .entitle {
  font-size: 16px;
  letter-spacing: 2px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 767.98px) {
  .vik-town-title-set > .entitle {
    font-size: 14px !important;
  }
}
.vik-town-title-set > .entitle {
  font-family: "Noto Serif TC";
  font-weight: 300 !important;
  color: #213052 !important;
  margin: 0 0 4px 0 !important;
  letter-spacing: 2px;
}
@media (max-width: 767.98px) {
  .vik-town-title-set > .entitle {
    font-size: 28px;
  }
}
@media (max-width: 575.98px) {
  .vik-town-title-set > .entitle {
    text-align: center;
    font-size: 24px;
  }
}
.vik-town-title-set > h4 {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .vik-town-title-set > h4 {
    font-size: 18px !important;
  }
}
.vik-town-title-set > h4 {
  font-weight: 700 !important;
  color: #213052 !important;
  letter-spacing: 4px;
  margin: 0 !important;
}
@media (max-width: 419.98px) {
  .vik-town-title-set > h4 {
    font-size: 20px;
  }
}

.deco-ico-vik-town {
  display: block;
  width: 166px;
  padding-bottom: 120px;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/deco_ico_vik_title.svg);
  background-size: contain;
  background-repeat: no-repeat;
  font-size: 0;
  position: absolute;
  top: -34px;
  right: 0;
  transform: translateX(-50%);
}
@media (max-width: 767.98px) {
  .deco-ico-vik-town {
    position: static;
    transform: translateX(0);
  }
}

.vik-town-parag {
  font-size: 16px;
  letter-spacing: 2px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 767.98px) {
  .vik-town-parag {
    font-size: 14px !important;
  }
}
.vik-town-parag {
  color: #6d7186;
  margin: 0 0 20px 0;
  text-align: center;
  line-height: 1.8 !important;
}
.vik-town-parag.a-left {
  text-align: left;
}

.vik-town-point-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 0 2%;
  margin: 30px 0;
  perspective: 1200px;
}
@media (max-width: 767.98px) {
  .vik-town-point-wrapper {
    gap: 30px 30px;
  }
}

.vik-town-point-grid {
  position: relative;
  width: 48%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media (max-width: 767.98px) {
  .vik-town-point-grid {
    width: 100%;
  }
}
.vik-town-point-grid.full {
  width: 100%;
  margin: 6px 0 30px 0;
}
.vik-town-point-grid > img {
  display: block;
  width: 100%;
  transform-style: preserve-3d;
}
.vik-town-point-grid.side > img {
  border: 3px solid #d5d5d5;
}
.vik-town-point-grid > h4 {
  font-size: 16px;
  letter-spacing: 2px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 767.98px) {
  .vik-town-point-grid > h4 {
    font-size: 14px !important;
  }
}
.vik-town-point-grid > h4 {
  color: #252759 !important;
  display: flex;
  margin: 4px 0 16px 0 !important;
  font-weight: 400 !important;
  justify-content: center;
}
.vik-town-point-grid > h4::before {
  display: block;
  content: "▪";
}

.point-title-set {
  display: flex;
  flex-direction: column;
  margin: 0 0 24px 0;
  position: relative;
}
.point-title-set::before {
  display: flex;
  content: "▪";
  position: absolute;
  top: 4px;
  left: -20px;
}
.point-title-set > h4 {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .point-title-set > h4 {
    font-size: 18px !important;
  }
}
.point-title-set > h4 {
  color: #071536 !important;
  margin: 0 0 10px 0 !important;
  font-weight: 700 !important;
}
.point-title-set > h5 {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .point-title-set > h5 {
    font-size: 18px !important;
  }
}
.point-title-set > h5 {
  font-family: "Noto Serif TC";
  color: #071536 !important;
  letter-spacing: 1px;
  margin: 0 !important;
}

/* 挪威雙峽灣 */
.norway-fjord-sec {
  background-color: #1a578b;
  border-top: 5px solid #003663;
  padding: 0 0 17% 0;
}
.norway-fjord-sec::after {
  display: block;
  content: "";
  width: 100%;
  padding-bottom: 17%;
  background-color: #f9f9f9;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/helsinki_sec_top_bg.svg);
  background-repeat: repeat-x;
  background-size: contain;
  background-position: 0 -1px;
  animation: norway-fjord-move 60s linear infinite;
  position: absolute;
  bottom: 0;
}
@media (max-width: 767.98px) {
  .norway-fjord-sec {
    padding: 0 0 40% 0;
  }
  .norway-fjord-sec::after {
    padding-bottom: 40%;
  }
}

@keyframes norway-fjord-move {
  from {
    background-position: 0 -1px;
  }
  to {
    background-position: 100vw -1px;
  }
}
.sec-label {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .sec-label {
    font-size: 18px !important;
  }
}
.sec-label {
  padding: 16px 12px 32px 16px !important;
  display: block;
  background-color: #fff;
  color: #124977;
  clip-path: polygon(0 100%, 0 0, 100% 0, 100% 100%, 50% 85%);
  align-self: flex-end;
  transform: translateX(-400%);
}
@media (max-width: 767.98px) {
  .sec-label {
    align-self: center;
    transform: translateX(0);
  }
}

.norway-fjord-title-set {
  display: flex;
  flex-direction: column;
  position: relative;
  align-items: center;
  margin: 0 0 30px 0;
}
.norway-fjord-title-set > .entitle {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .norway-fjord-title-set > .entitle {
    font-size: 18px !important;
  }
}
.norway-fjord-title-set > .entitle {
  font-family: "Noto Serif TC";
  font-weight: 400 !important;
  color: #fff !important;
  margin: 0 0 4px 0 !important;
  letter-spacing: 1px;
  text-transform: uppercase;
  position: relative;
}
.norway-fjord-title-set > .entitle::before {
  display: block;
  content: "";
  width: 100%;
  padding-bottom: 5px;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/deco_ico_fjord_title_line.webp);
  background-size: 100%;
  background-repeat: no-repeat;
  position: absolute;
  top: -4px;
  left: 0;
}
@media (max-width: 767.98px) {
  .norway-fjord-title-set > .entitle {
    font-size: 28px;
  }
}
@media (max-width: 575.98px) {
  .norway-fjord-title-set > .entitle {
    text-align: center;
    font-size: 24px;
  }
}
.norway-fjord-title-set > h4 {
  font-size: 36px !important;
  font-weight: 700 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .norway-fjord-title-set > h4 {
    font-size: 28px !important;
  }
}
.norway-fjord-title-set > h4 {
  font-weight: 700 !important;
  color: #fff !important;
  letter-spacing: 6px;
  margin: 0 0 8px 0 !important;
}
@media (max-width: 419.98px) {
  .norway-fjord-title-set > h4 {
    font-size: 20px;
  }
}
.norway-fjord-title-set > h5 {
  font-size: 28px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .norway-fjord-title-set > h5 {
    font-size: 24px !important;
  }
}
.norway-fjord-title-set > h5 {
  font-weight: 700 !important;
  color: #fff !important;
  letter-spacing: 6px;
  margin: 0 !important;
}

.deco-ico-fjord-mt {
  display: block;
  width: 176px;
  padding-bottom: 100px;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/deco_ico_fjord_title.svg);
  background-repeat: no-repeat;
  background-size: contain;
  font-size: 0;
}

.norway-fjord-intro-separate {
  width: 100%;
  display: block;
  font-size: 0;
  padding-bottom: 60px;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/fjord_separarte_line.webp);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 50%;
  margin: 30px 0;
}

.norway-fjord-intro-set {
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin: 40px 0;
  perspective: 1200px; /* 增加 3D 視距 */
}
@media (max-width: 767.98px) {
  .norway-fjord-intro-set {
    flex-wrap: wrap;
  }
}
.norway-fjord-intro-set.reverse {
  flex-direction: row-reverse;
}
@media (max-width: 767.98px) {
  .norway-fjord-intro-set.reverse {
    flex-direction: row;
  }
}

.norway-fjord-intro {
  width: 48%;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  align-items: flex-start;
  position: relative;
  gap: 40px 0;
  will-change: transform, opacity;
}
@media (max-width: 767.98px) {
  .norway-fjord-intro {
    width: 100%;
  }
}

.norway-fjord-scene-point {
  padding: 0 50px;
  position: relative;
}
.norway-fjord-scene-point::before {
  display: block;
  content: "";
  width: 20px;
  height: 100px;
  background-color: #a8d1f3;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.norway-fjord-scene-point::after {
  display: block;
  content: "";
  width: 30px;
  height: 1px;
  background-color: #ccc;
  position: absolute;
  top: 80px;
  left: 10px;
  z-index: 2;
}
.norway-fjord-scene-point > h4 {
  font-size: 28px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .norway-fjord-scene-point > h4 {
    font-size: 24px !important;
  }
}
.norway-fjord-scene-point > h4 {
  padding: 0 !important;
  color: #fff !important;
  margin: 0 0 24px 0 !important;
  display: flex;
  position: relative;
}
.norway-fjord-scene-point > h4::before {
  display: block;
  content: "▪";
}

.norway-fjord-intro-parag {
  font-size: 16px;
  letter-spacing: 2px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 767.98px) {
  .norway-fjord-intro-parag {
    font-size: 14px !important;
  }
}
.norway-fjord-intro-parag {
  color: #fff;
  margin: 0 0 16px 0;
}

.norway-fjord-gallery {
  position: relative;
  width: 48%;
  will-change: transform, opacity;
}
@media (max-width: 767.98px) {
  .norway-fjord-gallery {
    width: 100%;
  }
}
.norway-fjord-gallery > img {
  display: block;
  width: 100%;
}

/* 赫爾辛基 */
.helsinki-city-sec {
  background-color: #f9f9f9;
}

.helsinki-city-title-set {
  display: flex;
  flex-direction: column;
  position: relative;
  align-items: center;
  width: 100%;
  margin: 0 0 30px 0;
}
.helsinki-city-title-set > .attached-title {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .helsinki-city-title-set > .attached-title {
    font-size: 18px !important;
  }
}
.helsinki-city-title-set > .attached-title {
  font-weight: 400 !important;
  color: #030c1f !important;
  margin: 0 0 4px 0 !important;
  letter-spacing: 4px;
}
@media (max-width: 767.98px) {
  .helsinki-city-title-set > .attached-title {
    font-size: 28px;
  }
}
@media (max-width: 575.98px) {
  .helsinki-city-title-set > .attached-title {
    text-align: center;
    font-size: 24px;
  }
}
.helsinki-city-title-set > h4 {
  font-size: 36px !important;
  font-weight: 700 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .helsinki-city-title-set > h4 {
    font-size: 28px !important;
  }
}
.helsinki-city-title-set > h4 {
  font-weight: 700 !important;
  color: #030c1f !important;
  letter-spacing: 8px;
  margin: 0 !important;
}
@media (max-width: 419.98px) {
  .helsinki-city-title-set > h4 {
    font-size: 20px;
  }
}
.helsinki-city-title-set > h4 > b {
  font-weight: 700 !important;
  font-family: "Noto Serif TC";
  font-size: 48px;
}
@media (max-width: 419.98px) {
  .helsinki-city-title-set > h4 > b {
    font-size: 28px;
  }
}

.deco-helsinki-city-title-house {
  display: block;
  width: 350px;
  padding-bottom: 144px;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/deco_ico_helsinki_title.svg);
  background-size: contain;
  background-repeat: no-repeat;
  font-size: 0;
}

.helsinki-city-intro-set {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 40px 0;
  perspective: 1200px; /* 增加 3D 視距 */
}
@media (max-width: 767.98px) {
  .helsinki-city-intro-set {
    flex-wrap: wrap;
  }
}
.helsinki-city-intro-set.reverse {
  flex-direction: row-reverse;
}
@media (max-width: 767.98px) {
  .helsinki-city-intro-set.reverse {
    flex-direction: row;
  }
}

.helsinki-city-intro {
  width: 40%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0 30px;
  will-change: transform, opacity;
}
@media (max-width: 767.98px) {
  .helsinki-city-intro {
    width: 100%;
  }
}

.helsinki-city-intro-parag {
  font-size: 16px;
  letter-spacing: 2px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 767.98px) {
  .helsinki-city-intro-parag {
    font-size: 14px !important;
  }
}
.helsinki-city-intro-parag {
  color: #6d7186;
  margin: 0 0 16px 0;
}

.helsinki-city-gallery {
  position: relative;
  width: 55%;
  will-change: transform, opacity;
}
@media (max-width: 767.98px) {
  .helsinki-city-gallery {
    width: 100%;
  }
}
.helsinki-city-gallery > img {
  display: block;
  width: 100%;
}

.deco-writings-helsinki {
  display: block;
  width: 140px;
  padding-bottom: 50px;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/deco_writings_helsinki.webp);
  background-size: contain;
  background-repeat: no-repeat;
  font-size: 0;
  align-self: flex-end;
}

.silja-cruise-title-set {
  display: flex;
  flex-direction: column;
  position: relative;
  align-items: center;
  margin: 0 0 30px 0;
}
.silja-cruise-title-set .silja-title-ico {
  display: block;
  width: 140px;
  padding-bottom: 64px;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/deco_ico_silja_title.svg);
  background-size: contain;
  background-repeat: no-repeat;
  font-size: 0;
  margin: 0 0 16px 0;
}
.silja-cruise-title-set > h4 {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .silja-cruise-title-set > h4 {
    font-size: 18px !important;
  }
}
.silja-cruise-title-set > h4 {
  color: #fff !important;
  background-color: #040c1f;
  letter-spacing: 6px;
  padding: 10px 18px 10px 24px !important;
  margin: 0 !important;
  display: flex;
  border-radius: 25vw;
  position: relative;
  justify-content: center;
  align-items: center;
}
@media (max-width: 419.98px) {
  .silja-cruise-title-set > h4 {
    font-size: 20px;
  }
}
.silja-cruise-title-set > h4::before {
  display: block;
  content: "";
  position: absolute;
  width: calc(100% + 8px);
  height: calc(100% + 8px);
  border: 1px solid #040c1f;
  border-radius: 25vw;
  transform: translateX(-3px);
}

.silja-cruise-parag {
  font-size: 16px;
  letter-spacing: 2px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 767.98px) {
  .silja-cruise-parag {
    font-size: 14px !important;
  }
}
.silja-cruise-parag {
  color: #6d7186;
  letter-spacing: 6px;
  line-height: 2;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  gap: 24px 0;
  z-index: 2;
}

.focus-trip-point-grid {
  width: 60%;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  background-color: #fff;
  padding: 20px;
  margin: 60px 0;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
  z-index: 2;
}
@media (max-width: 767.98px) {
  .focus-trip-point-grid {
    width: 100%;
    padding: 10px;
  }
}
.focus-trip-point-grid > h4 {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .focus-trip-point-grid > h4 {
    font-size: 18px !important;
  }
}
.focus-trip-point-grid > h4 {
  color: #071536 !important;
  font-weight: 700 !important;
  margin: 0 !important;
}
@media (max-width: 767.98px) {
  .focus-trip-point-grid > h4 {
    padding: 8px 0 !important;
    border-right: 0;
    border-bottom: 1px solid #071536;
  }
}
.focus-trip-point-grid > h5 {
  font-size: 16px;
  letter-spacing: 2px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 767.98px) {
  .focus-trip-point-grid > h5 {
    font-size: 14px !important;
  }
}
.focus-trip-point-grid > h5 {
  color: #6d7186 !important;
  letter-spacing: 2px;
  font-weight: 400 !important;
  margin: 0 !important;
}
@media (max-width: 767.98px) {
  .focus-trip-point-grid > h5 {
    font-size: 16px !important;
  }
}
.focus-trip-point-grid.full {
  width: 100%;
  padding: 40px;
  background-color: #fff;
  box-shadow: 0 12px 16px rgba(0, 0, 0, 0.05);
  margin: 0 0 40px 0;
}
@media (max-width: 1199.98px) {
  .focus-trip-point-grid.full {
    padding: 30px 20px;
  }
}
.focus-trip-point-grid .focus-trip-point-tape {
  display: block;
  width: 36px;
  padding-bottom: 70px;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/silja_cruise_photo_tape.webp);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  font-size: 0;
  z-index: 3;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}
.focus-trip-point-grid::before, .focus-trip-point-grid::after {
  display: block;
  content: "";
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
}
.focus-trip-point-grid::before {
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/deco_ico_silja_cruise_view_01.svg);
  width: 94px;
  padding-bottom: 140px;
  z-index: 3;
  top: 0;
  left: 0;
  transform: translate(-50%, -30%) rotate(45deg);
}
@media (max-width: 767.98px) {
  .focus-trip-point-grid::before {
    width: 47px;
    padding-bottom: 70px;
  }
}
.focus-trip-point-grid::after {
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/deco_ico_silja_cruise_view_02.svg);
  width: 167px;
  padding-bottom: 75px;
  z-index: 3;
  right: 0;
  bottom: 0;
  transform: translate(50%, 40%);
}
@media (max-width: 767.98px) {
  .focus-trip-point-grid::after {
    width: 83px;
    padding-bottom: 38px;
  }
}

.focus-trip-point-write {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .focus-trip-point-write {
    font-size: 18px !important;
  }
}
.focus-trip-point-write {
  font-family: "WindSong", cursive;
  color: #fff !important;
  position: absolute;
  z-index: 3;
  right: 20px;
  bottom: 10px;
}

.focus-trip-point-pic-frame {
  position: relative;
  margin: 0 0 14px 0;
  width: 100%;
  background-color: #16cdfe;
}
@media (max-width: 767.98px) {
  .focus-trip-point-pic-frame {
    margin: 0;
  }
}
.focus-trip-point-pic-frame > img {
  width: 100%;
  display: block;
}

.point-pic-log {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 60px 10px 0 10px;
  width: 90%;
}
@media (max-width: 767.98px) {
  .point-pic-log {
    width: 100%;
    padding: 40px 10px 0 10px;
  }
}
.point-pic-log > p {
  font-size: 16px;
  letter-spacing: 2px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 767.98px) {
  .point-pic-log > p {
    font-size: 14px !important;
  }
}
.point-pic-log > p {
  color: #fff !important;
}

.point-pic-log-title {
  display: flex;
  align-items: center;
  margin: 0 0 8px 0 !important;
}
@media (max-width: 767.98px) {
  .point-pic-log-title {
    flex-direction: column;
    align-items: flex-start;
  }
}
.point-pic-log-title > b {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .point-pic-log-title > b {
    font-size: 18px !important;
  }
}
.point-pic-log-title > b {
  color: #fff !important;
  margin: 0 12px 0 0 !important;
  padding: 0 8px 0 0 !important;
  border-right: 1px solid #fff;
  font-weight: 700 !important;
}
@media (max-width: 767.98px) {
  .point-pic-log-title > b {
    border-right: 0;
    border-bottom: 1px solid #fff;
  }
}
.point-pic-log-title > span {
  font-size: 16px;
  letter-spacing: 2px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 767.98px) {
  .point-pic-log-title > span {
    font-size: 14px !important;
  }
}
.point-pic-log-title > span {
  color: #fff !important;
  font-weight: 400 !important;
}

.silja-enviro-wrapper {
  display: flex;
  flex-direction: row;
  position: relative;
  gap: 0 2%;
  align-items: stretch;
  flex-wrap: wrap;
  width: 100%;
}
@media (max-width: 1199.98px) {
  .silja-enviro-wrapper {
    gap: 2% 2%;
  }
}
@media (max-width: 767.98px) {
  .silja-enviro-wrapper {
    gap: 0 2%;
    padding: 0;
  }
}

.silja-enviro-triple-shape {
  width: 32%;
  display: flex;
  flex-direction: column;
  position: relative;
  padding: 0 20px;
  align-items: center;
  justify-content: flex-start;
}
@media (max-width: 1199.98px) {
  .silja-enviro-triple-shape {
    width: 49%;
    order: 2;
  }
}
@media (max-width: 767.98px) {
  .silja-enviro-triple-shape {
    width: 100%;
    padding: 0;
  }
}

.silja-enviro-border-pic {
  position: relative;
  width: 100%;
  margin: 30px 0 !important;
  padding: 10px;
  background-color: #fff;
}
.silja-enviro-border-pic > img {
  display: block;
  width: 100%;
  border-radius: 0 5vw 0 0;
  margin: 0 0 12px 0;
}

.silja-enviro-title {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .silja-enviro-title {
    font-size: 18px !important;
  }
}
.silja-enviro-title {
  color: #071536 !important;
  font-weight: 700;
  letter-spacing: 4px;
  display: flex;
  justify-content: center;
  gap: 6px 0;
  margin: 0 0 10px 0 !important;
}
.silja-enviro-title::before, .silja-enviro-title::after {
  display: block;
  content: "˙";
}

/* 斯德哥爾摩全景 */
.stockholm-full-scene-sec {
  overflow: hidden;
  border-bottom: 3px solid #2e445b;
  background-color: #f9f9f9;
}

.stockholm-full-scene-bg {
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/stockholm_city_view_full.webp);
  width: 100%;
  padding-bottom: 40%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: absolute;
  z-index: 1;
  bottom: 5%;
  left: 0;
  font-size: 0;
  margin: 0 !important;
}
@media (max-width: 991.98px) {
  .stockholm-full-scene-bg {
    padding-bottom: 45%;
  }
}
@media (max-width: 767.98px) {
  .stockholm-full-scene-bg {
    padding-bottom: unset;
    height: 120%;
    bottom: 0;
  }
}

.stockholm-full-scene-wrapper {
  padding: 150px 0;
  position: relative;
  z-index: 2;
}

.intro-board-effect {
  width: 35%;
  position: relative;
  display: flex;
  align-self: flex-start;
  /* 陰影會沿著郵票挖孔後的輪廓 */
  filter: drop-shadow(0 8px 10px rgba(0, 0, 0, 0.25));
}
.intro-board-effect::before {
  display: block;
  content: "";
  width: 180px;
  padding-bottom: 120px;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/stockholm_post_stamp.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 5;
  transform: translate(50%, 20%);
}
@media (max-width: 991.98px) {
  .intro-board-effect {
    width: 50%;
  }
}
@media (max-width: 767.98px) {
  .intro-board-effect {
    width: 100%;
  }
}

.stockholm-full-scene-intro-board {
  margin: 5% 0 0 0;
  padding: 10%;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  z-index: 2;
  --hole-radius: 6px; /* 孔洞大小 */
  --hole-space: 20px; /* 孔洞間距 */
  background: #f8f8f8;
  /* 先保留完整容器，再從四邊扣除圓形 */
  -webkit-mask: linear-gradient(#000 0 0), radial-gradient(circle at 0 50%, #000 0 var(--hole-radius), transparent calc(var(--hole-radius) + 0.5px)) 0 calc(var(--hole-space) / 2)/calc(var(--hole-radius) * 2) var(--hole-space) repeat-y, radial-gradient(circle at 100% 50%, #000 0 var(--hole-radius), transparent calc(var(--hole-radius) + 0.5px)) 100% calc(var(--hole-space) / 2)/calc(var(--hole-radius) * 2) var(--hole-space) repeat-y, radial-gradient(circle at 50% 0, #000 0 var(--hole-radius), transparent calc(var(--hole-radius) + 0.5px)) calc(var(--hole-space) / 2) 0/var(--hole-space) calc(var(--hole-radius) * 2) repeat-x, radial-gradient(circle at 50% 100%, #000 0 var(--hole-radius), transparent calc(var(--hole-radius) + 0.5px)) calc(var(--hole-space) / 2) 100%/var(--hole-space) calc(var(--hole-radius) * 2) repeat-x;
  -webkit-mask-composite: xor;
  -webkit-mask: linear-gradient(#000 0 0), radial-gradient(circle at 0 50%, #000 0 var(--hole-radius), transparent calc(var(--hole-radius) + 0.5px)) 0 calc(var(--hole-space) / 2)/calc(var(--hole-radius) * 2) var(--hole-space) repeat-y, radial-gradient(circle at 100% 50%, #000 0 var(--hole-radius), transparent calc(var(--hole-radius) + 0.5px)) 100% calc(var(--hole-space) / 2)/calc(var(--hole-radius) * 2) var(--hole-space) repeat-y, radial-gradient(circle at 50% 0, #000 0 var(--hole-radius), transparent calc(var(--hole-radius) + 0.5px)) calc(var(--hole-space) / 2) 0/var(--hole-space) calc(var(--hole-radius) * 2) repeat-x, radial-gradient(circle at 50% 100%, #000 0 var(--hole-radius), transparent calc(var(--hole-radius) + 0.5px)) calc(var(--hole-space) / 2) 100%/var(--hole-space) calc(var(--hole-radius) * 2) repeat-x;
          mask: linear-gradient(#000 0 0), radial-gradient(circle at 0 50%, #000 0 var(--hole-radius), transparent calc(var(--hole-radius) + 0.5px)) 0 calc(var(--hole-space) / 2)/calc(var(--hole-radius) * 2) var(--hole-space) repeat-y, radial-gradient(circle at 100% 50%, #000 0 var(--hole-radius), transparent calc(var(--hole-radius) + 0.5px)) 100% calc(var(--hole-space) / 2)/calc(var(--hole-radius) * 2) var(--hole-space) repeat-y, radial-gradient(circle at 50% 0, #000 0 var(--hole-radius), transparent calc(var(--hole-radius) + 0.5px)) calc(var(--hole-space) / 2) 0/var(--hole-space) calc(var(--hole-radius) * 2) repeat-x, radial-gradient(circle at 50% 100%, #000 0 var(--hole-radius), transparent calc(var(--hole-radius) + 0.5px)) calc(var(--hole-space) / 2) 100%/var(--hole-space) calc(var(--hole-radius) * 2) repeat-x;
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  box-shadow: 0 0 12px rgb(0, 0, 0);
}
.stockholm-full-scene-intro-board::after {
  content: "";
  position: absolute;
  inset: 22px;
  border: 1px dashed #454d67;
  pointer-events: none;
}

.stockholm-full-scene-en-writings {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .stockholm-full-scene-en-writings {
    font-size: 18px !important;
  }
}
.stockholm-full-scene-en-writings {
  font-family: "WindSong", cursive;
  font-weight: 400 !important;
  font-style: normal;
  color: #293a6c !important;
  opacity: 0.35;
  margin: 0 !important;
  transform: translateX(-50%);
}
@media (max-width: 575.98px) {
  .stockholm-full-scene-en-writings {
    align-self: center;
    transform: translateX(0);
  }
}

.stockholm-full-scene-title-cht {
  font-size: 36px !important;
  font-weight: 700 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .stockholm-full-scene-title-cht {
    font-size: 28px !important;
  }
}
.stockholm-full-scene-title-cht {
  letter-spacing: 6px;
  color: #1f2552 !important;
  font-weight: 900 !important;
  margin: 0 0 6px 0 !important;
  position: relative;
}
@media (max-width: 575.98px) {
  .stockholm-full-scene-title-cht {
    align-self: center;
  }
}

.stockholm-full-scene-attached-title {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .stockholm-full-scene-attached-title {
    font-size: 18px !important;
  }
}
.stockholm-full-scene-attached-title {
  font-weight: 400 !important;
  letter-spacing: 8px;
  color: #1f2552 !important;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  white-space: nowrap;
  line-height: 1.2;
  gap: 8px 6px;
  margin: 0 0 20px 0 !important;
}
@media (max-width: 575.98px) {
  .stockholm-full-scene-attached-title {
    white-space: wrap;
  }
}
.stockholm-full-scene-attached-title::after {
  display: block;
  content: "";
  width: 64px;
  padding-bottom: 18px;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/deco_ico_post_floral.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.stockholm-full-scene-parag-screen {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px 0;
}
.stockholm-full-scene-parag-screen > p {
  font-size: 16px;
  letter-spacing: 2px;
  color: #7084a9;
  text-align: center;
}

/* 斯德哥爾摩 */
.stockholm-city-sec {
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/stockholm_city_view_sec_bg.webp);
  border-top: 3px solid #7289a0;
  border-bottom: 3px solid #7289a0;
}

.stockholm-city-intro-set {
  display: flex;
  align-items: center;
  margin: 40px 0;
  perspective: 1200px; /* 增加 3D 視距 */
}
@media (max-width: 767.98px) {
  .stockholm-city-intro-set {
    flex-wrap: wrap;
    margin: 20px 0;
    gap: 10px 0;
  }
}
.stockholm-city-intro-set.reverse {
  flex-direction: row-reverse;
}
@media (max-width: 767.98px) {
  .stockholm-city-intro-set.reverse {
    flex-direction: row;
  }
}

.stockholm-city-intro {
  width: 50%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0 30px;
  will-change: transform, opacity;
}
@media (max-width: 767.98px) {
  .stockholm-city-intro {
    width: 100%;
    padding: 0;
  }
}
.stockholm-city-intro > h4 {
  display: flex;
  flex-direction: column;
  padding: 0 0 0 12px;
  margin: 0 0 32px 0;
  border-left: 2px solid #592527;
  align-self: center;
}
@media (max-width: 767.98px) {
  .stockholm-city-intro > h4 {
    align-self: flex-start;
  }
}
.stockholm-city-intro > h4 > .main {
  font-size: 28px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .stockholm-city-intro > h4 > .main {
    font-size: 24px !important;
  }
}
.stockholm-city-intro > h4 > .main {
  color: #23384a;
  font-weight: 700 !important;
}
.stockholm-city-intro > h4 > .attached {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .stockholm-city-intro > h4 > .attached {
    font-size: 18px !important;
  }
}
.stockholm-city-intro > h4 > .attached {
  color: #3f4d79;
}
.stockholm-city-intro > img {
  display: block;
  width: 100%;
}

.stockholm-city-intro-parag {
  font-size: 16px;
  letter-spacing: 2px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 767.98px) {
  .stockholm-city-intro-parag {
    font-size: 14px !important;
  }
}
.stockholm-city-intro-parag {
  color: #3d4a72;
  margin: 0 0 16px 0;
}

.deco-ico {
  display: block;
  background-size: contain;
  background-repeat: no-repeat;
  font-size: 0;
  align-self: center;
  margin: 0 0 10px 0;
}
.deco-ico.stockholm-city-hall {
  width: 280px;
  padding-bottom: 106px;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/deco_ico_stockholm_concert_hall.svg);
}
.deco-ico.warship-vasa {
  width: 350px;
  padding-bottom: 114px;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/deco_ico_warship_vasa.webp);
}

.stockholm-city-gallery {
  position: relative;
  width: 50%;
  will-change: transform, opacity;
}
@media (max-width: 767.98px) {
  .stockholm-city-gallery {
    width: 100%;
  }
}
.stockholm-city-gallery > img {
  display: block;
  width: 100%;
}

/* 奧斯陸 */
.oslo-city-sec {
  background-color: #f9f9fb;
  border-top: 3px solid #2e445b;
  border-bottom: 3px solid #2e445b;
}

.oslo-city-title-set {
  display: flex;
  flex-direction: column;
  position: relative;
  align-items: center;
  margin: 0 0 30px 0;
}
.oslo-city-title-set::before {
  display: block;
  content: "";
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/deco_ico_oslo_angel_title.svg);
  width: 80px;
  padding-bottom: 90px;
  position: absolute;
  top: 0;
  left: 0;
}
.oslo-city-title-set > .entitle {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .oslo-city-title-set > .entitle {
    font-size: 18px !important;
  }
}
.oslo-city-title-set > .entitle {
  font-family: "WindSong", cursive;
  font-weight: 300 !important;
  color: #292e6c !important;
  margin: 0 0 4px 0 !important;
  letter-spacing: 2px;
  opacity: 0.35;
  transform: translate(50%, 0);
}
@media (max-width: 767.98px) {
  .oslo-city-title-set > .entitle {
    font-size: 28px;
  }
}
@media (max-width: 575.98px) {
  .oslo-city-title-set > .entitle {
    text-align: center;
    font-size: 24px;
  }
}
.oslo-city-title-set > .attached-title {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .oslo-city-title-set > .attached-title {
    font-size: 18px !important;
  }
}
.oslo-city-title-set > .attached-title {
  color: #030c1f;
  letter-spacing: 4px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px 0;
  margin: 0 0 24px 0;
}
.oslo-city-title-set > .attached-title::after {
  display: block;
  content: "";
  width: 100%;
  padding-bottom: 12px;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/deco_ico_oslo_separate_line_title.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
.oslo-city-title-set > h4 {
  font-size: 36px !important;
  font-weight: 700 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .oslo-city-title-set > h4 {
    font-size: 28px !important;
  }
}
.oslo-city-title-set > h4 {
  font-weight: 700 !important;
  color: #030c1f !important;
  letter-spacing: 12px;
  margin: 0 !important;
}
@media (max-width: 419.98px) {
  .oslo-city-title-set > h4 {
    font-size: 20px;
  }
}
.oslo-city-title-set > h4 > b {
  font-weight: 700 !important;
  font-family: "Noto Serif TC";
  font-size: 48px;
}
@media (max-width: 419.98px) {
  .oslo-city-title-set > h4 > b {
    font-size: 28px;
  }
}

.oslo-city-parag {
  font-size: 16px;
  letter-spacing: 2px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 767.98px) {
  .oslo-city-parag {
    font-size: 14px !important;
  }
}
.oslo-city-parag {
  color: #6d7186;
  letter-spacing: 6px;
  line-height: 2 !important;
  text-align: center;
  font-weight: 300;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  gap: 24px 0;
  z-index: 2;
}

.oslo-city-intro-set {
  display: flex;
  align-items: center;
  margin: 40px 0;
  perspective: 1200px; /* 增加 3D 視距 */
}
@media (max-width: 767.98px) {
  .oslo-city-intro-set {
    flex-wrap: wrap;
  }
}
.oslo-city-intro-set.reverse {
  flex-direction: row-reverse;
}
@media (max-width: 767.98px) {
  .oslo-city-intro-set.reverse {
    flex-direction: row;
  }
}
.oslo-city-intro-set.banner::before {
  display: block;
  content: "";
  width: 100%;
  padding-bottom: 15%;
  position: absolute;
  z-index: -1;
  background-color: #e8e8f1;
  bottom: 0;
  left: 0;
  transform: translate(-50%, 30%);
}

.oslo-city-intro {
  width: 50%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0 30px;
  will-change: transform, opacity;
}
@media (max-width: 767.98px) {
  .oslo-city-intro {
    width: 100%;
    padding: 0;
  }
}
.oslo-city-intro > .en-writings {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .oslo-city-intro > .en-writings {
    font-size: 18px !important;
  }
}
.oslo-city-intro > .en-writings {
  font-family: "WindSong", cursive;
  align-self: flex-end;
  color: #000;
  margin: 16px 0 0 0;
}

.oslo-intro-title-set {
  display: flex;
  flex-direction: column;
  margin: 0 0 32px 0;
  padding: 0 0 0 12px;
  border-left: 1px solid #071536;
  position: relative;
}
.oslo-intro-title-set > h4 {
  font-size: 28px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .oslo-intro-title-set > h4 {
    font-size: 24px !important;
  }
}
.oslo-intro-title-set > h4 {
  color: #071536 !important;
  font-weight: 700 !important;
  margin: 0 !important;
}
.oslo-intro-title-set > h5 {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .oslo-intro-title-set > h5 {
    font-size: 18px !important;
  }
}
.oslo-intro-title-set > h5 {
  color: #071536 !important;
  margin: 0 !important;
}
.oslo-intro-title-set.nobel-prize::before {
  display: block;
  content: "";
  width: 60px;
  padding-bottom: 60px;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/deco_ico_nobel_portrait.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  right: 0;
  transform: translate(100%, 0);
}
.oslo-intro-title-set.statue-tools::before {
  display: block;
  content: "";
  width: 48px;
  padding-bottom: 60px;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/deco_ico_vigeland_park_title-01.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  right: 0;
  transform: translate(100%, 0);
}

.oslo-city-intro-parag {
  font-size: 16px;
  letter-spacing: 2px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 767.98px) {
  .oslo-city-intro-parag {
    font-size: 14px !important;
  }
}
.oslo-city-intro-parag {
  color: #6d7186;
  margin: 0 0 16px 0;
}

.oslo-city-gallery {
  position: relative;
  width: 50%;
  will-change: transform, opacity;
}
@media (max-width: 767.98px) {
  .oslo-city-gallery {
    width: 100%;
  }
}
.oslo-city-gallery > img {
  display: block;
  width: 100%;
}

/* 哥本哈根 */
.copenhagen-city-sec {
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/copenhagen_city_view_sec_bg.webp);
  border-bottom: 3px solid #2e445b;
}

.copenhagen-city-title-set {
  display: flex;
  flex-direction: column;
  position: relative;
  align-items: flex-start;
  margin: 0 0 30px 0;
  padding: 0 0 0 16px;
  border-left: 3px solid #fff;
}
.copenhagen-city-title-set::before {
  display: block;
  content: "";
  width: 120px;
  padding-bottom: 73px;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/deco_ico_copenhagen_title.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(50%, -40%);
}
.copenhagen-city-title-set > .entitle {
  font-size: 28px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .copenhagen-city-title-set > .entitle {
    font-size: 24px !important;
  }
}
.copenhagen-city-title-set > .entitle {
  font-family: "Noto Serif TC";
  font-weight: 300 !important;
  color: #c5d2ff !important;
  margin: 0 0 4px 0 !important;
  letter-spacing: 2px;
  text-transform: uppercase;
}
@media (max-width: 767.98px) {
  .copenhagen-city-title-set > .entitle {
    font-size: 28px;
  }
}
@media (max-width: 575.98px) {
  .copenhagen-city-title-set > .entitle {
    text-align: center;
    font-size: 24px;
  }
}
.copenhagen-city-title-set > h4 {
  font-size: 36px !important;
  font-weight: 700 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .copenhagen-city-title-set > h4 {
    font-size: 28px !important;
  }
}
.copenhagen-city-title-set > h4 {
  font-weight: 700 !important;
  color: #fff !important;
  letter-spacing: 4px;
  margin: 0 !important;
}
@media (max-width: 419.98px) {
  .copenhagen-city-title-set > h4 {
    font-size: 20px;
  }
}

.copenhagen-city-intro-set {
  display: flex;
  align-items: center;
  margin: 40px 0;
  perspective: 1200px; /* 增加 3D 視距 */
}
@media (max-width: 767.98px) {
  .copenhagen-city-intro-set {
    flex-wrap: wrap;
    gap: 20px 0;
  }
}
.copenhagen-city-intro-set.reverse {
  flex-direction: row-reverse;
}
@media (max-width: 767.98px) {
  .copenhagen-city-intro-set.reverse {
    flex-direction: row;
  }
}

.copenhagen-city-intro {
  width: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0 30px;
  will-change: transform, opacity;
}
@media (max-width: 767.98px) {
  .copenhagen-city-intro {
    width: 100%;
    padding: 0;
  }
}
.copenhagen-city-intro > h4 {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .copenhagen-city-intro > h4 {
    font-size: 18px !important;
  }
}
.copenhagen-city-intro > h4 {
  color: #fff !important;
  margin: 0 0 12px 0 !important;
  display: flex;
}
.copenhagen-city-intro > h4::before, .copenhagen-city-intro > h4::after {
  display: block;
  content: "˙";
}
.copenhagen-city-intro > img {
  display: block;
  width: 100%;
  margin: 0 0 24px 0;
}
@media (max-width: 767.98px) {
  .copenhagen-city-intro > img {
    margin: 0 0 12px 0;
  }
}

.copenhagen-city-intro-parag {
  font-size: 16px;
  letter-spacing: 2px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 767.98px) {
  .copenhagen-city-intro-parag {
    font-size: 14px !important;
  }
}
.copenhagen-city-intro-parag {
  color: #fff;
  padding: 0 0 12px 0 !important;
  margin: 0 0 16px 0;
  text-align: center;
  width: 100%;
}
.copenhagen-city-intro-parag.under-line {
  border-bottom: 1px solid #fff;
}

.note-paper {
  padding: 12px 12px;
  background-color: #fff;
  gap: 6px 0;
  display: flex;
  flex-direction: column;
}
.note-paper > p {
  font-size: 16px;
  letter-spacing: 2px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 767.98px) {
  .note-paper > p {
    font-size: 14px !important;
  }
}
.note-paper > p {
  display: flex;
  align-items: flex-start;
  color: #071536;
}
.note-paper > p::before {
  font-size: 16px;
  letter-spacing: 2px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 767.98px) {
  .note-paper > p::before {
    font-size: 14px !important;
  }
}
.note-paper > p::before {
  display: block;
  content: "*";
  color: #071536;
}

/* 詩麗雅遊輪 餐食 */
.silja-dining-sec {
  background-color: #f9f9f9;
}

.silja-dining-title-set {
  display: flex;
  flex-direction: column;
  position: relative;
  align-items: center;
  margin: 0 0 30px 0;
}
.silja-dining-title-set > .attached-title {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .silja-dining-title-set > .attached-title {
    font-size: 18px !important;
  }
}
.silja-dining-title-set > .attached-title {
  color: #2d3c50 !important;
  margin: 0 !important;
  will-change: transform, opacity, filter;
}
.silja-dining-title-set > .entitle {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .silja-dining-title-set > .entitle {
    font-size: 18px !important;
  }
}
.silja-dining-title-set > .entitle {
  font-family: "Noto Serif TC";
  font-weight: 300 !important;
  color: #456581 !important;
  margin: 0 0 4px 0 !important;
  letter-spacing: 2px;
  text-transform: uppercase;
  will-change: transform, opacity, filter;
}
@media (max-width: 767.98px) {
  .silja-dining-title-set > .entitle {
    font-size: 28px;
  }
}
@media (max-width: 575.98px) {
  .silja-dining-title-set > .entitle {
    text-align: center;
    font-size: 24px;
  }
}
.silja-dining-title-set > h4 {
  font-size: 36px !important;
  font-weight: 700 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .silja-dining-title-set > h4 {
    font-size: 28px !important;
  }
}
.silja-dining-title-set > h4 {
  font-weight: 700 !important;
  color: #2d3c50 !important;
  letter-spacing: 8px;
  margin: 0 0 10px 0 !important;
  border-bottom: 1px solid #2d3c50 !important;
  will-change: transform, opacity, filter;
}
@media (max-width: 419.98px) {
  .silja-dining-title-set > h4 {
    font-size: 20px;
  }
}

.silja-cruise-ico {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0 0 10px 0;
}
.silja-cruise-ico > .ico-part {
  display: block;
  font-size: 0;
  background-repeat: no-repeat;
  background-size: contain;
  transition: 0.5s;
  will-change: transform, opacity, filter;
}
.silja-cruise-ico > .ico-part.cruise {
  width: 121px;
  padding-bottom: 150px;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/deco_ico_meals_silja_cruise.webp);
}
.silja-cruise-ico > .ico-part.knife {
  width: 17px;
  padding-bottom: 120px;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/deco_ico_meals_silja_kinfe.webp);
  position: absolute;
  right: -50px;
  bottom: 0;
  transform: rotate(15deg);
}
.silja-cruise-ico > .ico-part.spoon {
  width: 28px;
  padding-bottom: 120px;
  background-image: url(https://www.ystravel.com.tw/material-alias/團型特色頁/北歐/北歐四國五國/SCA13EKD_北歐五國挪威雙峽灣冰島奇景13天/images/deco_ico_meals_silja_spoon.webp);
  position: absolute;
  left: -50px;
  bottom: 0;
  transform: rotate(-15deg);
}

.silja-dining-menu {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  justify-content: center;
  position: relative;
  gap: 30px 2%;
  margin: 0 0 24px 0;
}

.dining-menu-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 20px 8px;
  background-color: #fff;
  width: 32%;
  position: relative;
  gap: 8px 0;
  box-shadow: 6px 6px 0 #eaecf5;
}
@media (max-width: 767.98px) {
  .dining-menu-box {
    width: 46%;
  }
}
@media (max-width: 575.98px) {
  .dining-menu-box {
    width: 100%;
  }
}
.dining-menu-box > img {
  display: block;
  width: 100%;
}
.dining-menu-box > .dining-name {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #81422d;
  letter-spacing: 4px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 991.98px) {
  .dining-menu-box > .dining-name {
    font-size: 18px !important;
  }
}
.dining-menu-box > .dining-name {
  color: #2d3c50 !important;
  margin: 0 !important;
  display: flex;
  text-align: center;
}
.dining-menu-box > .dining-name::before, .dining-menu-box > .dining-name::after {
  display: block;
  content: "˙";
}

.dining-notice {
  font-size: 16px;
  letter-spacing: 2px;
  line-height: unset !important;
  padding: 0 !important;
}
@media (max-width: 767.98px) {
  .dining-notice {
    font-size: 14px !important;
  }
}
.dining-notice {
  display: flex;
  justify-content: center;
  color: #456581 !important;
  font-weight: 400;
  margin: 0 !important;
}
.dining-notice::before {
  display: block;
  content: "※";
}/*# sourceMappingURL=north_europe.css.map */