/*
$4ewsColor: 
    /*col01: #238561,
  col02: #67a2b7,
  col03: #d2843e,
  col04: #cf775b,
  col05: #cf9942,
  col06: #926c28,
  col07: #cc7175,
  col08: #608ea1,
  col09: #5b609a,
  col10: #487390,
  col11: #4e9386,
  col12: #79a153,
  col13: #817499
);
*/
/**/
.image_box {
  border-radius: 0.6rem;
  overflow: hidden;
}

.message_box {
  background: #fff;
  border: 1px solid #0068b2;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .message_box {
    border-radius: 0.6rem;
    width: 84rem;
    padding: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .message_box {
    border-radius: 1.2rem;
    width: 59rem;
    padding: 4rem;
  }
}
.message_box p {
  letter-spacing: 0.05em;
  font-weight: 500;
  color: #0068b2;
}
@media screen and (min-width: 769px) {
  .message_box p {
    line-height: 1.5em;
    font-size: 2rem;
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .message_box p {
    line-height: 1.5em;
    font-size: 3.6rem;
  }
}

.box_list {
  display: grid;
}
@media screen and (min-width: 769px) {
  .box_list {
    grid-template-columns: repeat(3, 1fr);
    column-gap: 4rem;
  }
}
.box_list > li {
  border-top: 1px solid #d0d0d0;
}
@media screen and (min-width: 769px) {
  .box_list > li {
    padding: 3rem 0;
  }
}
@media screen and (max-width: 768px) {
  .box_list > li {
    padding: 5rem 0;
  }
}
.box_list > li:last-of-type {
  border-bottom: 1px solid #d0d0d0;
}
@media screen and (min-width: 769px) {
  .box_list > li:nth-last-of-type(-n+3) {
    border-bottom: 1px solid #d0d0d0;
  }
}

.box_desc {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 769px) {
  .box_desc {
    row-gap: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .box_desc {
    row-gap: 1rem;
  }
}
.box_desc dt {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 769px) {
  .box_desc dt {
    row-gap: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .box_desc dt {
    row-gap: 3rem;
  }
}
.box_desc dd {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 769px) {
  .box_desc dd {
    justify-content: space-between;
    row-gap: 3rem;
    height: 100%;
  }
}
@media screen and (max-width: 768px) {
  .box_desc dd {
    row-gap: 4rem;
  }
}
.box_desc h3 {
  font-weight: 500;
}
@media screen and (min-width: 769px) {
  .box_desc h3 {
    line-height: 1.5em;
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  .box_desc h3 {
    line-height: 1.5em;
    font-size: 4rem;
  }
}
.box_desc h4 {
  font-weight: 500;
}
@media screen and (min-width: 769px) {
  .box_desc h4 {
    line-height: 1.5em;
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .box_desc h4 {
    line-height: 1.5em;
    font-size: 3.6rem;
  }
}

#wealth_sec .box {
  display: flex;
  align-items: center;
}
@media screen and (min-width: 769px) {
  #wealth_sec .box {
    justify-content: center;
    column-gap: 4rem;
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  #wealth_sec .box {
    flex-direction: column;
    row-gap: 4rem;
    margin-top: 8rem;
  }
}

@media screen and (min-width: 769px) {
  #wealth_sec .box figure {
    flex-shrink: 0;
    width: 40rem;
  }
}

#enviro_sec {
  background: #f7f7f7;
}
@media screen and (min-width: 769px) {
  #enviro_sec {
    margin-top: 5rem;
    padding-bottom: 5rem;
  }
}
@media screen and (max-width: 768px) {
  #enviro_sec {
    margin-top: 8rem;
    padding-bottom: 8rem;
  }
}

@media screen and (min-width: 769px) {
  #enviro_sec .box_list {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  #enviro_sec .box_list {
    margin-top: 8rem;
  }
}

#enviro_sec .box_desc {
  align-items: center;
}
#enviro_sec .box_desc h3 {
  text-align: center;
}
#enviro_sec .box_desc h4 {
  text-align: center;
  color: #0068b2;
}
#enviro_sec .box_desc .general_txt {
  text-align: justify;
}

@media screen and (min-width: 769px) {
  #thought_sec figure {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  #thought_sec figure {
    margin-top: 4rem;
  }
}

#system_sec {
  background: #f7f7f7;
}
@media screen and (min-width: 769px) {
  #system_sec {
    margin-top: 5rem;
    padding-bottom: 5rem;
  }
}
@media screen and (max-width: 768px) {
  #system_sec {
    margin-top: 8rem;
    padding-bottom: 8rem;
  }
}

#system_sec figure {
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  #system_sec figure {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  #system_sec figure {
    margin-top: 4rem;
  }
}

#program_sec .box_desc {
  height: 100%;
}
#program_sec .box_desc > dd:last-of-type {
  margin-top: auto;
}