@charset "utf-8";
/* 
サイト固有の記述
*/

.company figure.logo_icon:after {
  background-image: url(../images/common/btn_logo2.png);
}

.plan .sub_images_ul li {
  width: calc(100% / 4 - 15px);
}

.home .add_entry {
  padding: 0;
}

.post-btn {
  padding-bottom: 50px;
}

.home #main_visual .swiper-slide-active .swiper-img,
#main_visual .swiper-slide-duplicate-active .swiper-img,
#main_visual .swiper-slide-prev .swiper-img {
  -webkit-animation: zoomUp 6s linear 0s normal both;
  animation: zoomUp 6s linear 0s normal both;
}

.home .thum_list li a:hover figure img {
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
  -webkit-transition: 0.5s all;
  transition: 0.5s all;
}

.map_link {
  width: 35%;
  margin-bottom: 10px;
}

.map_link a {
  display: block;
  background-color: #fff;
  padding: 10px 0;
  text-align: center;
  border-radius: 6px;
  color: #333;
  font-weight: 600;
}

@media (max-width: 767px) {
  .map_link {
    width: auto;
  }

  .contents_wrap {
    .contents_wrap {
      padding: 0;
    }
  }

  .plan .sub_images_ul {
    display: flex;
  }

  .plan .sub_images_ul li {
    width: calc(100% / 2 - 10px);
  }

  .plan .layout_c {
    display: block;
  }

  .plan .layout_c li:nth-child(2) {
    margin-top: 15px;
  }

  .company figure.logo_icon:after {
    width: 77.48px;
    bottom: 0;
  }
}

.feature .sec07 {
  .housing-table {
    display: table;
    width: 100%;
    border-collapse: collapse;
  }

  .housing-row {
    display: table-row;
  }

  .housing-label,
  .housing-arrow,
  .housing-content {
    display: table-cell;
    vertical-align: top; /* 各セルの上に揃える */
    padding: 0.5rem;
  }

  .housing-label {
    white-space: nowrap;
    font-weight: bold;
  }

  .housing-arrow {
    width: 2rem;
    text-align: center;
    font-size: 1.2rem;
    vertical-align: top; /* ← ここで「→」を上に揃える */
  }

  /* .housing-content ul {
  margin: 0.5rem 0 0 1rem;
  padding-left: 1.2rem;
  list-style-type: disc;
} */
}

.feature .sec001 {
   padding: 40px 0 0;
  position: relative;

  @media screen and (max-width: 1024px) {
    padding: 25px 0 0;
  }
}

.feature .sec09 {
  padding: 40px 0 80px;
  position: relative;

  .housing-table {
    display: table;
    width: 100%;
    border-collapse: collapse;
  }

  .housing-row {
    display: table-row;
  }

  .housing-label,
  .housing-arrow,
  .housing-content {
    display: table-cell;
    vertical-align: sub; /* 各セルの上に揃える */
    padding: 0.5rem;
  }

  .housing-label {
    white-space: nowrap;
    font-weight: bold;
    width: 40%;
    color: #b8304c;
    font-size: 24px;
  }

  .housing-arrow {
    width: 2rem;
    text-align: center;
    font-size: 1.2rem;
    vertical-align: top; /* ← ここで「→」を上に揃える */
  }

  /* .housing-content ul {
  margin: 0.5rem 0 0 1rem;
  padding-left: 1.2rem;
  list-style-type: disc;
} */

  .bold_txt {
    font-weight: bold;
    font-size: 30px;
    line-height: 1.5;
    margin-top: 20px;
  }

  @media screen and (max-width: 1024px) {
    padding: 25px 0 50px;
  }

  @media screen and (max-width: 767px) {
    .housing-row {
      display: block;
    }

    .s_txt {
      font-size: 16px;
    }

    .housing-label {
      font-weight: bold;
      width: 100%;
      color: #b8304c;
      font-size: 20px;
      display: block;
    }

    .bold_txt {
      font-weight: bold;
      font-size: 20px;
      line-height: 1.5;
      margin-top: 20px;
    }
  }
}
