img {
  height: auto;
}
.cm-main-visual {
  height: calc(150px + (360 - 150) * ((100vw - 320px) / (767 - 320)));
  margin-top: calc(56px + (136.25 - 56) * ((100vw - 320px) / (767 - 320)));
  background: url("../img/cm/mv_bg_sp.jpg");
  background-size: cover;
}
.cm-main-visual img {
  position: absolute;
  width: calc(469/750 * 100vw);
  padding-top: calc(140/750 * 100vw);
  transform: translateX(-50%);
}
#section_cm {
  padding: calc(139/750 * 100vw) 0 calc(143/750 * 100vw);
  background: #EEF0F5;
}
#section_cm .container > h2 {
  margin-bottom: calc(80/750 * 100vw);
}
#section_cm .container > h2:nth-child(n+2) {
  margin-top: calc(140/750 * 100vw);
}
#section_cm .flex {
  flex-wrap: wrap;
}
#section_cm .container .flex:nth-child(n+2) {
  margin-top: calc(70/750 * 100vw);
}
#section_cm .flex .flex_box {
  width: 100%;
}
#section_cm .flex .flex_box h2 {
  margin-bottom: calc(47/750 * 100vw);
}
#section_cm .flex .flex_box:nth-child(n+2) {
  margin-top: calc(121/750 * 100vw);
}
#section_cm .flex .flex_box:last-child img {
  width: calc(489/750 * 100vw);
}
#section_cm .area_frame {
  position: relative;
  height: calc(347/750 * 100vw);
}
#section_cm .area_frame-img {
  height: calc(347/750 * 100vw);
  position: absolute;
  top: 0;
  left: 0;
}
#section_cm .area_frame iframe {
  width: 100%;
  height: calc(347/750 * 100vw);
}
#section_cm .flex .flex_box .btn {
  margin-top: calc(124/750 * 100vw);
}
@media screen and (max-width:767px) {
  #section_cm .flex.cm_before{
    margin-top: calc(121/750 * 100vw) !important;
  }
}
@media screen and (min-width:768px) {
  .cm-main-visual {
    height: 390px;
    margin-top: 65px;
    background: url("../img/cm/mv_bg_pc.jpg");
  }
  .cm-main-visual img {
    position: absolute;
    width: 424px;
    padding-top: 157px;
  }
  #section_cm {
    padding: 88px 0 72px;
  }
  #section_cm .container {
    width: 954px;
  }
  #section_cm .container > h2 {
    margin-bottom: 0;
  }
  #section_cm .container > h2:nth-child(n+2) {
    margin-top: 72px;
  }
  #section_cm .flex {
    align-items: center;
  }
  #section_cm .container .flex:nth-child(n+2){
    margin-top: 72px;
  }
  #section_cm .flex:nth-child(n+2) {
    margin-top: 88px;
  }
  #section_cm .flex .flex_box {
    width: 435px;
  }
  #section_cm .flex .flex_box h2 {
    margin-bottom: 34px;
  }
  #section_cm .flex .flex_box iframe {
    height: 240px;
  }
  #section_cm .flex .flex_box:nth-child(2) {
    margin-top: 0;
  }
  #section_cm .flex .flex_box:nth-child(n+3) {
    margin-top: 72px;
  }
  #section_cm .flex:last-child .flex_box:last-child {
    margin-top: 72px;
  }
  #section_cm .flex .flex_box:last-child img {
    width: 241px;
  }
  #section_cm .area_frame {
    height: 240px;
  }
  #section_cm .area_frame-img img {
    cursor: pointer;
  }
  #section_cm .flex .flex_box .btn {
    margin-top: 90px;
  }
}