/* =========================================================
   モバイルファースト構成
   ベース(無条件) = SP(〜568px)
   min-width: 569px  = 〜960px 相当
   min-width: 961px  = 961px〜(PC)
   ========================================================= */

#sub_main_service .sub_main_content::before {
  background: url("../img/sodai/sodai_top.jpg") no-repeat top right;
  background-size: cover;
}

#sub_main_service .ttl_box picture {
  margin-left: 10px;
}

#intro .intro_txt {
  text-align: left;
  margin-bottom: 16px;
}

#intro .before_after {
  background: #fdf4d7;
  border: 4px solid #f9e9b5;
  padding: 20px 0;
}

#intro .before_after ul {
  gap: 0 6%;
  position: relative;
}

#intro .before_after ul li {
  max-width: 40%;
  width: 39.9%;
}

#intro .before_after ul::after {
  content: '';
  background: url("../img/common/icon_sankaku_right_orange.svg") no-repeat;
  width: 15px;
  height: 24px;
  position: absolute;
  left: 50%;
  top: 52%;
  transform: translate(-50%, -50%);
}

.ad_points li {
  padding: 20px 20px 25px;
}

@media screen and (min-width: 569px) {
  #intro .before_after {
    border-width: 6px;
    padding: 4vw 0 4vw;
  }

  #intro .before_after ul {
    gap: 0 50px;
  }

  #intro .before_after ul li {
    width: auto;
  }

  #intro .before_after ul::after {
    width: 25px;
    height: 41px;
  }

  .ad_points li {
    padding: 4vw 3.5vw;
  }
}

@media screen and (min-width: 961px) {
  #intro .intro_txt {
    text-align: center;
    margin-bottom: 42px;
  }

  #intro .before_after {
    padding: 42px 0 42px;
  }

  #intro .before_after ul li {
    max-width: none;
  }

  .ad_points li {
    padding: 40px 40px;
  }
}
