.solutionPage_title_wrap {
  padding-top: 6vw;
}

.siteContainer {
  margin: auto;
  padding: 0 9.33vw;
  width: 100%;
  max-width: 100%;
}

/* msg */
.section_msg {
  padding-top: 12%;
}

.msg_wrap {
  margin-left: auto;
  margin-right: auto;
  width: 82%;
}

.msg_title {
  font-size: 5.3vw;
  font-weight: 700;
  line-height: 1.8;
  text-align: center;
}

.msg_text {
  font-size: 3.7vw;
  line-height: 1.8;
  margin-top: 3vw;
  text-align: justify;
}

.msg_illust {
  margin-top: 8vw;
}




.solution_anchors {
  margin: 3.86% auto 29.73%;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 5.3vw 6vw;
}

.solution_anchors_heading {
  margin: 14vw auto 8.7vw;
  font-size: 6.4vw;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.07em;
  color: #3A7961;
  text-align: center;
}

.solution_anchor_itm {
  padding: 0 4.86vw 0 4.13vw;
  width: 46%;
  min-height: 18.86vw;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #3A7961;
  position: relative;
}

.solution_anchor_itm h3 {
  font-size: 3.73vw;
  font-weight: 700;
  line-height: 1.3;
  color: #fff;
  text-align: center;
}

.solution_anchor_itm span {
  position: absolute;
  top: 1.06vw;
  left: 1.76vw;
  font-family: "Oswald", sans-serif;
  font-size: 4.26vw;
  font-weight: 600;
  line-height: 1.3;
  color: #fff;
}

.solution_anchor_itm:after {
  content: '';
  position: absolute;
  top: 50%;
  right: 2.16vw;
  transform: translateY(-50%);
  width: 2.19vw;
  height: 6.71vw;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url(../images/solution/img-anchor-arrow.svg);
}


.solution_list {
  margin: 0 auto 45.9vw;
  display: flex;
  flex-direction: column;
  gap: 29vw;
}

.solution_itm.is-active .solution_toggleBtn.show {
  opacity: 0;
  pointer-events: none;
}


.solution_itm_heading {
  padding-left: 4vw;
  font-family: "Inknut Antiqua", serif;
  font-size: 6.93vw;
  font-weight: 700;
  line-height: 1;
  color: #3A7961;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.solution_itm_heading span {
  margin-left: 4.5vw;
  font-family: "Oswald", sans-serif;
  font-size: 17.33vw;
  font-weight: 600;
}

.solution_itm_ttl {
  margin-top: 6vw;
  margin-bottom: 10.7vw;
  padding: 0 4.8vw;
  width: 100%;
  min-height: 34.66vw;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 7.73vw;
  font-weight: 700;
  line-height: 1.6;
  color: #fff;
  background-color: #3A7961;
  box-sizing: border-box;
  text-align: center;
}

.solution_itm_intr {
  display: block;
}

.solution_itm_intr_heading {
  margin: 6.73vw auto 5vw;
  font-size: 6.4vw;
  font-weight: 700;
  line-height: 1.6;
  color: #000;
  text-align: center;
}

.solution_itm_intr_heading span {
  font-size: 5.33vw;
  font-weight: 700;
  line-height: 1.6;
  color: #000;
}

.solution_itm_intr_desc {
  margin-bottom: 10vw;
  font-size: 3.73vw;
  line-height: 1.6;
  color: #000;
}

.solution_toggleBtn {
  width: 100%;
  max-width: 80vw;
  min-height: 11.73vw;
  font-size: 4.26vw;
  line-height: 1;
  color: #aaaaaa;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  border: 0.53vw solid #aaaaaa;
  border-radius: 5.33vw;
  position: relative;
  cursor: pointer;
  transition: all .3s ease;
}


.solution_toggleBtn:before,
.solution_toggleBtn:after {
  content: '';
  position: absolute;
  top: 50%;
  right: 6.73vw;
  width: 4.73vw;
  height: 0.53vw;
  transform: translateY(-50%);
  background-color: #aaaaaa;
  transition: all .3s ease;
}

.solution_toggleBtn:before {
  transform: translateY(-50%);
}

.solution_toggleBtn:after {
  transform: translateY(-50%)rotate(-90deg);
}

.solution_toggleBtn.close:after {
  opacity: 0;
}


.solution_itm_features {
  display: flex;
  flex-direction: column;
  gap: 8vw;
}

.solution_itm_contents {
  display: none;
  flex: auto !important;
  order: 3;
}

.solution_ftr_itm_ttl {
  margin-bottom: 5.4vw;
  padding-bottom: 2.5vw;
  font-size: 4.26vw;
  font-weight: 700;
  line-height: 1.8;
  color: #000;
  border-bottom: 0.3vw solid #3A7961;
}

.solution_ftr_itm_img {
  width: 100%;
}

.solution_ftr_itm_desc {
  margin-top: 3.94vw;
  font-size: 3.73vw;
  line-height: 1.6;
  color: #000;
  text-align: justify;
}

.solution_ftr_itm_innerList {
  margin-top: 5vw;
  display: flex;
  flex-direction: column;
  gap: 5vw;
}

.solution_ftr_itm_innerList.taste-version {
  gap: 9.2vw;
  margin-left: auto;
  margin-right: auto;
  margin-top: 12%;
  width: 47.73vw;
}

.solution_ftr_itm_innerList.taste-version .solution_ftr_itm_innerList_itm {
  padding: 0;
  border: 0;
}

.solution_ftr_itm_innerList.taste-version .solution_ftr_itm_innerList_itm_img {
  width: 28.26vw;
  height: 28.26vw;
}

.solution_ftr_itm_innerList.taste-version .solution_ftr_itm_innerList_itm h3 {
  margin: 2.93vw auto 2.80vw;
}

.solution_ftr_itm_innerList.taste-version .solution_ftr_itm_innerList_itm p {
  text-align: justify;
}


.solution_ftr_itm_innerList.kuronuma-version {
  margin: 0 auto;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 5.33vw 5.60vw;
  width: 100%;
}

.solution_ftr_itm_innerList.kuronuma-version .solution_ftr_itm_innerList_itm {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
  padding: 4.8vw 0 3.2vw;
  width: 37.86vw;
}

.solution_ftr_itm_kuronuma_heading.data {
  margin-top: 9.5vw;
  font-size: 5.33vw;
}

.solution_ftr_itm_kuronuma_heading {
  margin: 8.33vw auto 5vw;
  font-size: 4.26vw;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  color: #3A7961;
}

.solution_ftr_itm_innerList.kuronuma-version .solution_ftr_itm_innerList_itm:nth-child(1) .solution_ftr_itm_innerList_itm_img {
  width: 16.40vw;
}

.solution_ftr_itm_innerList.kuronuma-version .solution_ftr_itm_innerList_itm:nth-child(2) .solution_ftr_itm_innerList_itm_img {
  width: 16.40vw;
}

.solution_ftr_itm_innerList.kuronuma-version .solution_ftr_itm_innerList_itm:nth-child(3) .solution_ftr_itm_innerList_itm_img {
  width: 24.12vw;
}

.solution_ftr_itm_innerList.kuronuma-version .solution_ftr_itm_innerList_itm_img img {
  width: 100%;
}

.solution_ftr_itm_innerList.kuronuma-version .solution_ftr_itm_innerList_itm_img {
  border-radius: 0;
  background-color: transparent;
  height: auto;
}

.solution_ftr_itm_innerList.kuronuma-version .solution_ftr_itm_innerList_itm h3 {
  margin: 0 auto 2.80vw;
  font-size: 3.73vw;
  line-height: 1.5;
  color: #000;
}

.solution_ftr_itm_innerList.kuronuma-version .solution_ftr_itm_innerList_itm p {
  font-size: 3.2vw;
  line-height: 1.6;
  color: #000;
}


.solution_ftr_itm_innerList.kuronuma-version-2 {
  margin: 0 auto;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 5.33vw 5.60vw;
  width: 100%;
}

.solution_ftr_itm_innerList.kuronuma-version-2 .solution_ftr_itm_innerList_itm {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-direction: column;
  padding: 4.8vw 0 3.2vw;
  width: 37.86vw;
  min-height: 52.26vw;
}

.solution_ftr_itm_innerList.kuronuma-version-2 .solution_ftr_itm_innerList_itm:nth-child(1) .solution_ftr_itm_innerList_itm_img img {
  width: 10.19vw;
}

.solution_ftr_itm_innerList.kuronuma-version-2 .solution_ftr_itm_innerList_itm:nth-child(2) .solution_ftr_itm_innerList_itm_img img {
  width: 10.99vw;
}

.solution_ftr_itm_innerList.kuronuma-version-2 .solution_ftr_itm_innerList_itm:nth-child(3) .solution_ftr_itm_innerList_itm_img img {
  width: 9.41vw;
}

.solution_ftr_itm_innerList.kuronuma-version-2 .solution_ftr_itm_innerList_itm:nth-child(4) .solution_ftr_itm_innerList_itm_img img {
  width: 9.46vw;
}

.solution_ftr_itm_innerList.kuronuma-version-2 .solution_ftr_itm_innerList_itm_img {
  margin: 0 auto 2vw;
  width: 18.00vw;
  height: 18.41vw;
}

.solution_ftr_itm_innerList.kuronuma-version-2 .solution_ftr_itm_innerList_itm h3 {
  margin: 0 auto 1.33vw;
  font-size: 3.73vw;
  line-height: 1.5;
  color: #3A7961;
}

.solution_ftr_itm_innerList.kuronuma-version-2 .solution_ftr_itm_innerList_itm p {
  font-size: 3.2vw;
  line-height: 1.6;
  color: #3A7961;
}

.solution_ftr_itm_innerList_itm {
  padding: 6.98vw 10.66vw 8.87vw;
  border: 0.53vw solid #3A7961;
  border-radius: 4vw;
  text-align: center;
  box-sizing: border-box;
}

.solution_ftr_itm_innerList_itm_img {
  margin: auto;
  display: block;
  width: 28.08vw;
  height: 28.08vw;
  background-color: #3A7961;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 9999px;
}

.solution_ftr_itm_innerList_itm h3 {
  margin: 4.94vw auto 2.90vw;
  font-size: 4.26vw;
  font-weight: 700;
  line-height: 1.6;
  color: #3A7961;
}

.solution_ftr_itm_innerList_itm p {
  font-size: 3.73vw;
  line-height: 1.6;
  color: #3A7961;
}



.solution_cta {
  margin: 15vw auto 16vw;
  padding: 8vw 1.33vw 10.6vw;
  width: 100%;
  border: 0.6vw solid #aaaaaa;
  text-align: center;
}

.solution_cta_heading {
  font-size: 6.4vw;
  font-weight: 700;
  line-height: 1.6;
}

.solution_cta_desc {
  margin: 3.86vw auto 5.33vw;
  font-size: 3.2vw;
  line-height: 1.6;
}

.solution_cta_btn {
  margin-left: auto;
  margin-right: auto;
  width: 91%;
}


@media screen and (min-width: 768px) {
  .solutionPage_title_wrap {
    padding-top: min(4vw, 90px);
  }

  .siteContainer {
    padding: 0;
    max-width: 2200px;
  }

  /* 共通 */
  .msg_container,
  .approach_container {
    margin-left: auto;
    margin-right: auto;
    max-width: 2200px;
  }

  /* msg */
  .section_msg {
    padding-top: min(4vw, 90px);
    padding-bottom: min(3.7vw, 82px);
  }

  .msg_wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: min(71%, 1560px);
  }

  .msg_text_box {
    width: min(58%, 900px);
  }

  .msg_title {
    text-align: center;
    font-size: min(2.2vw, 48px);
  }

  .msg_text {
    font-size: min(1.27vw, 28px);
    margin-top: 1%;
  }

  .msg_illust {
    margin-top: 0;
    width: min(38%, 600px);
  }


  .solution_anchors {
    margin: 0 auto min(12.5vw, 280px);
    width: min(81.81vw, 1800px);
    gap: min(1.8vw, 40px) min(2.27vw, 50px);
  }

  .solution_anchors_heading {
    margin: 0 auto min(3vw, 66px);
    width: min(81.81vw, 1800px);
    font-size: min(2.18vw, 48px);
    text-align: left;
  }

  .solution_anchor_itm {
    padding: 0 min(2.5vw, 55px) 0 min(2.04vw, 45px);
    max-width: min(14.54vw, 320px);
    min-height: min(7.27vw, 160px);

    transition: all 0.3s ease-out;
  }
  .solution_anchor_itm:hover {
    opacity: .7;
  }

  .solution_anchor_itm h3 {
    font-size: min(1.36vw, 30px);
  }

  .solution_anchor_itm span {
    top: min(0.40vw, 9px);
    left: min(0.68vw, 15px);
    font-size: min(1.45vw, 32px);
  }

  .solution_anchor_itm:after {
    right: min(0.83vw, 18.4px);
    width: min(18.6px, 0.84vw);
    height: min(2.59vw, 57px);
    
    transition: all 0.3s ease-out;
  }
  .solution_anchor_itm:hover:after{
    top: 60%;
  }


  .solution_list {
    margin: 0 auto min(16.4vw, 360px);
    width: min(90.90vw, 2000px);
    gap: min(14.18vw, 312px);
  }

  .solution_itm_heading {
    padding-left: min(4.54vw, 100px);
    font-size: min(2.36vw, 52px);
  }

  .solution_itm_heading span {
    margin-left: min(2.36vw, 52px);
    font-size: min(5.90vw, 130px);
  }

  .solution_itm_ttl {
    justify-content: flex-start;
    margin-top: min(2vw, 44px);
    margin-bottom: min(3.6vw, 80px);
    padding: 0 min(4.54vw, 100px);
    min-height: min(11.81vw, 260px);
    font-size: min(2.90vw, 64px);
    text-align: left;
  }

  .solution_itm_intr {
    margin: 0 auto;
    width: 100%;
    max-width: min(1800px, 81.81vw);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
  }

  .solution_itm_intr_img {
    order: 2;
    width: 50%;
  }

  .solution_itm_intr_contents {
    width: 50%;
    order: 1;
  }

  .solution_itm_intr .solution_toggleBtn {
    margin-top: min(2vw, 44px);
    order: 3;
  }

  .solution_itm_intr_heading {
    margin: 0 auto 3%;
    font-size: min(2.18vw, 48px);
    text-align: justify;
  }

  .solution_itm_intr_heading span {
    font-size: min(1.81vw, 40px);
  }

  .solution_itm_intr_desc {
    margin-bottom: 0;
    font-size: min(1.27vw, 28px);
  }

  .solution_toggleBtn {
    margin: 0 auto;
    max-width: min(600px, 27.27vw);
    min-height: min(4vw, 88px);
    font-size: min(1.45vw, 32px);
    border: min(0.18vw, 4px) solid #aaaaaa;
    border-radius: min(1.81vw, 40px);
  }

  .solution_toggleBtn:before,
  .solution_toggleBtn:after {
    right: min(2.29vw, 50.5px);
    width: min(35.5px, 1.61vw);
    height: min(0.18vw, 4px);
  }


  .solution_itm_features {
    margin: 0 auto;
    width: 100%;
    max-width: min(1800px, 81.81vw);
    gap: min(2.72vw, 60px);
  }

  .solution_ftr_itm {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .solution_itm_contents {
    margin-top: min(2.77vw, 61px);
  }

  .solution_ftr_itm_ttl {
    margin-bottom: min(1.7vw, 38px);
    padding-bottom: min(.8vw, 18px);
    width: 100%;
    font-size: min(1.45vw, 32px);
    border-bottom: min(0.1vw, 2px) solid #3A7961;
  }

  .solution_ftr_itm_img {
    width: 50%;
    order: 2;
  }

  .solution_ftr_itm_desc {
    margin-top: 0;
    width: 45.5%;
    font-size: min(1.27vw, 28px);
    order: 1;
  }

  .solution_ftr_itm_innerList {
    margin-top: min(2vw, 44px);
    width: 100%;
    justify-content: space-between;
    flex-direction: row;
    gap: 0;
    order: 2;
  }

  .solution_ftr_itm_innerList.taste-version {
    margin-top: 2%;
    width: 69%;
    order: 1;
    gap: 0;
  }

  .solution_ftr_itm_innerList.taste-version .solution_ftr_itm_innerList_itm {
    width: 28%;
  }

  .solution_ftr_itm_innerList.taste-version .solution_ftr_itm_innerList_itm_img {
    width: min(9.63vw, 212px);
    height: min(9.63vw, 212px);
  }

  .solution_ftr_itm_innerList.taste-version .solution_ftr_itm_innerList_itm h3 {
    margin: min(1.54vw, 34px) auto min(0.90vw, 20px);
  }


  .solution_ftr_itm_innerList.kuronuma-version {
    margin: 0 auto;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0 min(2.72vw, 60px);
    width: 74%;
    order: 3;
  }

  .solution_ftr_itm_innerList.kuronuma-version .solution_ftr_itm_innerList_itm {
    flex: 1;
    padding: min(2.36vw, 52px) 0 min(2.31vw, 51px);
    width: min(405px, 18.40vw);
  }

  .solution_ftr_itm_kuronuma_heading.data {
    margin-top: min(2.7vw, 60px);
    margin-bottom: min(1.5vw, 33px);
    font-size: min(1.5vw, 32px);
  }

  .solution_ftr_itm_kuronuma_heading {
    margin: min(4vw, 88px) auto min(1.6vw, 35px);
    width: 100%;
    font-size: min(1.45vw, 32px);
    order: 2;
  }

  .solution_ftr_itm_innerList.kuronuma-version .solution_ftr_itm_innerList_itm:nth-child(1) .solution_ftr_itm_innerList_itm_img {
    width: min(175px, 7.95vw);
  }

  .solution_ftr_itm_innerList.kuronuma-version .solution_ftr_itm_innerList_itm:nth-child(2) .solution_ftr_itm_innerList_itm_img {
    width: min(175px, 7.95vw);
  }

  .solution_ftr_itm_innerList.kuronuma-version .solution_ftr_itm_innerList_itm:nth-child(3) .solution_ftr_itm_innerList_itm_img {
    width: min(258px, 11.72vw);
  }

  .solution_ftr_itm_innerList.kuronuma-version .solution_ftr_itm_innerList_itm h3 {
    margin: 0 auto min(0.63vw, 14px);
    font-size: min(1.45vw, 32px);
  }

  .solution_ftr_itm_innerList.kuronuma-version .solution_ftr_itm_innerList_itm p {
    font-size: min(1.27vw, 28px);
  }


  .solution_ftr_itm_innerList.kuronuma-version-2 {
    gap: min(2.72vw, 60px);
    max-width: min(1800px, 81.81vw);
  }

  .solution_ftr_itm_innerList.kuronuma-version-2 .solution_ftr_itm_innerList_itm {
    flex: 1;
    padding: min(2.90vw, 64px) 0 min(1.95vw, 43px);
    width: min(405px, 18.40vw);
    min-height: min(25.40vw, 559px);
  }

  .solution_ftr_itm_innerList.kuronuma-version-2 .solution_ftr_itm_innerList_itm:nth-child(1) .solution_ftr_itm_innerList_itm_img img {
    width: min(109.43px, 4.97vw);
  }

  .solution_ftr_itm_innerList.kuronuma-version-2 .solution_ftr_itm_innerList_itm:nth-child(2) .solution_ftr_itm_innerList_itm_img img {
    width: min(118px, 5.36vw);
  }

  .solution_ftr_itm_innerList.kuronuma-version-2 .solution_ftr_itm_innerList_itm:nth-child(3) .solution_ftr_itm_innerList_itm_img img {
    width: min(101px, 4.59vw);
  }

  .solution_ftr_itm_innerList.kuronuma-version-2 .solution_ftr_itm_innerList_itm:nth-child(4) .solution_ftr_itm_innerList_itm_img img {
    width: min(105px, 4.77vw);
  }

  .solution_ftr_itm_innerList.kuronuma-version-2 .solution_ftr_itm_innerList_itm_img {
    margin: 0 auto min(0.90vw, 20px);
    width: min(193.24px, 8.78vw);
    height: min(8.95vw, 197px);
  }

  .solution_ftr_itm_innerList.kuronuma-version-2 .solution_ftr_itm_innerList_itm h3 {
    margin: 0 auto min(0.40vw, 9px);
    font-size: min(1.45vw, 32px);
  }

  .solution_ftr_itm_innerList.kuronuma-version-2 .solution_ftr_itm_innerList_itm p {
    font-size: min(1.27vw, 28px);
  }

  .solution_ftr_itm_innerList_itm {
    padding: min(2.18vw, 48px) min(1.5vw, 33px) min(2.77vw, 61px);
    border: min(0.2vw, 4px) solid #3A7961;
    border-radius: min(1.4vw, 30px);
    width: 31%;
  }

  .solution_ftr_itm_innerList_itm_img {
    width: min(8.77vw, 193.01px);
    height: min(8.95vw, 197px);
  }

  .solution_ftr_itm_innerList_itm h3 {
    margin: min(1.54vw, 34px) auto min(0.90vw, 20px);
    font-size: min(1.45vw, 32px);
  }

  .solution_ftr_itm_innerList_itm p {
    font-size: min(1.27vw, 28px);
  }



  .solution_cta {
    margin: min(5.4vw, 120px) auto min(5.4vw, 120px);
    padding: min(2.59vw, 57px) 0 min(3.36vw, 74px);
    width: 90%;
    border: min(0.2vw, 4px) solid #aaaaaa;
  }

  .solution_cta_heading {
    font-size: min(2.18vw, 48px);
  }

  .solution_cta_desc {
    margin: min(1vw, 22px) auto min(1.5vw, 33px);
    font-size: min(1.09vw, 24px);
  }

  .solution_cta_btn {
    width: 37%;
  }
}
