@charset "UTF-8";
/**
 * Swiper 8.1.6
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2022 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: May 25, 2022
 */
@font-face {
  font-family: swiper-icons;
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color:#007aff;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
}

.swiper-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

.swiper-android .swiper-slide, .swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
          transform: translate3d(0px, 0, 0);
}

.swiper-pointer-events {
  -ms-touch-action: pan-y;
      touch-action: pan-y;
}

.swiper-pointer-events.swiper-vertical {
  -ms-touch-action: pan-x;
      touch-action: pan-x;
}

.swiper-slide {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

.swiper-autoheight, .swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-transition-property: height, -webkit-transform;
  transition-property: height, -webkit-transform;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform;
}

.swiper-backface-hidden .swiper-slide {
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-3d, .swiper-3d.swiper-css-mode .swiper-wrapper {
  -webkit-perspective: 1200px;
          perspective: 1200px;
}

.swiper-3d .swiper-cube-shadow, .swiper-3d .swiper-slide, .swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top, .swiper-3d .swiper-wrapper {
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
}

.swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-horizontal.swiper-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: x mandatory;
      scroll-snap-type: x mandatory;
}

.swiper-vertical.swiper-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: y mandatory;
      scroll-snap-type: y mandatory;
}

.swiper-centered > .swiper-wrapper::before {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-box-ordinal-group: 10000;
      -ms-flex-order: 9999;
          order: 9999;
}

.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-start: var(--swiper-centered-offset-before);
          margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}

.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-before: var(--swiper-centered-offset-before);
          margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
}

.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
  height: 1px;
  width: var(--swiper-virtual-size);
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
  width: 1px;
  height: var(--swiper-virtual-size);
}

:root {
  --swiper-navigation-size:44px;
}

.swiper-button-next, .swiper-button-prev {
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-next.swiper-button-hidden, .swiper-button-prev.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-next:after, .swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}

.swiper-button-prev, .swiper-rtl .swiper-button-next {
  left: 10px;
  right: auto;
}

.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
  content: "prev";
}

.swiper-button-next, .swiper-rtl .swiper-button-prev {
  right: 10px;
  left: auto;
}

.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
  content: "next";
}

.swiper-button-lock {
  display: none;
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: 0.3s opacity;
  transition: 0.3s opacity;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: 10px;
  left: 0;
  width: 100%;
}

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transform: scale(0.33);
      -ms-transform: scale(0.33);
          transform: scale(0.33);
  position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  -webkit-transform: scale(0.66);
      -ms-transform: scale(0.66);
          transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  -webkit-transform: scale(0.33);
      -ms-transform: scale(0.33);
          transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  -webkit-transform: scale(0.66);
      -ms-transform: scale(0.66);
          transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  -webkit-transform: scale(0.33);
      -ms-transform: scale(0.33);
          transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: 50%;
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet:only-child {
  display: none !important;
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-pagination-vertical.swiper-pagination-bullets, .swiper-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  -webkit-transform: translate3d(0px, -50%, 0);
          transform: translate3d(0px, -50%, 0);
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 8px;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  -webkit-transition: 0.2s top, 0.2s -webkit-transform;
  transition: 0.2s top, 0.2s -webkit-transform;
  transition: 0.2s transform, 0.2s top;
  transition: 0.2s transform, 0.2s top, 0.2s -webkit-transform;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  white-space: nowrap;
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: 0.2s left, 0.2s -webkit-transform;
  transition: 0.2s left, 0.2s -webkit-transform;
  transition: 0.2s transform, 0.2s left;
  transition: 0.2s transform, 0.2s left, 0.2s -webkit-transform;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: 0.2s right, 0.2s -webkit-transform;
  transition: 0.2s right, 0.2s -webkit-transform;
  transition: 0.2s transform, 0.2s right;
  transition: 0.2s transform, 0.2s right, 0.2s -webkit-transform;
}

.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(0);
      -ms-transform: scale(0);
          transform: scale(0);
  -webkit-transform-origin: left top;
      -ms-transform-origin: left top;
          transform-origin: left top;
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  -webkit-transform-origin: right top;
      -ms-transform-origin: right top;
          transform-origin: right top;
}

.swiper-horizontal > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite, .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}

.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical, .swiper-vertical > .swiper-pagination-progressbar {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-lock {
  display: none;
}

.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1);
}

.swiper-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%;
}

.swiper-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%;
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-scrollbar-lock {
  display: none;
}

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
}

.swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.swiper-slide-zoomed {
  cursor: move;
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
      -ms-transform-origin: 50%;
          transform-origin: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader, .swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
  -webkit-animation: swiper-preloader-spin 1s infinite linear;
          animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color:#fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color:#000;
}

@-webkit-keyframes swiper-preloader-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes swiper-preloader-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.swiper-free-mode > .swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-grid > .swiper-wrapper {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.swiper-grid-column > .swiper-wrapper {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.swiper-fade.swiper-free-mode .swiper-slide {
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
}

.swiper-fade .swiper-slide {
  pointer-events: none;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}

.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-fade .swiper-slide-active, .swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-cube {
  overflow: visible;
}

.swiper-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  -webkit-transform-origin: 0 0;
      -ms-transform-origin: 0 0;
          transform-origin: 0 0;
  width: 100%;
  height: 100%;
}

.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-cube.swiper-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
      -ms-transform-origin: 100% 0;
          transform-origin: 100% 0;
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-next, .swiper-cube .swiper-slide-next + .swiper-slide, .swiper-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible;
}

.swiper-cube .swiper-slide-shadow-bottom, .swiper-cube .swiper-slide-shadow-left, .swiper-cube .swiper-slide-shadow-right, .swiper-cube .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}

.swiper-cube .swiper-cube-shadow:before {
  content: "";
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  -webkit-filter: blur(50px);
          filter: blur(50px);
}

.swiper-flip {
  overflow: visible;
}

.swiper-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
}

.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-flip .swiper-slide-active, .swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-flip .swiper-slide-shadow-bottom, .swiper-flip .swiper-slide-shadow-left, .swiper-flip .swiper-slide-shadow-right, .swiper-flip .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-creative .swiper-slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  -webkit-transition-property: opacity, height, -webkit-transform;
  transition-property: opacity, height, -webkit-transform;
  transition-property: transform, opacity, height;
  transition-property: transform, opacity, height, -webkit-transform;
}

.swiper-cards {
  overflow: visible;
}

.swiper-cards .swiper-slide {
  -webkit-transform-origin: center bottom;
      -ms-transform-origin: center bottom;
          transform-origin: center bottom;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
}

.video-js .vjs-big-play-button .vjs-icon-placeholder:before, .video-js .vjs-modal-dialog, .vjs-button > .vjs-icon-placeholder:before, .vjs-modal-dialog .vjs-modal-dialog-content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.video-js .vjs-big-play-button .vjs-icon-placeholder:before, .vjs-button > .vjs-icon-placeholder:before {
  text-align: center;
}

@font-face {
  font-family: VideoJS;
  src: url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAABUgAAsAAAAAItAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADsAAABUIIslek9TLzIAAAFEAAAAPgAAAFZRiV33Y21hcAAAAYQAAAEJAAAD5p42+VxnbHlmAAACkAAADwwAABdk9R/WHmhlYWQAABGcAAAAKwAAADYn8kSnaGhlYQAAEcgAAAAdAAAAJA+RCL1obXR4AAAR6AAAABMAAAC8Q44AAGxvY2EAABH8AAAAYAAAAGB7SIHGbWF4cAAAElwAAAAfAAAAIAFAAI9uYW1lAAASfAAAASUAAAIK1cf1oHBvc3QAABOkAAABfAAAAnXdFqh1eJxjYGRgYOBiMGCwY2BycfMJYeDLSSzJY5BiYGGAAJA8MpsxJzM9kYEDxgPKsYBpDiBmg4gCACY7BUgAeJxjYGR7xDiBgZWBgaWQ5RkDA8MvCM0cwxDOeI6BgYmBlZkBKwhIc01hcPjI+FGPHcRdyA4RZgQRADbZCycAAHic7dPXbcMwAEXRK1vuvffem749XAbKV3bjBA6fXsaIgMMLEWoQJaAEFKNnlELyQ4K27zib5PNF6vl8yld+TKr5kH0+cUw0xv00Hwvx2DResUyFKrV4XoMmLdp06NKjz4AhI8ZMmDJjzoIlK9Zs2LJjz4EjJ85cuHLjziPe/0UWL17mf2tqKLz/9jK9f8tXpGCoRdPKhtS0RqFkWvVQNtSKoVYNtWaoddPXEBqG2jQ9XWgZattQO4baNdSeofYNdWCoQ0MdGerYUCeGOjXUmaHODXVhqEtDXRnq2lA3hro11J2h7g31YKhHQz0Z6tlQL4Z6NdSbod4N9WGoT9MfHF6GmhnZLxyDcRMAAAB4nJ1YC1gUV5auc6urCmxEGrq6VRD6ATQP5dHPKK8GRIyoKApoEBUDAiGzGmdUfKNRM4qLZrUZdGKcGN/GZJKd0SyOWTbfbmZ2NxqzM5IxRtNZd78vwYlJdtREoO7sudVNq6PmmxmKqrqPU+eee173P80Bh39Cu9DOEY4DHZBK3i20D/QRLcfxbE5sEVtwLpZzclw4ibFIkSCJUcZ4MBpMnnzwuKNsGWBL5i3qy6kO2dVpvUpKbkAP9fq62rdeGJ+TM/7C1nbIutfuWrWk5ci4zMxxR1qW/N+9JsmCGXj9VKWhFx/6tr/nz78INDm2C9yPF/fDcxLuyKxLBZ1ZBz2QTi+RSkiH5RrDQJ/GgGQadX9m0YSURs7GpSG905Zsk41uj14yul1OtieZ7QUk5GRG/YiS7PYYPSAZNRed9sq3+bOpz00rKb7pe/ZEZvbALxZAHT3AFoH8GXP3rt67QFn40kt8W13FjLTDb48c+fSi5/7h0P4dL5yz7DPtbmgmYxfQA9RL2+EOfTcvdp+1vmuBpvOll1As1S6ak0IvJzC7sKWJFtJgBd2uWcg+0Zyg7dzQfhcjXRgXGZRf5/a4A58IDU777Nl252AUk4m2ByRRjqTNqIDCEJeAnU3iCFwrkrNwXEzg4yFevBwypzxkcX+AIfk3VEKl3XmWbT8788SzvpvFJaiOezL6QyuSr9VNf97csNu0z3LuhR0wATUxZAfVBwVOy+nQFhxYdWaXlXe4HC4zWGWzzsrLDtmhI9pOWOHv7PTT7XybH1Z0+v2d5Abd3kmG+TsH23CS/KwTxx/JkzEwx6jcQOUc42LLwHJ/J93uZ9ygh3HuZGwqsY9dWDHQ58dxNqyqKRQTYdxwTubiOSs3FiMDkq0WSZQgCT0GBDOg2lxOAd1FlPVGs4AKBAcYHHaP2wPkHaivmLF5zYqnIZrvcHx5gN4k/6tchNW1DtdgNL2KrxEkS/kfnIHoVnp1VjmjpTf5r0lTzLj0mdS28tX+XGorU364eMPmnWVl8J36nlKGw3CZhjEiuMw8h8mKvhGD+4/lElBWjAhLJMg6fTw4zPZ8cOmcGQBm2Qxml1nAm13CpYGq1JKUlJJUzQn1PTAO0mgv6VMMpA/DuRfSWEu4lDIxdbAtdWIKvnn2Vk766CWfz9fpY0sH/UpdP50rfszaVpdVRmvIejEdLMk45s4Bu0EWHjeOySmFyZSiMahvZdNSn29peoI/YexYfKQTLeurTXXwEVLeSfInTWHkkMaeUx7sBvOCSTSj3AlcKjfueyS36tCrXDlgRtF0etFq9jhc1kfKuBT/OwMr0F4UUTTh1AN0g20+H/ScPcsIEsYu9d/zN5PmjprPtNwI1ZZcDK6iC97Mcjp2y2aX36f+QbpGHrgRuHlXJ+Zf6PFRL2uQSp8vxHeF2IoRb8Rd2rhMzsNxSRmEuKK4JFnkojhMcx6jzqHzGMGFcW+MhBj0bhf6cowN+45I4LHvwT6fteu7M42wGRI/pxcg6/MZdEvt1U1XaulHFXuLmqov/MukvRVL35/b3ODM1+4aPjtzeK7zmUkV2h3DN54HaQ9GzJvxHRb6Ks2gB81fwqraT+A7GvZJrRLRofU6G0urNL+zFw3v0FaVDFxsKEZW56F31r6ip6vOL+FCObBPuIMRiXld9RaMdLzRIOGhPey2T9vA/35DmZPK9IWaT9d/WgOGMieYqJ/dzjLIhZU118gbysxrNUGefxD6UO/hyNNllpFTOIbx32kSFQctnweV5PxTMHLjRqiAN+fQE9gL+Xy5WB6MOS4GJJuYbDUHhcKDhHGRbLzOpjsjdM1+iwAZLGeieehACX2hhI7SjK/ZUTNrvVje31TxJiFBGYViWFkCn9PMeX9fS6qVbzfCj4fOCTzDnuWy2c4xA7mdNkA3RS9FH2VeqzdCBlixxbzXjvkHU1I8BOYFb1pZvPIHSSIj4svT8xpzcxtXN+ZKyjdDvbz08niiF3PqV9Tn5NST8vg48MTaY8E5xqSSIsWoWHo+LtAzxdH/GDUyp37CBEYfso04F/NlMTcDJUTpECLY0HFGQHImE8xsEUdgnrQlixIvGhJA1BvxpDHGxEMBYFeNOHcBJlSjwe2JcSfbBEsGOPPBHg/6SBBOCsLLw0SpUxod0Z1bFMfLkbQ3UiZxEyd0Dx8t+SRBu18Q9msFbI4e3p1THEfkSEh7kEJ5orR10qTWDvbgPWn5aWvCYyOAjwgXyjJi34uMjo58L25cmRAeQZWI2PA1QQLsPESAH8WGFwZZ4SPoR73BHPzIPMJj9AreBzKUmrH4todT18ANvi1oc3YGjUT/0j+ExUwq8PI9BLaCQIpvewwYu2evAG/Vo/5avPdY7o+BemLLXw3y+AdkzP9bpIxB1wm5EYq8fesHbPEPtm6HrHvtx4jcGPR8fDDpkZBefIjB46QnlUNRltv4Z/pO/J6dxEjhYAtmoMeq+GozvUVvNYOW3m6GCIhoprcfr97B8AcIQYsfD8ljUvGNjvkrpj0ETA48ZMIxCeqsRIsQALE0gi2GB+glSOfbOjW3GSBM9yPq8/rpJXrJDz0BPxV6xdN4uiCGDQed3WhgFkBUZEFsmeyyBpzXrm7UGTBZG8Lh5aubFufk5eUsbrrFGr7McYdbltxa0nKYqRKbQjvikXYkTGM0f2xuyM3Ly21oXnWfvf6I1BmZwfh7EWWIYsg2nHhsDhOnczhJcmI6eBAmy3jZ3RiJmKQR/JA99FcwsfaVbNDDyi1rL9NPj9hfo61wjM6BjzOLijLpeTgk/pL+ip6tfYWupzeOgPny2tcUu9J/9mhxJlgyi985NFRbvCVewXUNXLJaW0RxZqtRYtnfYdcYomXQWdnJHQA3jiEEkeTQWcWxdDP9IvvVWvo2TK553XEMEq+s69/QDU1Q7p0zxwsm9qS379whr8NI2PJqLUyGyfNeX3eFfnJU2U+uHR9cVV1IqgurqwuV44XVp0h2qN55X5XJwtk59yP0IZuHrqBOBIuIYhkcoT6Kx79Pu2HS/IPZIMOqLWs/pteOOk4NPgEb6QAIdAPsyZk5Mwd+wVaHMexJv719W7xCu2l37UG6lvYdBcvHa08p89741zd63phTRGqL5ggo6SlvdbWXzCqsPq78NnSu7wnKy2HNZbVoRCI7UJEOyRj+sPE002tOOY7Qa5fXboFWkLNeqYUSZRocp9XwSUZxcQZ9Hw6LV2pOoVmvHQEDbGIENEG5i6bLgMSM4n8+FNLTtAds99DaWEvgcf4o5SyYe9x+kF6/tGoTPAdRmS/XQIEy//QxKC2oqioAI3tS5auvxCtzT6y6RK8fhChYcwCJaMJhxc0vqSxQ/qmgsrKAlBZUHlauheTpvd9uj5DnLzJct6qfq5fXbYHVIGcfrIVJihbaVLu1wW7Vbs8zK0A8e9Jvb91S9cVMjPrazD6gpfeZTXzYbCFMcppVRsGMpp55OWgx1/3JeAxW1Y7AORgM/m3rWrsdLkQVmEVSU16cX/e7uvkvpqRiQsG06XJ0t64Tf+l0nG1dt025gyOIZlvq5u9KSU1N2TW/rsWnnMRPyTDkctbhvIcNvYIXWyLzdwYLoYesUbaQG4iK2cWO2gdpeUYLqDD0MUTOPhDIGnZEs58yArR86FznuWEsU4YDi2x26dA4klkn8Qa6vhk2QUfX4Jxm/ngX9r7ogn1dmlmwqZmuhxtdg9XN/DEcUgqb+9hMyNansfaQET2mcROCmGEMVqxm5u+h6kN2MOwgqykV2wH9yQG9DvVFU38Pogaf4FVuE62KI/oJ02RDdWW2w5dqQwU/8+N1q1DlvsL863u61KLE7x/o8w0VJQM/Y/SQ3unIrqxueEa1BqT5VFNsO7p39/UC771a77RowpaKe9nvJQIT1Pog5LGx8XblBKmCNGTf3xMogAQvPnz9PYKX/08sVDTG1OKUlOLUgS/UaZtm1NAaYTsl7i9ZQ+L6O4Rl0OGa577LuWvc+C+x96/vYh0lLBuM+7XwI/dTLtdT7v4d6rRTWDnku0IBrqFnZ5bVIqKP8lasJlithWnaLhTsr8qFJBulF/70p4undou36HeTJ5+jv1fCybeQ8nH3+Xv6aENczmOFlab+hqMDg1rLOt12A+tiUFrYDwQ6c3RUJp601nzegTNX6WlYAI2zSUV945F6zU56ZmZVQaWspWcIADxJ9GmljQUnL2p2Dpr5T8H+5KJFu+vqBq8qvyHRzStLHPEO5SPYCV9nZe0yZT2RcH0oHvegSzNEJ0oGWU8iQWM12dgPEugngVceGIwZgPFp0BiT1a0a3R5Rcot7ihfA1J/20v96jX7zmTX9s583H0kwx6WnLd09cXrR9LGroOa9sHNbdyz8wcKk5lqhaVFJZNwmqtw884MXNdvJujpBa3xzuSaZH9sxa06Z7x+HJSduPbdYHv/DgmEhfbehvlmGN7JUkcG78GDM12CeyFFTPNqVeNxC1gzjz+c2nVo63Xxs8rKJWXoBJM0tmEbfGm4qzpoOH3xpzQfyxLzW1gnE9NHo6tol1eMEic4ZVPrjnVi0kqAe2sQ2bgqupScaq8WGlUWgWHI51SKJl/UYT6zccNsCSkBtiVZLsiefuFSDYT3Fi8Zk7EUnmjTRYtsFeuDDJS05MW79M3mr3mla+d8dzac31KTPmBYfFiYSUef48PhPjm9ryZsSGZZkdNvzq0Y9rdNcwDq5Dg5C3QW+7UN64IKptvS3tvHbvu5c9pv1Exau21rc9LIpwpQwUjTq8576yeVDz5+4WZ1nXT43wV60rPLJbDp/UksNrP3iQ2SA63Pst058gOYDbhRnRUw8l/sRt4HbxPzO4WYpInCpuVgSbVh6JXuwnnJngKTTCwaPWmG5Xbhpm1U0Yt3FyBGpGYemPM77p2TD904JjgJ2QFpFLeYpGx8X15Qx1Zk31p5ki9ZLUuXE0lmuJlcakJMVLeFS1iIvrB8drY0aloilakqCZwzwRORtxlgwxS4IThggJd4TDxoiaAIT80fFPGrCPPru+puFn504P/ybr4ihA/6dKASLshEJic7xE8tmzu3KzA7TABBe8y5fNbWo3ilQn/SuFKM16b2l5bOeayqfGhYmhIulU+fVNDdWVv4NMzX10MBHyPR5uhWUu8D9P1VnIMt4nGNgZGBgAOJ/1bf64vltvjJwszOAwAOlmqvINEc/WJyDgQlEAQA+dgnjAHicY2BkYGBnAAGOPgaG//85+hkYGVCBPgBGJwNkAAAAeJxjYGBgYB/EmKMPtxwAhg4B0gAAAAAAAA4AaAB+AMwA4AECAUIBbAGYAe4CLgKKAtAC/ANiA4wDqAPgBDAEsATaBQgFWgXABggGLgZwBqwG9gdOB4oH0ggqCHAIhgicCMgJJAlWCYgJrAnyCkAKdgrkC7J4nGNgZGBg0GdoZmBnAAEmIOYCQgaG/2A+AwAaqwHQAHicXZBNaoNAGIZfE5PQCKFQ2lUps2oXBfOzzAESyDKBQJdGR2NQR3QSSE/QE/QEPUUPUHqsvsrXjTMw83zPvPMNCuAWP3DQDAejdm1GjzwS7pMmwi75XngAD4/CQ/oX4TFe4Qt7uMMbOzjuDc0EmXCP/C7cJ38Iu+RP4QEe8CU8pP8WHmOPX2EPz87TPo202ey2OjlnQSXV/6arOjWFmvszMWtd6CqwOlKHq6ovycLaWMWVydXKFFZnmVFlZU46tP7R2nI5ncbi/dDkfDtFBA2DDXbYkhKc+V0Bqs5Zt9JM1HQGBRTm/EezTmZNKtpcAMs9Yu6AK9caF76zoLWIWcfMGOSkVduvSWechqZsz040Ib2PY3urxBJTzriT95lipz+TN1fmAAAAeJxtkXlT2zAQxf1C4thJAwRajt4HRy8VMwwfSJHXsQZZcnUQ+PYoTtwpM+wf2t9brWZ2n5JBsol58nJcYYAdDDFCijEy5JhgileYYRd72MccBzjEa7zBEY5xglO8xTu8xwd8xCd8xhd8xTec4RwXuMR3/MBP/MJvMPzBFYpk2Cr+OF0fTEgrFI1aHhxN740KDbEmeJpsWZlVj40s+45aLuv9KijlhCXSjLQnu/d/4UH6sWul1mRzFxZeekUuE7z10mg3qMtM1FGQddPSrLQyvJR6OaukItYXDp6pCJrmz0umqkau5pZ2hFmm7m+ImG5W2t0kZoJXUtPhVnYTbbdOBdeCVGqpJe7XKTqSbRK7zbdwXfR0U+SVsStuS3Y76em6+Ic3xYiHUppc04Nn0lMzay3dSxNcp8auDlWlaCi48yetFD7Y9USsx87G45cuop1ZxQUtjLnL4j53FO0a+5X08UXqQ7NQNo92R0XOz7sxWEnxN2TneJI8Acttu4Q=) format("woff");
  font-weight: 400;
  font-style: normal;
}
.video-js .vjs-big-play-button .vjs-icon-placeholder:before, .video-js .vjs-play-control .vjs-icon-placeholder, .vjs-icon-play {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-big-play-button .vjs-icon-placeholder:before, .video-js .vjs-play-control .vjs-icon-placeholder:before, .vjs-icon-play:before {
  content: "\f101";
}

.vjs-icon-play-circle {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-play-circle:before {
  content: "\f102";
}

.video-js .vjs-play-control.vjs-playing .vjs-icon-placeholder, .vjs-icon-pause {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-play-control.vjs-playing .vjs-icon-placeholder:before, .vjs-icon-pause:before {
  content: "\f103";
}

.video-js .vjs-mute-control.vjs-vol-0 .vjs-icon-placeholder, .vjs-icon-volume-mute {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-mute-control.vjs-vol-0 .vjs-icon-placeholder:before, .vjs-icon-volume-mute:before {
  content: "\f104";
}

.video-js .vjs-mute-control.vjs-vol-1 .vjs-icon-placeholder, .vjs-icon-volume-low {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-mute-control.vjs-vol-1 .vjs-icon-placeholder:before, .vjs-icon-volume-low:before {
  content: "\f105";
}

.video-js .vjs-mute-control.vjs-vol-2 .vjs-icon-placeholder, .vjs-icon-volume-mid {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-mute-control.vjs-vol-2 .vjs-icon-placeholder:before, .vjs-icon-volume-mid:before {
  content: "\f106";
}

.video-js .vjs-mute-control .vjs-icon-placeholder, .vjs-icon-volume-high {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-mute-control .vjs-icon-placeholder:before, .vjs-icon-volume-high:before {
  content: "\f107";
}

.video-js .vjs-fullscreen-control .vjs-icon-placeholder, .vjs-icon-fullscreen-enter {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-fullscreen-control .vjs-icon-placeholder:before, .vjs-icon-fullscreen-enter:before {
  content: "\f108";
}

.video-js.vjs-fullscreen .vjs-fullscreen-control .vjs-icon-placeholder, .vjs-icon-fullscreen-exit {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js.vjs-fullscreen .vjs-fullscreen-control .vjs-icon-placeholder:before, .vjs-icon-fullscreen-exit:before {
  content: "\f109";
}

.vjs-icon-spinner {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-spinner:before {
  content: "\f10a";
}

.video-js .vjs-subs-caps-button .vjs-icon-placeholder, .video-js .vjs-subtitles-button .vjs-icon-placeholder, .video-js.video-js:lang(en-AU) .vjs-subs-caps-button .vjs-icon-placeholder, .video-js.video-js:lang(en-GB) .vjs-subs-caps-button .vjs-icon-placeholder, .video-js.video-js:lang(en-IE) .vjs-subs-caps-button .vjs-icon-placeholder, .video-js.video-js:lang(en-NZ) .vjs-subs-caps-button .vjs-icon-placeholder, .vjs-icon-subtitles {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-subs-caps-button .vjs-icon-placeholder:before, .video-js .vjs-subtitles-button .vjs-icon-placeholder:before, .video-js.video-js:lang(en-AU) .vjs-subs-caps-button .vjs-icon-placeholder:before, .video-js.video-js:lang(en-GB) .vjs-subs-caps-button .vjs-icon-placeholder:before, .video-js.video-js:lang(en-IE) .vjs-subs-caps-button .vjs-icon-placeholder:before, .video-js.video-js:lang(en-NZ) .vjs-subs-caps-button .vjs-icon-placeholder:before, .vjs-icon-subtitles:before {
  content: "\f10b";
}

.video-js .vjs-captions-button .vjs-icon-placeholder, .video-js:lang(en) .vjs-subs-caps-button .vjs-icon-placeholder, .video-js:lang(fr-CA) .vjs-subs-caps-button .vjs-icon-placeholder, .vjs-icon-captions {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-captions-button .vjs-icon-placeholder:before, .video-js:lang(en) .vjs-subs-caps-button .vjs-icon-placeholder:before, .video-js:lang(fr-CA) .vjs-subs-caps-button .vjs-icon-placeholder:before, .vjs-icon-captions:before {
  content: "\f10c";
}

.vjs-icon-hd {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-hd:before {
  content: "\f10d";
}

.video-js .vjs-chapters-button .vjs-icon-placeholder, .vjs-icon-chapters {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-chapters-button .vjs-icon-placeholder:before, .vjs-icon-chapters:before {
  content: "\f10e";
}

.vjs-icon-downloading {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-downloading:before {
  content: "\f10f";
}

.vjs-icon-file-download {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-file-download:before {
  content: "\f110";
}

.vjs-icon-file-download-done {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-file-download-done:before {
  content: "\f111";
}

.vjs-icon-file-download-off {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-file-download-off:before {
  content: "\f112";
}

.vjs-icon-share {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-share:before {
  content: "\f113";
}

.vjs-icon-cog {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-cog:before {
  content: "\f114";
}

.vjs-icon-square {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-square:before {
  content: "\f115";
}

.video-js .vjs-play-progress, .video-js .vjs-volume-level, .vjs-icon-circle, .vjs-seek-to-live-control .vjs-icon-placeholder {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-play-progress:before, .video-js .vjs-volume-level:before, .vjs-icon-circle:before, .vjs-seek-to-live-control .vjs-icon-placeholder:before {
  content: "\f116";
}

.vjs-icon-circle-outline {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-circle-outline:before {
  content: "\f117";
}

.vjs-icon-circle-inner-circle {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-circle-inner-circle:before {
  content: "\f118";
}

.video-js .vjs-control.vjs-close-button .vjs-icon-placeholder, .vjs-icon-cancel {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-control.vjs-close-button .vjs-icon-placeholder:before, .vjs-icon-cancel:before {
  content: "\f119";
}

.vjs-icon-repeat {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-repeat:before {
  content: "\f11a";
}

.video-js .vjs-play-control.vjs-ended .vjs-icon-placeholder, .vjs-icon-replay {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-play-control.vjs-ended .vjs-icon-placeholder:before, .vjs-icon-replay:before {
  content: "\f11b";
}

.video-js .vjs-skip-backward-5 .vjs-icon-placeholder, .vjs-icon-replay-5 {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-skip-backward-5 .vjs-icon-placeholder:before, .vjs-icon-replay-5:before {
  content: "\f11c";
}

.video-js .vjs-skip-backward-10 .vjs-icon-placeholder, .vjs-icon-replay-10 {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-skip-backward-10 .vjs-icon-placeholder:before, .vjs-icon-replay-10:before {
  content: "\f11d";
}

.video-js .vjs-skip-backward-30 .vjs-icon-placeholder, .vjs-icon-replay-30 {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-skip-backward-30 .vjs-icon-placeholder:before, .vjs-icon-replay-30:before {
  content: "\f11e";
}

.video-js .vjs-skip-forward-5 .vjs-icon-placeholder, .vjs-icon-forward-5 {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-skip-forward-5 .vjs-icon-placeholder:before, .vjs-icon-forward-5:before {
  content: "\f11f";
}

.video-js .vjs-skip-forward-10 .vjs-icon-placeholder, .vjs-icon-forward-10 {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-skip-forward-10 .vjs-icon-placeholder:before, .vjs-icon-forward-10:before {
  content: "\f120";
}

.video-js .vjs-skip-forward-30 .vjs-icon-placeholder, .vjs-icon-forward-30 {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-skip-forward-30 .vjs-icon-placeholder:before, .vjs-icon-forward-30:before {
  content: "\f121";
}

.video-js .vjs-audio-button .vjs-icon-placeholder, .vjs-icon-audio {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-audio-button .vjs-icon-placeholder:before, .vjs-icon-audio:before {
  content: "\f122";
}

.vjs-icon-next-item {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-next-item:before {
  content: "\f123";
}

.vjs-icon-previous-item {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-previous-item:before {
  content: "\f124";
}

.vjs-icon-shuffle {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-shuffle:before {
  content: "\f125";
}

.vjs-icon-cast {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-cast:before {
  content: "\f126";
}

.video-js .vjs-picture-in-picture-control .vjs-icon-placeholder, .vjs-icon-picture-in-picture-enter {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-picture-in-picture-control .vjs-icon-placeholder:before, .vjs-icon-picture-in-picture-enter:before {
  content: "\f127";
}

.video-js.vjs-picture-in-picture .vjs-picture-in-picture-control .vjs-icon-placeholder, .vjs-icon-picture-in-picture-exit {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js.vjs-picture-in-picture .vjs-picture-in-picture-control .vjs-icon-placeholder:before, .vjs-icon-picture-in-picture-exit:before {
  content: "\f128";
}

.vjs-icon-facebook {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-facebook:before {
  content: "\f129";
}

.vjs-icon-linkedin {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-linkedin:before {
  content: "\f12a";
}

.vjs-icon-twitter {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-twitter:before {
  content: "\f12b";
}

.vjs-icon-tumblr {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-tumblr:before {
  content: "\f12c";
}

.vjs-icon-pinterest {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.vjs-icon-pinterest:before {
  content: "\f12d";
}

.video-js .vjs-descriptions-button .vjs-icon-placeholder, .vjs-icon-audio-description {
  font-family: VideoJS;
  font-weight: 400;
  font-style: normal;
}

.video-js .vjs-descriptions-button .vjs-icon-placeholder:before, .vjs-icon-audio-description:before {
  content: "\f12e";
}

.video-js {
  display: inline-block;
  vertical-align: top;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #fff;
  background-color: #000;
  position: relative;
  padding: 0;
  font-size: 10px;
  line-height: 1;
  font-weight: 400;
  font-style: normal;
  font-family: Arial, Helvetica, sans-serif;
  word-break: initial;
}

.video-js:-moz-full-screen {
  position: absolute;
}

.video-js:-webkit-full-screen {
  width: 100% !important;
  height: 100% !important;
}

.video-js[tabindex="-1"] {
  outline: 0;
}

.video-js *, .video-js :after, .video-js :before {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

.video-js ul {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  list-style-position: outside;
  margin-left: 0;
  margin-right: 0;
  margin-top: 0;
  margin-bottom: 0;
}

.video-js.vjs-1-1, .video-js.vjs-16-9, .video-js.vjs-4-3, .video-js.vjs-9-16, .video-js.vjs-fluid {
  width: 100%;
  max-width: 100%;
}

.video-js.vjs-1-1:not(.vjs-audio-only-mode), .video-js.vjs-16-9:not(.vjs-audio-only-mode), .video-js.vjs-4-3:not(.vjs-audio-only-mode), .video-js.vjs-9-16:not(.vjs-audio-only-mode), .video-js.vjs-fluid:not(.vjs-audio-only-mode) {
  height: 0;
}

.video-js.vjs-16-9:not(.vjs-audio-only-mode) {
  padding-top: 56.25%;
}

.video-js.vjs-4-3:not(.vjs-audio-only-mode) {
  padding-top: 75%;
}

.video-js.vjs-9-16:not(.vjs-audio-only-mode) {
  padding-top: 177.7777777778%;
}

.video-js.vjs-1-1:not(.vjs-audio-only-mode) {
  padding-top: 100%;
}

.video-js.vjs-fill:not(.vjs-audio-only-mode) {
  width: 100%;
  height: 100%;
}

.video-js .vjs-tech {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.video-js.vjs-audio-only-mode .vjs-tech {
  display: none;
}

body.vjs-full-window, body.vjs-pip-window {
  padding: 0;
  margin: 0;
  height: 100%;
}

.vjs-full-window .video-js.vjs-fullscreen, body.vjs-pip-window .video-js {
  position: fixed;
  overflow: hidden;
  z-index: 1000;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
}

.video-js.vjs-fullscreen:not(.vjs-ios-native-fs), body.vjs-pip-window .video-js {
  width: 100% !important;
  height: 100% !important;
  padding-top: 0 !important;
}

.video-js.vjs-fullscreen.vjs-user-inactive {
  cursor: none;
}

.vjs-pip-container .vjs-pip-text {
  position: absolute;
  bottom: 10%;
  font-size: 2em;
  background-color: rgba(0, 0, 0, 0.7);
  padding: 0.5em;
  text-align: center;
  width: 100%;
}

.vjs-layout-small.vjs-pip-container .vjs-pip-text, .vjs-layout-tiny.vjs-pip-container .vjs-pip-text, .vjs-layout-x-small.vjs-pip-container .vjs-pip-text {
  bottom: 0;
  font-size: 1.4em;
}

.vjs-hidden {
  display: none !important;
}

.vjs-disabled {
  opacity: 0.5;
  cursor: default;
}

.video-js .vjs-offscreen {
  height: 1px;
  left: -9999px;
  position: absolute;
  top: 0;
  width: 1px;
}

.vjs-lock-showing {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.vjs-no-js {
  padding: 20px;
  color: #fff;
  background-color: #000;
  font-size: 18px;
  font-family: Arial, Helvetica, sans-serif;
  text-align: center;
  width: 300px;
  height: 150px;
  margin: 0 auto;
}

.vjs-no-js a, .vjs-no-js a:visited {
  color: #66a8cc;
}

.video-js .vjs-big-play-button {
  font-size: 3em;
  line-height: 1.5em;
  height: 1.63332em;
  width: 3em;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  padding: 0;
  margin-top: -0.81666em;
  margin-left: -1.5em;
  cursor: pointer;
  opacity: 1;
  border: 0.06666em solid #fff;
  background-color: #2b333f;
  background-color: rgba(43, 51, 63, 0.7);
  border-radius: 0.3em;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.video-js .vjs-big-play-button:focus, .video-js:hover .vjs-big-play-button {
  border-color: #fff;
  background-color: #73859f;
  background-color: rgba(115, 133, 159, 0.5);
  -webkit-transition: all 0s;
  transition: all 0s;
}

.vjs-controls-disabled .vjs-big-play-button, .vjs-error .vjs-big-play-button, .vjs-has-started .vjs-big-play-button, .vjs-using-native-controls .vjs-big-play-button {
  display: none;
}

.vjs-has-started.vjs-paused.vjs-show-big-play-button-on-pause .vjs-big-play-button {
  display: block;
}

.video-js button {
  background: 0 0;
  border: none;
  color: inherit;
  display: inline-block;
  font-size: inherit;
  line-height: inherit;
  text-transform: none;
  text-decoration: none;
  -webkit-transition: none;
  transition: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.vjs-control .vjs-button {
  width: 100%;
  height: 100%;
}

.video-js .vjs-control.vjs-close-button {
  cursor: pointer;
  height: 3em;
  position: absolute;
  right: 0;
  top: 0.5em;
  z-index: 2;
}

.video-js .vjs-modal-dialog {
  background: rgba(0, 0, 0, 0.8);
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.8)), to(rgba(255, 255, 255, 0)));
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.8), rgba(255, 255, 255, 0));
  overflow: auto;
}

.video-js .vjs-modal-dialog > * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.vjs-modal-dialog .vjs-modal-dialog-content {
  font-size: 1.2em;
  line-height: 1.5;
  padding: 20px 24px;
  z-index: 1;
}

.vjs-menu-button {
  cursor: pointer;
}

.vjs-menu-button.vjs-disabled {
  cursor: default;
}

.vjs-workinghover .vjs-menu-button.vjs-disabled:hover .vjs-menu {
  display: none;
}

.vjs-menu .vjs-menu-content {
  display: block;
  padding: 0;
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
  overflow: auto;
}

.vjs-menu .vjs-menu-content > * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.vjs-scrubbing .vjs-control.vjs-menu-button:hover .vjs-menu {
  display: none;
}

.vjs-menu li {
  list-style: none;
  margin: 0;
  padding: 0.2em 0;
  line-height: 1.4em;
  font-size: 1.2em;
  text-align: center;
  text-transform: lowercase;
}

.js-focus-visible .vjs-menu li.vjs-menu-item:hover, .vjs-menu li.vjs-menu-item:focus, .vjs-menu li.vjs-menu-item:hover {
  background-color: #73859f;
  background-color: rgba(115, 133, 159, 0.5);
}

.js-focus-visible .vjs-menu li.vjs-selected:hover, .vjs-menu li.vjs-selected, .vjs-menu li.vjs-selected:focus, .vjs-menu li.vjs-selected:hover {
  background-color: #fff;
  color: #2b333f;
}

.js-focus-visible .vjs-menu :not(.vjs-selected):focus:not(.focus-visible), .video-js .vjs-menu :not(.vjs-selected):focus:not(:focus-visible) {
  background: 0 0;
}

.vjs-menu li.vjs-menu-title {
  text-align: center;
  text-transform: uppercase;
  font-size: 1em;
  line-height: 2em;
  padding: 0;
  margin: 0 0 0.3em 0;
  font-weight: 700;
  cursor: default;
}

.vjs-menu-button-popup .vjs-menu {
  display: none;
  position: absolute;
  bottom: 0;
  width: 10em;
  left: -3em;
  height: 0;
  margin-bottom: 1.5em;
  border-top-color: rgba(43, 51, 63, 0.7);
}

.vjs-pip-window .vjs-menu-button-popup .vjs-menu {
  left: unset;
  right: 1em;
}

.vjs-menu-button-popup .vjs-menu .vjs-menu-content {
  background-color: #2b333f;
  background-color: rgba(43, 51, 63, 0.7);
  position: absolute;
  width: 100%;
  bottom: 1.5em;
  max-height: 15em;
}

.vjs-layout-tiny .vjs-menu-button-popup .vjs-menu .vjs-menu-content, .vjs-layout-x-small .vjs-menu-button-popup .vjs-menu .vjs-menu-content {
  max-height: 5em;
}

.vjs-layout-small .vjs-menu-button-popup .vjs-menu .vjs-menu-content {
  max-height: 10em;
}

.vjs-layout-medium .vjs-menu-button-popup .vjs-menu .vjs-menu-content {
  max-height: 14em;
}

.vjs-layout-huge .vjs-menu-button-popup .vjs-menu .vjs-menu-content, .vjs-layout-large .vjs-menu-button-popup .vjs-menu .vjs-menu-content, .vjs-layout-x-large .vjs-menu-button-popup .vjs-menu .vjs-menu-content {
  max-height: 25em;
}

.vjs-menu-button-popup .vjs-menu.vjs-lock-showing, .vjs-workinghover .vjs-menu-button-popup.vjs-hover .vjs-menu {
  display: block;
}

.video-js .vjs-menu-button-inline {
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  overflow: hidden;
}

.video-js .vjs-menu-button-inline:before {
  width: 2.222222222em;
}

.video-js .vjs-menu-button-inline.vjs-slider-active, .video-js .vjs-menu-button-inline:focus, .video-js .vjs-menu-button-inline:hover {
  width: 12em;
}

.vjs-menu-button-inline .vjs-menu {
  opacity: 0;
  height: 100%;
  width: auto;
  position: absolute;
  left: 4em;
  top: 0;
  padding: 0;
  margin: 0;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.vjs-menu-button-inline.vjs-slider-active .vjs-menu, .vjs-menu-button-inline:focus .vjs-menu, .vjs-menu-button-inline:hover .vjs-menu {
  display: block;
  opacity: 1;
}

.vjs-menu-button-inline .vjs-menu-content {
  width: auto;
  height: 100%;
  margin: 0;
  overflow: hidden;
}

.video-js .vjs-control-bar {
  display: none;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 3em;
  background-color: #2b333f;
  background-color: rgba(43, 51, 63, 0.7);
}

.vjs-audio-only-mode .vjs-control-bar, .vjs-has-started .vjs-control-bar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  visibility: visible;
  opacity: 1;
  -webkit-transition: visibility 0.1s, opacity 0.1s;
  transition: visibility 0.1s, opacity 0.1s;
}

.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar {
  visibility: visible;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: visibility 1s, opacity 1s;
  transition: visibility 1s, opacity 1s;
}

.vjs-controls-disabled .vjs-control-bar, .vjs-error .vjs-control-bar, .vjs-using-native-controls .vjs-control-bar {
  display: none !important;
}

.vjs-audio-only-mode.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar, .vjs-audio.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.video-js .vjs-control {
  position: relative;
  text-align: center;
  margin: 0;
  padding: 0;
  height: 100%;
  width: 4em;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}

.video-js .vjs-control.vjs-visible-text {
  width: auto;
  padding-left: 1em;
  padding-right: 1em;
}

.vjs-button > .vjs-icon-placeholder:before {
  font-size: 1.8em;
  line-height: 1.67;
}

.vjs-button > .vjs-icon-placeholder {
  display: block;
}

.video-js .vjs-control:focus, .video-js .vjs-control:focus:before, .video-js .vjs-control:hover:before {
  text-shadow: 0 0 1em #fff;
}

.video-js :not(.vjs-visible-text) > .vjs-control-text {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.video-js .vjs-custom-control-spacer {
  display: none;
}

.video-js .vjs-progress-control {
  cursor: pointer;
  -webkit-box-flex: 1;
      -ms-flex: auto;
          flex: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-width: 4em;
  -ms-touch-action: none;
      touch-action: none;
}

.video-js .vjs-progress-control.disabled {
  cursor: default;
}

.vjs-live .vjs-progress-control {
  display: none;
}

.vjs-liveui .vjs-progress-control {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.video-js .vjs-progress-holder {
  -webkit-box-flex: 1;
      -ms-flex: auto;
          flex: auto;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  height: 0.3em;
}

.video-js .vjs-progress-control .vjs-progress-holder {
  margin: 0 10px;
}

.video-js .vjs-progress-control:hover .vjs-progress-holder {
  font-size: 1.6666666667em;
}

.video-js .vjs-progress-control:hover .vjs-progress-holder.disabled {
  font-size: 1em;
}

.video-js .vjs-progress-holder .vjs-load-progress, .video-js .vjs-progress-holder .vjs-load-progress div, .video-js .vjs-progress-holder .vjs-play-progress {
  position: absolute;
  display: block;
  height: 100%;
  margin: 0;
  padding: 0;
  width: 0;
}

.video-js .vjs-play-progress {
  background-color: #fff;
}

.video-js .vjs-play-progress:before {
  font-size: 0.9em;
  position: absolute;
  right: -0.5em;
  line-height: 0.35em;
  z-index: 1;
}

.video-js .vjs-load-progress {
  background: rgba(115, 133, 159, 0.5);
}

.video-js .vjs-load-progress div {
  background: rgba(115, 133, 159, 0.75);
}

.video-js .vjs-time-tooltip {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 0.3em;
  color: #000;
  float: right;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1em;
  padding: 6px 8px 8px 8px;
  pointer-events: none;
  position: absolute;
  top: -3.4em;
  visibility: hidden;
  z-index: 1;
}

.video-js .vjs-progress-holder:focus .vjs-time-tooltip {
  display: none;
}

.video-js .vjs-progress-control:hover .vjs-progress-holder:focus .vjs-time-tooltip, .video-js .vjs-progress-control:hover .vjs-time-tooltip {
  display: block;
  font-size: 0.6em;
  visibility: visible;
}

.video-js .vjs-progress-control.disabled:hover .vjs-time-tooltip {
  font-size: 1em;
}

.video-js .vjs-progress-control .vjs-mouse-display {
  display: none;
  position: absolute;
  width: 1px;
  height: 100%;
  background-color: #000;
  z-index: 1;
}

.video-js .vjs-progress-control:hover .vjs-mouse-display {
  display: block;
}

.video-js.vjs-user-inactive .vjs-progress-control .vjs-mouse-display {
  visibility: hidden;
  opacity: 0;
  -webkit-transition: visibility 1s, opacity 1s;
  transition: visibility 1s, opacity 1s;
}

.vjs-mouse-display .vjs-time-tooltip {
  color: #fff;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.8);
}

.video-js .vjs-slider {
  position: relative;
  cursor: pointer;
  padding: 0;
  margin: 0 0.45em 0 0.45em;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
      user-select: none;
  background-color: #73859f;
  background-color: rgba(115, 133, 159, 0.5);
}

.video-js .vjs-slider.disabled {
  cursor: default;
}

.video-js .vjs-slider:focus {
  text-shadow: 0 0 1em #fff;
  -webkit-box-shadow: 0 0 1em #fff;
          box-shadow: 0 0 1em #fff;
}

.video-js .vjs-mute-control {
  cursor: pointer;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}

.video-js .vjs-volume-control {
  cursor: pointer;
  margin-right: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.video-js .vjs-volume-control.vjs-volume-horizontal {
  width: 5em;
}

.video-js .vjs-volume-panel .vjs-volume-control {
  visibility: visible;
  opacity: 0;
  width: 1px;
  height: 1px;
  margin-left: -1px;
}

.video-js .vjs-volume-panel {
  -webkit-transition: width 1s;
  transition: width 1s;
}

.video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active, .video-js .vjs-volume-panel .vjs-volume-control:active, .video-js .vjs-volume-panel.vjs-hover .vjs-mute-control ~ .vjs-volume-control, .video-js .vjs-volume-panel.vjs-hover .vjs-volume-control, .video-js .vjs-volume-panel:active .vjs-volume-control, .video-js .vjs-volume-panel:focus .vjs-volume-control {
  visibility: visible;
  opacity: 1;
  position: relative;
  -webkit-transition: visibility 0.1s, opacity 0.1s, height 0.1s, width 0.1s, left 0s, top 0s;
  transition: visibility 0.1s, opacity 0.1s, height 0.1s, width 0.1s, left 0s, top 0s;
}

.video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active.vjs-volume-horizontal, .video-js .vjs-volume-panel .vjs-volume-control:active.vjs-volume-horizontal, .video-js .vjs-volume-panel.vjs-hover .vjs-mute-control ~ .vjs-volume-control.vjs-volume-horizontal, .video-js .vjs-volume-panel.vjs-hover .vjs-volume-control.vjs-volume-horizontal, .video-js .vjs-volume-panel:active .vjs-volume-control.vjs-volume-horizontal, .video-js .vjs-volume-panel:focus .vjs-volume-control.vjs-volume-horizontal {
  width: 5em;
  height: 3em;
  margin-right: 0;
}

.video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active.vjs-volume-vertical, .video-js .vjs-volume-panel .vjs-volume-control:active.vjs-volume-vertical, .video-js .vjs-volume-panel.vjs-hover .vjs-mute-control ~ .vjs-volume-control.vjs-volume-vertical, .video-js .vjs-volume-panel.vjs-hover .vjs-volume-control.vjs-volume-vertical, .video-js .vjs-volume-panel:active .vjs-volume-control.vjs-volume-vertical, .video-js .vjs-volume-panel:focus .vjs-volume-control.vjs-volume-vertical {
  left: -3.5em;
  -webkit-transition: left 0s;
  transition: left 0s;
}

.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover, .video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active, .video-js .vjs-volume-panel.vjs-volume-panel-horizontal:active {
  width: 10em;
  -webkit-transition: width 0.1s;
  transition: width 0.1s;
}

.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-mute-toggle-only {
  width: 4em;
}

.video-js .vjs-volume-panel .vjs-volume-control.vjs-volume-vertical {
  height: 8em;
  width: 3em;
  left: -3000em;
  -webkit-transition: visibility 1s, opacity 1s, height 1s 1s, width 1s 1s, left 1s 1s, top 1s 1s;
  transition: visibility 1s, opacity 1s, height 1s 1s, width 1s 1s, left 1s 1s, top 1s 1s;
}

.video-js .vjs-volume-panel .vjs-volume-control.vjs-volume-horizontal {
  -webkit-transition: visibility 1s, opacity 1s, height 1s 1s, width 1s, left 1s 1s, top 1s 1s;
  transition: visibility 1s, opacity 1s, height 1s 1s, width 1s, left 1s 1s, top 1s 1s;
}

.video-js .vjs-volume-panel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.video-js .vjs-volume-bar {
  margin: 1.35em 0.45em;
}

.vjs-volume-bar.vjs-slider-horizontal {
  width: 5em;
  height: 0.3em;
}

.vjs-volume-bar.vjs-slider-vertical {
  width: 0.3em;
  height: 5em;
  margin: 1.35em auto;
}

.video-js .vjs-volume-level {
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #fff;
}

.video-js .vjs-volume-level:before {
  position: absolute;
  font-size: 0.9em;
  z-index: 1;
}

.vjs-slider-vertical .vjs-volume-level {
  width: 0.3em;
}

.vjs-slider-vertical .vjs-volume-level:before {
  top: -0.5em;
  left: -0.3em;
  z-index: 1;
}

.vjs-slider-horizontal .vjs-volume-level {
  height: 0.3em;
}

.vjs-slider-horizontal .vjs-volume-level:before {
  line-height: 0.35em;
  right: -0.5em;
}

.video-js .vjs-volume-panel.vjs-volume-panel-vertical {
  width: 4em;
}

.vjs-volume-bar.vjs-slider-vertical .vjs-volume-level {
  height: 100%;
}

.vjs-volume-bar.vjs-slider-horizontal .vjs-volume-level {
  width: 100%;
}

.video-js .vjs-volume-vertical {
  width: 3em;
  height: 8em;
  bottom: 8em;
  background-color: #2b333f;
  background-color: rgba(43, 51, 63, 0.7);
}

.video-js .vjs-volume-horizontal .vjs-menu {
  left: -2em;
}

.video-js .vjs-volume-tooltip {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 0.3em;
  color: #000;
  float: right;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1em;
  padding: 6px 8px 8px 8px;
  pointer-events: none;
  position: absolute;
  top: -3.4em;
  visibility: hidden;
  z-index: 1;
}

.video-js .vjs-volume-control:hover .vjs-progress-holder:focus .vjs-volume-tooltip, .video-js .vjs-volume-control:hover .vjs-volume-tooltip {
  display: block;
  font-size: 1em;
  visibility: visible;
}

.video-js .vjs-volume-vertical:hover .vjs-progress-holder:focus .vjs-volume-tooltip, .video-js .vjs-volume-vertical:hover .vjs-volume-tooltip {
  left: 1em;
  top: -12px;
}

.video-js .vjs-volume-control.disabled:hover .vjs-volume-tooltip {
  font-size: 1em;
}

.video-js .vjs-volume-control .vjs-mouse-display {
  display: none;
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #000;
  z-index: 1;
}

.video-js .vjs-volume-horizontal .vjs-mouse-display {
  width: 1px;
  height: 100%;
}

.video-js .vjs-volume-control:hover .vjs-mouse-display {
  display: block;
}

.video-js.vjs-user-inactive .vjs-volume-control .vjs-mouse-display {
  visibility: hidden;
  opacity: 0;
  -webkit-transition: visibility 1s, opacity 1s;
  transition: visibility 1s, opacity 1s;
}

.vjs-mouse-display .vjs-volume-tooltip {
  color: #fff;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.8);
}

.vjs-poster {
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
}

.vjs-has-started .vjs-poster, .vjs-using-native-controls .vjs-poster {
  display: none;
}

.vjs-audio.vjs-has-started .vjs-poster, .vjs-has-started.vjs-audio-poster-mode .vjs-poster, .vjs-pip-container.vjs-has-started .vjs-poster {
  display: block;
}

.vjs-poster img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

.video-js .vjs-live-control {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-flex: 1;
      -ms-flex: auto;
          flex: auto;
  font-size: 1em;
  line-height: 3em;
}

.video-js.vjs-liveui .vjs-live-control, .video-js:not(.vjs-live) .vjs-live-control {
  display: none;
}

.video-js .vjs-seek-to-live-control {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  height: 100%;
  padding-left: 0.5em;
  padding-right: 0.5em;
  font-size: 1em;
  line-height: 3em;
  width: auto;
  min-width: 4em;
}

.video-js.vjs-live:not(.vjs-liveui) .vjs-seek-to-live-control, .video-js:not(.vjs-live) .vjs-seek-to-live-control {
  display: none;
}

.vjs-seek-to-live-control.vjs-control.vjs-at-live-edge {
  cursor: auto;
}

.vjs-seek-to-live-control .vjs-icon-placeholder {
  margin-right: 0.5em;
  color: #888;
}

.vjs-seek-to-live-control.vjs-control.vjs-at-live-edge .vjs-icon-placeholder {
  color: red;
}

.video-js .vjs-time-control {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  font-size: 1em;
  line-height: 3em;
  min-width: 2em;
  width: auto;
  padding-left: 1em;
  padding-right: 1em;
}

.video-js .vjs-current-time, .video-js .vjs-duration, .vjs-live .vjs-time-control, .vjs-live .vjs-time-divider {
  display: none;
}

.vjs-time-divider {
  display: none;
  line-height: 3em;
}

.video-js .vjs-play-control {
  cursor: pointer;
}

.video-js .vjs-play-control .vjs-icon-placeholder {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}

.vjs-text-track-display {
  position: absolute;
  bottom: 3em;
  left: 0;
  right: 0;
  top: 0;
  pointer-events: none;
}

.video-js.vjs-controls-disabled .vjs-text-track-display, .video-js.vjs-user-inactive.vjs-playing .vjs-text-track-display {
  bottom: 1em;
}

.video-js .vjs-text-track {
  font-size: 1.4em;
  text-align: center;
  margin-bottom: 0.1em;
}

.vjs-subtitles {
  color: #fff;
}

.vjs-captions {
  color: #fc6;
}

.vjs-tt-cue {
  display: block;
}

video::-webkit-media-text-track-display {
  -webkit-transform: translateY(-3em);
          transform: translateY(-3em);
}

.video-js.vjs-controls-disabled video::-webkit-media-text-track-display, .video-js.vjs-user-inactive.vjs-playing video::-webkit-media-text-track-display {
  -webkit-transform: translateY(-1.5em);
          transform: translateY(-1.5em);
}

.video-js .vjs-picture-in-picture-control {
  cursor: pointer;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}

.video-js.vjs-audio-only-mode .vjs-picture-in-picture-control, .vjs-pip-window .vjs-picture-in-picture-control {
  display: none;
}

.video-js .vjs-fullscreen-control {
  cursor: pointer;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}

.video-js.vjs-audio-only-mode .vjs-fullscreen-control, .vjs-pip-window .vjs-fullscreen-control {
  display: none;
}

.vjs-playback-rate .vjs-playback-rate-value, .vjs-playback-rate > .vjs-menu-button {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.vjs-playback-rate .vjs-playback-rate-value {
  pointer-events: none;
  font-size: 1.5em;
  line-height: 2;
  text-align: center;
}

.vjs-playback-rate .vjs-menu {
  width: 4em;
  left: 0;
}

.vjs-error .vjs-error-display .vjs-modal-dialog-content {
  font-size: 1.4em;
  text-align: center;
}

.vjs-error .vjs-error-display:before {
  color: #fff;
  content: "X";
  font-family: Arial, Helvetica, sans-serif;
  font-size: 4em;
  left: 0;
  line-height: 1;
  margin-top: -0.5em;
  position: absolute;
  text-shadow: 0.05em 0.05em 0.1em #000;
  text-align: center;
  top: 50%;
  vertical-align: middle;
  width: 100%;
}

.vjs-loading-spinner {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -25px 0 0 -25px;
  opacity: 0.85;
  text-align: left;
  border: 6px solid rgba(43, 51, 63, 0.7);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-clip: padding-box;
  width: 50px;
  height: 50px;
  border-radius: 25px;
  visibility: hidden;
}

.vjs-seeking .vjs-loading-spinner, .vjs-waiting .vjs-loading-spinner {
  display: block;
  -webkit-animation: vjs-spinner-show 0s linear 0.3s forwards;
          animation: vjs-spinner-show 0s linear 0.3s forwards;
}

.vjs-loading-spinner:after, .vjs-loading-spinner:before {
  content: "";
  position: absolute;
  margin: -6px;
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
  width: inherit;
  height: inherit;
  border-radius: inherit;
  opacity: 1;
  border: inherit;
  border-color: transparent;
  border-top-color: #fff;
}

.vjs-seeking .vjs-loading-spinner:after, .vjs-seeking .vjs-loading-spinner:before, .vjs-waiting .vjs-loading-spinner:after, .vjs-waiting .vjs-loading-spinner:before {
  -webkit-animation: vjs-spinner-spin 1.1s cubic-bezier(0.6, 0.2, 0, 0.8) infinite, vjs-spinner-fade 1.1s linear infinite;
          animation: vjs-spinner-spin 1.1s cubic-bezier(0.6, 0.2, 0, 0.8) infinite, vjs-spinner-fade 1.1s linear infinite;
}

.vjs-seeking .vjs-loading-spinner:before, .vjs-waiting .vjs-loading-spinner:before {
  border-top-color: #fff;
}

.vjs-seeking .vjs-loading-spinner:after, .vjs-waiting .vjs-loading-spinner:after {
  border-top-color: #fff;
  -webkit-animation-delay: 0.44s;
          animation-delay: 0.44s;
}

@-webkit-keyframes vjs-spinner-show {
  to {
    visibility: visible;
  }
}

@keyframes vjs-spinner-show {
  to {
    visibility: visible;
  }
}
@-webkit-keyframes vjs-spinner-spin {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes vjs-spinner-spin {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@-webkit-keyframes vjs-spinner-fade {
  0% {
    border-top-color: #73859f;
  }
  20% {
    border-top-color: #73859f;
  }
  35% {
    border-top-color: #fff;
  }
  60% {
    border-top-color: #73859f;
  }
  100% {
    border-top-color: #73859f;
  }
}
@keyframes vjs-spinner-fade {
  0% {
    border-top-color: #73859f;
  }
  20% {
    border-top-color: #73859f;
  }
  35% {
    border-top-color: #fff;
  }
  60% {
    border-top-color: #73859f;
  }
  100% {
    border-top-color: #73859f;
  }
}
.video-js.vjs-audio-only-mode .vjs-captions-button {
  display: none;
}

.vjs-chapters-button .vjs-menu ul {
  width: 24em;
}

.video-js.vjs-audio-only-mode .vjs-descriptions-button {
  display: none;
}

.video-js .vjs-subs-caps-button + .vjs-menu .vjs-captions-menu-item .vjs-menu-item-text .vjs-icon-placeholder {
  vertical-align: middle;
  display: inline-block;
  margin-bottom: -0.1em;
}

.video-js .vjs-subs-caps-button + .vjs-menu .vjs-captions-menu-item .vjs-menu-item-text .vjs-icon-placeholder:before {
  font-family: VideoJS;
  content: "\f10c";
  font-size: 1.5em;
  line-height: inherit;
}

.video-js.vjs-audio-only-mode .vjs-subs-caps-button {
  display: none;
}

.video-js .vjs-audio-button + .vjs-menu .vjs-main-desc-menu-item .vjs-menu-item-text .vjs-icon-placeholder {
  vertical-align: middle;
  display: inline-block;
  margin-bottom: -0.1em;
}

.video-js .vjs-audio-button + .vjs-menu .vjs-main-desc-menu-item .vjs-menu-item-text .vjs-icon-placeholder:before {
  font-family: VideoJS;
  content: " \f12e";
  font-size: 1.5em;
  line-height: inherit;
}

.video-js.vjs-layout-small .vjs-current-time, .video-js.vjs-layout-small .vjs-duration, .video-js.vjs-layout-small .vjs-playback-rate, .video-js.vjs-layout-small .vjs-remaining-time, .video-js.vjs-layout-small .vjs-time-divider, .video-js.vjs-layout-small .vjs-volume-control, .video-js.vjs-layout-tiny .vjs-current-time, .video-js.vjs-layout-tiny .vjs-duration, .video-js.vjs-layout-tiny .vjs-playback-rate, .video-js.vjs-layout-tiny .vjs-remaining-time, .video-js.vjs-layout-tiny .vjs-time-divider, .video-js.vjs-layout-tiny .vjs-volume-control, .video-js.vjs-layout-x-small .vjs-current-time, .video-js.vjs-layout-x-small .vjs-duration, .video-js.vjs-layout-x-small .vjs-playback-rate, .video-js.vjs-layout-x-small .vjs-remaining-time, .video-js.vjs-layout-x-small .vjs-time-divider, .video-js.vjs-layout-x-small .vjs-volume-control {
  display: none;
}

.video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover, .video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active, .video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal:active, .video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal:hover, .video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover, .video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active, .video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal:active, .video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal:hover, .video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover, .video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active, .video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal:active, .video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal:hover {
  width: auto;
  width: initial;
}

.video-js.vjs-layout-tiny .vjs-progress-control, .video-js.vjs-layout-x-small .vjs-progress-control {
  display: none;
}

.video-js.vjs-layout-x-small .vjs-custom-control-spacer {
  -webkit-box-flex: 1;
      -ms-flex: auto;
          flex: auto;
  display: block;
}

.vjs-modal-dialog.vjs-text-track-settings {
  background-color: #2b333f;
  background-color: rgba(43, 51, 63, 0.75);
  color: #fff;
  height: 70%;
}

.vjs-text-track-settings .vjs-modal-dialog-content {
  display: table;
}

.vjs-text-track-settings .vjs-track-settings-colors, .vjs-text-track-settings .vjs-track-settings-controls, .vjs-text-track-settings .vjs-track-settings-font {
  display: table-cell;
}

.vjs-text-track-settings .vjs-track-settings-controls {
  text-align: right;
  vertical-align: bottom;
}

@supports (display: grid) {
  .vjs-text-track-settings .vjs-modal-dialog-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr;
    padding: 20px 24px 0 24px;
  }
  .vjs-track-settings-controls .vjs-default-button {
    margin-bottom: 20px;
  }
  .vjs-text-track-settings .vjs-track-settings-controls {
    grid-column: 1/-1;
  }
  .vjs-layout-small .vjs-text-track-settings .vjs-modal-dialog-content, .vjs-layout-tiny .vjs-text-track-settings .vjs-modal-dialog-content, .vjs-layout-x-small .vjs-text-track-settings .vjs-modal-dialog-content {
    grid-template-columns: 1fr;
  }
}
.vjs-track-setting > select {
  margin-right: 1em;
  margin-bottom: 0.5em;
}

.vjs-text-track-settings fieldset {
  margin: 10px;
  border: none;
}

.vjs-text-track-settings fieldset span {
  display: inline-block;
  padding: 0 6px 8px;
}

.vjs-text-track-settings fieldset span > select {
  max-width: 7.3em;
}

.vjs-text-track-settings legend {
  color: #fff;
  font-weight: 700;
  font-size: 14px;
}

.vjs-text-track-settings .vjs-label {
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  margin: 0 5px 5px 0;
  border: 0;
  height: 1px;
  width: 1px;
  overflow: hidden;
}

.vjs-track-settings-controls button:active, .vjs-track-settings-controls button:focus {
  outline-style: solid;
  outline-width: medium;
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(88%, #fff), to(#73859f));
  background-image: linear-gradient(0deg, #fff 88%, #73859f 100%);
}

.vjs-track-settings-controls button:hover {
  color: rgba(43, 51, 63, 0.75);
}

.vjs-track-settings-controls button {
  background-color: #fff;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(88%, #fff), to(#73859f));
  background-image: linear-gradient(-180deg, #fff 88%, #73859f 100%);
  color: #2b333f;
  cursor: pointer;
  border-radius: 2px;
}

.vjs-track-settings-controls .vjs-default-button {
  margin-right: 1em;
}

.vjs-title-bar {
  background: rgba(0, 0, 0, 0.9);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(0, 0, 0, 0.9)), color-stop(60%, rgba(0, 0, 0, 0.7)), to(rgba(0, 0, 0, 0)));
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.9) 0, rgba(0, 0, 0, 0.7) 60%, rgba(0, 0, 0, 0) 100%);
  font-size: 1.2em;
  line-height: 1.5;
  -webkit-transition: opacity 0.1s;
  transition: opacity 0.1s;
  padding: 0.666em 1.333em 4em;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%;
}

.vjs-title-bar-description, .vjs-title-bar-title {
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.vjs-title-bar-title {
  font-weight: 700;
  margin-bottom: 0.333em;
}

.vjs-playing.vjs-user-inactive .vjs-title-bar {
  opacity: 0;
  -webkit-transition: opacity 1s;
  transition: opacity 1s;
}

.video-js .vjs-skip-forward-5 {
  cursor: pointer;
}

.video-js .vjs-skip-forward-10 {
  cursor: pointer;
}

.video-js .vjs-skip-forward-30 {
  cursor: pointer;
}

.video-js .vjs-skip-backward-5 {
  cursor: pointer;
}

.video-js .vjs-skip-backward-10 {
  cursor: pointer;
}

.video-js .vjs-skip-backward-30 {
  cursor: pointer;
}

@media print {
  .video-js > :not(.vjs-tech):not(.vjs-poster) {
    visibility: hidden;
  }
}
.vjs-resize-manager {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
  z-index: -1000;
}

.js-focus-visible .video-js :focus:not(.focus-visible) {
  outline: 0;
}

.video-js :focus:not(:focus-visible) {
  outline: 0;
}

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

img {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: top;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after {
  content: "";
  content: none;
}

q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

img {
  vertical-align: top;
  font-size: 0;
  line-height: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 400;
}

/*------clearfix-------------------------------------*/
.clearfix {
  display: inline-table;
  min-height: 1%;
}

.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

/* Hides from IE-mac */
* html .clearfix {
  height: 1%;
}

.clearfix {
  display: block;
}

/* End hide from IE-mac */
input[type=text], input[type=password] {
  outline: none;
  -webkit-appearance: none;
  border-radius: 0;
}

textarea, select {
  outline: none;
  -webkit-appearance: none;
  border-radius: 0;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
*::before, *::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

body {
  position: relative;
  font-family: YakuHanJP, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0;
  font-size: 10px;
  background: #efeeec;
  width: 100%;
  overflow-y: scroll;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
body.top {
  overflow: hidden;
}

a {
  color: inherit;
  text-decoration: none;
}

img, svg {
  height: auto;
}

picture {
  display: inline-block;
}

button {
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-appearance: none;
  background: transparent;
}

@media screen and (min-width: 769px) {
  .sp-only {
    display: none;
  }
  .container {
    padding-top: 67px;
    padding-bottom: 80px;
    min-height: calc(100vh - 67px);
  }
  .section {
    position: relative;
    width: 100%;
  }
  .section__inner {
    position: relative;
    width: 92.96%;
    margin: 0 auto;
    z-index: 2;
  }
}
@media screen and (max-width: 768px) {
  .pc-only {
    display: none;
  }
  .container {
    padding-top: 67px;
    padding-bottom: 105px;
  }
  .container .section {
    position: relative;
    width: 100%;
  }
  .container .section__inner {
    position: relative;
    width: 90.66%;
    margin: 0 auto;
    z-index: 2;
  }
}
.anim-fade {
  -webkit-transform: translate(0, 20px);
      -ms-transform: translate(0, 20px);
          transform: translate(0, 20px);
  -webkit-transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
  transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
  transition: transform 0.8s ease-out, opacity 0.8s ease-out;
  transition: transform 0.8s ease-out, opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
  opacity: 0;
}
.anim-fade.-visible {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
  opacity: 1;
}

.anim-parent.-visible .anim-fade {
  opacity: 1;
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}
.-delay1 {
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}
.-delay2 {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}
.-delay3 {
  -webkit-transition-delay: 0.9s;
          transition-delay: 0.9s;
}
.-delay4 {
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}
.-delay5 {
  -webkit-transition-delay: 1.5s;
          transition-delay: 1.5s;
}
.-delay6 {
  -webkit-transition-delay: 1.8s;
          transition-delay: 1.8s;
}
.-delay7 {
  -webkit-transition-delay: 2.1s;
          transition-delay: 2.1s;
}
.-delay8 {
  -webkit-transition-delay: 2.4s;
          transition-delay: 2.4s;
}
.-delay9 {
  -webkit-transition-delay: 2.7s;
          transition-delay: 2.7s;
}

@-webkit-keyframes scrollbar-anim {
  0% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: center bottom;
            transform-origin: center bottom;
  }
  40% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: center bottom;
            transform-origin: center bottom;
  }
  45% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: center top;
            transform-origin: center top;
  }
  90% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: center top;
            transform-origin: center top;
  }
}

@keyframes scrollbar-anim {
  0% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: center bottom;
            transform-origin: center bottom;
  }
  40% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: center bottom;
            transform-origin: center bottom;
  }
  45% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: center top;
            transform-origin: center top;
  }
  90% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: center top;
            transform-origin: center top;
  }
}
@-webkit-keyframes progressbar-anim {
  0% {
    -webkit-transform: scale(0, 1);
            transform: scale(0, 1);
  }
  100% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}
@keyframes progressbar-anim {
  0% {
    -webkit-transform: scale(0, 1);
            transform: scale(0, 1);
  }
  100% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}
@-webkit-keyframes progressbar-anim-sp {
  0% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
  }
  100% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}
@keyframes progressbar-anim-sp {
  0% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
  }
  100% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}
@-webkit-keyframes top-title-show-anim {
  0% {
    opacity: 0;
    -webkit-transform: translate(0, 50%);
            transform: translate(0, 50%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
@keyframes top-title-show-anim {
  0% {
    opacity: 0;
    -webkit-transform: translate(0, 50%);
            transform: translate(0, 50%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
@-webkit-keyframes top-title-hide-anim {
  0% {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
  }
}
@keyframes top-title-hide-anim {
  0% {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
  }
}
@-webkit-keyframes top-title-show-anim-sp {
  0% {
    opacity: 0;
    -webkit-transform: translate(0, 25%);
            transform: translate(0, 25%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
@keyframes top-title-show-anim-sp {
  0% {
    opacity: 0;
    -webkit-transform: translate(0, 25%);
            transform: translate(0, 25%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
@-webkit-keyframes top-title-hide-anim-sp {
  0% {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate(0, -25%);
            transform: translate(0, -25%);
  }
}
@keyframes top-title-hide-anim-sp {
  0% {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate(0, -25%);
            transform: translate(0, -25%);
  }
}
@-webkit-keyframes top-map-link-icon-anim-sp {
  0%, 10%, 40%, 80%, 100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  25%, 55% {
    -webkit-transform: translate(8px, 0);
            transform: translate(8px, 0);
  }
}
@keyframes top-map-link-icon-anim-sp {
  0%, 10%, 40%, 80%, 100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  25%, 55% {
    -webkit-transform: translate(8px, 0);
            transform: translate(8px, 0);
  }
}
@media screen and (min-width: 769px) {
  .button-common {
    width: 210px;
    height: 40px;
    border-radius: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 0 auto;
    -webkit-transition: color 0.3s, background-color 0.3s, border-color 0.3s;
    transition: color 0.3s, background-color 0.3s, border-color 0.3s;
  }
  .button-common__text {
    margin-top: -2px;
    position: relative;
    display: inline-block;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 15px;
    letter-spacing: 0.03em;
  }
  .button-common.-black {
    border: 1px solid #222;
  }
  .button-common.-black:hover {
    border-color: #BD9354;
    background: #BD9354;
    color: #fff;
  }
  .button-common.-gold {
    background: #BD9354;
    color: #fff;
  }
  .button-common.-gold:hover {
    color: #BD9354;
    background: #fff;
  }
  .button-common.-white {
    border: 1px solid #fff;
    color: #fff;
  }
  .button-common.-white:hover {
    border-color: #BD9354;
    background: #BD9354;
    color: #fff;
  }
  .button-common.-whitegold {
    background: #fff;
    color: #BD9354;
  }
  .button-common.-whitegold:hover {
    background: #BD9354;
    color: #fff;
  }
  .button-common.-goldborder {
    background: #fff;
    color: #BD9354;
    border: 1px solid #BD9354;
  }
  .button-common.-goldborder:hover {
    background: #BD9354;
    color: #fff;
  }
}
@media screen and (max-width: 768px) {
  .button-common {
    width: 100%;
    height: 40px;
    border-radius: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 0 auto;
  }
  .button-common__text {
    margin-top: -2px;
    position: relative;
    display: inline-block;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 15px;
    letter-spacing: 0.03em;
  }
  .button-common.-black {
    border: 1px solid #222;
  }
  .button-common.-gold {
    background: #BD9354;
    color: #fff;
  }
  .button-common.-white {
    border: 1px solid #fff;
  }
  .button-common.-whitegold {
    background: #fff;
    color: #BD9354;
  }
}

@media screen and (min-width: 769px) {
  .header {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 67px;
    background: #efeeec;
    z-index: 1000;
  }
  .header::after {
    content: "";
    display: block;
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
    border-bottom: 1px solid #000;
    -webkit-transform: scale(0.9296, 1);
        -ms-transform: scale(0.9296, 1);
            transform: scale(0.9296, 1);
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
  .header.-shrinkline::after {
    -webkit-transform: scale(0.9296, 1);
        -ms-transform: scale(0.9296, 1);
            transform: scale(0.9296, 1);
  }
  .header__inner {
    width: 92.96%;
    height: 100%;
    margin: 0 auto;
  }
  .header__logo-text {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .header__logo-icon {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    opacity: 0;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .header__logo-icon img {
    width: 100%;
  }
  .header.-logo .header__logo-text {
    opacity: 0;
  }
  .header.-logo .header__logo-icon {
    opacity: 1;
  }
}
@media screen and (max-width: 768px) {
  .header {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 67px;
    background: #efeeec;
    z-index: 1000;
    border-bottom: 1px solid #000;
  }
  .header__inner {
    width: 90.66%;
    height: 100%;
    margin: 0 auto;
  }
  .header__logo-text {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
    width: 172px;
  }
  .header__logo-text img {
    width: 100%;
  }
  .header__logo-icon {
    width: 40px;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    opacity: 0;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .header__logo-icon img {
    width: 100%;
  }
  .header.-logo .header__logo-text {
    opacity: 0;
  }
  .header.-logo .header__logo-icon {
    opacity: 1;
  }
}
@media screen and (min-width: 769px) {
  body.top .header:not(.-shrinkline)::after,
  body.about .header:not(.-shrinkline)::after,
  body.hotels-detail .header:not(.-shrinkline)::after {
    -webkit-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}

@media screen and (min-width: 769px) {
  .footer {
    position: relative;
    width: 100%;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 14px;
    letter-spacing: 0.04em;
    background: #efeeec;
    z-index: 10;
  }
  .footer__inner {
    border-top: 1px solid #000;
    padding: 20px 0 24px;
    width: 92.96%;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .footer__logo {
    width: 25px;
  }
  .footer__logo img {
    width: 100%;
  }
  .footer__menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .footer__menu-item + .footer__menu-item {
    margin-left: 21px;
  }
  .footer__menu-item.-sns {
    font-size: 0;
    letter-spacing: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .footer__menu-item.-sns a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .footer__menu-item.-sns a:not(:first-child) {
    margin-left: 15px;
  }
  .footer__menu-item.-sns a:hover svg * {
    fill: #BD9354;
  }
  .footer__menu-icon {
    margin-top: 1px;
    display: inline-block;
  }
  .footer__menu-icon svg * {
    -webkit-transition: fill 0.3s;
    transition: fill 0.3s;
  }
  .footer__menu-icon.-instagram svg {
    width: 14px;
  }
  .footer__menu-icon.-youtube svg {
    width: 17px;
  }
  .footer__menu a {
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
  .footer__menu a:hover {
    color: #BD9354;
  }
  .footer__copyright {
    color: #a2a2a2;
  }
}
@media screen and (min-width: 769px) and (max-width: 1040px) {
  .footer .footer__menu {
    margin-left: 20px;
  }
  .footer .footer__menu-item + .footer__menu-item {
    margin-left: 15px;
  }
}
@media screen and (min-width: 769px) and (max-width: 970px) {
  .footer {
    font-size: 13px;
  }
}
@media screen and (min-width: 769px) and (max-width: 910px) {
  .footer {
    font-size: 12px;
  }
  .footer .footer__logo {
    width: 20px;
  }
}
@media screen and (min-width: 769px) and (max-width: 850px) {
  .footer {
    font-size: 11px;
  }
  .footer .footer__menu {
    margin-left: 15px;
  }
  .footer .footer__menu-item + .footer__menu-item {
    margin-left: 10px;
  }
}
@media screen and (max-width: 768px) {
  .footer {
    position: relative;
    width: 100%;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 14px;
    letter-spacing: 0.04em;
    text-align: center;
    background: #efeeec;
    z-index: 10;
  }
  .footer__inner {
    border-top: 1px solid #000;
    padding: 59px 0 42px;
    width: 90.66%;
    margin: 0 auto;
  }
  .footer__logo {
    width: 28px;
    margin: 0 auto;
  }
  .footer__logo img {
    width: 100%;
  }
  .footer__menu-item + .footer__menu-item {
    margin-top: 20px;
  }
  .footer__menu-item.-sns {
    font-size: 0;
    letter-spacing: 0;
    margin-top: 29px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .footer__menu-item a:not(:first-child) {
    margin-left: 15px;
  }
  .footer__menu-icon.-instagram svg {
    width: 16px;
  }
  .footer__menu-icon.-youtube svg {
    width: 19px;
  }
  .footer__copyright {
    margin-top: 37px;
    color: #a2a2a2;
  }
}
@media screen and (min-width: 769px) {
  .menu.-visible .menu__button-text.-off {
    opacity: 0;
  }
  .menu.-visible .menu__button-text.-on {
    opacity: 1;
  }
  .menu.-visible .menu__overlay {
    opacity: 0.2;
    pointer-events: all;
  }
  .menu.-visible .menu__inner {
    -webkit-transform: translateY(0%);
        -ms-transform: translateY(0%);
            transform: translateY(0%);
    pointer-events: all;
  }
  .menu.-opening-modal .menu__button {
    opacity: 0;
  }
  .menu__button {
    position: fixed;
    right: 3.51%;
    top: 23px;
    width: 48px;
    height: 18px;
    font-size: 16px;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    z-index: 10000;
    cursor: pointer;
    -webkit-transition: color 0.3s, opacity 0.3s;
    transition: color 0.3s, opacity 0.3s;
  }
  .menu__button:hover {
    color: #BD9354;
  }
  .menu__button-text {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .menu__button-text.-off, .menu__button-text.-on {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .menu__button-text.-on {
    opacity: 0;
  }
  .menu__overlay {
    background: #000;
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 9998;
    pointer-events: none;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
    opacity: 0;
  }
  .menu__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    min-height: 100%;
    height: 100%;
  }
  .menu__inner {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #fff;
    pointer-events: none;
    z-index: 9999;
    border-radius: 0 0 10px 10px;
    height: 90.875vh;
    -webkit-transition: -webkit-transform 0.8s ease;
    transition: -webkit-transform 0.8s ease;
    transition: transform 0.8s ease;
    transition: transform 0.8s ease, -webkit-transform 0.8s ease;
    -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
            transform: translateY(-100%);
  }
  .menu__content {
    padding: 94px 0 50px 7.031%;
    width: 32.1875%;
    min-width: 280px;
    border-right: 1px solid #EFEEEC;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    overflow: hidden auto;
  }
  .menu__content-list {
    text-align: left;
    font-size: 32px;
    letter-spacing: 0.03em;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  }
  .menu__content-list.-sub {
    margin-top: 48px;
    font-size: 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .menu__content-list.-sub a::before {
    top: 6px;
  }
  .menu__content-list.-sub .menu__content-item {
    width: 100%;
  }
  .menu__content-list.-sub .menu__content-item.-language {
    margin-top: 43px !important;
    width: 75px;
  }
  .menu__content-list.-sub .menu__content-item + .menu__content-item {
    margin-top: 14px;
  }
  .menu__content-list.-sub .menu__content-item + .menu__content-item.-sns {
    margin-top: 21px;
  }
  .menu__content-item + .menu__content-item {
    margin-top: 19px;
  }
  .menu__content-item.-language {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .menu__content-item.-language + .menu__content-item {
    margin-top: 35px;
  }
  .menu__content-item a {
    position: relative;
    display: inline-block;
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
  .menu__content-item a::before {
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 5px;
    background: #222;
    -webkit-transition: opacity 0.3s, background-color 0.3s;
    transition: opacity 0.3s, background-color 0.3s;
    opacity: 0;
    position: absolute;
    left: -30px;
    top: 13px;
  }
  .menu__content-item a.-current::before {
    opacity: 1;
  }
  .menu__content-item a:hover {
    color: #BD9354;
  }
  .menu__content-item a:hover::before {
    background: #BD9354;
  }
  .menu__content-sns {
    margin-top: 134px;
    font-size: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: center;
        align-content: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .menu__content-sns a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    min-width: 20px;
  }
  .menu__content-sns a::before {
    display: none;
  }
  .menu__content-sns a:not(:first-child) {
    margin-left: 21px;
  }
  .menu__content-sns a:hover svg * {
    fill: #BD9354;
  }
  .menu__content-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: center;
        align-content: center;
  }
  .menu__content-icon img, .menu__content-icon svg {
    vertical-align: middle;
  }
  .menu__content-icon.-instagram {
    width: 18px;
  }
  .menu__content-icon.-youtube {
    width: 22px;
  }
  .menu__content-child {
    margin: 18px 0 -8px;
  }
  .menu__content-childitem a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .menu__content-childitem a::before {
    top: 12px;
  }
  .menu__content-title {
    font-size: 16px;
    letter-spacing: 0.03em;
    line-height: 32px;
    color: #a2a2a2;
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
  .menu__content-language {
    display: block;
    font-size: 16px;
    letter-spacing: 0.03em;
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
    cursor: pointer;
  }
  .menu__content-language + .menu__content-language {
    margin-left: 5px;
  }
  .menu__content-language + .menu__content-language::before {
    color: #222;
    content: "/";
    display: inline-block;
    margin-right: 5px;
  }
  .menu__content-language:hover {
    color: #BD9354;
  }
  .menu__content-language a::before {
    display: none;
  }
  .menu__content-icon {
    display: inline-block;
  }
  .menu__content-icon img, .menu__content-icon svg {
    width: 100%;
  }
  .menu__content-icon img *, .menu__content-icon svg * {
    -webkit-transition: fill 0.3s;
    transition: fill 0.3s;
  }
  .menu__video {
    padding: 90px 0 40px 60px;
    width: 33.28125%;
    min-width: 330px;
  }
  .menu__video-box {
    position: relative;
    overflow: hidden;
    border-radius: 4px;
    z-index: 2;
    cursor: pointer;
  }
  .menu__video-box:hover .button-common.-white {
    background-color: #BD9354;
    border-color: #BD9354;
  }
  .menu__video-image {
    position: relative;
    z-index: 1;
  }
  .menu__video-image img {
    width: 100%;
    height: auto;
  }
  .menu__video-button {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    z-index: 2;
    width: 180px;
    height: 36px;
  }
  .menu__hotels {
    padding: 90px 5% 50px 65px;
    overflow: hidden auto;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0%;
            flex: 1 1 0%;
  }
  .menu__hotels-title {
    font-size: 20px;
    line-height: 1.4;
    letter-spacing: 0.03em;
    color: rgba(34, 34, 34, 0.6);
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  }
  .menu__hotels-list {
    margin-top: 15px;
  }
  .menu__hotels-item:not(:first-child) {
    margin-top: 13px;
  }
  .menu__hotels-item a {
    position: relative;
    display: block;
  }
  .menu__hotels-item a::before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 3px;
    background: #222;
    -webkit-transition: opacity 0.3s, background-color 0.3s;
    transition: opacity 0.3s, background-color 0.3s;
    opacity: 0;
    position: absolute;
    left: -18px;
    top: 6px;
  }
  .menu__hotels-item a.-current::before {
    opacity: 1;
  }
  .menu__hotels-item a:hover {
    color: #BD9354;
  }
  .menu__hotels-item a:hover::before {
    background: #BD9354;
  }
  .menu__hotels-item a:hover .menu__hotels-item-location {
    color: inherit;
  }
  .menu__hotels-item-title {
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 14px;
    line-height: 1.4;
    letter-spacing: 0.03em;
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
  .menu__hotels-item-location {
    margin-top: 2px;
    color: #a2a2a2;
    font-size: 13px;
    line-height: 1.4;
    letter-spacing: 0.03em;
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
  .menu__modal {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -100000;
    pointer-events: none;
    opacity: 0;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
    -webkit-backdrop-filter: blur(10px);
            backdrop-filter: blur(10px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .menu__modal.-visible {
    opacity: 1;
    pointer-events: all;
  }
  .menu__modal.-active {
    z-index: 10001;
  }
  .menu__modal-content {
    position: relative;
    width: 74.84375%;
    max-width: calc((90.875vh - 80px) * 1.77);
    overflow: hidden;
    border-radius: 4px;
    -webkit-box-shadow: 4px 3px 24px 0px rgba(0, 0, 0, 0.25);
            box-shadow: 4px 3px 24px 0px rgba(0, 0, 0, 0.25);
  }
  .menu__modal-content::before {
    content: "";
    display: block;
    width: 100%;
    padding-top: 56.25%;
  }
  .menu__modal-overlay {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
  }
  .menu__modal-player {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
  }
  .menu__modal-close {
    position: absolute;
    right: 20px;
    top: 20px;
    z-index: 2;
    width: 180px;
    height: 36px;
    cursor: pointer;
  }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
  .menu__content {
    padding-left: 40px;
    min-width: 260px;
  }
  .menu__video {
    padding-left: 30px;
    min-width: 270px;
    width: 32%;
  }
  .menu__hotels {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media screen and (min-width: 769px) and (max-height: 725px) {
  .menu__content-list.-sub {
    margin-bottom: auto;
  }
  .menu__content-sns {
    margin-top: 50px;
  }
}
@media screen and (max-width: 768px) {
  .menu.-visible .menu__inner {
    pointer-events: all;
    -webkit-transform: translateX(0%);
        -ms-transform: translateX(0%);
            transform: translateX(0%);
  }
  .menu.-visible .menu__button-icon span:nth-child(1) {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    top: 6px;
  }
  .menu.-visible .menu__button-icon span:nth-child(2) {
    opacity: 0;
  }
  .menu.-visible .menu__button-icon span:nth-child(3) {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
    bottom: 6px;
  }
  .menu__button {
    position: fixed;
    right: 0;
    top: 0;
    width: 57px;
    height: 67px;
    font-size: 0;
    z-index: 10000;
    cursor: pointer;
  }
  .menu__button-icon {
    display: block;
    width: 22px;
    height: 13px;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .menu__button-icon span {
    display: block;
    width: 100%;
    height: 1px;
    background: #222;
    position: absolute;
    left: 0;
    -webkit-transition-property: opacity, top, bottom, -webkit-transform;
    transition-property: opacity, top, bottom, -webkit-transform;
    transition-property: opacity, transform, top, bottom;
    transition-property: opacity, transform, top, bottom, -webkit-transform;
    -webkit-transition-duration: 0.3s;
            transition-duration: 0.3s;
  }
  .menu__button-icon span:nth-child(1) {
    top: 0;
  }
  .menu__button-icon span:nth-child(2) {
    top: 6px;
  }
  .menu__button-icon span:nth-child(3) {
    bottom: 0;
  }
  .menu__inner {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    height: 100svh;
    background: #fff;
    overflow-y: auto;
    pointer-events: none;
    -webkit-transition: -webkit-transform 0.8s ease;
    transition: -webkit-transform 0.8s ease;
    transition: transform 0.8s ease;
    transition: transform 0.8s ease, -webkit-transform 0.8s ease;
    -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
            transform: translateX(100%);
    z-index: 9999;
  }
  .menu__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .menu__content {
    padding: 54px 14.666%;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .menu__content-inner {
    padding: 36px 0;
    width: 79.733%;
    margin: 0 auto;
  }
  .menu__content-list {
    font-size: 28px;
    letter-spacing: 0.03em;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  }
  .menu__content-list.-sub {
    margin-top: 47px;
    font-size: 22px;
  }
  .menu__content-list.-sub .menu__content-item + .menu__content-item {
    margin-top: 18px;
  }
  .menu__content-item + .menu__content-item {
    margin-top: 17px;
  }
  .menu__content-item.-language {
    margin-top: 41px !important;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .menu__content-item.-language + .menu__content-item {
    margin-top: 35px;
  }
  .menu__content-item a {
    position: relative;
    display: inline-block;
  }
  .menu__content-item a::before {
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 5px;
    background: #222;
    opacity: 0;
    position: absolute;
    left: -30px;
    top: 11px;
  }
  .menu__content-item a.-current::before {
    opacity: 1;
  }
  .menu__content-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: center;
        align-content: center;
  }
  .menu__content-icon img, .menu__content-icon svg {
    vertical-align: middle;
  }
  .menu__content-icon.-instagram {
    width: 18px;
  }
  .menu__content-icon.-youtube {
    width: 21px;
  }
  .menu__content-child {
    margin: 15px 0 -8px;
  }
  .menu__content-childitem a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .menu__content-childitem a::before {
    top: 12px;
  }
  .menu__content-title {
    font-size: 16px;
    letter-spacing: 0.03em;
    line-height: 30px;
    color: #a2a2a2;
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
  .menu__content-language {
    display: block;
    font-size: 14px;
    letter-spacing: 0.03em;
  }
  .menu__content-language + .menu__content-language {
    margin-left: 4px;
  }
  .menu__content-language + .menu__content-language::before {
    content: "/";
    display: inline-block;
    margin-right: 4px;
  }
  .menu__content-language a::before {
    display: none;
  }
  .menu__content-sns {
    margin-top: 16px;
    font-size: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: center;
        align-content: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .menu__content-sns a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    min-width: 20px;
  }
  .menu__content-sns a::before {
    display: none;
  }
  .menu__content-sns a:not(:first-child) {
    margin-left: 10px;
  }
  .menu__content-icon {
    letter-spacing: 0;
    display: inline-block;
  }
  .menu__content-icon img, .menu__content-icon svg {
    width: 100%;
  }
  .menu__content-icon.-youtube {
    width: 22px;
  }
  .menu__hotels {
    position: relative;
    padding: 49px 14.666% 48px;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .menu__hotels::before {
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    top: 0;
    width: 81.33vw;
    border-top: 1px solid #EFEEEC;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
  .menu__hotels-title {
    font-size: 18px;
    line-height: 1.4;
    letter-spacing: 0.03em;
    color: rgba(34, 34, 34, 0.6);
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  }
  .menu__hotels-list {
    margin-top: 21px;
  }
  .menu__hotels-item:not(:first-child) {
    margin-top: 14px;
  }
  .menu__hotels-item a {
    position: relative;
    display: block;
  }
  .menu__hotels-item a::before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 3px;
    background: #222;
    opacity: 0;
    position: absolute;
    left: -25px;
    top: 8px;
  }
  .menu__hotels-item a.-current::before {
    opacity: 1;
  }
  .menu__hotels-item-title {
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 14px;
    line-height: 1.4;
    letter-spacing: 0.03em;
  }
  .menu__hotels-item-location {
    margin-top: 2px;
    color: #a2a2a2;
    font-size: 13px;
    line-height: 1.4;
    letter-spacing: 0.03em;
  }
  .menu__video {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .menu__video-box {
    position: relative;
    z-index: 2;
    cursor: pointer;
  }
  .menu__video-image {
    position: relative;
    z-index: 1;
  }
  .menu__video-image img {
    width: 100%;
    height: auto;
  }
  .menu__video-button {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    z-index: 2;
    width: 180px;
    height: 36px;
    color: #fff;
    padding-top: 1px;
  }
  .menu__modal {
    position: relative;
    margin-top: -67.4666%;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    opacity: 0;
    pointer-events: none;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
    z-index: 2;
  }
  .menu__modal.-visible {
    opacity: 1;
    pointer-events: all;
  }
  .menu__modal-content {
    position: relative;
    width: 100%;
    overflow: hidden;
  }
  .menu__modal-content::before {
    content: "";
    display: block;
    width: 100%;
    padding-top: 67.4666%;
  }
  .menu__modal-player {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
  }
  .menu__modal-close {
    display: none;
  }
}

.form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.form input,
.form textarea {
  padding: 0;
  margin: 0;
  outline: none;
  -webkit-appearance: none;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  font-size: 14px;
  letter-spacing: 0.05em;
  font-family: YakuHanJP, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}
.form input[type=text],
.form input[type=number],
.form input[type=tel],
.form input[type=email] {
  width: 100%;
  height: 39px;
  background: #f9f8f7;
  padding: 0 16px;
  border-radius: 4px 4px 0 0;
}
.form input[type=text]:focus + .form__item-line,
.form input[type=number]:focus + .form__item-line,
.form input[type=tel]:focus + .form__item-line,
.form input[type=email]:focus + .form__item-line {
  background: #BD9354;
  -webkit-transform: scale(1, 2);
      -ms-transform: scale(1, 2);
          transform: scale(1, 2);
}
.form input[type=text]::-webkit-input-placeholder, .form input[type=number]::-webkit-input-placeholder, .form input[type=tel]::-webkit-input-placeholder, .form input[type=email]::-webkit-input-placeholder {
  color: #777;
}
.form input[type=text]::-moz-placeholder, .form input[type=number]::-moz-placeholder, .form input[type=tel]::-moz-placeholder, .form input[type=email]::-moz-placeholder {
  color: #777;
}
.form input[type=text]:-ms-input-placeholder, .form input[type=number]:-ms-input-placeholder, .form input[type=tel]:-ms-input-placeholder, .form input[type=email]:-ms-input-placeholder {
  color: #777;
}
.form input[type=text]::-ms-input-placeholder, .form input[type=number]::-ms-input-placeholder, .form input[type=tel]::-ms-input-placeholder, .form input[type=email]::-ms-input-placeholder {
  color: #777;
}
.form input[type=text]::placeholder,
.form input[type=number]::placeholder,
.form input[type=tel]::placeholder,
.form input[type=email]::placeholder {
  color: #777;
}
.form input[type=text].-error + .form__item-line,
.form input[type=number].-error + .form__item-line,
.form input[type=tel].-error + .form__item-line,
.form input[type=email].-error + .form__item-line {
  background: #F70303;
  -webkit-transform: scale(1, 2);
      -ms-transform: scale(1, 2);
          transform: scale(1, 2);
}
.form textarea {
  width: 100% !important;
  height: 165px;
  background: #f9f8f7;
  padding: 11px 16px;
  border-radius: 4px 4px 0 0;
}
.form textarea:focus + .form__item-line {
  background: #BD9354;
  -webkit-transform: scale(1, 2);
      -ms-transform: scale(1, 2);
          transform: scale(1, 2);
}
.form textarea::-webkit-input-placeholder {
  color: #a2a2a2;
}
.form textarea::-moz-placeholder {
  color: #a2a2a2;
}
.form textarea:-ms-input-placeholder {
  color: #a2a2a2;
}
.form textarea::-ms-input-placeholder {
  color: #a2a2a2;
}
.form textarea::placeholder {
  color: #a2a2a2;
}
.form textarea.-error + .form__item-line {
  background: #F70303;
  -webkit-transform: scale(1, 2);
      -ms-transform: scale(1, 2);
          transform: scale(1, 2);
}
.form input[type=radio],
.form input[type=checkbox] {
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}
.form__item {
  position: relative;
  width: 100%;
  margin-top: 25px;
}
.form__item-inner {
  position: relative;
}
.form__item-label {
  position: relative;
  font-size: 14px;
  letter-spacing: 0.05em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  cursor: pointer;
}
.form__item-label + .form__item-label {
  margin-left: 60px;
}
.form__item-radio + .form__item-text {
  margin-left: 7px;
}
.form__item-radio input[type=radio]:checked + .form__item-icon.-radio::before {
  opacity: 1;
}
.form__item-checkbox + .form__item-text {
  margin-left: 7px;
}
.form__item-checkbox input[type=checkbox]:checked + .form__item-icon.-checkbox::before {
  opacity: 1;
}
.form__item-icon {
  position: relative;
  display: inline-block;
  border: 1px solid #222;
  -webkit-transition: border-color 0.15s, background-color 0.15s;
  transition: border-color 0.15s, background-color 0.15s;
  vertical-align: top;
  margin-top: 4px;
}
.form__item-icon.-radio {
  border-radius: 8px;
  width: 16px;
  height: 16px;
}
.form__item-icon.-radio::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: #222;
  -webkit-transition: opacity 0.15s;
  transition: opacity 0.15s;
  width: 8px;
  height: 8px;
  border-radius: 4px;
  opacity: 0;
}
.form__item-icon.-checkbox {
  border-radius: 8px;
  width: 16px;
  height: 16px;
}
.form__item-icon.-checkbox::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: #222;
  -webkit-transition: opacity 0.15s;
  transition: opacity 0.15s;
  width: 8px;
  height: 8px;
  border-radius: 4px;
  opacity: 0;
}
.form__item-line {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  -webkit-transition: background-color 0.15s, -webkit-transform 0.15s;
  transition: background-color 0.15s, -webkit-transform 0.15s;
  transition: background-color 0.15s, transform 0.15s;
  transition: background-color 0.15s, transform 0.15s, -webkit-transform 0.15s;
  background: #222;
}
.form__item-error {
  position: absolute;
  left: 0;
  bottom: -16px;
  font-size: 12px;
  line-height: 14px;
  letter-spacing: 0.04em;
  color: #F70303;
}
.form__policy {
  width: auto;
  font-size: 14px;
  line-height: 22.4px;
  letter-spacing: 0.03em;
}
.form__policy-text {
  color: #a2a2a2;
}
.form__policy a {
  text-decoration: underline;
}
.form__confirm {
  width: 100%;
  background: #F4F4F2;
  border-radius: 4px;
}
.form__confirm-item {
  font-size: 14px;
  letter-spacing: 0.03em;
  line-height: 28px;
}
.form__confirm-title {
  font-weight: 500;
}
.form__button {
  width: 100%;
  cursor: pointer;
}

html[lang=en] .form__item {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
html[lang=en] .form__item.-firstName {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
html[lang=en] .form__item.-firstkana, html[lang=en] .form__item.-lastkana {
  display: none;
}
html[lang=en] .form__confirm {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
html[lang=en] .form__confirm-item {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
html[lang=en] .form__confirm-item.-firstName {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  margin-top: 0;
}
html[lang=en] .form__confirm-item.-lastName {
  margin-top: 20px;
}
html[lang=en] .form__confirm-item.-firstkana, html[lang=en] .form__confirm-item.-lastkana {
  display: none;
}

@media screen and (min-width: 769px) {
  .form__item.-col2 {
    width: calc(50% - 5px);
  }
  .form__policy {
    margin-top: 29px;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0%;
            flex: 1 1 0%;
  }
  .form__policy a:hover {
    text-decoration: none;
  }
  .form__policy .form__item-error {
    bottom: -22px;
  }
  .form__policy .form__item-label {
    margin-top: 2px;
  }
  .form__confirm {
    padding: 29px 36px;
  }
  .form__confirm-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .form__confirm-item + .form__confirm-item {
    margin-top: 20px;
  }
  .form__confirm-title {
    width: 40.6%;
    max-width: 250px;
  }
  .form__confirm-content {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0%;
            flex: 1 1 0%;
  }
  .form__send {
    width: 190px;
    margin-right: 0;
    margin-left: auto;
    margin-top: 35px;
  }
  .form__buttons {
    margin-top: 34px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .form__button {
    margin: 0;
  }
  .form__button.-send {
    width: 190px;
  }
  .form__button.-back {
    width: 150px;
    margin-right: 24px;
  }
}
@media screen and (max-width: 768px) {
  .form input[type=text],
  .form input[type=number],
  .form input[type=tel],
  .form input[type=email] {
    height: 36px;
  }
  .form textarea {
    height: 238px;
  }
  .form__item.-col2sp {
    width: calc(50% - 5px);
  }
  .form__item-error {
    bottom: -14px;
    font-size: 10px;
    line-height: 12px;
  }
  .form__confirm {
    margin-top: 25px;
    padding: 28px 27px;
  }
  .form__confirm-item {
    line-height: 24.5px;
  }
  .form__confirm-item + .form__confirm-item {
    margin-top: 20px;
  }
  .form__confirm-content {
    margin-top: 3px;
  }
  .form__policy {
    margin-top: 23px;
  }
  .form__send {
    margin-top: 40px;
  }
  .form__buttons {
    margin-top: 40px;
  }
  .form__button.-back {
    margin-top: 20px;
  }
}
@media screen and (max-width: 768px) and (max-width: 330px) {
  .form .form__item-error {
    letter-spacing: 0;
  }
}
@media screen and (min-width: 769px) {
  .gallery__list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    -webkit-column-gap: 10px;
       -moz-column-gap: 10px;
            column-gap: 10px;
    row-gap: 10px;
  }
  .gallery__item {
    position: relative;
    border-radius: 4px;
    overflow: hidden;
    z-index: 3;
  }
  .gallery__item:hover .gallery__item-content {
    opacity: 1;
  }
  .gallery__item:nth-child(6n+1) {
    grid-column: 1/3;
  }
  .gallery__item:nth-child(6n+4) {
    grid-column: 3/5;
  }
  .gallery__item:nth-child(18n+13) {
    grid-column: 3/5;
  }
  .gallery__item:nth-child(18n+16) {
    grid-column: 1/3;
  }
  .gallery__item-img {
    position: relative;
    height: 100%;
    width: 100%;
    aspect-ratio: 290/340;
    z-index: 1;
  }
  .gallery__item-img.-playing {
    opacity: 1;
  }
  .gallery__item-img.-playing img {
    opacity: 0;
  }
  .gallery__item-img img {
    width: 100%;
    aspect-ratio: 290/340;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center center;
       object-position: center center;
    position: relative;
    z-index: 2;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .gallery__item-content {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
    color: #fff;
    background: rgba(0, 0, 0, 0.7);
    z-index: 2;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
    opacity: 0;
    padding: 20px 45px;
  }
  .gallery__item-title {
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 20px;
    letter-spacing: 0.01em;
    line-height: 27px;
  }
  .gallery__item-title + .gallery__item-text {
    margin-top: 20px;
  }
  .gallery__item-text {
    font-size: 16px;
    letter-spacing: 0.01em;
    line-height: 28px;
  }
  .gallery__item-movie {
    position: absolute;
    left: -3px;
    top: -3px;
    width: calc(100% + 6px);
    height: calc(100% + 6px);
    overflow: hidden;
    z-index: 1;
    pointer-events: none;
    background: #000;
  }
  .gallery__item-player {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    height: 200%;
    width: 209%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1200px) {
  .gallery__item-content {
    padding-right: 20px;
    padding-left: 20px;
  }
}
@media screen and (max-width: 768px) {
  .gallery__list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    -webkit-column-gap: 10px;
       -moz-column-gap: 10px;
            column-gap: 10px;
    row-gap: 10px;
  }
  .gallery__list.-hidden {
    opacity: 0;
  }
  .gallery__list.-single {
    display: block;
  }
  .gallery__list.-single .gallery__item + .gallery__item {
    margin-top: 32px;
  }
  .gallery__list.-single .gallery__item-content {
    display: block;
  }
  .gallery__item {
    position: relative;
    z-index: 2;
    grid-row: auto !important;
    grid-column: auto !important;
  }
  .gallery__item-img {
    position: relative;
    border-radius: 4px;
    overflow: hidden;
    z-index: 1;
    height: 100%;
    width: 100%;
    aspect-ratio: 290/340;
  }
  .gallery__item-img.-playing {
    opacity: 1;
  }
  .gallery__item-img.-playing img {
    opacity: 0;
  }
  .gallery__item-img img {
    position: relative;
    width: 100%;
    aspect-ratio: 290/340;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center center;
       object-position: center center;
    z-index: 2;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .gallery__item-content {
    display: none;
    margin-top: 12px;
  }
  .gallery__item-title {
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 14px;
    letter-spacing: 0.01em;
    line-height: 16px;
  }
  .gallery__item-title + .gallery__item-text {
    margin-top: 9px;
  }
  .gallery__item-text {
    font-size: 14px;
    letter-spacing: 0.01em;
    line-height: 21px;
  }
  .gallery__item-text br {
    display: none;
  }
  .gallery__item-movie {
    position: absolute;
    left: -3px;
    top: -3px;
    width: calc(100% + 6px);
    height: calc(100% + 6px);
    overflow: hidden;
    z-index: 1;
    pointer-events: none;
    background: #000;
  }
  .gallery__item-player {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    height: 200%;
    width: 210%;
  }
}
@media screen and (min-width: 769px) {
  .others {
    position: relative;
    margin-top: 123px;
  }
  .others__slider {
    margin-top: 28px;
  }
  .others__slider:not(.-visible) {
    -webkit-transform: translate(30px, 0);
        -ms-transform: translate(30px, 0);
            transform: translate(30px, 0);
  }
  .others__slide {
    position: relative;
  }
  .others__slide.-prev .others__slide-img img, .others__slide.-duplicate-prev .others__slide-img img {
    -webkit-transform: translate(100px, 0);
        -ms-transform: translate(100px, 0);
            transform: translate(100px, 0);
  }
  .others__slide.-active .others__slide-img img, .others__slide.-duplicate-active .others__slide-img img {
    -webkit-transform: translate(50px, 0);
        -ms-transform: translate(50px, 0);
            transform: translate(50px, 0);
  }
  .others__slide.-next .others__slide-img img, .others__slide.-duplicate-next .others__slide-img img {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  .others__slide.-next + .others__slide .others__slide-img img, .others__slide.-duplicate-next + .others__slide .others__slide-img img {
    -webkit-transform: translate(-50px, 0);
        -ms-transform: translate(-50px, 0);
            transform: translate(-50px, 0);
  }
  .others__slide.-next + .others__slide + .others__slide .others__slide-img img, .others__slide.-duplicate-next + .others__slide + .others__slide .others__slide-img img {
    -webkit-transform: translate(-100px, 0);
        -ms-transform: translate(-100px, 0);
            transform: translate(-100px, 0);
  }
  .others__slide:nth-child(1):not(.-active) .others__slide-img img {
    -webkit-transform: translate(100px, 0);
        -ms-transform: translate(100px, 0);
            transform: translate(100px, 0);
  }
  .others__slide:nth-child(2):not(.-next) .others__slide-img img {
    -webkit-transform: translate(50px, 0);
        -ms-transform: translate(50px, 0);
            transform: translate(50px, 0);
  }
  .others__slide a {
    display: block;
  }
  .others__slide a:hover .others__slide-img::before {
    opacity: 0.5;
  }
  .others__slide-img {
    position: relative;
    overflow: hidden;
    border-radius: 4px;
    aspect-ratio: 400/520;
  }
  .others__slide-img::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    background: #000;
    opacity: 0.2;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .others__slide-img img {
    position: absolute;
    left: -100px;
    top: 0;
    width: calc(100% + 200px);
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center center;
       object-position: center center;
    z-index: 1;
    -webkit-transition: -webkit-transform 1.2s;
    transition: -webkit-transform 1.2s;
    transition: transform 1.2s;
    transition: transform 1.2s, -webkit-transform 1.2s;
  }
  .others__slide-content {
    position: absolute;
    left: 20px;
    bottom: 22px;
    color: #fff;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    z-index: 3;
  }
  .others__slide-title {
    font-size: 20px;
    letter-spacing: 0.03em;
  }
  .others__slide-location {
    margin-top: 5px;
    font-size: 16px;
    letter-spacing: 0.03em;
  }
  .others__button {
    margin-top: 40px;
  }
  .others__arrows {
    position: absolute;
    right: 0;
    top: 0;
  }
  .others__arrow {
    position: absolute;
    right: 0;
    top: 12px;
    background: #000;
    width: 28px;
    height: 28px;
    border-radius: 14px;
    background: #BD9354;
    -webkit-transition: background-color 0.3s;
    transition: background-color 0.3s;
    cursor: pointer;
  }
  .others__arrow::after {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    position: absolute;
    left: 47%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
        -ms-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
    -webkit-transition: border-color 0.3s;
    transition: border-color 0.3s;
  }
  .others__arrow:hover {
    background: #fff;
  }
  .others__arrow:hover::after {
    border-color: #BD9354;
  }
  .others__arrow.-prev {
    right: 38px;
  }
  .others__arrow.-prev::after {
    -webkit-transform: translate(-50%, -50%) rotate(-135deg);
        -ms-transform: translate(-50%, -50%) rotate(-135deg);
            transform: translate(-50%, -50%) rotate(-135deg);
    left: 53%;
  }
}
@media screen and (max-width: 768px) {
  .others {
    position: relative;
    margin-top: 76px;
    overflow: hidden;
    z-index: 2;
  }
  .others__slider {
    margin-top: 30px;
    overflow: visible;
  }
  .others__slider:not(.-visible) {
    -webkit-transform: translate(30px, 0);
        -ms-transform: translate(30px, 0);
            transform: translate(30px, 0);
  }
  .others__slider.-visibleduplicate .swiper-slide-duplicate {
    opacity: 1;
  }
  .others__slider .swiper {
    overflow: visible;
  }
  .others__slider .swiper__wrapper {
    overflow: visible;
  }
  .others__slide {
    position: relative;
  }
  .others__slide.-prev .others__slide-img img, .others__slide.-duplicate-prev .others__slide-img img {
    -webkit-transform: translate(-50px, 0);
        -ms-transform: translate(-50px, 0);
            transform: translate(-50px, 0);
  }
  .others__slide.-active .others__slide-img img, .others__slide.-duplicate-active .others__slide-img img {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  .others__slide.-next .others__slide-img img, .others__slide.-duplicate-next .others__slide-img img {
    -webkit-transform: translate(50px, 0);
        -ms-transform: translate(50px, 0);
            transform: translate(50px, 0);
  }
  .others__slide.-next + .others__slide .others__slide-img img, .others__slide.-duplicate-next + .others__slide .others__slide-img img {
    -webkit-transform: translate(100px, 0);
        -ms-transform: translate(100px, 0);
            transform: translate(100px, 0);
  }
  .others__slide.swiper-slide-duplicate {
    opacity: 0;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .others__slide:nth-child(1):not(.-active) .others__slide-img img {
    -webkit-transform: translate(50px, 0);
        -ms-transform: translate(50px, 0);
            transform: translate(50px, 0);
  }
  .others__slide:nth-child(2):not(.-next) .others__slide-img img {
    -webkit-transform: translate(100px, 0);
        -ms-transform: translate(100px, 0);
            transform: translate(100px, 0);
  }
  .others__slide a {
    display: block;
  }
  .others__slide-img {
    position: relative;
    overflow: hidden;
    aspect-ratio: 282/356;
    border-radius: 4px;
  }
  .others__slide-img::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    background: #000;
    opacity: 0.2;
  }
  .others__slide-img img {
    position: relative;
    position: absolute;
    left: -100px;
    top: 0;
    width: calc(100% + 200px);
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center center;
       object-position: center center;
    -webkit-transition: -webkit-transform 1.2s;
    transition: -webkit-transform 1.2s;
    transition: transform 1.2s;
    transition: transform 1.2s, -webkit-transform 1.2s;
    z-index: 1;
  }
  .others__slide-content {
    position: absolute;
    left: 16px;
    bottom: 17px;
    color: #fff;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    z-index: 3;
  }
  .others__slide-title {
    font-size: 18px;
    letter-spacing: 0.01em;
  }
  .others__slide-location {
    margin-top: 4px;
    font-size: 14px;
    letter-spacing: 0.01em;
  }
  .others__button {
    margin-top: 24px;
  }
}
.container.top {
  padding-bottom: 0;
}
@media screen and (min-width: 769px) {
  .container.top {
    width: 100%;
    height: 100vh;
  }
  .container.top.-scrollable {
    position: relative;
  }
  .container.top .top {
    position: relative;
    width: 100%;
    height: 100%;
    color: #fff;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    pointer-events: none;
    overflow: hidden auto;
  }
  .container.top .top.-visible {
    pointer-events: all;
  }
  .container.top .top__content {
    position: relative;
    z-index: 2;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .container.top .top__inner {
    position: relative;
    width: 85.15625%;
    margin: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding: 59px 0 100px;
  }
  .container.top .top__title {
    width: 100%;
    overflow: visible;
  }
  .container.top .top__title .swiper-slide.-active .top__title-img {
    -webkit-animation: top-title-show-anim 0.8s ease;
            animation: top-title-show-anim 0.8s ease;
  }
  .container.top .top__title .swiper-slide.-prev .top__title-img {
    -webkit-animation: top-title-hide-anim 0.8s ease;
            animation: top-title-hide-anim 0.8s ease;
  }
  .container.top .top__link {
    margin-top: 33px;
  }
  .container.top .top__link-button {
    width: auto;
    height: 36px;
    padding: 0 25px 0 24px;
  }
  .container.top .top__link-button .button-common__text {
    padding-right: 12px;
  }
  .container.top .top__link-button .button-common__text::after {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    border-right: 1px solid;
    border-bottom: 1px solid;
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
    position: absolute;
    right: 0;
    top: 5px;
  }
  .container.top .top__progress {
    display: none;
    position: fixed;
    right: 3.515625%;
    bottom: 0;
    width: 1px;
    height: 80px;
    background: rgba(255, 255, 255, 0.4);
  }
  .container.top .top__progress-bar {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
            transform-origin: left top;
    -webkit-transform: scale(1, 0);
        -ms-transform: scale(1, 0);
            transform: scale(1, 0);
  }
  .container.top .top__progress-bar.-animating {
    -webkit-animation: progressbar-anim-sp 3s linear forwards;
            animation: progressbar-anim-sp 3s linear forwards;
  }
  .container.top .top__progress-bar.-animated {
    -webkit-animation: none;
            animation: none;
    -webkit-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
            transform: scale(1, 1);
  }
  .container.top .top__listwrapper {
    position: relative;
    margin-top: 55px;
    width: 100%;
  }
  .container.top .top__listslider {
    overflow: visible;
  }
  .container.top .top__icon {
    position: absolute;
    left: -26px;
    top: 8px;
    width: 10px;
    height: 10px;
    border-radius: 5px;
    background: #fff;
    -webkit-transition: -webkit-transform 0.5s;
    transition: -webkit-transform 0.5s;
    transition: transform 0.5s;
    transition: transform 0.5s, -webkit-transform 0.5s;
  }
  .container.top .top__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    width: 100%;
    -webkit-transform: none !important;
        -ms-transform: none !important;
            transform: none !important;
  }
  .container.top .top__item {
    position: relative;
    height: auto;
    width: -webkit-fit-content !important;
    width: -moz-fit-content !important;
    width: fit-content !important;
    -webkit-transition: margin 0.3s;
    transition: margin 0.3s;
  }
  .container.top .top__item + .top__item {
    margin-top: 5px;
  }
  .container.top .top__item.-active:not(:first-child) {
    margin-top: 15px;
  }
  .container.top .top__item.-active + .top__item {
    margin-top: 15px;
  }
  .container.top .top__item.-active .top__item-link {
    pointer-events: all;
  }
  .container.top .top__item.-active .top__item-link::after {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
  }
  .container.top .top__item.-active .top__item-titlewrapper {
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
  .container.top .top__item.-active .top__item-textwrapper {
    opacity: 1;
  }
  .container.top .top__item-link {
    position: relative;
    display: inline-block;
    padding-right: 30px;
    z-index: 2;
    pointer-events: none;
  }
  .container.top .top__item-link::after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    top: 4px;
    width: 17px;
    height: 17px;
    background: url(../images/common/icon_arrow_white_01.svg) no-repeat center center/contain;
    opacity: 0;
    -webkit-transform: translate(-10px, 0);
        -ms-transform: translate(-10px, 0);
            transform: translate(-10px, 0);
    -webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
    transition: opacity 0.5s, -webkit-transform 0.5s;
    transition: opacity 0.5s, transform 0.5s;
    transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s;
  }
  .container.top .top__item-titlewrapper {
    opacity: 0.6;
    -webkit-transform: scale(0.66);
        -ms-transform: scale(0.66);
            transform: scale(0.66);
    -webkit-transform-origin: left center;
        -ms-transform-origin: left center;
            transform-origin: left center;
    -webkit-transition: color 0.5s, -webkit-transform 0.5s;
    transition: color 0.5s, -webkit-transform 0.5s;
    transition: transform 0.5s, color 0.5s;
    transition: transform 0.5s, color 0.5s, -webkit-transform 0.5s;
  }
  .container.top .top__item-title {
    font-size: 24px;
    line-height: 1;
    letter-spacing: 0.03em;
  }
  .container.top .top__item-textwrapper {
    position: fixed;
    right: 7.5%;
    bottom: 16%;
    height: 125px;
    overflow: visible;
    width: 23.4375%;
    max-width: 350px;
    opacity: 0;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
    pointer-events: none;
  }
  .container.top .top__item-text {
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 0.05em;
    font-family: YakuHanJP, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  }
  .container.top .top__map {
    position: fixed;
    left: 3.125%;
    bottom: 30px;
    z-index: 10;
  }
  .container.top .top__map-button {
    background: rgba(255, 255, 255, 0.9);
    color: #222;
    border: 1px solid rgba(34, 34, 34, 0.5);
    width: 80px;
    height: 36px;
    border-radius: 18px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 15px;
    cursor: pointer;
    -webkit-transition: color 0.3s, background-color 0.3s, border-color 0.3s;
    transition: color 0.3s, background-color 0.3s, border-color 0.3s;
    padding-bottom: 1px;
  }
  .container.top .top__map-button span {
    position: relative;
    padding-left: 20px;
  }
  .container.top .top__map-button span::before, .container.top .top__map-button span::after {
    content: "";
    display: inline-block;
    background: no-repeat center center/contain;
    width: 13px;
    height: 18px;
    position: absolute;
    left: 0;
    top: -2px;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .container.top .top__map-button span::before {
    background-image: url(../images/common/icon_map_black_01.svg);
  }
  .container.top .top__map-button span::after {
    background-image: url(../images/common/icon_map_white_01.svg);
    opacity: 0;
  }
  .container.top .top__map-button:hover {
    color: #fff;
    background: #BD9354;
    border-color: #BD9354;
  }
  .container.top .top__map-button:hover span::before {
    opacity: 0;
  }
  .container.top .top__map-button:hover span::after {
    opacity: 1;
  }
  .container.top .top__bg {
    position: fixed;
    left: 0;
    top: 67px;
    width: 100%;
    height: 100%;
    z-index: -1;
    overflow: hidden;
  }
  .container.top .top__bg.anim-fade {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .container.top .top__bg::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.5;
    z-index: 2;
  }
  .container.top .top__bg picture {
    width: 100%;
    height: 100%;
  }
  .container.top .top__bg img {
    width: 100%;
    height: 102.1%;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
    -webkit-transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    transition: transform 0.8s ease-out, opacity 0.8s ease-out;
    transition: transform 0.8s ease-out, opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    -webkit-transition-delay: 0.8s;
            transition-delay: 0.8s;
  }
  .container.top .top__bg .swiper-slide.-active img,
  .container.top .top__bg .swiper-slide.-duplicate-active img {
    -webkit-transform: translate(0, -2%);
        -ms-transform: translate(0, -2%);
            transform: translate(0, -2%);
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
  }
  .container.top .top__bg__list {
    width: 100%;
    height: 100%;
  }
  .container.top .map {
    position: fixed;
    left: 0;
    top: 67px;
    bottom: 0;
    width: 100%;
    height: calc(100% - 67px);
    z-index: 10;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    background: #efeeec;
    opacity: 0;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
    pointer-events: none;
    overflow: hidden auto;
  }
  .container.top .map.-visible {
    opacity: 1;
    pointer-events: all;
  }
  .container.top .map.-visible .map__bg,
  .container.top .map.-visible .map__content {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
  }
  .container.top .map.-visible .map__bg {
    pointer-events: none;
  }
  .container.top .map__bg, .container.top .map__content {
    opacity: 0;
    -webkit-transform: translate(0, 3%);
        -ms-transform: translate(0, 3%);
            transform: translate(0, 3%);
    -webkit-transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    transition: transform 0.8s ease-out, opacity 0.8s ease-out;
    transition: transform 0.8s ease-out, opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s;
  }
  .container.top .map__bg {
    position: fixed;
    left: 0;
    top: 67px;
    width: 100%;
    height: calc(100% - 67px);
    min-height: 550px;
    pointer-events: none;
    overflow: hidden;
    z-index: -2;
  }
  .container.top .map__bg-inner {
    width: 100%;
    height: 100%;
  }
  .container.top .map__bg-map {
    opacity: 0;
    pointer-events: none;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
    position: absolute;
    -webkit-transform: translate(-50%, -47%);
        -ms-transform: translate(-50%, -47%);
            transform: translate(-50%, -47%);
    -webkit-transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    transition: transform 0.8s ease-out, opacity 0.8s ease-out;
    transition: transform 0.8s ease-out, opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
  }
  .container.top .map__bg-map.-visible {
    opacity: 1;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .container.top .map__bg-image {
    position: relative;
  }
  .container.top .map__bg-image img, .container.top .map__bg-image picture {
    width: 100%;
  }
  .container.top .map__bg-japan {
    width: 84.24125vh;
    max-width: 53.0653%;
    min-width: 500px;
    left: 65.5%;
    top: 50%;
  }
  .container.top .map__bg-vietnam {
    width: 29.23vh;
    max-width: 18.27%;
    min-width: 206px;
    left: 66%;
    top: 50%;
  }
  .container.top .map__bg-indonesia {
    width: 61.1vh;
    max-width: 38.188%;
    min-width: 300px;
    left: 64%;
    top: 50%;
  }
  .container.top .map__bg-location.-active .map__bg-locationicon {
    background: #C39E5C;
    -webkit-transform: translate(-50%, -50%) scale(1);
        -ms-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
    z-index: 2;
  }
  .container.top .map__bg-location.-active .map__bg-locationtext {
    opacity: 1;
  }
  .container.top .map__bg-locationicon {
    width: 32px;
    height: 32px;
    border-radius: 16px;
    position: absolute;
    background: #A78859;
    -webkit-transform: translate(-50%, -50%) scale(0.3125);
        -ms-transform: translate(-50%, -50%) scale(0.3125);
            transform: translate(-50%, -50%) scale(0.3125);
    -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
    -webkit-transition: opacity 0.5s, background-color 0.5s, -webkit-transform 0.5s;
    transition: opacity 0.5s, background-color 0.5s, -webkit-transform 0.5s;
    transition: opacity 0.5s, transform 0.5s, background-color 0.5s;
    transition: opacity 0.5s, transform 0.5s, background-color 0.5s, -webkit-transform 0.5s;
  }
  .container.top .map__bg-locationtext {
    color: #516E73;
    font-size: 20px;
    letter-spacing: 0.04em;
    position: absolute;
    opacity: 0;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
  }
  .container.top .map__bg-location.-saitama .map__bg-locationicon {
    right: 23%;
    top: 56.5%;
  }
  .container.top .map__bg-location.-saitama .map__bg-locationtext {
    left: 78.5%;
    top: 57.5%;
  }
  .container.top .map__bg-location.-tokyo .map__bg-locationicon {
    right: 22.7%;
    top: 58.5%;
  }
  .container.top .map__bg-location.-tokyo .map__bg-locationtext {
    left: 78.5%;
    top: 60%;
  }
  .container.top .map__bg-location.-izu .map__bg-locationicon {
    left: 69.7%;
    top: 63.5%;
  }
  .container.top .map__bg-location.-izu .map__bg-locationtext {
    right: 24%;
    top: 67%;
  }
  .container.top .map__bg-location.-kyoto .map__bg-locationicon {
    left: 55.4%;
    top: 63.2%;
  }
  .container.top .map__bg-location.-kyoto .map__bg-locationtext {
    right: 45%;
    bottom: 44%;
  }
  .container.top .map__bg-location.-kobe .map__bg-locationicon {
    left: 53.3%;
    top: 64.6%;
  }
  .container.top .map__bg-location.-kobe .map__bg-locationtext {
    right: 47.5%;
    bottom: 43.5%;
  }
  .container.top .map__bg-location.-fukuoka.-active .map__bg-locationicon {
    -webkit-transform: translate(-50%, -50%) scale(1.4);
        -ms-transform: translate(-50%, -50%) scale(1.4);
            transform: translate(-50%, -50%) scale(1.4);
  }
  .container.top .map__bg-location.-fukuoka .map__bg-locationicon {
    left: 32%;
    top: 70.5%;
    -webkit-transform: translate(-50%, -50%) scale(0.6);
        -ms-transform: translate(-50%, -50%) scale(0.6);
            transform: translate(-50%, -50%) scale(0.6);
  }
  .container.top .map__bg-location.-fukuoka .map__bg-locationtext {
    right: 71%;
    bottom: 33%;
  }
  .container.top .map__bg-location.-kumamoto .map__bg-locationicon {
    left: 33.8%;
    top: 75%;
  }
  .container.top .map__bg-location.-kumamoto .map__bg-locationtext {
    right: 70%;
    bottom: 31%;
  }
  .container.top .map__bg-location.-naha.-active .map__bg-locationicon {
    -webkit-transform: translate(-50%, -50%) scale(1.4);
        -ms-transform: translate(-50%, -50%) scale(1.4);
            transform: translate(-50%, -50%) scale(1.4);
  }
  .container.top .map__bg-location.-naha .map__bg-locationicon {
    left: 10%;
    top: 91.5%;
    -webkit-transform: translate(-50%, -50%) scale(0.7);
        -ms-transform: translate(-50%, -50%) scale(0.7);
            transform: translate(-50%, -50%) scale(0.7);
  }
  .container.top .map__bg-location.-naha .map__bg-locationtext {
    right: 91%;
    bottom: 13.4%;
  }
  .container.top .map__bg-location.-ishigakijima .map__bg-locationicon {
    left: 2.5%;
    top: 99.5%;
  }
  .container.top .map__bg-location.-ishigakijima .map__bg-locationtext {
    right: 97%;
    bottom: 7.4%;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }
  .container.top .map__bg-location.-hanoi .map__bg-locationicon {
    left: 50%;
    top: 14.3%;
  }
  .container.top .map__bg-location.-hanoi .map__bg-locationtext {
    left: 66%;
    top: 19.5%;
  }
  .container.top .map__bg-location.-bali .map__bg-locationicon {
    right: 30%;
    bottom: 34.3%;
  }
  .container.top .map__bg-location.-bali .map__bg-locationtext {
    left: 75%;
    top: 73.2%;
  }
  .container.top .map__scrollicon {
    position: absolute;
    right: 3.51%;
    bottom: 0;
    width: 1px;
    height: 80px;
  }
  .container.top .map__scrollicon::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0.4;
    background: #516E73;
  }
  .container.top .map__scrollicon-line {
    display: block;
    width: 100%;
    height: 100%;
    background: #fff;
    -webkit-animation: scrollbar-anim 3s ease-in-out infinite;
            animation: scrollbar-anim 3s ease-in-out infinite;
    background: #516E73;
  }
  .container.top .map__content {
    position: relative;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .container.top .map__inner {
    position: relative;
    z-index: 2;
    width: 87.5%;
    margin: 0 auto;
    padding: 80px 0 130px;
  }
  .container.top .map__box + .map__box {
    margin-top: 54px;
  }
  .container.top .map__box.-visible .map__icon {
    opacity: 1;
  }
  .container.top .map__title {
    font-size: 40px;
    letter-spacing: 0.04em;
  }
  .container.top .map__icon {
    position: absolute;
    left: -11px;
    top: 160px;
    width: 10px;
    height: 10px;
    border-radius: 5px;
    background: #BD9354;
    -webkit-transition: -webkit-transform 0.5s;
    transition: -webkit-transform 0.5s;
    transition: transform 0.5s;
    transition: transform 0.5s, -webkit-transform 0.5s;
  }
  .container.top .map__progress {
    display: none;
    position: fixed;
    right: 3.515625%;
    bottom: 0;
    width: 1px;
    height: 80px;
    background: rgba(81, 110, 115, 0.4);
  }
  .container.top .map__progress-bar {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #516E73;
    -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
            transform-origin: left top;
    -webkit-transform: scale(1, 0);
        -ms-transform: scale(1, 0);
            transform: scale(1, 0);
  }
  .container.top .map__progress-bar.-animating {
    -webkit-animation: progressbar-anim-sp 3s linear forwards;
            animation: progressbar-anim-sp 3s linear forwards;
  }
  .container.top .map__progress-bar.-animated {
    -webkit-animation: none;
            animation: none;
    -webkit-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
            transform: scale(1, 1);
  }
  .container.top .map__filter {
    position: relative;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    z-index: 10;
    width: 315px;
  }
  .container.top .map__filter-current {
    position: relative;
    color: #fff;
    background: #BD9354;
    width: 100%;
    height: 34px;
    font-size: 18px;
    letter-spacing: 0.03em;
    border-radius: 17px;
    padding: 8px 20px;
    cursor: pointer;
  }
  .container.top .map__filter-current::before, .container.top .map__filter-current::after {
    content: "";
    display: block;
    position: absolute;
    right: 19px;
    top: 17px;
    width: 6px;
    height: 1px;
    background: #fff;
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
  .container.top .map__filter-current::before {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    right: 23px;
  }
  .container.top .map__filter-current::after {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .container.top .map__filter-list {
    background: #fff;
    position: absolute;
    left: 0;
    right: 0;
    top: 45px;
    padding: 17px 32px 20px;
    border-radius: 10px;
    -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
    transition: opacity 0.3s, -webkit-transform 0.3s;
    transition: opacity 0.3s, transform 0.3s;
    transition: opacity 0.3s, transform 0.3s, -webkit-transform 0.3s;
    opacity: 0;
    -webkit-transform: translate(0, -10px);
        -ms-transform: translate(0, -10px);
            transform: translate(0, -10px);
    pointer-events: none;
    -webkit-box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.05);
            box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.05);
  }
  .container.top .map__filter.-active .map__filter-current::before {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .container.top .map__filter.-active .map__filter-current::after {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .container.top .map__filter.-active .map__filter-list {
    opacity: 1;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
    pointer-events: all;
  }
  .container.top .map__filter-item {
    cursor: pointer;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
    font-size: 15px;
    letter-spacing: 0;
  }
  .container.top .map__filter-item:not(:first-child) {
    margin-top: 18px;
  }
  .container.top .map__filter-item:hover {
    opacity: 0.5;
  }
  .container.top .map__filter-item.-default {
    pointer-events: none;
    opacity: 0.5;
  }
  .container.top .map__filter-item.-current {
    display: none;
  }
  .container.top .map__filter-item.-current + .gallery__filter-item:nth-child(2) {
    margin-top: 0;
  }
  .container.top .map__listwrapper {
    position: relative;
    width: 100%;
  }
  .container.top .map__listslider {
    margin-top: 40px;
    overflow: visible;
    width: 100%;
    padding: 0 16px;
  }
  .container.top .map__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    width: -webkit-fit-content !important;
    width: -moz-fit-content !important;
    width: fit-content !important;
    -webkit-transform: none !important;
        -ms-transform: none !important;
            transform: none !important;
  }
  .container.top .map__item {
    position: relative;
    height: auto;
    width: -webkit-fit-content !important;
    width: -moz-fit-content !important;
    width: fit-content !important;
  }
  .container.top .map__item + .map__item {
    margin-top: 15px;
  }
  .container.top .map__item.-active .map__item-link {
    pointer-events: all;
  }
  .container.top .map__item.-active .map__item-link::after {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
  }
  .container.top .map__item.-active .map__item-titlewrapper {
    color: #BD9354;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
  .container.top .map__item.-active .map__item-textwrapper {
    opacity: 1;
  }
  .container.top .map__item-link {
    position: relative;
    display: inline-block;
    padding-right: 32px;
    pointer-events: none;
  }
  .container.top .map__item-link::after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    top: 2px;
    width: 17px;
    height: 17px;
    background: url(../images/common/icon_arrow_gold_01.svg) no-repeat center center/contain;
    opacity: 0;
    -webkit-transform: translate(-10px, 0);
        -ms-transform: translate(-10px, 0);
            transform: translate(-10px, 0);
    -webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
    transition: opacity 0.5s, -webkit-transform 0.5s;
    transition: opacity 0.5s, transform 0.5s;
    transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s;
  }
  .container.top .map__item-titlewrapper {
    opacity: 0.5;
    -webkit-transform: scale(0.8);
        -ms-transform: scale(0.8);
            transform: scale(0.8);
    -webkit-transform-origin: left center;
        -ms-transform-origin: left center;
            transform-origin: left center;
    -webkit-transition: color 0.5s, opacity 0.5s, -webkit-transform 0.5s;
    transition: color 0.5s, opacity 0.5s, -webkit-transform 0.5s;
    transition: transform 0.5s, color 0.5s, opacity 0.5s;
    transition: transform 0.5s, color 0.5s, opacity 0.5s, -webkit-transform 0.5s;
    pointer-events: none;
  }
  .container.top .map__item-title {
    font-size: 21px;
    letter-spacing: 0.03em;
    line-height: 20px;
  }
  .container.top .map__item-textwrapper {
    position: fixed;
    right: 7.5%;
    bottom: 17.6%;
    height: 125px;
    overflow: visible;
    width: 23.4375%;
    max-width: 350px;
    opacity: 0;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
    pointer-events: none;
  }
  .container.top .map__item-text {
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 0.05em;
    font-family: YakuHanJP, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  }
  .container.top .map__home {
    position: fixed;
    left: 3.125%;
    bottom: 30px;
    z-index: 2;
  }
  .container.top .map__home-button {
    background: #fff;
    border: 1px solid rgba(34, 34, 34, 0.5);
    width: 93px;
    height: 36px;
    border-radius: 18px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 15px;
    cursor: pointer;
    -webkit-transition: color 0.3s, background-color 0.3s, border-color 0.3s;
    transition: color 0.3s, background-color 0.3s, border-color 0.3s;
    padding-bottom: 1px;
  }
  .container.top .map__home-button span {
    position: relative;
    padding-left: 20px;
  }
  .container.top .map__home-button span::before, .container.top .map__home-button span::after {
    content: "";
    display: inline-block;
    background: no-repeat center center/contain;
    width: 13px;
    height: 18px;
    position: absolute;
    left: 0;
    top: -2px;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .container.top .map__home-button span::before {
    background-image: url(../images/common/icon_home_black_01.svg);
  }
  .container.top .map__home-button span::after {
    background-image: url(../images/common/icon_home_white_01.svg);
    opacity: 0;
  }
  .container.top .map__home-button:hover {
    color: #fff;
    background: #BD9354;
    border-color: #BD9354;
  }
  .container.top .map__home-button:hover span::before {
    opacity: 0;
  }
  .container.top .map__home-button:hover span::after {
    opacity: 1;
  }
  .container.top .map__accordion-content {
    height: auto !important;
  }
}
@media screen and (max-width: 768px) {
  .container.top {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }
  .container.top .top {
    position: fixed;
    top: 67px;
    left: 0;
    width: 100%;
    height: calc(100% - 67px);
    color: #fff;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    pointer-events: none;
  }
  .container.top .top.-visible {
    pointer-events: all;
  }
  .container.top .top__content {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    overflow: hidden auto;
  }
  .container.top .top__inner {
    position: relative;
    width: 78.667%;
    margin: auto;
    padding: 30px 0 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .container.top .top__title {
    width: 100%;
    overflow: visible;
  }
  .container.top .top__title img, .container.top .top__title picture {
    width: 100%;
    height: auto;
  }
  .container.top .top__title .swiper-slide.-active .top__title-img {
    -webkit-animation: top-title-show-anim-sp 0.8s ease;
            animation: top-title-show-anim-sp 0.8s ease;
  }
  .container.top .top__title .swiper-slide.-prev .top__title-img {
    -webkit-animation: top-title-hide-anim-sp 0.8s ease;
            animation: top-title-hide-anim-sp 0.8s ease;
  }
  .container.top .top__link {
    margin-top: 30px;
  }
  .container.top .top__link-button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: auto;
    height: 36px;
    padding: 0 25px 0 24px;
  }
  .container.top .top__link-button .button-common__text {
    padding-right: 12px;
  }
  .container.top .top__link-button .button-common__text::after {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    border-right: 1px solid;
    border-bottom: 1px solid;
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
    position: absolute;
    right: 0;
    top: 5px;
  }
  .container.top .top__progress {
    display: none;
    position: fixed;
    right: 8%;
    bottom: 0;
    width: 1px;
    height: 80px;
    background: rgba(255, 255, 255, 0.4);
  }
  .container.top .top__progress-bar {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
            transform-origin: left top;
    -webkit-transform: scale(1, 0);
        -ms-transform: scale(1, 0);
            transform: scale(1, 0);
  }
  .container.top .top__progress-bar.-animating {
    -webkit-animation: progressbar-anim-sp 3s linear forwards;
            animation: progressbar-anim-sp 3s linear forwards;
  }
  .container.top .top__progress-bar.-animated {
    -webkit-animation: none;
            animation: none;
    -webkit-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
            transform: scale(1, 1);
  }
  .container.top .top__listwrapper {
    margin: 40px -30px auto;
    padding: 0 30px;
    position: relative;
    width: calc(100% + 60px);
    overflow: visible;
    height: auto;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0%;
            flex: 1 1 0%;
  }
  .container.top .top__listslider {
    overflow: visible;
  }
  .container.top .top__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-transform: none !important;
        -ms-transform: none !important;
            transform: none !important;
  }
  .container.top .top__icon {
    position: absolute;
    left: 7px;
    top: 11px;
    width: 8px;
    height: 8px;
    border-radius: 4px;
    background: #fff;
    -webkit-transition: -webkit-transform 0.5s;
    transition: -webkit-transform 0.5s;
    transition: transform 0.5s;
    transition: transform 0.5s, -webkit-transform 0.5s;
  }
  .container.top .top__item {
    margin-top: 4px;
    height: 20px;
    position: relative;
    -webkit-transition: margin 0.5s, opacity 0.3s;
    transition: margin 0.5s, opacity 0.3s;
    height: auto;
    width: -webkit-fit-content !important;
    width: -moz-fit-content !important;
    width: fit-content !important;
  }
  .container.top .top__item.-notransform {
    -webkit-transition-duration: 0;
            transition-duration: 0;
  }
  .container.top .top__item.-active:not(:first-child) {
    margin-top: 11px;
  }
  .container.top .top__item.-active + .top__item {
    margin-top: 12px;
  }
  .container.top .top__item.-active .top__item-link:after {
    opacity: 1;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  .container.top .top__item.-active .top__item-titlewrapper {
    opacity: 1;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
  }
  .container.top .top__item.-disabledlink .top__item-link {
    pointer-events: none;
  }
  .container.top .top__item-link {
    position: relative;
    display: inline-block;
    pointer-events: none;
    z-index: 2;
  }
  .container.top .top__item-link::after {
    content: "";
    display: block;
    position: absolute;
    right: -30px;
    top: 2px;
    width: 17px;
    height: 17px;
    background: url(../images/common/icon_arrow_white_01.svg) no-repeat center center/contain;
    opacity: 0;
    -webkit-transform: translate(-10px, 0);
        -ms-transform: translate(-10px, 0);
            transform: translate(-10px, 0);
    -webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
    transition: opacity 0.5s, -webkit-transform 0.5s;
    transition: opacity 0.5s, transform 0.5s;
    transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s;
    -webkit-animation: top-map-link-icon-anim-sp 3.8s 1.5s ease infinite;
            animation: top-map-link-icon-anim-sp 3.8s 1.5s ease infinite;
  }
  .container.top .top__item-titlewrapper {
    opacity: 0.6;
    -webkit-transform: scale(0.7);
        -ms-transform: scale(0.7);
            transform: scale(0.7);
    -webkit-transform-origin: left center;
        -ms-transform-origin: left center;
            transform-origin: left center;
    -webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
    transition: opacity 0.5s, -webkit-transform 0.5s;
    transition: opacity 0.5s, transform 0.5s;
    transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s;
  }
  .container.top .top__item-title {
    font-size: 20px;
    line-height: 1;
    letter-spacing: 0.04em;
    white-space: nowrap;
  }
  .container.top .top__item-textwrapper {
    display: none;
  }
  .container.top .top__map {
    position: fixed;
    left: 17px;
    bottom: 17px;
    background: #d6d6d6;
    color: #222;
    width: 36px;
    height: 36px;
    border-radius: 18px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 0;
    cursor: pointer;
    z-index: 2;
  }
  .container.top .top__map::after {
    content: "";
    display: inline-block;
    background: url(../images/common/icon_map_black_01.svg) no-repeat center center/contain;
    width: 13px;
    height: 18px;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .container.top .top__bg {
    position: fixed;
    left: 0;
    top: 67px;
    width: 100%;
    height: calc(100% - 67px);
    z-index: 1;
    overflow: hidden;
  }
  .container.top .top__bg::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.5;
    z-index: 2;
  }
  .container.top .top__bg.anim-fade {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .container.top .top__bg picture {
    width: 100%;
    height: 100%;
  }
  .container.top .top__bg img {
    width: 100%;
    height: 102.1%;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
    -webkit-transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    transition: transform 0.8s ease-out, opacity 0.8s ease-out;
    transition: transform 0.8s ease-out, opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    -webkit-transition-delay: 0.8s;
            transition-delay: 0.8s;
  }
  .container.top .top__bg .swiper-slide.-active img,
  .container.top .top__bg .swiper-slide.-duplicate-active img {
    -webkit-transform: translate(0, -2%);
        -ms-transform: translate(0, -2%);
            transform: translate(0, -2%);
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
  }
  .container.top .top__bg__list {
    width: 100%;
    height: 100%;
  }
  .container.top .map {
    position: fixed;
    left: 0;
    top: 67px;
    width: 100%;
    height: calc(100% - 67px);
    z-index: 10;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    background: #efeeec;
    opacity: 0;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
    pointer-events: none;
  }
  .container.top .map.-visible {
    opacity: 1;
    pointer-events: all;
  }
  .container.top .map.-visible .map__bg,
  .container.top .map.-visible .map__content {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
  }
  .container.top .map__bg, .container.top .map__content {
    opacity: 0;
    -webkit-transform: translate(0, 3%);
        -ms-transform: translate(0, 3%);
            transform: translate(0, 3%);
    -webkit-transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    transition: transform 0.8s ease-out, opacity 0.8s ease-out;
    transition: transform 0.8s ease-out, opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s;
  }
  .container.top .map__bg {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 2;
  }
  .container.top .map__bg-map {
    opacity: 0;
    position: absolute;
    -webkit-transform: translate(0, 3%);
        -ms-transform: translate(0, 3%);
            transform: translate(0, 3%);
    -webkit-transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    transition: transform 0.8s ease-out, opacity 0.8s ease-out;
    transition: transform 0.8s ease-out, opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
  }
  .container.top .map__bg-map.-visible {
    opacity: 1;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  .container.top .map__bg-image {
    position: relative;
  }
  .container.top .map__bg-image img, .container.top .map__bg-image picture {
    width: 100%;
  }
  .container.top .map__bg-japan {
    width: 88.3893%;
    max-width: 50.069svh;
    right: 8%;
    bottom: 3.8%;
  }
  .container.top .map__bg-vietnam {
    width: 38.4%;
    max-width: 19svh;
    left: calc(50% - min(19.2%, 9.5svh));
    bottom: 2.5%;
  }
  .container.top .map__bg-indonesia {
    width: 78.552%;
    max-width: 45svh;
    left: calc(50% - min(39.276%, 22.5svh));
    bottom: 10%;
  }
  .container.top .map__bg-location.-active .map__bg-locationicon {
    background: #C39E5C;
    -webkit-transform: translate(-50%, -50%) scale(1);
        -ms-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
    z-index: 2;
  }
  .container.top .map__bg-location.-active .map__bg-locationtext {
    opacity: 1;
  }
  .container.top .map__bg-locationicon {
    width: 6.6vw;
    height: 6.6vw;
    border-radius: 3.3vw;
    position: absolute;
    background: #A78859;
    -webkit-transform: translate(-50%, -50%) scale(0.3846);
        -ms-transform: translate(-50%, -50%) scale(0.3846);
            transform: translate(-50%, -50%) scale(0.3846);
    -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
    -webkit-transition: opacity 0.5s, background-color 0.5s, -webkit-transform 0.5s;
    transition: opacity 0.5s, background-color 0.5s, -webkit-transform 0.5s;
    transition: opacity 0.5s, transform 0.5s, background-color 0.5s;
    transition: opacity 0.5s, transform 0.5s, background-color 0.5s, -webkit-transform 0.5s;
  }
  .container.top .map__bg-locationtext {
    color: #516E73;
    font-size: 5.33vw;
    position: absolute;
    opacity: 0;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
  }
  .container.top .map__bg-location.-saitama .map__bg-locationicon {
    right: 23.5%;
    top: 63%;
  }
  .container.top .map__bg-location.-saitama .map__bg-locationtext {
    left: 77%;
    top: 60.5%;
  }
  .container.top .map__bg-location.-tokyo .map__bg-locationicon {
    right: 24.2%;
    top: 66%;
  }
  .container.top .map__bg-location.-tokyo .map__bg-locationtext {
    left: 77%;
    top: 63.5%;
  }
  .container.top .map__bg-location.-izu .map__bg-locationicon {
    right: 28.6%;
    top: 70.5%;
  }
  .container.top .map__bg-location.-izu .map__bg-locationtext {
    right: 22%;
    top: 74.5%;
  }
  .container.top .map__bg-location.-kyoto .map__bg-locationicon {
    right: 46.5%;
    top: 71%;
  }
  .container.top .map__bg-location.-kyoto .map__bg-locationtext {
    left: 54%;
    bottom: 16%;
  }
  .container.top .map__bg-location.-kobe .map__bg-locationicon {
    right: 49.3%;
    top: 73%;
  }
  .container.top .map__bg-location.-kobe .map__bg-locationtext {
    left: 54%;
    bottom: 16%;
  }
  .container.top .map__bg-location.-fukuoka.-active .map__bg-locationicon {
    -webkit-transform: translate(-50%, -50%) scale(1.2);
        -ms-transform: translate(-50%, -50%) scale(1.2);
            transform: translate(-50%, -50%) scale(1.2);
  }
  .container.top .map__bg-location.-fukuoka .map__bg-locationicon {
    left: 17.5%;
    top: 78%;
    -webkit-transform: translate(-50%, -50%) scale(0.7);
        -ms-transform: translate(-50%, -50%) scale(0.7);
            transform: translate(-50%, -50%) scale(0.7);
  }
  .container.top .map__bg-location.-fukuoka .map__bg-locationtext {
    left: 28%;
    bottom: 7%;
  }
  .container.top .map__bg-location.-kumamoto .map__bg-locationicon {
    left: 19.5%;
    top: 84%;
  }
  .container.top .map__bg-location.-kumamoto .map__bg-locationtext {
    left: 28%;
    bottom: 7%;
  }
  .container.top .map__bg-location.-naha.-active .map__bg-locationicon {
    -webkit-transform: translate(-50%, -50%) scale(1.2);
        -ms-transform: translate(-50%, -50%) scale(1.2);
            transform: translate(-50%, -50%) scale(1.2);
  }
  .container.top .map__bg-location.-naha .map__bg-locationicon {
    left: 14%;
    top: 55%;
    -webkit-transform: translate(-50%, -50%) scale(0.6);
        -ms-transform: translate(-50%, -50%) scale(0.6);
            transform: translate(-50%, -50%) scale(0.6);
  }
  .container.top .map__bg-location.-naha .map__bg-locationtext {
    left: 6%;
    top: 32%;
  }
  .container.top .map__bg-location.-ishigakijima .map__bg-locationicon {
    left: 6%;
    top: 64%;
  }
  .container.top .map__bg-location.-ishigakijima .map__bg-locationtext {
    left: 6%;
    top: 32%;
  }
  .container.top .map__bg-location.-hanoi .map__bg-locationicon {
    left: 45.5%;
    top: 13.3%;
  }
  .container.top .map__bg-location.-hanoi .map__bg-locationtext {
    left: 81%;
    top: 26%;
  }
  .container.top .map__bg-location.-bali .map__bg-locationicon {
    right: 30%;
    bottom: 34.3%;
  }
  .container.top .map__bg-location.-bali .map__bg-locationtext {
    left: 75%;
    top: 73.2%;
  }
  .container.top .map__inner {
    position: relative;
    z-index: 2;
    width: 84%;
    height: 100%;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .container.top .map__content {
    position: relative;
    height: 100%;
    padding: 30px 0;
    z-index: 1;
  }
  .container.top .map__progress {
    display: none;
    position: fixed;
    right: 8%;
    bottom: 0;
    width: 1px;
    height: 80px;
    background: rgba(81, 110, 115, 0.4);
  }
  .container.top .map__progress-bar {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #516E73;
    -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
            transform-origin: left top;
    -webkit-transform: scale(1, 0);
        -ms-transform: scale(1, 0);
            transform: scale(1, 0);
  }
  .container.top .map__progress-bar.-animating {
    -webkit-animation: progressbar-anim-sp 3s linear forwards;
            animation: progressbar-anim-sp 3s linear forwards;
  }
  .container.top .map__progress-bar.-animated {
    -webkit-animation: none;
            animation: none;
    -webkit-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
            transform: scale(1, 1);
  }
  .container.top .map__filter {
    position: relative;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    z-index: 10;
    width: 100%;
  }
  .container.top .map__filter-current {
    position: relative;
    color: #fff;
    background: #BD9354;
    width: 100%;
    height: 34px;
    font-size: 18px;
    letter-spacing: 0.03em;
    border-radius: 17px;
    padding: 7px 20px;
    cursor: pointer;
  }
  .container.top .map__filter-current::before, .container.top .map__filter-current::after {
    content: "";
    display: block;
    position: absolute;
    right: 19px;
    top: 17px;
    width: 6px;
    height: 1px;
    background: #fff;
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
  .container.top .map__filter-current::before {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    right: 23px;
  }
  .container.top .map__filter-current::after {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .container.top .map__filter-list {
    background: #fff;
    position: absolute;
    left: 0;
    right: 0;
    top: 45px;
    padding: 17px 32px 20px;
    border-radius: 10px;
    -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
    transition: opacity 0.3s, -webkit-transform 0.3s;
    transition: opacity 0.3s, transform 0.3s;
    transition: opacity 0.3s, transform 0.3s, -webkit-transform 0.3s;
    opacity: 0;
    -webkit-transform: translate(0, -10px);
        -ms-transform: translate(0, -10px);
            transform: translate(0, -10px);
    pointer-events: none;
    -webkit-box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.05);
            box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.05);
  }
  .container.top .map__filter.-active .map__filter-current::before {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .container.top .map__filter.-active .map__filter-current::after {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .container.top .map__filter.-active .map__filter-list {
    opacity: 1;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
    pointer-events: all;
  }
  .container.top .map__filter-item {
    cursor: pointer;
    font-size: 15px;
    letter-spacing: 0;
  }
  .container.top .map__filter-item:not(:first-child) {
    margin-top: 18px;
  }
  .container.top .map__filter-item.-default {
    pointer-events: none;
    opacity: 0.5;
  }
  .container.top .map__filter-item.-current {
    display: none;
  }
  .container.top .map__filter-item.-current + .gallery__filter-item:nth-child(2) {
    margin-top: 0;
  }
  .container.top .map__box {
    width: 100%;
  }
  .container.top .map__box + .map__box {
    margin-top: 19px;
  }
  .container.top .map__box.-opening .map__icon {
    opacity: 1;
  }
  .container.top .map__title {
    position: relative;
    font-size: 24px;
    letter-spacing: 0.04em;
    padding-left: 23px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding-right: 27px;
  }
  .container.top .map__title::after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    top: 5px;
    width: 17px;
    height: 17px;
    background: url(../images/common/icon_arrow_black_01.svg) no-repeat center center/contain;
  }
  .container.top .map__title.-opening::after {
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg);
  }
  .container.top .map__icon {
    position: absolute;
    left: 0;
    top: 14px;
    width: 8px;
    height: 8px;
    border-radius: 4px;
    background: #BD9354;
    -webkit-transition: opacity 0.3s, -webkit-transform 0.5s;
    transition: opacity 0.3s, -webkit-transform 0.5s;
    transition: transform 0.5s, opacity 0.3s;
    transition: transform 0.5s, opacity 0.3s, -webkit-transform 0.5s;
    opacity: 1;
  }
  .container.top .map__listwrapper {
    position: relative;
  }
  .container.top .map__listwrapper::after {
    content: "";
    display: block;
    position: absolute;
    left: -12px;
    right: 0;
    bottom: 0;
    height: 50%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(239, 238, 236, 0)), to(#efeeec));
    background: linear-gradient(rgba(239, 238, 236, 0) 0%, #efeeec 100%);
    z-index: 2;
    pointer-events: none;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .container.top .map__listwrapper.-edged::after {
    opacity: 0;
  }
  .container.top .map__listslider {
    margin-top: 18px;
    margin-left: -12px;
    height: 200px;
    width: 120%;
  }
  .container.top .map__list {
    position: relative;
    padding: 0 0 0 22px;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    overflow: visible;
  }
  .container.top .map__item {
    margin-top: 6px;
    position: relative;
    height: 23px;
  }
  .container.top .map__item.-active .map__item-link {
    pointer-events: all;
  }
  .container.top .map__item.-active .map__item-link::after {
    opacity: 1;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  .container.top .map__item.-active .map__item-titlewrapper {
    color: #BD9354;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
  }
  .container.top .map__item.-disabledlink .map__item-link {
    pointer-events: none;
  }
  .container.top .map__item-link {
    position: relative;
    display: block;
    z-index: 2;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding-right: 30px;
    pointer-events: none;
  }
  .container.top .map__item-link::after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    top: 3px;
    width: 17px;
    height: 17px;
    background: url(../images/common/icon_arrow_gold_01.svg) no-repeat center center/contain;
    opacity: 0;
    -webkit-transform: translate(-10px, 0);
        -ms-transform: translate(-10px, 0);
            transform: translate(-10px, 0);
    -webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
    transition: opacity 0.5s, -webkit-transform 0.5s;
    transition: opacity 0.5s, transform 0.5s;
    transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s;
    -webkit-animation: top-map-link-icon-anim-sp 3.8s 1.5s ease infinite;
            animation: top-map-link-icon-anim-sp 3.8s 1.5s ease infinite;
  }
  .container.top .map__item-titlewrapper {
    color: #a2a2a2;
    -webkit-transform: scale(0.77);
        -ms-transform: scale(0.77);
            transform: scale(0.77);
    -webkit-transform-origin: left center;
        -ms-transform-origin: left center;
            transform-origin: left center;
    -webkit-transition: color 0.5s, -webkit-transform 0.5s;
    transition: color 0.5s, -webkit-transform 0.5s;
    transition: transform 0.5s, color 0.5s;
    transition: transform 0.5s, color 0.5s, -webkit-transform 0.5s;
  }
  .container.top .map__item-title {
    font-size: 18px;
    line-height: 1.25;
    letter-spacing: 0.04em;
  }
  .container.top .map__item-textwrapper {
    display: none;
  }
  .container.top .map__home {
    position: fixed;
    left: 17px;
    bottom: 17px;
    background: #fff;
    color: #222;
    width: 36px;
    height: 36px;
    border: 1px solid rgba(162, 162, 162, 0.5);
    border-radius: 18px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 0;
    cursor: pointer;
    z-index: 2;
  }
  .container.top .map__home::after {
    content: "";
    display: inline-block;
    background: url(../images/common/icon_home_black_01.svg) no-repeat center center/contain;
    width: 13px;
    height: 18px;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .container.top .map__accordion {
    width: 100%;
  }
  .container.top .map__accordion-content {
    position: relative;
    overflow: hidden;
    -webkit-transition: height 0.5s;
    transition: height 0.5s;
    padding-left: 23px;
    width: 100%;
  }
  .container.top .map__accordion-content.-no-transform {
    -webkit-transition: none;
    transition: none;
  }
}
@media screen and (max-width: 768px) and (max-width: 374px) {
  .container.top .top__listwrapper {
    -webkit-transform: scale(0.95);
        -ms-transform: scale(0.95);
            transform: scale(0.95);
    -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
            transform-origin: left top;
  }
  .container.top .map__listwrapper {
    -webkit-transform: scale(0.95);
        -ms-transform: scale(0.95);
            transform: scale(0.95);
    -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
            transform-origin: left top;
  }
}
@media screen and (max-width: 768px) and (max-width: 330px) {
  .container.top .top__title {
    font-size: 37px;
    line-height: 38px;
  }
  .container.top .map__title {
    font-size: 22px;
  }
  .container.top .map__list {
    margin-top: 10px;
  }
}
@media screen and (max-width: 768px) and (min-height: 691px) {
  .container.top .map__listslider {
    height: 227px;
  }
}
@media screen and (max-width: 768px) and (max-height: 690px) {
  .container.top .map__bg-vietnam {
    max-width: 19svh;
  }
}
@media screen and (max-width: 768px) and (max-height: 630px) {
  .container.top .map__bg-vietnam {
    max-width: 17.5svh;
  }
}
@media screen and (max-width: 768px) and (max-height: 600px) {
  .container.top .map__bg-locationicon {
    width: 5.6vw;
    height: 5.6vw;
  }
  .container.top .map__content {
    padding: 20px 0;
  }
  .container.top .map__box + .map__box {
    margin-top: 30px;
  }
  .container.top .map__listwrapper::after {
    height: 40%;
  }
  .container.top .map__listslider {
    margin-top: 10px;
    height: 171px;
  }
  .container.top .map__bg-vietnam {
    max-width: 19svh;
  }
}
@media screen and (max-width: 768px) and (max-height: 560px) {
  .container.top .top__title img {
    width: 80%;
  }
  .container.top .map__listwrapper::after {
    height: 30%;
  }
  .container.top .map__listslider {
    height: 142px;
  }
}

@media screen and (max-width: 768px) {
  body.top {
    height: 100%;
    position: fixed;
    overflow: hidden;
  }
}

@media screen and (min-width: 769px) {
  .container.about {
    padding-bottom: 0;
  }
  .container.about .section {
    position: relative;
  }
  .container.about .section__title {
    font-size: 40px;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    letter-spacing: 0.03em;
  }
  .container.about .top {
    position: fixed;
    top: 67px;
    left: 0;
    width: 100%;
    height: 44.2969vw;
    overflow: hidden;
    color: #fff;
  }
  .container.about .top .section__inner {
    height: 100%;
    width: 85.15625%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    z-index: 2;
  }
  .container.about .top__title {
    font-size: 70px;
    line-height: 65px;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  }
  .container.about .top__subtitle {
    margin-top: 33px;
    font-size: 20px;
    letter-spacing: 0.03em;
    font-weight: 500;
  }
  .container.about .top__image {
    position: absolute;
    left: 0;
    top: -50px;
    width: 100%;
    height: calc(100% + 100px);
    z-index: 1;
  }
  .container.about .top__image picture, .container.about .top__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .container.about .wrapper {
    position: relative;
    z-index: 2;
    background: #efeeec;
    margin-top: 44.2969vw;
    padding-top: 100px;
    padding-bottom: 80px;
  }
  .container.about .omotenashi .section__inner {
    width: 85.15625%;
  }
  .container.about .omotenashi__heading {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .container.about .omotenashi__heading-title {
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    color: #BD9354;
    font-size: 64px;
    line-height: 1;
    letter-spacing: 0.01em;
    width: 40.4%;
    margin-right: 5.4%;
    min-width: 345px;
  }
  .container.about .omotenashi__heading-text {
    font-size: 16px;
    letter-spacing: 0.03em;
    line-height: 32px;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0%;
            flex: 1 1 0%;
  }
  .container.about .omotenashi__heading + .omotenashi__box {
    margin-top: 210px;
  }
  .container.about .omotenashi__movie {
    margin-top: 160px;
    position: relative;
  }
  .container.about .omotenashi__movie .video-js {
    position: relative;
    width: 100%;
    height: auto;
    padding-top: 56.25%;
    aspect-ratio: 640/360;
  }
  .container.about .omotenashi__movie .video-js .vjs-control-bar {
    background: transparent;
  }
  .container.about .omotenashi__movie .video-js .vjs-big-play-button {
    background: transparent;
  }
  .container.about .omotenashi__movie .video-js .vjs-load-progress {
    background: rgba(255, 255, 255, 0.2);
  }
  .container.about .omotenashi__movie .video-js .vjs-load-progress div {
    background: rgba(255, 255, 255, 0.2);
  }
  .container.about .omotenashi__movie .video-js .vjs-picture-in-picture-control:disabled {
    display: none;
  }
  .container.about .omotenashi__movie .video-js .vjs-control:focus,
  .container.about .omotenashi__movie .video-js .vjs-control:focus:before,
  .container.about .omotenashi__movie .video-js .vjs-control:hover:before {
    text-shadow: none;
  }
  .container.about .omotenashi__movie video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .container.about .omotenashi__box {
    margin-top: 160px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .container.about .omotenashi__box.-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .container.about .omotenashi__box.-reverse .omotenashi__box-image {
    margin-right: 0;
    margin-left: 5%;
  }
  .container.about .omotenashi__box-image {
    width: 40.4%;
    margin-right: 5.4%;
  }
  .container.about .omotenashi__box-image img {
    width: 100%;
  }
  .container.about .omotenashi__box-content {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0%;
            flex: 1 1 0%;
  }
  .container.about .omotenashi__box-title {
    color: #BD9354;
    font-weight: 500;
    font-size: 24px;
    letter-spacing: 0.03em;
    line-height: 36.4px;
    font-weight: 500;
  }
  .container.about .omotenashi__box-text {
    margin-top: 35px;
    font-size: 16px;
    letter-spacing: 0.03em;
    line-height: 32px;
  }
  .container.about .others {
    margin-top: 152px;
  }
}
@media screen and (max-width: 768px) {
  .container.about {
    padding-bottom: 0;
  }
  .container.about .section {
    position: relative;
  }
  .container.about .section__title {
    font-size: 40px;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    letter-spacing: 0.03em;
  }
  .container.about .top {
    position: fixed;
    top: 67px;
    left: 0;
    width: 100%;
    height: calc(100vh - 67px);
    overflow: hidden;
    color: #fff;
  }
  .container.about .top .section__inner {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    z-index: 2;
  }
  .container.about .top__title {
    font-size: 40px;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  }
  .container.about .top__subtitle {
    margin-top: 25px;
    font-size: 20px;
    line-height: 26px;
    font-weight: 500;
  }
  .container.about .top__image {
    position: absolute;
    left: 0;
    top: -50px;
    width: 100%;
    height: calc(100% + 100px);
    z-index: 1;
  }
  .container.about .top__image picture, .container.about .top__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .container.about .top__scrollicon {
    position: fixed;
    right: 8%;
    bottom: 0;
    width: 1px;
    height: 80px;
    z-index: 3;
  }
  .container.about .top__scrollicon::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0.4;
    background: #fff;
  }
  .container.about .top__scrollicon-line {
    display: block;
    width: 100%;
    height: 100%;
    background: #fff;
    -webkit-animation: scrollbar-anim 3s ease-in-out infinite;
            animation: scrollbar-anim 3s ease-in-out infinite;
    background: #fff;
  }
  .container.about .wrapper {
    position: relative;
    z-index: 2;
    background: #efeeec;
    margin-top: 100vh;
    padding-top: 53px;
    padding-bottom: 105px;
  }
  .container.about .omotenashi__heading-title {
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    color: #BD9354;
    font-size: 40px;
    letter-spacing: 0.03em;
    margin-right: 100px;
  }
  .container.about .omotenashi__heading-text {
    margin-top: 22px;
    font-size: 14px;
    letter-spacing: 0.03em;
    line-height: 28px;
  }
  .container.about .omotenashi__heading + .omotenashi__box {
    margin-top: 77px;
  }
  .container.about .omotenashi__movie {
    margin-top: 38px;
    width: 110.306%;
    margin-left: -5.09%;
    position: relative;
  }
  .container.about .omotenashi__movie .video-js {
    position: relative;
    width: 100%;
    height: auto;
    padding-top: 56.25%;
    aspect-ratio: 640/360;
  }
  .container.about .omotenashi__movie .video-js .vjs-control-bar {
    background: transparent;
  }
  .container.about .omotenashi__movie .video-js .vjs-big-play-button {
    background: transparent;
  }
  .container.about .omotenashi__movie .video-js .vjs-load-progress {
    background: rgba(255, 255, 255, 0.2);
  }
  .container.about .omotenashi__movie .video-js .vjs-load-progress div {
    background: rgba(255, 255, 255, 0.2);
  }
  .container.about .omotenashi__movie .video-js .vjs-picture-in-picture-control:disabled {
    display: none;
  }
  .container.about .omotenashi__movie .video-js .vjs-control:focus,
  .container.about .omotenashi__movie .video-js .vjs-control:focus:before,
  .container.about .omotenashi__movie .video-js .vjs-control:hover:before {
    text-shadow: none;
  }
  .container.about .omotenashi__movie video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .container.about .omotenashi__text {
    margin-top: 33px;
    font-size: 14px;
    letter-spacing: 0.03em;
    line-height: 28px;
  }
  .container.about .omotenashi__box {
    margin-top: 80px;
  }
  .container.about .omotenashi__box-image {
    width: 110.306%;
    margin-left: -5.09%;
  }
  .container.about .omotenashi__box-image img {
    width: 100%;
  }
  .container.about .omotenashi__box-content {
    margin-top: 63px;
  }
  .container.about .omotenashi__box-title {
    color: #BD9354;
    font-weight: 500;
    font-size: 24px;
    letter-spacing: 0.03em;
    line-height: 36.4px;
  }
  .container.about .omotenashi__box-text {
    margin-top: 18px;
    font-size: 14px;
    letter-spacing: 0.03em;
    line-height: 28px;
  }
  .container.about .others {
    margin-top: 93px;
  }
}

@media screen and (min-width: 769px) {
  .container.hotels-detail {
    padding-bottom: 63px;
  }
  .container.hotels-detail .link-website {
    position: fixed;
    left: 50%;
    bottom: 30px;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    z-index: 100;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 20px;
       -moz-column-gap: 20px;
            column-gap: 20px;
  }
  .container.hotels-detail .link-website.-hidden {
    opacity: 0;
    pointer-events: none;
  }
  .container.hotels-detail .link-website .button-common {
    width: 166px;
    height: 40px;
  }
  .container.hotels-detail .link-website .button-common .button-common__text {
    padding-right: 15px;
  }
  .container.hotels-detail .link-website .button-common .button-common__text::before, .container.hotels-detail .link-website .button-common .button-common__text::after {
    content: "";
    display: inline-block;
    background: no-repeat center center/contain;
    width: 7px;
    height: 7px;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
    position: absolute;
    right: 0;
    top: 4px;
  }
  .container.hotels-detail .link-website .button-common .button-common__text::after {
    background-image: url(../images/common/icon_external_white_01.svg);
  }
  .container.hotels-detail .link-website .button-common .button-common__text::before {
    background-image: url(../images/common/icon_external_gold_01.svg);
  }
  .container.hotels-detail .link-website .button-common.-gold .button-common__text::after {
    opacity: 1;
  }
  .container.hotels-detail .link-website .button-common.-gold .button-common__text::before {
    opacity: 0;
  }
  .container.hotels-detail .link-website .button-common.-gold:hover .button-common__text::after {
    opacity: 0;
  }
  .container.hotels-detail .link-website .button-common.-gold:hover .button-common__text::before {
    opacity: 1;
  }
  .container.hotels-detail .link-website .button-common.-goldborder .button-common__text::after {
    opacity: 0;
  }
  .container.hotels-detail .link-website .button-common.-goldborder .button-common__text::before {
    opacity: 1;
  }
  .container.hotels-detail .link-website .button-common.-goldborder:hover .button-common__text::after {
    opacity: 1;
  }
  .container.hotels-detail .link-website .button-common.-goldborder:hover .button-common__text::before {
    opacity: 0;
  }
  .container.hotels-detail .section {
    position: relative;
  }
  .container.hotels-detail .section__title {
    font-size: 40px;
    letter-spacing: 0.03em;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  }
  .container.hotels-detail .hero {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .container.hotels-detail .hero__mv {
    width: 49.61%;
    position: sticky;
    top: 67px;
    height: calc(100vh - 67px);
    overflow: hidden;
  }
  .container.hotels-detail .hero__mv-img {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
  }
  .container.hotels-detail .hero__mv-img.anim-fade {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .container.hotels-detail .hero__mv-img picture {
    width: 100%;
    height: 100%;
  }
  .container.hotels-detail .hero__mv-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .container.hotels-detail .hero__mv-movie {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    opacity: 0;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
    z-index: 2;
  }
  .container.hotels-detail .hero__mv-movie.-playing {
    opacity: 1;
  }
  .container.hotels-detail .hero__mv-player {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    display: block;
    width: 177.77vh;
    height: calc(100vh + 500px);
    pointer-events: none;
  }
}
@media screen and (min-width: 769px) and (aspect-ratio: 360/640) {
  .container.hotels-detail .hero__mv-player {
    width: 100vw;
    height: calc(56.25vw + 500px);
  }
}
@media screen and (min-width: 769px) {
  .container.hotels-detail .hero__mv-mute {
    background: url(../images/common/icon_mute_white_01.svg) no-repeat center center/contain;
    width: 24px;
    height: 24px;
    position: absolute;
    left: 24px;
    bottom: 24px;
    cursor: pointer;
  }
  .container.hotels-detail .hero__mv-mute.-muted::after {
    content: "";
    display: block;
    width: 17px;
    height: 1px;
    background: #fff;
    position: absolute;
    left: 4px;
    top: 11px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .container.hotels-detail .hero__inner {
    width: 69.7674%;
    margin: 0 auto;
  }
  .container.hotels-detail .hero__content {
    width: 50.39%;
  }
  .container.hotels-detail .hero__top {
    position: relative;
    height: calc(150vh - 67px);
    min-height: 650px;
    text-align: center;
  }
  .container.hotels-detail .hero__top.-no-concept {
    height: calc(105vh - 67px);
  }
  .container.hotels-detail .hero__top-inner {
    position: sticky;
    height: calc(100vh - 67px);
    min-height: 650px;
    top: 67px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .container.hotels-detail .hero__top-logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-transition: opacity 0.5s 0.5s, -webkit-transform 1s cubic-bezier(0.2, 0, 0.3, 1);
    transition: opacity 0.5s 0.5s, -webkit-transform 1s cubic-bezier(0.2, 0, 0.3, 1);
    transition: transform 1s cubic-bezier(0.2, 0, 0.3, 1), opacity 0.5s 0.5s;
    transition: transform 1s cubic-bezier(0.2, 0, 0.3, 1), opacity 0.5s 0.5s, -webkit-transform 1s cubic-bezier(0.2, 0, 0.3, 1);
  }
  .container.hotels-detail .hero__top-logo.-shrink {
    -webkit-transform: scale(0.5392);
        -ms-transform: scale(0.5392);
            transform: scale(0.5392);
    opacity: 0;
  }
  .container.hotels-detail .hero__top-logo img {
    max-height: 185px;
    max-width: 100%;
    -o-object-fit: contain;
       object-fit: contain;
  }
  .container.hotels-detail .hero__top-logoinner {
    min-height: 180px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .container.hotels-detail .hero__top-contentwrapper {
    position: relative;
    height: 160px;
    width: 100%;
    margin: 120px auto 0;
  }
  .container.hotels-detail .hero__top-content {
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    pointer-events: none;
    -webkit-transition: opacity 0.4s 0.4s, -webkit-transform 0.8s;
    transition: opacity 0.4s 0.4s, -webkit-transform 0.8s;
    transition: opacity 0.4s 0.4s, transform 0.8s;
    transition: opacity 0.4s 0.4s, transform 0.8s, -webkit-transform 0.8s;
  }
  .container.hotels-detail .hero__top-content.-visible {
    opacity: 1;
    pointer-events: all;
    -webkit-transform: translate(0, 0) !important;
        -ms-transform: translate(0, 0) !important;
            transform: translate(0, 0) !important;
    -webkit-transition: opacity 0.4s 0.8s, -webkit-transform 0.8s 0.6s;
    transition: opacity 0.4s 0.8s, -webkit-transform 0.8s 0.6s;
    transition: opacity 0.4s 0.8s, transform 0.8s 0.6s;
    transition: opacity 0.4s 0.8s, transform 0.8s 0.6s, -webkit-transform 0.8s 0.6s;
  }
  .container.hotels-detail .hero__top-description {
    font-size: 16px;
    letter-spacing: 0.03em;
    line-height: 28px;
  }
  .container.hotels-detail .hero__top-description-location {
    display: block;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 16px;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
    color: #BD9354;
    margin-bottom: 18px;
  }
  .container.hotels-detail .hero__top-description-location::before {
    content: "";
    display: inline-block;
    background: url(../images/common/icon_map_gold_01.svg) no-repeat center/contain;
    width: 12px;
    height: 16px;
    vertical-align: middle;
    margin-right: 8px;
    -webkit-transform: translate(0, -2px);
        -ms-transform: translate(0, -2px);
            transform: translate(0, -2px);
  }
  .container.hotels-detail .hero__top-concept {
    font-size: 24px;
    letter-spacing: 0.03em;
    color: #BD9354;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  }
  .container.hotels-detail .hero__top-subtitle {
    margin-top: 70px;
    font-size: 20px;
    letter-spacing: 0.03em;
    font-weight: 500;
  }
  .container.hotels-detail .hero__top-subtitle span {
    font-weight: 300;
    font-family: zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  }
  .container.hotels-detail .hero__top-subtitle + .hero__top-description {
    margin-top: 20px;
  }
  .container.hotels-detail .hero__overview {
    position: relative;
    text-align: center;
  }
  .container.hotels-detail .hero__overview.-no-concept {
    margin-top: -20vh;
  }
  .container.hotels-detail .hero__overview-title {
    font-size: 24px;
    letter-spacing: 0.03em;
    color: #BD9354;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  }
  .container.hotels-detail .hero__overview-list {
    margin: 64px auto 0;
  }
  .container.hotels-detail .hero__overview-item + .hero__overview-item {
    margin-top: 42px;
  }
  .container.hotels-detail .hero__overview-subtitle {
    font-size: 20px;
    letter-spacing: 0.03em;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  }
  .container.hotels-detail .hero__overview-text {
    margin-top: 11px;
    font-size: 16px;
    letter-spacing: 0.03em;
    line-height: 28px;
  }
  .container.hotels-detail .hero__img {
    position: relative;
    padding: 144px 0 50px;
  }
  .container.hotels-detail .hero__img img {
    border-radius: 4px;
    width: 100%;
    aspect-ratio: 450/568;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .container.hotels-detail .stories {
    padding-top: 100px;
    background: #efeeec;
  }
  .container.hotels-detail .stories__box {
    margin-top: 29px;
    background: #fff;
    border-radius: 4px;
    overflow: hidden;
    padding: 40px 45px 40px 40px;
  }
  .container.hotels-detail .stories__box-slider {
    overflow: visible;
    width: 100%;
  }
  .container.hotels-detail .stories__box-slide {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .container.hotels-detail .stories__box-img {
    width: 55.4%;
  }
  .container.hotels-detail .stories__box-img img {
    border-radius: 4px;
    width: 100%;
    aspect-ratio: 610/446;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .container.hotels-detail .stories__box-content {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0%;
            flex: 1 1 0%;
    padding: 40px 0 50px 40px;
  }
  .container.hotels-detail .stories__box-title {
    font-size: 20px;
    line-height: 30px;
    letter-spacing: 0.03em;
    font-weight: 500;
  }
  .container.hotels-detail .stories__box-description {
    margin-top: 40px;
    font-size: 16px;
    letter-spacing: 0.03em;
    line-height: 28px;
  }
  .container.hotels-detail .stories__pagination {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 55.4%;
    height: 10px;
    text-align: center;
    -webkit-transform: translateY(calc(-100% - 16px));
        -ms-transform: translateY(calc(-100% - 16px));
            transform: translateY(calc(-100% - 16px));
    z-index: 2;
  }
  .container.hotels-detail .stories__pagination .swiper-pagination-bullet {
    background: #fff;
    opacity: 1;
    -webkit-transition: background-color 0.3s;
    transition: background-color 0.3s;
    margin: 0 5px;
  }
  .container.hotels-detail .stories__pagination .swiper-pagination-bullet.-active {
    background: #BD9354;
  }
  .container.hotels-detail .stories__index {
    position: absolute;
    left: calc(55.4% + 40px);
    bottom: -4px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    z-index: 3;
  }
  .container.hotels-detail .stories__index-current {
    font-size: 40px;
    line-height: 1;
    color: #BD9354;
  }
  .container.hotels-detail .stories__index-max {
    font-size: 20px;
    line-height: 1;
    color: #D6D6D6;
    margin-left: 3px;
    margin-bottom: 2px;
  }
  .container.hotels-detail .stories__index-max::before {
    content: "/";
    display: inline-block;
    margin-right: 6px;
  }
  .container.hotels-detail .stories__arrows {
    position: absolute;
    right: -9px;
    bottom: -12px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    z-index: 3;
  }
  .container.hotels-detail .stories__arrow {
    position: relative;
    width: 40px;
    height: 40px;
    cursor: pointer;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .container.hotels-detail .stories__arrow:hover {
    opacity: 0.5;
  }
  .container.hotels-detail .stories__arrow.-disabled {
    pointer-events: none;
  }
  .container.hotels-detail .stories__arrow.-disabled .stories__arrow-icon {
    color: #D6D6D6;
  }
  .container.hotels-detail .stories__arrow-icon {
    display: block;
    width: 12px;
    height: 12px;
    border-top: 1px solid;
    border-right: 1px solid;
    color: #BD9354;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
        -ms-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
  .container.hotels-detail .stories__arrow.-prev .stories__arrow-icon {
    -webkit-transform: translate(-50%, -50%) rotate(225deg);
        -ms-transform: translate(-50%, -50%) rotate(225deg);
            transform: translate(-50%, -50%) rotate(225deg);
  }
  .container.hotels-detail .gallery {
    margin-top: 135px;
  }
  .container.hotels-detail .gallery .section__inner {
    padding-top: 0;
  }
  .container.hotels-detail .gallery__slider {
    margin-top: 28px;
  }
  .container.hotels-detail .gallery__button {
    margin-top: 40px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1000px) {
  .container.hotels-detail .stories__box-content {
    padding-top: 0;
  }
  .container.hotels-detail .stories__box-description {
    margin-top: 25px;
  }
}
@media screen and (max-width: 768px) {
  .container.hotels-detail {
    padding-bottom: 0;
  }
  .container.hotels-detail .link-website {
    position: fixed;
    left: 10px;
    right: 10px;
    bottom: 15px;
    z-index: 100;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    row-gap: 10px;
    -webkit-column-gap: 10px;
       -moz-column-gap: 10px;
            column-gap: 10px;
  }
  .container.hotels-detail .link-website.-hidden {
    opacity: 0;
    pointer-events: none;
  }
  .container.hotels-detail .link-website .button-common {
    width: 166px;
    height: 40px;
    margin: 0;
  }
  .container.hotels-detail .link-website .button-common .button-common__text {
    padding-right: 15px;
  }
  .container.hotels-detail .link-website .button-common .button-common__text::after {
    content: "";
    display: inline-block;
    background: no-repeat center center/contain;
    width: 7px;
    height: 7px;
    position: absolute;
    right: 0;
    top: 4px;
  }
  .container.hotels-detail .link-website .button-common.-gold .button-common__text::after {
    background-image: url(../images/common/icon_external_white_01.svg);
  }
  .container.hotels-detail .link-website .button-common.-goldborder .button-common__text::after {
    background-image: url(../images/common/icon_external_gold_01.svg);
  }
  .container.hotels-detail .section {
    position: relative;
  }
  .container.hotels-detail .section__title {
    font-size: 40px;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    letter-spacing: 0.03em;
  }
  .container.hotels-detail .hero {
    position: relative;
  }
  .container.hotels-detail .hero__scrollicon {
    position: fixed;
    right: 8%;
    bottom: 0;
    width: 1px;
    height: 80px;
    z-index: 3;
  }
  .container.hotels-detail .hero__scrollicon::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0.4;
    background: #fff;
  }
  .container.hotels-detail .hero__scrollicon-line {
    display: block;
    width: 100%;
    height: 100%;
    background: #fff;
    -webkit-animation: scrollbar-anim 3s ease-in-out infinite;
            animation: scrollbar-anim 3s ease-in-out infinite;
    background: #fff;
  }
  .container.hotels-detail .hero__mv {
    position: fixed;
    top: 67px;
    left: 0;
    width: 100%;
    height: calc(100vh - 67px);
    z-index: 1;
  }
  .container.hotels-detail .hero__mv-img {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
  }
  .container.hotels-detail .hero__mv-img.anim-fade {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .container.hotels-detail .hero__mv-img picture {
    width: 100%;
    height: 100%;
  }
  .container.hotels-detail .hero__mv-img img {
    width: 100%;
    height: 102.1%;
    -webkit-transform: translate(0, -2%);
        -ms-transform: translate(0, -2%);
            transform: translate(0, -2%);
    -o-object-fit: cover;
       object-fit: cover;
  }
  .container.hotels-detail .hero__mv-movie {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    opacity: 0;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
    z-index: 2;
  }
  .container.hotels-detail .hero__mv-movie.-playing {
    opacity: 1;
  }
  .container.hotels-detail .hero__mv-player {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    display: block;
    width: 170vh;
    height: 250vh;
  }
  .container.hotels-detail .hero__mv-overlay {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 3;
    pointer-events: none;
    opacity: 0;
    -webkit-transition: opacity 1s;
    transition: opacity 1s;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(239, 238, 236, 0)), color-stop(47.19%, rgba(239, 238, 236, 0.9)), to(#efeeec));
    background: linear-gradient(rgba(239, 238, 236, 0) 0%, rgba(239, 238, 236, 0.9) 47.19%, #efeeec 100%);
  }
  .container.hotels-detail .hero__mv-overlay::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: #efeeec;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    -webkit-transition: opacity 1s;
    transition: opacity 1s;
    z-index: 4;
  }
  .container.hotels-detail .hero__mv-overlay.-visible {
    opacity: 1;
  }
  .container.hotels-detail .hero__mv-overlay.-fill::after {
    opacity: 1;
  }
  .container.hotels-detail .hero__inner {
    position: relative;
    width: 90.66%;
    margin: 0 auto;
    z-index: 2;
  }
  .container.hotels-detail .hero__content {
    position: relative;
    z-index: 2;
  }
  .container.hotels-detail .hero__top {
    position: relative;
    height: calc(250vh - 67px);
    text-align: center;
  }
  .container.hotels-detail .hero__top.-no-concept {
    height: calc(205vh - 67px);
  }
  .container.hotels-detail .hero__top-inner {
    position: sticky;
    height: calc(100vh - 67px);
    top: 67px;
    -webkit-transition: height 0.3s;
    transition: height 0.3s;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding-bottom: 65px;
    z-index: 2;
  }
  .container.hotels-detail .hero__top-inner.-visible {
    opacity: 1;
  }
  .container.hotels-detail .hero__top-inner.-visible .hero__top-logo:not(.-shrink) {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  .container.hotels-detail .hero__top-inner.-visible .hero__top-logo .-white {
    opacity: 0;
  }
  .container.hotels-detail .hero__top-inner.-visible .hero__top-logo .-black {
    opacity: 1;
  }
  .container.hotels-detail .hero__top-inner.-visible .hero__top-contentwrapper {
    opacity: 1;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
    -webkit-transition-delay: 0.6s;
            transition-delay: 0.6s;
  }
  .container.hotels-detail .hero__top-logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-transform: translate(0, 60%);
        -ms-transform: translate(0, 60%);
            transform: translate(0, 60%);
    -webkit-transition: opacity 0.5s 0.5s, -webkit-transform 1s cubic-bezier(0.2, 0, 0.3, 1);
    transition: opacity 0.5s 0.5s, -webkit-transform 1s cubic-bezier(0.2, 0, 0.3, 1);
    transition: transform 1s cubic-bezier(0.2, 0, 0.3, 1), opacity 0.5s 0.5s;
    transition: transform 1s cubic-bezier(0.2, 0, 0.3, 1), opacity 0.5s 0.5s, -webkit-transform 1s cubic-bezier(0.2, 0, 0.3, 1);
    margin-top: 25%;
  }
  .container.hotels-detail .hero__top-logo.-shrink {
    -webkit-transform: translate(0, -18%) scale(0.6795);
        -ms-transform: translate(0, -18%) scale(0.6795);
            transform: translate(0, -18%) scale(0.6795);
    opacity: 0;
  }
  .container.hotels-detail .hero__top-logo img {
    max-height: 42.66vw;
    max-width: 95%;
    -o-object-fit: contain;
       object-fit: contain;
  }
  .container.hotels-detail .hero__top-logo img.-black {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 100%;
    opacity: 0;
  }
  .container.hotels-detail .hero__top-logoinner {
    position: relative;
    height: 42.66vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .container.hotels-detail .hero__top-contentwrapper {
    position: relative;
    height: 35%;
    width: 100%;
    margin-top: 61px;
    opacity: 0;
    -webkit-transform: translate(0, 15px);
        -ms-transform: translate(0, 15px);
            transform: translate(0, 15px);
    -webkit-transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    transition: transform 0.8s ease-out, opacity 0.8s ease-out;
    transition: transform 0.8s ease-out, opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
  }
  .container.hotels-detail .hero__top-content {
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    pointer-events: none;
    -webkit-transition: opacity 0.4s 0.4s, -webkit-transform 0.8s;
    transition: opacity 0.4s 0.4s, -webkit-transform 0.8s;
    transition: opacity 0.4s 0.4s, transform 0.8s;
    transition: opacity 0.4s 0.4s, transform 0.8s, -webkit-transform 0.8s;
  }
  .container.hotels-detail .hero__top-content.-concept {
    margin-top: -16%;
  }
  .container.hotels-detail .hero__top-content.-visible {
    opacity: 1;
    pointer-events: all;
    -webkit-transform: translate(0, 0) !important;
        -ms-transform: translate(0, 0) !important;
            transform: translate(0, 0) !important;
    -webkit-transition: opacity 0.4s 0.8s, -webkit-transform 0.8s 0.6s;
    transition: opacity 0.4s 0.8s, -webkit-transform 0.8s 0.6s;
    transition: opacity 0.4s 0.8s, transform 0.8s 0.6s;
    transition: opacity 0.4s 0.8s, transform 0.8s 0.6s, -webkit-transform 0.8s 0.6s;
  }
  .container.hotels-detail .hero__top-info {
    font-size: 12px;
    color: #BD9354;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  }
  .container.hotels-detail .hero__top-description {
    font-size: 14px;
    letter-spacing: 0.01em;
    line-height: 24.5px;
  }
  .container.hotels-detail .hero__top-description.-top {
    text-align: left;
  }
  .container.hotels-detail .hero__top-description-location {
    display: block;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 14px;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
    color: #BD9354;
    margin-bottom: 21px;
  }
  .container.hotels-detail .hero__top-description-location::before {
    content: "";
    display: inline-block;
    background: url(../images/common/icon_map_gold_01.svg) no-repeat center/contain;
    width: 11px;
    height: 14px;
    vertical-align: middle;
    margin-right: 7px;
    -webkit-transform: translate(0, -2px);
        -ms-transform: translate(0, -2px);
            transform: translate(0, -2px);
  }
  .container.hotels-detail .hero__top-concept {
    font-size: 24px;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    letter-spacing: 0.03em;
    color: #BD9354;
  }
  .container.hotels-detail .hero__top-subtitle {
    margin-top: 50px;
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 27px;
  }
  .container.hotels-detail .hero__top-subtitle span {
    font-weight: normal;
    font-family: zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  }
  .container.hotels-detail .hero__top-subtitle + .hero__top-description {
    margin-top: 20px;
  }
  .container.hotels-detail .hero__overview {
    position: relative;
    text-align: center;
  }
  .container.hotels-detail .hero__overview.-no-concept {
    margin-top: -30vh;
  }
  .container.hotels-detail .hero__overview-title {
    font-size: 24px;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    color: #BD9354;
    letter-spacing: 0.03em;
  }
  .container.hotels-detail .hero__overview-list {
    margin: 50px auto 0;
  }
  .container.hotels-detail .hero__overview-item + .hero__overview-item {
    margin-top: 36px;
  }
  .container.hotels-detail .hero__overview-subtitle {
    font-size: 20px;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    letter-spacing: 0.03em;
  }
  .container.hotels-detail .hero__overview-text {
    margin-top: 10px;
    font-size: 16px;
    line-height: 24.5px;
    letter-spacing: 0.03em;
  }
  .container.hotels-detail .hero__img {
    position: relative;
    margin-top: 61px;
  }
  .container.hotels-detail .hero__img img {
    border-radius: 4px;
    width: 100%;
    aspect-ratio: 300/400;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center center;
       object-position: center center;
  }
  .container.hotels-detail .stories {
    position: relative;
    margin-top: 100px;
    z-index: 2;
  }
  .container.hotels-detail .stories__box {
    position: relative;
    margin-top: 30px;
    background: #fff;
    border-radius: 4px;
    overflow: hidden;
  }
  .container.hotels-detail .stories__box-img img {
    width: 100%;
    aspect-ratio: 341/251;
  }
  .container.hotels-detail .stories__box-content {
    padding: 73px 22px 60px;
  }
  .container.hotels-detail .stories__box-title {
    font-size: 20px;
    line-height: 30px;
    letter-spacing: 0.03em;
    font-weight: 500;
  }
  .container.hotels-detail .stories__box-description {
    margin-top: 21px;
    font-size: 14px;
    line-height: 24.5px;
    letter-spacing: 0.03em;
  }
  .container.hotels-detail .stories__pagination {
    position: absolute;
    right: 0;
    left: 0;
    top: calc(-29px + 66.93vw);
    bottom: auto;
    text-align: center;
    z-index: 3;
  }
  .container.hotels-detail .stories__pagination .swiper-pagination-bullet {
    background: #fff;
    opacity: 1;
    -webkit-transition: background-color 0.3s;
    transition: background-color 0.3s;
    margin: 0 5px;
  }
  .container.hotels-detail .stories__pagination .swiper-pagination-bullet.-active {
    background: #BD9354;
  }
  .container.hotels-detail .stories__index {
    position: absolute;
    left: 22px;
    top: calc(14px + 66.93vw);
    width: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    z-index: 3;
  }
  .container.hotels-detail .stories__index-current {
    font-size: 24px;
    line-height: 1;
    color: #BD9354;
  }
  .container.hotels-detail .stories__index-max {
    font-size: 14px;
    line-height: 1;
    color: #D6D6D6;
    margin-left: 2px;
    margin-bottom: 2px;
  }
  .container.hotels-detail .stories__index-max::before {
    content: "/";
    display: inline-block;
    margin-right: 4px;
  }
  .container.hotels-detail .stories__arrows {
    position: absolute;
    right: 9px;
    top: calc(9px + 66.72576vw);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    z-index: 3;
  }
  .container.hotels-detail .stories__arrow {
    position: relative;
    width: 40px;
    height: 40px;
    cursor: pointer;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .container.hotels-detail .stories__arrow:hover {
    opacity: 0.5;
  }
  .container.hotels-detail .stories__arrow.-disabled {
    pointer-events: none;
  }
  .container.hotels-detail .stories__arrow.-disabled .stories__arrow-icon {
    color: #D6D6D6;
  }
  .container.hotels-detail .stories__arrow-icon {
    display: block;
    width: 12px;
    height: 12px;
    border-top: 1px solid;
    border-right: 1px solid;
    color: #BD9354;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
        -ms-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
  .container.hotels-detail .stories__arrow.-prev .stories__arrow-icon {
    -webkit-transform: translate(-50%, -50%) rotate(225deg);
        -ms-transform: translate(-50%, -50%) rotate(225deg);
            transform: translate(-50%, -50%) rotate(225deg);
  }
  .container.hotels-detail .gallery {
    position: relative;
    margin-top: 98px;
    padding-bottom: 20px;
    overflow: hidden;
    z-index: 2;
  }
  .container.hotels-detail .gallery .section__inner {
    padding-top: 0;
  }
  .container.hotels-detail .gallery__slider {
    margin-top: 30px;
    overflow: visible;
    opacity: 0;
    -webkit-transform: translate(30px, 0);
        -ms-transform: translate(30px, 0);
            transform: translate(30px, 0);
    -webkit-transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
    transition: transform 0.8s ease-out, opacity 0.8s ease-out;
    transition: transform 0.8s ease-out, opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
  }
  .container.hotels-detail .gallery__slider.-visible {
    opacity: 1;
    -webkit-transform: none !important;
        -ms-transform: none !important;
            transform: none !important;
  }
  .container.hotels-detail .gallery__slider.-visibleduplicate .swiper-slide-duplicate {
    opacity: 1;
  }
  .container.hotels-detail .gallery__slider .swiper {
    overflow: visible;
  }
  .container.hotels-detail .gallery__slider .swiper__wrapper {
    overflow: visible;
  }
  .container.hotels-detail .gallery .swiper-slide.anim-fade,
  .container.hotels-detail .gallery .swiper-backface-hidden .swiper-slide.anim-fade {
    -webkit-transform: translate(30px, 0);
        -ms-transform: translate(30px, 0);
            transform: translate(30px, 0);
  }
  .container.hotels-detail .gallery .swiper-slide.anim-fade.-visible,
  .container.hotels-detail .gallery .swiper-backface-hidden .swiper-slide.anim-fade.-visible {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  .container.hotels-detail .gallery__list {
    margin-top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    grid-template-columns: inherit;
    -webkit-column-gap: inherit;
       -moz-column-gap: inherit;
            column-gap: inherit;
    row-gap: inherit;
  }
  .container.hotels-detail .gallery__item.anim-fade {
    opacity: 1;
    -webkit-transform: none !important;
        -ms-transform: none !important;
            transform: none !important;
  }
  .container.hotels-detail .gallery__item.-prev .gallery__item-img img,
  .container.hotels-detail .gallery__item.-prev .gallery__item-movie, .container.hotels-detail .gallery__item.-duplicate-prev .gallery__item-img img,
  .container.hotels-detail .gallery__item.-duplicate-prev .gallery__item-movie {
    -webkit-transform: translate(-50px, 0);
        -ms-transform: translate(-50px, 0);
            transform: translate(-50px, 0);
  }
  .container.hotels-detail .gallery__item.-active .gallery__item-img img,
  .container.hotels-detail .gallery__item.-active .gallery__item-movie, .container.hotels-detail .gallery__item.-duplicate-active .gallery__item-img img,
  .container.hotels-detail .gallery__item.-duplicate-active .gallery__item-movie {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  .container.hotels-detail .gallery__item.-next .gallery__item-img img,
  .container.hotels-detail .gallery__item.-next .gallery__item-movie, .container.hotels-detail .gallery__item.-duplicate-next .gallery__item-img img,
  .container.hotels-detail .gallery__item.-duplicate-next .gallery__item-movie {
    -webkit-transform: translate(50px, 0);
        -ms-transform: translate(50px, 0);
            transform: translate(50px, 0);
  }
  .container.hotels-detail .gallery__item.-next + .gallery__item .gallery__item-img img,
  .container.hotels-detail .gallery__item.-next + .gallery__item .gallery__item-movie, .container.hotels-detail .gallery__item.-duplicate-next + .gallery__item .gallery__item-img img,
  .container.hotels-detail .gallery__item.-duplicate-next + .gallery__item .gallery__item-movie {
    -webkit-transform: translate(100px, 0);
        -ms-transform: translate(100px, 0);
            transform: translate(100px, 0);
  }
  .container.hotels-detail .gallery__item.swiper-slide-duplicate {
    opacity: 0;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .container.hotels-detail .gallery__item:nth-child(1):not(.-active) .gallery__item-img img,
  .container.hotels-detail .gallery__item:nth-child(1):not(.-active) .gallery__item-movie {
    -webkit-transform: translate(50px, 0);
        -ms-transform: translate(50px, 0);
            transform: translate(50px, 0);
  }
  .container.hotels-detail .gallery__item:nth-child(2):not(.-next) .gallery__item-img img,
  .container.hotels-detail .gallery__item:nth-child(2):not(.-next) .gallery__item-movie {
    -webkit-transform: translate(100px, 0);
        -ms-transform: translate(100px, 0);
            transform: translate(100px, 0);
  }
  .container.hotels-detail .gallery__item-img {
    position: relative;
    aspect-ratio: 282/356;
  }
  .container.hotels-detail .gallery__item-img img {
    position: relative;
    position: absolute;
    left: -100px;
    top: 0;
    width: calc(100% + 200px);
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center center;
       object-position: center center;
    -webkit-transition: -webkit-transform 1.2s;
    transition: -webkit-transform 1.2s;
    transition: transform 1.2s;
    transition: transform 1.2s, -webkit-transform 1.2s;
    z-index: 2;
  }
  .container.hotels-detail .gallery__item-movie {
    left: -100px;
    width: calc(100% + 200px);
    -webkit-transition: -webkit-transform 1.2s;
    transition: -webkit-transform 1.2s;
    transition: transform 1.2s;
    transition: transform 1.2s, -webkit-transform 1.2s;
  }
  .container.hotels-detail .gallery__item-player {
    width: 230%;
  }
  .container.hotels-detail .gallery__button {
    margin-top: 24px;
  }
  .container.hotels-detail .others {
    padding-bottom: 105px;
  }
}
@media screen and (max-width: 768px) and (max-width: 330px) {
  .container.hotels-detail .hero__top-description {
    font-size: 13px;
    line-height: 23px;
  }
  .container.hotels-detail .hero__top-description br {
    display: none;
  }
  .container.hotels-detail .hero__overview-text br {
    display: none;
  }
}
@media screen and (max-width: 768px) and (min-height: 750px) {
  .container.hotels-detail .hero__top-logo {
    -webkit-transform: translate(0, 80%);
        -ms-transform: translate(0, 80%);
            transform: translate(0, 80%);
  }
}
@media screen and (max-width: 768px) and (min-height: 850px) {
  .container.hotels-detail .hero__top-logo {
    -webkit-transform: translate(0, 90%);
        -ms-transform: translate(0, 90%);
            transform: translate(0, 90%);
  }
}
@media screen and (max-width: 768px) and (max-height: 650px) {
  .container.hotels-detail .hero__top-logo {
    margin-top: 10%;
    -webkit-transform: translate(0, 80%);
        -ms-transform: translate(0, 80%);
            transform: translate(0, 80%);
  }
}
@media screen and (max-width: 768px) and (max-height: 600px) {
  .container.hotels-detail .hero__top-logo {
    -webkit-transform: translate(0, 60%);
        -ms-transform: translate(0, 60%);
            transform: translate(0, 60%);
  }
  .container.hotels-detail .hero__top-contentwrapper {
    margin-top: 40px;
  }
  .container.hotels-detail .hero__top-description-location {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 768px) and (max-height: 580px) {
  .container.hotels-detail .hero__top-logo {
    margin-top: 5%;
    -webkit-transform: translate(0, 60%);
        -ms-transform: translate(0, 60%);
            transform: translate(0, 60%);
  }
  .container.hotels-detail .hero__top-subtitle {
    margin-top: 30px;
  }
  .container.hotels-detail .hero__top-description {
    font-size: 13px;
    line-height: 22px;
  }
}
@media screen and (max-width: 768px) and (max-height: 530px) {
  .container.hotels-detail .hero__top-logo {
    -webkit-transform: translate(0, 40%);
        -ms-transform: translate(0, 40%);
            transform: translate(0, 40%);
  }
}

@media screen and (min-width: 769px) {
  .container.gallery .gallery .section__inner {
    padding-top: 64px;
  }
  .container.gallery .gallery__title {
    font-size: 48px;
    letter-spacing: 0.03em;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  }
  .container.gallery .gallery__titlewrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .container.gallery .gallery__filter {
    position: relative;
    font-size: 15px;
    letter-spacing: 0.03em;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    z-index: 10;
    margin-left: 24px;
    margin-top: 17px;
  }
  .container.gallery .gallery__filter-current {
    position: relative;
    color: #fff;
    background: #BD9354;
    width: 265px;
    height: 30px;
    border-radius: 15px;
    padding: 7px 20px;
    cursor: pointer;
  }
  .container.gallery .gallery__filter-current::before, .container.gallery .gallery__filter-current::after {
    content: "";
    display: block;
    position: absolute;
    right: 19px;
    top: 15px;
    width: 6px;
    height: 1px;
    background: #fff;
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
  .container.gallery .gallery__filter-current::before {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    right: 23px;
  }
  .container.gallery .gallery__filter-current::after {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .container.gallery .gallery__filter-list {
    background: rgba(255, 255, 255, 0.95);
    position: absolute;
    left: 0;
    right: 0;
    top: 45px;
    color: #BD9354;
    padding: 17px 20px 15px;
    border-radius: 18px;
    -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
    transition: opacity 0.3s, -webkit-transform 0.3s;
    transition: opacity 0.3s, transform 0.3s;
    transition: opacity 0.3s, transform 0.3s, -webkit-transform 0.3s;
    opacity: 0;
    -webkit-transform: translate(0, -10px);
        -ms-transform: translate(0, -10px);
            transform: translate(0, -10px);
    pointer-events: none;
  }
  .container.gallery .gallery__filter.-active .gallery__filter-current::before {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .container.gallery .gallery__filter.-active .gallery__filter-current::after {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .container.gallery .gallery__filter.-active .gallery__filter-list {
    opacity: 1;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
    pointer-events: all;
  }
  .container.gallery .gallery__filter-item {
    cursor: pointer;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .container.gallery .gallery__filter-item:hover {
    opacity: 0.5;
  }
  .container.gallery .gallery__filter-item + .gallery__filter-item {
    margin-top: 16px;
  }
  .container.gallery .gallery__filter-item.-current {
    display: none;
  }
  .container.gallery .gallery__filter-item.-current + .gallery__filter-item:nth-child(2) {
    margin-top: 0;
  }
  .container.gallery .gallery__list {
    margin-top: 32px;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .container.gallery .gallery__button {
    margin-top: 40px;
  }
  .container.gallery .gallery__button .button-common {
    cursor: pointer;
  }
}
@media screen and (max-width: 768px) {
  .container.gallery .gallery .section__inner {
    padding-top: 50px;
  }
  .container.gallery .gallery__title {
    font-size: 40px;
    letter-spacing: 0.01em;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  }
  .container.gallery .gallery__toggle {
    position: fixed;
    left: 4.55%;
    bottom: 17px;
    width: 36px;
    height: 36px;
    border-radius: 17px;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.5);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    z-index: 10;
    opacity: 0;
    pointer-events: none;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .container.gallery .gallery__toggle.-visible {
    opacity: 1;
    pointer-events: all;
  }
  .container.gallery .gallery__filter {
    position: relative;
    margin-top: 24px;
    font-size: 15px;
    letter-spacing: 0.03em;
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    z-index: 10;
  }
  .container.gallery .gallery__filter-current {
    position: relative;
    color: #fff;
    background: #BD9354;
    width: 100%;
    height: 30px;
    border-radius: 15px;
    padding: 7px 20px;
    cursor: pointer;
  }
  .container.gallery .gallery__filter-current::before, .container.gallery .gallery__filter-current::after {
    content: "";
    display: block;
    position: absolute;
    right: 14px;
    top: 15px;
    width: 6px;
    height: 1px;
    background: #fff;
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
  .container.gallery .gallery__filter-current::before {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    right: 18px;
  }
  .container.gallery .gallery__filter-current::after {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .container.gallery .gallery__filter-list {
    background: rgba(255, 255, 255, 0.95);
    position: absolute;
    left: 0;
    right: 0;
    top: 45px;
    color: #BD9354;
    padding: 17px 20px;
    border-radius: 18px;
    -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
    transition: opacity 0.3s, -webkit-transform 0.3s;
    transition: opacity 0.3s, transform 0.3s;
    transition: opacity 0.3s, transform 0.3s, -webkit-transform 0.3s;
    opacity: 0;
    -webkit-transform: translate(0, -10px);
        -ms-transform: translate(0, -10px);
            transform: translate(0, -10px);
    pointer-events: none;
  }
  .container.gallery .gallery__filter.-active .gallery__filter-current::before {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .container.gallery .gallery__filter.-active .gallery__filter-current::after {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .container.gallery .gallery__filter.-active .gallery__filter-list {
    opacity: 1;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
    pointer-events: all;
  }
  .container.gallery .gallery__filter-item {
    cursor: pointer;
  }
  .container.gallery .gallery__filter-item + .gallery__filter-item {
    margin-top: 16px;
  }
  .container.gallery .gallery__filter-item.-current {
    display: none;
  }
  .container.gallery .gallery__filter-item.-current + .gallery__filter-item:nth-child(2) {
    margin-top: 0;
  }
  .container.gallery .gallery__list {
    margin-top: 20px;
    position: relative;
    z-index: 1;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .container.gallery .gallery__button {
    margin-top: 64px;
  }
}

@media screen and (min-width: 769px) {
  .container.topics .section__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .container.topics .topics {
    padding-top: 65px;
  }
  .container.topics .topics__heading {
    width: 29.5%;
  }
  .container.topics .topics__heading-title {
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 48px;
    letter-spacing: 0.03em;
  }
  .container.topics .topics__heading-text {
    margin-top: 42px;
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 0.03em;
  }
  .container.topics .topics__content {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0%;
            flex: 1 1 0%;
    margin: 95px 4.2% 0 100px;
  }
  .container.topics .topics__item {
    border-style: solid;
    border-color: #a2a2a2;
    border-width: 1px 0 0 0;
  }
  .container.topics .topics__item:last-child {
    border-width: 1px 0;
  }
  .container.topics .topics__item-link {
    padding: 23px 110px 23px 0;
  }
  .container.topics .topics__item a.topics__item-link {
    display: block;
  }
  .container.topics .topics__item a.topics__item-link:hover .topics__item-text {
    color: #BD9354;
  }
  .container.topics .topics__item a.topics__item-link:hover .topics__item-view {
    opacity: 1;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
    color: #BD9354;
  }
  .container.topics .topics__item a.topics__item-link:hover .topics__item-icon {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    background-color: #BD9354;
  }
  .container.topics .topics__item-text {
    font-size: 16px;
    line-height: 32px;
    letter-spacing: 0.03em;
    font-weight: 500;
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
  .container.topics .topics__item-view {
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 14px;
    letter-spacing: 0.04em;
    position: absolute;
    right: 30px;
    top: 31px;
    opacity: 0;
    -webkit-transform: translate(20px, 0);
        -ms-transform: translate(20px, 0);
            transform: translate(20px, 0);
    -webkit-transition: color 0.3s, opacity 0.3s, -webkit-transform 0.3s;
    transition: color 0.3s, opacity 0.3s, -webkit-transform 0.3s;
    transition: color 0.3s, opacity 0.3s, transform 0.3s;
    transition: color 0.3s, opacity 0.3s, transform 0.3s, -webkit-transform 0.3s;
  }
  .container.topics .topics__item-icon {
    background-color: #000;
    width: 24px;
    height: 24px;
    border-radius: 12px;
    position: absolute;
    right: 0;
    top: 26px;
    -webkit-transition: background-color 0.3s, -webkit-transform 0.3s;
    transition: background-color 0.3s, -webkit-transform 0.3s;
    transition: transform 0.3s, background-color 0.3s;
    transition: transform 0.3s, background-color 0.3s, -webkit-transform 0.3s;
  }
  .container.topics .topics__item-icon::after {
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    background: url(../images/common/icon_external_white_02.svg) no-repeat center center/contain;
    width: 9px;
    height: 9px;
  }
}
@media screen and (max-width: 768px) {
  .container.topics {
    padding-bottom: 79px;
  }
  .container.topics .topics {
    padding-top: 51px;
  }
  .container.topics .topics__heading-title {
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 40px;
    letter-spacing: 0.03em;
  }
  .container.topics .topics__heading-text {
    margin-top: 26px;
    font-size: 14px;
    line-height: 24.5px;
    letter-spacing: 0.03em;
  }
  .container.topics .topics__content {
    margin-top: 78px;
  }
  .container.topics .topics__item {
    border-style: solid;
    border-color: #a2a2a2;
    border-width: 1px 0 0 0;
  }
  .container.topics .topics__item:last-child {
    border-width: 1px 0;
  }
  .container.topics .topics__item-link {
    display: block;
    padding: 17px 30px 17px 0;
  }
  .container.topics .topics__item-text {
    font-size: 14px;
    line-height: 24.5px;
    letter-spacing: 0.04em;
    font-weight: 500;
  }
  .container.topics .topics__item-view {
    display: none;
  }
  .container.topics .topics__item-icon {
    background-color: #000;
    width: 22px;
    height: 22px;
    border-radius: 11px;
    position: absolute;
    right: 0;
    top: 19px;
  }
  .container.topics .topics__item-icon::after {
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    background: url(../images/common/icon_external_white_02.svg) no-repeat center center/contain;
    width: 11px;
    height: 11px;
  }
}

@media screen and (min-width: 769px) {
  .container.contact {
    padding-bottom: 160px;
  }
  .container.contact .section__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .container.contact .contact {
    padding-top: 70px;
    padding-top: 65px;
  }
  .container.contact .contact__heading {
    width: 29.5%;
  }
  .container.contact .contact__heading-title {
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 48px;
    letter-spacing: 0.03em;
  }
  .container.contact .contact__heading-text {
    margin-top: 45px;
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 0.03em;
  }
  .container.contact .contact__content {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0%;
            flex: 1 1 0%;
    margin: -17px 4.2% 0 100px;
  }
  .container.contact .contact__content.-confirm {
    margin-top: 8px;
  }
  .container.contact .contact__content.-thanks {
    margin-top: -2px;
  }
  .container.contact .contact__thanks-title {
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 24px;
    letter-spacing: 0.03em;
    line-height: 35px;
  }
  .container.contact .contact__thanks-text {
    margin-top: 26px;
    font-size: 16px;
    letter-spacing: 0.03em;
    line-height: 28px;
  }
  .container.contact .contact__thanks-button {
    margin-top: 38px;
    width: 150px;
  }
  .container.contact .contact__thanks-button .button-common {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .container.contact {
    padding-bottom: 79px;
  }
  .container.contact .contact {
    padding-top: 51px;
  }
  .container.contact .contact__heading-title {
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 40px;
    letter-spacing: 0.03em;
  }
  .container.contact .contact__heading-text {
    margin-top: 26px;
    font-size: 14px;
    line-height: 24.5px;
    letter-spacing: 0.03em;
  }
  .container.contact .contact__content {
    margin-top: 14px;
  }
  .container.contact .contact__thanks {
    margin-top: 39px;
  }
  .container.contact .contact__thanks-title {
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 24px;
    letter-spacing: 0.03em;
    line-height: 35px;
  }
  .container.contact .contact__thanks-text {
    margin-top: 19px;
    font-size: 14px;
    letter-spacing: 0.03em;
    line-height: 24.5px;
  }
  .container.contact .contact__thanks-button {
    margin-top: 38px;
  }
}

@media screen and (min-width: 769px) {
  .container.error .section__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .container.error .error {
    padding-top: 65px;
  }
  .container.error .error__heading {
    width: 29.5%;
  }
  .container.error .error__heading-title {
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 48px;
    letter-spacing: 0.03em;
  }
  .container.error .error__content {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0%;
            flex: 1 1 0%;
    margin: 4px 4.2% 0 100px;
  }
  .container.error .error__content-title {
    font-size: 20px;
    letter-spacing: 0.03em;
    line-height: 35px;
  }
  .container.error .error__content-text {
    margin-top: 25px;
    max-width: 350px;
    font-size: 16px;
    letter-spacing: 0.03em;
    line-height: 28px;
  }
  .container.error .error__content-button {
    margin-top: 38px;
    width: 150px;
  }
  .container.error .error__content-button .button-common {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .container.error {
    padding-bottom: 80px;
  }
  .container.error .error {
    padding-top: 51px;
  }
  .container.error .error__heading-title {
    font-family: classico-urw, "Helvetica Neue", Arial, zen-kaku-gothic-new, "Yu Gothic", "游ゴシック", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 40px;
    letter-spacing: 0.03em;
  }
  .container.error .error__content {
    margin-top: 49px;
  }
  .container.error .error__content-title {
    font-size: 20px;
    letter-spacing: 0.03em;
    line-height: 35px;
  }
  .container.error .error__content-text {
    margin-top: 25px;
    font-size: 16px;
    letter-spacing: 0.03em;
    line-height: 28px;
  }
  .container.error .error__content-button {
    margin-top: 38px;
  }
  .container.error .error__content-button .button-common {
    width: 100%;
  }
}
/*# sourceMappingURL=main.css.map */