@charset "UTF-8";

/*----------------------------------
    リフォーム施工事例
-----------------------------------*/

.reform-example {
  background: #555;
  padding-top: 10px;
}

.reform-inner .lower-h2-wrap {
  margin-top: 20px;
}

.reform-mainwrap {
  background: #fff;
  padding: 75px 28px 71px;
  margin-top: 10px;
}

@media screen and (max-width:599px) {
  .reform-mainwrap {
    background: #fff;
    padding: 15px 15px;
  }
}

.reform-icon_wrap {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-template-rows: repeat(1, 1fr);
  border-radius: 10px;
  border: 3px solid #000;
  margin: 62px 52px;
  padding: 34px 3px;
}

.reform-icon {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width:599px) {
  .reform-icon {
    max-width: 179px;
  }
}

@media screen and (max-width:1200px) {
  .reform-icon_wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, 1fr);
    margin: 0 0 20px;
  }
}

@media screen and (max-width:599px) {
  .reform-icon_wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, 1fr);
  }
}

.reform-text {
  text-align: center;
  line-height: 2.5;
  letter-spacing: 1px;
}

@media screen and (max-width:599px) {
  .reform-text {
    line-height: 1.5;
    letter-spacing: 1px;
    text-align: left;
    padding: 0 15px;
  }
}

/*----------------------------------
    工事の流れ
-----------------------------------*/

.flow_design {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-left: 40px;
}

.flow {
  padding-left: 0;
}

.flow>li {
  list-style-type: none;
  position: relative;
  padding-left: 112px;
}

@media screen and (max-width:599px) {
  .flow>li {
    padding-left: 80px;
  }
  .flow_design {
    margin-left: 10px;
  }
}

.flow>li:not(:last-child) {
  padding-bottom: 38px;
}

.flow>li .flow-icon {
  width: 4.5em;
  height: 4.5em;
  line-height: 4.5em;
  text-align: center;
  border-radius: 100vh;
  display: inline-block;
  background: #000;
  color: #fff;
  position: absolute;
  left: 0;
}

.flow>li .flow-icon1 {
  background: #535353;
}

.flow>li .flow-icon2 {
  background: #C0C0C0;
}

.flow>li:not(:last-child)::before {
  content: '';
  background: #000;
  width: 1px;
  height: 100%;
  position: absolute;
  top: calc(50% - -30px);
  left: 34px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.flow>li dl {
  font-size: 1rem;
  font-weight: 600;
  color: #000;
}

.flow>li dt {
  font-size: 2.25rem;
  font-weight: 600;
  color: #000;
}

@media screen and (max-width:599px) {
  .flow>li dt {
    font-size: 1.5rem;
  }
}

.flow>li dt span {
  font-size: 1rem;
}

.flow>li dl dd {
  margin-left: 0;
  max-width: 641px;
  padding: 16px 0;
}

.flow-contact {
  display: flex;
  color: #0085FF;
}

.flow-contact:hover {
opacity: 0.7;
}