/* 本文リンク用（グローバルメニュー除外） */
main a, .content a {
  text-decoration: none;
  color: #6b8f71;
  font-family: 'Zen Maru Gothic', sans-serif;
  transition: color 0.3s, text-decoration 0.3s;
}

/* スマホ表示時：縦並び中央寄せ */
@media (max-width: 768px) {
  .section .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
  }
}

.evaluation-text {
  text-align: center;
  font-family: 'Zen Maru Gothic', sans-serif;
  font-size: 1rem;
  line-height: 1.6;
  margin-bottom: 1rem;
}

@media screen and (max-width: 767px) {
  .evaluation-text { text-align: left; }
}
/* カード下の画像 */
.schedule-bottom-image img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 40px auto 0; /* 上に余白をしっかり */
    border-radius: 8px;
}

/* スマホ調整 */
@media (max-width: 480px) {
    .schedule-bottom-image img {
        margin: 30px auto 0;
    }
}


/* スケジュールカード全体 */
.schedule-cards {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
}

/* 各カード */
/* 交互背景色 */
.schedule-card:nth-child(odd) {
  background-color: #fff0f0; 
}

.schedule-card:nth-child(even) {
  background-color: #fff7f3;
}

/* 共通スタイル */
.schedule-card {
  border-radius: 12px;
  padding: 10px;
  text-align: center;
  width: 180px;
  box-shadow: 0 3px 6px rgba(0,0,0,0.1);
  transition: transform 0.3s;
}

.schedule-card:hover {
  transform: translateY(-5px);
}


/* 画像 */
.schedule-card img {
  width: 100%;
  border-radius: 8px;
  margin-bottom: 8px;
}

/* 行事内容 */
.schedule-events {
  font-family: 'Zen Maru Gothic', sans-serif;
  font-size: 0.95rem;
  line-height: 1.5;
  color: #333;
  text-align: left;
}

/* スマホ表示：縦並び、カード幅100% */
@media screen and (max-width: 768px) {
  .schedule-cards {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
  }
  .schedule-card {
    width: calc(50% - 6px);
    margin-bottom: 12px;
  }
}

/* 1日のスケジュール */
.daily-schedule {
  max-width: 700px;
  margin: 0 auto;
}

.schedule-row {
  display: flex;
  align-items: flex-start;
  padding: 14px 18px;
  border-radius: 12px;
  margin-bottom: 8px;
  background-color: #ffd6d6;
  transition: background-color 0.3s;
}

.schedule-row:nth-child(even) {
  background-color: #fff2d6;
}

.schedule-row .time {
  flex: 0 0 100px;
  font-weight: bold;
  color: #d94f4f;
  font-size: 1.05rem;
}

.schedule-row .event {
  flex: 1;
  color: #333;
  line-height: 1.6;
  font-size: 1rem;
}

@media screen and (max-width: 768px) {
  .schedule-row {
    flex-direction: column;
    padding: 10px 12px;
  }
  .schedule-row .time {
    flex: none;
    margin-bottom: 4px;
    font-size: 1rem;
  }
  .schedule-row .event {
    font-size: 0.95rem;
  }
}
/* PC表示 */
@media screen and (min-width: 769px) {
  .schedule-row {
    align-items: center;
  }
}
/* スマホ表示 */
@media screen and (max-width: 768px) {
  .daily-schedule {
    width: 100%;
  }
}


/* 主な特色リスト */
.feature-list {
  list-style: none;
  padding-left: 0;
  margin: 0 auto;
  max-width: 700px;
}

.feature-list li {
  margin-bottom: 3.5rem;
  line-height: 1.6;
  font-size: 1.05rem;
  text-align: left;
}

.feature-list li .large24 {
  font-size: 1.5rem;
  font-weight: bold;
  color: #ff6b6b;
  display: block;
  margin-bottom: 0.5rem;
  line-height: 1.2;
}


.feature-list li a {
  text-decoration: none;
  color: #ff6b6b;
}

.feature-list li a:hover {
  text-decoration: underline;
  color: #ff4b4b;
}

/* スマホ表示の余白調整 */
@media screen and (max-width: 768px) {
  .feature-list li {
    font-size: 1rem;
    margin-bottom: 1.5rem;
  }
}