@charset "UTF-8";
* {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

html {
  font-size: 62.5%;
}

@media screen and (max-width: 768px) {
  .br_pc {
    display: none;
  }
}

@media screen and (min-width: 1441px) {
  .br_sp {
    display: none;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .br_sp {
    display: none;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .br_sp {
    display: none;
  }
}

.wide {
  width: 1200px;
  margin: auto;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .wide {
    width: 800px;
  }
}
@media screen and (max-width: 768px) {
  .wide {
    width: 350px;
  }
}

.fade-in {
  opacity: 0;
  transition-duration: 1s;
  transition-property: opacity, transform;
}

.fade-in-up {
  transform: translate(0, 50px);
}

.fade-in-down {
  transform: translate(0, -50px);
}

.fade-in-left {
  transform: translate(-50px, 0);
}

.fade-in-right {
  transform: translate(50px, 0);
}

.scroll-in {
  opacity: 1;
  transform: translate(0, 0);
}

p {
  font-size: 1vw;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  p {
    font-size: 1.8vw;
  }
}
@media screen and (max-width: 768px) {
  p {
    font-size: 3.4vw;
  }
}

h1 {
  font-size: 3.3vw;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  h1 {
    font-size: 4.3vw;
  }
}
@media screen and (max-width: 768px) {
  h1 {
    font-size: 8vw;
  }
}

h2 {
  font-size: 2.5vw;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  h2 {
    font-size: 3.3vw;
  }
}
@media screen and (max-width: 768px) {
  h2 {
    font-size: 6vw;
  }
}

h3 {
  font-size: 2vw;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  h3 {
    font-size: 3vw;
  }
}
@media screen and (max-width: 768px) {
  h3 {
    font-size: 5vw;
  }
}

h4 {
  font-size: 1.7vw;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  h4 {
    font-size: 2.4vw;
  }
}
@media screen and (max-width: 768px) {
  h4 {
    font-size: 4vw;
  }
}

h5 {
  font-size: 1.3vw;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  h5 {
    font-size: 2vw;
  }
}
@media screen and (max-width: 768px) {
  h5 {
    font-size: 3.5vw;
  }
}

.header {
  height: 6.94vw;
  background: #fff;
}
.header__inner {
  height: 100%;
  margin: 0 auto;
  padding: 0 2.5vw;
  display: flex;
  align-items: center;
}
.header__logo {
  flex-shrink: 0;
  align-self: flex-start;
  padding-top: 0.07vw;
}
.header__logo a {
  text-decoration: none;
}
.header__logo-ja {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 2.78vw;
  letter-spacing: 0.14vw;
  color: #333;
  line-height: 1;
}
.header__logo-en {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 1.94vw;
  letter-spacing: 0.1vw;
  color: #333;
  line-height: 1;
  margin-top: 0.69vw;
}
.header__nav {
  flex: 1;
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .header__nav {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .header__nav {
    display: none;
  }
}
.header__nav-list {
  display: flex;
  align-items: center;
  gap: 2.78vw;
  list-style: none;
}
.header__nav-list li a {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 1.11vw;
  letter-spacing: 0.06vw;
  color: #333;
  text-decoration: none;
}
.header__nav-list li a:hover {
  opacity: 0.7;
}
.header__cta {
  flex-shrink: 0;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .header__cta {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .header__cta {
    display: none;
  }
}
.header__cta-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16.53vw;
  height: 2.92vw;
  background: #32bed2;
  border-radius: 2.22vw;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 1.11vw;
  letter-spacing: 0.06vw;
  text-decoration: none;
}
.header__cta-btn:hover {
  opacity: 0.85;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .header {
    height: 5.86vw;
  }
  .header__inner {
    padding: 0 1.95vw 0 0;
    padding-right: 0;
  }
  .header__logo {
    padding-top: 0.59vw;
  }
  .header__logo-ja {
    font-size: 2.34vw;
    letter-spacing: 0.1vw;
  }
  .header__logo-en {
    font-size: 1.37vw;
    letter-spacing: 0.05vw;
    margin-top: 0.39vw;
  }
}
@media screen and (max-width: 768px) {
  .header {
    height: 13.33vw;
  }
  .header__inner {
    padding: 0 4.27vw 0 0;
    padding-right: 0;
  }
  .header__logo {
    padding-top: 1.07vw;
  }
  .header__logo-ja {
    font-size: 4.8vw;
    letter-spacing: 0.13vw;
  }
  .header__logo-en {
    font-size: 2.93vw;
    letter-spacing: 0.08vw;
    margin-top: 0.53vw;
  }
}
.header__hamburger {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  flex-shrink: 0;
  margin-left: auto;
  background-color: #333;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .header__hamburger {
    display: flex;
    width: 5.86vw;
    height: 5.86vw;
    gap: 0.49vw;
  }
  .header__hamburger span {
    width: 2.15vw;
    height: 0.2vw;
  }
  .header__hamburger.is-open span:nth-child(1) {
    transform: translateY(0.68vw) rotate(45deg);
  }
  .header__hamburger.is-open span:nth-child(3) {
    transform: translateY(-0.68vw) rotate(-45deg);
  }
}
@media screen and (max-width: 768px) {
  .header__hamburger {
    display: flex;
    width: 13.33vw;
    height: 13.33vw;
    gap: 1.33vw;
  }
  .header__hamburger span {
    width: 5.87vw;
    height: 0.53vw;
  }
  .header__hamburger.is-open span:nth-child(1) {
    transform: translateY(1.87vw) rotate(45deg);
  }
  .header__hamburger.is-open span:nth-child(3) {
    transform: translateY(-1.87vw) rotate(-45deg);
  }
}
.header__hamburger span {
  display: block;
  background: #fff;
  transition: transform 0.3s ease, opacity 0.3s ease;
  transform-origin: center;
}
.header__hamburger.is-open span:nth-child(2) {
  opacity: 0;
  transform: scaleX(0);
}
@media screen and (min-width: 1441px) {
  .header__drawer {
    display: none !important;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .header__drawer {
    display: none !important;
  }
}
.header__drawer {
  position: fixed;
  left: 0;
  width: 100%;
  background: #fff;
  z-index: 999;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .header__drawer {
    top: 5.86vw;
    transform: translateY(-0.49vw);
  }
}
@media screen and (max-width: 768px) {
  .header__drawer {
    top: 13.33vw;
    transform: translateY(-1.33vw);
  }
}
.header__drawer.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .header__drawer-nav {
    padding: 0 1.95vw 2.34vw;
  }
  .header__drawer-list {
    list-style: none;
  }
  .header__drawer-list li {
    border-bottom: 1px solid #eee;
  }
  .header__drawer-list li:first-child {
    border-top: 1px solid #eee;
  }
  .header__drawer-list li a {
    display: block;
    padding: 1.56vw 0;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 1.56vw;
    color: #333;
    text-decoration: none;
    letter-spacing: 0.08vw;
  }
  .header__drawer-list li a:hover {
    color: #32bed2;
  }
  .header__drawer-cta {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 4.69vw;
    background: #32bed2;
    border-radius: 3.13vw;
    color: #fff;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 1.56vw;
    letter-spacing: 0.08vw;
    text-decoration: none;
    margin-top: 2.34vw;
  }
  .header__drawer-cta:hover {
    opacity: 0.85;
  }
}
@media screen and (max-width: 768px) {
  .header__drawer-nav {
    padding: 0 4.27vw 6.4vw;
  }
  .header__drawer-list {
    list-style: none;
  }
  .header__drawer-list li {
    border-bottom: 1px solid #eee;
  }
  .header__drawer-list li:first-child {
    border-top: 1px solid #eee;
  }
  .header__drawer-list li a {
    display: block;
    padding: 4.27vw 0;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 4.27vw;
    color: #333;
    text-decoration: none;
    letter-spacing: 0.21vw;
  }
  .header__drawer-list li a:hover {
    color: #32bed2;
  }
  .header__drawer-cta {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 12.8vw;
    background: #32bed2;
    border-radius: 8.53vw;
    color: #fff;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 4.27vw;
    letter-spacing: 0.21vw;
    text-decoration: none;
    margin-top: 6.4vw;
  }
  .header__drawer-cta:hover {
    opacity: 0.85;
  }
}

.mv {
  position: relative;
  height: 54.72vw;
  background: #fff;
  margin-bottom: 8vw;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .mv {
    margin-bottom: 12vw;
    height: 48.83vw;
  }
}
@media screen and (max-width: 768px) {
  .mv {
    height: 50vh;
    margin-bottom: 70vw;
  }
}
.mv .js-mv-swiper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.mv__slide {
  position: relative;
  width: 100%;
  height: 100%;
}
.mv__bg {
  position: absolute;
  top: 0;
  right: 0;
  width: 70.28vw;
  height: 100%;
  background-size: cover;
  background-position: center;
}
@media screen and (max-width: 768px) {
  .mv__bg {
    width: 100%;
  }
}
.mv__overlay {
  position: absolute;
  top: 8.89vw;
  left: 0;
  width: 44.93vw;
  height: 37.15vw;
  background: rgba(50, 190, 210, 0.7);
  z-index: 2;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .mv__overlay {
    width: 45vw;
    height: 40vw;
    top: 12vw;
  }
}
@media screen and (max-width: 768px) {
  .mv__overlay {
    width: 90vw;
    height: 78vw;
    top: 70vw;
    left: 50%;
    transform: translate(-50%, 0);
  }
}
.mv__content {
  position: absolute;
  top: 11.67vw;
  left: 5.49vw;
  z-index: 3;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .mv__content {
    top: 38%;
    left: 5%;
  }
}
@media screen and (max-width: 768px) {
  .mv__content {
    width: 80vw;
    top: 85%;
    left: 50%;
    transform: translate(-50%, 0);
  }
}
.mv__badge {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34.03vw;
  height: 4.38vw;
  background: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2.08vw;
  font-weight: 600;
  letter-spacing: 0.24vw;
  color: #32BED2;
}
@media screen and (max-width: 768px) {
  .mv__badge {
    width: 100%;
    height: auto;
    padding: 2.67vw 0;
    font-size: 5vw;
  }
}
.mv__text {
  margin-top: 2.92vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 3.13vw;
  font-weight: 500;
  line-height: 1.58;
  color: #fff;
  letter-spacing: 0.03vw;
}
@media screen and (max-width: 768px) {
  .mv__text {
    font-size: 6vw;
  }
}

.c-btn {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  width: 18.75vw;
  height: 4.24vw;
  padding: 0 1.39vw;
  border: 1px solid #32BED2;
  background: #fff;
  color: #32BED2;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.11vw;
  font-weight: 400;
  text-decoration: none;
  letter-spacing: 0.05vw;
}
.c-btn__arrow {
  font-size: 1.25vw;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .c-btn {
    width: 26.37vw;
    height: 5.96vw;
    padding: 0 1.95vw;
    font-size: 1.56vw;
  }
  .c-btn__arrow {
    font-size: 1.76vw;
  }
}
@media screen and (max-width: 768px) {
  .c-btn {
    width: 72vw;
    height: 16.27vw;
    padding: 0 4.27vw;
    font-size: 4.27vw;
  }
  .c-btn__arrow {
    font-size: 4.8vw;
  }
}

.recruit {
  position: relative;
  height: 44.51vw;
}
.recruit__badge {
  position: absolute;
  top: 0;
  left: 7.78vw;
  width: 15.97vw;
  height: 3.26vw;
  background: #32bed2;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.39vw;
  font-weight: 500;
  letter-spacing: 0.22vw;
}
.recruit__title {
  position: absolute;
  top: 4.51vw;
  left: 8.54vw;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 3.33vw;
  font-weight: 500;
  color: #333;
}
.recruit__teal {
  position: absolute;
  top: 7.29vw;
  left: 0;
  width: 60.97vw;
  height: 28.19vw;
  background: rgba(50, 190, 210, 0.15);
  padding-top: 8.47vw;
  padding-left: 9.03vw;
}
.recruit__sub {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.11vw;
  font-weight: 500;
  color: #32bed2;
  letter-spacing: 0.18vw;
  margin-bottom: 1vw;
}
.recruit__heading {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2.5vw;
  font-weight: 500;
  color: #333;
  margin-bottom: 2vw;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .recruit__heading {
    text-align: center;
  }
}
.recruit__line {
  display: block;
  width: 4.93vw;
  height: 2px;
  background: #32bed2;
  margin-bottom: 8.47vw;
}
.recruit__images {
  position: absolute;
  top: 16.32vw;
  right: 0;
  width: 50vw;
  height: 28.19vw;
  display: flex;
}
.recruit__img {
  flex: 1;
  background-size: cover;
  background-position: center;
  background-color: #e0e0e0;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .recruit {
    height: auto;
    padding-bottom: 9.77vw;
  }
  .recruit__badge {
    position: static;
    display: inline-flex;
    margin: 0 0 3.91vw 5.86vw;
    width: auto;
    height: 4.59vw;
    padding: 0 2.93vw;
    font-size: 1.76vw;
  }
  .recruit__title {
    position: static;
    display: block;
    margin: 0 0 3.91vw 5.86vw;
    font-size: 4.1vw;
  }
  .recruit__teal {
    position: static;
    width: 100%;
    height: auto;
    padding: 5.86vw 5.86vw 7.81vw;
    text-align: center;
  }
  .recruit__sub {
    font-size: 1.95vw;
    text-align: center;
    margin-bottom: 2vw;
  }
  .recruit__heading {
    font-size: 3.22vw;
    margin-bottom: 3vw;
  }
  .recruit__line {
    width: 6.93vw;
    margin: 0 auto;
  }
  .recruit__images {
    position: static;
    width: 100%;
    height: 29.3vw;
  }
  .recruit .c-btn {
    margin-top: 5.86vw;
    margin: 5vw auto;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 768px) {
  .recruit {
    height: auto;
    background-color: rgba(50, 190, 210, 0.15);
    padding-top: 8vw;
    margin-bottom: 24vw;
  }
  .recruit__badge {
    position: absolute;
    top: -4vw;
    left: 0;
    display: inline-flex;
    margin: 0 0 0 5.6vw;
    width: 49.07vw;
    height: 12.53vw;
    font-size: 6vw;
    letter-spacing: 0.27vw;
  }
  .recruit__title {
    position: static;
    display: block;
    margin: 4vw 0 0 5.6vw;
    font-size: 10.93vw;
  }
  .recruit__teal {
    position: static;
    width: 100%;
    height: auto;
    padding: 5vw 5.6vw 5vw;
    margin-top: 5.33vw;
    background: rgba(0, 0, 0, 0);
  }
  .recruit__sub {
    font-size: 3.2vw;
    text-align: center;
    margin-bottom: 5vw;
  }
  .recruit__heading {
    font-size: 7.2vw;
    margin-bottom: 8vw;
  }
  .recruit__line {
    width: 18.93vw;
    margin: 0 auto 0;
  }
  .recruit__images {
    position: static;
    width: 100%;
    height: 50.4vw;
  }
  .recruit .c-btn {
    display: inline-flex;
    margin: 8vw auto 0;
    position: absolute;
    bottom: -22vw;
    left: 50%;
    transform: translate(-50%, 0);
  }
}

.info {
  display: flex;
  gap: 6.11vw;
  padding: 6.94vw 5.56vw;
}
.info__item {
  flex: 1;
}
.info__sub {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.53vw;
  font-weight: 500;
  color: #32bed2;
  letter-spacing: 0.15vw;
}
.info__title {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2.64vw;
  font-weight: 500;
  color: #333;
  margin-top: 1vw;
}
.info__line {
  display: block;
  width: 4.93vw;
  height: 2px;
  background: #32bed2;
  margin-top: 1.67vw;
  margin-bottom: 1.53vw;
}
.info__img {
  width: 100%;
  height: 27.78vw;
  background-size: cover;
  background-position: center;
  background-color: #e0e0e0;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .info {
    gap: 5.86vw;
    padding: 7.81vw 5.86vw;
  }
  .info__sub {
    font-size: 1.95vw;
  }
  .info__title {
    font-size: 3.32vw;
    margin-top: 1vw;
  }
  .info__line {
    width: 6.93vw;
    margin-top: 1.95vw;
    margin-bottom: 1.95vw;
  }
  .info__img {
    height: 29.3vw;
  }
}
@media screen and (max-width: 768px) {
  .info {
    flex-direction: column;
    gap: 10.67vw;
    padding: 10.67vw 5.33vw;
  }
  .info__item {
    width: 100%;
  }
  .info__sub {
    font-size: 5.5vw;
  }
  .info__title {
    font-size: 10.13vw;
    margin-top: 1vw;
  }
  .info__line {
    width: 18.93vw;
    margin-top: 2.67vw;
    margin-bottom: 2.67vw;
  }
  .info__img {
    height: 60vw;
  }
}

.contact {
  position: relative;
  height: 35.63vw;
  overflow: hidden;
}
.contact__bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  background-color: #c0c8d0;
}
.contact__panel {
  position: absolute;
  top: 0;
  right: 0;
  width: 33.82vw;
  height: 100%;
  background: rgba(50, 190, 210, 0.88);
  padding-top: 5.07vw;
  padding-left: 4.72vw;
  padding-right: 2.78vw;
}
.contact__sub {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.39vw;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.18vw;
}
.contact__title {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2.64vw;
  font-weight: 500;
  color: #fff;
  margin-top: 1vw;
}
.contact__desc {
  font-family: "Noto Sans JP", sans-serif;
  color: #fff;
  margin-top: 2vw;
}
.contact__tel {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2.78vw;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.1vw;
  margin-top: 3.61vw;
}
.contact .c-btn {
  margin-top: 3.54vw;
  border: none;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact {
    height: auto;
  }
  .contact__bg {
    position: absolute;
    inset: 0;
  }
  .contact__panel {
    position: relative;
    width: 100%;
    background: rgba(50, 190, 210, 0.85);
    padding: 7.81vw 5.86vw;
  }
}
@media screen and (max-width: 768px) {
  .contact {
    height: auto;
  }
  .contact__bg {
    position: absolute;
    inset: 0;
    opacity: 0.3;
    background-size: cover;
  }
  .contact__panel {
    position: relative;
    width: 100%;
    background: rgba(50, 190, 210, 0.8);
    padding: 15.2vw 4.53vw 17.07vw;
  }
  .contact__sub {
    font-size: 5.5vw;
  }
  .contact__title {
    font-size: 10.13vw;
    margin-top: 1vw;
  }
  .contact__desc {
    margin-top: 4vw;
  }
  .contact__tel {
    font-size: 8vw;
    margin-top: 7.73vw;
  }
  .contact .c-btn {
    margin: auto;
    margin-top: 16.27vw;
    display: inline-flex;
  }
}

.footer {
  background: #000;
}
@media screen and (min-width: 1441px) {
  .footer {
    height: 20.97vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .footer {
    height: 20.97vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .footer {
    padding: 5.86vw 2.93vw 10.74vw;
  }
}
@media screen and (max-width: 768px) {
  .footer {
    padding: 5.87vw 5.33vw 26.4vw;
  }
}
.footer__inner {
  position: relative;
  max-width: 1440px;
  margin: 0 auto;
}
@media screen and (min-width: 1441px) {
  .footer__inner {
    height: 100%;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .footer__inner {
    height: 100%;
  }
}
@media screen and (min-width: 1441px) {
  .footer__nav {
    position: absolute;
    top: 5.9vw;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .footer__nav {
    position: absolute;
    top: 5.9vw;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
  }
}
.footer__nav-list {
  list-style: none;
}
@media screen and (min-width: 1441px) {
  .footer__nav-list {
    display: flex;
    align-items: center;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .footer__nav-list {
    display: flex;
    align-items: center;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .footer__nav-list {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .footer__nav-list {
    display: block;
  }
}
@media screen and (min-width: 1441px) {
  .footer__nav-list li {
    display: flex;
    align-items: center;
  }
  .footer__nav-list li:not(:first-child)::before {
    content: "　｜　";
    color: #fff;
    font-weight: 300;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .footer__nav-list li {
    display: flex;
    align-items: center;
  }
  .footer__nav-list li:not(:first-child)::before {
    content: "　｜　";
    color: #fff;
    font-weight: 300;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .footer__nav-list li {
    line-height: 2.5;
  }
  .footer__nav-list li:not(:first-child)::before {
    color: #fff;
  }
}
@media screen and (max-width: 768px) {
  .footer__nav-list li {
    line-height: 2.5;
  }
  .footer__nav-list li:not(:first-child)::before {
    color: #fff;
  }
}
.footer__nav-list li a {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  text-decoration: none;
  color: #fff;
}
@media screen and (min-width: 1441px) {
  .footer__nav-list li a {
    font-size: 1vw;
    letter-spacing: 0.07vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .footer__nav-list li a {
    font-size: 1vw;
    letter-spacing: 0.07vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .footer__nav-list li a {
    font-size: 1.8vw;
    letter-spacing: 0.08vw;
  }
}
@media screen and (max-width: 768px) {
  .footer__nav-list li a {
    font-size: 3.4vw;
    letter-spacing: 0.21vw;
  }
}
.footer__nav-list li a:hover {
  opacity: 0.7;
}
.footer__copy {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #fff;
}
@media screen and (min-width: 1441px) {
  .footer__copy {
    position: absolute;
    top: 15.07vw;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
    font-size: 1.11vw;
    letter-spacing: 0.07vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .footer__copy {
    position: absolute;
    top: 15.07vw;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
    font-size: 1.11vw;
    letter-spacing: 0.07vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .footer__copy {
    font-size: 1.37vw;
    letter-spacing: 0.05vw;
    margin-top: 5.86vw;
  }
}
@media screen and (max-width: 768px) {
  .footer__copy {
    font-size: 3.73vw;
    letter-spacing: 0.13vw;
    margin-top: 15.73vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .footer__pagetop {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .footer__pagetop {
    display: none !important;
  }
}
.footer__pagetop {
  position: absolute;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #32bed2;
  text-decoration: none;
  color: #fff;
  cursor: pointer;
}
@media screen and (min-width: 1441px) {
  .footer__pagetop {
    top: 5.9vw;
    right: 2.64vw;
    width: 6.94vw;
    height: 6.94vw;
  }
  .footer__pagetop img {
    width: 100%;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .footer__pagetop {
    top: 5.9vw;
    right: 2.64vw;
    width: 6.94vw;
    height: 6.94vw;
  }
  .footer__pagetop img {
    width: 100%;
  }
}
.footer__pagetop:hover {
  opacity: 0.85;
}
.footer__pagetop img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

@media screen and (min-width: 1441px) {
  .footer__bar {
    display: none !important;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .footer__bar {
    display: none !important;
  }
}
.footer__bar {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  display: flex;
  align-items: center;
  background: #333;
  z-index: 1000;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .footer__bar {
    height: 6.45vw;
  }
}
@media screen and (max-width: 768px) {
  .footer__bar {
    height: 17.6vw;
  }
}
.footer__bar-item {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  text-decoration: none;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .footer__bar-item {
    gap: 0.39vw;
  }
}
@media screen and (max-width: 768px) {
  .footer__bar-item {
    gap: 1.07vw;
  }
}
.footer__bar-icon {
  color: #32bed2;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .footer__bar-icon {
    font-size: 2.44vw;
  }
}
@media screen and (max-width: 768px) {
  .footer__bar-icon {
    font-size: 6.67vw;
  }
}
.footer__bar-label {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .footer__bar-label {
    font-size: 1.17vw;
  }
}
@media screen and (max-width: 768px) {
  .footer__bar-label {
    font-size: 3.2vw;
  }
}
.footer__bar-divider {
  width: 1px;
  background: #555;
  align-self: stretch;
}
.footer__bar-pagetop {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: #32bed2;
  border-radius: 50%;
  border: none;
  cursor: pointer;
  color: #fff;
  flex-shrink: 0;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .footer__bar-pagetop {
    width: 6.15vw;
    height: 6.15vw;
    margin: 0 0.29vw;
  }
}
@media screen and (max-width: 768px) {
  .footer__bar-pagetop {
    width: 16.8vw;
    height: 16.8vw;
    margin: 0 0.53vw;
  }
}
.footer__bar-pagetop img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.footer__bar-pagetop:hover {
  opacity: 0.85;
}

.page-mv {
  position: relative;
  width: 100%;
  height: 33.33vw;
}
.page-mv__bg {
  position: absolute;
  right: 0;
  top: 0;
  width: 70.28vw;
  height: 100%;
  background-size: cover;
  background-position: center;
}
.page-mv__panel {
  position: absolute;
  left: 0;
  top: 3.89vw;
  width: 43.82vw;
  height: 29.44vw;
  background: rgba(50, 190, 210, 0.85);
}
.page-mv__sub {
  position: absolute;
  left: 9.1vw;
  top: 12vw;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 2vw;
  letter-spacing: 0.14vw;
  color: #fff;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .page-mv__sub {
    left: 6.6vw;
    font-size: 3vw;
    top: 10vw;
  }
}
.page-mv__title {
  position: absolute;
  left: 8.47vw;
  top: 16vw;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 2.78vw;
  color: #fff;
  line-height: 1;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .page-mv__title {
    font-size: 4vw;
  }
}
@media screen and (max-width: 768px) {
  .page-mv__title {
    font-size: 5vw;
    left: 6vw;
  }
}

.feature {
  padding: 6.46vw 5.56vw 6.94vw;
}
.feature__list {
  display: flex;
  flex-direction: column;
  gap: 5.28vw;
}
.feature__item {
  display: flex;
  align-items: flex-start;
  gap: 3.61vw;
}
@media screen and (max-width: 768px) {
  .feature__item {
    flex-flow: column;
    margin-bottom: 8vw;
  }
}
.feature__item--reverse {
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .feature__item--reverse {
    flex-flow: column;
  }
}
.feature__text {
  width: 43.47vw;
  flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  .feature__text {
    width: 100%;
  }
}
.feature__header {
  display: flex;
  align-items: flex-start;
  gap: 1.81vw;
}
@media screen and (max-width: 768px) {
  .feature__header {
    margin-bottom: 4vw;
  }
}
.feature__num-wrap {
  flex-shrink: 0;
}
.feature__label {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 0.97vw;
  color: #32bed2;
  letter-spacing: 0.14vw;
  line-height: 1;
  margin-bottom: -0.49vw;
}
@media screen and (max-width: 768px) {
  .feature__label {
    font-size: 2.4vw;
  }
}
.feature__num {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 7.99vw;
  color: #32bed2;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .feature__num {
    font-size: 9vw;
  }
}
.feature__heading {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 2vw;
  color: #333;
  line-height: 1.4;
  padding-top: 1.04vw;
}
@media screen and (max-width: 768px) {
  .feature__heading {
    font-size: 4vw;
  }
}
.feature__body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 1.04vw;
  color: #333;
  line-height: 1.9;
  margin-top: 1.88vw;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .feature__body {
    font-size: 1.8vw;
  }
}
@media screen and (max-width: 768px) {
  .feature__body {
    font-size: 3.4vw;
  }
}
.feature__img {
  width: 41.81vw;
  height: 31.94vw;
  flex-shrink: 0;
  background-size: cover;
  background-position: center;
  border-radius: 0.69vw;
}
@media screen and (max-width: 768px) {
  .feature__img {
    width: 100%;
  }
}
.feature__entry {
  display: flex;
  justify-content: center;
  margin-top: 14.86vw;
}
@media screen and (max-width: 768px) {
  .feature__entry {
    margin-top: 8vw;
  }
}
.feature__entry-btn {
  display: flex;
  align-items: center;
  width: 36.6vw;
  background: #32bed2;
  text-decoration: none;
  padding: 2.4vw 1.5vw;
}
@media screen and (max-width: 768px) {
  .feature__entry-btn {
    width: 60%;
    padding: 4vw 3vw;
  }
}
.feature__entry-btn:hover {
  opacity: 0.85;
}
.feature__entry-icon {
  font-size: 3.4vw;
  color: #fff;
  flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  .feature__entry-icon {
    font-size: 4.5vw;
  }
}
.feature__entry-text {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.28vw;
}
.feature__entry-main {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 2.22vw;
  color: #fff;
  letter-spacing: 0.14vw;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .feature__entry-main {
    font-size: 4vw;
    line-height: 1.5;
  }
}
.feature__entry-sub {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 1.11vw;
  color: #fff;
  letter-spacing: 0.07vw;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .feature__entry-sub {
    font-size: 2.4vw;
  }
}
.feature__entry-arrow {
  font-size: 1.96vw;
  color: #fff;
  flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  .feature__entry-arrow {
    font-size: 4vw;
  }
}

.business {
  padding: 6.46vw 5.56vw 8.33vw;
}
.business__inner {
  display: flex;
  flex-direction: column;
  gap: 5.28vw;
}
.business__item {
  position: relative;
  height: 31.94vw;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .business__item {
    height: 38vw;
  }
}
@media screen and (max-width: 768px) {
  .business__item {
    position: static;
    height: auto;
    display: flex;
    flex-direction: column-reverse;
    gap: 4.27vw;
    margin-bottom: 10.67vw;
  }
}
.business__text {
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
}
.business__item--reverse .business__text {
  left: auto;
  right: 0;
}
@media screen and (max-width: 768px) {
  .business__text {
    position: static;
    width: 100%;
  }
}
.business__box {
  position: absolute;
  top: 2.15vw;
  left: 0;
  width: 100%;
  height: 27.64vw;
  border: 1px solid #32bed2;
  padding: 4vw 1vw;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .business__box {
    height: auto;
  }
}
@media screen and (max-width: 768px) {
  .business__box {
    position: static;
    height: auto;
    padding: 6.4vw 5.33vw;
  }
}
.business__title-row {
  display: flex;
  align-items: flex-start;
}
.business__bar {
  flex-shrink: 0;
  background: linear-gradient(to bottom, #32bed2 51%, #d2f1f4 49%);
}
@media screen and (min-width: 1441px) {
  .business__bar {
    width: 0.63vw;
    height: 3.4vw;
    margin-right: 1.67vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .business__bar {
    width: 0.63vw;
    height: 3.4vw;
    margin-right: 1.67vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .business__bar {
    width: 0.88vw;
    height: 4.79vw;
    margin-right: 2.34vw;
  }
}
@media screen and (max-width: 768px) {
  .business__bar {
    width: 2.4vw;
    height: 13.07vw;
    margin-right: 3.2vw;
  }
}
.business__title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #333;
  letter-spacing: 0.11vw;
  line-height: 1.56;
}
@media screen and (min-width: 1441px) {
  .business__title {
    font-size: 2.22vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .business__title {
    font-size: 2.22vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .business__title {
    font-size: 2.93vw;
  }
}
@media screen and (max-width: 768px) {
  .business__title {
    font-size: 5.33vw;
  }
}
.business__body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #333;
  line-height: 2.5;
  letter-spacing: 0.06vw;
}
@media screen and (min-width: 1441px) {
  .business__body {
    font-size: 1.11vw;
    margin-top: 3.75vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .business__body {
    font-size: 1.11vw;
    margin-top: 3.75vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .business__body {
    font-size: 1.56vw;
    margin-top: 5.27vw;
  }
}
@media screen and (max-width: 768px) {
  .business__body {
    font-size: 3.73vw;
    margin-top: 4.27vw;
  }
}
.business__img {
  position: absolute;
  top: 0;
  right: 0;
  width: 50%;
  height: 100%;
  background-size: cover;
  background-position: center;
  z-index: 1;
}
.business__item--reverse .business__img {
  right: auto;
  left: 0;
}
@media screen and (max-width: 768px) {
  .business__img {
    position: static;
    width: 100%;
    height: 53.33vw;
  }
}

.company-greeting {
  padding: 4.097vw 5.625vw 0;
  text-align: center;
}
.company-greeting__eyebrow {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #32bed2;
  letter-spacing: 0.083vw;
  line-height: 1;
}
@media screen and (min-width: 1441px) {
  .company-greeting__eyebrow {
    font-size: 1.667vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .company-greeting__eyebrow {
    font-size: 1.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .company-greeting__eyebrow {
    font-size: 2.344vw;
  }
}
@media screen and (max-width: 768px) {
  .company-greeting__eyebrow {
    font-size: 4.267vw;
  }
}
.company-greeting__title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #333;
  letter-spacing: 0.139vw;
  line-height: 1;
}
@media screen and (min-width: 1441px) {
  .company-greeting__title {
    font-size: 2.778vw;
    margin-top: 1.389vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .company-greeting__title {
    font-size: 2.778vw;
    margin-top: 1.389vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .company-greeting__title {
    font-size: 3.906vw;
    margin-top: 1.953vw;
  }
}
@media screen and (max-width: 768px) {
  .company-greeting__title {
    font-size: 6.4vw;
    margin-top: 2.667vw;
  }
}
.company-greeting__accent {
  display: block;
  background: #32bed2;
  margin: 0 auto;
}
@media screen and (min-width: 1441px) {
  .company-greeting__accent {
    width: 4.931vw;
    height: 0.347vw;
    margin-top: 2.361vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .company-greeting__accent {
    width: 4.931vw;
    height: 0.347vw;
    margin-top: 2.361vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .company-greeting__accent {
    width: 6.934vw;
    height: 0.488vw;
    margin-top: 3.32vw;
  }
}
@media screen and (max-width: 768px) {
  .company-greeting__accent {
    width: 18.933vw;
    height: 1.333vw;
    margin-top: 4vw;
  }
}
.company-greeting__rule {
  border: none;
  border-top: 0.139vw solid #e0e0e0;
  width: 100%;
}
@media screen and (min-width: 1441px) {
  .company-greeting__rule {
    margin-top: 1.736vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .company-greeting__rule {
    margin-top: 1.736vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .company-greeting__rule {
    margin-top: 2.441vw;
  }
}
@media screen and (max-width: 768px) {
  .company-greeting__rule {
    margin-top: 4vw;
  }
}
.company-greeting__head {
  text-align: center;
}
.company-greeting__body {
  margin: 4vw auto;
  width: 70.208vw;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .company-greeting__body {
    padding-left: 4vw;
    width: auto;
  }
}
@media screen and (max-width: 768px) {
  .company-greeting__body {
    padding-left: 0;
    width: 100%;
  }
}
.company-greeting__lead {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #333;
  letter-spacing: 0.056vw;
  text-align: start;
}
@media screen and (min-width: 1441px) {
  .company-greeting__lead {
    font-size: 1.667vw;
    line-height: 2.431vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .company-greeting__lead {
    font-size: 1.667vw;
    line-height: 2.431vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .company-greeting__lead {
    font-size: 2.344vw;
    line-height: 3.418vw;
  }
}
@media screen and (max-width: 768px) {
  .company-greeting__lead {
    font-size: 5.5vw;
    line-height: 2;
  }
}
.company-greeting__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #333;
  letter-spacing: 0.056vw;
  margin-top: 1.389vw;
  text-align: start;
}
@media screen and (min-width: 1441px) {
  .company-greeting__text {
    font-size: 1.111vw;
    line-height: 2.431vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .company-greeting__text {
    font-size: 1.111vw;
    line-height: 2.431vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .company-greeting__text {
    font-size: 1.563vw;
    line-height: 2.8;
  }
}
@media screen and (max-width: 768px) {
  .company-greeting__text {
    font-size: 3.733vw;
    line-height: 2;
  }
}
.company-greeting__sign {
  text-align: right;
  padding-right: 10vw;
}
@media screen and (min-width: 1441px) {
  .company-greeting__sign {
    margin-top: 1.25vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .company-greeting__sign {
    margin-top: 1.25vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .company-greeting__sign {
    margin-top: 2vw;
    padding-right: 4vw;
  }
}
@media screen and (max-width: 768px) {
  .company-greeting__sign {
    margin-top: 4vw;
    padding-right: 0;
  }
}
.company-greeting__sign-role {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #333;
}
@media screen and (min-width: 1441px) {
  .company-greeting__sign-role {
    font-size: 1.389vw;
    line-height: 3.056vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .company-greeting__sign-role {
    font-size: 1.389vw;
    line-height: 3.056vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .company-greeting__sign-role {
    font-size: 1.953vw;
    line-height: 2.5;
  }
}
@media screen and (max-width: 768px) {
  .company-greeting__sign-role {
    font-size: 3.733vw;
    line-height: 2;
  }
}
.company-greeting__sign-name {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #333;
}
@media screen and (min-width: 1441px) {
  .company-greeting__sign-name {
    font-size: 1.667vw;
    line-height: 3.056vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .company-greeting__sign-name {
    font-size: 1.667vw;
    line-height: 3.056vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .company-greeting__sign-name {
    font-size: 2.344vw;
    line-height: 2.5;
  }
}
@media screen and (max-width: 768px) {
  .company-greeting__sign-name {
    font-size: 4.8vw;
    line-height: 2;
  }
}

.company-info {
  padding: 10.347vw 5.625vw 8.333vw;
  text-align: center;
}
.company-info__eyebrow {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #32bed2;
  letter-spacing: 0.083vw;
  line-height: 1;
}
@media screen and (min-width: 1441px) {
  .company-info__eyebrow {
    font-size: 1.667vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .company-info__eyebrow {
    font-size: 1.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .company-info__eyebrow {
    font-size: 2.344vw;
  }
}
@media screen and (max-width: 768px) {
  .company-info__eyebrow {
    font-size: 4.267vw;
  }
}
.company-info__title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #333;
  letter-spacing: 0.139vw;
  line-height: 1;
}
@media screen and (min-width: 1441px) {
  .company-info__title {
    font-size: 2.778vw;
    margin-top: 1.389vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .company-info__title {
    font-size: 2.778vw;
    margin-top: 1.389vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .company-info__title {
    font-size: 3.906vw;
    margin-top: 1.953vw;
  }
}
@media screen and (max-width: 768px) {
  .company-info__title {
    font-size: 6.4vw;
    margin-top: 2.667vw;
  }
}
.company-info__accent {
  display: block;
  background: #32bed2;
  margin: 0 auto;
}
@media screen and (min-width: 1441px) {
  .company-info__accent {
    width: 4.931vw;
    height: 0.347vw;
    margin-top: 2.361vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .company-info__accent {
    width: 4.931vw;
    height: 0.347vw;
    margin-top: 2.361vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .company-info__accent {
    width: 6.934vw;
    height: 0.488vw;
    margin-top: 3.32vw;
  }
}
@media screen and (max-width: 768px) {
  .company-info__accent {
    width: 18.933vw;
    height: 1.333vw;
    margin-top: 4vw;
  }
}
.company-info__rule {
  border: none;
  border-top: 0.139vw solid #e0e0e0;
  width: 100%;
}
@media screen and (min-width: 1441px) {
  .company-info__rule {
    margin-top: 1.736vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .company-info__rule {
    margin-top: 1.736vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .company-info__rule {
    margin-top: 2.441vw;
  }
}
@media screen and (max-width: 768px) {
  .company-info__rule {
    margin-top: 4vw;
  }
}
.company-info__head {
  text-align: center;
}
.company-info__table {
  border-collapse: collapse;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #333;
  letter-spacing: 0.056vw;
  margin: 0 auto;
}
@media screen and (min-width: 1441px) {
  .company-info__table {
    width: 43.125vw;
    margin-top: 3.82vw;
    font-size: 1.111vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .company-info__table {
    width: 43.125vw;
    margin-top: 3.82vw;
    font-size: 1.111vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .company-info__table {
    width: 70vw;
    margin-top: 5vw;
    font-size: 1.563vw;
  }
}
@media screen and (max-width: 768px) {
  .company-info__table {
    width: 100%;
    margin-top: 6.4vw;
    font-size: 3.733vw;
  }
}
.company-info__table tr:first-child th {
  border-top: none !important;
}
.company-info__table tr:first-child td {
  border-top: none !important;
}
.company-info__table th {
  text-align: left;
  white-space: nowrap;
  font-weight: 500;
  vertical-align: middle;
  border-top: 1px solid #32bed2;
}
@media screen and (min-width: 1441px) {
  .company-info__table th {
    width: 7.708vw;
    height: 4.375vw;
    padding-left: 2.014vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .company-info__table th {
    width: 7.708vw;
    height: 4.375vw;
    padding-left: 2.014vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .company-info__table th {
    width: 12vw;
    height: 6.15vw;
    padding-left: 2vw;
  }
}
@media screen and (max-width: 768px) {
  .company-info__table th {
    display: block;
    width: 100%;
    height: auto;
    padding: 2.667vw 0 0;
    border-top: 1px solid #32bed2;
    border-bottom: none;
    white-space: normal;
  }
}
.company-info__table td {
  font-weight: 500;
  vertical-align: middle;
  border-top: 1px solid #d2f1f4;
  text-align: start;
}
@media screen and (min-width: 1441px) {
  .company-info__table td {
    height: 4.375vw;
    padding-left: 2.014vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .company-info__table td {
    height: 4.375vw;
    padding-left: 2.014vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .company-info__table td {
    height: 6.15vw;
    padding-left: 2vw;
  }
}
@media screen and (max-width: 768px) {
  .company-info__table td {
    display: block;
    width: 100%;
    height: auto;
    padding: 1.333vw 0 2.667vw;
    border-top: none;
    border-bottom: 1px solid #d2f1f4;
  }
}
.company-info__table tr:last-child th {
  border-bottom: 1px solid #32bed2;
}
@media screen and (max-width: 768px) {
  .company-info__table tr:last-child th {
    border-bottom: none;
  }
}
.company-info__table tr:last-child td {
  border-bottom: 1px solid #d2f1f4;
}
@media screen and (max-width: 768px) {
  .company-info__table tr {
    display: block;
  }
}

.contact-intro {
  text-align: center;
}
.contact-intro__eyebrow {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #32bed2;
  letter-spacing: 0.083vw;
  line-height: 1;
}
@media screen and (min-width: 1441px) {
  .contact-intro__eyebrow {
    font-size: 1.667vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-intro__eyebrow {
    font-size: 1.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-intro__eyebrow {
    font-size: 2.344vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-intro__eyebrow {
    font-size: 4.267vw;
  }
}
.contact-intro__title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #333;
  letter-spacing: 0.139vw;
  line-height: 1;
}
@media screen and (min-width: 1441px) {
  .contact-intro__title {
    font-size: 2.778vw;
    margin-top: 1.389vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-intro__title {
    font-size: 2.778vw;
    margin-top: 1.389vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-intro__title {
    font-size: 3.906vw;
    margin-top: 1.953vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-intro__title {
    font-size: 6.4vw;
    margin-top: 2.667vw;
  }
}
.contact-intro__accent {
  display: block;
  background: #32bed2;
  margin: 0 auto;
}
@media screen and (min-width: 1441px) {
  .contact-intro__accent {
    width: 4.931vw;
    height: 0.347vw;
    margin-top: 2.361vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-intro__accent {
    width: 4.931vw;
    height: 0.347vw;
    margin-top: 2.361vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-intro__accent {
    width: 6.934vw;
    height: 0.488vw;
    margin-top: 3.32vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-intro__accent {
    width: 18.933vw;
    height: 1.333vw;
    margin-top: 4vw;
  }
}
.contact-intro__rule {
  border: none;
  border-top: 0.139vw solid #e0e0e0;
  width: 100%;
}
@media screen and (min-width: 1441px) {
  .contact-intro__rule {
    margin-top: 1.736vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-intro__rule {
    margin-top: 1.736vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-intro__rule {
    margin-top: 2.441vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-intro__rule {
    margin-top: 4vw;
  }
}
@media screen and (min-width: 1441px) {
  .contact-intro {
    padding: 4.097vw 5.625vw 0;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-intro {
    padding: 4.097vw 5.625vw 0;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-intro {
    padding: 5.762vw 5.859vw 0;
  }
}
@media screen and (max-width: 768px) {
  .contact-intro {
    padding: 10.667vw 5.333vw 0;
  }
}
.contact-intro__head {
  text-align: center;
}
.contact-intro__body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #333;
  text-align: center;
  line-height: 2;
}
@media screen and (min-width: 1441px) {
  .contact-intro__body {
    font-size: 0.972vw;
    margin-top: 3.472vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-intro__body {
    font-size: 0.972vw;
    margin-top: 3.472vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-intro__body {
    font-size: 1.563vw;
    margin-top: 4.883vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-intro__body {
    font-size: 3.733vw;
    margin-top: 8vw;
    text-align: left;
  }
}
.contact-intro__body p {
  font-size: inherit;
  line-height: inherit;
  color: #333;
}
.contact-intro__link {
  color: #32bed2;
  text-decoration: underline;
}
.contact-intro__req {
  display: inline-block;
  color: #f00000;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
}
@media screen and (min-width: 1441px) {
  .contact-intro__req {
    font-size: 0.694vw;
    padding: 0.139vw 0.417vw;
    margin-left: 0.417vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-intro__req {
    font-size: 0.694vw;
    padding: 0.139vw 0.417vw;
    margin-left: 0.417vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-intro__req {
    font-size: 0.977vw;
    padding: 0.195vw 0.586vw;
    margin-left: 0.586vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-intro__req {
    font-size: 2.667vw;
    padding: 0.533vw 1.067vw;
    margin-left: 1.067vw;
  }
}
.contact-intro__phone {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 1441px) {
  .contact-intro__phone {
    gap: 1.111vw;
    margin-top: 2.778vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-intro__phone {
    gap: 1.111vw;
    margin-top: 2.778vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-intro__phone {
    gap: 1.563vw;
    margin-top: 3.906vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-intro__phone {
    gap: 2.667vw;
    margin-top: 6.667vw;
  }
}
.contact-intro__phone-icon {
  color: #32bed2;
}
@media screen and (min-width: 1441px) {
  .contact-intro__phone-icon {
    font-size: 2.222vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-intro__phone-icon {
    font-size: 2.222vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-intro__phone-icon {
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-intro__phone-icon {
    font-size: 6.4vw;
  }
}
.contact-intro__phone-num {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  color: #32bed2;
  letter-spacing: 0.139vw;
  line-height: 1;
}
@media screen and (min-width: 1441px) {
  .contact-intro__phone-num {
    font-size: 2.778vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-intro__phone-num {
    font-size: 2.778vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-intro__phone-num {
    font-size: 3.906vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-intro__phone-num {
    font-size: 7.467vw;
  }
}

.contact-form {
  text-align: center;
}
.contact-form__eyebrow {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #32bed2;
  letter-spacing: 0.083vw;
  line-height: 1;
}
@media screen and (min-width: 1441px) {
  .contact-form__eyebrow {
    font-size: 1.667vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-form__eyebrow {
    font-size: 1.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-form__eyebrow {
    font-size: 2.344vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-form__eyebrow {
    font-size: 4.267vw;
  }
}
.contact-form__title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #333;
  letter-spacing: 0.139vw;
  line-height: 1;
}
@media screen and (min-width: 1441px) {
  .contact-form__title {
    font-size: 2.778vw;
    margin-top: 1.389vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-form__title {
    font-size: 2.778vw;
    margin-top: 1.389vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-form__title {
    font-size: 3.906vw;
    margin-top: 1.953vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-form__title {
    font-size: 6.4vw;
    margin-top: 2.667vw;
  }
}
.contact-form__accent {
  display: block;
  background: #32bed2;
  margin: 0 auto;
}
@media screen and (min-width: 1441px) {
  .contact-form__accent {
    width: 4.931vw;
    height: 0.347vw;
    margin-top: 2.361vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-form__accent {
    width: 4.931vw;
    height: 0.347vw;
    margin-top: 2.361vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-form__accent {
    width: 6.934vw;
    height: 0.488vw;
    margin-top: 3.32vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-form__accent {
    width: 18.933vw;
    height: 1.333vw;
    margin-top: 4vw;
  }
}
.contact-form__rule {
  border: none;
  border-top: 0.139vw solid #e0e0e0;
  width: 100%;
}
@media screen and (min-width: 1441px) {
  .contact-form__rule {
    margin-top: 1.736vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-form__rule {
    margin-top: 1.736vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-form__rule {
    margin-top: 2.441vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-form__rule {
    margin-top: 4vw;
  }
}
@media screen and (min-width: 1441px) {
  .contact-form {
    padding: 11.667vw 5.625vw 0;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-form {
    padding: 11.667vw 5.625vw 0;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-form {
    padding: 16.406vw 5.859vw 0;
  }
}
@media screen and (max-width: 768px) {
  .contact-form {
    padding: 16vw 5.333vw 0;
  }
}
.contact-form__head {
  text-align: center;
}
.contact-form__form {
  margin: 0 auto;
}
@media screen and (min-width: 1441px) {
  .contact-form__form {
    width: 49.653vw;
    margin-top: 3.472vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-form__form {
    width: 49.653vw;
    margin-top: 3.472vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-form__form {
    width: 70vw;
    margin-top: 4.883vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-form__form {
    width: 100%;
    margin-top: 8vw;
  }
}
.contact-form__row p {
  display: flex;
  align-items: center;
  border-bottom: 0.069vw solid #e0e0e0;
}
@media screen and (min-width: 1441px) {
  .contact-form__row p {
    min-height: 5.069vw;
    gap: 1.667vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-form__row p {
    min-height: 5.069vw;
    gap: 1.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-form__row p {
    min-height: 7.129vw;
    gap: 2.344vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-form__row p {
    flex-direction: column;
    align-items: flex-start;
    gap: 2.133vw;
    padding: 4vw 0;
    border-bottom: 0.267vw solid #e0e0e0;
  }
}
.contact-form__row p:first-of-type {
  border-top: 0.069vw solid #e0e0e0;
}
@media screen and (max-width: 768px) {
  .contact-form__row p:first-of-type {
    border-top: 0.267vw solid #e0e0e0;
  }
}
.contact-form__label {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #333;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 0.556vw;
}
@media screen and (min-width: 1441px) {
  .contact-form__label {
    font-size: 0.972vw;
    width: 15.903vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-form__label {
    font-size: 0.972vw;
    width: 15.903vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-form__label {
    font-size: 1.563vw;
    width: 22.363vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-form__label {
    font-size: 3.733vw;
    width: 100%;
    gap: 1.333vw;
  }
}
.contact-form__req {
  display: inline-block;
  color: #f00000;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
}
@media screen and (min-width: 1441px) {
  .contact-form__req {
    font-size: 0.694vw;
    padding: 0.139vw 0.417vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-form__req {
    font-size: 0.694vw;
    padding: 0.139vw 0.417vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-form__req {
    font-size: 0.977vw;
    padding: 0.195vw 0.586vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-form__req {
    font-size: 2.667vw;
    padding: 0.533vw 1.067vw;
  }
}
.contact-form__input {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #333;
  border: 0.069vw solid #32bed2;
  background: #f9f9f9;
  outline: none;
  width: 100%;
}
@media screen and (min-width: 1441px) {
  .contact-form__input {
    font-size: 0.972vw;
    height: 3.542vw;
    padding: 0 0.833vw;
    border-radius: 0.347vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-form__input {
    font-size: 0.972vw;
    height: 3.542vw;
    padding: 0 0.833vw;
    border-radius: 0.347vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-form__input {
    font-size: 1.563vw;
    height: 4.98vw;
    padding: 0 1.172vw;
    border-radius: 0.488vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-form__input {
    font-size: 3.733vw;
    height: 10.667vw;
    padding: 0 2.667vw;
    border-radius: 1.067vw;
    border-width: 0.267vw;
  }
}
.contact-form__input:focus {
  border-color: #32bed2;
  background: #fff;
}
.contact-form__textarea {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #333;
  border: 0.069vw solid #32bed2;
  background: #f9f9f9;
  outline: none;
  resize: vertical;
  width: 100%;
}
@media screen and (min-width: 1441px) {
  .contact-form__textarea {
    font-size: 0.972vw;
    height: 18.125vw;
    padding: 0.833vw;
    border-radius: 0.347vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-form__textarea {
    font-size: 0.972vw;
    height: 18.125vw;
    padding: 0.833vw;
    border-radius: 0.347vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-form__textarea {
    font-size: 1.563vw;
    height: 25.488vw;
    padding: 1.172vw;
    border-radius: 0.488vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-form__textarea {
    font-size: 3.733vw;
    height: 53.333vw;
    padding: 2.667vw;
    border-radius: 1.067vw;
    border-width: 0.267vw;
  }
}
.contact-form__textarea:focus {
  border-color: #32bed2;
  background: #fff;
}
.contact-form__submit {
  display: flex;
  justify-content: center;
}
.contact-form__submit p {
  width: 100%;
}
@media screen and (min-width: 1441px) {
  .contact-form__submit {
    margin-top: 6.319vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-form__submit {
    margin-top: 6.319vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-form__submit {
    margin-top: 8.887vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-form__submit {
    margin: auto;
    margin-top: 10.667vw;
    width: 65%;
  }
}
.contact-form__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border: 0.139vw solid #32bed2;
  color: #32bed2;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.3s, color 0.3s;
  gap: 0.694vw;
}
@media screen and (min-width: 1441px) {
  .contact-form__btn {
    font-size: 1.25vw;
    width: 18.75vw;
    height: 4.236vw;
    border-radius: 0.347vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-form__btn {
    font-size: 1.25vw;
    width: 18.75vw;
    height: 4.236vw;
    border-radius: 0.347vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-form__btn {
    font-size: 1.758vw;
    width: 26.367vw;
    height: 5.957vw;
    border-radius: 0.488vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-form__btn {
    font-size: 4vw;
    width: 100%;
    height: 13.333vw;
    border-radius: 1.067vw;
    border-width: 0.533vw;
    gap: 2.133vw;
  }
}
.contact-form__btn:hover {
  background: #32bed2;
  color: #fff;
}
.contact-form__btn-arrow {
  font-size: 0.9em;
}

.wpcf7-form-control-wrap {
  width: 100%;
}

.contact-privacy {
  background: #d2f1f4;
  width: 80%;
  margin: 4vw auto;
}
@media screen and (min-width: 1441px) {
  .contact-privacy {
    padding: 5.556vw 5.625vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-privacy {
    padding: 5.556vw 5.625vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-privacy {
    padding: 7.813vw 5.859vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-privacy {
    padding: 10.667vw 5.333vw;
    margin-top: 12vw;
    width: 90%;
  }
}
.contact-privacy__title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #333;
  line-height: 1;
}
@media screen and (min-width: 1441px) {
  .contact-privacy__title {
    font-size: 1.667vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-privacy__title {
    font-size: 1.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-privacy__title {
    font-size: 2.344vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-privacy__title {
    font-size: 5.333vw;
  }
}
@media screen and (min-width: 1441px) {
  .contact-privacy__body {
    margin-top: 2.083vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-privacy__body {
    margin-top: 2.083vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-privacy__body {
    margin-top: 2.93vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-privacy__body {
    margin-top: 5.333vw;
  }
}
.contact-privacy__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #333;
  line-height: 2.5;
}
@media screen and (min-width: 1441px) {
  .contact-privacy__text {
    font-size: 0.972vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-privacy__text {
    font-size: 0.972vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-privacy__text {
    font-size: 1.563vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-privacy__text {
    font-size: 3.733vw;
  }
}
@media screen and (min-width: 1441px) {
  .contact-privacy__text + .contact-privacy__text {
    margin-top: 1.389vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-privacy__text + .contact-privacy__text {
    margin-top: 1.389vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-privacy__text + .contact-privacy__text {
    margin-top: 1.953vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-privacy__text + .contact-privacy__text {
    margin-top: 4vw;
  }
}
.contact-privacy__list {
  list-style: disc;
  padding-left: 1.5em;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #333;
  line-height: 2.5;
}
@media screen and (min-width: 1441px) {
  .contact-privacy__list {
    font-size: 0.972vw;
    margin-top: 1.389vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-privacy__list {
    font-size: 0.972vw;
    margin-top: 1.389vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-privacy__list {
    font-size: 1.563vw;
    margin-top: 1.953vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-privacy__list {
    font-size: 3.733vw;
    margin-top: 4vw;
  }
}
@media screen and (min-width: 1441px) {
  .contact-privacy__list li + li {
    margin-top: 0.556vw;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .contact-privacy__list li + li {
    margin-top: 0.556vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .contact-privacy__list li + li {
    margin-top: 0.781vw;
  }
}
@media screen and (max-width: 768px) {
  .contact-privacy__list li + li {
    margin-top: 1.333vw;
  }
}/*# sourceMappingURL=style.css.map */