/*===========================================================================
 pmd-secLead
===========================================================================*/
.pmd-secLead_bg {
	position: relative;
	padding-top: calc(52 * var(--rs));
	padding-bottom: calc(104 * var(--rs));
}
.pmd-secLead_bg::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(142 * var(--rs));
	left: 0;
	width: 100vw;
	height: calc(100% - 142 * var(--rs));
	background-color: #faf6f0;
	z-index: -1;
	transform: translateX(calc(280 * var(--rs)));
}
.pmd-secLead_ttl {
	color: var(--key-color);
	font-family: var(--font-noto-serif);
	font-weight: 500;
	font-size: calc(32 * var(--rs));
	line-height: 1.88;
	letter-spacing: 0.06em;
}
.pmd-secLead_txt {
	max-width: calc(780 * var(--rs));
	margin-top: calc(38 * var(--rs));
	font-size: calc(16 * var(--rs));
	line-height: 2;
}
/* SP
----------------------------------*/
@media screen and (max-width: 768px) {
	.pmd-secLead_bg {
		padding-top: calc(2 * var(--rs));
		padding-bottom: calc(80 * var(--rs));
	}
	.pmd-secLead_bg::after {
		top: calc(126 * var(--rs));
		height: calc(100% - 126 * var(--rs));
		transform: translateX(calc(200 * var(--rs)));
	}
	.pmd-secLead_ttl {
		font-size: calc(50 * var(--rs));
		line-height: 1.72;
		letter-spacing: normal;
	}
	.pmd-secLead_ttl .textSpace {
		letter-spacing: -0.04em;
	}
	.pmd-secLead_txt {
		max-width: initial;
		margin-top: calc(44 * var(--rs));
		font-size: calc(32 * var(--rs));
		line-height: 1.88;
	}
}


/*===========================================================================
 pmd-ttl
===========================================================================*/
.pmd-ttl {
	position: relative;
	padding-left: calc(20 * var(--rs));
	font-family: var(--font-noto-serif);
	font-weight: 500;
	font-size: calc(36 * var(--rs));
	line-height: 1.58;
	letter-spacing: 0.04em;
}
.pmd-ttl::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: -1px;
	width: 2px;
	height: calc(100% * 40 / 57);
	background-color: #333;
	transform: translateY(calc(-50% + 1 * var(--rs)));
}
/* SP
----------------------------------*/
@media screen and (max-width: 768px) {
	.pmd-ttl {
		padding: calc(9 * var(--rs)) 0 calc(8 * var(--rs)) calc(28 * var(--rs));
		font-size: calc(52 * var(--rs));
		line-height: 1.38;
		letter-spacing: normal;
	}
	.pmd-ttl::before {
		top: 0;
		left: 0;
		height: 100%;
		transform: initial;
	}
}


/*===========================================================================
 pmd-moreBtn
===========================================================================*/
/* SP
----------------------------------*/
@media screen and (max-width: 768px) {
	.pmd-moreBtnWrap {
		display: flex;
		justify-content: center;
		position: absolute;
		left: 0;
		bottom: 0;
		width: 100%;
		padding: calc(160 * var(--rs)) calc(10 * var(--rs)) calc(100 * var(--rs));
		background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff 44%);
		text-align: center;
		z-index: 1;
		transition: all 0.3s ease-in-out;
	}
	.pmd-moreBtn {
		display: inline-block;
		cursor: pointer;
		background-color: #171b48;
		border-radius: calc(45 * var(--rs));
		padding: calc(22 * var(--rs)) calc(18 * var(--rs)) calc(22 * var(--rs)) calc(10 * var(--rs));
		min-width: calc(430 * var(--rs));
	}
	.pmd-moreBtn_txt {
		position: relative;
		padding-left: calc(40 * var(--rs));
		color: #fff;
		font-weight: 500;
		font-size: calc(30 * var(--rs));
		line-height: 1.47;
		letter-spacing: 0.06em;
		text-transform: uppercase;
	}
	.pmd-moreBtn_txt::before,
	.pmd-moreBtn_txt::after {
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		left: 0;
		width: calc(24 * var(--rs));
		height: 1px;
		background-color: #fff;
		transition: all 0.3s ease-in-out;
	}
	.pmd-moreBtn_txt::after {
		transform: rotate(90deg);
	}
	.pmd-moreParent.is-hide {
		position: relative;
		overflow: hidden;
	}
	.pmd-moreParent:not(.is-hide) .pmd-moreBtnWrap {
		background-image: none;
		position: static;
		padding: calc(100 * var(--rs)) calc(16 * var(--rs)) calc(120 * var(--rs));
	}
	.pmd-moreParent.is-hide .pmd-moreBtn_txt.-close {
		display: none;
	}
	.pmd-moreParent:not(.is-hide) .pmd-moreBtn_txt:not(.-close) {
		display: none;
	}
	.pmd-moreParent:not(.is-hide) .pmd-moreBtn_txt::after {
		display: none;
	}
}
