@charset "UTF-8";
@media screen and (max-width: 1200px) {
  .inner_wrap {
    width: 100%;
    padding: 0 3%;
  }
}

/*==============================================================
　タブレット〜スマホ
===============================================================*/
@media screen and (max-width: 1000px) {
  .mv_area .mv_tl {
    font-size: clamp(37px, 4vw, 47px);
  }
}

@media screen and (max-width: 768px) {
  .pc_el {
    display: none !important;
  }
  .sp_el {
    display: inline-block;
  }
  .base_tl {
    margin-bottom: 30px;
    font-size: clamp(24px, 7vw, 38px);
  }
  /*==============================================================
　#home : トップ
===============================================================*/
  .mv_area {
    background-size: cover;
  }
  .mv_area .mv_wrap {
    padding: 10px 0 50px;
  }
  .mv_area .fl_box {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .mv_area .left_box {
    width: 100%;
  }
  .mv_area .right_box {
    width: 100%;
  }
  .mv_area .right_box .fig {
    display: none;
  }
  .mv_area .box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 20px;
  }
  .mv_area .box .fig {
    width: 28%;
    display: block;
  }
  .mv_area .logo {
    margin-bottom: 20px;
  }
  .mv_area .logo img {
    max-width: 180px;
  }
  .mv_area .nintei img {
    width: 100%;
    max-width: 350px;
  }
  .mv_area .mv_tl {
    width: 70%;
    font-size: clamp(27px, 9.4vw, 67px);
    margin-bottom: 0;
  }
  .mv_area .mv_tl small {
    font-size: clamp(20px, 7vw, 50px);
  }
  .mv_area .merit_box {
    margin-bottom: 20px;
  }
  .mv_area .contact_box {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 90%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: auto;
  }
  .mv_area .contact_box .contact_btn {
    margin: 0 0 10px;
  }
  .problem_area {
    padding: 50px 0 30px;
  }
  .problem_area .m_fig img {
    max-width: 100%;
  }
  .problem_area .problem_list li {
    width: 100%;
    padding: 10px;
    margin-bottom: 20px;
  }
  .problem_area .problem_list .ico {
    width: 70px;
    margin-right: 10px;
  }
  .problem_area .problem_list .txt_box {
    width: calc(100% - 90px);
  }
  .problem_area .problem_list .txt_box .tl {
    margin-bottom: 5px;
  }
  .problem_area .problem_list .txt_box .txt {
    font-size: clamp(14px, 2vw, 16px);
  }
  .resolution_area {
    padding: 110px 0 30px;
  }
  .resolution_area .m_fig img {
    max-width: 100%;
  }
  .resolution_area .resolution_list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .resolution_area .resolution_list li {
    width: 100%;
    margin-bottom: 50px;
  }
  .resolution_area .resolution_list li:last-child {
    margin-bottom: 0;
  }
  .resolution_area .resolution_list .photo {
    text-align: center;
  }
  .reason_area {
    padding: 110px 0 30px;
  }
  .reason_area .reason_list li {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .reason_area .reason_list .photo {
    width: 100%;
    text-align: center;
    margin-bottom: 20px;
  }
  .reason_area .reason_list .txt_box {
    width: 100%;
    padding: 0;
  }
  .reason_area .reason_list .tl {
    font-size: clamp(22px, 2vw, 24px);
  }
  .contact_area {
    padding: 30px 0;
  }
  .contact_area .contact_box {
    padding: 0;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .contact_area .contact_box .contact_btn {
    margin: 0 0 20px;
  }
  .faq_area {
    padding: 50px 0 30px;
  }
  .voice_area {
    padding: 110px 0 30px;
  }
  .voice_area .voice_list li {
    width: 100%;
    margin-bottom: 20px;
  }
  .voice_area .voice_list li:last-child {
    margin-bottom: 0;
  }
  .voice_area .voice_list .txt {
    margin-right: 5%;
  }
  .flow_area .base_tl {
    margin-bottom: 50px;
  }
  .flow_area .flow_list {
    display: block;
    margin-bottom: 30px;
  }
  .flow_area .flow_list li {
    width: 277px;
    margin: 0 auto 70px;
    border: 2px solid #79c81a;
  }
  .flow_area .flow_list li::before {
    top: calc(100% + 2px);
    left: 50%;
    border: 136px solid transparent;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    border-top: 25px solid #79c81a;
  }
  .flow_area .flow_list li::after {
    top: calc(100% + 0px);
    left: 50%;
    border: 136px solid transparent;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    border-top: 25px solid #fff;
  }
  .flow_area .flow_list li:last-child {
    margin-bottom: 0;
  }
  .flow_area .flow_list li .box {
    left: 0;
    padding: 60px 10px 15px;
  }
  .flow_area .notes .tl {
    font-size: clamp(14px, 4vw, 18px);
  }
  .flow_area .notes .list li {
    padding-left: 20px;
  }
  footer .fl_box {
    display: block;
    padding-bottom: 20px;
  }
  footer .logo {
    max-width: 180px;
    margin: 0 auto 10px;
  }
  footer address {
    font-size: clamp(14px, 2vw, 16px);
    margin-bottom: 10px;
    text-align: center;
  }
  footer .sns_list {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  footer .copyright {
    font-size: clamp(12px, 2vw, 12px);
  }
}
