@charset "utf-8";

/* common */

/*! Yaku Han JP v4.0.1 (OFL-1.1 AND MIT) by Qrac | Type: YakuHanJP - Based on Noto Sans JP */

@font-face{font-family:YakuHanJP;font-style:normal;font-weight:100;font-display:swap;src:url(../fonts/YakuHanJP/YakuHanJP-Thin.woff2) format("woff2");unicode-range:U+3001,U+3002,U+3008,U+3009,U+300a,U+300b,U+300c,U+300d,U+300e,U+300f,U+3010,U+3011,U+3014,U+3015,U+30fb,U+ff01,U+ff08,U+ff09,U+ff1a,U+ff1b,U+ff1f,U+ff3b,U+ff3d,U+ff5b,U+ff5d}

@font-face{font-family:YakuHanJP;font-style:normal;font-weight:200;font-display:swap;src:url(../fonts/YakuHanJP/YakuHanJP-ExtraLight.woff2) format("woff2");unicode-range:U+3001,U+3002,U+3008,U+3009,U+300a,U+300b,U+300c,U+300d,U+300e,U+300f,U+3010,U+3011,U+3014,U+3015,U+30fb,U+ff01,U+ff08,U+ff09,U+ff1a,U+ff1b,U+ff1f,U+ff3b,U+ff3d,U+ff5b,U+ff5d}

@font-face{font-family:YakuHanJP;font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/YakuHanJP/YakuHanJP-Light.woff2) format("woff2");unicode-range:U+3001,U+3002,U+3008,U+3009,U+300a,U+300b,U+300c,U+300d,U+300e,U+300f,U+3010,U+3011,U+3014,U+3015,U+30fb,U+ff01,U+ff08,U+ff09,U+ff1a,U+ff1b,U+ff1f,U+ff3b,U+ff3d,U+ff5b,U+ff5d}

@font-face{font-family:YakuHanJP;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/YakuHanJP/YakuHanJP-Regular.woff2) format("woff2");unicode-range:U+3001,U+3002,U+3008,U+3009,U+300a,U+300b,U+300c,U+300d,U+300e,U+300f,U+3010,U+3011,U+3014,U+3015,U+30fb,U+ff01,U+ff08,U+ff09,U+ff1a,U+ff1b,U+ff1f,U+ff3b,U+ff3d,U+ff5b,U+ff5d}

@font-face{font-family:YakuHanJP;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/YakuHanJP/YakuHanJP-Medium.woff2) format("woff2");unicode-range:U+3001,U+3002,U+3008,U+3009,U+300a,U+300b,U+300c,U+300d,U+300e,U+300f,U+3010,U+3011,U+3014,U+3015,U+30fb,U+ff01,U+ff08,U+ff09,U+ff1a,U+ff1b,U+ff1f,U+ff3b,U+ff3d,U+ff5b,U+ff5d}

@font-face{font-family:YakuHanJP;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/YakuHanJP/YakuHanJP-SemiBold.woff2) format("woff2");unicode-range:U+3001,U+3002,U+3008,U+3009,U+300a,U+300b,U+300c,U+300d,U+300e,U+300f,U+3010,U+3011,U+3014,U+3015,U+30fb,U+ff01,U+ff08,U+ff09,U+ff1a,U+ff1b,U+ff1f,U+ff3b,U+ff3d,U+ff5b,U+ff5d}

@font-face{font-family:YakuHanJP;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/YakuHanJP/YakuHanJP-Bold.woff2) format("woff2");unicode-range:U+3001,U+3002,U+3008,U+3009,U+300a,U+300b,U+300c,U+300d,U+300e,U+300f,U+3010,U+3011,U+3014,U+3015,U+30fb,U+ff01,U+ff08,U+ff09,U+ff1a,U+ff1b,U+ff1f,U+ff3b,U+ff3d,U+ff5b,U+ff5d}

@font-face{font-family:YakuHanJP;font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/YakuHanJP/YakuHanJP-ExtraBold.woff2) format("woff2");unicode-range:U+3001,U+3002,U+3008,U+3009,U+300a,U+300b,U+300c,U+300d,U+300e,U+300f,U+3010,U+3011,U+3014,U+3015,U+30fb,U+ff01,U+ff08,U+ff09,U+ff1a,U+ff1b,U+ff1f,U+ff3b,U+ff3d,U+ff5b,U+ff5d}

@font-face{font-family:YakuHanJP;font-style:normal;font-weight:900;font-display:swap;src:url(../fonts/YakuHanJP/YakuHanJP-Black.woff2) format("woff2");unicode-range:U+3001,U+3002,U+3008,U+3009,U+300a,U+300b,U+300c,U+300d,U+300e,U+300f,U+3010,U+3011,U+3014,U+3015,U+30fb,U+ff01,U+ff08,U+ff09,U+ff1a,U+ff1b,U+ff1f,U+ff3b,U+ff3d,U+ff5b,U+ff5d}

*,
*::before,
*::after {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

:where([hidden]:not([hidden='until-found'])) {
	display: none !important;
}

:where(html) {
	-webkit-text-size-adjust: none;
	color-scheme: dark light;
	tab-size: 2;
}

@media (prefers-reduced-motion: no-preference) {
	:where(html:focus-within) {
		scroll-behavior: smooth;
	}
}

:where(body) {
	line-height: 1.5;
	font-family: system-ui, sans-serif;
	-webkit-font-smoothing: antialiased;
}

:where(button) {
	all: unset;
}

:where(input, button, textarea, select) {
	font: inherit;
	color: inherit;
}

:where(textarea) {
	resize: vertical;
	resize: block;
}

:where(button, label, select, summary, [role='button'], [role='option']) {
	cursor: pointer;
}

:where(:disabled) {
	cursor: not-allowed;
}

:where(label:has(> input:disabled), label:has(+ input:disabled)) {
	cursor: not-allowed;
}

:where(a) {
	color: inherit;
	text-underline-offset: 0.2ex;
}

:where(ul, ol) {
	list-style: none;
}

:where(img, svg, video, canvas, audio, iframe, embed, object) {
	display: block;
}

:where(img, picture, svg, video) {
	max-inline-size: 100%;
	block-size: auto;
}

:where(p, h1, h2, h3, h4, h5, h6) {
	overflow-wrap: break-word;
}

:where(h1, h2, h3) {
	line-height: calc(1em + 0.5rem);
	text-wrap: balance;
}

:where(hr) {
	border: none;
	border-block-start: 1px solid;
	color: inherit;
	block-size: 0;
	overflow: visible;
}

:where(:focus-visible) {
	outline: 3px solid CanvasText;
	box-shadow: 0 0 0 5px Canvas;
	outline-offset: 1px;
}

:where(:focus-visible, :target) {
	scroll-margin-block: 8vh;
}

:where(.visually-hidden:not(:focus-within, :active)) {
	clip-path: inset(50%) !important;
	height: 1px !important;
	width: 1px !important;
	overflow: hidden !important;
	position: absolute !important;
	white-space: nowrap !important;
	border: 0 !important;
}

:root {
  /* base */
  --font-family: YakuHanJP, "Zen Maru Gothic", serif;
  --font-family-noyakuhan: "Zen Maru Gothic", serif;
  --main-bg: #fff9ea;
  --main-color: #261c12;

  /* layout */
  --canvas-width: 3000;
  --section-wide-width: 1920;
  --section-width: 1098;

  /* Color */
  --tap-highlight-color: rgba(255, 255, 255, .2);
  --selection-color: rgba(51, 153, 255, .4);

  --yellow-color: #fff204;
  --green-color: #11773f;
  --orange-color: #eb9617;
  --light-green-color: #b0d36f;

  --forestpark-color: #57B86B;
  --juka-color: #eb9617;
  --doggy-color: #0093cf;

  /* animation */
  --hover-color: #1558d6;

  --ease-out-quad: cubic-bezier(0.250, 0.460, 0.450, 0.940);
  --ease-out-cubic: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  --ease-out-quart: cubic-bezier(0.165, 0.840, 0.440, 1.000);
  --ease-out-quint: cubic-bezier(0.230, 1.000, 0.320, 1.000);
  --ease-out-sine: cubic-bezier(0.390, 0.575, 0.565, 1.000);
  --ease-out-expo: cubic-bezier(0.190, 1.000, 0.220, 1.000);
  --ease-out-circ: cubic-bezier(0.075, 0.820, 0.165, 1.000);
  --ease-out-back: cubic-bezier(0.175, 0.885, 0.320, 1.275);
  --ease-inout-quad: cubic-bezier(0.455, 0.030, 0.515, 0.955);
  --ease-inout-cubic: cubic-bezier(0.645, 0.045, 0.355, 1.000);
  --ease-inout-quart: cubic-bezier(0.770, 0.000, 0.175, 1.000);
  --ease-inout-quint: cubic-bezier(0.860, 0.000, 0.070, 1.000);
  --ease-inout-sine: cubic-bezier(0.445, 0.050, 0.550, 0.950);
  --ease-inout-expo: cubic-bezier(1.000, 0.000, 0.000, 1.000);
  --ease-inout-circ: cubic-bezier(0.785, 0.135, 0.150, 0.860);
  --ease-inout-back: cubic-bezier(0.680, -0.550, 0.265, 1.550);

  --transition: .3s var(--ease-out-quad);
}

/* Media Queries */

:where(html)  {
  background: var(--main-bg);
  color: var(--main-color);
  font-size: clamp(75%, calc(16/1350*100vw), 100%);
  overscroll-behavior: none;
  tap-highlight-color: rgba(0,0,0,0);
  -webkit-text-size-adjust: 100%;
          text-size-adjust: 100%;
  scroll-behavior: auto;
  color-scheme: normal;
}

@media screen and (max-width: 768px) {

:where(html)  {
    font-size: calc(16/375*100vw);
}
  }

:where(body) {
  font-family: var(--font-family);
  font-weight: 700;
  font-feature-settings : "palt";
  text-align: center;
  line-height: 1;
}

:where(body, div, section, header, footer, nav, article, aside, main, dl, ul, p, a, :after, :before) {
  backface-visibility: hidden;
}

:where(a) {
  color: currentColor;
  border: 0;
  background-color: transparent;
  text-decoration: none;
}

:where(a):hover,
:where(a):active {
  outline: 0;
}

:where(table) {
  border-collapse: collapse;
  border-spacing: 0;
}

:where(img) {
  border: 0;
  vertical-align: bottom;
  line-height: 0px;
  width: 100%;
  height: auto;
}

:where(svg) {
  max-width: 100%;
  overflow: inherit;
  fill: currentColor;
}

:where(img[src$=".svg"]) {
  max-width: 100%;
}

:where(h1, h2, h3, h4, h5, h6) {
  font-size: 100%;
  font-weight: inherit;
  line-height: 1;
  text-wrap: initial;
}

:where(em, strong) {
  font-weight: inherit;
  font-style: normal;
}

:where(small) {
  font-size: inherit;
}

:where(address) {
  font-style: normal;
}

:where(button, input, select, textarea) {
  background-color: transparent;
  border-style: none;
  border-radius: 0;
  font: inherit;
}

:where(a, input[type="button"], input[type="submit"]) {
  -webkit-tap-highlight-color: var(--tap-highlight-color);
}

:focus:not(:focus-visible) {
	outline: 0;
}

*::selection {
  background-color: var(--selection-color);
}

@media (prefers-reduced-motion: reduce) {
  *,
  ::before,
  ::after {
    transition-duration: 1ms !important;
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
  }
}

/* lib */

/**
 * Swiper 11.2.4
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: February 14, 2025
 */

/* FONT_START */

@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;
}

/* FONT_END */

:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

: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;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* 3D Effects */

.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
}

.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}

/* CSS Mode */

.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}

.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 {
  scroll-snap-type: x mandatory;
}

.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  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: '';
  flex-shrink: 0;
  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 {
  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 {
  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);
}

/* Slide styles start */

/* 3D Shadows */

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  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: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-right {
  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: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-bottom {
  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;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* Slide styles end */

.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  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-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 10px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  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: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-prev.swiper-button-hidden,
.swiper-button-next.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}

.swiper-navigation-disabled .swiper-button-prev,
.swiper-navigation-disabled .swiper-button-next {
  display: none !important;
}

.swiper-button-prev svg,
.swiper-button-next svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform-origin: center;
}

.swiper-rtl .swiper-button-prev svg,
.swiper-rtl .swiper-button-next svg {
  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;
}

/* Navigation font start */

.swiper-button-prev:after,
.swiper-button-next: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';
}

/* Navigation font end */

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-left: auto;
  --swiper-pagination-right: 8px;
  --swiper-pagination-bottom: 8px;
  --swiper-pagination-top: auto;
  --swiper-pagination-fraction-color: inherit;
  --swiper-pagination-progressbar-bg-color: rgba(0,0,0,0.25);
  --swiper-pagination-progressbar-size: 4px;
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-border-radius: 50%;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  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;
}

/* Common Styles */

.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}

/* Bullets */

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  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;
  box-shadow: 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-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}

.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}

.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}

.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform,
        200ms 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%;
  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 {
  transition: 200ms transform,
        200ms left;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform,
    200ms right;
}

/* Fraction */

.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}

/* Progress */

.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%;
  transform: scale(0);
  transform-origin: left top;
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}

.swiper-horizontal > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0;
}

.swiper-vertical > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
  width: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-lock {
  display: none;
}

:root {
  /*
  --swiper-scrollbar-border-radius: 10px;
  --swiper-scrollbar-top: auto;
  --swiper-scrollbar-bottom: 4px;
  --swiper-scrollbar-left: auto;
  --swiper-scrollbar-right: 4px;
  --swiper-scrollbar-sides-offset: 1%;
  --swiper-scrollbar-bg-color: rgba(0, 0, 0, 0.1);
  --swiper-scrollbar-drag-bg-color: rgba(0, 0, 0, 0.5);
  --swiper-scrollbar-size: 4px;
  */
}

.swiper-scrollbar {
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  position: relative;
  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-vertical > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-vertical {
  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;
}

/* Zoom container styles start */

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

/* Zoom container styles end */

.swiper-slide-zoomed {
  cursor: move;
  touch-action: none;
}

/* a11y */

.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.swiper-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}

.swiper-grid-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}

.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}

.swiper-fade .swiper-slide {
  pointer-events: none;
  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;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}

.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-cube.swiper-rtl .swiper-slide {
  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: 0.6;
  z-index: 0;
}

.swiper-cube .swiper-cube-shadow:before {
  content: '';
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px);
}

.swiper-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}

/* Cube slide shadows start */

.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top,
.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 {
  z-index: 0;
  backface-visibility: hidden;
}

/* Cube slide shadows end */

.swiper.swiper-flip {
  overflow: visible;
}

.swiper-flip .swiper-slide {
  pointer-events: none;
  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;
}

/* Flip slide shadows start */

.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top,
.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 {
  z-index: 0;
  backface-visibility: hidden;
}

/* Flip slide shadows end */

.swiper-creative .swiper-slide {
  backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform, opacity, height;
}

.swiper.swiper-cards {
  overflow: visible;
}

.swiper-cards .swiper-slide {
  transform-origin: center bottom;
  backface-visibility: hidden;
  overflow: hidden;
}

/* .swiper-slide {
  backface-visibility: visible;
} */

.swiper-wrapper {
  box-sizing: inherit;
  will-change: transform;
}

.swiper-pagination {
  position: static;
  text-align: left;
  display: flex;
}

.swiper-pagination.swiper-pagination-bullets {
    width: auto;
  }

.swiper-pagination-bullet {
  width: calc(18em/16);
  height: calc(18em/16);
  background: #fff;
  opacity: 1;
}

@media screen and (max-width: 768px) {

.swiper-pagination-bullet {
    width: calc(9em/16);
    height: calc(9em/16);
}
  }

.swiper-pagination-bullet:focus {
    outline: 0;
  }

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet:not(:first-of-type), .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet:not(:first-of-type) {
    margin-left: calc(12em/16);
  }

@media screen and (max-width: 768px) {

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet:not(:first-of-type), .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet:not(:first-of-type) {
      margin-left: calc(5em/16);
  }
    }

.swiper-pagination-bullet-active {
  background: var(--green-color);
}

.swiper-scrollbar.swiper-scrollbar-horizontal {
  position: static;
  border-radius: 0;
  background-color: #fff;
  height: 2px;
}

.swiper-scrollbar-drag {
  /*background-color: var(--main-blue-color);*/
  border-radius: 0px;
}

/* layout */

:where(html) {
  overflow-y: scroll;
}

.is-menuopen:where(html),
  .is-modalopen:where(html) {
    overflow: hidden;
  }

[data-loaded="false"]:where(body) {
    cursor: wait;
  }

:where(#l-wrapper) {
  opacity: 0;
  visibility: hidden;
  /* overflow: hidden; */
}

/* utility */

.u-canvassize {
  --ww: calc(var(--vw, 1vw) * 100);
  --canvas-width-unit: calc(var(--canvas-width) * 1em/16);
  width: var(--canvas-width-unit);
  margin-left: calc( (var(--canvas-width-unit) - var(--ww)) / 2 * -1 );
  position: relative;
}

@media screen and (max-width: 768px) {

.u-canvassize {
    width: 100%;
    margin-left: 0;
}
  }

.u-sectionwide {
  --ww: calc(var(--vw, 1vw) * 100);
  --section-wide-width-unit: calc(var(--section-wide-width) * 1em/16);
  width: var(--section-wide-width-unit);
  margin-left: calc( (var(--section-wide-width-unit) - var(--ww)) / 2 * -1 );
  position: relative;
}

@media screen and (max-width: 768px) {

.u-sectionwide {
    width: 100%;
    margin-left: 0;
}
  }

.u-section {
  margin: 0 auto;
  text-align: left;
  max-width: calc(var(--section-width) * 1em/16);
  width: calc(320/375*100%);
}

@media screen and (max-width: 768px) {

.u-section {
    width: calc(335/375*100%);
}
  }

.u-midium {
  font-weight: 500;
}

.u-targetline__txt {
  border-bottom: 1px solid currentColor;
}

.u-targetline.is-line .u-targetline__txt {
    border: 0;
  }

@media (any-hover: hover) {
  .u-target:where(:any-link, :enabled) {
    transition: opacity var(--transition);
  }
    .u-target:where(:any-link, :enabled):hover {
      opacity: .6;
    }
  .u-targetcolor:any-link {
    transition: color var(--transition);
  }
    .u-targetcolor:any-link:hover {
      color: var(--hover-color);
    }
  .u-targetline__txt {
    position: relative;
    border: 0;
  }
    .u-targetline__txt::after {
      content: "";
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 1px;
      background-color: currentColor;
    }
    .u-targetline.is-line .u-targetline__txt::after {
      transform: scale(0, 1);
    }
      .u-targetline:any-link:hover .u-targetline__txt::after {
        animation-name: lineanim;
        animation-duration: .6s;
        animation-timing-function: ease;
      }
      .u-targetline.is-line:any-link .u-targetline__txt::after {
        transition: transform var(--transition);
        transform-origin: top right;
      }
        .u-targetline.is-line:any-link:hover .u-targetline__txt::after {
          animation: none;
          transform: scale(1, 1);
          transform-origin: top left;
        }
  @keyframes lineanim {
    0% {
        transform:  scale(1, 1);
        transform-origin: top right;
    }
    50% {
        transform:  scale(0, 1);
        transform-origin: top right;
    }
    51% {
        transform:  scale(0, 1);
        transform-origin: top left;
    }
    100% {
        transform:  scale(1, 1);
        transform-origin: top left;
    }
  }
}

.u-animateblock {
  visibility: hidden;
  opacity: 0;
}

.u-bg {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.u-vt {
  writing-mode: vertical-rl;
  font-family: var(--font-family-noyakuhan);
  font-feature-settings: 'pkna';
  white-space: nowrap;
}

.u-hr {
  writing-mode: horizontal-tb;
  font-family: var(--font-family);
  font-feature-settings : "palt";
}

.u-sentence {
  --sentence-fs: 16;
  --sentence-line-height: 1.5;
  --sentence-letter-spacing: 1.24;
  font-size: calc(var(--sentence-fs) * 1em/16);
  line-height: var(--sentence-line-height);
  letter-spacing: calc(var(--sentence-letter-spacing) * 1em/16);
}

.u-objectfit {
  object-fit: cover;
  height: 100%;
}

/* compornent */

.c-target {
  display: block;
}

@media (any-hover: hover) {
  .c-target__img {
    overflow: hidden;
  }
  .c-target__imgBody {
    transition: transform var(--transition);
    will-change: transform;
  }
    .c-target:where(:any-link, :enabled):hover .c-target__imgBody {
      transform: scale(1.03);
      will-change: auto;
    }
}

.c-btn {
  display: inline-flex;
  align-items: center;
  padding: calc(10em/16) calc(40em/16) calc(10em/16) calc(10em/16);
  gap: calc(22em/16);
  background-color: var(--green-color);
  box-shadow: calc(4em/16) calc(6em/16) 0px 0px #125238;
  border-radius: 100vmax;
}

@media screen and (max-width: 768px) {

.c-btn {
    padding-right: calc(27em/16);
    gap: calc(10em/16);
}
  }

.c-btn__txt01 {
  font-size: calc(28em/16);
  color: var(--green-color);
  width: calc(99em/28);
  height: calc(64em/28);
  flex-shrink: 0;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 100vmax;
}

@media screen and (max-width: 768px) {

.c-btn__txt01 {
    font-size: calc(18em/16);
    width: calc(69em/18);
    height: calc(56em/18);
}
  }

.c-btn__txt02 {
  font-size: calc(30em/16);
  color: #fff;
}

@media screen and (max-width: 768px) {

.c-btn__txt02 {
    font-size: calc(20em/16);
    line-height: 1.2;
    text-align: center;
}
  }

.c-btn__txt02 em {
    font-size: calc(40em/30);
    color: var(--yellow-color);
  }

@media screen and (max-width: 768px) {

.c-btn__txt02 em {
      font-size: calc(22em/20);
      display: block;
  }
    }

.c-btn__arrow {
  width: calc(29em/16);
  flex-shrink: 0;
}

@media screen and (max-width: 768px) {

.c-btn__arrow {
    width: calc(23em/16);
}
  }

.c-btn__arrow svg {
    fill: #fff;
  }

@media (any-hover: hover) {
  .c-btn {
    transition: box-shadow .1s, top .1s, right .1s;
    position: relative;
    top: 0;
    right: 0;
  }
    .c-btn:hover {
      top: calc(6em/16);
      right: calc(-4em/16);
      box-shadow: 0 0 0 0 var(--btn-shadow-color);
    }
}

/*
.c-title {
} */

/* module */

.cm-h {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 5;
}

.cm-h-inner {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 768px) {

.cm-h-inner {
    flex-direction: column;
    align-items: center;
}
  }

.cm-h__title {
  --pt: 25;
  padding-top: calc(var(--pt) * 1em/16);
  width: calc(183em/16);
}

@media screen and (max-width: 768px) {

.cm-h__title {
    --pt: 16;
    width: calc(150em/16);
}
  }

.cm-nav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(var(--vh, 1vh)*100);
  opacity: 0;
  visibility: hidden;
  z-index: 99;
  overflow-y: auto;
  text-align: left;
  background-color: var(--yellow-color);
}

.cm-nav__body {
  --pt: 196;
  --pb: 280;
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  padding: calc(var(--pt) * 1em/16) 0 calc(var(--pb) * 1em/16);
}

@media screen and (max-width: 768px) {

.cm-nav__body {
    --pt: 16;
    --pb: 31;
}
  }

.cm-nav__bodyLogo {
  width: calc(304em/16);
  margin-left: calc(350/1098*100%);
}

@media screen and (max-width: 768px) {

.cm-nav__bodyLogo {
    width: calc(150em/16);
    margin: 0 auto;
}
  }

.cm-nav__bodyList {
  --mt: 95;
  width: 100%;
  display: flex;
  margin-top: calc(var(--mt) * 1em/16);
}

@media screen and (max-width: 768px) {

.cm-nav__bodyList {
    --mt: 63;
    display: block;
    text-align: center;
}
  }

.cm-nav__bodyListBody:nth-of-type(1) {
    margin-left: calc(80/1098*100%);
    margin-right: calc(230/1098*100%);
  }

@media screen and (max-width: 768px) {

.cm-nav__bodyListBody:nth-of-type(1) {
      margin: 0 0 calc(26em/16);
  }
    }

.cm-nav__bodyListBody .item {
    --fs: 26;
    font-size: calc(var(--fs) * 1em/16);
  }

@media screen and (max-width: 768px) {

.cm-nav__bodyListBody .item {
      --fs: 16;
  }
    }

.cm-nav__bodyListBody .item:not(:first-of-type) {
      --mt: 50;
      margin-top: calc(var(--mt) * 1em/26);
    }

@media screen and (max-width: 768px) {

.cm-nav__bodyListBody .item:not(:first-of-type) {
        --mt: 26;
        margin-top: calc(var(--mt) * 1em/16);
    }
      }

.cm-nav__bodyListBody .item__target {
    position: relative;
    display: inline-flex;
    padding-bottom: calc(27em/26);
  }

@media screen and (max-width: 768px) {

.cm-nav__bodyListBody .item__target {
      padding-bottom: calc(13em/16);
  }
    }

.cm-nav__bodyListBody .item__target::before {
      content: "";
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: calc(4em/26);
      background: url("../images/dot.svg") top left repeat-x;
      display: block;
      transform: scale(1, 0);
      transform-origin: bottom left;
    }

@media screen and (max-width: 768px) {

.cm-nav__bodyListBody .item__target::before {
        height: calc(4em/16);
    }
      }

.cm-nav__bodyListBody .item__target.is-active::before {
        transform: scale(1, 1);
      }

@media (any-hover: hover) {
      .cm-nav__bodyListBody .item__target::before {
        transition: transform var(--transition);
      }
        .cm-nav__bodyListBody .item__target:hover::before {
          transform: scale(1, 1);
        }
  }

.cm-nav__bodyBtn {
  --mt: 61;
  margin-top: calc(var(--mt) * 1em/16);
  margin-left: calc(156/1098*100%);
}

@media screen and (max-width: 768px) {

.cm-nav__bodyBtn {
    --mt: 40;
    margin-left: 0;
}
  }

.cm-nav__bodyIllustItem {
  position: absolute;
}

@media screen and (max-width: 768px) {

.cm-nav__bodyIllustItem {
    display: none;
}
  }

.cm-nav__bodyIllustItem:nth-of-type(1) {
    top: calc(80em/16);
    left: calc(-110/1098*100%);
    width: calc(150em/16);
  }

.cm-nav__bodyIllustItem:nth-of-type(2) {
    top: calc(53em/16);
    right: calc(174/1098*100%);
    width: calc(134em/16);
  }

@media screen and (max-width: 768px) {

.cm-nav__bodyIllustItem:nth-of-type(2) {
      display: block;
      top: calc(362em/16);
      right: auto;
      left: calc(-15em/16);
      width: calc(68em/16);
  }
    }

.cm-nav__bodyIllustItem:nth-of-type(3) {
    top: calc(698em/16);
    left: calc(-204/1098*100%);
    width: calc(215em/16);
  }

@media screen and (max-width: 768px) {

.cm-nav__bodyIllustItem:nth-of-type(3) {
      display: block;
      top: calc(353em/16);
      right: calc(-15em/16);
      left: auto;
      width: calc(86em/16);
  }
    }

.cm-nav__bodyIllustItem:nth-of-type(4) {
    top: calc(827em/16);
    left: calc(460/1098*100%);
    width: calc(135em/16);
  }

.cm-nav__bodyIllustItem:nth-of-type(5) {
    top: calc(719em/16);
    right: calc(-46/1098*100%);
    width: calc(145em/16);
  }

.cm-nav__bodyClose {
  position: absolute;
  top: calc(32em/16);
  right: calc(45/1098*100%);
  width: calc(60em/16);
}

@media screen and (max-width: 768px) {

.cm-nav__bodyClose {
    top: calc(20em/16);
    right: 0;
}
  }

.cm-nav__bg {
  --bg-top: 111;
  --bg-height: 875;
  z-index: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  min-height: calc( (var(--bg-top) + var(--bg-height)) * 1em/16);
  overflow: hidden;
}

@media screen and (max-width: 768px) {

.cm-nav__bg {
    --bg-top: 73;
    --bg-height: 382;
}
  }

.cm-nav__bgImg {
  width: calc(1772/1920*100%);
  position: absolute;
  top: calc(var(--bg-top) * 1em/16);
  left: calc(27/1920*100%);
}

@media screen and (max-width: 768px) {

.cm-nav__bgImg {
    width: calc(344em/16);
    left: 50%;
    margin-left: calc(-177em/16);
}
  }

@media screen and (max-width: 768px) {

.cm-nav__bgImgBody {
    width: 100%;
    max-width: none;
    object-fit: cover;
}
    .cm-nav__bgImgBody img {
      width: 100%;
      height: 100%;
    }
  }

.cm-nav__bgTreeItem {
  position: absolute;
  top: 0;
}

.cm-nav__bgTreeItem:nth-of-type(1) {
    left: calc(-362/1920*100%);
    width: calc(689/1920*100%);
  }

@media screen and (max-width: 1440px) {

.cm-nav__bgTreeItem:nth-of-type(1) {
      left: calc(-362*.6/1920*100%);
  }
    }

@media screen and (max-width: 768px) {

.cm-nav__bgTreeItem:nth-of-type(1) {
      left: 0;
      width: calc(104em/16);
  }
    }

.cm-nav__bgTreeItem:nth-of-type(2) {
    right: calc(-356/1920*100%);
    width: calc(827/1920*100%);
  }

@media screen and (max-width: 1440px) {

.cm-nav__bgTreeItem:nth-of-type(2) {
      right: calc(-356*.6/1920*100%);
  }
    }

@media screen and (max-width: 768px) {

.cm-nav__bgTreeItem:nth-of-type(2) {
      top: calc(62em/16);
      right: 0;
      width: calc(104em/16);
  }
    }

.cm-menu {
  position: fixed;
  top: calc(22em/16);
  left: 0;
  width: 100%;
  pointer-events: none;
  z-index: 98;
}

@media screen and (max-width: 768px) {

.cm-menu {
    top: calc(20em/16);
}
  }

.cm-menu-inner {
  display: flex;
  justify-content: flex-end;
}

.cm-menuBody {
  width: calc(60em/16);
  pointer-events: auto;
}

.cm-f__top {
  --mt: -20;
  --pb: 46;
  background-color: #fff;
  margin-top: calc(var(--mt) * 1em/16);
  padding-bottom: calc(var(--pb) * 1em/16);
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 768px) {

.cm-f__top {
    --pb: 30;
    margin-top: 0;
}
  }

.cm-f__topBody {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media screen and (max-width: 768px) {

.cm-f__topBody {
    flex-direction: column;
    align-items: center;
}
  }

@media screen and (max-width: 768px) {

.cm-f__topBodyInfo {
    display: flex;
    flex-direction: column;
    align-items: center;
}
  }

.cm-f__topBodyInfo .logo {
    margin-bottom: calc(18em/16);
  }

.cm-f__topBodyInfo .logo__target {
    display: block;
    width: calc(297em/16);
  }

@media screen and (max-width: 768px) {

.cm-f__topBodyInfo .logo__target {
      width: calc(150em/16);
  }
    }

.cm-f__topBodyInfo .info {
    --sentence-letter-spacing: .93;
  }

@media screen and (max-width: 768px) {

.cm-f__topBodyInfo .info {
      --sentence-fs: 14;
  }
    }

.cm-f__topBodyInfo .info__txt {
    display: inline-block;
  }

.cm-f__topBodyNav {
  display: flex;
  gap: calc(9em/16);
}

@media screen and (max-width: 768px) {

.cm-f__topBodyNav {
    margin-top: calc(16em/16);
    width: 100%;
}
  }

.cm-f__topBodyNav .item__target {
    position: relative;
    display: flex;
    align-items: center;
    gap: calc(10em/16);
    padding: calc(10em/16);
    border: 1px solid currentColor;
    border-radius: calc(10em/16);
  }

.cm-f__topBodyNav .item__targetTxt {
    --sentence-fs: 14;
    --sentence-letter-spacing: .93;
  }

.cm-f__topBodyNav .item__targetArrow {
    width: calc(4em/16);
    height: auto;
    aspect-ratio: 4/8;
  }

.cm-f__btm {
  height: calc(95em/16);
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 768px) {

.cm-f__btm {
    height: calc(60em/16);
}
  }

.cm-f__btmCopy {
  font-size: calc(14em/16);
}

@media (any-hover: hover) {
    .cm-f__topBodyNav .item__target {
      transition: color var(--transition), background-color var(--transition), border-color var(--transition);
    }
      .cm-f__topBodyNav .item__target:hover {
        color: #fff;
        background-color: var(--main-color);
        border-color: transparent;
      }
}

.cm-modalmap {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 99;
  display: flex;
  justify-content: center;
  align-items: center;
  pointer-events: none;
}

:where(html.is-modalopen) .cm-modalmap {
    pointer-events: auto;
  }

.cm-modalmap__main {
  position: relative;
  z-index: 1;
  width: calc(861em/16);
  height: auto;
  aspect-ratio: 861/528;
  filter: drop-shadow(0 0 calc(30em/16) rgba(0, 0, 0, .3));
}

@media screen and (min-width: 769px) and (max-height: 600px) {

.cm-modalmap__main {
    width: calc(861/600*100vh);
}
  }

@media screen and (max-width: 768px) {

.cm-modalmap__main {
    width: calc(355em/16);
    filter: drop-shadow(0 0 calc(20em/16) rgba(0, 0, 0, .25));
}
  }

.cm-modalmap__mainbtn {
  position: absolute;
  top: -.5em;
  right: -.5em;
  z-index: 2;
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(52em/16);
  height: calc(52em/16);
  color: #fff;
  background-color: var(--orange-color);
  border-radius: 100vmax;
  overflow: hidden;
}

@media screen and (max-width: 768px) {

.cm-modalmap__mainbtn {
    top: calc(-62em/16);
    right: 0;
}
  }

.cm-fixedcta {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 98;
  padding: calc(18em/16) 0 calc(26em/16);
  background-color: var(--yellow-color);
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--transition), visibility var(--transition);
}

@media screen and (max-width: 768px) {

.cm-fixedcta {
    padding: calc(7em/16) 0 calc(13em/16);
}
  }

.cm-fixedcta:is(.is-active) {
    opacity: 1;
    visibility: visible;
  }

.cm-fixedcta .c-btn {
    text-align: center;
    font-size: .785714285714286em;
    gap: calc(35em/16);
  }

@media screen and (max-width: 768px) {

.cm-fixedcta .c-btn {
      font-size: .833333333333333em;
  }
    }

.cm-fixedcta .c-btn__txt01 {
    width: calc(99em/22);
  }

@media screen and (max-width: 768px) {

.cm-fixedcta .c-btn__txt01 {
      width: calc(69em/15);
  }
    }

.cm-fixedcta .c-btn__arrow {
    width: calc(29em/13);
  }

@media screen and (max-width: 768px) {

.cm-fixedcta .c-btn__arrow {
      width: calc(23em/13);
  }
    }

/* pages */

.p-mv {
  position: relative;
  font-size: min(1em, calc(16/1350*100vw));
}

@media screen and (max-width: 768px) {

.p-mv {
    font-size: 1em;
    box-shadow: 0px 7px 8px 0px rgba(0, 0, 0, 0.08);
}
  }

.p-mv__body {
  overflow: hidden;
  pointer-events: none;
}

.p-mv__body-inner {
  --pt: 31;
  position: relative;
  z-index: 2;
  padding-top: calc(var(--pt) * 1em/16);
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media screen and (max-width: 768px) {

.p-mv__body-inner {
    --pt: 63;
    z-index: 3;
}
  }

.p-mv__bodyTitle {
  order: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  position: relative;
}

.p-mv__bodyTitleTxt:nth-of-type(1) {
    width: calc(519/1098*100%);
  }

@media screen and (max-width: 768px) {

.p-mv__bodyTitleTxt:nth-of-type(1) {
      width: calc(210em/16);
  }
    }

.p-mv__bodyTitleTxt:nth-of-type(2) {
    position: absolute;
    top: 0;
    margin-top: calc(-13/1098*100%);
    left: calc(-66/1098*100%);
    width: calc(246/1098*100%);
  }

@media screen and (max-width: 768px) {

.p-mv__bodyTitleTxt:nth-of-type(2) {
      margin-top: calc(-32em/16);
      left: calc(-28em/16);
      width: calc(89em/16);
  }
    }

.p-mv__bodyTitleTxt:nth-of-type(3) {
    margin-top: calc(34/1098*100%);
    width: calc(798/1098*100%);
  }

@media screen and (max-width: 768px) {

.p-mv__bodyTitleTxt:nth-of-type(3) {
      margin-top: calc(14em/16);
      width: calc(321em/16);
  }
    }

.p-mv__bodyFlag {
  --mb: 407;
  order: 1;
  width: calc(276em/16);
  margin-bottom: calc(var(--mb) * 1em/16);
  transform-origin: top left;
}

@media screen and (max-width: 768px) {

.p-mv__bodyFlag {
    --mb: 275;
    width: calc(200em/16);
}
  }

.p-mv__bodyFeatureItem {
  position: absolute;
}

.p-mv__bodyFeatureItem .bg {
    position: relative;
    z-index: 0;
  }

.p-mv__bodyFeatureItem .txt {
    position: absolute;
    color: #fff;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

.p-mv__bodyFeatureItem .txt__lineItem {
    --fs: 18;
    font-size: calc(var(--fs) * 1em/16);
    line-height: 1.5;
  }

@media screen and (max-width: 768px) {

.p-mv__bodyFeatureItem .txt__lineItem {
      --fs: 8;
  }
    }

.p-mv__bodyFeatureItem:nth-of-type(1) {
    top: calc(106em/16);
    right: calc(62/1098*100%);
    width: calc(212em/16);
  }

@media screen and (max-width: 768px) {

.p-mv__bodyFeatureItem:nth-of-type(1) {
      top: calc(136em/16);
      right: auto;
      left: calc(-9em/16);
      width: calc(104em/16);
  }
    }

.p-mv__bodyFeatureItem:nth-of-type(1) .txt {
      top: calc(50em/16);
      left: calc(40em/16);
    }

@media screen and (max-width: 768px) {

.p-mv__bodyFeatureItem:nth-of-type(1) .txt {
        top: calc(25em/16);
        left: calc(20em/16);
    }
      }

@media screen and (max-width: 768px) {

.p-mv__bodyFeatureItem:nth-of-type(1) .txt__lineItem {
        line-height: 1;
    }
      }

.p-mv__bodyFeatureItem:nth-of-type(1) .txt__line:nth-of-type(1) .txt__lineItem:nth-of-type(1) {
            --fs: 24;
          }

@media screen and (max-width: 768px) {

.p-mv__bodyFeatureItem:nth-of-type(1) .txt__line:nth-of-type(1) .txt__lineItem:nth-of-type(1) {
              --fs: 14;
          }
            }

.p-mv__bodyFeatureItem:nth-of-type(1) .txt__line:nth-of-type(2) .txt__lineItem {
          --fs: 20;
        }

@media screen and (max-width: 768px) {

.p-mv__bodyFeatureItem:nth-of-type(1) .txt__line:nth-of-type(2) .txt__lineItem {
            --fs: 10;
        }
          }

.p-mv__bodyFeatureItem:nth-of-type(2) {
    top: calc(307em/16);
    right: calc(-57/1098*100%);
    width: calc(231em/16);
  }

@media screen and (max-width: 768px) {

.p-mv__bodyFeatureItem:nth-of-type(2) {
      top: calc(136em/16);
      right: auto;
      left: calc(91em/16);
      width: calc(118em/16);
  }
    }

.p-mv__bodyFeatureItem:nth-of-type(2) .txt {
      top: calc(53em/16);
      left: calc(50em/16);
    }

@media screen and (max-width: 768px) {

.p-mv__bodyFeatureItem:nth-of-type(2) .txt {
        top: calc(22em/16);
        left: calc(23em/16);
    }
      }

@media screen and (max-width: 768px) {

.p-mv__bodyFeatureItem:nth-of-type(2) .txt__lineItem {
        line-height: 1.4;
    }
      }

.p-mv__bodyFeatureItem:nth-of-type(2) .txt__line:nth-of-type(1) .txt__lineItem:nth-of-type(1) {
            --fs: 24;
          }

@media screen and (max-width: 768px) {

.p-mv__bodyFeatureItem:nth-of-type(2) .txt__line:nth-of-type(1) .txt__lineItem:nth-of-type(1) {
              --fs: 14;
          }
            }

.p-mv__bodyFeatureItem:nth-of-type(2) .txt__line:nth-of-type(2) .txt__lineItem:nth-of-type(1) {
            --fs: 24;
          }

@media screen and (max-width: 768px) {

.p-mv__bodyFeatureItem:nth-of-type(2) .txt__line:nth-of-type(2) .txt__lineItem:nth-of-type(1) {
              --fs: 14;
          }
            }

.p-mv__bodyFeatureItem:nth-of-type(2) .txt__line:nth-of-type(3) .txt__lineItem {
          --fs: 20;
        }

@media screen and (max-width: 768px) {

.p-mv__bodyFeatureItem:nth-of-type(2) .txt__line:nth-of-type(3) .txt__lineItem {
            --fs: 12;
        }
          }

.p-mv__cta {
  position: relative;
  margin-top: calc(-98em/16);
  margin-bottom: calc(-43em/16);
  overflow: hidden;
}

@media screen and (max-width: 768px) {

.p-mv__cta {
    margin-top: calc(-98em/16);
    margin-bottom: 0;
    padding-bottom: calc(50em/16);
}
  }

.p-mv__cta::before {
    content: "";
    display: block;
    position: absolute;
    top: 1em;
    left: 0;
    width: 100%;
    height: calc(100% + (-43em/16) - 1em );
    z-index: 0;
    background-color: var(--yellow-color);
  }

@media screen and (max-width: 768px) {

.p-mv__cta::before {
      top: 0;
      height: calc(100% + (98em/16));
  }
    }

.p-mv__ctaBody {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: calc(111em/16);
}

@media screen and (max-width: 768px) {

.p-mv__ctaBody {
    flex-direction: column;
    justify-content: flex-start;
    padding-top: calc(90em/16);
}
  }

.p-mv__ctaBodyTitle {
  width: calc(401/1098*100%);
}

@media screen and (max-width: 768px) {

.p-mv__ctaBodyTitle {
    width: calc(231em/16);
    flex-shrink: 0;
}
  }

.p-mv__ctaBodyBtn {
  flex-shrink: 0;
}

@media screen and (max-width: 768px) {

.p-mv__ctaBodyBtn {
    margin-top: calc(-42em/16);
}
  }

.p-mv__ctaBodyIllust {
  position: absolute;
  top: 0;
  right: calc(-60/1098*100%);
  width: calc(176em/16);
}

@media screen and (max-width: 768px) {

.p-mv__ctaBodyIllust {
    top: calc(112em/16);
    right: calc(6em/16);
    width: calc(70em/16);
}
  }

.p-mv__illust,
.p-mv__slider {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

@media screen and (max-width: 768px) {

.p-mv__illust,
.p-mv__slider {
    overflow: inherit;
}
  }

@media screen and (max-width: 1440px) {

.p-mv__illust-inner {
    --section-wide-width-unit: calc(var(--section-wide-width) * .95em/16);
}
  }

.p-mv__illustItem {
  position: absolute;
  z-index: 2;
}

.p-mv__illustItem:nth-of-type(1) {
    top: 0;
    left: calc(-332/1920*100%);
    width: calc(689em/16);
  }

@media screen and (max-width: 768px) {

.p-mv__illustItem:nth-of-type(1) {
      top: 0;
      left: 0;
      width: calc(125em/16);
  }
    }

.p-mv__illustItem:nth-of-type(2) {
    top: 0;
    right: calc(-356/1920*100%);
    width: calc(827em/16);
  }

@media screen and (max-width: 768px) {

.p-mv__illustItem:nth-of-type(2) {
      top: calc(62em/16);
      right: 0;
      width: calc(104em/16);
  }
    }

.p-mv__illustItem:nth-of-type(3) {
    top: calc(559em/16);
    left: calc(-133/1920*100%);
    width: calc(455em/16);
  }

@media screen and (max-width: 768px) {

.p-mv__illustItem:nth-of-type(3) {
      top: calc(522em/16);
      left: 0;
      width: calc(90em/16);
  }
    }

.p-mv__illustItem:nth-of-type(4) {
    top: calc(760em/16);
    right: calc(-145/1920*100%);
    width: calc(507em/16);
  }

@media screen and (max-width: 768px) {

.p-mv__illustItem:nth-of-type(4) {
      top: calc(680em/16);
      right: 0;
      width: calc(94em/16);
  }
    }

.p-mv__slider {
  --pt: 113;
  padding-top: calc(var(--pt) * 1em/16);
  z-index: 1;
}

@media screen and (max-width: 768px) {

.p-mv__slider {
    --pt: 83;
}
  }

.p-mv__sliderBody {
  width: calc(1772em/16);
  height: calc(765em/16);
  margin: 0 auto;
  mask-image: url("../images/mv-slider-mask-pc.png");
  mask-size: cover;
  mask-repeat: no-repeat;
  mask-position:  center;
}

@media screen and (max-width: 768px) {

.p-mv__sliderBody {
    width: calc(344em/16);
    height: calc(464em/16);
    mask-image: url("../images/mv-slider-mask-sp.png");
}
  }

.p-mv__sliderBodyImg {
  height: calc(765em/16);
}

@media screen and (max-width: 768px) {

.p-mv__sliderBodyImg {
    height: calc(464em/16);
}
  }

.p-mv__sliderBodyImg .img__body {
    height: 100%;
  }

.p-intro {
  position: relative;
}

.p-intro__body {
  --pt: 211;
  padding-top: calc(var(--pt) * 1em/16);
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: 1;
}

@media screen and (max-width: 768px) {

.p-intro__body {
    --pt: 73;
}
  }

.p-intro__title {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  width: calc(685/1098*100%);
  margin-bottom: calc(60em/16);
}

@media screen and (max-width: 768px) {

.p-intro__title {
    width: calc(350/335*100%);
    margin-left: calc(-7.5/335*100%);
    margin-bottom: calc(30em/16);
}
  }

.p-intro__titleTxt {
  display: block;
}

.p-intro__titleTxt:nth-of-type(1) {
    position: absolute;
    top: 0;
    margin-top: calc(-150/685*100%);
    left: calc(-150/685*100%);
    width: calc(340/685*100%);
  }

@media screen and (max-width: 768px) {

.p-intro__titleTxt:nth-of-type(1) {
      position: static;
      margin-top: 0;
      width: calc(150em/16);
      transform: rotate(20deg);
  }
    }

.p-intro__titleTxt:nth-of-type(2) {
    width: calc(471/685*100%);
  }

@media screen and (max-width: 768px) {

.p-intro__titleTxt:nth-of-type(2) {
      width: calc(238em/16);
      margin-top: calc(-35em/16);
  }
    }

.p-intro__titleTxt:nth-of-type(3) {
    width: 100%;
    margin-top: calc(12/685*100%);
  }

@media screen and (max-width: 768px) {

.p-intro__titleTxt:nth-of-type(3) {
      margin-top: calc(6em/16);
  }
    }

.p-intro__bodyNav {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: center;
  gap: calc(20em/16);
}

@media screen and (max-width: 768px) {

.p-intro__bodyNav {
    gap: calc(10em/16);
}
  }

.p-intro__bodyNavItem {
  width: calc(290em/16);
  height: calc(166em/16);
}

@media screen and (max-width: 768px) {

.p-intro__bodyNavItem {
    width: calc(105em/16);
    height: calc(102em/16);
}
  }

.p-intro__bodyNavItem .target {
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #fff;
    border-radius: calc(20em/16);
    border-width: calc(6em/16);
    border-style: solid;
    height: 100%;
    position: relative;
  }

@media screen and (max-width: 768px) {

.p-intro__bodyNavItem .target {
      border-radius: calc(10em/16);
      border-width: calc(3em/16);
  }
    }

.p-intro__bodyNavItem .target__logo {
    text-align: center;
  }

.p-intro__bodyNavItem .target__txt {
    --sentence-fs: 18;
    --sentence-letter-spacing: 2.482;
    margin: calc(14em/18) 0 calc(8em/18);
  }

@media screen and (max-width: 768px) {

.p-intro__bodyNavItem .target__txt {
      --sentence-fs: 12;
      --sentence-letter-spacing: 1.24;
      text-align: center;
      margin: calc(8em/12) 0 calc(6em/12);
  }
    }

.p-intro__bodyNavItem .target__txt .is-sp {
      display: none;
    }

@media screen and (max-width: 768px) {

.p-intro__bodyNavItem .target__txt .is-sp {
        display: block;
    }
      }

.p-intro__bodyNavItem .target__arrow {
    width: 100%;
    height: calc(38em/16);
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    bottom: 0;
    left: 0;
  }

@media screen and (max-width: 768px) {

.p-intro__bodyNavItem .target__arrow {
      height: calc(19em/16);
  }
    }

.p-intro__bodyNavItem .target__arrow svg {
      width: calc(28em/16);
      fill: #fff;
      margin-top: calc(2em/16);
    }

@media screen and (max-width: 768px) {

.p-intro__bodyNavItem .target__arrow svg {
        width: calc(14em/16);
    }
      }

.p-intro__bodyNavItem .target.is-area {
      border-color: #EF54B5;
    }

.p-intro__bodyNavItem .target.is-area .target__logo {
        width: calc(172em/16);
      }

@media screen and (max-width: 768px) {

.p-intro__bodyNavItem .target.is-area .target__logo {
          width: calc(79em/16);
      }
        }

.p-intro__bodyNavItem .target.is-area .target__arrow {
        background-color: #EF54B5;
      }

.p-intro__bodyNavItem .target.is-popular {
      border-color: #5C83E3;
    }

.p-intro__bodyNavItem .target.is-popular .target__logo {
        width: calc(81em/16);
       
      }

@media screen and (max-width: 768px) {

.p-intro__bodyNavItem .target.is-popular .target__logo {
            width: calc(43em/16);
       
      }

          }

.p-intro__bodyNavItem .target.is-popular .target__arrow {
        background-color: #5C83E3;
      }

.p-intro__bodyNavItem .target.is-access {
      border-color: var(--orange-color);
    }

.p-intro__bodyNavItem .target.is-access .target__logo {
        width: calc(108em/16);
      }

@media screen and (max-width: 768px) {

.p-intro__bodyNavItem .target.is-access .target__logo {
          width: calc(64em/16);
          transform: translateY(-0.1em);
      }
        }

.p-intro__bodyNavItem .target.is-access .target__arrow {
        background-color: var(--orange-color);
      }

@media (any-hover: hover) {
    .p-intro__bodyNavItem .target {
      transition: transform var(--transition);
    }
      .p-intro__bodyNavItem .target:hover {
        transform: translate3d(0px, 10px, 0px);
      }
}

.p-intro__txt {
  --sentence-fs: 18;
  --sentence-line-height: 1.8;
  --sentence-letter-spacing: 3;
  width: 100%;
  text-align: center;
  margin-top: calc(54em/18);
}

@media screen and (max-width: 768px) {

.p-intro__txt {
    --sentence-fs: 14;
    --sentence-line-height: 1.7;
    margin-top: calc(30em/14);
}
  }

.p-intro__txt p {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

.p-intro__txt p:not(:first-of-type) {
      margin-top: calc(25em/18);
    }

.p-intro__txt p .is-sp {
      display: none;
    }

@media screen and (max-width: 768px) {

.p-intro__txt p .is-sp {
        display: block;
    }
      }

.p-intro__txtLine {
  position: relative;
}

.p-intro__txtLine::before {
    content: "";
    display: block;
    position: absolute;
    bottom: calc(-10em/18);
    left: 0;
    width: 100%;
    height: calc(11em/18);
    background: url("../images/intor-txt-dash.svg") top left repeat-x;
    background-size: cover;
  }

@media screen and (max-width: 768px) {

.p-intro__txtLine::before {
      display: none;
  }
    }

.p-intro__txtLineTxt {
  color: var(--orange-color);
}

@media screen and (max-width: 768px) {

.p-intro__txtLineTxt {
    display: block;
}
    .p-intro__txtLineTxt:nth-of-type(1) {
      color: var(--main-color);
    }
    .p-intro__txtLineTxt:nth-of-type(2) {
      position: relative;
    }
      .p-intro__txtLineTxt:nth-of-type(2)::before {
        content: "";
        display: block;
        position: absolute;
        bottom: calc(-5em/14);
        left: 0;
        width: 100%;
        height: calc(7em/14);
        background: url("../images/intor-txt-dash.svg") top left repeat-x;
        background-size: cover;
      }
  }

.p-intro__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

@media screen and (max-width: 768px) {

.p-intro__img {
    top: calc(-34em/16);
}
  }

.p-intro__img-inner {
  position: relative;
}

.p-intro__imgItem {
  position: absolute;
}

.p-intro__imgItem:nth-of-type(1) {
    top: calc(267em/16);
    left: calc(-269/1098*100%);
    width: calc(313/1098*100%);
  }

@media screen and (max-width: 768px) {

.p-intro__imgItem:nth-of-type(1) {
      top: 0;
      left: calc(-49em/16);
      width: calc(157em/16);
  }
    }

/*
  &:nth-of-type(2) {
    top: calc(653em/16);
    left: calc(-108/1098*100%);
    width: calc(305/1098*100%);
    @media screen and (--tb) {
      top: calc(668em/16);
      left: calc(-28em/16);
      width: calc(197em/16);
    }
  }
    */

.p-intro__imgItem:nth-of-type(2) {
    top: -1em;
    right: calc(-296/1098*100%);
    width: calc(439/1098*100%);
  }

@media screen and (max-width: 768px) {

.p-intro__imgItem:nth-of-type(2) {
      top: calc(24em/16);
      right: calc(-45em/16);
      width: calc(192em/16);
  }
    }

/*
  &:nth-of-type(4) {
    top: calc(600em/16);
    right: calc(-147/1098*100%);
    width: calc(396/1098*100%);
    @media screen and (--tb) {
      top: calc(640em/16);
      right: calc(-20em/16);
      width: calc(147em/16);
    }
  }
  */

.p-intro__sun {
  position: absolute;
  top: calc(40em/16);
  left: calc(-258/1098*100%);
  width: calc(179em/16);
}

@media screen and (max-width: 1440px) {

.p-intro__sun {
    left: calc(-160/1098*100%);
}
  }

@media screen and (max-width: 768px) {

.p-intro__sun {
    top: calc(9em/16);
    left: 50%;
    width: calc(84em/16);
    margin-left: calc(-42em/16);
}
  }

.p-intro__btm {
  overflow: hidden;
  margin-top: calc(-66em/16);
}

@media screen and (max-width: 768px) {

.p-intro__btm {
    margin-top: 0;
}
  }

.p-intro__btm-inner {
  display: flex;
  justify-content: center;
  height: calc(610em/16);
}

@media screen and (max-width: 768px) {

.p-intro__btm-inner {
    height: calc(233em/16);
}
  }

.p-intro__btmMountain {
  width: calc(346/3000*100%);
  margin-top: calc(213/3000*100%);
}

@media screen and (max-width: 768px) {

.p-intro__btmMountain {
    width: calc(217em/16);
    margin-top: calc(57em/16);
}
  }

.p-intro__btmBody {
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-image: url("../images/threearea-top-bg.svg");
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

@media screen and (max-width: 768px) {

.p-intro__btmBody {
    background-size: cover;
    background-image: url("../images/threearea-top-bg-sp.svg");
}
  }

.p-area__btm {
  overflow: hidden;
}

.p-area {
  --pb: 20;
  background-color: var(--light-green-color);
  position: relative;
  padding-bottom: calc(var(--pb) * 1em/16);
  margin: -1px 0 0;
}

@media screen and (max-width: 768px) {

.p-area {
    --pb: 0;
}
  }

.p-area__body {
  overflow: hidden;
  --mt: -185;
  margin-top: calc(var(--mt) * 1em/16);
}

@media screen and (max-width: 768px) {

.p-area__body {
    --mt: -62;
}
  }

.p-area__body-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}

.p-area__bodyTitle {
  position: relative;
  z-index: 3;
  width: calc(501em/16);
}

@media screen and (max-width: 768px) {

.p-area__bodyTitle {
    width: calc(293em/16);
}
  }

.p-area__bodyList {
  --mt: -63;
  --mlr: 213;
  position: relative;
  z-index: 3;
  display: flex;
  justify-content: space-between;
  margin: calc(var(--mt) * 1em/16) calc(var(--mlr) * -1 /1098*100%) 0;
}

@media screen and (max-width: 1440px) {

.p-area__bodyList {
    --mlr: 213*.5;
}
  }

@media screen and (max-width: 768px) {

.p-area__bodyList {
    --mlr: 0;
    --mt: 30;
    flex-direction: column;
    align-items: center;
    padding-bottom: calc(23em/16);
}
  }

.p-area__bodyListItem {
  --w: 473;
  flex-shrink: 0;
  width: calc( var(--w) /1524*100%);
}

@media screen and (max-width: 1440px) {

.p-area__bodyListItem {
    --w: 473*1.05;
}
  }

@media screen and (max-width: 768px) {

.p-area__bodyListItem {
    width: calc(294em/16);
}
  }

.p-area__bodyListItem .target {
    display: block;
    position: relative;
  }

@media (any-hover: hover) {

.p-area__bodyListItem .target {
      transition: filter var(--transition);
  }
      .p-area__bodyListItem .target:hover {
        filter: brightness(1.2);
      }
    }

.p-area__bodyListItem .target__bg {
    position: relative;
    z-index: 0;
  }

.p-area__bodyListItem .target__txt,
  .p-area__bodyListItem .target__logo,
  .p-area__bodyListItem .target__illust {
    position: absolute;
    z-index: 1;
  }

.p-area__bodyListItem .target__txt,
  .p-area__bodyListItem .target__logo {
    width: 100%;
    top: 0;
    left: 0;
    text-align: center;
  }

.p-area__bodyListItem .target__txt {
    font-size: calc(20em/16);
    letter-spacing: calc(2em/20);
    text-indent: calc(-2em/20);
  }

@media screen and (max-width: 768px) {

.p-area__bodyListItem .target__txt {
      font-size: calc(16em/16);
  }
    }

.p-area__bodyListItem .target__txt {
    margin-top: calc(318/473*100%);
  }

.p-area__bodyListItem .target__illust {
    top: 0;
  }

.p-area__bodyListItem .target__fukidashi {
      position: absolute;
      line-height:1.3;
      display: flex;
      justify-content: center;
      top: 0;
      width: calc(140/473*100%);
      height: calc(84/473*100%);
      filter: drop-shadow(0 0 4px #00000033);
      z-index: 2;
      font-size: calc(14em/16);
      padding-top: calc(23/473*100%);
  }

@media screen and (max-width: 768px) {

.p-area__bodyListItem .target__fukidashi {
        padding-top: calc(10/293*100%);
        font-size: calc(14em/16);
        width: calc(102/293*100%);
        height: calc(62/293*100%);
  }
      }

@media screen and (max-width: 1024px) {

.p-area__bodyListItem .target__fukidashi {
        font-size: calc(12em/16);
  }
      }

.p-area__bodyListItem .target__fukidashi .is-sp {
        display: none;
      }

@media screen and (max-width: 768px) {

.p-area__bodyListItem .target__fukidashi .is-sp {
          display: block;
      }
        }

.p-area__bodyListItem:nth-of-type(1) .target__logo {
      margin: calc(349/473*100%) 0 0 calc(111/473*100%);
    }

.p-area__bodyListItem:nth-of-type(1) .target__logo img {
        width: calc(240/473*100%);
      }

.p-area__bodyListItem:nth-of-type(1) .target__illust {
      margin-top: calc(158/473*100%);
      right: calc(19/473*100%);
      width: calc(72/473*100%);
    }

.p-area__bodyListItem:nth-of-type(1) .target__fukidashi {
      margin-top: calc(67/473*100%);
      left: calc(380/473*100%);
      transform: rotate(17deg);
      background: url('../images/threearea01-fukidashi.svg') no-repeat center center / contain;
    }

@media screen and (max-width: 768px) {

.p-area__bodyListItem:nth-of-type(1) .target__fukidashi {
        left: calc(219/293*100%);
        transform: rotate(-7deg);
    }
      }

.p-area__bodyListItem:nth-of-type(2) {
    margin-top: calc(204em/16);
  }

@media screen and (max-width: 768px) {

.p-area__bodyListItem:nth-of-type(2) {
      margin: calc(20em/16) 0;
  }
    }

.p-area__bodyListItem:nth-of-type(2) .target__logo {
      margin: calc(356/473*100%) 0 0 calc(89/473*100%);
    }

.p-area__bodyListItem:nth-of-type(2) .target__logo img {
        width: calc(254/473*100%);
      }

.p-area__bodyListItem:nth-of-type(2) .target__illust {
      margin-top: calc(243/473*100%);
      left: calc(-35/473*100%);
      width: calc(95/473*100%);
    }

.p-area__bodyListItem:nth-of-type(2) .target__fukidashi {
      margin-top: calc(176/473*100%);
      left: calc(-102/473*100%);
      transform: rotate(-20deg);
      background: url('../images/threearea02-fukidashi.svg') no-repeat center center / contain;
    }

@media screen and (max-width: 768px) {

.p-area__bodyListItem:nth-of-type(2) .target__fukidashi {
        margin-top: calc(91/293*100%);
        left: calc(-36/293*100%);
        transform: rotate(9deg);
    }
      }

.p-area__bodyListItem:nth-of-type(3) .target__logo {
      margin: calc(353/473*100%) 0 0 calc(117/473*100%);
    }

.p-area__bodyListItem:nth-of-type(3) .target__logo img {
        width: calc(228/473*100%);
      }

.p-area__bodyListItem:nth-of-type(3) .target__illust {
      margin-top: calc(343/473*100%);
      right: calc(26/473*100%);
      width: calc(91/473*100%);
    }

.p-area__bodyListItem:nth-of-type(3) .target__fukidashi {
      margin-top: calc(256/473*100%);
      left: calc(356/473*100%);
      transform: rotate(17deg);
      background: url('../images/threearea01-fukidashi.svg') no-repeat center center / contain;
    }

@media screen and (max-width: 768px) {

.p-area__bodyListItem:nth-of-type(3) .target__fukidashi {
        margin-top: calc(146/293*100%);
        left: calc(218/293*100%);
        transform: rotate(14deg);
    }
      }

.p-area__bg {
  --top: -395;
  position: absolute;
  top: calc(var(--top) * 1em/16);
  left: 0;
  width: 100%;
  height: calc(1646em/16);
  overflow: hidden;
}

@media screen and (max-width: 768px) {

.p-area__bg {
    --top: 210;
    height: calc(806em/16);
}
  }

.p-area__bgBody {
  background-repeat: no-repeat;
  background-position: top left;
  background-image: url("../images/threearea-bg-pc.png");
  background-size: cover;
  height: 100%;
}

@media screen and (max-width: 768px) {

.p-area__bgBody {
    background-image: url("../images/threearea-bg-sp.png");
}
  }

.p-popular {
  --body-pb: 73;
  --body-pt: 203;
  position: relative;
  overflow: hidden;
  z-index: 1;
  background: var(--main-bg);
}

@media screen and (max-width: 768px) {

.p-popular {
    --body-pt: 0;
    --body-pb: 20;
}
  }

.p-popular__body {
  padding: calc(var(--body-pt) * 1em/16) 0 calc(var(--body-pb) * 1em/16);
}

.p-popular__bodyTitle {
  text-align: center;
}

@media screen and (max-width: 768px) {

.p-popular__bodyTitle {
    text-align: left;
    margin-left: calc(-5em/16);
    padding-top: calc(15em/16);
}
  }

.p-popular__bodyTitle img {
    width: calc(1162em/16);
  }

@media screen and (max-width: 768px) {

.p-popular__bodyTitle img {
      width: calc(360em/16);
  }
    }

.p-popular__body-inner {
  position: relative;
}

.p-popular__bodyList {
  --mt: 41;
  margin-top: calc(var(--mt) * 1em/16);
}

@media screen and (max-width: 768px) {

.p-popular__bodyList {
    --mt: 20;
}
  }

.p-popular__bodyListBlock {
  width: calc(1509/1098*100%);
  display: flex;
  position: relative;
}

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock {
    width: 100%;
    flex-direction: column-reverse;
}
  }

.p-popular__bodyListBlock .point,
  .p-popular__bodyListBlock .bg {
    position: absolute;
  }

.p-popular__bodyListBlock .point {
    width: calc(113em/16);
    z-index: 1;
  }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock .point {
      width: calc(82em/16);
  }
    }

.p-popular__bodyListBlock .bg {
    z-index: 0;
  }

.p-popular__bodyListBlock .img {
    --bdr: 60;
    flex-basis: calc(960/1509*100%);
    height: calc(378em/16);
    overflow: hidden;
    position: relative;
    z-index: 1;
  }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock .img {
      margin-left: calc(-20em/16);
      width: calc(355em/16);
      height: calc(200em/16);
      flex-basis: auto;
  }
    }

.p-popular__bodyListBlock .txt {
    --mt: 71;
    flex-grow: 1;
    margin-top: calc(var(--mt) * 1em/16);
    display: flex;
    flex-direction: column;
    position: relative;
    z-index: 1;
  }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock .txt {
      --mt: 20;
  }
    }

.p-popular__bodyListBlock .txt__title {
    --sentence-fs: 26;
    background-color: var(--orange-color);
    color: #fff;
    padding: calc(5em/26) 0;
  }

@media screen and (max-width: 1024px) {

.p-popular__bodyListBlock .txt__title {
      --sentence-fs: 24;
  }
    }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock .txt__title {
      --sentence-fs: 22;
      margin-left: calc(-20em/22);
  }
    }

.p-popular__bodyListBlock .txt__body,
  .p-popular__bodyListBlock .info {
    width: calc(500/549*100%);
  }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock .txt__body,
  .p-popular__bodyListBlock .info {
      width: auto;
  }
    }

.p-popular__bodyListBlock .txt__body {
    --sentence-fs: 18;
    margin: calc(15em/18) 0 calc(20em/18);
  }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock .txt__body {
      --sentence-fs: 16;
      margin-left: 0;
  }
    }

.p-popular__bodyListBlock .info {
    border-radius: 0 calc(20em/16) calc(20em/16) calc(20em/16);
    border: calc(3em/16) solid var(--orange-color);
    display: flex;
    justify-content: center;
    background-color: #fff;
    padding: calc(20em/16);
  }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock .info {
      display: block;
      width: 100%;
      padding: calc(15em/16);
  }
    }

.p-popular__bodyListBlock .info__item {
    --ml: 0;
    --mr: 0;
    display: flex;
    flex-direction: column;
  }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock .info__item {
      flex-direction: row;
  }
      .p-popular__bodyListBlock .info__item:not(:first-of-type) {
        margin-top: calc(10em/16);
      }
    }

.p-popular__bodyListBlock .info__item:nth-of-type(2) {
      margin: 0 calc(var(--mr) /500*100%) 0 calc(var(--ml) /500*100%);
    }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock .info__item:nth-of-type(2) {
        margin-top: calc(10em/16);
    }
      }

.p-popular__bodyListBlock .info__itemTitle {
    color: var(--orange-color);
  }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock .info__itemTitle {
      flex-basis: calc(150em/16);
  }
    }

.p-popular__bodyListBlock .info__itemBody {
    display: flex;
    margin-top: calc(6em/15);
  }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock .info__itemBody {
      margin: 0;
  }
    }

.p-popular__bodyListBlock .caution {
    --fs: 14;
    font-size: calc(var(--fs) * 1em/16);
    line-height: 1.5;
    letter-spacing: calc(1.24em/16);
    margin-top: calc(15em/14);
  }

.p-popular__bodyListBlock:nth-of-type(1) {
    margin-right:  calc(-411/1098*100%);
  }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock:nth-of-type(1) {
      margin-right: 0;
  }
    }

.p-popular__bodyListBlock:nth-of-type(1) .img {
      border-top-left-radius: calc(var(--bdr) * 1em/16);
      border-bottom-left-radius: calc(var(--bdr) * 1em/16);
    }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock:nth-of-type(1) .img {
        margin: 0 calc(-20em/16) 0 0;
    }
      }

.p-popular__bodyListBlock:nth-of-type(1) .txt__title {
      width: 100%;
      border-top-left-radius: 100vmax;
      border-bottom-left-radius: 100vmax;
      padding-left: calc(25/549*100%);
    }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock:nth-of-type(1) .txt__title {
        padding-left: calc(24em/22);
        width: calc(355em/22);
        margin-left: 0;
    }
      }

.p-popular__bodyListBlock:nth-of-type(1) .info__item {
      --ml: 20;
      --mr: 20;
    }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock:nth-of-type(1) .info__item {
        --ml: 0;
        --mr: 0;
    }
      }

.p-popular__bodyListBlock:nth-of-type(1) .info__itemBody .icon {
        width: calc(24em/16);
      }

.p-popular__bodyListBlock:nth-of-type(1) .info__itemBody .icon:not(:first-of-type) {
          margin-left: calc(5em/16);
        }

.p-popular__bodyListBlock:nth-of-type(1) .point {
      left: calc(416/1509*100%);
      top: calc(14em/16);
    }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock:nth-of-type(1) .point {
        left: calc(-11em/16);
        top: calc(-11em/16);
    }
      }

.p-popular__bodyListBlock:nth-of-type(1) .bg {
      left: calc(-293/1509*100%);
      top: calc(-80em/16);
      width: calc(375em/16);
    }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock:nth-of-type(1) .bg {
        left: calc(-35em/16);
        top: calc(340em/16);
        width: calc(219em/16);
    }
      }

.p-popular__bodyListBlock:nth-of-type(2) {
    flex-direction: row-reverse;
    justify-content: flex-end;
    margin-left: calc(-411/1098*100%);
    margin-top: calc(50em/16);
  }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock:nth-of-type(2) {
      flex-direction: column-reverse;
      justify-content: flex-start;
      margin-left: 0;
      margin: calc(40em/16) 0 0;
  }
    }

.p-popular__bodyListBlock:nth-of-type(2) .img {
      border-top-right-radius: calc(var(--bdr) * 1em/16);
      border-bottom-right-radius: calc(var(--bdr) * 1em/16);
    }

.p-popular__bodyListBlock:nth-of-type(2) .txt__title {
      width: calc(426/549*100%);
      border-top-right-radius: 100vmax;
      border-bottom-right-radius: 100vmax;
      padding-left: calc(50/549*100%);
    }

@media screen and (max-width: 1024px) {

.p-popular__bodyListBlock:nth-of-type(2) .txt__title {
        width: calc(470/549*100%);
    }
      }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock:nth-of-type(2) .txt__title {
        padding-left: calc(20em/22);
        width: calc(347em/22);
    }
      }

.p-popular__bodyListBlock:nth-of-type(2) .txt__body,
    .p-popular__bodyListBlock:nth-of-type(2) .info {
      align-self: flex-end;
    }

.p-popular__bodyListBlock:nth-of-type(2) .info__item {
      --ml: 50;
      --mr: 50;
    }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock:nth-of-type(2) .info__item {
        --ml: 0;
        --mr: 0;
    }
      }

.p-popular__bodyListBlock:nth-of-type(2) .info__itemBody .icon {
        width: calc(18em/16);
      }

.p-popular__bodyListBlock:nth-of-type(2) .info__itemBody .icon:not(:first-of-type) {
          margin-left: calc(5em/16);
        }

.p-popular__bodyListBlock:nth-of-type(2) .point {
      right: 0;
      top: calc(14em/16);
    }

@media screen and (max-width: 1024px) {

.p-popular__bodyListBlock:nth-of-type(2) .point {
        right: calc(-60/1509*100%);
    }
      }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock:nth-of-type(2) .point {
        right: calc(-11em/16);
        top: calc(-11em/16);
    }
      }

.p-popular__bodyListBlock:nth-of-type(2) .bg {
      right: calc(-190/1509*100%);
      top: calc(102em/16);
      width: calc(326em/16);
    }

@media screen and (max-width: 768px) {

.p-popular__bodyListBlock:nth-of-type(2) .bg {
        right: calc(-35em/16);
        top: calc(178em/16);
        width: calc(142em/16);
    }
      }

.p-popular__bodyIllust {
  position: absolute;
  top: calc(-197em/16);
  left: calc(-207/1098*100%);
  z-index: 3;
  width: calc(216em/16);
}

@media screen and (max-width: 1440px) {

.p-popular__bodyIllust {
    left: calc(-130/1098*100%);
}
  }

@media screen and (max-width: 768px) {

.p-popular__bodyIllust {
    top: 0;
    left: calc(-5em/16);
    width: calc(105em/16);
}
  }

.p-popular__topbg {
  position: absolute;
  top: -1px;
  left: 0;
  width: 100%;
  height: calc(110em/16);
  overflow: hidden;
}

@media screen and (max-width: 768px) {

.p-popular__topbg {
    height: calc(60em/16);
}
  }

.p-popular__topbgBody {
  background-repeat: no-repeat;
  background-position: top left;
  background-image: url("../images/threearea-bottom-bg.png");
  background-size: cover;
  height: 100%;
}

@media screen and (max-width: 768px) {

.p-popular__topbgBody {
    background-position: center;
}
  }

.p-recommend {
  --pt: 102;
  --pb: 150;
  --topbg-h: 130;
  background-color: #fff;
  margin-bottom: -1px;
  position: relative;
  padding: calc(var(--pt) * 1em/16) 0 calc(var(--pb) * 1em/16);
}

@media screen and (max-width: 768px) {

.p-recommend {
    --pt: 45;
    --pb: 75;
    --topbg-h: 45;
}
  }

.p-recommend__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 768px) {

.p-recommend__body {
    z-index: 2;
    align-items: flex-start;
}
  }

.p-recommend__bodyTitle {
  width: calc(540em/16);
  margin-bottom: calc(35em/16);
}

@media screen and (max-width: 768px) {

.p-recommend__bodyTitle {
    width: calc(267em/16);
    margin: 0 0 1em calc(11em/16);
}
  }

.p-recommend__bodyPoint {
  width: 100%;
  display: flex;
}

@media screen and (max-width: 768px) {

.p-recommend__bodyPoint {
    display: block;
}
  }

.p-recommend__bodyPoint:nth-of-type(1) {
    justify-content: flex-end;
  }

.p-recommend__bodyPoint:nth-of-type(2),
  .p-recommend__bodyPoint:nth-of-type(3) {
    margin-top: calc(-85em/16);
  }

@media screen and (max-width: 768px) {

.p-recommend__bodyPoint:nth-of-type(2),
  .p-recommend__bodyPoint:nth-of-type(3) {
      margin-top: calc(21em/16);
  }
    }

.p-recommend__bodyPointBlock {
  flex-basis: calc(486/1098*100%);
  display: flex;
  flex-direction: column;
}

.p-recommend__bodyPointBlock:nth-of-type(2) {
    margin: calc(150em/16) 0 0 calc(52/1098*100%);
  }

@media screen and (max-width: 768px) {

.p-recommend__bodyPointBlock:nth-of-type(2) {
      margin: calc(21em/16) 0 0 0;
  }
    }

.p-recommend__bodyPointBlock .img {
    order: 1;
  }

@media screen and (max-width: 768px) {

.p-recommend__bodyPointBlock .img {
      margin-left: calc(-16.5em/16);
      width: calc(368em/16);
  }
    }

.p-recommend__bodyPointBlock .title,
  .p-recommend__bodyPointBlock .txt {
    margin-left: calc(35/486*100%);
  }

@media screen and (max-width: 768px) {

.p-recommend__bodyPointBlock .title,
  .p-recommend__bodyPointBlock .txt {
      margin-left: 0;
  }
    }

.p-recommend__bodyPointBlock .title {
    --sentence-fs: 26;
    order: 2;
    color: var(--green-color);
    margin-top: calc(-12em/26);
    margin-bottom: calc(20em/26);
    white-space: nowrap;
  }

@media screen and (max-width: 768px) {

.p-recommend__bodyPointBlock .title {
      --sentence-fs: 22;
      white-space: revert;
      text-align: center;
  }
    }

.p-recommend__bodyPointBlock .title .is-sp {
      display: none;
    }

@media screen and (max-width: 768px) {

.p-recommend__bodyPointBlock .title .is-sp {
        display: block;
    }
      }

.p-recommend__bodyPointBlock .txt {
    order: 3;
  }

.p-recommend__bodyPointBlock .txt small {
      font-size: calc(12em/16);
    }

.p-recommend__bodyPointBlock .txt .is-sp {
      display: block;
    }

@media screen and (max-width: 768px) {

.p-recommend__bodyPointBlock .txt .is-sp {
        display: none;
    }
      }

.p-recommend__topbg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(var(--topbg-h) * 1em/16);
  overflow: hidden;
  z-index: 2;
}

.p-recommend__topbgBody {
  background-repeat: no-repeat;
  background-position: top left;
  background-image: url("../images/recommend-top-bg.png");
  background-size: cover;
  height: 100%;
}

@media screen and (max-width: 768px) {

.p-recommend__topbgBody {
    background-position: center;
}
  }

.p-recommend__btmbg {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: calc(128em/16);
  overflow: hidden;
  z-index: 1;
}

@media screen and (max-width: 768px) {

.p-recommend__btmbg {
    height: calc(45em/16);
}
  }

.p-recommend__btmbgBody {
  background-repeat: no-repeat;
  background-position: top left;
  background-image: url("../images/recommend-btm-bg.png");
  background-size: cover;
  height: 100%;
}

@media screen and (max-width: 768px) {

.p-recommend__btmbgBody {
    background-position: center;
}
  }

.p-recommend__bgTop {
  position: absolute;
  top: calc(-115em/16);
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

@media screen and (max-width: 768px) {

.p-recommend__bgTop {
    top: calc(-50em/16);
}
  }

.p-recommend__bgTop-inner {
  height: 100%;
}

.p-recommend__bgTopBg {
  width: calc(1125em/16);
  position: absolute;
  top: calc(115em/16);
  right: calc(-436/1920*100%);
  z-index: 1;
}

@media screen and (max-width: 768px) {

.p-recommend__bgTopBg {
    top: calc(60em/16);
    width: calc(309em/16);
    right: calc(-147em/16);
}
  }

.p-recommend__bgTopTree {
  width: calc(485em/16);
  position: absolute;
  top: 0;
  right: calc(-62/1920*100%);
  z-index: 2;
}

@media screen and (max-width: 1440px) {

.p-recommend__bgTopTree {
    right: calc(12/1920*100%);
}
  }

@media screen and (max-width: 768px) {

.p-recommend__bgTopTree {
    width: calc(178em/16);
    right: calc(-58em/16);
}
  }

.p-recommend__bgBtm {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.p-recommend__bgBtm-inner {
  height: 100%;
}

.p-recommend__bgBtmBg {
  position: absolute;
  bottom: 0;
  left: calc(-296/1920*100%);
  width: calc(1125em/16);
}

@media screen and (max-width: 768px) {

.p-recommend__bgBtmBg {
    bottom: 0;
    left: calc(-133em/16);
    width: calc(309em/16);
}
  }

.p-recommend__bgBtmFlower {
  position: absolute;
  left: calc(-103/1920*100%);
  bottom: calc(265em/16);
  width: calc(504em/16);
}

@media screen and (max-width: 1440px) {

.p-recommend__bgBtmFlower {
    left: calc(-13/1920*100%);
}
  }

@media screen and (max-width: 768px) {

.p-recommend__bgBtmFlower {
    display: none;
}
  }

.p-attraction {
  --pt: 239;
  --pb: 130;
  position: relative;
  padding: calc(var(--pt) * 1em/16) 0 calc(var(--pb) * 1em/16);
  background: var(--main-bg);
}

@media screen and (max-width: 768px) {

.p-attraction {
    --pt: 32;
    --pb: 33;
}
  }

.p-attraction__tree {
  overflow: hidden;
  margin-top: calc(-440em/16);
  position: sticky;
  top: calc(-280em/16);
  z-index: 2;
  pointer-events: none;
}

@media screen and (max-width: 768px) {

.p-attraction__tree {
    position: absolute;
    top: calc(-90em/16);
    left: 0;
    margin-top: 0;
}
  }

.p-attraction__treeBodyBg {
  width: calc(618em/16);
  margin-left: calc(-155/1920*100%);
}

@media screen and (max-width: 1440px) {

.p-attraction__treeBodyBg {
    margin-left: calc(-100/1920*100%);
}
  }

@media screen and (max-width: 768px) {

.p-attraction__treeBodyBg {
    width: calc(173em/16);
    margin-left: calc(-40em/16);
}
  }

.p-attraction__body {
  --section-width: 1340;
  margin-top: calc(-420em/16);
}

@media screen and (max-width: 768px) {

.p-attraction__body {
    margin-top: 0;
}
  }

.p-attraction__bodyTitle {
  width: calc(906em/16);
  margin: 0 auto calc(60em/16);
}

@media screen and (max-width: 768px) {

.p-attraction__bodyTitle {
    width: calc(360em/16);
    margin-left: calc(-12.5em/16);
    margin-bottom: calc(30em/16);
}
  }

.p-attraction__bodyNav {
  display: flex;
  justify-content: center;
  gap: calc(20em/16);
}

@media screen and (max-width: 768px) {

.p-attraction__bodyNav {
    gap: calc(10em/16);
}
  }

.p-attraction__bodyNavItem {
  width: calc(290em/16);
  height: calc(166em/16);
}

@media screen and (max-width: 768px) {

.p-attraction__bodyNavItem {
    width: calc(105em/16);
    height: calc(102em/16);
}
  }

.p-attraction__bodyNavItem .target {
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #fff;
    border-radius: calc(20em/16);
    border-width: calc(6em/16);
    border-style: solid;
    height: 100%;
    position: relative;
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyNavItem .target {
      border-radius: calc(10em/16);
      border-width: calc(3em/16);
  }
    }

.p-attraction__bodyNavItem .target__txt {
    --sentence-fs: 18;
    --sentence-letter-spacing: 2.482;
    margin: calc(14em/18) 0 calc(8em/18);
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyNavItem .target__txt {
      --sentence-fs: 12;
      --sentence-letter-spacing: 1.24;
      text-align: center;
      margin: calc(8em/12) 0 calc(6em/12);
  }
    }

.p-attraction__bodyNavItem .target__txt .is-sp {
      display: none;
    }

@media screen and (max-width: 768px) {

.p-attraction__bodyNavItem .target__txt .is-sp {
        display: block;
    }
      }

.p-attraction__bodyNavItem .target__arrow {
    width: 100%;
    height: calc(38em/16);
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    bottom: 0;
    left: 0;
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyNavItem .target__arrow {
      height: calc(19em/16);
  }
    }

.p-attraction__bodyNavItem .target__arrow svg {
      width: calc(28em/16);
      fill: #fff;
      margin-top: calc(2em/16);
    }

@media screen and (max-width: 768px) {

.p-attraction__bodyNavItem .target__arrow svg {
        width: calc(14em/16);
    }
      }

.p-attraction__bodyNavItem .target.is-forestpark {
      border-color: var(--forestpark-color);
    }

.p-attraction__bodyNavItem .target.is-forestpark .target__logo {
        width: calc(172em/16);
      }

@media screen and (max-width: 768px) {

.p-attraction__bodyNavItem .target.is-forestpark .target__logo {
          width: calc(79em/16);
      }
        }

.p-attraction__bodyNavItem .target.is-forestpark .target__arrow {
        background-color: var(--forestpark-color);
      }

.p-attraction__bodyNavItem .target.is-jukanomori {
      border-color: var(--juka-color);
    }

.p-attraction__bodyNavItem .target.is-jukanomori .target__logo {
        width: calc(204em/16);
      }

@media screen and (max-width: 768px) {

.p-attraction__bodyNavItem .target.is-jukanomori .target__logo {
          width: calc(91em/16);
      }
        }

.p-attraction__bodyNavItem .target.is-jukanomori .target__arrow {
        background-color: var(--juka-color);
      }

.p-attraction__bodyNavItem .target.is-doggy {
      border-color: var(--doggy-color);
    }

.p-attraction__bodyNavItem .target.is-doggy .target__logo {
        width: calc(205em/16);
      }

@media screen and (max-width: 768px) {

.p-attraction__bodyNavItem .target.is-doggy .target__logo {
          width: calc(77em/16);
      }
        }

.p-attraction__bodyNavItem .target.is-doggy .target__arrow {
        background-color: var(--doggy-color);
      }

@media (any-hover: hover) {
    .p-attraction__bodyNavItem .target {
      transition: transform var(--transition);
    }
      .p-attraction__bodyNavItem .target:hover {
        transform: translate3d(0px, 10px, 0px);
      }
}

.p-attraction__bodyIllust {
  display: flex;
  justify-content: flex-end;
  margin: calc(-137em/16) 0 calc(-85em/16);
  position: sticky;
  top: calc(10em/16);
  left: 0;
  z-index: 3;
  pointer-events: none;
}

@media screen and (max-width: 768px) {

.p-attraction__bodyIllust {
    margin: 1em 0 calc(-119em/16);
    position: relative;
    top: auto;
}
  }

.p-attraction__bodyIllustBody {
  width: calc(150em/16);
  margin-right: calc(-60em/16);
}

@media screen and (max-width: 1440px) {

.p-attraction__bodyIllustBody {
    margin-right: calc(-90em/16);
}
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyIllustBody {
    width: calc(66em/16);
    margin-right: calc(22em/16);
}
  }

.p-attraction__bodyMainBlock {
  --pt: 0;
  --pb: 0;
  border-width: calc(10em/16);
  border-style: solid;
  border-radius: calc(60em/16);
  background-color: #fff;
  padding: calc(var(--pt) * 1em/16) calc(111/1340*100%) calc(var(--pb) * 1em/16);
}

@media screen and (max-width: 1440px) {

.p-attraction__bodyMainBlock {
    padding-left: calc(50/1340*100%);
    padding-right: calc(50/1340*100%);
}
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock {
    border-width: calc(4em/16);
    border-radius: calc(10em/16);
}
  }

.p-attraction__bodyMainBlock .title {
    --mb: 62;
    margin: 0 auto calc(var(--mb) * 1em/16);
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .title {
      --mb: 25;
  }
    }

.p-attraction__bodyMainBlock .main {
    display: flex;
    justify-content: space-between;
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .main {
      display: block;
  }
    }

.p-attraction__bodyMainBlock .main__block {
    flex-basis: calc(523/1098*100%);
    position: relative;
    min-height: calc(488em/16);
    display: flex;
    align-items: flex-end;
    padding: calc(10em/16);
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .main__block {
      min-height: auto;
      padding-top: calc(145em/16);
  }
      .p-attraction__bodyMainBlock .main__block:not(:first-of-type) {
        margin-top: calc(20em/16);
      }
    }

.p-attraction__bodyMainBlock .main__blockBody {
    position: relative;
    z-index: 1;
    width: 100%;
    border-radius: calc(10em/16);
    background-color: #fff;
    overflow: hidden;
    padding-bottom: calc(20em/16);
  }

.p-attraction__bodyMainBlock .main__blockBodyTitle {
    --sentence-fs: 24;
    background-color: #eb9617;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    height: calc(43em/24);
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .main__blockBodyTitle {
      --sentence-fs: 20;
      height: calc(43em/20);
  }
    }

.p-attraction__bodyMainBlock .main__blockBodyTxt,
  .p-attraction__bodyMainBlock .main__blockBodyInfo {
    margin-left: calc(18em/16);
    margin-right: calc(18em/16);
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .main__blockBodyTxt,
  .p-attraction__bodyMainBlock .main__blockBodyInfo {
      margin-left: calc(10em/16);
      margin-right: calc(10em/16);
  }
    }

.p-attraction__bodyMainBlock .main__blockBodyTxt {
    margin-top: calc(7em/16);
  }

.p-attraction__bodyMainBlock .main__blockBodyInfo {
    border-radius: 0px calc(20em/16);
    border: 2px solid var(--orange-color);
    margin-top: calc(20em/16);
    padding: calc(10em/16) calc(20em/16);
  }

@media screen and (max-width: 1440px) {

.p-attraction__bodyMainBlock .main__blockBodyInfo {
      padding-left: calc(10em/16);
      padding-right: calc(10em/16);
  }
    }

.p-attraction__bodyMainBlock .main__blockBodyInfoListItemTitle,
  .p-attraction__bodyMainBlock .main__blockBodyInfoListItemTxt {
    --sentence-fs: 12;
  }

.p-attraction__bodyMainBlock .main__blockBodyInfoListItemTitle {
    color: var(--orange-color);
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .main__blockBodyInfoListItemTitle {
  }
    }

.p-attraction__bodyMainBlock .main__blockBodyInfoList {
    display: flex;
    justify-content: space-between;
    gap: calc(10em/16);
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .main__blockBodyInfoList {
      display: block;
  }
    }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .main__blockBodyInfoListItem {
      display: flex;
      justify-content: space-between;
  }
      .p-attraction__bodyMainBlock .main__blockBodyInfoListItem:not(:first-of-type) {
        margin-top: calc(10em/16);
      }
    }

.p-attraction__bodyMainBlock .main__blockBodyInfoListItemTxtIcon {
    display: flex;
    gap: calc(3em/12);
    margin-top: calc(3em/12);
  }

.p-attraction__bodyMainBlock .main__blockBodyCaution {
    position: absolute;
    bottom: calc(7em/10);
    left: calc(18em/10);
    font-size: calc(10em/16);
    letter-spacing: calc(1.241em/10);
  }

.p-attraction__bodyMainBlock .main__blockBg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    border-radius: calc(10em/16);
    overflow: hidden;
  }

.p-attraction__bodyMainBlock .main__blockBg img {
      object-fit: cover;
      height: 100%;
    }

.p-attraction__bodyMainBlock .main__blockPoint {
    position: absolute;
    width: calc(113em/16);
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .main__blockPoint {
      width: calc(82em/16);
  }
    }

.p-attraction__bodyMainBlock .main__block:nth-of-type(1) .main__blockPoint {
        top: calc(-10em/16);
        left: calc(-30em/16);
      }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .main__block:nth-of-type(1) .main__blockPoint {
          left: calc(-10em/16);
      }
        }

.p-attraction__bodyMainBlock .main__block:nth-of-type(2) .main__blockPoint {
        top: calc(-10em/16);
        right: calc(-30em/16);
      }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .main__block:nth-of-type(2) .main__blockPoint {
          right: calc(-10em/16);
      }
        }

.p-attraction__bodyMainBlock .main__blockInfo {
    position: absolute;
    top: calc(20em/18);
    left: calc(20em/18);
    background-color: #fff;
    border-radius: 100vmax;
    font-size: calc(18em/16);
    height: calc(27em/18);
    width: calc(74em/18);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--orange-color);
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .main__blockInfo {
      top: calc(8em/15);
      left: auto;
      right: calc(8em/15);
      font-size: calc(15em/16);
      height: calc(23em/15);
      width: calc(65em/15);
  }
    }

.p-attraction__bodyMainBlock .other {
    margin-top: calc(50em/16);
    border-radius: calc(30em/16);
    overflow: hidden;
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .other {
      border-radius: calc(10em/16);
  }
    }

.p-attraction__bodyMainBlock .other__title {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    background-color: var(--green-color);
    color: #fff;
    height: calc(85em/16);
    pointer-events: none;
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .other__title {
      height: calc(43em/16);
      pointer-events: auto;
  }
    }

.p-attraction__bodyMainBlock .other__titleArrow {
    display: none;
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .other__titleArrow {
      display: block;
      position: absolute;
      top: 50%;
      right: calc(18em/16);
      width: calc(14em/16);
      margin-top: calc(-4em/16);
      transition: transform .2s;
  }
      .p-attraction__bodyMainBlock .other__titleArrow svg {
        fill: #fff;
      }
      .other.is-open :is(.p-attraction__bodyMainBlock .other__titleArrow) {
        transform: rotate(180deg);
      }
    }

.p-attraction__bodyMainBlock .other__titleBody {
    --sentence-fs: 21;
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .other__titleBody {
      --sentence-fs: 16;
  }
    }

.p-attraction__bodyMainBlock .other__body {
    border: calc(5em/16) solid var(--green-color);
    border-top: 0;
    border-bottom-left-radius: calc(30em/16);
    border-bottom-right-radius: calc(30em/16);
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .other__body {
      border-bottom-left-radius: calc(10em/16);
      border-bottom-right-radius: calc(10em/16);
      border: calc(3em/16) solid var(--green-color);
      height: 0;
  }
    }

.p-attraction__bodyMainBlock .other__bodyNotes {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: calc(10em/16);
    padding-top: calc(31/1098*100%);

  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .other__bodyNotes {
      padding-top: calc(10em/16);

  }
    }

.p-attraction__bodyMainBlock .other__bodyNotesIcon svg {
      width: calc(19em/16);
    }

.p-attraction__bodyMainBlock .other__bodyNotesTxt {
    font-size: calc(14em/16);
    font-weight: 500;
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .other__bodyNotesTxt {
      font-size: calc(10em/16);
  }
    }

.p-attraction__bodyMainBlock .other__bodyNotesTxt .is-sp {
      display: none;
    }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .other__bodyNotesTxt .is-sp {
        display: block;
    }
      }

.p-attraction__bodyMainBlock .other__bodyList {
    padding: calc(31/1098*100%);
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 0 0 calc(-20/1036*100%) calc(-20/1036*100%);
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .other__bodyList {
      padding: calc(15em/16);
      margin: 0 0 calc(-10em/16) calc(-10em/16);
      justify-content: flex-start;
  }
    }

.p-attraction__bodyMainBlock .other__bodyListItem {
    flex-basis: calc(156/1056*100%);
    margin: 0 0 calc(20/1056*100%) calc(20/1056*100%);
    display: flex;
    flex-direction: column-reverse;
    justify-content: flex-end;
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .other__bodyListItem {
      flex-basis: calc(120em/16);
      margin: 0 0 calc(10em/16) calc(10em/16);
  }
    }

.p-attraction__bodyMainBlock .other__bodyListItemTitle {
    --sentence-fs: 14;
    --sentence-line-height: 1.1;
    --sentence-letter-spacing: 0;
    text-align: center;
    margin-top: calc(5em/14);
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .other__bodyListItemTitle {
      --sentence-fs: 12;
  }
    }

.p-attraction__bodyMainBlock .other__bodyListItemTitle .is-small {
      font-size: calc(10em/14);
    }

.p-attraction__bodyMainBlock .other__bodyListItemImg {
    position: relative;
    border-radius: calc(10em/16);
    overflow: hidden;
  }

.p-attraction__bodyMainBlock .other__bodyListItemImg svg {
      position: absolute;
      top: calc(5em/16);
      right: calc(5em/16);
      width: calc(30em/16);
    }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .other__bodyListItemImg svg {
        width: calc(25em/16);
    }
      }

.p-attraction__bodyMainBlock .caution {
    --sentence-fs: 14;
  }

.p-attraction__bodyMainBlock .caution.is-pc {
      margin-top: calc(20em/14);
    }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .caution.is-pc {
        display: none;
    }
      }

.p-attraction__bodyMainBlock .caution.is-sp {
      display: none;
    }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock .caution.is-sp {
        --sentence-fs: 10;
        display: block;
        padding:  0 calc(22em/10) calc(14em/10);
        font-weight: 500;
        margin: calc(-16em/10) 0 0 1em;
        text-indent: -1em;
    }
      }

.p-attraction__bodyMainBlock:not(:first-of-type) {
    margin-top: calc(50em/16);
  }

.p-attraction__bodyMainBlock.is-forestpark {
    --pt: 50;
    --pb: 90;
    border-color: var(--forestpark-color);
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock.is-forestpark {
      --pt: 25;
      --pb: 20;
  }
    }

.p-attraction__bodyMainBlock.is-forestpark .title {
      width: calc(362em/16);
    }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock.is-forestpark .title {
        width: calc(142em/16);
    }
      }

.p-attraction__bodyMainBlock.is-forestpark .main__block:nth-of-type(1) .main__blockBodyInfoListItemTxtIcon li {
            width: calc(21em/12);
          }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock.is-forestpark .main__block:nth-of-type(1) .main__blockBodyInfoListItemTxtIcon li {
              width: calc(15em/12);
          }
            }

.p-attraction__bodyMainBlock.is-forestpark .main__block:nth-of-type(2) .main__blockBodyInfoListItemTxtIcon li {
            width: calc(14em/12);
          }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock.is-forestpark .main__block:nth-of-type(2) .main__blockBodyInfoListItemTxtIcon li {
              width: calc(13em/12);
          }
            }

.p-attraction__bodyMainBlock.is-jukanomori {
    --pt: 58;
    --pb: 80;
    border-color: var(--juka-color);
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock.is-jukanomori {
      --pt: 30;
      --pb: 20;
  }
    }

.p-attraction__bodyMainBlock.is-jukanomori .title {
      width: calc(425em/16);
    }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock.is-jukanomori .title {
        width: calc(187em/16);
    }
      }

.p-attraction__bodyMainBlock.is-jukanomori .main__blockBodyInfoListItemTxtIcon li {
        width: calc(13em/12);
      }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock.is-jukanomori .main__blockBodyInfoListItemTxtIcon li {
          width: calc(10em/12);
      }
        }

.p-attraction__bodyMainBlock.is-doggy {
    --pt: 58;
    --pb: 90;
    border-color: var(--doggy-color);
  }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock.is-doggy {
      --pt: 25;
      --pb: 20;
  }
    }

.p-attraction__bodyMainBlock.is-doggy .title {
      width: calc(351em/16);
    }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock.is-doggy .title {
        width: calc(157em/16);
    }
      }

.p-attraction__bodyMainBlock.is-doggy .main__block:nth-of-type(1) .main__blockBodyInfoListItemTxtIcon li {
            width: calc(18em/12);
          }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock.is-doggy .main__block:nth-of-type(1) .main__blockBodyInfoListItemTxtIcon li {
              width: calc(13em/12);
          }
            }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock.is-doggy .main__block:nth-of-type(1) .main__blockPoint {
            left: auto;
            right: calc(-10em/16);
        }
          }

.p-attraction__bodyMainBlock.is-doggy .main__block:nth-of-type(2) .main__blockBodyInfoListItemTxtIcon li {
            width: calc(21em/12);
          }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock.is-doggy .main__block:nth-of-type(2) .main__blockBodyInfoListItemTxtIcon li {
              width: calc(16em/12);
          }
            }

@media screen and (max-width: 768px) {

.p-attraction__bodyMainBlock.is-doggy .main__block:nth-of-type(2) .main__blockPoint {
            right: auto;
            left: calc(-10em/16);
        }
          }

.p-access {
  --pt: 120;
  --pb: 0;
  position: relative;
  padding: calc(var(--pt) * 1em/16) 0 calc(var(--pb) * 1em/16);
  /* margin-top: -1px; */
  background-color: var(--light-green-color);
}

@media screen and (max-width: 768px) {

.p-access {
    --pt: 60;
}
  }

.p-access-inner {
  position: relative;
  z-index: 2;
}

.p-access__head {
  position: relative;
}

.p-access__headTitle {
  position: relative;
  z-index: 2;
  margin: 0 auto;
  width: calc(510em/16);
}

@media screen and (max-width: 768px) {

.p-access__headTitle {
    width: calc(300em/16);
}
  }

.p-access__headList {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: calc(20em/16);
  margin-top: calc(-24em/16);
}

@media screen and (max-width: 768px) {

.p-access__headList {
    gap: calc(10em/16);
    margin-top: calc(30em/16);
}
  }

.p-access__headListItem .target {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: calc(250em/16);
    height: calc(166em/16);
    background-color: #fff;
    border: 6px solid var(--orange-color);
    border-radius: calc(20em/16);
  }

@media screen and (max-width: 768px) {

.p-access__headListItem .target {
      width: calc(105em/16);
      height: calc(83em/16);
      border-width: 3px;
      overflow: hidden;
  }
    }

.p-access__headListItem .target__body {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

.p-access__headListItem .target__bodyTxt {
    --sentence-fs: 20;
    --sentence-letter-spacing: 2.48;
  }

@media screen and (max-width: 768px) {

.p-access__headListItem .target__bodyTxt {
      --sentence-fs: 12;
      --sentence-letter-spacing: 1.24;
  }
    }

.p-access__headListItem .target__bodyIcon {
    margin-top: calc(5em/16);
  }

@media screen and (max-width: 768px) {

.p-access__headListItem .target__bodyIcon {
      margin-top: calc(1em/16);
  }
    }

:where(.p-access__headListItem.is-route) :is(.p-access__headListItem .target__bodyIcon) {
      margin-top: calc(6em/16);
      width: calc(78em/16);
    }

@media screen and (max-width: 768px) {

:where(.p-access__headListItem.is-route) :is(.p-access__headListItem .target__bodyIcon) {
        margin-top: calc(1em/16);
        width: calc(35em/16);
    }
      }

:where(.p-access__headListItem.is-schedule) :is(.p-access__headListItem .target__bodyIcon) {
      width: calc(58em/16);
    }

@media screen and (max-width: 768px) {

:where(.p-access__headListItem.is-schedule) :is(.p-access__headListItem .target__bodyIcon) {
        width: calc(25em/16);
    }
      }

:where(.p-access__headListItem.is-price) :is(.p-access__headListItem .target__bodyIcon) {
      width: calc(58em/16);
    }

@media screen and (max-width: 768px) {

:where(.p-access__headListItem.is-price) :is(.p-access__headListItem .target__bodyIcon) {
        width: calc(27em/16);
    }
      }

.p-access__headListItem .target__arrow {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: calc(38em/16);
    color: #fff;
    background-color: var(--orange-color);
  }

@media screen and (max-width: 768px) {

.p-access__headListItem .target__arrow {
      height: calc(19em/16);
  }
    }

.p-access__headListItem .target__arrowBody {
    width: calc(28em/16);
  }

@media screen and (max-width: 768px) {

.p-access__headListItem .target__arrowBody {
      width: calc(14em/16);
  }
    }

.p-access__headIllustItem {
  position: absolute;
  z-index: 3;
  top: 0;
}

.p-access__headIllustItem:nth-of-type(1) {
    left: 0;
    margin: calc(40em/16) auto 0 calc(189/var(--section-width)*100%);
    width: calc(138em/16);
  }

@media screen and (max-width: 880px) {

.p-access__headIllustItem:nth-of-type(1) {
      margin: calc(40em/16) auto 0 calc(189/var(--section-width)*70%);
  }
    }

@media screen and (max-width: 768px) {

.p-access__headIllustItem:nth-of-type(1) {
      margin: calc(-60em/16) auto 0 calc(90/335*100%);
      width: calc(68em/16);
  }
    }

.p-access__headIllustItem:nth-of-type(2) {
    right: 0;
    margin: calc(-16em/16) calc(174/var(--section-width)*100%) 0 auto;
    width: calc(159em/16);
  }

@media screen and (max-width: 880px) {

.p-access__headIllustItem:nth-of-type(2) {
      margin: calc(-16em/16) calc(174/var(--section-width)*70%) 0 auto;
  }
    }

@media screen and (max-width: 768px) {

.p-access__headIllustItem:nth-of-type(2) {
      margin: calc(-44em/16) calc(-16/335*100%) 0 auto;
      width: calc(82em/16);
  }
    }

.p-access__headTree {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  margin: calc(-201em/16) auto 0 calc(-122/var(--section-width)*100%);
  width: calc(306em/16);
}

@media screen and (max-width: 768px) {

.p-access__headTree {
    z-index: 1;
    margin: calc(-60em/16) auto 0 calc(-21/335*100%);
    width: calc(85em/16);
}
  }

.p-access__list {
  display: flex;
  flex-direction: column;
  gap: calc(50em/16);
  margin: calc(48em/16) calc(-121/var(--section-width)*100%) 0;
}

@media screen and (max-width: 1440px) {

.p-access__list {
    margin: calc(48em/16) calc(-81/var(--section-width)*100%) 0;
}
  }

@media screen and (max-width: 1024px) {

.p-access__list {
    margin: calc(48em/16) calc(-61/var(--section-width)*100%) 0;
}
  }

@media screen and (max-width: 768px) {

.p-access__list {
    gap: calc(30em/16);
    margin: calc(30em/16) 0 0;
}
  }

.p-access__listBlock {
  position: relative;
  z-index: 1;
  background-color: #fff;
  border-radius: calc(60em/16);
  /* overflow: hidden; */
}

@media screen and (max-width: 768px) {

.p-access__listBlock {
    border-radius: calc(10em/16);
}
  }

.p-access__listBlockTitle {
  margin: 0 auto;
  width: calc(583em/16);
}

@media screen and (max-width: 768px) {

.p-access__listBlockTitle {
    width: calc(267em/16);
}
  }

.p-access__listBlock-inner {
  margin: 0 auto;
  width: calc(1098/1340*100%);
}

@media screen and (max-width: 1440px) {

.p-access__listBlock-inner {
    width: calc(1098/1260*100%);
}
  }

@media screen and (max-width: 1024px) {

.p-access__listBlock-inner {
    width: calc(1098/1220*100%);
}
  }

@media screen and (max-width: 768px) {

.p-access__listBlock-inner {
    /* width: calc(295/335*100%); */
    width: 100%;
    /* overflow: visible; */
}
  }

.p-access__road {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: hidden;
}

.p-access__road-inner {
  position: relative;
}

.p-access__roadBody {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  margin: calc(20em/16) calc(-238/var(--section-width)*100%) 0 auto;
  width: calc(500em/16);
}

@media screen and (max-width: 768px) {

.p-access__roadBody {
    margin: calc(18em/16) calc(-65/335*100%) 0 auto;
    width: calc(227em/16);
}
  }

.p-access__bg {
  --top: 516;
  position: absolute;
  top: calc(var(--top) * 1em/16);
  left: 0;
  width: 100%;
  height: calc(2694em/16);
  z-index: 0;
  overflow: hidden;
}

@media screen and (max-width: 768px) {

.p-access__bg {
    height: calc(806em/16);
}
  }

.p-access__bgBody {
  background-repeat: no-repeat;
  background-position: top left;
  background-image: url("../images/access-bg.png");
  background-size: cover;
  height: 100%;
}

.p-access__topbg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: calc(130em/16);
  overflow: hidden;
}

.p-access__topbgBody {
  background-repeat: no-repeat;
  background-position: top left;
  background-image: url("../images/access-top-bg.png");
  background-size: cover;
  height: 100%;
}

@media (any-hover: hover) {
    .p-access__headListItem .target {
      transition: transform var(--transition);
    }
      .p-access__headListItem .target:hover {
        transform: translateY(calc(6em/16));
      }
}

/* page module */

.pm-accesstable {
  position: relative;
  display: block;
  border: 1px solid var(--orange-color);
  border-radius: calc(4em/16);
  overflow: hidden;
}

.pm-accesstable table {
    table-layout: auto;
    width: 100%;
    text-align: center;
  }

.pm-accesstable tr:nth-child(1) {
      background: var(--orange-color);
    }

.pm-accesstable tr:not(:first-child) {
      border-top: 1px solid #febd5b;
    }

.pm-accesstable th,
  .pm-accesstable td {
    width: 33.3%;
  }

.pm-accesstable th {
    padding: calc(10em/16);
    line-height: 1.3;
    color: #fff;
  }

.pm-accesstable th:not(:first-child) {
      border-left: 1px solid #febd5b;
    }

.pm-accesstable td {
    padding: calc(10em/14);
    line-height: 1.3;
    font-size: calc(14em/16);
  }

.pm-accesstable td:not(:first-child) {
      border-left: 1px solid #febd5b;
    }

.pm-accesstable td img {
      display: block;
      margin: 0 auto;
      width: calc(125em/14);
    }

.pm-accesstable .alignleft {
    text-align: left;
  }

.p-access__listRoute {
  padding: calc(51em/16) 0 calc(66em/16);
}

@media screen and (max-width: 768px) {

.p-access__listRoute {
    padding: calc(23em/16) 0 calc(20em/16);
}
  }

.p-access__listRouteMap {
  margin-top: calc(40em/16);
  display: flex;
  gap: calc(30/var(--section-width)*100%);
}

@media screen and (max-width: 768px) {

.p-access__listRouteMap {
    margin-top: calc(30em/16);
    display: block;
    /* margin: calc(30em/16) auto 0;
    width: calc(295/335*100%); */
}
  }

.p-access__listRouteMap .main {
    flex: 1;
  }

@media screen and (max-width: 768px) {

.p-access__listRouteMap .main {
      margin: 0 auto;
      width: calc(295/335*100%);
  }
    }

.p-access__listRouteMap .main__gmap iframe {
      width: 100%;
      height: auto;
      aspect-ratio: 723/506;
    }

.p-access__listRouteMap .main__address {
    margin-top: calc(16em/16);
  }

.p-access__listRouteMap .main__addressTxt {
    display: inline-block;
  }

.p-access__listRouteMap .car {
    flex-shrink: 0;
    flex-basis: max(calc(346/1440*100vw), calc(346em/16));
  }

@media screen and (max-width: 768px) {

.p-access__listRouteMap .car {
      margin-top: calc(36em/16);
  }
    }

.p-access__listRouteMap .car__title {
    position: relative;
    z-index: 1;
    padding: calc(5em/16) 0;
    text-align: center;
    color: #fff;
    background-color: var(--main-color);
    border-radius: calc(10em/16);
    overflow: hidden;
    pointer-events: none;
  }

@media screen and (max-width: 768px) {

.p-access__listRouteMap .car__title {
      display: flex;
      justify-content: center;
      align-items: center;
      margin: 0 auto;
      width: calc(295/335*100%);
      pointer-events: auto;
  }
    }

.p-access__listRouteMap .car__titleTxt {
    --sentence-fs: 26;
  }

@media screen and (max-width: 768px) {

.p-access__listRouteMap .car__titleTxt {
      --sentence-fs: 16;
  }
    }

.p-access__listRouteMap .car__titleArrow {
    display: none;
  }

@media screen and (max-width: 768px) {

.p-access__listRouteMap .car__titleArrow {
      position: absolute;
      top: 0;
      bottom: 0;
      right: calc(14em/16);
      display: block;
      margin: auto 0;
      width: calc(16em/16);
      height: calc(8em/16);
      transition: transform var(--transition);
  }
      :where(.p-access__listRouteMap .car.is-open) :is(.p-access__listRouteMap .car__titleArrow) {
        transform: rotate(-180deg);
      }
    }

@media screen and (max-width: 768px) {

.p-access__listRouteMap .car__body {
      height: 0;
      overflow: hidden;
  }
    }

@media screen and (max-width: 768px) {

.p-access__listRouteMap .car__body-inner {
      margin: 0 auto;
      width: calc(295/335*100%);
  }
    }

.p-access__listRouteMap .car__bodyMap {
    position: relative;
    z-index: 1;
    margin-top: calc(20em/16);
    padding: calc(12em/16) 0;
    background-color: #fCF5D1;
    border-radius: calc(10em/16);
    overflow: hidden;
    display: block;
  }

@media (any-hover: hover) {

.p-access__listRouteMap .car__bodyMap {
      transition: filter var(--transition);
  }
      .p-access__listRouteMap .car__bodyMap:hover {
        filter: brightness(1.05);
      }
    }

.p-access__listRouteMap .car__bodyMapBody {
    position: relative;
    z-index: 1;
    margin: 0 auto;
    width: calc(320/346*100%);
    /* border-radius: calc(10em/16); */
    overflow: hidden;
    display: block;
  }

.p-access__listRouteMap .car__bodyMapIcon {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 2;
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc(52em/16);
    height: auto;
    aspect-ratio: 1/1;
    background-color: var(--orange-color);
    border-radius: 100vmax;
    overflow: hidden;
  }

.p-access__listRouteMap .car__bodyMapIconBody {
    width: calc(33em/16);
    color: #fff;
  }

.p-access__listRouteMap .car__bodyList {
    display: flex;
    flex-direction: column;
    gap: calc(12em/16);
    margin-top: calc(15em/16);
    margin-left: calc(7em/16);
  }

.p-access__listRouteMap .car__bodyListItem {
    position: relative;
    display: flex;
    gap: calc(8em/16);
  }

.p-access__listRouteMap .car__bodyListItem::before {
      content: '';
      position: relative;
      z-index: 1;
      flex-shrink: 0;
      display: block;
      margin-top: calc(10em/16);
      width: calc(20em/16);
      height: calc(5em/16);
      border-radius: 100vmax;
      background-color: var(--green-color);
    }

.p-access__listRouteMap .car__bodyParking {
    position: relative;
    z-index: 1;
    margin-top: calc(18em/16);
    border: 2px solid var(--orange-color);
    border-radius: calc(10em/16);
    overflow: hidden;
  }

.p-access__listRouteMap .car__bodyParkingTitle {
    padding-top: calc(6em/16);
    background-color: var(--orange-color);
  }

.p-access__listRouteMap .car__bodyParkingTitle img {
      display: block;
      margin: 0 auto;
      width: calc(109em/16);
    }

.p-access__listRouteMap .car__bodyParkingBody {
    padding: calc(13em/16) 0 calc(18em/16);
  }

.p-access__listRouteMap .car__bodyParkingBody-inner {
    display: flex;
    flex-direction: column;
    gap: calc(10em/16);
    margin: 0 auto;
    width: calc(303/346*100%);
  }

.p-access__listRouteMap .car__bodyParkingBodyItem {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

.p-access__listRouteMap .car__bodyParkingBodyItem dd {
      --sentence-fs: 20;
      color: var(--green-color);
    }

.p-access__listRoutePublic {
  margin-top: calc(60em/16);
}

@media screen and (max-width: 768px) {

.p-access__listRoutePublic {
    margin-top: calc(40em/16);
}
  }

.p-access__listRoutePublic .title {
    display: flex;
    flex-direction: column;
    align-items: center;
    pointer-events: none;
  }

@media screen and (max-width: 768px) {

.p-access__listRoutePublic .title {
      pointer-events: auto;
  }
    }

.p-access__listRoutePublic .title__sub {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: calc(23em/28);
    line-height: 1.1;
    font-size: calc(28em/16);
    letter-spacing: calc(2.17em/28);
    color: var(--green-color);
  }

@media screen and (max-width: 768px) {

.p-access__listRoutePublic .title__sub {
      font-size: calc(16em/16);
      letter-spacing: calc(1.24em/16);
  }
    }

.p-access__listRoutePublic .title__sub::before,
    .p-access__listRoutePublic .title__sub::after {
      content: '';
      position: relative;
      display: block;
      margin-top: .25em;
      width: 3.5px;
      height: calc(38em/28);
      background-color: var(--green-color);
      border-radius: 100vmax;
      overflow: hidden;
    }

.p-access__listRoutePublic .title__sub::before {
      transform: rotate(-40deg);
    }

.p-access__listRoutePublic .title__sub::after {
      transform: rotate(40deg);
    }

@media screen and (max-width: 768px) {
      .p-access__listRoutePublic .title__sub::before,
      .p-access__listRoutePublic .title__sub::after {
        width: 2px;
      }
    }

.p-access__listRoutePublic .title__main {
    position: relative;
    z-index: 1;
    display: block;
    margin-top: calc(15em/16);
    padding: calc(5em/16) 0;
    width: 100%;
    color: #fff;
    background-color: var(--main-color);
    border-radius: calc(10em/16);
    overflow: hidden;
  }

@media screen and (max-width: 768px) {

.p-access__listRoutePublic .title__main {
      display: flex;
      justify-content: center;
      align-items: center;
      margin: calc(4em/16) auto 0;
      width: calc(295/335*100%);
  }
    }

.p-access__listRoutePublic .title__mainTxt {
    display: block;
    text-align: center;
  }

.p-access__listRoutePublic .title__mainTxtBody {
    --sentence-fs: 26;
  }

@media screen and (max-width: 768px) {

.p-access__listRoutePublic .title__mainTxtBody {
      --sentence-fs: 16;
  }
    }

.p-access__listRoutePublic .title__mainArrow {
    display: none;
  }

@media screen and (max-width: 768px) {

.p-access__listRoutePublic .title__mainArrow {
      position: absolute;
      top: 0;
      bottom: 0;
      right: calc(14em/16);
      display: block;
      margin: auto 0;
      width: calc(16em/16);
      height: calc(8em/16);
      transition: transform var(--transition);
  }
      :where(.p-access__listRoutePublic.is-open) :is(.p-access__listRoutePublic .title__mainArrow) {
        transform: rotate(-180deg);
      }
    }

@media screen and (max-width: 768px) {

.p-access__listRoutePublic .body {
      height: 0;
      overflow: hidden;
  }
    }

.p-access__listRoutePublic .body-container {
    padding-top: calc(26em/16);
  }

@media screen and (max-width: 768px) {

.p-access__listRoutePublic .body-inner {
      margin: 0 auto;
      width: calc(295/335*100%);
  }
    }

.p-access__listRoutePublic .body__intro {
    --sentence-fs: 18;
    text-align: center;
  }

.p-access__listRoutePublic .body__intro em {
      color: var(--orange-color);
    }

.p-access__listRoutePublic .body__introTxt {
    display: inline-block;
  }

.p-access__listRoutePublic .body__main {
    margin-top: calc(53em/16);
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

@media screen and (max-width: 768px) {

.p-access__listRoutePublic .body__main {
      display: block;
  }
    }

.p-access__listRoutePublic .body__mainOther {
    flex-shrink: 0;
    flex-basis: calc(523/var(--section-width)*100%);
    display: flex;
    flex-direction: column;
    gap: calc(25em/16);
  }

.p-access__listRoutePublic .body__mainOtherBlockTitle {
    margin-bottom: calc(5em/16);
  }

@media screen and (max-width: 768px) {

.p-access__listRoutePublic .body__mainOtherBlockTitle {
      margin: 0 auto calc(5em/16);
  }
    }

.p-access__listRoutePublic .body__mainOtherBlockTitle.is-bus {
      width: calc(231em/16);
    }

.p-access__listRoutePublic .body__mainOtherBlockTitle.is-train {
      width: calc(191em/16);
    }

.p-access__listRoutePublic .body__mainOfficial {
    flex-shrink: 0;
    flex-basis: calc(523/var(--section-width)*100%);
  }

@media screen and (max-width: 768px) {

.p-access__listRoutePublic .body__mainOfficial {
      margin-top: calc(30em/16);
  }
    }

.p-access__listRoutePublic .body__mainOfficialHeadTitle {
    position: relative;
    z-index: 2;
  }

.p-access__listRoutePublic .body__mainOfficialHeadTitleFree {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    margin: calc(-16/523*100%) auto auto calc(-24/523*100%);
    width: calc(109em/16);
  }

@media screen and (max-width: 768px) {

.p-access__listRoutePublic .body__mainOfficialHeadTitleFree {
      margin: calc(5/295*100%) auto auto calc(-12/295*100%);
      width: calc(69em/16);
  }
    }

.p-access__listRoutePublic .body__mainOfficialHeadTitleTxt {
    position: relative;
    z-index: 1;
    display: block;
    padding: calc(5em/16) 0;
    width: 100%;
    text-align: center;
    line-height: 1.5;
    letter-spacing: calc(1.24em/16);
    color: #fff;
    background-color: var(--green-color);
    border-radius: calc(10em/16) calc(10em/16) 0 0;
    overflow: hidden;
  }

.p-access__listRoutePublic .body__mainOfficialHeadTitleTxt .large {
      font-size: calc(20em/16);
    }

.p-access__listRoutePublic .body__mainOfficialHeadImg {
    position: relative;
    z-index: 1;
    margin-top: -2px;
    border-radius: 0 0 calc(10em/16) calc(10em/16);
    overflow: hidden;
  }

.p-access__listRoutePublic .body__mainOfficialTxt {
    margin-top: calc(15em/16);
    margin-bottom: calc(6em/16);
  }

.p-access__listRoutePublic .body__mainOfficialNote {
    --sentence-fs: 14;
    margin-top: calc(15em/14);
  }

.p-access__listRoutePublic .body__mainOfficialNote a {
      color: var(--orange-color);
      text-decoration: underline;
    }

.p-access__listSchedule {
  padding: calc(52em/16) 0 calc(70em/16);
}

@media screen and (max-width: 768px) {

.p-access__listSchedule {
    padding: calc(33em/16) 0 calc(30em/16);
}
  }

.p-access__listScheduleBody {
  display: flex;
  justify-content: space-between;
  margin-top: calc(35em/16);
}

@media screen and (max-width: 768px) {

.p-access__listScheduleBody {
    display: block;
    margin: calc(16em/16) auto 0;
    width: calc(295/335*100%);
}
  }

.p-access__listScheduleBody .open {
    flex-shrink: 0;
    flex-basis: calc(523/var(--section-width)*100%);
  }

.p-access__listScheduleBody .close {
    position: relative;
    z-index: 1;
    flex-shrink: 0;
    flex-basis: calc(527/var(--section-width)*100%);
    height: auto;
    border: 2px solid var(--orange-color);
    border-radius: 0 calc(20em/16) calc(20em/16) calc(20em/16);
  }

@media screen and (max-width: 768px) {

.p-access__listScheduleBody .close {
      margin: calc(30em/16) auto 0;
      padding: calc(10em/16) 0;
      width: max(calc(255em/16), calc(255/295*100%));
  }
    }

.p-access__listScheduleBody .close__list {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: calc(10em/16);
    height: 100%;
  }

@media screen and (max-width: 768px) {

.p-access__listScheduleBody .close__list {
      margin: 0 auto;
      width: calc(185/255*100%);
  }
    }

.p-access__listScheduleBody .close__list dt {
      --sentence-fs: 20;
      color: var(--orange-color);
    }

@media screen and (max-width: 768px) {

.p-access__listScheduleBody .close__list dt {
        --sentence-fs: 18;
    }
      }

@media screen and (max-width: 768px) {

.p-access__listScheduleBody .close__list dd {
        text-align: center;
    }
      }

.p-access__listScheduleBody .close__list dd small {
        font-size: calc(12em/16);
      }

@media screen and (max-width: 768px) {

.p-access__listScheduleBody .close__list dd small {
          display: block;
      }
        }

.p-access__listScheduleNote {
  --sentence-fs: 14;
  display: flex;
  flex-direction: column;
  margin-top: calc(28em/14);
}

@media screen and (max-width: 768px) {

.p-access__listScheduleNote {
    --sentence-fs: 10;
    margin: calc(10em/10) auto 0;
    width: calc(295/335*100%);
}
  }

.p-access__listScheduleNote .item {
    position: relative;
    padding-left: 1.5em;
    text-indent: -1.5em;
  }

.p-access__listPrice {
  padding: calc(74em/16) 0 calc(66em/16);
}

@media screen and (max-width: 768px) {

.p-access__listPrice {
    padding: calc(35em/16) 0 calc(20em/16);
}
  }

.p-access__listPriceTitle {
  position: relative;
  margin: 0 auto;
  width: fit-content;
}

.p-access__listPriceTitle .fukidashi {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    margin: calc(-110em/16) auto auto calc(-266em/16);
    width: calc(235em/16);
  }

@media screen and (max-width: 768px) {

.p-access__listPriceTitle .fukidashi {
      margin: calc(-52em/16) auto auto calc(-108em/16);
      width: calc(108em/16);
  }
    }

.p-access__listPriceTitle .txt {
    margin: 0 auto;
    width: calc(337em/16);
  }

@media screen and (max-width: 768px) {

.p-access__listPriceTitle .txt {
      display: block;
      width: calc(178em/16);
  }
    }

.p-access__listPriceList {
  margin-top: calc(56em/16);
  display: flex;
  flex-direction: column;
  gap: calc(50em/16);
}

@media screen and (max-width: 768px) {

.p-access__listPriceList {
    margin: calc(18em/16) auto 0;
    gap: calc(30em/16);
    width: calc(295/335*100%);
}
  }

.p-access__listPriceList .block:where(:nth-child(2)) {
      padding-bottom: calc(50em/16);
    }

@media screen and (max-width: 768px) {

.p-access__listPriceList .block:where(:nth-child(2)) {
        padding-bottom: calc(27em/16);
    }
      }

.p-access__listPriceList .block:where(:not(:last-child)) {
      position: relative;
    }

.p-access__listPriceList .block:where(:not(:last-child))::before {
        content: '';
        position: absolute;
        bottom: 0;
        left: calc(-121/var(--section-width)*100%);
        right: calc(-121/var(--section-width)*100%);
        width: calc(1340/var(--section-width)*100%);
        height: 1px;
        background-color: var(--green-color);
      }

@media screen and (max-width: 1440px) {
        .p-access__listPriceList .block:where(:not(:last-child))::before {
          left: calc(-81/var(--section-width)*100%);
          right: calc(-81/var(--section-width)*100%);
          width: calc(1260/var(--section-width)*100%);
        }
      }

@media screen and (max-width: 1024px) {
        .p-access__listPriceList .block:where(:not(:last-child))::before {
          left: calc(-61/var(--section-width)*100%);
          right: calc(-61/var(--section-width)*100%);
          width: calc(1220/var(--section-width)*100%);
        }
      }

.p-access__listPriceList .block__title {
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: calc(45em/16);
    border-radius: 100vmax;
    overflow: hidden;
  }

:where(.p-access__listPriceList .block:nth-child(1)) :is(.p-access__listPriceList .block__title) {
      background-color: var(--orange-color);
    }

:where(.p-access__listPriceList .block:nth-child(2)) :is(.p-access__listPriceList .block__title) {
      background-color: #0093cf;
    }

:where(.p-access__listPriceList .block:nth-child(3)) :is(.p-access__listPriceList .block__title) {
      background-color: var(--forestpark-color);
    }

.p-access__listPriceList .block__titleTxt {
    --sentence-fs: 36;
    text-align: center;
    color: #fff;
  }

:where(.p-access__listPriceList .block:nth-child(1)) :is(.p-access__listPriceList .block__titleImg) {
      width: calc(208em/16);
    }

@media screen and (max-width: 768px) {

:where(.p-access__listPriceList .block:nth-child(1)) :is(.p-access__listPriceList .block__titleImg) {
        width: calc(208em/16*.75);
    }
      }

:where(.p-access__listPriceList .block:nth-child(2)) :is(.p-access__listPriceList .block__titleImg) {
      width: calc(324em/16);
    }

@media screen and (max-width: 768px) {

:where(.p-access__listPriceList .block:nth-child(2)) :is(.p-access__listPriceList .block__titleImg) {
        width: calc(324em/16*.75);
    }
      }

:where(.p-access__listPriceList .block:nth-child(3)) :is(.p-access__listPriceList .block__titleImg) {
      width: calc(532em/16);
    }

@media screen and (max-width: 768px) {

:where(.p-access__listPriceList .block:nth-child(3)) :is(.p-access__listPriceList .block__titleImg) {
        width: calc(325em/16);
    }
      }

.p-access__listPriceList .block__body {
    padding: calc(26em/16) 0 calc(36em/16);
    display: flex;
    /* margin: 0 auto;
    width: calc(946/var(--section-width)*100%); */
  }

@media screen and (max-width: 768px) {

.p-access__listPriceList .block__body {
      display: block;
      padding: calc(11em/16) 0 calc(18em/16);
  }
    }

.p-access__listPriceList .block__bodyItem {
    position: relative;
    flex-shrink: 0;
    flex-basis: 50%;
  }

@media screen and (max-width: 768px) {

.p-access__listPriceList .block__bodyItem:where(:nth-child(1)) {
        padding-bottom: calc(17em/16);
    }
      }

.p-access__listPriceList .block__bodyItem:where(:nth-child(2))::before {
        content: '';
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        margin: auto 0;
        width: 1px;
        height: calc(100% - 20em/16);
        background-color: var(--green-color);
      }

@media screen and (max-width: 768px) {

.p-access__listPriceList .block__bodyItem:where(:nth-child(2)) {
        padding-top: calc(22em/16);
    }
        .p-access__listPriceList .block__bodyItem:where(:nth-child(2))::before {
          bottom: auto;
          right: 0;
          margin: auto 0;
          width: 100%;
          height: 1px;
        }
      }

.p-access__listPriceList .block__bodyItem-inner {
    margin: 0 auto;
    width: calc(430/546*100%);
  }

@media screen and (max-width: 1280px) {

.p-access__listPriceList .block__bodyItem-inner {
      width: calc(450/546*100%);
  }
    }

@media screen and (max-width: 1024px) {

.p-access__listPriceList .block__bodyItem-inner {
      width: calc(500/546*100%);
  }
    }

@media screen and (max-width: 768px) {

.p-access__listPriceList .block__bodyItem-inner {
      width: 100%;
  }
    }

:where(.p-access__listPriceList .block:nth-child(3)) :is(.p-access__listPriceList .block__bodyItem-inner) {
      display: flex;
      align-items: center;
    }

@media screen and (max-width: 768px) {

:where(.p-access__listPriceList .block:nth-child(3)) :is(.p-access__listPriceList .block__bodyItem-inner) {
        align-items: flex-start;
        justify-content: space-between;
    }
      }

.p-access__listPriceList .block__bodyItemTitle {
    --sentence-fs: 30;
    /* text-align: center; */
  }

@media screen and (max-width: 768px) {

.p-access__listPriceList .block__bodyItemTitle {
      --sentence-fs: 22;
  }
    }

.p-access__listPriceList .block__bodyItemTitle small {
      font-size: calc(18em/30);
    }

@media screen and (max-width: 768px) {

.p-access__listPriceList .block__bodyItemTitle small {
        font-size: calc(14em/22);
    }
      }

:where(.p-access__listPriceList .block:nth-child(3)) :is(.p-access__listPriceList .block__bodyItemTitle) {
      margin: calc(11em/30) calc(34em/30) 0 0;
    }

@media screen and (max-width: 768px) {

:where(.p-access__listPriceList .block:nth-child(3)) :is(.p-access__listPriceList .block__bodyItemTitle) {
        margin: 0;
    }
        :where(.p-access__listPriceList .block:nth-child(3)) :is(.p-access__listPriceList .block__bodyItemTitle) small {
          display: block;
        }
      }

.p-access__listPriceList .block__bodyItemCont {
    margin-top: calc(8em/16);
    display: flex;
    justify-content: center;
    align-items: center;
  }

@media screen and (max-width: 880px) {

.p-access__listPriceList .block__bodyItemCont {
      font-size: calc(16/880*100vw*.7);
  }
    }

@media screen and (max-width: 768px) {

.p-access__listPriceList .block__bodyItemCont {
      margin-top: calc(11em/16);
      font-size: 1em;
  }
      :where(.p-access__listPriceList .block:nth-child(3)) :is(.p-access__listPriceList .block__bodyItemCont) {
        margin: calc(-2em/16) calc(7em/16) 0 0;
      }
    }

.p-access__listPriceList .block__bodyItemContBefore {
    position: relative;
    font-size: calc(32em/16);
    letter-spacing: calc(1.7em/32);
  }

@media screen and (max-width: 768px) {

.p-access__listPriceList .block__bodyItemContBefore {
      font-size: calc(24em/16);
      letter-spacing: 0;
      /* letter-spacing: calc(1.24em/24); */
  }
    }

.p-access__listPriceList .block__bodyItemContBefore::before {
      content: '';
      position: absolute;
      top: .25em;
      bottom: 0;
      left: -8%;
      right: -8%;
      margin: auto;
      width: 116%;
      height: 2.5px;
      background-color: var(--main-color);
      border-radius: 100vmax;
      transform: rotate(8deg);
    }

.p-access__listPriceList .block__bodyItemContBefore .unit {
      font-size: calc(24em/32);
    }

@media screen and (max-width: 768px) {

.p-access__listPriceList .block__bodyItemContBefore .unit {
        font-size: calc(20em/24);
    }
      }

.p-access__listPriceList .block__bodyItemContArrow {
    margin: 0 calc(16em/16) 0 calc(26em/16);
  }

@media screen and (max-width: 768px) {

.p-access__listPriceList .block__bodyItemContArrow {
      margin: 0 calc(11em/16);
      width: calc(61em/16);
  }
    }

.p-access__listPriceList .block__bodyItemContAfter {
    position: relative;
    font-size: calc(66em/16);
    letter-spacing: calc(1.7em/66);
    color: var(--green-color);
  }

@media screen and (max-width: 768px) {

.p-access__listPriceList .block__bodyItemContAfter {
      font-size: calc(48em/16);
      letter-spacing: 0;
      /* letter-spacing: calc(1.24em/48); */
  }
    }

.p-access__listPriceList .block__bodyItemContAfter .unit {
      font-size: calc(30em/66);
    }

@media screen and (max-width: 768px) {

.p-access__listPriceList .block__bodyItemContAfter .unit {
        font-size: calc(22em/48);
    }
      }

.p-access__listPriceList .block__bodyItemContAfter .note {
      position: absolute;
      top: calc(-30em/14);
      right: 0;
      font-size: calc(14em/66);
      white-space: nowrap;
      color: var(--main-color);
    }

@media screen and (max-width: 768px) {

.p-access__listPriceList .block__bodyItemContAfter .note {
        font-size: calc(12em/48);
    }

      }

/* & .block__bodyItemNote {
    --sentence-fs: 14;
    margin-top: calc(30em/14);
    & ul {
      display: flex;
      flex-direction: column;
    }
    & li {
      position: relative;
      padding-left: 1.5em;
      text-indent: -1.5em;
    }
  } */

.p-access__listPriceList .block__bodyDog {
    position: relative;
    flex-shrink: 0;
    flex-basis: 50%;
    padding-top: calc(30em/16);
  }

.p-access__listPriceList .block__bodyDog-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    padding: calc(28em/16) calc(39/549*100%) calc(28em/16) calc(33/549*100%);
    width: calc(344em/16);
    background-color: var(--main-bg);
  }

@media screen and (max-width: 768px) {

.p-access__listPriceList .block__bodyDog-inner {
      width: 100%;
  }
    }

.p-access__listPriceList .block__bodyDogTitle {
    display: flex;
    align-items: center;
    gap: calc(8em/16);
  }

.p-access__listPriceList .block__bodyDogTitleIcon {
    width: calc(40em/16);
  }

.p-access__listPriceList .block__bodyDogTitleTxt {
    --sentence-fs: 20;
  }

.p-access__listPriceList .block__bodyDogCont {
    --sentence-fs: 20;
    color: var(--green-color);
  }

.p-access__listPriceList .block__note {
    --sentence-fs: 14;
    margin: 0 auto;
    width: calc(982/1098*100%);
  }

@media screen and (max-width: 1280px) {

.p-access__listPriceList .block__note {
      width: calc(1002/1098*100%);
  }
    }

@media screen and (max-width: 1024px) {

.p-access__listPriceList .block__note {
      width: calc(1052/1098*100%);
  }
    }

@media screen and (max-width: 768px) {

.p-access__listPriceList .block__note {
      width: 100%;
  }
    }

.p-access__listPriceList .block__note ul {
      display: flex;
      flex-direction: column;
    }

.p-access__listPriceList .block__note li {
      position: relative;
      padding-left: 1.5em;
      text-indent: -1.5em;
    }

.p-access__listPriceList .block__bodyCaution {
    --sentence-fs: 14;
    margin: calc(18em/14) 0 0 calc(60em/14);
    align-self: center;
  }

@media screen and (max-width: 768px) {

.p-access__listPriceList .block__bodyCaution {
      margin: 0;
  }
    }

.p-access__listPriceList .block__bodyCaution p {
      margin-left: 1.1em;
      text-indent: -1.1em;
    }

.p-access__listPriceIllust {
  position: absolute;
  top: 0;
  right: 0;
  margin: calc(-35em/16) 0 0;
  width: calc(123em/16);
}

@media screen and (max-width: 768px) {

.p-access__listPriceIllust {
    margin: calc(-42em/16) calc(-13/335*100%) 0 auto;
    width: calc(65em/16);
}
  }

.p-access__gallery {
  position: relative;
  margin-top: calc(100em/16);
  overflow: hidden;
  padding-top: calc(27em/16);
}

@media screen and (max-width: 768px) {

.p-access__gallery {
    padding-top: calc(11em/16);
    margin-top: calc(13em/16);
}
  }

.p-access__gallery-inner {
  --ww: calc(var(--vw, 1vw) * 100);
  --gallery-width: calc(1788em/16);
  width: var(--gallery-width);
  margin-left: calc( (var(--gallery-width) - var(--ww)) / 2 * -1 );
  padding-bottom: calc(100em/16);
  position: relative;
}

@media screen and (max-width: 768px) {

.p-access__gallery-inner {
    margin-left: calc(-192/375*100%);
    width: calc(759/375*100%);
}
  }

.p-access__gallerySlider {
  overflow: inherit;
}

.p-access__gallerySliderItem {
  opacity: 0;
  transform: rotate(-40deg) scale(.6) translate(calc(110em/16), calc(1120em/16));
  transition: transform var(--transition), opacity .1s;
  width: calc(596/1788*100%);
}

@media screen and (max-width: 768px) {

.p-access__gallerySliderItem {
    width: calc(253/759*100%);
    transform: rotate(-40deg) scale(.6) translate(calc(50em/16), calc(400em/16));
}
  }

.p-access__gallerySliderItem.swiper-slide-prev {
    opacity: 1;
    transform: rotate(-20deg) scale(.5) translate(calc(120em/16), calc(440em/16));
    transition: transform var(--transition), opacity var(--transition);
    cursor: grab;
  }

@media screen and (max-width: 768px) {

.p-access__gallerySliderItem.swiper-slide-prev {
      transform: rotate(-20deg) scale(.5) translate(calc(40em/16), calc(180em/16));
  }
    }

.p-access__gallerySliderItem.swiper-slide-active {
    opacity: 1;
    transform: rotate(0deg) scale(1);
    transition: transform var(--transition), opacity var(--transition);
    cursor: grab;
  }

.p-access__gallerySliderItem.swiper-slide-next {
    opacity: 1;
    transform: rotate(20deg) scale(.5) translate(calc(-120em/16), calc(440em/16));
    transition: transform var(--transition), opacity var(--transition);
    cursor: grab;
  }

@media screen and (max-width: 768px) {

.p-access__gallerySliderItem.swiper-slide-next {
      transform: rotate(20deg) scale(.5) translate(calc(-40em/16), calc(180em/16));
  }
    }

.p-access__gallerySliderItem.swiper-slide-next + .swiper-slide {
    opacity: 0;
    transform: rotate(40deg) scale(.6) translate(calc(-110em/16), calc(1120em/16));
    transition: transform var(--transition), opacity .1s;
  }

@media screen and (max-width: 768px) {

.p-access__gallerySliderItem.swiper-slide-next + .swiper-slide {
      transform: rotate(40deg) scale(.6) translate(calc(-50em/16), calc(400em/16));
  }
    }

.p-access__galleryController {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: calc(40em/16);
  margin-top: calc(40em/16);
}

@media screen and (max-width: 768px) {

.p-access__galleryController {
    gap: calc(22em/16);
    margin-top: calc(17em/16);
}
  }

.p-access__galleryControllerBtn {
  position: static;
  margin-top: 0;
  width: calc(84em/16);
  height: auto;
  aspect-ratio: 84/85;
  transition: opacity var(--transition);
}

@media screen and (max-width: 768px) {

.p-access__galleryControllerBtn {
    width: calc(36em/16);
}
  }

.p-access__galleryControllerBtn::before,
  .p-access__galleryControllerBtn::after {
    content: none;
  }

.p-access__galleryIllustItem {
  position: absolute;
  z-index: 2;
}

.p-access__galleryIllustItem:nth-of-type(1) {
    top: 0;
    left: 0;
    margin: calc(-27em/16) auto 0 calc(508/1788*100%);
    width: calc(140em/16);
  }

@media screen and (max-width: 768px) {

.p-access__galleryIllustItem:nth-of-type(1) {
      margin: calc(-11em/16) auto 0 calc(213em/16);
      width: calc(56em/16);
  }
    }

.p-access__galleryIllustItem:nth-of-type(2) {
    top: 0;
    right: 0;
    margin: calc(56em/16) calc(397/1788*100%) 0 auto;
    width: calc(141em/16);
  }

@media screen and (max-width: 768px) {

.p-access__galleryIllustItem:nth-of-type(2) {
      margin: calc(24em/16) calc(203/759*100%) 0 auto;
      width: calc(57em/16);
  }
    }

@media (any-hover: hover) {
    .p-access__galleryControllerBtn:not(.swiper-button-disabled):hover {
      opacity: 0.6;
    }
}

.p-cta {
  --pt: 130;
  --pb: 94;
  position: relative;
  background-color: var(--yellow-color);
  padding: calc(var(--pt) * 1em/16) 0 calc(var(--pb) * 1em/16);
}

@media screen and (max-width: 768px) {

.p-cta {
    --pt: 0;
    --pb: 48;
}
  }

.p-cta__body {
  position: relative;
}

.p-cta__bodyTitle {
  margin: 0 auto;
  width: calc(738em/16);
}

@media screen and (max-width: 768px) {

.p-cta__bodyTitle {
    width: calc(315em/16);
}
  }

.p-cta__bodyBtn {
  display: flex;
  justify-content: center;
  margin: calc(-84em/16) 0 0 calc(28em/16);
}

@media screen and (max-width: 768px) {

.p-cta__bodyBtn {
    margin: calc(-87em/16) auto 0;
}
  }

.p-cta__bodyIllustItem {
  position: absolute;
}

.p-cta__bodyIllustItem:nth-of-type(1) {
    top: 0;
    left: 0;
    right: 0;
    z-index: 2;
    margin: calc(-230em/16) auto 0;
    width: calc(193em/16);
  }

@media screen and (max-width: 768px) {

.p-cta__bodyIllustItem:nth-of-type(1) {
      margin: calc(-47em/16) auto 0;
      width: calc(74em/16);
  }
    }

.p-cta__bodyIllustItem:nth-of-type(2) {
    top: 0;
    right: 0;
    margin: calc(-74em/16) calc(147/var(--section-width)*100%) 0 auto;
    width: calc(143em/16);
  }

@media screen and (max-width: 768px) {

.p-cta__bodyIllustItem:nth-of-type(2) {
      margin: calc(-26em/16) calc(42/335*100%) 0 auto;
      width: calc(55em/16);
  }
    }

.p-cta__bodyIllustItem:nth-of-type(3) {
    top: 0;
    right: 0;
    margin: calc(-45em/16) calc(-24/var(--section-width)*100%) 0 auto;
    width: calc(147em/16);
  }

@media screen and (max-width: 768px) {

.p-cta__bodyIllustItem:nth-of-type(3) {
      margin: calc(-28em/16) calc(-12/335*100%) 0 auto;
      width: calc(56em/16);
  }
    }

.p-cta__bodyIllustItem:nth-of-type(4) {
    top: 0;
    left: 0;
    margin: calc(-240em/16) auto 0 calc(-460/var(--section-width)*100%);
    width: calc(638em/16);
  }

@media screen and (max-width: 1440px) {

.p-cta__bodyIllustItem:nth-of-type(4) {
      margin-left: calc(-332/var(--section-width)*100%);
  }
    }

@media screen and (max-width: 768px) {

.p-cta__bodyIllustItem:nth-of-type(4) {
      margin: calc(-92em/16) auto 0 calc(-53/335*100%);
      width: calc(150em/16);
      transform: rotate(4deg);
  }
    }

.p-cta__btmbg {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: calc(94em/16);
  overflow: hidden;
}

@media screen and (max-width: 768px) {

.p-cta__btmbg {
    height: calc(45em/16);
}
  }

.p-cta__btmbgBody {
  background-repeat: no-repeat;
  background-position: top left;
  background-image: url("../images/cta-btm-bg.png");
  background-size: cover;
  height: 100%;
}

@media screen and (max-width: 768px) {

.p-cta__btmbgBody {
    background-size: 150% 100%;
    background-position: 10%;
}
  }

.p-faq {
  --pt: 62;
  --pb: 180;
  padding: calc(var(--pt) * 1em/16) 0 calc(var(--pb) * 1em/16);
  position: relative;
  background-color: var(--main-bg);
}

@media screen and (max-width: 768px) {

.p-faq {
    --pt: 26;
    --pb: 96;
}
  }

.p-faq__bodyTitle {
  --sentence-fs: 50;
  --sentence-letter-spacing: 2;
  text-align: center;
}

@media screen and (max-width: 768px) {

.p-faq__bodyTitle {
    --sentence-fs: 23;
    --sentence-letter-spacing: .93;
}
  }

.p-faq__bodyList {
  display: flex;
  flex-direction: column;
  gap: calc(10em/16);
  margin-top: calc(38em/16);
}

.p-faq__bodyListItem {
  position: relative;
  z-index: 1;
  border-radius: calc(10em/16);
  overflow: hidden;
}

.p-faq__bodyListItem .question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: calc(32em/16);
    padding: calc(6em/16) calc(32em/16) calc(10em/16) calc(15em/16);
    color: #fff;
    background-color: var(--main-color);
    cursor: pointer;
  }

@media screen and (max-width: 768px) {

.p-faq__bodyListItem .question {
      gap: calc(14em/16);
      padding: calc(11em/16) calc(15em/16);
  }
    }

.p-faq__bodyListItem .question__body {
    flex: 1;
    display: flex;
    align-items: center;
  }

.p-faq__bodyListItem .question__bodyQ {
    --sentence-fs: 36;
    --sentence-letter-spacing: .93;
    flex-shrink: 0;
    margin-right: calc(18em/36);
  }

@media screen and (max-width: 768px) {

.p-faq__bodyListItem .question__bodyQ {
      --sentence-fs: 28;
      margin-right: calc(14em/28);
  }
    }

.p-faq__bodyListItem .question__bodyTxt {
    --sentence-fs: 20;
    --sentence-letter-spacing: .93;
  }

@media screen and (max-width: 768px) {

.p-faq__bodyListItem .question__bodyTxt {
      --sentence-fs: 16;
  }
    }

.p-faq__bodyListItem .question__arrow {
    width: calc(16em/16);
    transition: transform var(--transition);
  }

:where(.p-faq__bodyListItem.is-open) :is(.p-faq__bodyListItem .question__arrow) {
      transform: rotate(-180deg);
    }

.p-faq__bodyListItem .answer {
    flex-shrink: 0;
    height: 0;
    background-color: #fff;
    border-bottom: 1px solid currentColor;
    border-left: 1px solid currentColor;
    border-right: 1px solid currentColor;
    border-radius: 0 0 calc(10em/16) calc(10em/16);
    overflow: hidden;
  }

.p-faq__bodyListItem .answer-inner {
    position: relative;
    z-index: 1;
    padding: calc(20em/16);
  }

.p-faq__bodyListItem .answer__body {
    word-break: break-all;
  }

.p-faq__bodyListItem .answer__body a {
      color: var(--orange-color);
      text-decoration: underline;
    }

.p-faq__btmbg {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: calc(94em/16);
  overflow: hidden;
  z-index: 0;
}

@media screen and (max-width: 768px) {

.p-faq__btmbg {
    height: calc(45em/16);
}
  }

.p-faq__btmbgBody {
  background-repeat: no-repeat;
  background-position: top left;
  background-image: url("../images/footer-bg.png");
  background-size: cover;
  height: 100%;
}

@media screen and (max-width: 768px) {

.p-faq__btmbgBody {
    background-size: 100% 100%;
    background-position: 0%;
}
  }
/*# sourceMappingURL=style.css.map */
