@charset "utf-8";

/* 2026 土佐琵琶 特別演奏会 */
.biwa2026-divider { height: 1px; margin: 3rem 0 2.5rem; background: linear-gradient(to right, transparent, #d8c9a3, transparent); }
.biwa2026-block { overflow: hidden; border: 1px solid #d8c9a3; border-radius: .5rem; background: #fff; box-shadow: 0 5px 18px rgba(28,23,18,.08); }
.biwa2026-head { padding: 1.7rem 2rem 1.5rem; background: #802341; color: #fff5e0; }
.biwa2026-badge { display: inline-block; margin: 0 0 .7rem; padding: .3rem .9rem; border: 1px solid #d9c48f; border-radius: 999px; color: #f2dfae; font-size: .78rem; letter-spacing: .05em; }
.biwa2026-title { margin: 0 0 .35rem; color: #fff; font-size: 1.6rem; font-weight: 900; letter-spacing: .04em; }
.biwa2026-subtitle { margin: 0; color: #f0d9c2; font-size: .92rem; letter-spacing: .02em; }
.biwa2026-date { margin: .7rem 0 0; color: #fff; font-size: 1.1rem; font-weight: 900; letter-spacing: .02em; }
.biwa2026-body { display: flex; gap: 2.2rem; padding: 2rem; }
.biwa2026-poster { flex: 0 0 34%; margin: 0; }
.biwa2026-poster img { display: block; width: 100%; height: auto; border-radius: .3rem; box-shadow: 0 8px 20px rgba(28,23,18,.18); }
.biwa2026-detail { flex: 1 1 auto; min-width: 0; }
.biwa2026-lead { margin: 0 0 1rem; font-size: .98rem; line-height: 1.85; }
.biwa2026-table { width: 100%; margin: 1.5rem 0; border-collapse: collapse; font-size: .92rem; }
.biwa2026-table th, .biwa2026-table td { padding: .7rem .9rem; border-top: 1px solid #e6ddc9; text-align: left; vertical-align: top; }
.biwa2026-table tr:first-child th, .biwa2026-table tr:first-child td { border-top: none; }
.biwa2026-table th { width: 6rem; color: #802341; font-weight: 700; white-space: nowrap; }
.biwa2026-profile { margin: 1.8rem 0; padding: 1.4rem 1.6rem; border-left: 3px solid #b89b6d; background: #faf6ee; }
.biwa2026-profile-label { margin: 0 0 .5rem; color: #802341; font-size: .8rem; font-weight: 700; letter-spacing: .1em; }
.biwa2026-profile-name { margin: 0 0 .6rem; font-size: 1.05rem; font-weight: 700; }
.biwa2026-profile-txt { margin: 0 0 .8rem; font-size: .88rem; line-height: 1.8; color: #494440; }
.biwa2026-profile-txt:last-child { margin-bottom: 0; }
.biwa2026-notes { margin: 0; padding: 0; list-style: none; font-size: .85rem; line-height: 1.9; color: #625b58; }
.biwa2026-notes li { padding-left: 1.1em; text-indent: -1.1em; }
.biwa2026-notes li::before { content: "※"; margin-right: .2em; }
@media screen and (max-width: 600px) {
	.biwa2026-body { flex-direction: column; padding: 1.4rem; gap: 1.4rem; }
	.biwa2026-poster { flex: none; }
	.biwa2026-head { padding: 1.4rem 1.4rem 1.2rem; }
	.biwa2026-title { font-size: 1.35rem; }
}

/* 汎用イベント詳細ページ（複数イベントで再利用） */
.event-detail-block { overflow: hidden; border: 1px solid #d8c9a3; border-radius: .5rem; background: #fff; box-shadow: 0 5px 18px rgba(28,23,18,.08); margin-bottom: 2.5rem; }
.event-detail-head { padding: 1.7rem 2rem 1.5rem; background: #802341; color: #fff5e0; }
.event-detail-badge { display: inline-block; margin: 0 0 .7rem; padding: .3rem .9rem; border: 1px solid #d9c48f; border-radius: 999px; color: #f2dfae; font-size: .78rem; letter-spacing: .05em; }
.event-detail-title { margin: 0 0 .35rem; color: #fff; font-size: 1.6rem; font-weight: 900; letter-spacing: .04em; }
.event-detail-subtitle { margin: 0; color: #f0d9c2; font-size: .92rem; letter-spacing: .02em; }
.event-detail-date { margin: .7rem 0 0; color: #fff; font-size: 1.1rem; font-weight: 900; letter-spacing: .02em; }
.event-detail-body { display: flex; gap: 2.2rem; padding: 2rem; }
.event-detail-poster { flex: 0 0 34%; margin: 0; }
.event-detail-poster img { display: block; width: 100%; height: auto; border-radius: .3rem; box-shadow: 0 8px 20px rgba(28,23,18,.18); }
.event-detail-poster-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	aspect-ratio: 3 / 4;
	background-color: #802341;
	border-radius: .3rem;
	box-shadow: 0 8px 20px rgba(28,23,18,.18);
}
.event-detail-poster-placeholder img { width: 60%; max-width: 180px; height: auto; display: block; box-shadow: none; border-radius: 0; }
.event-detail-detail { flex: 1 1 auto; min-width: 0; }
.event-detail-lead { margin: 0 0 1rem; font-size: .98rem; line-height: 1.85; }
.event-detail-table { width: 100%; margin: 1.5rem 0; border-collapse: collapse; font-size: .92rem; }
.event-detail-table th, .event-detail-table td { padding: .7rem .9rem; border-top: 1px solid #e6ddc9; text-align: left; vertical-align: top; }
.event-detail-table tr:first-child th, .event-detail-table tr:first-child td { border-top: none; }
.event-detail-table th { width: 6rem; color: #802341; font-weight: 700; white-space: nowrap; }
.event-detail-notes { margin: 0; padding: 0; list-style: none; font-size: .85rem; line-height: 1.9; color: #625b58; }
.event-detail-notes li { padding-left: 1.1em; text-indent: -1.1em; }
.event-detail-notes li::before { content: "※"; margin-right: .2em; }
@media screen and (max-width: 600px) {
	.event-detail-body { flex-direction: column; padding: 1.4rem; gap: 1.4rem; }
	.event-detail-poster { flex: none; }
	.event-detail-poster-placeholder { aspect-ratio: 16 / 9; }
	.event-detail-head { padding: 1.4rem 1.4rem 1.2rem; }
	.event-detail-title { font-size: 1.35rem; }
}
