@charset "UTF-8";
:root {
  --color-text: #222222;
  --color-main: #3383ff;
  --color-sub: #ff9a0f;
  --color-grad: linear-gradient(90deg, #008bec, #03dad9);
  --color-base: #e1edfd;
  --color-shadow: #d3e0f0;
  --en-font: "Roboto", sans-serif;
  --color-bg: #ecf4ff;
}
.c-container {
  padding-block: 90px;
  max-width: 1580px;
  width: calc(100% - 80px);
  margin-inline: auto;
}
.c-primary-heading {
  text-align: center;
  font-weight: 700;
}
.c-primary-heading.-left {
  text-align: left;
}
.c-primary-heading .sub {
  font-size: 3rem;
  color: var(--color-main);
}
.c-primary-heading .main {
  font-size: 6rem;
  font-weight: 700;
}
.c-emphasis {
  color: var(--color-main);
}
.c-fit-img {
  width: 100%;
  height: auto;
  vertical-align: middle;
}
.c-btn {
  max-width: 748px;
  width: 100%;
  transition: all 0.3s;
}
.c-btn.-center {
  margin-inline: auto;
  max-width: 865px;
}
.c-btn.-middle {
  max-width: 438px;
  translate: 0;
}
.c-btn:hover {
  scale: 1.1;
}
.c-index-swiper-loop {
  width: calc(100vw + 360px);
  margin-inline: calc(50% - 50vw);
}
.c-index-swiper-loop .swiper-wrapper {
  transition-timing-function: linear;
}
.c-index-swiper-loop .swiper-slide {
  width: 378px;
  padding: 18px;
}
.c-index-swiper-loop .swiper-slide img {
  box-shadow: 0 0 31px var(--color-shadow);
}
.c-index-swiper-loop .swiper.-second {
  translate: -180px 0;
}
.u-hidden-sp {
  display: none;
}
@media screen and (max-width: 1440px) {
  .c-primary-heading .sub {
    font-size: 2rem;
    color: var(--color-main);
  }
  .c-primary-heading .main {
    font-size: 4rem;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .c-index-swiper-loop .swiper-slide {
    width: 180px;
    padding: 9px;
  }
  .c-index-swiper-loop .swiper.-second {
    translate: -90px 0;
  }
  .u-hidden-sp {
    display: block;
  }
  .c-primary-heading .sub {
    font-size: 1.6rem;
    color: var(--color-main);
  }
  .c-primary-heading .main {
    font-size: 2.4rem;
  }
  .c-container {
    padding-block: 40px;
    width: calc(100% - 32px);
  }
}
