/*==============================
 mixin
==============================*/
.back_base-color {
  background-color: #F2F2F2;
  position: relative;
  z-index: 0;
}

/*==============================
  html
==============================*/
/*==============================
  text-align
==============================*/
.tc {
  text-align: center;
}

.tr {
  text-align: right;
}

.tl {
  text-align: left;
}

/*==============================
  responsive
==============================*/
/*
.flex_box {
  display: flex;
  justify-content: space-between;

  @include mq() {
    flex-direction: column;
  }
}
*/
.sp_show {
  display: none;
}
@media screen and (max-width: 720px) {
  .sp_show {
    display: block;
  }
}

.sp_show_lg {
  display: none;
}
@media screen and (max-width: 1000px) {
  .sp_show_lg {
    display: block;
  }
}

@media screen and (max-width: 720px) {
  .pc_show {
    display: none;
  }
}

.sp_s {
  display: none;
}
@media screen and (max-width: 460px) {
  .sp_s {
    display: block;
  }
}

.sp {
  display: none;
}
@media screen and (max-width: 720px) {
  .sp {
    display: block;
  }
}

.sp_l {
  display: none;
}
@media screen and (max-width: 1000px) {
  .sp_l {
    display: block;
  }
}

.sp_xl {
  display: none;
}
@media screen and (max-width: 1200px) {
  .sp_xl {
    display: block;
  }
}

.pc {
  display: block;
}
@media screen and (max-width: 720px) {
  .pc {
    display: none;
  }
}

.pc_l {
  display: block;
}
@media screen and (max-width: 1000px) {
  .pc_l {
    display: none;
  }
}

main {
  background: #e0f3ff;
  padding: 100px 0;
}
@media screen and (max-width: 720px) {
  main {
    padding: 10% 0;
  }
}

h2 {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 0.5em;
}
h2 img {
  max-width: 140px;
  max-height: 40px;
  margin-right: 20px;
  height: auto;
  width: auto;
}
h2::before {
  content: none;
}
@media screen and (max-width: 720px) {
  h2 img {
    max-width: 30%;
    max-height: 30px;
    margin-right: 15px;
  }
}

h3 {
  background-color: #2585D0;
  color: #fff;
  padding: 0.4em 1em;
  margin: 60px 0 1em;
}

h2 + h3 {
  margin-top: 1.5em;
}

.inner {
  background-color: #fff;
  padding: 40px;
  border-radius: 10px;
}
@media screen and (max-width: 720px) {
  .inner {
    padding: 5%;
  }
}

.flex {
  margin-bottom: 1.8%;
}
.flex03 > * {
  width: 32%;
}
@media screen and (max-width: 720px) {
  .flex {
    display: flex;
  }
  .flex img {
    margin-bottom: 3%;
  }
  .flex02 > * {
    width: 48%;
  }
  .flex03 > * {
    width: 48%;
  }
  .flex04 > * {
    width: 48%;
  }
}

.inquiry_btn {
  text-align: center;
  margin-top: 60px;
}
.inquiry_btn a {
  position: relative;
  display: inline-block;
  background-color: #2585D0;
  color: #fff;
  padding: 0.7em 4em 0.7em 3em;
  letter-spacing: 0.05em;
  border-radius: 10px;
  min-width: 260px;
}
.inquiry_btn a::after {
  content: "";
  border: 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  display: inline-block;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%) rotate(45deg);
}

.house_img > div {
  margin: 1.8% auto;
}
.house_img > div img {
  border-radius: 10px;
}

.points dl dd {
  position: relative;
  font-size: 1.2em;
  padding: 0.2em;
  border-bottom: #D9D9D9 solid 2px;
  color: #143D93;
  margin-bottom: 0.5em;
  font-weight: bold;
  text-indent: -2em;
  padding-left: 2em;
}
.points dl dd::before {
  content: "";
  display: inline-block;
  background-image: url(../images/housemaker/check_ico.png);
  background-size: contain;
  vertical-align: bottom;
  width: 1.5em;
  height: 1.5em;
  margin-right: 0.8em;
}
.points dl dt {
  margin-bottom: 2em;
  padding: 0.2em;
}
.points .flex p {
  width: 66%;
}
.points .flex figure {
  width: 30%;
  max-width: 280px;
}
@media screen and (max-width: 720px) {
  .points dl dd::before {
    margin-right: 0.5em;
  }
  .points .flex p {
    width: 100%;
  }
  .points .flex figure {
    width: 70%;
    margin: 10px auto;
  }
}

.reference {
  margin-top: 70px;
}
.reference p {
  position: relative;
  padding: 0.2em;
  margin-top: 0.5em;
}
.reference p::before {
  content: "";
  display: inline-block;
  background-image: url(../images/housemaker/price_ico.png);
  background-size: contain;
  vertical-align: middle;
  width: 2em;
  height: 2em;
  margin-right: 0.8em;
  margin-top: -0.2em;
}
.reference p:last-of-type::before {
  background-image: url(../images/housemaker/web_ico.png);
}
.reference p a {
  text-decoration: underline;
  color: #2585D0;
}

.btn_wrapper {
  text-align: center;
  margin-top: 60px;
}
.btn_wrapper a {
  position: relative;
  display: inline-block;
  background-color: #2585D0;
  color: #fff;
  padding: 0.7em 4em 0.7em 3em;
  letter-spacing: 0.05em;
  border-radius: 10px;
  min-width: 260px;
}
.btn_wrapper a::after {
  content: "";
  border: 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  display: inline-block;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%) rotate(45deg);
}
/*# sourceMappingURL=housemaker.css.map */