@charset "UTF-8";

.album__label {
	font-size: 1.54rem;
	font-weight: 700;
	line-height: 1.5;
	color: #595757;
	margin-bottom: 10px;
}

.album__label:not(:first-of-type) {
	margin-top: 50px;
}

.album__item:not(:last-of-type) {
	margin-bottom: 22px;
}

.album__heading {
	font-size: 1.5rem;
	letter-spacing: 0.1em;
	line-height: 1.73;
	background: #EEEEEF;
	padding: 0.2em 1em;
	margin-bottom: 10px;
	border-bottom: 1px solid #F0B818;
}

.album__text {
	font-size: 1.45rem;
	letter-spacing: 0.01em;
	line-height: 1.45;
	margin-bottom: 10px;
}

.album__contents {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 33px;
}

.album__contents__item {
	background: #FDF4DC;
	padding: 9px 9px 36px;
}

.album__contents__item a {
	background: #ffffff;
	aspect-ratio: 167/142;
}

.album__contents__item a img {
	display: block;
	-o-object-fit: contain;
	object-fit: contain;
	width: 100%;
	height: 100%;
}

.album-slide {
	position: relative;
	margin-bottom: 54px;
	width: 100%;
	margin-top: 40px;
}

.album-slide::before {
	position: absolute;
	top: 0;
	right: 100%;
	content: "";
	width: 50vw;
	height: 100%;
	display: block;
	background: #ffffff;
	z-index: 10;
}

.album-slide__contents {
	overflow: visible !important;
}

.album-slide__contents .swiper-wrapper {
	-webkit-transition-timing-function: linear;
	transition-timing-function: linear;
}

.album-slide__item {
	aspect-ratio: 297/193;
}

.album-slide__item a {
	display: block;
	width: 100%;
	height: 100%;
}

.album-slide__item img {
	display: block;
	-o-object-fit: cover;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.album-slide__button {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	font-size: 1.152rem;
	font-weight: 500;
	border: 1px solid #9E9E9F;
	background: #F7F7F7;
	width: 179px;
	height: 36px;
	text-decoration: none;
	margin-top: 30px;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.album-slide__button__balloon {
	position: absolute;
	bottom: calc(100% - 10px);
	left: calc(100% - 10px);
	display: block;
	width: 76px;
}

@media (hover: hover) {

.album-slide__button:hover {
	opacity: 0.6;
}

}

@media screen and (max-width: 767px) {

.album__contents { /* sp */
	grid-template-columns: repeat(2, 1fr);
	gap: 15px;
}

.album-slide { /* sp */
	width: 100vw;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	margin-top: 20px;
}

.album-slide::before { /* sp */
	content: none;
}

}

