/* ==========================================================================
   rh-event.css — イベント詳細（single-event）
   Figma 13_イベントページ（355:10966）＋既存ページの構成
   ========================================================================== */
html .rh-event__spacer { height: var(--rh-header-h); }
html .rh-event__body { max-width: calc(880px + var(--rh-gutter) * 2); }

/* 写真スライダー（1枚だけのときは幅90%） */
html .rh-evslider { position: relative; margin-top: 8px; }
html .rh-evslider__track { display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
html .rh-evslider__track::-webkit-scrollbar { display: none; }
html .rh-evslider__track { align-items: center; }
html .rh-evslider__track figure { flex: 0 0 100%; margin: 0; scroll-snap-align: center; }
/* 写真は切り抜かずに全体を出す（1枚のとき  → 複数のときも。正方形が横長に切られる・イベントで混在する）。高さの違う写真は上下中央 */
html .rh-evslider__track img { display: block; width: auto; max-width: 100%; height: auto; max-height: min(760px, 85vh); margin: 0 auto; object-fit: contain; border-radius: 4px; }
html .rh-evslider.is-single .rh-evslider__btn { display: none; }
html .rh-evslider__btn {
  position: absolute; top: 50%; transform: translateY(-50%);
  width: 36px; height: 36px; border-radius: 50%; background: rgba(255, 255, 255, .9);
  color: var(--rh-blue); font-size: 20px; line-height: 1; box-shadow: 0 2px 8px rgba(0, 0, 0, .12);
}
html .rh-evslider__btn--prev { left: 10px; }
html .rh-evslider__btn--next { right: 10px; }
/* スライドのリンク：写真ごとリンク。写真の下に「この物件を見る ›」（写真の上に重ねると、画像の中の価格などを隠すため）。WP だけ（試作には無い） */
html .rh-evslider__link { display: block; width: fit-content; max-width: 100%; margin: 0 auto; color: inherit; text-decoration: none; }

/* タイトルまわり：イベント一覧のカード（.rh-evitem）と同じ部品。
   状態・種類・地域のバッジ（.rh-evitem__state / __type / __area）、ゴシック太字のタイトル、開催日の行（.rh-evitem__meta）。
   状態は写真に重ねず（写真がスライダーで1枚のときは幅90%のため）、タイトルの上の行に一覧と同じ色・形で置く */
html .rh-evhead { margin-top: 28px; }
html .rh-evhead__tags { align-items: center; margin-top: 0; }
html .rh-evhead .rh-evitem__state { position: static; padding: 3px 10px; font-size: 12px; line-height: 1.6; }
html .rh-evhead .rh-evitem__state.is-always { box-shadow: inset 0 0 0 1px var(--rh-blue); } /* 白地なので、白いページでは枠で囲む */
html .rh-evhead__title {
  margin-top: 14px; color: var(--rh-text); font-family: var(--rh-sans); font-size: 28px; font-weight: 700; line-height: 1.5; letter-spacing: .02em;
  overflow-wrap: anywhere; /* 折り返しは見出しの共通（keep-all）。区切りの無い長い語だけ途中で折る */
}
html .rh-evhead__meta { gap: 6px; margin-top: 16px; }
html .rh-evhead__meta div { grid-template-columns: 56px 1fr; align-items: baseline; }
html .rh-evhead__meta dt { font-size: 13px; }
html .rh-evhead__meta dd { font-size: 16px; font-weight: 500; line-height: 1.7; }
html .rh-event { --rh-photo-bg: #f5f3ed; } /* 物件カード（rh-property.css）用 */

/* 本文 */
html .rh-evcontent { margin-top: 40px; font-size: 15px; line-height: 2; }
html .rh-evcontent h2:not(.rh-evprops *) { font-family: var(--rh-serif); font-size: 24px; font-weight: 500; line-height: 1.6; margin: 0 0 12px; }
html .rh-evcontent h3:not(.rh-evprops *) { font-size: 17px; font-weight: 700; margin: 28px 0 8px; }
html .rh-evcontent p + p:not(.rh-evprops *) { margin-top: 1em; }
html .rh-evcontent ul:not(.rh-evprops *) { list-style: disc; padding-left: 1.4em; }
/* 本文の画像ブロック：編集画面の「中央揃え」と幅の指定が効くように（PC で左に寄っていた）。WP だけ */
html .rh-evcontent img { max-width: 100%; height: auto; }
html .rh-evcontent figure.aligncenter, html .rh-evcontent .wp-block-image .aligncenter { display: table; margin-left: auto; margin-right: auto; text-align: center; }
html .rh-evcontent .aligncenter img { margin-left: auto; margin-right: auto; }
html .rh-evcontent img.aligncenter { display: block; margin-left: auto; margin-right: auto; }   /* クラシックエディタの中央揃え（img に class が付く） */
html .rh-evcontent img.alignright { display: block; margin-left: auto; }
html .rh-evcontent figure.alignright { margin-left: auto; width: fit-content; }
/* 本文に置いた「物件カード」ブロック（blocks.php）：本文の文字・見出しの指定はカードに効かせない（上の :not）。行間は本文の外と同じに */
html .rh-evcontent .rh-evprops { font-size: 14px; line-height: 1.7; }
/* 画像ギャラリー（property-gallery。rh-event.js の 8. で横に流す）の上下の余白 */
html .rh-evcontent .event-property-gallery { margin: 24px 0; }
/* メモ：本文の画像は左右余白0 */
html .rh-evcontent__full { margin: 24px calc(var(--rh-gutter) * -1); }
html .rh-evcontent__full img { display: block; width: 100%; }

/* セクション見出し（Figma：ゴシック 23px＋下線） */
html .rh-evsec { margin-top: 64px; }
html .rh-evsec__title { padding-bottom: 14px; border-bottom: 1px solid var(--rh-blue); font-size: 23px; font-weight: 700; letter-spacing: .92px; line-height: 1.5; }

/* 物件一覧（条件で絞った物件。物件一覧と同じカード）。幅は本文より広く、物件一覧と同じ 1100・3列 */
html .rh-evprops { position: relative; left: 50%; width: min(1100px, calc(100vw - var(--rh-gutter) * 2)); transform: translateX(-50%); }
html .rh-evprops .rh-plist-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 30px; margin-top: 24px; }  /* 縦の間はカードの padding-bottom（rh-property.css 2） */

/* イベント概要（Figma：ラベル青、罫線区切り） */
html .rh-evtable { margin: 18px 0 0; }
html .rh-evtable > div { display: grid; grid-template-columns: 140px 1fr; gap: 24px; padding: 18px 0; border-bottom: 1px solid var(--rh-line-2); }
html .rh-evtable dt { color: var(--rh-blue); font-size: 14px; font-weight: 500; letter-spacing: .92px; }
html .rh-evtable dd { margin: 0; color: var(--rh-black); font-size: 14px; line-height: 22px; letter-spacing: .92px; }
html .rh-evtable a { color: var(--rh-blue); text-decoration: underline; }
/* 注釈（小さい文字） */
html .rh-evnotes { margin-top: 20px; padding: 20px 15px; border-radius: 4px; background: #f7f7f7; display: grid; gap: 6px; }
html .rh-evnotes li { position: relative; padding-left: 14px; color: #242424; font-size: 13px; line-height: 19px; }
html .rh-evnotes li::before { content: ""; position: absolute; left: 0; top: 6px; width: 6px; height: 6px; background: #242424; }
html .rh-evnotes li.is-kome { padding-left: 1em; text-indent: -1em; }   /* 「※」で始まる行は■なし */
html .rh-evnotes li.is-kome::before { display: none; }
html .rh-evnote { margin-top: 18px; font-size: 12px; color: var(--rh-text); }

/* FAQ（Figma：Q. ＋ 開閉） */
html .rh-faq { margin-top: 10px; }
html .rh-faq details { border-bottom: 1px solid var(--rh-line-2); padding: 18px 0; }
html .rh-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; cursor: pointer; list-style: none; color: var(--rh-text); font-size: 14px; font-weight: 500; line-height: 23.4px; }
html .rh-faq summary::-webkit-details-marker { display: none; }
html .rh-faq summary::after { content: "＋"; color: var(--rh-blue); font-size: 20px; flex: none; }
html .rh-faq details[open] summary::after { content: "－"; }
html .rh-faq p { padding: 14px 28px 0 0; color: #646e71; font-size: 13px; line-height: 21.6px; }

/* フォーム（来場予約・資料請求・質問／相談） */
html .rh-evform { scroll-margin-top: calc(var(--rh-header-h) + 16px); }
html .rh-evform__lead { margin-top: 14px; color: var(--rh-text); font-size: 14px; }
html .rh-evform .rh-formcard { margin-top: 20px; }

/* 関連イベント：イベント一覧と同じカード（.rh-evitem）。PC 4列（一覧より小さめ）・SP は一覧の SP と同じ横長カード（下の 767px）。
   見出しはほかのセクションと同じ形（.rh-evsec__title）、右に「イベント一覧へ →」 */
html .rh-evrelated { --rh-content: 1100px; --rh-photo-bg: #f5f3ed; margin-top: 80px; padding: 56px 0 72px; background: var(--rh-white); border-top: 1px solid var(--rh-line); }
html .rh-evrelated__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; padding-bottom: 14px; border-bottom: 1px solid var(--rh-blue); }
html .rh-evrelated__head .rh-evsec__title { padding-bottom: 0; border-bottom: 0; }
html .rh-evrelated__all { display: inline-flex; align-items: center; flex: none; min-height: 44px; margin-bottom: -10px; color: var(--rh-blue); font-size: 14px; font-weight: 700; } /* 一覧（events.html）へ */
html .rh-evrelated__all::after { content: "→"; margin-left: 6px; font-weight: 400; }
html .rh-evrelated__cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px 24px; margin-top: 28px; }
html .rh-evrelated__cards .rh-evitem__tags { margin-top: 12px; }
html .rh-evrelated__cards .rh-evitem__title { margin-top: 8px; font-size: 15px; }
html .rh-evrelated__cards .rh-evitem__meta dd { font-size: 13px; }

/* ご希望の物件（旧「気になる物件」）：フォーム共通の選択肢（.rh-choice）で出す。写真つきの選択肢はやめた */

/* 画面の下についてくる申し込みバー（PC・SP 共通）。フォームが見えたら隠す（rh-event.js） */
html .rh-page--event .rh-side { display: none; } /* 右端の共通ボタンは出さない（入口を1つにする） */
html .rh-evbar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 90; background: rgba(255, 255, 255, .97); box-shadow: 0 -4px 16px rgba(18, 53, 84, .1); transition: transform .3s ease; }
html .rh-evbar.is-hidden { transform: translateY(110%); }
html .rh-evbar__inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; max-width: calc(1100px + var(--rh-gutter) * 2); margin: 0 auto; padding: 12px var(--rh-gutter); }
html .rh-evbar__text { min-width: 0; color: var(--rh-text); font-size: 13px; }
html .rh-evbar__text strong { display: block; overflow: hidden; font-size: 15px; white-space: nowrap; text-overflow: ellipsis; }
html .rh-evbar__btn { display: inline-flex; align-items: center; justify-content: space-between; gap: 24px; flex: none; min-width: 300px; min-height: 54px; padding: 0 24px; border-radius: 4px; background: var(--rh-blue); color: var(--rh-white); font-size: 15px; font-weight: 700; }
html .rh-evbar__btn::after { content: "↓"; font-weight: 400; }
html .rh-event + .rh-toast { bottom: 100px; }

@media (max-width: 767px) {
  html .rh-evhead__title { font-size: 22px; }
  html .rh-evhead__meta div { grid-template-columns: 48px 1fr; }
  html .rh-evhead__meta dt { font-size: 12px; }
  html .rh-evhead__meta dd { font-size: 15px; }
  html .rh-evrelated { padding: 40px 0 56px; }
  html .rh-evrelated__head .rh-evsec__title { font-size: 20px; }
  html .rh-evprops .rh-plist-cards { grid-template-columns: 1fr; }
  html .rh-evbar__text { display: none; }
  /* SP：共通の下部ボタンと同じく、下に寄せて浮いたボタン1つに */
  html .rh-evbar { background: none; box-shadow: none; pointer-events: none; }
  html .rh-evbar.is-hidden { transform: translateY(calc(100% + 24px)); opacity: 0; }
  html .rh-evbar__inner { padding: 0 7px calc(7px + env(safe-area-inset-bottom)); }
  html .rh-evbar__btn { pointer-events: auto; width: 100%; min-width: 0; min-height: 48px; border-radius: 5px; box-shadow: 0 6px 16px rgba(0, 47, 99, .28), 0 1px 3px rgba(0, 47, 99, .2); }
  html .rh-evcontent { font-size: 14px; }
  html .rh-evtable > div { grid-template-columns: 72px 1fr; gap: 16px; }
  html .rh-evtable dt, html .rh-evtable dd { font-size: 13px; }
  html .rh-evguide__btn { justify-content: space-between; }
}

/* ==========================================================================
   イベント一覧（archive-event。書き出し tools/gen_event_list.py）
   幅は物件一覧と同じ 1100。カードの見出しはゴシック太字（探すページなので物件カードとそろえる）
   ========================================================================== */
html .rh-evlist { --rh-content: 1100px; --rh-photo-bg: #f5f3ed; padding-top: 48px; padding-bottom: 100px; }

/* 絞り込み：地域・種類の2軸。押すとすぐ絞り込む（ラジオをボタンの見た目に） */
html .rh-evfilter { display: grid; gap: 14px; padding: 22px 26px; border: 1px solid var(--rh-line); background: var(--rh-white); }
html .rh-evfilter__group { display: grid; grid-template-columns: 64px 1fr; align-items: center; gap: 16px; }
html .rh-evfilter__label { color: var(--rh-text); font-size: 14px; font-weight: 700; }
html .rh-evfilter__opts { display: flex; flex-wrap: wrap; gap: 8px; }
html .rh-evfilter__opt { position: relative; }
html .rh-evfilter__opt input { position: absolute; inset: 0; opacity: 0; margin: 0; cursor: pointer; }
html .rh-evfilter__opt span {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-width: 96px; min-height: 44px; padding: 6px 18px; border: 1px solid var(--rh-line); border-radius: var(--rh-r-btn);
  background: var(--rh-white); color: var(--rh-text); font-size: 14px; font-weight: 500; line-height: 1.4; text-align: center;
  transition: background-color .2s, border-color .2s, color .2s; pointer-events: none;
}
html .rh-evfilter__opt i { font-style: normal; }
html .rh-evfilter__opt small { margin-left: 8px; color: var(--rh-gray); font-family: var(--rh-en-sans); font-size: 12px; font-weight: 400; }
html .rh-evfilter__opt:hover span { border-color: var(--rh-blue); }
html .rh-evfilter__opt input:checked + span { border-color: var(--rh-blue); background: var(--rh-blue); color: var(--rh-white); }
html .rh-evfilter__opt input:checked + span small { color: rgba(255, 255, 255, .8); }
html .rh-evfilter__opt input:focus-visible + span { outline: 2px solid var(--rh-blue); outline-offset: 2px; }
html .rh-evfilter__opt.is-zero:not(:has(input:checked)) span { color: #9aa4a1; }

/* 件数 */
html .rh-evlist__head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-top: 44px; }
html .rh-evlist__count { color: var(--rh-text); font-size: 14px; }
html .rh-evlist__count b { margin-right: 4px; font-family: var(--rh-en-serif); font-size: 32px; font-weight: 400; }
html .rh-evlist__count span { margin-left: 12px; }
html .rh-evlist__order { color: var(--rh-gray); font-size: 12px; }

/* カード（開催中・開催予定） */
html .rh-evlist__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 48px 30px; margin-top: 18px; }
html .rh-evitem { position: relative; display: flex; flex-direction: column; min-width: 0; }
html .rh-evitem__media { position: relative; aspect-ratio: 1 / 1; overflow: hidden; border-radius: 4px; background: var(--rh-photo-bg); } /* 本番のアイキャッチは 1080×1080 */
html .rh-evitem__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
html .rh-evitem:hover .rh-evitem__media img { transform: scale(1.03); }
html .rh-evitem__state { position: absolute; left: 0; top: 0; padding: 5px 10px; background: var(--rh-red); color: var(--rh-white); font-size: 12px; font-style: normal; font-weight: 700; line-height: 1.4; letter-spacing: .5px; } /* 色は関連イベントのカード（Figma）とそろえる */
html .rh-evitem__state.is-soon { background: var(--rh-blue); }
html .rh-evitem__state.is-always { background: var(--rh-white); color: var(--rh-blue); }
html .rh-evitem__state.is-ended { background: rgba(39, 45, 43, .75); }
html .rh-evitem__body { display: flex; flex-direction: column; flex: 1; }
html .rh-evitem__tags { display: flex; flex-wrap: wrap; align-items: flex-start; align-self: start; gap: 6px; margin-top: 16px; }
html .rh-evitem__tags span { padding: 2px 8px; border-radius: 3px; font-size: 12px; font-weight: 500; line-height: 1.6; }
html .rh-evitem__type { background: var(--rh-soft); color: var(--rh-blue); }
html .rh-evitem__area { border: 1px solid var(--rh-line); color: var(--rh-text); }
html .rh-evitem__walkin { border: 1px solid var(--rh-blue); color: var(--rh-blue); font-weight: 700; }   /* 予約不要の札。形はほかの札と同じ */
/* 見出し：ゴシック太字。本番の長い宣伝文のタイトルでも3行で切る（全文は詳細ページ） */
html .rh-evitem__title {
  margin-top: 10px; color: var(--rh-text); font-family: var(--rh-sans); font-size: 17px; font-weight: 700; line-height: 1.6; letter-spacing: .02em;
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden;
  text-wrap: wrap; word-break: normal; overflow-wrap: anywhere;
}
html .rh-evitem__title a::after { content: ""; position: absolute; inset: 0; z-index: 1; } /* カード全体を押せる */
html .rh-evitem:hover .rh-evitem__title a { color: var(--rh-blue); }
/* タイトルの下線は左から伸ばす（「軽めのアニメーションがあると嬉しい」） */
html .rh-evitem__title a { background: linear-gradient(currentColor, currentColor) 0 100% / 0 1px no-repeat; -webkit-box-decoration-break: clone; box-decoration-break: clone; text-decoration: none !important; transition: background-size .35s ease, color .2s; }
html .rh-evitem:hover .rh-evitem__title a { background-size: 100% 1px; }
@media (prefers-reduced-motion: reduce) { html .rh-evitem__title a { transition: none; } }
html .rh-evitem__title a:focus-visible { outline: none; }
html .rh-evitem:has(.rh-evitem__title a:focus-visible) { outline: 2px solid var(--rh-blue); outline-offset: 6px; border-radius: 4px; }
html .rh-evitem__meta { display: grid; gap: 4px; margin: 12px 0 0; }
html .rh-evitem__meta div { display: grid; grid-template-columns: 52px 1fr; gap: 8px; }
html .rh-evitem__meta dt { color: var(--rh-gray); font-size: 12px; line-height: 1.75; }
html .rh-evitem__meta dd { margin: 0; color: var(--rh-text); font-size: 14px; line-height: 1.6; }
html .rh-evitem__left { display: inline-block; margin-left: 8px; padding: 0 6px; border-radius: 3px; background: #fdecec; color: #c41a1a; font-size: 12px; font-weight: 700; line-height: 1.6; vertical-align: 1px; }
html .rh-evitem__body > .rh-evitem__meta { padding-bottom: 16px; }
/* 物件の数＋詳しく見る：同じ行のカードで下にそろえる */
html .rh-evitem__foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 44px; margin-top: auto; padding-top: 12px; border-top: 1px solid var(--rh-line); }
html .rh-evitem__props { color: var(--rh-text); font-size: 13px; }
html .rh-evitem__props b { margin: 0 1px; font-family: var(--rh-en-sans); font-size: 16px; }
html .rh-evitem__more { margin-left: auto; color: var(--rh-blue); font-size: 13px; font-weight: 700; white-space: nowrap; }
html .rh-evitem__more::after { content: "→"; margin-left: 6px; font-weight: 400; }

/* 0件のとき */
html .rh-evempty { margin-top: 18px; padding: 48px 24px; background: var(--rh-soft); text-align: center; }
html .rh-evempty h2 { color: var(--rh-text); font-size: 18px; font-weight: 700; line-height: 1.6; }
html .rh-evempty p { margin-top: 10px; color: var(--rh-gray); font-size: 14px; line-height: 1.8; }
html .rh-evempty__actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
html .rh-evbtn {
  display: inline-flex; align-items: center; justify-content: space-between; gap: 16px; min-width: 220px; min-height: 48px; padding: 10px 20px;
  border: 1px solid var(--rh-blue); border-radius: var(--rh-r-btn); background: var(--rh-blue); color: var(--rh-white); font-size: 14px; font-weight: 700;
}
html .rh-evbtn:hover { background: #004489; }
html .rh-evbtn--line { justify-content: center; background: var(--rh-white); color: var(--rh-blue); }
html .rh-evbtn--line:hover { background: var(--rh-soft); }

/* 終了したイベント（たたむ。写真・タイトル・日付だけ） */
html .rh-evended { margin-top: 72px; border-top: 1px solid var(--rh-line); border-bottom: 1px solid var(--rh-line); }
html .rh-evended summary {
  display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 64px; padding: 0 4px;
  color: var(--rh-text); font-size: 15px; font-weight: 700; cursor: pointer; list-style: none;
}
html .rh-evended summary::-webkit-details-marker { display: none; }
html .rh-evended summary::after { content: ""; flex: none; width: 8px; height: 8px; margin-right: 6px; border-right: 1.5px solid var(--rh-blue); border-bottom: 1.5px solid var(--rh-blue); transform: translateY(-3px) rotate(45deg); transition: transform .2s; }
html .rh-evended[open] summary::after { transform: translateY(2px) rotate(-135deg); }
html .rh-evended summary:hover { color: var(--rh-blue); }
/* 終了したイベント：開催中と同じカード。写真の上に暗い幕と「終了しました」（本番の一覧と同じ見せ方） */
html .rh-evended__cards { margin-top: 8px; padding-bottom: 40px; }
html .rh-evitem__over { display: none; }
html .rh-evended .rh-evitem__over { position: absolute; inset: 0; z-index: 1; display: flex; align-items: center; justify-content: center; background: rgba(30, 34, 33, .55); color: var(--rh-white); font-size: 18px; font-weight: 700; letter-spacing: .1em; }
html .rh-evended .rh-evitem__state { display: none; }
html .rh-evended .rh-evitem:hover .rh-evitem__media img { transform: none; }

@media (max-width: 1100px) {
  html .rh-evlist__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html .rh-evrelated__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  html .rh-evlist { padding-top: 24px; padding-bottom: 64px; }
  html .rh-evfilter { gap: 16px; padding: 16px; }
  html .rh-evfilter__group { grid-template-columns: 1fr; gap: 8px; }
  html .rh-evfilter__label { font-size: 13px; }
  html .rh-evfilter__opts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
  html .rh-evfilter__opt span { width: 100%; min-width: 0; min-height: 48px; padding: 4px 6px; font-size: 13px; word-break: keep-all; overflow-wrap: anywhere; }
  html .rh-evfilter__opt small { margin-left: 4px; }
  html .rh-evlist__head { margin-top: 28px; }
  html .rh-evlist__count b { font-size: 28px; }
  html .rh-evlist__count span { margin-left: 8px; }
  /* SP：2列のカード（写真が上に大きく、その下に種類・地域、タイトル、開催日）。写真で何のイベントか分かるように（カバヤの一覧を参考） */
  html .rh-evlist__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 12px; margin-top: 12px; }
  html .rh-evlist__cards .rh-evitem__body { padding-top: 10px; }
  html .rh-evlist__cards .rh-evitem__tags { gap: 4px; margin-top: 0; }
  html .rh-evlist__cards .rh-evitem__tags span { padding: 1px 6px; font-size: 11px; }
  html .rh-evlist__cards .rh-evitem__title { margin-top: 6px; font-size: 14px; line-height: 1.5; -webkit-line-clamp: 3; }
  html .rh-evlist__cards .rh-evitem__meta { margin: 6px 0 0; padding: 0; }
  html .rh-evlist__cards .rh-evitem__meta div { display: block; }
  html .rh-evlist__cards .rh-evitem__meta dt { font-size: 11px; line-height: 1.5; }
  html .rh-evlist__cards .rh-evitem__meta dd { font-size: 12.5px; line-height: 1.5; }
  html .rh-evitem__state { padding: 3px 7px; font-size: 11px; }
  html .rh-evhead .rh-evitem__state { padding: 2px 8px; font-size: 12px; }   /* タイトルまわりは小さくしない */
  html .rh-evempty { padding: 32px 16px; }
  html .rh-evempty h2 { font-size: 16px; }
  html .rh-evempty__actions { flex-direction: column; }
  html .rh-evbtn { width: 100%; min-width: 0; }
  html .rh-evended { margin-top: 48px; }
  html .rh-evended .rh-evitem__over { font-size: 12px; letter-spacing: .05em; }
}

/* ---------- 物件の帯：画面の幅いっぱいに淡い地を敷き、カードを白い面にして1枚ずつ分かるように。
   1〜2件のときも中央ぞろえ（auto-fit で空いた列を詰め、justify-content: center） ---------- */
html .rh-evprops {
  left: 50%; width: 100vw; transform: translateX(-50%);
  margin-top: 64px; margin-bottom: 64px; padding: 56px 0 64px; background: var(--rh-soft);
}
html .rh-evprops > .rh-evsec__title,
html .rh-evprops > .rh-plist-cards { width: min(1100px, calc(100vw - var(--rh-gutter) * 2)); margin-left: auto; margin-right: auto; }
html .rh-evprops .rh-plist-cards { grid-template-columns: repeat(auto-fit, minmax(0, 346px)); justify-content: center; gap: 30px; margin-bottom: 0; }
html .rh-evprops .rh-pcard { row-gap: 0; padding: 12px 12px 20px; border-radius: 6px; background: var(--rh-white); box-shadow: 0 2px 10px rgba(18, 53, 84, .06); }
@media (max-width: 767px) {
  html .rh-evprops { margin-top: 48px; margin-bottom: 48px; padding: 40px 0 48px; }
  html .rh-evprops .rh-plist-cards { grid-template-columns: minmax(0, 1fr); gap: 20px; }
}
@media (max-width: 767px) {
  /* 件数の行：狭い幅で単語の途中で折れないように */
  html .rh-evlist__head { flex-wrap: wrap; row-gap: 2px; }
  html .rh-evlist__count span, html .rh-evlist__order { white-space: nowrap; }
}

/* ---------- 絞り込みを小さく・カードの開催日を見やすく ---------- */
html .rh-evfilter { gap: 10px; padding: 16px 20px; }
html .rh-evfilter__group { grid-template-columns: 40px 1fr; gap: 12px; }
html .rh-evfilter__label { font-size: 13px; }
html .rh-evfilter__opts { gap: 6px; }
html .rh-evfilter__opt span { min-width: 0; min-height: 36px; padding: 4px 14px; border-radius: 999px; font-size: 13px; }
html .rh-evfilter__opt small { margin-left: 4px; font-size: 11px; }
/* カードの開催日：ラベルを外し、カレンダーの印＋短い日付を1行で */
html .rh-evitem__meta div { display: flex; align-items: center; gap: 6px; }
html .rh-evitem__meta dt { position: relative; width: 14px; height: 14px; flex: none; overflow: hidden; color: transparent; font-size: 0; }
html .rh-evitem__meta dt::before { content: ""; position: absolute; inset: 1px; border: 1.5px solid var(--rh-blue); border-top-width: 3px; border-radius: 2px; }
html .rh-evitem__meta dd { font-family: var(--rh-en-sans); font-size: 14px; font-weight: 700; letter-spacing: .02em; white-space: nowrap; }
html .rh-evitem__meta dd small { font-family: var(--rh-sans); font-size: 11px; font-weight: 500; }
@media (max-width: 767px) {
  html .rh-evfilter { gap: 10px; padding: 12px 14px; }
  html .rh-evfilter__group { grid-template-columns: 34px 1fr; gap: 8px; }
  html .rh-evfilter__label { font-size: 12px; }
  html .rh-evfilter__opts { display: flex; flex-wrap: wrap; gap: 6px; }
  html .rh-evfilter__opt span { width: auto; min-height: 34px; padding: 3px 12px; font-size: 12.5px; white-space: nowrap; }
  html .rh-evlist__cards .rh-evitem__meta div { display: flex; }
  html .rh-evlist__cards .rh-evitem__meta dd { font-size: 13px; }
  html .rh-evlist__cards .rh-evitem__meta dd small { font-size: 10.5px; }
}
html .rh-evfilter__group { align-items: start; }
html .rh-evfilter__label { line-height: 36px; }
@media (max-width: 767px) { html .rh-evfilter__label { line-height: 34px; } }
/* ページ末の注記（FAQ の下・フォームの前。10/5） */
/* 下のバーのボタンの飛び先がほかのページのとき */
html .rh-evbar__btn--go::after { content: "→"; }
/* 終了したイベント：フォームの代わりに出す案内（最終確認 10/15）。見た目は一覧の0件のときと同じ */
html .rh-evempty.rh-evclosed { margin-top: 48px; }
@media (max-width: 767px) { html .rh-evclosed p { text-align: left; } }

/* タイトルの下の申し込みボタン（下のバーと同じ文言・飛び先） */
html .rh-evhead__cta { margin-top: 20px; text-align: center; }
html .rh-evhead__btn { display: inline-flex; align-items: center; justify-content: space-between; gap: 24px; min-width: 320px; min-height: 54px; padding: 0 24px; border-radius: 4px; background: var(--rh-blue); color: var(--rh-white); font-size: 15px; font-weight: 700; text-decoration: none; }
html .rh-evhead__btn::after { content: "↓"; font-weight: 400; }
html .rh-evhead__btn--go::after { content: "→"; }
@media (hover: hover) { html .rh-evhead__btn:hover { background: var(--rh-blue-dark, #003f7d); color: var(--rh-white); } }
@media (max-width: 767px) { html .rh-evhead__btn { display: flex; width: 100%; min-width: 0; min-height: 50px; } }


/* 本文の画像の余白（清水 10/18 に組み直し）
   標準：スマホ・PC の右の列（スマホの幅）では、画像は左右いっぱい・上下に余白（上 2%・下 3%。今の本番の .entry img と同じ）。PC の本文の幅（PCファースト）では本文の幅の中
   画像のブロックの「スタイル」で変えられる（rh/js/rh-props-block.js）：
     上下余白なし（is-style-rh-flush）＝上下の画像とぴったりくっつく
     左右に余白（is-style-rh-inset）＝スマホでも左右に余白（本文の幅の中）
   前の「左右いっぱい」（rh-bleed・rh-flush-bleed）は標準と同じ（rh-flush-bleed は上下余白なしとして扱う）。物件カード・物件ギャラリー・スライドの中は除く */
html .rh-evcontent img:not(.rh-evprops *):not(.event-property-gallery *):not(.rh-evslider *) { margin-top: 2%; margin-bottom: 3%; }
html .rh-evcontent .wp-block-button:not(.rh-evprops *) { margin-block: 1% 5%; }
html .rh-evcontent :is(.is-style-rh-flush, .is-style-rh-flush-bleed), html .rh-evcontent :is(.is-style-rh-flush, .is-style-rh-flush-bleed) figure { margin-top: 0; margin-bottom: 0; }
html .rh-evcontent :is(.is-style-rh-flush, .is-style-rh-flush-bleed) img:not(.rh-evprops *):not(.event-property-gallery *):not(.rh-evslider *) { display: block; margin-top: 0; margin-bottom: 0; }   /* 上の「標準の余白」と同じ強さにしないと負けていた（10/18） */
html body .rh-page .rh-evcontent figure > a:has(> img) { display: block; }   /* リンクつきの画像：a が文字の行になって、画像の下に約9pxのすき間が出ていた（10/18） */
html .rh-evcontent > :has(+ :is(.is-style-rh-flush, .is-style-rh-flush-bleed)) img:not(.rh-evprops *):not(.event-property-gallery *):not(.rh-evslider *) { margin-bottom: 0; }   /* 上下余白なしの画像は、隣の画像ともくっつける */
html .rh-evcontent > :is(.is-style-rh-flush, .is-style-rh-flush-bleed) + * img:not(.rh-evprops *):not(.event-property-gallery *):not(.rh-evslider *) { margin-top: 0; }
@media (max-width: 767px) {   /* スマホ（PC の右の列にも rh-ev3-sp.css で同じものが効く）：画像は左右いっぱい */
  html .rh-evcontent > :is(.wp-block-image, figure):not(.is-style-rh-inset) { margin-left: calc(var(--rh-gutter) * -1); margin-right: calc(var(--rh-gutter) * -1); }
  html .rh-evcontent > :is(.wp-block-image, figure):not(.is-style-rh-inset) figure, html .rh-evcontent > figure.wp-block-image:not(.is-style-rh-inset) { display: block; width: auto; max-width: none; }
  html .rh-evcontent > :is(.wp-block-image, figure):not(.is-style-rh-inset) img:not(.rh-evprops *) { display: block; width: 100% !important; max-width: none; height: auto !important; margin-left: 0; margin-right: 0; }
}

/* ==========================================================================
   スマホファースト（見せ方＝sp）
   PC（1024px〜）：左右2つ。左＝文字の看板（札・タイトル・日程・申し込みの手段。画面に固定）、右＝スマホ幅（--rh-ev3-w）の白い面にアイキャッチ〜フォーム（右寄せ）
     背景＝アイキャッチの1枚目を大きくぼかし、白をかぶせる（画面に固定。イベントごとの色合いが出る）
     右端の追従ボタン・LINE・下のバーは、左に申し込みの手段があるので出さない
   1024px 未満：今までと同じ1列。HTML は 左（パンくず・タイトル）→ 右（アイキャッチ・本文…）の順なので、order で パンくず → アイキャッチ → タイトル → 本文 に並べ直す
   ========================================================================== */
/* --- どの幅でも共通：背景・アイキャッチのカード・申し込みの手段・本文の白い面（スマホも PC の右の列と同じ見え方に。清水 10/18） --- */
html .rh-page--ev3 .rh-event { --rh-ev3-w: 480px; background: var(--rh-soft); }   /* 右の幅はここだけで変える */
html .rh-page--ev3 .rh-event__spacer { display: none; }
html .rh-page--ev3 .rh-evrelated { margin-top: 0; }   /* 背景と関連イベントのあいだに淡い青の帯を出さない */
html .rh-event__body.rh-ev3 { position: relative; isolation: isolate; clip-path: inset(0); }   /* 背景（position: fixed）をこの中だけに見せる */
html .rh-ev3__bg { position: fixed; inset: -240px;   /* ぼかすと絵の端も薄くなるので、端は画面の外に出す */ z-index: -1; background: center / cover no-repeat; filter: blur(40px) saturate(1.2); transform: translateZ(0); }
html .rh-ev3__bg::after { content: ""; position: absolute; inset: 0; background: rgba(244, 248, 251, .75); }   /* 白のかぶせ 75%・ぼかし 40px（清水 10/18） */
html .rh-ev3__crumbs { margin: 0 0 16px; }
html .rh-ev3__crumbs ol { padding: 0; }
html .rh-ev3 .rh-evhead__cta { display: none; }   /* 予約は申し込みの手段に */
html .rh-ev3__card { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; max-width: 420px; }   /* ボタンは縦に1列（文言が長くなっても崩れない） */
html .rh-ev3__card[hidden] { display: none; }
html .rh-ev3__btn { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 50px; padding: 0 16px; border-radius: 6px; font-size: 14px; font-weight: 700; line-height: 1.35; text-decoration: none; transition: filter .2s; }
html .rh-ev3__btn::after { content: "→"; font-weight: 400; }
html .rh-ev3__btn--main { min-height: 58px; padding: 0 22px; background: var(--rh-blue); color: var(--rh-white); font-size: 16px; box-shadow: 0 8px 20px rgba(0, 84, 166, .25); }
html .rh-ev3__btn--sub { background: var(--rh-white); color: var(--rh-blue); box-shadow: inset 0 0 0 1px var(--rh-line-blue); }
html .rh-ev3__btn--line { background: #06c755; color: var(--rh-white); }
html .rh-ev3__btn--line small { display: block; font-size: 10.5px; font-weight: 500; opacity: .9; }
html .rh-ev3__tel { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 14px; margin-top: 10px; }
html .rh-ev3__tel small { color: var(--rh-card-lead); font-size: 12px; }
html .rh-ev3__tel small:first-child { flex-basis: 100%; }
html .rh-ev3__tel a { color: var(--rh-dark); font-family: var(--rh-en-sans); font-size: 26px; font-weight: 700; letter-spacing: .02em; text-decoration: none; }
@media (hover: hover) { html .rh-ev3__btn:hover { filter: brightness(1.08); } }
/* アイキャッチは本文と切り離した1枚のカード */
html .rh-ev3__right { min-width: 0; }
html .rh-ev3 .rh-evslider { margin: 0 0 20px; border-radius: 14px; overflow: clip; box-shadow: 0 10px 40px rgba(18, 53, 84, .1); background: var(--rh-white); }
html .rh-ev3 .rh-evslider .rh-evslider__track img { width: 100%; max-height: none; border-radius: 0; }
/* 本文の白い面：スマホの画面。画像は端から端まで、文章は内側に 20px（中の部品は rh-ev3-sp.css でスマホの指定が効く） */
html .rh-ev3__main { container: rh-sp / inline-size; --rh-gutter: 20px; min-width: 0; padding: 0 var(--rh-gutter) 48px; border-radius: 14px; background: var(--rh-white); box-shadow: 0 10px 40px rgba(18, 53, 84, .1); overflow: clip; }
html .rh-ev3__main > .rh-evcontent:first-child > :first-child, html .rh-ev3__main > .rh-evcontent:first-child > :first-child img { margin-top: 0; }   /* 本文の1枚目は白い面の上端から */
html .rh-ev3__main .rh-evcontent { margin-top: 0; }
html .rh-ev3__main .rh-evcontent:first-of-type > :first-child:not(figure):not(.wp-block-image) { margin-top: 24px; }
html .rh-ev3__main .rh-evcontent h2:not(.rh-evprops *) { font-size: 21px; }
html .rh-ev3__main .rh-evsec { margin-top: 56px; }
html .rh-ev3__main .rh-evsec__title { font-size: 19px; }
html .rh-ev3__main .rh-evtable div { grid-template-columns: 6em minmax(0, 1fr); }
html .rh-ev3__main .rh-evprops { left: auto; width: auto; transform: none; margin: 40px calc(var(--rh-gutter) * -1); padding: 36px 0 40px; }
html .rh-ev3__main .rh-evprops > .rh-evsec__title { width: auto; padding: 0 20px; }
html .rh-ev3__main .rh-evprops > .rh-plist-cards {   /* 物件は縦に並べる（横に流すと2件目から見えない。清水 10/17） */
  grid-template-columns: minmax(0, 1fr); justify-content: stretch; gap: 16px; width: auto; margin: 20px 0 0; padding: 0 20px;
}
html .rh-ev3__main .rh-formcard { padding: 22px 16px 26px; }
html .rh-ev3__main .rh-choices, html .rh-ev3__main .rh-choices--3 { grid-template-columns: 1fr; }
html .rh-ev3__main .rh-evempty__actions { flex-direction: column; }
html .rh-ev3__main .wp-block-columns { flex-direction: column; }
html .rh-ev3__main .wp-block-column { flex-basis: auto !important; width: 100%; }

/* --- 1024px 未満（スマホ・タブレット）：1列。パンくず → アイキャッチ → 札・タイトル・日程 → 申し込みの手段 → 本文の白い面。幅は 600px まで --- */
@media (max-width: 1023px) {
  /* アイキャッチと本文の白い面は横幅いっぱい（アイキャッチはヘッダーにベタ付け）。背景のぼかしは、そのあいだのタイトル・日程・ボタンの帯だけに見える。パンくずはページの一番下（清水 10/18） */
  html .rh-event__body.rh-ev3 { display: flex; flex-direction: column; max-width: 600px; margin: 0 auto; padding: var(--rh-header-h) var(--rh-gutter) 0; }
  html .rh-ev3__info, html .rh-ev3__panel, html .rh-ev3__right { display: contents; }
  html .rh-ev3 .rh-evslider { order: 1; margin: 0 calc(var(--rh-gutter) * -1); border-radius: 0; box-shadow: none; }
  html .rh-ev3 .rh-evhead { order: 2; margin-top: 24px; }
  html .rh-ev3 .rh-ev3__card { order: 3; margin: 20px 0 0; max-width: none; gap: 8px; }
  html .rh-ev3__main { order: 4; margin: 32px calc(var(--rh-gutter) * -1) 0; border-radius: 0; box-shadow: none; }
  html .rh-ev3 .rh-ev3__crumbs { order: 5; margin: 0 calc(var(--rh-gutter) * -1); padding: 14px var(--rh-gutter); background: var(--rh-white); border-top: 1px solid var(--rh-line); }
  /* 文字と余白はスマホ用の値（作りは PC と同じ） */
  html .rh-ev3 .rh-evhead__title { margin-top: 12px; font-size: 22px; line-height: 1.45; }
  html .rh-ev3 .rh-evhead__meta { margin-top: 12px; }
  html .rh-ev3 .rh-evhead__meta dd { font-size: 15px; font-weight: 700; }
  html .rh-ev3__btn { min-height: 46px; }
  html .rh-ev3__btn--main { min-height: 52px; font-size: 15px; }
  html .rh-ev3__tel a { font-size: 22px; }
}

/* --- PC（1024px〜）：左右2つ。左＝文字の看板（画面に固定）、右＝アイキャッチと本文（右寄せ） --- */
@media (min-width: 1024px) {
  html .rh-event__body.rh-ev3 {
    display: grid; grid-template-columns: minmax(0, 1fr) var(--rh-ev3-w);
    max-width: none; margin: 0; padding: var(--rh-header-h) clamp(64px, 13vw, 300px) 96px 0;   /* 上はヘッダーの分（ヘッダーの下も背景を通す）。右は広めに空けて本文を少し内側へ */
  }
  html .rh-ev3__info { min-width: 0; }
  html .rh-ev3__panel {
    position: sticky; top: var(--rh-ev3-top, calc(var(--rh-header-h) + 8vh));   /* 止める位置は rh-event.js が画面の高さから決める（上下の真ん中。入りきらないときは下の端）。看板の中ではスクロールさせない */
    width: 100%; max-width: 640px; margin: 0 auto; padding: 32px clamp(32px, 4.5vw, 72px);
  }
  html .rh-ev3__crumbs { margin: 0 0 36px; }
  html .rh-ev3__panel .rh-evhead { margin: 0; }
  html .rh-ev3__panel .rh-evhead__title { margin-top: 18px; font-size: clamp(24px, 1.2vw + 12px, 32px); line-height: 1.45; letter-spacing: .03em; word-break: auto-phrase; text-wrap: pretty; }   /* 言葉の切れ目で折る（Chrome・Edge） */
  html .rh-ev3__panel .rh-evhead__meta { gap: 8px; margin-top: 22px; }
  html .rh-ev3__panel .rh-evhead__meta div { grid-template-columns: 72px 1fr; }
  html .rh-ev3__panel .rh-evhead__meta dt { font-size: 14px; }
  html .rh-ev3__panel .rh-evhead__meta dd { font-size: 18px; font-weight: 700; }
  html .rh-ev3__card { margin-top: 36px; }
  html .rh-ev3__right { margin-top: 32px; }
  html .rh-page--ev3 .rh-evbar, html .rh-page--ev3 .rh-side, html .rh-page--ev3 .rh-line { display: none !important; }
}
/* リンクのある画像（スライド・本文）：マウスを載せると少し薄く。押せると分かるように（清水 10/17） */
html .rh-evslider__link img, html .rh-evcontent a:not(.rh-pcard *) img { transition: opacity .2s; }
@media (hover: hover) {
  html .rh-evslider__link:hover img, html .rh-evcontent a:not(.rh-pcard *):hover img { opacity: .8; }
}

/* イベントの物件カード：セミオーダーの締切（rh_card の $event。清水 10/17） */
html .rh-pcard__semi { margin-top: 12px; padding: 10px 12px; border-radius: 4px; background: var(--rh-soft); }
html .rh-pcard__semi p { color: var(--rh-dark); font-size: 12px; font-weight: 700; }
html .rh-pcard__semi ul { display: grid; gap: 4px; margin-top: 6px; }
html .rh-pcard__semi li { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; font-size: 13px; line-height: 1.5; }
html .rh-pcard__semi li b { padding: 0 6px; border-radius: 2px; background: var(--rh-dark); color: var(--rh-white); font-size: 11px; }
html .rh-pcard__semi li span { color: var(--rh-red); font-family: var(--rh-en-sans); font-weight: 700; }
html .rh-pcard__semi li small { color: var(--rh-gray); font-size: 12px; }
/* イベントのカードは段をそろえない（subgrid の8行に、特徴と締切を足すと重なった）。上から順に積む */
html .rh-evprops .rh-pcard { display: flex; flex-direction: column; grid-row: auto; }
html .rh-evprops .rh-pcard__media { flex: none; }
html .rh-pcard__evx .rh-pcard__points { margin-top: 12px; }

/* イベントのカードの「この物件を詳しく見る」（清水 10/18） */
html .rh-pcard__more { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 48px; margin-top: 16px; padding: 0 16px; border: 1px solid var(--rh-blue); border-radius: 4px; background: var(--rh-white); color: var(--rh-blue); font-size: 14px; font-weight: 700; text-decoration: none; transition: background-color .2s, color .2s; }
@media (hover: hover) { html .rh-pcard__more:hover { background: var(--rh-blue); color: var(--rh-white); } }

/* スライド：高さは今のスライドに合わせる（rh-event.js の 2。高さの違う写真・リンクの帯の有無で、短いスライドの上下に白い空きが出ていた）。
   リンクの帯は Instagram 広告の「詳しくはこちら」の形：写真の下に横幅いっぱいの帯、文字は左・矢印は右（清水 10/18） */
html .rh-evslider__track { align-items: flex-start; transition: height .25s ease; }
html .rh-evslider__link { width: 100%; }
html .rh-evslider__link img { width: 100%; }
html .rh-evslider__bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 48px; padding: 0 16px; border-top: 1px solid var(--rh-line); background: var(--rh-white); }
html .rh-evslider__count { color: var(--rh-card-lead); font-family: var(--rh-en-sans); font-size: 13px; letter-spacing: .05em; }
html .rh-evslider__cta { display: inline-flex; align-items: center; gap: 10px; margin-left: auto; padding: 8px 0; color: var(--rh-blue); font-size: 14px; font-weight: 700; line-height: 1.4; text-decoration: none; }
html .rh-evslider__cta::after { content: ""; width: 7px; height: 7px; border-top: 2px solid currentColor; border-right: 2px solid currentColor; transform: rotate(45deg); }
html .rh-evslider__cta.is-form::after { transform: rotate(135deg); margin-top: -4px; }
html .rh-evslider__cta[hidden] { display: none; }
html .rh-evslider__bar { transition: background-color .2s; }
html .rh-evslider__cta, html .rh-evslider__count { transition: color .2s; }
@media (hover: hover) {   /* 押せる写真・帯のリンクにマウスを載せると、帯が青に反転（清水 10/18） */
  html .rh-evslider:has(.rh-evslider__link:hover, .rh-evslider__cta:hover) .rh-evslider__bar { background: var(--rh-blue); }
  html .rh-evslider:has(.rh-evslider__link:hover, .rh-evslider__cta:hover) :is(.rh-evslider__cta, .rh-evslider__count) { color: var(--rh-white); }
}
@media (min-width: 1024px) { html .rh-ev3__right > .rh-evslider .rh-evslider__bar { padding: 0 20px; } }
html .rh-evslider__btn { top: calc(50% - 24px); }   /* 矢印は帯を除いた写真の真ん中に */

/* 右の列（スマホの幅）では、本文の「カラム」ブロックを縦に積む（PC の幅だと横に並んだまま細くなり、表が1文字ずつ折れていた。10/18 鬼無町） */

/* ピックアップ：種類・地域の札の並びの先頭に、青の太字の英字だけ（地も枠も付けない。清水 10/18） */
html .rh-evitem__pick { align-self: center; color: var(--rh-blue); font-family: var(--rh-en-sans); font-size: 11px; font-weight: 700; letter-spacing: .12em; }
/* スライドの間のすき間（12px）をなくす：矢印は1画面ぶん送るので、すき間の分ずつ写真がずれていった（清水 10/18 スマホで気づいた） */
html .rh-evslider__track { gap: 0; }
html .rh-evslider__bar[hidden] { display: none; }

/* 写真の拡大（本多 10/27：間取り図を拡大したい人が多い）。窓は物件ページと同じ（rh-property.css の .rh-zoom・rh-property.js の 7.）
   物件カード：写真は押すと拡大。カード全体のリンクはやめ、物件ページへは名前と「この物件を詳しく見る」（清水 10/28） */
html .rh-pcard__zoom { display: block; width: 100%; height: 100%; padding: 0; border: 0; background: none; cursor: zoom-in; }
html .rh-pcard__zoomhint { position: absolute; right: 10px; bottom: 10px; z-index: 2; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: rgba(255, 255, 255, .92); color: var(--rh-blue); box-shadow: 0 2px 8px rgba(0, 0, 0, .12); pointer-events: none; }
html .rh-pcard__zoomhint-icon { width: 18px; height: 18px; }
@media (hover: hover) {   /* カード全体のホバー（rh-pcard.css）をやめ、押せる所だけ反応させる。後ろの3行は前の行より強くするため .rh-pcard を挟む */
  html .rh-evprops .rh-pcard:hover .rh-pcard__place b, html .rh-evprops .rh-pcard:hover .rh-pcard__place a { color: inherit; }
  html .rh-evprops .rh-pcard:hover .rh-pcard__title a, html .rh-evprops .rh-pcard:hover h3.rh-pcard__place a { text-decoration: none; }
  html .rh-evprops .rh-pcard:hover .rh-pcard__media img { transform: none; }
  html .rh-evprops .rh-pcard .rh-pcard__place a:hover, html .rh-evprops .rh-pcard .rh-pcard__place a:hover b, html .rh-evprops .rh-pcard .rh-pcard__title a:hover { color: var(--rh-blue); }
  html .rh-evprops .rh-pcard .rh-pcard__title a:hover, html .rh-evprops .rh-pcard h3.rh-pcard__place a:hover { text-decoration: underline; text-underline-offset: 3px; }
  html .rh-evprops .rh-pcard .rh-pcard__media:hover img { transform: scale(1.03); }
}
/* 物件ギャラリー：写真の右下に虫めがね */
html .event-property-gallery-img[data-rh-zoom] { position: relative; cursor: zoom-in; }
html .event-property-gallery-img[data-rh-zoom]:focus-visible { outline: 2px solid var(--rh-blue); outline-offset: 2px; }
