@charset "utf-8";
/* lawyers.css - 弁護士紹介ページ専用スタイル（常時展開版） */

/*==============================
  全体レイアウト
==============================*/
.page-id-2516 #team-page {
  padding: 60px 20px;
  background: #fff;
}

.page-id-2516 .layoutRole__contents {
  max-width: 1200px;
  margin: 0 auto;
}

/*==============================
  見出し・説明エリア
==============================*/
.page-id-2516 .mvRole {
  position: relative;
  text-align: center;
  margin-bottom: 40px;
}
.page-id-2516 .mvRole img {
  width: 100%;
  height: auto;
  display: block;
}

.page-id-2516 .hd-content {
  text-align: center;
  margin-bottom: 40px;
}
.page-id-2516 .hd-content .heading {
  font-size: 32px;
  margin-bottom: 10px;
}
.page-id-2516 .hd-content .sec-heading-sub {
  font-size: 18px;
  color: #666;
  margin-bottom: 20px;
}
.page-id-2516 .hd-content .desc {
  font-size: 16px;
  line-height: 1.8;
  color: #333;
}

/*==============================
  弁護士一覧グリッドレイアウト
==============================*/
.page-id-2516 .teamRole__list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 30px;
  list-style: none;
  padding: 0;
  margin: 0;
}

/*==============================
  カード要素（1人分の弁護士）
==============================*/
.page-id-2516 .teamRole__list-item {
  background: #fafafa;
  border: 1px solid #e5e5e5;
  border-radius: 6px;
  overflow: hidden;
  transition: box-shadow 0.2s ease;

  /* 上詰めにするための修正 */
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 0;
}

.page-id-2516 .teamRole__list-item:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

/*==============================
  カード内リンクエリア
==============================*/
.page-id-2516 .teamRole__list-item a {
  text-decoration: none;
  color: inherit;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  height: 100%;
}

/*==============================
  画像エリア
==============================*/
.page-id-2516 .teamRole__list-item img {
  width: 100%;
  height: auto;
  display: block;
  margin: 0;
  padding: 0;
  vertical-align: bottom; /* ← 上の隙間を防ぐ */
}

/*==============================
  名前・肩書き
==============================*/
.page-id-2516 .name-wrap {
  padding: 15px 15px 20px;
  text-align: center;
}
.page-id-2516 .position {
  font-size: 14px;
  color: #999;
  margin-bottom: 5px;
}
.page-id-2516 .name-jp {
  font-size: 18px;
  font-weight: bold;
  color: #333;
  margin: 2px 0;
}
.page-id-2516 .name-en {
  font-size: 14px;
  color: #666;
}

/*==============================
  弁護士カード内テキスト装飾
==============================*/

/* 肩書き（弁護士など） */
.page-id-2516 .position {
  font-size: 12px!important;
  color: #999;
  margin-bottom: 8px;
  position: relative;
  padding-bottom: 4px;
}
.page-id-2516 .position::after {
  content: "";
  display: block;
  width: 24px;
  height: 1px;
  background: #ccc;
  margin: 1px auto 0;
}

/* 日本語氏名（明朝体＋強調） */
.page-id-2516 .name-jp {
  font-size: 24px!important;
  font-family: "Hiragino Mincho ProN", "Yu Mincho", "游明朝", serif;
  font-weight: bold;
  color: #222;
  margin: -15px 0 0!important;
  letter-spacing: 0.05em;
}

/* 英語氏名（控えめ＋整った印象） */
.page-id-2516 .name-en {
  font-size: 10px!important;
  color: #888;
  letter-spacing: 0.5em;
  margin-top: -15px;
}

/*==============================
  レスポンシブ対応
==============================*/
@media (max-width: 767px) {
  .page-id-2516 .hd-content .heading {
    font-size: 24px;
  }
  .page-id-2516 .hd-content .desc {
    font-size: 15px;
  }
  .page-id-2516 .teamRole__list {
    gap: 20px;
  }
}

/*==============================
  カード内テキストのホバー装飾を無効化
==============================*/
.page-id-2516 .teamRole__list-item a:hover,
.page-id-2516 .teamRole__list-item a:hover p,
.page-id-2516 .teamRole__list-item a:hover span {
  text-decoration: none !important;
}
