*{box-sizing:border-box}body{margin:0;font-family:Avenir Next,Nunito,Segoe UI,sans-serif;color:#2f3e46;background:#fff;line-height:1.6}h1,h2{font-family:Pacifico,cursive;font-weight:400;color:#164e63}a{color:#1f6f8b}main{max-width:900px;margin:auto;padding:4rem 1.2rem 3rem}.small{color:#7a8a90;font-size:.9rem}.cal{width:100%;height:600px;border:0}.wide{width:100%;height:auto}.legend{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.4rem 1.2rem}.legend span{display:inline-block;width:.8em;height:.8em;border-radius:50%;margin-right:.4em}.waffle{position:fixed;top:14px;right:14px;z-index:30;width:44px;height:44px;padding:9px;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:4px;gap:4px;border:0;border-radius:10px;background:rgba(255,255,255,.75);cursor:pointer}.waffle i{background:#164e63;border-radius:2px}.menu{position:fixed;top:66px;right:14px;z-index:30;background:#fff;border-radius:12px;box-shadow:0 8px 30px #0003;padding:.5rem;min-width:200px;display:none;max-height:80vh;overflow:auto}.menu a{display:block;padding:.45rem .8rem;text-decoration:none;border-radius:8px;color:#164e63}.menu a:hover{background:#eef6f8}.menu hr{border:0;border-top:1px solid #eee}.home{height:100vh;height:100dvh}.bg,.home{overflow:hidden}.bg{position:fixed;inset:0;background:#222}.stage{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100vw,90.78vh);height:max(100vh,110.16vw)}.stage img{width:100%;height:100%;display:block}.spot{position:absolute;top:20%;height:62%;width:7.8%;border-radius:40px;transition:.2s}.spot:focus,.spot:hover{background:rgba(255,255,255,.18);box-shadow:0 0 0 2px rgba(255,255,255,.5)}.title{position:fixed;top:4vh;left:0;right:0;text-align:center;margin:0;color:#C42329;font-size:clamp(2.5rem,8vw,5.5rem);text-shadow:0 1px 8px rgba(255,255,255,.6);pointer-events:none;z-index:5}.homewrap{position:fixed;inset:0;overflow:hidden}.evday h3{margin:1.2rem 0 .2rem;color:#164e63;font-weight:600}.ev{margin:.2rem 0}.dot{display:inline-block;width:.7em;height:.7em;border-radius:50%;margin-right:.5em}.linkform label{display:block}.btnlink,button[type=submit]{display:inline-block;background:#1f6f8b;color:#fff;border:0;padding:.5rem 1rem;border-radius:20px;text-decoration:none;font:inherit;cursor:pointer}.plainbtn{background:none;border:0;color:#7a8a90;text-decoration:underline;font:inherit}.plainbtn,.spot{cursor:pointer}.spot.on{background:rgba(255,255,255,.18);box-shadow:0 0 0 2px rgba(255,255,255,.5)}.pop{display:none;position:absolute;left:50%;top:-8px;transform:translate(-50%,-100%);background:#fff;border-radius:12px;box-shadow:0 6px 20px rgba(0,0,0,.25);padding:.35rem .5rem;white-space:nowrap;gap:.4rem;align-items:center;z-index:20}.spot.on .pop,.spot:focus-within .pop,.spot:hover .pop{display:flex}.pop a{text-decoration:none;color:#164e63;font-weight:600;padding:.2rem .5rem}.pop .mail{background:#C42329;color:#fff;border-radius:14px;font-weight:400}