
#detail-panel.tt-panel {overflow:hidden; padding:0; display:flex; flex-direction:column;}
#detail-panel.tt-panel .tojiru { z-index:15; top:14px; right:14px; }
#detail-panel.tt-panel #detail-content {min-height:0; height:100%; display:flex; flex:1;}
.tt {width:100%;height:100%;min-height:0;display:flex;flex-direction:column;background:#fff;font-family:'Noto Sans JP',sans-serif;}
.tt-ue {flex-shrink:0;background:#fff;}
.tt-label {color:#e72f44;font-size:11px;font-weight:800;letter-spacing:.1em;padding:20px 55px 0 19px;}
.tt-ue h2 {color:#172b2c;text-align:left;font-size:21px;line-height:1.3;margin:4px 55px 17px 19px;font-weight:900;}
.tt-ue h2 span {display:block;font-size:12px;font-weight:700;letter-spacing:.05em;margin-top:3px;}
.tt-hiduke {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;background:#fff;border-top:4px solid #e72f44;border-bottom:1px solid #d7e3e3;}
.tt-hi {border:0;border-radius:0;background:#e6f5f4;color:#244548;padding:10px 0 8px;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0;cursor:pointer;font-family:inherit;}
.tt-hi.is-selected {background:#e72f44;color:#fff;}
.tt-hi:focus-visible {outline:3px solid #195e60;outline-offset:-3px;}
.tt-nichi {font-size:18px;font-weight:900;line-height:1.2;white-space:nowrap;}
.tt-youbi {font-size:11px;font-weight:700;}
.tt-guide {padding:8px 14px;font-size:11px;color:#ffffff;background:#f8fbfb;}
.tt-scroll {flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;background:#fff;}
.tt-zu {position:relative;--axis:51px;background:repeating-linear-gradient(to bottom,#fff 0,#fff 29.75px,#f7faf9 30px,#f7faf9 30.75px);}
.tt-sen {position:absolute;left:50px;right:0;border-top:1px solid #c9d9d8;z-index:0;pointer-events:none;}
.tt-jikan {position:absolute;left:0;width:48px;transform:translateY(-9px);color:#48585b;font-weight:700;font-size:11px;text-align:center;}
.tt-nakami {position:absolute;top:0;bottom:0;left:51px;right:7px;}
.tt-koma {position:absolute;box-sizing:border-box;left:0;right:0;overflow:hidden;padding:7px 9px;border-bottom:2px solid #fff;color:#193235;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:4px;}
.tt-mizu {background:#c9efec;border-left:4px solid #69c3c0;}
.tt-aka {background:#fbe1e5;border-left:4px solid #e72f44;}
.tt-koma.is-current {box-shadow:inset 0 0 0 2px #e72f44;z-index:2;}
.tt-koma-jikan {font-size:10px;line-height:1.25;font-weight:750;color:#40585a;flex:none;}
.tt-koma-mei {font-size:13px;line-height:1.38;font-weight:850;overflow-wrap:anywhere;}
.tt-ima {font-size:9px;border-radius:3px;background:#e72f44;color:#fff;padding:2px 5px;}
.tt-now-line {position:absolute;left:43px;right:0;height:2px;background:#e72f44;z-index:6;pointer-events:none;}
.tt-now-line::before {content:'';position:absolute;left:-3px;top:-4px;width:10px;height:10px;background:#e72f44;border-radius:100%;}
.tt-tokei {position:absolute;right:2px;top:-18px;background:#e72f44;color:#fff;font-size:10px;font-weight:850;padding:2px 5px;border-radius:4px;white-space:nowrap;}
.tt-chuui {flex:none;margin:0;padding:8px 13px;background:#fff;border-top:1px solid #e6eded;color:#68797b;font-size:10px;line-height:1.45;}
@media (max-width:450px){.tt-koma-mei {font-size:12px;}.tt-nakami{right:3px;}.tt-nichi{font-size:17px;}}

.tt-short {padding:4px 6px;gap:1px;}
.tt-short .tt-koma-mei {font-size:11px;line-height:1.2;}
.tt-short .tt-koma-jikan {font-size:9px;}

.tt-nishi-hall .tt-ue { border-top: 5px solid #69c3c0; }
.tt-nishi-hall .tt-ue h2 { letter-spacing: .03em; }
.tt-nishi-hall .tt-guide { background: #eaf8f7; color: #31575a; }


.tt-shoukai {
  padding: 24px 15px 36px;
  background: #fff;
  border-top: 1px solid #e5e5e5;
}
.tt-midashi { margin: 0 0 18px; }
.tt-midashi > span {
  display: block; margin: 0 0 4px;
  color: #e72f44; font-size: 11px; font-weight: 700;
  letter-spacing: .04em;
}
.tt-midashi h3 {
  margin: 0 0 5px; color: #222;
  font-size: 17px; line-height: 1.45; font-weight: 750;
}
.tt-midashi p {
  margin: 0; color: #444;
  font-size: 12px; line-height: 1.6;
}
.tt-list { display: flex; flex-direction: column; gap: 15px; }
.tt-waku {
  position: relative;
  box-sizing: border-box;
  overflow-wrap: anywhere;
  background: #fff;
  border: 1px solid #ddd;
  border-left: 5px solid #e72f44;
  border-radius: 8px;
  padding: 19px 17px 20px;
  box-shadow: 0 1px 3px rgba(0,0,0,.06);
}

.tt-waku:nth-child(even) { border-left-color: #e72f44; }
.tt-shurui {
  margin: 0 0 8px;
  color: #c51e33;
  font-size: 12px; line-height: 1.45; font-weight: 750;
}
.tt-kikaku {
  margin: 0 0 6px;
  color: #222;
  font-size: 20px; line-height: 1.4; font-weight: 800;
}
.tt-dantai {
  margin: 0;
  color: #272727;
  font-size: 15px; line-height: 1.5; font-weight: 700;
}
.tt-description {
  margin: 13px 0 0;
  padding: 0;
  border: 0;
  color: #333;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.7;
  white-space: pre-wrap;
}
.tt-nashi { color: #555; }
@media (max-width: 450px) {
  .tt-shoukai { padding: 21px 12px 28px; }
  .tt-waku { padding: 17px 14px 18px; }
  .tt-kikaku { font-size: 19px; }
  .tt-dantai { font-size: 14px; }
  .tt-description { font-size: 13px; }
}
.tt-koma-mei,
.tt-kikaku {
    font-weight: 700;
}

.tt-ue h2 {
    font-weight: 700;
}

.tt-nichi {
    font-weight: 700;
}

.tt-koma-jikan {
    font-weight: 400;
}