@charset "utf-8";
footer #footer-navi{
  font-size: 0.875em;
  letter-spacing: 0;
}footer #footer-navi ul li a {
    margin: 0;
}
footer #footer-navi ul li:not(:last-child):after {
    content: "-";
    padding: 0 1em;
}

@media(max-width:1080px){
footer #footer-navi ul {
  flex-direction: column;
}
footer #footer-navi ul li:not(:last-child):after {
    content: "";
}

}
header .wrapper{
    padding: 25px 118px 35px 82px;
    max-width: 1600px;
}
@media(max-width:1500px){
  header .wrapper{
      padding: 25px 59px 35px 41px;
  }
}
@media(max-width:1400px){
#header-navi li{
  font-size: 0.95em;
    padding: 0 1em;
}
}
@media(max-width:1300px){
  header .wrapper{
      padding: 25px 25px 35px 25px;
  }
}
@media(max-width:1200px){
#header-navi li{
  font-size: 0.95em;
    padding: 0 0.5em;
}
}
p.feature-lead{
  font-size: 1.06em;
  line-height: 2.1;
  margin-bottom: 135px;
}
#main.page h3.feature-h3{
  text-align: center;
  font-size: 2em;
  line-height: 1.75;
  padding-bottom: 22px;
  margin-bottom: 70px;
  position: relative;
  text-align: left;
  font-family: 'vdl-v7marugothic',  "Kosugi Maru" ,sans-serif;
  font-weight: 700;
  letter-spacing: 0.2em;
  padding-left: 0.2em;
}
#main.page h3.feature-h3.green{
  margin-bottom: 105px;
}
#main.page h3.feature-h3:after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 77px;
  height: 4px;
  background: #bef0ff;
}
#main.page h3.feature-h3.green:after{
  background: #aff9c0;
}

@media(max-width:1080px){
  #main.page h3.feature-h3{
    font-size: 1.625em;
  }
}
@media(max-width:720px){
  p.feature-lead{
    font-size: 1em;
    margin-bottom: 100px;
  }
  #main.page h3.feature-h3{
    font-size: 1.425em;
    margin-bottom: 50px;
  }
  #main.page h3.feature-h3.green{
    margin-bottom: 75px;
  }
}

@media(max-width:480px){
  p.feature-lead{
    margin-bottom: 75px;
  }
  #main.page h3.feature-h3{
    font-size: 1.25em;
    margin-bottom: 30px;
  }
  #main.page h3.feature-h3.green{
    margin-bottom: 55px;
  }
}

.service-feature{
  display: flex;
  flex-direction: column;
  gap: 50px;
  margin-bottom: 175px;
  max-width: 1185px;
}
.service-feature .feature{
  display: flex;
  min-height: 270px;
  justify-content: start;
  align-items: center;
  background: #aaffbe;
  border-radius: 30px;
  padding: 30px;
  box-sizing: border-box;
}
.service-feature .feature .image img{
  width: 100%;
}
.service-feature .feature p{
  font-size: 1em;
  line-height: 2;
}
.service-feature .feature h4{
  font-size: 1.625em;
  line-height: 1.92;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-align: left;
  font-family: 'vdl-v7marugothic',  "Kosugi Maru" ,sans-serif;
}
.service-feature .feature .number{
  width: 105px;
  margin-bottom: 5px;
}
.service-feature .feature-01 {
  margin-right: 10.5%;
  gap: 6.25%;
  align-items: end;
}
.service-feature .feature-01 .image{
  width: 39%;
  margin-bottom: 8px;
}
.service-feature .feature-01 .text{
  width: 52.5%;
}
.service-feature .feature-02 {
  margin-left: 10.5%;
  justify-content: center;
  gap: 5.85%;
}
.service-feature .feature-02 .image{
  width: 32%;
  order: 2;
}
.service-feature .feature-02 .text{
  width: 50.2%;
  margin-left: 4%;
}

.service-feature .feature-03 {
  margin-right: 10.5%;
  gap: 3.5%;
  align-items: end;
}
.service-feature .feature-03 .image{
  width: 41.7%;
  margin-bottom: 22px;
}
.service-feature .feature-03 .text{
  width: 53.2%;
}

@media(max-width:1080px){

  .service-feature .feature h4{
    font-size: 1.45em;
  }
}

@media(max-width: 840px){
  .service-feature{
    margin-bottom: 125px;
  }

  .service-feature .feature-01 {
    margin-right: 0;
    gap: 20px;
    align-items: end;
  }
  .service-feature .feature-01 .image{
    width: 100%;
    margin-bottom: 0;
  }
  .service-feature .feature-01 .text{
    width: 100%;
  }
  .service-feature .feature-02 {
    margin-left: 0%;
    justify-content: center;
    gap: 20px;
  }
  .service-feature .feature-02 .image{
    width: 100%;
    order: 2;
  }
  .service-feature .feature-02 .text{
    width: 100%;
    margin-left: 0;
  }

  .service-feature .feature-03 {
    margin-right: 0%;
    gap: 20px;
    align-items: end;
  }
  .service-feature .feature-03 .image{
    width: 100%;
    margin-bottom: 0;
  }
  .service-feature .feature-03 .text{
    width: 100%;
  }
}
@media(max-width: 680px){

  .service-feature{
    margin-bottom: 100px;
  }
  .service-feature .feature{
    flex-direction: column;
  }
  .service-feature .feature-01 .image{
    order: 2;
  }
  .service-feature .feature-03 .image{
    order: 2;
  }
}
@media(max-width: 480px){
  .service-feature{
    margin-bottom: 70px;
  }
}

.service-ability{
  display: flex;
  flex-wrap: wrap;
  gap: 50px 3.8%;;
  margin-bottom: 225px;
  max-width: 1530px;
}
.service-ability .ability{
  width: 30.8%;
  min-height: 300px;
  justify-content: center;
  align-items: center;
  background: #def7ff;
  border-radius: 30px;
  padding: 40px 46px;
  box-sizing: border-box;
}
.service-ability .ability h4 img{
  height: auto;
}
.service-ability .ability-01 h4 img{
  width: 69px;
}
.service-ability .ability-02 h4 img{
  width: 56px;
}
.service-ability .ability-03 h4 img{
  width: 54px;
}
.service-ability .ability-04 h4 img{
  width: 66px;
}
.service-ability .ability-05 h4 img{
  width: 51px;
}
.service-ability .ability-06 h4 img{
  width: 66px;
}
.service-ability .ability p{
  font-size: 1.1875em;
  line-height: 1.57;
}
.service-ability .ability h4{
  font-size: 1.75em;
  line-height: 1.07;
  font-weight: 700;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 30px;
  letter-spacing: 0.2em;
  text-align: left;
  color: #0a2846;
}

@media(max-width:1520px){
  .service-ability .ability{
    padding: 30px 36px;
    min-height: 260px;
  }
  .service-ability .ability p{
    font-size: 1em;
  }
  .service-ability .ability h4{
    font-size: 1.625em;
  }
  .service-ability .ability-01 h4 img{
    width: 56px;
  }
  .service-ability .ability-02 h4 img{
    width: 45px;
  }
  .service-ability .ability-03 h4 img{
    width: 45px;
  }
  .service-ability .ability-04 h4 img{
    width: 56px;
  }
  .service-ability .ability-05 h4 img{
    width: 45px;
  }
  .service-ability .ability-06 h4 img{
    width: 56px;
  }
}
@media(max-width:1080px){
  .service-ability .ability{
    padding: 20px 26px;
    min-height: 200px;
  }
  .service-ability .ability p{
    font-size: 1em;
  }
  .service-ability .ability h4{
    font-size: 1.45em;
  }
  .service-ability .ability-01 h4 img{
    width: 46px;
  }
  .service-ability .ability-02 h4 img{
    width: 35px;
  }
  .service-ability .ability-03 h4 img{
    width: 35px;
  }
  .service-ability .ability-04 h4 img{
    width: 46px;
  }
  .service-ability .ability-05 h4 img{
    width: 35px;
  }
  .service-ability .ability-06 h4 img{
    width: 46px;
  }
}
@media(max-width:840px){

  .service-ability .ability{
    width: 48.1%;
  }
}
@media(max-width:720px){


  .service-ability .ability h4{
    font-size: 1.2em;
  }
  .service-ability{
    margin-bottom: 155px;
  }
}

@media(max-width:480px){

  .service-ability{
    margin-bottom: 105px;
  }
  .service-ability .ability{
    width: 100%;
  }
}

.naigai-heading{
/*
  font-size: 2em;
  font-weight: 800;
  line-height: 1;
  border: 4px solid #000;
  border-radius: 999px;
  padding: 8px 0.5em;
  position: relative;
  padding-left: 0.7em;
  letter-spacing: 0.2em;
  font-family: 'vdl-v7marugothic',  "Kosugi Maru" ,sans-serif;
*/
  text-align: center;
  margin: 0 auto 60px;
  width: 100%;
  max-width: 594px;
}
.naigai-heading span{
  position: relative;
}
.naigai-heading span:after{
  content: "";
  width: 220px;
  border-bottom: 4px dashed #3dc9ef;
  background: #fff;
  position: absolute;
  bottom: -12px;
  left: 50%;
  transform: translateX(-50%);
}
.naigai-lead{
  font-size: 1.06em;
  line-height: 2.05;
  margin-bottom: 105px;
}
.naigai-flow{
  font-size: 1.06em;
  line-height: 2.05;
  max-width: 1335px;
  margin-bottom: 65px;
}
.naigai-flow figure img{
  width: 100%;
}
.naigai-flow a{
  display: block;
  position: relative;
  margin: 50px 7.2% 0 auto;
  padding: 0 40px 0 10px;
  width: fit-content;
  color: #000000;
  text-decoration: none;
  background: url(../images/naigai-arrow.png) no-repeat bottom center / 100% auto;
}
.naigai-text{
  font-size: 1.06em;
  line-height: 2.05;
  margin-bottom: 80px;
}


@media(max-width:720px){

  p.naigai-heading{
    font-size: 1.45em;
  }
  .naigai-heading span:after{
    width: 180px;
  }
  .naigai-lead{
    margin-bottom: 75px;
  }
  .naigai-text{
    margin-bottom: 60px;
  }
}
@media(max-width:480px){
  p.naigai-heading{
    font-size: 1.2em;
  }
  .naigai-heading span:after{
    width: 150px;
  }
  .naigai-lead{
    font-size: 1em;
    margin-bottom: 55px;
  }
  .naigai-text{
    font-size: 1em;
    margin-bottom: 40px;
  }
}
@media(max-width:380px){
  p.naigai-heading{
    font-size: 1em;
  }
  .naigai-heading span:after{
    width: 150px;
  }
}