/* J's様 公式サイト｜KINO の部品（2026-10-29）
   AI 案内係（右下の「質問」）／吉村さん・本丸さんの空き／クーポン／スタイル写真／口コミ評価
   2026-10-29 岩田さん「公式サイト側に合わせてください」：公式サイトの実測値に合わせた
     文字＝#4c3e39・Noto Sans JP（見出しは Yu Gothic 太字・字間 .15em）／差し色＝#bf4141（WEB予約）／線＝1px #ccc（店舗情報の区切り）
     見出し＝サイトの .tit_basic（SALON・GALLERY と同じ細い大きな英字）をそのまま使う
     補助のリンク＝サイトの a.top_viewmore（赤い丸＋下線。PROFILE・VIEW MORE と同じ）をそのまま使う
     予約ボタン＝WEB予約（.abbt_rs a.abbt_web）と同じ形を .jk-rsv で再現（幅だけ自由にした）
     角は四角／影はボタンだけ（WEB予約と同じ 0 0 4px）
   接頭辞 jk- で既存の WordPress の CSS とぶつからないようにしている */
:root {
  --jk-ink: #4c3e39; --jk-line: #ccc; --jk-pale: #f6f4f2; --jk-red: #bf4141; --jk-mute: #6f625c;
  --jk-ja: "Yu Gothic", 游ゴシック, YuGothic, "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
}
.jk { font-family: "Noto Sans JP", "Yu Gothic", YuGothic, sans-serif; color: var(--jk-ink); line-break: strict; box-sizing: border-box; }
.jk *, .jk *::before, .jk *::after { box-sizing: border-box; }
/* 初期化は強さを「クラス1つ分」にとどめる（.jk p だと個別の余白指定より強く、間がすべて0pxになった＝2026-10-29） */
.jk :where(h2, h3, p, ul) { margin: 0; }
.jk :where(ul) { padding: 0; list-style: none; }
.jk .nw { white-space: nowrap; }

/* ---------- 差し込みの枠（サイトの「SALON」と同じ組み）---------- */
.jk-live { padding: 20px 0 0; }
.jk-sec { max-width: 1000px; margin: 0 auto 100px; padding: 0 20px; }
.jk .jk-tit { text-align: center; margin: 0 0 14px; line-height: 1.2; }
.jk-sub { font-family: var(--jk-ja); font-size: 16px; font-weight: 700; letter-spacing: .15em; text-align: center; line-height: 1.8; margin: 0 0 40px !important; text-wrap: balance; }
.jk-lead { font-size: 14px; line-height: 1.9; text-align: center; max-width: 36em; margin: -24px auto 40px !important; text-wrap: pretty; }
.jk-note { font-size: 12px; line-height: 1.8; color: var(--jk-mute); text-align: center; margin-top: 24px !important; text-wrap: pretty; }
@media (max-width: 767px) {
  .jk-sec { margin-bottom: 72px; padding: 0 16px; }
  .jk-sub { font-size: 14px; margin-bottom: 28px !important; }
  .jk-lead { font-size: 13px; margin: -14px auto 28px !important; }
}

/* ---------- サイトの補助リンク（a.top_viewmore）をこの中で使う時の調整：日本語は Noto Sans JP で ---------- */
.jk a.top_viewmore { font-family: Roboto, "Noto Sans JP", sans-serif; font-weight: 700; color: var(--jk-ink); text-decoration: none; }
.jk a.top_viewmore span { white-space: nowrap; }

/* ---------- 予約ボタン（WEB予約と同じ形）---------- */
.jk-rsv { display: block; position: relative; overflow: hidden; width: 100%; max-width: 300px; padding: 20px; background: var(--jk-red); color: #fff !important; font-family: var(--jk-ja); font-weight: 700; font-size: 16px; line-height: 1; letter-spacing: .08em; text-align: left; text-decoration: none; box-shadow: 0 0 4px rgba(0, 0, 0, .2); }
.jk-rsv span { display: block; position: relative; z-index: 3; padding-right: 80px; }
.jk-rsv span::before { content: ""; position: absolute; right: 0; bottom: 3px; width: 70px; height: 1px; background: #fff; transition: .5s; }
.jk-rsv span::after { content: ""; position: absolute; right: 0; bottom: 6px; width: 8px; height: 1px; background: #fff; transform: rotate(35deg); transition: .5s; }
.jk-rsv::before { content: ""; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: #fff; transition: left .5s; z-index: 2; }
.jk-rsv:hover { color: var(--jk-red) !important; }
.jk-rsv:hover::before { left: 0; }
.jk-rsv:hover span::before, .jk-rsv:hover span::after { background: var(--jk-red); }

/* ---------- 吉村さん・本丸さん（スタッフ一覧と同じ：写真・太字の名前・小さな役職・PROFILE）---------- */
.jk-people { display: grid; grid-template-columns: 1fr; border-top: 1px solid var(--jk-line); }
.jk-person { display: grid; align-content: start; grid-template-columns: 110px 1fr; gap: 0 20px; padding: 28px 0; border-bottom: 1px solid var(--jk-line); }
.jk-person__ph { width: 110px; aspect-ratio: 3 / 4; height: auto; object-fit: cover; display: block; }
.jk-person__who { align-self: center; }
.jk-person__name { font-family: var(--jk-ja); font-size: 17px; font-weight: 700; letter-spacing: .15em; line-height: 1.5; }
.jk-person__role { font-family: var(--jk-ja); font-size: 11px; letter-spacing: .15em; line-height: 1.8; margin-top: 6px !important; }
.jk-person__prof { margin-top: 16px !important; }
.jk-person__body { grid-column: 1 / -1; margin-top: 24px; }
.jk-person__cp { margin-top: 18px !important; }
.jk-days__cap { font-size: 12px; letter-spacing: .05em; margin: 0 0 8px !important; }
.jk-days { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); margin: 0 0 22px !important; border-left: 1px solid var(--jk-line); }
.jk-day { display: flex; flex-direction: column; align-items: center; padding: 8px 0 7px; border: 1px solid var(--jk-line); border-left: 0; font-size: 11px; line-height: 1.4; background: #fff; }
.jk-day b { order: 1; font-family: Inter, "Noto Sans JP", sans-serif; font-size: 15px; font-weight: 400; color: var(--jk-ink); }
.jk-day--off b, .jk-day--none b { color: var(--jk-mute); }
.jk-day::before { order: 2; content: attr(data-w); font-family: var(--jk-ja); font-size: 11px; letter-spacing: .1em; }
.jk-day::after { order: 3; content: attr(data-m); font-size: 13px; font-weight: 700; margin-top: 3px; }
.jk-day--ok::after { color: var(--jk-red); }
.jk-day--few::after { color: var(--jk-ink); }
.jk-day--none, .jk-day--off { background: var(--jk-pale); color: var(--jk-mute); }
.jk-day--none::after, .jk-day--off::after { color: var(--jk-mute); font-weight: 400; }
@media (min-width: 768px) {
  .jk-people { grid-template-columns: 1fr 1fr; column-gap: 60px; border-top: 0; }
  .jk-people--one { grid-template-columns: minmax(0, 470px); justify-content: center; }
  .jk-person { grid-template-columns: 150px 1fr; gap: 0 28px; border-top: 1px solid var(--jk-line); }
  .jk-person__ph { width: 150px; }
}

/* ---------- クーポン（店舗情報の表と同じ 1px の区切り線で並べる）---------- */
.jk-coupons { display: grid; grid-template-columns: 1fr; border-top: 1px solid var(--jk-line); }
.jk-coupon { display: grid; grid-template-columns: 88px 1fr; gap: 18px; padding: 22px 0; border-bottom: 1px solid var(--jk-line); align-items: start; }
.jk-coupon__img { width: 88px; height: 88px; object-fit: cover; display: block; background: var(--jk-pale); }
.jk-coupon__name { font-size: 14px; font-weight: 700; line-height: 1.7; overflow-wrap: anywhere; text-wrap: pretty; }
.jk-coupon__meta { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 14px; margin-top: 8px !important; }
.jk-coupon__price { font-family: var(--jk-ja); font-size: 18px; font-weight: 700; color: var(--jk-red); letter-spacing: .04em; }
.jk-coupon__who { font-family: var(--jk-ja); font-size: 11px; letter-spacing: .15em; }
.jk-coupon__go { margin-top: 14px !important; }
@media (min-width: 768px) {
  .jk-coupons { grid-template-columns: 1fr 1fr; column-gap: 60px; border-top: 0; }
  .jk-coupon { border-top: 1px solid var(--jk-line); margin-top: -1px; }
}
.jk-more { text-align: center; margin-top: 36px !important; }

/* ---------- スタイル写真（ギャラリーと同じく写真を主役に）---------- */
.jk-styles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px; }
@media (min-width: 768px) { .jk-styles { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
.jk-style a { display: block; text-decoration: none; color: var(--jk-ink); }
.jk-style img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; display: block; background: var(--jk-pale); transition: opacity .3s; }
.jk-style a:hover img { opacity: .8; }
.jk-style span { display: block; font-family: var(--jk-ja); font-size: 11px; letter-spacing: .15em; text-align: center; margin-top: 8px; line-height: 1.5; }

/* ---------- 口コミ ---------- */
.jk-rating { text-align: center; font-size: 12px; line-height: 1.8; margin: -16px 0 28px !important; }
.jk-rating b { font-family: Inter, "Noto Sans JP", sans-serif; font-size: 26px; font-weight: 300; margin: 0 6px 0 10px; vertical-align: -3px; }

/* ---------- 右下の「質問」（サイトの TOP ボタン＝茶色の丸 55px と同じ形で、その真上に積む）----------
   TOP ボタン（#pagetop）の位置＝599px 以下 右10px・下10px／それより広い 右30px・下50px（サイトの CSS の実値・2026-10-29）
   「質問」は同じ右端にそろえ、TOP の上に 10〜12px 空けて置く（以前は検査ブラウザのスクロールバー 15px を含めて測り、右25pxにして縦の線がずれていた） */
.jk-fab { position: fixed; z-index: 98; right: 10px; bottom: calc(75px + env(safe-area-inset-bottom)); width: 55px; height: 55px; border: 0; border-radius: 50%; background: var(--jk-red); color: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; font: 400 11px/1 "Noto Sans JP", sans-serif; cursor: pointer; padding: 0; }
.jk-fab svg { width: 20px; height: 20px; }
.jk-fab:hover { background: #a83636; }
.jk-fab[hidden] { display: none; }
@media (min-width: 600px) { .jk-fab { right: 30px; bottom: 117px; } }

/* ---------- AI 案内係の窓 ---------- */
.jk-chat { position: fixed; z-index: 1000; inset: auto 0 0 0; height: min(86dvh, 640px); background: #fff; border-top: 1px solid var(--jk-line); box-shadow: 0 -6px 30px rgba(76, 62, 57, .18); display: flex; flex-direction: column; }
@media (min-width: 768px) { .jk-chat { inset: auto 30px 30px auto; width: 380px; height: min(80vh, 620px); border: 1px solid var(--jk-line); } }
.jk-chat[hidden] { display: none; }
.jk-chat__head { display: flex; align-items: center; gap: 10px; padding: 16px 12px 14px 20px; border-bottom: 1px solid var(--jk-line); }
.jk-chat__ttl { flex: 1; font-family: var(--jk-ja); font-size: 15px; font-weight: 700; letter-spacing: .15em; }
.jk-chat__sub { display: block; font-family: "Noto Sans JP", sans-serif; font-size: 11px; font-weight: 400; letter-spacing: .05em; color: var(--jk-mute); margin-top: 4px; }
.jk-chat__x { width: 44px; height: 44px; border: 0; background: none; color: var(--jk-ink); font-size: 24px; line-height: 1; cursor: pointer; }
.jk-chat__log { flex: 1; overflow-y: auto; padding: 20px 16px; display: flex; flex-direction: column; gap: 14px; overscroll-behavior: contain; background: var(--jk-pale); }
.jk-msg { max-width: 88%; font-size: 14px; line-height: 1.8; padding: 12px 14px; white-space: pre-wrap; overflow-wrap: anywhere; }
.jk-msg--ai { align-self: flex-start; background: #fff; border: 1px solid var(--jk-line); }
.jk-msg--me { align-self: flex-end; background: var(--jk-ink); color: #fff; }
.jk-msg a { color: var(--jk-red); text-decoration: underline; word-break: break-all; }
.jk-msg strong { font-weight: 700; }
.jk-msg--wait { color: var(--jk-mute); }
.jk-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.jk-chip { min-height: 40px; padding: 0 14px; border: 1px solid var(--jk-ink); background: #fff; color: var(--jk-ink); font: 400 13px/1 "Noto Sans JP", sans-serif; letter-spacing: .05em; cursor: pointer; }
.jk-chip:hover { background: var(--jk-ink); color: #fff; }
.jk-chat__form { display: flex; gap: 8px; padding: 12px 12px calc(12px + env(safe-area-inset-bottom)); border-top: 1px solid var(--jk-line); background: #fff; }
.jk-chat__in { flex: 1; min-height: 46px; max-height: 120px; resize: none; border: 1px solid var(--jk-line); border-radius: 0; padding: 11px 12px; font: 16px/1.5 "Noto Sans JP", sans-serif; color: var(--jk-ink); }
.jk-chat__in:focus { outline: 2px solid var(--jk-red); outline-offset: -1px; }
.jk-chat__send { min-width: 68px; border: 0; border-radius: 0; background: var(--jk-red); color: #fff; font: 700 14px/1 var(--jk-ja); letter-spacing: .1em; cursor: pointer; }
.jk-chat__send:disabled { opacity: .5; }
.jk-chat__foot { font-size: 11px; color: var(--jk-mute); text-align: center; padding: 0 12px 10px; background: #fff; line-height: 1.7; }
.jk-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
@media (prefers-reduced-motion: no-preference) { .jk-chat:not([hidden]) { animation: jk-up .22s ease-out; } }
@keyframes jk-up { from { transform: translateY(16px); opacity: 0; } to { transform: none; opacity: 1; } }

/* 2026-10-29 改行の検査：スタッフのプロフィール文（元サイトのまま）が最後の1文字だけ落ちていた（吉村さん「所」・本丸さん「け」）。KINO の CSS は全ページに入るのでここで直す */
#staff_text dd, #staff_text p { text-wrap: pretty; }

/* ---------- 集客LPへの導線（2026-10-29）＝写真が主役・字間の広い太字・赤い丸の VIEW MORE（サイトの top_viewmore と同じ見た目）---------- */
.jk-live--lp { padding-top: 70px; }
.jk-lps { display: grid; }
.jk-lp { display: grid; text-decoration: none; color: var(--jk-ink); }
.jk-lp__img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; display: block; background: var(--jk-pale); transition: opacity .3s; }
.jk-lp:hover .jk-lp__img { opacity: .82; }
.jk-lp__txt { display: block; }
.jk-lp__name { display: block; font-family: var(--jk-ja); font-size: 15px; font-weight: 700; letter-spacing: .12em; line-height: 1.6; }
.jk-lp__head { display: block; font-size: 12px; line-height: 1.8; margin-top: 6px; text-wrap: pretty; }
.jk-lp__more { position: relative; display: inline-block; margin-top: 12px; padding: 2px 0 5px 28px; font-family: Roboto, sans-serif; font-size: 12px; font-weight: 700; letter-spacing: .15em; line-height: 1; }
.jk-lp__more::before { content: ""; position: absolute; top: 4px; left: 1px; width: 12px; height: 12px; border-radius: 100%; background: var(--jk-red); transition: .5s cubic-bezier(.56, .16, .32, 2.27); }
.jk-lp__more::after { content: ""; position: absolute; left: 28px; right: 0; bottom: 0; height: 1px; background: var(--jk-ink); transition: .5s; }
.jk-lp:hover .jk-lp__more::before { transform: translate(2px, -2px) scale(1.3); }
.jk-lp:hover .jk-lp__more::after { right: 100%; }
/* 大きいカード（トップ・店舗ページ）：スマホは写真＋文の横並びを縦に、PC は5列 */
.jk-lps--cards { grid-template-columns: 1fr; border-top: 1px solid var(--jk-line); }
.jk-lps--cards .jk-lp { grid-template-columns: 112px 1fr; gap: 0 20px; align-items: center; padding: 18px 0; border-bottom: 1px solid var(--jk-line); }
@media (min-width: 768px) {
  .jk-lps--cards { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0 20px; border-top: 0; }
  .jk-lps--cards .jk-lp { grid-template-columns: 1fr; padding: 0; border: 0; align-items: start; }
  .jk-lps--cards .jk-lp__txt { padding-top: 16px; }
  .jk-lps--cards .jk-lp__name { font-size: 14px; }
}
/* 行（メニュー一覧・特集ページ）：小さな写真＋文 */
.jk-lps--rows { grid-template-columns: 1fr; border-top: 1px solid var(--jk-line); }
.jk-lps--rows .jk-lp { grid-template-columns: 84px 1fr; gap: 0 18px; align-items: center; padding: 16px 0; border-bottom: 1px solid var(--jk-line); }
@media (min-width: 768px) { .jk-lps--rows { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); column-gap: 40px; border-top: 0; } .jk-lps--rows .jk-lp { border-top: 1px solid var(--jk-line); margin-top: -1px; } }
.jk-menulp { max-width: 760px; margin: 8px auto 36px; padding: 0 0; text-align: left; }
.jk-menulp__ttl { font-family: var(--jk-ja); font-size: 12px; font-weight: 700; letter-spacing: .15em; margin: 0 0 6px !important; color: var(--jk-red); }
/* 全ページ下部「メニュー別のご案内」：写真付きの小さな並び */
.jslp.jk { max-width: 1080px; }
.jk-lps--mini { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 12px; margin-top: 14px; text-align: left; }
.jk-lps--mini .jk-lp { grid-template-columns: 48px 1fr; gap: 0 10px; align-items: center; }
.jk-lps--mini .jk-lp__img { width: 48px; }
.jk-lps--mini .jk-lp__name { font-size: 12px; letter-spacing: .06em; line-height: 1.5; }
.jk-lps--mini .jk-lp__head, .jk-lps--mini .jk-lp__more { display: none; }
@media (max-width: 767px) { .jk-lps--mini { grid-template-columns: 1fr 1fr; } }
/* 2026-10-29 目視で直した所
   ① 下部「メニュー別のご案内」：もとの .jslp ul（横並び）・.jslp a（下線）がカードより強く効いて崩れていた → 指定を強くする
   ② /luxell-straight_new/ は独立した作りでサイト共通の CSS が無く、.tit_basic が効かない → 見出しの値（Inter 極細・字間 .15em）をここにも持つ
   ③ PC の5列で名前が「…カッ／ト」と1文字落ちた → 字の大きさと字間を詰める */
.jslp ul.jk-lps--mini { display: grid; list-style: none; margin: 14px 0 0; padding: 0; }
.jslp a.jk-lp { text-decoration: none; font-size: inherit; }
.jk .jk-tit { font-family: Inter, "Yu Gothic", YuGothic, sans-serif; font-weight: 100; font-size: clamp(35px, 5vw, 72px); letter-spacing: .15em; color: var(--jk-ink); }
@media (min-width: 768px) {
  .jk-lps--cards .jk-lp__name { font-size: 13px; letter-spacing: .04em; }
  .jk-lps--cards .jk-lp__head { text-wrap: balance; }
}
.jk-lp__name { word-break: keep-all; }   /* 「・」の後でだけ折る（kino.js が <wbr> を入れる）*/

/* ---------- 採用サイトへの導線（トップの RECRUIT・2026-10-29）＝職種の入口5つ＋見学・応募・診断・LINE ---------- */
.jk-hide { display: none !important; }
.jk-rec { margin: 28px 0 0; }
.jk-rec__lead { font-size: 14px; line-height: 1.9; margin: 0 0 24px !important; text-wrap: pretty; }
.jk-rec__list { display: grid; grid-template-columns: 1fr; border-top: 1px solid var(--jk-line); }
.jk-rec__role { display: grid; grid-template-columns: 1fr auto; grid-template-areas: "name more" "sub more"; align-items: center; column-gap: 16px; padding: 18px 0; border-bottom: 1px solid var(--jk-line); text-decoration: none; color: var(--jk-ink); }
.jk-rec__name { grid-area: name; font-family: var(--jk-ja); font-size: 16px; font-weight: 700; letter-spacing: .12em; line-height: 1.6; word-break: keep-all; }
.jk-rec__sub { grid-area: sub; font-size: 12px; line-height: 1.8; margin-top: 2px; }
.jk-rec__role .jk-lp__more { grid-area: more; margin-top: 0; }
.jk-rec__role:hover .jk-lp__more::before { transform: translate(2px, -2px) scale(1.3); }
.jk-rec__role:hover .jk-lp__more::after { right: 100%; }
/* PC でも1列（トップの RECRUIT 欄は画面の半分の幅＝2列だと「VIEW MORE」が折れた）*/
.jk-rec__cta { margin-top: 32px; }
.jk-rec__links { display: flex; flex-wrap: wrap; gap: 14px 28px; margin-top: 22px !important; }
.jk-rec__tel { font-size: 12px; margin-top: 18px !important; }
.jk-rec__tel a { color: var(--jk-ink); }
@media (max-width: 599px) { .jk-rec__role .jk-lp__more { padding-left: 20px; font-size: 0; width: 12px; } .jk-rec__role .jk-lp__more::after { display: none; } }

.jk-lp__more { white-space: nowrap; }
/* 2026-10-29 改行の検査：メニュー一覧の料金表（元サイトのまま）で「リ／タッ／チ」「…はじめた／方」と落ちていた */
#price_list .price_table dt, #price_list .price_table h3 { word-break: keep-all; }
#price_list p, #price_list li { text-wrap: pretty; }

/* ---------- 2026-10-29 岩田さん「FAQ 上のブロックとの距離を空けて余白を作ってください」「ここ（下部のメニュー別のご案内）のデザインも中途半端」----------
   FAQ：上の Dityca の帯と 0px で接していた → 上下を同じ間合いに（PC 120／SP 80）
   下部のご案内：小さな見出し＋小さな写真がフッターに 0px で接していた → 淡い地の帯にして、見出しをサイトの作法（細い Inter の英字＋小さな和文）に揃える
     PC＝写真を上・名前を下の5列／SP＝写真つきの行（線で区切る・右に ›） */
.jsfaq { margin: 120px auto 120px !important; }
nav.jslp.jk { max-width: none; margin: 0; padding: 80px 20px 88px; background: var(--jk-pale); }
nav.jslp.jk > * { max-width: 1080px; margin-left: auto !important; margin-right: auto !important; }
.jslp.jk .jslp__ttl { font-family: Inter, "Yu Gothic", YuGothic, sans-serif; font-weight: 100; font-size: 34px; letter-spacing: .15em; line-height: 1.2; color: var(--jk-ink); text-align: center; margin: 0 auto 40px !important; }
.jslp.jk .jslp__ttl span { display: block; font-family: var(--jk-ja); font-weight: 400; font-size: 12px; letter-spacing: .15em; line-height: 1.8; margin-top: 10px; color: var(--jk-mute); }
.jslp ul.jk-lps--mini { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 28px; margin: 0 auto; }
.jk-lps--mini .jk-lp { display: flex; flex-direction: column; gap: 14px; }
.jk-lps--mini .jk-lp__img { width: 100%; aspect-ratio: 4 / 5; }
.jk-lps--mini .jk-lp__name { display: block; font-family: var(--jk-ja); font-size: 13px; font-weight: 700; letter-spacing: .08em; line-height: 1.6; text-align: center; }
.jk-lps--mini .jk-lp:hover .jk-lp__img { opacity: .8; }
@media (max-width: 767px) {
  .jsfaq { margin: 80px auto 80px !important; }
  nav.jslp.jk { padding: 64px 20px 72px; }
  .jslp.jk .jslp__ttl { font-size: 28px; margin-bottom: 28px !important; }
  .jslp ul.jk-lps--mini { grid-template-columns: 1fr; gap: 0; border-top: 1px solid var(--jk-line); }
  .jk-lps--mini .jk-lp { display: grid; grid-template-columns: 64px 1fr 16px; align-items: center; gap: 0 16px; padding: 12px 0; border-bottom: 1px solid var(--jk-line); }
  .jk-lps--mini .jk-lp__img { width: 64px; }
  .jk-lps--mini .jk-lp__name { font-size: 14px; text-align: left; }
  .jk-lps--mini .jk-lp::after { content: "›"; font-size: 20px; line-height: 1; color: var(--jk-mute); text-align: right; }
}

/* ---------- 口コミ（店舗ページ・2026-10-29 GBP連携）：ホットペッパーと Google を2列で並べる（SP は縦） ---------- */
.jk-revs { list-style: none; margin: 0 auto !important; padding: 0; max-width: 760px; display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--jk-line); }
.jk-rev { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 28px 12px 30px; border-bottom: 1px solid var(--jk-line); text-align: center; }
.jk-rev + .jk-rev { border-left: 1px solid var(--jk-line); }
.jk-rev__src { font-family: var(--jk-ja); font-size: 12px; font-weight: 700; letter-spacing: .12em; }
.jk-rev b { font-family: Inter, "Noto Sans JP", sans-serif; font-size: 40px; font-weight: 200; line-height: 1.1; color: var(--jk-ink); }
.jk-rev__n { font-size: 12px; color: var(--jk-mute); }
.jk-rev__go { margin-top: 6px; font-size: 13px; }
@media (max-width: 767px) {
  .jk-revs { grid-template-columns: 1fr; }
  .jk-rev + .jk-rev { border-left: 0; }
}

/* ---------- お客様の声（トップ・2026-10-29 岩田さん「みんなのKINOのようにする」）＋店舗ページの口コミの本文 ----------
   今週の1件＝大きな引用（細い Inter の “ ” を飾りに）／カード＝1px の区切り線（枠の箱にしない＝サイトの作法）／両店の評価の行 */
.jk-voice-pick { max-width: 760px; margin: 0 auto 8px !important; padding: 0 0 36px; text-align: center; border-bottom: 1px solid var(--jk-line); }
.jk-voice-pick__label { font-family: var(--jk-ja); font-size: 12px; font-weight: 700; letter-spacing: .15em; color: var(--jk-red); margin: 0 0 14px !important; }
.jk-voice-pick__text { position: relative; margin: 0 !important; padding: 0 8px; font-family: var(--jk-ja); font-size: 17px; line-height: 2; letter-spacing: .06em; color: var(--jk-ink); text-wrap: pretty; quotes: "“" "”"; }
.jk-voice-pick__text::before { content: open-quote; display: block; font-family: Georgia, "Times New Roman", serif; font-size: 56px; line-height: .8; height: 30px; color: #b9aea9; margin-bottom: 10px; }   /* Inter の極細だと「//」に見えた */
.jk-voice-pick figcaption { margin-top: 18px; }
.jk-voice__meta { display: block; font-size: 12px; line-height: 1.8; color: var(--jk-mute); letter-spacing: .04em; }
.jk-voice__star { color: var(--jk-red); letter-spacing: .1em; margin-right: 8px; }
.jk-voices { list-style: none; margin: 0 auto !important; padding: 0; max-width: 1000px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 40px; }
.jk-voice { padding: 28px 0; border-bottom: 1px solid var(--jk-line); }
.jk-voice__text { margin: 0 0 12px !important; font-size: 14px; line-height: 1.9; text-wrap: pretty; display: -webkit-box; -webkit-line-clamp: 6; -webkit-box-orient: vertical; overflow: hidden; }
.jk-revs + .jk-voices { margin-top: 8px !important; max-width: 760px; grid-template-columns: 1fr 1fr; }
.jk-scores { list-style: none; margin: 36px auto 0 !important; padding: 0; max-width: 760px; border-top: 1px solid var(--jk-line); }
.jk-scores__row { display: grid; grid-template-columns: 1fr auto auto; align-items: baseline; gap: 0 28px; padding: 16px 0; border-bottom: 1px solid var(--jk-line); }
.jk-scores__store { font-family: var(--jk-ja); font-size: 14px; font-weight: 700; letter-spacing: .1em; }
.jk-score { display: inline-flex; align-items: baseline; gap: 8px; white-space: nowrap; }
.jk-score__src { font-size: 11px; letter-spacing: .08em; color: var(--jk-mute); }
.jk-score b { font-family: Inter, "Noto Sans JP", sans-serif; font-size: 26px; font-weight: 200; color: var(--jk-ink); }
.jk-score__n { font-size: 11px; color: var(--jk-mute); }
.jk-more--row { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 32px; }
@media (max-width: 767px) {
  .jk-voice-pick__text { font-size: 15px; }
  .jk-voices, .jk-revs + .jk-voices { grid-template-columns: 1fr; }
  .jk-scores__row { grid-template-columns: 1fr 1fr; row-gap: 6px; }
  .jk-scores__store { grid-column: 1 / -1; }
}

/* 2026-10-30 岩田さん「くっついているので離して」：お知らせ・キャンペーン一覧の「#NEWS」「#INFO.」の札が隙間0で並んでいた（元サイトのまま）→ 札の間 8px・日付との間 6px */
.categories_label .post-categories { display: flex; flex-wrap: wrap; gap: 6px 8px; margin: 6px 0 16px; }   /* 下 16px＝本文との間（札の li の下余白を消した分）*/
.categories_label .post-categories li { margin: 0 !important; }

/* 2026-10-30 最終監査：古い記事（2015〜2018）でスマホの横幅からはみ出していた＝Facebook の埋め込み（幅500px固定）と、区切りの無い長い英数字。元サイトのまま → 本文の幅に収める */
#content iframe, #content img, #content table { max-width: 100%; }
#content { overflow-wrap: break-word; }

/* 2026-10-30 最終監査：お客様の声の日付「2022年／3月」が1文字落ちていた → 店名と年月は折り返さない */
.jk-nw { white-space: nowrap; }

/* 2026-10-30 最終監査：プレス記事（2015・2018）の本文が white-space:pre（元テーマ）で折り返さず、スマホで最大1,600px はみ出していた → 改行は守ったまま端で折り返す */
#content .font12, #content .font14 { white-space: pre-wrap; }
#content pre { white-space: pre-wrap; overflow-wrap: break-word; max-width: 100%; }   /* 同じ記事群：<pre> の中の長い行（2018-04）*/

/* 2026-11-05 両店の予約（吉村・本丸は glam と a:ile の両店に在籍）：店名の小見出し＋指名予約＋その店のクーポン。PC は2列、スマホは縦に */
.jk-books { display: grid; grid-template-columns: 1fr; gap: 22px; margin-top: 4px; }
.jk-book__store { font-family: var(--jk-ja); font-size: 11px; letter-spacing: .12em; line-height: 1.6; margin: 0 0 8px !important; }
.jk-book .jk-person__cp { margin-top: 14px !important; }
@media (min-width: 768px) {
  .jk-books--two { grid-template-columns: 1fr 1fr; column-gap: 18px; }
  .jk-books--two .jk-rsv { padding: 18px 16px; font-size: 15px; }
  .jk-books--two .jk-rsv span { padding-right: 46px; }
  .jk-books--two .jk-rsv span::before { width: 38px; }
}

/* 2026-11-06 2店を並べる所はボタンの中に店名（同じ「吉村で予約」が2つ並んで間違えるため） */
.jk-rsv__store { display: block; font-size: 11px; font-weight: 500; letter-spacing: .1em; line-height: 1.2; margin-bottom: 8px; opacity: .92; }
