@charset "UTF-8";
:root {
  --remBasicSize: 16px;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  list-style: none;
}

body,
html {
  font-family: "Noto Sans TC", Helvetica, Arial, "黑體-繁", "Heiti TC", "儷黑", "LiHei", "微軟正黑體", "Microsoft JhengHei", sans-serif;
  background-color: #fff;
  color: #000;
  font-size: 16px;
}

input,
select,
textarea,
button,
option,
li {
  font-family: "Noto Sans TC", Helvetica, Arial, "黑體-繁", "Heiti TC", "儷黑", "LiHei", "微軟正黑體", "Microsoft JhengHei", sans-serif;
  color: #212121;
}

a,
button {
  text-decoration: none;
  transition: all ease-in-out 0.2s;
  cursor: pointer;
}
a:focus, a:hover, a:active,
button:focus,
button:hover,
button:active {
  outline: none;
  text-decoration: none;
}

::-webkit-scrollbar {
  display: none;
}

.flex_r {
  display: flex;
  flex-direction: row;
}

#hamburger .menu_toggle {
  position: fixed;
  z-index: 101;
  top: 0;
  right: 0;
  width: calc(3.375 * var(--remBasicSize));
  height: calc(3.375 * var(--remBasicSize));
  padding: 0;
  border: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #eb6d80;
}
#hamburger .menu_toggle .title {
  position: absolute;
  top: calc(0.375 * var(--remBasicSize));
  left: 50%;
  width: calc(2.5 * var(--remBasicSize));
  height: calc(0.75 * var(--remBasicSize));
  background: url(../images/nav/menu.png) no-repeat center/contain;
  transform: translateX(-50%);
}
#hamburger .menu_toggle .icon_lines {
  position: absolute;
  top: calc(1.5 * var(--remBasicSize));
  left: 50%;
  width: calc(1.875 * var(--remBasicSize));
  height: calc(1.125 * var(--remBasicSize));
  transform: translateX(-50%);
}
#hamburger .menu_toggle .one,
#hamburger .menu_toggle .two,
#hamburger .menu_toggle .three {
  position: absolute;
  left: 0;
  width: calc(1.875 * var(--remBasicSize));
  height: calc(0.125 * var(--remBasicSize));
  background: #fff;
  transition: transform 0.3s ease, opacity 0.3s ease;
}
#hamburger .menu_toggle .one {
  top: 0;
}
#hamburger .menu_toggle .two {
  top: calc(0.5 * var(--remBasicSize));
}
#hamburger .menu_toggle .three {
  top: calc(1 * var(--remBasicSize));
}
#hamburger .menu_toggle.on .title {
  background-image: url(../images/nav/close.png);
}
#hamburger .menu_toggle.on .one {
  opacity: 0;
}
#hamburger .menu_toggle.on .two {
  transform: rotate(45deg);
}
#hamburger .menu_toggle.on .three {
  transform: translateY(calc(-0.5 * var(--remBasicSize))) rotate(-45deg);
}
#hamburger .menu_toggle:focus-visible {
  outline: calc(0.125 * var(--remBasicSize)) solid #fff;
  outline-offset: calc(-0.25 * var(--remBasicSize));
}
#hamburger .nav {
  position: fixed;
  z-index: 100;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: hidden auto;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  background: #bedfc2;
  transition: opacity 0.35s ease, visibility 0s linear 0.35s;
}
#hamburger .nav.hidden {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  transition: opacity 0.35s ease;
}
#hamburger .nav.hidden .inner {
  transform: translateY(0);
}
#hamburger .nav .container {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-width: 0;
  height: 100%;
  min-height: calc(35 * var(--remBasicSize));
}
#hamburger .nav .inner {
  position: relative;
  top: 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: calc(4 * var(--remBasicSize));
  width: min(59.25 * var(--remBasicSize), 100vw - 3 * var(--remBasicSize));
  transform: translateY(calc(1 * var(--remBasicSize)));
  transition: transform 0.45s ease;
}
#hamburger .nav_visual {
  position: relative;
  flex: 0 0 calc(33.75 * var(--remBasicSize));
  width: calc(33.75 * var(--remBasicSize));
  height: calc(31.25 * var(--remBasicSize));
}
#hamburger .visual_slogan,
#hamburger .visual_snowflake,
#hamburger .visual_bag,
#hamburger .visual_tower {
  position: absolute;
  display: block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
#hamburger .visual_slogan--one {
  top: calc(0.25 * var(--remBasicSize));
  left: calc(10.9375 * var(--remBasicSize));
  width: calc(16.875 * var(--remBasicSize));
  height: calc(4.75 * var(--remBasicSize));
  background-image: url("../images/nav/slogan_1.png");
  animation: nav_slogan_float 4.2s ease-in-out infinite alternate paused;
  z-index: 4;
}
#hamburger .visual_slogan--two {
  top: calc(4.375 * var(--remBasicSize));
  left: calc(17.0625 * var(--remBasicSize));
  width: calc(14.375 * var(--remBasicSize));
  height: calc(1.8125 * var(--remBasicSize));
  background-image: url("../images/nav/slogan_2.png");
  animation: nav_slogan_float 4.8s ease-in-out 0.55s infinite alternate paused;
  z-index: 4;
}
#hamburger .visual_snowflake {
  z-index: 1;
  top: calc(5.625 * var(--remBasicSize));
  left: calc(7.1875 * var(--remBasicSize));
  width: calc(5.9375 * var(--remBasicSize));
  height: calc(5.8125 * var(--remBasicSize));
  background-image: url("../images/nav/snowflake1.png");
  animation: nav_snowflake_float 3.8s ease-in-out 0.2s infinite alternate paused;
}
#hamburger .visual_bag {
  z-index: 2;
  left: 0;
  bottom: 0;
  width: calc(25.6875 * var(--remBasicSize));
  height: calc(23.75 * var(--remBasicSize));
  background-image: url("../images/nav/bag_with_dec.png");
  transform-origin: center bottom;
  animation: nav_bag_float 5.2s ease-in-out 0.4s infinite alternate paused;
}
#hamburger .visual_tower {
  z-index: 3;
  right: 0;
  bottom: 0;
  width: calc(13.125 * var(--remBasicSize));
  height: calc(22.8125 * var(--remBasicSize));
  background-image: url("../images/nav/eiffel_tower.png");
  filter: drop-shadow(calc(0.0625 * var(--remBasicSize)) calc(0.25 * var(--remBasicSize)) calc(0.125 * var(--remBasicSize)) rgba(35, 24, 21, 0.12));
  transform-origin: center bottom;
  animation: nav_tower_float 4.6s ease-in-out 0.9s infinite alternate paused;
}
#hamburger .nav.hidden .visual_slogan,
#hamburger .nav.hidden .visual_snowflake,
#hamburger .nav.hidden .visual_bag,
#hamburger .nav.hidden .visual_tower {
  animation-play-state: running;
}
#hamburger .nav_panel {
  flex: 0 0 calc(19.875 * var(--remBasicSize));
  width: calc(19.875 * var(--remBasicSize));
  margin-top: calc(1.25 * var(--remBasicSize));
}
#hamburger .logo_nav {
  display: block;
  width: calc(9.625 * var(--remBasicSize));
  height: calc(3.25 * var(--remBasicSize));
  margin: 0 auto calc(2.25 * var(--remBasicSize));
}
#hamburger .logo_nav img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
#hamburger .nav_menu {
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  border-bottom: calc(0.0625 * var(--remBasicSize)) solid rgba(0, 0, 0, 0.55);
}
#hamburger .nav_item {
  display: flex;
  align-items: center;
  justify-content: center;
  height: calc(4.0625 * var(--remBasicSize));
  border-top: calc(0.0625 * var(--remBasicSize)) solid rgba(0, 0, 0, 0.55);
}
#hamburger .nav_item--home {
  height: calc(3.3125 * var(--remBasicSize));
}
#hamburger .nav_item:first-child {
  border-top: 0;
}
#hamburger .nav_link {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 100%;
  height: 100%;
}
#hamburger .nav_link > img:not(.coming_soon) {
  display: block;
  width: auto;
  max-width: calc(11.0625 * var(--remBasicSize));
  max-height: calc(1.375 * var(--remBasicSize));
  -o-object-fit: contain;
     object-fit: contain;
}
#hamburger .nav_item--home .nav_link > img {
  width: calc(2.625 * var(--remBasicSize));
  height: calc(1.3125 * var(--remBasicSize));
  max-height: none;
}
#hamburger a.nav_link,
#hamburger .logo_nav,
#hamburger .social_link {
  transition: filter 0.25s ease, transform 0.25s ease;
}
#hamburger a.nav_link:focus-visible,
#hamburger .logo_nav:focus-visible,
#hamburger .social_link:focus-visible {
  outline: calc(0.125 * var(--remBasicSize)) solid #000;
  outline-offset: calc(0.1875 * var(--remBasicSize));
}
#hamburger .is_coming_soon .nav_link {
  cursor: default;
}
#hamburger .is_coming_soon .nav_link > img:not(.coming_soon) {
  opacity: 0.4;
}
#hamburger .coming_soon {
  display: block;
  width: calc(6.6875 * var(--remBasicSize));
  height: auto;
  margin-top: calc(0.125 * var(--remBasicSize));
}
#hamburger .social {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(1.0625 * var(--remBasicSize));
  margin-top: calc(1.0625 * var(--remBasicSize));
}
#hamburger .social_link {
  display: block;
  width: calc(2.5 * var(--remBasicSize));
  height: calc(2.5 * var(--remBasicSize));
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
#hamburger .social_link.ig {
  background-image: url(../images/nav/social_ig.png);
}
#hamburger .social_link.fb {
  background-image: url(../images/nav/social_fb.png);
}
#hamburger .social_link.line {
  background-image: url(../images/nav/social_line.png);
}
@media screen and (max-width: 1024px) {
  #hamburger .menu_toggle {
    width: calc(5.5 * var(--remBasicSize));
    height: calc(5.5 * var(--remBasicSize));
  }
  #hamburger .menu_toggle .title {
    top: calc(0.6875 * var(--remBasicSize));
    width: calc(4.125 * var(--remBasicSize));
    height: calc(1.25 * var(--remBasicSize));
  }
  #hamburger .menu_toggle .icon_lines {
    top: calc(2.8125 * var(--remBasicSize));
    width: calc(3 * var(--remBasicSize));
    height: calc(1.875 * var(--remBasicSize));
  }
  #hamburger .menu_toggle .one,
  #hamburger .menu_toggle .two,
  #hamburger .menu_toggle .three {
    width: calc(3 * var(--remBasicSize));
    height: calc(0.25 * var(--remBasicSize));
  }
  #hamburger .menu_toggle .one {
    top: 0;
  }
  #hamburger .menu_toggle .two {
    top: calc(0.8125 * var(--remBasicSize));
  }
  #hamburger .menu_toggle .three {
    top: calc(1.625 * var(--remBasicSize));
  }
  #hamburger .menu_toggle.on .three {
    transform: translateY(calc(-0.8125 * var(--remBasicSize))) rotate(-45deg);
  }
  #hamburger .nav .container {
    align-items: flex-start;
    height: auto;
    min-height: 100%;
  }
  #hamburger .nav .inner {
    top: 0;
    flex-direction: column-reverse;
    align-items: center;
    justify-content: flex-end;
    gap: calc(3.625 * var(--remBasicSize));
    width: 100%;
    min-height: max(100dvh, 81.25 * var(--remBasicSize));
    padding: calc(6.75 * var(--remBasicSize)) 0 calc(5 * var(--remBasicSize));
  }
  #hamburger .nav_panel {
    flex: 0 0 auto;
    width: calc(28.375 * var(--remBasicSize));
    margin-top: 0;
  }
  #hamburger .logo_nav {
    width: calc(13.75 * var(--remBasicSize));
    height: calc(4.6875 * var(--remBasicSize));
    margin-bottom: calc(2.6875 * var(--remBasicSize));
  }
  #hamburger .nav_item,
  #hamburger .nav_item--home {
    height: calc(5.8125 * var(--remBasicSize));
    border-top: calc(0.0625 * var(--remBasicSize)) solid rgba(0, 0, 0, 0.55);
  }
  #hamburger .nav_item:first-child {
    border-top: 0;
  }
  #hamburger .nav_menu {
    border-bottom: calc(0.0625 * var(--remBasicSize)) solid rgba(0, 0, 0, 0.55);
  }
  #hamburger .nav_link > img:not(.coming_soon) {
    width: auto;
    height: calc(1.875 * var(--remBasicSize));
    max-width: none;
    max-height: none;
  }
  #hamburger .nav_item--home .nav_link > img {
    width: calc(3.75 * var(--remBasicSize));
    height: calc(1.875 * var(--remBasicSize));
    max-width: none;
    max-height: none;
  }
  #hamburger .nav_link > img.menu_before_weekend {
    width: auto;
    height: calc(1.5 * var(--remBasicSize));
  }
  #hamburger .coming_soon {
    width: calc(9.6875 * var(--remBasicSize));
    margin-top: calc(0.25 * var(--remBasicSize));
  }
  #hamburger .social {
    gap: calc(1.4375 * var(--remBasicSize));
    margin-top: calc(1.6875 * var(--remBasicSize));
  }
  #hamburger .social_link {
    width: calc(3.5625 * var(--remBasicSize));
    height: calc(3.5625 * var(--remBasicSize));
  }
  #hamburger .nav_visual {
    flex: 0 0 calc(23.125 * var(--remBasicSize));
    width: calc(26.875 * var(--remBasicSize));
    height: calc(23.125 * var(--remBasicSize));
  }
  #hamburger .visual_slogan--one {
    top: calc(-1.25 * var(--remBasicSize));
    left: calc(5.1875 * var(--remBasicSize));
    width: calc(14.375 * var(--remBasicSize));
    height: calc(4 * var(--remBasicSize));
  }
  #hamburger .visual_slogan--two {
    top: calc(2.5 * var(--remBasicSize));
    left: calc(9.375 * var(--remBasicSize));
    width: calc(14.0625 * var(--remBasicSize));
    height: calc(1.8125 * var(--remBasicSize));
  }
  #hamburger .visual_snowflake {
    top: calc(5.3125 * var(--remBasicSize));
    left: calc(2.9375 * var(--remBasicSize));
    width: calc(4.125 * var(--remBasicSize));
    height: calc(4.125 * var(--remBasicSize));
  }
  #hamburger .visual_bag {
    left: 0;
    bottom: 0;
    width: calc(19.375 * var(--remBasicSize));
    height: calc(17.9375 * var(--remBasicSize));
  }
  #hamburger .visual_tower {
    right: 0;
    bottom: calc(0.125 * var(--remBasicSize));
    width: calc(9.4375 * var(--remBasicSize));
    height: calc(16.4375 * var(--remBasicSize));
  }
}

body.nav-open {
  overflow: hidden;
}

@keyframes nav_slogan_float {
  to {
    transform: translate3d(0, calc(-0.3125 * var(--remBasicSize)), 0);
  }
}
@keyframes nav_snowflake_float {
  to {
    transform: translate3d(calc(0.1875 * var(--remBasicSize)), calc(-0.4375 * var(--remBasicSize)), 0) scale(0.92) rotate(42deg);
  }
}
@keyframes nav_bag_float {
  to {
    transform: translate3d(0, calc(-0.375 * var(--remBasicSize)), 0) rotate(-0.5deg);
  }
}
@keyframes nav_tower_float {
  to {
    transform: translate3d(calc(0.125 * var(--remBasicSize)), calc(-0.4375 * var(--remBasicSize)), 0) rotate(0.7deg);
  }
}
@media (hover: hover) and (pointer: fine) {
  #hamburger a.nav_link:hover,
  #hamburger .logo_nav:hover,
  #hamburger .social_link:hover {
    filter: opacity(0.7);
    transform: translateY(calc(-0.1875 * var(--remBasicSize)));
  }
}
@media (prefers-reduced-motion: reduce) {
  #hamburger .nav,
  #hamburger .nav .inner,
  #hamburger .menu_toggle span {
    transition: none;
  }
  #hamburger .visual_slogan,
  #hamburger .visual_snowflake,
  #hamburger .visual_bag,
  #hamburger .visual_tower {
    animation: none;
  }
}/*# sourceMappingURL=nav.css.map */