@charset "UTF-8";
/* フォント定設
-----------------------------------------------------------------*/
/* フォント定設
-----------------------------------------------------------------*/
/*=============================================

	セクションタイトル

==============================================*/
@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
; }

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1; }

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

.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-transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  -webkit-box-sizing: content-box;
  box-sizing: content-box; }

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

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

.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;
  display: block; }

.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-css-mode .swiper-wrapper {
  -webkit-perspective: 1200px;
  perspective: 1200px; }

.swiper-3d .swiper-wrapper {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d; }

.swiper-3d {
  -webkit-perspective: 1200px;
  perspective: 1200px; }

.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d; }

.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-css-mode.swiper-horizontal > .swiper-wrapper {
  -ms-scroll-snap-type: x mandatory;
  scroll-snap-type: x mandatory; }

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

.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  -ms-scroll-snap-type: none;
  scroll-snap-type: none; }

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

.swiper-css-mode.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-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always; }

.swiper-css-mode.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-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after); }

.swiper-css-mode.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-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after); }

.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: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), 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: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), 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: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), 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: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.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-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: var(--swiper-navigation-top-offset, 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: .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-navigation-disabled .swiper-button-next,
.swiper-navigation-disabled .swiper-button-prev {
  display: none !important; }

.swiper-button-next svg,
.swiper-button-prev svg {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center; }

.swiper-rtl .swiper-button-next svg,
.swiper-rtl .swiper-button-prev svg {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg); }

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 10px);
  right: auto; }

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto; }

.swiper-button-lock {
  display: 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:after,
.swiper-rtl .swiper-button-next:after {
  content: 'prev'; }

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto; }

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

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

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

.swiper-pagination-disabled > .swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
  display: none !important; }

.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  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: var(--swiper-pagination-bullet-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: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  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: .2s transform, .2s top;
  transition: .2s transform, .2s top; }

.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: .2s transform, .2s left;
  transition: .2s transform, .2s left; }

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

.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit); }

.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, 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: var(--swiper-pagination-progressbar-size, 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: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0; }

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

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

.swiper-scrollbar-disabled > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important; }

.swiper-horizontal > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: var(--swiper-scrollbar-sides-offset, 1%);
  bottom: var(--swiper-scrollbar-bottom, 4px);
  top: var(--swiper-scrollbar-top, auto);
  z-index: 50;
  height: var(--swiper-scrollbar-size, 4px);
  width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%)); }

.swiper-scrollbar.swiper-scrollbar-vertical,
.swiper-vertical > .swiper-scrollbar {
  position: absolute;
  left: var(--swiper-scrollbar-left, auto);
  right: var(--swiper-scrollbar-right, 4px);
  top: var(--swiper-scrollbar-sides-offset, 1%);
  z-index: 50;
  width: var(--swiper-scrollbar-size, 4px);
  height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%)); }

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));
  border-radius: var(--swiper-scrollbar-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;
  -ms-touch-action: none;
  touch-action: none; }

.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 {
  pointer-events: auto; }

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

.swiper.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-prev {
  pointer-events: auto;
  visibility: visible; }

.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: .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-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible; }

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

.swiper.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-flip.swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right,
.swiper-flip .swiper-slide-shadow-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.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; }

.c-sectionTitle {
  position: relative; }
  @media print, screen and (max-width: 767px) {
    .c-sectionTitle {
      padding: 0 20px 32px; } }
  @media print, screen and (min-width: 768px) {
    .c-sectionTitle {
      padding: 0 20px 64px;
      max-width: 1004px;
      margin: 0 auto; } }

.c-sectionTitle_red {
  position: relative; }
  .c-sectionTitle_red::before {
    content: "";
    position: absolute;
    width: 100vw;
    height: 1px;
    background-color: #D64949;
    left: 50%;
    translate: -50% 0;
    bottom: 0;
    z-index: 1; }

.c-sectionTitle_article {
  position: relative; }
  @media print, screen and (max-width: 767px) {
    .c-sectionTitle_article {
      padding: 0 20px 32px; } }
  @media print, screen and (min-width: 768px) {
    .c-sectionTitle_article {
      padding: 0 20px; } }

@media print, screen and (max-width: 767px) {
  .c-sectionTitle_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse; } }

@media print, screen and (min-width: 768px) {
  .c-sectionTitle_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 20px; } }

.c-sectionTitle_main {
  text-align: left;
  position: relative; }

.c-sectionTitle_main_theme {
  position: relative; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-sectionTitle_main_theme img {
      width: 221px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-sectionTitle_main_theme img {
      width: 389.63px; } }
  [lang="en"] .c-sectionTitle_main_theme {
    font-family: "Montserrat", sans-serif;
    font-weight: bold;
    color: #D64949;
    letter-spacing: 0.03em;
    line-height: 1;
    color: #F8F5EC; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      [lang="en"] .c-sectionTitle_main_theme {
        font-size: 60px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      [lang="en"] .c-sectionTitle_main_theme {
        font-size: 38px; } }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      [lang="en"] .c-sectionTitle_main_theme small {
        font-size: 30px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      [lang="en"] .c-sectionTitle_main_theme small {
        font-size: 16px; } }

.c-sectionTitle_main_theme_ruby {
  aspect-ratio: 1.09038;
  position: absolute;
  right: -50px;
  bottom: 0;
  width: 99.74px; }
  .c-sectionTitle_main_theme_ruby img, .c-sectionTitle_main_theme_ruby video, .c-sectionTitle_main_theme_ruby iframe, .c-sectionTitle_main_theme_ruby svg {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center;
    object-position: center; }

.c-sectionTitle_main_special {
  position: relative; }
  .c-sectionTitle_main_special picture {
    display: block; }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .c-sectionTitle_main_special picture {
        aspect-ratio: 3.42222;
        width: 285.84px; }
        .c-sectionTitle_main_special picture img, .c-sectionTitle_main_special picture video, .c-sectionTitle_main_special picture iframe, .c-sectionTitle_main_special picture svg {
          width: 100%;
          height: 100%;
          -o-object-fit: cover;
          object-fit: cover;
          -o-object-position: center;
          object-position: center; } }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .c-sectionTitle_main_special picture {
        aspect-ratio: 4.22316;
        width: 496.58px; }
        .c-sectionTitle_main_special picture img, .c-sectionTitle_main_special picture video, .c-sectionTitle_main_special picture iframe, .c-sectionTitle_main_special picture svg {
          width: 100%;
          height: 100%;
          -o-object-fit: cover;
          object-fit: cover;
          -o-object-position: center;
          object-position: center; } }
  [lang="en"] .c-sectionTitle_main_special {
    font-family: "Montserrat", sans-serif;
    font-weight: bold;
    color: #D64949;
    letter-spacing: 0.03em;
    line-height: 1; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      [lang="en"] .c-sectionTitle_main_special {
        font-size: 60px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      [lang="en"] .c-sectionTitle_main_special {
        font-size: 38px; } }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      [lang="en"] .c-sectionTitle_main_special small {
        font-size: 30px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      [lang="en"] .c-sectionTitle_main_special small {
        font-size: 16px; } }

.c-sectionTitle_main_special_ruby {
  aspect-ratio: 0.96107;
  position: absolute;
  right: -50px;
  bottom: 0;
  width: 99.74px; }
  .c-sectionTitle_main_special_ruby img, .c-sectionTitle_main_special_ruby video, .c-sectionTitle_main_special_ruby iframe, .c-sectionTitle_main_special_ruby svg {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center;
    object-position: center; }

.c-sectionTitle_mainText {
  font-family: "筑紫A丸ゴシック", "FOT-TsukuAGoG Std", "FOT-TsukuAGoG", "TsukuAGoG", sans-serif;
  font-weight: bold;
  color: #D64949; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-sectionTitle_mainText {
      font-size: 43px;
      letter-spacing: -0.1em;
      margin-left: -10px;
      margin-top: 8px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-sectionTitle_mainText {
      font-size: 60px;
      margin-left: -13px;
      margin-top: 5px; } }
  .c-sectionTitle_mainText.c-sectionTitle_mainText_white {
    color: #fff; }

.c-sectionTitle_titleDeco {
  position: absolute;
  right: -45px;
  top: -45px; }
  .c-sectionTitle_titleDeco img {
    width: 100%; }

.c-sectionTitle_text {
  color: #D64949;
  text-align: left;
  line-height: 1.8;
  font-weight: bold; }
  @media print, screen and (max-width: 767px) {
    .c-sectionTitle_text {
      font-size: 16px;
      letter-spacing: 0.1em;
      margin-top: 18px; } }
  @media print, screen and (min-width: 768px) {
    .c-sectionTitle_text {
      letter-spacing: 0.1em;
      margin-top: 24px;
      font-size: 16px; } }
  .c-sectionTitle_text.c-sectionTitle_text_white {
    color: #fff; }
  [lang="en"] .c-sectionTitle_text {
    line-height: 1.5;
    letter-spacing: 0.05em; }

.c-sectionTitle_mainWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column; }

.c-sectionTitle_imageDeco img {
  width: 100%; }

.c-sectionTitle_main_special_wrap {
  position: relative; }

.c-sectionTitle_imageDeco_special {
  position: absolute;
  z-index: 10; }
  @media print, screen and (max-width: 767px) {
    .c-sectionTitle_imageDeco_special {
      width: 160px;
      top: -104px;
      right: -17px; }
      .c-sectionTitle_imageDeco_special img {
        width: 100%; } }
  @media print, screen and (min-width: 768px) and (max-width: 1024px) {
    .c-sectionTitle_imageDeco_special {
      width: 270px;
      top: 0;
      right: -290px; }
      .c-sectionTitle_imageDeco_special img {
        width: 100%; } }
  @media print, screen and (min-width: 1025px) {
    .c-sectionTitle_imageDeco_special {
      margin-top: 10px;
      bottom: -204px;
      right: clamp(-658px, calc(-658 / 1366 * 100vw), 0px); }
      .c-sectionTitle_imageDeco_special img {
        width: calc(448 / 1366 * 100vw);
        max-width: 448px; } }
  @media print, screen and (max-width: 767px) {
    [lang="en"] .c-sectionTitle_imageDeco_special {
      top: -144px; } }

.c-sectionTitle_imageDeco_theme {
  position: absolute;
  z-index: 10; }
  @media print, screen and (max-width: 767px) {
    .c-sectionTitle_imageDeco_theme {
      aspect-ratio: 1.23384;
      width: 203px;
      top: -131px;
      right: -10px; }
      .c-sectionTitle_imageDeco_theme img, .c-sectionTitle_imageDeco_theme video, .c-sectionTitle_imageDeco_theme iframe, .c-sectionTitle_imageDeco_theme svg {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
        -o-object-position: center;
        object-position: center; } }
  @media print, screen and (min-width: 768px) and (max-width: 1024px) {
    .c-sectionTitle_imageDeco_theme {
      top: 0px;
      bottom: auto;
      right: -290px; } }
  @media print, screen and (min-width: 1025px) {
    .c-sectionTitle_imageDeco_theme {
      aspect-ratio: 1.49012;
      bottom: -220px;
      right: clamp(-700px, calc(-700 / 1366 * 100vw), 0px); }
      .c-sectionTitle_imageDeco_theme img, .c-sectionTitle_imageDeco_theme video, .c-sectionTitle_imageDeco_theme iframe, .c-sectionTitle_imageDeco_theme svg {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
        -o-object-position: center;
        object-position: center; }
      .c-sectionTitle_imageDeco_theme img {
        width: calc(503 / 1366 * 100vw);
        max-width: 503px; } }
  @media print, screen and (max-width: 767px) {
    [lang="en"] .c-sectionTitle_imageDeco_theme {
      width: 165.26px;
      top: -140px;
      right: 0; } }
  @media print, screen and (min-width: 768px) {
    .articleThemeGuide .c-sectionTitle_imageDeco_theme {
      bottom: -120px; } }

@media print, screen and (max-width: 767px) {
  .c-sectionTitle_imageDeco_theme_article {
    right: -75px; } }

.c-moreButton {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-moreButton {
      margin-top: 32px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-moreButton {
      margin-top: 64px; } }

.c-moreButton_wrapper {
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease; }
  .c-moreButton_wrapper.is-checked {
    display: none; }
  @media (hover: hover) {
    .c-moreButton_wrapper:hover .c-moreButton_icon_Body {
      -webkit-animation: rotate 2s linear infinite;
      animation: rotate 2s linear infinite; } }

@-webkit-keyframes rotate {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes rotate {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

.c-moreButton_text {
  text-align: center; }
  [lang="en"] .c-moreButton_text {
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.1em;
    line-height: 1.2; }
  .c-moreButton_text img {
    width: 88px; }

.c-moreButton_icon {
  position: relative; }

.c-moreButton_icon_Body {
  width: 31px;
  height: 31px;
  -webkit-transition: rotate 0.3s ease;
  transition: rotate 0.3s ease;
  rotate: 0deg; }
  .c-moreButton_icon_Body.c-moreButton_icon_BodyRed {
    fill: #D64949; }
  .c-moreButton_icon_Body.c-moreButton_icon_BodyCream {
    fill: #F8F5EC; }

.c-moreButton_icon_arrow {
  position: absolute;
  width: 11.333px;
  height: 7.08px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 10; }
  .c-moreButton_icon_arrow.c-moreButton_icon_arrowRed {
    stroke: #D64949; }
  .c-moreButton_icon_arrow.c-moreButton_icon_arrowCream {
    stroke: #F8F5EC; }
  .c-moreButton_icon_arrow.c-moreButton_icon_arrow-big {
    width: 17px;
    height: 10px; }

.ticker {
  white-space: nowrap;
  overflow: hidden; }

.tickerInner {
  height: 100%;
  white-space: nowrap;
  will-change: transform;
  font-size: 0;
  display: inline-block; }

.tickerItem {
  display: inline-block;
  white-space: nowrap;
  min-width: -webkit-max-content;
  min-width: -moz-max-content;
  min-width: max-content; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .tickerItem {
      padding: 8px 0; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .tickerItem {
      padding: 17px 0; } }

.tickerItem_child {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  white-space: normal;
  text-align: center;
  vertical-align: middle;
  -ms-flex-negative: 0;
  flex-shrink: 0; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .tickerItem_child {
      margin: 0 10px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .tickerItem_child {
      margin: 0 16px; } }
  .tickerItem_child p {
    font-family: "EB Garamond", serif;
    font-weight: bold;
    color: #D64949;
    letter-spacing: 0.18em;
    white-space: nowrap; }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .tickerItem_child p {
        font-size: 20px; } }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .tickerItem_child p {
        font-size: 30px; } }
  .tickerItem_child img {
    width: 100%;
    -ms-flex-negative: 0;
    flex-shrink: 0; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .tickerItem_child.ticker_apple img {
      width: 53px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .tickerItem_child.ticker_apple img {
      max-width: 57px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .tickerItem_child.ticker_sushi img {
      width: 80px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .tickerItem_child.ticker_sushi img {
      max-width: 100px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .tickerItem_child.ticker_nabe img {
      width: 56px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .tickerItem_child.ticker_nabe img {
      max-width: 83px; } }
  .tickerItem_child.ticker_namimaru img {
    max-width: 52px; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .tickerItem_child.ticker_child img {
      width: 80px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .tickerItem_child.ticker_child img {
      max-width: 100px; } }

.c-infoMore_wrapper {
  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;
  cursor: pointer; }

.c-infoMore {
  overflow: hidden;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-weight: 500;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  position: relative;
  padding-right: 22px;
  outline: none;
  cursor: pointer; }
  .c-infoMore img {
    width: 102px; }
  @media (hover: hover) {
    .c-infoMore:hover .c-infoMore_arrow::before {
      -webkit-animation: transformRightLeft 0.5s ease forwards;
      animation: transformRightLeft 0.5s ease forwards; }
    .c-infoMore:hover .c-infoMore_arrow::after {
      -webkit-animation: transformLeftRight 0.5s ease forwards;
      animation: transformLeftRight 0.5s ease forwards; }
    @-webkit-keyframes transformLeftRight {
      0% {
        -webkit-transform: translate(-100%, 100%);
        transform: translate(-100%, 100%); }
      100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); } }
    @keyframes transformLeftRight {
      0% {
        -webkit-transform: translate(-100%, 100%);
        transform: translate(-100%, 100%); }
      100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); } }
    @-webkit-keyframes transformRightLeft {
      0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); }
      100% {
        -webkit-transform: translate(100%, -100%);
        transform: translate(100%, -100%); } }
    @keyframes transformRightLeft {
      0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); }
      100% {
        -webkit-transform: translate(100%, -100%);
        transform: translate(100%, -100%); } } }

.c-infoMore_text {
  color: #D64949; }

.c-infoMore_arrow {
  position: relative;
  width: 15px;
  height: 15px;
  overflow: hidden; }
  .c-infoMore_arrow::before, .c-infoMore_arrow::after {
    overflow: hidden;
    content: "";
    width: 15px;
    height: 15px;
    background-size: 11px 11px;
    background-position: center;
    position: absolute;
    background-repeat: no-repeat;
    right: 0;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-duration: 0.3s;
    animation-duration: 0.3s; }
  .c-infoMore_arrow::after {
    -webkit-transform: translate(-100%, 100%);
    -ms-transform: translate(-100%, 100%);
    transform: translate(-100%, 100%); }

.c-infoMore_icon {
  width: 15px;
  height: 15px;
  fill: #D64949; }
  .c-infoMore_icon.c-infoMore_icon_white {
    fill: #fff; }

.c-infoMore_svgWrap {
  overflow: hidden; }

.c-infoMore_arrow_red::before, .c-infoMore_arrow_red::after {
  background-image: url(../../assets/images/aomoritabi/common/arrow_icon.svg); }

.c-infoMore_arrow_white::before, .c-infoMore_arrow_white::after {
  background-image: url(../../assets/images/aomoritabi/common/arrow_icon_white.svg); }

.c-videoModal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease; }
  .c-videoModal.modalVideo_open {
    opacity: 1;
    visibility: visible; }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .c-videoModal_inner {
    position: relative;
    max-width: 1126px;
    width: 90%;
    height: 100vh;
    margin: 0 auto; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .c-videoModal_content_wrap {
    position: absolute;
    top: 50%;
    translate: 0 -50%;
    width: 100%; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .c-videoModal_content_wrap {
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    width: 100%;
    max-height: 90vh; } }

.c-videoModal_close {
  width: 40px;
  height: 20px;
  cursor: pointer;
  z-index: 1001; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-videoModal_close {
      position: absolute;
      right: 20px;
      top: -30px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-videoModal_close {
      position: fixed;
      top: -40px;
      right: 10px; } }

.c-videoModal_close_bar {
  display: block;
  position: relative;
  width: 38px;
  background-color: #fff; }
  .c-videoModal_close_bar:nth-child(1) {
    height: 4px;
    rotate: -30deg;
    top: 50%;
    translate: 0 -50%; }
  .c-videoModal_close_bar:nth-child(2) {
    height: 2px;
    rotate: 30deg;
    top: 50%;
    translate: 0 calc(-50% - 3px); }

.c-videoModal_content {
  position: relative;
  width: 100%; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .c-videoModal_content {
      aspect-ratio: 560/315; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .c-videoModal_content {
      aspect-ratio: 560/315;
      max-height: inherit;
      overflow-y: auto;
      scrollbar-width: none; }
      .c-videoModal_content::-webkit-scrollbar {
        display: none; }
      @supports (aspect-ratio: 560/315) {
        .c-videoModal_content {
          height: auto;
          max-height: 90vh; } } }
  .c-videoModal_content iframe {
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%; }

/*=============================================

	メインビジュアル

==============================================*/
.mainvisualWrap {
  position: relative;
  overflow: hidden; }

.mainvisual {
  position: relative;
  line-height: 0;
  background-color: #F8F5EC;
  overflow: hidden;
  width: 100%; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .mainvisual {
      padding-top: 178.13%; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .mainvisual {
      padding-top: 56.36%; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    [lang="en"] .mainvisual {
      padding: 0;
      height: 100svh; } }

/* en MV: mv_slider のフェードインスライダー */
.mainvisual_mvSlider {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%; }
  .mainvisual_mvSlider::after {
    content: '';
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 1; }

.mainvisual_mvSlider_swiper {
  width: 100%;
  height: 100%; }

.mainvisual_mvSlider_image {
  display: block;
  width: 100%;
  height: 100%; }
  .mainvisual_mvSlider_image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    display: block; }

.mainvisualLogo {
  position: absolute;
  display: block;
  z-index: 100; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .mainvisualLogo {
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, calc(-50% + 35px));
      -ms-transform: translate(-50%, calc(-50% + 35px));
      transform: translate(-50%, calc(-50% + 35px));
      width: calc(236 / 375 * 100vw); }
      .mainvisualLogo::after {
        content: '';
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        translate: -50% -50%;
        background-color: #F8F5EC;
        width: calc(357 / 375 * 100vw);
        height: calc(357 / 375 * 100vw);
        border-radius: 50%;
        z-index: 1; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .mainvisualLogo {
      width: calc(408 / 1366 * 100vw);
      top: 18%;
      left: 50%;
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translateX(-50%); } }
  .mainvisualLogo img {
    position: relative;
    width: 100%;
    z-index: 2; }

.mainvisualCatch_text {
  position: absolute;
  left: 50%;
  translate: -50% 0;
  bottom: 75px; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .mainvisualCatch_text {
      zoom: 1; } }
  .mainvisualCatch_text img {
    width: 436px; }

.mainvisualCatch_text_left,
.mainvisualCatch_text_right {
  position: absolute;
  z-index: 2000;
  top: 50%;
  -webkit-transform: translate(-50%, calc(-50% + 35px));
  -ms-transform: translate(-50%, calc(-50% + 35px));
  transform: translate(-50%, calc(-50% + 35px));
  width: calc(21 / 375 * 100vw);
  max-width: 40px; }
  .mainvisualCatch_text_left img,
  .mainvisualCatch_text_right img {
    width: 100%; }

.mainvisualCatch_text_left {
  left: calc(30 / 375 * 100vw); }

.mainvisualCatch_text_right {
  right: calc(8 / 375 * 100vw); }

.mainvisual_deco_first {
  position: absolute;
  z-index: 100; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .mainvisual_deco_first {
      width: calc(150 / 375 * 100vw);
      left: 0;
      top: calc(144 / 375 * 100vw); } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .mainvisual_deco_first {
      width: calc(321 / 1366 * 100vw);
      right: calc(-93 / 1366 * 100vw);
      bottom: calc(-136 / 1366 * 100vw); } }
  .mainvisual_deco_first img {
    width: 100%; }

.mainvisual_deco_second {
  position: absolute;
  bottom: 30px;
  right: 67px;
  z-index: 100; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .mainvisual_deco_second {
      right: calc(-29 / 375 * 100vw);
      bottom: calc(63 / 375 * 100vw);
      width: calc(166 / 375 * 100vw); } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .mainvisual_deco_second {
      left: calc(-20 / 1366 * 100vw);
      bottom: calc(-136 / 1366 * 100vw);
      width: calc(339 / 1366 * 100vw); } }
  .mainvisual_deco_second img {
    width: 100%; }

.mainvisual_sliderFirst {
  position: absolute; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .mainvisual_sliderFirst {
      top: 74px;
      left: 50%;
      translate: -50% 0; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .mainvisual_sliderFirst {
      left: calc(-100 / 1366 * 100vw);
      top: 18%; } }

.mainvisual_sliderSecond {
  position: absolute; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .mainvisual_sliderSecond {
      bottom: 0px;
      left: 50%;
      translate: -50% 0; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .mainvisual_sliderSecond {
      right: calc(-100 / 1366 * 100vw);
      top: 18%; } }

.mainvisual_sliderFirst_inner,
.mainvisual_sliderSecond_inner {
  position: relative; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .mainvisual_sliderFirst_inner,
    .mainvisual_sliderSecond_inner {
      aspect-ratio: 375/150; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .mainvisual_sliderFirst_inner,
    .mainvisual_sliderSecond_inner {
      aspect-ratio: 475/475; } }

.mainvisual_sliderFirst_image img,
.mainvisual_sliderSecond_image img {
  -webkit-transition: opacity 2s ease;
  transition: opacity 2s ease;
  width: 100%; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .mainvisual_sliderFirst_image img,
    .mainvisual_sliderSecond_image img {
      width: calc(475 / 1366 * 100vw); } }

.mainvisual_sliderFirst,
.mainvisual_sliderSecond {
  position: absolute; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .mainvisual_sliderFirst,
    .mainvisual_sliderSecond {
      width: 100%; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .mainvisual_sliderFirst,
    .mainvisual_sliderSecond {
      width: calc(475 / 1366 * 100vw);
      height: 100%; } }

.swiper-slide-active .mainvisual_sliderFirst_image,
.swiper-slide-active .mainvisual_sliderSecond_image {
  opacity: 1; }

.enMainvisual_logoWrap {
  position: absolute;
  inset: 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  z-index: 100; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .enMainvisual_logoWrap {
      margin: auto; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .enMainvisual_logoWrap {
      margin: auto auto auto; } }

.enMainvisual_logoMain picture {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .enMainvisual_logoMain picture {
      aspect-ratio: 1.89805;
      width: calc(717.71 / 1366 * 100vw); }
      .enMainvisual_logoMain picture img, .enMainvisual_logoMain picture video, .enMainvisual_logoMain picture iframe, .enMainvisual_logoMain picture svg {
        width: 100%;
        height: 100%;
        -o-object-fit: contain;
        object-fit: contain;
        -o-object-position: center;
        object-position: center; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .enMainvisual_logoMain picture {
      aspect-ratio: 1.78163;
      max-width: 520px;
      width: calc(100vw - 40px);
      margin: auto; }
      .enMainvisual_logoMain picture img, .enMainvisual_logoMain picture video, .enMainvisual_logoMain picture iframe, .enMainvisual_logoMain picture svg {
        width: 100%;
        height: 100%;
        -o-object-fit: contain;
        object-fit: contain;
        -o-object-position: center;
        object-position: center; } }

.enMainvisual_logoCompany {
  position: absolute;
  top: 0;
  left: calc(10 / 1366 * 100vw);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: calc(30 / 1366 * 100vw); }

.enMainvisual_logoCompanyLink {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content; }
  .enMainvisual_logoCompanyLink svg {
    fill: #fff; }

.enMainvisual_logoCompanyLink-aomori {
  aspect-ratio: 2.77302; }
  .enMainvisual_logoCompanyLink-aomori img, .enMainvisual_logoCompanyLink-aomori video, .enMainvisual_logoCompanyLink-aomori iframe, .enMainvisual_logoCompanyLink-aomori svg {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center;
    object-position: center; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .enMainvisual_logoCompanyLink-aomori {
      width: calc(76.23 / 1366 * 100vw); } }

.enMainvisual_logoCompanyLink-jal {
  aspect-ratio: 0.92494; }
  .enMainvisual_logoCompanyLink-jal img, .enMainvisual_logoCompanyLink-jal video, .enMainvisual_logoCompanyLink-jal iframe, .enMainvisual_logoCompanyLink-jal svg {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center;
    object-position: center; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .enMainvisual_logoCompanyLink-jal {
      width: calc(38.39 / 1366 * 100vw); } }

.enMainvisual_logoCompanyLink-hoshino {
  aspect-ratio: 2.53002; }
  .enMainvisual_logoCompanyLink-hoshino img, .enMainvisual_logoCompanyLink-hoshino video, .enMainvisual_logoCompanyLink-hoshino iframe, .enMainvisual_logoCompanyLink-hoshino svg {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center;
    object-position: center; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .enMainvisual_logoCompanyLink-hoshino {
      width: calc(93.38 / 1366 * 100vw); } }

.enMainvisual_text {
  position: absolute;
  color: #fff;
  z-index: 10;
  line-height: 1.5;
  letter-spacing: 0.05em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .enMainvisual_text {
      bottom: 40px;
      left: 40px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .enMainvisual_text {
      width: -webkit-max-content;
      width: -moz-max-content;
      width: max-content;
      bottom: 16px;
      left: 50%;
      translate: -50% 0;
      text-align: center; } }
  .enMainvisual_text::before {
    content: '';
    position: absolute;
    aspect-ratio: 1;
    border-radius: 50%;
    background-color: rgba(214, 73, 73, 0.7); }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .enMainvisual_text::before {
        top: -56px;
        right: -117px;
        width: 583.58px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .enMainvisual_text::before {
        top: -29px;
        left: 50%;
        translate: -50% 0;
        width: 520.33px; } }

.enMainvisual_textInner {
  position: relative; }

/*=============================================

のれそれ青森

==============================================*/
.noresore {
  background-color: #D64949;
  position: relative;
  overflow: hidden; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .noresore {
      padding-bottom: 80px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .noresore {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: end;
      -ms-flex-align: end;
      align-items: flex-end;
      padding-bottom: 114px;
      height: 769px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    [lang="en"] .noresore {
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      padding-top: 80px;
      padding-bottom: 0; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .noresore_inner {
    margin-left: calc(549 / 1366 * 100vw); } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  [lang="en"] .noresore_inner {
    margin-left: calc(653 / 1366 * 100vw); } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .noresore_map {
    aspect-ratio: 1.03878; }
    .noresore_map img, .noresore_map video, .noresore_map iframe, .noresore_map svg {
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
      object-fit: cover;
      -o-object-position: center;
      object-position: center; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .noresore_map {
    position: absolute;
    top: 0;
    left: 0;
    aspect-ratio: 0.97919;
    max-width: 753px; }
    .noresore_map img, .noresore_map video, .noresore_map iframe, .noresore_map svg {
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
      object-fit: cover;
      -o-object-position: center;
      object-position: center; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .noresore_content {
    text-align: left;
    padding: 0 20px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .noresore_content {
    max-width: 620px;
    text-align: center; } }

.noresore_title {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .noresore_title {
      -webkit-box-pack: end;
      -ms-flex-pack: end;
      justify-content: flex-end;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      gap: 13px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .noresore_title {
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center; } }

.noresore_title_text {
  color: #F8F5EC;
  font-family: "筑紫A丸ゴシック", "FOT-TsukuAGoG Std", "FOT-TsukuAGoG", "TsukuAGoG", sans-serif;
  font-weight: bold;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .noresore_title_text {
      font-size: 52px;
      letter-spacing: -0.05em;
      max-width: 212px;
      margin: 0 auto; }
      .noresore_title_text img {
        max-width: 212px; }
      .noresore_title_text span {
        display: block;
        font-size: 32px;
        letter-spacing: 0;
        margin-top: 4px;
        margin-left: 4px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .noresore_title_text {
      font-size: 77px;
      letter-spacing: -0.05em; }
      .noresore_title_text span {
        display: block;
        margin-top: 9px;
        font-size: 51px;
        letter-spacing: 0; } }
  [lang="en"] .noresore_title_text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    font-family: "Montserrat", sans-serif;
    letter-spacing: 0.03em;
    text-align: center; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      [lang="en"] .noresore_title_text {
        font-size: 70px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      [lang="en"] .noresore_title_text {
        max-width: none;
        font-size: 50px; } }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      [lang="en"] .noresore_title_text small {
        font-size: 50px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      [lang="en"] .noresore_title_text small {
        font-size: 40px; } }

.noresore_title_info_sp {
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.5;
  background-color: #E0D38E;
  padding: 10px 3px 10px 10px;
  border-radius: 5px;
  max-width: 295px;
  position: relative;
  color: #484848;
  margin: 8px auto 0; }
  .noresore_title_info_sp::after {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
    border-bottom: 7px solid #E0D38E;
    border-top: 0;
    top: -5px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%); }
  [lang="en"] .noresore_title_info_sp {
    width: 100%; }

.noresore_titleInfo {
  position: absolute;
  top: -22px;
  right: -23px;
  color: #484848;
  z-index: 10;
  border-radius: 50%;
  width: 30px;
  height: 30px; }
  @media (max-width: 1200px) {
    .noresore_titleInfo {
      top: -46px;
      right: auto;
      left: 50%;
      translate: -50% 0; } }
  .noresore_titleInfo::after {
    content: '';
    position: absolute;
    background-image: url(../../assets/images/aomoritabi/common/attention_mark.svg);
    background-size: 3px;
    background-repeat: no-repeat;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    z-index: 50;
    width: 3px;
    height: 16px;
    opacity: 1;
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease; }
  .noresore_titleInfo::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
    border-top: 7px solid #E0D38E;
    border-bottom: 0;
    bottom: -5px;
    right: 11px;
    left: auto; }
  @media (hover: hover) {
    .noresore_titleInfo:hover::after {
      opacity: 0; } }
  [lang="en"] .noresore_titleInfo {
    top: -36px;
    right: 23px; }
    @media (hover: hover) {
      [lang="en"] .noresore_titleInfo:hover .noresore_titleInfo_icon {
        width: 270px; } }

.noresore_titleInfo_icon {
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #E0D38E;
  border-radius: 23px;
  width: 30px;
  height: 30px;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  -webkit-transition: width 0.2s ease, height 0.2s ease, left 0.2s ease;
  transition: width 0.2s ease, height 0.2s ease, left 0.2s ease; }
  @media (hover: hover) {
    .noresore_titleInfo:hover .noresore_titleInfo_icon {
      width: 252px;
      height: 93px;
      left: -8px; } }

.noresore_titleInfo_icon_text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 12px;
  letter-spacing: 0.08em;
  line-height: 1.5;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
  text-align: left;
  z-index: 100;
  overflow: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
  white-space: nowrap;
  padding: 0 0 0 16px; }
  @media (hover: hover) {
    .noresore_titleInfo:hover .noresore_titleInfo_icon_text {
      opacity: 1; } }

.noresore_titleInfo_icon_text_inner {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content; }

.noresore_text {
  color: #fff;
  font-weight: 500; }
  @media print, screen and (max-width: 1024px) {
    .noresore_text {
      font-size: 16px;
      letter-spacing: 0.1em;
      line-height: 2;
      margin-top: 24px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .noresore_text {
      font-size: 17px;
      letter-spacing: 0.08em;
      line-height: 2.5;
      margin-top: 25px;
      text-align: center; } }
  [lang="en"] .noresore_text {
    letter-spacing: 0.05em;
    line-height: 2;
    font-weight: normal; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      [lang="en"] .noresore_text {
        font-size: 15px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      [lang="en"] .noresore_text {
        font-size: 16px; } }

.noresore_note {
  color: #fff;
  font-size: 12px;
  letter-spacing: 0.1em;
  margin-top: 28px; }
  [lang="en"] .noresore_note {
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 2;
    font-weight: normal; }

/*=============================================

青森の楽しみ方

==============================================*/
.aomoriHowto {
  background-color: #F8F5EC;
  border-bottom: 1px solid #D64949;
  position: relative;
  overflow: hidden; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto {
      padding: 120px 0 300px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto {
      padding: 64px 0 80px; } }
  .aomoriHowto:after {
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #D64949; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .aomoriHowto:after {
        bottom: 15px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .aomoriHowto:after {
        bottom: 6px; } }

.aomoriHowto_heading {
  text-align: center; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_heading {
      margin-bottom: 154px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_heading {
      margin-bottom: 70px; } }

.aomoriHowto_title {
  color: #D64949;
  letter-spacing: 0.03em;
  line-height: 1; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_title {
      margin: 0 auto 24px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_title {
      margin: 0 auto 18px; } }
  .aomoriHowto_title picture {
    display: block;
    margin: auto; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .aomoriHowto_title picture {
        aspect-ratio: 4.86246;
        width: 410.1px; }
        .aomoriHowto_title picture img, .aomoriHowto_title picture video, .aomoriHowto_title picture iframe, .aomoriHowto_title picture svg {
          width: 100%;
          height: 100%;
          -o-object-fit: contain;
          object-fit: contain;
          -o-object-position: center;
          object-position: center; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .aomoriHowto_title picture {
        aspect-ratio: 3.8872;
        width: 268.1px; }
        .aomoriHowto_title picture img, .aomoriHowto_title picture video, .aomoriHowto_title picture iframe, .aomoriHowto_title picture svg {
          width: 100%;
          height: 100%;
          -o-object-fit: contain;
          object-fit: contain;
          -o-object-position: center;
          object-position: center; } }
  [lang="en"] .aomoriHowto_title {
    font-weight: bold;
    font-family: "Montserrat", sans-serif; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      [lang="en"] .aomoriHowto_title {
        font-size: 60px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      [lang="en"] .aomoriHowto_title {
        font-size: 38px; } }

.aomoriHowto_text {
  font-size: 16px;
  letter-spacing: 0.1em;
  line-height: 1.8;
  font-weight: bold;
  color: #D64949; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_text {
      padding: 0 20px; } }
  @media print, screen and (max-width: 767px) {
    .aomoriHowto_text {
      text-align: left; } }
  [lang="en"] .aomoriHowto_text {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    letter-spacing: 0.05em; }

/* ---------- ブロック共通 + 季節バリエーション ---------- */
.aomoriHowto_block {
  position: relative;
  /* ----- summer / winter（左寄せレイアウト） ----- */
  /* ----- summer 固有 ----- */
  /* ----- winter 固有 ----- */
  /* ----- autumn（右寄せレイアウト） ----- */
  /* ----- 1366px以上は1366px幅相当の見た目を中央に固定（境界で連続） ----- */ }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block {
      width: 880px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_block {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
      flex-direction: column-reverse; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block + .aomoriHowto_block {
      margin-top: 290px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_block + .aomoriHowto_block {
      margin-top: 64px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    [lang="en"] .aomoriHowto_block + .aomoriHowto_block {
      margin-top: 80px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block.summer, .aomoriHowto_block.winter {
      margin-left: calc(178 / 1366 * 100vw); } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block.summer .aomoriHowto_gallery, .aomoriHowto_block.winter .aomoriHowto_gallery {
      left: 430px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_block.summer .aomoriHowto_gallery, .aomoriHowto_block.winter .aomoriHowto_gallery {
      -ms-grid-columns: auto 1fr;
      grid-template-columns: auto 1fr; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_block.summer .aomoriHowto_detailTitle, .aomoriHowto_block.winter .aomoriHowto_detailTitle {
      left: 40px; } }
  .aomoriHowto_block.summer .aomoriHowto_gallery_main, .aomoriHowto_block.winter .aomoriHowto_gallery_main {
    position: relative; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .aomoriHowto_block.summer .aomoriHowto_gallery_main, .aomoriHowto_block.winter .aomoriHowto_gallery_main {
        margin-left: calc(184 / 1366 * 100vw); } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .aomoriHowto_block.summer .aomoriHowto_gallery_main, .aomoriHowto_block.winter .aomoriHowto_gallery_main {
        margin-left: auto;
        margin-right: calc(-30 / 375 * 100vw); } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block.summer .aomoriHowto_gallery_rect1, .aomoriHowto_block.winter .aomoriHowto_gallery_rect1 {
      left: 0; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_block.summer .aomoriHowto_gallery_rect1, .aomoriHowto_block.winter .aomoriHowto_gallery_rect1 {
      -ms-grid-column: 1;
      -ms-grid-column-span: 1;
      grid-column: 1 / 2;
      -ms-grid-row: 2;
      -ms-grid-row-span: 1;
      grid-row: 2 / 3;
      margin-left: 20px;
      margin-top: calc(-46 / 375 * 100vw); } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block.summer .aomoriHowto_gallery_rect2, .aomoriHowto_block.winter .aomoriHowto_gallery_rect2 {
      left: calc(120 / 1366 * 100vw); } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_block.summer .aomoriHowto_gallery_rect2, .aomoriHowto_block.winter .aomoriHowto_gallery_rect2 {
      margin-top: 27px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    [lang="en"] .aomoriHowto_block.summer .aomoriHowto_detailTitle, [lang="en"] .aomoriHowto_block.winter .aomoriHowto_detailTitle {
      left: 28px; } }
  .aomoriHowto_block.summer .aomoriHowto_gallery_mainImg {
    aspect-ratio: 1.41395; }
    .aomoriHowto_block.summer .aomoriHowto_gallery_mainImg img, .aomoriHowto_block.summer .aomoriHowto_gallery_mainImg video, .aomoriHowto_block.summer .aomoriHowto_gallery_mainImg iframe, .aomoriHowto_block.summer .aomoriHowto_gallery_mainImg svg {
      width: 100%;
      height: 100%;
      -o-object-fit: contain;
      object-fit: contain;
      -o-object-position: center;
      object-position: center; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .aomoriHowto_block.summer .aomoriHowto_gallery_mainImg {
        width: 608px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .aomoriHowto_block.summer .aomoriHowto_gallery_mainImg {
        width: calc(307 / 375 * 100vw); } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block.summer .aomoriHowto_gallery_main .aomoriHowto_gallery_label {
      top: 30px;
      left: 40px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_block.summer .aomoriHowto_gallery_main .aomoriHowto_gallery_label {
      top: 0;
      right: calc(50 / 375 * 100vw); } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    [lang="en"] .aomoriHowto_block.summer .aomoriHowto_gallery_main .aomoriHowto_gallery_label {
      top: auto;
      bottom: 0; } }
  .aomoriHowto_block.summer .aomoriHowto_gallery_rect1 .aomoriHowto_gallery_label {
    top: -10px;
    left: -10px; }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      [lang="en"] .aomoriHowto_block.summer .aomoriHowto_gallery_rect1 .aomoriHowto_gallery_label {
        top: auto;
        bottom: -10px;
        left: -10px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block.summer .aomoriHowto_gallery_rect2 .aomoriHowto_gallery_label {
      bottom: -10px;
      right: -10px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_block.summer .aomoriHowto_gallery_rect2 .aomoriHowto_gallery_label {
      top: -10px;
      right: -10px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    [lang="en"] .aomoriHowto_block.summer .aomoriHowto_gallery_rect2 .aomoriHowto_gallery_label {
      top: auto;
      bottom: -10px;
      right: -10px; } }
  .aomoriHowto_block.winter .aomoriHowto_gallery_mainImg {
    aspect-ratio: 1.46512; }
    .aomoriHowto_block.winter .aomoriHowto_gallery_mainImg img, .aomoriHowto_block.winter .aomoriHowto_gallery_mainImg video, .aomoriHowto_block.winter .aomoriHowto_gallery_mainImg iframe, .aomoriHowto_block.winter .aomoriHowto_gallery_mainImg svg {
      width: 100%;
      height: 100%;
      -o-object-fit: contain;
      object-fit: contain;
      -o-object-position: center;
      object-position: center; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .aomoriHowto_block.winter .aomoriHowto_gallery_mainImg {
        width: 630px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .aomoriHowto_block.winter .aomoriHowto_gallery_mainImg {
        width: calc(307 / 375 * 100vw); } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block.winter .aomoriHowto_gallery_main .aomoriHowto_gallery_label {
      top: 40px;
      left: 40px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_block.winter .aomoriHowto_gallery_main .aomoriHowto_gallery_label {
      top: 0;
      right: calc(50 / 375 * 100vw); } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    [lang="en"] .aomoriHowto_block.winter .aomoriHowto_gallery_main .aomoriHowto_gallery_label {
      top: auto;
      bottom: 0; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block.winter .aomoriHowto_gallery_rect1 .aomoriHowto_gallery_label {
      top: -10px;
      left: -10px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_block.winter .aomoriHowto_gallery_rect1 .aomoriHowto_gallery_label {
      top: -10px;
      left: -10px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    [lang="en"] .aomoriHowto_block.winter .aomoriHowto_gallery_rect1 .aomoriHowto_gallery_label {
      top: auto;
      bottom: -10px;
      right: -10px;
      left: auto; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block.winter .aomoriHowto_gallery_rect2 .aomoriHowto_gallery_label {
      bottom: -10px;
      right: -10px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_block.winter .aomoriHowto_gallery_rect2 .aomoriHowto_gallery_label {
      top: -10px;
      right: -10px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    [lang="en"] .aomoriHowto_block.winter .aomoriHowto_gallery_rect2 .aomoriHowto_gallery_label {
      top: auto;
      bottom: -10px;
      right: -10px;
      left: auto; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block.autumn {
      margin-left: auto;
      margin-right: calc(178 / 1366 * 100vw); } }
  .aomoriHowto_block.autumn .aomoriHowto_detail {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block.autumn .aomoriHowto_detailTitle_img {
      margin-left: auto; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block.autumn .aomoriHowto_detailTitle {
      -webkit-box-pack: end;
      -ms-flex-pack: end;
      justify-content: flex-end; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_block.autumn .aomoriHowto_detailTitle {
      right: 40px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    [lang="en"] .aomoriHowto_block.autumn .aomoriHowto_detailTitle {
      right: 28px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block.autumn .aomoriHowto_gallery {
      right: 454px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_block.autumn .aomoriHowto_gallery {
      -ms-grid-columns: 1fr auto;
      grid-template-columns: 1fr auto; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block.autumn .aomoriHowto_gallery_main {
      margin-right: calc(138 / 1366 * 100vw); } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_block.autumn .aomoriHowto_gallery_main {
      margin-left: calc(-30 / 375 * 100vw); } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block.autumn .aomoriHowto_gallery_main .aomoriHowto_gallery_label {
      top: 40px;
      right: 40px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_block.autumn .aomoriHowto_gallery_main .aomoriHowto_gallery_label {
      top: 0;
      left: calc(50 / 375 * 100vw); } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    [lang="en"] .aomoriHowto_block.autumn .aomoriHowto_gallery_main .aomoriHowto_gallery_label {
      top: auto;
      bottom: 0; } }
  .aomoriHowto_block.autumn .aomoriHowto_gallery_mainImg {
    aspect-ratio: 1.46512; }
    .aomoriHowto_block.autumn .aomoriHowto_gallery_mainImg img, .aomoriHowto_block.autumn .aomoriHowto_gallery_mainImg video, .aomoriHowto_block.autumn .aomoriHowto_gallery_mainImg iframe, .aomoriHowto_block.autumn .aomoriHowto_gallery_mainImg svg {
      width: 100%;
      height: 100%;
      -o-object-fit: contain;
      object-fit: contain;
      -o-object-position: center;
      object-position: center; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .aomoriHowto_block.autumn .aomoriHowto_gallery_mainImg {
        width: 630px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .aomoriHowto_block.autumn .aomoriHowto_gallery_mainImg {
        width: calc(307 / 375 * 100vw); } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block.autumn .aomoriHowto_gallery_rect1 {
      right: 0; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_block.autumn .aomoriHowto_gallery_rect1 {
      -ms-grid-column: 2;
      -ms-grid-column-span: 1;
      grid-column: 2 / 3;
      -ms-grid-row: 2;
      -ms-grid-row-span: 1;
      grid-row: 2 / 3;
      margin-right: 20px;
      margin-top: calc(-26 / 375 * 100vw); } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block.autumn .aomoriHowto_gallery_rect1 .aomoriHowto_gallery_label {
      bottom: -10px;
      right: -10px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_block.autumn .aomoriHowto_gallery_rect1 .aomoriHowto_gallery_label {
      top: -10px;
      right: -10px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    [lang="en"] .aomoriHowto_block.autumn .aomoriHowto_gallery_rect1 .aomoriHowto_gallery_label {
      bottom: auto;
      top: -10px;
      right: -10px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    [lang="en"] .aomoriHowto_block.autumn .aomoriHowto_gallery_rect1 .aomoriHowto_gallery_label {
      top: auto;
      bottom: -10px;
      left: -10px;
      right: auto; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block.autumn .aomoriHowto_gallery_rect2 {
      right: calc(170 / 1366 * 100vw); } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_block.autumn .aomoriHowto_gallery_rect2 {
      -ms-grid-column: 1;
      -ms-grid-column-span: 1;
      grid-column: 1 / 2;
      -ms-grid-row: 2;
      -ms-grid-row-span: 1;
      grid-row: 2 / 3;
      margin-left: auto;
      margin-top: 27px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_block.autumn .aomoriHowto_gallery_rect2 .aomoriHowto_gallery_label {
      bottom: -10px;
      right: -10px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_block.autumn .aomoriHowto_gallery_rect2 .aomoriHowto_gallery_label {
      top: -10px;
      left: -10px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    [lang="en"] .aomoriHowto_block.autumn .aomoriHowto_gallery_rect2 .aomoriHowto_gallery_label {
      top: auto;
      bottom: -10px;
      left: -10px;
      right: auto; } }
  @media (min-width: 1366px) {
    .aomoriHowto_block.summer, .aomoriHowto_block.winter {
      margin-left: calc(178px + (100vw - 1366px) / 2); }
      .aomoriHowto_block.summer .aomoriHowto_gallery_main, .aomoriHowto_block.winter .aomoriHowto_gallery_main {
        margin-left: 184px; }
      .aomoriHowto_block.summer .aomoriHowto_gallery_rect2, .aomoriHowto_block.winter .aomoriHowto_gallery_rect2 {
        left: 120px; }
    .aomoriHowto_block.autumn {
      margin-right: calc(178px + (100vw - 1366px) / 2); }
      .aomoriHowto_block.autumn .aomoriHowto_gallery_main {
        margin-right: 138px; }
      .aomoriHowto_block.autumn .aomoriHowto_gallery_rect2 {
        right: 170px; } }

.aomoriHowto_detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 100%; }

.aomoriHowto_detailTitle {
  color: #D64949; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_detailTitle {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      gap: 10px;
      -webkit-box-align: baseline;
      -ms-flex-align: baseline;
      align-items: baseline;
      border-bottom: 1px solid #D64949;
      padding-bottom: 18px;
      margin-bottom: 64px;
      width: 100%; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_detailTitle {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      position: absolute;
      top: 0;
      padding: 0 0 calc(100 / 375 * 100vw) 10px;
      border-left: 1px solid #D64949;
      height: 50%; } }
  [lang="en"] .aomoriHowto_detailTitle {
    font-family: "Montserrat", sans-serif;
    letter-spacing: 0.03em;
    font-weight: bold; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      [lang="en"] .aomoriHowto_detailTitle {
        font-size: 50px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      [lang="en"] .aomoriHowto_detailTitle {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 6px;
        font-size: 35px;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        line-height: .8;
        padding: 0 0 calc(100 / 375 * 100vw) 7px; } }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      [lang="en"] .aomoriHowto_detailTitle small {
        font-size: 20px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      [lang="en"] .aomoriHowto_detailTitle small {
        font-size: 18px; } }

.aomoriHowto_detailTitle_img {
  position: relative;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  aspect-ratio: 0.97717; }
  .aomoriHowto_detailTitle_img img, .aomoriHowto_detailTitle_img video, .aomoriHowto_detailTitle_img iframe, .aomoriHowto_detailTitle_img svg {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center;
    object-position: center; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_detailTitle_img {
      width: 51.36px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_detailTitle_img {
      width: calc(34.04 / 375 * 100vw); } }

.aomoriHowto_detailText {
  letter-spacing: 0.1em;
  line-height: 1.8;
  font-weight: bold;
  color: #D64949; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_detailText {
      width: 366px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_detailText {
      padding: 0 40px;
      margin-top: 16px; } }
  [lang="en"] .aomoriHowto_detailText {
    letter-spacing: 0.05em; }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      [lang="en"] .aomoriHowto_detailText {
        margin-top: 30px; } }

.aomoriHowto_detailLink {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  font-weight: bold;
  color: #D64949;
  letter-spacing: 0.1em; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_detailLink {
      margin-top: 64px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_detailLink {
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      margin: 32px auto 0; } }
  @media (hover: hover) {
    .aomoriHowto_detailLink:hover .c-infoMore_arrow::before {
      -webkit-animation: transformRightLeft 0.5s ease forwards;
      animation: transformRightLeft 0.5s ease forwards; }
    .aomoriHowto_detailLink:hover .c-infoMore_arrow::after {
      -webkit-animation: transformLeftRight 0.5s ease forwards;
      animation: transformLeftRight 0.5s ease forwards; }
    @-webkit-keyframes transformLeftRight {
      0% {
        -webkit-transform: translate(-100%, 100%);
        transform: translate(-100%, 100%); }
      100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); } }
    @keyframes transformLeftRight {
      0% {
        -webkit-transform: translate(-100%, 100%);
        transform: translate(-100%, 100%); }
      100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); } }
    @-webkit-keyframes transformRightLeft {
      0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); }
      100% {
        -webkit-transform: translate(100%, -100%);
        transform: translate(100%, -100%); } }
    @keyframes transformRightLeft {
      0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); }
      100% {
        -webkit-transform: translate(100%, -100%);
        transform: translate(100%, -100%); } } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    [lang="en"] .aomoriHowto_detailLink {
      margin-top: 36px;
      font-size: 16px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    [lang="en"] .aomoriHowto_detailLink {
      margin-top: 30px;
      font-size: 14px; } }

.aomoriHowto_gallery {
  z-index: 2; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_gallery {
      position: absolute;
      top: -86px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_gallery {
      display: -ms-grid;
      display: grid;
      gap: 0 calc(14 / 375 * 100vw); } }

.aomoriHowto_gallery_main {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_gallery_main {
      z-index: 2; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_gallery_main {
      z-index: 3;
      grid-column: 1 / -1; } }

.aomoriHowto_gallery_rect1 {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_gallery_rect1 {
      z-index: 3;
      position: absolute;
      top: 223px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_gallery_rect1 {
      z-index: 1;
      position: relative; } }

.aomoriHowto_gallery_rect1Img {
  aspect-ratio: 1.41317; }
  .aomoriHowto_gallery_rect1Img img, .aomoriHowto_gallery_rect1Img video, .aomoriHowto_gallery_rect1Img iframe, .aomoriHowto_gallery_rect1Img svg {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_gallery_rect1Img {
      width: 236px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_gallery_rect1Img {
      width: calc(170 / 375 * 100vw); } }

.aomoriHowto_gallery_rect2 {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_gallery_rect2 {
      position: absolute;
      top: 397px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_gallery_rect2 {
      position: relative; } }

.aomoriHowto_gallery_rect2Img {
  aspect-ratio: 1.41606; }
  .aomoriHowto_gallery_rect2Img img, .aomoriHowto_gallery_rect2Img video, .aomoriHowto_gallery_rect2Img iframe, .aomoriHowto_gallery_rect2Img svg {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_gallery_rect2Img {
      width: 194px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_gallery_rect2Img {
      width: calc(137 / 375 * 100vw); } }

.aomoriHowto_gallery_label {
  position: absolute;
  z-index: 10;
  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-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #D64949;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #fff; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriHowto_gallery_label {
      padding: 10px 10px;
      width: 30px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriHowto_gallery_label {
      width: 28px;
      padding: 8px 5px; } }
  .aomoriHowto_gallery_label img {
    width: auto; }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .aomoriHowto_gallery_label img {
        width: 61%; } }
  [lang="en"] .aomoriHowto_gallery_label {
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    font-family: "Montserrat", sans-serif;
    letter-spacing: 0.05em;
    font-weight: bold;
    width: -webkit-fit-content !important;
    width: -moz-fit-content !important;
    width: fit-content !important; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      [lang="en"] .aomoriHowto_gallery_label {
        font-size: 16px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      [lang="en"] .aomoriHowto_gallery_label {
        font-size: 12px;
        padding: 5px; } }

/*=============================================

とっておきリスト

==============================================*/
.aomoriSpecial {
  overflow: hidden;
  background-color: #F8F5EC;
  border-bottom: 1px solid #D64949; }
  @media print, screen and (max-width: 767px) {
    .aomoriSpecial {
      padding-top: 142px; } }
  @media print, screen and (min-width: 768px) {
    .aomoriSpecial {
      padding-top: 100px; } }
  @media print, screen and (min-width: 1025px) {
    .aomoriSpecial {
      padding-top: 161px; } }
  @media print, screen and (max-width: 767px) {
    [lang="en"] .aomoriSpecial {
      padding-top: 200px; } }

.aomoriSpecial_tags_wrap {
  max-width: 782px; }

.aomoriSpecial_tags {
  max-width: 1004px;
  margin: 40px auto;
  padding: 0 20px; }

.aomoriSpecial_Wrap {
  padding-top: 8px;
  border-top: 1px solid #D64949;
  position: relative; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriSpecial_Wrap.is-checked {
      margin-bottom: 64px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriSpecial_Wrap.is-checked {
      margin-bottom: 80px; } }

.aomoriSpecial_noResult {
  text-align: center;
  display: none;
  border-top: 1px solid #D64949; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriSpecial_noResult {
      padding: 80px 0; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriSpecial_noResult {
      padding: 160px 0; } }
  .aomoriSpecial_noResult.is-appear {
    display: block; }

.aomoriSpecial_noResult_text {
  font-weight: bold;
  font-size: 16px;
  letter-spacing: 0.1em;
  line-height: 1.5;
  color: #D64949; }
  [lang="en"] .aomoriSpecial_noResult_text {
    font-weight: normal; }

.aomoriSpecial_cards_wrap {
  display: -ms-grid;
  display: grid; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriSpecial_cards_wrap {
      -ms-grid-columns: (1fr)[2];
      grid-template-columns: repeat(2, 1fr); } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriSpecial_cards_wrap {
      -ms-grid-columns: (1fr)[4];
      grid-template-columns: repeat(4, 1fr); } }

.aomoriSpecial_card {
  position: relative;
  cursor: pointer; }
  .aomoriSpecial_card.is-hidden {
    display: none; }
  .aomoriSpecial_card:nth-child(8n-7 of .aomoriSpecial_card:not(.is-hidden)) .aomoriSpecial_cardItem_img_overlay::before, .aomoriSpecial_card:nth-child(8n-1 of .aomoriSpecial_card:not(.is-hidden)) .aomoriSpecial_cardItem_img_overlay::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url(../../assets/images/aomoritabi/common/overlay_red.svg);
    background-size: cover;
    -webkit-transition: scale 0.6s ease;
    transition: scale 0.6s ease; }
  @media (hover: hover) {
    .aomoriSpecial_card:nth-child(8n-7 of .aomoriSpecial_card:not(.is-hidden)):hover .aomoriSpecial_cardItem_img_overlay::before, .aomoriSpecial_card:nth-child(8n-1 of .aomoriSpecial_card:not(.is-hidden)):hover .aomoriSpecial_cardItem_img_overlay::before {
      scale: 2.5; } }
  .aomoriSpecial_card:nth-child(8n-3 of .aomoriSpecial_card:not(.is-hidden)) .aomoriSpecial_cardItem_img_overlay::after, .aomoriSpecial_card:nth-child(8n-5 of .aomoriSpecial_card:not(.is-hidden)) .aomoriSpecial_cardItem_img_overlay::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url(../../assets/images/aomoritabi/common/overlay_yellow.svg);
    background-size: cover;
    -webkit-transition: scale 0.6s ease;
    transition: scale 0.6s ease; }
  @media (hover: hover) {
    .aomoriSpecial_card:nth-child(8n-3 of .aomoriSpecial_card:not(.is-hidden)):hover .aomoriSpecial_cardItem_img_overlay::after, .aomoriSpecial_card:nth-child(8n-5 of .aomoriSpecial_card:not(.is-hidden)):hover .aomoriSpecial_cardItem_img_overlay::after {
      scale: 2.5; } }
  @media (hover: hover) {
    .aomoriSpecial_card:nth-child(2n of .aomoriSpecial_card:not(.is-hidden)):hover .aomoriSpecial_cardItem_img {
      rotate: 3deg; } }

.aomoriSpecial_cardItem_img {
  position: relative;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  overflow: hidden;
  aspect-ratio: 1; }
  .aomoriSpecial_cardItem_img img, .aomoriSpecial_cardItem_img video, .aomoriSpecial_cardItem_img iframe, .aomoriSpecial_cardItem_img svg {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center; }
  .aomoriSpecial_cardItem_img::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.aomoriSpecial_cardItem_img_overlay {
  pointer-events: none;
  aspect-ratio: 1; }
  .aomoriSpecial_cardItem_img_overlay img, .aomoriSpecial_cardItem_img_overlay video, .aomoriSpecial_cardItem_img_overlay iframe, .aomoriSpecial_cardItem_img_overlay svg {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center; }

.aomoriSpecial_cardItem_bodyTitle {
  font-size: 16px;
  letter-spacing: 0.01em;
  line-height: 1.5;
  font-weight: bold; }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .aomoriSpecial_cardItem_body {
    padding: 14px 24px 24px 24px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .aomoriSpecial_cardItem_body {
    padding: 24px 24px 41px; } }

.aomoriSpecial_cardItem_bodyTagList {
  margin-top: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 4px 10px; }

.aomoriSpecial_cardItem_bodyTag {
  font-size: 13px;
  font-weight: bold;
  line-height: 1.5;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease; }
  .aomoriSpecial_cardItem_bodyTag.is-active {
    color: #D64949; }
  [lang="en"] .aomoriSpecial_cardItem_bodyTag {
    font-size: 12px; }

.aomoriSpecial_moreButton {
  width: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(20%, #F8F5EC), to(#F8F5EC));
  background: -webkit-linear-gradient(top, transparent 0%, #F8F5EC 20%, #F8F5EC 100%);
  background: linear-gradient(to bottom, transparent 0%, #F8F5EC 20%, #F8F5EC 100%);
  z-index: 5;
  position: relative;
  z-index: 10; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriSpecial_moreButton {
      padding-top: 10px;
      padding-bottom: 50px;
      margin-top: -300px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriSpecial_moreButton {
      padding-top: 60px;
      padding-bottom: 80px;
      margin-top: -435px; } }
  .aomoriSpecial_moreButton.is-checked {
    display: none;
    margin-top: 0; }

/*=============================================

モーダル

==============================================*/
.cardModal {
  position: fixed;
  z-index: 200000;
  inset: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(248, 245, 236, 0.9);
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease; }
  .cardModal.is-appear {
    opacity: 1;
    visibility: visible;
    pointer-events: initial; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .cardModal {
      padding: 20px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .cardModal {
      padding: 70px 132px; } }

.cardModal_inner {
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  position: relative;
  max-width: 1006px;
  margin: 0 auto;
  position: relative; }

.cardModal_bar_first {
  pointer-events: none; }
  .cardModal_bar_first::after {
    content: '';
    position: absolute;
    width: 100vw;
    height: 100%;
    border-block: 1px solid #D64949;
    top: 0;
    left: 50%;
    translate: -50% 0; }
  .cardModal_bar_first::before {
    content: '';
    position: absolute;
    height: 100vh;
    width: 100%;
    border-inline: 1px solid #D64949;
    top: 50%;
    left: 0;
    translate: 0 -50%; }

.cardModal_scroll {
  width: 100%;
  overflow-y: auto;
  scrollbar-width: none; }
  .cardModal_scroll::-webkit-scrollbar {
    display: none; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .cardModal_scroll {
      padding: 83px 20px 20px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .cardModal_scroll {
      padding: 80px 80px 37px; } }

.cardModal_top {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .cardModal_top {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .cardModal_top {
      display: -ms-grid;
      display: grid;
      -ms-grid-columns: 1fr 1.17fr;
      grid-template-columns: 1fr 1.17fr;
      gap: calc(40 / 1366 * 100vw);
      min-height: 210px; } }

.cardModal_close {
  position: absolute;
  cursor: pointer;
  z-index: 10000; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .cardModal_close {
      top: 26px;
      right: 20px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .cardModal_close {
      top: 32px;
      right: 32px; } }
  .cardModal_close img {
    width: 100%; }

.modal_swiper {
  width: 100%;
  margin: 0 auto;
  padding-bottom: 30px !important; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .modal_swiper {
      max-width: 295px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .modal_swiper {
      max-width: 435px; } }
  .modal_swiper .swiper-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .modal_swiper .swiper-slide {
    width: 100%;
    -ms-flex-negative: 0;
    flex-shrink: 0; }

.cardModal_swiper_pagination {
  width: -webkit-fit-content !important;
  width: -moz-fit-content !important;
  width: fit-content !important; }

.cardModal_swiper_pagination {
  left: 0 !important; }
  .cardModal_swiper_pagination .swiper-pagination-bullet {
    background-color: #fff;
    border: 1px solid #D64949;
    border-radius: 50%;
    opacity: 1 !important;
    margin: 0 8px !important; }
  .cardModal_swiper_pagination .swiper-pagination-bullet-active {
    background-color: #D64949; }

.cardModal_image {
  width: 100%;
  max-width: 435px;
  margin: 0 auto;
  aspect-ratio: 1.37209; }
  .cardModal_image img, .cardModal_image video, .cardModal_image iframe, .cardModal_image svg {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center; }

.cardModal_Content {
  width: 100%; }

.cardModal_Content_title {
  color: #D64949;
  font-weight: 500; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .cardModal_Content_title {
      font-size: 24px;
      letter-spacing: 0.1em;
      line-height: 1.5;
      margin-top: 20px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .cardModal_Content_title {
      font-size: 30px;
      letter-spacing: 0.05em;
      line-height: 1.56; } }

.cardModal_Content_tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .cardModal_Content_tags {
      margin-top: 15px;
      gap: 10px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .cardModal_Content_tags {
      max-width: 209px;
      gap: 10px;
      margin-top: 24px; } }

.cardModal_Content_tag {
  font-weight: bold; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .cardModal_Content_tag {
      font-size: 11px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .cardModal_Content_tag {
      font-size: 13px;
      letter-spacing: 0;
      line-height: 1.46; } }

.cardModal_Content_text {
  font-size: 14px;
  line-height: 1.8;
  font-weight: 500; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .cardModal_Content_text {
      letter-spacing: 0.1em;
      margin-top: 40px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .cardModal_Content_text {
      letter-spacing: 0.05em;
      margin-top: 27px; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .cardModal_Info {
    margin-top: 40px;
    padding-bottom: 100px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .cardModal_Info {
    margin-top: 34px; } }

.cardModal_Info_head {
  font-size: 18px;
  font-family: "EB Garamond", serif;
  color: #D64949;
  letter-spacing: 0.1em;
  padding-bottom: 9px;
  border-bottom: 1px solid #D64949; }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .cardModal_Info_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-top: 24px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .cardModal_Info_wrap {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1.5fr;
    grid-template-columns: 1fr 1.5fr;
    gap: calc(40 / 1366 * 100vw);
    padding-top: 20px; } }

.cardModal_Info_title {
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.5;
  color: #D64949; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .cardModal_Info_title {
      font-size: 16px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .cardModal_Info_title {
      font-size: 18px; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .cardModal_Info_contents_wrap {
    padding-bottom: 40px; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .cardModal_Info_contents {
    margin-top: 12px; } }

.cardModal_Info_contents tr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  text-align: left; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .cardModal_Info_contents tr + tr {
      margin-top: 16px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .cardModal_Info_contents tr + tr {
      margin-top: 31.5px; } }

.cardModal_Info_contents th {
  font-size: 14px;
  letter-spacing: 0.05em;
  font-weight: 500;
  line-height: 1.8; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .cardModal_Info_contents th {
      color: #D64949;
      font-weight: 500; } }

.cardModal_Info_contents td {
  font-size: 14px;
  letter-spacing: 0.05em;
  font-weight: 500; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .cardModal_Info_contents td {
      line-height: 1.5; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .cardModal_Info_contents td {
      line-height: 1.8; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .cardModal_Info_contents td:first-of-type {
      margin-top: 5px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .cardModal_Info_contents td:first-of-type {
      margin-top: 9px; } }

.cardModal_Info_more {
  text-align: right; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .cardModal_Info_more {
      margin-top: 32px; } }
  [lang="en"] .cardModal_Info_more {
    color: #D64949;
    font-size: 16px;
    font-weight: bold; }

.cardModal_Info_more_icon img {
  width: 14px; }

.cardModal_InfoGmap {
  cursor: pointer;
  margin-top: 8px; }
  @media (hover: hover) {
    .cardModal_InfoGmap:hover .cardModal_InfoGmap_wrap::before {
      width: 100%; } }

.cardModal_InfoGmap_link {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.05em;
  padding-left: 8px; }

.cardModal_InfoGmap_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content; }
  .cardModal_InfoGmap_wrap img {
    width: 15px; }
  .cardModal_InfoGmap_wrap::before {
    content: "";
    position: absolute;
    width: 0;
    height: 1px;
    left: 0;
    bottom: -3px;
    background-color: #D64949;
    -webkit-transition: width 0.3s ease;
    transition: width 0.3s ease; }

/*=============================================

Google Map

==============================================*/
.aomoriGmap {
  background-color: #F8F5EC;
  position: relative;
  z-index: 10;
  margin-top: -2px; }

.aomoriGmap_container {
  border-top: 1px solid #D64949; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriGmap_container {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      gap: calc(40 / 1366 * 100vw); } }
  .aomoriGmap_container #map {
    width: 100%; }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .aomoriGmap_container #map {
        aspect-ratio: 375/295; } }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .aomoriGmap_container #map {
        aspect-ratio: 694/544; } }

.aomoriGmap_tagsBottom {
  padding: 40px 20px; }

.aomoriGmap_search {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.aomoriGmap_tags_top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriGmap_tags_top {
      margin-top: 16px;
      gap: 0 10px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriGmap_tags_top {
      margin-top: 16px;
      gap: 0 10px; } }

.aomoriGmap_search_text {
  font-size: 12px;
  font-weight: bold;
  color: #D64949; }

.aomoriGmap_search_icon {
  width: 16px;
  height: 16px; }

.aomoriGmap_tagTop_node {
  background-color: #E0D38E;
  color: #484848;
  -webkit-transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
  transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
  border: 1px solid #E0D38E;
  border-radius: 50px;
  padding: 3px 14px;
  cursor: pointer; }
  .aomoriGmap_tagTop_node.is-active {
    background-color: #D64949;
    color: #fff;
    border-color: #D64949; }

.aomoriGmap_title_top {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 1.4; }

.aomoriGmap_tagsBottom_bottom {
  overflow: hidden;
  overflow-y: scroll;
  scrollbar-width: none; }
  .aomoriGmap_tagsBottom_bottom::-webkit-scrollbar {
    display: none; }

.aomoriGmap_tags_bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .aomoriGmap_tags_bottom {
      gap: 14px 10px;
      margin-top: 14px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .aomoriGmap_tags_bottom {
      margin-top: 13px;
      gap: 13px 10px; } }

.aomoriGmap_tagBottom_node {
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  border-radius: 50px;
  border: 1px solid #D64949;
  display: inline-block;
  padding: 3px 14px;
  color: #D64949; }
  .aomoriGmap_tagBottom_node.is-active {
    background-color: #D64949;
    color: #fff; }

.aomoriGmap_tags_resset {
  margin-top: 19px; }

.aomoriGmap_tags_resset_button {
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }
  .aomoriGmap_tags_resset_button img {
    width: 21px; }

.aomoriGmap_tags_resset_text {
  font-weight: bold;
  font-size: 12px;
  letter-spacing: 0;
  color: #D64949;
  padding-left: 5px; }

.aomoriGmap_tags_more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 13px;
  cursor: pointer; }

.aomoriGmap_tags_moreIcon {
  position: relative;
  width: 28px;
  height: 28px;
  border: 1px solid #D64949;
  border-radius: 50%; }
  .aomoriGmap_tags_moreIcon::after, .aomoriGmap_tags_moreIcon::before {
    content: '';
    position: absolute;
    background-color: #D64949;
    width: 12px;
    height: 2px;
    top: 50%;
    left: 50%;
    translate: -50% -50%; }
  .aomoriGmap_tags_moreIcon::before {
    rotate: 90deg; }

.aomoriGmap_tags_moreText {
  color: #D64949;
  font-size: 12px;
  font-weight: bold; }

.aomoriGmap_title_bottom {
  font-size: 14px;
  font-weight: bold;
  line-height: 1.4; }

.aomoriGmap_title {
  margin: 0;
  font-size: 14px; }

.mapGuideButton {
  position: fixed;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  z-index: 1000;
  cursor: pointer;
  aspect-ratio: 0.95833; }
  .mapGuideButton img, .mapGuideButton video, .mapGuideButton iframe, .mapGuideButton svg {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .mapGuideButton {
      bottom: 15px;
      right: 15px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .mapGuideButton {
      bottom: 30px;
      right: 30px; } }
  .mapGuideButton.is-appear {
    visibility: visible;
    opacity: 1; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .mapGuideButton img {
      width: 88px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .mapGuideButton img {
      max-width: 115px; } }

/*=============================================

テーマ別ガイド

==============================================*/
.themeGuide {
  background-color: #D64949;
  overflow: hidden; }
  @media print, screen and (max-width: 767px) {
    .themeGuide {
      padding-top: 153px;
      padding-bottom: 80px; } }
  @media print, screen and (min-width: 768px) {
    .themeGuide {
      padding-top: 100px;
      padding-bottom: 80px; } }
  @media print, screen and (min-width: 1025px) {
    .themeGuide {
      padding-top: 160px;
      padding-bottom: 120px; } }

.themeGuide_ticket {
  position: relative; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .themeGuide_ticket {
      padding-top: 80px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .themeGuide_ticket {
      padding: 40px 20px 0; } }
  .themeGuide_ticket::after, .themeGuide_ticket::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 1px;
    background-color: #fff; }
  .themeGuide_ticket::after {
    top: 0; }
  .themeGuide_ticket::before {
    top: 8px; }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .themeGuide_ticket_inner {
    padding: 0 40px; } }

@media print, screen and (max-width: 767px) {
  .themeGuide_ticket_lists {
    gap: 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .themeGuide_ticket_lists {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
    -ms-grid-rows: (1fr)[2];
    grid-template-rows: repeat(2, 1fr);
    gap: 30px; } }

.themeGuide_ticket_node {
  cursor: pointer;
  display: -ms-grid;
  display: grid; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .themeGuide_ticket_node {
      -ms-grid-columns: 1fr 232px;
      grid-template-columns: 1fr 232px; } }
  @media (hover: hover) {
    .themeGuide_ticket_node.is-move:hover .themeGuide_ticketBody {
      rotate: 2deg;
      translate: 8px 8px; } }
  .themeGuide_ticket_node.is-move:nth-child(3) .themeGuide_ticket_image_border {
    display: none; }

.themeGuide_ticketImage_wrap {
  position: relative;
  overflow: hidden; }

.themeGuide_ticket_top {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media print, screen and (max-width: 1024px) {
    .themeGuide_ticket_top {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column; } }
  .themeGuide_ticket_top::after, .themeGuide_ticket_top::before {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid; }
  @media print, screen and (max-width: 1024px) {
    .themeGuide_ticket_top::after {
      bottom: -1px;
      left: 0;
      border-width: 12px 0px 0px 12px;
      border-color: transparent transparent transparent #D64949; } }
  @media print, screen and (min-width: 1025px) {
    .themeGuide_ticket_top::after {
      top: -1px;
      right: 0px;
      border-width: 0px 12px 12px 0px;
      border-color: transparent #D64949 transparent transparent; } }
  @media print, screen and (max-width: 1024px) {
    .themeGuide_ticket_top::before {
      bottom: -1px;
      right: 0;
      border-width: 0px 0px 12px 12px;
      border-color: transparent transparent #D64949 transparent; } }
  @media print, screen and (min-width: 1025px) {
    .themeGuide_ticket_top::before {
      bottom: -1px;
      right: 0;
      border-width: 0px 0px 12px 12px;
      border-color: transparent transparent #D64949 transparent; } }

.themeGuide_ticket_image {
  position: relative;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 10px 0 0 10px;
  overflow: hidden; }
  .themeGuide_ticket_image img {
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    height: 100%; }
  @media print, screen and (max-width: 1024px) {
    .themeGuide_ticket_image {
      border-radius: 10px 10px 0 0;
      overflow: hidden;
      -webkit-box-flex: 1;
      -ms-flex: 1;
      flex: 1; } }
  @media print, screen and (min-width: 1025px) {
    .themeGuide_ticket_image {
      height: 100%;
      min-height: 290px; } }

.themeGuide_ticket_center {
  background-color: #F8F5EC; }
  @media print, screen and (max-width: 1024px) {
    .themeGuide_ticket_center {
      width: 100%;
      height: calc(15 / 375 * 100vw); } }
  @media print, screen and (min-width: 1025px) {
    .themeGuide_ticket_center {
      width: 30px;
      height: 100%; } }

@media print, screen and (max-width: 1024px) {
  .themeGuide_ticket_image_border {
    display: none; } }

@media print, screen and (min-width: 1025px) {
  .themeGuide_ticket_image_border {
    position: absolute;
    pointer-events: none;
    width: 100%;
    height: 100%;
    background: -webkit-linear-gradient(top, #D64949, #D64949 8px, transparent 8px, transparent 8px) repeat-y right top/3px 16px;
    background: linear-gradient(to bottom, #D64949, #D64949 8px, transparent 8px, transparent 8px) repeat-y right top/3px 16px;
    top: 0;
    right: -1px; } }

.themeGuide_ticket_stamp {
  position: absolute;
  aspect-ratio: 1; }
  .themeGuide_ticket_stamp img, .themeGuide_ticket_stamp video, .themeGuide_ticket_stamp iframe, .themeGuide_ticket_stamp svg {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center; }
  @media print, screen and (max-width: 1024px) {
    .themeGuide_ticket_stamp {
      right: -20px;
      top: -20px; } }
  @media print, screen and (min-width: 1025px) {
    .themeGuide_ticket_stamp {
      bottom: -48px;
      right: 10px; } }
  @media print, screen and (max-width: 1024px) {
    .themeGuide_ticket_stamp img {
      width: 150px; } }
  @media print, screen and (min-width: 1025px) {
    .themeGuide_ticket_stamp img {
      width: 291px; } }

.themeGuide_ticket_commingSoon {
  background-color: #E0D38E; }

.themeGuide_ticketBody {
  background-color: #F8F5EC;
  position: relative;
  height: inherit;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .themeGuide_ticketBody {
      padding: 24px;
      border-radius: 0 20px 20px 0; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .themeGuide_ticketBody {
      padding: 38px 20px 24px;
      border-radius: 0  0 10px 10px; } }
  .themeGuide_ticketBody::after, .themeGuide_ticketBody::before {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid; }
  @media print, screen and (max-width: 1024px) {
    .themeGuide_ticketBody::after {
      top: 0;
      left: 0;
      border-width: 12px 12px 0px 0px;
      border-color: #D64949 transparent transparent transparent; } }
  @media print, screen and (min-width: 1025px) {
    .themeGuide_ticketBody::after {
      top: 0;
      left: 0;
      border-width: 12px 12px 0px 0px;
      border-color: #D64949 transparent transparent transparent; } }
  @media print, screen and (max-width: 1024px) {
    .themeGuide_ticketBody::before {
      top: -1px;
      right: -1px;
      border-width: 0px 12px 12px 0px;
      border-color: transparent #D64949 transparent transparent; } }
  @media print, screen and (min-width: 1025px) {
    .themeGuide_ticketBody::before {
      bottom: -1px;
      left: -1px;
      border-width: 12px 0px 0px 12px;
      border-color: transparent transparent transparent #D64949; } }

.themeGuide_ticketBody_border {
  position: absolute;
  pointer-events: none;
  width: 100%;
  height: 100%; }
  @media print, screen and (max-width: 1024px) {
    .themeGuide_ticketBody_border {
      background: -webkit-linear-gradient(left, #D64949 5px, transparent 5px) repeat-x left top/10px 1px;
      background: linear-gradient(to right, #D64949 5px, transparent 5px) repeat-x left top/10px 1px;
      top: 0;
      left: -1px; } }
  @media print, screen and (min-width: 1025px) {
    .themeGuide_ticketBody_border {
      background: -webkit-linear-gradient(top, #D64949, #D64949 8px, 8px, transparent 8px) repeat-y left top/3px 16px;
      background: linear-gradient(to bottom, #D64949, #D64949 8px, 8px, transparent 8px) repeat-y left top/3px 16px;
      top: 0;
      left: -1px; } }

.themeGuide_ticketBody_top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 7px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 1px solid #707070;
  padding-bottom: 10px; }

.themeGuide_ticketBody_topDeco {
  aspect-ratio: 1; }
  .themeGuide_ticketBody_topDeco img, .themeGuide_ticketBody_topDeco video, .themeGuide_ticketBody_topDeco iframe, .themeGuide_ticketBody_topDeco svg {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center; }
  .themeGuide_ticketBody_topDeco img {
    width: 40px; }

.themeGuide_ticketBody_topText {
  font-family: "IBM Plex Mono", monospace;
  font-weight: bold;
  font-size: 12px;
  letter-spacing: 0.1em; }

.themeGuide_ticketBody_content {
  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: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  height: calc(100% - 57px); }
  @media print, screen and (max-width: 1024px) {
    .themeGuide_ticketBody_content {
      padding-top: 15px; } }
  @media print, screen and (min-width: 1025px) {
    .themeGuide_ticketBody_content {
      padding-top: 26px; } }

.themeGuide_ticketBody_content_text {
  letter-spacing: 0.1em;
  line-height: 1.5;
  font-weight: bold; }
  @media print, screen and (max-width: 1024px) {
    .themeGuide_ticketBody_content_text {
      font-size: 14px; } }
  @media print, screen and (min-width: 1025px) {
    .themeGuide_ticketBody_content_text {
      font-size: 16px; } }

.themeGuide_ticketBody_date {
  text-align: right;
  font-family: "IBM Plex Mono", monospace;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end; }
  @media print, screen and (max-width: 1024px) {
    .themeGuide_ticketBody_date {
      margin-top: 15px; } }
  .themeGuide_ticketBody_date span {
    display: block; }
    .themeGuide_ticketBody_date span:nth-child(1) {
      letter-spacing: 0.1em; }
      @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
        .themeGuide_ticketBody_date span:nth-child(1) {
          font-size: 10px; } }
      @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
        .themeGuide_ticketBody_date span:nth-child(1) {
          font-size: 12px; } }
    .themeGuide_ticketBody_date span:nth-child(2) {
      letter-spacing: 0;
      margin-left: 5px; }
      @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
        .themeGuide_ticketBody_date span:nth-child(2) {
          font-size: 25px;
          margin-bottom: -1px; } }
      @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
        .themeGuide_ticketBody_date span:nth-child(2) {
          font-size: 24px; } }
    .themeGuide_ticketBody_date span:nth-child(3) {
      letter-spacing: 0.1em;
      margin-left: 5px; }
      @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
        .themeGuide_ticketBody_date span:nth-child(3) {
          font-size: 10px; } }
      @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
        .themeGuide_ticketBody_date span:nth-child(3) {
          font-size: 14px; } }

/*=============================================

旅行プラン

==============================================*/
.travelPlan {
  background-color: #F8F5EC;
  overflow: hidden; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .travelPlan {
      padding-top: 80px;
      padding-bottom: 33px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .travelPlan {
      padding-top: 114px; } }
  [lang="en"] .travelPlan {
    border-bottom: 1px solid #D64949; }

.travelPlan_inner {
  margin: 0 auto;
  position: relative; }
  .travelPlan_inner::after {
    content: "";
    position: absolute;
    width: 100vw;
    height: 8px;
    left: 50%;
    top: -8px;
    translate: -50% 0;
    border-top: 1px solid #D64949;
    border-bottom: 1px solid #D64949; }
  @media print, screen and (min-width: 1025px) {
    .travelPlan_inner {
      max-width: 1004px;
      margin: 0 auto; }
      .travelPlan_inner::before {
        content: "";
        position: absolute;
        width: 100vw;
        height: 8px;
        left: 50%;
        bottom: -8px;
        translate: -50% 0;
        border-top: 1px solid #D64949;
        border-bottom: 1px solid #D64949; } }

.travelPlan_head {
  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: center;
  -ms-flex-align: center;
  align-items: center;
  padding-bottom: 48px; }

.travelPlan_head_top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.travelPlan_head_text {
  aspect-ratio: 3.36614; }
  .travelPlan_head_text img, .travelPlan_head_text video, .travelPlan_head_text iframe, .travelPlan_head_text svg {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .travelPlan_head_text img {
      width: 295px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .travelPlan_head_text img {
      width: 374px; } }
  [lang="en"] .travelPlan_head_text {
    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;
    text-align: center;
    aspect-ratio: auto;
    font-family: "Montserrat", sans-serif;
    font-weight: bold;
    color: #D64949;
    letter-spacing: 0.03em;
    line-height: 1; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      [lang="en"] .travelPlan_head_text {
        font-size: 60px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      [lang="en"] .travelPlan_head_text {
        font-size: 38px; } }
    [lang="en"] .travelPlan_head_text small {
      display: block; }
      @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
        [lang="en"] .travelPlan_head_text small {
          font-size: 30px; } }
      @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
        [lang="en"] .travelPlan_head_text small {
          font-size: 16px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .travelPlan_head_textObj {
    width: 427.76px; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .travelPlan_head_textObj {
    width: 286px; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .travelPlan_head_subImage img {
    width: 159px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .travelPlan_head_subImage img {
    width: 195px; } }

.travelPlan_items {
  position: relative; }

.travelPlan_node {
  cursor: pointer;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .travelPlan_node {
      display: -ms-grid;
      display: grid;
      -ms-grid-columns: 1fr 1fr;
      grid-template-columns: 1fr 1fr;
      border-right: 1px solid #D64949;
      border-left: 1px solid #D64949; } }
  @media (hover: hover) {
    .travelPlan_node:hover .c-infoMore_arrow::before {
      -webkit-animation: transformRightLeft 0.5s ease forwards;
      animation: transformRightLeft 0.5s ease forwards; }
    .travelPlan_node:hover .c-infoMore_arrow::after {
      -webkit-animation: transformLeftRight 0.5s ease forwards;
      animation: transformLeftRight 0.5s ease forwards; }
    @-webkit-keyframes transformLeftRight {
      0% {
        -webkit-transform: translate(-100%, 100%);
        transform: translate(-100%, 100%); }
      100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); } }
    @keyframes transformLeftRight {
      0% {
        -webkit-transform: translate(-100%, 100%);
        transform: translate(-100%, 100%); }
      100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); } }
    @-webkit-keyframes transformRightLeft {
      0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); }
      100% {
        -webkit-transform: translate(100%, -100%);
        transform: translate(100%, -100%); } }
    @keyframes transformRightLeft {
      0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); }
      100% {
        -webkit-transform: translate(100%, -100%);
        transform: translate(100%, -100%); } } }

.travelPlan_top_image {
  aspect-ratio: 1.50915; }
  .travelPlan_top_image img, .travelPlan_top_image video, .travelPlan_top_image iframe, .travelPlan_top_image svg {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center; }
  .travelPlan_top_image img {
    width: 100%; }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .travelPlan_bodyInner {
    padding: 24px 20px 47px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .travelPlan_bodyInner {
    padding: 0 32px; } }

.travelPlan_body_title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  color: #D64949;
  letter-spacing: 0.1em;
  line-height: 1.5;
  font-weight: bold; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .travelPlan_body_title {
      font-size: 20px;
      letter-spacing: 0.1em;
      line-height: 1.8;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .travelPlan_body_title {
      font-size: 24px; } }
  [lang="en"] .travelPlan_body_title {
    letter-spacing: 0.05em;
    line-height: 1.36; }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      [lang="en"] .travelPlan_body_title {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        font-size: 22px; } }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      [lang="en"] .travelPlan_body_title {
        font-size: 26px; } }

.travelPlan_body_text {
  color: #D64949;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.8;
  margin-top: 18px; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .travelPlan_body_text {
      min-height: 126px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .travelPlan_body_text {
      min-height: 96px; } }

.travelPlan_more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .travelPlan_more {
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      margin-top: 32px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .travelPlan_more {
      margin-top: 40px; } }
  [lang="en"] .travelPlan_more .c-infoMore {
    font-size: 16px;
    font-weight: bold;
    color: #D64949;
    letter-spacing: 0.1em; }

.travelPlan_bottom {
  position: relative; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .travelPlan_bottom {
      border-top: 1px solid #D64949;
      padding: 24px 20px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .travelPlan_bottom {
      padding: 48px 0 32px; } }
  @media print, screen and (min-width: 1025px) {
    .travelPlan_bottom {
      max-width: 1004px;
      margin: -8px auto 0;
      border-right: 1px solid #D64949;
      border-left: 1px solid #D64949; } }

.travelPlan_bottom_title {
  margin: 0 auto; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .travelPlan_bottom_title {
      width: calc(100% - 20px);
      max-width: 240px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .travelPlan_bottom_title {
      max-width: 300px; } }
  .travelPlan_bottom_title img {
    width: 100%; }

.travelPlan_bottom_text {
  font-weight: 500;
  letter-spacing: .1em;
  line-height: 1.8;
  color: #D64949; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .travelPlan_bottom_text {
      font-size: 14px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .travelPlan_bottom_text {
      font-size: 16px;
      text-align: center; } }
  [lang="en"] .travelPlan_bottom_text {
    line-height: 1.5; }

/*=============================================

フォトキャンペーン

==============================================*/
.campaign {
  background-color: #D64949; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .campaign {
      padding: 80px 0; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .campaign {
      padding: 120px 0; } }

.campaignLead {
  position: relative;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.8;
  color: #fff;
  text-align: center; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .campaignLead {
      font-size: 20px;
      margin-bottom: 54px; } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .campaignLead {
      margin-bottom: 30px; } }
  .campaignLead::after {
    content: "";
    position: absolute;
    left: 50%;
    translate: -50% 0;
    width: 12px;
    height: 12px;
    border-bottom: 2px solid #F8F5EC;
    border-right: 2px solid #F8F5EC;
    rotate: 45deg; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      .campaignLead::after {
        bottom: -24px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .campaignLead::after {
        bottom: -15px; } }

.campaignBnr {
  aspect-ratio: 2.5;
  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;
  max-width: 760px;
  margin: auto; }
  .campaignBnr img, .campaignBnr video, .campaignBnr iframe, .campaignBnr svg {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .campaignBnr {
      width: calc(100% - 40px); } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .campaignBnr {
      width: 100%; } }

/*=============================================

星野リゾートの宿

==============================================*/
.resortHotel {
  background-color: #F8F5EC; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .resortHotel {
      padding-top: 80px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .resortHotel {
      padding-top: 120px; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .resortHotel_inner {
    padding-inline: 20px; } }

.resortHotel_title {
  text-align: center; }
  [lang="en"] .resortHotel_title {
    font-family: "Montserrat", sans-serif;
    font-weight: bold;
    color: #D64949;
    letter-spacing: 0.03em;
    line-height: 1; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      [lang="en"] .resortHotel_title {
        font-size: 60px; } }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      [lang="en"] .resortHotel_title {
        font-size: 38px; } }

.resortHotel_titleImg img {
  width: 100%; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .resortHotel_titleImg img {
      max-width: 278px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .resortHotel_titleImg img {
      max-width: 476px; } }

.resortHotel_listsWrap {
  position: relative; }
  .resortHotel_listsWrap::before, .resortHotel_listsWrap::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 1px;
    background-color: #D64949;
    left: 50%;
    translate: -50% 0; }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
      .resortHotel_listsWrap::before, .resortHotel_listsWrap::after {
        width: calc(100% + 40px); } }
  .resortHotel_listsWrap::before {
    top: 0; }
  .resortHotel_listsWrap::after {
    bottom: 0; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .resortHotel_listsWrap {
      padding: 0 20px; } }

.resortHotel_lists {
  max-width: 1144px; }
  @media print, screen and (max-width: 1024px) {
    .resortHotel_lists {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      max-width: 500px;
      margin: 48px auto 0; } }
  @media print, screen and (min-width: 1025px) {
    .resortHotel_lists {
      margin: 60px auto 0;
      display: -ms-grid;
      display: grid;
      -ms-grid-columns: (1fr)[3];
      grid-template-columns: repeat(3, 1fr);
      gap: 8.3px; } }

.resortHotel_node {
  display: block;
  cursor: pointer; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .resortHotel_node {
      border-inline: 1px solid #D64949; }
      .resortHotel_node + .resortHotel_node {
        border-top: 1px solid #D64949; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .resortHotel_node {
      border-inline: 1px solid #D64949; } }
  @media (hover: hover) {
    .resortHotel_node:hover .c-infoMore_arrow::before {
      -webkit-animation: transformRightLeft 0.5s ease forwards;
      animation: transformRightLeft 0.5s ease forwards; }
    .resortHotel_node:hover .c-infoMore_arrow::after {
      -webkit-animation: transformLeftRight 0.5s ease forwards;
      animation: transformLeftRight 0.5s ease forwards; }
    @-webkit-keyframes transformLeftRight {
      0% {
        -webkit-transform: translate(-100%, 100%);
        transform: translate(-100%, 100%); }
      100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); } }
    @keyframes transformLeftRight {
      0% {
        -webkit-transform: translate(-100%, 100%);
        transform: translate(-100%, 100%); }
      100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); } }
    @-webkit-keyframes transformRightLeft {
      0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); }
      100% {
        -webkit-transform: translate(100%, -100%);
        transform: translate(100%, -100%); } }
    @keyframes transformRightLeft {
      0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); }
      100% {
        -webkit-transform: translate(100%, -100%);
        transform: translate(100%, -100%); } } }

@media print, screen and (max-width: 1024px) {
  .resortHotel_body-first,
  .resortHotel_body-second {
    margin-bottom: 6px;
    border-bottom: 1px solid #D64949; } }

.resortHotel_top_image {
  aspect-ratio: 1.50901; }
  .resortHotel_top_image img, .resortHotel_top_image video, .resortHotel_top_image iframe, .resortHotel_top_image svg {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center; }
  .resortHotel_top_image img {
    width: 100%; }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .resortHotel_body {
    padding: 6px 20px 37px 20px; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .resortHotel_body {
    padding: 40px 30px 63px; } }

.resortHotel_body_logo {
  aspect-ratio: 2.4031;
  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; }
  .resortHotel_body_logo img, .resortHotel_body_logo video, .resortHotel_body_logo iframe, .resortHotel_body_logo svg {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center;
    object-position: center; }
  @media print, screen and (max-width: 1024px) {
    .resortHotel_body_logo {
      width: 280px;
      margin: 0 auto; } }
  @media print, screen and (min-width: 1025px) {
    .resortHotel_body_logo img {
      width: 250px; } }
  @media screen and (min-width: 1240px) {
    .resortHotel_body_logo {
      width: 310px; } }

.resortHotel_body_text {
  color: #D64949;
  font-size: 14px;
  letter-spacing: 0.1em;
  line-height: 2;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .resortHotel_body_text {
      margin-top: 13px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .resortHotel_body_text {
      min-height: 140px;
      margin-top: 30px; } }
  [lang="en"] .resortHotel_body_text {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: normal;
    line-height: 1.5; }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
      [lang="en"] .resortHotel_body_text {
        text-align: center; } }

.resortHotel_body_more {
  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; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .resortHotel_body_more {
      margin-top: 24px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .resortHotel_body_more {
      margin-top: 40px; } }
  [lang="en"] .resortHotel_body_more .c-infoMore {
    font-size: 16px;
    font-weight: bold;
    color: #D64949;
    letter-spacing: 0.1em; }

.resortHotel_body_more_text {
  font-size: 14px;
  font-weight: bold;
  color: #D64949;
  font-family: "筑紫A丸ゴシック", "FOT-TsukuAGoG Std", "FOT-TsukuAGoG", "TsukuAGoG", sans-serif;
  letter-spacing: 0.1em;
  padding-right: 10px; }

.resortHotel_body_more_icon {
  width: 15px;
  height: 15px;
  fill: #D64949; }

/*=============================================

ブランドリスト

==============================================*/
.brandList {
  background-color: #F8F5EC; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .brandList {
      padding: 80px 0 0; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .brandList {
      padding: 120px 0; } }

.brandList_inner {
  max-width: 1028px;
  margin: 0 auto; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .brandList_inner {
      padding: 40px 0;
      background-color: #D64949; } }
  @media print, screen and (min-width: 1025px) {
    .brandList_inner {
      zoom: 0.9; } }
  @media print, screen and (min-width: 1240px) {
    .brandList_inner {
      zoom: 1; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
  .brandList_items {
    display: block;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
  .brandList_items {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
    -ms-grid-rows: auto auto auto;
    grid-template-rows: auto auto auto;
    gap: 20px; } }

.brandList_node {
  cursor: pointer;
  background-color: #D64949;
  padding: 40px 33px; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .brandList_node {
      max-width: 500px;
      margin: 0 auto; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .brandList_node {
      border-radius: 20px;
      display: -ms-grid;
      display: grid;
      -ms-grid-rows: subgrid;
      grid-template-rows: subgrid;
      -ms-grid-row-span: 3;
      grid-row: span 3; } }
  @media (hover: hover) {
    .brandList_node:hover .c-infoMore_arrow::before {
      -webkit-animation: transformRightLeft 0.5s ease forwards;
      animation: transformRightLeft 0.5s ease forwards; }
    .brandList_node:hover .c-infoMore_arrow::after {
      -webkit-animation: transformLeftRight 0.5s ease forwards;
      animation: transformLeftRight 0.5s ease forwards; }
    @-webkit-keyframes transformLeftRight {
      0% {
        -webkit-transform: translate(-100%, 100%);
        transform: translate(-100%, 100%); }
      100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); } }
    @keyframes transformLeftRight {
      0% {
        -webkit-transform: translate(-100%, 100%);
        transform: translate(-100%, 100%); }
      100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); } }
    @-webkit-keyframes transformRightLeft {
      0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); }
      100% {
        -webkit-transform: translate(100%, -100%);
        transform: translate(100%, -100%); } }
    @keyframes transformRightLeft {
      0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0); }
      100% {
        -webkit-transform: translate(100%, -100%);
        transform: translate(100%, -100%); } } }

.brandList_top {
  height: 182px;
  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;
  position: relative; }
  .brandList_top::after {
    content: '';
    position: absolute;
    width: 182px;
    height: 182px;
    background-color: #fff;
    left: 50%;
    top: 50%;
    translate: -50% -50%;
    border-radius: 50%; }

.brandList_top_image {
  position: relative;
  z-index: 10; }
  .brandList_top_image img {
    width: 100%; }

.brandList_bottom {
  padding-top: 27px; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .brandList_bottom {
      display: -ms-grid;
      display: grid;
      -ms-grid-rows: subgrid;
      grid-template-rows: subgrid;
      -ms-grid-row-span: 2;
      grid-row: span 2; } }

.brandList_bottom_text {
  font-size: 14px;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.1em;
  line-height: 2; }
  [lang="en"] .brandList_bottom_text {
    font-size: 16px;
    font-weight: normal;
    line-height: 1.5;
    text-align: center; }

.brandList_more {
  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; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .brandList_more {
      margin-top: 32px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .brandList_more {
      margin-top: 28px; } }
  [lang="en"] .brandList_more .c-infoMore {
    font-size: 16px;
    text-align: center;
    color: #fff;
    letter-spacing: 0.1em; }

.brandList_more_text {
  font-size: 14px;
  color: #fff;
  letter-spacing: 0.1em;
  padding-right: 10px; }

.brandList_more_icon {
  width: 15px;
  height: 15px;
  fill: #F8F5EC; }

.topCopy {
  font-weight: normal;
  font-size: 10px;
  color: #D64949;
  letter-spacing: 0.1em;
  line-height: 1.8;
  text-align: center; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .topCopy {
      padding: 80px 0 0;
      color: #fff; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1025px) {
    .topCopy {
      padding-top: 80px; } }
