@charset "utf-8";
/**
 * 注目掲載 / 通常掲載 の見せ分けスタイル(軽量版)
 *
 * - .officeList__item--premium  : 注目掲載(client_numberに値あり)
 * - .officeList__item--basic    : 通常掲載
 *
 * @package _template-new
 * @since 2.1.0 (2026-04 軽量版)
 */

/* =========================================================
 * 【注目掲載】バッジ + アクセントカラー
 * ========================================================= */
.officeList__item--premium {
  position: relative;
  border: 2px solid #ff7a00;
  background: linear-gradient(180deg, #fff8f0 0%, #ffffff 60%);
  box-shadow: 0 2px 12px rgba(255, 122, 0, .08);
  transition: box-shadow .2s ease, transform .2s ease;
}

.officeList__item--premium:hover {
  box-shadow: 0 8px 28px rgba(255, 122, 0, .15);
  transform: translateY(-2px);
}

/* 「注目」バッジ - ::before で軽量実装 */
.officeList__item--premium::before {
  content: '★ 注目';
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  padding: 4px 14px;
  background: #ff7a00;
  color: #fff;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .08em;
  border-radius: 6px 0 6px 0;
  z-index: 2;
  pointer-events: none;
}

/* 注目掲載の事務所名強調 */
.officeList__item--premium .name {
  font-weight: 700;
}

.officeList__item--premium .name a {
  color: #c25400;
  border-bottom: 2px solid transparent;
  transition: border-color .2s;
}
.officeList__item--premium .name a:hover {
  border-bottom-color: #ff7a00;
  text-decoration: none;
}

/* 有料掲載の「無料相談制度あり」タグ強調 */
.officeList__item--premium .tag__item {
  font-weight: 600;
}

/* 有料掲載のCTAボタン強化 */
.officeList__item--premium .telBtn {
  background: linear-gradient(180deg, #ff8a1a, #ff5a00) !important;
  color: #fff !important;
  font-weight: 700;
  font-size: 1.15rem;
  padding: 14px 16px;
  box-shadow: 0 3px 0 #cc4900, 0 6px 14px rgba(255, 90, 0, .25);
  transition: transform .15s, filter .15s;
}

.officeList__item--premium .telBtn:hover {
  filter: brightness(1.05);
  transform: translateY(-1px);
}

.officeList__item--premium .telBtn:active {
  transform: translateY(2px);
  box-shadow: 0 1px 0 #cc4900, 0 2px 6px rgba(255, 90, 0, .2);
}

.officeList__item--premium .mailBtn {
  background: #fff !important;
  color: #c25400 !important;
  border: 2px solid #ff7a00;
  font-weight: 700;
  padding: 12px 16px;
  box-shadow: 0 3px 0 #ffb070, 0 6px 14px rgba(255, 122, 0, .12);
  transition: transform .15s, background .15s;
}

.officeList__item--premium .mailBtn:hover {
  background: #fff5eb !important;
  transform: translateY(-1px);
}

.officeList__item--premium .mailBtn:active {
  transform: translateY(2px);
  box-shadow: 0 1px 0 #ffb070, 0 2px 6px rgba(255, 122, 0, .12);
}

/* =========================================================
 * 【無料掲載】控えめスタイル
 * ========================================================= */
.officeList__item--basic {
  background: #fafafa;
  border: 1px solid #e0e0e0;
  /* CTAボタンなし(意図的に有料との差をつける) */
}

.officeList__item--basic .name {
  font-weight: 600;
  color: #333;
}

/* =========================================================
 * モバイル最適化
 * ========================================================= */
@media screen and (max-width: 767px) {
  .officeList__item--premium::before {
    font-size: .65rem;
    padding: 3px 10px;
  }

  .officeList__item--premium .telBtn {
    font-size: 1.05rem;
    padding: 12px;
  }

  .officeList__item--premium .mailBtn {
    padding: 10px;
  }
}
