@charset "UTF-8";
.pc {
  display: none;
}
@media screen and (min-width: 768px) {
  body p, body span, body div, table th, table td {}
  .sp {
    display: none;
  }
  .pc {
    display: block;
  }
  .flex_reverse {
    flex-direction: row-reverse;
  }
  /*          下層　　　　　*/
  .page_title {}
  .page_title span {}
  .page_h2 {}
  .page_h3 {}
  /*              追加　archive single　　　　　　　　　　*/
  .article-group .top_blog_list {
    justify-content: flex-start;
  }
  .single .entry-content h2 {}
  .single .entry-content h3 {}
}
/*      @media   　   min768　max1024                                         */
@media screen and (min-width: 768px) and (max-width:1024px) {}
@media screen and (max-width: 1024px) {
  body {}
  .sp_header_logo {
    display: block;
  }
  .ec-layoutRole__header {}
}
/*      @media   　 max767                                             */
@media screen and (max-width: 767.888px) {
  .page_h2 {
    font-size: 6.4vw;
  }
  .page_title .top_service_midasi {
    max-width: 70%;
  }
  .top_service_midasi .tsm_02 {
    font-size: 5.6vw;
  }
  .top_service_midasi .tsm_03 {
    font-size: 3.1vw;
    margin-top: 5px;
  }
  .miryoku_list li .midasi {
    font-size: 6vw;
  }
  .umekomi_page_nav {}
  .page_navi_wrap .midasi {
    font-size: 4.6vw;
  }
  .page_navi_wrap > div > a {
    padding: 15px 5px;
    min-height: 135px;
    letter-spacing: -1px;
  }
  .sdi_left .service_h3 {
    padding-left: 38px;
  }
  .sdi_right .service_h3 {
    padding-right: 38px;
  }
  .service_h3 {
    font-size: 5.7vw;
  }
  .sdi_left .service_detail_img:before {
    width: 68px;
    right: 20px;
    top: -77px;
  }
  .sdi_right .service_detail_img:before {
    width: 75px;
    left: -12px;
    top: -78px;
  }
  .fee_navi_wrap .midasi {
    font-size: 17px !important;
  }
  .fee_navi_wrap > div > a {
    padding: 10px 15px 25px 15px;
    min-height: initial;
  }
  .page_navi_box .maru_list a {
    font-size: 3.8vw;
  }
  .page_navi_box .maru_list li:before {
    width: 11px;
    height: 11px;
  }
  .qa_box .a {
    padding: 5px 0px 0px 55px;
  }
  .fee_other_list li > span {
    width: 100%;
  }
  .plan_koumoku, .plan_name, .fee_table td, .fee_table td {
    font-size: 11px;
  }
  .fee_table td {
    padding: 5px 0;
  }
  .fee_table th {
    padding: 5px 2px;
  }
  .plan_koumoku {
    border-right: none;
    padding-left: 17px;
  }
  .plan_koumoku, .plan_name {
    padding-top: 5px;
    padding-bottom: 5px;
  }
  .plan_koumoku {
    padding: 0;
    padding-left: 15px;
  }
  .fee_table tr td:first-of-type {
    width: 89px;
  }
  .ouchi_table.fee_table tr td:first-of-type {
    width: 68px;
  }
  .service_detail_img {
  width: calc(100% - 30px);
}

  .plan_koumoku:before {
    width: 8px;
    height: 8px;
    top: 1px;
  }
  
.top_photo_list > li .youto {
    font-size: 12px;
	}
  .case_spec_wrap .bukken_cat a {
    font-size: 12px;
    padding: 5px 10px 7px;
  }
  .single .case_title,
  .case_spec_wrap{
  padding-left: 0;
  padding-right: 0;
  }
    .single .case_title{
        font-size: 21px;
        line-height: 1.5;
	}
.case_title_wrap {
  padding: 10px 20px;
}
.case_spec_wrap .youto {
    font-size: 14px;
}	
.company_table td, .company_table th {
    padding:10px 8px;
}
  .company_table th {
    padding-left: 30px;
    width: 102px;
}

  #secondary {
    margin-top: 40px;
  }
  .nav-previous a {
    padding: 12px 20px 12px 40px;
  }
  .nav-next a {
    padding: 12px 40px 12px 20px;
  }
  .top_blog_list .title {
    font-size: 15px;
  }
  #primary .sns {
    margin: 30px 0;
    padding: 15px;
  }
  #primary .sns a {
    font-size: 11px;
  }
  input[type="text"], input[type="password"], input[type="search"], input[type="tel"], input[type="url"], input[type="email"], input[type="number"], textarea {
    padding: 10px 15px;
    height: 40px;
    font-size: 16px;
  }
  textarea {
    height: 150px;
  }
  input[type="submit"], input[type="reset"], input[type="button"] {
    height: 60px;
    font-size: 22px;
  }
}