@charset "UTF-8";
@media screen and (max-width: 768px) {
  section.service {
    padding-top: 40px;
    padding-bottom: 50px;
  }
  section.service .inner {
    display: block;
  }
  section.service .cntBox {
    width: 100%;
  }
  section.service .cntBox .inBox {
    padding: 20px;
  }
  section.service .cntBox .cntName {
    margin-bottom: 15px;
  }
  section.service .cntBox .cntName h3 {
    font-size: 18px;
  }
  section.service .cntBox p {
    text-align: center;
    line-height: 1.8;
  }
  section.service .cntBox .btn {
    margin-top: 35px;
  }
  section.service .inner {
    display: block;
  }
  section.service .secName {
    margin-bottom: 50px;
  }
  section.service .cntBox {
    width: 100%;
  }
  section.service .cntBox .inBox {
    margin-top: 0;
    padding-top: 30px;
  }
  section.service .cntBox p br {
    display: none;
  }
  section.service .cntBox + .cntBox {
    margin-top: 50px;
  }
  section.service .cntBox:nth-of-type(1)::before, section.service .cntBox:nth-of-type(2)::before, section.service .cntBox:nth-of-type(3)::before {
    left: 20px;
  }
  section.service .cntBox p {
    max-height: auto;
    padding-right: 0;
    padding-left: 0;
    text-align: left;
  }
  section.price {
    padding-top: 40px;
    padding-bottom: 50px;
  }
  section.price .cntBox table th, section.price .cntBox table td {
    width: 100% !important;
    display: flex;
    align-items: flex-start;
    align-items: center;
    padding-top: .5em;
    padding-right: 5px;
    padding-left: 120px;
    padding-bottom: .5em;
    font-size: 13px;
    line-height: 1.2;
    text-align: left;
  }
  section.price .cntBox table th::before, section.price .cntBox table td::before {
    width: 1px;
    display: inline-block;
    font-weight: bold;
    font-size: 15px;
    text-indent: -120px;
  }
  section.price .cntBox table thead {
    display: none;
  }
  section.price .cntBox table tbody tr + tr {
    border-top: 0;
  }
  section.price .cntBox table tbody tr:nth-of-type(3), section.price .cntBox table tbody tr:nth-of-type(5) {
    border-top: 2px solid #585858;
  }
  section.price .cntBox table tbody tr th, section.price .cntBox table tbody tr td {
    font-size: 14px;
  }
  section.price .cntBox table tbody tr:nth-of-type(even) {
    border-top: 1px solid #585858;
  }
  section.price .cntBox table tbody tr:nth-of-type(even) td:nth-of-type(1) {
    border-top: 0;
  }
  section.price .cntBox table tbody th {
    width: 100%;
    padding-left: 0;
    color: #1d1e51;
    font-weight: 600;
    text-align: left;
  }
  section.price .cntBox table tbody td {
    border-left: 0;
    border-top: 1px dotted #868a92;
  }
  section.price .cntBox table tbody td:nth-of-type(1)::before {
    content: "間取り";
  }
  section.price .cntBox table tbody td:nth-of-type(2)::before {
    content: "作業員";
  }
  section.price .cntBox table tbody td:nth-of-type(3)::before {
    content: "料金";
  }
  section.b_a .cntBox {
    display: block;
  }
  section.b_a .cntBox + .cntBox {
    margin-top: 80px;
  }
  section.b_a .box, section.b_a .content {
    width: 100%;
  }
  section.b_a .content {
    margin-top: 20px;
  }
  section.b_a figure {
    width: 49%;
  }
  section.b_a figure + figure {
    margin-left: 2%;
  }
  section.b_a figure figcaption {
    top: -34px;
    left: 0;
  }
  section.b_a figure figcaption img {
    width: auto;
    height: 27px;
  }
  section.b_a figure figcaption span {
    margin-bottom: 7px;
    font-size: 11px;
  }
  /*=====<=====<=====<=====<=====<=====<=====
  top
=====>=====>=====>=====>=====>=====>=====*/
  #top #sec01 {
    padding-bottom: 100px;
    background: url(../img/top/sec01.jpg) no-repeat;
    background-position: right bottom;
    background-size: 250px;
  }
  #top #sec01 .secName {
    margin-bottom: 15px;
  }
  #top #sec01 .secName::after {
    margin: 15px 0 0;
  }
  #top #sec01 .secName h2 {
    font-size: 20px;
  }
  #top #sec01 .inner {
    display: block;
  }
  #top #sec01 .cntBox {
    width: 100%;
  }
  #top #sec01 .cntBox p {
    text-shadow: 1px 1px 5px #fff, -1px 1px 5px #fff, 1px 1px 5px #fff, -1px 1px 5px #fff;
  }
  #top #sec01 figure {
    display: none;
  }
  #top #sec03 {
    padding-top: 40px;
    padding-bottom: 50px;
  }
  #top #sec03 .inner {
    display: block;
  }
  #top #sec03 .secName {
    margin-bottom: 65px;
  }
  #top #sec03 .cntBox {
    width: 100%;
    padding: 60px 20px 20px;
  }
  #top #sec03 .cntBox + .cntBox {
    margin-top: 50px;
  }
  #top #sec03 .cntBox img {
    width: 80px;
    top: -40px;
  }
  #top #sec03 .cntBox dl dt {
    font-size: 17px;
  }
  /*=====<=====<=====<=====<=====<=====<=====
 ihinseiri
=====>=====>=====>=====>=====>=====>=====*/
  #ihinseiri #sec01 {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  #ihinseiri #sec01 p {
    width: 100%;
    margin: 30px auto 0;
  }
  #ihinseiri #sec02 {
    padding-top: 40px;
    padding-bottom: 50px;
  }
  #ihinseiri #sec02 .secName {
    margin-bottom: 80px;
  }
  #ihinseiri #sec03 {
    background-position: right 77%;
  }
  #ihinseiri #sec03 .cntBox p {
    text-shadow: 1px 1px 5px #fff, -1px 1px 5px #fff, 1px 1px 5px #fff, -1px 1px 5px #fff;
  }
  #ihinseiri #sec03 .btn {
    margin-top: 120px;
  }
  .cntBox.half {
    width: 100%;
  }
  /*=====<=====<=====<=====<=====<=====<=====
 welfare
=====>=====>=====>=====>=====>=====>=====*/
  #welfare section .fx {
    display: block;
  }
  #welfare section .fx figure {
    margin-top: 20px;
  }
  #welfare section:nth-of-type(1), #welfare section:nth-of-type(3), #welfare section:nth-of-type(even) {
    padding: 40px 0 50px;
  }
  #welfare section:nth-of-type(1) {
    padding-top: 80px;
  }
  #welfare section#sec01 {
    background-position: 67% center;
  }
  #welfare section#sec01 .cntBox h3, #welfare section#sec01 .cntBox p {
    text-shadow: 1px 1px 5px #fff, -1px 1px 5px #fff, 1px 1px 5px #fff, -1px 1px 5px #fff;
  }
  /*=====<=====<=====<=====<=====<=====<=====
 seizenseiri
=====>=====>=====>=====>=====>=====>=====*/
  #seizenseiri section .inner {
    display: block;
  }
  #seizenseiri #sec02, #seizenseiri #sec03, #seizenseiri #sec04 {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  #seizenseiri #sec03 figure, #seizenseiri #sec04 figure {
    margin-top: 20px;
  }
  #seizenseiri #sec01 {
    padding-top: 50px;
    background-size: contain;
    background-position: right bottom;
  }
  #seizenseiri #sec01 .cntBox p {
    text-shadow: 1px 1px 5px #fff, -1px 1px 5px #fff, 1px 1px 5px #fff, -1px 1px 5px #fff;
  }
  #seizenseiri #sec02 h3 {
    margin-bottom: 15px;
    font-size: 17px;
  }
  #seizenseiri #sec02 .cntBox {
    display: block;
  }
  #seizenseiri #sec02 .box {
    width: 100%;
  }
  #seizenseiri #sec02 .box h3 {
    font-size: 17px;
  }
  #seizenseiri #sec02 .box + .box {
    margin-top: 40px;
  }
  #seizenseiri #sec02 .box figure {
    width: 80%;
    margin: auto;
    margin-bottom: 30px;
  }
  /*=====<=====<=====<=====<=====<=====<=====
 other
=====>=====>=====>=====>=====>=====>=====*/
  #other #sec01 {
    padding-top: 50px;
    background-size: cover;
    background-position: 60% bottom;
  }
  #other #sec01 .cntBox {
    width: 100%;
  }
  #other #sec01 .cntBox h3 {
    text-shadow: 1px 1px 5px #fff,-1px 1px 5px #fff,1px 1px 5px #fff,-1px 1px 5px #fff;
  }
  #other #sec01 .cntBox p {
    color: #585858;
    font-weight: bold;
    text-shadow: 1px 1px 5px #fff,-1px 1px 5px #fff,1px 1px 5px #fff,-1px 1px 5px #fff;
  }
  /*=====<=====<=====<=====<=====<=====<=====
 voice
=====>=====>=====>=====>=====>=====>=====*/
  #voice section {
    padding-top: 80px;
  }
  #voice section.b_a .cntBox {
    padding: 40px 20px 20px;
  }
  #voice section.b_a .cntBox + .cntBox {
    margin-top: 70px;
  }
  #voice section.b_a .box {
    margin-top: 60px;
  }
  #voice section.b_a .box + .content {
    width: 100%;
    margin-top: 1.5em;
  }
  #voice section.b_a .inBox {
    display: block;
  }
  #voice section.b_a .box, #voice section.b_a .content {
    width: 100%;
  }
  #voice section.b_a .content {
    margin-top: 1em;
    font-size: 15px;
  }
  #voice section.b_a .cntName {
    display: block;
    margin-bottom: 0;
  }
  #voice section.b_a .cntName img {
    width: 80px;
    margin: -80px auto 20px;
  }
  #voice section.b_a .cntName span {
    font-size: 12px;
  }
  #voice section.b_a .cntName h3 {
    font-size: 17px;
  }
  /*=====<=====<=====<=====<=====<=====<=====
 faq
=====>=====>=====>=====>=====>=====>=====*/
  #faq #sec01 .cntBox + .cntBox {
    margin-top: 50px;
  }
  #faq #sec01 dl + dl {
    margin-top: 30px;
  }
  #faq #sec01 dt, #faq #sec01 dd {
    padding-left: 40px;
    text-indent: -40px;
    line-height: 1.5;
  }
  #faq #sec01 dt::before, #faq #sec01 dd::before {
    width: 30px;
    height: 30px;
    margin-left: 0;
    font-size: 16px;
    line-height: 28px;
    text-indent: 0;
  }
  #faq #sec01 dt {
    min-height: 30px;
    font-size: 16px;
  }
  #faq #sec01 dd {
    font-size: 15px;
  }
  /*=====<=====<=====<=====<=====<=====<=====
 price
=====>=====>=====>=====>=====>=====>=====*/
  #price section .cntBox {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  #price section .cntBox dl dt {
    font-size: 17px;
  }
  #price section table + ul {
    margin-top: 15px;
  }
  #price section table + ul li {
    padding-left: 1em;
    font-size: 12px;
    line-height: 1.6;
    text-indent: -1em;
  }
  #price section table + ul li + li {
    margin-top: .5em;
  }
  #price section table th, #price section table td {
    padding-top: .8em;
    padding-bottom: .8em;
  }
  #price section table thead th {
    padding-top: .8em;
    padding-bottom: .8em;
    font-size: 15px;
  }
  #price section table tbody th, #price section table tbody td {
    font-size: 14px;
  }
  /*=====<=====<=====<=====<=====<=====<=====
 company
=====>=====>=====>=====>=====>=====>=====*/
  #company #sec01 .inner .box p {
    font-size: 15px;
  }
  #company #sec01 .inner .box p + p {
    margin-top: 1em;
  }
  #company #sec01 .inner + .cntBox {
    width: 90%;
    margin: 50px auto 0;
  }
  #company #sec01 .inner + .cntBox dl {
    align-items: stretch;
  }
  #company #sec01 .inner + .cntBox dl dt, #company #sec01 .inner + .cntBox dl dd {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding-top: .8em;
    padding-bottom: .8em;
    font-size: 14px;
    line-height: 1.6;
  }
  #company #sec01 .inner + .cntBox dl dt {
    width: 30%;
    text-align: left;
    border-right: 2px dotted rgba(51, 51, 51, 0.3);
  }
  #company #sec01 .inner + .cntBox dl dt::after {
    display: none;
  }
  #company #sec01 .inner + .cntBox dl dd {
    width: 70%;
    flex-wrap: wrap;
    padding-left: 1em;
  }
  #company #sec01 .inner + .cntBox dl dd a {
    width: 100%;
    display: block;
  }
  #company #sec01 .inner + .cntBox dl dd img {
    width: 13px;
  }
  #company #sec01 .cntBox {
    display: block;
  }
  #company #sec01 .cntBox figure, #company #sec01 .cntBox .box {
    width: 100%;
  }
  #company #sec01 .cntBox figure {
    margin-bottom: 20px;
  }
  #company #sec01 .cntBox .name {
    margin-top: 20px;
    font-size: 16px;
  }
  #company #sec01 .cntBox .name span {
    font-weight: normal;
  }
  #company #map, #company iframe {
    height: 280px;
  }
}
