@charset "UTF-8";
.pc {
  display: none;
}
@media screen and (min-width: 768px) {
  body p {
    line-height: 1.8;
  }
  body span, body div, table th, table td {
    line-height: 1.3;
  }
  .sp {
    display: none;
  }
  .pc {
    display: block;
  }
  .flex_reverse {
    flex-direction: row-reverse;
  }
  /*          下層　　　　　*/
  .page_box {
    padding: 100px 25px;
  }
  .page_title {}
  .page_h2 {
    padding: 20px 50px 20px 30px;
    margin: 80px 0 50px 0;
    font-size: 30px;
  }
  .page_h2 span {
    letter-spacing: 1px;
    line-height: 1.3;
  }
  .page_h2:before {
    width: 183px;
    height: 167px;
    right: -22px;
    bottom: -38px;
  }
  .page_h3 {
    padding: 0 10px 10px 10px;
    margin: 40px 0 20px 0px;
    font-size: 24px;
  }
  .ht_02 {
    font-size: 47px;
  }
  .ht_01 {
    font-size: 15px;
    letter-spacing: 3px;
    margin: 17px 0 0px 9px;
  }
  .page_title {
    margin-bottom: 35px;
  }
  .page_title .text {
    margin-bottom: 34px;
    margin-top: 0;
  }
  .page_title .text:before {
    left: -267px;
    top: -198px;
    width: 412px;
  }
  .page_title .img {
    height: 300px;
  }
  .page_title .img, .page_title .img:before {
    border-radius: 20px;
  }
  .page_title .img:after {
    width: 100px;
    right: -31px;
    top: -44px;
  }
  /* ****　パンくず　*/
  .breadcrumbs {
    max-width: 1200px;
    margin: 25px auto 40px;
  }
  .breadcrumbs * {
    font-size: 13px;
    margin: 0 2px;
  }
  /******事務所概要　*/
  .page_tips_midasi {
    margin-bottom: 40px;
  }
  .company_tips {
    margin: 0 auto 100px;
  }
  .company_tips p {
    font-size: 20px;
    line-height: 2.5;
    text-align: center;
  }
  .company_LR > div {
    width: 47%;
  }
  .gglmap {
    border-radius: 15px;
    height: 100%;
  }
  .top_service_list_01 {
    grid-row-gap: 60px;
  }
  /***司法書士紹介*/
  .prg_img_wrap {
    margin-bottom: 30px;
  }
  .prf_img {
    height: auto;
  }
  .prf_img img {
    border-radius: 20px;
  }
  .name_wrap {
    bottom: 50px;
    right: 60px;
    padding: 30px 50px;
    border-radius: 10px;
    max-width: 293px;
    width: 100%;
  }
  .name_wrap.mizutama_point_02:after {
    right: -61px;
  }
  .name_01 {
    font-size: 14px;
    letter-spacing: 2px;
  }
  .name_02 {
    font-size: 25px;
    letter-spacing: 2px;
  }
  .about_tips{
margin-top: 80px;
}

  .about_tips .text {
    margin-top: 60px;
  }
  .about_tips .text p {
    line-height: 2.5;
  }
  .prf_LR.flex_reverse {
    margin-top: 100px;
  }
  .prf_LR .midasi {
    font-size: 31px;
    line-height: 1.4;
    margin-bottom: 25px;
  }
  .prf_LR_01:before {
    width: 196px;
    bottom: -18px;
    right: -23px;
  }
  .prf_LR_02:before {
    width: 189px;
    bottom: -18px;
    left: -23px;
  }
  /*********よくある質問　*/
  .page_anker_nav {
    margin-top: 0;
    margin-bottom: 0;
  }
  .page_anker_nav li a {
    font-size: 14px;
    padding: 5px 28px;
    height: 49px;
  }
  .qa_nav li {
    width: 20%;
    padding: 0 5px;
  }
  .qa_box {
    padding: 25px;
    flex-direction: column;
    justify-content: center;
    display: flex;
  }
  .qa_box .q {
    padding: 0px 50px 0px 92px;
    font-size: 18px;
    line-height: 1.5;
    min-height: 60px;
    flex-direction: column;
    justify-content: center;
    display: flex;
  }
  .qa_box .a {
    padding: 13px 30px 8px 93px;
    margin-top: 18px;
  }
  .qa_box .a p {
    line-height: 1.9;
  }
  .qa_box .q:before, .qa_box .a:before {
    width: 62px;
    height: 62px;
    font-size: 27px;
  }
  .qa_wrap dt:after {
    right: 22px;
  }
/****サービス　一部　*/

.sub_tokucho_wrap .midasi {
  width: fit-content;
  padding: 5px 38px;
}


.sub_tokucho_wrap .midasi_wrap p {
  flex: 1;
  padding-left: 20px;
}
/*ご利用案内　*/
.flow_list li + li{
margin-top: 40px;
}
.flow_list .p-service01-flow__item-title{
        left: -32px;


}

.flow_list li .text_wrap {
    padding: 35px 0 0 51px;
}
  /*************解決事例　*/
  .product_nav_wrap {
    margin: 85px auto 60px;
  }
  .product_nav_wrap .menu {
    gap: 15px 15px;
  }
  .product_nav_wrap .menu li {}
  .product_nav_wrap .menu a {
    padding: 5px 20px;
    height: 40px;
    font-size: 14px;
  }
  .case_title_wrap {
    padding: 30px 0px;
    margin: 30px auto;
  }
  .case_title, .case_spec_wrap {
    padding: 0 40px;
  }
  .case_title {
    border: none;
    border-right: solid 1px #ddd;
    flex: 1;
    flex-direction: column;
    justify-content: center;
    display: flex;
    line-height: 1.5;
  }
  .case_spec_wrap {
    width: 310px;
  }
  .case_title .single_midasi {
    font-size: 29px;
  }
  .case_more_wrap .more {
    margin-top: 70px;
  }
  /*サイトマップ*/
  .sitemap_list {
    width: 32%;
  }
  /*　　　　　　　　　　　お問合せ　*/
  .tel_mini_wrap .tel {
    height: 280px;
  }
  .tel_mini_wrap .tel .yc_01 {
    margin: 30px 0 20px;
    margin-top: 30px;
    font-size: 46px;
    letter-spacing: 2px;
  }
  .tel_mini_wrap .tel .yc_02 {
    font-size: 15px;
  }
  /*         　archive single　　　　　　　　　　*/
  .main_midasi {
    margin-bottom: 30px;
    font-size: 18px;
    padding: 15px 15px 15px 40px;
    line-height: 1.3;
  }
  .main_midasi:before {
    width: 100px;
    bottom: -20px;
    right: -49px;
  }
  .blog_meta {
    column-gap: 15px;
    margin: 40px 0 35px 0;
  }
  .layout_LR #primary {
    flex: 1;
  }
  .layout_LR #secondary {
    width: 250px;
  }
  .archive .top_column_list {
    row-gap: 50px;
  }
  .archive .top_column_list:after {
    display: block;
    content: "";
    width: 31%;
  }
  .archive .top_column_list > li {
    width: 31%;
    padding: 0;
    border: none;
    align-content: flex-start;
  }
  .archive .top_column_list li .text {
    width: 100%;
  }
  .archive .top_column_list .title a {
    line-height: 1.5;
    font-size: 16px;
  }
  .single .entry-content h2 {
    margin: 40px 0;
    font-size: 24px;
    padding: 0px 0px 0 50px;
  }
  .single .entry-content h3 {
    padding: 0 0px 15px 20px;
    margin: 40px 0 30px 0;
    font-size: 20px;
  }
  .nav-single {
    column-gap: 15px;
    margin: 0 auto;
    margin-top: 60px;
  }
  .nav-single > div a {
    font-size: 14px;
    letter-spacing: 1px;
  }
  .nav-single > div a:before {
    right: 0px;
  }
  .nav-single .nav-previous a:before {
    left: 0px;
    right: auto;
  }
  .news_title {
    font-size: 30px;
    margin-bottom: 30px;
  }
  .main_midasi, .widget-title {
    font-size: 30px;
    letter-spacing: 0px;
    padding: 20px 40px;
    border-radius: 10px;
  }
  .main_midasi:before {
    right: -30px;
  }
  .attachment {
    margin: 0 0 40px 0 !important;
    border-radius: 20px;
  }
  .single .entry-content h3:after {
    width: 10px;
    height: 10px;
    left: 0px;
    top: 9px;
  }
  /*　sidebar */
  .widget {
    margin-bottom: 40px;
  }
  .widget-title {
    font-size: 27px;
    letter-spacing: 2px;
    padding: 0 0 0px 53px;
    margin: 0px 0 30px !important;
  }
  .widget-title:before {
    width: 40px;
    top: 0px;
  }
  /*　pager */
  .pager {
    margin: 50px 0 0 0;
  }
  /*  目次プラグイン　*/
  #ez-toc-container {
    border-radius: 10px !important;
    padding: 20px 30px;
    margin: 30px auto;
  }
  .nav-single {
    margin-top: 60px;
    padding: 15px 20px;
    max-width: 300px;
  }
}
@media (max-width: 1300px) {
  .layout_LR {}
  .page_title {
    padding: 0 25px;
  }
}
@media screen and (min-width: 1069.888px) {
  .product_nav_wrap .inner .title {
    width: 250px;
  }
  .product_nav_wrap .inner > .title + div {
    flex: 1;
  }
  .product_nav_wrap .tm_02 br {
    display: block;
  }
}
@media (max-width:1200px) {
.p-page__service-title {
    padding: 0 15px!important;
}



}
/*      @media   　   min768　max1070                                         */
@media screen and (min-width: 768px) and (max-width:1070px) {
.top_service_list .mizutama_midasi{
        font-size: 20px;


}
.top_service_list .mizutama_midasi:before,
.top_service_list .mizutama_midasi:after {
        width: 30px;
    }
.top_service_list .mizutama_midasi:before {
        left: -36px;
    }	
.top_service_list .mizutama_midasi:after {
        right: -36px;
    }
.top_service_list .mizutama_midasi {
        margin: 17px auto 11px;
    }	
	
	
.l-service01-case,
    .l-service01-case {
        padding-block: 65px!important;
    }
    .l-service01-price {
        padding-block: 62.5px 127.5px!important;
    }	
	      .p-service01-flow__item-title {
        padding-left: 77px!important;
        font-size: 23px!important;
    }
    .p-service01-flow__item-text {
        padding-left: 50px!important;
        padding-block: 18px!important;
        padding-right: 0!important;
        line-height: calc(27 / 14);
    }
    .p-service01-price__table::before {
        width: 423px!important;
        height: 162px!important;
    }
    .page_anker_nav li a {
        padding: 5px 15px;
    }
  .page_title .text:before {
    left: -106px;
    top: -198px;
    width: 356px;
  }
  .ht_02 {
    font-size: 38px;
    margin-top: 25px;
  }
  .case_wrap {
    width: calc(100% - 160px);
  }
  .page_box {
    padding: 60px 60px;
  }
  .breadcrumbs {
    margin: 20px auto 20px;
  }
  .name_wrap {
    bottom: 29px;
    right: 29px;
    padding: 20px 35px;
    max-width: 220px;
    grid-row-gap: 5px;
  }
  .top_about_LR {
    column-gap: 50px;
  }
  .prf_LR .midasi {
    font-size: 26px;
  }
  .company_table th {
    width: 120px;
  }
  .case_more_wrap .more {
    margin-top: 30px;
  }
  
  .p-service01-case,
  .p-service01-faq,
  .p-service01-price,
  .p-service01-flow,
  .p-service01-feature{
      padding-inline: 60px!important;
  }
  .yudo_contact_wrap {
    width: calc(100% - 120px);
	        padding: 0px 0 50px 0;
}
    .yc_img {
        margin-top: -47px;
    }
  .yc_img img {
    max-width: 500px;
}
    .yudo_contact_list > div {
        width: 48%;
        height: 230px;
    }
	.yudo_contact_list > div a {
    padding: 0 30px;
}
    .yc_icon img {
               max-height: 60px;
    }	
    .yudo_contact_list .tel .yc_01 {
        font-size: 38px;
        letter-spacing: 1px;
    }	
    .yudo_contact_list .mail .yc_01 {
        font-size: 33px;
		letter-spacing: 0px;
    }
    .yudo_contact_list .yc_01 {
        margin: 18px 0 13px;

    }	
  .p-page__service-title .img {
    height: 422px !important;
  }
  .p-page__service-text-box2 {
    bottom: 40px !important;
    left: 70px !important;
    width: calc(100% - 242px) !important;
  }
  .p-page__service-text2 {
    font-size: 15px !important;
    line-height: 2.4 !important;
  }
  .p-page__service-text {
    font-size: 23px !important;
    letter-spacing: 3px !important;
  }
  .p-page__service-text-box {
    top: 65px !important;
    right: 70px !important;
  }
  .footer_LR .L p {
    text-align: center;
    margin-top: 20px;
  }
  .layout_LR #secondary {
    width: 200px;
  }
  .layout_LR {
    padding: 50px 0;
    padding-top: 25px;
    column-gap: 30px;
  }
  .widget-title {
    font-size: 24px;
    letter-spacing: 1px;
    padding: 0 0 0px 53px;
    margin: 0px 0 30px !important;
  }
  .archive .top_column_list .title a {
    line-height: 1.3;
    font-size: 13px;
  }
  .cat_name {
    margin: 15px 0 10px;
  }
  .cat_name a {
    padding: 3px 11px 3px;
    font-size: 10px;
  }
  .archive .top_column_list:after, .archive .top_column_list > li {
    width: 32%;
  }
  .main_midasi {
    font-size: 24px;
    letter-spacing: 0px;
    padding: 15px 25px;
    border-radius: 10px;
  }
  .date {
    font-size: 12px;
  }
  .tm_02 {
    font-size: 31px;
    letter-spacing: 2px;
  }
  .p-service01-price__table tr {
    display: table !important;
    width: 100% !important;
  }
  .p-service01-price__table th, .p-service01-price__table td {
    padding: 15px 20px !important;
  }
  .p-service01-price__table th {
    width: 250px !important;
    font-size: 15px;
  }
  .p-service01-price__table td {
    width: auto !important;
  }
  .price_box .p-service01-price__table:not(:last-of-type) {
    margin-bottom: 70px;
  }
  .img img {
    border-radius: 15px;
  }
  .flow_list .img {
    width: 300px;
  }
  .flow_list li {
  }
}
/*      @media   　 max1070                  */
@media screen and (max-width: 1070px) {
  body {}
  .sp_header_logo {
    display: block;
  }
  .ec-layoutRole__header {}
}
/*      @media   　 max767                                             */
@media screen and (max-width: 767.888px) {
  .product_nav_wrap .menu a {
    height: 33px;
    font-size: 12px;
  }
  .product_nav_wrap .sub-menu {
    margin-bottom: 10px;
  }
  .product_nav_wrap .sub-menu, .product_nav_wrap .menu .menu-item-has-children {
    column-gap: 0;
    grid-row-gap: 5px;
  }
  .product_nav_wrap .sub-menu, .product_nav_wrap .menu {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .product_nav_wrap .menu .menu-item-has-children > a {
    max-width: 100%;
    width: 100%;
  }
  .product_nav_wrap .sub-menu li, .product_nav_wrap .menu > li {
    width: 49%;
  }
  .p-service01-image img {
    aspect-ratio: 16 / 8 !important;
    border-radius: 0 20px 0 0 !important;
    object-position: left center;
  }
  .ht_02 {
    padding-right: 16px;
  }
  .p-service01-feature__item-title.mb30 {
    margin-bottom: 15px !important;
  }
  .attachment {
    border-radius: 10px;
  }
  .widget {
    margin-bottom: 0px;
  }
  .archive_case_spec {
    gap: 10px 10px;
    margin: 20px 0 16px 0;
  }
  .iraisha_name {
    font-size: 13px;
  }
  .top_column_list {
    grid-row-gap: 10px;
  }
  .archive .top_column_list > li, .top_column_list li {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    column-gap: 15px;
  }
  .top_column_list .thumb > a img {
    border-radius: 5px;
  }
  .top_column_list li .thumb {
    width: 120px;
    margin-bottom: 0;
  }
  .top_column_list li .text {
    flex: 1;
  }
  .top_column_list .cat_name {
    column-gap: 5px;
    margin: 0 0 5px 0;
    grid-row-gap: 5px;
  }
  .top_column_list .cat_name a {
    padding: 4px 12px 5px;
    font-size: 10px;
  }
  .top_column_list .date {
    font-size: 10px;
  }
  .top_column_list .title a, .archive .top_column_list .title a {
    line-height: 1.4;
    font-size: 13px;
  }
  .pp_ol li {
    margin-left: 0 !important;
  }
  .common_table th, .common_table td {
    display: block;
    width: 100%;
  }
  .common_table td {
    padding-top: 0;
    padding-right: 0;
    padding-left: 0;
  }
  .page-id-41 .top_service_list_01 {
    margin-bottom: 40px;
  }
  #secondary {
    margin-top: 40px;
  }
  .nav-previous a {
    padding: 12px 20px 12px 40px;
  }
  .nav-next a {
    padding: 12px 40px 12px 20px;
  }
}