/* add */
#main_tit {
    margin: 40px auto 0;
 }
#mv.bunjo{
    padding:5% 0;
    background: url(../img/housequality/main.jpg) center bottom no-repeat;
    background-size: cover;
    text-align: center;
}
#mv.bunjo h3{
    display: inline-block;
    padding:3% 2%;
    background: rgba(0,0,0,0.7);
    color:#fff;
    font-size: 3.4rem;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
#mv.bunjo h3 span{
    display: block;
    margin-top:15px;
    font-size: 2.4rem;
    letter-spacing: 0.4rem;
}

.bg_lightgray {
  padding-bottom: 100px; }

.parts {
  padding-top: 100px; }
  .parts h3 {
    text-align: center;
    padding-bottom: 45px; }
  .parts h4 {
    text-align: center;
    padding-bottom: 30px; }
  .parts .txt {
    padding: 0 30px 35px 30px; }

.bg_white {
  background-color: #fff; }
  .bg_white .pdn {
    padding: 45px; }
  .bg_white h5 {
    font-size: 24px;
    font-size: 2.4rem;
    text-align: center;
    padding-top: 30px; }

dl dt {
  color: #801e66;
  font-weight: 600;
  font-size: 18px;
  font-size: 1.8rem;
  padding-bottom: 10px; }
  dl dt.small {
    font-size: 16px;
    font-size: 1.6rem; }
  dl dt.no {
    padding-bottom: 0px; }
dl dd {
  color: #231815;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4; }

.two_flex {
  display: flex;
  flex-wrap: wrap; }
  .two_flex li {
    width: calc(50% - 25px);
    margin-left: 50px;
    padding-top: 35px; }
    .two_flex li:nth-child(2n + 1) {
      margin-left: 0px; }
    .two_flex li:nth-child(3) {
      width: 100%; }
    .two_flex li:nth-child(3) .img{
      max-width: 210px; }

.three_flex {
  display: flex;
  flex-wrap: wrap; }
  .three_flex li {
    width: calc(33.333% - 34px);
    margin-left: 50px;
    padding-top: 20px; }
    .three_flex li:nth-child(3n + 1) {
      margin-left: 0px; }
    .three_flex li img {
      padding-bottom: 15px; }
      .three_flex li img.no {
        padding-bottom: 0px; }

.four_flex {
  display: flex;
  flex-wrap: wrap; }
  .four_flex li {
    width: calc(25% - 19px);
    margin-left: 25px; }
    .four_flex li:nth-child(4n + 1) {
      margin-left: 0px; }
    .four_flex li img {
      padding-bottom: 15px;
      margin: 0 auto; }
      .four_flex li img.no {
        padding-bottom: 0px; }
    .four_flex li dl {
      text-align: left; }

#sec01 .three_flex li {
  width: calc(33.333% - 46.666px);
  margin-left: 40px;
  margin-left: 35px; }
#sec01 .part02 ul {
  display: flex;
  flex-wrap: wrap; }
  #sec01 .part02 ul li {
    width: 36%; }
    #sec01 .part02 ul li:first-child {
      width: 28%; }
    #sec01 .part02 ul li:nth-child(2) {
      text-align: left;
      padding-right: 4%; }
      #sec01 .part02 ul li:nth-child(2) h5 {
        padding: 0 0px 20px 10px;
        text-align: left; }
      #sec01 .part02 ul li:nth-child(2) p {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.6;
        padding-left: 10px; }
    #sec01 .part02 ul li .size12 {
      padding-top: 10px; }

#sec02 .bg_purple {
  background-color: #f4edf4;
  padding: 25px 30px;
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap; }
  #sec02 .bg_purple .w70 {
    width: 70%;
    display: flex;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center; }
    #sec02 .bg_purple .w70 dl {
      width: 40%; }
  #sec02 .bg_purple .w30 {
    width: 30%;
    padding-left: 3%; }
    #sec02 .bg_purple .w30 img {
      padding-bottom: 15px; }

#sec03 .part01 {
  display: flex;
  flex-wrap: wrap; }
  #sec03 .part01 .w65 {
    width: 65%; }
  #sec03 .part01 .w35 {
    width: 35%;
    padding: 50px 40px 0 40px; }
    #sec03 .part01 .w35 table tr:first-child th {
      padding-bottom: 50px; }
    #sec03 .part01 .w35 table th {
      width: 80px;
      vertical-align: top; }
    #sec03 .part01 .w35 table td {
      width: calc(100% - 80px);
      vertical-align: top;
      padding-left: 15px; }
#sec03 .four_flex li:last-child {
  text-align: center; }

#sec04 .bg_white {
  padding-right: 50px; }
#sec04 .part01 {
  display: flex;
  flex-wrap: wrap; }
  #sec04 .part01 .left {
    width: 31%; }
  #sec04 .part01 .right {
    width: 69%;
    padding-left: 50px; }
    #sec04 .part01 .right .top {
      display: flex;
      flex-wrap: wrap;
      padding-top: 30px;
      padding-bottom: 30px; }
      #sec04 .part01 .right .top .img {
        width: 50%; }
      #sec04 .part01 .right .top dl {
        width: 50%;
        padding-top: 20px;
        padding-left: 20px; }
    #sec04 .part01 .right .bottom ul {
      display: flex;
      flex-wrap: wrap; }
      #sec04 .part01 .right .bottom ul li {
        width: calc(50% - 30px); }
        #sec04 .part01 .right .bottom ul li:last-child {
          margin-left: 60px; }
        #sec04 .part01 .right .bottom ul li img {
          padding-bottom: 20px; }
#sec04 .part03 {
  padding-bottom: 45px; }
  #sec04 .part03 .three_flex li {
    width: calc(33.333% - 50px);
    margin-left: 46px; }
    #sec04 .part03 .three_flex li:last-child {
      margin-left: 65px; }
    #sec04 .part03 .three_flex li:first-child {
      margin-left: 35px; }

#sec05 .part01 {
  display: flex;
  flex-wrap: wrap; }
  #sec05 .part01 .left {
    width: 30%; }
    #sec05 .part01 .left img {
      height: 100%; }
  #sec05 .part01 .right {
    padding: 40px 50px 0 50px;
    width: 70%; }
    #sec05 .part01 .right img {
      width: 100%; }
#sec05 .part03 {
  padding: 40px 50px 65px 50px; }

#sec06 .bg_white {
  padding: 35px; }
  #sec06 .bg_white .photo {
    padding-bottom: 30px; }
  #sec06 .bg_white h5 {
    text-align: left;
    color: #801e66;
    padding: 20px 0 10px 0; }
  #sec06 .bg_white ul li {
    font-size: 12px;
    font-size: 1.2rem;
    padding-bottom: 10px; }

#sec07 .bg_white {
  padding: 35px; }
  #sec07 .bg_white p img {
    width: 100%; }
  #sec07 .bg_white .two_flex li {
    display: flex;
    flex-wrap: wrap; }
    #sec07 .bg_white .two_flex li .img {
      width: 50%;
      padding-right: 20px; }
      #sec07 .bg_white .two_flex li .img img {
        width: 100%; }
    #sec07 .bg_white .two_flex li dl {
      width: 50%; }
      #sec07 .bg_white .two_flex li dl dt {
        line-height: 1.4; }

#sec08 .bg_white {
  display: flex;
  flex-wrap: wrap;
  padding-bottom: 15px; }
  #sec08 .bg_white .left {
    width: 36.5%; }
    #sec08 .bg_white .left .logo {
      padding: 30px 20px 20px 20px; }
    #sec08 .bg_white .left .txt {
      padding: 0 20px; }
  #sec08 .bg_white .right {
    width: 63.5%;
    padding: 0 30px; }
    #sec08 .bg_white .right .logo {
      text-align: right;
      padding: 25px 0; }
    #sec08 .bg_white .right .three_flex li {
      text-align: center;
      width: calc(33.333% - 6.666px);
      margin-left: 10px; }
      #sec08 .bg_white .right .three_flex li:nth-child(3n+1) {
        margin-left: 0; }
      #sec08 .bg_white .right .three_flex li p {
        font-size: 14px;
        font-size: 1.4rem; }
        #sec08 .bg_white .right .three_flex li p .en {
          font-size: 18px;
          font-size: 1.8rem;
          display: block;
          padding-bottom: 8px; }

#sec07 .bg_white .two_flex li:nth-child(3) dl {
      width: calc(100% - 210px) ; }

/* -----------------------------------------
	SP
-----------------------------------------*/
@media screen and (max-width: 768px) {
  .bg_lightgray {
    padding-bottom: 50px; }

  .parts {
    padding: 50px 10px 0 10px; }
    .parts h3 {
      padding-bottom: 22px; }
      .parts h3 img {
        max-height: 40px; }
    .parts h4 {
      padding-bottom: 15px; }
      .parts h4 img {
        max-height: 39px; }
    .parts .txt {
      padding: 0 15px 18px 15px; }
      .parts .txt img {
        height: 30px; }

  .bg_white .pdn {
    padding: 20px; }
  .bg_white h5 {
    font-size: 20px;
    font-size: 2.0rem;
    padding-top: 15px; }

  dl dt {
    font-size: 18px;
    font-size: 1.8rem;
    padding-bottom: 5px; }
    dl dt.small {
      font-size: 16px;
      font-size: 1.6rem; }
  dl dd {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4; }

  .two_flex {
    display: block; }
    .two_flex li {
      width: 100%;
      margin-left: 0px;
      padding-top: 18px; }
      .two_flex li:nth-child(2n + 1) {
        margin-left: 0px; }

  .three_flex {
    display: flex;
    flex-wrap: wrap; }
    .three_flex li {
      width: calc(50% - 10px);
      margin-left: 20px;
      padding-top: 20px; }
      .three_flex li:nth-child(3n + 1) {
        margin-left: 20px; }
      .three_flex li:nth-child(2n + 1) {
        margin-left: 0px; }
      .three_flex li img {
        padding-bottom: 15px; }
        .three_flex li img.no {
          padding-bottom: 0px; }

  .four_flex {
    display: flex;
    flex-wrap: wrap; }
    .four_flex li {
      width: calc(50% - 10px);
      margin-left: 20px;
      margin-bottom: 20px; }
      .four_flex li:nth-child(4n + 1) {
        margin-left: 20px; }
      .four_flex li:nth-child(2n + 1) {
        margin-left: 0px; }
      .four_flex li img {
        padding-bottom: 15px;
        margin: 0 auto; }
        .four_flex li img.no {
          padding-bottom: 0px; }
      .four_flex li dl {
        text-align: left; }

  #sec01 .three_flex li {
    width: calc(50% - 10px);
    margin-left: 20px; }
    #sec01 .three_flex li:nth-child(2n + 1) {
      margin-left: 0; }
  #sec01 .part02 ul {
    display: flex;
    flex-wrap: wrap; }
    #sec01 .part02 ul li {
      width: 50%; }
      #sec01 .part02 ul li:first-child {
        width: 50%; }
      #sec01 .part02 ul li:nth-child(2) {
        text-align: left;
        padding-right: 4%; }
        #sec01 .part02 ul li:nth-child(2) h5 {
          padding: 0 0px 20px 10px;
          text-align: left; }
        #sec01 .part02 ul li:nth-child(2) p {
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 1.6;
          padding-left: 10px; }
      #sec01 .part02 ul li:last-child {
        width: 100%;
        padding: 15px 0; }
        #sec01 .part02 ul li:last-child img {
          width: 100%; }
      #sec01 .part02 ul li .size12 {
        padding-top: 5px; }

  #sec02 .bg_purple {
    padding: 10px 15px;
    margin-top: 15px;
    display: flex;
    flex-wrap: wrap; }
    #sec02 .bg_purple .w70 {
      width: 100%;
      display: flex;
      flex-wrap: wrap;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-align-items: center;
      align-items: center;
      padding-bottom: 15px; }
      #sec02 .bg_purple .w70 dl {
        width: 100%; }
    #sec02 .bg_purple .w30 {
      width: 100%;
      padding-left: 0%;
      padding-bottom: 15px; }
      #sec02 .bg_purple .w30 img {
        padding-bottom: 15px; }

  #sec03 .part01 {
    display: flex;
    flex-wrap: wrap; }
    #sec03 .part01 .w65 {
      width: 100%; }
    #sec03 .part01 .w35 {
      width: 100%;
      padding: 25px 20px 0 20px; }
      #sec03 .part01 .w35 table tr:first-child th {
        padding-bottom: 25px; }
      #sec03 .part01 .w35 table th {
        width: 80px;
        vertical-align: top; }
      #sec03 .part01 .w35 table td {
        width: calc(100% - 80px);
        vertical-align: top;
        padding-left: 15px; }
        #sec03 .part01 .w35 table td dl dt {
          padding-bottom: 15px; }
        #sec03 .part01 .w35 table td dl dd img {
          padding-top: 20px; }
  #sec03 .four_flex li:last-child {
    text-align: center; }

  #sec04 .bg_white {
    padding-right: 0px; }
  #sec04 .part01 {
    display: flex;
    flex-wrap: wrap; }
    #sec04 .part01 .left {
      width: 100%;
      text-align: center;
      padding-top: 20px; }
    #sec04 .part01 .right {
      width: 100%;
      padding-left: 0px;
      padding: 0 10px; }
      #sec04 .part01 .right .top {
        display: flex;
        flex-wrap: wrap;
        padding-top: 30px;
        padding-bottom: 30px; }
        #sec04 .part01 .right .top .img {
          width: 50%; }
        #sec04 .part01 .right .top dl {
          width: 50%;
          padding-top: 20px;
          padding-left: 20px; }
      #sec04 .part01 .right .bottom ul {
        display: flex;
        flex-wrap: wrap; }
        #sec04 .part01 .right .bottom ul li {
          width: calc(50% - 10px); }
          #sec04 .part01 .right .bottom ul li:last-child {
            margin-left: 20px; }
          #sec04 .part01 .right .bottom ul li img {
            padding-bottom: 10px; }
  #sec04 .part03 {
    padding: 0 10px 22px 10px; }
    #sec04 .part03 .three_flex li {
      width: calc(50% - 10px);
      margin-left: 20px; }
      #sec04 .part03 .three_flex li:last-child {
        margin-left: 0px; }
      #sec04 .part03 .three_flex li:first-child {
        margin-left: 0px; }

  #sec05 .part01 {
    display: flex;
    flex-wrap: wrap; }
    #sec05 .part01 .left {
      padding-top: 20px;
      width: 100%;
      text-align: center; }
      #sec05 .part01 .left img {
        height: 100%; }
    #sec05 .part01 .right {
      padding: 20px 10px 0 10px;
      width: 100%; }
      #sec05 .part01 .right img {
        width: 100%; }
  #sec05 .part03 {
    padding: 20px 10px 35px 10px; }

  #sec06 .bg_white {
    padding: 10px; }
    #sec06 .bg_white .photo {
      padding-bottom: 15px; }
    #sec06 .bg_white h5 {
      padding: 10px 0 5px 0; }
    #sec06 .bg_white ul li {
      font-size: 12px;
      font-size: 1.2rem;
      padding-bottom: 5px; }

  #sec07 .bg_white {
    padding: 10px; }
    #sec07 .bg_white p img {
      width: 100%; }
    #sec07 .bg_white .two_flex li {
      display: flex;
      flex-wrap: wrap; }
      #sec07 .bg_white .two_flex li .img {
        width: 50%;
        padding-right: 20px; }
        #sec07 .bg_white .two_flex li .img img {
          width: 100%; }
      #sec07 .bg_white .two_flex li dl {
        width: 50%; }
        #sec07 .bg_white .two_flex li dl dt {
          line-height: 1.4; }
      #sec07 .bg_white .two_flex li:nth-child(3) dl {
        width: 50%;}

  #sec08 .bg_white {
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 8px; }
    #sec08 .bg_white .left {
      width: 100%; }
      #sec08 .bg_white .left .logo {
        padding: 15px 10px 10px 10px; }
      #sec08 .bg_white .left .txt {
        padding: 0 10px; }
    #sec08 .bg_white .right {
      width: 100%;
      padding: 0 15px 20px 15px; }
      #sec08 .bg_white .right .logo {
        text-align: right;
        padding: 25px 0; } }
