/**
 * TOP NEWS section.
 */

.tdsi-top-news {
	--tdsi-news-bg: #eae8e4;
	--tdsi-news-ink: #111;
	--tdsi-news-gold: #c49d62;
	--tdsi-news-line: rgba(17, 17, 17, 0.16);
	--tdsi-news-pad-x: clamp(1.25rem, 4vw, 3rem);
	--tdsi-news-max: 1280px;
	background: var(--tdsi-news-bg);
	color: var(--tdsi-news-ink);
	padding: clamp(4.5rem, 10vh, 7.5rem) 0;
}

.tdsi-top-news__inner {
	display: grid;
	grid-template-columns: minmax(12.5rem, 0.72fr) minmax(0, 2.35fr);
	column-gap: clamp(2rem, 4.75vw, 3.75rem);
	align-items: start;
	box-sizing: border-box;
	width: min(var(--tdsi-news-max), calc(100% - (var(--tdsi-news-pad-x) * 2)));
	max-width: var(--tdsi-news-max);
	margin-inline: auto;
}

.tdsi-top-news__side {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 1.75rem;
	padding-right: 0.35rem;
	padding-top: 0.25rem;
}

.tdsi-top-news__title {
	margin: 0;
	color: var(--tdsi-news-gold);
	font-family: "din-2014", sans-serif;
	font-size: clamp(3.25rem, 8vw, 5.5rem);
	font-weight: 700;
	letter-spacing: 0;
	line-height: 0.95;
}

.tdsi-top-news__cta {
	display: inline-block;
	perspective: 1000px;
	color: inherit;
	text-decoration: none;
	vertical-align: top;
}

.tdsi-top-news__cta-inner {
	position: relative;
	display: block;
	transform-style: preserve-3d;
	transform-origin: bottom center;
	transition: transform 0.2s ease;
}

@media (hover: hover) and (pointer: fine) {
	.tdsi-top-news__cta:hover .tdsi-top-news__cta-inner {
		transform: rotateX(-90deg) translateY(50%);
	}
}

.tdsi-top-news__cta-wrap {
	grid-column: 1 / -1;
	display: flex;
	justify-content: center;
	margin-top: clamp(2.5rem, 6vh, 4rem);
}

.tdsi-top-news__cta-face {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-width: 15rem;
	padding: 0.8rem 2.5rem;
	border-radius: 0;
	font-family: "din-2014", "Noto Sans JP", sans-serif;
	font-size: 1.75rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	line-height: 1;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}

.tdsi-top-news__cta-face--front {
	position: relative;
	background: #111;
	color: #EAE8E4;
}

.tdsi-top-news__cta-face--back {
	position: absolute;
	inset: 0;
	background: #111;
	color: var(--tdsi-news-gold);
	transform: rotateX(90deg) translateY(-100%);
	transform-origin: top center;
}

.tdsi-top-news__cta-text {
	display: inline-flex;
	align-items: center;
	gap: 0.55em;
	user-select: none;
}

.tdsi-top-news__cta-arrow {
	display: inline-block;
	font-weight: 400;
}

.tdsi-top-news__list {
	list-style: none;
	margin: 0;
	padding: 0;
	padding-top: 0;
	min-width: 0;
}

.tdsi-top-news__item:last-child {
	border-bottom: none;
}

.tdsi-top-news__item {
	border-bottom: 1px solid var(--tdsi-news-line);
	margin: 0;
	padding: 0;
}

.tdsi-top-news__link {
	display: grid;
	grid-template-columns: 220px minmax(0, 1fr);
	column-gap: 1.5rem;
	align-items: start;
	padding: 1.35rem 0;
	color: inherit;
	text-decoration: none;
	transition: opacity 0.25s ease;
}

.tdsi-top-news__link:hover {
	opacity: 0.82;
}

.tdsi-top-news__media {
	display: block;
	overflow: hidden;
	width: 220px;
	height: 122px;
	flex: 0 0 auto;
	background: #d8d5cf;
}

.tdsi-top-news__media img,
.tdsi-top-news__media-fallback {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.tdsi-top-news__media-fallback {
	background: linear-gradient(135deg, #d8d5cf, #c7c3bb);
}

.tdsi-top-news__body {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.55rem;
	min-width: 0;
	padding-block: 0.15rem;
}

.tdsi-top-news__date {
	font-family: "din-2014", "Helvetica Neue", Helvetica, sans-serif;
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0.04em;
	line-height: 1.3;
	color: var(--tdsi-news-ink);
}

.tdsi-top-news__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.tdsi-top-news__tag {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	padding: 0.2rem 0.65rem;
	border: 1px solid currentColor;
	border-radius: 0.2rem;
	background: transparent;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 0.6875rem;
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1.35;
	white-space: nowrap;
}

.tdsi-top-news__tag--notice {
	background: #111;
	border-color: #111;
	color: #fff;
}

.tdsi-top-news__tag--dept {
	background: transparent;
	border-color: #8a8780;
	color: #8a8780;
}

.tdsi-top-news__tag--meta {
	background: #111;
	border-color: #111;
	color: #fff;
}

.tdsi-top-news__headline {
	display: block;
	overflow: visible;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 0.9375rem;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.65;
	color: var(--tdsi-news-ink);
}

.tdsi-top-news__empty {
	margin: 0;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 0.9rem;
}

@media (max-width: 1199px) {
	.tdsi-top-news__inner {
		grid-template-columns: 1fr;
		row-gap: 2.5rem;
		align-items: start;
	}

	.tdsi-top-news__side {
		width: 100%;
		padding-right: 0;
	}

	.tdsi-top-news__title {
		max-width: 100%;
	}
}

@media (max-width: 1060px) {
	.tdsi-top-news__link {
		grid-template-columns: 11.5rem minmax(0, 1fr);
		column-gap: 1.15rem;
	}

	.tdsi-top-news__media {
		width: 11.5rem;
		height: 6.4rem;
	}
}

@media (max-width: 759px) {
	.tdsi-top-news__side {
		align-items: center;
	}

	.tdsi-top-news__title {
		width: 100%;
		font-size: var(--tdsi-top-sp-display);
		text-align: center;
	}

	.tdsi-top-news__list {
		display: flex;
		flex-direction: column;
		gap: 1.75rem;
	}

	.tdsi-top-news__item {
		border-bottom: none;
	}

	.tdsi-top-news__link {
		grid-template-columns: 1fr;
		row-gap: 0.7rem;
		padding: 0;
	}

	.tdsi-top-news__media {
		width: 100%;
		height: auto;
		background: transparent;
	}

	.tdsi-top-news__media img,
	.tdsi-top-news__media-fallback {
		width: 100%;
		height: auto;
		object-fit: contain;
	}

	.tdsi-top-news__media-fallback {
		aspect-ratio: 16 / 9;
	}

	.tdsi-top-news__body {
		gap: 0.35rem;
		padding-block: 0;
	}

	.tdsi-top-news__date {
		font-size: var(--tdsi-text-base);
		font-weight: 700;
	}

	.tdsi-top-news__headline {
		font-size: 0.875rem;
	}

	.tdsi-top-news__tag {
		font-size: var(--tdsi-top-sp-meta);
	}

	.tdsi-top-news__cta-face {
		min-width: 12rem;
		padding: 0.65rem 1.75rem;
		font-size: var(--tdsi-top-sp-cta);
	}
}

@media (prefers-reduced-motion: reduce) {
	.tdsi-top-news__cta-inner {
		transition: none;
	}

	.tdsi-top-news__cta:hover .tdsi-top-news__cta-inner {
		transform: none;
	}
}
