/* 綴café 更新ツール — 表示部分 */
.tzt-news{list-style:none;margin:0;padding:0}
.tzt-news li{display:flex;gap:12px;align-items:baseline;padding:12px 0;margin:0;border-bottom:1px solid #eadfcd}
.tzt-news li:last-child{border-bottom:0}
.tzt-news time{font-size:13px;color:#6b584c;flex:none}
.tzt-badge{flex:none;font-size:11px;font-weight:700;padding:2px 8px;border-radius:3px;color:#fff;background:#a3313a}
.tzt-lunch{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:48px;align-items:center}
.tzt-menu-img{display:block;background:#fff;padding:8px;border-radius:4px;box-shadow:0 12px 30px rgba(61,42,32,.15);cursor:zoom-in}
.tzt-menu-img img{display:block;width:100%;height:auto}
.tzt-date{font-size:22px;font-weight:600;margin:0 0 8px}
.tzt-line{font-size:17px;font-weight:700;margin:0 0 12px}
.tzt-small{font-size:13px;color:#6b584c;margin:0}
.tzt-menu-empty{background:#fff;border-radius:4px;aspect-ratio:1/1.414;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:24px;color:#6b584c;border:1px solid #eadfcd}
.tzt-menu-empty strong{font-size:19px;color:#3d2a20}
.tzt-recent{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}
.tzt-recent button{background:#fff;border:1px solid #eadfcd;border-radius:4px;padding:6px;cursor:zoom-in;font:inherit;color:inherit}
.tzt-recent img{display:block;width:100%;aspect-ratio:1/1.414;object-fit:cover}
.tzt-recent span{display:block;font-size:12px;margin-top:4px}
.tzt-lightbox{position:fixed;inset:0;z-index:100000;background:rgba(30,20,14,.88);display:flex;align-items:flex-start;justify-content:center;overflow:auto;padding:56px 12px 24px}
.tzt-lightbox img{max-width:min(980px,100%);height:auto;background:#fff}
.tzt-lightbox button{position:fixed;top:10px;right:10px;width:48px;height:48px;border-radius:999px;border:0;background:#fff;color:#3d2a20;font-size:26px;line-height:1;cursor:pointer}

/* カレンダー */
.tzt-cal-wrap{background:#fff;border-radius:6px;padding:24px;border:1px solid #eadfcd}
.tzt-cal-head{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:12px;font-size:18px}
.tzt-cal-title{min-width:9em;text-align:center}
.tzt-cal-nav{width:44px;height:44px;border-radius:999px;border:1px solid #eadfcd;background:#fff;cursor:pointer;font-size:20px;color:#3d2a20;padding:0;line-height:1}
.tzt-cal-nav:disabled{opacity:.3;cursor:default}
.tzt-cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.tzt-cal-w{text-align:center;font-size:12px;padding:6px 0;color:#3d2a20}
.tzt-cal-w.sun{color:#a3313a}.tzt-cal-w.sat{color:#3b6aa0}
.tzt-cal-d{min-height:84px;padding:6px;display:flex;flex-direction:column;gap:3px;border-radius:6px;background:#faf7f1;border:0;text-align:left;font:inherit;color:#3d2a20;cursor:pointer;margin:0}
.tzt-cal-d.empty{background:transparent;cursor:default}
.tzt-cal-d.today{outline:2px solid #643d2c}
.tzt-cal-d.sel{box-shadow:inset 0 0 0 2px #7a9200}
.tzt-cal-d.past{opacity:.55}
.tzt-cal-d.sun .tzt-n,.tzt-cal-d.hol .tzt-n{color:#a3313a}.tzt-cal-d.sat .tzt-n{color:#3b6aa0}
.tzt-n{font-size:14px}
.tzt-tag{font-size:11px;font-weight:700;line-height:1.3}
.tzt-rent{font-size:10.5px;line-height:1.3;color:#a3313a;background:#f3dcdc;border-radius:3px;padding:1px 4px}
.tzt-tag .s,.tzt-rent .s{display:none}
.tzt-cal-d.k-daily{background:#eef2dc}.k-daily .tzt-tag{color:#5f7a12}
.tzt-cal-d.k-curry{background:#f6e6cf}.k-curry .tzt-tag{color:#a8591a}
.tzt-cal-d.k-off{background:#ece6e1}.k-off .tzt-tag{color:#7d6d63}
.tzt-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:12px;font-size:13px}
.tzt-legend span{display:flex;align-items:center;gap:6px}
.tzt-legend i{width:14px;height:14px;border-radius:3px;border:1.5px solid}
.tzt-legend i.k-daily{background:#eef2dc;border-color:#5f7a12}.tzt-legend i.k-curry{background:#f6e6cf;border-color:#a8591a}.tzt-legend i.k-off{background:#ece6e1;border-color:#7d6d63}.tzt-legend i.k-rent{background:#f3dcdc;border-color:#a3313a}
.tzt-cal-detail{margin-top:14px;background:#faf7f1;border-radius:6px;padding:12px 16px;font-size:14px;min-height:50px}
.tzt-cal-detail h3{font-size:15px;margin:0 0 6px}
.tzt-cal-detail ul{margin:0;padding-left:1.2em}
.tzt-cal-msg{grid-column:1/-1;text-align:center;padding:36px 0;color:#6b584c}

/* 予約フォームの案内 */
.tzt-day-note{margin:8px 0 0;padding:10px 14px;border-radius:6px;font-size:14px;line-height:1.6;font-weight:700}
.tzt-day-note.daily{background:#eef2dc;color:#4d6410}
.tzt-day-note.curry{background:#f6e6cf;color:#8a4a14}
.tzt-day-note.off{background:#f3dcdc;color:#8f2a31}
.tzt-curry-box{background:#fbf0e6;border:2px solid #d9a36b;border-radius:8px;padding:12px 14px;margin-top:10px}
.tzt-curry-box[hidden]{display:none}

/* お問い合わせフォーム */
.tzt-form-lead{background:#fbf0e6;border-radius:8px;padding:12px 16px;font-size:14px;margin:0 0 1em}
.wpcf7 .wpcf7-radio .wpcf7-list-item,.wpcf7 .wpcf7-checkbox .wpcf7-list-item{display:block;margin:0 0 6px}
.wpcf7 .wpcf7-list-item label{display:flex;align-items:center;gap:10px;background:#fff;border:1.5px solid #d6c8b3;border-radius:8px;padding:10px 12px;min-height:48px;cursor:pointer}
.wpcf7 .wpcf7-list-item input{width:20px!important;height:20px;flex:none;margin:0}
.tzt-space-info,.tzt-kashi-info{background:#fff;border:1px solid #eadfcd;border-radius:8px;padding:16px 18px;margin:0 0 1.2em;font-size:14px}
.tzt-kashi-info{background:#fbf0e6;border-color:#d9a36b}
.tzt-kashi-info .tzt-info-h{margin-bottom:6px!important}
.tzt-info-h{font-weight:700;font-size:16px;margin:0 0 10px!important}
.tzt-space-info ul{margin:10px 0 0;padding-left:1.2em}
.tzt-space-info li{margin:0 0 4px}
.tzt-price{width:100%;border-collapse:collapse;font-size:14px;margin:0}
.tzt-price th,.tzt-price td{border:1px solid #eadfcd;padding:8px;text-align:center;line-height:1.4}
.tzt-price thead th{background:#643d2c;color:#fff;font-weight:500}
.tzt-price tbody th{background:#fbf8f2;text-align:left;white-space:nowrap}
.tzt-estimate{background:#eef2dc;color:#3d4d0c;border-radius:8px;padding:12px 16px;font-weight:700;margin:1em 0}
.tzt-confirm{background:#fff;border:2px solid #643d2c;border-radius:10px;padding:18px 20px;margin:1.5em 0 0}
.tzt-confirm[hidden]{display:none}
.tzt-confirm-h{font-weight:700;font-size:18px;margin:0 0 4px!important}
.tzt-confirm dl{display:grid;grid-template-columns:minmax(0,11em) minmax(0,1fr);margin:12px 0 0;border-top:1px solid #eadfcd}
.tzt-confirm dt,.tzt-confirm dd{margin:0;padding:8px 6px;border-bottom:1px solid #eadfcd;font-size:14px}
.tzt-confirm dt{font-weight:700;background:#fbf8f2}
.tzt-confirm dd{white-space:pre-line;word-break:break-word}
.tzt-back{background:#fff;color:#643d2c;border:2px solid #643d2c;border-radius:4px;padding:.8em 2em;font-weight:700;cursor:pointer}
.tzt-back[hidden]{display:none}
.tzt-submit-row{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:1.5em}
.tzt-submit-row [type=submit],.tzt-submit-row button{width:auto!important;min-width:12em;margin:0!important}

@media (max-width:700px){
  .tzt-price{font-size:12px}
  .tzt-price th,.tzt-price td{padding:6px 4px}
  .tzt-lunch{grid-template-columns:minmax(0,1fr);gap:20px}
  .tzt-lunch-fig{max-width:320px;width:100%;margin:0 auto}
  .tzt-cal-wrap{padding:12px 8px}
  .tzt-cal{gap:2px}
  .tzt-cal-d{min-height:56px;padding:4px 2px;align-items:center}
  .tzt-tag{font-size:10px}
  .tzt-tag .f,.tzt-rent .f{display:none}
  .tzt-tag .s,.tzt-rent .s{display:inline}
  .tzt-rent{padding:0 3px;font-size:10px}
  .tzt-legend{font-size:12px;gap:6px 12px}
}
