/* =========================================================
   YP reports CSS
   /reports/
   /reports/{report_type}/
   /reports/{report_type}/{post_name}/
   ========================================================= */

/* =========================================================
   YP reports archive
   /reports/
   撮影事例トップ 2列カード表示
   ========================================================= */

/* DigiPress側の本文幅を解除 */
body.post-type-archive-reports .content-wrap,
body.post-type-archive-reports .incontainer,
body.post-type-archive-reports .content,
body.post-type-archive-reports #content {
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box !important;
}

body.post-type-archive-reports #content::after {
	content: "" !important;
	display: block !important;
	clear: both !important;
}

/* 上部ヘッダー */
body.post-type-archive-reports .report-archive-intro {
	display: block !important;
	max-width: 1080px !important;
	margin: 60px auto 52px !important;
	padding: 0 28px !important;
	box-sizing: border-box !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.post-type-archive-reports .report-archive-heading {
	display: block !important;
	max-width: 760px !important;
	margin: 0 auto !important;
	padding: 0 !important;
	text-align: center !important;
}

body.post-type-archive-reports .report-archive-icon {
	display: block !important;
	margin: 0 auto 14px !important;
	padding: 0 !important;
	color: #b7352a !important;
	font-size: 36px !important;
	line-height: 1 !important;
	text-align: center !important;
}

body.post-type-archive-reports .report-archive-subtitle {
	display: block !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
	font-size: 12px !important;
	line-height: 1.6 !important;
	letter-spacing: 0.22em !important;
	color: #9b9f7a !important;
	font-family: "Roboto", sans-serif !important;
	font-weight: 400 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.post-type-archive-reports .report-archive-title {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 34px !important;
	line-height: 1.55 !important;
	letter-spacing: 0.08em !important;
	font-weight: 400 !important;
	color: #2f3325 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.post-type-archive-reports .report-archive-title::before,
body.post-type-archive-reports .report-archive-title::after {
	content: none !important;
	display: none !important;
}

body.post-type-archive-reports .report-archive-text {
	display: block !important;
	margin: 24px auto 0 !important;
	padding: 0 !important;
	max-width: 700px !important;
	font-size: 14px !important;
	line-height: 2 !important;
	color: #555555 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

/* 2列カード */
body.post-type-archive-reports .report-type-grid {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 48px 34px !important;
	width: 100% !important;
	max-width: 1180px !important;
	margin: 0 auto 82px !important;
	padding: 0 28px !important;
	box-sizing: border-box !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	clear: both !important;
}

body.post-type-archive-reports .report-type-card {
	display: block !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #ffffff !important;
	box-sizing: border-box !important;
	border: 0 !important;
	box-shadow: none !important;
	float: none !important;
	clear: none !important;
}

body.post-type-archive-reports .report-type-card-link {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	color: inherit !important;
	text-decoration: none !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.post-type-archive-reports .report-type-card-image-wrap {
	display: block !important;
	position: relative !important;
	width: 100% !important;
	overflow: hidden !important;
	background: #f5f5f1 !important;
	border: 0 !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
}

body.post-type-archive-reports .report-type-card-image {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	height: auto !important;
	aspect-ratio: 3 / 2 !important;
	object-fit: cover !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	box-shadow: none !important;
	transition: transform 0.38s ease, opacity 0.38s ease !important;
}

body.post-type-archive-reports .report-type-card-link:hover .report-type-card-image {
	transform: scale(1.035) !important;
	opacity: 0.95 !important;
}

body.post-type-archive-reports .report-type-card-noimage {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	aspect-ratio: 3 / 2 !important;
	background: #f5f5f1 !important;
	color: #aaa !important;
	font-size: 12px !important;
	letter-spacing: 0.14em !important;
}

body.post-type-archive-reports .report-type-card-body {
	display: block !important;
	padding: 18px 0 0 !important;
	margin: 0 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.post-type-archive-reports .report-type-card-title {
	display: block !important;
	margin: 0 0 10px !important;
	padding: 0 !important;
	font-size: 20px !important;
	line-height: 1.65 !important;
	font-weight: 400 !important;
	letter-spacing: 0.06em !important;
	color: #2f3325 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.post-type-archive-reports .report-type-card-title::before,
body.post-type-archive-reports .report-type-card-title::after {
	content: none !important;
	display: none !important;
}

body.post-type-archive-reports .report-type-card-text {
	display: block !important;
	margin: 0 0 11px !important;
	padding: 0 !important;
	font-size: 14px !important;
	line-height: 1.9 !important;
	color: #555555 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.post-type-archive-reports .report-type-card-count {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 12px !important;
	line-height: 1.7 !important;
	letter-spacing: 0.08em !important;
	color: #888888 !important;
	font-family: "Roboto", sans-serif !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.post-type-archive-reports .report-type-card-link:hover .report-type-card-title {
	text-decoration: underline !important;
	text-decoration-color: #b7352a !important;
	text-underline-offset: 4px !important;
}

/* タブレット */
@media screen and (max-width: 1024px) {
	body.post-type-archive-reports .report-type-grid {
		max-width: 900px !important;
		padding: 0 22px !important;
		gap: 40px 24px !important;
	}

	body.post-type-archive-reports .report-type-card-title {
		font-size: 18px !important;
	}

	body.post-type-archive-reports .report-type-card-text {
		font-size: 13px !important;
	}
}

/* スマホも2列 */
@media screen and (max-width: 767px) {
	body.post-type-archive-reports .report-archive-intro {
		margin: 42px auto 34px !important;
		padding: 0 16px !important;
	}

	body.post-type-archive-reports .report-archive-icon {
		margin-bottom: 12px !important;
		font-size: 30px !important;
	}

	body.post-type-archive-reports .report-archive-subtitle {
		margin-bottom: 10px !important;
		font-size: 11px !important;
		letter-spacing: 0.18em !important;
	}

	body.post-type-archive-reports .report-archive-title {
		font-size: 24px !important;
		line-height: 1.6 !important;
		letter-spacing: 0.06em !important;
	}

	body.post-type-archive-reports .report-archive-text {
		margin-top: 18px !important;
		font-size: 13px !important;
		line-height: 2 !important;
		text-align: center !important;
	}

	body.post-type-archive-reports .report-type-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 28px 12px !important;
		margin-bottom: 56px !important;
		padding: 0 12px !important;
	}

	body.post-type-archive-reports .report-type-card-body {
		padding-top: 10px !important;
	}

	body.post-type-archive-reports .report-type-card-title {
		margin-bottom: 5px !important;
		font-size: 13px !important;
		line-height: 1.55 !important;
		letter-spacing: 0.03em !important;
	}

	body.post-type-archive-reports .report-type-card-text {
		display: none !important;
	}

	body.post-type-archive-reports .report-type-card-count {
		font-size: 10px !important;
		line-height: 1.6 !important;
		letter-spacing: 0.04em !important;
	}
}

/* =========================================================
   YP reports CSS
   /reports/
   /reports/{report_type}/
   /reports/{report_type}/{post_name}/
   ========================================================= */

/* =========================================================
   YP reports archive
   /reports/
   撮影事例トップ 2列カード表示
   ========================================================= */

/* DigiPress側の本文幅を解除 */
body.post-type-archive-reports .content-wrap,
body.post-type-archive-reports .incontainer,
body.post-type-archive-reports .content,
body.post-type-archive-reports #content {
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box !important;
}

body.post-type-archive-reports #content::after {
	content: "" !important;
	display: block !important;
	clear: both !important;
}

/* 上部ヘッダー */
body.post-type-archive-reports .report-archive-intro {
	display: block !important;
	max-width: 1080px !important;
	margin: 60px auto 52px !important;
	padding: 0 28px !important;
	box-sizing: border-box !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.post-type-archive-reports .report-archive-heading {
	display: block !important;
	max-width: 760px !important;
	margin: 0 auto !important;
	padding: 0 !important;
	text-align: center !important;
}

body.post-type-archive-reports .report-archive-icon {
	display: block !important;
	margin: 0 auto 14px !important;
	padding: 0 !important;
	color: #b7352a !important;
	font-size: 36px !important;
	line-height: 1 !important;
	text-align: center !important;
}

body.post-type-archive-reports .report-archive-subtitle {
	display: block !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
	font-size: 12px !important;
	line-height: 1.6 !important;
	letter-spacing: 0.22em !important;
	color: #9b9f7a !important;
	font-family: "Roboto", sans-serif !important;
	font-weight: 400 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.post-type-archive-reports .report-archive-title {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 34px !important;
	line-height: 1.55 !important;
	letter-spacing: 0.08em !important;
	font-weight: 400 !important;
	color: #2f3325 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.post-type-archive-reports .report-archive-title::before,
body.post-type-archive-reports .report-archive-title::after {
	content: none !important;
	display: none !important;
}

body.post-type-archive-reports .report-archive-text {
	display: block !important;
	margin: 24px auto 0 !important;
	padding: 0 !important;
	max-width: 700px !important;
	font-size: 14px !important;
	line-height: 2 !important;
	color: #555555 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

/* 2列カード */
body.post-type-archive-reports .report-type-grid {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 48px 34px !important;
	width: 100% !important;
	max-width: 1180px !important;
	margin: 0 auto 82px !important;
	padding: 0 28px !important;
	box-sizing: border-box !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	clear: both !important;
}

body.post-type-archive-reports .report-type-card {
	display: block !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #ffffff !important;
	box-sizing: border-box !important;
	border: 0 !important;
	box-shadow: none !important;
	float: none !important;
	clear: none !important;
}

body.post-type-archive-reports .report-type-card-link {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	color: inherit !important;
	text-decoration: none !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.post-type-archive-reports .report-type-card-image-wrap {
	display: block !important;
	position: relative !important;
	width: 100% !important;
	overflow: hidden !important;
	background: #f5f5f1 !important;
	border: 0 !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
}

body.post-type-archive-reports .report-type-card-image {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	height: auto !important;
	aspect-ratio: 3 / 2 !important;
	object-fit: cover !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	box-shadow: none !important;
	transition: transform 0.38s ease, opacity 0.38s ease !important;
}

body.post-type-archive-reports .report-type-card-link:hover .report-type-card-image {
	transform: scale(1.035) !important;
	opacity: 0.95 !important;
}

body.post-type-archive-reports .report-type-card-noimage {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	aspect-ratio: 3 / 2 !important;
	background: #f5f5f1 !important;
	color: #aaa !important;
	font-size: 12px !important;
	letter-spacing: 0.14em !important;
}

body.post-type-archive-reports .report-type-card-body {
	display: block !important;
	padding: 18px 0 0 !important;
	margin: 0 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.post-type-archive-reports .report-type-card-title {
	display: block !important;
	margin: 0 0 10px !important;
	padding: 0 !important;
	font-size: 20px !important;
	line-height: 1.65 !important;
	font-weight: 400 !important;
	letter-spacing: 0.06em !important;
	color: #2f3325 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.post-type-archive-reports .report-type-card-title::before,
body.post-type-archive-reports .report-type-card-title::after {
	content: none !important;
	display: none !important;
}

body.post-type-archive-reports .report-type-card-text {
	display: block !important;
	margin: 0 0 11px !important;
	padding: 0 !important;
	font-size: 14px !important;
	line-height: 1.9 !important;
	color: #555555 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.post-type-archive-reports .report-type-card-count {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 12px !important;
	line-height: 1.7 !important;
	letter-spacing: 0.08em !important;
	color: #888888 !important;
	font-family: "Roboto", sans-serif !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.post-type-archive-reports .report-type-card-link:hover .report-type-card-title {
	text-decoration: underline !important;
	text-decoration-color: #b7352a !important;
	text-underline-offset: 4px !important;
}

/* タブレット */
@media screen and (max-width: 1024px) {
	body.post-type-archive-reports .report-type-grid {
		max-width: 900px !important;
		padding: 0 22px !important;
		gap: 40px 24px !important;
	}

	body.post-type-archive-reports .report-type-card-title {
		font-size: 18px !important;
	}

	body.post-type-archive-reports .report-type-card-text {
		font-size: 13px !important;
	}
}

/* スマホも2列 */
@media screen and (max-width: 767px) {
	body.post-type-archive-reports .report-archive-intro {
		margin: 42px auto 34px !important;
		padding: 0 16px !important;
	}

	body.post-type-archive-reports .report-archive-icon {
		margin-bottom: 12px !important;
		font-size: 30px !important;
	}

	body.post-type-archive-reports .report-archive-subtitle {
		margin-bottom: 10px !important;
		font-size: 11px !important;
		letter-spacing: 0.18em !important;
	}

	body.post-type-archive-reports .report-archive-title {
		font-size: 24px !important;
		line-height: 1.6 !important;
		letter-spacing: 0.06em !important;
	}

	body.post-type-archive-reports .report-archive-text {
		margin-top: 18px !important;
		font-size: 13px !important;
		line-height: 2 !important;
		text-align: center !important;
	}

	body.post-type-archive-reports .report-type-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 28px 12px !important;
		margin-bottom: 56px !important;
		padding: 0 12px !important;
	}

	body.post-type-archive-reports .report-type-card-body {
		padding-top: 10px !important;
	}

	body.post-type-archive-reports .report-type-card-title {
		margin-bottom: 5px !important;
		font-size: 13px !important;
		line-height: 1.55 !important;
		letter-spacing: 0.03em !important;
	}

	body.post-type-archive-reports .report-type-card-text {
		display: none !important;
	}

	body.post-type-archive-reports .report-type-card-count {
		font-size: 10px !important;
		line-height: 1.6 !important;
		letter-spacing: 0.04em !important;
	}
}

/* =========================================================
   YP reports taxonomy archive
   /reports/omiyamairi/
   /reports/shichigosan/
   /reports/family/
   /reports/randoseru/
   ========================================================= */

/* DigiPress側の本文幅を解除 */
body.tax-report_type .content-wrap,
body.tax-report_type .incontainer,
body.tax-report_type .content,
body.tax-report_type #content {
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box !important;
}

body.tax-report_type #content::after {
	content: "" !important;
	display: block !important;
	clear: both !important;
}

body.tax-report_type .report-taxonomy-intro {
	display: block !important;
	max-width: 1040px !important;
	margin: 58px auto 44px !important;
	padding: 0 24px !important;
	box-sizing: border-box !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.tax-report_type .report-taxonomy-head {
	display: block !important;
	max-width: 760px !important;
	margin: 0 auto !important;
	padding: 0 !important;
	text-align: center !important;
}

body.tax-report_type .report-taxonomy-icon {
	display: block !important;
	margin: 0 auto 14px !important;
	padding: 0 !important;
	color: #b7352a !important;
	font-size: 34px !important;
	line-height: 1 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.tax-report_type .report-taxonomy-subtitle {
	display: block !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
	font-size: 12px !important;
	line-height: 1.6 !important;
	letter-spacing: 0.22em !important;
	color: #9b9f7a !important;
	font-family: "Roboto", sans-serif !important;
	font-weight: 400 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.tax-report_type .report-taxonomy-title {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 32px !important;
	line-height: 1.55 !important;
	letter-spacing: 0.08em !important;
	font-weight: 400 !important;
	color: #2f3325 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.tax-report_type .report-taxonomy-title::before,
body.tax-report_type .report-taxonomy-title::after {
	content: none !important;
	display: none !important;
}

body.tax-report_type .report-taxonomy-count {
	display: block !important;
	margin: 14px 0 0 !important;
	padding: 0 !important;
	font-size: 13px !important;
	line-height: 1.7 !important;
	letter-spacing: 0.08em !important;
	color: #777777 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.tax-report_type .report-taxonomy-text {
	display: block !important;
	margin: 22px auto 0 !important;
	padding: 0 !important;
	max-width: 640px !important;
	font-size: 14px !important;
	line-height: 2 !important;
	color: #555555 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.tax-report_type .report-taxonomy-nav {
	display: block !important;
	margin: 22px 0 0 !important;
	padding: 0 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.tax-report_type .report-taxonomy-backlink {
	display: inline-block !important;
	font-size: 13px !important;
	line-height: 1.7 !important;
	color: #777777 !important;
	text-decoration: none !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(119, 119, 119, 0.35) !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.tax-report_type .report-taxonomy-backlink:hover {
	color: #2f3325 !important;
	border-bottom-color: #b7352a !important;
}

body.tax-report_type .report-taxonomy-list {
	display: block !important;
	width: 100% !important;
	max-width: 1280px !important;
	margin: 0 auto 72px !important;
	padding: 0 24px !important;
	box-sizing: border-box !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.tax-report_type .report-post-grid {
	display: grid !important;
	grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
	gap: 34px 20px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
	clear: both !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.tax-report_type .report-post-card {
	display: block !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #ffffff !important;
	box-sizing: border-box !important;
	border: 0 !important;
	box-shadow: none !important;
	float: none !important;
	clear: none !important;
}

body.tax-report_type .report-post-card-link {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	color: inherit !important;
	text-decoration: none !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.tax-report_type .report-post-thumb {
	display: block !important;
	position: relative !important;
	width: 100% !important;
	overflow: hidden !important;
	background: #f5f5f1 !important;
	border: 0 !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
}

body.tax-report_type .report-post-thumb img {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	height: auto !important;
	aspect-ratio: 3 / 2 !important;
	object-fit: cover !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	box-shadow: none !important;
	transition: transform 0.36s ease !important;
}

body.tax-report_type .report-post-thumb-noimage {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	aspect-ratio: 3 / 2 !important;
	color: #aaa !important;
	font-size: 11px !important;
	letter-spacing: 0.14em !important;
	background: #f5f5f1 !important;
}

body.tax-report_type .report-post-card-link:hover .report-post-thumb img {
	transform: scale(1.035) !important;
}

body.tax-report_type .report-post-body {
	display: block !important;
	padding: 13px 0 0 !important;
	margin: 0 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.tax-report_type .report-post-date {
	display: block !important;
	margin: 0 0 6px !important;
	padding: 0 !important;
	font-size: 11px !important;
	line-height: 1.5 !important;
	letter-spacing: 0.08em !important;
	color: #8a8a8a !important;
	font-family: "Roboto", sans-serif !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.tax-report_type .report-post-shrine {
	display: block !important;
	margin: 0 0 5px !important;
	padding: 0 !important;
	font-size: 14px !important;
	line-height: 1.6 !important;
	font-weight: 400 !important;
	letter-spacing: 0.04em !important;
	color: #2f3325 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.tax-report_type .report-post-shrine::before,
body.tax-report_type .report-post-shrine::after {
	content: none !important;
	display: none !important;
}

body.tax-report_type .report-post-location {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 11px !important;
	line-height: 1.7 !important;
	letter-spacing: 0.04em !important;
	color: #777777 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.tax-report_type .report-post-card-link:hover .report-post-shrine {
	text-decoration: underline !important;
	text-decoration-color: #b7352a !important;
	text-underline-offset: 4px !important;
}

body.tax-report_type .report-taxonomy-pagination {
	display: block !important;
	margin: 52px 0 0 !important;
	padding: 0 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.tax-report_type .report-taxonomy-pagination .nav-links {
	display: flex !important;
	justify-content: center !important;
	gap: 8px !important;
	flex-wrap: wrap !important;
}

body.tax-report_type .report-taxonomy-pagination a,
body.tax-report_type .report-taxonomy-pagination span {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 36px !important;
	height: 36px !important;
	padding: 0 10px !important;
	border: 1px solid #d8ddc7 !important;
	color: #555555 !important;
	text-decoration: none !important;
	font-size: 13px !important;
	line-height: 1 !important;
	box-sizing: border-box !important;
	background: #ffffff !important;
	box-shadow: none !important;
}

body.tax-report_type .report-taxonomy-pagination .current {
	background: #babf95 !important;
	border-color: #babf95 !important;
	color: #ffffff !important;
}

body.tax-report_type .report-taxonomy-pagination a:hover {
	background: #f7f8f2 !important;
	border-color: #babf95 !important;
}

body.tax-report_type .report-no-posts {
	display: block !important;
	max-width: 720px !important;
	margin: 48px auto 72px !important;
	padding: 0 24px !important;
	text-align: center !important;
	color: #555555 !important;
	font-size: 14px !important;
	line-height: 2 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

@media screen and (max-width: 1024px) {
	body.tax-report_type .report-post-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
		gap: 30px 18px !important;
	}
}

@media screen and (max-width: 767px) {
	body.tax-report_type .report-taxonomy-intro {
		margin: 42px auto 32px !important;
		padding: 0 14px !important;
	}

	body.tax-report_type .report-taxonomy-icon {
		margin-bottom: 12px !important;
		font-size: 30px !important;
	}

	body.tax-report_type .report-taxonomy-subtitle {
		margin-bottom: 10px !important;
		font-size: 11px !important;
		letter-spacing: 0.18em !important;
	}

	body.tax-report_type .report-taxonomy-title {
		font-size: 24px !important;
		line-height: 1.6 !important;
		letter-spacing: 0.06em !important;
	}

	body.tax-report_type .report-taxonomy-count {
		margin-top: 12px !important;
		font-size: 12px !important;
	}

	body.tax-report_type .report-taxonomy-text {
		margin-top: 18px !important;
		font-size: 13px !important;
		line-height: 2 !important;
		text-align: center !important;
	}

	body.tax-report_type .report-taxonomy-list {
		margin-bottom: 54px !important;
		padding: 0 10px !important;
	}

	body.tax-report_type .report-post-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		gap: 24px 10px !important;
	}

	body.tax-report_type .report-post-body {
		padding-top: 9px !important;
	}

	body.tax-report_type .report-post-date {
		margin-bottom: 4px !important;
		font-size: 10px !important;
		letter-spacing: 0.04em !important;
	}

	body.tax-report_type .report-post-shrine {
		margin-bottom: 4px !important;
		font-size: 12px !important;
		line-height: 1.55 !important;
		letter-spacing: 0.02em !important;
	}

	body.tax-report_type .report-post-location {
		font-size: 10px !important;
		line-height: 1.6 !important;
		letter-spacing: 0.02em !important;
	}

	body.tax-report_type .report-taxonomy-pagination {
		margin-top: 42px !important;
	}
}

/* =========================================================
   YP reports single
   /reports/{report_type}/{post_name}/
   個別reportsページ
   ========================================================= */

/* DigiPress標準のページ上部タイトルを非表示 */
body.single-reports #ct-hd {
	display: none !important;
}

/* 本文上タイトルブロック */
body.single-reports .yp-report-single-inline-header {
	display: block !important;
	width: 100% !important;
	max-width: 780px !important;
	margin: 56px auto 46px !important;
	padding: 0 24px !important;
	box-sizing: border-box !important;
	text-align: center !important;
	color: #2f3325 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.single-reports .yp-report-single-inline-icon {
	display: block !important;
	margin: 0 0 16px !important;
	padding: 0 !important;
	font-size: 30px !important;
	line-height: 1 !important;
	color: #b7352a !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.single-reports .yp-report-single-inline-date {
	display: block !important;
	margin: 0 0 16px !important;
	padding: 0 !important;
	font-family: "Roboto", sans-serif !important;
	font-size: 13px !important;
	line-height: 1.7 !important;
	font-weight: 400 !important;
	letter-spacing: 0.16em !important;
	color: #777777 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

/* タイトル本体：DigiPressの見出し装飾をリセット */
body.single-reports .entry-content .yp-report-single-inline-title,
body.single-reports .entry .yp-report-single-inline-title,
body.single-reports .yp-report-single-inline-header .yp-report-single-inline-title,
body.single-reports h1.yp-report-single-inline-title {
	display: block !important;
	position: relative !important;
	float: none !important;
	clear: both !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	margin: 0 0 24px !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
	outline: 0 !important;
	font-size: 31px !important;
	line-height: 1.55 !important;
	font-weight: 400 !important;
	letter-spacing: 0.08em !important;
	color: #2f3325 !important;
	text-align: center !important;
	text-indent: 0 !important;
	text-decoration: none !important;
	transform: none !important;
	opacity: 1 !important;
}

/* DigiPress側の before 装飾を消す */
body.single-reports .entry-content .yp-report-single-inline-title::before,
body.single-reports .entry .yp-report-single-inline-title::before,
body.single-reports .yp-report-single-inline-header .yp-report-single-inline-title::before,
body.single-reports h1.yp-report-single-inline-title::before {
	content: none !important;
	display: none !important;
	position: static !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	background-color: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
	opacity: 0 !important;
	transform: none !important;
	left: auto !important;
	right: auto !important;
	top: auto !important;
	bottom: auto !important;
}

/* タイトル下の短い青い下線だけを中央表示 */
body.single-reports .entry-content .yp-report-single-inline-title::after,
body.single-reports .entry .yp-report-single-inline-title::after,
body.single-reports .yp-report-single-inline-header .yp-report-single-inline-title::after,
body.single-reports h1.yp-report-single-inline-title::after {
	content: "" !important;
	display: block !important;
	position: static !important;
	float: none !important;
	clear: both !important;
	width: 42px !important;
	min-width: 42px !important;
	max-width: 42px !important;
	height: 2px !important;
	min-height: 2px !important;
	max-height: 2px !important;
	margin: 15px auto 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: #6fa8c9 !important;
	background-color: #6fa8c9 !important;
	background-image: none !important;
	box-shadow: none !important;
	outline: 0 !important;
	opacity: 1 !important;
	transform: none !important;
	left: auto !important;
	right: auto !important;
	top: auto !important;
	bottom: auto !important;
}

/* h1内spanにDigiPress装飾が当たった場合の保険 */
body.single-reports .yp-report-single-inline-title span {
	display: inline !important;
	position: static !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
	color: inherit !important;
	text-decoration: none !important;
}

body.single-reports .yp-report-single-inline-title span::before,
body.single-reports .yp-report-single-inline-title span::after {
	content: none !important;
	display: none !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	box-shadow: none !important;
}

body.single-reports .yp-report-single-inline-location {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 14px !important;
	line-height: 1.9 !important;
	font-weight: 400 !important;
	letter-spacing: 0.08em !important;
	color: #666666 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.single-reports .yp-report-single-inline-location span {
	display: inline !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.single-reports .yp-report-single-inline-location span + span::before {
	content: " / " !important;
	color: #aaa !important;
	padding: 0 0.25em !important;
}

body.single-reports .yp-report-single-inline-back {
	display: block !important;
	margin: 24px 0 0 !important;
	padding: 0 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.single-reports .yp-report-single-back-link {
	display: inline-block !important;
	font-size: 13px !important;
	line-height: 1.8 !important;
	letter-spacing: 0.06em !important;
	color: #777777 !important;
	text-decoration: none !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(119, 119, 119, 0.35) !important;
	background: transparent !important;
	box-shadow: none !important;
	transition: color 0.25s ease, border-color 0.25s ease !important;
}

body.single-reports .yp-report-single-back-link:hover {
	color: #2f3325 !important;
	border-bottom-color: #b7352a !important;
}

/* 記事末尾の丸囲み「もどる」ボタン */
body.single-reports .yp-report-single-bottom-back {
	display: block !important;
	width: 100% !important;
	margin: 64px auto 24px !important;
	padding: 0 !important;
	text-align: center !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.single-reports .yp-report-single-bottom-back-link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 96px !important;
	height: 96px !important;
	margin: 0 auto !important;
	padding: 0 !important;
	box-sizing: border-box !important;
	border: 1px solid #cfd5dc !important;
	border-radius: 999px !important;
	background: #ffffff !important;
	color: #4f5963 !important;
	text-decoration: none !important;
	font-size: 13px !important;
	line-height: 1 !important;
	font-weight: 400 !important;
	letter-spacing: 0.12em !important;
	text-align: center !important;
	box-shadow: none !important;
	transition:
		border-color 0.28s ease,
		color 0.28s ease,
		background-color 0.28s ease,
		transform 0.28s ease !important;
}

body.single-reports .yp-report-single-bottom-back-link:hover {
	border-color: #6fa8c9 !important;
	color: #2f3325 !important;
	background: #f8fbfd !important;
	transform: translateY(-2px) !important;
}

body.single-reports .yp-report-single-bottom-back-inner {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.single-reports .yp-report-single-bottom-back-arrow {
	display: inline-block !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #6fa8c9 !important;
	font-size: 14px !important;
	line-height: 1 !important;
	letter-spacing: -0.08em !important;
	transform: translateX(0) !important;
	transition:
		transform 0.28s ease,
		color 0.28s ease,
		font-weight 0.28s ease !important;
}

body.single-reports .yp-report-single-bottom-back-text {
	display: inline-block !important;
	margin: 0 !important;
	padding: 0 !important;
	color: inherit !important;
	line-height: 1 !important;
}

body.single-reports .yp-report-single-bottom-back-link:hover .yp-report-single-bottom-back-arrow {
	color: #b7352a !important;
	transform: translateX(-4px) !important;
	font-weight: 700 !important;
}

@media screen and (max-width: 767px) {
	body.single-reports .yp-report-single-inline-header {
		margin: 42px auto 34px !important;
		padding: 0 18px !important;
	}

	body.single-reports .yp-report-single-inline-icon {
		margin-bottom: 13px !important;
		font-size: 27px !important;
	}

	body.single-reports .yp-report-single-inline-date {
		margin-bottom: 13px !important;
		font-size: 12px !important;
		letter-spacing: 0.14em !important;
	}

	body.single-reports .entry-content .yp-report-single-inline-title,
	body.single-reports .entry .yp-report-single-inline-title,
	body.single-reports .yp-report-single-inline-header .yp-report-single-inline-title,
	body.single-reports h1.yp-report-single-inline-title {
		margin-bottom: 20px !important;
		font-size: 23px !important;
		line-height: 1.65 !important;
		letter-spacing: 0.06em !important;
	}

	body.single-reports .entry-content .yp-report-single-inline-title::after,
	body.single-reports .entry .yp-report-single-inline-title::after,
	body.single-reports .yp-report-single-inline-header .yp-report-single-inline-title::after,
	body.single-reports h1.yp-report-single-inline-title::after {
		width: 36px !important;
		min-width: 36px !important;
		max-width: 36px !important;
		height: 2px !important;
		min-height: 2px !important;
		max-height: 2px !important;
		margin: 12px auto 0 !important;
	}

	body.single-reports .yp-report-single-inline-location {
		font-size: 12px !important;
		line-height: 1.8 !important;
		letter-spacing: 0.04em !important;
	}

	body.single-reports .yp-report-single-inline-back {
		margin-top: 20px !important;
	}

	body.single-reports .yp-report-single-back-link {
		font-size: 12px !important;
	}

	body.single-reports .yp-report-single-bottom-back {
		margin: 48px auto 18px !important;
	}

	body.single-reports .yp-report-single-bottom-back-link {
		width: 84px !important;
		height: 84px !important;
		font-size: 12px !important;
		letter-spacing: 0.1em !important;
	}

	body.single-reports .yp-report-single-bottom-back-arrow {
		font-size: 13px !important;
	}
}

/* =========================================================
   YP reports single PHP breadcrumb
   個別reportsページ PHPパンくず仮表示
   ========================================================= */

body.single-reports .yp-report-single-php-breadcrumb {
	display: block !important;
	width: 100% !important;
	max-width: 1040px !important;
	margin: 34px auto 0 !important;
	padding: 0 24px !important;
	box-sizing: border-box !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.single-reports .yp-report-single-php-breadcrumb-list {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-wrap: wrap !important;
	gap: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.single-reports .yp-report-single-php-breadcrumb-item {
	display: inline-flex !important;
	align-items: center !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	font-size: 12px !important;
	line-height: 1.8 !important;
	letter-spacing: 0.04em !important;
	color: #777777 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.single-reports .yp-report-single-php-breadcrumb-item::before {
	content: none !important;
	display: none !important;
}

body.single-reports .yp-report-single-php-breadcrumb-item + .yp-report-single-php-breadcrumb-item::before {
	content: ">" !important;
	display: inline-block !important;
	margin: 0 0.65em !important;
	color: #b6b6b6 !important;
	font-size: 11px !important;
	line-height: 1 !important;
}

body.single-reports .yp-report-single-php-breadcrumb-item a {
	display: inline-block !important;
	color: #777777 !important;
	text-decoration: none !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.single-reports .yp-report-single-php-breadcrumb-item a:hover {
	color: #2f3325 !important;
	text-decoration: underline !important;
	text-underline-offset: 3px !important;
}

body.single-reports .yp-report-single-php-breadcrumb-item.current span {
	display: inline-block !important;
	max-width: 480px !important;
	color: #999999 !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
}

@media screen and (max-width: 767px) {
	body.single-reports .yp-report-single-php-breadcrumb {
		margin: 26px auto 0 !important;
		padding: 0 14px !important;
	}

	body.single-reports .yp-report-single-php-breadcrumb-list {
		justify-content: flex-start !important;
	}

	body.single-reports .yp-report-single-php-breadcrumb-item {
		font-size: 11px !important;
		line-height: 1.8 !important;
	}

	body.single-reports .yp-report-single-php-breadcrumb-item.current span {
		max-width: 190px !important;
	}
}

/* =========================================================
   YP reports single breadcrumb formalization
   DigiPress標準パンくずを非表示
   ========================================================= */

body.single-reports #dp_breadcrumb_nav {
	display: none !important;
}

/* =========================================================
   YP reports floating back button
   reports個別ページ 右横追従戻るボタン
   現在のYP11 div > a 構造用
   ========================================================= */

body.single-reports .yp-report-floating-back {
	position: fixed;
	right: 22px;
	top: 56%;
	z-index: 999;
	transform: translateY(-50%);
	opacity: 0.78;
	visibility: visible;
	transition:
		opacity 0.28s ease,
		transform 0.28s ease;
}

body.single-reports .yp-report-floating-back:hover {
	opacity: 0.96;
	transform: translateY(-50%) translateX(-3px);
}

body.single-reports .yp-report-floating-back-link {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 52px;
	min-height: 108px;
	padding: 14px 8px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.58);
	border: 1px solid rgba(40, 40, 40, 0.12);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.10);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	color: rgba(20, 20, 20, 0.78) !important;
	text-decoration: none !important;
}

body.single-reports .yp-report-floating-back-link:hover {
	background: rgba(255, 255, 255, 0.76);
	color: rgba(10, 10, 10, 0.92) !important;
	text-decoration: none !important;
}

body.single-reports .yp-report-floating-back-mark {
	display: block;
	margin: 0 0 8px;
	font-size: 15px;
	line-height: 1;
	color: inherit;
}

body.single-reports .yp-report-floating-back-text {
	display: block;
	writing-mode: vertical-rl;
	text-orientation: mixed;
	font-size: 12px;
	line-height: 1.4;
	letter-spacing: 0.16em;
	font-weight: 500;
	color: inherit;
}

/* 画面幅が狭いPC */
@media screen and (max-width: 1180px) {
	body.single-reports .yp-report-floating-back {
		right: 12px;
	}

	body.single-reports .yp-report-floating-back-link {
		width: 48px;
		min-height: 100px;
		padding: 13px 7px;
	}
}

/* スマホ：右横中央より少し低め・半透明 */
@media screen and (max-width: 767px) {
	body.single-reports .yp-report-floating-back {
		right: 8px;
		top: 64%;
		bottom: auto;
		transform: translateY(-50%);
		opacity: 0.68;
	}

	body.single-reports .yp-report-floating-back:hover {
		opacity: 0.88;
		transform: translateY(-50%);
	}

	body.single-reports .yp-report-floating-back-link {
		width: 42px;
		min-height: 88px;
		padding: 11px 6px;
		border-radius: 999px;
		background: rgba(255, 255, 255, 0.48);
		border: 1px solid rgba(40, 40, 40, 0.10);
		box-shadow: 0 8px 22px rgba(0, 0, 0, 0.08);
		backdrop-filter: blur(7px);
		-webkit-backdrop-filter: blur(7px);
		color: rgba(20, 20, 20, 0.72) !important;
	}

	body.single-reports .yp-report-floating-back-mark {
		margin: 0 0 6px;
		font-size: 13px;
	}

	body.single-reports .yp-report-floating-back-text {
		font-size: 11px;
		line-height: 1.35;
		letter-spacing: 0.13em;
	}
}