/* EN /access/ 再設計候補 v1（ローカル・非公開）。body.en-access-proto にスコープ。HTMLは変更しない（CSSだけ。DOCTYPEとlink差替えを除く）。
   用途：来店前に「どこにある？いつ開いている？どう行く？」を素早く探せること。看板と入口の写真は切り抜かず全体を見せる（上端から始め、PCは追従）。
   営業時間と電話を大きく（DOMの順序 Address→Access→Hours→Phone は変えず、住所・経路は全幅、時間と電話は横並び）。大きなヒーロー写真にはしない。実表示は未確認。 */
body.en-access-proto {
  --serif: Georgia, "Times New Roman", "Hiragino Mincho ProN", "Yu Mincho", serif;
  --sans: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", sans-serif;
}
body.en-access-proto #single_page { padding-top: var(--h-h); padding-bottom: clamp(56px, 8vw, 112px); }
body.en-access-proto .page_access .content_block { max-width: 1180px; margin: 0 auto; padding: clamp(36px, 6vw, 80px) var(--gutter) 0; }
body.en-access-proto .page_access h1.block_title { margin: 0 0 clamp(32px, 5vw, 64px); text-align: left; font-family: var(--serif); font-weight: 400; font-size: clamp(36px, 4.8vw, 64px); line-height: 1.08; letter-spacing: .005em; color: var(--ink); }
body.en-access-proto .page_access h1.block_title:after { display: none; }
body.en-access-proto .page_access h1.block_title span { display: block; margin-top: 14px; font-family: var(--sans); font-size: 11px; font-weight: 400; letter-spacing: .3em; color: var(--ink-soft); }
body.en-access-proto .locations_wrap { max-width: none; padding: 0; margin: 0; }
body.en-access-proto .locations_wrap .block, body.en-access-proto .locations_wrap .block:nth-child(odd) {
  display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); column-gap: clamp(32px, 6vw, 88px); align-items: start; margin: 0;
}
/* 写真：入口・看板を切り抜かない（元1200×935の比率）。上端から始まり、PCは本文を読む間ついてくる */
body.en-access-proto .locations_wrap .img { order: -1; width: auto; aspect-ratio: 1200 / 935; background: var(--stone); position: sticky; top: calc(var(--h-h) + 24px); overflow: hidden; }
body.en-access-proto .locations_wrap .img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%; }
body.en-access-proto .locations_wrap .txt, body.en-access-proto .locations_wrap .block:nth-child(odd) .txt { width: auto; max-width: none; padding: 0; margin: 0; }
body.en-access-proto .locations_wrap .txt .shopname { display: flex; align-items: baseline; gap: 16px; }
body.en-access-proto .locations_wrap .txt .shopname .logo-ryokuwa01 { width: 72px; }
body.en-access-proto .locations_wrap .txt h3 { margin: 0; font-family: var(--serif); font-weight: 400; font-size: clamp(26px, 2.6vw, 34px); letter-spacing: .005em; }
body.en-access-proto .locations_wrap .desc { margin: 18px 0 0; max-width: 28em; font-family: var(--sans); font-size: 15px; line-height: 2; letter-spacing: .02em; color: var(--ink-soft); }
body.en-access-proto .locations_wrap .insta { margin: 8px 0 0; }
/* 情報：住所・経路は全幅の段、営業時間と電話は横並びで大きく。ラベルは小さく上、内容は下（見つけやすい） */
body.en-access-proto .locations_wrap .access { margin: 28px 0 0; padding: 0; border: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 28px; }
body.en-access-proto .locations_wrap .access dl { display: block; margin: 0; padding: 20px 0 22px; border: 0; border-top: 1px solid var(--line-strong); }
body.en-access-proto .locations_wrap .access dl:nth-of-type(1), body.en-access-proto .locations_wrap .access dl:nth-of-type(2) { grid-column: 1 / -1; }
body.en-access-proto .locations_wrap .access dt { margin: 0 0 8px; font-family: var(--sans); font-size: 12px; font-weight: 400; letter-spacing: .12em; color: var(--ink-soft); line-height: 1.6; }
body.en-access-proto .locations_wrap .access dd { margin: 0; font-size: 15px; line-height: 1.95; letter-spacing: .02em; color: var(--ink); }
body.en-access-proto .locations_wrap .access dl:nth-of-type(3) dd, body.en-access-proto .locations_wrap .access dl:nth-of-type(4) dd > a:first-child { font-family: var(--serif); font-size: clamp(22px, 2.3vw, 30px); line-height: 1.3; letter-spacing: .005em; }
body.en-access-proto .locations_wrap .access dl:nth-of-type(4) dd > a:first-child { display: inline-flex; align-items: center; min-height: 44px; color: var(--ink); text-decoration: underline; text-decoration-color: var(--green); text-underline-offset: 6px; }
body.en-access-proto .locations_wrap .access a { color: var(--green); }
body.en-access-proto .locations_wrap .access dd .ryokuwa-access-note { display: inline-block; margin-top: 4px; font-family: var(--sans); font-size: 13px; line-height: 1.8; color: var(--ink-soft); }
@media (max-width: 900px) {
  body.en-access-proto .locations_wrap .block, body.en-access-proto .locations_wrap .block:nth-child(odd) { grid-template-columns: minmax(0, 1fr); row-gap: 28px; }
  body.en-access-proto .locations_wrap .img { position: relative; top: auto; }
  body.en-access-proto .locations_wrap .access { grid-template-columns: minmax(0, 1fr); }
  body.en-access-proto .locations_wrap .access dl:nth-of-type(1), body.en-access-proto .locations_wrap .access dl:nth-of-type(2) { grid-column: auto; }
}
@media (max-width: 600px) {
  body.en-access-proto .page_access .content_block { padding-top: 24px; }
  body.en-access-proto .page_access h1.block_title { margin-bottom: 24px; }
}

/* access Hours の調整案（追記のみ・未適用・実描画は未確認）。現行の access-redesign-v1.css の「後ろ」に置く。
   課題（実画像 access-pc-hours.jpg）：PCで Hours と Phone が横並び（各約205px幅）のため、営業時間が明朝約30pxで
   「11:00–22:30 / (last booking / 22:00)」と3行に折れる。スマホ（単列）は1行で読める。
   方針：PC（901px以上）では Hours と Phone も全幅の段（DOM順 Address→Access→Hours→Phone は変えない）にし、営業時間の文字を 20〜24px に。
   右列幅（約438px）に「11:00–22:30 (last booking 22:00)」（Georgia約24pxで約409px）が1行で収まる。狭いPC幅では balance で均等な2行にする。
   本文・リンク・写真・ID・script は変更しない。 */
@media (min-width: 901px) {
  body.en-access-proto .locations_wrap .access dl:nth-of-type(3),
  body.en-access-proto .locations_wrap .access dl:nth-of-type(4) { grid-column: 1 / -1; }
  body.en-access-proto .locations_wrap .access dl:nth-of-type(3) dd,
  body.en-access-proto .locations_wrap .access dl:nth-of-type(4) dd > a:first-child { font-size: clamp(20px, 1.9vw, 24px); }
  body.en-access-proto .locations_wrap .access dl:nth-of-type(3) dd { text-wrap: balance; }
}
