@charset "UTF-8";
/** ───────────────────────────────────────────────────────── **/
/*** ▼ 編集不要 ▼ ***/
h2.f_g span {
  display: block;
  font-size: 1.7rem;
}
@media (max-width: 880px) {
  h2.f_g span {
    font-size: 3.5vw;
  }
}

.contents p {
  font-size: 1.6rem;
  line-height: 1.8;
}
.contents > .copy {
  max-width: 750px;
  margin: 0 auto;
}
@media (max-width: 880px) {
  .contents > .copy {
    width: 90%;
  }
}

.gainen {
  margin: 50px 0 0;
}

.about {
  width: 100%;
  margin: 50px auto 0;
}
.about .photo {
  width: 90%;
  margin: 0 auto;
}
@media (max-width: 880px) {
  .about .photo {
    width: 100%;
  }
}
.about .photo span.cap {
  right: 25%;
  bottom: 24%;
}
@media (max-width: 880px) {
  .about .photo span.cap {
    right: 0;
    bottom: 20%;
  }
}
.about .flx {
  width: 80%;
  margin: 30px auto 0;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 1200px) {
  .about .flx {
    width: 100%;
  }
}
@media (max-width: 880px) {
  .about .flx {
    display: block;
  }
}
.about .flx dl {
  width: 30%;
  text-align: center;
}
@media (max-width: 880px) {
  .about .flx dl {
    width: 100%;
  }
  .about .flx dl + dl {
    margin-top: 30px;
  }
}
.about .flx dl dt {
  position: relative;
  margin-bottom: 30px;
  color: #487472;
  font-size: 2rem;
  font-weight: 600;
}
@media (max-width: 880px) {
  .about .flx dl dt {
    margin-bottom: 20px;
  }
}
.about .flx dl dt::after {
  position: absolute;
  display: block;
  content: "";
  left: calc(50% - 35px);
  bottom: -15px;
  width: 70px;
  height: 1px;
  background: #555;
}
@media (max-width: 880px) {
  .about .flx dl dt::after {
    bottom: -10px;
  }
}
.about .flx dl dd {
  font-size: 1.5rem;
}
.about .result {
  width: 1000px;
  margin: 50px auto 0;
  padding: 30px 0;
  text-align: center;
  border: 2px solid #009e96;
  background: #fff;
  font-size: 2rem;
  font-weight: 600;
  color: #009e96;
}
@media (max-width: 1200px) {
  .about .result {
    width: 100%;
  }
}
@media (max-width: 880px) {
  .about .result {
    padding: 5%;
    font-size: 3.5vw;
  }
}
.about .result span {
  display: block;
  font-size: 3rem;
  font-weight: 700;
  margin-top: 5px;
}
@media (max-width: 880px) {
  .about .result span {
    margin-top: 10px;
    font-size: 5.5vw;
  }
}

/* .about_wrap {
  margin-top: 100px;
  dl + dl {
    margin-top: 20px;
  }
  dt {
    position: relative;
    margin-bottom: 10px;
    color: $green_color;
    font-size: 1.8rem;
    &::before {
      display: inline-block;
      content: "";
      margin-right: 7px;
      width: 7px;
      height: 13px;
      background: $green_color;
      @include sp {
        width: 1.2vw;
        height: 2.5vw;
        margin-right: 1vw;
      }
    }
  }
  dd {
    font-size: 1.5rem;
    ul {
      li {
        position: relative;
        display: flex;
        align-items: center;
        line-height: 1;
        &::before {
          display: inline-block;
          content: "●";
          font-size: 0.8rem;
          margin-right: 5px;
        }
        & + li {
          margin-top: 10px;
        }
      }
    }
  }
} */
/* .contact_wrap {
  width: 400px;
  margin: 100px auto 0;
  div.cap {
    margin-top: 10px;
    font-weight: 500;
    font-size: 1.5rem;
    @include sp {
      font-size: 1.3rem;
    }
  }
  @include tab_L {
    display: block;
  }
  > div {
    width: 100%;
  }
  h3 {
    padding: 20px 15px;
    color: #fff;
    background: $base_color;
    font-weight: 500;
    font-size: 1.8rem;
    letter-spacing: 0.2rem;
    position: relative;
    display: flex;
    align-items: center;
    @include tab {
      padding: 15px;
      font-size: 3.5vw;
    }
    &::before {
      display: inline-block;
      width: 8px;
      height: 15px;
      margin-right: 10px;
      content: "";
      background: #fff;
    }
  }
  .tel_inner {
    margin: 15px;
  }
  p {
    a {
      display: inline;
      color: $base_color;
      font-size: 3.2rem;
      font-weight: bold;
      letter-spacing: 0.2rem;
      @include tab {
        font-size: 5vw;
        letter-spacing: 0.2vw;
        font-weight: 600;
      }
      @include sp {
        font-size: 6vw;
      }
    }
    &.time {
      line-height: 1.5;
    }
    span.cap {
      display: inline;
      font-weight: 500;
      font-size: 1.5rem;
      @include tab {
        display: block;
      }
      @include sp {
        font-size: 1.3rem;
      }
    }
  }
}
.doui_wrap {
  margin-top: 100px;
  padding: 50px 30px;
  border: 1px solid $base_color;
  @include tab {
    margin-top: 50px;
    padding: 7% 5%;
  }
  dl {
    text-align: center;
    dt {
      margin-bottom: 10px;
      font-weight: 600;
      font-size: 2rem;
    }
    dd {
      font-size: 1.5rem;
      & + dd {
        width: 350px;
        margin: 20px auto 0;
        @include sp {
          width: 85%;
        }
        a {
          @include tab {
            font-size: inherit;
          }
          @include sp {
            font-size: 3.5vw;
          }
        }
      }
    }
  }
  .doui_btn {
    width: 170px;
    margin: 30px auto 0;
    background: $green_color;
    color: #fff;
  }
}
.form_btn {
  display: flex;
  justify-content: space-between;
  width: 350px;
  margin: 70px auto 0;

  @include sp {
    width: 85%;
  }
  .detail_btn {
    width: 100%;

    a {
      transition: all 0.3s;
      @include tab {
        font-size: inherit;
      }
      @include sp {
        font-size: 3.5vw;
      }
    }
  }
  &.disabled .detail_btn a {
    cursor: not-allowed;
    pointer-events: none;
    opacity: 0.43;
  }
  &:not(.disabled) .detail_btn a:hover {
    opacity: 0.8;
  }
}
 */