/* =========================================================
   YP reports single - hide DigiPress standard header/breadcrumb
   reports個別ページでは子テーマ single-reports.php 側の見出し・パンくずを使う
   ========================================================= */
body.single-reports #ct-hd,
body.single-reports #dp_breadcrumb_nav {
	display: none !important;
}

	.yp-reports-single,.yp-reports-single *{box-sizing:border-box}.yp-reports-single{width:min(1040px,calc(100% - 40px));margin:0 auto;padding:44px 0 104px;color:#242424;font-size:16px;line-height:1.9}.yp-reports-single__breadcrumb{margin:0 0 40px;font-size:13px;line-height:1.8;color:#777}.yp-reports-single__breadcrumb-list{display:flex;flex-wrap:wrap;gap:4px 8px;margin:0;padding:0;list-style:none}.yp-reports-single__breadcrumb-list li{display:inline-flex;align-items:center;gap:8px}.yp-reports-single__breadcrumb-list li:not(:last-child)::after{content:"/";color:#bbb}.yp-reports-single__breadcrumb a{color:inherit;text-decoration:none}.yp-reports-single__breadcrumb a:hover,.yp-reports-single__breadcrumb a:focus{color:#333;text-decoration:underline;text-underline-offset:4px}.yp-reports-single__header{max-width:900px;margin:0 auto 64px;text-align:center}.yp-reports-single__icon{margin:0 0 12px;font-size:24px;line-height:1}.yp-reports-single__date{margin:0 0 16px!important;padding:0!important;font-size:14px!important;line-height:1.7!important;color:#999!important;letter-spacing:.08em!important}.yp-reports-single__title{margin:0!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;font-size:clamp(30px,4.2vw,46px)!important;line-height:1.55!important;font-weight:500!important;letter-spacing:.045em!important;color:#222!important}.yp-reports-single__title::before,.yp-reports-single__title::after{content:none!important;display:none!important}.yp-reports-single__subtitle{margin:20px 0 0!important;padding:0!important;font-size:15px!important;line-height:1.9!important;color:#777!important;letter-spacing:.08em!important}.yp-reports-single__location{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:14px 0 0!important;padding:0!important;font-size:14px!important;line-height:1.9!important;color:#777!important}.yp-reports-single__location span:not(:last-child)::after{content:"/";margin-left:8px;color:#bbb}.yp-reports-single__back-top{margin:30px 0 0}.yp-reports-single__back-link{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:36px!important;padding:0 2px 5px!important;color:#666!important;font-size:14px!important;line-height:1.6!important;letter-spacing:.04em!important;text-decoration:none!important;border-bottom:1px solid #d6d6d6!important}.yp-reports-single__back-link:hover,.yp-reports-single__back-link:focus{color:#222!important;border-bottom-color:#9f9a86!important}.yp-reports-single__content{max-width:920px;margin:0 auto;color:#282828;font-size:16px!important;line-height:2.05!important;letter-spacing:.025em}.yp-reports-single__content p{margin:0 0 1.75em!important;padding:0!important;font-size:clamp(15.5px,1.25vw,17px)!important;line-height:2.12!important;letter-spacing:.03em!important;color:#303030!important}.yp-reports-single__content h2,.yp-reports-single__content h3{border:0!important;background:none!important;box-shadow:none!important;color:#222!important}.yp-reports-single__content h2{margin:3.2em 0 1.4em!important;padding:0!important;font-size:clamp(24px,2.6vw,32px)!important;line-height:1.7!important;font-weight:500!important;letter-spacing:.045em!important}.yp-reports-single__content h3{margin:2.7em 0 1.1em!important;padding:0!important;font-size:clamp(20px,2.1vw,26px)!important;line-height:1.75!important;font-weight:500!important;letter-spacing:.04em!important}.yp-reports-single__content h2::before,.yp-reports-single__content h2::after,.yp-reports-single__content h3::before,.yp-reports-single__content h3::after{content:none!important;display:none!important}.yp-reports-single__content figure,.yp-reports-single__content .wp-block-image{margin:40px auto 48px!important}.yp-reports-single__content img{display:block;max-width:100%;height:auto}.yp-reports-single__content figcaption{margin-top:10px!important;font-size:13px!important;line-height:1.8!important;color:#777!important;text-align:center!important}.yp-reports-single__content ul,.yp-reports-single__content ol{margin:0 0 2em 1.4em!important;padding:0!important;font-size:16px!important;line-height:2!important}.yp-reports-single__related{max-width:920px;margin:84px auto 0;padding:42px 0 0;border-top:1px solid #e5e0d4}.yp-reports-single__related-label{margin:0 0 8px!important;padding:0!important;font-size:11px!important;line-height:1.6!important;letter-spacing:.18em!important;color:#999!important;text-align:center!important}.yp-reports-single__related-title{margin:0 0 10px!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;font-size:24px!important;line-height:1.5!important;font-weight:500!important;text-align:center!important;color:#222!important}.yp-reports-single__related-title::before,.yp-reports-single__related-title::after{content:none!important;display:none!important}.yp-reports-single__related-note{margin:0 0 26px!important;padding:0!important;font-size:12px!important;line-height:1.8!important;color:#9a9381!important;text-align:center!important;letter-spacing:.04em!important}.yp-reports-single__related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.yp-reports-single__related-card{position:relative;display:block;min-height:156px;padding:22px 58px 22px 22px;border:1px solid #e3dece;background:#fff;color:#222;text-decoration:none;box-shadow:0 10px 28px rgba(0,0,0,.035);transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}.yp-reports-single__related-card:hover,.yp-reports-single__related-card:focus{background:#fbfaf5;color:#222;text-decoration:none;border-color:#cfc8b1;box-shadow:0 14px 34px rgba(0,0,0,.06);transform:translateY(-2px)}.yp-reports-single__related-card strong{display:block;margin:8px 0 9px;font-size:16px;line-height:1.75;font-weight:500;letter-spacing:.035em}.yp-reports-single__related-card small{display:block;font-size:13px;line-height:1.8;color:#777;letter-spacing:.02em}.yp-reports-single__related-type{display:inline-flex;padding:3px 8px;background:#f0efe8;color:#777;font-size:11px;line-height:1.5;letter-spacing:.08em}.yp-reports-single__related-card--photo_hub .yp-reports-single__related-type{background:#f1eee5}.yp-reports-single__related-card--event_guide .yp-reports-single__related-type{background:#eef1e8}.yp-reports-single__related-arrow{position:absolute;right:20px;bottom:20px;display:grid;place-items:center;width:34px;height:34px;border:1px solid #ded8c7;border-radius:50%;background:#fff;color:#777;font-size:28px;line-height:1;font-family:Georgia,serif;transition:transform .2s ease,border-color .2s ease,color .2s ease}.yp-reports-single__related-card:hover .yp-reports-single__related-arrow,.yp-reports-single__related-card:focus .yp-reports-single__related-arrow{transform:translateX(2px);border-color:#bdb59f;color:#333}.yp-reports-single__bottom-back{margin:76px 0 0!important;text-align:center!important}.yp-reports-single__bottom-back-link{display:inline-flex!important;width:92px!important;height:92px!important;flex-direction:column!important;gap:4px!important;align-items:center!important;justify-content:center!important;border:1px solid #d8d4c8!important;border-radius:999px!important;background:#fff!important;color:#444!important;font-size:14px!important;line-height:1.35!important;letter-spacing:.08em!important;text-decoration:none!important;box-shadow:0 12px 34px rgba(0,0,0,.06)!important;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease!important}.yp-reports-single__bottom-back-link:hover,.yp-reports-single__bottom-back-link:focus{color:#222!important;border-color:#aaa58f!important;box-shadow:0 16px 40px rgba(0,0,0,.09)!important;transform:translateY(-2px)!important}.yp-reports-single__bottom-back-link span:first-child{font-size:18px!important;line-height:1!important}.yp-reports-single__floating-back{position:fixed!important;top:50%!important;right:18px!important;z-index:9998!important;transform:translateY(-50%)!important}.yp-reports-single__floating-back a{display:flex!important;flex-direction:column!important;gap:8px!important;align-items:center!important;justify-content:center!important;width:62px!important;min-height:124px!important;padding:16px 10px!important;border:1px solid #d8d4c8!important;border-radius:0!important;background:rgba(255,255,255,.96)!important;color:#444!important;text-decoration:none!important;writing-mode:vertical-rl!important;font-size:13px!important;line-height:1.45!important;letter-spacing:.1em!important;box-shadow:0 14px 36px rgba(0,0,0,.09)!important;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease!important}.yp-reports-single__floating-back a:hover,.yp-reports-single__floating-back a:focus{color:#222!important;border-color:#aaa58f!important;box-shadow:0 18px 44px rgba(0,0,0,.12)!important;transform:translateX(-2px)!important}.yp-reports-single__floating-back a span:first-child{font-size:15px!important;line-height:1!important}@media screen and (max-width:767px){.yp-reports-single{width:calc(100% - 28px);padding:30px 0 84px}.yp-reports-single__breadcrumb{margin-bottom:32px;font-size:12px}.yp-reports-single__header{margin-bottom:46px}.yp-reports-single__title{font-size:clamp(25px,7.2vw,34px)!important}.yp-reports-single__content{font-size:15.5px!important;line-height:2.02!important}.yp-reports-single__content p{font-size:15.5px!important;line-height:2.05!important}.yp-reports-single__content figure,.yp-reports-single__content .wp-block-image{margin:32px auto 38px!important}.yp-reports-single__related-grid{grid-template-columns:1fr}.yp-reports-single__bottom-back-link{width:84px!important;height:84px!important;font-size:13px!important}.yp-reports-single__floating-back{top:auto!important;right:14px!important;bottom:18px!important;transform:none!important}.yp-reports-single__floating-back a{width:auto!important;min-height:44px!important;padding:10px 14px!important;writing-mode:horizontal-tb!important;flex-direction:row!important;gap:8px!important;font-size:12px!important}}

/* =========================================================
   YP reports single related photo cards v2.3.0
   関連ページを写真カード型で表示
   - 1枚: 中央1枚
   - 2枚: 2枚を中央配置
   - 3枚以上: 3列を中央配置
   ========================================================= */
.yp-reports-single__related {
	max-width: 1120px !important;
	margin: 92px auto 0 !important;
	padding: 46px 0 0 !important;
	border-top: 1px solid #e5e0d4 !important;
}

.yp-reports-single__related-grid {
	display: grid !important;
	gap: 22px !important;
	width: 100% !important;
	margin: 34px auto 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
	justify-content: center !important;
}

.yp-reports-single__related-grid--count-1 {
	grid-template-columns: minmax(0, 520px) !important;
	max-width: 520px !important;
}

.yp-reports-single__related-grid--count-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	max-width: 900px !important;
}

.yp-reports-single__related-grid--count-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	max-width: 1120px !important;
}

.yp-reports-single__related-card {
	position: relative !important;
	display: block !important;
	min-height: 0 !important;
	aspect-ratio: 4 / 3 !important;
	padding: 0 !important;
	overflow: hidden !important;
	border: 1px solid #e3dece !important;
	background: #f5f3ec !important;
	color: #ffffff !important;
	text-decoration: none !important;
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.06) !important;
	transition:
		transform 0.28s ease,
		border-color 0.28s ease,
		box-shadow 0.28s ease !important;
}

.yp-reports-single__related-card:hover,
.yp-reports-single__related-card:focus {
	background: #f5f3ec !important;
	color: #ffffff !important;
	text-decoration: none !important;
	border-color: #cfc8b1 !important;
	box-shadow: 0 20px 52px rgba(0, 0, 0, 0.10) !important;
	transform: translateY(-3px) !important;
}

.yp-reports-single__related-media,
.yp-reports-single__related-media img,
.yp-reports-single__related-noimage {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
}

.yp-reports-single__related-media img {
	max-width: none !important;
	object-fit: cover !important;
	transition: transform 0.42s ease, filter 0.42s ease !important;
}

.yp-reports-single__related-card:hover .yp-reports-single__related-media img,
.yp-reports-single__related-card:focus .yp-reports-single__related-media img {
	transform: scale(1.045) !important;
	filter: saturate(1.03) contrast(1.02) !important;
}

.yp-reports-single__related-noimage {
	display: grid !important;
	place-items: center !important;
	background: linear-gradient(135deg, #f5f3ec 0%, #ddd7c6 100%) !important;
	color: #9a9381 !important;
	font-size: 12px !important;
	line-height: 1.6 !important;
	letter-spacing: 0.18em !important;
}

.yp-reports-single__related-overlay {
	position: absolute !important;
	inset: 0 !important;
	display: block !important;
	background: linear-gradient(
		to top,
		rgba(0, 0, 0, 0.58) 0%,
		rgba(0, 0, 0, 0.30) 42%,
		rgba(0, 0, 0, 0.06) 76%,
		rgba(0, 0, 0, 0.00) 100%
	) !important;
	opacity: 0.82 !important;
	transition: opacity 0.28s ease !important;
}

.yp-reports-single__related-card:hover .yp-reports-single__related-overlay,
.yp-reports-single__related-card:focus .yp-reports-single__related-overlay {
	opacity: 0.94 !important;
}

.yp-reports-single__related-body {
	position: absolute !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	z-index: 2 !important;
	display: block !important;
	padding: 24px 58px 24px 24px !important;
	box-sizing: border-box !important;
	color: #ffffff !important;
	text-shadow: 0 1px 12px rgba(0, 0, 0, 0.28) !important;
}

.yp-reports-single__related-card strong {
	display: block !important;
	margin: 10px 0 7px !important;
	font-size: clamp(16px, 1.5vw, 20px) !important;
	line-height: 1.65 !important;
	font-weight: 500 !important;
	letter-spacing: 0.035em !important;
	color: #ffffff !important;
}

.yp-reports-single__related-card small {
	display: block !important;
	font-size: 13px !important;
	line-height: 1.8 !important;
	color: rgba(255, 255, 255, 0.86) !important;
	letter-spacing: 0.02em !important;
}

.yp-reports-single__related-type {
	display: inline-flex !important;
	align-items: center !important;
	min-height: 24px !important;
	padding: 3px 9px !important;
	background: rgba(255, 255, 255, 0.82) !important;
	color: #514c40 !important;
	font-size: 11px !important;
	line-height: 1.5 !important;
	letter-spacing: 0.08em !important;
	text-shadow: none !important;
}

.yp-reports-single__related-card--photo_hub .yp-reports-single__related-type,
.yp-reports-single__related-card--event_guide .yp-reports-single__related-type {
	background: rgba(255, 255, 255, 0.82) !important;
}

.yp-reports-single__related-arrow {
	position: absolute !important;
	right: 20px !important;
	bottom: 22px !important;
	z-index: 3 !important;
	display: grid !important;
	place-items: center !important;
	width: 38px !important;
	height: 38px !important;
	border: 1px solid rgba(255, 255, 255, 0.68) !important;
	border-radius: 50% !important;
	background: rgba(255, 255, 255, 0.16) !important;
	color: #ffffff !important;
	font-size: 28px !important;
	line-height: 1 !important;
	font-family: Georgia, serif !important;
	text-shadow: 0 1px 8px rgba(0, 0, 0, 0.25) !important;
	transition:
		transform 0.28s ease,
		background-color 0.28s ease,
		border-color 0.28s ease !important;
}

.yp-reports-single__related-card:hover .yp-reports-single__related-arrow,
.yp-reports-single__related-card:focus .yp-reports-single__related-arrow {
	transform: translateX(3px) !important;
	background: rgba(255, 255, 255, 0.28) !important;
	border-color: rgba(255, 255, 255, 0.86) !important;
	color: #ffffff !important;
}

@media screen and (max-width: 1024px) {
	.yp-reports-single__related-grid--count-3 {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		max-width: 900px !important;
	}
}

@media screen and (max-width: 767px) {
	.yp-reports-single__related {
		margin-top: 68px !important;
		padding-top: 36px !important;
	}

	.yp-reports-single__related-grid,
	.yp-reports-single__related-grid--count-1,
	.yp-reports-single__related-grid--count-2,
	.yp-reports-single__related-grid--count-3 {
		grid-template-columns: 1fr !important;
		max-width: 520px !important;
		gap: 18px !important;
		margin-top: 26px !important;
	}

	.yp-reports-single__related-card {
		aspect-ratio: 4 / 3 !important;
	}

	.yp-reports-single__related-body {
		padding: 20px 54px 20px 20px !important;
	}

	.yp-reports-single__related-card strong {
		margin: 8px 0 6px !important;
		font-size: 16px !important;
		line-height: 1.65 !important;
	}

	.yp-reports-single__related-card small {
		font-size: 12px !important;
		line-height: 1.75 !important;
	}

	.yp-reports-single__related-arrow {
		right: 18px !important;
		bottom: 20px !important;
		width: 34px !important;
		height: 34px !important;
		font-size: 24px !important;
	}
}

/* =========================================================
   YP reports single v2.4.0
   本文内画像をHEROフェード＋縦スクロールギャラリーで表示
   ========================================================= */
.yp-reports-single__hero {
	width: min(1180px, calc(100vw - 40px)) !important;
	margin: 0 0 62px 50% !important;
	padding: 0 !important;
	transform: translateX(-50%) !important;
}

.yp-reports-single__hero-stage {
	position: relative !important;
	width: 100% !important;
	height: clamp(420px, 78vh, 780px) !important;
	overflow: hidden !important;
	background: #f4f1e9 !important;
	box-shadow: 0 24px 70px rgba(0, 0, 0, 0.08) !important;
}

.yp-reports-single__hero-stage::after {
	content: "" !important;
	position: absolute !important;
	inset: 0 !important;
	z-index: 2 !important;
	pointer-events: none !important;
	background: linear-gradient(
		to bottom,
		rgba(0, 0, 0, 0.04) 0%,
		rgba(0, 0, 0, 0.00) 42%,
		rgba(0, 0, 0, 0.08) 100%
	) !important;
}

.yp-reports-single__hero-slide {
	position: absolute !important;
	inset: 0 !important;
	z-index: 1 !important;
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	opacity: 0 !important;
	transform: scale(1.00) translateY(8px) !important;
	transition: opacity 1.8s ease-in-out, transform 6s ease-out !important;
	will-change: opacity, transform !important;
}

/* JS制御でアクティブになったスライド */
.yp-reports-single__hero-slide.is-active {
	opacity: 1 !important;
	transform: scale(1.04) translateY(-4px) !important;
	z-index: 2 !important;
}

/* 1枚のみの場合は静止表示 */
.yp-reports-single__hero-stage--static .yp-reports-single__hero-slide {
	opacity: 1 !important;
	transform: scale(1.02) translateY(0) !important;
	transition: none !important;
}

.yp-reports-single__hero-image {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: contain !important;
	object-position: center center !important;
	position: relative !important;
	z-index: 2 !important;
}

/* ぼかし背景（同じ画像をbackground-imageで表示） */
.yp-reports-single__hero-slide::before {
	content: "" !important;
	position: absolute !important;
	inset: 0 !important;
	z-index: 1 !important;
	background-image: var(--yp-hero-bg) !important;
	background-size: cover !important;
	background-position: center !important;
	filter: blur(18px) brightness(0.85) !important;
	transform: scale(1.08) !important;
}

/* 遅延読み込みプラグイン対策：HEROのlazyload画像を非表示にする */
.yp-reports-single__hero-image.lazyload,
.yp-reports-single__hero-image.lazyloading {
	opacity: 0 !important;
}

.yp-reports-single__hero-image.lazyloaded {
	opacity: 1 !important;
	transition: opacity 0.3s ease !important;
}

/* noscriptタグ内の実画像をHEROで表示するフォールバック */
.yp-reports-single__hero-slide noscript {
	display: block !important;
	position: absolute !important;
	inset: 0 !important;
	z-index: 1 !important;
}

.yp-reports-single__hero-slide noscript img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}

/* REPORT DATA非表示 */
.yp-reports-single__summary {
	display: none !important;
}

.yp-reports-single__gallery {
	max-width: 980px !important;
	margin: 76px auto 0 !important;
	padding: 0 !important;
}

.yp-reports-single__gallery-label {
	margin: 0 0 8px !important;
	padding: 0 !important;
	font-size: 11px !important;
	line-height: 1.6 !important;
	letter-spacing: 0.18em !important;
	color: #999 !important;
	text-align: center !important;
	font-family: Georgia, "Times New Roman", serif !important;
}

.yp-reports-single__gallery-title {
	margin: 0 0 34px !important;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	box-shadow: none !important;
	font-size: clamp(24px, 2.6vw, 32px) !important;
	line-height: 1.65 !important;
	font-weight: 500 !important;
	letter-spacing: 0.045em !important;
	text-align: center !important;
	color: #222 !important;
}

.yp-reports-single__gallery-title::before,
.yp-reports-single__gallery-title::after {
	content: none !important;
	display: none !important;
}

.yp-reports-single__gallery-list {
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 54px !important;
	margin: 0 !important;
	padding: 0 !important;
}

.yp-reports-single__gallery-item {
	display: block !important;
	margin: 0 auto !important;
	padding: 0 !important;
	width: 100% !important;
	background: #f4f1e9 !important;
}

.yp-reports-single__gallery-image {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	max-width: 100% !important;
}

.yp-reports-single__gallery-item figcaption {
	margin: 10px 0 0 !important;
	padding: 0 !important;
	font-size: 13px !important;
	line-height: 1.8 !important;
	color: #777 !important;
	text-align: center !important;
	background: #fff !important;
}

@media (prefers-reduced-motion: reduce) {
	.yp-reports-single__hero-slide {
		animation: none !important;
		opacity: 0 !important;
		transform: none !important;
	}

	.yp-reports-single__hero-slide:first-child {
		opacity: 1 !important;
	}
}

@media screen and (min-width: 768px) {
	.yp-reports-single__hero + .yp-reports-single__header {
		margin-top: 0 !important;
	}
}

@media screen and (max-width: 767px) {
	.yp-reports-single__hero {
		width: calc(100vw - 28px) !important;
		margin: 0 0 42px 50% !important;
	}

	.yp-reports-single__hero-stage {
		height: min(72vh, 560px) !important;
		min-height: 390px !important;
		box-shadow: 0 18px 46px rgba(0, 0, 0, 0.08) !important;
	}

	.yp-reports-single__summary {
		margin-bottom: 42px !important;
		padding: 22px 18px 20px !important;
	}

	.yp-reports-single__summary-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.yp-reports-single__summary-item {
		min-height: 78px !important;
		padding: 14px 10px 13px !important;
	}

	.yp-reports-single__summary-item strong {
		font-size: 13px !important;
		line-height: 1.65 !important;
	}

	.yp-reports-single__gallery {
		margin-top: 56px !important;
	}

	.yp-reports-single__gallery-title {
		margin-bottom: 24px !important;
		font-size: 23px !important;
	}

	.yp-reports-single__gallery-list {
		gap: 36px !important;
	}
}
