.special__list {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
.special__item {
	margin: 0 2% 2% 0;
	width: 400px;
}
.special__item:last-child {
	margin: 0 2% 0 0;
}
@media (max-width: 959px) {
	.special__item {
		width: 320px;
		margin: 0 2% 2% 0;
	}
}
@media (max-width: 767px) {
	.special__list {
		gap: 0.5rem;
	}
	.special__item {
		width: 100%;
		max-width: 640px;
		margin: 0 0 2%;
	}
	.special__item:last-child {
		margin: 0;
	}
}
.special__banner-box {
	position: relative;
}
.special__banner-img {
	object-fit: cover;
	height: 280px;
}
.special__banner-mask {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 60%;
	box-sizing: border-box;
	background-image: linear-gradient(to top, rgba(0,0,0,0.9), rgba(84,84,84,0));
}
.special__frame {
	color: #fff;
	position: absolute;
	bottom: 0.725rem;
	left: 0.725rem;
	right: 0.725rem;
}
.special__text {
	margin: 6px 0 0 0;
	font-size: 0.9rem;
	line-height: 1.33;
}
.special__title {
	font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
	.special__frame {
		color: #fff;
		position: absolute;
		bottom: 8px;
		left: 10px;
	}
	.special__title {
		font-size: 1.1rem;
	}
	.special__text {
		margin: 6px 0 0 0;
		font-size: 0.8rem;
	}
	.special__banner-img {
		object-fit: cover;
		height: 260px;
	}
}
.special__banner-img.takibi {
	object-fit: contain;
}