/* ========== Base ========== */
body {
  font-family: 'Noto Serif JP', serif;
  background-color: #f0f0f0; /* 背景は別実装 */
  margin: 0;
  text-align: center;
}

/* ========== Tabs (date switch) ========== */
.example2{
  position: fixed;
  top: env(safe-area-inset-top);
  left: 0; right: 0;
  display: flex;
  justify-content: center;
  gap: 12px;
  padding: 12px 8px;
  z-index: 30;
}

.example2 input{ display: none; }

.example2 label{
  display: block;
  min-width: 150px;
  background: #BAD3FF;
  color: #000;
  padding: 10px 16px;
  margin: 6px 0;
  border-radius: 30px;
  cursor: pointer;
  user-select: none;
  transition: background-color .2s ease, color .2s ease;
  font-weight: 600;
}

#tab-11:checked + label[for="tab-11"],
#tab-12:checked + label[for="tab-12"]{
  background: #0056b3;
  color: #fff;
}

/* ========== Layout ========== */
main { padding-top: 0px; } /* 上部タブが固定のため余白確保（元の見え方を維持） */

.schedule-container {
  padding: 10%;
  padding-top: 20%; /* 既存の見え方を保持（必要なら後で調整） */
  border-radius: 8px;
  box-shadow: 0 0 10px rgba(0,0,0,.1);
  margin-bottom: 30px;
  background: transparent; /* 背景装飾は別ファイルに任せる */
}

.schedule-container h3{
  text-align: left;
  color: #3399FF;
}

/* ========== Images ========== */
.slide-image {
  width: 40%;
  height: auto;
  border-radius: 8px;
}

.info-picture {
  display: grid;
  width: 50%;
  margin: 0 auto;
  padding: 5%;
}

.info-image {
  width: 50%;
  height: auto;
  margin: auto;
}

/* ========== Slideshow container (静的画像でもOK) ========== */
.slideshow-container {
  position: relative;
  max-width: 100%;
  margin: auto;
}

/* ========== Responsive ========== */
@media (max-width: 768px) {
  .example2 { padding-top: 10%; }
  .schedule-container { padding-top: 20%; }
  .slide-image { width: 70%; }
  .info-picture { width: 100%; padding: 5%; }
  .info-image { width: 50%; }
}

@media (max-width: 480px) {
  .slide-image { width: 80%; }
}









/* ===== 共通設定 ===== */
.illust-container {
  position: absolute; /* ページ内で自由に配置できる */
  top: 500px;  /* 任意の位置（上からの距離） */
  right: 20%; /* 任意の位置（右からの距離） */
  z-index: 10; /* 他の要素より前面に */
}

.illust {
  width: 180px; /* 大きさ調整 */
  height: auto;
  display: block;
}

/* ===== スマホ版で位置変更 ===== */
@media (max-width: 768px) {
  .illust-container {
    top: 230px;
    bottom: 40px; /* 下に移動など自由に変更可能 */
    right: 8px;
    left: auto;
  }

  .illust {
    width: 120px; /* 小さめに */
  }
}

#sec-honkan{
  display: block;
}

#sec-honkan.hidden{
  display: none;
}

#sec-honkan2{
  display: block;
}

#sec-honkan2.hidden{
  display: none;
}