/* ===========================
  Page: 検索結果（/search）
=========================== */

/* --------------------------------
  ヒーローセクション
-------------------------------- */
.page-hero--search .page-hero-inner {
  height: 380px;
}

.page-hero--search .page-hero-content {
  max-width: none;
  height: 280px;
  display: flex;
  align-items: center;
}

.page-hero--search .page-hero-heading {
  font-size: 40px;
  font-weight: 500;
  color: var(--color-white);
  line-height: 130%;
  margin-bottom: 0;
}

/* --------------------------------
  検索結果アイテム
-------------------------------- */
.search-result-item {
  padding: 40px 0;
  border-bottom: 2px solid var(--color-border);
}

.search-result-item:first-child {
  padding-top: 0;
}

.search-result-title {
  font-size: 20px;
  font-weight: 500;
  line-height: 150%;
  margin-bottom: 24px;
  color: var(--color-green-dark);
}

.search-result-excerpt {
  font-size: 16px;
  line-height: 175%;
  color: var(--color-text);
}

.search-result-excerpt p {
  margin: 0;
}

/* --------------------------------
  ページネーション
-------------------------------- */
.search-pagination {
  padding: 40px 0 0;
}

/* --------------------------------
  問い合わせ・サポート窓口
-------------------------------- */
.search-contact-wrap {
  max-width: 926px;
  margin: 0 auto;
  padding: 0 40px 80px;
}

.search-contact-wrap .page-contact-block {
  margin-top: 0;
  border: none;
}

/* --------------------------------
  Responsive: SP（< 768px）
-------------------------------- */
@media (max-width: 767px) {
  .page-hero--search .page-hero-inner {
    height: 180px;
    padding-top: 0;
  }

  .page-hero--search .page-hero-content {
    height: 215px;
  }

  .page-hero--search .page-hero-heading {
    font-size: 29px;
  }

  .search-contact-wrap {
    padding: 0 15px 50px;
  }

  /* 空サイドバーをSPで非表示 */
  .search-layout .two-col-layout__side {
    display: none;
  }

  .search-result-item {
    padding: 28px 0;
  }

  .search-result-title {
    font-size: 18px;
    margin-bottom: 12px;
  }

  .search-result-excerpt {
    font-size: 15px;
  }

  .search-pagination {
    padding: 30px 0 0;
  }
}
