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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.swiper-navigation-disabled .swiper-button-next, .swiper-navigation-disabled .swiper-button-prev {
  display: none !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.swiper-cube {
  overflow: visible;
}

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

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

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

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

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

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

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

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

.swiper-flip {
  overflow: visible;
}

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

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

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

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

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

.swiper-cards {
  overflow: visible;
}

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

*:not(:is(ul, ol, li)) {
  margin: 0;
  padding: 0;
  border: 0;
  word-break: break-word;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  vertical-align: baseline;
  background: transparent;
}

html, body {
  font-size: 62.5%;
}

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

:where(:is(ul, ol):not(.is-list-normal)) {
  padding: 0;
  margin: 0;
  list-style-type: none;
}
:where(:is(ul, ol):not(.is-list-normal)) li {
  margin: 0;
  padding: 0;
}

:where(ul.is-list-normal) {
  padding-left: 1em;
  list-style: disc;
}

blockquote, q {
  quotes: none;
}
blockquote::before, blockquote::after, q::before, q::after {
  content: none;
}

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

img {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  vertical-align: bottom;
  max-width: 100%;
}

picture {
  max-width: 100%;
}

input, select {
  vertical-align: middle;
}

br {
  line-height: 0;
}

input, textarea, select, button {
  font: inherit;
  font-size: 16px;
}

:where(button) {
  color: var(--color-text);
}

input:is([type=checkbox][type=radio]), select, button {
  cursor: pointer;
}

input[type=submit],
input[type=button] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
       appearance: button;
  border: none;
  -webkit-box-sizing: border-box;
          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;
}

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

/* focus reset & restore */
*:focus {
  outline: none;
}

a:has(img) {
  display: inline-block;
  position: relative;
}

*:focus-visible {
  outline: -webkit-focus-ring-color solid 4px;
  outline-offset: 2px;
  -webkit-transition: none;
  transition: none;
}

:root {
  --color-red: red;
  --color-blue: #0062e2;
  --color-dark-blue: #000a6b;
  --color-light-blue: #7fcdf3;
  --color-cream: #fcfbde;
  --color-gold: #968755;
  --color-primary: var(--color-dark-blue);
  --color-secondary: var(--color-blue);
  --color-text: #000;
  --color-text-secondary: #333;
  --color-text-inverse: #fff;
  --color-bg: #fff;
  --color-bg-secondary: #d8edfc;
  --color-border: #dfdfdf;
  --frame-color: var(--color-secondary);
  --frame-bg: var(--color-light-blue);
  --color-cantun-pink: #ed58ba;
  --color-cantun-red: #f30426;
  --color-cantun-orange: #fc6c1e;
  --color-cantun-green: #1aaf83;
  --color-cantun-aqua: #20a9d1;
  --color-cantun-blue: #0f59ba;
  --color-cantun-purple: #9c79de;
  --text-primary: 'Noto Sans JP', sans-serif;
  --text-secondary: 'Lato', sans-serif;
  --text-size-base: clamp(1.6rem, 1.6rem + 0vw, 1.6rem);
  --text-size-small: clamp(1.4rem, 1.4rem + 0vw, 1.4rem);
  --text-size-medium: clamp(1.8rem, 1.8rem + 0vw, 1.8rem);
  --text-size-large: clamp(2rem, 2rem + 0vw, 2rem);
  --content-width-size: calc(120rem + var(--content-padding));
  --content-width: min(100%, var(--content-width-size));
  --content-width-size-half: calc(60rem + var(--content-padding));
  --content-width-half: min(50vw, var(--content-width-size-half));
  --content-width-size-small: calc(96rem + var(--content-padding));
  --content-width-small: min(100%, var(--content-width-size-small));
  --content-width-size-half-small: calc((96 / 2)rem + var(--content-padding));
  --content-width-half-small: min(50vw, var(--content-width-size-half-small));
  --content-padding: clamp(2.4rem, 0.8119402985rem + 1.9900497512vw, 3.2rem);
  --border-radius: clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem);
  --trd-duration: 0.5s;
  --trd-hover-duration: 0.25s;
  --trd-timing: cubic-bezier(.165, .84, .44, 1);
  --modal-index: 1000;
  --header-index: 900;
  --footer-index: 800;
  --page-top-index: 700;
  --article-index: 600;
  --nav-index: 500;
  --main-index: 400;
  --section-index: 300;
}
@media (max-width: 768px) {
  :root {
    --content-padding: 6.4vw;
    --text-size-base: 4.2666666667vw;
    --text-size-xsmall: 3.2vw;
    --text-size-small: 3.2vw;
    --text-size-medium: 4.8vw;
    --text-size-large: 5.3333333333vw;
    --border-radius: 1.3333333333vw;
  }
}

html, body {
  overflow-x: hidden;
}

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

body {
  font-family: var(--text-primary);
  -webkit-text-size-adjust: 100%;
  color: var(--color-text);
  background-color: var(--color-bg);
  font-size: var(--text-size-base);
  font-weight: 400;
  line-height: 1.5;
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
}
@media (max-width: 768px) {
  body {
    font-size: 4.2666666667vw;
  }
}

.main {
  width: 100%;
  position: relative;
  z-index: var(--header-index);
}

#contents {
  background: url(/site_ag/assets/img/common/bg.png) repeat-y center top 4rem/min(150%, 1852px);
}
@media (max-width: 768px) {
  #contents {
    background: url(/site_ag/assets/img/common/sp/bg_sp.png) repeat-y center top -4rem/100%;
  }
}
#contents {
  z-index: var(--main-index);
}

.inner {
  max-width: 1060px;
  margin: 0 auto;
  padding: 0 40px;
}
@media (max-width: 768px) {
  .inner {
    max-width: 100%;
    padding: 0 5.3333333333vw;
  }
}

a {
  opacity: 1;
  -webkit-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
  text-decoration: none;
}
a:hover {
  opacity: 0.7;
}
@media (max-width: 768px) {
  a:hover {
    opacity: 1;
  }
}

.ex-link::before {
  content: "";
  display: block;
  background: url(/site_ag/assets/img/common/icon_ex_link.svg) no-repeat center center/contain;
  width: clamp(1rem, 0.2059701493rem + 0.9950248756vw, 1.4rem);
  height: clamp(1rem, 0.2059701493rem + 0.9950248756vw, 1.4rem);
  position: absolute;
  bottom: clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem);
  right: clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem);
}
.ex-link-w::before {
  content: "";
  display: block;
  background: url(/site_ag/assets/img/common/icon_ex_link_w.svg) no-repeat center center/contain;
  width: clamp(1rem, 0.2059701493rem + 0.9950248756vw, 1.4rem);
  height: clamp(1rem, 0.2059701493rem + 0.9950248756vw, 1.4rem);
  position: absolute;
  bottom: clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem);
  right: clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem);
}

.container {
  width: var(--content-width);
  margin-inline: auto;
  padding-inline: var(--content-padding);
}
.container--small {
  width: var(--content-width-small);
}

.deco-frame {
  --frame-color: var(--color-secondary);
  --frame-bg: var(--color-light-blue);
  --frame-ds-size: clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem);
  background-color: var(--frame-bg);
  border: solid 2px var(--frame-color);
  border-radius: clamp(1.5rem, -1.4776119403rem + 3.7313432836vw, 3rem);
  -webkit-box-shadow: var(--frame-ds-size) var(--frame-ds-size) 0px 0px var(--frame-bg), var(--frame-ds-size) var(--frame-ds-size) 0px 2px var(--frame-color);
          box-shadow: var(--frame-ds-size) var(--frame-ds-size) 0px 0px var(--frame-bg), var(--frame-ds-size) var(--frame-ds-size) 0px 2px var(--frame-color);
}
.deco-frame--gold {
  --frame-color: var(--color-gold);
  --frame-bg: #d8d2a5;
  background-color: #f9f3c7;
}

a.deco-frame {
  opacity: 1;
}
a.deco-frame:hover {
  translate: var(--frame-ds-size) var(--frame-ds-size);
  -webkit-box-shadow: 0 0 0px 0px var(--frame-bg), 0 0 0px 0 var(--frame-color);
          box-shadow: 0 0 0px 0px var(--frame-bg), 0 0 0px 0 var(--frame-color);
}

.bg-grid {
  /* 方眼のサイズ */
  --grid-size: min(4.6rem, 6.5vw);
  /* 線の太さ（1pxが最もきれい） */
  --grid-strength: 1px;
  /* 線の色（薄いブルーやグレーが本物っぽい） */
  --grid-color: rgba(153, 153, 153, 0.25);
  background-color: #fff;
  background-image: -webkit-gradient(linear, left top, left bottom, from(var(--grid-color)), to(transparent)), -webkit-gradient(linear, left top, right top, from(var(--grid-color)), to(transparent));
  background-image: linear-gradient(var(--grid-color) var(--grid-strength), transparent var(--grid-strength)), linear-gradient(90deg, var(--grid-color) var(--grid-strength), transparent var(--grid-strength));
  /* 1pxのズレを防ぐための調整 */
  background-size: var(--grid-size) var(--grid-size);
  background-position: calc(var(--grid-strength) * -1) calc(var(--grid-strength) * -1);
}

.button {
  --btn-color: #000a6b;
  --btn-ds-size: clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem);
  --btn-bg: #c3e7fb;
  width: min(100%, 350px);
  aspect-ratio: 350/80;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-radius: 50vw;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  z-index: 1;
  background-color: var(--btn-color);
  -webkit-box-shadow: var(--btn-ds-size) var(--btn-ds-size) 0px 0px var(--btn-bg), var(--btn-ds-size) var(--btn-ds-size) 0px 2px var(--btn-color);
          box-shadow: var(--btn-ds-size) var(--btn-ds-size) 0px 0px var(--btn-bg), var(--btn-ds-size) var(--btn-ds-size) 0px 2px var(--btn-color);
}
@media (max-width: 768px) {
  .button {
    --btn-ds-size: 0.8vw;
  }
}
.button:hover {
  opacity: 1;
  translate: var(--btn-ds-size) var(--btn-ds-size);
  -webkit-box-shadow: 0 0 0px 0px var(--btn-bg), 0 0 0px 0 var(--btn-color);
          box-shadow: 0 0 0px 0px var(--btn-bg), 0 0 0px 0 var(--btn-color);
}
.button img {
  position: relative;
  z-index: 1;
  display: block;
}
.button__inner {
  width: 100%;
  height: 100%;
  border-radius: 15rem;
  overflow: hidden;
}
.button__text {
  color: var(--color-text-inverse);
  text-align: left;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
}
.button .circle-arrow::before {
  content: "";
  display: block;
  width: clamp(1.8rem, 0.6089552239rem + 1.4925373134vw, 2.4rem);
  aspect-ratio: 1/1;
  background: url(/site_ag/assets/img/common/icon_arrow.png) no-repeat center center/contain;
  position: absolute;
  top: 50%;
  right: 2rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.button__arrow {
  color: var(--color-text-inverse);
}
.button__arrow::after {
  content: "";
  display: block;
  width: clamp(0.8rem, -0.3910447761rem + 1.4925373134vw, 1.4rem);
  aspect-ratio: 1/1;
  border: 2px solid;
  border-color: currentColor currentColor transparent transparent;
  rotate: 45deg;
}
.button__yellow {
  --btn-color: #edad02;
  --btn-bg: #f5e1aa;
}
.button__green {
  --btn-color: #1aaf83;
  --btn-bg: #d2f2e8;
}
.button__pink {
  --btn-color: #ed58ba;
  --btn-bg: #f5c9e6;
}
.button__gold {
  --btn-color: var(--color-gold);
  --btn-bg: #d8d2a5;
}
.button--small {
  width: min(100%, 280px);
  aspect-ratio: auto;
  padding: clamp(0.6rem, -0.5910447761rem + 1.4925373134vw, 1.2rem) clamp(1.6rem, 0.0119402985rem + 1.9900497512vw, 2.4rem);
  --btn-ds-size: clamp(0.3rem, 0.1014925373rem + 0.2487562189vw, 0.4rem);
}
@media (max-width: 768px) {
  .button--small {
    padding: 2.1333333333vw 4.2666666667vw;
    --btn-ds-size: 0.8vw;
  }
}
.button-container {
  --gap: clamp(2rem, -0.3820895522rem + 2.9850746269vw, 3.2rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: var(--gap);
}
.button-container .button {
  font-size: var(--text-size-xsmall);
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: calc(33.3333333333% - var(--gap) * 2 / 3);
}
@media (max-width: 768px) {
  .button-container {
    --gap: 5.3333333333vw;
  }
  .button-container .button {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 100%;
            flex: 1 1 100%;
  }
}

.list-note {
  counter-reset: note;
}

.list-note > li {
  counter-increment: note;
  position: relative;
  padding-left: 2.5em;
  font-size: 1.4rem;
  text-align: left;
  font-weight: normal;
}

.list-note > li::before {
  content: "※" counter(note) "：";
  position: absolute;
  left: 0;
  top: 0;
}

.header {
  position: relative;
}

header {
  width: 100%;
  background: var(--color-primary) !important;
  color: #fff;
  position: relative;
  z-index: var(--header-index);
}
@media (max-width: 768px) {
  header {
    height: 16vw;
  }
}
@media (max-width: 768px) {
  header .inner {
    padding: 0;
  }
}
header .top_nav {
  padding: 8px 0;
  border-bottom: solid 1px #fff;
}
@media (max-width: 768px) {
  header .top_nav {
    padding: 0 16vw 0 4.2666666667vw;
    border: none;
  }
}
header .top_nav .inner {
  max-width: 1060px;
  display: -webkit-box; /*Android4.3*/
  display: -ms-flexbox; /*IE10*/ /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-align: center; /*IE10*/
  -webkit-box-align: center; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
  align-items: center;
  -ms-flex-pack: justify; /*IE10*/
  -webkit-box-pack: justify; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
  justify-content: space-between;
}
@media (max-width: 768px) {
  header .top_nav .inner {
    height: 16vw;
    background: var(--color-primary);
  }
}
header .top_nav .site_logo {
  font-size: 100%;
}
@media (max-width: 768px) {
  header .top_nav .site_logo {
    display: -webkit-box; /*Android4.3*/
    display: -ms-flexbox; /*IE10*/ /*PC-Safari,iOS8.4*/
    display: flex;
    -ms-flex-align: center; /*IE10*/
    -webkit-box-align: center; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
    align-items: center;
    -ms-flex-pack: center; /*IE10*/
    -webkit-box-pack: center; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
    justify-content: center;
  }
}
header .top_nav .site_logo a img, header .top_nav .site_logo a picture {
  vertical-align: middle;
  max-width: 100%;
  display: block;
}
header .top_nav .site_logo a img {
  width: 160px;
}
@media (max-width: 768px) {
  header .top_nav .site_logo a img {
    width: 48vw;
  }
}
header .top_nav .sub_menu {
  display: -webkit-box; /*Android4.3*/
  display: -ms-flexbox; /*IE10*/ /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-align: center; /*IE10*/
  -webkit-box-align: center; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
  align-items: center;
  -ms-flex-pack: justify; /*IE10*/
  -webkit-box-pack: justify; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
  justify-content: space-between;
}
@media (max-width: 768px) {
  header .top_nav .sub_menu {
    display: none;
  }
}
header .top_nav .sub_menu li.for_shop a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: solid 1px #fff;
  padding: 4px 8px 4px 16px;
  position: relative;
}
header .top_nav .sub_menu li.for_shop a:hover {
  opacity: 1;
  background: #0062e2;
}
header .top_nav .sub_menu li.for_shop a span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: clamp(1rem, 0.2059701493rem + 0.9950248756vw, 1.4rem);
  aspect-ratio: 1/1;
  margin-left: 5px;
}
header .top_nav .sub_menu li.for_shop a span img {
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
header .top_nav .sub_menu li img {
  width: 20px;
}
header .top_nav .sub_menu li:not(:last-child) {
  margin-right: 16px;
}
@media (max-width: 768px) {
  header nav {
    width: 100%;
    height: 100vh;
    padding-bottom: 42.6666666667vw;
    background: var(--color-primary);
    border-top: solid 0.5333333333vw #c2c2c2;
  }
}
header nav ul {
  display: -webkit-box; /*Android4.3*/
  display: -ms-flexbox; /*IE10*/ /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-pack: center; /*IE10*/
  -webkit-box-pack: center; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
  justify-content: center;
  -ms-flex-align: center; /*IE10*/
  -webkit-box-align: center; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
  align-items: center;
}
@media (max-width: 768px) {
  header nav ul {
    display: block;
  }
}
@media (max-width: 768px) {
  header nav ul.nav_menu li {
    position: relative;
  }
}
header nav ul.nav_menu li .sub_nav {
  background: #fff;
  width: 100%;
  position: absolute;
  top: 102px;
  left: 0;
  color: #0062e2;
  text-align: center;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
@media (max-width: 768px) {
  header nav ul.nav_menu li .sub_nav {
    background: var(--color-primary) !important;
    color: #fff !important;
    position: inherit;
    top: inherit;
    visibility: visible;
    opacity: 1;
  }
}
header nav ul.nav_menu li .sub_nav .item_wrap {
  max-width: 1060px;
  margin: 0 auto;
  padding: 16px 0 24px;
  -ms-flex-pack: center; /*IE10*/
  -webkit-box-pack: center; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
  justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: clamp(1rem, -0.9850746269rem + 2.4875621891vw, 2rem);
}
@media (max-width: 768px) {
  header nav ul.nav_menu li .sub_nav .item_wrap {
    padding: 5.3333333333vw 3.2vw;
    display: -webkit-box; /*Android4.3*/
    display: -ms-flexbox; /*IE10*/ /*PC-Safari,iOS8.4*/
    display: flex;
    -ms-flex-pack: center; /*IE10*/
    -webkit-box-pack: center; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
    justify-content: center;
    -ms-flex-wrap: wrap; /*IE10*/ /*PC-Safari,iOS8.4*/
    flex-wrap: wrap;
    border-bottom: solid 0.5333333333vw #c2c2c2;
    gap: 0;
  }
}
header nav ul.nav_menu li .sub_nav .item_wrap li {
  width: calc(25% - 8px);
}
@media (max-width: 768px) {
  header nav ul.nav_menu li .sub_nav .item_wrap li {
    width: 50%;
  }
  header nav ul.nav_menu li .sub_nav .item_wrap li:nth-child(n+3) {
    margin-top: 10.6666666667vw;
  }
}
header nav ul.nav_menu li .sub_nav .item_wrap li:first-child .category {
  text-align: left;
}
header nav ul.nav_menu li .sub_nav .item_wrap li .category {
  font-size: 1.3rem;
  margin-bottom: 4px;
}
@media (max-width: 768px) {
  header nav ul.nav_menu li .sub_nav .item_wrap li .category {
    display: none;
  }
}
header nav ul.nav_menu li .sub_nav .item_wrap li a,
header nav ul.nav_menu li .sub_nav .item_wrap li button {
  padding: 16px 8px;
  border: solid 2px #e4e4e4;
}
@media (max-width: 768px) {
  header nav ul.nav_menu li .sub_nav .item_wrap li a,
  header nav ul.nav_menu li .sub_nav .item_wrap li button {
    padding: 0;
    border: none;
  }
}
header nav ul.nav_menu li .sub_nav .item_wrap li a::before, header nav ul.nav_menu li .sub_nav .item_wrap li a::after,
header nav ul.nav_menu li .sub_nav .item_wrap li button::before,
header nav ul.nav_menu li .sub_nav .item_wrap li button::after {
  content: none;
}
header nav ul.nav_menu li .sub_nav .item_wrap li a:hover, header nav ul.nav_menu li .sub_nav .item_wrap li a:focus-within,
header nav ul.nav_menu li .sub_nav .item_wrap li button:hover,
header nav ul.nav_menu li .sub_nav .item_wrap li button:focus-within {
  background: #fff;
  border: solid 2px #0062e2;
}
@media (max-width: 768px) {
  header nav ul.nav_menu li .sub_nav .item_wrap li a:hover, header nav ul.nav_menu li .sub_nav .item_wrap li a:focus-within,
  header nav ul.nav_menu li .sub_nav .item_wrap li button:hover,
  header nav ul.nav_menu li .sub_nav .item_wrap li button:focus-within {
    background: inherit;
    border: none;
  }
}
header nav ul.nav_menu li .sub_nav .item_wrap li .text {
  font-size: 1.3rem;
  letter-spacing: 0;
  margin-bottom: 16px;
}
@media (max-width: 768px) {
  header nav ul.nav_menu li .sub_nav .item_wrap li .text {
    font-size: 3.2vw;
    margin-bottom: 2.1333333333vw;
  }
}
header nav ul.nav_menu li .sub_nav .item_wrap li .img img {
  width: 200px;
}
header nav ul.nav_menu li a,
header nav ul.nav_menu li button {
  display: block;
  font-size: 2rem;
  line-height: 1;
  display: block;
  padding: 16px 32px;
  position: relative;
  color: #fff;
}
@media (max-width: 768px) {
  header nav ul.nav_menu li a,
  header nav ul.nav_menu li button {
    font-size: 4.8vw;
    line-height: 1.2;
    padding: 5.3333333333vw 0 5.3333333333vw 5.3333333333vw;
    border-bottom: solid 0.5333333333vw #c2c2c2;
  }
}
header nav ul.nav_menu li a::before,
header nav ul.nav_menu li button::before {
  content: "";
  position: absolute;
  top: 16px;
  left: -1px;
  width: 1px;
  height: 20px;
  background: #fff;
}
@media (max-width: 768px) {
  header nav ul.nav_menu li a::before,
  header nav ul.nav_menu li button::before {
    content: none;
  }
}
header nav ul.nav_menu li a:hover,
header nav ul.nav_menu li button:hover {
  opacity: 1;
  background: #0062e2;
}
@media (max-width: 768px) {
  header nav ul.nav_menu li a:hover,
  header nav ul.nav_menu li button:hover {
    background: inherit;
  }
}
header nav ul.nav_menu li a.for_shop_sp,
header nav ul.nav_menu li button.for_shop_sp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}
header nav ul.nav_menu li a.for_shop_sp span,
header nav ul.nav_menu li button.for_shop_sp span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 4.2666666667vw;
  aspect-ratio: 1/1;
  margin-left: 2.1333333333vw;
}
header nav ul.nav_menu li a.for_shop_sp span img,
header nav ul.nav_menu li button.for_shop_sp span img {
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
header nav ul.nav_menu li:last-child a::after {
  content: "";
  position: absolute;
  top: 16px;
  right: -1px;
  width: 1px;
  height: 20px;
  background: #fff;
}
@media (max-width: 768px) {
  header nav ul.nav_menu li:last-child a::after {
    content: none;
  }
}
@media (max-width: 768px) {
  header nav ul.nav_menu li.sub button {
    width: 100%;
    text-align: left;
  }
}
header nav ul.nav_menu li.sub:hover .sub_nav, header nav ul.nav_menu li.sub:focus-within .sub_nav {
  visibility: visible;
  opacity: 1;
}
header nav .menu_sp {
  display: none;
}
@media (max-width: 768px) {
  header nav .menu_sp {
    display: block;
    border-bottom: solid 0.5333333333vw #c2c2c2;
  }
}
@media (max-width: 768px) {
  header nav .menu_sp .link_sns {
    display: -webkit-box; /*Android4.3*/
    display: -ms-flexbox; /*IE10*/ /*PC-Safari,iOS8.4*/
    display: flex;
    -ms-flex-pack: center; /*IE10*/
    -webkit-box-pack: center; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
    justify-content: center;
    -ms-flex-wrap: wrap; /*IE10*/ /*PC-Safari,iOS8.4*/
    flex-wrap: wrap;
  }
  header nav .menu_sp .link_sns li {
    padding: 5.3333333333vw;
  }
  header nav .menu_sp .link_sns li img {
    width: 7.4666666667vw;
  }
}

.menu {
  display: none;
}
@media (max-width: 768px) {
  .menu {
    width: 16vw;
    height: 16vw;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
  }
  .menu:hover {
    cursor: pointer;
  }
  .menu .menu-trigger, .menu .menu-trigger span {
    display: inline-block;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 16vw;
    height: 16vw;
  }
  .menu .menu-trigger::before, .menu .menu-trigger::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 16vw;
    height: 16vw;
  }
  .menu .menu-trigger::before {
    background: url(/site_ag/assets/img/common/sp/head_menu_close.png);
    background-size: contain;
  }
  .menu .menu-trigger::after {
    background: url(/site_ag/assets/img/common/sp/head_menu.png);
    background-size: contain;
  }
}

@media (max-width: 768px) {
  .open .menu-trigger::after {
    content: none;
  }
}

@media (max-width: 768px) {
  .open nav {
    overflow-y: scroll;
    visibility: visible;
    display: block;
    opacity: 0;
    pointer-events: inherit;
    -webkit-animation: fade 0.2s ease-in-out 0s forwards;
            animation: fade 0.2s ease-in-out 0s forwards;
  }
}

@media (max-width: 768px) {
  header nav {
    visibility: visible;
    display: block;
    opacity: 0;
    pointer-events: none;
    -webkit-animation: fadeout 0.2s ease-in-out 0s forwards;
            animation: fadeout 0.2s ease-in-out 0s forwards;
  }
}

@-webkit-keyframes fade {
  0% {
    -webkit-transform: translateY(40px);
            transform: translateY(40px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}

@keyframes fade {
  0% {
    -webkit-transform: translateY(40px);
            transform: translateY(40px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}
@-webkit-keyframes fadeout {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateY(-80px);
            transform: translateY(-80px);
    opacity: 0;
  }
}
@keyframes fadeout {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateY(-80px);
            transform: translateY(-80px);
    opacity: 0;
  }
}
.footer {
  position: relative;
  margin-top: auto;
}

@media (max-width: 768px) {
  .foot_common .inner:first-child {
    padding: 0;
  }
}
.foot_common .series_link .ttl {
  text-align: left;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .foot_common .series_link .ttl {
    border-bottom: solid 0.2666666667vw #bdbdbd;
    margin-bottom: 4.2666666667vw;
    padding-bottom: 3.2vw;
  }
}
.foot_common .series_link .ttl img {
  width: 258px;
}
@media (max-width: 768px) {
  .foot_common .series_link .ttl img {
    width: 49.3333333333vw;
  }
}
@media (max-width: 768px) and (max-width: 768px) {
  .foot_common .series_link .ttl img {
    margin-left: 5.3333333333vw;
  }
}
.foot_common .series_link .col4 {
  display: -webkit-box; /*Android4.3*/
  display: -ms-flexbox; /*IE10*/ /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-pack: center; /*IE10*/
  -webkit-box-pack: center; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
  justify-content: center;
  gap: clamp(2rem, -1.9701492537rem + 4.9751243781vw, 4rem);
}
@media (max-width: 768px) {
  .foot_common .series_link .col4 {
    gap: 0;
  }
}
@media (max-width: 768px) {
  .foot_common .series_link .col4 {
    -ms-flex-wrap: wrap; /*IE10*/ /*PC-Safari,iOS8.4*/
    flex-wrap: wrap;
  }
}
@media (max-width: 768px) {
  .foot_common .series_link .col4 li a {
    display: -webkit-box; /*Android4.3*/
    display: -ms-flexbox; /*IE10*/ /*PC-Safari,iOS8.4*/
    display: flex;
    -ms-flex-pack: justify; /*IE10*/
    -webkit-box-pack: justify; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
    justify-content: space-between;
    -ms-flex-align: center; /*IE10*/
    -webkit-box-align: center; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
    align-items: center;
    width: 100%;
    border-bottom: solid 0.2666666667vw #bdbdbd;
    margin-bottom: 4.2666666667vw;
    padding: 0 7.4666666667vw 4.2666666667vw;
  }
}
.foot_common .series_link .col4 li .item_img {
  margin: 0 0 4px 0;
}
@media (max-width: 768px) {
  .foot_common .series_link .col4 li .item_img {
    margin: 0 3.2vw 0 0;
  }
}
.foot_common .series_link .col4 li .item_img img {
  width: 180px;
}
@media (max-width: 768px) {
  .foot_common .series_link .col4 li .item_img img {
    width: 75.2vw;
  }
}
.foot_common .series_link .col4 li .item_ttl {
  text-align: center;
}
.foot_common .series_link .col4 li .item_ttl img {
  width: 160px;
}
@media (max-width: 768px) {
  .foot_common .series_link .col4 li .item_ttl img {
    width: 90.4vw;
  }
}
.foot_common .bnr {
  border-top: solid 1px #bdbdbd;
  margin: 40px 0 80px;
  padding-top: 56px;
  text-align: center;
}
@media (max-width: 768px) {
  .foot_common .bnr {
    border: none;
    margin: 0 0 32vw;
    padding: 14.9333333333vw 10.6666666667vw 0;
  }
}
.foot_common .bnr img {
  -webkit-box-shadow: 0px 0px 20px -6px rgba(0, 51, 119, 0.3);
          box-shadow: 0px 0px 20px -6px rgba(0, 51, 119, 0.3);
  border-radius: 20px;
}
@media (max-width: 768px) {
  .foot_common .bnr img {
    -webkit-box-shadow: 0px 0px 5.3333333333vw -1.6vw rgba(0, 51, 119, 0.5);
            box-shadow: 0px 0px 5.3333333333vw -1.6vw rgba(0, 51, 119, 0.5);
    border-radius: 5.3333333333vw;
  }
}

footer {
  margin-top: clamp(2.4rem, -2.3641791045rem + 5.9701492537vw, 4.8rem);
  padding: 80px 0 40px;
  font-weight: normal;
  color: #555;
  text-align: center;
  position: relative;
  border-top: solid 1px #bdbdbd;
  z-index: var(--footer-index);
}
@media (max-width: 768px) {
  footer {
    padding: 10.6666666667vw 0 12.8vw;
    text-align: left;
    border-top: none;
  }
}
footer .t_link {
  display: -webkit-box; /*Android4.3*/
  display: -ms-flexbox; /*IE10*/ /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-pack: center; /*IE10*/
  -webkit-box-pack: center; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
  justify-content: center;
}
@media (max-width: 768px) {
  footer .t_link {
    -ms-flex-wrap: wrap; /*IE10*/ /*PC-Safari,iOS8.4*/
    flex-wrap: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 2.6666666667vw 5.3333333333vw;
  }
}
footer .t_link li {
  padding: 0 16px;
  font-size: 1.3rem;
}
@media (max-width: 768px) {
  footer .t_link li {
    padding: 0;
    font-size: 3.4666666667vw;
    width: calc(50% - 2.6666666667vw);
  }
}
footer .t_link li a {
  display: block;
}
footer .t_link li a:hover {
  text-decoration: underline;
  opacity: 1;
}
footer .t_link li button {
  border: 0 !important;
  color: #555 !important;
  background-color: #fff !important;
  line-height: 1 !important;
  padding: 0 !important;
  font-size: 1.3rem !important;
}
@media (max-width: 768px) {
  footer .t_link li button {
    font-size: 3.7333333333vw !important;
  }
}
footer .t_link li button:hover {
  text-decoration: underline !important;
  background-color: none !important;
}
@media (max-width: 768px) {
  footer .t_link li button:hover {
    text-decoration: none !important;
  }
}
footer .t_link li:not(:last-child) {
  border-right: solid 1px #555;
}
@media (max-width: 768px) {
  footer .t_link li:not(:last-child) {
    border: none;
  }
}
footer .logo {
  margin-top: 40px;
}
@media (max-width: 768px) {
  footer .logo {
    margin-top: 12.8vw;
    text-align: center;
  }
}
footer .logo li img {
  width: 246px;
}
@media (max-width: 768px) {
  footer .logo li img {
    width: 46.9333333333vw;
  }
}
footer .logo li + li {
  margin-top: 32px;
}
@media (max-width: 768px) {
  footer .logo li + li {
    margin-top: 1.3333333333vw;
  }
}
footer .copyright {
  font-size: 1.2rem;
  margin-top: 40px;
}
@media (max-width: 768px) {
  footer .copyright {
    font-size: 2.4vw;
    text-align: center;
    margin-top: 5.3333333333vw;
  }
}

/* -----------------------------------------------------
	totop
----------------------------------------------------- */
#totop {
  position: absolute;
  right: 0;
  z-index: 1;
}
#totop a {
  display: block;
  background-color: #bfbfbf;
  width: 40px;
  height: 40px;
}
@media (max-width: 768px) {
  #totop a {
    width: 10.6666666667vw;
    height: 10.6666666667vw;
  }
}
#totop a .arrow_top {
  content: "";
  width: 10px;
  height: 10px;
  border: 0px;
  border-top: solid 3px #fff;
  border-right: solid 3px #fff;
  -webkit-transform: translate(-50%) rotate(-45deg);
          transform: translate(-50%) rotate(-45deg);
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
}
@media (max-width: 768px) {
  #totop a .arrow_top {
    width: 3.2vw;
    height: 3.2vw;
    border-top: solid 0.6666666667vw #fff;
    border-right: solid 0.6666666667vw #fff;
  }
}
#totop a:hover .arrow_top {
  top: 35%;
}
@media (max-width: 768px) {
  #totop a:hover .arrow_top {
    top: 50%;
  }
}

br.pc {
  display: block;
}
@media (max-width: 768px) {
  br.pc {
    display: none;
  }
}
br.sp {
  display: none;
}
@media (max-width: 768px) {
  br.sp {
    display: block;
  }
}

@media (min-width: 769px) {
  .sp-only {
    display: none;
  }
}
@media (max-width: 768px) {
  .pc-only {
    display: none;
  }
}
.js-inview {
  -webkit-transition: opacity var(--trd-duration) var(--trd-timing), -webkit-transform var(--trd-duration) var(--trd-timing);
  transition: opacity var(--trd-duration) var(--trd-timing), -webkit-transform var(--trd-duration) var(--trd-timing);
  transition: opacity var(--trd-duration) var(--trd-timing), transform var(--trd-duration) var(--trd-timing);
  transition: opacity var(--trd-duration) var(--trd-timing), transform var(--trd-duration) var(--trd-timing), -webkit-transform var(--trd-duration) var(--trd-timing);
}
.js-inview.is-inview-fade {
  opacity: 0;
}
.js-inview.is-inview-up {
  -webkit-transform: translateY(16%);
          transform: translateY(16%);
}
.js-inview.is-inview-down {
  -webkit-transform: translateY(-16%);
          transform: translateY(-16%);
}
.js-inview.is-inview-right {
  -webkit-transform: translateX(16%);
          transform: translateX(16%);
}
.js-inview.is-inview-left {
  -webkit-transform: translateX(-16%);
          transform: translateX(-16%);
}
.js-inview.is-active {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.under-mainvisual {
  background: var(--color-light-blue) url(/site_ag/assets/img/common/under_mainvisual_bg.png) no-repeat center center/cover;
  position: relative;
}
@media (max-width: 768px) {
  .under-mainvisual .container {
    padding-left: 1.3333333333vw;
  }
}
.under-mainvisual__title {
  position: relative;
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  padding: clamp(0.6rem, 0.2029850746rem + 0.4975124378vw, 0.8rem);
  background-color: var(--color-light-blue);
}
@media (max-width: 768px) {
  .under-mainvisual__title {
    width: 75%;
    padding: 1.6vw;
    margin-inline: 0;
  }
}
.under-mainvisual::after {
  content: "";
  display: block;
  width: clamp(8rem, -39.6417910448rem + 59.7014925373vw, 32rem);
  height: 100%;
  background: bottom right/contain no-repeat;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 0;
}
@media (max-width: 768px) {
  .under-mainvisual::after {
    width: 30%;
  }
}
#info .under-mainvisual::after {
  background-image: url(../img/info/under_mainvisual_img.png);
}
@media (max-width: 768px) {
  #info .under-mainvisual::after {
    background-image: url(../img/info/under_mainvisual_img_sp.png);
  }
}
.product_eyes .under-mainvisual::after {
  width: clamp(9.7rem, -52.4328358209rem + 77.8606965174vw, 41rem);
  background-image: url(../img/product/eyes/under_mainvisual_img.png);
}
@media (max-width: 768px) {
  .product_eyes .under-mainvisual::after {
    width: 30%;
    background-image: url(../img/product/eyes/under_mainvisual_img_sp.png);
  }
}
.product_ex .under-mainvisual::after {
  width: clamp(9.7rem, -52.4328358209rem + 77.8606965174vw, 41rem);
  background-image: url(../img/product/ex/under_mainvisual_img.png);
}
@media (max-width: 768px) {
  .product_ex .under-mainvisual::after {
    width: 30%;
    background-image: url(../img/product/ex/sp/under_mainvisual_img.png);
  }
}
@media (max-width: 768px) {
  .under-mainvisual {
    background-image: url(../img/common/under_mainvisual_bg_sp.png);
  }
}

.frame-title {
  --frame-ds-size: clamp(0.5rem, 0.1029850746rem + 0.4975124378vw, 0.7rem);
  position: relative;
  z-index: 1;
  padding: clamp(1rem, -0.9850746269rem + 2.4875621891vw, 2rem);
  max-width: clamp(40rem, -2.6791044776rem + 53.4825870647vw, 61.5rem);
  margin-inline: auto;
  background-color: var(--color-cream);
  border: solid 2px var(--color-secondary);
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--frame-ds-size) var(--frame-ds-size) 0px 0px var(--frame-bg), var(--frame-ds-size) var(--frame-ds-size) 0px 2px var(--frame-color);
          box-shadow: var(--frame-ds-size) var(--frame-ds-size) 0px 0px var(--frame-bg), var(--frame-ds-size) var(--frame-ds-size) 0px 2px var(--frame-color);
  margin-bottom: clamp(3.2rem, 1.6119402985rem + 1.9900497512vw, 4rem);
}
.frame-title :is(picture, img) {
  display: block;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .frame-title {
    margin-bottom: 8.5333333333vw;
  }
  .frame-title :is(picture, img) {
    height: 6.4vw;
  }
  .frame-title--sp-line2 :is(picture, img) {
    height: 8.5333333333vw;
  }
  .frame-title--sp-line3 :is(picture, img) {
    height: 24vw;
  }
}

.band-title {
  background-color: var(--color-secondary);
  border-radius: var(--border-radius);
  padding: clamp(1rem, -0.1910447761rem + 1.4925373134vw, 1.6rem);
  margin-bottom: clamp(0.8rem, -0.3910447761rem + 1.4925373134vw, 1.4rem);
}
.band-title :is(picture, img) {
  display: block;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .band-title {
    padding: 2.6666666667vw 4.2666666667vw;
    margin-bottom: 2.1333333333vw;
  }
  .band-title :is(picture, img) {
    height: 4.8vw;
  }
  .band-title--sp-line2 :is(picture, img) {
    height: 6.4vw;
  }
}

.accordion-section {
  margin-top: 4rem;
}
.accordion-section__title {
  font-size: var(--text-size-large);
  font-weight: 700;
  margin-bottom: 2rem;
}

.accordion {
  border: 1px solid var(--color-border);
  border-radius: 4px;
  margin-bottom: 1rem;
  overflow: hidden;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.accordion:hover {
  border-color: #999;
}
.accordion[open] {
  border-color: #999;
}
.accordion[open] .accordion__summary::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.accordion__summary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 1.2rem 1.6rem;
  font-size: var(--text-size-base);
  font-weight: 700;
  cursor: pointer;
  list-style: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background-color: #f9f9f9;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
  position: relative;
}
.accordion__summary::-webkit-details-marker {
  display: none;
}
.accordion__summary::after {
  content: "▼";
  font-size: 0.8em;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  margin-left: 1rem;
}
.accordion__summary:hover {
  background-color: #f0f0f0;
}
.accordion__content {
  padding: 1.6rem;
  -webkit-animation: accordionOpen 0.3s ease;
          animation: accordionOpen 0.3s ease;
  border-top: 1px solid var(--color-border);
  background-color: var(--color-bg);
}
.accordion__content p {
  margin-bottom: 1rem;
}
.accordion__content p:last-child {
  margin-bottom: 0;
}
.accordion__content ul, .accordion__content ol {
  margin-left: 2rem;
  margin-bottom: 1rem;
}
.accordion__content ul:last-child, .accordion__content ol:last-child {
  margin-bottom: 0;
}

@-webkit-keyframes accordionOpen {
  from {
    opacity: 0;
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes accordionOpen {
  from {
    opacity: 0;
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.modal-section {
  margin-top: 4rem;
  margin-bottom: 4rem;
}
.modal-section__title {
  font-size: var(--text-size-large);
  font-weight: 700;
  margin-bottom: 2rem;
}

.modal-button {
  padding: 1rem 2rem;
  font-size: var(--text-size-base);
  font-weight: 700;
  color: var(--color-bg);
  background-color: #333;
  border: 1px solid #333;
  border-radius: 4px;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  margin-right: 1rem;
  margin-bottom: 1rem;
}
.modal-button:hover {
  background-color: #000;
  border-color: #000;
}

.modal {
  position: fixed;
  inset: 0;
  margin: auto;
  padding: 0;
  border: none;
  background-color: transparent;
  z-index: var(--modal-index);
}
.modal::-ms-backdrop {
  background-color: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(2px);
  animation: modalBackdropFadeIn 0.3s ease;
}
.modal::backdrop {
  background-color: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(2px);
  -webkit-animation: modalBackdropFadeIn 0.3s ease;
          animation: modalBackdropFadeIn 0.3s ease;
}
.modal[open] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-animation: modalFadeIn 0.3s ease;
          animation: modalFadeIn 0.3s ease;
}
.modal__content {
  position: relative;
  width: 90%;
  max-width: 600px;
  max-height: 90vh;
  background-color: var(--color-bg);
  border: 1px solid var(--color-border);
  border-radius: 8px;
  -webkit-box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
          box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-animation: modalSlideIn 0.3s ease;
          animation: modalSlideIn 0.3s ease;
}
.modal__close {
  position: absolute;
  top: 1rem;
  right: 1rem;
  width: 3.2rem;
  height: 3.2rem;
  font-size: 2.4rem;
  line-height: 1;
  color: var(--color-text);
  background-color: transparent;
  border: none;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  z-index: 10;
  border-radius: 50%;
}
.modal__close::before, .modal__close::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 2px;
  height: 50%;
  background-color: var(--color-text);
  margin: auto;
}
.modal__close::before {
  rotate: 45deg;
}
.modal__close::after {
  rotate: -45deg;
}
.modal__close:hover {
  background-color: #f0f0f0;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.modal__title {
  font-size: var(--text-size-large);
  font-weight: 700;
  padding: 2rem 2rem 1rem;
  border-bottom: 1px solid var(--color-border);
}
.modal__body {
  padding: 2rem;
  overflow-y: auto;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.modal__body p {
  margin-bottom: 1rem;
}
.modal__body p:last-child {
  margin-bottom: 0;
}
.modal__body ul, .modal__body ol {
  margin-left: 2rem;
  margin-bottom: 1rem;
}
.modal__body ul:last-child, .modal__body ol:last-child {
  margin-bottom: 0;
}

@-webkit-keyframes modalBackdropFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes modalBackdropFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes modalFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes modalFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes modalSlideIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(-20px) scale(0.95);
            transform: translateY(-20px) scale(0.95);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0) scale(1);
            transform: translateY(0) scale(1);
  }
}
@keyframes modalSlideIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(-20px) scale(0.95);
            transform: translateY(-20px) scale(0.95);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0) scale(1);
            transform: translateY(0) scale(1);
  }
}
.tab-section {
  margin-top: clamp(2rem, -1.9701492537rem + 4.9751243781vw, 4rem);
}
.tab-section__title {
  font-size: var(--text-size-large);
  font-weight: 700;
  margin-bottom: 2rem;
}

.tab {
  border-radius: 4px;
}
.tab__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(0.5rem, -1.4850746269rem + 2.4875621891vw, 1.5rem);
}
.tab__button {
  width: min(33%, 218px);
  padding: 3px 3px 0;
  font-size: var(--text-size-base);
  font-weight: 700;
  text-align: center;
  cursor: pointer;
  border: solid 1px var(--frame-color);
  border-bottom: none;
  border-radius: 4px 4px 0 0;
  background-color: #fff;
  color: var(--color-text);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: relative;
  -webkit-box-shadow: clamp(0.2rem, -0.1970149254rem + 0.4975124378vw, 0.4rem) clamp(0.2rem, -0.1970149254rem + 0.4975124378vw, 0.4rem) 0px 0px #7fcdf3, clamp(0.2rem, -0.1970149254rem + 0.4975124378vw, 0.4rem) clamp(0.2rem, -0.1970149254rem + 0.4975124378vw, 0.4rem) 0px 1px var(--frame-color);
          box-shadow: clamp(0.2rem, -0.1970149254rem + 0.4975124378vw, 0.4rem) clamp(0.2rem, -0.1970149254rem + 0.4975124378vw, 0.4rem) 0px 0px #7fcdf3, clamp(0.2rem, -0.1970149254rem + 0.4975124378vw, 0.4rem) clamp(0.2rem, -0.1970149254rem + 0.4975124378vw, 0.4rem) 0px 1px var(--frame-color);
}
.tab__button.active {
  background-color: var(--color-bg);
  color: #000;
}
.tab__button.active::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
  height: 1px;
  background-color: var(--color-bg);
}
.tab__button.active .tab__button-img {
  background-color: var(--color-secondary);
}
.tab__button.active .tab__button-img .is-hover {
  opacity: 1;
}
.tab__button-img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  aspect-ratio: 210/85;
  background: var(--color-bg-secondary);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: relative;
}
@media (max-width: 768px) {
  .tab__button-img {
    aspect-ratio: 190/111;
  }
}
.tab__button-img .is-hover {
  opacity: 0;
}
.tab__button-img:hover {
  background-color: var(--color-secondary);
}
.tab__button-img:hover .is-hover {
  opacity: 1;
}
.tab__button-img img {
  width: 100%;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
}
.tab__panels {
  position: relative;
  min-height: 200px;
  background: var(--color-bg-secondary) url(/site_ag/assets/img/common/tab_bg.png) center top/cover;
  border: solid 2px var(--frame-color);
  border-radius: clamp(1.5rem, -1.4776119403rem + 3.7313432836vw, 3rem);
  -webkit-box-shadow: inset 0px 0px 0px 4px rgb(255, 255, 255), clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) 0px 0px #7fcdf3, clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) 0px 2px var(--frame-color);
          box-shadow: inset 0px 0px 0px 4px rgb(255, 255, 255), clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) 0px 0px #7fcdf3, clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) 0px 2px var(--frame-color);
}
@media (max-width: 768px) {
  .tab__panels {
    background: var(--color-bg-secondary) url(/site_ag/assets/img/common/sp/tab_bg_sp.png) repeat-y center top/100%;
  }
}
.tab__panels::before {
  content: "";
}
.tab__panel {
  display: none;
  padding: clamp(3rem, 1.0149253731rem + 2.4875621891vw, 4rem) 2.4rem;
  -webkit-animation: tabFadeIn 0.3s ease;
          animation: tabFadeIn 0.3s ease;
}
.tab__panel.active {
  display: block;
}
.tab__panel p {
  margin-bottom: 1rem;
}
.tab__panel p:last-child {
  margin-bottom: 0;
}
.tab__panel ul, .tab__panel ol {
  margin-left: 2rem;
  margin-bottom: 1rem;
}
.tab__panel ul:last-child, .tab__panel ol:last-child {
  margin-bottom: 0;
}
.tab .list-note {
  width: min(100%, 720px);
  margin: 0 auto clamp(2rem, 0.0149253731rem + 2.4875621891vw, 3rem);
}

@-webkit-keyframes tabFadeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(10px);
            transform: translateY(10px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes tabFadeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(10px);
            transform: translateY(10px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.u-hidden {
  display: none !important;
}

.u-inline {
  display: inline !important;
}

.u-block {
  display: block !important;
}

.u-inline-block {
  display: inline-block !important;
}

.u-flex {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.u-grid {
  display: -ms-grid !important;
  display: grid !important;
}

.u-flex-center {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: center !important;
      -ms-flex-pack: center !important;
          justify-content: center !important;
  -webkit-box-align: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
}

.u-flex-between {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: justify !important;
      -ms-flex-pack: justify !important;
          justify-content: space-between !important;
  -webkit-box-align: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
}

.u-flex-column {
  -webkit-box-orient: vertical !important;
  -webkit-box-direction: normal !important;
      -ms-flex-direction: column !important;
          flex-direction: column !important;
}

.u-m-unit0 {
  margin: 0px !important;
}

.u-mt-unit0 {
  margin-top: 0px !important;
}

.u-mb-unit0 {
  margin-bottom: 0px !important;
}

.u-ml-unit0 {
  margin-left: 0px !important;
}

.u-mr-unit0 {
  margin-right: 0px !important;
}

.u-p-unit0 {
  padding: 0px !important;
}

.u-pt-unit0 {
  padding-top: 0px !important;
}

.u-pb-unit0 {
  padding-bottom: 0px !important;
}

.u-pl-unit0 {
  padding-left: 0px !important;
}

.u-pr-unit0 {
  padding-right: 0px !important;
}

.u-mbl-unit0 {
  margin-block: 0px !important;
}

.u-pbl-unit0 {
  padding-block: 0px !important;
}

.u-mil-unit0 {
  margin-inline: 0px !important;
}

.u-pil-unit0 {
  padding-inline: 0px !important;
}

.u-m-unit1 {
  margin: 5px !important;
}

.u-mt-unit1 {
  margin-top: 5px !important;
}

.u-mb-unit1 {
  margin-bottom: 5px !important;
}

.u-ml-unit1 {
  margin-left: 5px !important;
}

.u-mr-unit1 {
  margin-right: 5px !important;
}

.u-p-unit1 {
  padding: 5px !important;
}

.u-pt-unit1 {
  padding-top: 5px !important;
}

.u-pb-unit1 {
  padding-bottom: 5px !important;
}

.u-pl-unit1 {
  padding-left: 5px !important;
}

.u-pr-unit1 {
  padding-right: 5px !important;
}

.u-mbl-unit1 {
  margin-block: 5px !important;
}

.u-pbl-unit1 {
  padding-block: 5px !important;
}

.u-mil-unit1 {
  margin-inline: 5px !important;
}

.u-pil-unit1 {
  padding-inline: 5px !important;
}

.u-m-unit2 {
  margin: 10px !important;
}

.u-mt-unit2 {
  margin-top: 10px !important;
}

.u-mb-unit2 {
  margin-bottom: 10px !important;
}

.u-ml-unit2 {
  margin-left: 10px !important;
}

.u-mr-unit2 {
  margin-right: 10px !important;
}

.u-p-unit2 {
  padding: 10px !important;
}

.u-pt-unit2 {
  padding-top: 10px !important;
}

.u-pb-unit2 {
  padding-bottom: 10px !important;
}

.u-pl-unit2 {
  padding-left: 10px !important;
}

.u-pr-unit2 {
  padding-right: 10px !important;
}

.u-mbl-unit2 {
  margin-block: 10px !important;
}

.u-pbl-unit2 {
  padding-block: 10px !important;
}

.u-mil-unit2 {
  margin-inline: 10px !important;
}

.u-pil-unit2 {
  padding-inline: 10px !important;
}

.u-m-unit3 {
  margin: 15px !important;
}

.u-mt-unit3 {
  margin-top: 15px !important;
}

.u-mb-unit3 {
  margin-bottom: 15px !important;
}

.u-ml-unit3 {
  margin-left: 15px !important;
}

.u-mr-unit3 {
  margin-right: 15px !important;
}

.u-p-unit3 {
  padding: 15px !important;
}

.u-pt-unit3 {
  padding-top: 15px !important;
}

.u-pb-unit3 {
  padding-bottom: 15px !important;
}

.u-pl-unit3 {
  padding-left: 15px !important;
}

.u-pr-unit3 {
  padding-right: 15px !important;
}

.u-mbl-unit3 {
  margin-block: 15px !important;
}

.u-pbl-unit3 {
  padding-block: 15px !important;
}

.u-mil-unit3 {
  margin-inline: 15px !important;
}

.u-pil-unit3 {
  padding-inline: 15px !important;
}

.u-m-unit4 {
  margin: 20px !important;
}

.u-mt-unit4 {
  margin-top: 20px !important;
}

.u-mb-unit4 {
  margin-bottom: 20px !important;
}

.u-ml-unit4 {
  margin-left: 20px !important;
}

.u-mr-unit4 {
  margin-right: 20px !important;
}

.u-p-unit4 {
  padding: 20px !important;
}

.u-pt-unit4 {
  padding-top: 20px !important;
}

.u-pb-unit4 {
  padding-bottom: 20px !important;
}

.u-pl-unit4 {
  padding-left: 20px !important;
}

.u-pr-unit4 {
  padding-right: 20px !important;
}

.u-mbl-unit4 {
  margin-block: 20px !important;
}

.u-pbl-unit4 {
  padding-block: 20px !important;
}

.u-mil-unit4 {
  margin-inline: 20px !important;
}

.u-pil-unit4 {
  padding-inline: 20px !important;
}

.u-m-unit5 {
  margin: 25px !important;
}

.u-mt-unit5 {
  margin-top: 25px !important;
}

.u-mb-unit5 {
  margin-bottom: 25px !important;
}

.u-ml-unit5 {
  margin-left: 25px !important;
}

.u-mr-unit5 {
  margin-right: 25px !important;
}

.u-p-unit5 {
  padding: 25px !important;
}

.u-pt-unit5 {
  padding-top: 25px !important;
}

.u-pb-unit5 {
  padding-bottom: 25px !important;
}

.u-pl-unit5 {
  padding-left: 25px !important;
}

.u-pr-unit5 {
  padding-right: 25px !important;
}

.u-mbl-unit5 {
  margin-block: 25px !important;
}

.u-pbl-unit5 {
  padding-block: 25px !important;
}

.u-mil-unit5 {
  margin-inline: 25px !important;
}

.u-pil-unit5 {
  padding-inline: 25px !important;
}

.u-m-unit6 {
  margin: 30px !important;
}

.u-mt-unit6 {
  margin-top: 30px !important;
}

.u-mb-unit6 {
  margin-bottom: 30px !important;
}

.u-ml-unit6 {
  margin-left: 30px !important;
}

.u-mr-unit6 {
  margin-right: 30px !important;
}

.u-p-unit6 {
  padding: 30px !important;
}

.u-pt-unit6 {
  padding-top: 30px !important;
}

.u-pb-unit6 {
  padding-bottom: 30px !important;
}

.u-pl-unit6 {
  padding-left: 30px !important;
}

.u-pr-unit6 {
  padding-right: 30px !important;
}

.u-mbl-unit6 {
  margin-block: 30px !important;
}

.u-pbl-unit6 {
  padding-block: 30px !important;
}

.u-mil-unit6 {
  margin-inline: 30px !important;
}

.u-pil-unit6 {
  padding-inline: 30px !important;
}

.u-m-unit7 {
  margin: 35px !important;
}

.u-mt-unit7 {
  margin-top: 35px !important;
}

.u-mb-unit7 {
  margin-bottom: 35px !important;
}

.u-ml-unit7 {
  margin-left: 35px !important;
}

.u-mr-unit7 {
  margin-right: 35px !important;
}

.u-p-unit7 {
  padding: 35px !important;
}

.u-pt-unit7 {
  padding-top: 35px !important;
}

.u-pb-unit7 {
  padding-bottom: 35px !important;
}

.u-pl-unit7 {
  padding-left: 35px !important;
}

.u-pr-unit7 {
  padding-right: 35px !important;
}

.u-mbl-unit7 {
  margin-block: 35px !important;
}

.u-pbl-unit7 {
  padding-block: 35px !important;
}

.u-mil-unit7 {
  margin-inline: 35px !important;
}

.u-pil-unit7 {
  padding-inline: 35px !important;
}

.u-m-unit8 {
  margin: 40px !important;
}

.u-mt-unit8 {
  margin-top: 40px !important;
}

.u-mb-unit8 {
  margin-bottom: 40px !important;
}

.u-ml-unit8 {
  margin-left: 40px !important;
}

.u-mr-unit8 {
  margin-right: 40px !important;
}

.u-p-unit8 {
  padding: 40px !important;
}

.u-pt-unit8 {
  padding-top: 40px !important;
}

.u-pb-unit8 {
  padding-bottom: 40px !important;
}

.u-pl-unit8 {
  padding-left: 40px !important;
}

.u-pr-unit8 {
  padding-right: 40px !important;
}

.u-mbl-unit8 {
  margin-block: 40px !important;
}

.u-pbl-unit8 {
  padding-block: 40px !important;
}

.u-mil-unit8 {
  margin-inline: 40px !important;
}

.u-pil-unit8 {
  padding-inline: 40px !important;
}

.u-m-unit9 {
  margin: 45px !important;
}

.u-mt-unit9 {
  margin-top: 45px !important;
}

.u-mb-unit9 {
  margin-bottom: 45px !important;
}

.u-ml-unit9 {
  margin-left: 45px !important;
}

.u-mr-unit9 {
  margin-right: 45px !important;
}

.u-p-unit9 {
  padding: 45px !important;
}

.u-pt-unit9 {
  padding-top: 45px !important;
}

.u-pb-unit9 {
  padding-bottom: 45px !important;
}

.u-pl-unit9 {
  padding-left: 45px !important;
}

.u-pr-unit9 {
  padding-right: 45px !important;
}

.u-mbl-unit9 {
  margin-block: 45px !important;
}

.u-pbl-unit9 {
  padding-block: 45px !important;
}

.u-mil-unit9 {
  margin-inline: 45px !important;
}

.u-pil-unit9 {
  padding-inline: 45px !important;
}

.u-m-unit10 {
  margin: 50px !important;
}

.u-mt-unit10 {
  margin-top: 50px !important;
}

.u-mb-unit10 {
  margin-bottom: 50px !important;
}

.u-ml-unit10 {
  margin-left: 50px !important;
}

.u-mr-unit10 {
  margin-right: 50px !important;
}

.u-p-unit10 {
  padding: 50px !important;
}

.u-pt-unit10 {
  padding-top: 50px !important;
}

.u-pb-unit10 {
  padding-bottom: 50px !important;
}

.u-pl-unit10 {
  padding-left: 50px !important;
}

.u-pr-unit10 {
  padding-right: 50px !important;
}

.u-mbl-unit10 {
  margin-block: 50px !important;
}

.u-pbl-unit10 {
  padding-block: 50px !important;
}

.u-mil-unit10 {
  margin-inline: 50px !important;
}

.u-pil-unit10 {
  padding-inline: 50px !important;
}

.u-m-unit11 {
  margin: 55px !important;
}

.u-mt-unit11 {
  margin-top: 55px !important;
}

.u-mb-unit11 {
  margin-bottom: 55px !important;
}

.u-ml-unit11 {
  margin-left: 55px !important;
}

.u-mr-unit11 {
  margin-right: 55px !important;
}

.u-p-unit11 {
  padding: 55px !important;
}

.u-pt-unit11 {
  padding-top: 55px !important;
}

.u-pb-unit11 {
  padding-bottom: 55px !important;
}

.u-pl-unit11 {
  padding-left: 55px !important;
}

.u-pr-unit11 {
  padding-right: 55px !important;
}

.u-mbl-unit11 {
  margin-block: 55px !important;
}

.u-pbl-unit11 {
  padding-block: 55px !important;
}

.u-mil-unit11 {
  margin-inline: 55px !important;
}

.u-pil-unit11 {
  padding-inline: 55px !important;
}

.u-m-unit12 {
  margin: 60px !important;
}

.u-mt-unit12 {
  margin-top: 60px !important;
}

.u-mb-unit12 {
  margin-bottom: 60px !important;
}

.u-ml-unit12 {
  margin-left: 60px !important;
}

.u-mr-unit12 {
  margin-right: 60px !important;
}

.u-p-unit12 {
  padding: 60px !important;
}

.u-pt-unit12 {
  padding-top: 60px !important;
}

.u-pb-unit12 {
  padding-bottom: 60px !important;
}

.u-pl-unit12 {
  padding-left: 60px !important;
}

.u-pr-unit12 {
  padding-right: 60px !important;
}

.u-mbl-unit12 {
  margin-block: 60px !important;
}

.u-pbl-unit12 {
  padding-block: 60px !important;
}

.u-mil-unit12 {
  margin-inline: 60px !important;
}

.u-pil-unit12 {
  padding-inline: 60px !important;
}

.u-m-unit13 {
  margin: 65px !important;
}

.u-mt-unit13 {
  margin-top: 65px !important;
}

.u-mb-unit13 {
  margin-bottom: 65px !important;
}

.u-ml-unit13 {
  margin-left: 65px !important;
}

.u-mr-unit13 {
  margin-right: 65px !important;
}

.u-p-unit13 {
  padding: 65px !important;
}

.u-pt-unit13 {
  padding-top: 65px !important;
}

.u-pb-unit13 {
  padding-bottom: 65px !important;
}

.u-pl-unit13 {
  padding-left: 65px !important;
}

.u-pr-unit13 {
  padding-right: 65px !important;
}

.u-mbl-unit13 {
  margin-block: 65px !important;
}

.u-pbl-unit13 {
  padding-block: 65px !important;
}

.u-mil-unit13 {
  margin-inline: 65px !important;
}

.u-pil-unit13 {
  padding-inline: 65px !important;
}

.u-m-unit14 {
  margin: 70px !important;
}

.u-mt-unit14 {
  margin-top: 70px !important;
}

.u-mb-unit14 {
  margin-bottom: 70px !important;
}

.u-ml-unit14 {
  margin-left: 70px !important;
}

.u-mr-unit14 {
  margin-right: 70px !important;
}

.u-p-unit14 {
  padding: 70px !important;
}

.u-pt-unit14 {
  padding-top: 70px !important;
}

.u-pb-unit14 {
  padding-bottom: 70px !important;
}

.u-pl-unit14 {
  padding-left: 70px !important;
}

.u-pr-unit14 {
  padding-right: 70px !important;
}

.u-mbl-unit14 {
  margin-block: 70px !important;
}

.u-pbl-unit14 {
  padding-block: 70px !important;
}

.u-mil-unit14 {
  margin-inline: 70px !important;
}

.u-pil-unit14 {
  padding-inline: 70px !important;
}

.u-m-unit15 {
  margin: 75px !important;
}

.u-mt-unit15 {
  margin-top: 75px !important;
}

.u-mb-unit15 {
  margin-bottom: 75px !important;
}

.u-ml-unit15 {
  margin-left: 75px !important;
}

.u-mr-unit15 {
  margin-right: 75px !important;
}

.u-p-unit15 {
  padding: 75px !important;
}

.u-pt-unit15 {
  padding-top: 75px !important;
}

.u-pb-unit15 {
  padding-bottom: 75px !important;
}

.u-pl-unit15 {
  padding-left: 75px !important;
}

.u-pr-unit15 {
  padding-right: 75px !important;
}

.u-mbl-unit15 {
  margin-block: 75px !important;
}

.u-pbl-unit15 {
  padding-block: 75px !important;
}

.u-mil-unit15 {
  margin-inline: 75px !important;
}

.u-pil-unit15 {
  padding-inline: 75px !important;
}

.u-m-unit16 {
  margin: 80px !important;
}

.u-mt-unit16 {
  margin-top: 80px !important;
}

.u-mb-unit16 {
  margin-bottom: 80px !important;
}

.u-ml-unit16 {
  margin-left: 80px !important;
}

.u-mr-unit16 {
  margin-right: 80px !important;
}

.u-p-unit16 {
  padding: 80px !important;
}

.u-pt-unit16 {
  padding-top: 80px !important;
}

.u-pb-unit16 {
  padding-bottom: 80px !important;
}

.u-pl-unit16 {
  padding-left: 80px !important;
}

.u-pr-unit16 {
  padding-right: 80px !important;
}

.u-mbl-unit16 {
  margin-block: 80px !important;
}

.u-pbl-unit16 {
  padding-block: 80px !important;
}

.u-mil-unit16 {
  margin-inline: 80px !important;
}

.u-pil-unit16 {
  padding-inline: 80px !important;
}

.u-m-unit17 {
  margin: 85px !important;
}

.u-mt-unit17 {
  margin-top: 85px !important;
}

.u-mb-unit17 {
  margin-bottom: 85px !important;
}

.u-ml-unit17 {
  margin-left: 85px !important;
}

.u-mr-unit17 {
  margin-right: 85px !important;
}

.u-p-unit17 {
  padding: 85px !important;
}

.u-pt-unit17 {
  padding-top: 85px !important;
}

.u-pb-unit17 {
  padding-bottom: 85px !important;
}

.u-pl-unit17 {
  padding-left: 85px !important;
}

.u-pr-unit17 {
  padding-right: 85px !important;
}

.u-mbl-unit17 {
  margin-block: 85px !important;
}

.u-pbl-unit17 {
  padding-block: 85px !important;
}

.u-mil-unit17 {
  margin-inline: 85px !important;
}

.u-pil-unit17 {
  padding-inline: 85px !important;
}

.u-m-unit18 {
  margin: 90px !important;
}

.u-mt-unit18 {
  margin-top: 90px !important;
}

.u-mb-unit18 {
  margin-bottom: 90px !important;
}

.u-ml-unit18 {
  margin-left: 90px !important;
}

.u-mr-unit18 {
  margin-right: 90px !important;
}

.u-p-unit18 {
  padding: 90px !important;
}

.u-pt-unit18 {
  padding-top: 90px !important;
}

.u-pb-unit18 {
  padding-bottom: 90px !important;
}

.u-pl-unit18 {
  padding-left: 90px !important;
}

.u-pr-unit18 {
  padding-right: 90px !important;
}

.u-mbl-unit18 {
  margin-block: 90px !important;
}

.u-pbl-unit18 {
  padding-block: 90px !important;
}

.u-mil-unit18 {
  margin-inline: 90px !important;
}

.u-pil-unit18 {
  padding-inline: 90px !important;
}

.u-m-unit19 {
  margin: 95px !important;
}

.u-mt-unit19 {
  margin-top: 95px !important;
}

.u-mb-unit19 {
  margin-bottom: 95px !important;
}

.u-ml-unit19 {
  margin-left: 95px !important;
}

.u-mr-unit19 {
  margin-right: 95px !important;
}

.u-p-unit19 {
  padding: 95px !important;
}

.u-pt-unit19 {
  padding-top: 95px !important;
}

.u-pb-unit19 {
  padding-bottom: 95px !important;
}

.u-pl-unit19 {
  padding-left: 95px !important;
}

.u-pr-unit19 {
  padding-right: 95px !important;
}

.u-mbl-unit19 {
  margin-block: 95px !important;
}

.u-pbl-unit19 {
  padding-block: 95px !important;
}

.u-mil-unit19 {
  margin-inline: 95px !important;
}

.u-pil-unit19 {
  padding-inline: 95px !important;
}

.u-m-unit20 {
  margin: 100px !important;
}

.u-mt-unit20 {
  margin-top: 100px !important;
}

.u-mb-unit20 {
  margin-bottom: 100px !important;
}

.u-ml-unit20 {
  margin-left: 100px !important;
}

.u-mr-unit20 {
  margin-right: 100px !important;
}

.u-p-unit20 {
  padding: 100px !important;
}

.u-pt-unit20 {
  padding-top: 100px !important;
}

.u-pb-unit20 {
  padding-bottom: 100px !important;
}

.u-pl-unit20 {
  padding-left: 100px !important;
}

.u-pr-unit20 {
  padding-right: 100px !important;
}

.u-mbl-unit20 {
  margin-block: 100px !important;
}

.u-pbl-unit20 {
  padding-block: 100px !important;
}

.u-mil-unit20 {
  margin-inline: 100px !important;
}

.u-pil-unit20 {
  padding-inline: 100px !important;
}

.u-text-primary {
  font-family: var(--text-primary) !important;
}

.u-text-secondary {
  font-family: var(--text-secondary) !important;
}

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

.u-text-size-base {
  font-size: var(--text-size-base) !important;
}

.u-text-size-small {
  font-size: var(--text-size-small) !important;
}

.u-text-size-medium {
  font-size: var(--text-size-medium) !important;
}

.u-text-size-large {
  font-size: var(--text-size-large) !important;
}

.u-text-left {
  text-align: left !important;
}

.u-text-right {
  text-align: right !important;
}

.u-fs-xs {
  font-size: 12px !important;
}

.u-fs-sm {
  font-size: 14px !important;
}

.u-fs-md {
  font-size: 16px !important;
}

.u-fs-lg {
  font-size: 20px !important;
}

.u-fs-xl {
  font-size: 24px !important;
}

.u-title {
  font-weight: var(--text-weight-large);
  margin-bottom: 0.5em;
}

.u-bold {
  font-weight: bold !important;
}

.u-normal {
  font-weight: normal !important;
}

.u-italic {
  font-style: italic !important;
}

.u-uppercase {
  text-transform: uppercase !important;
}

.u-truncate {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.u-color-primary {
  color: var(--primary-color);
}

.u-color-black {
  color: var(--text-color2);
}

.u-color-white {
  color: var(--text-color);
}

.u-color-error {
  color: var(--text-color-error);
}

.u-color-success {
  color: var(--text-color-success);
}

.u-bg-color-primary {
  --text-color: var(--light-color);
  background-color: var(--primary-color);
}

.u-bg-color-black {
  --text-color: var(--white-color);
  background-color: var(--black-color);
}

.u-bg-color-white {
  --text-color: var(--black-color);
  background-color: var(--white-color);
}

.u-bg-wall-primary {
  --text-color: var(--white-color);
  background-color: var(--black-color);
}

.u-bg-wall-black {
  background-image: url("/site_dns/assets/img/common/bg_wall_black.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media (max-width: 768px) {
  .u-bg-wall-black {
    background-image: url("/site_dns/assets/img/common/sp/bg_wall_black.jpg");
  }
}

.u-border {
  border: 1px solid var(--border-color);
}
.u-border--white {
  border-color: var(--white-color);
}
.u-border--black {
  border-color: var(--black-color);
}

.u-border-dashed {
  border: 1px dashed var(--border-color);
}

.u-border-gray {
  border: 1px solid rgba(0, 0, 0, 0.1);
}

.u-w-100 {
  width: 100% !important;
}

.u-h-100 {
  height: 100% !important;
}

.u-max-w-100 {
  max-width: 100% !important;
}

.u-relative {
  position: relative !important;
}

.u-absolute {
  position: absolute !important;
}

.u-fixed {
  position: fixed !important;
}

.u-center {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: center !important;
      -ms-flex-pack: center !important;
          justify-content: center !important;
  -webkit-box-align: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
}

/* BEM構造を壊さない範囲で一時的な補助として使用 */
.u-shadow {
  -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
          box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
}

.u-transition {
  -webkit-transition: all 0.3s ease !important;
  transition: all 0.3s ease !important;
}

.u-opacity-0 {
  opacity: 0 !important;
}

.u-opacity-50 {
  opacity: 0.5 !important;
}

.u-opacity-100 {
  opacity: 1 !important;
}

.u-z-top {
  z-index: 1000 !important;
}

.u-z-back {
  z-index: -1 !important;
}

.u-cursor-pointer {
  cursor: pointer !important;
}

.u-pointer-none {
  pointer-events: none !important;
}

.ag-loading {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: -ms-grid;
  display: grid;
  background-color: #7ECEF4;
  overflow: hidden;
  -webkit-animation: fadeOutLoading 0.5s cubic-bezier(0.22, 1, 0.36, 1) 2s forwards;
          animation: fadeOutLoading 0.5s cubic-bezier(0.22, 1, 0.36, 1) 2s forwards;
}
.ag-loading__bg {
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-area: 1/1/2/2;
  position: relative;
  width: 100%;
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media (max-width: 768px) {
  .ag-loading__bg {
    height: 50vh;
  }
}
.ag-loading__bg svg {
  width: 100%;
  height: 100%;
}
.ag-loading__bg polygon,
.ag-loading__bg line {
  opacity: 0;
  -webkit-animation: slideInDiagonal 0.5s cubic-bezier(0.22, 1, 0.36, 1) forwards;
          animation: slideInDiagonal 0.5s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}
.ag-loading__bg svg > g:nth-child(2) polygon {
  -webkit-animation-delay: 0.02s;
          animation-delay: 0.02s;
}
.ag-loading__bg svg > polygon:nth-child(3) {
  -webkit-animation-delay: 0.04s;
          animation-delay: 0.04s;
}
.ag-loading__bg svg > line:nth-child(4) {
  -webkit-animation-delay: 0.06s;
          animation-delay: 0.06s;
}
.ag-loading__bg svg > line:nth-child(5) {
  -webkit-animation-delay: 0.08s;
          animation-delay: 0.08s;
}
.ag-loading__bg svg > g:nth-child(6) polygon {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s;
}
.ag-loading__bg svg > polygon:nth-child(7) {
  -webkit-animation-delay: 0.12s;
          animation-delay: 0.12s;
}
.ag-loading__bg svg > g:nth-child(8) polygon {
  -webkit-animation-delay: 0.14s;
          animation-delay: 0.14s;
}
.ag-loading__bg svg > g:nth-child(9) polygon {
  -webkit-animation-delay: 0.16s;
          animation-delay: 0.16s;
}
.ag-loading__bg svg > polygon:nth-child(10) {
  -webkit-animation-delay: 0.18s;
          animation-delay: 0.18s;
}
.ag-loading__bg svg > polygon:nth-child(11) {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}
.ag-loading__bg svg > line:nth-child(12) {
  -webkit-animation-delay: 0.22s;
          animation-delay: 0.22s;
}
.ag-loading__bg svg > polygon:nth-child(13) {
  -webkit-animation-delay: 0.24s;
          animation-delay: 0.24s;
}
.ag-loading__bg svg > polygon:nth-child(14) {
  -webkit-animation-delay: 0.26s;
          animation-delay: 0.26s;
}
.ag-loading__bg svg > line:nth-child(15) {
  -webkit-animation-delay: 0.28s;
          animation-delay: 0.28s;
}
.ag-loading__bg svg > g:nth-child(16) polygon {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
}
.ag-loading__bg svg > g:nth-child(17) polygon {
  -webkit-animation-delay: 0.32s;
          animation-delay: 0.32s;
}
.ag-loading__bg svg > polygon:nth-child(18) {
  -webkit-animation-delay: 0.34s;
          animation-delay: 0.34s;
}
.ag-loading__bg svg > g:nth-child(19) polygon {
  -webkit-animation-delay: 0.36s;
          animation-delay: 0.36s;
}
.ag-loading__bg svg > polygon:nth-child(20) {
  -webkit-animation-delay: 0.38s;
          animation-delay: 0.38s;
}
.ag-loading__bg svg > polygon:nth-child(21) {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}
.ag-loading__bg svg > line:nth-child(22) {
  -webkit-animation-delay: 0.42s;
          animation-delay: 0.42s;
}
.ag-loading__bg svg > polygon:nth-child(23) {
  -webkit-animation-delay: 0.44s;
          animation-delay: 0.44s;
}
.ag-loading__bg svg > line:nth-child(24) {
  -webkit-animation-delay: 0.46s;
          animation-delay: 0.46s;
}
.ag-loading__bg svg > g:nth-child(25) polygon {
  -webkit-animation-delay: 0.48s;
          animation-delay: 0.48s;
}
.ag-loading__bg svg > g:nth-child(26) polygon {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}
.ag-loading__bg svg > polygon:nth-child(27) {
  -webkit-animation-delay: 0.52s;
          animation-delay: 0.52s;
}
.ag-loading__bg svg > polygon:nth-child(28) {
  -webkit-animation-delay: 0.54s;
          animation-delay: 0.54s;
}
.ag-loading__bg svg > line:nth-child(29) {
  -webkit-animation-delay: 0.56s;
          animation-delay: 0.56s;
}
.ag-loading__bg svg > polygon:nth-child(30) {
  -webkit-animation-delay: 0.58s;
          animation-delay: 0.58s;
}
.ag-loading__bg svg > g:nth-child(31) polygon {
  -webkit-animation-delay: 0.6s;
          animation-delay: 0.6s;
}
.ag-loading__bg svg > polygon:nth-child(32) {
  -webkit-animation-delay: 0.62s;
          animation-delay: 0.62s;
}
.ag-loading__bg svg > polygon:nth-child(33) {
  -webkit-animation-delay: 0.64s;
          animation-delay: 0.64s;
}
.ag-loading__bg svg > polygon:nth-child(34) {
  -webkit-animation-delay: 0.66s;
          animation-delay: 0.66s;
}
.ag-loading__bg svg > polygon:nth-child(35) {
  -webkit-animation-delay: 0.68s;
          animation-delay: 0.68s;
}
.ag-loading__bg svg > line:nth-child(36) {
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}
.ag-loading__bg svg > polygon:nth-child(37) {
  -webkit-animation-delay: 0.72s;
          animation-delay: 0.72s;
}
.ag-loading__bg svg > polygon:nth-child(38) {
  -webkit-animation-delay: 0.74s;
          animation-delay: 0.74s;
}
.ag-loading__bg svg > line:nth-child(39) {
  -webkit-animation-delay: 0.76s;
          animation-delay: 0.76s;
}
.ag-loading__bg svg > g:nth-child(40) polygon {
  -webkit-animation-delay: 0.78s;
          animation-delay: 0.78s;
}
.ag-loading__bg svg > g:nth-child(41) polygon {
  -webkit-animation-delay: 0.8s;
          animation-delay: 0.8s;
}
.ag-loading__bg svg > polygon:nth-child(42) {
  -webkit-animation-delay: 0.82s;
          animation-delay: 0.82s;
}
.ag-loading__bg svg > polygon:nth-child(43) {
  -webkit-animation-delay: 0.84s;
          animation-delay: 0.84s;
}
.ag-loading__bg svg > polygon:nth-child(44) {
  -webkit-animation-delay: 0.86s;
          animation-delay: 0.86s;
}
.ag-loading__bg svg > line:nth-child(45) {
  -webkit-animation-delay: 0.88s;
          animation-delay: 0.88s;
}
.ag-loading__bg svg > polygon:nth-child(46) {
  -webkit-animation-delay: 0.9s;
          animation-delay: 0.9s;
}
.ag-loading__bg svg > line:nth-child(47) {
  -webkit-animation-delay: 0.92s;
          animation-delay: 0.92s;
}
.ag-loading__bg svg > g:nth-child(48) polygon {
  -webkit-animation-delay: 0.94s;
          animation-delay: 0.94s;
}
.ag-loading__bg svg > g:nth-child(49) polygon {
  -webkit-animation-delay: 0.96s;
          animation-delay: 0.96s;
}
.ag-loading__content {
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-area: 1/1/2/2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(1rem, 0.0074626866rem + 1.2437810945vw, 1.5rem);
}
.ag-loading__text {
  text-align: center;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: clamp(2.4rem, 0.0179104478rem + 2.9850746269vw, 3.6rem);
  color: #fff;
  text-shadow: 0 0 10px rgba(12, 135, 151, 0.8);
  -webkit-text-stroke: 4px #0c8797;
  paint-order: stroke;
  -webkit-paint-order: stroke;
  opacity: 0;
  -webkit-animation: fadeInUp 0.5s cubic-bezier(0.22, 1, 0.36, 1) 0.4s forwards;
          animation: fadeInUp 0.5s cubic-bezier(0.22, 1, 0.36, 1) 0.4s forwards;
}
.ag-loading__members {
  margin-top: auto;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-area: 1/1/2/2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(1rem, 0.0074626866rem + 1.2437810945vw, 1.5rem);
  position: relative;
  z-index: 10;
}
@media (max-width: 768px) {
  .ag-loading__members {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: -6.6666666667vw;
  }
}
.ag-loading__member {
  opacity: 0;
  -webkit-animation: fadeInUp 0.5s cubic-bezier(0.22, 1, 0.36, 1) forwards;
          animation: fadeInUp 0.5s cubic-bezier(0.22, 1, 0.36, 1) forwards;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  translate: 0% 2px;
}
.ag-loading__member:nth-child(1) {
  -webkit-animation-delay: 0.05s;
          animation-delay: 0.05s;
}
.ag-loading__member:nth-child(2) {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s;
}
.ag-loading__member:nth-child(3) {
  -webkit-animation-delay: 0.15s;
          animation-delay: 0.15s;
}
.ag-loading__member:nth-child(4) {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}
.ag-loading__member:nth-child(5) {
  -webkit-animation-delay: 0.25s;
          animation-delay: 0.25s;
}
.ag-loading__member:nth-child(6) {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
}
.ag-loading__member:nth-child(7) {
  -webkit-animation-delay: 0.35s;
          animation-delay: 0.35s;
}
.ag-loading__member img {
  display: block;
  width: 100%;
  height: auto;
}
@media (max-width: 768px) {
  .ag-loading__member {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
    width: 20vw;
    height: 56vw;
    position: relative;
  }
  .ag-loading__member img {
    position: absolute;
    inset: 0 auto;
    left: 50%;
    translate: -50% 0%;
    margin: auto;
    height: 100%;
    width: auto;
    max-width: none;
  }
  .ag-loading__member::after {
    content: "";
    position: absolute;
    inset: auto auto 0;
    left: 50%;
    translate: -50% 1px;
    margin: auto;
    width: 200%;
    height: 33%;
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(126, 206, 244, 0)), color-stop(82%, #7ECEF4), to(#7ECEF4));
    background-image: linear-gradient(to bottom, rgba(126, 206, 244, 0) 0%, #7ECEF4 82%, #7ECEF4 100%);
  }
  .ag-loading__member:nth-child(n+5) {
    margin-top: -25%;
  }
}

@-webkit-keyframes slideInDiagonal {
  0% {
    opacity: 0;
    -webkit-transform: translate(200px, -200px);
            transform: translate(200px, -200px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

@keyframes slideInDiagonal {
  0% {
    opacity: 0;
    -webkit-transform: translate(200px, -200px);
            transform: translate(200px, -200px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(30px);
            transform: translateY(30px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(30px);
            transform: translateY(30px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(30px);
            transform: translateY(30px);
  }
}
@keyframes fadeOutDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(30px);
            transform: translateY(30px);
  }
}
@-webkit-keyframes fadeOutLoading {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}
@keyframes fadeOutLoading {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}
section {
  text-align: center;
  padding: 80px 0 60px;
  position: relative;
}
@media (max-width: 768px) {
  section {
    padding: 10.6666666667vw 0;
  }
}
section .bg {
  position: relative;
}
section .bg::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  -webkit-transform: skewY(-4deg);
          transform: skewY(-4deg);
  -webkit-transform-origin: top left;
          transform-origin: top left;
}
@media (max-width: 768px) {
  section .bg::before {
    -webkit-transform: skewY(-8deg);
            transform: skewY(-8deg);
  }
}
section .bg.blue {
  background: #d7edfb;
}
section .bg.blue::before {
  background: #d7edfb;
}
section .bg.white {
  background: #fff;
}
section .bg.white::before {
  background: #fff;
}

@media (min-width: 769px) {
  #top-info {
    padding: 0;
    margin: -80px 0 -60px;
  }
}
#top-info .inner {
  -webkit-transform: scale(0.75);
          transform: scale(0.75);
}
@media (max-width: 768px) {
  #top-info .inner {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

/* -----------------------------------------------------
  kv
----------------------------------------------------- */
.kv {
  text-align: center;
}
.kv img {
  width: 100%;
}
.kv img:hover {
  opacity: 1;
}
.kv .slick-dots {
  position: absolute;
  bottom: -40px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
  z-index: 1;
}
@media (max-width: 768px) {
  .kv .slick-dots {
    bottom: -12.8vw;
  }
}
.kv .slick-dots li {
  position: relative;
  display: inline-block;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
@media (max-width: 768px) {
  .kv .slick-dots li {
    margin: 0 2.1333333333vw;
  }
}
.kv .slick-dots li button {
  border: 0;
  background: #7fb0f0;
  display: block;
  height: 12px;
  width: 12px;
  line-height: 0px;
  font-size: 32px;
  border-radius: 50vh;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}
@media (max-width: 768px) {
  .kv .slick-dots li button {
    height: 4.2666666667vw;
    width: 4.2666666667vw;
    font-size: 8.5333333333vw;
    padding: 2.1333333333vw;
  }
}
.kv .slick-dots li.slick-active button {
  background: #0062e2;
}

/* -----------------------------------------------------
  series TABもこちら
----------------------------------------------------- */
.series .inner {
  max-width: 800px;
}
.series .sec_ttl {
  width: min(80%, 653px);
  margin: 0 auto;
}
.series .tab__button {
  width: min(33%, 160px);
}
.series .tab__panel {
  width: 90%;
  margin-inline: auto;
  padding: clamp(1.5rem, 0.5074626866rem + 1.2437810945vw, 2rem) 2.4rem clamp(2rem, 0.0149253731rem + 2.4875621891vw, 3rem);
}
.series .tab__panelImg {
  margin-bottom: clamp(1.4rem, -0.7835820896rem + 2.736318408vw, 2.5rem);
}
.series .tab__panelTitle {
  width: min(75%, 260px);
}
.series .tab__panelCopy {
  width: min(100%, 640px);
  margin-bottom: 1.5rem;
}
.series .tab__seriesLogo {
  width: min(80%, 400px);
}
.series #tab1-2 .tab__panelImg-item {
  width: min(100%, 320px);
}
.series #tab1-3 .tab__panelImg {
  gap: clamp(1rem, -0.9850746269rem + 2.4875621891vw, 2rem);
}
.series .btn-area {
  width: 90%;
  margin-inline: auto;
}
.series .btn-area .button {
  --btn-ds-size: clamp(0.2rem, -0.1970149254rem + 0.4975124378vw, 0.4rem);
}

@media (max-width: 768px) {
  .tab__list {
    width: 88%;
    margin: 0 auto;
  }
}
.tab__seriesLogo {
  width: min(100%, 650px);
  margin: 0 auto clamp(2rem, -1.3746268657rem + 4.2288557214vw, 3.7rem);
}
.tab__panelTitle {
  width: min(75%, 326px);
  margin: 0 auto clamp(1rem, -1.7791044776rem + 3.4825870647vw, 2.4rem);
}
.tab__panelCopy {
  width: min(85%, 740px);
  margin: 0 auto;
}
.tab__panelImg {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: clamp(4rem, 2.0149253731rem + 2.4875621891vw, 5rem);
}
.tab__panel .btn-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.4rem;
}
.tab__panel .btn-area .button {
  aspect-ratio: 350/80;
}
.tab__panel .btn-area .button img {
  width: 100%;
}
@media (max-width: 768px) {
  .tab__panel .btn-area {
    width: 90%;
    margin: 0 auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.tab__panel#tab1-2 .tab__panelCopy {
  width: min(100%, 820px);
}
.tab__panel#tab1-2 .tab__panelImg {
  margin-bottom: clamp(2rem, 1.0074626866rem + 1.2437810945vw, 2.5rem);
}

/* -----------------------------------------------------
  active-ingredient ５つの有効成分
----------------------------------------------------- */
.active-ingredient__title {
  width: min(100%, 785px);
  margin: 0 auto 37px;
}
@media (max-width: 768px) {
  .active-ingredient__title {
    margin-bottom: 4.2666666667vw;
  }
}
.active-ingredient__title img {
  width: 100%;
}
.active-ingredient__content h3 {
  width: min(48vw, 508px);
  margin: 0 auto;
  z-index: 1;
  position: relative;
}
@media (max-width: 768px) {
  .active-ingredient__content h3 {
    width: 64vw;
  }
}
.active-ingredient__content h3 img {
  width: 100%;
}
.active-ingredient__content-item {
  position: relative;
  z-index: 0;
  -webkit-transform: translateY(clamp(-4.2rem, -1.2149253731rem + -2.4875621891vw, -3.2rem));
          transform: translateY(clamp(-4.2rem, -1.2149253731rem + -2.4875621891vw, -3.2rem));
  padding: clamp(5rem, 1.6253731343rem + 4.2288557214vw, 6.7rem) clamp(2.7rem, -2.8582089552rem + 6.9651741294vw, 5.5rem) clamp(3.3rem, -3.4492537313rem + 8.4577114428vw, 6.7rem);
}
@media (max-width: 768px) {
  .active-ingredient__content-item {
    padding-top: 16vw;
    -webkit-transform: translateY(-9.0666666667vw);
            transform: translateY(-9.0666666667vw);
  }
}
.active-ingredient__content-item img {
  width: min(100%, 870px);
  margin: 0 auto;
}
.active-ingredient__content-item .button {
  margin: clamp(2rem, 0.0149253731rem + 2.4875621891vw, 3rem) auto 0;
}
.active-ingredient__deco {
  position: absolute;
  bottom: calc(100% + 1px);
}
.active-ingredient__deco img {
  width: 100%;
}
.active-ingredient__deco.deco--01 {
  width: min(29vw, 186px);
  z-index: -1;
}
@media (max-width: 768px) {
  .active-ingredient__deco.deco--01 {
    left: -5.3333333333vw;
  }
}
.active-ingredient__deco.deco--02 {
  width: min(23vw, 143px);
  right: 7%;
  z-index: -1;
}
@media (max-width: 768px) {
  .active-ingredient__deco.deco--02 {
    right: -4.2666666667vw;
  }
}

/* -----------------------------------------------------
  series
----------------------------------------------------- */
/* -----------------------------------------------------
  info
----------------------------------------------------- */
.info .info_ttl {
  font-size: 4rem;
  color: var(--color-primary);
  margin-bottom: 56px;
}
@media (max-width: 768px) {
  .info .info_ttl {
    font-size: 14.9333333333vw;
    margin-bottom: 14.9333333333vw;
  }
}
@media (max-width: 768px) {
  .info .text {
    text-align: left;
  }
}
.info .wrap {
  background: #f1f9fe;
  max-width: 780px;
  margin: 40px auto 0;
  padding: 40px;
}
@media (max-width: 768px) {
  .info .wrap {
    margin-top: 10.6666666667vw;
    padding: 14.9333333333vw 10.6666666667vw;
  }
}
.info .wrap .col3 {
  display: -webkit-box; /*Android4.3*/
  display: -ms-flexbox; /*IE10*/ /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-pack: justify; /*IE10*/
  -webkit-box-pack: justify; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
  justify-content: space-between;
}
@media (max-width: 768px) {
  .info .wrap .col3 {
    display: block;
  }
}
.info .wrap .col3 li {
  width: calc(50% - 16px);
}
@media (max-width: 768px) {
  .info .wrap .col3 li {
    width: 100%;
  }
}
@media (max-width: 768px) {
  .info .wrap .col3 li + li {
    margin-top: 14.9333333333vw;
  }
}
.info .wrap .col3 li .col_btn a {
  display: block;
  background: #116a9f;
  border-radius: 50vh;
  height: 80px;
  color: #fff;
  display: -webkit-box; /*Android4.3*/
  display: -ms-flexbox; /*IE10*/ /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-pack: center; /*IE10*/
  -webkit-box-pack: center; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
  justify-content: center;
  -ms-flex-align: center; /*IE10*/
  -webkit-box-align: center; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
  align-items: center;
  position: relative;
}
@media (max-width: 768px) {
  .info .wrap .col3 li .col_btn a {
    font-size: 8.5333333333vw;
    height: 42.6666666667vw;
  }
}
.info .wrap .col3 li .col_btn a::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 24px;
  width: 10px;
  height: 10px;
  border: 0px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  -webkit-transition: all 0.2s ease 0s;
  transition: all 0.2s ease 0s;
}
@media (max-width: 768px) {
  .info .wrap .col3 li .col_btn a::after {
    right: 10.6666666667vw;
    width: 6.4vw;
    height: 6.4vw;
    border-top: solid 1.0666666667vw #fff;
    border-right: solid 1.0666666667vw #fff;
  }
}
.info .wrap .col3 li .col_btn a:hover::after {
  right: 20px;
}
@media (max-width: 768px) {
  .info .wrap .col3 li .col_btn a:hover::after {
    right: 10.6666666667vw;
  }
}
.info .wrap .col3 .link {
  margin-top: 16px;
  padding: 0 16px;
  text-align: left;
}
@media (max-width: 768px) {
  .info .wrap .col3 .link {
    margin-top: 10.6666666667vw;
    padding: 0 0 0 6.4vw;
  }
}
.info .wrap .col3 .link li {
  width: 100%;
  font-size: 1.4rem;
  color: var(--color-primary);
  list-style: disc;
  margin-left: 1em;
}
@media (max-width: 768px) {
  .info .wrap .col3 .link li {
    font-size: 7.4666666667vw;
  }
}
.info .wrap .col3 .link li a {
  text-decoration: underline;
}
.info .wrap .col3 .link li + li {
  margin-top: 8px;
}
@media (max-width: 768px) {
  .info .wrap .col3 .link li + li {
    margin-top: 4.2666666667vw;
  }
}

/* -----------------------------------------------------
    エージーアレルカット
----------------------------------------------------- */
.product section {
  text-align: center;
  padding: 80px 0;
  position: relative;
}
@media (max-width: 768px) {
  .product section {
    padding: 16vw 0;
  }
}
.product .page_ttl {
  background: rgb(191, 190, 190);
  background: linear-gradient(45deg, rgb(191, 190, 190) 0%, rgb(238, 238, 238) 50%, rgb(210, 210, 210) 100%);
}
.product .page_ttl .inner {
  display: -webkit-box; /*Android4.3*/
  display: -ms-flexbox; /*IE10*/ /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-align: center; /*IE10*/
  -webkit-box-align: center; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
  align-items: center;
  -ms-flex-pack: center; /*IE10*/
  -webkit-box-pack: center; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
  justify-content: center;
  height: 240px;
  position: relative;
}
@media (max-width: 768px) {
  .product .page_ttl .inner {
    height: 26.6666666667vw;
  }
}
.product .page_ttl .inner::after {
  content: "";
  display: inline-block;
  position: absolute;
  right: -80px;
  bottom: 0;
  width: 330px;
  height: 230px;
  background: url(/site_ag/assets/img/product/nose/page_ttl_bg.png) no-repeat right bottom;
  background-size: contain;
}
@media (max-width: 768px) {
  .product .page_ttl .inner::after {
    right: -3.2vw;
    width: 34.4vw;
    height: 24vw;
  }
}
.product .page_ttl h2 {
  font-size: 4.8rem;
  line-height: 1.3;
  color: var(--color-primary);
  text-align: center;
}
@media (max-width: 768px) {
  .product .page_ttl h2 {
    font-size: 6.4vw;
  }
}
@media (max-width: 768px) {
  .product .kv {
    margin-top: -0.5333333333vw;
  }
}
.product {
  /* -----------------------------------------------------
      cv
    ----------------------------------------------------- */
}
.product .cv {
  background: #e0ebf9;
  padding: 16px 0;
}
@media (max-width: 768px) {
  .product .cv {
    padding: 5.3333333333vw 0;
  }
}
.product .cv .wrap {
  display: -webkit-box; /*Android4.3*/
  display: -ms-flexbox; /*IE10*/ /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-pack: justify; /*IE10*/
  -webkit-box-pack: justify; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
  justify-content: space-between;
  text-align: center;
}
@media (max-width: 768px) {
  .product .cv .wrap {
    display: block;
  }
}
.product .cv .wrap .ttl {
  font-size: 2rem;
  margin-bottom: 16px;
}
@media (max-width: 768px) {
  .product .cv .wrap .ttl {
    font-size: 4.2666666667vw;
    margin-bottom: 2.1333333333vw;
  }
}
.product .cv .wrap .store {
  width: 280px;
  border-right: 2px solid #fff;
  margin-right: 40px;
  padding-right: 40px;
}
@media (max-width: 768px) {
  .product .cv .wrap .store {
    width: 100%;
    border-right: none;
    border-bottom: 0.4vw solid #fff;
    margin: 0 0 5.3333333333vw;
    padding: 0 0 5.3333333333vw;
  }
}
.product .cv .wrap .store .btn a {
  display: block;
  max-width: 280px;
  background: var(--color-primary);
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 56px;
  color: #fff;
  border-radius: 50vh;
  position: relative;
}
@media (max-width: 768px) {
  .product .cv .wrap .store .btn a {
    max-width: 100%;
    font-size: 4vw;
    line-height: 12.8vw;
  }
}
.product .cv .wrap .store .btn a::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 24px;
  width: 10px;
  height: 10px;
  border: 0px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  -webkit-transition: all 0.2s ease 0s;
  transition: all 0.2s ease 0s;
}
@media (max-width: 768px) {
  .product .cv .wrap .store .btn a::after {
    right: 5.3333333333vw;
    width: 3.2vw;
    height: 3.2vw;
    border-top: solid 0.5333333333vw #fff;
    border-right: solid 0.5333333333vw #fff;
  }
}
.product .cv .wrap .store .btn a:hover::after {
  right: 20px;
}
@media (max-width: 768px) {
  .product .cv .wrap .store .btn a:hover::after {
    right: 5.3333333333vw;
  }
}
.product .cv .wrap .web {
  width: calc(100% - 320px);
}
@media (max-width: 768px) {
  .product .cv .wrap .web {
    width: 100%;
  }
}
.product .cv .wrap .web .bnr {
  display: -webkit-box; /*Android4.3*/
  display: -ms-flexbox; /*IE10*/ /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-pack: justify; /*IE10*/
  -webkit-box-pack: justify; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
  justify-content: space-between;
}
.product .cv .wrap .web .bnr div {
  width: calc(33.3333333333% - 10px);
  background: #fff;
  -webkit-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
}
@media (max-width: 768px) {
  .product .cv .wrap .web .bnr div {
    width: calc(33.3333333333% - 1.0666666667vw);
  }
}
.product .cv .wrap .web .bnr div a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 8px 0;
}
@media (max-width: 768px) {
  .product .cv .wrap .web .bnr div a {
    line-height: 12.8vw;
  }
}
.product .cv .wrap .web .bnr div img {
  width: 128px;
}
@media (max-width: 768px) {
  .product .cv .wrap .web .bnr div img {
    width: 23.2vw;
  }
}
.product .cv .wrap .web .bnr div img:hover {
  opacity: 1;
}
.product .cv .wrap .web .bnr div + div {
  margin-left: 16px;
}
@media (max-width: 768px) {
  .product .cv .wrap .web .bnr div + div {
    margin-top: 0;
  }
}
.product .cv .wrap .web .bnr div:hover {
  opacity: 0.7;
}
@media (max-width: 768px) {
  .product .cv .wrap .web .bnr div:hover {
    opacity: 1;
  }
}
.product {
  /* -----------------------------------------------------
      series_item
    ----------------------------------------------------- */
}
.product .series_item {
  padding-bottom: 0;
}
@media (max-width: 768px) {
  .product .series_item {
    padding-top: 10.6666666667vw;
    padding-bottom: 10.6666666667vw;
  }
}
.product .series_item .box .cate_ttl {
  font-size: 4rem;
  color: var(--color-primary);
  margin-bottom: 24px;
}
@media (max-width: 768px) {
  .product .series_item .box .cate_ttl {
    font-size: 3.7333333333vw;
    margin-bottom: 3.2vw;
  }
}
.product .series_item .box .efficacy {
  background: var(--color-primary);
  border-radius: 50vh;
  display: inline-block;
  margin-bottom: 32px;
  padding: 8px 80px;
  font-size: 2.4rem;
  color: #fff;
}
@media (max-width: 768px) {
  .product .series_item .box .efficacy {
    width: 85.3333333333vw;
    margin-bottom: 5.3333333333vw;
    padding: 2.1333333333vw 0;
    font-size: 4.6666666667vw;
  }
}
.product .series_item .box .item_logo {
  margin-bottom: 24px;
}
@media (max-width: 768px) {
  .product .series_item .box .item_logo {
    margin-bottom: 3.2vw;
  }
}
.product .series_item .box .item_logo img {
  width: 585px;
}
@media (max-width: 768px) {
  .product .series_item .box .item_logo img {
    width: 85.4666666667vw;
  }
}
.product .series_item .box .note {
  background: var(--color-red);
  font-size: 1.4rem;
  color: #fff;
  display: inline-block;
  padding: 8px 40px;
}
@media (max-width: 768px) {
  .product .series_item .box .note {
    font-size: 3.2vw;
    padding: 1.0666666667vw 3.2vw;
  }
}
.product .series_item .box .item_wrap {
  display: block;
  margin: 40px 0 24px;
}
@media (max-width: 768px) {
  .product .series_item .box .item_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 7.4666666667vw 0 0;
  }
}
.product .series_item .box .item_wrap .item {
  width: 100%;
  margin-bottom: 72px;
  display: -webkit-box; /*Android4.3*/
  display: -ms-flexbox; /*IE10*/ /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-pack: justify; /*IE10*/
  -webkit-box-pack: justify; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
  justify-content: space-between;
}
@media (max-width: 768px) {
  .product .series_item .box .item_wrap .item {
    width: 100%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-bottom: 0;
  }
}
.product .series_item .box .item_wrap .item li + li {
  margin-left: 16px;
}
@media (max-width: 768px) {
  .product .series_item .box .item_wrap .item li + li {
    margin-left: 0;
  }
}
.product .series_item .box .item_wrap .item li img {
  width: 100%;
}
.product .series_item .box .item_wrap .name {
  font-size: 1.4rem;
  line-height: 1;
  margin-top: 16px;
}
@media (max-width: 768px) {
  .product .series_item .box .item_wrap .name {
    font-size: 2.6666666667vw;
    margin-top: 1.6vw;
  }
}
.product .series_item .box .item_wrap .class {
  margin-top: 4px;
}
@media (max-width: 768px) {
  .product .series_item .box .item_wrap .class {
    margin-top: 0;
  }
}
.product .series_item .box .item_wrap .class img {
  width: 88px !important;
}
@media (max-width: 768px) {
  .product .series_item .box .item_wrap .class img {
    width: 16vw !important;
  }
}
.product .series_item .box .recommend {
  width: 46.02%;
  margin: auto;
  padding: 56px 24px 24px;
  font-size: 1.4rem;
  background: #fff;
  position: relative;
  border-radius: clamp(1rem, -0.9850746269rem + 2.4875621891vw, 2rem);
  --frame-ds-size: clamp(0.3rem, -0.2955223881rem + 0.7462686567vw, 0.6rem);
  --frame-bg: #c3e7fb;
}
@media (max-width: 768px) {
  .product .series_item .box .recommend {
    width: 100%;
    margin: 14.9333333333vw auto 0;
    padding: 10.6666666667vw 5.3333333333vw 5.3333333333vw;
  }
}
.product .series_item .box .recommend .recommend_ttl {
  position: absolute;
  top: -25px;
  right: 0;
  left: 0;
  width: clamp(16.6rem, 6.8731343284rem + 12.1890547264vw, 21.5rem);
  margin: 0 auto;
}
@media (max-width: 768px) {
  .product .series_item .box .recommend .recommend_ttl {
    width: 44.2666666667vw;
    top: -5.0666666667vw;
  }
}
.product .series_item .box .recommend .recommend_ttl img {
  width: 265px;
}
@media (max-width: 768px) {
  .product .series_item .box .recommend .recommend_ttl img {
    width: 56vw;
  }
}
.product .series_item .box .recommend li {
  padding-left: 32px;
  text-align: left;
  font-weight: 300;
  position: relative;
}
@media (max-width: 768px) {
  .product .series_item .box .recommend li {
    font-size: 3.7333333333vw;
    padding-left: 5.3333333333vw;
  }
}
.product .series_item .box .recommend li::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  background: url(/site_ag/assets/img/product/sec_series_icon_check.png) left top no-repeat;
  background-size: contain;
}
@media (max-width: 768px) {
  .product .series_item .box .recommend li::before {
    top: 1.0666666667vw;
    width: 3.4666666667vw;
    height: 3.4666666667vw;
  }
}
.product .series_item .box .recommend li + li {
  margin-top: 16px;
}
@media (max-width: 768px) {
  .product .series_item .box .recommend li + li {
    margin-top: 3.2vw;
  }
}
.product .series_item .box .catch_ttl {
  width: min(70%, 667px);
  margin: auto;
  font-size: 3.5rem;
  color: var(--color-primary);
  font-style: italic;
  -webkit-transform: translateY(50%);
          transform: translateY(50%);
}
@media (max-width: 768px) {
  .product .series_item .box .catch_ttl {
    font-size: 5.3333333333vw;
  }
}
.product .series_item .text {
  width: min(100%, 816px);
  margin: auto;
  padding: clamp(3.2rem, 0.023880597rem + 3.9800995025vw, 4.8rem) clamp(1.6rem, 0.0119402985rem + 1.9900497512vw, 2.4rem) clamp(2.4rem, 0.8119402985rem + 1.9900497512vw, 3.2rem);
  border: solid 2px var(--frame-color);
  border-radius: clamp(1rem, -0.9850746269rem + 2.4875621891vw, 2rem);
  font-size: 2rem;
  font-weight: 300;
  line-height: 2;
}
@media (max-width: 768px) {
  .product .series_item .text {
    font-size: 3.7333333333vw;
    padding-top: 16vw;
  }
}
.product .series_item .text .text__highlight {
  font-size: 2.8rem;
  color: var(--color-secondary);
  font-weight: 600;
}
@media (max-width: 768px) {
  .product .series_item .text .text__highlight {
    font-size: 4.2666666667vw;
  }
}
.product .series_item .cap {
  text-align: left;
  font-size: var(--text-size-base);
}
@media (max-width: 768px) {
  .product .series_item .cap {
    font-size: var(--text-size-small);
  }
}
.product .series__column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 768px) {
  .product .series__column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.product .series__column-img {
  text-align: left;
}
.product .series__column-img p {
  margin-top: clamp(0.8rem, 0.4029850746rem + 0.4975124378vw, 1rem);
}
.product .series__column .recommend.deco-frame {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: 0;
}
.product {
  /* -----------------------------------------------------
      Decoration
    ----------------------------------------------------- */
}
.product .nose__deco.deco--01 {
  width: clamp(10.6rem, 7.8208955224rem + 3.4825870647vw, 12rem);
  aspect-ratio: 212/483;
  margin-right: clamp(-13rem, -5.8358208955rem + -5.9701492537vw, -10.6rem);
  padding-bottom: clamp(3rem, 0.0223880597rem + 3.7313432836vw, 4.5rem);
  z-index: 0;
}
@media (max-width: 768px) {
  .product .nose__deco.deco--01 {
    position: absolute;
    top: -14.6666666667vw;
    left: 0;
    margin-right: 0;
  }
}
.product .nose__deco.deco--02 {
  width: clamp(10.6rem, 7.8208955224rem + 3.4825870647vw, 12rem);
  aspect-ratio: 207/488;
  margin-left: clamp(-14rem, -3.8507462687rem + -8.4577114428vw, -10.6rem);
  padding-bottom: clamp(3rem, 0.0223880597rem + 3.7313432836vw, 4.5rem);
  z-index: 0;
}
@media (max-width: 768px) {
  .product .nose__deco.deco--02 {
    position: absolute;
    top: -14.6666666667vw;
    right: 0;
    margin-left: 0;
  }
}
.product .nose__deco.deco--03 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: clamp(15.4rem, -15.1701492537rem + 38.3084577114vw, 30.8rem);
  position: absolute;
  right: 9%;
  translate: 0% -100%;
}
@media (max-width: 768px) {
  .product .nose__deco.deco--03 {
    display: block;
    width: 25.0666666667vw;
    left: calc(50% - 12.8vw);
    margin: auto;
  }
}
.product .nose__deco.deco--03 img {
  width: min(80%, 154px);
}
.product .nose__deco.deco--04 {
  width: clamp(14rem, -9.2253731343rem + 29.1044776119vw, 25.7rem);
  position: absolute;
  bottom: calc(100% - 10px);
  aspect-ratio: 271/236;
  overflow: hidden;
  z-index: 0;
}
@media (max-width: 768px) {
  .product .nose__deco.deco--04 {
    aspect-ratio: 266/421;
    bottom: calc(100% - 10.6666666667vw);
    left: -8vw;
  }
}
.product .nose__deco.deco--04 img {
  width: 100%;
}
.product .eyes__deco.deco--01 {
  width: min(16vw, 212px);
  aspect-ratio: 191/355;
  overflow: hidden;
  position: absolute;
  right: 1%;
  bottom: -66px;
  z-index: 0;
}
@media (max-width: 768px) {
  .product .eyes__deco.deco--01 {
    width: 25.6vw;
    aspect-ratio: initial;
    top: -27.7333333333vw;
  }
}
.product .eyes__deco.deco--02 {
  width: clamp(14rem, -5.8507462687rem + 24.8756218905vw, 24rem);
  position: absolute;
  bottom: calc(100% - 16px);
  aspect-ratio: 271/270;
  overflow: hidden;
  z-index: 0;
}
@media (max-width: 768px) {
  .product .eyes__deco.deco--02 {
    aspect-ratio: initial;
    bottom: 96%;
    left: -8vw;
  }
}
.product .eyes__deco.deco--02 img {
  width: 100%;
}
.product {
  /* -----------------------------------------------------
      item_detail
    ----------------------------------------------------- */
}
.product .item_detail {
  padding-top: 160px;
  padding-bottom: 24px;
  position: relative;
  --v-depth: 120px;
  padding: calc(var(--v-depth) + 20px) 20px;
  background: var(--color-bg-secondary) url(/site_ag/assets/img/common/page_bg.png) center top/auto;
  clip-path: polygon(0 0, 50% var(--v-depth), 100% 0, 100% calc(100% - var(--v-depth)), 50% 100%, 0 calc(100% - var(--v-depth)));
}
@media (max-width: 768px) {
  .product .item_detail {
    --v-depth: 8vw;
    background-size: contain;
    padding: 21.3333333333vw 0 10.6666666667vw;
  }
}
.product .item_detail .sec_ttl {
  margin-bottom: 16px;
}
@media (max-width: 768px) {
  .product .item_detail .sec_ttl {
    margin-bottom: 2.1333333333vw;
  }
}
.product .item_detail .sec_ttl img {
  width: 555px;
}
@media (max-width: 768px) {
  .product .item_detail .sec_ttl img {
    width: 96.8vw;
  }
}
.product .item_detail .img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-bottom: 24px;
  position: relative;
}
.product .item_detail .img img {
  width: 100%;
}
@media (max-width: 768px) {
  .product .item_detail .img {
    margin-bottom: 5.3333333333vw;
  }
  .product .item_detail .img img {
    width: 93.0666666667vw;
  }
}
.product .item_detail .img__title {
  width: calc(100% - clamp(10.6rem, 1.2701492537rem + 11.6915422886vw, 15.3rem) - clamp(10.3rem, 4.3447761194rem + 7.4626865672vw, 13.3rem));
}
@media (max-width: 768px) {
  .product .item_detail .img__title {
    width: 100%;
    z-index: 1;
    margin-top: 5.3333333333vw;
  }
}
.product .item_detail .img__title h2 {
  width: min(100%, 555px);
  margin: 0 auto;
}
.product .item_detail .img__title img {
  width: 100%;
}
.product .item_detail .text {
  font-size: 2rem;
  font-weight: 400;
  line-height: 2;
}
@media (max-width: 768px) {
  .product .item_detail .text {
    font-size: 3.7333333333vw;
  }
}
.product .item_detail .col2 {
  display: -webkit-box; /*Android4.3*/
  display: -ms-flexbox; /*IE10*/ /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-pack: justify; /*IE10*/
  -webkit-box-pack: justify; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
  justify-content: space-between;
  -ms-flex-wrap: wrap; /*IE10*/ /*PC-Safari,iOS8.4*/
  flex-wrap: wrap;
  gap: 0 24px;
  margin: 96px 0 56px;
}
@media (max-width: 768px) {
  .product .item_detail .col2 {
    display: block;
    margin: 12.8vw 0 26.6666666667vw;
  }
}
.product .item_detail .col2 li {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: calc((100% - 24px) / 2);
  padding: 55px 16px 24px;
  text-align: left;
  position: relative;
  border-radius: clamp(1rem, -0.9850746269rem + 2.4875621891vw, 2rem);
  --grid-size: min(2rem, 3.5vw);
  --frame-ds-size: clamp(0.3rem, -0.2955223881rem + 0.7462686567vw, 0.6rem);
  --frame-bg: #c3e7fb;
}
@media (max-width: 768px) {
  .product .item_detail .col2 li {
    width: 100%;
    padding: 11.7333333333vw 4.2666666667vw 5.3333333333vw;
  }
}
.product .item_detail .col2 li .wrap_ttl {
  position: absolute;
  top: -30px;
  left: 16px;
}
@media (max-width: 768px) {
  .product .item_detail .col2 li .wrap_ttl {
    top: -6.4vw;
    left: 0;
  }
}
.product .item_detail .col2 li .wrap_ttl img {
  width: 458px;
}
@media (max-width: 768px) {
  .product .item_detail .col2 li .wrap_ttl img {
    width: 93.8666666667vw;
  }
}
.product .item_detail .col2 li .ttl {
  background: var(--color-secondary);
  font-size: 2rem;
  color: #fff;
  margin-bottom: 16px;
  padding: 4px 16px;
}
@media (max-width: 768px) {
  .product .item_detail .col2 li .ttl {
    font-size: 4.2666666667vw;
    margin-bottom: 2.1333333333vw;
    padding: 1.0666666667vw 3.2vw;
  }
}
@media (max-width: 768px) {
  .product .item_detail .col2 li p {
    font-size: 4.2666666667vw;
  }
}
.product .item_detail .col2 li:nth-child(n+3) {
  margin-top: 64px;
}
@media (max-width: 768px) {
  .product .item_detail .col2 li:nth-child(n+3) {
    margin-top: 12.8vw;
  }
}
@media (max-width: 768px) {
  .product .item_detail .col2 li + li {
    margin-top: 12.8vw;
  }
}
.product .item_detail .button {
  width: min(85%, 560px);
  aspect-ratio: initial;
  height: clamp(6rem, 2.0298507463rem + 4.9751243781vw, 8rem);
  margin: 0 auto;
}
.product .item_detail .button__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.product {
  /* -----------------------------------------------------
      type
    ----------------------------------------------------- */
}
.product .type {
  padding-top: 120px;
}
@media (max-width: 768px) {
  .product .type {
    padding-top: 16vw;
  }
}
.product .type .sec_ttl {
  width: min(70%, 517px);
  margin: auto;
  font-size: 4rem;
  color: var(--color-primary);
  font-style: italic;
  margin-bottom: 56px;
  z-index: 1;
  position: relative;
}
@media (max-width: 768px) {
  .product .type .sec_ttl {
    width: 64vw;
    font-size: 7.4666666667vw;
    line-height: 1.3;
    margin-bottom: 5.3333333333vw;
  }
}
.product .type .col3 {
  z-index: 0;
  position: relative;
  display: -webkit-box; /*Android4.3*/
  display: -ms-flexbox; /*IE10*/ /*PC-Safari,iOS8.4*/
  display: flex;
  -ms-flex-pack: justify; /*IE10*/
  -webkit-box-pack: justify; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
  justify-content: space-between;
}
@media (max-width: 768px) {
  .product .type .col3 {
    display: block;
  }
}
.product .type .col3 li {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: calc(33.3333333333% - 16px);
  padding: 80px 24px 40px;
  position: relative;
}
@media (max-width: 768px) {
  .product .type .col3 li {
    width: 100%;
    padding: 12.8vw 4.2666666667vw 10.6666666667vw;
  }
}
@media (max-width: 768px) {
  .product .type .col3 li + li {
    margin-top: 21.3333333333vw;
  }
}
.product .type .col3 li:nth-of-type(1) {
  --frame-color: #108484;
  --frame-bg: #e9fcfc;
  background: #e9fcfc;
}
.product .type .col3 li:nth-of-type(1) .btn a {
  background: #108484;
}
.product .type .col3 li:nth-of-type(2) {
  --frame-color: #0062e2;
  --frame-bg: #e0ebf9;
  background: #e0ebf9;
}
.product .type .col3 li:nth-of-type(2) .btn a {
  background: #0062e2;
}
.product .type .col3 li:nth-of-type(3) {
  --frame-color: #722683;
  --frame-bg: #faf2fe;
  background: #faf2fe;
}
.product .type .col3 li:nth-of-type(3) .btn a {
  background: #722683;
}
.product .type .col3 li .ttl {
  width: clamp(20rem, 0.1492537313rem + 24.8756218905vw, 30rem);
}
@media (max-width: 768px) {
  .product .type .col3 li .ttl {
    width: 64vw;
  }
}
.product .type .col3 li .ttl {
  position: absolute;
  top: -24px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media (max-width: 768px) {
  .product .type .col3 li .ttl {
    top: -6.4vw;
  }
}
.product .type .col3 li .ttl img {
  width: 100%;
}
.product .type .col3 li .name {
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .product .type .col3 li .name {
    margin-bottom: 5.3333333333vw;
  }
}
@media (max-width: 768px) {
  .product .type .col3 li .name img {
    width: 79.4666666667vw;
  }
}
.product .type .col3 li .item {
  margin-bottom: 16px;
}
.product .type .col3 li .item img {
  width: 260px;
}
@media (max-width: 768px) {
  .product .type .col3 li .item img {
    width: 82.6666666667vw;
  }
}
.product .type .col3 li .note {
  background: var(--color-red);
  font-size: 1.4rem;
  color: #fff;
  padding: 8px 0;
}
@media (max-width: 768px) {
  .product .type .col3 li .note {
    font-size: 3.2vw;
    padding: 1.0666666667vw 3.2vw;
  }
}
.product .type .col3 li .btn {
  margin-top: 24px;
}
@media (max-width: 768px) {
  .product .type .col3 li .btn {
    margin-top: 6.4vw;
    display: -webkit-box; /*Android4.3*/
    display: -ms-flexbox; /*IE10*/ /*PC-Safari,iOS8.4*/
    display: flex;
    -ms-flex-pack: justify; /*IE10*/
    -webkit-box-pack: justify; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
    justify-content: space-between;
    -ms-flex-wrap: wrap; /*IE10*/ /*PC-Safari,iOS8.4*/
    flex-wrap: wrap;
  }
}
@media (max-width: 768px) {
  .product .type .col3 li .btn div {
    width: 100%;
  }
  .product .type .col3 li .btn div:not(:last-child) {
    width: calc(50% - 1.0666666667vw);
  }
}
.product .type .col3 li .btn div a {
  display: block;
  color: #fff;
  line-height: 48px;
  border-radius: 50vh;
  text-align: left;
  padding-left: 24px;
  position: relative;
}
@media (max-width: 768px) {
  .product .type .col3 li .btn div a {
    line-height: 16vw;
    padding-left: 5.3333333333vw;
  }
}
.product .type .col3 li .btn div a::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 24px;
  width: 10px;
  height: 10px;
  border: 0px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  -webkit-transition: all 0.2s ease 0s;
  transition: all 0.2s ease 0s;
}
@media (max-width: 768px) {
  .product .type .col3 li .btn div a::after {
    right: 5.3333333333vw;
    width: 3.2vw;
    height: 3.2vw;
    border-top: solid 0.5333333333vw #fff;
    border-right: solid 0.5333333333vw #fff;
  }
}
.product .type .col3 li .btn div a:hover::after {
  right: 20px;
}
@media (max-width: 768px) {
  .product .type .col3 li .btn div a:hover::after {
    right: 10.6666666667vw;
  }
}
.product .type .col3 li .btn div + div {
  margin-top: 8px;
}
@media (max-width: 768px) {
  .product .type .col3 li .btn div + div {
    margin-top: 0;
  }
}
@media (max-width: 768px) {
  .product .type .col3 li .btn div:last-child {
    margin-top: 3.2vw;
  }
}
.product .type .col3 li .btn_web {
  margin-top: 32px;
}
@media (max-width: 768px) {
  .product .type .col3 li .btn_web {
    margin-top: 7.4666666667vw;
  }
}
.product .type .col3 li .btn_web .web_ttl {
  margin-bottom: 16px;
}
@media (max-width: 768px) {
  .product .type .col3 li .btn_web .web_ttl {
    margin-bottom: 2.1333333333vw;
  }
}
@media (max-width: 768px) {
  .product .type .col3 li .btn_web .bnr {
    display: -webkit-box; /*Android4.3*/
    display: -ms-flexbox; /*IE10*/ /*PC-Safari,iOS8.4*/
    display: flex;
    -ms-flex-pack: justify; /*IE10*/
    -webkit-box-pack: justify; /* Android4.3以下、Safari3.1〜6.0 */ /* Safari6.1以降 */
    justify-content: space-between;
  }
}
.product .type .col3 li .btn_web .bnr div {
  background: #fff;
  -webkit-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
}
@media (max-width: 768px) {
  .product .type .col3 li .btn_web .bnr div {
    width: calc(33.3333333333% - 1.0666666667vw);
  }
}
.product .type .col3 li .btn_web .bnr div a {
  display: block;
  padding: 16px 0;
}
@media (max-width: 768px) {
  .product .type .col3 li .btn_web .bnr div a {
    padding: 3.2vw 0;
  }
}
.product .type .col3 li .btn_web .bnr div img {
  width: 128px;
}
@media (max-width: 768px) {
  .product .type .col3 li .btn_web .bnr div img {
    width: 23.2vw;
  }
}
.product .type .col3 li .btn_web .bnr div img:hover {
  opacity: 1;
}
.product .type .col3 li .btn_web .bnr div + div {
  margin-top: 16px;
}
@media (max-width: 768px) {
  .product .type .col3 li .btn_web .bnr div + div {
    margin-top: 0;
  }
}
.product .type .col3 li .btn_web .bnr div:hover {
  opacity: 0.7;
}
@media (max-width: 768px) {
  .product .type .col3 li .btn_web .bnr div:hover {
    opacity: 1;
  }
}
.product {
  /* -----------------------------------------------------
        modal
    ----------------------------------------------------- */
}
.product #modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 9999999;
}
.product #modal .modalMask {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 10;
  background-color: rgba(0, 10, 107, 0.8);
}
.product #modal .closeBtn {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 100;
  background: url(/site_ag/assets/img/product/nose/btn_close.png) no-repeat top right;
  background-size: contain;
  width: 56px;
  height: 56px;
}
@media (max-width: 768px) {
  .product #modal .closeBtn {
    width: 10.6666666667vw;
    height: 10.6666666667vw;
  }
}
.product #modal .modalWrap {
  position: absolute;
  width: 880px;
  top: 50%;
  right: 30px;
  left: 30px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 20;
  margin: auto;
  background: #fff;
  color: var(--color-primary);
  padding: 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media (min-width: 769px) and (max-width: 1366px) {
  .product #modal .modalWrap {
    width: 720px;
  }
}
@media (max-width: 768px) {
  .product #modal .modalWrap {
    width: 91.7333333333vw;
    max-height: 80%;
    overflow-y: scroll;
    left: 4.2666666667vw;
    right: 4.2666666667vw;
    padding: 4.2666666667vw;
  }
}
.product #modal .modalWrap .modalCont {
  display: none;
}
.product #modal .modalWrap .modalCont .wrap_ttl {
  font-size: 2.6rem;
  border-bottom: solid 3px var(--color-primary);
  margin-bottom: 16px;
  padding-bottom: 16px;
}
@media (max-width: 768px) {
  .product #modal .modalWrap .modalCont .wrap_ttl {
    font-size: 5.3333333333vw;
    border-bottom: solid 0.8vw var(--color-primary);
    margin-bottom: 2.1333333333vw;
    padding-bottom: 2.1333333333vw;
  }
}
.product #modal .modalWrap .modalCont .img {
  margin-top: 24px;
}
@media (max-width: 768px) {
  .product #modal .modalWrap .modalCont .img {
    margin-top: 3.2vw;
  }
}
.product #modal .modalWrap .modalCont .cap {
  max-width: 580px;
  margin: 8px 0 0 auto;
  font-size: 1.2rem;
  font-weight: 300;
  color: #000;
  text-indent: -2.5em;
  padding-left: 2.5em;
}
@media (max-width: 768px) {
  .product #modal .modalWrap .modalCont .cap {
    max-width: 85.3333333333vw;
    font-size: 5.3333333333vw;
  }
}
.product #modal .modalWrap .modalCont .cap li {
  text-align: left;
}

.product_nose .btn_wrap {
  position: relative;
}
.product_nose .item_detail .button img {
  width: min(100%, 229px);
}
.product_nose .item_detail .img__title {
  width: min(100%, 797px);
  z-index: 1;
}
.product_nose .item_detail .img__title h2 {
  width: min(81%, 555px);
}
@media (max-width: 768px) {
  .product_nose .item_detail .img__title h2 {
    width: 100%;
  }
}

.product_eyes .item_detail {
  padding: calc(var(--v-depth) + 80px) 20px calc(var(--v-depth) + 10px);
  clip-path: none;
  background: none;
}
.product_eyes .item_detail::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--color-bg-secondary) url(/site_ag/assets/img/common/page_bg.png) center top/auto;
  clip-path: polygon(0 0, 50% var(--v-depth), 100% 0, 100% calc(100% - var(--v-depth)), 50% 100%, 0 calc(100% - var(--v-depth)));
}
@media (max-width: 768px) {
  .product_eyes .item_detail {
    padding: calc(var(--v-depth) + 60px) 0 calc(var(--v-depth) + 10px);
  }
}
.product_eyes .item_detail .img {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 0;
}
.product_eyes .item_detail .img .sec_ttl,
.product_eyes .item_detail .img picture {
  z-index: 1;
}
.product_eyes .item_detail .img .sec_ttl {
  width: min(56vw, 555px);
}
@media (max-width: 768px) {
  .product_eyes .item_detail .img .sec_ttl {
    width: 100%;
  }
}
@media (max-width: 768px) {
  .product_eyes .item_detail .img .sec_ttl img {
    width: 100%;
  }
}
.product_eyes .item_detail .img picture {
  width: min(53vw, 574px);
}
@media (max-width: 768px) {
  .product_eyes .item_detail .img picture {
    width: 60%;
  }
}
.product_eyes .item_detail .col2 {
  margin-top: 56px;
}
@media (max-width: 768px) {
  .product_eyes .item_detail .col2 {
    margin-bottom: 14.9333333333vw;
  }
}

/* -----------------------------------------------------
    エージーアレルカットEXc
----------------------------------------------------- */
@media (max-width: 768px) {
  .product_ex .frame-title {
    max-width: 74.6666666667vw;
  }
}
.product_ex .conversion .deco-frame {
  padding: clamp(2.8rem, -1.1701492537rem + 4.9751243781vw, 4.8rem) clamp(3.6rem, -2.752238806rem + 7.960199005vw, 6.8rem);
}
.product_ex .conversion__ttl {
  font-size: clamp(1.6rem, 0.8059701493rem + 0.9950248756vw, 2rem);
  font-weight: 700;
  margin-block: clamp(3.6rem, 0.423880597rem + 3.9800995025vw, 5.2rem) clamp(1.6rem, 0.0119402985rem + 1.9900497512vw, 2.4rem);
  color: var(--color-text-secondary);
}
.product_ex .conversion__ec {
  margin-top: clamp(3.2rem, 0.023880597rem + 3.9800995025vw, 4.8rem);
}
.product_ex .conversion__ec-ttl {
  font-size: clamp(1.6rem, 0.8059701493rem + 0.9950248756vw, 2rem);
  font-weight: 700;
  margin-bottom: clamp(1.6rem, 0.0119402985rem + 1.9900497512vw, 2.4rem);
}
.product_ex .conversion__ec-bnr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(1rem, -0.9850746269rem + 2.4875621891vw, 2rem);
}
@media (max-width: 768px) {
  .product_ex .conversion__ec-bnr {
    gap: 2.6666666667vw;
  }
}
.product_ex .conversion__ec-bnr-item {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 clamp(18rem, 2.1194029851rem + 19.9004975124vw, 26rem);
          flex: 0 1 clamp(18rem, 2.1194029851rem + 19.9004975124vw, 26rem);
}
.product_ex .conversion__ec-bnr-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #fff;
  padding: clamp(1rem, 0.0074626866rem + 1.2437810945vw, 1.5rem);
}
@media (max-width: 768px) {
  .product_ex .conversion .button-container .button {
    width: 100%;
  }
}
@media (max-width: 768px) and (max-width: 768px) {
  .product_ex .conversion .button-container .button:not(:last-child) {
    width: calc(50% - 2.6666666667vw);
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
  }
}
.product_ex .text.bg-grid {
  position: relative;
  margin-top: clamp(8rem, 0.0597014925rem + 9.9502487562vw, 12rem);
  padding-top: clamp(8rem, 0.0597014925rem + 9.9502487562vw, 12rem);
}
.product_ex .text.bg-grid .frame-title {
  position: absolute;
  inset: 0 0 auto;
  margin-inline: auto;
  translate: 0% -50%;
}
@media (max-width: 768px) {
  .product_ex .text.bg-grid {
    margin-top: 32vw;
    padding-top: 21.3333333333vw;
  }
}
.product_ex .tab {
  --gap: clamp(1.2rem, 0.2074626866rem + 1.2437810945vw, 1.7rem);
}
.product_ex .tab__list {
  gap: var(--gap);
}
@media (max-width: 768px) {
  .product_ex .tab__list {
    width: 100%;
  }
}
.product_ex .tab__button {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
  width: 100%;
  font-size: clamp(2.8rem, 1.4104477612rem + 1.7412935323vw, 3.5rem);
  padding: clamp(0.8rem, -0.5895522388rem + 1.7412935323vw, 1.5rem) clamp(1.5rem, -1.4776119403rem + 3.7313432836vw, 3rem);
  text-align: left;
  color: var(--color-secondary);
  border-width: 2px;
  border-radius: clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) clamp(1.5rem, 0.5074626866rem + 1.2437810945vw, 2rem) 0 0;
  -webkit-box-shadow: clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) 0px 0px #7fcdf3, clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) 0px 2px var(--frame-color);
          box-shadow: clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) 0px 0px #7fcdf3, clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) 0px 2px var(--frame-color);
}
@media (max-width: 768px) {
  .product_ex .tab__button {
    border-radius: 1.3333333333vw 2.6666666667vw 0 0;
    font-size: 3.7333333333vw;
    padding: 2.1333333333vw 4vw;
  }
}
.product_ex .tab__button--works {
  color: var(--color-text-inverse);
  background-color: var(--color-secondary);
}
.product_ex .tab__panels {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
  background: var(--color-bg);
  -webkit-box-shadow: clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) 0px 0px #7fcdf3, clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) 0px 2px var(--frame-color);
          box-shadow: clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) 0px 0px #7fcdf3, clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem) 0px 2px var(--frame-color);
}
.product_ex .tab__panels::before {
  position: absolute;
  content: "";
  top: -2px;
  left: 0;
  width: calc(50% - var(--gap) / 2 - 2px);
  height: 2px;
  background-color: var(--color-bg);
}
.product_ex .tab__panels::after {
  content: "";
  position: absolute;
  top: clamp(0.2rem, -0.1970149254rem + 0.4975124378vw, 0.4rem);
  right: clamp(-1rem, 0.1940298507rem + -0.9950248756vw, -0.6rem);
  width: clamp(0.4rem, -0.3940298507rem + 0.9950248756vw, 0.8rem);
  height: 2px;
  background-color: var(--frame-bg);
}
@media (max-width: 768px) {
  .product_ex .tab__panels::after {
    top: 0;
    right: -1.6vw;
    width: 1.0666666667vw;
  }
}
.product_ex .tab__panels:has(.tab__panel--works.active)::before {
  opacity: 0;
}
.product_ex .tab__panels:has(.tab__panel--works.active) {
  background-color: var(--color-secondary);
}
.product_ex .member-deco {
  position: absolute;
}
@media (min-width: 769px) {
  .product_ex .member-deco {
    bottom: 0;
  }
}
@media (max-width: 768px) {
  .product_ex .member-deco {
    top: 1.6vw;
  }
}
.product_ex .member-deco--blue {
  left: 0;
}
@media (max-width: 768px) {
  .product_ex .member-deco--blue {
    width: 26.6666666667vw;
    left: 6.4vw;
    top: 35.2vw;
  }
}
.product_ex .member-deco--green {
  right: 0;
}
@media (max-width: 768px) {
  .product_ex .member-deco--green {
    width: 26.6666666667vw;
    right: 6.4vw;
    top: 35.2vw;
  }
}
.product_ex .works {
  background: var(--color-bg-secondary) url(/site_ag/assets/img/common/tab_bg.png) center top/cover;
  margin-bottom: clamp(8rem, 0.0597014925rem + 9.9502487562vw, 12rem);
}
@media (max-width: 768px) {
  .product_ex .works {
    margin-bottom: 32vw;
  }
}
.product_ex .works__title {
  font-style: italic;
  font-weight: 900;
  color: var(--color-secondary);
  font-size: clamp(1.8rem, -1.5746268657rem + 4.2288557214vw, 3.5rem);
}
.product_ex .works__title-highlight {
  font-size: clamp(2.8rem, -1.5671641791rem + 5.4726368159vw, 5rem);
  border-bottom: 4px solid;
  line-height: 1.25;
}
@media (max-width: 768px) {
  .product_ex .works__title {
    font-size: 4.8vw;
    margin-bottom: 32vw;
  }
  .product_ex .works__title-highlight {
    font-size: 7.4666666667vw;
  }
}
@media (max-width: 768px) {
  .product_ex .works .container {
    position: relative;
    z-index: 1;
  }
}
@media (max-width: 768px) {
  .product_ex .works .member-deco {
    z-index: 0;
  }
}

#cmgallery {
  --color-green: #2a950b;
  --color-bg-green: #effef6;
  --color-orange: #ff8f00;
  --color-bg-orange: #fff3e6;
  --color-purple: #b929e6;
  --color-bg-purple: #f3e6f9;
  --color-blue: #1619b2;
  --color-bg-blue: #e1e7fd;
  --color-aqua: #30aff7;
  --color-bg-aqua: #ebf9fa;
  --color-red: #d40606;
  --color-bg-red: #faebeb;
  --color-pink: #e806b0;
  --color-bg-pink: #fbdff6;
}
#cmgallery .movie-player {
  width: 100%;
  height: 100%;
  aspect-ratio: 16/9;
}
#cmgallery .movie-player--portrait {
  aspect-ratio: 9/16;
}
#cmgallery .movie-player iframe {
  width: 100%;
  height: 100%;
  position: static !important;
}
#cmgallery {
  --sec-padding: min(180px, 5vw);
}
#cmgallery .mainvisual {
  padding-block: 0;
  position: relative;
  z-index: 5;
  height: 59vw;
  background: center/cover url(../img/cmgallery/mainvisual_bg.png) no-repeat;
}
@media (max-width: 768px) {
  #cmgallery .mainvisual {
    height: auto;
  }
}
#cmgallery .mainvisual__inner {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 35% 5% 1fr;
  grid-template-columns: 35% 5% 1fr;
  height: 100%;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media (max-width: 768px) {
  #cmgallery .mainvisual__inner {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    grid-auto-flow: row;
  }
}
#cmgallery .mainvisual__title {
  background: center/contain url(../img/cmgallery/mainvisual_title_bg.png) no-repeat;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: clamp(1rem, -6.9402985075rem + 9.9502487562vw, 5rem);
  height: 59vw;
  padding-bottom: var(--sec-padding);
}
@media (min-width: 769px) {
  #cmgallery .mainvisual__title {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-area: 1/1/2/3;
  }
}
@media (max-width: 768px) {
  #cmgallery .mainvisual__title {
    padding-bottom: 0;
    height: auto;
    padding: 10.6666666667vw var(--content-padding);
  }
}
#cmgallery .mainvisual__img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  height: 100%;
}
#cmgallery .mainvisual__img img {
  width: 100%;
  height: auto;
}
@media (min-width: 769px) {
  #cmgallery .mainvisual__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 2;
    -ms-grid-column-span: 2;
    grid-area: 1/2/2/4;
  }
}
@media (max-width: 768px) {
  #cmgallery .mainvisual__img img {
    -o-object-fit: contain;
       object-fit: contain;
    width: 106%;
    max-width: 106%;
    height: auto;
    translate: -3% 0;
  }
}
#cmgallery .anchor-wrapper {
  position: absolute;
  inset: 0 0 auto;
  margin-inline: auto;
  z-index: 15;
  translate: 0 -50%;
}
#cmgallery .anchor-list {
  --gap: clamp(1rem, 0.0074626866rem + 1.2437810945vw, 1.5rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: var(--gap);
}
#cmgallery .anchor-list + .anchor-list {
  margin-top: clamp(1.6rem, 0.8059701493rem + 0.9950248756vw, 2rem);
}
@media (max-width: 768px) {
  #cmgallery .anchor-list + .anchor-list {
    margin-top: var(--gap);
  }
}
@media (max-width: 768px) {
  #cmgallery .anchor-list {
    --gap: 1.0666666667vw;
  }
}
@media (max-width: 768px) {
  #cmgallery .anchor-list__item {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 21.8666666667vw;
            flex: 0 0 21.8666666667vw;
  }
}
#cmgallery .anchor-list__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}
#cmgallery .anchor-list__link::after {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M 96 176 L 256 336 L 416 176" fill="none" stroke="white" stroke-width="80" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  content: "";
  position: absolute;
  inset: auto 0 8%;
  margin: auto;
  width: clamp(2.4rem, 1.6059701493rem + 0.9950248756vw, 2.8rem);
  height: clamp(1.2rem, -1.976119403rem + 3.9800995025vw, 2.8rem);
  -webkit-transition: translate 0.3s ease;
  transition: translate 0.3s ease;
}
@media (max-width: 768px) {
  #cmgallery .anchor-list__link::after {
    width: 6.4vw;
    height: 3.2vw;
  }
}
#cmgallery .anchor-list__link img {
  -webkit-filter: drop-shadow(3px 0 10px rgba(0, 0, 0, 0.25));
          filter: drop-shadow(3px 0 10px rgba(0, 0, 0, 0.25));
  -webkit-transition: -webkit-filter 0.3s ease;
  transition: -webkit-filter 0.3s ease;
  transition: filter 0.3s ease;
  transition: filter 0.3s ease, -webkit-filter 0.3s ease;
}
#cmgallery .anchor-list__link:hover {
  opacity: 1;
  translate: 0 3px;
}
#cmgallery .anchor-list__link:hover img {
  -webkit-filter: drop-shadow(0 0 2px rgba(0, 0, 0, 0.45));
          filter: drop-shadow(0 0 2px rgba(0, 0, 0, 0.45));
}
#cmgallery .anchor-list__link:hover::after {
  translate: 0 25%;
}
#cmgallery .section_ttl {
  margin-bottom: clamp(1.4rem, 0.2089552239rem + 1.4925373134vw, 2rem);
}
#cmgallery .section_ttl:not(:first-child) {
  margin-top: clamp(8rem, 0.0597014925rem + 9.9502487562vw, 12rem);
}
@media (max-width: 768px) {
  #cmgallery .section_ttl {
    margin-bottom: 8.5333333333vw;
  }
  #cmgallery .section_ttl--sp-2line :is(picture, img) {
    height: 25.3333333333vw;
  }
  #cmgallery .section_ttl--webcm :is(picture, img) {
    width: 53.3333333333vw;
  }
}
#cmgallery .cmgallery__item {
  margin-block: clamp(3.2rem, 1.6119402985rem + 1.9900497512vw, 4rem);
}
#cmgallery .cmgallery__item--webcm {
  margin-top: clamp(2.4rem, 2.0029850746rem + 0.4975124378vw, 2.6rem);
}
#cmgallery .cmgallery__item-caption {
  --img: url(../img/cmgallery/cm_caption_heart.png);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  margin-bottom: clamp(1.6rem, 0.4089552239rem + 1.4925373134vw, 2.2rem);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(0.8rem, 0.0059701493rem + 0.9950248756vw, 1.2rem);
}
#cmgallery .cmgallery__item-caption::before, #cmgallery .cmgallery__item-caption::after {
  content: "";
  background: no-repeat center/contain var(--img);
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: clamp(2.4rem, -2.3641791045rem + 5.9701492537vw, 4.8rem);
  height: clamp(2.4rem, -2.3641791045rem + 5.9701492537vw, 4.8rem);
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__item-caption::before, #cmgallery .cmgallery__item-caption::after {
    width: 9.0666666667vw;
    height: 6.9333333333vw;
  }
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__item-caption--week :is(picture, img) {
    width: 53.3333333333vw;
  }
  #cmgallery .cmgallery__item-caption--cm :is(picture, img) {
    width: 42.6666666667vw;
  }
}
#cmgallery .cmgallery__item-thumbnail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin: 0 auto;
  width: 100%;
  max-width: 640px;
}
#cmgallery .cmgallery__item-thumbnail--Vertical {
  max-width: clamp(40rem, 36.0298507463rem + 4.9751243781vw, 42rem);
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__item-thumbnail--Vertical {
    max-width: 74.6666666667vw;
  }
}
#cmgallery .cmgallery__item-thumbnail--Vertical > button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: min(80vh, 747px);
  max-height: 100%;
  max-width: 100%;
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__item-thumbnail--Vertical > button {
    height: auto;
  }
}
#cmgallery .cmgallery__item-thumbnail--Vertical img {
  min-height: 0;
  max-height: 100%;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
#cmgallery .cmgallery__item-thumbnail--Vertical > iframe {
  max-height: 100%;
  max-width: 100%;
  aspect-ratio: 9/16;
}
@media (min-width: 769px) {
  #cmgallery .cmgallery__item-button {
    max-height: 80vh;
  }
}
#cmgallery .cmgallery__section {
  --theme-color-text: var(--color-text);
  --theme-color-bg: #fff;
  background-color: var(--theme-color-bg);
  color: var(--theme-color-text);
  padding-block: var(--sec-padding) calc(var(--sec-padding) * 3);
  position: relative;
  z-index: 15;
  --bg-img: none;
}
#cmgallery .cmgallery__section .container {
  position: relative;
  z-index: 15;
  background: top center/100% auto var(--bg-img) repeat-y;
}
@media screen and (max-width: 1070px) {
  #cmgallery .cmgallery__section .container {
    padding-bottom: 37.3333333333vw;
  }
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section .container {
    padding-block: 18.6666666667vw 37.3333333333vw;
  }
}
#cmgallery .cmgallery__section .member-deco {
  position: absolute;
  inset: auto 0 calc(0px - var(--sec-padding) * 3);
  margin-inline: auto 0;
  width: clamp(28rem, 24.0298507463rem + 4.9751243781vw, 30rem);
  height: clamp(48rem, 24.1791044776rem + 29.8507462687vw, 60rem);
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 5;
  opacity: 0;
  -webkit-transform: translate(0, 50%);
          transform: translate(0, 50%);
  -webkit-transition: all 0.5s var(trd-timing);
  transition: all 0.5s var(trd-timing);
}
@media screen and (max-width: 1070px) {
  #cmgallery .cmgallery__section .member-deco {
    width: calc(100% - var(--content-padding));
    height: 93.3333333333vw;
  }
}
#cmgallery .cmgallery__section .member-deco.is-active {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
@media (min-width: 769px) {
  #cmgallery .cmgallery__section:nth-of-type(even) .member-deco {
    margin-inline: 0 auto;
  }
}
#cmgallery .cmgallery__section::before, #cmgallery .cmgallery__section::after {
  content: "";
  position: absolute;
  inset: 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  z-index: 5;
}
#cmgallery .cmgallery__section::before {
  background-position: top center;
  background-color: var(--theme-color-bg);
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="1281" height="763"><path fill-rule="evenodd" fill="rgb(251, 243, 235)" d="M1.000,0.000 C1.000,0.000 55.340,80.000 310.000,80.000 C564.660,80.000 790.697,2.000 1001.000,2.000 C1211.303,2.000 1281.000,50.000 1281.000,50.000 L1281.000,763.000 L0.000,763.000 L1.000,0.000 Z"/></svg>');
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="1281" height="763"><path fill-rule="evenodd" fill="rgb(251, 243, 235)" d="M1.000,0.000 C1.000,0.000 55.340,80.000 310.000,80.000 C564.660,80.000 790.697,2.000 1001.000,2.000 C1211.303,2.000 1281.000,50.000 1281.000,50.000 L1281.000,763.000 L0.000,763.000 L1.000,0.000 Z"/></svg>');
  mask-size: 100% auto;
  -webkit-mask-size: 100% auto;
  translate: 0% -10vw;
}
#cmgallery .cmgallery__section::after {
  background-position: bottom center;
}
#cmgallery .cmgallery__section--cm {
  --theme-color-text: var(--color-green);
  --theme-color-bg: var(--color-bg-green);
  padding-top: clamp(12rem, -11.8208955224rem + 29.8507462687vw, 24rem);
  --bg-img: url(../img/cmgallery/cm_bg.png);
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--cm {
    padding-top: 10.6666666667vw;
    --bg-img: url(../img/cmgallery/cm_bg_sp.png);
  }
}
#cmgallery .cmgallery__section--cm::before {
  background-image: url(../img/cmgallery/cm_bg_top.png);
}
#cmgallery .cmgallery__section--cm::after {
  background-image: url(../img/cmgallery/cm_bg_bottom.png);
}
#cmgallery .cmgallery__section--cm .member-deco {
  background-image: url(../img/cmgallery/cm_bg_idol.png);
}
@media screen and (max-width: 1070px) {
  #cmgallery .cmgallery__section--cm .member-deco {
    background-image: url(../img/cmgallery/cm_bg_idol_sp.png);
  }
}
#cmgallery .cmgallery__section--webcm {
  --theme-color-text: var(--color-orange);
  --theme-color-bg: var(--color-bg-orange);
  --bg-img: url(../img/cmgallery/webcm_bg.png);
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--webcm {
    --bg-img: url(../img/cmgallery/webcm_bg_sp.png);
  }
}
#cmgallery .cmgallery__section--webcm::before {
  background-image: url(../img/cmgallery/webcm_bg_top.png);
}
#cmgallery .cmgallery__section--webcm::after {
  background-image: url(../img/cmgallery/webcm_bg_bottom.png);
}
#cmgallery .cmgallery__section--webcm .member-deco {
  background-image: url(../img/cmgallery/webcm_bg_idol.png);
}
@media screen and (max-width: 1070px) {
  #cmgallery .cmgallery__section--webcm .member-deco {
    background-image: url(../img/cmgallery/webcm_bg_idol_sp.png);
  }
}
#cmgallery .cmgallery__section--webcm .cmgallery__item-caption {
  --img: url(../img/cmgallery/webcm_caption_heart.png);
}
#cmgallery .cmgallery__section--webcm .webcm__weeklist {
  margin-top: clamp(1.6rem, 0.4089552239rem + 1.4925373134vw, 2.2rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: calc(100% + var(--content-padding));
  margin-left: calc(0px - var(--content-padding) / 2);
}
#cmgallery .cmgallery__section--webcm .webcm__weekslides {
  margin-block: clamp(8rem, -11.8507462687rem + 24.8756218905vw, 18rem);
  position: relative;
  --margin-size: clamp(6rem, 4.0149253731rem + 2.4875621891vw, 7rem);
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--webcm .webcm__weekslides {
    margin-block: 21.3333333333vw 32vw;
  }
}
#cmgallery .cmgallery__section--webcm .webcm__weekslides-wrapper {
  margin-inline: auto;
  width: min(100%, clamp(18rem, -1.8507462687rem + 24.8756218905vw, 28rem));
}
#cmgallery .cmgallery__section--webcm .webcm__weekitem {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
#cmgallery .cmgallery__section--webcm .webcm__weekitem.swiper-slide-active {
  scale: 1.35;
  z-index: 10;
}
#cmgallery .cmgallery__section--webcm .webcm__weekitem-caption {
  margin-bottom: clamp(0.8rem, 0.0059701493rem + 0.9950248756vw, 1.2rem);
  height: clamp(3.2rem, -2.3582089552rem + 6.9651741294vw, 6rem);
}
#cmgallery .cmgallery__section--webcm .webcm__weekitem-caption img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
#cmgallery .cmgallery__section--webcm .swiper-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#cmgallery .cmgallery__section--webcm .swiper-pagination-bullet {
  width: auto;
  height: auto;
  background: none;
  opacity: 1;
  scale: 0.85;
  -webkit-filter: drop-shadow(3px 0 8px rgba(0, 0, 0, 0.25));
          filter: drop-shadow(3px 0 8px rgba(0, 0, 0, 0.25));
  -webkit-transition: scale 0.3s ease, translate 0.3s ease, -webkit-filter 0.3s ease;
  transition: scale 0.3s ease, translate 0.3s ease, -webkit-filter 0.3s ease;
  transition: filter 0.3s ease, scale 0.3s ease, translate 0.3s ease;
  transition: filter 0.3s ease, scale 0.3s ease, translate 0.3s ease, -webkit-filter 0.3s ease;
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--webcm .swiper-pagination-bullet {
    scale: 0.95;
  }
}
#cmgallery .cmgallery__section--webcm .swiper-pagination-bullet:not(.swiper-pagination-bullet-active):hover {
  translate: 0 -5%;
}
#cmgallery .cmgallery__section--webcm .swiper-pagination-bullet:not(.swiper-pagination-bullet-active).webcm__weeklist-button-mon:hover {
  -webkit-filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #53cbed);
          filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #53cbed);
}
#cmgallery .cmgallery__section--webcm .swiper-pagination-bullet:not(.swiper-pagination-bullet-active).webcm__weeklist-button-tue:hover {
  -webkit-filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #2bdf36);
          filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #2bdf36);
}
#cmgallery .cmgallery__section--webcm .swiper-pagination-bullet:not(.swiper-pagination-bullet-active).webcm__weeklist-button-wed:hover {
  -webkit-filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #f148c0);
          filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #f148c0);
}
#cmgallery .cmgallery__section--webcm .swiper-pagination-bullet:not(.swiper-pagination-bullet-active).webcm__weeklist-button-thu:hover {
  -webkit-filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #ff900e);
          filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #ff900e);
}
#cmgallery .cmgallery__section--webcm .swiper-pagination-bullet:not(.swiper-pagination-bullet-active).webcm__weeklist-button-fri:hover {
  -webkit-filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #e92e4c);
          filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #e92e4c);
}
#cmgallery .cmgallery__section--webcm .swiper-pagination-bullet:not(.swiper-pagination-bullet-active).webcm__weeklist-button-sat:hover {
  -webkit-filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #b929e6);
          filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #b929e6);
}
#cmgallery .cmgallery__section--webcm .swiper-pagination-bullet:not(.swiper-pagination-bullet-active).webcm__weeklist-button-sun:hover {
  -webkit-filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #292de4);
          filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #292de4);
}
#cmgallery .cmgallery__section--webcm .swiper-pagination-bullet-active {
  scale: 1;
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--webcm .swiper-pagination-bullet-active {
    scale: 1.25;
  }
}
#cmgallery .cmgallery__section--webcm .swiper-pagination-bullet-active.webcm__weeklist-button-mon {
  -webkit-filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #53cbed) drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) rgba(83, 203, 237, 0.5));
          filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #53cbed) drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) rgba(83, 203, 237, 0.5));
}
#cmgallery .cmgallery__section--webcm .swiper-pagination-bullet-active.webcm__weeklist-button-tue {
  -webkit-filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #2bdf36) drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) rgba(43, 223, 54, 0.5));
          filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #2bdf36) drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) rgba(43, 223, 54, 0.5));
}
#cmgallery .cmgallery__section--webcm .swiper-pagination-bullet-active.webcm__weeklist-button-wed {
  -webkit-filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #f148c0) drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) rgba(241, 72, 192, 0.5));
          filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #f148c0) drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) rgba(241, 72, 192, 0.5));
}
#cmgallery .cmgallery__section--webcm .swiper-pagination-bullet-active.webcm__weeklist-button-thu {
  -webkit-filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #ff900e) drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) rgba(255, 144, 14, 0.5));
          filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #ff900e) drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) rgba(255, 144, 14, 0.5));
}
#cmgallery .cmgallery__section--webcm .swiper-pagination-bullet-active.webcm__weeklist-button-fri {
  -webkit-filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #e92e4c) drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) rgba(233, 46, 76, 0.5));
          filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #e92e4c) drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) rgba(233, 46, 76, 0.5));
}
#cmgallery .cmgallery__section--webcm .swiper-pagination-bullet-active.webcm__weeklist-button-sat {
  -webkit-filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #b929e6) drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) rgba(185, 41, 230, 0.5));
          filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #b929e6) drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) rgba(185, 41, 230, 0.5));
}
#cmgallery .cmgallery__section--webcm .swiper-pagination-bullet-active.webcm__weeklist-button-sun {
  -webkit-filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #292de4) drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) rgba(41, 45, 228, 0.5));
          filter: drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) #292de4) drop-shadow(0 0 clamp(0.5rem, -0.4925373134rem + 1.2437810945vw, 1rem) rgba(41, 45, 228, 0.5));
}
#cmgallery .cmgallery__section--webcm .swiper-button {
  width: clamp(6rem, -1.9402985075rem + 9.9502487562vw, 10rem);
  height: clamp(6rem, -1.9402985075rem + 9.9502487562vw, 10rem);
  border-radius: 50%;
  background: #fff 43% 50%/42% auto url(../img/cmgallery/slider_arrow.png) no-repeat;
  border: 5px solid #ee5400;
  -webkit-transition: translate 0.3s ease;
  transition: translate 0.3s ease;
  inset: 0;
  -webkit-transform: none;
          transform: none;
  margin-block: auto;
}
#cmgallery .cmgallery__section--webcm .swiper-button::before, #cmgallery .cmgallery__section--webcm .swiper-button::after {
  display: none;
}
#cmgallery .cmgallery__section--webcm .swiper-button svg {
  display: none;
}
#cmgallery .cmgallery__section--webcm .swiper-button:hover {
  translate: -15% 0%;
}
#cmgallery .cmgallery__section--webcm .swiper-button-disabled {
  display: none;
}
#cmgallery .cmgallery__section--webcm .swiper-button-prev {
  right: var(--content-width-half);
  left: auto;
}
#cmgallery .cmgallery__section--webcm .swiper-button-next {
  left: var(--content-width-half);
  right: 0;
  scale: -1 1;
}
#cmgallery .cmgallery__section--webcm .swiper-button-next:hover {
  translate: 15% 0%;
}
#cmgallery .cmgallery__section--webcm02 {
  --theme-color-text: var(--color-purple);
  --theme-color-bg: var(--color-bg-purple);
  --bg-img: url(../img/cmgallery/webcm02_bg.png);
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--webcm02 {
    --bg-img: url(../img/cmgallery/webcm02_bg_sp.png);
  }
}
#cmgallery .cmgallery__section--webcm02::before {
  background-image: url(../img/cmgallery/webcm02_bg_top.png);
}
#cmgallery .cmgallery__section--webcm02::after {
  background-image: url(../img/cmgallery/webcm02_bg_bottom.png);
}
#cmgallery .cmgallery__section--webcm02 .member-deco {
  background-image: url(../img/cmgallery/webcm02_bg_idol.png);
}
@media screen and (max-width: 1070px) {
  #cmgallery .cmgallery__section--webcm02 .member-deco {
    background-image: url(../img/cmgallery/webcm02_bg_idol_sp.png);
  }
}
#cmgallery .cmgallery__section--webcm02 .cmgallery__item-caption {
  --img: url(../img/cmgallery/webcm02_caption_heart.png);
}
#cmgallery .cmgallery__section--making {
  --theme-color-text: var(--color-blue);
  --theme-color-bg: var(--color-bg-blue);
  --bg-img: url(../img/cmgallery/making_bg.png);
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--making {
    --bg-img: url(../img/cmgallery/making_bg_sp.png);
  }
}
#cmgallery .cmgallery__section--making::before {
  background-image: url(../img/cmgallery/making_bg_top.png);
}
#cmgallery .cmgallery__section--making::after {
  background-image: url(../img/cmgallery/making_bg_bottom.png);
}
#cmgallery .cmgallery__section--making .member-deco {
  background-image: url(../img/cmgallery/making_bg_idol.png);
}
@media (min-width: 769px) {
  #cmgallery .cmgallery__section--making .member-deco {
    width: clamp(28.3rem, 33.3746268657rem + -4.2288557214vw, 30rem);
    height: clamp(40rem, 10.223880597rem + 37.3134328358vw, 55rem);
  }
}
@media screen and (max-width: 1070px) {
  #cmgallery .cmgallery__section--making .member-deco {
    background-image: url(../img/cmgallery/making_bg_idol_sp.png);
  }
}
#cmgallery .cmgallery__section--special_interview {
  --theme-color-text: var(--color-aqua);
  --theme-color-bg: var(--color-bg-aqua);
  --bg-img: url(../img/cmgallery/special_interview_bg.png);
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--special_interview {
    --bg-img: url(../img/cmgallery/special_interview_bg_sp.png);
  }
}
#cmgallery .cmgallery__section--special_interview::before {
  background-image: url(../img/cmgallery/special_interview_bg_top.png);
}
#cmgallery .cmgallery__section--special_interview::after {
  background-image: url(../img/cmgallery/special_interview_bg_bottom.png);
}
#cmgallery .cmgallery__section--special_interview .member-deco {
  background-image: url(../img/cmgallery/special_interview_bg_idol.png);
}
@media (min-width: 769px) {
  #cmgallery .cmgallery__section--special_interview .member-deco {
    width: clamp(11rem, -31.4805970149rem + 53.2338308458vw, 32.4rem);
    height: clamp(25rem, -41.6985074627rem + 83.5820895522vw, 58.6rem);
  }
}
@media screen and (max-width: 1070px) {
  #cmgallery .cmgallery__section--special_interview .member-deco {
    background-image: url(../img/cmgallery/special_interview_bg_idol_sp.png);
  }
}
#cmgallery .cmgallery__section--episode {
  --theme-color-text: var(--color-red);
  --theme-color-bg: var(--color-bg-red);
  --bg-img: url(../img/cmgallery/episode_bg.png);
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--episode {
    --bg-img: url(../img/cmgallery/episode_bg_sp.png);
  }
}
#cmgallery .cmgallery__section--episode::before {
  background-image: url(../img/cmgallery/episode_bg_top.png);
}
#cmgallery .cmgallery__section--episode::after {
  background-image: url(../img/cmgallery/episode_bg_bottom.png);
}
#cmgallery .cmgallery__section--episode .member-deco {
  background-image: url(../img/cmgallery/episode_bg_idol.png);
  z-index: 10;
  translate: 10vw 0%;
}
@media screen and (min-width: 1071px) {
  #cmgallery .cmgallery__section--episode .member-deco {
    width: clamp(11rem, -29.6940298507rem + 50.9950248756vw, 31.5rem);
    height: clamp(25rem, -61.152238806rem + 107.960199005vw, 68.4rem);
  }
}
@media screen and (max-width: 1070px) {
  #cmgallery .cmgallery__section--episode .member-deco {
    background-image: url(../img/cmgallery/episode_bg_idol_sp.png);
    translate: 0 0;
  }
}
#cmgallery .cmgallery__section--episode .episode__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(2.4rem, 0.8119402985rem + 1.9900497512vw, 3.2rem);
  position: relative;
  z-index: 15;
  width: min(83vw, 960px);
  margin-inline: auto;
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--episode .episode__list {
    gap: 6.4vw;
  }
}
#cmgallery .cmgallery__section--episode .episode__item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 414px 1fr;
  grid-template-columns: 414px 1fr;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--episode .episode__item {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
@media screen and (max-width: 1070px) {
  #cmgallery .cmgallery__section--episode .episode__item {
    gap: 0 1rem;
  }
}
#cmgallery .cmgallery__section--episode .episode__item-thumbnail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--episode .episode__item-thumbnail {
    width: 100%;
  }
}
#cmgallery .cmgallery__section--episode .episode__item-thumbnail img {
  width: 100%;
  height: auto;
}
#cmgallery .cmgallery__section--episode .episode__item-text {
  text-align: left;
  color: var(--color-text);
  padding: clamp(1.6rem, 0.4089552239rem + 1.4925373134vw, 2.2rem) clamp(1.8rem, 0.4104477612rem + 1.7412935323vw, 2.5rem);
  background-color: rgba(255, 255, 255, 0.8);
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--episode .episode__item-text {
    padding: 4.2666666667vw 4.8vw;
  }
}
#cmgallery .cmgallery__section--outfit_collection {
  --theme-color-text: var(--color-pink);
  --theme-color-bg: var(--color-bg-pink);
  --bg-img: url(../img/cmgallery/outfit_collection_bg.png);
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--outfit_collection {
    --bg-img: url(../img/cmgallery/outfit_collection_bg_sp.png);
  }
}
#cmgallery .cmgallery__section--outfit_collection::before {
  background-image: url(../img/cmgallery/outfit_collection_bg_top.png);
}
#cmgallery .cmgallery__section--outfit_collection::after {
  background-image: url(../img/cmgallery/outfit_collection_bg_bottom.png);
}
#cmgallery .cmgallery__section--outfit_collection {
  --sp-padding-size: 48vw;
}
#cmgallery .cmgallery__section--outfit_collection .member-deco {
  background-image: url(../img/cmgallery/outfit_collection_bg_idol.png);
  inset: -3% 0 auto -3%;
  margin-inline: auto 0;
  z-index: 15;
}
@media (min-width: 769px) {
  #cmgallery .cmgallery__section--outfit_collection .member-deco {
    width: clamp(30rem, 6.1791044776rem + 29.8507462687vw, 42rem);
    height: clamp(40rem, 13.7970149254rem + 32.8358208955vw, 53.2rem);
  }
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--outfit_collection .member-deco {
    inset: var(--sp-padding-size) 0 auto;
  }
}
@media screen and (max-width: 1070px) {
  #cmgallery .cmgallery__section--outfit_collection .member-deco {
    width: calc(100% - var(--content-padding));
    height: 93.3333333333vw;
    background-position: top center;
    inset: auto 0 auto;
    background-image: url(../img/cmgallery/outfit_collection_bg_idol_sp.png);
  }
}
@media screen and (max-width: 1070px) {
  #cmgallery .cmgallery__section--outfit_collection .outfit_collection__inner {
    margin-top: var(--sp-padding-size);
  }
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__images {
  position: relative;
  z-index: 20;
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__image {
  position: relative;
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__image + .outfit_collection__image {
  margin-top: clamp(2.2rem, 0.6119402985rem + 1.9900497512vw, 3rem);
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--outfit_collection .outfit_collection__image + .outfit_collection__image {
    margin-top: 5.8666666667vw;
  }
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--outfit_collection .outfit_collection__image {
    width: calc(100% + var(--content-padding) * 2);
    margin-left: calc(0px - var(--content-padding));
  }
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__image--roomwear .outfit_collection__button--aqua-rinomaru {
  top: 23.3%;
  left: 25%;
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__image--roomwear .outfit_collection__button--green-nachiko {
  top: 50.3%;
  left: 14%;
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__image--roomwear .outfit_collection__button--pink-bibichan {
  top: 27%;
  left: 57%;
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__image--roomwear .outfit_collection__button--orange-nattan {
  top: 48.8%;
  left: 67%;
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__image--roomwear .outfit_collection__button--red-kocchan {
  top: 61%;
  left: 33.8%;
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__image--roomwear .outfit_collection__button--purple-shichan {
  top: 80.7%;
  left: 9%;
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__image--roomwear .outfit_collection__button--blue-kirichan {
  top: 81.7%;
  left: 63%;
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__buttons {
  position: absolute;
  inset: 0;
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__button {
  color: var(--theme-color-text);
  position: absolute;
  top: 0;
  left: 0;
  width: 8.5333333333vw;
  height: 8.5333333333vw;
  border: 2px solid;
  border-radius: 50%;
  background-color: #fff;
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__button::before, #cmgallery .cmgallery__section--outfit_collection .outfit_collection__button::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 2px;
  height: 50%;
  background-color: var(--theme-color-text);
  margin: auto;
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__button::after {
  rotate: 90deg;
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__button--aqua-rinomaru {
  top: 25.5%;
  left: 7%;
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__button--green-nachiko {
  top: 47.5%;
  left: 23%;
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__button--pink-bibichan {
  top: 28%;
  left: 48%;
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__button--orange-nattan {
  top: 46.5%;
  left: 62%;
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__button--red-kocchan {
  top: 76%;
  left: 7%;
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__button--purple-shichan {
  top: 82%;
  left: 33.8%;
}
#cmgallery .cmgallery__section--outfit_collection .outfit_collection__button--blue-kirichan {
  top: 79%;
  left: 68%;
}
#cmgallery .cmgallery__section--profile {
  padding-bottom: clamp(8rem, -7.8805970149rem + 19.9004975124vw, 16rem);
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--profile {
    padding-bottom: 21.3333333333vw;
  }
  #cmgallery .cmgallery__section--profile .container {
    padding-bottom: 0;
  }
}
#cmgallery .cmgallery__section--profile .profile__title {
  font-weight: 700;
  font-size: clamp(2.8rem, 1.4104477612rem + 1.7412935323vw, 3.5rem);
  margin-top: clamp(2rem, 0.4119402985rem + 1.9900497512vw, 2.8rem);
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--profile .profile__title {
    margin-top: 5.3333333333vw;
  }
}
#cmgallery .cmgallery__section--profile .profile__description {
  margin-top: clamp(1.6rem, 0.8059701493rem + 0.9950248756vw, 2rem);
}
@media (max-width: 768px) {
  #cmgallery .cmgallery__section--profile .profile__description {
    margin-top: 4.2666666667vw;
  }
}
@media screen and (min-width: 1071px) {
  #cmgallery #cm .member-deco {
    width: min(18vw, 300px);
  }
}
@media screen and (max-width: 1070px) {
  #cmgallery #cm .member-deco {
    width: initial;
  }
}
@media screen and (min-width: 1071px) {
  #cmgallery #making .member-deco {
    width: min(22vw, 300px);
  }
}
@media screen and (max-width: 1070px) {
  #cmgallery #making .member-deco {
    width: initial;
  }
}
@media screen and (min-width: 1071px) {
  #cmgallery #special_interview .member-deco {
    width: min(24vw, 300px);
  }
}
@media screen and (max-width: 1070px) {
  #cmgallery #special_interview .member-deco {
    width: initial;
  }
}
#cmgallery .modal__close {
  --color-text: var(--color-pink);
  top: 0.5rem;
  right: 0.5rem;
}

#info section:not(.under-mainvisual) {
  padding-bottom: 0;
}
#info .info-list {
  --gap: clamp(1.6rem, 0.8059701493rem + 0.9950248756vw, 2rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: var(--gap);
}
@media (max-width: 768px) {
  #info .info-list {
    --gap: 4.2666666667vw;
  }
}
#info .info-list__item {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(25% - var(--gap) / 4 * 3);
          flex: 0 0 calc(25% - var(--gap) / 4 * 3);
}
@media (max-width: 768px) {
  #info .info-list__item {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(50% - var(--gap));
            flex: 0 0 calc(50% - var(--gap));
  }
}
#info .info-list__link {
  --img-size: clamp(8rem, -0.7343283582rem + 10.9452736318vw, 12.4rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #fff;
  border-radius: var(--border-radius);
  position: relative;
  padding-left: calc(var(--img-size) - clamp(1rem, -4.9552238806rem + 7.4626865672vw, 4rem));
  overflow: hidden;
}
@media (max-width: 768px) {
  #info .info-list__link {
    --img-size: 16vw;
  }
}
#info .info-list__link::after {
  content: "";
  position: absolute;
  width: var(--img-size);
  inset: clamp(0.6rem, -0.5910447761rem + 1.4925373134vw, 1.2rem) 0 0;
  margin-inline: 0 auto;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  background-position: bottom left;
  background-repeat: no-repeat;
  background-size: contain;
}
@media (max-width: 768px) {
  #info .info-list__link::before {
    opacity: 0;
  }
}
#info .info-list__link--pink {
  background-color: var(--color-cantun-pink);
}
#info .info-list__link--pink::before {
  background-image: url(../img/info/info_link_pink.png);
}
#info .info-list__link--pink::after {
  background-image: url(../img/info/info_link_pink_on.png);
}
#info .info-list__link--red {
  background-color: var(--color-cantun-red);
}
#info .info-list__link--red::before {
  background-image: url(../img/info/info_link_red.png);
}
@media (max-width: 768px) {
  #info .info-list__link--red::before {
    width: 17.3333333333vw;
  }
}
#info .info-list__link--red::after {
  background-image: url(../img/info/info_link_red_on.png);
}
#info .info-list__link--orange {
  background-color: var(--color-cantun-orange);
}
#info .info-list__link--orange::before {
  background-image: url(../img/info/info_link_orange.png);
}
#info .info-list__link--orange::after {
  background-image: url(../img/info/info_link_orange_on.png);
}
@media (max-width: 768px) {
  #info .info-list__link--orange::after {
    width: 17.3333333333vw;
  }
}
#info .info-list__link--green {
  background-color: var(--color-cantun-green);
}
#info .info-list__link--green::before {
  background-image: url(../img/info/info_link_green.png);
}
#info .info-list__link--green::after {
  background-image: url(../img/info/info_link_green_on.png);
}
#info .info-list__link--aqua {
  background-color: var(--color-cantun-aqua);
}
#info .info-list__link--aqua::before {
  background-image: url(../img/info/info_link_aqua.png);
}
#info .info-list__link--aqua::after {
  background-image: url(../img/info/info_link_aqua_on.png);
}
#info .info-list__link--blue {
  background-color: var(--color-cantun-blue);
}
#info .info-list__link--blue::before {
  background-image: url(../img/info/info_link_blue.png);
}
@media (max-width: 768px) {
  #info .info-list__link--blue::before {
    width: 17.3333333333vw;
  }
}
#info .info-list__link--blue::after {
  background-image: url(../img/info/info_link_blue_on.png);
}
#info .info-list__link--purple {
  background-color: var(--color-cantun-purple);
}
#info .info-list__link--purple::before {
  background-image: url(../img/info/info_link_purple.png);
}
@media (max-width: 768px) {
  #info .info-list__link--purple::before {
    width: 21.8666666667vw;
  }
}
#info .info-list__link--purple::after {
  background-image: url(../img/info/info_link_purple_on.png);
}
#info .info-list__link:hover {
  opacity: 1;
}
#info .info-list__link:hover .info-list__text::after {
  -webkit-animation: info-arrow-bganimation 0.45s var(--trd-timing) forwards;
          animation: info-arrow-bganimation 0.45s var(--trd-timing) forwards;
}
@-webkit-keyframes info-arrow-bganimation {
  0% {
    background-position: 60% 50%;
  }
  50% {
    background-position: 200% 50%;
  }
  51% {
    background-position: -50% 50%;
  }
  100% {
    background-position: 60% 50%;
  }
}
@keyframes info-arrow-bganimation {
  0% {
    background-position: 60% 50%;
  }
  50% {
    background-position: 200% 50%;
  }
  51% {
    background-position: -50% 50%;
  }
  100% {
    background-position: 60% 50%;
  }
}
#info .info-list__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(0.8rem, 0.4029850746rem + 0.4975124378vw, 1rem);
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
  padding: clamp(0.8rem, 0.4029850746rem + 0.4975124378vw, 1rem) clamp(1.6rem, 0.4089552239rem + 1.4925373134vw, 2.2rem);
  padding-left: 0;
}
@media (max-width: 768px) {
  #info .info-list__text {
    gap: 2.1333333333vw;
    padding: 3.2vw 4.2666666667vw;
  }
}
#info .info-list__text::after {
  content: "";
  width: clamp(1.6rem, 0.0119402985rem + 1.9900497512vw, 2.4rem);
  height: clamp(1.6rem, 0.0119402985rem + 1.9900497512vw, 2.4rem);
  border-radius: 50%;
  border: 1px solid;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10px' height='15px'><path fill-rule='evenodd' stroke='rgb(255,255,255)' stroke-width='1px' stroke-linecap='round' stroke-linejoin='round' fill='none' d='M2.651,3.861 L6.923,8.133 L2.651,12.405'/></svg>");
  background-repeat: no-repeat;
  background-position: 60% 50%;
  background-size: 55% auto;
}
@media (max-width: 768px) {
  #info .info-list__text::after {
    width: 4.2666666667vw;
    height: 4.2666666667vw;
  }
}
#info .info-list__description {
  margin-top: clamp(0.8rem, -0.3910447761rem + 1.4925373134vw, 1.4rem);
  -webkit-text-stroke: 2px #fff;
  paint-order: stroke;
}
@media (max-width: 768px) {
  #info .info-list__description {
    font-size: 2.9333333333vw;
    letter-spacing: -0.05em;
  }
}
#info .series .deco-frame {
  --deco-ds-size: clamp(0.3rem, -0.2955223881rem + 0.7462686567vw, 0.6rem);
  border-radius: clamp(1rem, -0.9850746269rem + 2.4875621891vw, 2rem);
  --frame-bg: #f1f9fe;
}
#info .series__list {
  --gap: clamp(1rem, 0.0074626866rem + 1.2437810945vw, 1.5rem);
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 2fr var(--gap) 1fr;
  grid-template-columns: 2fr 1fr;
  gap: var(--gap);
}
@media (max-width: 768px) {
  #info .series__list {
    --gap: 2.6666666667vw;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
#info .series__block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
#info .series__block-list {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
  --gap: clamp(1.6rem, 0.0119402985rem + 1.9900497512vw, 2.4rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--gap);
}
@media (max-width: 768px) {
  #info .series__block-list {
    gap: 2.6666666667vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#info .series__block-list-item {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#info .series__block-list-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(0.6rem, 0.2029850746rem + 0.4975124378vw, 0.8rem);
  padding: clamp(1.5rem, -1.4776119403rem + 3.7313432836vw, 3rem) clamp(1rem, 0.6029850746rem + 0.4975124378vw, 1.2rem);
}
@media (max-width: 768px) {
  #info .series__block-list-link {
    padding: 4vw 9.3333333333vw;
  }
  #info .series__block-list-link img {
    max-height: 29.3333333333vw;
  }
}