@charset "UTF-8";

/* ====================================
	フォント設定
 ==================================== */
/* フォント */
.oswald {
	font-family: oswald, sans-serif;
	font-weight: 500;
	font-style: normal;
}

/* ====================================
	共通スタイル
 ==================================== */
.bdr-box {
	padding: 0.6em 1em;
	border: solid #000 1px;
	color: #000;
	line-height: 1.6;
	font-feature-settings: "palt";
}

.text-container .bdr-box.caption {
	font-size: 1.15rem;
}

.sky-blue span {
	color: #00a0e9;
}

/* スライドイン */
.scroll-in.slide-in-filter .filter1 {
	background-color: #E6000D;
	opacity: .8;
}

.scroll-in.slide-in-filter .filter2 {
	background-color: #FFFFFF;
}

.bg-gray .scroll-in.slide-in-filter .filter2 {
	background-color: #F5F5F5;
}

/* フレックスコンテナ */
.flex-container {
	display: flex;
	flex-wrap: wrap;
}

.flex-item {
	width: 100%;
}

/* フレックスコンテナ ハーフ*/
.flex-container.half.spe .spe-title {
	font-weight: 600;
	padding-left: 2rem;
	color: #535353;
	position: relative;
}

.flex-container.half.spe .spe-title .spe-sub-text {
	font-size: 1.4rem;
}

.flex-container.half.spe .spe-title .title {
	font-size: 4rem;
}

.flex-container.half.spe .spe-title::before {
	content: "";
	display: block;
	height: 88%;
	border-left: 5px solid #E6000D;
	position: absolute;
	top: 2px;
	left: 0;
}

.flex-container.half.spe .spe-main-text {
	font-size: 2rem;
	font-weight: 500;
	margin-top: 5rem;

}

.flex-container.half.spe .spe-text {
	margin-top: 4rem;
	line-height: 2;
}


.care .care-title {
	font-weight: 500;
	font-size: 2rem;
	line-height: 1.8;
	margin-top: 4rem;
	padding-left: 2rem;
	position: relative;
}

.care .care-title::before {
	content: "";
	display: block;
	height: 85%;
	border-left: 5px solid #E6000D;
	position: absolute;
	top: 7px;
	left: 0;
}

.care .care-text {
	margin-top: 1rem;
	line-height: 1.8;
}

/* movie */
.flex-container.half.movie .title-container {
	text-align: center;
}

.flex-container.half.movie .movie-item {
	margin-top: 4rem;
}

.flex-container.half.movie .movie-item:hover {
	opacity: 0.6;
	transition: 0.5s ease 0s;

}

.flex-container.half.movie .movie-title {
	padding-bottom: 2rem;
	display: inline-block;
	position: relative;
}

.flex-container.half.movie .movie-title::before {
	content: '';
	width: 160px;
	height: 2px;
	background-color: #000;
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 0);
}

.flex-container.half.movie .movie-title::after {
	content: "";
	position: absolute;
	display: block;
	right: 0;
	bottom: -18px;
	left: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: #000 transparent transparent transparent;
	border-width: 8px 6px 0 6px;
}

/* サブセクション */
.sub-section.bg-gray {
	background-color: #F5F5F5;
}

.sub-section .sub-title {
	font-weight: 500;
	text-align: center;
}

.sub-section .text-container .sub-text {
	line-height: 2;
}

.sub-section em {
	color: #E6000D;
}

.num {
	position: relative;
	text-align: center;
	background-size: 30%;
}

.num .img {
	width: 16%;
}

.num .text-item {
	font-size: 1.5rem;
	position: absolute;
	padding-bottom: 1rem;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	display: flex;
	align-items: center;
	flex-direction: column;
}

.text-item .line {
	border-bottom: 2px solid #D02D23;
	width: 0;
	margin-top: 1rem;
}

.text-item .line.passed {
	border-bottom: 2px solid #D02D23;
	width: 70px;
}

.num .num-item {
	font-size: 24rem;
	color: #F5F5F5;
}

.sub-section:nth-of-type(even) .num .num-item {
	color: #fff;
}

/* リストコンテナ */
ul.list-container>li.list-item .text {
	font-weight: 500;
}

ul.list-container>li.list-item .list-inner .list-title {
	position: relative;
	color: #535353;
}

ul.list-container>li.list-item .list-inner .list-title::before {
	content: "";
	display: block;
	height: 66%;
	border-left: 5px solid #E6000D;
	position: absolute;
	top: 13px;
	left: 0;
}

.kouka-cap {
	text-align: left;
}



/* 製品 */
.products-title {
	display: block;
	margin-bottom: 4rem;
	font-size: 9rem;
	line-height: 1;
	color: #D9D9D9;
	font-weight: bold;
	text-align: center;
	position: relative;
}

.products-title .img {
	width: 26%;
}


.product-item .arrow-item {
	margin-top: auto;
	width: 100%;

}

.product-item a {
	display: block;
}

.product-name {
	line-height: 1.2;
	font-weight: 500;
}

.product-sub-name {
	font-weight: 300;
}

.list-prod-info li {
	border-bottom: 1px solid #D9D9D9;
	padding: 1rem 0 0.4rem;
}

/* movie アローボタン */
.movie-arrow-item {
	text-align: center;
	margin-top: 6rem;
}

.movie-arrow {
	display: inline-block;

}

.movie-arrow a {
	display: block;
	width: 100%;
	height: 100%;
	padding: .8em 4.5em .8em 2.5em;
	font-size: inherit;
	line-height: inherit;
	background-color: #fff;
	background-image: url(images/movie-arrow.svg);
	background-repeat: no-repeat;
	background-position: right .7em center;
	background-size: auto 1.2em;
	border: 3px #A0A0A0 solid;
	border-radius: 30px;
	color: #000;
	text-decoration: none;
}

/* ボタン */
.btn-item {
	margin-top: 3rem;
}

.btn {
	width: 176px;
	height: 48px;
}

.btn-content {
	height: 100%;
	z-index: 1;
	position: relative;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
}

.btn-content .btn-text {
	font-size: 1.6rem;
	margin-left: 16px;
	color: #fff;
	font-weight: 500;
	padding: .8rem 0;
}

.btn-content .icon {
	position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 32px;
	height: 32px;
	top: 2px;
	right: 8px;
}

.btn-bg-icon {
	width: 25px;
	height: 25px;
	top: 8px;
	right: 13px;
}

.btn-bg,
.btn-bg-icon {
	position: absolute;
	background-color: #C6040F;
	border-radius: 32px
}

.btn-bg {
	overflow: hidden;
	transform: translateZ(0);
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background-color: #E6000D;
}

.btn_inner {
	position: relative;
	width: 100%;
	height: 100%;
	display: block;
}

.btn_inner:hover {
	text-decoration: none;
}

/* ムービーボタン */
.movie-btn-item {
	margin-top: 6rem;
	max-width: 352px;
}

.movie-btn-item:hover .btn-text {
	color: #fff;
}

.movie-btn-content {
	height: 100%;
	z-index: 1;
	position: relative;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
	border: 3px #A0A0A0 solid;
	border-radius: 32px;
}

.movie-btn-content .btn-text {
	font-size: 1.6rem;
	margin-left: 38px;
	color: #000;
	font-weight: 500;
	padding: 1.3rem 0;
	transition: color .4s ease-out;

}

.movie-btn-content .icon {
	position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 32px;
	height: 32px;
	top: 7.5px;
	right: 10.5px;
}

.movie-btn-bg-icon {
	width: 24px;
	height: 24px;
	top: 17px;
	right: 18px;
}

.movie-btn-bg,
.movie-btn-bg-icon {
	position: absolute;
	background-color: #A0A0A0;
	border-radius: 32px;
}

.movie-btn-bg {
	overflow: hidden;
	transform: translateZ(0);
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background-color: #fff;
}

.movie-btn_inner {
	position: relative;
	width: 100%;
	height: 100%;
	display: block;
}

.movie-btn_inner:hover {
	text-decoration: none;
}



.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0 10px;
}

/* スライド */
.swiper-pagination-bullet {
	width: 37px;
	height: 37px;
	text-align: center;
	line-height: 37px;
	font-size: 18px;
	color: #000;
	opacity: 1;
	background: rgba(0, 0, 0, 0.1);
}

.swiper-pagination-bullet:hover,
.swiper-pagination-bullet-active {
	color: #fff;
	background: #E6000D;
}


#slider1 .swiper-pagination-bullet {
	background: #fff;
}

#slider1 .swiper-pagination-bullet:hover {
	background: #E6000D;

}

#slider1 .swiper-pagination-bullet-active {
	color: #fff;
	background: #E6000D;
}

.swiper-pagination {
	position: relative;
	bottom: -10px;
}

/* スライダー：NEXT/PREV */
.slider .slider-outer {
	max-width: 1080px;
	margin-left: auto;
	margin-right: auto;
	padding: 0 60px;
	position: relative;
}


.slider .slider-next,
.slider .slider-prev {
	position: absolute;
	top: 45%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	transform: translate(0, -50%);
	cursor: pointer;
	z-index: 2;
}

.slider .slider-prev {
	background-image: url(images/arrow-prev-b.svg);
	left: 0;
	right: auto
}

.slider .slider-next {
	background-image: url(images/arrow-next-b.svg);
	right: 0;
	left: auto
}

.slider .slider-next,
.slider .slider-prev {
	width: 50px;
	height: 72px;
}



.slider {
	text-align: center;
}

.slider-ttl {
	padding-bottom: 1.8rem;
	display: inline-block;
	position: relative;
	text-align: center;
	font-weight: 500;
	margin-bottom: 5rem;
}

.slider-ttl::before {
	content: '';
	width: 100%;
	height: 2px;
	background-color: #000;
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 0);
}

.slider-ttl::after {
	content: "";
	position: absolute;
	display: block;
	right: 0;
	bottom: -18px;
	left: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: #000 transparent transparent transparent;
	border-width: 8px 6px 0 6px;
}



/* 効果 */
.kouka-large sup {
	font-size: 60%;
	top: -.6em;

}

.kouka-cap .sky-blue {
	color: #00a0e9;
}

/* ====================================
	1023px以下専用スタイル
===================================== */
@media only screen and (max-width: 1023px) {

	/* サブセクション */
	.adjust {
		margin-top: -40px;
		padding-top: 40px;
	}


	/* ページナビ */
	.scroll-fix-wrap {
		padding-top: 46px;
		position: relative;
	}

	#pageNavi {
		width: 100%;
		position: absolute;
		top: 0;
	}

	.scroll-fix-wrap.passed #pageNavi {
		position: fixed;
		z-index: 10;
	}

	#pageNavi .navi-container {
		padding: 6px 0 0 6px;
	}

	.navi-title {
		display: flex;
		align-items: center;
	}

	.navi-logo a {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 140px;
		height: 100%;
		padding-right: 6px;
		font-size: 2.2rem;
		color: #777;
		text-decoration: none;
	}

	.navi-btn-menu {
		padding: 6px;
		background-color: #777;
	}

	.btn-trigger {
		width: 20px;
		padding-top: 88%;
		cursor: pointer;
		position: relative;
	}

	.btn-trigger span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 2px;
		background-color: #fff;
		border-radius: 4px;
	}

	.btn-trigger,
	.btn-trigger span {
		display: block;
		transition: all .5s;
		box-sizing: border-box;
	}

	.btn-trigger span:nth-of-type(1) {
		top: 0;
	}

	.btn-trigger span:nth-of-type(2) {
		top: 44%;
	}

	.btn-trigger span:nth-of-type(3) {
		bottom: 0;
	}

	.open .btn-trigger span:nth-of-type(1) {
		transform: translateY(8px) rotate(45deg);
	}

	.open .btn-trigger span:nth-of-type(2) {
		opacity: 0;
	}

	.open .btn-trigger span:nth-of-type(3) {
		transform: translateY(-8px) rotate(-45deg);
	}

	#pageNavi ul.list-navi {
		display: none;
		height: calc(100vh - 60px);
		font-size: 1.6rem;
	}

	#pageNavi ul.list-navi li {
		margin-bottom: 1.5em;
	}

	#pageNavi ul.list-navi li,
	#pageNavi ul.list-navi a {
		width: 100%;
		text-align: center;
		text-decoration: none;
	}

	.scroll-fix-wrap #pageNavi.open {
		width: 100%;
		height: 100%;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 20;
		/* background-color: rgba(230, 0, 13, 0.9); */
		background-color: rgba(119, 119, 119, 0.9);

		animation: show .2s linear 0s;
		animation-fill-mode: both;
	}

	#pageNavi.open .navi-logo a {
		color: #fff;
	}

	#pageNavi.open ul.list-navi {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-content: center;
		animation: show .2s linear .3s;
		animation-fill-mode: both;
	}

	@keyframes show {
		from {
			opacity: 0;
		}

		to {
			opacity: 1;
		}
	}

	#pageNavi.open ul.list-navi a {
		color: #fff;
	}

	/* メインセクション */
	#main-area {
		padding: 6rem 0 8rem;
	}

}

/* ====================================
	767px以下専用スタイル
===================================== */
@media only screen and (max-width: 767px) {
	body {
		font-size: 1.4rem;
	}

	.pc-large {
		display: none;
	}

	.pc-small {
		display: none;
	}

	.mv-pc {
		display: none;
	}

	.maxw480 {
		max-width: 480px;
		margin-left: auto;
		margin-right: auto;
	}

	.maxw540 {
		max-width: 540px;
		margin-left: auto;
		margin-right: auto;
	}

	/* フレックスコンテナ ハーフ*/
	.flex-container.half.spe.first {
		margin-top: 4rem;
	}

	.flex-container.half.spe {
		margin-top: 4.5rem;
	}

	.flex-container.half.spe .spe-title {
		font-size: 2rem;
		font-weight: 600;
		padding-left: 1.4rem;
	}

	.flex-container.half.spe .spe-title::before {
		height: 86%;
		border-left: 5px solid #E6000D;
		top: 4px;
	}

	.flex-container.half.spe .spe-main-text {
		font-size: 1.6rem;
		margin-top: 2rem;
	}

	.flex-container.half.spe .spe-text {
		margin-top: 1.2rem;
	}

	.flex-container.half.spe .spe-title .spe-sub-text {
		font-size: 1.4rem;
	}

	.flex-container.half.spe .spe-title .title {
		font-size: 2rem;
	}

	.flex-container.half.spe02 .img-container-outer {
		position: relative;
		padding-right: 10%;
		padding-bottom: 22%;
	}

	.flex-container.half.spe02 .sub-img-container {
		position: absolute;
		bottom: 0;
		right: 0;
		width: 50%;
	}

	/* movie */
	.flex-container.half.movie .movie-title {
		font-size: 1.5rem;
	}

	.flex-container.half.movie .flex-item {
		margin-top: 4rem;
	}

	/* メインビジュアル */
	.mv-title .title-img {
		width: 100%;
	}

	/* メインセクション */
	.main-text {
		line-height: 2;
		text-align: left;
		font-size: 1.5rem;
	}

	.main-cap {
		font-size: 1.4rem;
		line-height: 1.4;
	}

	/* サブセクション */
	.sub-section {
		padding: 0rem 0 8rem;
	}

	.text-sub-container {
		margin-top: 3rem;
	}

	.text-sub-container .text {
		line-height: 1.8;
	}

	.num .img {
		width: 20%;
	}

	.num .text-item {
		padding-bottom: 0.6rem;
		font-size: 1.2rem;
	}

	.num .text-item .line.passed {
		width: 50px;
	}

	.img-container {
		margin-top: 2rem;
	}

	.sub-section .sub-title {
		font-size: 2.2rem;
		margin-top: 4rem;
	}

	.sub-section .sub-title .small {
		font-size: 1.6rem;
	}

	.sub-section .sub-text {
		margin-top: 3rem;
		margin-bottom: 4rem;
	}

	.sub-section .text-container .sub-text {
		line-height: 1.8;
	}

	/* リストコンテナ */
	ul.list-container>li.list-item:first-of-type {
		margin-top: 0;
	}

	ul.list-container>li.list-item {
		margin-top: 4rem;
	}

	ul.list-container>li.list-item .text {
		font-size: 1.6rem;
	}

	ul.list-container>li.list-item .list-inner .list-title {
		font-size: 2rem;
		padding-left: 1.4rem;
		font-weight: 600;
	}

	ul.list-container>li.list-item .list-inner .list-title::before {
		top: 5.5px;
		height: 68%;
	}

	.kouka-item {
		height: auto;
		margin-top: 1.2rem;
	}

	#kouka05.kouka-item {
		margin-top: 4rem;
	}

	/* サブサブセクション */
	.sub-sub-section {
		padding: 0 0 6rem;
	}

	/* スライド */
	.swiper-pagination-bullet {
		width: 20px;
		height: 20px;
		text-align: center;
		line-height: 20px;
		font-size: 12px;
		margin-right: 1rem;
	}

	.swiper-pagination {
		margin-top: 2.4rem;
	}

	.slider .slider-next,
	.slider .slider-prev {
		width: 30px;
		height: 35px;
		top: 42%;
	}

	.slider .slider-outer {
		padding: 0 30px;
	}

	.slider-ttl {
		padding-bottom: 1.2rem;
		margin-bottom: 3.6rem;
	}

	/* 製品 */
	.products-section {
		padding: 2rem 0 6rem;
	}

	.product-item {
		display: flex;
		justify-content: space-between;
	}

	.product-item:nth-of-type(n+2) {
		margin-top: 4rem;
	}

	.products-title {
		margin-bottom: 3rem;
		padding: 0.2em 0;
		font-size: 5rem;
		text-align: center;
		position: relative;
	}

	.products-title .img {
		width: 35%;
	}

	.product-item .img {
		width: 35%;
	}

	.product-item .prod-text {
		width: 55%;
	}

	.product-name {
		font-size: 2.2rem;
	}

	.product-sub-name {
		font-size: 1.1rem;
	}

	.product-item:first-of-type {
		border-top: none;
	}

	.prod-text {
		font-size: 1.2rem;
	}

	.list-prod-info li {
		padding: .4rem 0 .2rem;
	}

	.product-link a {
		width: 120px;
		font-size: 1.5rem;
	}

	.btn-content .btn-text {
		font-size: 1.4rem;
		margin-left: 16px;
		padding: .6rem 0;
	}

	.product-item .btn-content .img {
		width: 18%;
	}

	.btn-bg-icon {
		width: 20px;
		height: 20px;
		top: 4px;
		right: 8px;
	}

	.btn-content .icon {
		top: -2.5px;
		right: 2px;
		width: 30px;
		height: 30px;
	}

	.btn-content .btn-text {
		font-size: 1.1rem;
	}

	.btn-item {
		max-width: 150px;
		margin-top: 1.6rem;
	}

	/* ムービーボタン */
	.movie-btn-item {
		margin-top: 5rem;
		max-width: 265px;
	}

	.movie-btn-content .icon {
		top: 4.5px;
		right: 5.5px;
	}

	.movie-btn-bg-icon {
		top: 13.5px;
		right: 13px;
	}

	.movie-btn-content .btn-text {
		font-size: 1.3rem;
		margin-left: 14px;
		padding: 1.2rem 0;
	}

	/* movie */
	.flex-container.half.movie .movie-title {
		padding-bottom: 1.2rem;
	}

	.flex-container.half.movie .movie-item {
		margin-top: 3.8rem;
	}

	/* 効果 */
	.kouka-img {
		margin-bottom: 2.2rem;
		width: 70%;
		margin-left: auto;
		margin-right: auto;
	}

	.kouka-text {
		text-align: center;

	}

	.kouka-text .in-text {
		font-size: 1.4rem;
		margin-bottom: .4rem;
	}

	.kouka-ttl {
		padding: .3em 0;
		margin-bottom: 1.4rem;
		background-color: #000;
		color: #fff;
		font-size: 1.45rem;
	}

	.kouka-large {
		font-size: 2rem;
	}

	.kouka-small {
		font-size: 1.1rem;
		margin-top: .6rem;
	}

	.kouka-cap {
		margin-top: 2rem;
		font-size: 1.1rem;
	}

	/* お手入れ */
	.care .img-container {
		margin-top: 4rem;
	}

	.care .care-title {
		font-size: 1.6rem;
		margin-top: 2rem;
		padding-left: 1.4rem;
	}

	.care .care-title::before {
		height: 80%;
		top: 4px;
		left: 0;
	}

	.care .care-text {
		margin-top: 1rem;
	}

}

/* ====================================
	567px以下専用スタイル
===================================== */
@media only screen and (max-width: 567px) {
	.sp-large {
		display: none;
	}

	.pc-large {
		display: none;
	}

	/* リストコンテナ */
	ul.list-container>li.list-item .text {
		font-size: 2.2rem;
		padding-left: 1.4rem;
	}

	.num .img {
		width: 26%;
	}

	.text-item .line {
		margin-top: .5rem;
	}

	/* スライダー */
	.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
		margin: 0 5px;
	}

	/* movie */
	.flex-container.half.movie .movie-title::before {
		width: 130px;
	}

}

/* ====================================
	768px以上印刷専用スタイル
===================================== */
@media print,
screen and (min-width: 768px) {
	.mv-sp {
		display: none;
	}

	.width-buffer {
		padding-left: 2.5%;
		padding-right: 2.5%;
	}

	.maxw860 {
		max-width: 860px;
		margin-left: auto;
		margin-right: auto;
	}

	.maxw876 {
		max-width: 876px;
		margin-left: auto;
		margin-right: auto;
	}

	.maxw760 {
		max-width: 760px;
		margin-left: auto;
		margin-right: auto;
	}

	.maxw700 {
		max-width: 700px;
		margin-left: auto;
		margin-right: auto;
	}

	.maxw1080 {
		max-width: 1080px;
		margin-left: auto;
		margin-right: auto;
	}

	.text-container .caption {
		font-size: 1.2rem;
	}

	.bdr-box {
		text-align: center;
	}

	.text-sub-container {
		margin-top: 4rem;
	}

	.text-sub-container .text {
		line-height: 2;
	}

	/* メインビジュアル */
	.mv-title .title-img {
		padding: 0 10%;
	}

	/* フレックスコンテナ：ハーフ */
	.flex-container.half {
		justify-content: center;
	}

	.flex-container.half>.flex-item {
		width: 47%;
	}

	.flex-container.half.spe {
		margin-top: 14rem;
		justify-content: flex-end;
	}

	.flex-container.half.spe .flex-item.text {
		width: 43%;
	}

	.flex-container.half.spe .flex-item.left {
		margin-right: 6rem;
	}

	.flex-container.half.spe:nth-of-type(even) {
		flex-direction: row-reverse;
	}

	.flex-container.half.spe02 .img-container-outer {
		position: relative;
		padding-right: 12%;
		padding-bottom: 20%;
	}

	.flex-container.half.spe02 .sub-img-container {
		position: absolute;
		bottom: 0;
		right: 0;
		width: 50%;
	}

	/* movie */
	.flex-container.half.movie {
		margin-top: 10rem;
	}

	.flex-container.half.movie .flex-item {
		/* width: 46%; */
		width: 100%;
		max-width: 760px;
	}

	.flex-container.half.movie .movie-title {
		font-size: 2rem;
	}

	/* メインセクション */
	.main-text {
		line-height: 2.4;
		font-size: 1.8rem;
	}

	.main-cap {
		font-size: 1.4rem;
		line-height: 1.4;
	}

	/* サブセクション */
	.sub-section {
		padding: 0rem 0 20rem;

	}

	.sub-section .sub-title {
		font-size: 4.2rem;
		margin-top: 5rem;
	}

	.sub-section .sub-title .small {
		font-size: 3rem;
	}

	.sub-section .sub-text {
		margin: 5rem 0 10rem;
	}

	/* リストコンテナ */
	ul.list-container>li.list-item:nth-of-type(n+2) {
		margin-top: 8rem;
	}

	ul.list-container>li.list-item .list-inner .list-title {
		font-size: 3.6rem;
		padding-left: 2rem;
		font-weight: 600;
	}

	/* サブサブセクション */
	.sub-sub-section {
		padding: 0 0 10rem;
	}

	/* スライド */
	.slider {
		margin-top: 8rem;
	}

	.swiper-pagination {
		margin-top: 5rem;
	}

	/* 製品 */
	.product-container {
		display: flex;
		justify-content: space-between;
		max-width: 900px;
		padding: 0 0 12rem;
	}

	.list-prod-info {
		margin-top: 1rem;
		min-height: 115px;
	}

	.products-section {
		padding: 14rem 0 0;
	}

	.products-title {
		margin-bottom: 7rem;
	}

	.product-item {
		width: 28%;
	}

	.product-name {
		font-size: 3rem;
	}

	.product-sub-name {
		font-size: 1.4rem;
		margin-top: 2rem;
	}

	/* お手入れ */
	.care .flex-container.half .flex-item {
		width: 46%;
	}

}

/* ====================================
	768px以上1023px以下専用スタイル
===================================== */
@media only screen and (min-width: 768px) and (max-width: 1023px) {
	.sp-small {
		display: none;
	}

	.pc-large {
		display: none;
	}

	/* リストコンテナ */
	.sub-section .sub-title {
		font-size: 4rem;
	}

	ul.list-container>li.list-item .text {
		font-size: 2rem;
	}

	/* サブセクション */
	.sub-section {
		padding: 0rem 0 14rem;

	}

	.sub-section .sub-title .small {
		font-size: 2.6rem;
	}

	.sub-section .sub-title {
		font-size: 3.8rem;
		margin-top: 6rem;
	}


	/* フレックスコンテナ：ハーフ */
	.flex-container.half.spe .spe-title {
		font-size: 3.4rem;
	}

	.flex-container.half.spe .spe-main-text {
		font-size: 1.8rem;
		margin-top: 3.5rem;

	}

	.flex-container.half.spe .flex-item.text {
		width: 49%;
	}

	.flex-container.half.spe>.flex-item {
		width: 45%;
	}

	.flex-container.half.spe .flex-item.left {
		margin-right: 4rem;
	}

	.flex-container.half.spe .spe-text {
		margin-top: 3rem;
	}

	.care .care-title {
		font-size: 2rem;
		margin-top: 4rem;
	}

	.flex-container.half.spe {
		margin-top: 10rem;
	}

	.flex-container.half.movie .movie-title {
		font-size: 1.8rem;
	}

	/* 製品 */
	.product-container {
		padding: 0 0 12rem;
	}

	.products-section {
		padding: 6rem 0 0;
	}

	.products-title {
		margin-bottom: 6rem;
	}

	/* 効果 */
	.kouka-container {
		display: flex;
		justify-content: space-between;
	}

	.kouka-img {
		width: 30%;
	}

	.kouka-text {
		width: 65%;
		text-align: center;
	}

	.kouka-text .in-text {
		font-size: 1.6rem;
		margin-bottom: .4rem;
	}

	.kouka-ttl {
		padding: .3em 0;
		margin-bottom: .8em;
		background-color: #000;
		color: #fff;
		font-size: 1.8rem;
	}

	.kouka-large {
		font-size: 3rem;
		line-height: 1;
	}

	.kouka-small {
		font-size: 1.2rem;
		margin-top: 1.2rem;
	}

	.kouka-cap {
		margin-top: 2rem;
	}

	.kouka-item {
		margin-top: 2rem;
	}

	#kouka05.kouka-item {
		margin-top: 4rem;
	}

	/* movie */
	.flex-container.half.movie {
		margin-top: 8rem;
	}
}

/* ====================================
	1024px以上専用スタイル
===================================== */
@media only screen and (min-width: 1024px) {

	/* ページナビ */
	.scroll-fix-wrap {
		padding-top: 70px;
		position: relative;
	}

	#pageNavi {
		width: 100%;
		position: absolute;
		top: 0;
		background-color: rgba(245, 245, 245, .9);
		box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.2);
	}

	.scroll-fix-wrap.passed #pageNavi {
		position: fixed;
		z-index: 10;
	}

	.scroll-fix-wrap.passed.passed-bottom #pageNavi {
		position: absolute;
	}

	.navi-logo a {
		font-size: 2.6rem;
		color: #777;
		text-decoration: none;
	}

	.navi-btn-menu {
		display: none;
	}

	#pageNavi .navi-container {
		display: flex;
		justify-content: space-between;
		align-items: center;
		height: 70px;
	}

	#pageNavi .navi-title {
		width: 150px;
		margin-right: auto;
	}

	#pageNavi ul.list-navi {
		display: flex;
	}

	#pageNavi ul.list-navi li {
		font-size: 1.4rem;
		font-weight: 500;
	}

	#pageNavi ul.list-navi li a {
		display: block;
		padding: 0 1.5em;
		transition: all 0.5s ease-in-out;
	}

	#pageNavi ul.list-navi li a.active,
	#pageNavi ul.list-navi li a:hover {
		color: #E6000D;
	}

	#pageNavi ul.list-navi li a:hover {
		text-decoration: none;
		/* transition: all 0.5s ease-in-out; */

	}

	/* メインセクション */
	#main-area {
		padding: 12rem 0;
	}

	#main-area .main-text {
		text-align: center;
	}

	/* サブセクション */
	.adjust {
		margin-top: -70px;
		padding-top: 70px;
	}


	/* 効果 */
	.kouka-container {
		display: flex;
		justify-content: space-between;
	}

	.kouka-item {
		margin-top: 2rem;
	}

	#kouka05.kouka-item {
		margin-top: 6rem;
	}

	.kouka-img {
		width: 30%;
	}

	.kouka-text {
		width: 65%;
		text-align: center;
	}

	.kouka-text .in-text {
		font-size: 1.8rem;
		margin-bottom: .4rem;

	}

	.kouka-ttl {
		padding: .3em 0;
		margin-bottom: .8em;
		background-color: #000;
		color: #fff;
		font-size: 1.8rem;
	}

	.kouka-large {
		font-size: 3rem;
		line-height: 1.2;

	}

	.kouka-small {
		font-size: 1.2rem;
		margin-top: 1.4rem;
	}

	.kouka-cap {
		margin-top: 2rem;
	}
}

/* ====================================
	1024px以上1199px以下専用スタイル
===================================== */
@media only screen and (min-width: 1024px) {
	.pc-large {
		display: none;
	}
}


/* ====================================
	1200px以上専用スタイル
===================================== */
@media screen and (min-width: 1200px) {
	.pc-small {
		display: none;
	}
}