/* lt-calendar.css v6  予約カレンダー（新デザイン・#409）
   calendar.php が hp:style_calendar（techo 手帳 / digits 数字だけ）のときに出す .lc-* の見た目。
   色はテーマの変数から。--lt-tertiary-bg がアクセント */
.lc-wrap { --lc-accent: var(--lt-tertiary-bg, #333); --lc-on-accent: var(--lt-tertiary-color, #fff); --lc-ink: var(--lt-part-color, #222); --lc-muted: rgb(0 0 0 / .38); --lc-line: rgb(0 0 0 / .08); --lc-card: var(--lt-part-bg, #fff); --lc-r: var(--lt-r-card, 16px);
  width: 100% !important; max-width: 920px; margin: 0 auto; overflow: visible !important; display: grid; grid-template-columns: minmax(0, 3fr) minmax(260px, 2fr); gap: 20px; align-items: stretch; color: var(--lc-ink); }
.lc-cal, .lc-slots { box-sizing: border-box; background: var(--lc-card); border-radius: var(--lc-r); padding: 22px 22px 18px; display: flex; flex-direction: column; min-width: 0; }
.lc-modern .lc-cal, .lc-modern .lc-slots { box-shadow: 0 10px 40px rgb(0 0 0 / .07); }

/* 古い予約 CSS（#daySchedule の枠・幅、テーマの h2 の帯）を打ち消す */
.lc-wrap #daySchedule, .lc-wrap .lc-slots { width: auto !important; float: none !important; border: 0 !important; margin: 0 !important; }
.lc-wrap h2 { background: none !important; color: inherit !important; border: 0 !important; box-shadow: none !important; padding: 0 !important; display: flex; width: auto !important; }
.lc-wrap h2::before, .lc-wrap h2::after { display: none !important; }
/* 右の時間一覧：古い #daySchedule の padding 5px と上の h2 の padding 0 を戻す */
.lc-wrap #daySchedule.lc-slots { padding: 22px 22px 18px !important; }
.lc-wrap h2.lc-date { padding: 0 0 12px !important; }

/* 月と送り */
.lc-head { display: flex; align-items: center; justify-content: space-between; margin: 0 0 14px; }
.lc-month { margin: 0 !important; padding: 0; background: none; border: 0; font-size: 20px; font-weight: 700; letter-spacing: .04em; line-height: 1.2; color: inherit; text-align: left; }
.lc-nav { display: flex; gap: 8px; }
.lc-btn { width: 36px; height: 36px; border-radius: 50%; border: 1px solid rgb(0 0 0 / .12); background: var(--lc-card); color: inherit; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; font-size: 13px; line-height: 1; padding: 0; transition: background .15s, color .15s, border-color .15s; }
.lc-btn:hover { background: var(--lc-accent); border-color: var(--lc-accent); color: var(--lc-on-accent); }

/* 格子 */
.lc-grid { width: 100%; table-layout: fixed; border-collapse: separate; border-spacing: 4px; margin: 0 -4px; }
.lc-grid th { padding: 0 0 6px; font-size: 11px; font-weight: 600; letter-spacing: .12em; color: var(--lc-muted); text-align: center; border: 0; background: none; }
.lc-grid th.lc-sun { color: #c65a5a; }
.lc-grid th.lc-sat { color: #4a7ab5; }
.lc-day { padding: 0; border: 0; background: none; text-align: center; vertical-align: middle; }
.lc-cell { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; height: 48px; border-radius: 12px; text-decoration: none; color: inherit; font-size: 15px; font-weight: 500; line-height: 1; transition: background .15s, color .15s, transform .1s; }
.lc-mark { width: 5px; height: 5px; border-radius: 50%; background: transparent; }
.lc-day--past .lc-cell, .lc-day--holiday .lc-cell, .lc-day--full .lc-cell, .lc-day--shift .lc-cell { color: var(--lc-muted); font-weight: 400; }
.lc-day--holiday .lc-mark, .lc-day--full .lc-mark, .lc-day--shift .lc-mark { background: rgb(0 0 0 / .14); }
.lc-day--ok .lc-cell { background: color-mix(in srgb, var(--lc-accent) 10%, transparent); font-weight: 700; }
.lc-day--ok .lc-mark { background: var(--lc-accent); }
.lc-day--ok .lc-cell:hover { background: color-mix(in srgb, var(--lc-accent) 22%, transparent); transform: translateY(-1px); }
.lc-day--little .lc-cell { background: #fff4e3; font-weight: 700; }
.lc-day--little .lc-mark { background: #e8a33d; }
.lc-day.is-active .lc-cell { background: var(--lc-accent); color: var(--lc-on-accent); }
.lc-day.is-active .lc-mark { background: var(--lc-on-accent); }
.lc-day--empty { background: none; }

/* 営業日カレンダー（トップのブロック）：1 枚だけ */
.lc-single { grid-template-columns: 1fr; max-width: 560px; }
.lc-day--open .lc-cell { font-weight: 600; }
.lc-day--open .lc-mark { background: color-mix(in srgb, var(--lc-accent) 55%, transparent); }
.lc-day--holiday .lc-mark { background: #e0a0a0; }
.lc-day.is-today .lc-cell { box-shadow: inset 0 0 0 2px var(--lc-accent); }
.lc-lg--open::before { background: color-mix(in srgb, var(--lc-accent) 55%, transparent); width: 6px; height: 6px; border-radius: 50%; margin: 0 2px; }
.lc-single .lc-lg--off::before { background: #e0a0a0; }

/* 凡例 */
.lc-legend { margin: auto 0 0; padding: 12px 0 0; display: flex; justify-content: flex-end; gap: 14px; font-size: 11px; color: var(--lc-muted); letter-spacing: .04em; }
.lc-lg { display: inline-flex; align-items: center; gap: 5px; }
.lc-lg::before { content: ""; width: 10px; height: 10px; border-radius: 3px; background: rgb(0 0 0 / .12); }
.lc-lg--ok::before { background: color-mix(in srgb, var(--lc-accent) 25%, transparent); border: 1px solid var(--lc-accent); box-sizing: border-box; }
.lc-lg--little::before { background: #fff4e3; border: 1px solid #e8a33d; box-sizing: border-box; }
.lc-lg--off::before { width: 6px; height: 6px; border-radius: 50%; margin: 0 2px; }

/* 時間一覧 */
.lc-date { margin: 0 0 12px !important; padding: 0 0 12px !important; border-bottom: 1px solid var(--lc-line) !important; background: none; display: flex; align-items: baseline; gap: 6px; font-size: 18px; font-weight: 700; letter-spacing: .03em; color: inherit; text-align: left; }
.lc-date-dow { font-size: 14px; font-weight: 500; }
.lc-date-year { margin-left: auto; font-size: 12px; font-weight: 500; color: var(--lc-muted); }
.lc-slot-list { flex: 1 1 auto; overflow: auto; height: auto !important; max-height: 480px; padding-right: 2px; }
.lc-slot-list::-webkit-scrollbar { width: 6px; }
.lc-slot-list::-webkit-scrollbar-thumb { background: rgb(0 0 0 / .15); border-radius: 3px; }
.lc-slot { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 0 0 8px; padding: 11px 14px; border-radius: 10px; border: 1px solid rgb(0 0 0 / .1); background: var(--lc-card); color: inherit; text-decoration: none; font-size: 15px; font-weight: 600; letter-spacing: .02em; transition: background .15s, border-color .15s, color .15s, transform .1s; }
.lc-slot-time { font-variant-numeric: tabular-nums; }
.lc-slot-tag { font-size: 11px; font-weight: 600; padding: 3px 10px; border-radius: 999px; background: color-mix(in srgb, var(--lc-accent) 12%, transparent); color: var(--lc-accent); letter-spacing: .04em; }
.lc-slot-tag--little { background: #fff4e3; color: #c97d12; }
a.lc-slot:hover { background: var(--lc-accent); border-color: var(--lc-accent); color: var(--lc-on-accent); transform: translateY(-1px); }
a.lc-slot:hover .lc-slot-tag { background: rgb(255 255 255 / .22); color: var(--lc-on-accent); }
.lc-slot.is-off { border-style: dashed; color: var(--lc-muted); font-weight: 400; background: transparent; }
.lc-slot.is-off .lc-slot-tag { background: transparent; color: var(--lc-muted); padding: 0; }
.lc-empty { margin: 24px 0; text-align: center; font-size: 13px; color: var(--lc-muted); }

/* 見出しと注意書き（カレンダーの上） */
html[data-lt-cal] #comment .ttl_specs02 { background: none !important; color: var(--lt-part-color, #222) !important; font-size: 18px; font-weight: 700; letter-spacing: .06em; text-align: center; padding: 0; margin: 0 0 6px; border: 0; }
html[data-lt-cal] #comment .yoyakuMemoPC, html[data-lt-cal] #comment .yoyakuMemoMobile { text-align: center; color: rgb(0 0 0 / .5) !important; font-size: 12px; font-weight: 400; margin: 0 0 18px; }
html[data-lt-cal] #comment .yoyakuMemoPC { display: block; }
html[data-lt-cal] #comment .yoyakuMemoMobile { display: none; }

@media screen and (max-width: 767px) {
  .lc-wrap { grid-template-columns: 1fr; gap: 16px; }
  .lc-cal, .lc-slots { padding: 16px 14px 14px; }
  .lc-wrap #daySchedule.lc-slots { padding: 16px 14px 14px !important; }
  .lc-cell { height: 44px; font-size: 14px; border-radius: 10px; }
  .lc-slot-list { max-height: none; }
  html[data-lt-cal] #comment .yoyakuMemoPC { display: none; }
  html[data-lt-cal] #comment .yoyakuMemoMobile { display: block; }
}

/* ---- 格子（v3）：hp:style_calendar = square。四角いマスを罫線で区切る ---- */
.lc-square .lc-cal, .lc-square .lc-slots { border-radius: 0; box-shadow: none; border: var(--lt-line-w, 1px) solid rgb(0 0 0 / .14); }
.lc-square .lc-btn { border-radius: 0; }
.lc-square .lc-grid { border-collapse: collapse; border-spacing: 0; margin: 0; }
.lc-square .lc-grid th { padding: 0 0 8px; border-bottom: var(--lt-line-w-m, 2px) solid var(--lc-ink); }
.lc-square .lc-day { border: var(--lt-line-w, 1px) solid rgb(0 0 0 / .12); }
.lc-square .lc-day--empty { background: rgb(0 0 0 / .02); }
.lc-square .lc-cell { border-radius: 0; height: 50px; }
.lc-square .lc-mark { border-radius: 0; width: 6px; height: 6px; }
.lc-square .lc-day--ok .lc-cell:hover { transform: none; }
.lc-square .lc-day.is-today .lc-cell { box-shadow: inset 0 0 0 2px var(--lc-accent); }
.lc-square .lc-slot, .lc-square .lc-slot-tag, .lc-square .lc-lg::before, .lc-square .lc-lg--off::before, .lc-square .lc-lg--open::before { border-radius: 0; }
.lc-square a.lc-slot:hover { transform: none; }
@media screen and (max-width: 767px) { .lc-square .lc-cell { height: 46px; border-radius: 0; } }

/* ---- スマホの日付チップ（v4）：予約画面（.lc-wrap、営業日カレンダーの .lc-single は除く）。
   calendar.php の小さなスクリプトが月の表から作る。横にスクロールして日を選ぶ。月の表は「月の表で見る」で開く ---- */
.lc-chips, .lc-chips-toggle { display: none; }
@media screen and (max-width: 767px) {
  .lc-cal.has-chips .lc-chips { display: flex; gap: 8px; overflow-x: auto; scroll-snap-type: x proximity; padding: 2px 2px 10px; margin: 0 -2px 4px; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
  .lc-cal.has-chips .lc-chips::-webkit-scrollbar { display: none; }
  .lc-chip { flex: 0 0 54px; scroll-snap-align: start; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; height: 70px; border-radius: 14px; border: 1px solid var(--lc-line); background: var(--lc-card); color: inherit; text-decoration: none; line-height: 1; }
  .lc-chip-dow { font-size: 11px; font-weight: 600; color: var(--lc-muted); letter-spacing: .06em; }
  .lc-chip-num { font-size: 19px; font-weight: 700; font-variant-numeric: tabular-nums; }
  .lc-chip .lc-mark { margin-top: 1px; }
  .lc-chip.is-sun .lc-chip-dow { color: #c65a5a; }
  .lc-chip.is-sat .lc-chip-dow { color: #4a7ab5; }
  .lc-chip--ok { border-color: color-mix(in srgb, var(--lc-accent) 35%, transparent); background: color-mix(in srgb, var(--lc-accent) 8%, var(--lc-card)); }
  .lc-chip--ok .lc-mark { background: var(--lc-accent); }
  .lc-chip--little { background: #fff4e3; border-color: #f0c88a; }
  .lc-chip--little .lc-mark { background: #e8a33d; }
  .lc-chip--holiday, .lc-chip--full, .lc-chip--shift { color: var(--lc-muted); }
  .lc-chip--holiday .lc-mark, .lc-chip--full .lc-mark, .lc-chip--shift .lc-mark { background: rgb(0 0 0 / .14); }
  .lc-chip.is-active { background: var(--lc-accent); border-color: var(--lc-accent); color: var(--lc-on-accent); }
  .lc-chip.is-active .lc-chip-dow { color: inherit; opacity: .85; }
  .lc-chip.is-active .lc-mark { background: var(--lc-on-accent); }
  .lc-square .lc-chip, .lc-square .lc-chip .lc-mark { border-radius: 0; }
  .lc-minimal .lc-chip { border-color: transparent; background: transparent; }
  .lc-minimal .lc-chip.is-active { background: var(--lc-accent); }
  .lc-cal.has-chips .lc-chips-toggle { display: inline-flex; align-items: center; gap: 6px; margin: 2px 0 0; padding: 6px 0; background: none; border: 0; color: var(--lc-muted); font-size: 12px; letter-spacing: .04em; cursor: pointer; }
  .lc-cal.has-chips:not(.lc-show-grid) .lc-grid, .lc-cal.has-chips:not(.lc-show-grid) .lc-legend { display: none; }
}

/* ==== v5（2026-11-01）手帳 .lc-techo と 数字だけ .lc-digits ====
   角丸・影・色の面は使わない。罫線と文字の太さと余白だけで組む。色はテーマのアクセント1色（--lc-accent）だけ */
.lc-techo, .lc-digits { --lc-ink: var(--lt-part-color, #1f1f1f); --lc-muted: rgb(0 0 0 / .32); --lc-line: rgb(0 0 0 / .14); gap: 40px; }
.lc-techo .lc-cal, .lc-techo .lc-slots, .lc-digits .lc-cal, .lc-digits .lc-slots { border-radius: 0; box-shadow: none; background: transparent; }
.lc-techo .lc-cal, .lc-digits .lc-cal { padding: 0; }
.lc-wrap.lc-techo #daySchedule.lc-slots, .lc-wrap.lc-digits #daySchedule.lc-slots { padding: 0 !important; background: transparent !important; border-radius: 0 !important; box-shadow: none !important; }
.lc-techo .lc-month, .lc-digits .lc-month { font-size: 19px; font-weight: 500; letter-spacing: .1em; }
.lc-techo .lc-head, .lc-digits .lc-head { margin: 0 0 16px; padding: 0 0 14px; border-bottom: 2px solid var(--lc-ink); }
.lc-techo .lc-btn, .lc-digits .lc-btn { border-radius: 0 !important; width: 34px; height: 34px; background: transparent; border: 1px solid var(--lc-line); }
.lc-digits .lc-btn { border-color: transparent; }
.lc-techo .lc-btn:hover, .lc-digits .lc-btn:hover { background: var(--lc-ink); border-color: var(--lc-ink); color: #fff; }
.lc-techo .lc-grid th, .lc-digits .lc-grid th { font-weight: 400; font-size: 12px; letter-spacing: .14em; padding: 0 0 10px; }
.lc-techo .lc-day--ok .lc-cell:hover, .lc-digits .lc-day--ok .lc-cell:hover { transform: none; }
.lc-techo .lc-legend .lc-lg::before, .lc-digits .lc-legend .lc-lg::before { display: none; }

/* 手帳：細い罫線のマス。空きは ◎、残りわずかは △、受付できない日は － */
.lc-techo .lc-grid { border-collapse: collapse; border-spacing: 0; margin: 0; }
.lc-techo .lc-day { border: 1px solid var(--lc-line); }
.lc-techo .lc-day--empty { background: rgb(0 0 0 / .02); }
.lc-techo .lc-cell { height: 56px; border-radius: 0; gap: 5px; font-size: 15px; font-weight: 400; font-variant-numeric: tabular-nums; }
.lc-techo .lc-mark, .lc-digits .lc-mark { width: auto; height: auto; border-radius: 0; background: none !important; font-size: 11px; line-height: 1; font-weight: 400; }
.lc-techo .lc-mark::before { content: "－"; color: var(--lc-muted); }
.lc-techo .lc-day--ok .lc-mark::before { content: "◎"; color: var(--lc-accent); }
.lc-techo .lc-day--little .lc-mark::before { content: "△"; color: #b8741a; }
.lc-techo .lc-day--holiday .lc-mark::before { content: "休"; }
.lc-techo .lc-day--open .lc-mark::before { content: "○"; color: var(--lc-ink); }
.lc-techo .lc-day--ok .lc-cell, .lc-techo .lc-day--little .lc-cell { background: transparent; font-weight: 500; }
.lc-techo .lc-day--ok .lc-cell:hover { background: rgb(0 0 0 / .04); }
.lc-techo .lc-day.is-active .lc-cell { background: var(--lc-accent); color: var(--lc-on-accent); }
.lc-techo .lc-day.is-active .lc-mark::before { color: var(--lc-on-accent); }
.lc-techo .lc-day.is-today .lc-cell { box-shadow: inset 0 -3px 0 var(--lc-accent); }
.lc-techo .lc-legend .lc-lg--ok::after, .lc-digits .lc-legend .lc-lg--ok::after { content: ""; }
.lc-techo .lc-lg--ok::before, .lc-techo .lc-lg--little::before, .lc-techo .lc-lg--off::before, .lc-techo .lc-lg--open::before { display: inline !important; width: auto; height: auto; border: 0 !important; background: none !important; margin: 0 4px 0 0; }
.lc-techo .lc-lg--ok::before { content: "◎"; color: var(--lc-accent); }
.lc-techo .lc-lg--little::before { content: "△"; color: #b8741a; }
.lc-techo .lc-lg--off::before { content: "－"; }
.lc-techo .lc-lg--open::before { content: "○"; }
.lc-techo.lc-single .lc-lg--off::before { content: "休"; }
/* 手帳：時間は罫線で区切った一覧。右に「◎ 予約する ›」 */
.lc-techo .lc-date, .lc-digits .lc-date { font-size: 17px; font-weight: 500; letter-spacing: .06em; padding: 0 0 14px !important; margin: 0 !important; border-bottom: 2px solid var(--lc-ink) !important; }
.lc-wrap.lc-techo h2.lc-date, .lc-wrap.lc-digits h2.lc-date { padding: 4px 0 14px !important; }
.lc-techo .lc-slot-list { max-height: 520px; }
.lc-techo .lc-slot { margin: 0; padding: 14px 4px; border: 0; border-bottom: 1px solid var(--lc-line); border-radius: 0; background: transparent; font-weight: 500; font-size: 15px; }
.lc-techo .lc-slot-tag { font-size: 0; padding: 0; background: none; border-radius: 0; color: var(--lc-accent); }
.lc-techo .lc-slot-tag::before { content: "◎ 予約する ›"; font-size: 13px; letter-spacing: .06em; }
.lc-techo .lc-slot-tag--little { color: #b8741a; }
.lc-techo .lc-slot-tag--little::before { content: "△ 残りわずか ›"; }
.lc-techo .lc-slot.is-off { border-style: solid; color: var(--lc-muted); }
.lc-techo .lc-slot.is-off .lc-slot-tag::before { content: "×"; }
.lc-techo a.lc-slot:hover { background: rgb(0 0 0 / .04); color: var(--lc-ink); transform: none; }
.lc-techo a.lc-slot:hover .lc-slot-tag { background: none; color: var(--lc-accent); }

/* 数字だけ：線なし。予約できる日は濃い数字、できない日は薄い数字。選んだ日に下線 */
.lc-digits .lc-grid { border-spacing: 0 2px; margin: 0; }
.lc-digits .lc-cell { height: 50px; border-radius: 0; gap: 0; font-size: 16px; font-weight: 400; font-variant-numeric: tabular-nums; background: transparent !important; }
.lc-digits .lc-mark { display: none; }
.lc-digits .lc-day--ok .lc-cell, .lc-digits .lc-day--little .lc-cell, .lc-digits .lc-day--open .lc-cell { font-weight: 700; color: var(--lc-ink); }
.lc-digits .lc-day--past .lc-cell, .lc-digits .lc-day--holiday .lc-cell, .lc-digits .lc-day--full .lc-cell, .lc-digits .lc-day--shift .lc-cell { color: rgb(0 0 0 / .26); }
.lc-digits .lc-num { position: relative; padding: 6px 4px 8px; }
.lc-digits .lc-num::after { content: ""; position: absolute; left: 2px; right: 2px; bottom: 0; height: 2px; background: transparent; }
.lc-digits .lc-day--ok .lc-cell:hover .lc-num::after { background: rgb(0 0 0 / .2); }
.lc-digits .lc-day.is-active .lc-cell { color: var(--lc-accent); }
.lc-digits .lc-day.is-active .lc-num::after { background: var(--lc-accent); height: 3px; }
.lc-digits .lc-day--little .lc-num::before { content: ""; position: absolute; top: 3px; right: -3px; width: 5px; height: 5px; background: #d08a2a; }
.lc-digits .lc-day.is-today .lc-num::after { background: rgb(0 0 0 / .2); height: 1px; }
.lc-digits .lc-legend { display: none; }
/* 数字だけ：時間は枠線だけのボタンを3列 */
.lc-digits .lc-date { border-bottom-width: 1px !important; }
.lc-digits .lc-slot-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; align-content: start; padding-top: 16px; }
.lc-digits .lc-slot { margin: 0; padding: 12px 0; flex-direction: column; justify-content: center; gap: 4px; border: 1px solid var(--lc-ink); border-radius: 0; background: transparent; font-size: 15px; font-weight: 500; text-align: center; }
.lc-digits .lc-slot-tag { display: none; }
.lc-digits .lc-slot-tag--little { display: block; padding: 0; background: none; color: #b8741a; font-size: 10px; border-radius: 0; }
.lc-digits .lc-slot.is-off { border: 1px solid var(--lc-line); color: rgb(0 0 0 / .26); text-decoration: line-through; }
.lc-digits a.lc-slot:hover { background: var(--lc-ink); border-color: var(--lc-ink); color: #fff; transform: none; }
.lc-digits .lc-empty { grid-column: 1 / -1; }

@media screen and (max-width: 767px) {
  .lc-techo, .lc-digits { gap: 28px; }
  .lc-techo .lc-cell { height: 50px; }
  .lc-digits .lc-cell { height: 44px; }
  .lc-wrap.lc-techo #daySchedule.lc-slots, .lc-wrap.lc-digits #daySchedule.lc-slots { padding: 0 !important; }
  .lc-techo .lc-chip, .lc-digits .lc-chip { border-radius: 0; background: transparent; }
  .lc-techo .lc-chip { border: 1px solid var(--lc-line); }
  .lc-techo .lc-chip .lc-mark { display: block; }
  .lc-techo .lc-chip--ok, .lc-techo .lc-chip--little { border-color: var(--lc-line); background: transparent; }
  .lc-techo .lc-chip--ok .lc-mark::before { content: "◎"; color: var(--lc-accent); }
  .lc-techo .lc-chip--little .lc-mark::before { content: "△"; color: #b8741a; }
  .lc-techo .lc-chip.is-active { background: var(--lc-accent); border-color: var(--lc-accent); color: var(--lc-on-accent); }
  .lc-techo .lc-chip.is-active .lc-mark::before { color: var(--lc-on-accent); }
  .lc-digits .lc-chip { border: 0; border-bottom: 2px solid transparent; }
  .lc-digits .lc-chip--holiday, .lc-digits .lc-chip--full, .lc-digits .lc-chip--shift { color: rgb(0 0 0 / .26); }
  .lc-digits .lc-chip.is-active { background: transparent; color: var(--lc-accent); border-bottom-color: var(--lc-accent); }
  .lc-digits .lc-slot-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* 送りボタンはサイトのボタンが丸型でも四角（ブロックの button への !important に勝つよう .lc-wrap を足す） */
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-btn { border-radius: 0 !important; }

/* ==== v6（2026-11-01）暦 .lc-koyomi と 週の帯 .lc-obi ==== */
.lc-koyomi, .lc-obi { --lc-ink: var(--lt-part-color, #1f1f1f); --lc-muted: rgb(0 0 0 / .32); --lc-line: rgb(0 0 0 / .14); gap: 40px; }
.lc-koyomi .lc-cal, .lc-koyomi .lc-slots, .lc-obi .lc-cal, .lc-obi .lc-slots { border-radius: 0; box-shadow: none; background: transparent; padding: 0; }
.lc-wrap.lc-koyomi #daySchedule.lc-slots, .lc-wrap.lc-obi #daySchedule.lc-slots { padding: 0 !important; background: transparent !important; border-radius: 0 !important; box-shadow: none !important; }
.lc-koyomi .lc-head, .lc-obi .lc-head { margin: 0 0 16px; padding: 0 0 14px; border-bottom: 1px solid var(--lc-ink); }
.lc-koyomi .lc-btn, .lc-obi .lc-btn { border-radius: 0 !important; width: 34px; height: 34px; background: transparent; border: 1px solid transparent; }
.lc-koyomi .lc-btn:hover, .lc-obi .lc-btn:hover { background: transparent; border-color: var(--lc-ink); color: var(--lc-ink); }
.lc-koyomi .lc-day--ok .lc-cell:hover, .lc-obi .lc-day--ok .lc-cell:hover { transform: none; }
.lc-koyomi .lc-legend .lc-lg::before, .lc-obi .lc-legend .lc-lg::before { display: none; }

/* 暦：明朝の数字。縦線なし・週ごとの横線だけ。空きの日は数字の下に短い線、選んだ日は細い枠 */
.lc-koyomi { --lc-serif: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Noto Serif JP", "BIZ UDPMincho", serif; }
.lc-koyomi .lc-month, .lc-koyomi .lc-date-main, .lc-koyomi .lc-slot-time { font-family: var(--lc-serif); }
.lc-koyomi .lc-month { font-size: 22px; font-weight: 500; letter-spacing: .14em; }
.lc-koyomi .lc-grid { border-collapse: collapse; border-spacing: 0; margin: 0; }
.lc-koyomi .lc-grid th { font-weight: 400; font-size: 11px; letter-spacing: .2em; padding: 0 0 12px; }
.lc-koyomi .lc-grid tbody tr { border-bottom: 1px solid var(--lc-line); }
.lc-koyomi .lc-cell { height: 58px; border-radius: 0; gap: 7px; background: transparent !important; font-family: var(--lc-serif); font-size: 19px; font-weight: 400; font-variant-numeric: lining-nums tabular-nums; }
.lc-koyomi .lc-mark { width: 14px; height: 1.5px; border-radius: 0; background: transparent !important; }
.lc-koyomi .lc-day--ok .lc-cell, .lc-koyomi .lc-day--little .lc-cell, .lc-koyomi .lc-day--open .lc-cell { color: var(--lc-ink); font-weight: 500; }
.lc-koyomi .lc-day--past .lc-cell, .lc-koyomi .lc-day--holiday .lc-cell, .lc-koyomi .lc-day--full .lc-cell, .lc-koyomi .lc-day--shift .lc-cell { color: rgb(0 0 0 / .24); }
.lc-koyomi .lc-day--ok .lc-mark, .lc-koyomi .lc-day--open .lc-mark { background: var(--lc-accent) !important; }
.lc-koyomi .lc-day--little .lc-mark { background: #c98a2e !important; }
.lc-koyomi .lc-day--ok .lc-cell:hover { color: var(--lc-accent); }
.lc-koyomi .lc-day.is-active .lc-cell { color: var(--lc-accent); box-shadow: inset 0 0 0 1px var(--lc-accent); }
.lc-koyomi .lc-day.is-today .lc-cell { box-shadow: inset 0 0 0 1px rgb(0 0 0 / .18); }
.lc-koyomi .lc-legend { display: none; }
.lc-koyomi .lc-date { font-size: 15px; font-weight: 400; letter-spacing: .08em; padding: 4px 0 14px !important; margin: 0 !important; border-bottom: 1px solid var(--lc-ink) !important; }
.lc-wrap.lc-koyomi h2.lc-date { padding: 4px 0 14px !important; }
.lc-koyomi .lc-date-main { font-size: 20px; letter-spacing: .1em; }
.lc-koyomi .lc-slot-list { max-height: 520px; }
.lc-koyomi .lc-slot { margin: 0; padding: 14px 4px; border: 0; border-bottom: 1px solid var(--lc-line); border-radius: 0; background: transparent; font-weight: 400; }
.lc-koyomi .lc-slot-time { font-size: 18px; letter-spacing: .06em; }
.lc-koyomi .lc-slot-tag { font-size: 0; padding: 0; background: none; border-radius: 0; color: var(--lc-accent); }
.lc-koyomi .lc-slot-tag::before { content: "予約 →"; font-size: 12px; letter-spacing: .2em; }
.lc-koyomi .lc-slot-tag--little { color: #b8741a; }
.lc-koyomi .lc-slot-tag--little::before { content: "残りわずか →"; }
.lc-koyomi .lc-slot.is-off { border-style: solid; color: rgb(0 0 0 / .26); }
.lc-koyomi .lc-slot.is-off .lc-slot-tag::before { content: "満"; letter-spacing: 0; }
.lc-koyomi a.lc-slot:hover { background: transparent; color: var(--lc-accent); transform: none; }
.lc-koyomi a.lc-slot:hover .lc-slot-tag { background: none; color: var(--lc-accent); }

/* 週の帯：1列。日付を横一列（左右に送る）、下に時間を並べる。月の表は「月の表で見る」で開く */
.lc-obi { grid-template-columns: minmax(0, 1fr); max-width: 760px; gap: 28px; }
.lc-obi .lc-month { font-size: 18px; font-weight: 500; letter-spacing: .1em; }
.lc-obi .lc-cal.has-chips .lc-chips { display: flex; gap: 0; overflow-x: auto; scroll-snap-type: x proximity; padding: 0 0 2px; margin: 0; border-left: 1px solid var(--lc-line); scrollbar-width: thin; }
.lc-obi .lc-chip { flex: 0 0 72px; scroll-snap-align: start; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; height: 88px; border: 1px solid var(--lc-line); border-left: 0; border-radius: 0; background: transparent; color: inherit; text-decoration: none; line-height: 1; }
.lc-obi .lc-chip-dow { font-size: 11px; color: var(--lc-muted); letter-spacing: .1em; }
.lc-obi .lc-chip-num { font-size: 22px; font-weight: 500; font-variant-numeric: tabular-nums; }
.lc-obi .lc-chip .lc-mark { width: auto; height: auto; background: none !important; font-size: 11px; }
.lc-obi .lc-chip .lc-mark::before { content: "－"; color: var(--lc-muted); }
.lc-obi .lc-chip--ok .lc-mark::before { content: "◎"; color: var(--lc-accent); }
.lc-obi .lc-chip--little .lc-mark::before { content: "△"; color: #b8741a; }
.lc-obi .lc-chip--holiday .lc-mark::before { content: "休"; }
.lc-obi .lc-chip.is-sun .lc-chip-dow { color: #b5483f; }
.lc-obi .lc-chip.is-sat .lc-chip-dow { color: #3d6aa3; }
.lc-obi .lc-chip--holiday, .lc-obi .lc-chip--full, .lc-obi .lc-chip--shift { color: rgb(0 0 0 / .28); }
.lc-obi a.lc-chip:hover { background: rgb(0 0 0 / .04); }
.lc-obi .lc-chip.is-active { background: var(--lc-accent); border-color: var(--lc-accent); color: var(--lc-on-accent); }
.lc-obi .lc-chip.is-active .lc-chip-dow, .lc-obi .lc-chip.is-active .lc-mark::before { color: var(--lc-on-accent); }
.lc-obi .lc-cal.has-chips .lc-chips-toggle { display: inline-flex; align-items: center; gap: 6px; margin: 10px 0 0; padding: 6px 0; background: none; border: 0; color: var(--lc-muted); font-size: 13px; letter-spacing: .04em; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.lc-obi .lc-cal.has-chips:not(.lc-show-grid) .lc-grid, .lc-obi .lc-cal.has-chips:not(.lc-show-grid) .lc-legend { display: none; }
.lc-obi .lc-grid { border-collapse: collapse; border-spacing: 0; margin: 12px 0 0; }
.lc-obi .lc-day { border: 1px solid var(--lc-line); }
.lc-obi .lc-cell { height: 50px; border-radius: 0; background: transparent !important; font-weight: 400; }
.lc-obi .lc-mark { display: none; }
.lc-obi .lc-chip .lc-mark { display: block; }
.lc-obi .lc-day--ok .lc-cell { font-weight: 600; }
.lc-obi .lc-day.is-active .lc-cell { background: var(--lc-accent) !important; color: var(--lc-on-accent); }
.lc-obi .lc-date { font-size: 16px; font-weight: 500; letter-spacing: .06em; padding: 0 0 12px !important; margin: 0 !important; border-bottom: 1px solid var(--lc-ink) !important; }
.lc-wrap.lc-obi h2.lc-date { padding: 0 0 12px !important; }
.lc-obi .lc-slot-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(112px, 1fr)); gap: 8px; max-height: none; padding-top: 16px; }
.lc-obi .lc-slot { margin: 0; padding: 14px 0; justify-content: center; border: 1px solid var(--lc-ink); border-radius: 0; background: transparent; font-size: 15px; font-weight: 500; }
.lc-obi .lc-slot-tag { display: none; }
.lc-obi .lc-slot-tag--little { display: inline; padding: 0; background: none; color: #b8741a; font-size: 10px; }
.lc-obi .lc-slot.is-off { border-color: var(--lc-line); color: rgb(0 0 0 / .26); text-decoration: line-through; }
.lc-obi a.lc-slot:hover { background: var(--lc-accent); border-color: var(--lc-accent); color: var(--lc-on-accent); transform: none; }
.lc-obi .lc-empty { grid-column: 1 / -1; }

@media screen and (max-width: 767px) {
  .lc-koyomi, .lc-obi { gap: 24px; }
  .lc-koyomi .lc-cell { height: 52px; font-size: 17px; }
  .lc-koyomi .lc-chip { border-radius: 0; border: 0; border-bottom: 1px solid var(--lc-line); background: transparent; }
  .lc-koyomi .lc-chip-num { font-family: var(--lc-serif); font-weight: 500; }
  .lc-koyomi .lc-chip .lc-mark { width: 14px; height: 1.5px; border-radius: 0; background: transparent !important; }
  .lc-koyomi .lc-chip--ok .lc-mark { background: var(--lc-accent) !important; }
  .lc-koyomi .lc-chip--little .lc-mark { background: #c98a2e !important; }
  .lc-koyomi .lc-chip.is-active { background: transparent; color: var(--lc-accent); box-shadow: inset 0 0 0 1px var(--lc-accent); }
  .lc-koyomi .lc-chip.is-active .lc-chip-dow { color: var(--lc-accent); }
  .lc-obi .lc-chip { flex-basis: 60px; height: 78px; }
  .lc-obi .lc-slot-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* ==== 週の表（2026-11-01）：カレンダー／週の表の切り替え。PC は表、スマホは日ごとの一覧（帳面型） ==== */
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-view { grid-column: 1 / -1; order: -1; display: flex; justify-content: flex-end; margin: 0 0 -8px; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-view button { border: 1px solid var(--lc-line); background: transparent; color: var(--lc-muted); padding: 9px 20px; font-size: 13px; letter-spacing: .1em; cursor: pointer; border-radius: 0 !important; line-height: 1.2; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-view button + button { border-left: 0; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-view button.is-on { background: var(--lc-ink); border-color: var(--lc-ink); color: #fff; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-weekbox { display: none; grid-column: 1 / -1; min-width: 0; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi).is-week > .lc-cal, .lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi).is-week > .lc-slots { display: none !important; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi).is-week .lc-weekbox { display: block; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-week[hidden] { display: none; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-week-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 0 14px; border-bottom: 2px solid var(--lc-ink); }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-week-ttl { font-size: 17px; font-weight: 500; letter-spacing: .06em; text-align: center; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-week-btn { border: 1px solid var(--lc-line); background: transparent; color: inherit; padding: 8px 14px; font-size: 13px; letter-spacing: .06em; cursor: pointer; border-radius: 0 !important; white-space: nowrap; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-week-btn:hover { border-color: var(--lc-ink); }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-week-btn[disabled] { visibility: hidden; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wtable { width: 100%; border-collapse: collapse; table-layout: fixed; margin: 0; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wtable :is(th, td) { border: 1px solid var(--lc-line); border-top: 0; text-align: center; vertical-align: middle; padding: 0; height: 42px; font-size: 14px; background: none; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wtable thead th { padding: 10px 0 8px; height: auto; font-weight: 400; font-size: 12px; line-height: 1.35; letter-spacing: .06em; color: var(--lc-muted); }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wtable thead th b { display: block; font-size: 17px; font-weight: 500; color: var(--lc-ink); letter-spacing: 0; font-variant-numeric: tabular-nums; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wtable thead th i { display: block; font-style: normal; font-size: 11px; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wtable thead th.is-sun, .lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wtable thead th.is-sun b { color: #b5483f; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wtable thead th.is-sat, .lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wtable thead th.is-sat b { color: #3d6aa3; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wtable thead th.is-sel { box-shadow: inset 0 -3px 0 var(--lc-accent); }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wtable .lc-wt-time { width: 68px; font-size: 13px; color: var(--lc-muted); font-weight: 400; font-variant-numeric: tabular-nums; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wtable td a { display: flex; align-items: center; justify-content: center; width: 100%; height: 42px; color: var(--lc-accent); font-size: 17px; text-decoration: none; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wtable td a:hover { background: var(--lc-accent); color: var(--lc-on-accent); }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wtable td.is-little a { color: #b8741a; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wtable td.is-little a:hover { background: #b8741a; color: #fff; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wtable td.is-x { color: rgb(0 0 0 / .3); }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wtable td:is(.is-none, .is-out) { color: rgb(0 0 0 / .16); background: rgb(0 0 0 / .02); }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wtable .lc-wt-empty { height: 80px; color: var(--lc-muted); font-size: 13px; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wlegend { font-size: 12px; color: var(--lc-muted); margin: 12px 0 0; line-height: 1.7; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wlist { display: none; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wday { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 10px; align-items: start; padding: 14px 2px; border-bottom: 1px solid var(--lc-line); }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wday.is-sel { box-shadow: inset 3px 0 0 var(--lc-accent); padding-left: 8px; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wday-date { line-height: 1.2; padding-top: 4px; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wday-date b { display: block; font-size: 20px; font-weight: 500; font-variant-numeric: tabular-nums; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wday-date span { font-size: 12px; color: var(--lc-muted); }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wday-date.is-sun :is(b, span) { color: #b5483f; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wday-date.is-sat :is(b, span) { color: #3d6aa3; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wday-slots { display: grid; grid-template-columns: repeat(auto-fill, minmax(62px, 1fr)); gap: 6px; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wday-slots a { border: 1px solid var(--lc-ink); color: var(--lc-ink); padding: 9px 0; min-width: 0; text-align: center; font-size: 15px; font-weight: 500; text-decoration: none; border-radius: 0; font-variant-numeric: tabular-nums; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wday-slots a.is-little { border-color: #b8741a; color: #b8741a; }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wday-slots a:active { background: var(--lc-accent); border-color: var(--lc-accent); color: var(--lc-on-accent); }
.lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wday-none { font-size: 13px; color: var(--lc-muted); padding-top: 8px; }
.lc-koyomi .lc-wtable thead th b, .lc-koyomi .lc-wday-date b, .lc-koyomi .lc-week-ttl { font-family: var(--lc-serif); }
@media screen and (max-width: 767px) {
  .lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-view { justify-content: stretch; margin: 0; }
  .lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-view button { flex: 1; }
  .lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wtable-wrap { display: none; }
  .lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-wlist { display: block; }
  .lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-week-ttl { font-size: 15px; }
  .lc-wrap:is(.lc-techo, .lc-digits, .lc-koyomi, .lc-obi) .lc-week-btn { padding: 8px 10px; font-size: 12px; }
}

/* ==== 下層ページ（2026-11-01）：手帳・数字だけ・暦・週の帯を選んだ事業所だけ。トップ（body.home）は自由、それ以外の下層ページはカレンダーにそろえる
   カレンダーと同じく、角丸・影・色の面を使わず、線と余白で組む ==== */
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) { --lf-ink: var(--lt-part-color, #1f1f1f); --lf-accent: var(--lt-tertiary-bg, #333); --lf-on-accent: var(--lt-tertiary-color, #fff); --lf-line: rgb(0 0 0 / .14); --lf-muted: rgb(0 0 0 / .45); }
/* ステップ：丸をやめて、上の線の太さと色で今どこかを示す */
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) .reservation-flow { gap: 6px; align-items: stretch; margin: 32px 0 40px; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) .reservation-flow::before { display: none; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) .reservation-flow .step { align-items: flex-start; padding: 12px 2px 0; border-top: 2px solid var(--lf-line); }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) .reservation-flow .step-circle { width: auto; height: auto; margin: 0 0 4px; border-radius: 0; background: none !important; box-shadow: none !important; transform: none !important; color: var(--lf-muted) !important; font-size: 12px; font-weight: 500; letter-spacing: .12em; font-variant-numeric: tabular-nums; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) .reservation-flow .step-circle.check svg { width: 12px; height: 12px; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) .reservation-flow .step-label { text-align: left; font-size: 13px; font-weight: 400; letter-spacing: .06em; color: var(--lf-muted) !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) .reservation-flow .step.active, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) .reservation-flow .step.completed { border-top-color: var(--lf-accent); }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) .reservation-flow .step.active .step-circle, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) .reservation-flow .step.completed .step-circle { color: var(--lf-accent) !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) .reservation-flow .step.active .step-label { color: var(--lf-ink) !important; font-weight: 500; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) .reservation-flow .step.completed .step-label { color: var(--lf-ink) !important; }
/* 見出し：帯をやめて、文字と下の太い線 */
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .ttl_specs02, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .ttl_specs03, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .menuList01 .title, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .staffList .name { background: none !important; color: var(--lf-ink) !important; border: 0 !important; border-bottom: 2px solid var(--lf-ink) !important; border-radius: 0 !important; box-shadow: none !important; text-align: left !important; font-size: 17px !important; font-weight: 500 !important; letter-spacing: .06em; padding: 0 0 12px !important; margin: 32px 0 16px !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .ttl_specs02::before, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .ttl_specs02::after, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .ttl_specs03::before, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .ttl_specs03::after, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .menuList01 .title::before, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .menuList01 .title::after, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .staffList .name::before, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .staffList .name::after { display: none !important; }
/* カレンダーの上の見出し（予約カレンダーから選ぶ）は今までどおり中央・線なし */
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main #comment .ttl_specs02 { border-bottom: 0 !important; text-align: center !important; font-size: 18px !important; font-weight: 700 !important; padding: 0 !important; margin: 0 0 6px !important; }
/* メニュー・担当者を選ぶ行の見出し（横にプルダウン）は線なし。区切りは細い線 */
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .ttl_specs02.btn_specs01 { border-bottom: 0 !important; margin: 0 !important; padding: 12px 0 !important; font-size: 15px !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .hbar { height: 0 !important; border: 0 !important; border-top: 1px solid var(--lf-line) !important; background: none !important; margin: 32px 0 !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main h3.ttl_specs02 { font-size: 14px !important; border-bottom-width: 1px !important; border-bottom-color: var(--lf-line) !important; padding: 0 0 8px !important; margin: 20px 0 10px !important; }
/* 最短の空き（日時のボタン）：丸い塗りをやめて四角い枠線 */
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood]) body:not(.home) #main .reserveBtn a { border-radius: 0 !important; background: transparent !important; color: var(--lf-ink) !important; border: 1px solid var(--lf-ink) !important; box-shadow: none !important; font-weight: 500; letter-spacing: .04em; padding: 10px 18px !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood]) body:not(.home) #main .reserveBtn a:hover { background: var(--lf-accent) !important; border-color: var(--lf-accent) !important; color: var(--lf-on-accent) !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood]) body:not(.home) #main .reserveBtn a i { display: none; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood]) body:not(.home) #main .reserveBtn a::after { content: " ›"; }
/* 予約の流れに残っていた角丸（キャンセル待ち・必須の印・カレンダー登録・印刷・説明ボタンなど）を四角に */
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main :is(#btnArea label, .required_option, .btn_specs03_, #messageBox, .formMessage, .calendar-add-section, .btn-calendar-item, .btn-print, .optionText, .modalIcon, .wl-bands label, .wl-done) { border-radius: 0 !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main label.required::after { border-radius: 0 !important; background: none !important; color: var(--lf-accent) !important; border: 1px solid currentColor; padding: 1px 6px !important; font-weight: 500; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood]) body:not(.home) #main .loyWaitlist a { border-radius: 0 !important; background: transparent !important; border: 1px solid var(--lf-ink) !important; color: var(--lf-ink) !important; font-weight: 500 !important; letter-spacing: .06em; padding: 12px !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood]) body:not(.home) #main .loyWaitlist a:hover { background: rgb(0 0 0 / .04) !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .btn_specs03_ { box-shadow: none !important; }
/* 本文の見出し（プライバシーポリシー・自由ページ・ブログ本文などクラスのない h2・h3）も帯をやめる */
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main :is(h2, h3):not([class]) { background: none !important; color: var(--lf-ink) !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; padding: 0 0 10px !important; letter-spacing: .04em; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main h2:not([class]) { border-bottom: 2px solid var(--lf-ink) !important; font-size: 18px !important; font-weight: 500 !important; margin: 36px 0 14px !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main h3:not([class]) { border-bottom: 1px solid var(--lf-line) !important; font-size: 16px !important; font-weight: 500 !important; margin: 24px 0 10px !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main :is(h2, h3):not([class])::before, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main :is(h2, h3):not([class])::after { display: none !important; }
/* 一覧（ブログ・お知らせ）：タイトルの帯をやめて文字と細い線。ページ送りの帯も線だけ */
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood]) body:not(.home) #main :is(.blogList01, .infoList01) dt { background: none !important; color: var(--lf-ink) !important; border: 0 !important; border-bottom: 1px solid var(--lf-line) !important; border-radius: 0 !important; font-size: 15px; font-weight: 500; letter-spacing: .04em; padding: 12px 14px !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood]) body:not(.home) #main :is(.blogList01, .infoList01) :is(li, li > a, .img) { border-radius: 0 !important; box-shadow: none !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood]) body:not(.home) #main .pager { background: none !important; color: var(--lf-ink) !important; border-top: 1px solid var(--lf-ink); border-bottom: 1px solid var(--lf-ink); border-radius: 0 !important; font-size: 15px; letter-spacing: .1em; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood]) body:not(.home) #main .pager a { color: var(--lf-ink) !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood]) body:not(.home) #main .pager :is(.prev, .next) { border-color: var(--lf-line) !important; }
/* 絞り込み・検索のボタン、マイページの灰色のボタン（直書き）も四角い枠線に */
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood]) body:not(.home) #main .selecter :is(input[type="submit"], button) { border: 1px solid var(--lf-ink) !important; border-radius: 0 !important; background: transparent !important; color: var(--lf-ink) !important; min-height: 46px; padding: 0 18px; letter-spacing: .1em; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood]) body:not(.home) #main a.btn-md { display: inline-block; border: 1px solid var(--lf-ink) !important; border-radius: 0 !important; background: transparent !important; color: var(--lf-ink) !important; font-size: 15px !important; font-weight: 500 !important; letter-spacing: .08em; padding: 12px 24px !important; text-decoration: none; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood]) body:not(.home) #main a.btn-md:hover { background: var(--lf-accent) !important; border-color: var(--lf-accent) !important; color: var(--lf-on-accent) !important; }
/* マイページの上：ランクとポイントを数字で並べ、変更できる項目は一覧に（線と余白だけ） */
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-head { margin: 8px 0 48px; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-figs { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); border-top: 2px solid var(--lf-ink); border-bottom: 1px solid var(--lf-line); margin: 0 0 32px; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-fig { padding: 20px 24px 22px; border-left: 1px solid var(--lf-line); }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-fig:first-child { border-left: 0; padding-left: 4px; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-fig-label { font-size: 12px; color: var(--lf-muted); letter-spacing: .14em; display: flex; align-items: center; gap: 8px; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-fig-label .modalIcon { font-size: 11px; letter-spacing: 0; padding: 1px 6px; background: none !important; color: var(--lf-muted) !important; border: 1px solid var(--lf-line); cursor: pointer; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-fig-value { margin: 10px 0 6px; font-size: 26px; font-weight: 500; line-height: 1.2; letter-spacing: .04em; color: var(--lf-ink); font-variant-numeric: tabular-nums; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-fig-value small { font-size: 13px; font-weight: 400; margin-left: 6px; color: var(--lf-muted); }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-fig-note { font-size: 12px; color: var(--lf-muted); }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-menu { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--lf-ink); }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-menu > li { margin: 0; padding: 0; border-bottom: 1px solid var(--lf-line); list-style: none; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-menu a { display: grid; grid-template-columns: 1fr auto; align-items: center; column-gap: 16px; padding: 18px 6px; color: var(--lf-ink) !important; text-decoration: none !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-menu a:hover { background: rgb(0 0 0 / .03); }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-menu-ttl { grid-column: 1; font-size: 16px; font-weight: 500; letter-spacing: .04em; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-menu-sub { grid-column: 1; font-size: 12px; color: var(--lf-muted); margin-top: 4px; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-menu-arrow { grid-column: 2; grid-row: 1 / span 2; font-size: 20px; color: var(--lf-muted); }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-menu-danger .mp-menu-ttl { color: #a3392f; font-weight: 400; font-size: 14px; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-menu-note, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-alert { font-size: 13px; padding: 14px 6px; color: var(--lf-muted); }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-alert { color: #a3392f; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main p.mp-alert { margin: -16px 0 24px; padding: 0 4px; }
/* 表の中の小さなボタン（予約キャンセル・取り消す・口コミ）も四角い枠線 */
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main table :is(input[type="button"], input[type="submit"]) { border: 1px solid var(--lf-ink) !important; border-radius: 0 !important; background: transparent !important; color: var(--lf-ink) !important; box-shadow: none !important; font-size: 13px !important; padding: 6px 12px !important; cursor: pointer; }
@media screen and (max-width: 767px) {
  :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-figs { grid-template-columns: 1fr 1fr; }
  :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-fig { padding: 16px 14px 18px; }
  :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .mp-fig-value { font-size: 22px; }
}
/* 選ぶ・書く欄：四角い枠線だけ */
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main select, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main input[type="text"], :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main input[type="tel"], :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main input[type="email"], :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main input[type="password"], :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main input[type="number"], :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main textarea { border: 1px solid rgb(0 0 0 / .28) !important; border-radius: 0 !important; background-color: #fff !important; box-shadow: none !important; color: var(--lf-ink); font-size: 15px; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main select, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main input[type="text"], :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main input[type="tel"], :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main input[type="email"], :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main input[type="password"], :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main input[type="number"] { min-height: 46px; padding: 0 12px; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main textarea { padding: 12px; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main select:focus, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main input:focus, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main textarea:focus { outline: 2px solid var(--lf-accent); outline-offset: 1px; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .ico_req { background: none !important; color: var(--lf-accent) !important; border: 1px solid currentColor; border-radius: 0 !important; font-size: 11px; font-weight: 500; padding: 1px 6px; margin-right: 8px; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .formArea01 dl { border: 0; border-bottom: 1px solid var(--lf-line); padding: 16px 0; margin: 0; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .formArea01 dt { background: none !important; font-weight: 500; }
/* 表：横線だけ */
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main table.type01 { border-collapse: collapse; border: 0 !important; border-top: 1px solid var(--lf-line) !important; }
/* 合計金額の表（太い灰色の枠が直書き）は、上下だけ太い線 */
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main table.type01[style*="solid #aaa"] { border-top: 2px solid var(--lf-ink) !important; border-bottom: 2px solid var(--lf-ink) !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main table.type01[style*="solid #aaa"] th, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main table.type01[style*="solid #aaa"] td { border-bottom: 0 !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main table.type01 th, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main table.type01 td { background: none !important; border: 0 !important; border-bottom: 1px solid var(--lf-line) !important; padding: 14px 10px; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main table.type01 th { color: var(--lf-muted); font-weight: 500; white-space: nowrap; }
/* ボタン：進むは塗り、戻るは枠線。どちらも四角 */
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .btn-box .nextBtn, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .btn_specs03, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .btn_specs02_ { border-radius: 0 !important; box-shadow: none !important; min-height: 52px; min-width: 200px; font-size: 15px; font-weight: 500; letter-spacing: .1em; background-image: none !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .btn_specs03 { background-color: var(--lf-accent) !important; color: var(--lf-on-accent) !important; border: 1px solid var(--lf-accent) !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .btn_specs02_ { background-color: transparent !important; color: var(--lf-ink) !important; border: 1px solid var(--lf-ink) !important; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .btn_specs03:hover { opacity: .88; }
:is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .btn_specs02_:hover { background-color: rgb(0 0 0 / .04) !important; }
@media screen and (max-width: 767px) {
  :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) .reservation-flow { margin: 20px 0 28px; gap: 4px; }
  :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) .reservation-flow .step-label { font-size: 11px; letter-spacing: 0; }
  :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .btn-box .nextBtn, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .btn_specs03, :is([data-lt-cal="techo"],[data-lt-cal="digits"],[data-lt-cal="koyomi"],[data-lt-cal="obi"]):not([data-lt-mood="round"]):not([data-lt-lower]) body:not(.home) #main .btn_specs02_ { min-width: 0; width: 100%; }
}
