/* 電話番号（英字の書体の数字＋小さな TEL） */
.tel { font-size: max(16px, min(0.2rem, 22px)); }
.tel span { margin-right: 0.08rem; font-size: max(10px, min(0.12rem, 14px)); }
@media (max-width: 767px) {
  .tel { font-size: min(0.18rem, 20px); }
  .tel span { font-size: min(0.1rem, 12px); }
}

/* ===== アクセス（参考の型：左にロゴ・住所・電話・道順・写真、右に縦長の大きな面） ===== */
.access { margin-top: 1.5rem; padding-bottom: 1.2rem; }
.access__wrap { display: flex; justify-content: center; margin-top: 1rem; }
.access__l { position: relative; display: flex; flex-direction: column; flex: none; }
.access__addr { margin-top: 0.5rem; }
.access__tel { margin-top: 0.2rem; }
.access__btn { margin-top: 0.2rem; }
.access__dl { margin: 0.3rem 0 0.5rem; }
.access__dl dt { font-weight: 700; }
.access__map { width: 100%; margin-left: 0.8rem; min-height: 5rem; }
.access__map img { width: 100%; height: 100%; object-fit: cover; }

@media (max-width: 767px) {
  .access { margin-top: 1rem; padding-bottom: 0.9rem; }
  .access__wrap { flex-wrap: wrap; margin-top: 0.6rem; }
  .access__l { flex: 1 1 100%; }
  .access__catch {
    position: absolute;
    top: 0;
    right: 0;
    writing-mode: vertical-rl;
    font-feature-settings: "vpal";
    font-weight: 700;
    font-size: min(0.14rem, 16px);
  }
  .access__logo .logo-txt__en { font-size: 0.21rem; }
  .access__logo .logo-txt__ja { font-size: 0.16rem; }
  .access__addr { margin-top: 0.2rem; }
  .access__tel { margin-top: 0.08rem; }
  .access__dl { margin: 0.25rem 0; }
  .access__map { margin: 0.3rem 0 0; min-height: 0; height: 4rem; }
}
