@charset "UTF-8";

/* 動画 */
#sub08 video {
	width: 100%;
	vertical-align: bottom;
}

.caption-r {
	font-size: 1.2rem;
	text-align: right;
}

/* 動画サムネイル */
.movie-container .flex-movie-item.thumb-rakuchin {
	background-image: url(images/bnr-rakuchin.jpg);
}

.img-text {
	font-size: 1.4rem;
}

.text-center {
	text-align: center;
}

/* コラム */
.column .title-box {
	text-align: center;
}

.column {
	content: '';
	display: block;
	width: 100%;
	background: #f5f5f5;
	top: 0;
	left: 0;
	position: relative;
}

.column .column-icon {
	font-weight: 700;
	color: #fff;
	background-color: #000;
	border-radius: 50px;
	display: inline-block;
	position: absolute;
	left: 50%;
	transform: translate(-50%, 0);
}

.column .title-box {
	padding-bottom: 0.4rem;
	margin-left: auto;
	margin-right: auto;
}

.column .column-title {
	font-weight: 700;
	line-height: 2.2;
	border-bottom: 2px dotted #000;
	padding-bottom: 3px;
}

.column .arrow-img {
	width: 12%;
}

.column .merit-num {
	background-color: #7B1B17;
	padding: .15em 1.4em;
	color: #fff;
	border-radius: 5px;
	font-size: 1.4rem;
	font-weight: 500;
}

.column .flex-col3 {
	margin-top: 3rem;
}

.column .flex-col3 .merit-ttl span {
	display: inline;
	border-bottom: 1px dashed #000;
	line-height: 1.8;
}

.column .img-text {
	font-size: 1.2rem;
}

/* ピクトありタイトル */
.pict-icon {
	padding: .2em 1em;
	font-weight: 400;
	border: solid 1px #707070;
	border-radius: 5px;
}

/* ====================================
	プラグイン・アニメーション設定
 ==================================== */
/* スライダー：NEXT/PREV */
.slider-next,
.slider-prev {
	position: absolute;
	top: 50%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	transform: translate(0, -50%);
	cursor: pointer;
	z-index: 2;
}

.slider-prev {
	background-image: url(/range/products/rewf263/feature/images/arrow-left.svg);
	left: 0;
	right: auto
}

.slider-next {
	background-image: url(/range/products/rewf263/feature/images/arrow-right.svg);
	right: 0;
	left: auto
}

ul.slider-thumbs {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-top: 2rem;
}

ul.slider-thumbs a {
	display: block;
	cursor: pointer;
	padding: 2px;
}

ul.slider-thumbs li.active {
	border: solid 2px #A0A0A0;
}

ul.slider-thumbs li {
	border: solid 2px #fff;
	margin-top: 2%;
	margin-left: 2%;
}

.slide-text {
	text-align: center;
	margin-top: .4rem;
}

ul.slider-thumbs li:nth-child(-n+3) {
	margin-top: 0;
}

ul.slider-thumbs li:nth-child(3n-2) {
	margin-left: 0;
}

/* ====================================
	スマートフォン専用スタイル
===================================== */
@media only screen and (max-width: 767px) {
	.logo-container {
		width: 50%;
		margin: 3rem auto 0;
	}

	/* スライダーエリアSP調整 */
	.swiper-container {
		margin-top: 4rem;
	}

	.slide-text {
		font-size: 1.2rem;
	}

	ul.slider-thumbs {
		margin-top: 2rem;
	}

	ul.slider-thumbs li {
		width: calc(90% / 5);
	}

	/* スライダー：NEXT/PREV */
	.slider-next,
	.slider-prev {
		width: 30px;
		height: 30px;
	}

	/* コラム */
	.column-outer {
		margin-left: 5%;
		margin-right: 5%;
	}

	.column {
		margin-top: 6rem;
		padding: 12% 6% 12%;
	}

	.column .column-icon {
		font-size: 1.4rem;
		top: -1.3%;
		padding: 0.4em 2.4em;
	}

	.column .title-box {
		padding-bottom: 0.4rem;
		padding-left: 4%;
		padding-right: 4%;
	}

	.column .column-title {
		font-size: 1.6rem;
		margin-top: 2rem;
	}

	.column .column-text {
		font-size: 1.5rem;
	}

	.column .flex-container>.flex-item.right {
		width: 100%;
		margin-top: 2rem;
	}

	.column .arrow-img {
		margin-top: 1.4em;
		width: 10rem;
	}

	.column .ttl {
		font-size: 1.6rem;
	}

	.column .text {
		font-size: 1.4rem;
	}

	.column .merit-num {
		font-size: 1.2rem;
	}

	.column .flex-col3 .merit-ttl {
		font-size: 1.6rem;
		margin-top: 1rem;
	}

	/* ピクトありタイトル */
	.pict-icon {
		display: inline-block;
		font-size: 1.2rem;
	}

	.pict-ttl {
		display: inline-block;
		margin-top: .25em;
		margin-right: 1em;
	}

}

/* ====================================
	PC&タブレット、印刷専用スタイル
===================================== */
@media print,
screen and (min-width: 768px) {
	#sub01 .flex-container {
		justify-content: space-between;
		flex-wrap: nowrap;
	}

	#sub01 .flex-container .text-container {
		width: 78%;
	}

	.logo-container {
		width: 18%;
		margin-top: 4rem;
	}

	/* スライダー：NEXT/PREV */
	.slider-next,
	.slider-prev {
		width: 50px;
		height: 50px;
	}

	/* スライダーエリアPC */
	.swiper-container {
		margin-top: 5rem;
	}

	.slide-text {
		font-size: 1.4rem;
	}

	ul.slider-thumbs li {
		width: calc(60% / 5);
	}

	/* コラム */
	.column {
		max-width: 1080px;
		margin-top: 11rem;
		padding: 3em 3em 3em;
	}

	.column-imgs {
		justify-content: center;
		align-items: center;
	}

	.column-imgs .flex-item:first-child {
		width: 31%;
		margin-right: 2%;
	}

	.column .column-icon {
		font-size: 1.6rem;
		top: -2.5%;
		padding: 0.4em 2.5em;
	}

	.column .column-title {
		font-size: 2rem;
		margin-top: 2rem;
		padding-bottom: 4px;
	}

	.column .text-container {
		margin-top: 3rem;
	}

	.column .flex-container .flex-item.left {
		width: 56%;
	}

	.column .flex-container .flex-item.right {
		width: 50%;
	}

	.column .flex-container .flex-item.right .img-container {
		filter: drop-shadow(3px 4px 3px rgba(0, 0, 0, 0.1));
	}

	.column .arrow-img {
		margin: 2.5rem auto 3rem;
	}

	.column .flex-container.flex-col3 .flex-item {
		width: calc(100% / 3);
		margin-left: 0;
	}

	.column .flex-col3 .img-container {
		margin-top: 2.5rem;
	}

	.column .flex-col3 .img-text {
		margin-top: 1rem;
		font-size: 1.5rem;
	}

	.column .flex-col3 .merit-ttl {
		font-size: min(2vw, 18px);
		margin-top: 2rem;
	}

	.column .inner-wrap {
		padding: 0 5%;
	}

	/* ピクトありタイトル */
	.pict-icon {
		display: inline-block;
		font-size: 1.4rem;
	}

	.pict-ttl {
		display: inline-block;
		margin-right: 1em;
	}

}