@media screen and (max-width: 767px) {
  .h2_concept {
    margin: 50px auto;
    line-height: 30px;
  }
  .cont_bg {
    height: auto;
    padding-bottom: 35.64%;
  }
  .cont_flex {
    padding-top: 41px;
    flex-wrap: wrap;
  }
  .cont_flex_li {
    margin-left: 0px;
  }
  .cont_flex_reverse {
    display: flex;
    flex-direction: column;
  }
  .cont_flex_li_reverse {
    order: 1;
    margin-left: 0px;
  }
  .cont_txt_copy {
    width: calc(100vw - 30px);
    margin-bottom: 32px;
  }
  .cont_txt_li_img {
    margin: 0 calc(50% + 9vw);
  }
  .cont_txt_li_img_reverse {
    padding-right: calc(21.639vw - 15px);
  }
  .cont_main_img {
    width: 89.74vw;
  }
  .cont_main_img_reverse {
    margin-left: -15px;
    order: 2;
  }
  .cont_sub_img01 {
    width: 86.92vw;
    margin-top: calc(-150 * (100vw / 390));
  }
  .cont_sub_img01_left {
    left: 0;
  }
  .cont_sub_img01_reverse {
    right: 0;
    margin-right: -15px;
    text-align: right;
  }
  .cont_flex02 {
    display: block;
    padding-top: calc(100vw / 390 + 57%);
  }
  .cont_flex02_img img {
    padding-left: 21.639vw;
  }
  .cont_flex02_list {
    order: 3;
    margin: 38px 0 0 0;
  }
  .cont_flex02_list_reverse {
    margin: 38px 0 0 0;
  }
  .cont_thum_img {
    margin: 107px auto 38.99px auto;
  }
  .btn-flat-simple-foel {
    padding: 0.5em 2.5em !important;
  }
  .txt_center_line {
    max-width: 100%;
  }
  .txt_center_line_under {
    width: 100%;
  }
}
@media screen and (min-width:658px) and (max-width: 766px) {
  .cont_flex02 {
    padding-top: 254px;
  }
  .cont_flex02_img {
    text-align: right;
  }
  .cont_flex02_img img {
    padding-left: 0;
  }
}
