@charset "UTF-8";

/* メイン */
.hero {
  background-color: #dee6e7;
}

.hero .hero_img {
  max-width: 1600px;
  margin: 0 auto;
}

/* 省エネ・コスト削減 */
.cost {
  padding: 8.53333vw 4vw 10.66667vw;
}

.cost .cost_inner {
  padding: 5.33333vw 4vw;
  margin-top: 5.33333vw;
  background-image: linear-gradient(to bottom, #edf7f9 0%, #c8e5f0 82%);
  border-top: 2px solid #00aca8;
}

.cost .cost_tl {
  font-family: 'Noto Sans Japanese-sb';
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 1.5;
  text-align: center;
  text-shadow: 0 0 4.5px #fff, 0 0 4.5px #fff, 0 0 4.5px #fff, 0 0 4.5px #fff, 0 0 4.5px #fff;
}

.cost .cost_tl::before,
.cost .cost_tl::after {
  content: '-';
}

.cost .cost_tl::before {
  margin-right: 0.4em;
}

.cost .cost_ex {
  margin: 1em 0 2em;
  font-size: 8px;
  font-size: 0.8rem;
  line-height: 1.375;
}

/* 省施工・短工期 */
.reduce {
  padding: 7.46667vw 4vw;
  background: #f7f7f7 url(../images/merit/reduce_bg_sp.jpg) no-repeat center top/100% auto;
}

.reduce .common_tl {
  margin-bottom: 8.53333vw;
}

.reduce .reduce_inner {
  padding: 5.33333vw 4vw;
  margin-top: 5.33333vw;
  background-color: #fff;
  border-top: 2px solid #00aca8;
  box-shadow: 0 0 5px 0 rgba(114, 114, 114, 0.5);
}

.reduce .reduce_img_1 {
  margin: 4.26667vw 0 4.8vw;
}

.reduce .reduce_img_2 {
  padding: 5.33333vw 3.86667vw 3.73333vw;
  border: 1px solid #00ada9;
}

/* 高速＆安定した通信 */
.communication {
  padding: 8.53333vw 4vw 10.66667vw;
}

.communication .common_tl {
  margin-bottom: 5.33333vw;
}

.communication .communication_items {
  display: flex;
  justify-content: space-between;
}

.communication .communication_item.left {
  flex-basis: 47.1014%;
  margin-top: 2.4vw;
}

.communication .communication_item.left .communication_tl {
  font-size: 10px;
  font-size: 1rem;
  background-color: #878787;
}

.communication .communication_item.left .communication_tl .small {
  margin-top: 0.25em;
  font-family: 'Noto Sans Japanese-r';
  font-size: 5.5px;
  font-size: 0.55rem;
}

.communication .communication_item.right {
  flex-basis: 50%;
}

.communication .communication_item.right .communication_tl {
  font-size: 11.5px;
  font-size: 1.15rem;
  background-color: #00a0e9;
}

.communication .communication_item.right .communication_tl .small {
  font-size: 9.5px;
  font-size: 0.95rem;
}

.communication .communication_img {
  background-color: #f9f9f9;
  box-shadow: 0 0 5px 0 rgba(114, 114, 114, 0.5);
}

.communication .communication_tl {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 10.66667vw;
  font-family: 'Noto Sans Japanese-sb';
  line-height: 1.2;
  color: #fff;
  text-align: center;
}

.communication .communication_txt {
  margin-top: 1em;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 1.5;
}

.communication .channel-hopping {
  padding: 4vw 3.53333vw 4.26667vw;
  margin-top: 5.86667vw;
  background-color: #f9f9f9;
  border: 2px solid #00ada9;
}

.communication .channel-hopping .communication_txt {
  margin-bottom: 1.5em;
}

.communication .channel-hopping_tl {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0.3em 1em;
  font-family: 'Noto Sans Japanese-sb';
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #fff;
  background-color: #00ada9;
}

/* レイアウト変更に対応 */
.change {
  padding: 7.46667vw 4vw;
  background: #e2f4f4 url(../images/merit/change_bg_sp.jpg) no-repeat center top/100% auto;
}

.change .common_txt {
  margin-bottom: 2em;
}

.change .change_items {
  display: flex;
  justify-content: space-between;
}

.change .change_item.left {
  flex-basis: 43.0435%;
  margin-top: 2.13333vw;
}

.change .change_item.left .change_inner {
  background-color: #fcfcfc;
}

.change .change_item.left .change_tl {
  height: 8.53334vw;
  font-size: 11px;
  font-size: 1.1rem;
  background-color: #878787;
}

.change .change_item.right {
  flex-basis: 54.2029%;
}

.change .change_item.right .change_inner {
  background-color: #f7ffff;
}

.change .change_item.right .change_tl {
  height: 10.66667vw;
  background-color: #00ada9;
}

.change .change_item.right .change_tl img {
  width: 35.2vw;
}

.change .change_inner {
  box-shadow: 0 0 5px 0 rgba(114, 114, 114, 0.5);
}

.change .change_tl {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-family: 'Noto Sans Japanese-sb';
  line-height: 1.2;
  color: #fff;
  text-align: center;
}

.change .change_img {
  padding: 0 3.2vw;
}

.change .change_txt {
  margin-top: 1em;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 1.5;
}

.change .change_txt .bold {
  font-family: 'Noto Sans Japanese-sb';
}

.change .change_ex {
  margin-top: 6.4vw;
  font-size: 9px;
  font-size: 0.9rem;
  line-height: 1.5;
}

.change .situations {
  padding: 5.33333vw 4.26667vw 6.93333vw;
  margin-top: 5.33333vw;
  background-color: #fff;
  box-shadow: 0 0 5px 0 rgba(114, 114, 114, 0.5);
}

.change .situations_tl {
  padding-bottom: 0.5em;
  margin-bottom: 5.86667vw;
  font-family: 'Noto Sans Japanese-sb';
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.7;
  text-align: center;
  border-bottom: 1px solid #00ada9;
}

.change .situations_tl .large {
  font-size: 16px;
  font-size: 1.6rem;
}

.change .situations_tl .notice {
  color: #ee751f;
}

.change .situations_tm {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 8.53333vw;
  margin: 0 4.26667vw 3.73333vw;
  background-color: #00ada9;
}

.change .situations_tm h4 {
  font-family: 'Noto Sans Japanese-sb';
  font-size: 13px;
  font-size: 1.3rem;
  color: #fff;
}

.change .situations_tm h4 .large {
  font-size: 15px;
  font-size: 1.5rem;
}

.change .situations_tm::before {
  margin-right: 2.13333vw;
  content: '';
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}

.change .factory .situations_tm::before {
  width: 4.93333vw;
  height: 5.73333vw;
  background-image: url(../images/merit/situations_ico_1.png);
}

.change .store .situations_tm::before {
  width: 6.26667vw;
  height: 4.93333vw;
  background-image: url(../images/merit/situations_ico_2.png);
}

@media screen and (min-width: 768px) {
  .toc_wrapper .toc {
    max-width: 1140px;
  }

  .toc_wrapper .toc > li {
    flex-basis: 21.0523%;
  }

  .cost {
    padding: 64px 0 88px;
  }

  .cost .cost_inner {
    max-width: 1040px;
    padding: 48px 30px 32px;
    margin: 32px auto 0;
    border-top-width: 4px;
  }

  .cost .cost_tl {
    font-size: 22px;
    text-shadow: 0 0 9px #fff, 0 0 9px #fff, 0 0 9px #fff, 0 0 9px #fff, 0 0 9px #fff;
  }

  .cost .cost_ex {
    font-size: 12px;
  }

  .reduce {
    padding: 88px 0 60px;
    background-image: url(../images/merit/reduce_bg_pc.jpg);
    background-size: 1600px auto;
  }

  .reduce .common_tl {
    margin-bottom: 84px;
  }

  .reduce .reduce_inner {
    max-width: 1200px;
    padding: 48px 40px 32px;
    margin: 32px auto 0;
    border-top-width: 4px;
    box-shadow: 0 0 10px 0 rgba(114, 114, 114, 0.5);
  }

  .reduce .reduce_img_2 {
    padding: 30px 38px;
    border-width: 2px;
  }

  .communication {
    padding: 72px 0 80px;
  }

  .communication .common_tl {
    margin-bottom: 42px;
  }

  .communication .communication_items {
    max-width: 1118px;
    margin: 0 auto;
  }

  .communication .communication_item.left {
    flex-basis: 44.7228%;
    margin-top: 27px;
  }

  .communication .communication_item.left .communication_tl {
    font-size: 25px;
  }

  .communication .communication_item.left .communication_tl .small {
    font-size: 14px;
  }

  .communication .communication_item.right {
    flex-basis: 47.4061%;
  }

  .communication .communication_item.right .communication_tl {
    font-size: 30px;
  }

  .communication .communication_item.right .communication_tl .small {
    font-size: 24px;
  }

  .communication .communication_img {
    box-shadow: 0 0 10px 0 rgba(114, 114, 114, 0.5);
  }

  .communication .communication_tl {
    height: 96px;
  }

  .communication .communication_txt {
    font-size: 20px;
  }

  .communication .channel-hopping {
    max-width: 1120px;
    padding: 30px 38px 24px;
    margin: 40px auto 0;
    border-width: 2px;
  }

  .communication .channel-hopping_tl {
    font-size: 24px;
  }

  .change {
    padding: 88px 0 60px;
    background-image: url(../images/merit/change_bg_pc.jpg);
    background-size: 1600px auto;
  }

  .change .change_items {
    max-width: 1028px;
    margin: 0 auto;
  }

  .change .change_item.left {
    flex-basis: 40.8561%;
    margin-top: 20px;
  }

  .change .change_item.left .change_tl {
    height: 65px;
    font-size: 26px;
  }

  .change .change_item.right {
    flex-basis: 51.5565%;
  }

  .change .change_item.right .change_tl {
    height: 85px;
  }

  .change .change_item.right .change_tl img {
    width: 306px;
  }

  .change .change_inner {
    box-shadow: 0 0 10px 0 rgba(114, 114, 114, 0.5);
  }

  .change .change_img {
    padding: 40px 25px 36px;
  }

  .change .change_txt {
    font-size: 20px;
  }

  .change .change_ex {
    max-width: 1028px;
    padding-left: 1em;
    margin: 24px auto 0;
    font-size: 12px;
    text-indent: -1em;
  }

  .change .situations {
    max-width: 1120px;
    padding: 56px 56px 68px;
    margin: 40px auto 0;
    box-shadow: 0 0 10px 0 rgba(114, 114, 114, 0.5);
  }

  .change .situations_tl {
    margin: 0 40px 44px;
    font-size: 28px;
    border-bottom-width: 2px;
  }

  .change .situations_tl .large {
    font-size: 31px;
  }

  .change .situations_items {
    display: flex;
    -moz-column-gap: 68px;
    column-gap: 68px;
    justify-content: center;
    background-image: linear-gradient(to right, transparent calc(50% - 0.5px), #ccc 1px 50%, transparent calc(50% + 0.5px));
  }

  .change .situations_item {
    flex-basis: 470px;
  }

  .change .situations_tm {
    height: 64px;
    margin: 0 0 28px;
  }

  .change .situations_tm h4 {
    font-size: 26px;
  }

  .change .situations_tm h4 .large {
    font-size: 30px;
  }

  .change .situations_tm::before {
    margin-right: 16px;
  }

  .change .factory .situations_tm::before {
    width: 37px;
    height: 43px;
  }

  .change .store .situations_tm::before {
    width: 47px;
    height: 37px;
  }
}

@media screen and (min-width: 861px) {
  .cost .merit_img_1 {
    max-width: 861px;
    margin: 0 auto;
  }
}

@media screen and (min-width: 1120px) {
  .reduce .reduce_img_1 {
    margin: 8px auto 48px;
  }
}

@media screen and (max-width: 767px) {
  .change .change_img {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 28.53333vw;
  }

  .change .situations_item + .situations_item {
    padding-top: 5.33333vw;
    margin-top: 5.33333vw;
    border-top: 1px solid #afafaf;
  }

  .change .situations_img {
    width: 61.06667vw;
    margin: 0 auto;
  }
}
