@charset "UTF-8";
/*
suffix
560px < landscape <= 768px < tablet <= 1024px < laptop <= 1366px < desktop
        mobile    <= 768px
*/
:root {
  --font-family-body:"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  --font-family-latin:"Century Gothic";
  --font-size-body:clamp(9.6px, 3.2vw, 32px);
  --line-height-body:1.875;
  --color-text-body:#000;
  --color-text-red:#E91C24;
  --color-primary:#8E7227;
  --color-black:#000;
  --color-twitter:#009FE8;
  --color-instagram:#8F278B;
  --color-bg-body:#eee;
  --color-border-grey:#808080;
  --color-bg-grey:#C8C8C8;
  --gutter:clamp(25px, 5vw, 50px);
  --header-height:clamp(69.6px, 23.2vw, 232px);
  --header-height--low:clamp(35.4px, 11.8vw, 118px);
  --menu-button-height: clamp(30px, 10vw, 100px) ;
  --menu-button-width: clamp(39px, 13vw, 130px) ;
  --container-slim:1070px;
  --container:1300px;
  --container-wide:1560px;
}
@media (min-width: 1000.02px) {
  :root {
    --font-size-body:clamp(12px, 1.5vw, 24px);
    --header-height:clamp(126.5px, 15.8125vw, 253px);
    --header-height--low:clamp(86.5px, 10.8125vw, 173px);
    --gutter:clamp(40px, 5vw, 80px);
  }
}

@font-face {
  font-weight: normal;
  src: url(../fonts/century-gothic-std.woff) format("woff");
  font-family: "Century Gothic";
}
@font-face {
  font-weight: bold;
  src: url(../fonts/century-gothic-std-bold.woff) format("woff");
  font-family: "Century Gothic";
}
/* RESET */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, hr {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  font-weight: normal;
  font-size: 100%;
  text-align: left;
  text-decoration: none;
  vertical-align: baseline;
}

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

html {
  overflow-y: scroll;
}

blockquote, q {
  quotes: none;
}

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

input, button, textarea, select {
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
}

select::-ms-expand {
  display: none;
}

ol, ul {
  list-style: none;
}

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

caption, th {
  text-align: left;
}

a:focus {
  outline: none;
}

a, span, small, strong, em {
  color: inherit;
  font-weight: inherit;
}

/**
 * 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-style: normal;
  font-weight: 400;
  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-family: swiper-icons;
}
:root {
  --swiper-theme-color:#007aff;
}

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

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

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

.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;
  -webkit-transition-property: -webkit-transform;
  -o-transition-property: transform;
  position: relative;
      flex-shrink: 0;
  width: 100%;
  height: 100%;
  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;
  -webkit-transition-property: height, -webkit-transform;
  -o-transition-property: transform, height;
          align-items: flex-start;
  transition-property: height, -webkit-transform;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform;
}

.swiper-backface-hidden .swiper-slide {
  -webkit-transform: translateZ(0);
  -webkit-backface-visibility: hidden;
          transform: translateZ(0);
  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 {
  z-index: 10;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

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

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

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

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

.swiper-css-mode > .swiper-wrapper {
  -ms-overflow-style: none;
  overflow: auto;
  scrollbar-width: 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 {
  -ms-flex-negative: 0;
  -webkit-box-ordinal-group: 10000;
      -ms-flex-order: 9999;
      flex-shrink: 0;
          order: 9999;
  content: "";
}

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

.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 {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  pointer-events: none;
}

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

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

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

.swiper-button-next.swiper-button-hidden, .swiper-button-prev.swiper-button-hidden {
  cursor: auto;
  opacity: 0;
  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-variant: initial;
  font-size: var(--swiper-navigation-size);
  line-height: 1;
  font-family: swiper-icons;
  letter-spacing: 0;
  text-transform: none !important;
}

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

.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 {
  -webkit-transition: 0.3s opacity;
  -o-transition: 0.3s opacity;
  -webkit-transform: translate3d(0, 0, 0);
  z-index: 10;
  position: absolute;
          transform: translate3d(0, 0, 0);
  text-align: center;
  transition: 0.3s opacity;
}

.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);
      -ms-transform: scale(0.33);
  position: relative;
          transform: scale(0.33);
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.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 {
  -webkit-transition: 0.2s top, 0.2s -webkit-transform;
  -o-transition: 0.2s transform, 0.2s top;
  display: inline-block;
  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 {
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
  left: 50%;
          transform: translateX(-50%);
  white-space: nowrap;
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: 0.2s left, 0.2s -webkit-transform;
  -o-transition: 0.2s transform, 0.2s left;
  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;
  -o-transition: 0.2s transform, 0.2s right;
  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 {
  position: absolute;
  background: rgba(0, 0, 0, 0.25);
}

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

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

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

.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 {
  top: 0;
  left: 0;
  width: 4px;
  height: 100%;
}

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

.swiper-scrollbar {
  -ms-touch-action: none;
  position: relative;
  border-radius: 10px;
  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 {
  z-index: 50;
  position: absolute;
  bottom: 3px;
  left: 1%;
  width: 98%;
  height: 5px;
}

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

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

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

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

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

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

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

.swiper-lazy-preloader {
  -webkit-transform-origin: 50%;
      -ms-transform-origin: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 10;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 42px;
  height: 42px;
  margin-top: -21px;
  margin-left: -21px;
          transform-origin: 50%;
  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 {
  z-index: -1000;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  pointer-events: none;
}

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

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

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

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

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

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

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

.swiper-cube {
  overflow: visible;
}

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

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

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

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

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

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

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

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

.swiper-flip {
  overflow: visible;
}

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

.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 {
  -webkit-backface-visibility: hidden;
  z-index: 0;
  backface-visibility: hidden;
}

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

.swiper-cards {
  overflow: visible;
}

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

html {
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -ms-overflow-style: none;
  font-size: 0.625em;
  scrollbar-width: none;
}
html::-webkit-scrollbar {
  display: none;
}

body {
  background-color: var(--color-bg-body);
  color: var(--color-text-body);
  font: var(--font-size-body)/var(--line-height-body) var(--font-family-body);
}

input, select, option, textarea, button {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: var(--color-text-body);
  font: var(--font-size-body)/var(--line-height-body) var(--font-family-body);
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  image-rendering: smooth;
}

* {
  -webkit-box-sizing: border-box;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
          box-sizing: border-box;
}
*:after, *:before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*[role=button], *[type=button], label {
  cursor: pointer;
}

my-icon {
  display: block;
}

.color-red {
  color: var(--color-text-red);
}

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

.form-flex {
  -ms-flex-wrap: wrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
  gap: 1em;
}

.form-checkbox {
  -webkit-box-align: center;
      -ms-flex-align: center;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
          align-items: center;
  gap: 0.2em;
  cursor: pointer;
}
.form-checkbox__input {
  display: none;
}
.form-checkbox__icon::before {
  content: "☐";
}
.form-checkbox__input:checked + .form-checkbox__icon::before {
  content: "☑";
}

.form-radio {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  cursor: pointer;
}
.form-radio__input {
  display: none;
}
.form-radio__icon::before {
  content: "◯";
}
.form-radio__input:checked + .form-radio__icon::before {
  content: "◉";
}

.form-input {
  width: 100%;
  padding: 0.3em 0.5em;
  border: 1px solid #000;
  background-color: #fff;
}

.form-textarea {
  width: 100%;
  height: clamp(90px, 30vw, 300px);
  padding: 0.3em 0.5em;
  border: 1px solid #000;
  background-color: #fff;
}

.form-namebox {
  -webkit-box-align: center;
      -ms-flex-align: center;
  -ms-flex-wrap: wrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
          align-items: center;
}
.form-namebox__text {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 2.5em;
          flex: 0 0 2.5em;
  padding-right: 0.5em;
  text-align: right;
}
.form-namebox__input {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(100% - 2.5em);
          flex: 0 0 calc(100% - 2.5em);
}
@media (min-width: 1000.02px) {
  .form-namebox {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
  .form-namebox__input {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(50% - 2.5em);
            flex: 0 0 calc(50% - 2.5em);
  }
}
@media (max-width: 1000px) {
  .form-namebox {
    gap: 1em 0;
  }
}

.form-mailbox {
  -webkit-box-align: center;
      -ms-flex-align: center;
  -ms-flex-wrap: wrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
          align-items: center;
}
.form-mailbox__input {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
}
.form-mailbox__at {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 2em;
          flex: 0 0 2em;
  text-align: center;
}
.form-mailbox__domain {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(100% - 2em);
          flex: 0 0 calc(100% - 2em);
}
@media (min-width: 1000.02px) {
  .form-mailbox {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
  .form-mailbox__input, .form-mailbox__domain {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(50% - 1em);
            flex: 0 0 calc(50% - 1em);
  }
}
@media (max-width: 1000px) {
  .form-mailbox {
    gap: 1em 0;
  }
}

.display-block {
  display: block;
}

.display-inline {
  display: inline;
}

.display-inline-block {
  display: inline-block;
}

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

.display-inline-flex {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.display-grid {
  display: -ms-grid;
  display: grid;
}

.display-inline-grid {
  display: -ms-inline-grid;
  display: inline-grid;
}

.font-weight-normal {
  font-weight: normal;
}

.font-weight-bold {
  font-weight: bold;
}

.font-weight-lighter {
  font-weight: lighter;
}

.font-weight-bolder {
  font-weight: bolder;
}

.font-weight-100 {
  font-weight: 100;
}

.font-weight-200 {
  font-weight: 200;
}

.font-weight-300 {
  font-weight: 300;
}

.font-weight-400 {
  font-weight: 400;
}

.font-weight-500 {
  font-weight: 500;
}

.font-weight-600 {
  font-weight: 600;
}

.font-weight-700 {
  font-weight: 700;
}

.font-weight-800 {
  font-weight: 800;
}

.font-weight-900 {
  font-weight: 900;
}

.hidden {
  display: none;
}

@media (min-width: 560.02px) {
  .hidden--landscape-up {
    display: none;
  }
}
@media (min-width: 768.02px) {
  .hidden--tablet-up {
    display: none;
  }
}
@media (min-width: 1000.02px) {
  .hidden--laptop-up {
    display: none;
  }
}
@media (min-width: 1366.02px) {
  .hidden--desktop-up {
    display: none;
  }
}
@media (max-width: 560px) {
  .hidden--landscape-down {
    display: none;
  }
}
@media (max-width: 768px) {
  .hidden--tablet-down {
    display: none;
  }
}
@media (max-width: 1000px) {
  .hidden--laptop-down {
    display: none;
  }
}
@media (max-width: 1366px) {
  .hidden--desktop-down {
    display: none;
  }
}
@media (min-width: 1000.02px) {
  .hidden--pc {
    display: none;
  }
}
@media (max-width: 1000px) {
  .hidden--mobile {
    display: none;
  }
}
@media (hover: hover) {
  .hover-alpha {
    -webkit-transition: 0.3s opacity ease-in-out;
    -o-transition: 0.3s opacity ease-in-out;
    transition: 0.3s opacity ease-in-out;
  }
  .hover-alpha:hover {
    opacity: 0.6;
  }
}

.hover-underline:hover {
  text-decoration: none;
}

.indent-1em {
  text-indent: 1em;
}

.outdent-1em {
  padding-left: 1em;
  text-indent: -1em;
}

.indent-2em {
  text-indent: 2em;
}

.outdent-2em {
  padding-left: 2em;
  text-indent: -2em;
}

.indent-3em {
  text-indent: 3em;
}

.outdent-3em {
  padding-left: 3em;
  text-indent: -3em;
}

.indent-4em {
  text-indent: 4em;
}

.outdent-4em {
  padding-left: 4em;
  text-indent: -4em;
}

.line-height-0 {
  line-height: 0;
}

.line-height-0\.1 {
  line-height: 0.1;
}

.line-height-0\.2 {
  line-height: 0.2;
}

.line-height-0\.3 {
  line-height: 0.4;
}

.line-height-0\.4 {
  line-height: 0.4;
}

.line-height-0\.5 {
  line-height: 0.5;
}

.line-height-0\.6 {
  line-height: 0.6;
}

.line-height-0\.7 {
  line-height: 0.7;
}

.line-height-0\.8 {
  line-height: 0.8;
}

.line-height-0\.9 {
  line-height: 0.9;
}

.line-height-1 {
  line-height: 1;
}

.line-height-1\.1 {
  line-height: 1.1;
}

.line-height-1\.2 {
  line-height: 1.2;
}

.line-height-1\.3 {
  line-height: 1.4;
}

.line-height-1\.4 {
  line-height: 1.4;
}

.line-height-1\.5 {
  line-height: 1.5;
}

.line-height-1\.6 {
  line-height: 1.6;
}

.line-height-1\.7 {
  line-height: 1.7;
}

.line-height-1\.8 {
  line-height: 1.8;
}

.line-height-1\.9 {
  line-height: 1.9;
}

.line-height-2 {
  line-height: 2;
}

.line-height-2\.1 {
  line-height: 2.1;
}

.line-height-2\.2 {
  line-height: 2.2;
}

.line-height-2\.3 {
  line-height: 2.4;
}

.line-height-2\.4 {
  line-height: 2.4;
}

.line-height-2\.5 {
  line-height: 2.5;
}

.line-height-2\.6 {
  line-height: 2.6;
}

.line-height-2\.7 {
  line-height: 2.7;
}

.line-height-2\.8 {
  line-height: 2.8;
}

.line-height-2\.9 {
  line-height: 2.9;
}

.line-height-3 {
  line-height: 3;
}

.line-height-3\.1 {
  line-height: 3.1;
}

.line-height-3\.2 {
  line-height: 3.2;
}

.line-height-3\.3 {
  line-height: 3.4;
}

.line-height-3\.4 {
  line-height: 3.4;
}

.line-height-3\.5 {
  line-height: 3.5;
}

.line-height-3\.6 {
  line-height: 3.6;
}

.line-height-3\.7 {
  line-height: 3.7;
}

.line-height-3\.8 {
  line-height: 3.8;
}

.line-height-3\.9 {
  line-height: 3.9;
}

.mb-1em {
  margin-bottom: 1em;
}

.mg-x-auto {
  margin-right: auto;
  margin-left: auto;
}

.pl-1em {
  padding-left: 1em;
}

[class*=object-fit] {
  width: 100%;
  max-width: none;
  height: 100%;
}

.object-fit-cover {
  -o-object-fit: cover;
     object-fit: cover;
}

.object-fit-contain {
  -o-object-fit: contain;
     object-fit: contain;
}

.object-fit-fill {
  -o-object-fit: fill;
     object-fit: fill;
}

.object-fit-none {
  -o-object-fit: none;
     object-fit: none;
}

.object-fit-scale-down {
  -o-object-fit: scale-down;
     object-fit: scale-down;
}

.object-position-left {
  -o-object-position: left;
     object-position: left;
}

.object-position-right {
  -o-object-position: right;
     object-position: right;
}

.object-position-center {
  -o-object-position: center;
     object-position: center;
}

.object-position-top {
  -o-object-position: top;
     object-position: top;
}

.object-position-bottom {
  -o-object-position: bottom;
     object-position: bottom;
}

.object-position-center {
  -o-object-position: center;
     object-position: center;
}

.object-position-left-top {
  -o-object-position: left top;
     object-position: left top;
}

.object-position-left-bottom {
  -o-object-position: left bottom;
     object-position: left bottom;
}

.object-position-left-center {
  -o-object-position: left center;
     object-position: left center;
}

.object-position-right-top {
  -o-object-position: right top;
     object-position: right top;
}

.object-position-right-bottom {
  -o-object-position: right bottom;
     object-position: right bottom;
}

.object-position-right-center {
  -o-object-position: right center;
     object-position: right center;
}

.object-position-center-top {
  -o-object-position: center top;
     object-position: center top;
}

.object-position-center-bottom {
  -o-object-position: center bottom;
     object-position: center bottom;
}

.object-position-center-center {
  -o-object-position: center center;
     object-position: center center;
}

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

.text-align-left {
  text-align: left;
}

.text-align-right {
  text-align: right;
}

.text-align-justify {
  text-align: justify;
}

.js-scroll-fadeltr-child > * {
  -webkit-transform: translateX(-40px);
      -ms-transform: translateX(-40px);
  -webkit-transition-duration: 0.7s;
       -o-transition-duration: 0.7s;
  -webkit-transition-property: opacity, -webkit-transform;
  -o-transition-property: opacity, transform;
  -webkit-transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
       -o-transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
          transform: translateX(-40px);
  opacity: 0;
          transition-duration: 0.7s;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
          transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}
.js-scroll-fadeltr-child.is-inview > * {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  opacity: 1;
}

.js-scroll-fadeltr {
  -webkit-transform: translateX(-40px);
      -ms-transform: translateX(-40px);
  -webkit-transition-duration: 0.7s;
       -o-transition-duration: 0.7s;
  -webkit-transition-property: opacity, -webkit-transform;
  -o-transition-property: opacity, transform;
  -webkit-transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
       -o-transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
          transform: translateX(-40px);
  opacity: 0;
          transition-duration: 0.7s;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
          transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}
.js-scroll-fadeltr.is-inview {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  opacity: 1;
}

.js-scroll-fadertl {
  -webkit-transform: translateX(20px);
      -ms-transform: translateX(20px);
  -webkit-transition-duration: 0.7s;
       -o-transition-duration: 0.7s;
  -webkit-transition-property: opacity, -webkit-transform;
  -o-transition-property: opacity, transform;
  -webkit-transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
       -o-transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
          transform: translateX(20px);
  opacity: 0;
          transition-duration: 0.7s;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
          transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}
.js-scroll-fadertl.is-inview {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  opacity: 1;
}

.js-scroll-fadebtt {
  -webkit-transform: translateY(40px);
      -ms-transform: translateY(40px);
  -webkit-transition-duration: 0.7s;
       -o-transition-duration: 0.7s;
  -webkit-transition-property: opacity, -webkit-transform;
  -o-transition-property: opacity, transform;
  -webkit-transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
       -o-transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
          transform: translateY(40px);
  opacity: 0;
          transition-duration: 0.7s;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
          transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}
.js-scroll-fadebtt.is-inview {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

.js-scroll-title {
  -webkit-transform: translate(0.5em, 0) skewX(5deg) scaleX(0.9);
      -ms-transform: translate(0.5em, 0) skewX(5deg) scaleX(0.9);
  -webkit-transform-origin: right;
      -ms-transform-origin: right;
  -webkit-transition-duration: 1.5s;
       -o-transition-duration: 1.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  -o-transition-property: opacity, transform;
  -webkit-transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
       -o-transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
          transform: translate(0.5em, 0) skewX(5deg) scaleX(0.9);
          transform-origin: right;
  opacity: 0;
          transition-duration: 1.5s;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
          transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}
.js-scroll-title.is-inview {
  -webkit-transform: translate(0, 0) skewX(0deg) scale(1);
      -ms-transform: translate(0, 0) skewX(0deg) scale(1);
          transform: translate(0, 0) skewX(0deg) scale(1);
  opacity: 1;
}

.js-scroll-curtain > * {
  -webkit-clip-path: inset(0% 100% 0% 0%);
  -webkit-transition: 1s -webkit-clip-path ease-in-out;
  -o-transition: 1s clip-path ease-in-out;
          clip-path: inset(0% 100% 0% 0%);
  transition: 1s -webkit-clip-path ease-in-out;
  transition: 1s clip-path ease-in-out;
  transition: 1s clip-path ease-in-out, 1s -webkit-clip-path ease-in-out;
}
.js-scroll-curtain.is-inview > * {
  -webkit-clip-path: inset(0 0% 0 0);
          clip-path: inset(0 0% 0 0);
}

.wrapper {
  -webkit-transition: 0.3s padding-top ease-in-out;
  -o-transition: 0.3s padding-top ease-in-out;
  width: 100%;
  padding-top: var(--menu-button-height);
  overflow: hidden;
  transition: 0.3s padding-top ease-in-out;
}
.wrapper--lower {
  padding-top: var(--header-height--low);
  background-color: #eee;
}
.wrapper.is-open {
  position: fixed;
  left: 0;
}
@media (min-width: 1000.02px) {
  .wrapper {
    padding-top: 0;
  }
  .wrapper--lower {
    padding-top: var(--header-height--low);
  }
}

.container {
  --full:1fr;
  --content: clamp( 0% ,
            calc( 50vw - var(--container-slim) * 0.5 - var(--gutter) ) ,
            calc( var(--container) * 0.5 - var(--container-slim) * 0.5 ) );
  --slim: min(calc(100% - var(--gutter)*2), var(--container-slim));
  --popout: var(--gutter);
  -ms-grid-columns: [full-start] var(--full) [popout-start] var(--popout) [content-start] var(--content) [slim-start] var(--slim) [slim-end] var(--content) [content-end] var(--popout) [popout-end] var(--full) [full-end];
  display: -ms-grid;
  display: grid;
  grid-template-columns: [full-start] var(--full) [popout-start] var(--popout) [content-start] var(--content) [slim-start] var(--slim) [slim-end] var(--content) [content-end] var(--popout) [popout-end] var(--full) [full-end];
  grid-auto-rows: -webkit-min-content;
  grid-auto-rows: min-content;
}
.container > * {
  grid-column: content;
}

.section__full {
  grid-column: full;
}
.section__feature {
  grid-column: full;
  padding: 0 var(--gutter);
}
.section__popout {
  grid-column: popout;
}
.section__slim {
  grid-column: slim;
}

.button-instagram {
  display: inline-block;
}
@media (hover: hover) {
  .button-instagram {
    -webkit-transition: 0.3s opacity ease-in-out;
    -o-transition: 0.3s opacity ease-in-out;
    transition: 0.3s opacity ease-in-out;
  }
  .button-instagram:hover {
    opacity: 0.6;
  }
}
.button-instagram .fillPath {
  fill: #fff;
}

.button-twitter {
  display: inline-block;
}
@media (hover: hover) {
  .button-twitter {
    -webkit-transition: 0.3s opacity ease-in-out;
    -o-transition: 0.3s opacity ease-in-out;
    transition: 0.3s opacity ease-in-out;
  }
  .button-twitter:hover {
    opacity: 0.6;
  }
}
.button-twitter .fillPath {
  fill: #fff;
}

.button-menutoggle {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
}
.button-menutoggle__bar1st, .button-menutoggle__bar2nd {
  -webkit-transition-duration: 0.3s;
       -o-transition-duration: 0.3s;
  -webkit-transition-property: left, right top, bottom, -webkit-transform;
  -o-transition-property: transform, left, right top, bottom;
  position: absolute;
  background-color: #fff;
          transition-duration: 0.3s;
  transition-property: left, right top, bottom, -webkit-transform;
  transition-property: transform, left, right top, bottom;
  transition-property: transform, left, right top, bottom, -webkit-transform;
}
.button-menutoggle > i {
  width: 43%;
  height: clamp(1.5px, 0.3vw, 3px);
}
@media (min-width: 1000.02px) {
  .button-menutoggle {
    width: clamp(6.5px, 0.8125vw, 13px);
    height: clamp(28px, 3.5vw, 56px);
  }
  .button-menutoggle > i {
    top: 0;
    width: clamp(1px, 0.1875vw, 3px);
    height: 100%;
  }
  .button-menutoggle__bar1st {
    left: 0;
  }
  .button-menutoggle__bar2nd {
    right: 0;
  }
}
@media (max-width: 1000px) {
  .button-menutoggle > i {
    left: 28.5%;
  }
  .button-menutoggle__bar1st {
    top: 47%;
  }
  .button-menutoggle__bar2nd {
    top: 57%;
  }
}

@media (min-width: 1000.02px) {
  .wrapper.is-open .button-menutoggle__bar1st {
    -webkit-transform: translateX(-50%) rotate(30deg);
        -ms-transform: translateX(-50%) rotate(30deg);
    left: 50%;
            transform: translateX(-50%) rotate(30deg);
  }
  .wrapper.is-open .button-menutoggle__bar2nd {
    -webkit-transform: translateX(50%) rotate(-30deg);
        -ms-transform: translateX(50%) rotate(-30deg);
    right: 50%;
            transform: translateX(50%) rotate(-30deg);
  }
}
@media (max-width: 1000px) {
  .wrapper.is-open .button-menutoggle__bar1st {
    -webkit-transform: translateY(-50%) rotate(30deg);
        -ms-transform: translateY(-50%) rotate(30deg);
    top: 50%;
            transform: translateY(-50%) rotate(30deg);
  }
  .wrapper.is-open .button-menutoggle__bar2nd {
    -webkit-transform: translateY(50%) rotate(-30deg);
        -ms-transform: translateY(50%) rotate(-30deg);
    top: 50%;
            transform: translateY(50%) rotate(-30deg);
  }
}

.button-regular {
  -webkit-box-align: center;
      -ms-flex-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          align-items: center;
          justify-content: center;
  width: clamp(179.4px, 59.8vw, 598px);
  height: clamp(39px, 13vw, 130px);
  border-radius: clamp(19.5px, 6.5vw, 65px);
  background-color: var(--color-primary);
  color: #fff;
  font-weight: bold;
  font-size: clamp(13.5px, 4.5vw, 45px);
  line-height: 1;
  font-family: var(--font-family-latin);
}
@media (hover: hover) {
  .button-regular {
    -webkit-transition: 0.3s background-color ease-in-out;
    -o-transition: 0.3s background-color ease-in-out;
    transition: 0.3s background-color ease-in-out;
  }
  .button-regular:hover {
    background-color: var(--color-black);
  }
}
@media (min-width: 1000.02px) {
  .button-regular {
    width: clamp(230px, 28.75vw, 460px);
    height: clamp(50px, 6.25vw, 100px);
    border-radius: clamp(25px, 3.125vw, 50px);
    font-size: clamp(17.5px, 2.1875vw, 35px);
  }
}

.button-arrow {
  -webkit-box-align: center;
      -ms-flex-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
          align-items: center;
          justify-content: center;
  width: clamp(195px, 65vw, 650px);
  height: clamp(39px, 13vw, 130px);
  background-color: var(--color-primary);
}
@media (hover: hover) {
  .button-arrow {
    -webkit-transition: 0.3s background-color ease-in-out;
    -o-transition: 0.3s background-color ease-in-out;
    transition: 0.3s background-color ease-in-out;
  }
  .button-arrow:hover {
    background-color: var(--color-black);
  }
}
.button-arrow__text {
  color: #fff;
  font-weight: normal;
  font-size: clamp(10.92px, 3.64vw, 36.4px);
}
.button-arrow__arrow {
  position: absolute;
  right: clamp(9px, 3vw, 30px);
  width: clamp(19.2px, 6.4vw, 64px);
  line-height: 1;
}
.button-arrow__arrow .fillPath {
  fill: #fff;
}
@media (min-width: 1000.02px) {
  .button-arrow {
    width: clamp(250px, 31.25vw, 500px);
    height: clamp(50px, 6.25vw, 100px);
  }
  .button-arrow__text {
    font-size: clamp(14px, 1.75vw, 28px);
  }
  .button-arrow__arrow {
    right: clamp(14px, 1.75vw, 28px);
    width: clamp(40px, 5vw, 80px);
  }
}

.footer-menu {
  -webkit-box-align: center;
      -ms-flex-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          align-items: center;
          justify-content: center;
  gap: 0 clamp(20.4px, 6.8vw, 68px);
}
.footer-menu__link {
  font-weight: bold;
  font-size: clamp(9.6px, 3.2vw, 32px);
  font-family: var(--font-family-latin);
}
@media (hover: hover) {
  .footer-menu__link {
    -webkit-transition: 0.3s color ease-in-out;
    -o-transition: 0.3s color ease-in-out;
    transition: 0.3s color ease-in-out;
  }
  .footer-menu__link:hover {
    color: var(--color-primary);
  }
}
.footer-menu__link-small {
  font-size: clamp(8.4px, 2.8vw, 28px);
  font-family: var(--font-family-latin);
}
@media (hover: hover) {
  .footer-menu__link-small {
    -webkit-transition: 0.3s color ease-in-out;
    -o-transition: 0.3s color ease-in-out;
    transition: 0.3s color ease-in-out;
  }
  .footer-menu__link-small:hover {
    color: var(--color-primary);
  }
}
@media (min-width: 1000.02px) {
  .footer-menu {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    gap: 32px;
  }
  .footer-menu__link {
    font-size: clamp(9px, 1.125vw, 18px);
  }
  .footer-menu__link-small {
    font-size: clamp(8px, 1vw, 16px);
  }
}

@media (hover: hover) {
  .link-image {
    -webkit-transition: 0.3s opacity ease-in-out;
    -o-transition: 0.3s opacity ease-in-out;
    transition: 0.3s opacity ease-in-out;
  }
  .link-image:hover {
    opacity: 0.6;
  }
}

.linklist-nav {
  display: -ms-grid;
  display: grid;
  gap: clamp(9px, 3vw, 30px);
}
.linklist-nav__item {
  text-align: center;
}
.linklist-nav__link {
  color: var(--color-primary);
  font-weight: bold;
  font-size: clamp(10.8px, 3.6vw, 36px);
  font-family: var(--font-family-latin);
}
@media (hover: hover) {
  .linklist-nav__link {
    -webkit-transition: 0.3s color ease-in-out;
    -o-transition: 0.3s color ease-in-out;
    transition: 0.3s color ease-in-out;
  }
  .linklist-nav__link:hover {
    color: #fff;
  }
}
@media (min-width: 1000.02px) {
  .linklist-nav {
    gap: clamp(15px, 1.875vw, 30px);
  }
  .linklist-nav__link {
    font-size: clamp(14px, 1.75vw, 28px);
  }
}

.nav {
  -webkit-box-align: center;
      -ms-flex-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  -webkit-transform: translateY(-10%);
      -ms-transform: translateY(-10%);
  -webkit-transition: 0.3s opacity ease-in-out, 0s visibility 0.3s linear, 0.3s -webkit-transform ease-in-out;
  -o-transition: 0.3s opacity ease-in-out, 0.3s transform ease-in-out, 0s visibility 0.3s linear;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  visibility: hidden;
  z-index: 99;
  position: fixed;
  top: 0;
  left: 0;
          align-items: center;
          justify-content: center;
  width: 100%;
  height: 100dvh;
          transform: translateY(-10%);
  background-color: var(--color-primary);
  opacity: 0;
  transition: 0.3s opacity ease-in-out, 0s visibility 0.3s linear, 0.3s -webkit-transform ease-in-out;
  transition: 0.3s opacity ease-in-out, 0.3s transform ease-in-out, 0s visibility 0.3s linear;
  transition: 0.3s opacity ease-in-out, 0.3s transform ease-in-out, 0s visibility 0.3s linear, 0.3s -webkit-transform ease-in-out;
}
.nav::before {
  -webkit-clip-path: polygon(0% calc(var(--menu-button-height) + var(--menu-button-width)), calc(100% - var(--menu-button-width)) var(--menu-button-height), 100% var(--menu-button-height), 100% 90%, 20% 100%, 0% 100%);
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-black);
  content: "";
          clip-path: polygon(0% calc(var(--menu-button-height) + var(--menu-button-width)), calc(100% - var(--menu-button-width)) var(--menu-button-height), 100% var(--menu-button-height), 100% 90%, 20% 100%, 0% 100%);
}
.nav__container {
  z-index: 2;
  position: relative;
}
.nav__title {
  position: relative;
  margin: 0 0 clamp(24px, 8vw, 80px);
  color: #fff;
  font-weight: bold;
  font-size: clamp(15px, 5vw, 50px);
  font-family: var(--font-family-latin);
  text-align: center;
}
.nav__title::before {
  position: absolute;
  bottom: 0;
  left: calc( 50% - clamp(12px, 4vw, 40px));
  width: clamp(24px, 8vw, 80px);
  height: 3px;
  background-color: #fff;
  content: "";
}
@media (min-width: 1000.02px) {
  .nav {
    -webkit-transform: translateX(10%);
        -ms-transform: translateX(10%);
            transform: translateX(10%);
  }
  .nav::before {
    -webkit-clip-path: polygon(0% 27.204301075%, 87.239583333% 0%, 100% 0%, 100% 74.516129032%, 48.4375% 100%, 0% 100%);
            clip-path: polygon(0% 27.204301075%, 87.239583333% 0%, 100% 0%, 100% 74.516129032%, 48.4375% 100%, 0% 100%);
  }
  .nav__title {
    margin: 0 0 clamp(35px, 4.375vw, 70px);
    font-size: clamp(17.5px, 2.1875vw, 35px);
  }
  .nav__title::before {
    left: calc( 50% - clamp(40px, 5vw, 80px));
    width: clamp(80px, 10vw, 160px);
    height: 5px;
  }
}

.wrapper.is-open .nav {
  -webkit-transition: 0.3s opacity ease-in-out, 0s visibility 0s linear, 0.3s -webkit-transform ease-in-out;
  -o-transition: 0.3s opacity ease-in-out, 0.3s transform ease-in-out, 0s visibility 0s linear;
  visibility: visible;
  opacity: 1;
  transition: 0.3s opacity ease-in-out, 0s visibility 0s linear, 0.3s -webkit-transform ease-in-out;
  transition: 0.3s opacity ease-in-out, 0.3s transform ease-in-out, 0s visibility 0s linear;
  transition: 0.3s opacity ease-in-out, 0.3s transform ease-in-out, 0s visibility 0s linear, 0.3s -webkit-transform ease-in-out;
}

@media (min-width: 1000.02px) {
  .wrapper.is-open .nav {
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0);
  }
}
@media (max-width: 1000px) {
  .wrapper.is-open .nav {
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
}
.side-navigation {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 100;
  position: fixed;
  top: 0;
  right: 0;
          align-items: center;
          justify-content: center;
  width: var(--menu-button-width);
  height: var(--menu-button-height);
  background-color: var(--color-primary);
}
.side-navigation__sns {
  display: none;
}
.side-navigation__snsitem {
  line-height: 1;
}
@media (min-width: 1000.02px) {
  .side-navigation {
    width: clamp(35px, 4.375vw, 70px);
    height: 100dvh;
  }
  .side-navigation__sns {
    display: -ms-grid;
    display: grid;
    position: absolute;
    bottom: 3.5%;
    left: 0;
    width: 100%;
    gap: clamp(13.5px, 1.6875vw, 27px) 0;
  }
  .side-navigation__snsitem {
    text-align: center;
  }
  .side-navigation__snsitem .button-instagram {
    width: clamp(15px, 1.875vw, 30px);
  }
  .side-navigation__snsitem .button-twitter {
    width: clamp(17px, 2.125vw, 34px);
  }
}
@media (max-width: 1000px) {
  .side-navigation__button {
    width: 100%;
    height: 100%;
  }
}

.site-header {
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% var(--menu-button-height), calc(100% - var(--menu-button-width)) var(--menu-button-height), 0% 100%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 99;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: var(--header-height);
  padding: clamp(14.1px, 4.7vw, 47px) var(--gutter) 0;
  background-color: #fff;
          clip-path: polygon(0% 0%, 100% 0%, 100% var(--menu-button-height), calc(100% - var(--menu-button-width)) var(--menu-button-height), 0% 100%);
}
.site-header__logo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 clamp(103.2px, 34.4vw, 344px);
          flex: 0 0 clamp(103.2px, 34.4vw, 344px);
}
@media (min-width: 1000.02px) {
  .site-header {
    -webkit-clip-path: polygon(0% 0%, 0% 100%, 87.239583333% 0%);
    position: absolute;
    padding: clamp(24.5px, 3.0625vw, 49px) 0 0 clamp(21.5px, 2.6875vw, 43px);
            clip-path: polygon(0% 0%, 0% 100%, 87.239583333% 0%);
  }
  .site-header__logo {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 clamp(172px, 21.5vw, 344px);
            flex: 0 0 clamp(172px, 21.5vw, 344px);
  }
}

.wrapper--lower .site-header {
  -webkit-clip-path: none;
  height: var(--header-height--low);
  background-color: #eee;
          clip-path: none;
}
.wrapper--lower .site-header::before {
  -webkit-clip-path: polygon(0% 100%, 79% 0%, 100% 0%);
  position: absolute;
  top: 0;
  left: clamp(70.8px, 23.6vw, 236px);
  width: clamp(188.7px, 62.9vw, 629px);
  height: 100%;
  background-color: #000;
  content: "";
          clip-path: polygon(0% 100%, 79% 0%, 100% 0%);
  pointer-events: none;
}
@media (min-width: 1000.02px) {
  .wrapper--lower .site-header::before {
    left: clamp(173px, 21.625vw, 346px);
    width: clamp(460px, 57.5vw, 920px);
  }
}
@media (max-width: 1000px) {
  .wrapper--lower .site-header {
    padding: clamp(9px, 3vw, 30px) clamp(7.5px, 2.5vw, 25px) 0;
  }
  .wrapper--lower .site-header__logo {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 clamp(73.5px, 24.5vw, 245px);
            flex: 0 0 clamp(73.5px, 24.5vw, 245px);
  }
}

.site-footer {
  z-index: 10;
  position: relative;
  padding: clamp(37.8px, 12.6vw, 126px) 0 clamp(7.2px, 2.4vw, 24px);
}
.site-footer::before {
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
  position: absolute;
  top: 0;
  left: 0;
  width: 18%;
  height: clamp(12.9px, 4.3vw, 43px);
  background-color: var(--color-primary);
  content: "";
          clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
}
.site-footer__copyright {
  margin: clamp(21.6px, 7.2vw, 72px) 0 0;
  font-weight: bold;
  font-size: clamp(6.3px, 2.1vw, 21px);
  font-family: var(--font-family-latin);
  text-align: center;
}
@media (min-width: 1000.02px) {
  .site-footer {
    padding: 0 0 clamp(22px, 2.75vw, 44px);
  }
  .site-footer::before {
    height: clamp(41.5px, 5.1875vw, 83px);
  }
  .site-footer__container {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
            justify-content: flex-end;
  }
  .site-footer__menu {
    margin: calc(-1*clamp(13px, 1.625vw, 26px)) clamp(18.5px, 2.3125vw, 37px) 0 0;
  }
  .site-footer__logo {
    -webkit-transform: translate(-2px, -50px);
        -ms-transform: translate(-2px, -50px);
    -webkit-box-flex: 0;
        -ms-flex: 0 0 clamp(172px, 21.5vw, 344px);
            flex: 0 0 clamp(172px, 21.5vw, 344px);
            transform: translate(-2px, -50px);
  }
  .site-footer__copyright {
    margin: clamp(29px, 3.625vw, 58px) 0 0;
    font-size: clamp(9px, 1.125vw, 18px);
  }
}
@media (max-width: 1000px) {
  .site-footer__logo {
    position: absolute;
    top: calc( -1* clamp(11.1px, 3.7vw, 37px) );
    right: var(--gutter);
    width: clamp(103.2px, 34.4vw, 344px);
  }
}

.title-t1 {
  position: relative;
  padding: 0 0 clamp(1.5px, 0.5vw, 5px);
  font-weight: 900;
  font-size: clamp(18.6px, 6.2vw, 62px);
  line-height: 1.2;
  font-family: var(--font-family-latin);
  text-align: center;
}
.title-t1::after {
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
  position: absolute;
  bottom: 0;
  left: 50%;
  width: clamp(87.6px, 29.2vw, 292px);
  height: clamp(2.7px, 0.9vw, 9px);
          transform: translateX(-50%);
  background-color: var(--color-primary);
  content: "";
}
@media (min-width: 1000.02px) {
  .title-t1 {
    padding: 0 0 clamp(2.5px, 0.3125vw, 5px);
    font-size: clamp(24px, 3vw, 48px);
  }
  .title-t1::after {
    width: clamp(112.5px, 14.0625vw, 225px);
    height: clamp(3.5px, 0.4375vw, 7px);
  }
}

.page-header {
  -webkit-box-align: center;
      -ms-flex-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
          align-items: center;
  height: clamp(102px, 34vw, 340px);
}
.page-header::before {
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
  position: absolute;
  top: 0;
  left: 0;
  width: clamp(70.8px, 23.6vw, 236px);
  height: clamp(16.8px, 5.6vw, 56px);
  background-color: var(--color-primary);
  content: "";
          clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
}
.page-header__text {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  padding: 0 var(--gutter);
  color: var(--color-primary);
}
.page-header__en {
  display: block;
  font-weight: 900;
  font-size: clamp(27px, 9vw, 90px);
  line-height: 1;
  font-family: var(--font-family-latin);
}
.page-header__ja {
  display: block;
  font-weight: bold;
  font-size: clamp(10.8px, 3.6vw, 36px);
  line-height: 1;
}
@media (min-width: 1000.02px) {
  .page-header {
    height: clamp(208px, 26vw, 416px);
    margin: 0 0 clamp(19.5px, 2.4375vw, 39px);
  }
  .page-header::before {
    width: clamp(173px, 21.625vw, 346px);
    height: 19.9519230769%;
  }
  .page-header__en {
    font-size: clamp(45px, 5.625vw, 90px);
  }
  .page-header__ja {
    font-size: clamp(18px, 2.25vw, 36px);
  }
  .page-header__text {
    padding: 0 clamp(47.5px, 5.9375vw, 95px);
  }
}

.page-main {
  position: relative;
  padding-bottom: clamp(78px, 26vw, 260px);
}
.page-main::after {
  -webkit-clip-path: polygon(100% 0%, 0% 100%, 100% 21%);
  position: absolute;
  right: 0;
  bottom: 0;
  width: 82%;
  height: clamp(39.9px, 13.3vw, 133px);
  background-color: var(--color-black);
  content: "";
          clip-path: polygon(100% 0%, 0% 100%, 100% 21%);
}
@media (min-width: 1000.02px) {
  .page-main {
    padding-bottom: 344px;
  }
  .page-main::after {
    height: clamp(188.5px, 23.5625vw, 377px);
  }
}

.company-table {
  max-width: 1142px;
  margin: 0 auto;
  padding-top: clamp(24px, 8vw, 80px);
}
.company-table dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  padding-bottom: clamp(6px, 2vw, 20px);
  border-bottom: 1px solid var(--color-primary);
}
.company-table dl + dl {
  margin-top: clamp(12px, 4vw, 40px);
}
.company-table dl::before {
  position: absolute;
  bottom: -2px;
  left: 0;
  width: clamp(74.4px, 24.8vw, 248px);
  height: 3px;
  background-color: #040000;
  content: "";
}
.company-table dt {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 clamp(74.4px, 24.8vw, 248px);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          flex: 0 0 clamp(74.4px, 24.8vw, 248px);
          justify-content: center;
}
.company-table dt span {
  padding-right: 1em;
  white-space: nowrap;
}
.company-table dd {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
@media (min-width: 1000.02px) {
  .company-table {
    padding-top: clamp(33.5px, 4.1875vw, 67px);
  }
  .company-table dl {
    padding-bottom: clamp(5.5px, 0.6875vw, 11px);
  }
  .company-table dl::before {
    width: clamp(111px, 13.875vw, 222px);
  }
  .company-table dl + dl {
    margin-top: clamp(17.5px, 2.1875vw, 35px);
  }
  .company-table dt {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 clamp(111px, 13.875vw, 222px);
            flex: 0 0 clamp(111px, 13.875vw, 222px);
  }
  .company-table dt span {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 clamp(75px, 9.375vw, 150px);
            flex: 0 0 clamp(75px, 9.375vw, 150px);
  }
  .company-table dt.required:after {
    right: 1.5em;
  }
  .company-table dd {
    padding: 0 clamp(12.5px, 1.5625vw, 25px) 0 clamp(17.5px, 2.1875vw, 35px);
  }
}

.company-ceo {
  padding-top: clamp(30px, 10vw, 100px);
}
.company-ceo__name {
  padding: clamp(15px, 5vw, 50px) 0;
  text-align: center;
}
.company-ceo__profile {
  max-width: 1032px;
  margin: 0 auto;
}
@media (min-width: 1000.02px) {
  .company-ceo {
    padding-top: clamp(67.5px, 8.4375vw, 135px);
  }
  .company-ceo__name {
    padding: clamp(20px, 2.5vw, 40px) 0;
  }
}

.company-access {
  padding-top: clamp(30px, 10vw, 100px);
}
.company-access__logo {
  padding-top: clamp(12px, 4vw, 40px);
  text-align: center;
}
.company-access__logo img {
  width: clamp(103.2px, 34.4vw, 344px);
}
.company-access__address {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          justify-content: center;
  margin: clamp(12px, 4vw, 40px) 0 clamp(18px, 6vw, 60px);
}
.company-access__station {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          justify-content: center;
  font-size: clamp(7.2px, 2.4vw, 24px);
}
.company-access__station-in {
  padding: 0 clamp(8px, 1.5vw, 15px);
  border-left: clamp(0.6px, 0.7vw, 7px) solid var(--color-primary);
}
@media (min-width: 1000.02px) {
  .company-access {
    padding-top: clamp(60px, 7.5vw, 120px);
  }
  .company-access__logo {
    padding-top: clamp(27.5px, 3.4375vw, 55px);
  }
  .company-access__address {
    margin: clamp(15px, 1.875vw, 30px) 0 clamp(22.5px, 2.8125vw, 45px);
  }
  .company-access__station {
    font-size: clamp(9px, 1.125vw, 18px);
  }
}

.company-map {
  margin: clamp(25px, 4vw, 40px) 0 0;
}
.company-map iframe {
  width: 100%;
  height: clamp(450px, 80vw, 800px);
}

.company-associate {
  margin: clamp(30px, 10vw, 100px) 0 0;
}
.company-associate__logos {
  -webkit-box-align: center;
      -ms-flex-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          align-items: center;
}
.company-associate__container {
  max-width: 1142px;
  margin: clamp(9px, 3vw, 30px) auto 0;
}
.company-associate__block {
  border-bottom: 1px solid var(--color-primary);
}
.company-associate__content {
  line-height: 1.57;
}
.company-associate__content b {
  color: var(--color-primary);
}
.company-associate__content small {
  font-size: 0.75em;
}
@media (min-width: 1000.02px) {
  .company-associate {
    margin: clamp(55px, 6.875vw, 110px) 0 0;
  }
  .company-associate__block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .company-associate__content {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
            flex: 0 1 auto;
        align-self: center;
    padding: clamp(15px, 1.875vw, 30px);
  }
  .company-associate__logos {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
    position: relative;
            flex: 0 0 auto;
    padding: clamp(15px, 1.875vw, 30px);
    gap: 0 clamp(10px, 2.5vw, 40px);
  }
  .company-associate__logos figure {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .company-associate__logos::after {
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #000;
    content: "";
  }
}
@media (max-width: 1000px) {
  .company-associate__block {
    padding: clamp(9px, 3vw, 30px) clamp(6px, 2vw, 20px);
  }
  .company-associate__logos {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: min(3vw, 20px);
  }
  .company-associate__content {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
            justify-content: center;
    margin: clamp(9px, 3vw, 30px) 0 0;
  }
}

.contact-catch {
  padding-top: clamp(24px, 8vw, 80px);
}
.contact-catch p {
  line-height: 1.32;
  text-align: center;
}
.contact-catch p em {
  color: var(--color-text-red);
}
@media (min-width: 1000.02px) {
  .contact-catch {
    padding-top: clamp(29px, 3.625vw, 58px);
  }
}

.contact-table {
  max-width: 1142px;
  margin: 0 auto;
  padding-top: clamp(24px, 8vw, 80px);
}
.contact-table dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  padding-bottom: clamp(6px, 2vw, 20px);
  border-bottom: 1px solid var(--color-primary);
}
.contact-table dl + dl {
  margin-top: clamp(12px, 4vw, 40px);
}
.contact-table dl::before {
  position: absolute;
  bottom: -2px;
  left: 0;
  width: clamp(74.4px, 24.8vw, 248px);
  height: 3px;
  background-color: #040000;
  content: "";
}
.contact-table dt {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 clamp(74.4px, 24.8vw, 248px);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          flex: 0 0 clamp(74.4px, 24.8vw, 248px);
          justify-content: center;
}
.contact-table dt span {
  padding-right: 1em;
  white-space: nowrap;
}
.contact-table dt.required {
  position: relative;
}
.contact-table dt.required:after {
  position: absolute;
  right: 0.5em;
  content: "※";
  color: var(--color-text-red);
  letter-spacing: 0;
}
.contact-table dd {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
@media (min-width: 1000.02px) {
  .contact-table {
    padding-top: clamp(33.5px, 4.1875vw, 67px);
  }
  .contact-table dl {
    padding-bottom: clamp(5.5px, 0.6875vw, 11px);
  }
  .contact-table dl::before {
    width: clamp(111px, 13.875vw, 222px);
  }
  .contact-table dl + dl {
    margin-top: clamp(17.5px, 2.1875vw, 35px);
  }
  .contact-table dt {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 clamp(111px, 13.875vw, 222px);
            flex: 0 0 clamp(111px, 13.875vw, 222px);
  }
  .contact-table dt span {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 clamp(75px, 9.375vw, 150px);
            flex: 0 0 clamp(75px, 9.375vw, 150px);
  }
  .contact-table dt.required:after {
    right: 1.5em;
  }
  .contact-table dd {
    padding: 0 clamp(12.5px, 1.5625vw, 25px) 0 clamp(17.5px, 2.1875vw, 35px);
  }
}

.contact-privacy {
  padding: clamp(15px, 5vw, 50px) 0 0;
}
.contact-privacy__text {
  margin: 0 0 clamp(21px, 7vw, 70px);
  font-size: clamp(10.8px, 3.6vw, 36px);
  line-height: 1.7385714286;
  text-align: center;
}
.contact-privacy__text a {
  text-decoration: underline;
}
.contact-privacy__text a:hover {
  color: var(--color-primary);
  text-decoration: none;
}
.contact-privacy__agree {
  text-align: center;
}
@media (min-width: 1000.02px) {
  .contact-privacy {
    padding: clamp(35px, 4.375vw, 70px) 0 0;
  }
  .contact-privacy__text {
    font-size: clamp(14px, 1.75vw, 28px);
  }
}

.contact-submit {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          justify-content: center;
  padding: clamp(15px, 5vw, 50px) 0 0;
}
@media (min-width: 1000.02px) {
  .contact-submit {
    padding: clamp(27.5px, 3.4375vw, 55px) 0 0;
  }
}

.site-header,
.side-navigation {
  -webkit-transition: 0.5s opacity ease-in-out, 0s visible 0s linear;
  -o-transition: 0.5s opacity ease-in-out, 0s visible 0s linear;
  visibility: visible;
  opacity: 1;
  transition: 0.5s opacity ease-in-out, 0s visible 0s linear;
}

.wrapper.is-load {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding-top: 0;
}
.wrapper.is-load .mv__bg {
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
          clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}
.wrapper.is-load .nav, .wrapper.is-load .site-header, .wrapper.is-load .side-navigation, .wrapper.is-load .message, .wrapper.is-load .news, .wrapper.is-load .client {
  -webkit-transition-duration: 0s;
       -o-transition-duration: 0s;
  visibility: hidden;
  opacity: 0;
          transition-duration: 0s;
}
.wrapper.is-load .mv {
  -webkit-transition: 0s height ease-in-out;
  -o-transition: 0s height ease-in-out;
  height: 100dvh;
  transition: 0s height ease-in-out;
}
@media (max-width: 1000px) {
  .wrapper.is-load {
    -webkit-transition: 0s padding-top ease-in-out;
    -o-transition: 0s padding-top ease-in-out;
    transition: 0s padding-top ease-in-out;
  }
}

.mv {
  -webkit-transition: 0.3s height ease-in-out;
  -o-transition: 0.3s height ease-in-out;
  position: relative;
  height: clamp(425.4px, 141.8vw, 1418px);
  transition: 0.3s height ease-in-out;
}
.mv::before, .mv::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
}
.mv::after {
  z-index: 2;
  width: 100%;
  height: 94.75%;
  background-color: var(--color-black);
}
.mv::before {
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 89%, 18% 100%, 0% 100%);
  z-index: 3;
  background-color: var(--color-primary);
          clip-path: polygon(0% 0%, 100% 0%, 100% 89%, 18% 100%, 0% 100%);
}
.mv__bg {
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 86%, 18% 100%, 0% 100%);
  z-index: 4;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
          clip-path: polygon(0% 0%, 100% 0%, 100% 86%, 18% 100%, 0% 100%);
}
.mv__bg--multiply, .mv__bg--ground {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.mv__bg--multiply {
  z-index: 2;
  mix-blend-mode: multiply;
}
.mv__bg--ground {
  z-index: 1;
}
.mv__container {
  -webkit-box-align: center;
      -ms-flex-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 5;
  position: absolute;
  top: 0;
  left: 0;
          align-items: center;
  width: 100%;
  height: 100%;
  padding: 0 0 0 clamp(19.5px, 6.5vw, 65px);
}
.mv__title {
  margin: 0 0 clamp(7.8px, 2.6vw, 26px);
  color: #fff;
  font-weight: bold;
  font-size: clamp(30px, 10vw, 100px);
  line-height: 1.1968;
  font-family: var(--font-family-latin);
}
.mv__title i {
  -webkit-transform: translateX(-0.2em);
      -ms-transform: translateX(-0.2em);
  -webkit-transition-duration: 1s;
       -o-transition-duration: 1s;
  -webkit-transition-property: opacity, -webkit-transform;
  -o-transition-property: opacity, transform;
  display: inline-block;
          transform: translateX(-0.2em);
  font-weight: inherit;
  opacity: 0;
          transition-duration: 1s;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
}
.mv__title.is-view i {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  opacity: 1;
}
.mv__text {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  -webkit-transform: translateX(-0.5em);
      -ms-transform: translateX(-0.5em);
  -webkit-transition-duration: 1s;
       -o-transition-duration: 1s;
  -webkit-transition-property: opacity, -webkit-transform;
  -o-transition-property: opacity, transform;
          transform: translateX(-0.5em);
  color: #fff;
  font-weight: bold;
  font-size: clamp(10.8px, 3.6vw, 36px);
  line-height: 1;
  letter-spacing: 0.02em;
  opacity: 0;
          transition-duration: 1s;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
}
.mv__text.is-view {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  opacity: 1;
}
@media (min-width: 1000.02px) {
  .mv {
    height: clamp(535px, 66.875vw, 1070px);
  }
  .mv::after {
    height: 86.75%;
  }
  .mv::before {
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 72.2%, 18% 100%, 0% 100%);
            clip-path: polygon(0% 0%, 100% 0%, 100% 72.2%, 18% 100%, 0% 100%);
  }
  .mv__bg {
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 64.76635514%, 18% 100%, 0% 100%);
            clip-path: polygon(0% 0%, 100% 0%, 100% 64.76635514%, 18% 100%, 0% 100%);
  }
  .mv__container {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding: clamp(170.5px, 21.3125vw, 341px) 0 0 clamp(47.5px, 5.9375vw, 95px);
  }
  .mv__title {
    margin: 0;
    font-size: clamp(50px, 6.25vw, 100px);
  }
  .mv__text {
    margin: clamp(13.5px, 1.6875vw, 27px) 0 0 clamp(2px, 0.25vw, 4px);
    font-size: clamp(18px, 2.25vw, 36px);
  }
}

.message {
  position: relative;
  padding-top: clamp(17.4px, 5.8vw, 58px);
  padding-bottom: clamp(35.1px, 11.7vw, 117px);
}
.message::before {
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
  position: absolute;
  top: 0;
  left: 0;
  width: 18%;
  height: clamp(12.9px, 4.3vw, 43px);
  background-color: var(--color-primary);
  content: "";
          clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
}
.message::after {
  -webkit-clip-path: polygon(0% 0%, 100% 100%, 0% 31%);
  position: absolute;
  bottom: 0;
  left: 0;
  width: 82%;
  height: clamp(39.9px, 13.3vw, 133px);
  background-color: var(--color-black);
  content: "";
          clip-path: polygon(0% 0%, 100% 100%, 0% 31%);
}
.message__container {
  max-width: 1138px;
  margin: 0 auto;
}
.message__title {
  color: var(--color-primary);
  font-weight: bold;
  font-size: clamp(21.6px, 7.2vw, 72px);
  line-height: 1;
  font-family: var(--font-family-latin);
  text-align: center;
}
.message__textbox {
  margin: clamp(12.6px, 4.2vw, 42px) clamp(9px, 3vw, 30px) 0;
}
.message__textbox p {
  letter-spacing: 0.02em;
  text-align: justify;
}
.message__president {
  margin: clamp(15px, 5vw, 50px) clamp(9px, 3vw, 30px) 0 0;
  text-align: right;
}
.message__president img {
  width: clamp(113.4px, 37.8vw, 378px);
}
@media (min-width: 1000.02px) {
  .message {
    padding-top: clamp(2.5px, 0.3125vw, 5px);
    padding-bottom: clamp(110px, 13.75vw, 220px);
  }
  .message::before {
    height: clamp(41.5px, 5.1875vw, 83px);
  }
  .message::after {
    height: clamp(128.5px, 16.0625vw, 257px);
  }
  .message__title {
    font-size: clamp(36px, 4.5vw, 72px);
  }
  .message__textbox {
    margin: clamp(17.5px, 2.1875vw, 35px) 0 0;
  }
  .message__textbox p {
    line-height: 1.99;
  }
  .message__president {
    margin: clamp(15px, 1.875vw, 30px) 0 0;
  }
  .message__president img {
    width: clamp(144.5px, 18.0625vw, 289px);
  }
}
@media (min-width: 1366.02px) {
  .message {
    padding-bottom: clamp(66px, 8.25vw, 132px);
  }
}

.news {
  position: relative;
  padding-top: clamp(15.6px, 5.2vw, 52px);
}
.news::before {
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%);
  position: absolute;
  top: 0;
  right: 0;
  width: 18%;
  height: clamp(12.9px, 4.3vw, 43px);
  background-color: var(--color-primary);
  content: "";
          clip-path: polygon(0% 0%, 100% 0%, 100% 100%);
}
.news::after {
  -webkit-clip-path: polygon(100% 0%, 0% 100%, 100% 31%);
  position: absolute;
  right: 0;
  bottom: 0;
  width: 82%;
  height: clamp(39.9px, 13.3vw, 133px);
  background-color: var(--color-primary);
  content: "";
          clip-path: polygon(100% 0%, 0% 100%, 100% 31%);
}
.news__container {
  max-width: var(--container);
  margin-right: auto;
  margin-left: auto;
}
.news__title {
  font-weight: bold;
  font-size: clamp(21.6px, 7.2vw, 72px);
  line-height: 1;
  font-family: var(--font-family-latin);
  text-align: center;
}
.news__article {
  padding: clamp(8.1px, 2.7vw, 27px) 0 0;
  text-align: right;
}
.news__body {
  margin: 0 0 clamp(19.5px, 6.5vw, 65px);
  padding: 0 clamp(13.2px, 4.4vw, 44px) clamp(4.2px, 1.4vw, 14px);
  border-bottom: 1px solid var(--color-primary);
}
.news__text {
  line-height: 1.57;
}
.news__date {
  display: block;
  margin: 0 0 clamp(3.6px, 1.2vw, 12px);
  font-weight: bold;
  font-size: clamp(10.8px, 3.6vw, 36px);
  line-height: 1;
  font-family: var(--font-family-latin);
}
.news__link {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
  -webkit-box-align: center;
      -ms-flex-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          align-items: center;
          justify-content: space-between;
  line-height: 1;
}
@media (hover: hover) {
  .news__link {
    -webkit-transition: 0.3s opacity ease-in-out;
    -o-transition: 0.3s opacity ease-in-out;
    transition: 0.3s opacity ease-in-out;
  }
  .news__link:hover {
    opacity: 0.6;
  }
}
.news__link span {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  color: var(--color-primary);
  font-weight: bold;
  font-size: clamp(12.48px, 4.16vw, 41.6px);
  font-family: var(--font-family-latin);
}
.news__link i {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 clamp(30.6px, 10.2vw, 102px);
          flex: 0 0 clamp(30.6px, 10.2vw, 102px);
}
.news__link i .fillPath {
  fill: var(--color-primary);
}
@media (min-width: 1000.02px) {
  .news {
    padding-top: clamp(30.5px, 3.8125vw, 61px);
  }
  .news::before {
    height: clamp(41.5px, 5.1875vw, 83px);
  }
  .news::after {
    height: clamp(128.5px, 16.0625vw, 257px);
  }
  .news__container {
    -webkit-box-align: center;
        -ms-flex-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
            align-items: center;
    gap: 0 clamp(19.5px, 2.4375vw, 39px);
  }
  .news__title {
    padding: clamp(23px, 2.875vw, 46px) 0 0;
    font-size: clamp(36px, 4.5vw, 72px);
  }
  .news__date {
    margin: 0 0 clamp(5px, 0.625vw, 10px);
    font-size: clamp(14px, 1.75vw, 28px);
  }
  .news__article {
    -ms-flex-wrap: wrap;
    -webkit-box-align: end;
        -ms-flex-align: end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-wrap: wrap;
            align-items: flex-end;
    padding: 0 clamp(12px, 1.5vw, 24px) clamp(5.5px, 0.6875vw, 11px) clamp(8px, 1vw, 16px);
    gap: clamp(40px, 5vw, 80px);
    border-bottom: 1px solid var(--color-primary);
  }
  .news__body {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc( 100% - clamp(134px, 16.75vw, 268px) - clamp(20px, 5vw, 80px) );
            flex: 0 0 calc( 100% - clamp(134px, 16.75vw, 268px) - clamp(20px, 5vw, 80px) );
    margin: 0;
    padding: 0;
    border-bottom: none;
  }
  .news__footer {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 clamp(134px, 16.75vw, 268px);
            flex: 0 0 clamp(134px, 16.75vw, 268px);
  }
  .news__link {
    margin: 0;
  }
  .news__link span {
    font-size: clamp(16px, 2vw, 32px);
  }
  .news__link i {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 clamp(40px, 5vw, 80px);
            flex: 0 0 clamp(40px, 5vw, 80px);
  }
}
@media (max-width: 1000px) {
  .news__footer {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
            justify-content: flex-end;
    padding: 0 clamp(10.8px, 3.6vw, 36px) 0 0;
  }
  .news__link {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 clamp(104.4px, 34.8vw, 348px);
            flex: 0 0 clamp(104.4px, 34.8vw, 348px);
  }
}

.sns {
  padding-top: clamp(22.5px, 7.5vw, 75px);
  padding-bottom: clamp(52.2px, 17.4vw, 174px);
}
.sns__title {
  color: var(--color-primary);
  font-weight: bold;
  font-size: clamp(9.36px, 3.12vw, 31.2px);
  font-family: var(--font-family-latin);
  text-align: center;
}
.sns__catch {
  padding-top: clamp(1.8px, 0.6vw, 6px);
  font-weight: bold;
  font-size: clamp(18.72px, 6.24vw, 62.4px);
  line-height: 1;
  letter-spacing: 0.02em;
  text-align: center;
}
.sns__buttons {
  display: -ms-grid;
  display: grid;
  max-width: clamp(179.4px, 59.8vw, 598px);
  margin: clamp(16.2px, 5.4vw, 54px) auto 0;
  gap: clamp(9px, 3vw, 30px) 0;
}
.sns__buttons > a {
  -webkit-box-align: center;
      -ms-flex-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          align-items: center;
          justify-content: center;
  height: clamp(39px, 13vw, 130px);
  border: 1px solid var(--color-border-grey);
}
@media (hover: hover) {
  .sns__buttons > a {
    -webkit-transition: 0.3s opacity ease-in-out;
    -o-transition: 0.3s opacity ease-in-out;
    transition: 0.3s opacity ease-in-out;
  }
  .sns__buttons > a:hover {
    opacity: 0.6;
  }
}
.sns__twitter img {
  width: clamp(74.4px, 24.8vw, 248px);
}
.sns__instagram img {
  width: clamp(79.8px, 26.6vw, 266px);
}
@media (min-width: 1000.02px) {
  .sns {
    padding-top: clamp(34px, 4.25vw, 68px);
    padding-bottom: clamp(127.5px, 15.9375vw, 255px);
  }
  .sns__title {
    font-size: clamp(12px, 1.5vw, 24px);
  }
  .sns__catch {
    padding-top: clamp(2.5px, 0.3125vw, 5px);
    font-size: clamp(24px, 3vw, 48px);
  }
  .sns__buttons {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    max-width: clamp(470px, 58.75vw, 940px);
    margin: clamp(20.5px, 2.5625vw, 41px) auto 0;
    gap: 0 clamp(10px, 1.25vw, 20px);
  }
  .sns__buttons > a {
    height: clamp(50px, 6.25vw, 100px);
  }
  .sns__twitter img {
    width: clamp(95px, 11.875vw, 190px);
  }
  .sns__instagram img {
    width: clamp(102.5px, 12.8125vw, 205px);
  }
}

.client {
  position: relative;
  padding-top: clamp(15.6px, 5.2vw, 52px);
  padding-bottom: clamp(46.2px, 15.4vw, 154px);
}
.client::before {
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
  position: absolute;
  top: 0;
  left: 0;
  width: 18%;
  height: clamp(12.9px, 4.3vw, 43px);
  background-color: var(--color-black);
  content: "";
          clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
}
.client::after {
  -webkit-clip-path: polygon(0% 0%, 100% 100%, 0% 31%);
  position: absolute;
  bottom: 0;
  left: 0;
  width: 82%;
  height: clamp(39.9px, 13.3vw, 133px);
  background-color: var(--color-primary);
  content: "";
          clip-path: polygon(0% 0%, 100% 100%, 0% 31%);
}
.client__title {
  margin: 0 0 clamp(20.4px, 6.8vw, 68px);
  font-weight: bold;
  font-size: clamp(21.6px, 7.2vw, 72px);
  line-height: 1;
  font-family: var(--font-family-latin);
  text-align: center;
}
.client__main + .client__main {
  padding-top: clamp(42px, 14vw, 140px);
}
@media (min-width: 1000.02px) {
  .client {
    padding-top: clamp(58px, 7.25vw, 116px);
    padding-bottom: clamp(97px, 12.125vw, 194px);
  }
  .client::before {
    height: clamp(41.5px, 8.3vw, 83px);
  }
  .client::after {
    -webkit-clip-path: polygon(100% 0%, 0% 100%, 100% 31%);
    right: 0;
    left: auto;
    height: clamp(128.5px, 16.0625vw, 257px);
            clip-path: polygon(100% 0%, 0% 100%, 100% 31%);
  }
  .client__title {
    margin: 0 0 clamp(28px, 3.5vw, 56px);
    font-size: clamp(36px, 4.5vw, 72px);
    text-align: left;
  }
  .client__main + .client__main {
    padding-top: clamp(75.5px, 9.4375vw, 151px);
  }
}
@media (max-width: 1000px) {
  .client__main {
    padding-right: var(--gutter);
    padding-left: var(--gutter);
  }
}

.client-content__title {
  position: relative;
  margin: 0 0 clamp(13.5px, 4.5vw, 45px);
  padding: 0 0 clamp(5.1px, 1.7vw, 17px);
  font-weight: bold;
  font-size: clamp(18.72px, 6.24vw, 62.4px);
  line-height: 1.272275641;
  font-family: var(--font-family-latin);
  text-align: center;
}
.client-content__title::after {
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
  position: absolute;
  bottom: 0;
  left: 50%;
  width: clamp(87.75px, 29.25vw, 292.5px);
  height: clamp(2.7px, 0.9vw, 9px);
          transform: translateX(-50%);
  background-color: var(--color-primary);
  content: "";
}
@media (min-width: 1000.02px) {
  .client-content__title {
    margin: 0 0 clamp(43px, 5.375vw, 86px);
    padding: 0 0 clamp(11.5px, 1.4375vw, 23px);
    font-size: clamp(24px, 3vw, 48px);
  }
  .client-content__title::after {
    width: clamp(112.5px, 14.0625vw, 225px);
    height: clamp(3.5px, 0.4375vw, 7px);
  }
}

.client-block + .client-block {
  margin-top: clamp(41.5px, 8.3vw, 83px);
}
.client-block__header {
  -webkit-box-align: center;
      -ms-flex-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          align-items: center;
}
.client-block__header-name {
  -webkit-box-align: center;
      -ms-flex-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          align-items: center;
  background-color: var(--color-black);
  color: #fff;
  font-weight: bold;
  font-size: clamp(14.4px, 4.8vw, 48px);
  line-height: 1;
  font-family: var(--font-family-latin);
}
.client-block__header-name[data-color=primary] {
  background-color: var(--color-primary);
}
.client-block__header-sport {
  color: var(--color-primary);
  font-weight: bold;
  font-size: clamp(14.4px, 4.8vw, 48px);
  line-height: 1;
  font-family: var(--font-family-latin);
}
.client-block__name {
  font-weight: bold;
  font-size: clamp(15.6px, 5.2vw, 52px);
}
.client-block__profile {
  letter-spacing: 0.02em;
}
.client-block__profile p {
  font-size: clamp(12.48px, 4.16vw, 41.6px);
  line-height: 1.4259615385;
}
.client-block__sns-in {
  -ms-grid-columns: 1fr;
  display: -ms-grid;
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(9px, 3vw, 30px);
}
.client-block__sns a {
  -webkit-box-align: center;
      -ms-flex-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          align-items: center;
  gap: clamp(3px, 1vw, 10px);
}
@media (hover: hover) {
  .client-block__sns a {
    -webkit-transition: 0.3s opacity ease-in-out;
    -o-transition: 0.3s opacity ease-in-out;
    transition: 0.3s opacity ease-in-out;
  }
  .client-block__sns a:hover {
    opacity: 0.6;
  }
}
.client-block__sns i {
  line-height: 0;
}
.client-block__sns span {
  margin: 0.2em 0 0;
  font-weight: bold;
  font-size: clamp(13.65px, 4.55vw, 45.5px);
  line-height: 1;
  font-family: var(--font-family-latin);
}
.client-block__sns-twitter i {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 clamp(19.2px, 6.4vw, 64px);
          flex: 0 0 clamp(19.2px, 6.4vw, 64px);
  width: clamp(19.2px, 6.4vw, 64px);
}
.client-block__sns-twitter span {
  color: var(--color-twitter);
}
.client-block__sns-instagram i {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 clamp(19.2px, 6.3vw, 63px);
          flex: 0 0 clamp(19.2px, 6.3vw, 63px);
  width: clamp(19.2px, 6.3vw, 63px);
}
.client-block__sns-instagram span {
  color: var(--color-instagram);
}
@media (min-width: 1000.02px) {
  .client-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0 clamp(32px, 4vw, 64px);
  }
  .client-block + .client-block {
    margin-top: clamp(60px, 7.5vw, 120px);
  }
  .client-block__images {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 clamp(420px, 52.5vw, 840px);
            flex: 0 0 clamp(420px, 52.5vw, 840px);
    width: clamp(420px, 52.5vw, 840px);
  }
  .client-block__container {
    z-index: 2;
    position: relative;
    padding-top: clamp(20px, 2.5vw, 40px);
  }
  .client-block__container.between {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
            flex-direction: column;
            justify-content: space-between;
    gap: clamp(5px, 0.625vw, 10px);
  }
  .client-block__container:not(.between) .client-block__name {
    margin: 0.85em 0 0;
  }
  .client-block__container:not(.between) .client-block__profile {
    margin: 0.85em 0 0;
  }
  .client-block__container:not(.between) .client-block__sns {
    margin: clamp(40px, 5vw, 80px) 0 0;
  }
  .client-block__header {
    gap: 0 0.72em;
  }
  .client-block__header-name {
    padding: 0.25em 0.2em 0em 0.35em;
    font-size: clamp(24px, 3vw, 48px);
  }
  .client-block__header-sport {
    padding: 0.3em 0 0;
    font-size: clamp(24px, 3vw, 48px);
  }
  .client-block__name {
    font-size: clamp(20px, 2.5vw, 40px);
  }
  .client-block__profile {
    line-height: 1.4165625;
  }
  .client-block__profile p {
    font-size: clamp(16px, 2vw, 32px);
  }
  .client-block__sns-in {
    gap: clamp(11px, 1.375vw, 22px);
  }
  .client-block__sns a {
    gap: clamp(4px, 0.5vw, 8px);
  }
  .client-block__sns span {
    font-size: clamp(17.5px, 2.1875vw, 35px);
  }
  .client-block__sns-twitter i {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 clamp(24.5px, 3.0625vw, 49px);
            flex: 0 0 clamp(24.5px, 3.0625vw, 49px);
  }
  .client-block__sns-instagram i {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 clamp(24px, 3vw, 48px);
            flex: 0 0 clamp(24px, 3vw, 48px);
  }
}
@media (max-width: 1000px) {
  .client-block__images {
    margin: 0 clamp(9px, 3vw, 30px);
  }
  .client-block__header {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: clamp(20.1px, 6.7vw, 67px) 0 0;
    gap: 0 clamp(4.5px, 1.5vw, 15px);
  }
  .client-block__header-name {
    padding: 0.3em 0.3em 0em 0.3em;
  }
  .client-block__header-sport {
    padding: 0.3em 0 0;
    line-height: 1;
  }
  .client-block__name {
    margin: clamp(18px, 6vw, 60px) 0 0;
    text-align: center;
  }
  .client-block__profile {
    margin: clamp(10.5px, 3.5vw, 35px) 0 0;
  }
  .client-block__profile p {
    text-align: center;
  }
  .client-block__sns {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
            justify-content: center;
    margin: clamp(24.9px, 8.3vw, 83px) 0 0;
  }
  .client-block__website {
    margin: clamp(21px, 7vw, 70px) 0 0;
  }
  .client-block__website a {
    margin: 0 auto;
  }
}

@media (min-width: 1000.02px) {
  .client__main .client-block:nth-of-type(odd) {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .client__main .client-block:nth-of-type(odd) .client-block__header {
    -webkit-transform: translateX(calc( -1*clamp(63.5px, 7.9375vw, 127px) ));
        -ms-transform: translateX(calc( -1*clamp(63.5px, 7.9375vw, 127px) ));
            transform: translateX(calc( -1*clamp(63.5px, 7.9375vw, 127px) ));
  }
  .client__main .client-block:nth-of-type(even) {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .client__main .client-block:nth-of-type(even) .client-block__header {
    -webkit-transform: translateX(calc( clamp(63.5px, 7.9375vw, 127px) ));
        -ms-transform: translateX(calc( clamp(63.5px, 7.9375vw, 127px) ));
            transform: translateX(calc( clamp(63.5px, 7.9375vw, 127px) ));
  }
  .client__main .client-block:nth-of-type(even) .client-block__images {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 clamp(417.5px, 52.1875vw, 835px);
            flex: 0 0 clamp(417.5px, 52.1875vw, 835px);
            order: 2;
    width: clamp(417.5px, 52.1875vw, 835px);
  }
  .client__main .client-block:nth-of-type(even) .client-block__name {
    text-align: right;
  }
  .client__main .client-block:nth-of-type(even) .client-block__profile p {
    text-align: right;
  }
  .client__main .client-block:nth-of-type(even) .client-block__sns a {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .client__main .client-block:nth-of-type(even) .client-block__sns i {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .client__main .client-block:nth-of-type(even) .client-block__website a {
    margin: 0 0 0 auto;
  }
}

.service {
  position: relative;
  padding-top: clamp(15.6px, 5.2vw, 52px);
}
.service::before {
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%);
  position: absolute;
  top: 0;
  right: 0;
  width: 18%;
  height: clamp(12.9px, 4.3vw, 43px);
  background-color: var(--color-black);
  content: "";
          clip-path: polygon(0% 0%, 100% 0%, 100% 100%);
}
.service::after {
  position: absolute;
  content: "";
}
.service__title {
  margin: 0 0 clamp(25.5px, 8.5vw, 85px);
}
.service__image {
  margin: 0 0 clamp(21.6px, 7.2vw, 72px);
}
.service__subtitle {
  margin: 0 0 clamp(18px, 6vw, 60px);
  font-weight: bold;
  font-size: clamp(21.6px, 7.2vw, 72px);
  line-height: 1;
  font-family: var(--font-family-latin);
  text-align: center;
}
.service__number {
  display: block;
  color: var(--color-primary);
  font-weight: bold;
  font-size: clamp(27.9px, 9.3vw, 93px);
  line-height: 1;
  font-family: var(--font-family-latin);
  text-align: center;
}
.service__text {
  margin: 0.15em 0 0;
  line-height: 1.5533333333;
  letter-spacing: 0.02em;
  text-align: center;
}
@media (min-width: 1000.02px) {
  .service {
    padding-top: clamp(28px, 3.5vw, 56px);
    padding-bottom: clamp(36px, 4.5vw, 72px);
  }
  .service::before {
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
    right: auto;
    left: 0;
    width: 18%;
    height: clamp(41.5px, 8.3vw, 83px);
            clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
  }
  .service::after {
    -webkit-clip-path: polygon(0% 0%, 100% 100%, 0% 100%);
    bottom: 0;
    left: 0;
    width: 42.7%;
    height: clamp(258px, 32.25vw, 516px);
    background-color: var(--color-bg-grey);
            clip-path: polygon(0% 0%, 100% 100%, 0% 100%);
  }
  .service__title {
    margin: 0 0 clamp(43px, 5.375vw, 86px);
    text-align: right;
  }
  .service__title img {
    width: clamp(499px, 62.375vw, 998px);
  }
  .service__image {
    margin: 0 0 clamp(48.5px, 6.0625vw, 97px);
  }
  .service__subtitle {
    margin: 0 0 clamp(13.5px, 1.6875vw, 27px);
    font-size: clamp(36px, 4.5vw, 72px);
    text-align: left;
  }
  .service__list {
    padding: 0 0 0 clamp(40px, 5vw, 80px);
  }
  .service__list .service__item:nth-child(1) {
    max-width: clamp(285px, 35.625vw, 570px);
  }
  .service__list .service__item:nth-child(2) {
    max-width: clamp(271px, 33.875vw, 542px);
    margin: clamp(12px, 1.5vw, 24px) auto 0;
  }
  .service__list .service__item:nth-child(3) {
    max-width: clamp(331px, 41.375vw, 662px);
    margin: clamp(12px, 1.5vw, 24px) 0 0 auto;
  }
  .service__number {
    font-size: clamp(36px, 4.5vw, 72px);
  }
}
@media (max-width: 1000px) {
  .service__title {
    text-align: center;
  }
  .service__title img {
    -webkit-transform: translateX(-2vw);
        -ms-transform: translateX(-2vw);
    display: inline-block;
    width: 94vw;
    max-width: none;
            transform: translateX(-2vw);
  }
  .service__list {
    -ms-grid-columns: 1fr;
    display: -ms-grid;
    display: grid;
    grid-template-columns: 1fr;
    gap: clamp(15px, 5vw, 50px);
  }
}

.management {
  position: relative;
  padding-top: clamp(27.9px, 9.3vw, 93px);
  padding-bottom: clamp(69.6px, 23.2vw, 232px);
}
.management + .career {
  padding-top: clamp(11.1px, 3.7vw, 37px);
}
.management + .career::before, .management + .career::after {
  content: none;
}
.management::before {
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
  z-index: 1;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 18%;
  height: clamp(12.9px, 4.3vw, 43px);
  background-color: var(--color-black);
  content: "";
          clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
}
.management::after {
  -webkit-clip-path: polygon(0% 100%, 100% 0%, 100% 31%);
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: clamp(12.9px, 4.3vw, 43px);
  width: 82%;
  height: clamp(39.9px, 13.3vw, 133px);
  background-color: var(--color-primary);
  content: "";
          clip-path: polygon(0% 100%, 100% 0%, 100% 31%);
}
.management__container {
  z-index: 2;
  position: relative;
}
.management__title {
  color: var(--color-primary);
  font-weight: bold;
  font-size: clamp(9.36px, 3.12vw, 31.2px);
  line-height: 1;
  font-family: var(--font-family-latin);
  text-align: center;
}
.management__text {
  margin: 0.3em 0 0;
  font-weight: bold;
  font-size: clamp(18.72px, 6.24vw, 62.4px);
  line-height: 1.0767628205;
  letter-spacing: 0.02em;
  text-align: center;
}
.management__button {
  margin: clamp(18px, 6vw, 60px) auto 0;
}
@media (min-width: 1000.02px) {
  .management {
    padding-top: clamp(41.5px, 5.1875vw, 83px);
    padding-bottom: clamp(165.5px, 20.6875vw, 331px);
  }
  .management + .career {
    padding-top: clamp(41.5px, 5.1875vw, 83px);
  }
  .management::before {
    -webkit-clip-path: polygon(0% 0%, 100% 100%, 0% 31%);
    bottom: clamp(41.5px, 5.1875vw, 83px);
    width: 82%;
    height: clamp(128.5px, 16.0625vw, 257px);
            clip-path: polygon(0% 0%, 100% 100%, 0% 31%);
  }
  .management::after {
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%);
    bottom: 0;
    width: 18%;
    height: clamp(41.5px, 5.1875vw, 83px);
            clip-path: polygon(0% 0%, 100% 0%, 100% 100%);
  }
  .management__title {
    font-size: clamp(12px, 1.5vw, 24px);
  }
  .management__text {
    font-size: clamp(24px, 3vw, 48px);
  }
  .management__button {
    margin: clamp(23px, 2.875vw, 46px) auto 0;
  }
}

.career {
  position: relative;
  padding-top: clamp(71.1px, 23.7vw, 237px);
  padding-bottom: clamp(7.2px, 2.4vw, 24px);
}
.career::before {
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
  z-index: 1;
  position: absolute;
  top: clamp(45.9px, 15.3vw, 153px);
  left: 0;
  width: 18%;
  height: clamp(12.9px, 4.3vw, 43px);
  background-color: var(--color-black);
  content: "";
          clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
}
.career::after {
  -webkit-clip-path: polygon(0% 100%, 100% 0%, 100% 31%);
  z-index: 1;
  position: absolute;
  top: clamp(6px, 2vw, 20px);
  right: 0;
  width: 82%;
  height: clamp(39.9px, 13.3vw, 133px);
  background-color: var(--color-primary);
  content: "";
          clip-path: polygon(0% 100%, 100% 0%, 100% 31%);
}
.career__title {
  margin: 0 0 0.86em;
  font-weight: bold;
  font-size: clamp(21.6px, 7.2vw, 72px);
  line-height: 1;
  font-family: var(--font-family-latin);
  text-align: center;
}
.career__catch {
  margin: 0 0 clamp(30.6px, 10.2vw, 102px);
}
.career__catch-label {
  color: var(--color-primary);
  font-weight: bold;
  font-size: clamp(9.36px, 3.12vw, 31.2px);
  line-height: 1;
  font-family: var(--font-family-latin);
  text-align: center;
}
.career__catch-title {
  margin: 0.37em 0 0.9em;
  font-weight: bold;
  font-size: clamp(18.72px, 6.24vw, 62.4px);
  line-height: 1;
  letter-spacing: 0.02em;
  text-align: center;
}
.career__catch-textbox {
  margin: 0 calc(-1 * clamp(6px, 2vw, 20px));
}
.career__catch-textbox p {
  letter-spacing: 0.02em;
  text-align: justify;
}
@media (min-width: 1000.02px) {
  .career {
    padding-top: clamp(166.5px, 20.8125vw, 333px);
    padding-bottom: clamp(15.5px, 1.9375vw, 31px);
  }
  .career::before {
    -webkit-clip-path: polygon(0% 0%, 100% 100%, 0% 31%);
    top: 0;
    width: 82%;
    height: clamp(128.5px, 16.0625vw, 257px);
            clip-path: polygon(0% 0%, 100% 100%, 0% 31%);
  }
  .career::after {
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%);
    top: clamp(128.5px, 16.0625vw, 257px);
    width: 18%;
    height: clamp(41.5px, 5.1875vw, 83px);
            clip-path: polygon(0% 0%, 100% 0%, 100% 100%);
  }
  .career__title {
    margin: 0 0 1.47em;
    font-size: clamp(36px, 4.5vw, 72px);
    text-align: left;
  }
  .career__catch {
    margin: 0 0 clamp(48.5px, 6.0625vw, 97px);
  }
  .career__catch-label {
    font-size: clamp(12px, 1.5vw, 24px);
  }
  .career__catch-title {
    margin: 0.25em 0 1.47em;
    font-size: clamp(24px, 3vw, 48px);
  }
  .career__catch-textbox {
    max-width: 1138px;
    margin: 0 auto;
  }
  .career__catch-textbox p {
    font-size: clamp(9px, 1.125vw, 18px);
    line-height: 1.8711111111;
  }
}

.career-block + .career-block {
  margin-top: clamp(28.2px, 9.4vw, 94px);
}
.career-block__title {
  margin: 0 0 clamp(6.9px, 2.3vw, 23px);
  font-weight: bold;
  font-size: clamp(14.04px, 4.68vw, 46.8px);
  line-height: 1.4356837607;
  letter-spacing: 0.02em;
  text-align: center;
}
@media (min-width: 1000.02px) {
  .career-block + .career-block {
    margin-top: clamp(38px, 4.75vw, 76px);
  }
  .career-block__title {
    margin: 0 0 clamp(11.5px, 1.4375vw, 23px);
    font-size: clamp(18px, 2.25vw, 36px);
  }
}
@media (max-width: 1000px) {
  .career-block {
    margin: 0 calc(-1 * clamp(6px, 2vw, 20px));
  }
}

.career-grid1 {
  -ms-grid-columns: 1fr 1fr;
  display: -ms-grid;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(4.8px, 1.6vw, 16px);
}
@media (min-width: 1000.02px) {
  .career-grid1 {
    -ms-grid-columns: 1fr 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: clamp(6px, 0.75vw, 12px);
  }
}

.operation-card {
  padding: clamp(3.3px, 1.1vw, 11px);
  background: url(../img/home/bg-stripe.png) repeat left top/clamp(2.7px, 0.9vw, 9px) clamp(2.7px, 0.9vw, 9px);
}
.operation-card__in {
  height: 100%;
  padding: clamp(7.8px, 2.6vw, 26px) clamp(9px, 3vw, 30px) clamp(9px, 3vw, 30px);
  background-color: var(--color-bg-body);
}
.operation-card__label {
  color: var(--color-primary);
  font-weight: bold;
  font-size: clamp(7.02px, 2.34vw, 23.4px);
  line-height: 1;
  font-family: var(--font-family-latin);
  text-align: center;
}
.operation-card__title {
  margin: clamp(6px, 2vw, 20px) 0 clamp(7.2px, 2.4vw, 24px);
  font-weight: bold;
  font-size: clamp(14.04px, 4.68vw, 46.8px);
  line-height: 1;
  text-align: center;
}
.operation-card__members {
  -ms-grid-columns: 1fr 1fr;
  display: -ms-grid;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(3px, 1vw, 10px);
}
.operation-card__members span, .operation-card__members em {
  -webkit-box-align: center;
      -ms-flex-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          align-items: center;
          justify-content: center;
  padding: 0.2em 0;
  color: #fff;
  font-size: clamp(7.02px, 2.34vw, 23.4px);
}
.operation-card__members span {
  background-color: var(--color-black);
}
.operation-card__members em {
  background-color: var(--color-primary);
}
.operation-card__textbox {
  padding: clamp(9px, 3vw, 30px) clamp(3px, 1vw, 10px) 0;
}
.operation-card__textbox p {
  font-size: clamp(8.4px, 2.8vw, 28px);
  line-height: 1.5639285714;
  letter-spacing: 0.02em;
  text-align: justify;
}
@media (min-width: 1000.02px) {
  .operation-card {
    padding: clamp(4px, 0.5vw, 8px);
    background-size: 9px 9px;
  }
  .operation-card__in {
    padding: clamp(11px, 1.375vw, 22px) clamp(10px, 1.25vw, 20px) 0;
  }
  .operation-card__label {
    font-size: clamp(9px, 1.125vw, 18px);
  }
  .operation-card__title {
    margin: clamp(7px, 0.875vw, 14px) 0 clamp(10px, 1.25vw, 20px);
    font-size: clamp(18px, 2.25vw, 36px);
  }
  .operation-card__members {
    gap: clamp(5px, 0.625vw, 10px);
  }
  .operation-card__members span, .operation-card__members em {
    height: clamp(20px, 2.5vw, 40px);
    font-size: clamp(9px, 1.125vw, 18px);
  }
  .operation-card__textbox {
    padding: clamp(11px, 1.375vw, 22px) clamp(5px, 0.625vw, 10px);
  }
  .operation-card__textbox p {
    font-size: clamp(9px, 1.125vw, 18px);
    line-height: 1.8711111111;
  }
}
@media (max-width: 1000px) {
  .operation-card {
    min-height: clamp(148.2px, 49.4vw, 494px);
  }
}

.career-grid2 {
  display: -ms-grid;
  display: grid;
  gap: clamp(6px, 2vw, 20px) 0;
}
@media (min-width: 1000.02px) {
  .career-grid2 {
    -ms-grid-columns: (1fr)[6];
    grid-template-columns: repeat(6, 1fr);
    gap: clamp(8px, 1vw, 16px) clamp(5.5px, 0.6875vw, 11px);
  }
  .career-grid2__sitem {
    -ms-grid-column-span: 2;
    grid-column: span 2;
  }
  .career-grid2__litem {
    -ms-grid-column-span: 3;
    grid-column: span 3;
  }
}
@media (max-width: 1000px) {
  .career-grid2 {
    -ms-grid-columns: [large-start] clamp(42.6px, 14.2vw, 142px) [small-start] 1fr [small-end] clamp(42.6px, 14.2vw, 142px) [large-end];
    grid-template-columns: [large-start] clamp(42.6px, 14.2vw, 142px) [small-start] 1fr [small-end] clamp(42.6px, 14.2vw, 142px) [large-end];
  }
  .career-grid2__sitem {
    grid-column: small;
  }
  .career-grid2__litem {
    grid-column: large;
  }
}

.support-card {
  padding: clamp(3.3px, 1.1vw, 11px);
  background: url(../img/home/bg-stripe.png) repeat left top/clamp(2.7px, 0.9vw, 9px) clamp(2.7px, 0.9vw, 9px);
}
.support-card__in {
  -webkit-box-align: center;
      -ms-flex-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          align-items: center;
          justify-content: center;
  padding: clamp(7.8px, 2.6vw, 26px) clamp(9px, 3vw, 30px) clamp(9px, 3vw, 30px);
  background-color: var(--color-bg-body);
}
.support-card__text {
  font-weight: bold;
  font-size: clamp(10.92px, 3.64vw, 36.4px);
  line-height: 1.05;
  letter-spacing: 0.02em;
  text-align: center;
}
.support-card__text small {
  font-weight: normal;
  font-size: clamp(7.02px, 2.34vw, 23.4px);
}
@media (min-width: 1000.02px) {
  .support-card {
    padding: clamp(4px, 0.5vw, 8px);
    background-size: 9px 9px;
  }
  .support-card__in {
    height: clamp(47px, 5.875vw, 94px);
    padding: clamp(2.5px, 0.3125vw, 5px) 0 0;
  }
  .support-card__text {
    font-size: clamp(14px, 1.75vw, 28px);
  }
  .support-card__text small {
    font-size: clamp(9px, 1.125vw, 18px);
  }
}
@media (max-width: 1000px) {
  .support-card {
    height: clamp(42.9px, 14.3vw, 143px);
  }
  .support-card__in {
    height: 100%;
  }
}

.career-grid3 {
  -ms-grid-columns: 1fr;
  display: -ms-grid;
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(3px, 1vw, 10px);
}
@media (min-width: 1000.02px) {
  .career-grid3 {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    gap: clamp(9px, 1.125vw, 18px);
  }
}
@media (max-width: 1000px) {
  .career-grid3 {
    padding: clamp(2.4px, 0.8vw, 8px) 0 0;
  }
}

.melit-card {
  padding: clamp(3.3px, 1.1vw, 11px);
  background: url(../img/home/bg-stripe.png) repeat left top/clamp(2.7px, 0.9vw, 9px) clamp(2.7px, 0.9vw, 9px);
}
.melit-card__in {
  -webkit-box-align: center;
      -ms-flex-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          align-items: center;
  padding: clamp(10.2px, 3.4vw, 34px) clamp(9px, 3vw, 30px) clamp(9px, 3vw, 30px);
  background-color: var(--color-bg-body);
}
.melit-card__content {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
.melit-card__title {
  margin: 0 0 clamp(3px, 1vw, 10px);
  font-weight: bold;
  font-size: clamp(10.92px, 3.64vw, 36.4px);
  line-height: 1;
  letter-spacing: 0.02em;
  text-align: center;
}
.melit-card__text {
  font-size: clamp(8.4px, 2.8vw, 28px);
  line-height: 1.3155555556;
  letter-spacing: 0.02em;
  text-align: center;
}
.melit-card__arrow {
  display: block;
  width: clamp(14.4px, 4.8vw, 48px);
  margin: clamp(4.8px, 1.6vw, 16px) auto;
  line-height: 1;
}
.melit-card__arrow .fillPath {
  fill: var(--color-primary);
}
@media (min-width: 1000.02px) {
  .melit-card {
    padding: clamp(4px, 0.5vw, 8px);
    background-size: 9px 9px;
  }
  .melit-card__title {
    margin: 0 0 clamp(4px, 0.5vw, 8px);
    font-size: clamp(14px, 1.75vw, 28px);
  }
  .melit-card__in {
    height: 100%;
    padding: clamp(13.5px, 1.6875vw, 27px) clamp(12.5px, 1.5625vw, 25px) clamp(11px, 1.375vw, 22px);
  }
  .melit-card__text {
    font-size: clamp(9px, 1.125vw, 18px);
    line-height: 1.3155555556;
  }
  .melit-card__arrow {
    width: clamp(11.75px, 1.46875vw, 23.5px);
    margin: clamp(5px, 0.625vw, 10px) auto;
  }
}

.career-grid4 {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          justify-content: space-between;
  gap: clamp(1.2px, 0.4vw, 4px);
}
@media (min-width: 1000.02px) {
  .career-grid4 {
    max-width: 530px;
    margin: 0 auto;
    gap: clamp(4px, 0.5vw, 8px);
  }
}
@media (max-width: 1000px) {
  .career-grid4 {
    margin: clamp(6.6px, 2.2vw, 22px) 0 0;
  }
}

.case-grid {
  -ms-grid-columns: 1fr 1fr;
  display: -ms-grid;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(3px, 1vw, 10px);
}
@media (min-width: 1000.02px) {
  .case-grid {
    gap: clamp(9px, 1.125vw, 18px);
  }
}
@media (max-width: 1000px) {
  .case-grid {
    padding: clamp(2.4px, 0.8vw, 8px) 0 0;
  }
}

.case-card {
  display: block;
  padding: clamp(1.8px, 0.6vw, 6px);
  background: url(../img/home/bg-stripe.png) repeat left top/clamp(2.7px, 0.9vw, 9px) clamp(2.7px, 0.9vw, 9px);
}
@media (hover: hover) {
  .case-card {
    -webkit-transition: 0.3s opacity ease-in-out;
    -o-transition: 0.3s opacity ease-in-out;
    transition: 0.3s opacity ease-in-out;
  }
  .case-card:hover {
    opacity: 0.6;
  }
}
.case-card__in {
  padding: clamp(9px, 3vw, 30px) clamp(2.4px, 0.8vw, 8px) clamp(3.6px, 1.2vw, 12px);
  background-color: var(--color-bg-body);
}
.case-card__en {
  margin: 0 0 0.05em;
  color: var(--color-primary);
  font-weight: bold;
  font-size: clamp(10.8px, 3.6vw, 36px);
  line-height: 1;
  font-family: var(--font-family-latin);
  text-align: center;
}
.case-card__ja {
  font-size: clamp(8.4px, 2.8vw, 28px);
  line-height: 1;
  text-align: center;
}
.case-card__sport {
  margin: 1.2em 0 0;
  font-weight: bold;
  font-size: clamp(8.4px, 2.8vw, 28px);
  line-height: 1;
  font-family: var(--font-family-latin);
  text-align: center;
}
.case-card__team {
  color: var(--color-primary);
  font-weight: bold;
  font-size: clamp(8.4px, 2.8vw, 28px);
  line-height: 1;
  font-family: var(--font-family-latin);
  text-align: center;
}
.case-card__image {
  margin: clamp(4.5px, 1.5vw, 15px) 0 0;
}
@media (min-width: 1000.02px) {
  .case-card {
    padding: clamp(4px, 0.5vw, 8px);
    background-size: 9px 9px;
  }
  .case-card__in {
    height: 100%;
    padding: clamp(16.5px, 2.0625vw, 33px) clamp(6px, 0.75vw, 12px) clamp(5px, 0.625vw, 10px);
  }
  .case-card__en {
    margin: 0 0 0.1em;
    font-size: clamp(20px, 2.5vw, 40px);
  }
  .case-card__ja {
    font-size: clamp(14px, 1.75vw, 28px);
  }
  .case-card__sport {
    margin: 1.35em 0 0;
    font-size: clamp(12px, 1.5vw, 24px);
  }
  .case-card__team {
    margin: 0.2em 0 0;
    font-size: clamp(12px, 1.5vw, 24px);
  }
  .case-card__image {
    margin: clamp(14px, 1.75vw, 28px) 0 0;
  }
}

.profile {
  position: relative;
  padding-top: clamp(24.6px, 8.2vw, 82px);
}
.profile::before {
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
  position: absolute;
  top: clamp(39.9px, 13.3vw, 133px);
  left: 0;
  width: 18%;
  height: clamp(12.9px, 4.3vw, 43px);
  background-color: var(--color-black);
  content: "";
          clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
}
.profile::after {
  -webkit-clip-path: polygon(100% 0%, 0% 100%, 100% 31%);
  position: absolute;
  top: 0;
  right: 0;
  width: 82%;
  height: clamp(39.9px, 13.3vw, 133px);
  background-color: var(--color-primary);
  content: "";
          clip-path: polygon(100% 0%, 0% 100%, 100% 31%);
}
.profile__title {
  color: #fff;
  font-weight: bold;
  font-size: clamp(12px, 4vw, 40px);
  line-height: 1;
  font-family: var(--font-family-latin);
  text-align: center;
}
.profile__text {
  color: #fff;
  font-size: clamp(7.2px, 2.4vw, 24px);
  line-height: 1;
  text-align: center;
}
.profile__container {
  -webkit-clip-path: polygon(0% 18%, 87.2395833333% 0%, 100% 0%, 100% 79%, 18.0208333333% 100%, 0% 100%);
  z-index: 2;
  position: relative;
  background-color: var(--color-black);
          clip-path: polygon(0% 18%, 87.2395833333% 0%, 100% 0%, 100% 79%, 18.0208333333% 100%, 0% 100%);
}
.profile__inner {
  -webkit-clip-path: polygon(0% 18%, 87.2395833333% 0%, 100% 0%, 100% 73.5%, 18.0208333333% 100%, 0% 100%);
  padding: clamp(39.3px, 13.1vw, 131px) var(--gutter) clamp(56.1px, 18.7vw, 187px);
  background: url(../img/home/bg-profile.jpg) no-repeat center center/cover;
          clip-path: polygon(0% 18%, 87.2395833333% 0%, 100% 0%, 100% 73.5%, 18.0208333333% 100%, 0% 100%);
}
.profile__block + .profile__block {
  margin-top: clamp(22.8px, 7.6vw, 76px);
}
@media (min-width: 1000.02px) {
  .profile {
    padding-top: clamp(77.5px, 9.6875vw, 155px);
  }
  .profile::before {
    top: clamp(128.5px, 16.0625vw, 257px);
    height: clamp(41.5px, 5.1875vw, 83px);
  }
  .profile::after {
    height: clamp(128.5px, 16.0625vw, 257px);
  }
  .profile__container {
    -webkit-clip-path: polygon(0% 23.6448598131%, 87.2395833333% 0%, 100% 0%, 100% 72.3%, 18.0208333333% 100%, 0% 100%);
            clip-path: polygon(0% 23.6448598131%, 87.2395833333% 0%, 100% 0%, 100% 72.3%, 18.0208333333% 100%, 0% 100%);
  }
  .profile__inner {
    -webkit-clip-path: polygon(0% 23.6448598131%, 87.2395833333% 0%, 100% 0%, 100% 64.7663551402%, 18.0208333333% 100%, 0% 100%);
    padding: clamp(116.5px, 14.5625vw, 233px) var(--gutter) clamp(143px, 17.875vw, 286px);
            clip-path: polygon(0% 23.6448598131%, 87.2395833333% 0%, 100% 0%, 100% 64.7663551402%, 18.0208333333% 100%, 0% 100%);
  }
  .profile__block + .profile__block {
    margin-top: clamp(60px, 7.5vw, 120px);
  }
  .profile__title {
    font-size: clamp(24px, 3vw, 48px);
  }
  .profile__text {
    margin: 0.5em 0 0;
    font-size: clamp(10px, 1.25vw, 20px);
  }
  .profile__button {
    margin: clamp(19px, 2.375vw, 38px) auto 0;
  }
}
@media (max-width: 1000px) {
  .profile__button {
    width: clamp(117.6px, 39.2vw, 392px);
    height: clamp(23.4px, 7.8vw, 78px);
    margin: clamp(8.7px, 2.9vw, 29px) auto 0;
  }
  .profile__button .button-arrow__text {
    font-size: clamp(8.4px, 2.8vw, 28px);
  }
  .profile__button .button-arrow__arrow {
    -webkit-transform: translateY(-7%);
        -ms-transform: translateY(-7%);
    right: clamp(6px, 2vw, 20px);
            transform: translateY(-7%);
  }
}

.news-content {
  padding: clamp(24.6px, 8.2vw, 82px) 0 0;
}
@media (min-width: 1000.02px) {
  .news-content {
    padding: clamp(41px, 5.125vw, 82px) 0 0;
  }
}

.news-article {
  position: relative;
  padding: 0 clamp(3.6px, 1.2vw, 12px) clamp(15px, 5vw, 50px);
  border-bottom: 1px solid var(--color-primary);
}
.news-article + .news-article {
  margin-top: clamp(15px, 5vw, 50px);
}
.news-article__date {
  display: block;
  margin: 0 0 0.35em;
  font-weight: bold;
  line-height: 1;
  font-family: var(--font-family-latin);
}
.news-article__button {
  -webkit-box-align: center;
      -ms-flex-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  top: clamp(15px, 5vw, 50px);
  right: clamp(3px, 1vw, 10px);
          align-items: center;
          justify-content: center;
  width: clamp(10.8px, 3.6vw, 36px);
  height: clamp(10.8px, 3.6vw, 36px);
  cursor: pointer;
}
.news-article__button::before, .news-article__button::after {
  position: absolute;
  width: 100%;
  height: clamp(1.2px, 0.4vw, 4px);
  border-radius: clamp(0.6px, 0.2vw, 2px);
  background-color: var(--color-primary);
  content: "";
}
.news-article__button::before {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
  -webkit-transition: 0.5s -webkit-transform ease-in-out;
  -o-transition: 0.5s transform ease-in-out;
          transform: rotate(90deg);
  transition: 0.5s -webkit-transform ease-in-out;
  transition: 0.5s transform ease-in-out;
  transition: 0.5s transform ease-in-out, 0.5s -webkit-transform ease-in-out;
}
.news-article__button.is-open::before {
  -webkit-transform: rotate(0deg);
      -ms-transform: rotate(0deg);
          transform: rotate(0deg);
}
.news-article__content {
  height: 3.14em;
  overflow: hidden;
  line-height: 1.57;
  letter-spacing: 0.03em;
}
.news-article__in {
  padding-right: clamp(15px, 5vw, 50px);
}
@media (min-width: 1000.02px) {
  .news-article {
    padding: 0 clamp(9.5px, 1.1875vw, 19px) clamp(12.5px, 1.5625vw, 25px);
  }
  .news-article + .news-article {
    margin-top: clamp(31px, 3.875vw, 62px);
  }
  .news-article__date {
    font-size: clamp(14px, 1.75vw, 28px);
  }
  .news-article__content {
    font-size: 24px;
  }
  .news-article__in {
    padding-right: clamp(75px, 9.375vw, 150px);
  }
  .news-article__button {
    top: clamp(39.5px, 4.9375vw, 79px);
    right: clamp(14px, 1.75vw, 28px);
    width: clamp(13.5px, 1.6875vw, 27px);
    height: clamp(13.5px, 1.6875vw, 27px);
  }
}

.privacy-catch {
  max-width: 1046px;
  margin: clamp(22.5px, 7.5vw, 75px) auto clamp(18px, 6vw, 60px);
}
.privacy-catch p {
  line-height: 1.9866666667;
}
@media (min-width: 1000.02px) {
  .privacy-catch {
    margin: clamp(19px, 2.375vw, 38px) auto clamp(20px, 2.5vw, 40px);
  }
}

.privacy-content {
  max-width: 1142px;
  margin-right: auto;
  margin-left: auto;
}
.privacy-content__title {
  position: relative;
  padding: 0 clamp(3.6px, 1.2vw, 12px) clamp(1.8px, 0.6vw, 6px);
  border-bottom: 1px solid var(--color-primary);
  font-weight: bold;
  font-size: clamp(13.2px, 4.4vw, 44px);
}
.privacy-content__title::before {
  position: absolute;
  bottom: -2px;
  left: 0;
  width: clamp(90px, 30vw, 300px);
  height: 3px;
  background-color: #040000;
  content: "";
}
.privacy-content__textbox {
  padding: clamp(12px, 4vw, 40px) clamp(6px, 2vw, 20px) clamp(18px, 6vw, 60px);
}
.privacy-content__textbox p {
  line-height: 1.9866666667;
}
@media (min-width: 1000.02px) {
  .privacy-content__title {
    padding: 0 clamp(13.5px, 1.6875vw, 27px) clamp(3px, 0.375vw, 6px);
    font-size: clamp(14px, 1.75vw, 28px);
  }
  .privacy-content__title::before {
    width: clamp(201px, 25.125vw, 402px);
  }
  .privacy-content__textbox {
    padding: clamp(15.5px, 1.9375vw, 31px) clamp(25px, 3.125vw, 50px);
  }
}