﻿*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:"Yu Gothic","Meiryo",sans-serif;background:#f4f8fa;color:#123}
.site-wrap,.wrap{width:100%;max-width:850px;margin-left:auto;margin-right:auto}
.site-header{background:#278ca1;color:#fff;padding:32px 20px}.site-header .site-wrap{width:100%;max-width:850px;margin-left:auto;margin-right:auto}
.site-header h1{margin:0 0 15px;font-size:28px}
.site-header p{margin:0;font-weight:bold}
.site-nav{background:#fff;border-bottom:1px solid #ddd;padding:13px 20px}
.site-nav-inner{display:flex;justify-content:center;align-items:center;gap:25px;flex-wrap:wrap}
.site-nav a{color:#075f78;text-decoration:none;font-weight:bold;white-space:nowrap}
.site-nav a:hover{text-decoration:underline}
main.site-wrap,main.wrap{padding:22px 14px 45px}
.card{background:#fff;border-radius:15px;padding:20px;margin-bottom:16px;box-shadow:0 3px 15px rgba(0,0,0,.07)}
h2{color:#08708b;border-left:5px solid #f5a623;padding-left:10px;margin-top:0}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.tile{display:block;background:#e8f5f8;padding:15px;border-radius:10px;color:#123;text-decoration:none;font-weight:bold}
.tile:hover{background:#d9eef3}
.btn{display:inline-block;background:#278ca1;color:#fff;text-decoration:none;border-radius:9px;padding:11px 18px;font-weight:bold}
.back{background:#607d86}
.site-footer{background:#16586b;color:#fff;text-align:center;padding:24px;margin-top:30px}
.text{line-height:1.9}.notice{padding:14px 0;border-bottom:1px solid #e2eaed}.notice:last-child{border-bottom:0}
.date{display:block;color:#667;font-size:14px;margin-bottom:5px}.notice strong{display:block;font-size:17px;margin-bottom:5px}.notice-body{line-height:1.8}
.event{padding:13px 0;border-bottom:1px solid #e2eaed}.event:last-child{border-bottom:0}.event h3{margin:0 0 10px;font-size:17px}.event p{margin:6px 0;line-height:1.8}.date{display:inline-block;background:#e8f5f8;color:#08708b;border-radius:6px;padding:6px 9px;font-weight:bold;margin-bottom:10px}
.btnrow{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.small{font-size:.9rem;color:#58666b}
.row{margin:14px 0}.row label{display:block;font-weight:bold;margin-bottom:6px}input,textarea{width:100%;padding:11px;border:1px solid #cbd7da;border-radius:6px;font-size:16px}textarea{min-height:180px;resize:vertical}
.send{background:#08708b}
@media(max-width:600px){.site-header h1{font-size:22px}.site-nav-inner{gap:15px}.site-nav a{font-size:14px}.grid{grid-template-columns:1fr}.btn{width:100%;text-align:center}.site-footer{padding:22px 15px}}
