@charset "UTF-8";

/************************************
** PRESS 詳細ページ
** デザイン: 10_PRESS_ver01.pdf
************************************/

.p-press-single {
	--press-single-max: 640px;   /* 本文カラム幅（デザイン実測） */
	--press-single-ink: #222;
	--press-single-rule: #222;

	width: 100% !important;
	max-width: var(--press-single-max);
	padding: 0 !important;
	margin-inline: auto;
	padding-block: clamp(24px, 4vw, 48px) clamp(48px, 7vw, 96px) !important;
	font-size: 0.875rem;
	line-height: 2;
	letter-spacing: 0.02em;
	color: var(--press-single-ink);
	margin: 0 auto !important;
}

/* ------------------------------------------------
 * 上部の固定表示
 * ------------------------------------------------ */

.p-press-single__intro {
/* 	padding-bottom: clamp(20px, 3vw, 32px); */
/* 	border-bottom: 1px solid var(--press-single-rule); */
	text-align: center;
}

.p-press-single__label {
	margin: 0;
	font-weight: 700;
	line-height: 1.6;
	letter-spacing: 0.04em;
}

.p-press-single__to {
	margin: 1.2em 0 0;
	line-height: 1.6;
}

/* ------------------------------------------------
 * 本文（エディターの内容をそのまま表示）
 * ------------------------------------------------ */

.p-press-single__content {
	margin-top: clamp(28px, 4vw, 48px);

}

.p-press-single__content > :first-child {
	margin-top: 0;
}

.p-press-single__content > :last-child {
	margin-bottom: 0;
}

.p-press-single__content h1,
.p-press-single__content h2 {
	margin: 1.6em 0 0.8em;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.6;
}

.p-press-single__content h3,
.p-press-single__content h4 {
	margin: 2em 0 0.6em;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.7;
}

.p-press-single__content p {
	margin: 0 0 1.6em;
}

.p-press-single__content img {
	max-width: 100%;
	height: auto;
}

.p-press-single__content hr {
	height: 0;
	margin: clamp(20px, 3vw, 32px) 0;
	border: 0;
	border-top: 1px solid var(--press-single-rule);
}

/* Elementor で組む場合は上の文字設定を引き継がせない */
.p-press-single__content .elementor {
	font-size: initial;
	line-height: initial;
	letter-spacing: initial;
}

a:hover, a:focus {
	color: #191970;
}

.wp-element-caption {
	text-align: right;
}

/* ------------------------------------------------
 * 下部の固定表示
 * ------------------------------------------------ */

.p-press-single__foot {
	margin-top: clamp(32px, 4.5vw, 56px);
	padding-top: clamp(32px, 4.5vw, 56px);
	border-top: 1px solid var(--press-single-rule);
	
}

.p-press-single__contact p,
.p-press-single__contact dd,
.p-press-single__contact dt {
	margin: 0;
}

.p-press-single__contact-title,
.p-press-single__contact-company {
	font-weight: 400;
}

.p-press-single__contact-list {
	margin: 0;
}

.p-press-single__contact-row {
	display: flex;
	gap: 0.5em;
}

/* 「住所 / 営業時間 / TEL」のラベル幅を揃える */
.p-press-single__contact-row dt {
	flex: 0 0 7.5em;
	font-weight: 400;
}

.p-press-single__contact-row dd {
	flex: 1 1 auto;
	min-width: 0;
}

/* URL は TEL の次行に左端揃えで続ける */
.p-press-single__contact-url {
	margin: 0;
}

.p-press-single__contact a {
	color: inherit;
	text-decoration: none;
}

.p-press-single__contact a:hover,
.p-press-single__contact a:focus-visible {
	text-decoration: underline;
}

/* 発行元クレジット */
.p-press-single__credit {
	margin-top: clamp(32px, 4.5vw, 56px);
	padding-top: clamp(20px, 3vw, 36px);
	border-top: 1px solid var(--press-single-rule);
	font-size: 0.75rem;
	line-height: 1.9;
	text-align: center;
}

.p-press-single__credit p {
	margin: 0;
}

.p-press-single__credit a {
	color: inherit;
}

.p-press-single__note {
	margin-top: 2.4em !important;
}

/* ------------------------------------------------
 * スマートフォン
 * ------------------------------------------------ */

@media (max-width: 767px) {

	.p-press-single {
		font-size: 0.8125rem;
		padding-left: 15px !important;
		padding-right: 15px !important;
	}

	.p-press-single__contact-row {
		flex-direction: column;
		gap: 0;
	}

	.p-press-single__contact-row dt {
		flex: none;
	}
}
