.jtoz-e-public-notice {
	--jtoz-notice-bg: #303030;
	--jtoz-notice-text: #f4f4f2;
	--jtoz-notice-muted: #c4c4bf;
	--jtoz-notice-line: rgba(255, 255, 255, 0.18);
	--jtoz-notice-orange: #ffba12;
	min-height: 70vh;
	background: var(--jtoz-notice-bg);
	color: var(--jtoz-notice-text);
	overflow: hidden;
}

.jtoz-e-public-notice,
.jtoz-e-public-notice * {
	box-sizing: border-box;
}

.jtoz-e-public-notice section {
	margin: 0;
}

.jtoz-e-public-notice__inner {
	width: min(100% - 96px, 1180px);
	margin-inline: auto;
}

.jtoz-e-public-notice__hero {
	padding: clamp(120px, 14vw, 190px) 0 clamp(72px, 9vw, 120px);
	border-bottom: 1px solid var(--jtoz-notice-line);
}

.jtoz-e-public-notice__title {
	margin: 0;
	color: var(--jtoz-notice-text);
	font-size: var(--jtoz-page-title-size);
	font-weight: 400;
	letter-spacing: -0.045em;
	line-height: 1;
	text-align: left;
}

.jtoz-e-public-notice__title span {
	color: var(--jtoz-notice-orange);
	font-weight: 300;
}

.jtoz-e-public-notice__lead {
	margin: clamp(36px, 5vw, 56px) 0 0;
	color: var(--jtoz-notice-muted);
	font-size: 1rem;
	line-height: 1.9;
}

.jtoz-e-public-notice__list {
	padding-block: clamp(72px, 10vw, 136px);
}

.jtoz-e-public-notice__content > * {
	margin: 0;
	color: var(--jtoz-notice-text);
	line-height: 1.8;
}

.jtoz-e-public-notice__content > .wp-block-heading:not(:first-child) {
	margin-top: 48px;
	padding-top: 48px;
	border-top: 1px solid var(--jtoz-notice-line);
}

.jtoz-e-public-notice__content > .wp-block-columns {
	margin-top: 20px;
}

.jtoz-e-public-notice__content > p:empty {
	display: none;
}

.jtoz-e-public-notice__content a {
	display: inline-block;
	margin-left: clamp(24px, 4vw, 64px);
	padding-bottom: 4px;
	border-bottom: 1px solid var(--jtoz-notice-orange);
	color: var(--jtoz-notice-text);
	text-decoration: none;
}

.jtoz-e-public-notice__content a:hover,
.jtoz-e-public-notice__content a:focus-visible {
	border-color: var(--jtoz-notice-text);
	color: var(--jtoz-notice-orange);
	text-decoration: none;
}

.jtoz-e-public-notice__content a:focus-visible {
	outline: 2px solid var(--jtoz-notice-orange);
	outline-offset: 4px;
}

@media (max-width: 767px) {
	.jtoz-e-public-notice__inner {
		width: calc(100% - 48px);
	}

	.jtoz-e-public-notice__hero {
		padding-block: 104px 72px;
	}

	.jtoz-e-public-notice__content > .wp-block-heading:not(:first-child) {
		margin-top: 36px;
		padding-top: 36px;
	}

	.jtoz-e-public-notice__content a {
		display: block;
		width: fit-content;
		margin: 12px 0 0;
	}
}
