
.cleanDriving{
  margin-top: 30px;
  }

  @media screen and (max-width: 767px) {
    .cleanDriving > .col{
      margin-top: 20px;
    }
    .cleanDriving__txt{
    font-weight: bold;
    }
    .products_img.products_img_sp{
      margin-top: 10px;
    }
  }/* ------------------------------- main_visual ------------------------------- */
.main_visual.product_index { background-image: url(../img/index/img_main_visual.jpg); }

.main_visual .main_visual_note {
	position: absolute;
	right: 1em;
	bottom: .7em;
	font-size: .85em;
	font-weight: bold;
	text-shadow:
    1px 1px 0 #fff,
    -1px 1px 0 #fff,
    -1px -1px 0 #fff,
    1px -1px 0 #fff;
}

.main_visual.product_index .main_visual_inner .main_visual_img {
  display: flex;
  margin-top: 10px;
}


.main_visual.product_index .main_visual_inner .main_visual_img > * {
  margin-right: 10px;
  margin-left: 10px;
  width: calc(125 / 360 * 100%);
}

.main_visual.product_index .main_visual_inner .main_visual_img > * img {
  width: 100%;
}

.main_visual.product_index .main_visual_inner .main_visual_sub-text {
  font-size: .75em;
  text-align: left;
  margin-top: calc(90 / 584 * 100%);
  font-weight: bold;
}
.main_visual.product_index .main_visual_inner .main_visual_img .logo_bestbuy {
  width: calc(300 / 584 * 100%);
}

@media screen and (max-width: 767px) {

  .main_visual.product_index { background-image: url(../img/index/img_main_visual_sp.jpg); }
  .main_visual .main_visual_note {
    right: auto;
    left: 1em;
  }


}

.main_visual.product_index .main_visual_inner.main_visual_machine { top: 53%; left: 51%;}

.main_visual.product_index .main_visual_inner.main_visual_logo { top: 53%; left: 82%; width: 17%; display: none;}
.main_visual.product_index .main_visual_inner.main_visual_logo img { width: 100%; vertical-align: bottom; }

.main_visual.product_index .main_visual_inner.pos_right { width: auto; display: inline-block; right: 60%; top: 53%; }

@media screen and (max-width: 767px) { .main_visual.product_index .main_visual_inner.pos_right { width: 100%; top: 3vw; }
  .main_visual.product_index .main_visual_inner .main_visual_img { display:block; width: calc(300 / 750 * 100vw); margin-top: 10px;}
  .main_visual.product_index .main_visual_inner .main_visual_img img { width: 100%; }
  .main_visual.product_index .main_visual_inner .main_visual_img > * {
    margin-right: 5px;
    margin-left: 5px;
  }
  .main_visual.product_index .main_visual_inner .main_visual_img > *:first-child {
    width: 80%;
  }
  .main_visual.product_index .main_visual_inner .main_visual_img .logo_bestbuy {
    width: 80%;
  }

  .main_visual.product_index .main_visual_inner .main_visual_sub-text {
    width: 45%;
    font-size: .7em;
  }

  .main_visual.product_index .main_visual_inner .main_visual_sub-text--02 {
    position: absolute;
    width: 100%;
    bottom: 4%;
    left: 0;
  }

}

@media screen and (max-width: 400px) {
  .main_visual.product_index .main_visual_inner.pos_right { top: 0; }
  .main_visual.product_index .main_visual_inner .main_visual_sub-text {
    font-size: .6em;
  }
  .main_visual.product_index .main_visual_inner .main_visual_sub-text--02 {
    bottom: 1%;
  }
}


@media screen and (max-width: 767px) { .main_visual.product_index .main_visual_inner.main_visual_machine { width: 55%; top: 38%; left: 50%; }
  .main_visual.product_index .main_visual_inner.main_visual_machine img { width: 100%; }
  .main_visual.product_index .main_visual_inner.main_visual_logo { top: 74%; left: 20%;  width: 70px; display: block;}


}

.main_visual_icon{ position: absolute; top: 20px; right: 50px;}
@media screen and (max-width: 1180px){ .main_visual_icon{ top:0; right: 0;} .main_visual_icon img{ width: 90%;}}

/* ------------------------------- index_content ------------------------------- */
.index_content .index_section a { color: #333; }

.index_content .index_section:nth-of-type(1) { background-image: url(../img/index/img_section_01.jpg); background-color: #dcf2fa; }

.index_content .index_section:nth-of-type(2) { background-image: url(../img/index/img_section_02.jpg); background-color: #a2d8f1; }

.index_content .index_section:nth-of-type(3) { background-image: url(../img/index/img_section_03.jpg); background-color: #f0f7fc; }

.index_content .index_section:nth-of-type(4) { background-image: url(../img/index/img_section_04.jpg); background-color: #9bdcdf; }

@media screen and (max-width: 767px) { .index_content .index_section:nth-of-type(1) { background-image: url(../img/index/img_section_01_sp.jpg); }
  .index_content .index_section:nth-of-type(2) { background-image: url(../img/index/img_section_02_sp.jpg); }
  .index_content .index_section:nth-of-type(3) { background-image: url(../img/index/img_section_03_sp.jpg); }
  .index_content .index_section:nth-of-type(4) { background-image: url(../img/index/img_section_04_sp.jpg); } }

.section01_03 .emphasis_color_lightblue { margin-top: 30px; margin-bottom: 10px; }

@media screen and (max-width: 767px) { .section01_03 .emphasis_color_lightblue { margin-top: 20px; margin-bottom: 0; } }

.section05_03 .product_has_row:first-of-type { margin-top: 30px; }

.section05_03 .product_has_row ~ .product_has_row { margin-top: 20px; }

.section05_03 .emphasis_label_blue04 { padding: 5px; margin-right: 20px; width: 200px; }

.section05_03 .emphasis_label_blue04.emphasis_label_blue04--02 {width: auto; text-align: left; font-size: 16px; padding: 2px 9px;}

@media screen and (max-width: 767px) { .section05_03 .product_has_row:first-of-type { margin-top: 20px; }
  .section05_03 .product_has_row ~ .product_has_row { margin-top: 15px; }
  .section05_03 .product_has_row .col { margin-top: 10px; }
  .section05_03 .emphasis_label_blue04 { margin-right: 0; padding: 5px; width: 100%; box-sizing: border-box; }


  .section05_03 .emphasis_label_blue04.emphasis_label_blue04--02 {font-size: .88em;}
}


.video_wrap {
    position: relative;
    display: block;
    max-width: 600px;
    margin-right: auto;
    margin-left: auto;
}
.video_wrap > div {
    padding-top: 56.25%;
}

.video_wrap > div > * {
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
}

.products_text_arrow {
    margin-bottom: 36px;
    margin-top: 10px;
    margin-right: auto;
    margin-left: auto;
    position: relative;
    text-align: center;
}
.products_text_arrow::after {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 25px 0 25px;
    border-color: #00abcf transparent transparent transparent;
    display: inline-block;
    bottom: -30px;
    left: 0;
    right: 0;
    margin: auto;
}
.emphasis_label_purple02 {
    border: solid 3px #00abcf;
    background: #fff;
    color: #00abcf;
    padding: 2px 9px;
    font-weight: bold;
}
.emphasis_label_purple02 + .products_text {
    margin-top: 20px;
}

.cleanDriving{
  margin-top: 30px;
  }

  @media screen and (max-width: 767px) {
    .cleanDriving > .col{
      margin-top: 20px;
    }
    .cleanDriving__txt{
    font-weight: bold;
    }
    .products_img.products_img_sp{
      margin-top: 10px;
    }
  }
.red {
  color: #ec1d00;
}
.products_img_center {
  text-align: center;
}
.mt20 {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .w100 img {
    width: 100%;
  }
}

.w600 {
  width: 600px;
}
@media screen and (max-width: 767px) {
  .w600 {
    width: auto;
  }
}

.new_icon {
  position: absolute;
  left: -10px;
  top: -20px;
  display: inline-block;
  padding: 3px 10px;
  color: #fff;
  background: #f00;
}

@media screen and (max-width: 767px) {
  .new_icon {
    left: 0;
    top: -10px;
  }
}

.u-mt30 {
  margin-top: 30px !important;
}


/* ------------------------------- util ------------------------------- */
.sub-note-indent {
  font-size: .9em;
  text-align: left;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-weight: normal;
}


.sub-note-indent > span:first-child {
  padding-right: .2em;
}

.sub-note-indent > span:last-child {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.products_img_72 img {
  max-width: 72px !important;
}
.products_img_120 img {
  max-width: 120px !important;
}

.aligin-item-end {
  align-items: flex-end;
}