.main_visual {
  background: url("img/mv.jpg") no-repeat right top;
}

.section_box {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

.box01 {
  background: url("img/bg01.jpg") no-repeat right 92px;
}

.box02 {
  background: url("img/bg02.jpg") no-repeat right 92px;
}

.box03 {
  background: url("img/bg03.jpg") no-repeat right 92px;
}

.flex {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}

.flex .inner_half {
  -webkit-flex-grow: 1;
  flex-grow: 1;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.sdgs_goals {
  width: 53%;
  margin: 50px 0 50px;
  text-align: right;
}

.sdgs_goals img {
  width: 81%;
}

@media print, screen and (max-width: 1070px) {
  .caption_txt {
    margin-bottom: 0;
  }

  .main_visual {
    background: url("img/mv_sp.jpg") no-repeat center 50%;
    background-size: cover;
  }

  .section_box {
    background-position: center bottom;
    background-size: contain;
    background: none;
    width: auto;
    max-width: none;
    margin: 0 15px;
    padding-bottom: 30px;
  }

  .flex {
    display: block;
    flex-wrap: nowrap;
  }

  .flex .inner_half {
    width: 100%;
  }

  .sdgs {
    padding-top: 0;
  }

  .sdgs .heading_title_sub {
    margin-top: 40px;
  }

  .sdgs_goals {
    width: 100%;
    margin: 0 0 25px;
    padding: 0 50px;
    text-align: center;
  }

  .sdgs_goals img {
    width: 100%;
  }
}