
/* Nara Plus events v2
   短期イベント / 長期開催の分類とトップのコンパクト一覧
   既存共通CSSへ影響させないため events-v2 系でスコープ
*/

.home-events-v2 .home-event-columns{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}
.home-events-v2 .home-event-group{
  min-width:0;
  padding:22px;
  border:1px solid rgba(39,84,59,.13);
  border-radius:20px;
  background:#fff;
  box-shadow:0 10px 28px rgba(25,55,39,.06);
}
.home-events-v2 .home-event-group-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}
.home-events-v2 .home-event-group-head h3{
  margin:5px 0 0;
  font-size:1.18rem;
}
.home-events-v2 .home-event-group-head small{
  color:#6c746e;
  text-align:right;
  line-height:1.5;
}
.home-event-label{
  display:inline-flex;
  padding:4px 9px;
  border-radius:999px;
  background:#fff0e6;
  color:#a44c22;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.04em;
}
.home-event-label-long{
  background:#edf5ed;
  color:#27543b;
}
.home-event-compact-list{
  display:grid;
  gap:0;
}
.home-event-compact-row{
  display:grid;
  grid-template-columns:82px minmax(0,1fr) 20px;
  gap:12px;
  align-items:center;
  padding:13px 2px;
  border-top:1px solid rgba(39,84,59,.10);
  color:inherit;
  text-decoration:none;
}
.home-event-compact-row:first-child{
  border-top:0;
}
.home-event-compact-row:hover strong{
  text-decoration:underline;
  text-underline-offset:3px;
}
.home-event-compact-date{
  font-weight:850;
  font-size:.88rem;
  color:#8f3f28;
  font-variant-numeric:tabular-nums;
}
.home-event-compact-main{
  min-width:0;
}
.home-event-compact-main strong{
  display:block;
  font-size:.94rem;
  line-height:1.5;
}
.home-event-compact-main small{
  display:block;
  margin-top:2px;
  color:#6a726c;
  font-size:.78rem;
}
.home-event-compact-arrow{
  color:#8f3f28;
  font-weight:800;
}

/* イベント一覧 */
.event-type-intro{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.event-type-intro-card{
  padding:22px;
  border-radius:20px;
  border:1px solid rgba(164,76,34,.18);
  background:#fff8f3;
}
.event-type-intro-card.event-type-intro-long{
  border-color:rgba(39,84,59,.18);
  background:#f4f8f3;
}
.event-type-intro-card span{
  display:block;
  margin-bottom:5px;
  color:#a44c22;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.08em;
}
.event-type-intro-card.event-type-intro-long span{
  color:#27543b;
}
.event-type-intro-card strong{
  display:block;
  font-size:1.2rem;
}
.event-type-intro-card p{
  margin:8px 0 0;
  color:#58615b;
  line-height:1.7;
}
.event-type-chip{
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  border-radius:999px;
  font-size:.72rem;
  font-weight:800;
}
.event-type-chip.event-type-short{
  background:#fff0e6;
  color:#a44c22;
}
.event-type-chip.event-type-long{
  background:#edf5ed;
  color:#27543b;
}

@media (max-width:760px){
  .home-events-v2 .home-event-columns,
  .event-type-intro{
    grid-template-columns:1fr;
  }
  .home-events-v2 .home-event-group{
    padding:18px;
    border-radius:18px;
  }
  .home-events-v2 .home-event-group-head{
    align-items:flex-start;
    flex-direction:column;
    gap:4px;
  }
  .home-events-v2 .home-event-group-head small{
    text-align:left;
  }
  .home-event-compact-row{
    grid-template-columns:72px minmax(0,1fr) 18px;
    gap:9px;
    padding:12px 0;
  }
  .home-event-compact-date{
    font-size:.81rem;
  }
  .home-event-compact-main strong{
    font-size:.9rem;
  }
}


/* Event filter v3 */
.event-filter-section{
  padding-top:18px;
  padding-bottom:18px;
}
.event-filter-box{
  border:1px solid rgba(39,84,59,.14);
  border-radius:22px;
  background:#fff;
  padding:22px;
  box-shadow:0 10px 28px rgba(25,55,39,.05);
}
.event-filter-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:18px;
}
.event-filter-head h2{
  margin:5px 0 0;
}
.event-filter-head p{
  margin:0;
  color:#6c746e;
}
.event-filter-controls{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;
  gap:12px;
  align-items:end;
}
.event-filter-field{
  display:grid;
  gap:7px;
  font-weight:800;
  color:#31483a;
}
.event-filter-field span{
  font-size:.82rem;
}
.event-filter-field select{
  width:100%;
  min-height:46px;
  padding:0 38px 0 13px;
  border:1px solid rgba(39,84,59,.18);
  border-radius:13px;
  background:#f8faf7;
  color:#24352a;
  font:inherit;
}
.event-filter-reset{
  min-height:46px;
  padding:0 16px;
  border:1px solid rgba(164,76,34,.18);
  border-radius:13px;
  background:#fff7f1;
  color:#8f3f28;
  font-weight:850;
  cursor:pointer;
}
.event-filter-reset:hover{
  background:#fff0e6;
}
.event-filter-summary{
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid rgba(39,84,59,.10);
  color:#5d675f;
  font-size:.88rem;
}

@media (max-width:760px){
  .event-filter-head{
    align-items:flex-start;
    flex-direction:column;
    gap:5px;
  }
  .event-filter-controls{
    grid-template-columns:1fr 1fr;
  }
  .event-filter-reset{
    grid-column:1 / -1;
    width:100%;
  }
}


/* Event category filter v4 */
.event-filter-controls{
  grid-template-columns:repeat(3,minmax(0,1fr)) auto;
}
.event-category-chip{
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  border-radius:999px;
  background:#f3efe8;
  color:#68543f;
  font-size:.72rem;
  font-weight:800;
}
@media (max-width:900px){
  .event-filter-controls{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .event-filter-reset{
    grid-column:1 / -1;
  }
}
@media (max-width:560px){
  .event-filter-controls{
    grid-template-columns:1fr;
  }
  .event-filter-reset{
    grid-column:auto;
  }
}
