@charset "UTF-8";
/*************************************************
base-style
*************************************************/
* {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
  -webkit-font-smoothing: antialiased;
  scroll-behavior: smooth;
}

body {
  scroll-behavior: smooth;
  font-family: "dnp-shuei-gothic-gin-std", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", Meiryo, sans-serif;
  min-height: 100dvh;
}

input[type=submit],
input[type=button] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
       appearance: button;
  border: none;
  box-sizing: border-box;
}
input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
  display: none;
}
input[type=submit]:focus,
input[type=button]:focus {
  outline-offset: -2px;
}

.inner {
  max-width: 72.9166666667vw;
  margin-inline: auto;
  container-type: inline-size;
}
@media screen and (max-width: 1920px) {
  .inner {
    max-width: 1400px;
  }
}
@media screen and (max-width: 750px) {
  .inner {
    max-width: 89.3333333333vw;
  }
}

.inner_wrap {
  padding-inline: max(6.25vw, 110px);
}
@media screen and (max-width: 750px) {
  .inner_wrap {
    padding-inline: 0;
  }
}

h2 {
  line-height: 2;
  letter-spacing: 0.06em;
}

h3,
div,
p,
li,
dt,
dd,
th,
td,
a {
  font-size: max(12px, 1.4285714286cqw);
  line-height: 2.25;
  letter-spacing: 0.05em;
  font-weight: 500;
  color: #000;
}
@media screen and (max-width: 750px) {
  h3,
  div,
  p,
  li,
  dt,
  dd,
  th,
  td,
  a {
    font-size: max(12px, 3.8805970149cqw);
    line-height: 2;
  }
}

div {
  line-height: 1;
}

.en {
  font-family: widescreen-ex, sans-serif;
}

img {
  height: auto;
}

.img-box img {
  width: 100%;
}

.obj-fit img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.text-ell dd {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.text-ell-line02 dd p {
  display: -webkit-box;
  -webkit-line-clamp: 2; /* 2行に制限 */
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.text-ell-line03 dd p {
  display: -webkit-box;
  -webkit-line-clamp: 3; /* 2行に制限 */
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.hidden {
  overflow: hidden;
}

.vertical {
  writing-mode: vertical-rl;
}

.block__text-img {
  display: flex;
  align-items: flex-start;
}
.block__text-img .left-contents {
  flex-grow: 1;
}
.block__text-img .right-contents {
  flex-shrink: 0;
}

.anime-ttl01 {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}
.anime-ttl01 span {
  min-width: 0.4285714286cqw;
  display: inline-block;
  transform: translateY(100px);
  transition: transfrom 0.4s;
}
@media screen and (max-width: 750px) {
  .anime-ttl01 span {
    min-width: 1.4925373134cqw;
  }
}

.parallax-bg {
  background-size: 110% !important;
}

svg path {
  transition: all 0.3s;
}

.c-layout_2col .inner_wrap {
  padding-left: max(12.5vw, 110px);
}
@media screen and (max-width: 1200px) {
  .c-layout_2col .inner_wrap {
    padding-left: max(7.8125vw, 90px);
  }
}
@media screen and (max-width: 750px) {
  .c-layout_2col .inner_wrap {
    padding-left: 0;
  }
}
.c-layout_2col .inner_wrap {
  padding-right: max(4.6875vw, 60px);
}
@media screen and (max-width: 750px) {
  .c-layout_2col .inner_wrap {
    padding-right: 0;
  }
}
.c-layout_2col .inner {
  margin-inline: 0;
  display: flex;
  gap: 4.2857142857cqw;
  max-width: 79.375vw;
}
@media screen and (max-width: 1920px) {
  .c-layout_2col .inner {
    max-width: 1524px;
  }
}
@media screen and (max-width: 750px) {
  .c-layout_2col .inner {
    flex-direction: column;
    width: 89.3333333333vw;
    margin: 0 auto;
    gap: 16.1194029851cqw;
  }
}

.c-layout_2col_inner-content {
  display: flex;
  gap: 7.5cqw;
}
@media screen and (max-width: 750px) {
  .c-layout_2col_inner-content {
    flex-direction: column;
    gap: 11.9402985075cqw;
  }
}
.c-layout_2col_inner-content .main-contents {
  width: 65cqw;
  flex-shrink: 0;
}
@media screen and (max-width: 750px) {
  .c-layout_2col_inner-content .main-contents {
    width: 100%;
  }
}

.hov-op50 {
  transition: all 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .hov-op50:hover {
    opacity: 0.5;
  }
}

.hov-op70 {
  transition: all 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .hov-op70:hover {
    opacity: 0.7;
  }
}

.u-pc {
  display: block;
}
@media screen and (max-width: 750px) {
  .u-pc {
    display: none !important;
  }
}

.u-pc-inlineblock {
  display: inline-block;
}
@media screen and (max-width: 750px) {
  .u-pc-inlineblock {
    display: none;
  }
}

.u-sp {
  display: none;
}
@media screen and (max-width: 750px) {
  .u-sp {
    display: block;
  }
}

.u-sp-inlineblock {
  display: none;
}
@media screen and (max-width: 750px) {
  .u-sp-inlineblock {
    display: inline-block;
  }
}

.u-sp-inline {
  display: none;
}
@media screen and (max-width: 750px) {
  .u-sp-inline {
    display: inline;
  }
}

.u-align--center {
  text-align: center;
}

.u-md {
  display: none;
}
@media screen and (max-width: 1023px) {
  .u-md {
    display: block;
  }
}

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

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

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

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

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

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

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

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

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

.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;
}

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

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

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

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

.swiper-3d .swiper-slide-shadow-left {
  background-image: 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-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

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

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

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

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

.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  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: 50%;
  background: transparent;
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 1);
  border: 1px solid #232215;
}

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

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

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

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

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

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

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

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

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

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  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: 0.2s transform, 0.2s left;
}

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

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

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  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-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,
.swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}

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

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

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

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

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

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

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

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

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

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

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

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  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-watch-progress .swiper-slide-visible .swiper-lazy-preloader,
.swiper:not(.swiper-watch-progress) .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);
  }
}
.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,
.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

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

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

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

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

.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;
}

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

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

.swiper-cards {
  overflow: visible;
}

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

/*************************************************
component
*************************************************/
.section_ttl-en .txt_wrap {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 5.3571428571cqw;
}
@media screen and (max-width: 750px) {
  .section_ttl-en .txt_wrap {
    gap: 7.2vw;
  }
}
.section_ttl-en .txt_wrap {
  --line: 0;
}
.section_ttl-en .txt_wrap::after {
  content: "";
  flex: 1;
  height: 1px;
  background-color: #000;
  transform: scaleX(var(--line));
  transform-origin: left center;
  will-change: transform;
}
.section_ttl-en p {
  font-size: max(1.8571428571cqw, 15px);
  line-height: 1.5;
  color: #b29b68;
  letter-spacing: 0;
}
@media screen and (max-width: 750px) {
  .section_ttl-en p {
    gap: 6.8vw;
    font-size: max(12px, 4.776119403cqw);
    line-height: 1.7;
  }
}

.ttl-wrap01 {
  font-size: max(12px, 2.1428571429cqw);
  letter-spacing: 0.08em;
  line-height: 2;
}
@media screen and (max-width: 750px) {
  .ttl-wrap01 {
    font-size: max(12px, 5.671641791cqw);
    line-height: 1.8;
  }
}

.ttl-wrap02 {
  text-align: center;
}
.ttl-wrap02 div {
  font-size: max(12px, 1.8571428571cqw);
  color: #b29b68;
  margin-bottom: 2.1428571429cqw;
}
@media screen and (max-width: 750px) {
  .ttl-wrap02 div {
    font-size: max(12px, 4.776119403cqw);
    margin-bottom: 4.6666666667vw;
  }
}
.ttl-wrap02 h2 {
  font-size: max(12px, 2.1428571429cqw);
  line-height: 1.3;
}
@media screen and (max-width: 750px) {
  .ttl-wrap02 h2 {
    font-size: max(12px, 5.671641791cqw);
    line-height: 1.8;
  }
}

.btn01 {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 2.0714285714cqw;
  font-size: max(12px, 1.2142857143cqw);
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .btn01 {
    gap: 5.8666666667vw;
    font-size: max(12px, 3.5820895522cqw);
  }
}
.btn01 .arrow {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 5.2857142857cqw;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #122335;
  transition: all 0.3s;
}
@media screen and (max-width: 750px) {
  .btn01 .arrow {
    width: 10.6666666667vw;
  }
}
.btn01 .arrow svg {
  width: max(1cqw, 10px);
}
@media screen and (max-width: 750px) {
  .btn01 .arrow svg {
    width: max(2.2388059701cqw, 10px);
  }
}
@media (hover: hover) and (pointer: fine) {
  .btn01:hover .arrow {
    scale: 0.9;
    background-color: #b29b68;
  }
}
.btn01.white {
  color: #fff;
}
.btn01.white .arrow {
  background-color: #fff;
}
.btn01.white .arrow svg path {
  fill: #000;
}
@media (hover: hover) and (pointer: fine) {
  .btn01.white:hover .arrow {
    scale: 0.9;
    background-color: #b29b68 !important;
  }
  .btn01.white:hover .arrow svg path {
    fill: #fff !important;
  }
}

.btn02 {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 35.7857142857cqw;
  aspect-ratio: 1/0.12;
  background-color: #fff;
  border-radius: 100vmax;
  border: 1px solid #b29b68;
  font-size: max(12px, 1.4285714286cqw);
  font-weight: 600;
  color: #b29b68;
  transition: all 0.3s;
}
@media screen and (max-width: 750px) {
  .btn02 {
    width: 94.0298507463cqw;
    font-size: max(12px, 4.1791044776cqw);
  }
}
@media (hover: hover) and (pointer: fine) {
  .btn02:hover {
    background-color: #b29b68;
    color: #fff;
  }
  .btn02:hover svg path {
    fill: #fff;
  }
}
.btn02 svg {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 2.4285714286cqw;
  width: max(0.7857142857cqw, 6px);
  height: auto;
  transition: all 0.3s;
}
@media screen and (max-width: 750px) {
  .btn02 svg {
    right: 6.5671641791cqw;
    width: max(1.6417910448cqw, 7px);
  }
}
.btn02 svg path {
  transition: all 0.3s;
}

.faq-link {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: max(15.3571428571cqw, 18rem);
  aspect-ratio: 1/0.21;
  border: 1px solid #000;
  border-radius: 100vmax;
  font-size: max(12px, 1.1428571429cqw);
  line-height: 1;
  transition: all 0.3s;
}
@media screen and (max-width: 750px) {
  .faq-link {
    width: 45.5223880597cqw;
    font-size: max(12px, 3.5820895522cqw);
  }
}
.faq-link svg {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 1.4285714286cqw;
  width: max(0.4285714286cqw, 4px);
  height: auto;
  transition: all 0.3s;
}
@media screen and (max-width: 750px) {
  .faq-link svg {
    right: max(4.9253731343cqw, 18px);
    width: max(1.3432835821cqw, 4px);
  }
}
.faq-link svg path {
  transition: all 0.2s;
}
@media (hover: hover) and (pointer: fine) {
  .faq-link:hover {
    color: #fff;
    background-color: #122335;
  }
  .faq-link:hover svg {
    right: 1.0714285714cqw;
  }
  .faq-link:hover svg path {
    fill: #fff;
  }
}

.footer-btn {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1/0.13;
  min-height: 45px;
  font-size: max(0.7291666667vw, 11px);
  background-color: rgba(255, 255, 255, 0.07);
  border: 1px solid #fff;
  margin-bottom: 2.65625vw;
  transition: all 0.3s;
}
@media screen and (max-width: 750px) {
  .footer-btn {
    aspect-ratio: 1/0.16;
    min-height: auto;
    font-size: 3.7333333333vw;
    margin-bottom: 9.7014925373cqw;
  }
}
@media (hover: hover) and (pointer: fine) {
  .footer-btn:hover {
    background-color: #fff;
    color: #122335;
  }
  .footer-btn:hover svg path {
    fill: #122335;
  }
}
.footer-btn svg {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 1.40625vw;
  width: max(0.8333333333vw, 14px);
}
@media screen and (max-width: 750px) {
  .footer-btn svg {
    right: 6vw;
    width: max(3.7333333333vw, 16px);
  }
}
.footer-btn svg path {
  transition: all 0.3s;
}

.block__anniversary-campaign {
  padding: 6.5714285714cqw 0 5.5714285714cqw;
  background-color: #f4f4f4;
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign {
    padding: 15.0746268657cqw 0;
  }
}
.block__anniversary-campaign.p-top {
  padding: 4.3229166667vw 0 3.59375vw;
  margin-inline: max(1.71875vw, 20px);
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign.p-top {
    padding: 43.0666666667vw 0 14.328358209cqw;
    margin-inline: 0;
    padding-inline: 2.6666666667vw;
    margin-top: -32.1333333333vw;
  }
}
.block__anniversary-campaign.pt02 {
  background-color: #fafafa;
}
.block__anniversary-campaign.pt03 {
  background-color: #e6e6e6;
}
.block__anniversary-campaign .inner > p {
  font-size: max(12px, 1.1428571429cqw);
  line-height: 2;
  text-align: center;
  color: #535353;
  margin-bottom: 4.2857142857cqw;
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign .inner > p {
    font-size: max(12px, 3.2835820896cqw);
    letter-spacing: 0;
    margin-bottom: 10.2985074627cqw;
  }
}
.block__anniversary-campaign .ttl {
  text-align: center;
  margin-bottom: 5.7142857143cqw;
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign .ttl {
    margin-bottom: 11.9402985075cqw;
  }
}
.block__anniversary-campaign .ttl div {
  font-size: max(12px, 1.5714285714cqw);
  line-height: 1.5;
  color: #b29b68;
  margin-bottom: 1.7857142857cqw;
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign .ttl div {
    font-size: 5.3731343284cqw;
    margin-bottom: 5.223880597cqw;
  }
}
.block__anniversary-campaign .ttl h2 {
  position: relative;
  display: inline-flex;
  font-size: max(12px, 2.1428571429cqw);
  font-weight: 600;
  line-height: 1.2;
  color: #b29b68;
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign .ttl h2 {
    font-size: max(12px, 4.1791044776cqw);
    letter-spacing: 0.08em;
  }
}
.block__anniversary-campaign .ttl h2::before, .block__anniversary-campaign .ttl h2::after {
  content: "";
  width: 7.4285714286cqw;
  height: 1px;
  background-color: #b29b68;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign .ttl h2::before, .block__anniversary-campaign .ttl h2::after {
    width: 7.4626865672cqw;
  }
}
.block__anniversary-campaign .ttl h2::before {
  right: calc(100% + 3.8571428571cqw);
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign .ttl h2::before {
    right: calc(100% + 2.2388059701cqw);
  }
}
.block__anniversary-campaign .ttl h2::after {
  left: calc(100% + 3.8571428571cqw);
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign .ttl h2::after {
    left: calc(100% + 2.2388059701cqw);
  }
}
.block__anniversary-campaign .fee-discount_wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2.8571428571cqw;
  margin-bottom: 4.2857142857cqw;
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign .fee-discount_wrap {
    flex-direction: column;
    gap: 2.9850746269cqw;
    margin-bottom: 8.9552238806cqw;
  }
}
.block__anniversary-campaign .fee-discount_wrap dl {
  width: max(39.8571428571cqw, 32rem);
  aspect-ratio: 1/0.2;
  display: flex;
  border: 1px solid #b29b68;
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign .fee-discount_wrap dl {
    width: 100%;
    aspect-ratio: 1/0.25;
  }
}
.block__anniversary-campaign .fee-discount_wrap dl dt {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 8.1428571429cqw;
  flex-shrink: 0;
  font-size: max(12px, 1.2857142857cqw);
  font-weight: 600;
  color: #fff;
  background-color: #b29b68;
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign .fee-discount_wrap dl dt {
    width: 23.1343283582cqw;
    font-size: 3.2vw;
  }
}
.block__anniversary-campaign .fee-discount_wrap dl dd {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-grow: 1;
  gap: 3.8571428571cqw;
  background-color: #fff;
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign .fee-discount_wrap dl dd {
    gap: 8.2089552239cqw;
  }
}
.block__anniversary-campaign .fee-discount_wrap dl dd .before {
  position: relative;
  padding-top: 5px;
}
.block__anniversary-campaign .fee-discount_wrap dl dd .before::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: calc(100% + 1.4285714286cqw);
  width: 18px;
  aspect-ratio: 1/1;
  background: url(../images/common/icon_arrow04.svg) no-repeat center/contain;
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign .fee-discount_wrap dl dd .before::after {
    width: 3.2vw;
    left: calc(100% + 2.9850746269cqw);
  }
}
.block__anniversary-campaign .fee-discount_wrap dl dd .before p,
.block__anniversary-campaign .fee-discount_wrap dl dd .before div {
  line-height: 1;
  letter-spacing: 0;
  color: #a59b8b;
}
.block__anniversary-campaign .fee-discount_wrap dl dd .before .fee {
  font-size: max(12px, 1cqw);
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign .fee-discount_wrap dl dd .before .fee {
    font-size: max(12px, 3.1343283582cqw);
  }
}
.block__anniversary-campaign .fee-discount_wrap dl dd .before .fee span {
  font-size: 2.5cqw;
  line-height: 1;
  font-weight: 500;
  margin-right: 0.2857142857cqw;
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign .fee-discount_wrap dl dd .before .fee span {
    font-size: 5.8208955224cqw;
    margin-right: 0.5333333333vw;
  }
}
.block__anniversary-campaign .fee-discount_wrap dl dd .before .txt {
  font-size: max(0.7142857143cqw, 10px);
  letter-spacing: 0;
  font-weight: 600;
  text-align: center;
  margin-top: 0.3571428571cqw;
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign .fee-discount_wrap dl dd .before .txt {
    font-size: max(12px, 2.9850746269cqw);
    margin-top: 1.1940298507cqw;
  }
}
.block__anniversary-campaign .fee-discount_wrap dl dd .after {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.8571428571cqw;
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign .fee-discount_wrap dl dd .after {
    gap: 1.7910447761cqw;
  }
}
.block__anniversary-campaign .fee-discount_wrap dl dd .after p {
  line-height: 1;
  letter-spacing: 0;
  color: #b29b68;
}
.block__anniversary-campaign .fee-discount_wrap dl dd .after .txt {
  font-size: max(12px, 1.2857142857cqw);
  font-weight: 600;
  text-decoration-line: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.5em;
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign .fee-discount_wrap dl dd .after .txt {
    font-size: max(12px, 3.4328358209cqw);
    text-decoration-thickness: 0.2985074627cqw;
  }
}
.block__anniversary-campaign .fee-discount_wrap dl dd .after .fee {
  font-size: max(12px, 1.2142857143cqw);
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign .fee-discount_wrap dl dd .after .fee {
    font-size: max(12px, 3.7313432836cqw);
  }
}
.block__anniversary-campaign .fee-discount_wrap dl dd .after .fee span {
  font-size: 4.9285714286cqw;
  font-weight: 500;
  line-height: 1;
  margin-right: 0.1428571429cqw;
}
@media screen and (max-width: 750px) {
  .block__anniversary-campaign .fee-discount_wrap dl dd .after .fee span {
    font-size: 10.8955223881cqw;
    margin-right: 0.2666666667vw;
  }
}
.block__anniversary-campaign .btn-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
}

.trainer-card {
  position: relative;
}
.trainer-card .img-box {
  z-index: 0;
  aspect-ratio: 1/1.22;
}
.trainer-card .img-box img {
  -o-object-position: bottom center;
     object-position: bottom center;
}
.trainer-card .staff-info {
  position: relative;
  width: max(17.1428571429cqw, 17rem);
  padding-top: 0.9375vw;
  padding-right: 0.7142857143cqw;
  padding-left: 0.2142857143cqw;
  background-color: #fff;
  margin-top: -4.2857142857cqw;
  margin-left: -1px;
  z-index: 1;
}
@media screen and (max-width: 750px) {
  .trainer-card .staff-info {
    width: 46.6666666667vw;
    padding-top: 4.328358209cqw;
    margin-top: -9.6vw;
  }
}
.trainer-card .staff-info .shop,
.trainer-card .staff-info .star {
  color: #b29b68;
}
.trainer-card .staff-info .shop {
  font-size: max(0.8571428571cqw, 11px);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0;
}
@media screen and (max-width: 750px) {
  .trainer-card .staff-info .shop {
    font-size: max(12px, 3.5820895522cqw);
    margin-bottom: 1.4925373134cqw;
  }
}
.trainer-card .staff-info h3 {
  font-size: max(12px, 1.5714285714cqw);
  letter-spacing: 0;
}
@media screen and (max-width: 750px) {
  .trainer-card .staff-info h3 {
    font-size: 4.776119403cqw;
    margin-bottom: 1.4925373134cqw;
  }
}
.trainer-card .staff-info .rank {
  font-size: max(12px, 0.8571428571cqw);
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .trainer-card .staff-info .rank {
    font-size: 3.5820895522cqw;
  }
}
.trainer-card .staff-info .star {
  display: block;
  margin-top: 0.5714285714cqw;
}
@media screen and (max-width: 750px) {
  .trainer-card .staff-info .star {
    margin-top: 2.3880597015cqw;
  }
}

.block__common-cta {
  width: 100%;
  display: flex;
}
@media screen and (max-width: 750px) {
  .block__common-cta {
    flex-direction: column;
  }
}
.block__common-cta .cta-contents {
  position: relative;
  width: 50%;
  aspect-ratio: 1/0.54;
  transition: all 0.3s;
}
@media screen and (max-width: 750px) {
  .block__common-cta .cta-contents {
    width: 100%;
    aspect-ratio: 1/0.6;
  }
}
.block__common-cta .cta-contents a {
  display: block;
  width: 100%;
  height: 100%;
}
@media (hover: hover) and (pointer: fine) {
  .block__common-cta .cta-contents a:hover .btn01 .arrow {
    scale: 0.9;
    background-color: #b29b68;
  }
  .block__common-cta .cta-contents a:hover .btn01 .arrow svg path {
    fill: #fff;
  }
}
.block__common-cta .cta-contents .ttl {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 6.71875vw;
}
@media screen and (max-width: 750px) {
  .block__common-cta .cta-contents .ttl {
    left: 8vw;
  }
}
.block__common-cta .cta-contents .ttl div,
.block__common-cta .cta-contents .ttl h2 {
  color: #fff;
}
.block__common-cta .cta-contents .ttl div {
  font-size: max(12px, 1.0416666667vw);
  letter-spacing: 0;
  margin-bottom: 0.5208333333vw;
}
@media screen and (max-width: 750px) {
  .block__common-cta .cta-contents .ttl div {
    font-size: max(12px, 3.7333333333vw);
    margin-bottom: 2.2666666667vw;
  }
}
.block__common-cta .cta-contents .ttl h2 {
  font-size: max(12px, 1.6666666667vw);
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .block__common-cta .cta-contents .ttl h2 {
    font-size: max(12px, 5.0666666667vw);
    letter-spacing: 0.08em;
  }
}
.block__common-cta .cta-contents .btn-wrap {
  position: absolute;
  bottom: 2.1875vw;
  right: 2.5520833333vw;
}
@media screen and (max-width: 750px) {
  .block__common-cta .cta-contents .btn-wrap {
    display: none;
  }
}
.block__common-cta .cta-contents .btn-wrap .btn01 {
  font-size: max(12px, 0.9375vw);
  color: #fff;
  gap: 1.3020833333vw;
  transition: all 0.3s;
}
.block__common-cta .cta-contents .btn-wrap .btn01 .arrow {
  width: 3.8541666667vw;
  background-color: #fff;
  transition: all 0.3s;
}
.block__common-cta .cta-contents .btn-wrap .btn01 .arrow svg {
  width: max(1cqw, 8px);
}
.block__common-cta .cta-contents .btn-wrap .btn01 .arrow svg path {
  transition: all 0.3s;
}
.block__common-cta .cta-contents.recruit {
  background: url(../images/top/cta_bg-recruit.jpg) no-repeat center/cover;
}
@media screen and (max-width: 750px) {
  .block__common-cta .cta-contents.recruit {
    background: url(../images/top/cta_bg-recruit_sp.jpg) no-repeat center/cover;
  }
}
.block__common-cta .cta-contents.contact {
  background: url(../images/top/cta_bg-contact.jpg) no-repeat center/cover;
}
@media screen and (max-width: 750px) {
  .block__common-cta .cta-contents.contact {
    background: url(../images/top/cta_bg-contact_sp.jpg) no-repeat center/cover;
  }
}
@media (hover: hover) and (pointer: fine) {
  .block__common-cta .cta-contents:hover {
    background-size: 115% !important;
  }
}

.section__p-under-mv {
  position: relative;
  text-align: center;
}
.section__p-under-mv .head-ttl {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 50%;
  transform: translateY(-50%);
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 750px) {
  .section__p-under-mv .head-ttl {
    width: 100%;
  }
}
.section__p-under-mv .head-ttl div,
.section__p-under-mv .head-ttl h1 {
  color: #fff;
}
.section__p-under-mv .head-ttl div {
  font-size: 2.8645833333vw;
  letter-spacing: 0;
  line-height: 1.3;
  margin-bottom: 0.625vw;
}
@media screen and (max-width: 750px) {
  .section__p-under-mv .head-ttl div {
    font-size: 6.6666666667vw;
    margin-bottom: 2.5333333333vw;
  }
}
.section__p-under-mv .head-ttl h1 {
  font-size: max(12px, 1.0416666667vw);
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .section__p-under-mv .head-ttl h1 {
    font-size: 3.4666666667vw;
  }
}
.section__p-under-mv.p-shop h1 {
  font-size: max(12px, 2.2916666667vw);
  font-weight: 600;
  line-height: 1.4;
}
@media screen and (max-width: 750px) {
  .section__p-under-mv.p-shop h1 {
    font-size: 6.6666666667vw;
    letter-spacing: 0;
  }
}
.section__p-under-mv.p-shop .sub {
  font-size: max(12px, 0.8333333333vw);
  letter-spacing: 0.04em;
}
@media screen and (max-width: 750px) {
  .section__p-under-mv.p-shop .sub {
    font-size: 3.2vw;
    letter-spacing: 0.05em;
  }
}

.breadcrumbs {
  padding-top: 1.0416666667vw;
  padding-inline: 95px;
  background-color: #f5f5f5;
}
@media screen and (max-width: 750px) {
  .breadcrumbs {
    padding-top: 4vw;
    padding-inline: 4vw;
  }
}
.breadcrumbs ul {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.78125vw;
  flex-wrap: wrap;
}
@media screen and (max-width: 750px) {
  .breadcrumbs ul {
    gap: 3.6vw;
    row-gap: 0.7462686567cqw;
  }
}
.breadcrumbs ul li,
.breadcrumbs ul a {
  font-family: widescreen-ex, sans-serif;
  font-size: max(12px, 0.7291666667vw);
  line-height: 1.7;
}
@media screen and (max-width: 750px) {
  .breadcrumbs ul li,
  .breadcrumbs ul a {
    font-size: 3.2vw;
    letter-spacing: 0;
  }
}
.breadcrumbs ul li:last-of-type {
  color: #b29b68;
}
.breadcrumbs ul li:not(:first-of-type) {
  position: relative;
  padding-left: 1.3020833333vw;
}
@media screen and (max-width: 750px) {
  .breadcrumbs ul li:not(:first-of-type) {
    padding-left: 5.6vw;
  }
}
.breadcrumbs ul li:not(:first-of-type)::after {
  content: ">";
  color: #000;
  position: absolute;
  top: 0;
  left: 0;
}
.breadcrumbs ul a {
  transition: all 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .breadcrumbs ul a:hover {
    opacity: 0.5;
  }
}

.modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: rgba(18, 35, 53, 0.97);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.modal-overlay.is-open {
  opacity: 1;
  visibility: visible;
}
.modal-overlay.is-open .modal {
  opacity: 1;
  transform: translateY(0);
}

.modal {
  position: relative;
  width: 90%;
  max-width: 84.375vw;
  padding-right: 3.75vw;
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.3s ease, transform 0.3s ease;
}
@media screen and (max-width: 750px) {
  .modal {
    max-width: 89.3333333333vw;
    max-height: 85dvh;
    padding-right: 0;
    overflow-y: scroll;
  }
}

.modal-close {
  position: absolute;
  top: 4.6354166667vw;
  right: 5.8854166667vw;
  width: 2.3958333333vw;
  height: 2.3958333333vw;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  cursor: pointer;
  transition: color 0.2s;
}
@media screen and (max-width: 750px) {
  .modal-close {
    top: 4vw;
    right: 5.3333333333vw;
    width: 6.4vw;
    height: 6.4vw;
  }
}
.modal-close:hover {
  color: #fff;
}
.modal-close span {
  display: block;
  width: 100%;
  height: 2px;
  background-color: #909090;
}
.modal-close span.close-line01 {
  rotate: 45deg;
}
.modal-close span.close-line02 {
  transform: rotate(-45deg) translateY(-2px);
}

.modal-body {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 8.8541666667vw;
}
@media screen and (max-width: 750px) {
  .modal-body {
    flex-direction: column;
    gap: 14.6666666667vw;
  }
}

.modal-img {
  flex-shrink: 0;
  width: 33.75vw;
  aspect-ratio: 1/1.39;
  max-height: 92dvh;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  .modal-img {
    max-height: auto;
    width: 80vw;
    margin: 0 auto;
  }
}

.modal-info {
  flex-grow: 1;
  padding-top: 7.8125vw;
  padding-right: 10px;
  max-height: 85dvh;
  overflow-y: auto;
}
@media screen and (max-width: 750px) {
  .modal-info {
    padding-top: 0;
    max-height: auto;
    overflow: inherit;
  }
}
.modal-info .section_ttl-en {
  margin-bottom: 1.0416666667vw;
}
@media screen and (max-width: 750px) {
  .modal-info .section_ttl-en {
    margin-bottom: 2.6666666667vw;
  }
}
.modal-info .section_ttl-en .txt_wrap::after {
  background-color: #909090;
}
.modal-info .section_ttl-en p {
  font-size: max(12px, 0.8333333333vw);
  gap: 0.9895833333vw;
}
@media screen and (max-width: 750px) {
  .modal-info .section_ttl-en p {
    gap: 6.6666666667vw;
    font-size: max(12px, 3.2vw);
  }
}
.modal-info .flex {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 1.875vw;
}
@media screen and (max-width: 750px) {
  .modal-info .flex {
    flex-direction: column;
    align-items: flex-start;
    gap: 6.6666666667vw;
    margin-bottom: 6.6666666667vw;
  }
}
.modal-info .flex .name {
  max-width: 25cqw;
  font-size: 1.875vw;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.12em;
  color: #fff;
}
@media screen and (max-width: 750px) {
  .modal-info .flex .name {
    max-width: none;
    font-size: 7.2vw;
    gap: 2.6666666667vw;
  }
}
.modal-info .flex .trainer_status p {
  font-size: max(12px, 0.9375vw);
  line-height: 1.38;
}
@media screen and (max-width: 750px) {
  .modal-info .flex .trainer_status p {
    font-size: max(12px, 3.4666666667vw);
  }
}
.modal-info .flex .trainer_status .rank {
  color: #fff;
}
.modal-info .flex .trainer_status .star {
  color: #b29b68;
}
.modal-info .txt {
  font-size: max(0.8333333333vw, 13px);
  line-height: 2.18;
  letter-spacing: 0.02em;
  color: #fff;
}
@media screen and (max-width: 750px) {
  .modal-info .txt {
    font-size: max(12px, 3.4666666667vw);
    letter-spacing: 0.05em;
    line-height: 2;
  }
}
.modal-info .link_wrap {
  display: flex;
  gap: 0.625vw;
  margin-bottom: 2.0833333333vw;
}
@media screen and (max-width: 750px) {
  .modal-info .link_wrap {
    gap: 5.2vw;
    margin-bottom: 10vw;
  }
}
.modal-info .link_wrap a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: max(10.6770833333vw, 20rem);
  aspect-ratio: 1/0.15;
  border: 1px solid #b29b68;
  border-radius: 100vmax;
  font-size: max(12px, 0.6770833333vw);
  font-weight: 600;
  color: #b29b68;
  transition: all 0.3s;
}
@media screen and (max-width: 750px) {
  .modal-info .link_wrap a {
    width: 42vw;
    aspect-ratio: 1/0.19;
    font-size: max(2.6666666667vw, 11px);
  }
}
.modal-info .link_wrap a svg {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0.8333333333vw;
  width: max(0.3125vw, 4px);
  height: auto;
}
@media screen and (max-width: 750px) {
  .modal-info .link_wrap a svg {
    right: 2.8vw;
    width: max(1.2vw, 4px);
  }
}
@media (hover: hover) and (pointer: fine) {
  .modal-info .link_wrap a:hover {
    background-color: #fff;
    border-color: #fff;
  }
}
.modal-info .history_wrap {
  margin-top: 4.0625vw;
}
@media screen and (max-width: 750px) {
  .modal-info .history_wrap {
    margin-top: 12vw;
  }
}
.modal-info .history_wrap h4 {
  font-size: max(12px, 1.1458333333vw);
  font-weight: 600;
  color: #b29b68;
  margin-bottom: 1.4583333333vw;
}
@media screen and (max-width: 750px) {
  .modal-info .history_wrap h4 {
    font-size: max(12px, 4.2666666667vw);
    margin-bottom: 8vw;
  }
}
.modal-info .history_wrap ul li {
  position: relative;
  font-size: max(12px, 0.8333333333vw);
  padding-left: 20px;
  color: #fff;
  padding-bottom: max(0.78125vw, 10px);
  border-bottom: 1px solid #909090;
}
@media screen and (max-width: 750px) {
  .modal-info .history_wrap ul li {
    font-size: max(12px, 3.4666666667vw);
    padding-bottom: max(2.6666666667vw, 15px);
  }
}
.modal-info .history_wrap ul li::before {
  content: "・";
  font-size: max(12px, 0.8333333333vw);
  position: absolute;
  top: 0px;
  left: 5px;
}
.modal-info .history_wrap ul li:not(:last-of-type) {
  margin-bottom: max(0.78125vw, 10px);
}
@media screen and (max-width: 750px) {
  .modal-info .history_wrap ul li:not(:last-of-type) {
    margin-bottom: max(2.6666666667vw, 15px);
  }
}

.pagination_wrap {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  position: absolute;
}
.pagination_wrap .swiper-pagination-container {
  display: flex;
  gap: 5.4285714286cqw;
}
.pagination_wrap .swiper-button-prev,
.pagination_wrap .swiper-button-next {
  position: static;
  font-size: max(1cqw, 11px);
  font-weight: 600;
  width: auto !important;
  height: auto !important;
  margin-top: 0;
  gap: 1.0714285714cqw;
}
.pagination_wrap .swiper-button-prev::after,
.pagination_wrap .swiper-button-next::after {
  display: none;
}
.pagination_wrap .swiper-button-prev svg,
.pagination_wrap .swiper-button-next svg {
  width: max(0.625vw, 7px);
  height: auto;
}
.pagination_wrap .swiper-button-prev svg {
  rotate: 180deg;
}

.pagination-wrapper {
  width: 65.7142857143cqw;
  margin: 4.7142857143cqw auto 0;
}
@media screen and (max-width: 750px) {
  .pagination-wrapper {
    width: 100%;
    margin: 0 auto;
  }
}
.pagination-wrapper .nav-links {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.pagination-wrapper .nav-links span,
.pagination-wrapper .nav-links a {
  font-family: widescreen-ex, sans-serif;
}
.pagination-wrapper .nav-links .prev,
.pagination-wrapper .nav-links .next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: max(1cqw, 12px);
}
@media screen and (max-width: 750px) {
  .pagination-wrapper .nav-links .prev,
  .pagination-wrapper .nav-links .next {
    font-size: max(2.9850746269cqw, 12px);
  }
}
.pagination-wrapper .nav-links .prev {
  left: 0;
}
.pagination-wrapper .nav-links .next {
  right: 0;
}
.pagination-wrapper .nav-links .nav-numbers {
  display: flex;
  gap: 1.5cqw;
}
@media screen and (max-width: 750px) {
  .pagination-wrapper .nav-links .nav-numbers {
    gap: 2.2388059701cqw;
  }
}
.pagination-wrapper .nav-links .page-numbers {
  display: flex;
  justify-content: center;
  align-items: center;
  width: max(2.4285714286cqw, 2rem);
  aspect-ratio: 1/1;
  border: 1px solid #a3a3a3;
  font-size: max(1.1428571429cqw, 12px);
  color: #a3a3a3;
  line-height: 1;
  transition: all 0.3s;
}
@media screen and (max-width: 750px) {
  .pagination-wrapper .nav-links .page-numbers {
    width: 8.0597014925cqw;
    font-size: max(4.1791044776cqw, 12px);
  }
}
.pagination-wrapper .nav-links .page-numbers.current {
  border-color: #000;
  color: #000;
}
@media (hover: hover) and (pointer: fine) {
  .pagination-wrapper .nav-links .page-numbers:hover {
    border-color: #000;
    color: #000;
  }
}
.pagination-wrapper .nav-links .dots {
  padding-top: 0.7142857143cqw;
}

.c_cate {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.6428571429cqw;
  margin-bottom: 1.4285714286cqw;
}
@media screen and (max-width: 750px) {
  .c_cate {
    gap: 2.2388059701cqw;
    margin-bottom: 5.5223880597cqw;
  }
}
.c_cate span,
.c_cate a {
  font-size: max(0.8571428571cqw, 11px);
  line-height: 1;
  text-align: center;
  background-color: #fff;
}
@media screen and (max-width: 750px) {
  .c_cate span,
  .c_cate a {
    font-size: max(2.9850746269cqw, 10px);
  }
}
.c_cate span {
  min-width: 7.1428571429cqw;
  border: 1px solid #000;
  border-radius: 100vmax;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  .c_cate span {
    min-width: 20.1492537313cqw;
  }
}
.c_cate span:not(:has(a)) {
  padding: max(0.3571428571cqw, 4px) max(1cqw, 14px) max(0.3571428571cqw, 4px);
}
@media screen and (max-width: 750px) {
  .c_cate span:not(:has(a)) {
    padding: 1.1940298507cqw 3.2835820896cqw 1.1940298507cqw;
  }
}
.c_cate span a {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  padding: max(0.3571428571cqw, 4px) max(1cqw, 14px) max(0.3571428571cqw, 4px);
  transition: all 0.3s;
}
.c_cate span a svg {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 8px;
  width: max(0.2857142857cqw, 4px);
  height: auto;
}
@media screen and (max-width: 750px) {
  .c_cate span a svg {
    right: 6px;
    width: max(0.8955223881cqw, 3px);
  }
}
@media (hover: hover) and (pointer: fine) {
  .c_cate span a:hover {
    background-color: #000;
    color: #fff;
  }
  .c_cate span a:hover svg path {
    fill: #fff;
  }
}

.section__common-review {
  padding-top: 4.7395833333vw;
  padding-bottom: 9.0625vw;
  background-color: #122335;
}
@media screen and (max-width: 899px) {
  .section__common-review {
    overflow: hidden;
  }
}
@media screen and (max-width: 750px) {
  .section__common-review {
    padding-top: 15.2vw;
    padding-bottom: 12.6666666667vw;
  }
}
@media screen and (max-width: 750px) {
  .section__common-review .inner {
    display: flex;
    flex-direction: column;
  }
}
.section__common-review .section_ttl-en {
  margin-bottom: 5.3571428571cqw;
}
@media screen and (max-width: 750px) {
  .section__common-review .section_ttl-en {
    margin-bottom: 8.9552238806cqw;
  }
}
.section__common-review .section_ttl-en .txt_wrap::after {
  background-color: #fff;
}
.section__common-review .flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 7.1428571429cqw;
}
@media screen and (max-width: 750px) {
  .section__common-review .flex {
    display: contents;
  }
}
@media screen and (max-width: 750px) {
  .section__common-review .flex .ttl-wrap01 {
    margin-bottom: 15.223880597cqw;
    order: 1;
  }
}
.section__common-review .flex .ttl-wrap01 h2 {
  color: #fff;
}
@media screen and (max-width: 750px) {
  .section__common-review .flex .btn-wrap {
    margin: 0 0 0 auto;
    order: 3;
  }
}
.section__common-review .flex .btn-wrap .btn01 {
  color: #fff;
}
.section__common-review .flex .btn-wrap .btn01 .arrow {
  background-color: #fff;
}
.section__common-review .flex .btn-wrap .btn01 .arrow svg path {
  fill: #000;
}
@media screen and (max-width: 899px) {
  .section__common-review .block_review {
    display: flex;
    width: 116.2002945508cqw;
    overflow-x: auto;
    padding-right: 16.2002945508cqw;
  }
}
@media screen and (max-width: 750px) {
  .section__common-review .block_review {
    width: 105.9701492537cqw;
    margin-bottom: 7.7611940299cqw;
    padding-right: 5.9701492537cqw;
    order: 2;
  }
}
.section__common-review .block_review .sp_slide-wrap {
  display: flex;
  gap: 2.8571428571cqw;
}
@media screen and (max-width: 899px) {
  .section__common-review .block_review .sp_slide-wrap {
    width: -moz-max-content;
    width: max-content;
  }
}
@media screen and (max-width: 750px) {
  .section__common-review .block_review .sp_slide-wrap {
    gap: 5.671641791cqw;
    padding-bottom: 4.4776119403cqw;
  }
}
.section__common-review .block_review .box {
  width: calc(33.3333333333% - 1.8095238095cqw);
}
@media screen and (max-width: 899px) {
  .section__common-review .block_review .box {
    width: 40rem;
  }
}
@media screen and (max-width: 750px) {
  .section__common-review .block_review .box {
    width: 74.6268656716cqw;
  }
}
.section__common-review .block_review .box .img-box {
  width: 100%;
  aspect-ratio: 1/0.67;
  margin-bottom: 1.7142857143cqw;
}
@media screen and (max-width: 750px) {
  .section__common-review .block_review .box .img-box {
    margin-bottom: 6.5671641791cqw;
  }
}
.section__common-review .block_review .box .text-wrap h3,
.section__common-review .block_review .box .text-wrap div,
.section__common-review .block_review .box .text-wrap a {
  color: #fff;
}
.section__common-review .block_review .box .text-wrap div,
.section__common-review .block_review .box .text-wrap a {
  font-size: max(0.8571428571cqw, 11px);
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .section__common-review .block_review .box .text-wrap div,
  .section__common-review .block_review .box .text-wrap a {
    font-size: max(2.9850746269cqw, 10px);
  }
}
.section__common-review .block_review .box .text-wrap .cate {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.6428571429cqw;
  margin-bottom: 1.2857142857cqw;
}
@media screen and (max-width: 750px) {
  .section__common-review .block_review .box .text-wrap .cate {
    gap: 2.2388059701cqw;
    margin-bottom: 5.5223880597cqw;
  }
}
.section__common-review .block_review .box .text-wrap .cate span {
  min-width: 7.1428571429cqw;
  border: 1px solid #fff;
  border-radius: 100vmax;
}
@media screen and (max-width: 750px) {
  .section__common-review .block_review .box .text-wrap .cate span {
    min-width: 20.1492537313cqw;
  }
}
.section__common-review .block_review .box .text-wrap .cate span:not(:has(a)) {
  padding: max(0.3571428571cqw, 4px) max(1cqw, 14px) max(0.3571428571cqw, 4px);
}
@media screen and (max-width: 750px) {
  .section__common-review .block_review .box .text-wrap .cate span:not(:has(a)) {
    padding: 1.1940298507cqw 3.2835820896cqw 1.1940298507cqw;
  }
}
.section__common-review .block_review .box .text-wrap .cate span a {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  padding: max(0.3571428571cqw, 4px) max(1cqw, 14px) max(0.3571428571cqw, 4px);
  transition: all 0.3s;
  border-radius: 100vmax;
}
.section__common-review .block_review .box .text-wrap .cate span a svg {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 8px;
  width: max(0.2857142857cqw, 4px);
  height: auto;
}
@media screen and (max-width: 750px) {
  .section__common-review .block_review .box .text-wrap .cate span a svg {
    right: 6px;
    width: max(0.8955223881cqw, 3px);
  }
}
.section__common-review .block_review .box .text-wrap .cate span a svg path {
  fill: #fff;
}
@media (hover: hover) and (pointer: fine) {
  .section__common-review .block_review .box .text-wrap .cate span a:hover {
    background-color: #fff;
    color: #000;
  }
  .section__common-review .block_review .box .text-wrap .cate span a:hover svg path {
    fill: #000;
  }
}
.section__common-review .block_review .box .text-wrap .ttl a h3 {
  font-size: max(12px, 1.4285714286cqw);
  font-weight: 500;
  line-height: 1.7;
  text-align: left;
  transition: all 0.3s;
}
@media screen and (max-width: 750px) {
  .section__common-review .block_review .box .text-wrap .ttl a h3 {
    font-size: max(12px, 3.8805970149cqw);
    line-height: 2;
  }
}
@media (hover: hover) and (pointer: fine) {
  .section__common-review .block_review .box .text-wrap .ttl a:hover h3 {
    color: #b29b68;
  }
}

.c_stores-card {
  position: relative;
  background-color: #fff;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
.c_stores-card a {
  display: flex;
  gap: 5.3571428571cqw;
  padding: 3.3571428571cqw 3.4285714286cqw;
  transition: all 0.3s;
}
@media screen and (max-width: 899px) {
  .c_stores-card a {
    gap: 2.8571428571cqw;
  }
}
@media screen and (max-width: 750px) {
  .c_stores-card a {
    flex-wrap: wrap;
    gap: 0;
    padding: 5.9701492537cqw;
    align-items: flex-start;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c_stores-card a:hover svg #circle {
    stroke: #b29b68;
    fill: #b29b68;
  }
  .c_stores-card a:hover svg path {
    fill: #fff;
  }
}
.c_stores-card .img-box {
  width: 22.1428571429cqw;
  aspect-ratio: 1/0.64;
  flex-shrink: 0;
}
@media screen and (max-width: 750px) {
  .c_stores-card .img-box {
    width: 35.8208955224cqw;
    aspect-ratio: 1/0.68;
    margin-right: 5.3731343284cqw;
    flex: 0 0 35.8208955224cqw;
    order: 3;
  }
}
.c_stores-card .text-wrap {
  padding-top: 1.2142857143cqw;
}
@media screen and (max-width: 750px) {
  .c_stores-card .text-wrap {
    padding-top: 0;
    display: contents;
  }
}
.c_stores-card .text-wrap h3 {
  font-size: max(12px, 1.0714285714cqw);
  line-height: 1.7;
  margin-bottom: 0.4285714286cqw;
}
@media screen and (max-width: 750px) {
  .c_stores-card .text-wrap h3 {
    font-size: max(12px, 3.5820895522cqw);
    margin-bottom: 1.7910447761cqw;
    flex: 0 0 100%;
    order: 1;
  }
}
.c_stores-card .text-wrap .sub-ttl {
  font-size: 2.1428571429cqw;
  letter-spacing: 0;
  color: #b29b68;
  margin-bottom: 1.2857142857cqw;
}
@media screen and (max-width: 750px) {
  .c_stores-card .text-wrap .sub-ttl {
    font-size: 4.776119403cqw;
    margin-bottom: 4.6268656716cqw;
    flex: 0 0 100%;
    order: 2;
  }
}
@media screen and (max-width: 750px) {
  .c_stores-card .text-wrap .shop-info {
    display: flex;
    flex-direction: column;
    gap: 2.6865671642cqw;
    min-width: 0;
    flex: 1 1 0;
    order: 4;
  }
}
.c_stores-card .text-wrap .address {
  max-width: 22.8571428571cqw;
  font-size: max(12px, 1.1428571429cqw);
  line-height: 1.7;
  margin-bottom: 0.9375vw;
}
@media screen and (max-width: 750px) {
  .c_stores-card .text-wrap .address {
    max-width: none;
    font-size: max(12px, 3.5820895522cqw);
    line-height: 1.5;
    margin-bottom: 0;
  }
}
.c_stores-card .text-wrap .tel {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.6428571429cqw;
  font-size: max(12px, 1.7142857143cqw);
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  .c_stores-card .text-wrap .tel {
    font-size: 4.1791044776cqw;
    gap: 1.9402985075cqw;
  }
}
.c_stores-card .text-wrap .tel img {
  width: max(0.8571428571cqw, 10px);
}
@media screen and (max-width: 750px) {
  .c_stores-card .text-wrap .tel img {
    width: max(2.8358208955cqw, 10px);
  }
}
.c_stores-card svg {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 3.5714285714cqw;
  width: max(3.3571428571cqw, 30px);
  height: auto;
  transition: all 0.3s;
}
@media screen and (max-width: 899px) {
  .c_stores-card svg {
    top: 4.2857142857cqw;
    right: 2.8571428571cqw;
    transform: none;
  }
}
@media screen and (max-width: 750px) {
  .c_stores-card svg {
    width: 10.447761194cqw;
    top: 5.9701492537cqw;
    right: 5.9701492537cqw;
    transform: none;
  }
}
.c_stores-card svg #circle {
  transition: all 0.3s;
}

.c_training-flow {
  position: relative;
  padding-top: 7.2395833333vw;
  padding-bottom: 6.5625vw;
  background-color: #122335;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  .c_training-flow {
    padding-top: 12.1333333333vw;
    padding-bottom: 11.7333333333vw;
  }
}
.c_training-flow h2,
.c_training-flow h3,
.c_training-flow h4,
.c_training-flow div,
.c_training-flow p,
.c_training-flow li {
  color: #fff;
}
.c_training-flow .inner {
  position: relative;
  z-index: 1;
}
.c_training-flow .inner > .img-box {
  width: 92.8571428571cqw;
  margin-bottom: 7.8571428571cqw;
}
@media screen and (max-width: 750px) {
  .c_training-flow .inner > .img-box {
    width: 80cqw;
    margin-bottom: 16.4179104478cqw;
  }
}
.c_training-flow .section_ttl-en {
  margin-bottom: 5.7142857143cqw;
}
@media screen and (max-width: 750px) {
  .c_training-flow .section_ttl-en {
    margin-bottom: 10.447761194cqw;
  }
}
.c_training-flow .section_ttl-en .txt_wrap::after {
  background-color: #fff;
}
.c_training-flow .section_ttl-en .txt_wrap p {
  color: #b29b68;
}
.c_training-flow .ttl-wrap01 {
  margin-bottom: 5.7142857143cqw;
}
@media screen and (max-width: 750px) {
  .c_training-flow .ttl-wrap01 {
    margin-bottom: 10.447761194cqw;
  }
}
.c_training-flow .txt {
  font-size: max(12px, 1.4285714286cqw);
  margin-bottom: 6.7857142857cqw;
}
@media screen and (max-width: 750px) {
  .c_training-flow .txt {
    font-size: max(12px, 3.8805970149cqw);
    margin-bottom: 10.447761194cqw;
  }
}
.c_training-flow .flow-step_ttl {
  font-size: 2.1428571429cqw;
  margin-bottom: 3.5714285714cqw;
}
@media screen and (max-width: 750px) {
  .c_training-flow .flow-step_ttl {
    font-size: 5.671641791cqw;
    margin-bottom: 10.447761194cqw;
  }
}
.c_training-flow .flow-step_ttl span {
  color: #b29b68;
}
.c_training-flow .block_flow-contents {
  width: 92.8571428571cqw;
  display: flex;
  flex-direction: column;
  gap: 3.8571428571cqw;
}
@media screen and (max-width: 750px) {
  .c_training-flow .block_flow-contents {
    width: 100%;
    gap: 11.1940298507cqw;
  }
}
.c_training-flow .block_flow-contents .box {
  display: flex;
  gap: 4.1428571429cqw;
  padding: 3.0714285714cqw 3.5cqw 3.0714285714cqw 5.5714285714cqw;
  background-color: rgba(255, 255, 255, 0.04);
  border: 1px solid #b29b68;
}
@media screen and (max-width: 750px) {
  .c_training-flow .block_flow-contents .box {
    flex-direction: column-reverse;
    gap: 4.4776119403cqw;
    padding: 10.447761194cqw 8.9552238806cqw 8.9552238806cqw;
  }
}
.c_training-flow .block_flow-contents .box .text-wrap {
  flex-grow: 1;
}
.c_training-flow .block_flow-contents .box .text-wrap .ttl {
  display: flex;
  gap: 1.7857142857cqw;
  margin-bottom: 1.4285714286cqw;
}
@media screen and (max-width: 750px) {
  .c_training-flow .block_flow-contents .box .text-wrap .ttl {
    gap: 4.0298507463cqw;
    margin-bottom: 3.7313432836cqw;
  }
}
.c_training-flow .block_flow-contents .box .text-wrap .ttl img {
  width: 5cqw;
}
@media screen and (max-width: 750px) {
  .c_training-flow .block_flow-contents .box .text-wrap .ttl img {
    width: 12.6865671642cqw;
  }
}
.c_training-flow .block_flow-contents .box .text-wrap .ttl h3 {
  font-size: max(12px, 2.1428571429cqw);
  font-weight: 600;
  color: #b29b68;
}
@media screen and (max-width: 750px) {
  .c_training-flow .block_flow-contents .box .text-wrap .ttl h3 {
    font-size: 5.3731343284cqw;
  }
}
.c_training-flow .block_flow-contents .box .text-wrap p {
  font-size: max(12px, 1.4285714286cqw);
  line-height: 2;
}
@media screen and (max-width: 750px) {
  .c_training-flow .block_flow-contents .box .text-wrap p {
    font-size: 3.8805970149cqw;
  }
}
.c_training-flow .block_flow-contents .box .img-box {
  width: 24.6428571429cqw;
  flex-shrink: 0;
}
@media screen and (max-width: 750px) {
  .c_training-flow .block_flow-contents .box .img-box {
    width: 100%;
  }
}
.c_training-flow .block_flow-contents .box:not(:last-child) {
  position: relative;
}
.c_training-flow .block_flow-contents .box:not(:last-child)::after {
  position: absolute;
  top: calc(100% + 1.5cqw);
  left: 50%;
  transform: translateX(-50%);
  content: "";
  width: 1.8571428571cqw;
  aspect-ratio: 1/0.54;
  background: url(../images/shop/icon_triangle01.svg) no-repeat center/contain;
}
@media screen and (max-width: 750px) {
  .c_training-flow .block_flow-contents .box:not(:last-child)::after {
    top: calc(100% + 4.0298507463cqw);
    width: 5.9701492537cqw;
  }
}
.c_training-flow .block_flow-precautions {
  width: 92.8571428571cqw;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 8.1428571429cqw;
  padding: 3.5714285714cqw 0;
  border-bottom: 1px solid #b29b68;
  margin-bottom: 6cqw;
}
@media screen and (max-width: 750px) {
  .c_training-flow .block_flow-precautions {
    width: 100%;
    gap: 8.9552238806cqw;
    padding: 10.447761194cqw 0;
    flex-direction: column;
    align-items: flex-start;
    border-color: #fff;
    margin-bottom: 1.4925373134cqw;
  }
}
.c_training-flow .block_flow-precautions .ttl div {
  font-size: max(0.8571428571cqw, 10px);
  letter-spacing: 0;
  color: #b29b68;
}
@media screen and (max-width: 750px) {
  .c_training-flow .block_flow-precautions .ttl div {
    font-size: 3.2835820896cqw;
  }
}
.c_training-flow .block_flow-precautions .ttl p {
  font-size: max(12px, 1.8571428571cqw);
  font-weight: 600;
  line-height: 2;
  color: #b29b68;
}
@media screen and (max-width: 750px) {
  .c_training-flow .block_flow-precautions .ttl p {
    font-size: max(12px, 5.0746268657cqw);
    letter-spacing: 0.08em;
  }
}
.c_training-flow .block_flow-precautions ul li {
  font-size: max(12px, 1.1428571429cqw);
  line-height: 1.7;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 750px) {
  .c_training-flow .block_flow-precautions ul li {
    font-size: max(3.2835820896cqw, 12px);
  }
}
.c_training-flow .block_flow-precautions ul li:not(:last-child) {
  margin-bottom: 0.7142857143cqw;
}
@media screen and (max-width: 750px) {
  .c_training-flow .block_flow-precautions ul li:not(:last-child) {
    margin-bottom: 2.9850746269cqw;
  }
}
.c_training-flow .vertical-txt {
  width: 8.4895833333vw;
  position: absolute;
  top: 6.7708333333vw;
  right: -0.8571428571cqw;
}
@media screen and (max-width: 750px) {
  .c_training-flow .vertical-txt {
    width: 16vw;
    top: 23.4666666667vw;
    right: -0.7462686567cqw;
  }
}

.c_plan-payment .ttl {
  text-align: center;
  margin-bottom: 4.2857142857cqw;
}
@media screen and (max-width: 750px) {
  .c_plan-payment .ttl {
    margin-bottom: 8.9552238806cqw;
  }
}
.c_plan-payment .ttl div {
  font-size: max(12px, 1.8571428571cqw);
  letter-spacing: 0;
  color: #b29b68;
  margin-bottom: 2.2857142857cqw;
}
@media screen and (max-width: 750px) {
  .c_plan-payment .ttl div {
    font-size: max(12px, 4.776119403cqw);
    margin-bottom: 4.4776119403cqw;
  }
}
.c_plan-payment .ttl h2,
.c_plan-payment .ttl h3 {
  font-size: max(12px, 1.7142857143cqw);
  line-height: 2;
}
@media screen and (max-width: 750px) {
  .c_plan-payment .ttl h2,
  .c_plan-payment .ttl h3 {
    font-size: max(12px, 4.776119403cqw);
  }
}
.c_plan-payment > p {
  text-align: center;
  margin-bottom: 3.6428571429cqw;
}
@media screen and (max-width: 750px) {
  .c_plan-payment > p {
    margin-bottom: 11.9402985075cqw;
  }
}

.c_plan-steps_wrap {
  display: flex;
  justify-content: center;
  align-items: stretch;
}
@media screen and (max-width: 750px) {
  .c_plan-steps_wrap {
    flex-direction: column;
    align-items: center;
  }
}
.c_plan-steps_wrap .box {
  background-color: #fff;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
.c_plan-steps_wrap .box .head-cont {
  text-align: center;
}
.c_plan-steps_wrap .box .head-cont img {
  width: 4.4285714286cqw;
  margin-bottom: 1.4285714286cqw;
}
@media screen and (max-width: 750px) {
  .c_plan-steps_wrap .box .head-cont img {
    width: 11.9402985075cqw;
    margin-bottom: 3.7313432836cqw;
  }
}
.c_plan-steps_wrap .box .head-cont .box-ttl div {
  font-size: max(12px, 0.9285714286cqw);
  letter-spacing: 0;
  color: #b29b68;
}
@media screen and (max-width: 750px) {
  .c_plan-steps_wrap .box .head-cont .box-ttl div {
    font-size: max(12px, 1.7910447761cqw);
  }
}
.c_plan-steps_wrap .box .head-cont .box-ttl h3 {
  font-size: max(12px, 1.5714285714cqw);
  line-height: 1.9;
}
@media screen and (max-width: 750px) {
  .c_plan-steps_wrap .box .head-cont .box-ttl h3 {
    font-size: max(12px, 4.776119403cqw);
  }
}
.c_plan-steps_wrap .box p {
  margin-top: 1.4285714286cqw;
  font-size: max(12px, 1.1428571429cqw);
  line-height: 2;
}
@media screen and (max-width: 750px) {
  .c_plan-steps_wrap .box p {
    font-size: 3.5820895522cqw;
    margin-top: 4.4776119403cqw;
  }
}

.c_topics-card a {
  display: block;
}
@media (hover: hover) and (pointer: fine) {
  .c_topics-card a:hover .img-box img {
    scale: 1.1;
  }
  .c_topics-card a:hover h3 {
    color: #284261;
  }
}
.c_topics-card .head-contents {
  display: flex;
  gap: 4px;
  margin-bottom: 1.7857142857cqw;
}
@media screen and (max-width: 750px) {
  .c_topics-card .head-contents {
    gap: 2.5373134328cqw;
    margin-bottom: 7.4626865672cqw;
  }
}
.c_topics-card .head-contents .time {
  border-bottom: 1px solid #284261;
  flex-grow: 1;
}
.c_topics-card .head-contents .time span {
  display: block;
  font-family: widescreen-ex, sans-serif;
}
.c_topics-card .head-contents .time .year {
  font-size: max(12px, 1cqw);
  font-weight: 600;
  line-height: 1.28;
  padding-left: 0.4285714286cqw;
  margin-bottom: 2.7142857143cqw;
}
@media screen and (max-width: 750px) {
  .c_topics-card .head-contents .time .year {
    font-size: max(12px, 2.9850746269cqw);
    padding-left: 0;
    margin-bottom: 8.9552238806cqw;
  }
}
.c_topics-card .head-contents .time .month {
  font-size: max(12px, 1.1428571429cqw);
  font-weight: 600;
  line-height: 1.3;
  margin-bottom: 0.3571428571cqw;
}
@media screen and (max-width: 750px) {
  .c_topics-card .head-contents .time .month {
    font-size: max(12px, 3.5820895522cqw);
    margin-bottom: 0;
  }
}
.c_topics-card .head-contents .time .day {
  font-size: 2.8571428571cqw;
  line-height: 1.3;
}
@media screen and (max-width: 750px) {
  .c_topics-card .head-contents .time .day {
    font-size: 8.9552238806cqw;
  }
}
.c_topics-card .head-contents .img-box {
  width: 24.4285714286cqw;
  aspect-ratio: 1/0.67;
  flex-shrink: 0;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  .c_topics-card .head-contents .img-box {
    width: 73.2835820896cqw;
  }
}
.c_topics-card .head-contents .img-box img {
  transition: all 0.3s;
}
.c_topics-card .text-wrap h3 {
  font-size: max(12px, 1.4285714286cqw);
  line-height: 1.7;
  font-weight: 600;
  transition: all 0.3s;
}
@media screen and (max-width: 750px) {
  .c_topics-card .text-wrap h3 {
    font-size: max(12px, 4.776119403cqw);
    margin-bottom: 4.4776119403cqw;
  }
}
.c_topics-card .text-wrap p {
  font-size: max(12px, 1.0714285714cqw);
  line-height: 2;
  letter-spacing: 0.04em;
  color: #838383;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 1cqw;
}
@media screen and (max-width: 750px) {
  .c_topics-card .text-wrap p {
    font-size: max(12px, 4.1791044776cqw);
    line-height: 1.7;
    margin-bottom: 5.9701492537cqw;
  }
}
.c_topics-card .text-wrap .cate span {
  position: relative;
  font-size: max(0.8571428571cqw, 10px);
  font-weight: 600;
  color: #284261;
  padding-left: 2.0714285714cqw;
}
@media screen and (max-width: 750px) {
  .c_topics-card .text-wrap .cate span {
    font-size: max(12px, 1.4285714286cqw);
    padding-left: 6.4179104478cqw;
  }
}
.c_topics-card .text-wrap .cate span::before {
  content: "";
  width: 1.4285714286cqw;
  height: 1px;
  background-color: #284261;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 750px) {
  .c_topics-card .text-wrap .cate span::before {
    width: 4.4776119403cqw;
    height: 0.2985074627cqw;
  }
}

.c_faq-accordion dl {
  border-top: 1px solid #000;
}
.c_faq-accordion dl:last-of-type {
  border-bottom: 1px solid #000;
}
.c_faq-accordion dl dt {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1.7142857143cqw;
  padding: 2cqw 1cqw 2cqw 1.3571428571cqw;
  background-color: #ebebeb;
  line-height: 1;
}
@media screen and (max-width: 750px) {
  .c_faq-accordion dl dt {
    gap: 4.6268656716cqw;
    padding: 5.9701492537cqw 17.9104477612cqw 5.9701492537cqw 4.4776119403cqw;
  }
}
.c_faq-accordion dl dt span {
  font-size: max(12px, 2.2857142857cqw);
  color: #b29b68;
}
@media screen and (max-width: 750px) {
  .c_faq-accordion dl dt span {
    font-size: 6.5671641791cqw;
  }
}
.c_faq-accordion dl dt h3,
.c_faq-accordion dl dt h4 {
  position: relative;
  width: 100%;
  line-height: 1.7;
  padding-right: 5cqw;
}
@media screen and (max-width: 750px) {
  .c_faq-accordion dl dt h3,
  .c_faq-accordion dl dt h4 {
    font-size: 4.1791044776cqw;
    line-height: 1.7;
    padding-right: 0;
  }
}
.c_faq-accordion dl dt h3 img,
.c_faq-accordion dl dt h4 img {
  width: 3.2857142857cqw;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%) rotate(180deg);
  transition: all 0.3s;
}
@media screen and (max-width: 750px) {
  .c_faq-accordion dl dt h3 img,
  .c_faq-accordion dl dt h4 img {
    width: 10.2985074627cqw;
    left: calc(100% + 4.4776119403cqw);
  }
}
.c_faq-accordion dl dd {
  padding: 2.1428571429cqw 1.4285714286cqw 3.2142857143cqw;
  border-top: dashed 1px #000;
  background-color: #fafafa;
}
@media screen and (max-width: 750px) {
  .c_faq-accordion dl dd {
    padding: 8.9552238806cqw 4.4776119403cqw 8.9552238806cqw;
  }
}
.c_faq-accordion dl dd p {
  font-size: max(12px, 1.2857142857cqw);
  line-height: 2;
  letter-spacing: 0.08em;
  margin-bottom: 1.7857142857cqw;
}
@media screen and (max-width: 750px) {
  .c_faq-accordion dl dd p {
    font-size: max(12px, 3.5820895522cqw);
    letter-spacing: 0.05em;
    margin-bottom: 5.9701492537cqw;
  }
}
.c_faq-accordion dl.accordion-open dt h3 img,
.c_faq-accordion dl.accordion-open dt h4 img {
  transform: translateY(-50%) rotate(0deg);
}

/*************************************************
header
*************************************************/
header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  backdrop-filter: blur(4px);
  border-bottom: 1px solid #fff;
  z-index: 100;
}
@media screen and (max-width: 750px) {
  header {
    backdrop-filter: none;
    border-bottom: none;
  }
}
header .header_inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-left: 4.4270833333vw;
}
@media screen and (max-width: 750px) {
  header .header_inner {
    padding-left: 4vw;
  }
}
header .header_inner .logo_wrap {
  display: flex;
  flex-direction: column;
  gap: 0.625vw;
}
header .header_inner .logo_wrap .head-txt {
  font-size: max(0.5208333333vw, 8px);
  font-weight: 600;
  letter-spacing: 0;
  color: #fff;
}
@media screen and (max-width: 750px) {
  header .header_inner .logo_wrap .head-txt {
    display: none;
  }
}
header .header_inner .logo_wrap .logo {
  width: max(11.5625vw, 200px);
}
@media screen and (max-width: 750px) {
  header .header_inner .logo_wrap .logo {
    width: max(17.96875vw, 180px);
  }
}
header .header_inner .logo_wrap .logo a {
  line-height: 1;
}
header .header_inner .logo_wrap .logo a img {
  display: block;
}
header .header_inner .navigation {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 1200px) {
  header .header_inner .navigation nav {
    display: none;
  }
}
header .header_inner .navigation nav ul {
  display: flex;
  gap: 3.6979166667vw;
}
header .header_inner .navigation nav ul li a {
  position: relative;
  display: inline-block;
  font-family: widescreen-ex, sans-serif;
  font-size: max(12px, 0.8854166667vw);
  font-weight: 600;
  color: #fff;
}
header .header_inner .navigation nav ul li a::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 100%;
  width: 30px;
  height: 1px;
  background: #fff;
  transform: translateX(-50%) scaleX(0);
  transform-origin: center;
  transition: transform 0.3s;
}
header .header_inner .navigation nav ul li a:hover::after {
  transform: translateX(-50%) scaleX(1);
}
header .header_inner .floating_wrap {
  display: flex;
  margin-left: 5.2083333333vw;
}
@media screen and (max-width: 750px) {
  header .header_inner .floating_wrap {
    margin-left: 0;
    border-bottom: 1px solid #fff;
  }
}
header .header_inner .header-reserve_wrap {
  width: max(12.5vw, 14rem);
  aspect-ratio: 1/0.38;
  background-color: #b29b68;
  transition: opacity var(--fixed-cta-transition) ease, transform var(--fixed-cta-transition) ease;
}
@media screen and (max-width: 750px) {
  header .header_inner .header-reserve_wrap {
    width: max(18.6666666667vw, 7rem);
    aspect-ratio: 1/0.89;
  }
}
header .header_inner .header-reserve_wrap a {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 6px;
  width: 100%;
  height: 100%;
}
header .header_inner .header-reserve_wrap a div {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  gap: 0.2604166667vw;
  font-weight: 600;
  color: #fff;
  padding-right: 0.5208333333vw;
}
@media screen and (max-width: 750px) {
  header .header_inner .header-reserve_wrap a div {
    gap: 0.6666666667vw;
    padding-right: 0;
  }
}
header .header_inner .header-reserve_wrap a div p {
  font-size: max(0.8333333333vw, 13px);
  line-height: 1;
  font-weight: 600;
  letter-spacing: 0.06;
  color: #fff;
}
@media screen and (max-width: 750px) {
  header .header_inner .header-reserve_wrap a div p {
    font-size: max(2.6666666667vw, 11px);
    line-height: 1.65;
  }
}
@media screen and (max-width: 750px) {
  header .header_inner .header-reserve_wrap a div p span {
    display: none;
  }
}
header .header_inner .header-reserve_wrap a div .en {
  font-size: max(0.5208333333vw, 7px);
}
@media screen and (max-width: 750px) {
  header .header_inner .header-reserve_wrap a div .en {
    font-size: 1.3333333333vw;
    line-height: 1.3;
  }
}
header .header_inner .header-reserve_wrap a div svg {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: calc(100% + 1.0416666667vw);
  width: max(0.5208333333vw, 7px);
  height: auto;
}
@media screen and (max-width: 750px) {
  header .header_inner .header-reserve_wrap a div svg {
    display: none;
  }
}
header.is-drawermenu-header {
  border-bottom: none !important;
  background-color: transparent !important;
  z-index: 1000;
}
@media screen and (max-width: 750px) {
  header.is-drawermenu-header {
    border-bottom: 1px solid #fff !important;
  }
}
header.is-drawermenu-header .header_inner {
  justify-content: flex-end;
}
@media screen and (max-width: 750px) {
  header.is-drawermenu-header .header_inner {
    justify-content: space-between !important;
  }
}
header.is-drawermenu-header .logo_wrap {
  display: none;
}
@media screen and (max-width: 750px) {
  header.is-drawermenu-header .logo_wrap {
    display: block !important;
  }
}
header.is-drawermenu-header .navigation nav {
  display: none;
}
@media screen and (max-width: 750px) {
  header.is-drawermenu-header .navigation .floating_wrap {
    border-bottom: none;
  }
}
header.is-drawermenu-header .navigation .hamberger-wrap {
  border-right: none;
  border-bottom: 1px solid #fff;
  background-color: #b29b68;
}
@media screen and (max-width: 750px) {
  header.is-drawermenu-header .navigation .hamberger-wrap {
    border-bottom: none;
    border-right: 1px solid #fff;
    background-color: transparent;
  }
}
header.is-drawermenu-header .navigation .header-reserve_wrap {
  display: none;
}
@media screen and (max-width: 750px) {
  header.is-drawermenu-header .navigation .header-reserve_wrap {
    display: block;
  }
}
header.is_scrolled {
  background-color: #333333;
  border-bottom: none;
}
@media screen and (max-width: 750px) {
  header.is_scrolled {
    background-color: transparent;
  }
}
@media screen and (max-width: 750px) {
  header.is_scrolled .header_inner {
    justify-content: flex-end;
  }
}
@media screen and (max-width: 750px) {
  header.is_scrolled .logo_wrap {
    display: none;
  }
}
header.is_scrolled .navigation nav ul {
  padding-bottom: 0.2604166667vw;
}
header.is_scrolled .hamberger-wrap {
  aspect-ratio: 1/0.29;
  background-color: #122335;
}
@media screen and (max-width: 750px) {
  header.is_scrolled .hamberger-wrap {
    aspect-ratio: 1/0.89;
  }
}
header.is_scrolled .header-reserve_wrap {
  aspect-ratio: 1/0.29;
}
@media screen and (max-width: 750px) {
  header.is_scrolled .header-reserve_wrap {
    aspect-ratio: 1/0.89;
  }
}

.hamberger-wrap {
  width: max(12.5vw, 14rem);
  aspect-ratio: 1/0.38;
  border-left: 1px solid #fff;
  border-right: 1px solid #fff;
  transition: all 0.3s;
  cursor: pointer;
}
@media screen and (max-width: 750px) {
  .hamberger-wrap {
    width: max(18.6666666667vw, 7rem);
    aspect-ratio: 1/0.89;
  }
}
.hamberger-wrap .ham-inner {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.9895833333vw;
}
@media screen and (max-width: 750px) {
  .hamberger-wrap .ham-inner {
    flex-direction: column;
    gap: 2.6666666667vw;
  }
}
.hamberger-wrap .ham-inner > p {
  font-size: max(0.8854166667vw, 14px);
  font-weight: 600;
  line-height: 1;
  color: #fff;
}
@media screen and (max-width: 750px) {
  .hamberger-wrap .ham-inner > p {
    font-size: max(2.1333333333vw, 9px);
  }
}
.hamberger-wrap.is-ham-open .hambager .c-line:first-of-type {
  animation: line1-open var(--navTransition) forwards;
}
.hamberger-wrap.is-ham-open .hambager .c-line:nth-of-type(2) {
  animation: line2-open var(--navTransition) forwards;
}
.hamberger-wrap.is-ham-open .hambager .c-line:last-of-type {
  animation: line3-open var(--navTransition) forwards;
}

.hambager-content {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  transition: all 0.3s;
}

:root {
  --navTransition: 0.4s;
  --fixed-cta-top: clamp(12px, 3vw, 32px);
  --fixed-cta-right: clamp(12px, 5vw, 64px);
  --fixed-cta-gap: clamp(8px, 2vw, 24px);
  --fixed-cta-transition: 0.35s;
}

.hambager {
  width: max(1.25vw, 18px);
  height: max(0.8333333333vw, 12px);
  position: relative;
  display: block;
  cursor: pointer;
}
@media screen and (max-width: 750px) {
  .hambager {
    width: max(6.6666666667vw, 26px);
    height: max(4vw, 17px);
  }
}
.hambager .c-line {
  width: 100%;
  height: 2px;
  background-color: #fff;
  position: absolute;
  left: 0;
  right: 0;
  border-radius: 100vmax;
}
.hambager .c-line:first-of-type {
  top: 0;
  animation: line1 var(--navTransition) forwards;
}
.hambager .c-line:nth-of-type(2) {
  top: 50%;
  animation: line2 var(--navTransition) forwards;
}
.hambager .c-line:last-of-type {
  top: 100%;
  animation: line3 var(--navTransition) forwards;
}

@keyframes line1 {
  0% {
    top: 50%;
    transform: rotate(45deg);
  }
  50% {
    transform: rotate(0);
    top: 50%;
  }
  100% {
    transform: rotate(0);
    top: 0;
  }
}
@keyframes line1-open {
  0% {
    transform: rotate(0);
    top: 0;
  }
  50% {
    transform: rotate(0);
    top: 50%;
  }
  100% {
    top: 50%;
    transform: rotate(45deg);
  }
}
@keyframes line2 {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes line2-open {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes floatingFadeIn {
  0% {
    opacity: 0;
    transform: translateY(-10px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes line3 {
  0% {
    top: 50%;
    transform: rotate(-45deg);
  }
  50% {
    transform: rotate(0);
    top: 50%;
  }
  100% {
    transform: rotate(0);
    top: 100%;
  }
}
@keyframes line3-open {
  0% {
    transform: rotate(0);
    top: 100%;
  }
  50% {
    transform: rotate(0);
    top: 50%;
  }
  100% {
    top: 50%;
    transform: rotate(-45deg);
  }
}
@media (max-width: 750px) {
  @keyframes line1 {
    0% {
      top: 50%;
      transform: rotate(30deg); /* ← 角度変更 */
    }
    50% {
      transform: rotate(0);
      top: 50%;
    }
    100% {
      transform: rotate(0);
      top: 0;
    }
  }
  @keyframes line1-open {
    0% {
      transform: rotate(0);
      top: 0;
    }
    50% {
      transform: rotate(0);
      top: 50%;
    }
    100% {
      top: 50%;
      transform: rotate(30deg); /* ← 角度変更 */
    }
  }
  @keyframes line3 {
    0% {
      top: 50%;
      transform: rotate(-30deg); /* ← 角度変更 */
    }
    50% {
      transform: rotate(0);
      top: 50%;
    }
    100% {
      transform: rotate(0);
      top: 100%;
    }
  }
  @keyframes line3-open {
    0% {
      transform: rotate(0);
      top: 100%;
    }
    50% {
      transform: rotate(0);
      top: 50%;
    }
    100% {
      top: 50%;
      transform: rotate(-30deg); /* ← 角度変更 */
    }
  }
}
.drawer-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100dvh;
  padding-top: max(6.5625vw, 10rem);
  background-color: #122335;
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  transition: all 0.4s;
  z-index: 999;
}
@media screen and (max-width: 750px) {
  .drawer-menu {
    padding-top: 28.4vw;
  }
}
.drawer-menu.is-drawermenu-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.drawer-menu.is-drawermenu-open .drawer_inner {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.6s;
}
.drawer-menu .drawer_inner {
  max-width: 85.78125vw;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 2rem;
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.8s ease, transform 0.8s ease;
  transition-delay: 0s;
}
@media screen and (max-width: 899px) {
  .drawer-menu .drawer_inner {
    max-width: 93.75vw;
  }
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_inner {
    max-width: 89.3333333333vw;
    max-height: calc(95dvh - 28.4vw);
    padding-right: 5px;
    overflow: scroll;
    display: block;
  }
}
.drawer-menu .logo_wrap {
  padding-left: 3.3333333333vw;
}
@media screen and (max-width: 1200px) {
  .drawer-menu .logo_wrap {
    padding-left: 0;
  }
}
@media screen and (max-width: 750px) {
  .drawer-menu .logo_wrap {
    display: none;
  }
}
.drawer-menu .logo_wrap .logo {
  width: 22.9166666667vw;
  width: max(22.9166666667vw, 30rem);
  margin-bottom: 1.40625vw;
}
.drawer-menu .logo_wrap p {
  font-size: max(0.625vw, 8px);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
  color: #fff;
}
.drawer-menu .drawer_contents {
  width: 46.9791666667vw;
  height: calc(100dvh - max(6.5625vw, 10rem));
  overflow-y: auto;
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents {
    width: 100%;
    height: auto;
    overflow-y: visible;
  }
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents nav {
    position: relative;
    margin-bottom: 11.0666666667vw;
  }
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents nav .sp_scroll {
    position: absolute;
    top: 50.6666666667vw;
    right: -0.6666666667vw;
  }
}
.drawer-menu .drawer_contents nav .sp_scroll .line_wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 5.3333333333vw;
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents nav .sp_scroll .line {
    position: relative;
    width: 1px;
    height: 57.0666666667vw;
    background-color: #fff;
    flex-grow: 1;
  }
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents nav .sp_scroll .line::after {
    content: "";
    position: absolute;
    width: 2.6666666667vw;
    height: 1px;
    background-color: #fff;
    position: absolute;
    bottom: 0.8vw;
    left: -1px;
    rotate: -45deg;
  }
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents nav .sp_scroll p {
    font-size: max(12px, 2.6666666667vw);
    color: #fff;
    flex-shrink: 0;
    white-space: nowrap;
  }
}
.drawer-menu .drawer_contents nav ul {
  height: 31.25vw;
  height: max(31.25vw, 28rem);
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  -moz-column-gap: 3.90625vw;
       column-gap: 3.90625vw;
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents nav ul {
    height: auto;
    flex-direction: column;
  }
}
.drawer-menu .drawer_contents nav ul li {
  width: 21.25vw;
  border-bottom: 1px solid #fff;
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents nav ul li {
    width: 78vw;
  }
}
.drawer-menu .drawer_contents nav ul li a {
  display: flex;
  flex-direction: column;
  gap: 0.5208333333vw;
  color: #fff;
  font-size: max(12px, 1.3541666667vw);
  line-height: 1;
  padding: 1.5104166667vw 0 1.4583333333vw;
  transition: all 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .drawer-menu .drawer_contents nav ul li a:hover {
    opacity: 0.5;
  }
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents nav ul li a {
    flex-direction: row-reverse;
    justify-content: space-between;
    font-size: 3.7333333333vw;
    font-weight: 600;
    padding: 6.6666666667vw 0;
  }
}
.drawer-menu .drawer_contents nav ul li a span {
  font-family: widescreen-ex, sans-serif;
  letter-spacing: 0;
  font-size: max(0.8333333333vw, 11px);
  color: #b29b68;
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents nav ul li a span {
    font-size: 3.4666666667vw;
  }
}
.drawer-menu .drawer_contents .drawer_reserve-btn {
  margin-bottom: 2.0833333333vw;
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents .drawer_reserve-btn {
    margin-bottom: 11.8666666667vw;
  }
}
.drawer-menu .drawer_contents .drawer_reserve-btn a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.625vw;
  flex-direction: column;
  width: 100%;
  min-height: 75px;
  aspect-ratio: 1/0.14;
  background-color: rgba(255, 255, 255, 0.06);
  border: 1px solid #fff;
  transition: all 0.3s;
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents .drawer_reserve-btn a {
    aspect-ratio: 1/0.35;
    min-height: auto;
  }
}
@media (hover: hover) and (pointer: fine) {
  .drawer-menu .drawer_contents .drawer_reserve-btn a:hover {
    background-color: rgba(255, 255, 255, 0.02);
  }
}
.drawer-menu .drawer_contents .drawer_reserve-btn a p {
  font-size: max(12px, 1.1458333333vw);
  line-height: 1;
  color: #fff;
  margin-top: 0.2604166667vw;
  transition: all 0.3s;
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents .drawer_reserve-btn a p {
    font-size: 3.7333333333vw;
    text-align: center;
    line-height: 1.5;
    margin-bottom: 2vw;
  }
}
.drawer-menu .drawer_contents .drawer_reserve-btn a div {
  font-size: max(12px, 0.625vw);
  font-weight: 600;
  display: inline-block;
  color: #fff;
  background-color: #b29b68;
  border-radius: 100vmax;
  padding: max(0.3125vw, 5px) max(1.5625vw, 3rem) max(0.3645833333vw, 6px);
  transition: all 0.3s;
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents .drawer_reserve-btn a div {
    font-size: 2.9333333333vw;
  }
}
.drawer-menu .drawer_contents .sns-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4.1666666667vw;
  padding-bottom: 1.9791666667vw;
  border-bottom: 1px solid #fff;
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents .sns-wrap {
    gap: 6.6666666667vw;
    padding-bottom: 10.8vw;
    margin-bottom: 8.8vw;
  }
}
.drawer-menu .drawer_contents .sns-wrap a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: max(0.625vw, 8px);
  font-size: max(12px, 0.7291666667vw);
  font-weight: 600;
  color: #fff;
  text-decoration: underline;
  transition: all 0.3s;
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents .sns-wrap a {
    font-size: 3.2vw;
    gap: 2.4vw;
  }
}
@media (hover: hover) and (pointer: fine) {
  .drawer-menu .drawer_contents .sns-wrap a:hover {
    opacity: 0.5;
  }
}
.drawer-menu .drawer_contents .sns-wrap a.insta img {
  width: max(1.09375vw, 16px);
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents .sns-wrap a.insta img {
    width: max(5.3333333333vw, 20px);
  }
}
.drawer-menu .drawer_contents .sns-wrap a.line img {
  width: max(1.09375vw, 16px);
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents .sns-wrap a.line img {
    width: max(5.3333333333vw, 20px);
  }
}
.drawer-menu .drawer_contents .sns-wrap a.youtube img {
  width: max(1.40625vw, 21px);
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents .sns-wrap a.youtube img {
    width: max(7.0666666667vw, 26px);
  }
}
.drawer-menu .drawer_contents .polycy-links ul {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 1.9270833333vw;
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents .polycy-links ul {
    justify-content: flex-start;
    flex-wrap: wrap;
    row-gap: 1.3333333333vw;
    -moz-column-gap: 9.3333333333vw;
         column-gap: 9.3333333333vw;
  }
}
.drawer-menu .drawer_contents .polycy-links ul li a {
  font-size: max(0.625vw, 10px);
  color: #fff;
  transition: all 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .drawer-menu .drawer_contents .polycy-links ul li a:hover {
    opacity: 0.5;
  }
}
@media screen and (max-width: 750px) {
  .drawer-menu .drawer_contents .polycy-links ul li a {
    font-size: 3.2vw;
  }
}

/*************************************************
footer
*************************************************/
footer {
  background-color: #122335;
}
footer .footer_inner {
  width: 83.8541666667vw;
  margin-inline: auto;
}
@media screen and (max-width: 1200px) {
  footer .footer_inner {
    width: 93.75vw;
  }
}
@media screen and (max-width: 750px) {
  footer .footer_inner {
    width: 89.3333333333vw;
  }
}
footer div,
footer p,
footer a {
  color: #fff;
  transition: all 0.3s;
}
footer .back-to {
  text-align: center;
  border-bottom: 1px solid #fff;
  margin-bottom: 3.125vw;
}
@media screen and (max-width: 750px) {
  footer .back-to {
    margin-bottom: 15.223880597cqw;
  }
}
footer .back-to a {
  display: block;
  font-size: max(12px, 0.8333333333vw);
  padding: 2.6041666667vw 0;
}
@media (hover: hover) and (pointer: fine) {
  footer .back-to a:hover {
    color: #b29b68;
  }
}
@media screen and (max-width: 750px) {
  footer .back-to a {
    font-size: max(12px, 3.2835820896cqw);
    padding: 5.3731343284cqw 0 6.2686567164cqw;
  }
}
footer .footer-shop-contents {
  padding-bottom: 2.34375vw;
  border-bottom: 1px solid #fff;
  margin-bottom: 3.6458333333vw;
}
@media screen and (max-width: 750px) {
  footer .footer-shop-contents {
    padding-bottom: 8.9552238806cqw;
    margin-bottom: 11.9402985075cqw;
  }
}
footer .footer-shop-contents .footer-logo {
  width: max(15.7291666667vw, 15rem);
  margin: 0 auto 1.25vw;
}
@media screen and (max-width: 750px) {
  footer .footer-shop-contents .footer-logo {
    width: max(58vw, 15rem);
    margin: 0 auto 4.1791044776cqw;
  }
}
footer .footer-shop-contents > p {
  font-size: max(12px, 1.0416666667vw);
  text-align: center;
  font-weight: 600;
  line-height: 1.8;
  margin-bottom: 2.6041666667vw;
}
@media screen and (max-width: 750px) {
  footer .footer-shop-contents > p {
    font-size: max(12px, 4.1791044776cqw);
    margin-bottom: 13.8805970149cqw;
  }
}
footer .footer-shop-contents .block_footer_wrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3.2291666667vw;
}
@media screen and (max-width: 750px) {
  footer .footer-shop-contents .block_footer_wrap {
    grid-template-columns: 1fr;
    gap: 10cqw;
  }
}
footer .footer-shop-contents .block_footer_wrap .box:first-of-type {
  grid-column: 1/-1;
}
footer .footer-shop-contents .block_footer_wrap .box:first-of-type ul {
  -moz-column-gap: 7.8125vw;
       column-gap: 7.8125vw;
}
@media screen and (max-width: 750px) {
  footer .footer-shop-contents .block_footer_wrap .box:first-of-type ul {
    -moz-column-gap: 0;
         column-gap: 0;
  }
}
footer .footer-shop-contents .block_footer_wrap .box:first-of-type ul li {
  width: calc(25% - 5.859375vw);
}
@media screen and (max-width: 750px) {
  footer .footer-shop-contents .block_footer_wrap .box:first-of-type ul li {
    width: 50%;
  }
}
footer .footer-shop-contents .block_footer_wrap .box:not(:first-of-type) ul {
  -moz-column-gap: 10.4166666667vw;
       column-gap: 10.4166666667vw;
}
@media screen and (max-width: 750px) {
  footer .footer-shop-contents .block_footer_wrap .box:not(:first-of-type) ul {
    -moz-column-gap: 0;
         column-gap: 0;
  }
}
footer .footer-shop-contents .block_footer_wrap .box:not(:first-of-type) ul li {
  width: calc(50% - 5.2083333333vw);
}
@media screen and (max-width: 750px) {
  footer .footer-shop-contents .block_footer_wrap .box:not(:first-of-type) ul li {
    width: 50%;
  }
}
footer .footer-shop-contents .block_footer_wrap .box div {
  width: 100%;
  padding: 0.9375vw 0 0.8333333333vw;
  font-size: max(12px, 0.9375vw);
  font-weight: 600;
  text-align: center;
  background-color: #484848;
  margin-bottom: 2.6041666667vw;
}
@media screen and (max-width: 750px) {
  footer .footer-shop-contents .block_footer_wrap .box div {
    font-size: max(12px, 3.8805970149cqw);
    padding: 3.8805970149cqw 0 3.7313432836cqw;
    margin-bottom: 5.9701492537cqw;
  }
}
footer .footer-shop-contents .block_footer_wrap .box ul {
  display: flex;
  row-gap: 0.5208333333vw;
  flex-wrap: wrap;
  padding: 0 0.78125vw;
}
@media screen and (max-width: 750px) {
  footer .footer-shop-contents .block_footer_wrap .box ul {
    padding: 0;
  }
}
@media screen and (max-width: 750px) {
  footer .footer-shop-contents .block_footer_wrap .box ul li {
    position: relative;
    padding-left: 15px;
  }
}
@media screen and (max-width: 750px) {
  footer .footer-shop-contents .block_footer_wrap .box ul li::before {
    position: absolute;
    top: 2px;
    left: 0;
    content: "・";
    color: #fff;
  }
}
footer .footer-shop-contents .block_footer_wrap .box ul li a {
  font-size: max(0.8333333333vw, 12px);
  letter-spacing: 0;
  line-height: 1;
}
@media (hover: hover) and (pointer: fine) {
  footer .footer-shop-contents .block_footer_wrap .box ul li a:hover {
    opacity: 0.5;
  }
}
@media screen and (max-width: 750px) {
  footer .footer-shop-contents .block_footer_wrap .box ul li a {
    font-size: max(12px, 3.2vw);
  }
}
footer .footer-main-contents {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding-bottom: 2.0833333333vw;
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents {
    flex-direction: column-reverse;
    gap: 0;
    padding-bottom: 10vw;
  }
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .left-contents {
    width: 100%;
  }
}
footer .footer-main-contents .left-contents .name {
  font-size: max(12px, 0.9375vw);
  font-weight: 600;
  margin-bottom: 1.5625vw;
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .left-contents .name {
    font-size: max(12px, 3.7333333333vw);
    margin-bottom: 4.4776119403cqw;
  }
}
footer .footer-main-contents .left-contents .address {
  font-size: max(12px, 0.8333333333vw);
  line-height: 1.5;
  margin-bottom: 0.78125vw;
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .left-contents .address {
    font-size: max(12px, 3.2vw);
    line-height: 1.7;
    margin-bottom: 2.9850746269cqw;
  }
}
footer .footer-main-contents .left-contents .tel {
  display: block;
  font-size: max(12px, 0.8333333333vw);
  margin-bottom: 2.8645833333vw;
  pointer-events: none;
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .left-contents .tel {
    font-size: max(12px, 3.2vw);
    margin-bottom: 8.9552238806cqw;
    pointer-events: all;
  }
}
footer .footer-main-contents .left-contents .footer-btn {
  width: max(21.0416666667vw, 20rem);
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .left-contents .footer-btn {
    width: 100%;
  }
}
footer .footer-main-contents .left-contents ul {
  display: flex;
  gap: 2.3958333333vw;
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .left-contents ul {
    width: 59.3333333333vw;
    flex-wrap: wrap;
  }
}
footer .footer-main-contents .left-contents ul li {
  line-height: 1;
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .left-contents ul li {
    position: relative;
    padding-left: 15px;
  }
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .left-contents ul li::before {
    position: absolute;
    top: 3px;
    left: 0;
    content: "・";
    color: #fff;
  }
}
footer .footer-main-contents .left-contents ul li a {
  font-size: max(0.7291666667vw, 10px);
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .left-contents ul li a {
    font-size: max(12px, 3.2vw);
  }
}
@media (hover: hover) and (pointer: fine) {
  footer .footer-main-contents .left-contents ul li a:hover {
    opacity: 0.5;
  }
}
footer .footer-main-contents .right-contents {
  width: max(39.0625vw, 37rem);
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .right-contents {
    width: 100%;
  }
}
footer .footer-main-contents .right-contents nav {
  margin-bottom: 2.6041666667vw;
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .right-contents nav {
    margin-bottom: 11.9402985075cqw;
  }
}
footer .footer-main-contents .right-contents nav ul {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 2.6041666667vw;
       column-gap: 2.6041666667vw;
  row-gap: 1.0416666667vw;
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .right-contents nav ul {
    -moz-column-gap: 0;
         column-gap: 0;
    row-gap: 4.4776119403cqw;
  }
}
footer .footer-main-contents .right-contents nav ul li {
  width: calc(33.3333333333% - 1.7361111111vw);
  line-height: 1;
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .right-contents nav ul li {
    position: relative;
    width: 50%;
    padding-left: 15px;
  }
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .right-contents nav ul li::before {
    position: absolute;
    top: 6px;
    left: 0;
    content: "・";
    color: #fff;
  }
}
footer .footer-main-contents .right-contents nav ul li a {
  font-size: max(0.9375vw, 12px);
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .right-contents nav ul li a {
    font-size: max(12px, 3.7333333333vw);
  }
}
@media (hover: hover) and (pointer: fine) {
  footer .footer-main-contents .right-contents nav ul li a:hover {
    opacity: 0.5;
  }
}
footer .footer-main-contents .right-contents .btn-wrap {
  display: flex;
  gap: 2.6041666667vw;
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .right-contents .btn-wrap {
    flex-direction: column;
    gap: 5.9701492537cqw;
    margin-bottom: 13.5820895522cqw;
  }
}
footer .footer-main-contents .right-contents .btn-wrap .footer-btn {
  width: calc(50% - 1.3020833333vw);
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .right-contents .btn-wrap .footer-btn {
    width: 100%;
    aspect-ratio: 1/0.16;
    margin-bottom: 0;
  }
}
footer .footer-main-contents .right-contents .btn-wrap .footer-btn:first-of-type svg {
  width: max(0.4166666667vw, 7px);
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .right-contents .btn-wrap .footer-btn:first-of-type svg {
    width: max(2.1333333333vw, 8px);
  }
}
footer .footer-main-contents .right-contents .sns-wrap {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 4.1666666667vw;
  padding-top: 1.9791666667vw;
  border-top: 1px solid #fff;
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .right-contents .sns-wrap {
    justify-content: center;
    gap: 5.3333333333vw;
    padding-top: 9.3333333333vw;
    padding-bottom: 9.552238806cqw;
    border-bottom: 1px solid #fff;
    margin-bottom: 12.3880597015cqw;
  }
}
footer .footer-main-contents .right-contents .sns-wrap a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  font-size: max(12px, 0.7291666667vw);
  font-weight: 600;
  text-decoration: underline;
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .right-contents .sns-wrap a {
    gap: 2.2388059701cqw;
    font-size: max(12px, 1.7142857143cqw);
  }
}
footer .footer-main-contents .right-contents .sns-wrap a.insta img {
  width: max(1.09375vw, 21px);
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .right-contents .sns-wrap a.insta img {
    width: max(4.6666666667vw, 25px);
  }
}
footer .footer-main-contents .right-contents .sns-wrap a.line img {
  width: max(1.09375vw, 21px);
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .right-contents .sns-wrap a.line img {
    width: max(4.6666666667vw, 25px);
  }
}
footer .footer-main-contents .right-contents .sns-wrap a.youtube img {
  width: max(1.40625vw, 25px);
}
@media screen and (max-width: 750px) {
  footer .footer-main-contents .right-contents .sns-wrap a.youtube img {
    width: max(6.6666666667vw, 30px);
  }
}
@media (hover: hover) and (pointer: fine) {
  footer .footer-main-contents .right-contents .sns-wrap a:hover {
    opacity: 0.5;
  }
}
footer .copy-right {
  font-size: 0.625vw;
  text-align: center;
  padding: 11px 0;
  background-color: #404040;
}
@media screen and (max-width: 750px) {
  footer .copy-right {
    font-size: 2.6666666667vw;
    padding: 2.6666666667vw 0 3.3333333333vw;
  }
}