@media screen and (max-width: 560px) {
body {
    font-size: 12.5px;
}
.sp {
    display: block!important;
}
.pc  {
    display: none;
}
.mid  {
    display: none!important;
}
.none {
    display: none;
}
header {
    height: 60px;
}
header .left_box {
    float: none;
    text-align: left;
    padding: 0;
    padding-top: 5px;
}
header .left_box .logo{
    float: left;
    padding: 0;
    padding-left: 15px;
}
header .left_box .sub_catch{
    float: left;
    margin-top: 10px;
    font-size: 9px;
    margin-left: 22px;
}
header .left_box img {
    width: 95px;
}
header .menu {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column-reverse;
    height: auto;
    justify-content: flex-end;
    padding-top: 60px;
    margin: 0;
    height: 100vh;
}
header .menu li {
    float: none;
    text-align: left;
    width: 72%;
    margin: 0 auto;
}
header .menu li:nth-child(2) {
    text-align: left;
    margin: 0 auto;
}
header .menu li:nth-child(3) {
    margin: 0 auto;
}
header .menu li:first-child {
    width: 72%;
    margin: 0 auto;
    height: auto;
}
header .menu li:first-child a {
    width: 100%;
    height: auto;
    padding: 15px 17.5px;
    padding-left: 65px;
    background-position: 15px;
    font-size: 14px;
    line-height: 1;
}
header .menu li p {
    line-height: 1;
    padding: 10px 0 20px 0;
}
header .menu li:first-child a p {
    font-size: 14px;
    padding: 0;
    vertical-align: middle;
}
header .menu li a p img {
    width: auto;
}
.pcmenu__item a:hover {
    color: #000;
}
#mv {
    height: auto;
    width: 90%;
    position: static;
    margin: 0 auto;
    padding-top: 90px;
    padding-bottom: 45px;
}
#mv::after {
    display: none;
    content: none;
    width: 100%;
    height: 100%;
}

#mv .mv_txt {
    position: static;
    font-size: 25px;
}
#mv .mv_ttl {
    font-size: 25px;
    margin-bottom: 1.5em;
}
#mv .mv_disc_ttl {
    font-size: 16px;
}
#mv .mv_disc_txt {
    font-size: 12.5px;
    margin-bottom: 20px;
}
#mv .mv_img {
    position: static;
    width: 100%;
    height: auto;
    min-height: 0;
    margin-bottom: 20px;
}
#mv .mv_img .mv_img_inner img {

}
#service {
    padding-top: 25px;
    height: auto;
    margin-bottom: 55px;
}
#service .service_menu_inner .menu_inner_txt_bk {
    margin-top: 0;
}
.content_ttl {
    font-size: 17.5px;
}
.content_sub_catch {
    font-size: 10px;
    margin-bottom: 28px;
}
#service .service_img {
    width: 65%;
    margin: 0 auto;
    margin-bottom: 35px;
}
#service .service_img img {
    width: 100%;
}
#service .service_icon_box_inner {
    flex-basis: 30%;
    margin: 0 10px;
}
#service .service_icon_box_inner img {
    width: 100%;
}
#service .service_disc_box {
    padding-top:25px;
}
#service .service_disc_inner {
    margin: 0;
    width: auto;
}
#service .service_disc_inner strong {
    font-size: 15px;
}
#service .tag_box {
    display: flex;
    flex-wrap: wrap;
}
#service .service_disc_inner span {
    font-size: 14px;
    margin: 0;
    margin-bottom: 6px;
}
#service .service_disc_inner span.col-1 {
    flex-basis: 100%;
    width: 100%;
    text-align: center;
}
#service .service_disc_inner span.col-2 {
    flex-basis: 49%;
    width: 100%;
    text-align: center;
    box-sizing: border-box;
}
#service .service_disc_inner span.mr-2 {
    margin-right: 2%;
}
#service .service_menu_box {
    width: 100%;
}
#service .service_menu_box h4 {
    font-size: 15px;
}
#service .service_menu_box h4 img {
    width: 15px;
    padding-right: 10px;
}
#service .service_menu_inner {
    padding-top: 40px;
    padding-bottom: 45px;
    width: 100%;
}
#service .menu_content_container {
    flex-wrap: wrap;
}
#service .menu_content_box {
    flex-basis: 100%;
    width: 100%;
    margin-bottom: 75px;
}
#service .menu_content_box h5 {
    margin-bottom: 15px;
}
#service .menu_content_box h5 img {
    width: 25px;
}
#service .menu_content_box h5 div>div .menu_ttl {
    font-size: 15px;
}
#service .menu_content_box h5 div>div .menu_sub_catch{
    font-size: 9px;
}
#service .menu_content_box .menu_img {
    margin-bottom: 12.5px;
}
#service .menu_content_box .service_menu_btn {
    margin-top: 20px;
}
#service .menu_content_box .service_menu_btn a {
    font-size: 12.5px;
    width: 45%;
    max-width: none;
}
#service .service_menu_inner .menu_inner_txt {
    font-size: 15px;
    margin-top: 0;
    background: url(../img/sura_sp.png) ;
    background-size: 100% auto;
    background-position: center;
    background-repeat: no-repeat;
}
#service .service_menu_inner .menu_inner_txt::before, #service .service_menu_inner .menu_inner_txt::after  {
    content: none;
}
#case {
    padding-top: 55px;
    padding-bottom: 0;
}
#case .cace_flow_container {
    margin: 0 auto;
    margin-top: 47px;
    width: 75%;
}
#case .cace_flow_box {
    flex-basis: 100%;
    width: 100%;
    margin-bottom: 45px;
    flex-wrap: wrap;
}
#case .cace_flow_box .case_flow_img {
    flex-basis: 100%;
    text-align: center;
    margin: 0 auto;
}
#case .cace_flow_box:nth-child(2n) .case_flow_img {
    margin: 0;
}
#case .cace_flow_box .case_flow_img img {
    width: 56%;
}
#case .cace_flow_box .case_flow_txt {
    flex-basis: 100%;
}
#case .cace_flow_box .case_flow_txt .txt_ttl_box {
    justify-content: center;
    margin-bottom: 12.5px;
}
.txt_ttl_box .txt_ttl_box_l {
    margin-right: 12.5px;
}
.txt_ttl_box .menu_sub_catch {
    font-size: 9px;
}
.txt_ttl_box .menu_ttl.ff-num {
    font-size: 32.5px;
}
.txt_ttl_box .menu_ttl {
    font-size: 20px;
}
#company {
    padding-top: 65px;
    background: linear-gradient(180deg,#f1f6f8 0%,#f1f6f8 71%,#fff 71%,#fff 100%);
    background-repeat: no-repeat;
    background-position: 0 250px;
    background-size: 100%;
}
#company .greeting_box {
    padding: 30px 25px;
    display: block;
    width: 80%;
}
#company .greeting_box .greeting_inner_l {
    padding: 0;
    margin:0;
    width: 100%;
}
#company .greeting_box .greeting_inner_l .greet_ttl1 {
    font-size: 11px;
    margin-bottom: 10px;
}
#company .greeting_box .greeting_inner_l .greet_ttl2 {
    font-size: 17.5px;
    margin-bottom: 20px;
}
#company .greeting_box .greeting_inner_l .sighn {
    font-size: 15px;
    margin-bottom: 40px;
    margin-top: 20px;
}
#company .greeting_box .greeting_inner_l .sighn span {
    font-size: 10px;
}
#company .company_box {
    margin-top: 45px;
    width: 90%;
}
#company .company_box_disc {
    padding:25px 15px;
    margin: 0 auto;
    width: 100%;
}
#company .company_box_disc h5 {
    font-size: 15px;
}
#company .company_box_disc dl {
    flex-wrap: wrap;

}
#company .company_box_disc dt {
    width: 40%;
    font-size: 12.5px;
    padding: 0;
    padding-top: 14px;
    margin: 0;
}
#company .company_box_disc dd {
    width: 100%;
    font-size: 12.5px;
    padding:0;
    padding-top: 12.5px;
    margin: 0;
}
#company .company_box .company_box_img {
    width: 77.5%;
    margin: 0 auto;
    position: static;
}
#company .company_box .company_box_img img {
    width: 100%;
}
#company .ggmap {
    width: 80%;
    padding-bottom: 62%;
}
#info {
    padding-top: 30px;
    padding-bottom: 35.5px;
}
#info .ttl_wbtn {
    margin-bottom: 17.5px;
}
#info .ttl_wbtn .content_ttl {
    margin-bottom: 17.5px;
}
#info .ttl_wbtn .btn_list {
    text-align: center;
}
#info .btn_list a {
    position: static;
    font-size: 11px;
}
#info .service_info_inner {
    padding:25px 25px;
}
#info .service_info_inner .info_box {
    padding: 0;
}
#info .service_info_inner .info_box a {
    flex-wrap: wrap;
}
#info .service_info_inner .info_date {
    width: 36.36%;
    margin: 0;
    margin-top: 17.5px;
    font-size: 11px;
}
#info .service_info_inner .info_disc {
    width: 100%;
    padding: 12px 0;
    font-size: 12.5px;
    white-space: normal;
    text-overflow: inherit;
}
#contact {
    padding-top: 50px;
    padding-bottom: 75px;
}
#contact .contact_tel_container .contact_disc {
    font-size: 14px;
}
#contact .contact_tel_container div.ff-num {
    font-size: 37.5px;
}
#contact .contact_tel_container div.ff-num a {
    text-decoration: none;
    color: #000;
}
#contact .contact_tel_container div.ff-num img {
    width: 26px;
    margin-right: 15px;
}
#contact .contact_tel_container .contact_date {
    width: 60%;
    font-size: 10px;
}
#contact .contact_mail_container {
    width: 100%;
}
#contact .contact_mail_container_bg {
    padding:0 30px;
    padding-top: 32.5px;

}
#contact .contact_mail_container .contact_inner_box {
    flex-wrap: wrap;
    margin-bottom: 25px;
}
#contact .contact_mail_container .contact_inner_box .form_ttl {
    width: 100%;
    flex-basis: 100%;
    font-weight: 500;
}
.required {
    font-size: 9px;
}
#contact .contact_mail_container .contact_inner_box .form_disc input, #contact .contact_mail_container .contact_inner_box .form_disc textarea {
    padding:3px;
}
#contact .contact_mail_container .contact_inner_box .form_disc .error {
    font-size: 12.5px;
}
#contact .contact_mail_container .contact_inner_box .form_disc .mul_form_disc {
    flex-wrap: wrap;
}
#contact .contact_mail_container .contact_inner_box .form_disc .mul_form_disc .mul_form_disc_inner1 {
    flex-basis: 100%;
}
#contact .contact_mail_container .contact_inner_box .form_disc .mul_form_disc .mul_form_disc_inner1 label {
    width: 100%;
    flex-basis: 30%;
}
#contact .contact_mail_container .contact_inner_box .form_disc .mul_form_disc .mul_form_disc_inner1 input {
    width: 100%;
    max-width: none;
    flex-basis: 55%;
}
#contact .contact_mail_container .contact_inner_box .form_disc .mul_form_disc .mul_form_disc_inner2 {
    flex-wrap: wrap;
    width: 100%;
    flex-basis: 100%;
    max-width: none;
}
#contact .contact_mail_container .contact_inner_box .form_disc .mul_form_disc .mul_form_disc_inner2 label {
    max-width: none;
    flex-basis: 100%;
    margin-left: 0;
}
#contact .contact_mail_container .contact_inner_box .form_disc .mul_form_disc .mul_form_disc_inner2 input {
    max-width: none;
    flex-basis: 100%;
    margin-left: 0;
}
#contact .contact_mail_container .b_pratext {
    width: 85%;
    margin: 0 auto;
    font-size: 11px;
}

#contact .contact_mail_container .prapoli_container {
    padding: 17.5px 15px;
}
#contact .contact_mail_container .prapoli_inner {
    box-sizing: border-box;
    padding: 17.5px 15px;
    width: 100%;
}
#contact .contact_mail_container .prapoli_inner h5 {
    font-size: 15px;
}
#contact .contact_mail_container form .form_btn input {
    -webkit-appearance: none;
    width: 85%;
    font-size: 12.5px;
    padding:17.5px 0;
    height: auto;
}
#contact .contact_comp .comp_main_ttl{
    font-size: 17.5px;
    margin-bottom: 30px;
}
#contact .contact_comp .comp_main_disc{
    font-size: 15px;
    margin-bottom: 17.5px;
}
#contact .contact_comp .comp_contactmail {
    margin-bottom: 25px;
    width: 28.38%;
}
#contact .contact_comp p{
    margin-bottom: 40px;
    line-height: 1.8;
    font-size: 12.5px;
}
#contact .contact_comp .comp_disc2 {
    margin-bottom: 0;
    padding-bottom: 40px;
}
footer .footer_above .footer_disc {
    font-size: 10px;
}
footer .footer_above .footer_logo {
    width: 25%;
        margin: 0 auto;
}
footer .footer_above .footer_logo img {
    width: 100%;

}
footer .footer_above .footer_add {
    font-size: 12.5px;
    margin-top: 12.5px;
}
footer .footer_above div.ff-num {
    font-size: 24px;
    margin-top: 5px;
}
footer .footer_above div.ff-num img {
    width: 20px;
    margin-right: 10px;
}
footer .footer_above div.ff-num a {
    text-decoration: none;
    color: #000;
}
footer .footer_bottom {
    flex-wrap: wrap;
    text-align: center;
}
footer .footer_bottom .copy {
    width: 100%;
    font-size: 10px;
    margin: 0 auto;
}
footer .footer_bottom .ff-num {
    font-size: 10px;
    margin: 0 auto;
}
.content_head {
    padding-top: 90px;
    flex-wrap: wrap;
    padding-bottom: 0;
}
.content_head .content_head_ttl {
    flex-basis: 100%;
}
.content_head .content_head_ttl h3 {
    font-size: 25px;
    text-align: center;
    margin-bottom: 35px;
}
.content_head .content_head_img {
    width: 100%;
    flex-basis: 100%;
    margin-bottom: 25px;
}
.case_step {
    padding-top: 25px;
}
.case_step .menu_content_container {
    flex-wrap: wrap;
}
.case_step .menu_content_box {
    flex-basis: 100%;
    width: 100%;
    margin-bottom: 0;
}
.case_step .menu_content_box h5 {
    margin-bottom: 15px;
}
.case_step .menu_content_box h5 img {
    width: 25px;
}
.case_step .menu_content_box h5 div>div .menu_ttl {
    font-size: 15px;
}
.case_step .menu_content_box h5 div>div .menu_sub_catch{
    font-size: 9px;
}
.case_step .menu_content_box .menu_img {
    margin-bottom: 12.5px;
}
.case_step .menu_content_box .service_menu_btn {
    margin-top: 20px;
}
.case_step .menu_content_box .service_menu_btn a {
    font-size: 12.5px;
    width: 45%;
    max-width: none;
}
.case_step .service_menu_inner {
    padding-bottom: 25px;
}
.service_menu_inner .menu_inner_txt_bk {
    margin-top: 60px;
}
.case_step .case_arrow {
    text-align: center;
    padding: 25px 0;
    margin: 0 auto;
    width: 10%;
}
.case_step .case_arrow img {
    width: 100%;
}
.service_menu_inner .menu_inner_txt {
    font-size: 15px;
    margin-top: 30px;
}
.case_anch {
    flex-wrap: wrap;
    padding: 0;
    margin: 0 auto;
    margin-bottom: 12.5px;
    width: 100%;
}
.case_anch .btn_list {
    width: 100%;
    flex-basis: 70%;
    margin: 0 auto;
    margin-bottom: 12.5px;
}
.case_list {
    padding-top: 25px;
}
.case_list .case_list_box {
    padding: 30px 25px;
}
.case_list .case_list_box .case_list_ttl {
    flex-wrap: wrap;
}
.case_list .case_list_box .case_list_ttl .case_list_ttl_img {
    flex-basis: 100%;
    width: 100%;
    margin-bottom: 20px;
}
.case_list .case_list_box .case_list_ttl .case_list_disc {
    flex-basis: 100%;
    max-width: none;
    width: 100%;
    margin-left: 0;
}
.case_list_disc h5 {
    padding-bottom: 10px;
}
.case_list_disc h5 div>div .menu_ttl {
    font-size: 15px;
}
.case_list_disc h5 div>div .menu_sub_catch {
    font-size: 9px;
}
.case_list_disc h5 img {
    width: 20px;
    margin-right: 10px;
}
.case_article_list h5 {
    font-size: 12.5px;
    margin-bottom: 25px;
}
.case_list_container {
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 0;
}
.case_list_inner {
    flex-basis: 47%;
    width: 100%;
    margin: 0;
    margin-bottom: 30px;
}
.case_list_inner a .disc {
    background-color: #ffea00;
    background: url(../img/case_article_list_arrow.svg), linear-gradient(90deg, #fff 0%,#fff 95%,#ffea00 95%,#ffea00 100%);
    background-position: center right 1%, 100% 100%;
    background-repeat: no-repeat
}
.case_list_inner a .disc .ttl {
    font-size: 12.5px;
}
.case_list_inner a .disc .date {
    font-size: 9px;
}
.page {
    flex-wrap: wrap;
}
.page .page_top {
    flex-basis: 100%;
}
.page .page_top a {
    font-size: 12.5px;
    padding: 12.5px 0;
    width: 45%;
    margin: 0;
    margin-bottom: 20px;
}
.page .list_top {
    flex-basis: 100%;
}
.page .list_top a {
    font-size: 12.5px;
    padding: 12.5px 0;
    width: 54%;
    margin: 0;
    margin-bottom: 20px;
}
.page .page_num {
    flex-basis: 11%;
    margin: 0 10px;
}
.page .page_num a {
    font-size: 12.5px;
    width: 100%;
    padding:10px 0;
    margin: 0;
}
.page .page_num a.active {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
    background: #333333;
    color: #dddddd;
}
.article_container {
    padding-top: 20px;
    margin-bottom: 75px;
}
.article_container .category {
    margin-bottom: 10px;
}
.article_container .category img {
    margin-right: 8px;
    width: 14px;
}
.article_container .category div>div .menu_ttl {
    font-size: 15px;
}
.article_container .category div>div .menu_sub_catch {
    font-size: 9px;
}
.article_container .article_date {
    font-size: 11px;
    margin-bottom: 15px;
}
.article_container h2.article_ttl {
    margin-bottom: 30px;
    font-size: 17.5px;
    line-height: 1.2;
}

.article_disc {
    padding:0 1em;
    padding-top: 50px;
    padding-bottom: 30px;
}
.article_container p {
    margin-bottom: 1em;
}
.article_container .article_img {
    max-width: 100%;
    margin-bottom: 1em;
}
.article_container .article_img img {
    width: 100%;
    vertical-align: bottom;
}
.article_container .page {
    margin-bottom: 75px;
}
#case_list .service_menu_inner .menu_inner_txt {
    margin-top: 0;
}
#wall, #roof, #floor {
    padding-top:30px;
    margin-top: -30px;
}
.mente_box {
    text-align: center;
    margin: 0 auto;
    margin-top: 75px;
    width: 90%;
}
.mentelogo {
    margin-bottom: 55px;
}
.mente_disc {
    font-size: 25px;
    color: #32a1ef;
    margin-bottom: 40px;
}
.mente_icon {
    margin-bottom: 45px;

}
.mente_disc2 {
    font-size: 14px;
}
div.wpcf7 .ajax-loader {
    display: block!important;
    margin: 0 auto!important;
    margin-top:15px!important;
}
}
