/* ==========================================================================
   Shared CPT archive/single detail pages (お知らせ一覧, 関連イベント詳細, …)
   The page background + corner clouds and the breadcrumb are shared by
   every non-front-page template (see body:not(.home) in style.css and
   shurijocastle_breadcrumb() in inc/template-tags.php); this file holds the
   narrow content column shared by every archive/single detail page here,
   plus each page's own list/meta layout below it.
   ========================================================================== */
.single .page-title {
	font-size: clamp(36px, 5vw, 40px);
	text-align: left;
	letter-spacing: 0;
}

.archive-content {
	max-width: 900px;
	margin: 0 auto;
	padding: 0 0 120px;
}

.archive-back {
	margin-top: 80px;
}

.single .sec-inner.contact-inner {
	padding-top: 0;
}

@media (max-width: 768px) {
	.archive-content {
		padding: 0 0 28vw;
	}
}

/* ── お知らせ一覧 (archive-notice.php) ── */

.notice-list {
	list-style: none;
	padding-left: 0;
}

.notice-list__item {
	display: flex;
	align-items: baseline;
	gap: 32px;
	padding: 24px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.35);
}

.notice-list__date {
	flex-shrink: 0;
	letter-spacing: 0.05em;
	font-size: 95%;
}

.notice-list__link {
	text-decoration: underline;
	text-underline-offset: 3px;
}

.notice-list__empty {
	text-align: center;
	padding: 60px 0;
}

.archive-content .pagination,
.archive-content .nav-links {
	margin-top: 40px;
}

@media (max-width: 480px) {
	.notice-list__item {
		flex-direction: column;
		gap: 4px;
		padding: 4vw 0;
	}

	.notice-list__date {
		font-size: 3vw;
	}

	.notice-list__link {
		font-size: 3.8vw;
	}
}

/* ── Shared bordered content box (single-schedule_event.php,
   single-notice.php) — wraps a featured image and/or the_content(). ── */

.detail-content-box {
	border: 1px solid rgba(255, 255, 255, 0.4);
	padding: 60px;
}

.detail-content-box .wp-post-image {
	margin-bottom: 30px;
}

.detail-content-box h2 {
	border-bottom: 1px solid rgba(255, 255, 255, 0.6);
	padding-bottom: 12px;
	margin-bottom: 20px;
	display: inline-block;
}

.detail-content-box h3 {
	margin-top: 35px;
}

@media (max-width: 480px) {
	.detail-content-box {
		padding: 8vw 6vw;
	}
}

/* ── 関連イベント詳細 (single-schedule_event.php) ── */

.event-meta {
	margin-bottom: 50px;
}

.event-meta__row {
	display: flex;
	gap: 40px;
	padding: 10px 0;
	letter-spacing: 0.06em;
}

.event-meta__label {
	flex: 0 0 140px;
}

.event-meta__value {
	flex: 1;
}

@media (max-width: 480px) {
	.event-meta__row {
		gap: 4vw;
		padding: 2.5vw 0;
		font-size: 3.6vw;
	}

	.event-meta__label {
		flex: 0 0 24vw;
	}
}

/* ── お知らせ詳細 (single-notice.php) ── */

.notice-single__date {
	display: block;
	letter-spacing: 0.05em;
	font-size: 95%;
	margin-bottom: 10px;
}

.notice-single__title {
	text-align: left;
	font-size: clamp(24px, 3vw, 32px);
	margin-bottom: 40px;
}

@media (max-width: 480px) {
	.notice-single__title {
		margin-bottom: 8vw;
		margin-top: 3vw;
	}

	.single-notice .site-content-wrap {
		padding-top: 12vw;
	}
}

.post-type-archive-schedule_event .site-main{
	max-width: 100%;
}
