/* v620: Same SVG map, four switchable education-building interior plans. */
.festival-map-svg.is-education-floorplan > :not(#education-floorplan-overlay) {
  opacity:0 !important;
  pointer-events:none !important;
}
.festival-map-svg #education-floorplan-overlay {
  pointer-events:visiblePainted;
}
.festival-map-svg .education-svg-room {
  cursor:pointer;
  pointer-events:visiblePainted;
  transition:fill .18s ease,stroke-width .18s ease;
}
.festival-map-svg .education-svg-room:hover,
.festival-map-svg .education-svg-room:focus,
.festival-map-svg .education-svg-room.is-selected {
  fill:#8bdcb4 !important;
  stroke:#247952 !important;
  stroke-width:1.2 !important;
  outline:none;
}
.education-map-floor-controls[hidden],
.education-map-open-link[hidden]{display:none !important}
.education-map-floor-controls {
  position:absolute;
  top:68px;
  left:50%;
  transform:translateX(-50%);
  display:flex;
  z-index:30;
  align-items:center;
  gap:5px;
  padding:5px;
  border-radius:999px;
  background:#f5faf7;
  box-shadow:0 3px 15px rgba(16,58,42,.18);
  border:1px solid #d0e1d8;
  white-space:nowrap;
}
.education-map-floor-controls button{
  appearance:none;
  border:0;
  padding:8px 11px;
  min-width:46px;
  border-radius:999px;
  color:#305947;
  background:transparent;
  font-size:13px;
  font-weight:750;
  cursor:pointer;
}
.education-map-floor-controls button.is-active {
  color:#fff;
  background:#287653;
}
.education-map-open-link{
  display:block;
  width:100%;
  margin-top:12px;
  padding:12px 15px;
  background:#276e4e;
  color:#fff;
  border:0;
  border-radius:12px;
  text-align:center;
  font-weight:750;
  font-size:14px;
  cursor:pointer;
}
.education-map-open-link:hover{background:#185e3e}
@media(max-width:600px){
  .education-map-floor-controls{top:60px;gap:2px;padding:4px}
  .education-map-floor-controls button{min-width:42px;padding:7px 9px;font-size:12px}
}

/* v621: タップ後に即座に反応する軽快な切替 */
.education-map-open-link, .education-map-floor-controls button {
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}
