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

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

.kv {
  margin-bottom: 100px;
}
@media screen and (max-width: 768px) {
  .kv {
    margin-bottom: 40px;
  }
}

.hero {
  text-align: center;
  font-size: min(1.9444444444vw, 28px);
  line-height: 2;
  margin-bottom: 126px;
}
@media screen and (max-width: 768px) {
  .hero {
    font-size: 14px;
    margin-bottom: 60px;
  }
}

.l-section {
  margin: 0 auto;
  max-width: 1440px;
}
.l-section.l-section-1 {
  max-width: 1280px;
}
@media screen and (max-width: 768px) {
  .l-section.l-section-1 {
    padding: 0 20px;
  }
}
.l-section.l-section-2 {
  margin-top: 140px;
  padding: 0 20px 150px;
}
@media screen and (max-width: 768px) {
  .l-section.l-section-2 {
    margin-top: 70px;
    padding: 0 20px 80px;
  }
}
.l-section.l-section-2 .l-section-2__top {
  margin: 0 auto;
  max-width: 1060px;
}
.l-section.l-section-2 .l-section-2__cards {
  max-width: 1340px;
  padding-top: 100px;
}
@media screen and (max-width: 768px) {
  .l-section.l-section-2 .l-section-2__cards {
    max-width: 100%;
    padding: 40px 0 0;
  }
}
.l-section.l-section-3 {
  background-color: rgba(212, 236, 245, 0.7);
  padding: 100px;
  max-width: 100%;
}
@media screen and (max-width: 768px) {
  .l-section.l-section-3 {
    padding: 70px 25px;
  }
}
.l-section.l-section-3 .l-section-3__inr {
  margin: 0 auto;
  max-width: 1230px;
}
@media screen and (max-width: 768px) {
  .l-section.l-section-3 .l-section-3__inr {
    max-width: 100%;
  }
}
.l-section.l-section-4 {
  padding: 170px 0 150px;
}
@media screen and (max-width: 768px) {
  .l-section.l-section-4 {
    padding: 70px 20px;
  }
}
.l-section.l-section-4 .l-section-4__item-top {
  margin: 0 auto;
  max-width: 1000px;
}
@media screen and (max-width: 768px) {
  .l-section.l-section-4 .l-section-4__item-top {
    max-width: 100%;
  }
}
.l-section.l-section-4 .l-section-4__item-1 {
  margin: 100px auto 0;
  max-width: 1000px;
}
@media screen and (max-width: 768px) {
  .l-section.l-section-4 .l-section-4__item-1 {
    max-width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .l-section.l-section-4 .l-section-4__item-1 {
    margin-top: 50px;
  }
}
.l-section.l-section-4 .l-section-4__item-2 {
  margin: 100px auto 0;
  max-width: 1360px;
  padding: 0 20px;
}
@media screen and (max-width: 768px) {
  .l-section.l-section-4 .l-section-4__item-2 {
    margin-top: 50px;
    max-width: 100%;
  }
}

.l-contact {
  background-color: rgba(86, 119, 177, 0.1);
  padding: 90px;
}
@media screen and (max-width: 768px) {
  .l-contact {
    padding: 50px 20px;
  }
}
.l-contact .l-contact__inr {
  margin: 0 auto;
  max-width: 800px;
}

.c-link-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0;
  position: relative;
  margin: 0 auto;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  max-width: 1000px;
}
.c-link-list > li {
  position: relative;
  list-style: none;
}
.c-link-list > li img {
  width: 100%;
  height: auto;
  display: block;
}
.c-link-list.m-type2 {
  gap: 20px;
}
@media screen and (max-width: 768px) {
  .c-link-list.m-type2 {
    gap: 15px;
  }
}
.c-link-list.m-type2 > li {
  width: calc(50% - 10px);
}
@media screen and (max-width: 768px) {
  .c-link-list.m-type2 > li {
    width: 100%;
  }
}
.c-link-list + .l-links__title {
  margin-top: 80px;
}
@media screen and (max-width: 768px) {
  .c-link-list + .l-links__title {
    margin-top: 50px;
  }
}
.c-link-list .btn {
  position: absolute;
  width: 37.4%;
  bottom: 18%;
  left: 5%;
}
@media screen and (max-width: 768px) {
  .c-link-list .btn {
    width: 61.7910447761%;
    bottom: 14%;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
.c-link-list .btn img {
  width: 100%;
  height: auto;
  display: block;
}
.c-link-list .btn.m-type2 {
  bottom: 8.1632653061%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 76.3265306122%;
}
@media screen and (max-width: 768px) {
  .c-link-list .btn.m-type2 {
    width: 61.7910447761%;
    bottom: 14%;
  }
}

.l-links {
  padding: 160px 20px;
}
@media screen and (max-width: 768px) {
  .l-links {
    padding: 70px 20px;
  }
}
.l-links .l-links__title {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .l-links .l-links__title {
    margin-bottom: 20px;
  }
}
.l-links .l-links__title::before {
  content: "";
  display: inline-block;
  width: 36px;
  height: 1px;
  background-color: #000;
  margin-right: 10px;
}
.l-links .l-links__title::after {
  content: "";
  display: inline-block;
  width: 36px;
  height: 1px;
  background-color: #000;
  margin-left: 10px;
}
.l-links .l-links__title span {
  font-size: 32px;
}
@media screen and (max-width: 768px) {
  .l-links .l-links__title span {
    font-size: 20px;
  }
}

.l-other {
  background-color: rgba(86, 119, 177, 0.06);
  padding: 90px 20px 140px;
}
@media screen and (max-width: 768px) {
  .l-other {
    padding: 50px 20px 90px;
  }
}
.l-other .l-other__title {
  text-align: center;
  font-size: 32px;
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .l-other .l-other__title {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
.l-other .l-other__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0;
  margin: 0 auto;
  gap: 90px;
}
@media screen and (max-width: 768px) {
  .l-other .l-other__list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 20px;
  }
}
.l-other .l-other__list > li {
  list-style: none;
  position: relative;
  padding-bottom: 70px;
  width: 250px;
}
@media screen and (max-width: 768px) {
  .l-other .l-other__list > li {
    padding-bottom: 50px;
    width: 125px;
  }
}
@media screen and (max-width: 768px) {
  .l-other .l-other__list > li:nth-child(1) {
    margin: 0 30%;
  }
}
.l-other .l-other__list > li img {
  text-align: center;
  width: 100%;
}
.l-other .l-other__list > li a {
  text-decoration: underline;
}
.l-other .l-other__list > li span, .l-other .l-other__list > li a {
  color: #000;
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 2em;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  font-size: 20px;
  width: 120%;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .l-other .l-other__list > li span, .l-other .l-other__list > li a {
    bottom: initial;
    top: calc(100% - 40px);
    height: initial;
    font-size: 13px;
  }
}
.l-other .l-other__list > li span svg, .l-other .l-other__list > li a svg {
  vertical-align: top;
  margin: 0.2em 0 0 0.3em;
}
@media screen and (max-width: 768px) {
  .l-other .l-other__list > li span svg, .l-other .l-other__list > li a svg {
    width: 14px;
    margin: -0.2em 0 0 0.3em;
  }
}

.l-qa {
  padding: 160px 20px 200px;
}
@media screen and (max-width: 768px) {
  .l-qa {
    padding: 70px 20px 80px;
  }
}
.l-qa .l-qa__inr {
  max-width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .l-qa .l-qa__inr {
    max-width: 100%;
  }
}