@charset "UTF-8";
/* Sass Document */
body {
  overflow-wrap: anywhere;
  /* 収まらない場合に折り返す */
  word-break: normal;
  /* 単語の分割はデフォルトに依存 */
  line-break: strict;
  /* 禁則処理を厳格に適用 */
}

.wrap3 {
  max-width: 102.4rem;
  margin: auto;
}

.feature1 {
  padding: 10.6rem 1rem 4rem;
}
@media screen and (max-width: 999px) {
  .feature1 {
    padding: 10.6106106106vw 1.001001001vw 4.004004004vw;
  }
}
@media screen and (max-width: 768px) {
  .feature1 {
    padding: 0 10.2222222222vw 4vw;
  }
}
.feature1 .w_box {
  position: relative;
  background: #fff;
}
.feature1 .w_box .number {
  position: absolute;
  top: -2.5rem;
  left: 50%;
  width: 20rem;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (max-width: 999px) {
  .feature1 .w_box .number {
    top: -2.5025025025vw;
    width: 20.02002002vw;
  }
}
@media screen and (max-width: 768px) {
  .feature1 .w_box .number {
    top: -3.3777777778vw;
    width: 30.9333333333vw;
  }
}
.feature1 .w_box p {
  font-size: 1.4rem;
  color: #599de4;
}
@media screen and (max-width: 768px) {
  .feature1 .w_box p {
    font-size: 100%;
  }
}
.feature1 .w_box01 {
  padding: 11rem 8rem 8rem;
}
@media screen and (max-width: 999px) {
  .feature1 .w_box01 {
    padding: 11.011011011vw 8.008008008vw 8.008008008vw;
  }
}
@media screen and (max-width: 768px) {
  .feature1 .w_box01 {
    padding: 12.8888888889vw 5.6888888889vw 7.7333333333vw;
  }
}
.feature1 .w_box01 .txt_area {
  position: relative;
  padding-right: 38rem;
  padding-bottom: 4.5rem;
}
@media screen and (max-width: 999px) {
  .feature1 .w_box01 .txt_area {
    padding-right: 38.038038038vw;
    padding-bottom: 4.5045045045vw;
  }
}
@media screen and (max-width: 999px) {
  .feature1 .w_box01 .txt_area {
    padding-right: 0;
    padding-bottom: 52.2666666667vw;
  }
}
.feature1 .w_box01 .txt_area .title02 {
  width: 37.4491rem;
  margin-bottom: 3rem;
}
@media screen and (max-width: 999px) {
  .feature1 .w_box01 .txt_area .title02 {
    width: 37.4865865866vw;
  }
}
@media screen and (max-width: 999px) {
  .feature1 .w_box01 .txt_area .title02 {
    width: 60.9777777778vw;
    margin: 0 auto 6.6666666667vw;
  }
}
.feature1 .w_box01 .txt_area .fig01 {
  position: absolute;
  bottom: -1.2rem;
  right: 2rem;
  width: 25rem;
}
@media screen and (max-width: 999px) {
  .feature1 .w_box01 .txt_area .fig01 {
    width: 25.025025025vw;
  }
}
@media screen and (max-width: 999px) {
  .feature1 .w_box01 .txt_area .fig01 {
    bottom: -2.4vw;
    right: 0;
    left: 0;
    width: 40vw;
    margin: auto;
  }
}
.feature1 .w_box02 {
  padding: 11rem 8rem 0;
  margin-top: 8.4rem;
}
@media screen and (max-width: 999px) {
  .feature1 .w_box02 {
    padding: 11.011011011vw 8.008008008vw 0;
    margin-top: 8.4084084084vw;
  }
}
@media screen and (max-width: 768px) {
  .feature1 .w_box02 {
    padding: 13.3333333333vw 5.6888888889vw 0;
    margin-top: 11.0222222222vw;
  }
}
.feature1 .w_box02 .flex {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .feature1 .w_box02 .flex {
    display: block;
  }
}
.feature1 .w_box02 .flex .title02 {
  width: 29rem;
  margin-top: 1.5rem;
}
@media screen and (max-width: 999px) {
  .feature1 .w_box02 .flex .title02 {
    width: 29.029029029vw;
    margin-top: 1.5015015015vw;
  }
}
@media screen and (max-width: 768px) {
  .feature1 .w_box02 .flex .title02 {
    width: 55.1111111111vw;
    margin: 0 auto 8.8888888889vw;
  }
}
.feature1 .w_box02 .flex .right {
  width: 47.8rem;
}
@media screen and (max-width: 999px) {
  .feature1 .w_box02 .flex .right {
    width: 47.8478478478vw;
  }
}
@media screen and (max-width: 768px) {
  .feature1 .w_box02 .flex .right {
    width: 100%;
  }
}
.feature1 .w_box02 .flex .right .fig02 {
  width: 34rem;
  margin: 3.4rem auto 0;
}
@media screen and (max-width: 999px) {
  .feature1 .w_box02 .flex .right .fig02 {
    width: 34.034034034vw;
    margin: 3.4034034034vw auto 0;
  }
}
@media screen and (max-width: 768px) {
  .feature1 .w_box02 .flex .right .fig02 {
    width: 58.1333333333vw;
    margin: 5.3333333333vw auto 0;
  }
}
.feature1 .box_flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 8.5rem;
}
@media screen and (max-width: 999px) {
  .feature1 .box_flex {
    margin-top: 8.5085085085vw;
  }
}
@media screen and (max-width: 768px) {
  .feature1 .box_flex {
    margin-top: 11.0222222222vw;
  }
}
.feature1 .w_box03 {
  width: 47rem;
  padding: 11rem 8.5rem 8.8rem;
}
@media screen and (max-width: 999px) {
  .feature1 .w_box03 {
    width: 47.047047047vw;
    padding: 11.011011011vw 8.5085085085vw 8.8088088088vw;
  }
}
@media screen and (max-width: 768px) {
  .feature1 .w_box03 {
    width: 100%;
    padding: 12vw 5.6888888889vw 8vw;
  }
}
.feature1 .w_box03 .title02 {
  width: 19.6rem;
  margin: 0 auto 3rem;
}
@media screen and (max-width: 999px) {
  .feature1 .w_box03 .title02 {
    width: 19.6196196196vw;
    margin: 0 auto 3.003003003vw;
  }
}
@media screen and (max-width: 768px) {
  .feature1 .w_box03 .title02 {
    width: 31.6444444444vw;
    margin: 0 auto 8vw;
  }
}
.feature1 .w_box03 .fig03 {
  width: 23.4rem;
  margin: 6rem auto 0;
}
@media screen and (max-width: 999px) {
  .feature1 .w_box03 .fig03 {
    width: 23.4234234234vw;
    margin: 6.006006006vw auto 0;
  }
}
@media screen and (max-width: 768px) {
  .feature1 .w_box03 .fig03 {
    width: 40.5333333333vw;
    margin: 6.9333333333vw auto 0;
  }
}
.feature1 .w_box04 {
  width: 47rem;
  padding: 8rem 8.5rem 4.8rem;
}
@media screen and (max-width: 999px) {
  .feature1 .w_box04 {
    width: 47.047047047vw;
    padding: 8.008008008vw 8.5085085085vw 4.8048048048vw;
  }
}
@media screen and (max-width: 768px) {
  .feature1 .w_box04 {
    width: 100%;
    margin-top: 11.0222222222vw;
    padding: 12vw 5.6888888889vw 8vw;
  }
}
.feature1 .w_box04 .title02 {
  width: 21.6rem;
  margin: 0 auto 2rem;
}
@media screen and (max-width: 999px) {
  .feature1 .w_box04 .title02 {
    width: 21.6216216216vw;
    margin: 0 auto 2.002002002vw;
  }
}
@media screen and (max-width: 768px) {
  .feature1 .w_box04 .title02 {
    width: 34.6666666667vw;
    margin: 0 auto 8vw;
  }
}
.feature1 .w_box04 p .box_p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 2.75rem;
  margin: 1rem 0;
  font-size: 1.9rem;
  color: #fff;
  font-weight: 600;
  letter-spacing: 0.06em;
  background: #c1007c;
}
@media screen and (max-width: 999px) {
  .feature1 .w_box04 p .box_p {
    height: 2.7527527528vw;
    margin: 1.001001001vw 0;
    font-size: 1.9019019019vw;
  }
}
@media screen and (max-width: 768px) {
  .feature1 .w_box04 p .box_p {
    height: 6.8444444444vw;
    margin: 1.7777777778vw 0;
    font-size: 120%;
    letter-spacing: 0.18em;
  }
}
.feature1 .w_box04 .fig04 {
  width: 24.2rem;
  margin: 2.5rem auto 0;
}
@media screen and (max-width: 999px) {
  .feature1 .w_box04 .fig04 {
    width: 24.2242242242vw;
    margin: 2.5025025025vw auto 0;
  }
}

.feature2 {
  padding: 4rem 1rem 14rem;
}
@media screen and (max-width: 999px) {
  .feature2 {
    padding: 4.004004004vw 1.001001001vw 16vw;
  }
}
@media screen and (max-width: 768px) {
  .feature2 {
    padding: 4vw 9.9555555556vw 16vw;
  }
}
.feature2 .ttl1 img {
  width: 47.4rem;
}
@media screen and (max-width: 768px) {
  .feature2 .ttl1 img {
    width: 71.5555555556vw;
  }
}
.feature2 .w_box {
  position: relative;
  padding: 7.5rem 2rem;
  background: #fff;
}
@media screen and (max-width: 1024px) {
  .feature2 .w_box {
    padding: 7.32421875vw 1.953125vw;
  }
}
@media screen and (max-width: 768px) {
  .feature2 .w_box {
    padding: 13.6888888889vw 6.9333333333vw 21.7777777778vw;
  }
}
.feature2 .w_box .title02 {
  position: absolute;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 31.8rem;
  height: 6.6rem;
  font-size: 2rem;
  color: #fff;
  font-weight: bold;
  line-height: 1.4;
  background: #000;
  border-right: 1.6rem solid #f2f2f2;
  border-bottom: 1.6rem solid #f2f2f2;
}
@media screen and (max-width: 768px) {
  .feature2 .w_box .title02 {
    width: 58.3111111111vw;
    height: 10.6666666667vw;
    font-size: 3.5555555556vw;
    border-right: 4vw solid #f2f2f2;
    border-bottom: 2.0444444444vw solid #f2f2f2;
  }
}
.feature2 .w_box .title02 .yellow {
  color: #ffef38;
}
.feature2 .w_box .title02 .small {
  font-size: 1.4rem;
  color: #fff;
}
@media screen and (max-width: 999px) {
  .feature2 .w_box .title02 .small {
    font-size: 60%;
  }
}
.feature2 .w_box figure {
  width: 72.2rem;
  margin: auto;
}
@media screen and (max-width: 1024px) {
  .feature2 .w_box figure {
    width: 70.5078125vw;
  }
}
@media screen and (max-width: 768px) {
  .feature2 .w_box figure {
    width: 67.1111111111vw;
  }
}
.feature2 .w_box .comment01 {
  position: absolute;
  top: 4.8rem;
  right: 14.2rem;
  width: 29.4rem;
}
@media screen and (max-width: 1024px) {
  .feature2 .w_box .comment01 {
    top: 4.6875vw;
    right: 13.8671875vw;
    width: 28.7109375vw;
  }
}
@media screen and (max-width: 768px) {
  .feature2 .w_box .comment01 {
    top: 46.5777777778vw;
    right: 24.8888888889vw;
    width: 46.1333333333vw;
  }
}
.feature2 .w_box .comment02 {
  position: absolute;
  bottom: 11rem;
  right: 10rem;
  width: 27.5rem;
}
@media screen and (max-width: 1024px) {
  .feature2 .w_box .comment02 {
    bottom: 10.7421875vw;
    right: 9.765625vw;
    width: 26.85546875vw;
  }
}
@media screen and (max-width: 768px) {
  .feature2 .w_box .comment02 {
    bottom: 21.1555555556vw;
    right: 2.6666666667vw;
    width: 30.7555555556vw;
  }
}
.feature2 .w_box .comment03 {
  position: absolute;
  bottom: 9rem;
  left: 9rem;
  width: 23.5rem;
}
@media screen and (max-width: 1024px) {
  .feature2 .w_box .comment03 {
    bottom: 8.7890625vw;
    left: 8.7890625vw;
    width: 22.94921875vw;
  }
}
@media screen and (max-width: 768px) {
  .feature2 .w_box .comment03 {
    bottom: 8vw;
    left: 0;
    right: 0;
    width: 39.9111111111vw;
    margin: auto;
  }
}
.feature2 .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 8.5rem;
}
@media screen and (max-width: 999px) {
  .feature2 .flex {
    margin-top: 8.5085085085vw;
  }
}
@media screen and (max-width: 999px) {
  .feature2 .flex {
    margin-top: 10.6666666667vw;
  }
}
.feature2 .flex .w_box {
  width: 48.5rem;
  padding: 7.5rem 2rem 2.8rem;
}
@media screen and (max-width: 999px) {
  .feature2 .flex .w_box {
    width: 80%;
    margin: auto;
  }
}
@media screen and (max-width: 768px) {
  .feature2 .flex .w_box {
    width: 100%;
    padding: 7.4666666667vw 2.9333333333vw 4.8888888889vw 4.9777777778vw;
  }
}
.feature2 .flex .w_box .title02 {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  left: auto;
  right: 0;
  width: 21rem;
  height: 9.6rem;
  border-right: none;
  border-left: 1.6rem solid #f2f2f2;
}
@media screen and (max-width: 768px) {
  .feature2 .flex .w_box .title02 {
    width: 34.6666666667vw;
    height: 16vw;
    border-left: 2.0444444444vw solid #f2f2f2;
  }
}
.feature2 .flex .w_box ol li {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 4.5rem;
}
@media screen and (max-width: 768px) {
  .feature2 .flex .w_box ol li {
    padding-bottom: 10.2222222222vw;
  }
}
.feature2 .flex .w_box ol li:before {
  content: "";
  position: absolute;
  top: 0;
  left: 1.9rem;
  width: 0.1rem;
  height: 100%;
  border-left: 1px dashed #000;
}
@media screen and (max-width: 768px) {
  .feature2 .flex .w_box ol li:before {
    left: 3.2vw;
  }
}
@media screen and (max-width: 768px) {
  .feature2 .flex .w_box ol li:nth-of-type(2) .txt_area {
    width: 40%;
  }
}
.feature2 .flex .w_box ol li:nth-of-type(2) figure {
  width: 14.8rem;
  margin-top: 0.6rem;
}
@media screen and (max-width: 768px) {
  .feature2 .flex .w_box ol li:nth-of-type(2) figure {
    width: 24.1777777778vw;
    margin-top: 0.8888888889vw;
  }
}
.feature2 .flex .w_box ol li:nth-of-type(3) figure {
  width: 11.7rem;
  margin-top: -0.4rem;
}
@media screen and (max-width: 768px) {
  .feature2 .flex .w_box ol li:nth-of-type(3) figure {
    width: 19.3777777778vw;
    margin-top: -0.8888888889vw;
  }
}
.feature2 .flex .w_box ol li:nth-of-type(4) figure {
  width: 13.6rem;
  margin-top: 2.8rem;
}
@media screen and (max-width: 768px) {
  .feature2 .flex .w_box ol li:nth-of-type(4) figure {
    width: 22.4888888889vw;
    margin-top: 4.4444444444vw;
  }
}
@media screen and (max-width: 768px) {
  .feature2 .flex .w_box ol li:nth-of-type(5) .txt_area {
    width: 40%;
  }
}
.feature2 .flex .w_box ol li:nth-of-type(5) figure {
  width: 11.7rem;
}
@media screen and (max-width: 768px) {
  .feature2 .flex .w_box ol li:nth-of-type(5) figure {
    width: 19.2vw;
  }
}
.feature2 .flex .w_box ol li:last-of-type {
  padding-bottom: 0;
}
.feature2 .flex .w_box ol li:last-of-type:before {
  display: none;
}
.feature2 .flex .w_box ol li:last-of-type figure {
  width: 8.7rem;
  margin-top: -0.8rem;
}
@media screen and (max-width: 768px) {
  .feature2 .flex .w_box ol li:last-of-type figure {
    width: 14.4vw;
    margin-top: -1.7777777778vw;
  }
}
.feature2 .flex .w_box ol li .number {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 3.8rem;
  height: 3.8rem;
  margin-right: 1.6rem;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1;
  background: #fff;
  border: 0.2rem solid #000;
  border-radius: 50%;
}
@media screen and (max-width: 768px) {
  .feature2 .flex .w_box ol li .number {
    width: 6.4vw;
    height: 6.4vw;
    margin-right: 2.8444444444vw;
    font-size: 100%;
    border: 0.3288888889vw solid #000;
  }
}
.feature2 .flex .w_box ol li .number span {
  position: absolute;
  top: -2.4rem;
  left: 50%;
  width: 3em;
  font-size: 1.4rem;
  font-weight: bold;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .feature2 .flex .w_box ol li .number span {
    top: -3.1111111111vw;
    font-size: 50%;
  }
}
.feature2 .flex .w_box ol li .txt_area {
  width: 21.8rem;
  margin-top: 0.4rem;
}
@media screen and (max-width: 999px) {
  .feature2 .flex .w_box ol li .txt_area {
    width: 50%;
  }
}
.feature2 .flex .w_box ol li .txt_area .title03 {
  margin-bottom: 1rem;
  font-size: 2.4rem;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .feature2 .flex .w_box ol li .txt_area .title03 {
    margin-bottom: 0.8888888889vw;
    font-size: 120%;
  }
}
.feature2 .flex .w_box ol li .txt_area p {
  font-size: 1.3rem;
}
@media screen and (max-width: 768px) {
  .feature2 .flex .w_box ol li .txt_area p {
    font-size: 70%;
  }
}
.feature2 .flex .w_box ol li figure {
  margin: 0 0 0 auto;
}
.feature2 .flex .right {
  position: relative;
  width: 48.5rem;
  background: #fff;
}
@media screen and (max-width: 999px) {
  .feature2 .flex .right {
    width: 80%;
    margin: 8rem auto 0;
    padding-bottom: 53.1555555556vw;
  }
}
@media screen and (max-width: 768px) {
  .feature2 .flex .right {
    width: 100%;
    margin: 13.1555555556vw auto 0;
    padding-bottom: 53.1555555556vw;
  }
}
.feature2 .flex .right .w_box {
  width: 100%;
  background: #faef38;
}
@media screen and (max-width: 768px) {
  .feature2 .flex .right .w_box ol li:nth-of-type(2) .txt_area {
    width: 55%;
  }
}
.feature2 .flex .right .w_box ol li:nth-of-type(2) figure {
  width: 9.6rem;
  margin-top: -1.8rem;
}
@media screen and (max-width: 768px) {
  .feature2 .flex .right .w_box ol li:nth-of-type(2) figure {
    width: 15.8222222222vw;
    margin-top: -2.3111111111vw;
  }
}
.feature2 .flex .right .w_box ol li:nth-of-type(3) figure {
  width: 10.5rem;
  margin-top: -2rem;
}
@media screen and (max-width: 768px) {
  .feature2 .flex .right .w_box ol li:nth-of-type(3) figure {
    width: 17.2444444444vw;
    margin-top: -3.5555555556vw;
  }
}
.feature2 .flex .right .w_box ol li:last-of-type:before {
  display: none;
}
.feature2 .flex .right .w_box ol li:last-of-type figure {
  width: 8.7rem;
  margin-top: -0.2rem;
}
@media screen and (max-width: 768px) {
  .feature2 .flex .right .w_box ol li:last-of-type figure {
    width: 14.4vw;
    margin-top: -0.8888888889vw;
  }
}
.feature2 .flex .right .w_box ol li .number {
  background: #faef38;
}
.feature2 .flex .right .w_box ol li .txt_area {
  width: 23.8rem;
  width: 50%;
}
.feature2 .flex .right .last_image {
  position: absolute;
  bottom: -1rem;
  left: 0;
  right: 0;
  width: 39.3rem;
  margin: auto;
}
@media screen and (max-width: 999px) {
  .feature2 .flex .right .last_image {
    bottom: -1.3333333333vw;
    width: 65.4222222222vw;
  }
}