@charset "UTF-8";

/* ==========================================================================
   院ナビゲーション共通スタイル（大阪院）

   ヘッダーの「クリニック一覧」CTA。header.php / header-faq.php /
   footer.php（固定ヘッダー）の3か所で同じマークアップを出力する。
   以前の4院タブ（.clinic-btn）を置き換えたもの。

   東京院（fuelcells.org）の common/css/clinic-nav.css から、ヘッダーCTA部分を
   移植した。大阪院のフッターは独自デザイン（footer-info__place）を維持するため、
   東京院側にあるフッター5院カードのスタイルは含めていない。

   読み込みは functions.php の clinic_nav_styles()（theme.css の後に出力）。
   ========================================================================== */

.h_logo .clinic-directory {
  flex: 0 0 auto;
  width: 264px;
  margin: 0;
}
.h_logo .clinic-directory__link {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
  width: 100%;
  min-height: 64px;
  padding: 6px 8px;
  border: 1px solid #007a55;
  border-radius: 8px;
  background: #007a55;
  color: #fff;
  text-align: left;
  text-decoration: none;
  opacity: 1;
  transition: background-color 160ms ease-out, border-color 160ms ease-out;
}
.clinic-directory__copy { display: flex; flex-direction: column; gap: 2px; }
.clinic-directory__eyebrow {
  display: block;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -.03em;
  white-space: nowrap;
}
.clinic-directory__eyebrow strong { margin-left: 3px; font-size: 18px; font-weight: 700; line-height: 1; }
.clinic-directory__label {
  display: block;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0;
  white-space: nowrap;
}
.clinic-directory__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #fff;
  color: #007a55;
}
.clinic-directory__arrow svg { display: block; }
.h_logo .clinic-directory__link:hover {
  background: #005c40;
  border-color: #005c40;
  color: #fff;
  opacity: 1;
  text-decoration: none;
}
.h_logo .clinic-directory__link:focus-visible {
  outline: 3px solid #005c40;
  outline-offset: 3px;
}
@media (min-width: 768px) {
  .l-header .h_logo, .fix_content .h_logo {
    width: auto;
    flex-wrap: nowrap;
    align-items: center;
    gap: 14px;
    top: 20px;
  }
  .h_logo .h_logo_img { flex-shrink: 0; }
}
@media (min-width: 768px) and (max-width: 1200px) {
  .h_logo .clinic-directory { width: 244px; }
  .h_logo .clinic-directory__link { gap: 4px; padding: 6px 8px; }
  .clinic-directory__eyebrow { font-size: 13px; }
  .clinic-directory__label { font-size: 12px; }
  .clinic-directory__arrow { flex-basis: 20px; width: 20px; height: 20px; }
}
@media (max-width: 767px) {
  /* SP はロゴ行 64px + CTA 帯の2段構成になるためヘッダー高さを広げる。
     theme.css の .l-header{height:100px}（詳細度 0,1,0）を上書きする必要が
     あるため、body を足して (0,1,1) にしている。 */
  body .l-header { height: 128px; }
  .l-header .clinic-directory {
    box-sizing: border-box;
    position: fixed;
    z-index: 99;
    top: 64px;
    left: 0;
    width: 100%;
    padding: 0 10px 8px;
    background: #fff;
  }
  .l-header .clinic-directory__link { min-height: 56px; padding: 4px 14px; }
  .clinic-directory__copy { gap: 0; }
  .clinic-directory__eyebrow { font-size: clamp(14px, calc(6.25vw - 6px), 18px); line-height: 1.3; letter-spacing: 0; }
  .clinic-directory__eyebrow strong { font-size: 16px; }
  .clinic-directory__label { font-size: 13px; line-height: 1.35; }
}
@media (prefers-reduced-motion: reduce) {
  .h_logo .clinic-directory__link { transition: none; }
}
