@charset "UTF-8";


/*  l-kv
--------------------------------------------------*/
.kv-head {
    /*height: 40.0rem;*/
    height: 40.5rem;
    padding-top: 1.0rem;
    flex-direction: column;
}
.kv-head__desc {
	position: relative;
	width: 100%;
	font-size: 3.4rem;
	line-height: 1.75;
	letter-spacing: .1em;
	text-align: center;
	margin-top: 5.5rem;
}
.kv-photo {
    /*height: calc(100lvh - 40.0rem);*/
    height: calc(100lvh - 40.5rem);
}
@media screen and (max-width: 768px){
	.kv-head {
		height: 25.0rem;
		justify-content: flex-end;
		padding-top: 0;
		padding-bottom: 3.0rem;
	}
	.kv-head__desc {
		font-size: 1.6rem;
		margin-top: 2.0rem;
	}
	.kv-photo {
	    height: calc(100lvh - 25.0rem - 70px);
	}
}




/*  l-merit
--------------------------------------------------*/
.l-merit {
	position: relative;
}





/*  l-train
--------------------------------------------------*/
.l-train {
	position: relative;
    padding-block: 19.0rem 15.0rem;
 	background : linear-gradient(90deg, rgba(240, 238, 230, 0) 0%, rgba(240, 238, 230, 1) 50%, rgba(240, 238, 230, 0) 100%);
}
.l-train::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 17.4rem;
	background: linear-gradient(0deg, rgba(195, 185, 155, 0) 0%, rgb(204 197 176) 100%);
	pointer-events: none;
}
.train-inner {
	max-width: 1400px;
}
.train-head {
	margin-bottom: 9.0rem;
}
.train-head__ttl {
	font-size: 5.0rem;
	line-height: 1;
	letter-spacing: .1em;
	color: #726256;
	text-align: center;
}
.train-head__desc {
	font-size: 2.8rem;
	line-height: 1.714286;
	letter-spacing: .05em;
	color: #92804c;
	text-align: center;
	margin-top: 8.0rem;
}
.train-place {
	width: 100%;
	margin-bottom: 11.0rem;
}
.train-place__item {
	position: relative;
	width: calc(380 / 1400 * 100%);
}
.train-place__item1 {
	width: calc(620 / 1400 * 100%);
}
.train-place__item__desc {
	position: absolute;
	inset: 50% auto auto 50%;
	transform: translate(-50%,-50%);
	font-size: 3.4rem;
	line-height: 1.117647;
	letter-spacing: .1em;
	color: #fff;
	text-align: center;
	filter: drop-shadow(0 0 5px rgba(0, 0, 0, 1));
	z-index: 1;
}
.train-from {
	width: 100%;
}
.train-from__heading {
	position: relative;
	font-size: 2.8rem;
	line-height: 1.714286;
	letter-spacing: .2em;
	margin-bottom: 6.5rem;
	overflow: clip;
}
.train-from__heading span {
	position: relative;
	display: inline-block;
}
.train-from__heading span::before {
	content: '';
	position: absolute;
	left: 110%;
	top: 50%;
	width: 100vw;
	height: 1px;
	background: #b4a882;
}
.train-from__contents {
	width: 100%;
}
.train-from__list {
	width: calc(380 / 1400 * 100%);
}
.train-from__list__item {
	position: relative;
	width: 100%;
}
.train-from__list__item + .train-from__list__item {
	margin-top: calc(43 / 380 * 100%);
}
.train-from__figure {
	width: calc(940 / 1400 * 100%);
	background: #fff;
}
.train-from__figure img {
	width: calc(720 / 940 * 100%);
}
@media screen and (max-width: 768px){
	.l-train {
		padding-block: 5.5rem 6.0rem;
	}
	.l-train::before {
		height: 3.5rem;
	}
	.train-head {
		margin-bottom: 3.0rem;
	}
	.train-head__ttl {
		font-size: 3.0rem;
	}
	.train-head__desc {
		font-size: 1.8rem;
		line-height: 1.714286;
		margin-top: 3.0rem;
	}
	.train-place {
		margin-bottom: 5.5rem;
	}
	.train-place__item {
		width: 100%;
	}
	.train-place__item + .train-place__item {
		margin-top: 2.0rem;
	}
	.train-place__item__photo {
		aspect-ratio: 320 / 180;
		overflow: clip;
	}
	.train-place__item__photo img {
		object-fit: cover;
		object-position: center center;
		width: 100%;
		height: 100%;
	}
	.train-place__item__desc {
		font-size: 2.8rem;
	}
	.train-from {
		width: 100%;
	}
	.train-from__heading {
		font-size: 1.8rem;
		text-align: center;
		margin-bottom: 2.5rem;
	}
	.train-from__heading span::before {
		display: none;
	}
	.train-from__list {
		width: 100%;
		margin-bottom: 3.0rem;
	}
	.train-from__list__item + .train-from__list__item {
		margin-top: 3.0rem;
	}
	.train-from__figure {
		width: 100%;
		padding: calc(20 / 320 * 100%);
	}
	.train-from__figure img {
		width: 100%;
	}
}




/*  l-car
--------------------------------------------------*/
.l-car {
	padding-block: 14.5rem 15.0rem;
}
.car-inner {
	max-width: 1400px;
}
.car-head {
	margin-bottom: 9.0rem;
}
.car-head__ttl {
	font-size: 5.0rem;
	line-height: 1;
	letter-spacing: .1em;
	color: #726256;
	text-align: center;
}
.car-contents {
	width: 100%;
}
.car-contents__photo {
	width: calc(780 / 1400 * 100%);
}
.car-contents__detail {
	width: calc(470 / 1400 * 100%);
}
.car-contents__detail__heading {
	position: relative;
	font-size: 2.8rem;
	line-height: 1.714286;
	letter-spacing: .05em;
	color: #92804c;
    padding-left: 9.0rem;
    margin-bottom: 4.5rem;
}
.car-contents__detail__heading::before {
	content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-60%) rotate(34deg);
    width: 1px;
    height: 100%;
    background: #b4a882;
    transform-origin: bottom left;
}
.car-contents__detail__desc {
	padding: calc(60 / 470 * 100%) calc(55 / 470 * 100%) calc(48 / 470 * 100%);
	background: #f8f6f2;
}
.car-contents__detail__note {
    font-size: 11px;
    line-height: 1.818181818181818;
    letter-spacing: .05em;
    color: #666666;
    margin-left: 1em;
    text-indent: -1em;
    margin-top: 1.7rem;
}
@media screen and (max-width: 768px){
	.l-car {
		padding-block: 5.5rem 6.0rem;
	}
	.car-head {
		margin-bottom: 3.0rem;
	}
	.car-head__ttl {
		font-size: 3.0rem;
	}
	.car-contents__photo {
		width: 100%;
		margin-bottom: 3.0rem;
	}
	.car-contents__detail {
		width: 100%;
	}
	.car-contents__detail__heading {
		font-size: 1.8rem;
	    padding-left: 6.0rem;
	    margin-bottom: 3.0rem;
	}
	.car-contents__detail__desc {
		padding: calc(30 / 320 * 100%) calc(15 / 320 * 100%) calc(30 / 320 * 100%);
	}
	.car-contents__detail__note {
        font-size: 10px;
        line-height: 1.8;
	}
}