@charset "UTF-8";

* {font-family: 'Zen Maru Gothic', sans-serif;}
body {margin: 0; overflow-x: hidden; background: #fff01a;}
/* カレンダーの外枠 */
.innerFrame1 {display: block; width: 100%; background-color: #fff01a; padding-bottom: 15px;}
/* カレンダー上部（年月 & 月移動ボタン） */
.grid_1 {display: flex; justify-content: center; align-items: baseline;}
/* 週の曜日 */
.grid_2 {display: grid; grid-template-columns: calc(10px) 0.5fr 0.5fr 1fr 1fr 1fr 1fr 1fr calc(10px); grid-auto-rows: 20px; background-color: #fff01a; min-width: 1000px;}
/* カレンダー本体の入れ物 */
.grid_3 {display: grid; grid-template-columns: 14px calc(100% - 28px) 14px; background-color: #fff01a; min-width: 1000px;}
/* カレンダー本体 */
.grid_4 {display: grid; grid-template-columns: 0.5fr 0.5fr 1fr 1fr 1fr 1fr 1fr; margin-bottom: 1rem;}
/* 日付 */
.day {border: solid 1px #fff01a; display: flex; align-items: flex-start; flex-direction: column;}
/* 日付（非表示） */
.noday {display: none;}
/* 月移動ボタンの外枠 */
.btn_box {display: flex; justify-content: center; align-items: center; /*border: solid 1px green;*/}
/* 月移動ボタン */
.btn {width: 25px; height: 25px; display: flex; justify-content: center; align-items: center; border: solid 1px black;}
/* 年見出し */
.year {color: #b4b4b4; display: flex; justify-content:center; align-items: center; font-size: 1rem;}
/* 月見出し */
.month {color: #ff6500; display: flex; justify-content: right; align-items: center; font-size: 3rem;}
/* 日曜・祝日 */
.holiday {color: #ff0000;}
/* 土曜 */
.saturday {color: #0000ff;}
/* 大きい文字 */
.largeFont {font-size: 1rem;}
/* 小さい文字 */
.smallFont {/* font-size: 0.8rem; */ color: #ddd;}
/* 選択日 */
.currentDay {/*border: solid 2px red;*/}
/* 曜日 */
.weekday {display: flex; justify-content: center; align-items: center; font-size: 0.9rem;}

.innerFrame1 {width: 1000px; margin: 40px auto;}
.grid_4 > div {padding: 6px 6px 16px 10px; background: #fff; min-height: 100px;}
.grid_4 > div:nth-of-type(7n + 1) {background: #eee;}
.grid_4 > div:nth-of-type(7n + 2) {background: #eee;}
.grid_4 > div p {margin-top: 0; margin-bottom: 6px!important; font-size: 1rem; line-height: 1.2rem; color: #444; border-bottom: 1px dotted #fff01a; padding-bottom: 4px;}

.grid_4 > div p.icon {display: flex; align-items: flex-start;}
.grid_4 > div p.icon a {color: #444; text-decoration: none; display: flex; align-items: flex-start;}
.grid_4 > div p a {color: #444; text-decoration: none;}
.grid_4 > div p img {width: 30px; margin-right: 10px;}

.cal .open {border: 1px solid #4162cc; border-radius: 5px; background: #fff; padding: 20px; margin: 20px auto 20px; box-sizing: border-box; width: calc(100% - 28px)!important;}
.cal .open h4 {font-size: 1.2rem; margin: 0 auto 0.2rem 0; color: #7f9eff; letter-spacing: 0.1rem;}
.cal .open dl {display: flex; flex-wrap: wrap; align-items: center; margin: 0 auto; width: 98%;}
.cal .open dt {color: #7f9eff; flex-basis: calc(6rem + 1%); margin-right: 1%;}
.cal .open dd {color: #7f9eff; letter-spacing: 0.1rem; flex-basis: calc(100% - 6rem - 2%); margin: 0;}

.grid_2 {grid-auto-rows: 80px;}
.weekday img {max-height: 74px; display: block; margin: 0 auto;}

.innerFrame1 p {font-size: 100%!important;}

@media screen and (max-width: 700px) {
.innerFrame1 {width: 100%;}
.grid_4 > div p.icon {width: 100%; justify-content: center;}
.grid_4 > div p.icon img {width: auto; height: 40px;}
/* .grid_4 > div p.icon span {display: none;} */
.scroll {overflow-x: scroll;}
.grid_2 {grid-auto-rows: 56px;}
.weekday img {max-width: 50px;}
}

.cal .icon-info {border: 1px solid #4162cc; border-radius: 5px; background: #fff; padding: 20px; margin: 20px auto 20px; box-sizing: border-box; width: calc(100% - 28px)!important;}
.cal .icon-info dl {display: flex; flex-wrap: wrap; align-items: center; margin: 0 auto; width: 98%;}
.cal .icon-info dt {color: #7f9eff; flex-basis: calc(40px + 1%); margin-right: 1%; margin-bottom: 10px;}
.cal .icon-info dt::after {content: none;}
.cal .icon-info dd {color: #7f9eff; letter-spacing: 0.1rem; flex-basis: calc(100% - 40px - 2%); margin: 0; margin-bottom: 10px;}

/* 2025年10月用 */
.ten #d14 {background: #fff; position: relative;}
.ten #d14::after {content: "開館"; font-size: 0.8rem; color: #444; position: absolute; top: 4px; right: 4px; z-index: 1;}
.ten #d25 p:nth-of-type(1), .ten #d26 p:nth-of-type(1), .ten #d27 p:nth-of-type(1) {min-height: calc(3 * 1.2rem);}

/* 2025年11月用 */
.eleven #d7, .eleven #d28 {background: #fff; position: relative;}
.eleven #d7::after, .eleven #d28::after {content: "開館"; font-size: 0.8rem; color: #444; position: absolute; top: 4px; right: 4px; z-index: 1;}
.eleven #d32 p:nth-of-type(1), .eleven #d33 p:nth-of-type(1), .eleven #d34 p:nth-of-type(1) {min-height: calc(3 * 1.2rem);}

/* 2025年12月用 */
.twelve #d26, .twelve #d27, .twelve #d28, .twelve #d29, .twelve #d30, .twelve #d31, .twelve #d32, .twelve #d33, .twelve #d34 {background: #eee;}

/* 2026年1月用 */
.one #d2, .one #d3, .one #d4, .one #d5, .one #d6, .one #d7, .one #d9, .one #d10, .one #d11, .one #d16, .one #d17, .one #d18, .one #d19, .one #d20, .one #d21 {background: #eee;}
.one #d14 {background: #fff; position: relative;}
.one #d14::after {content: "開館"; font-size: 0.8rem; color: #444; position: absolute; top: 4px; right: 4px; z-index: 1;}