@charset "UTF-8";

/* ===============================
	共通スタイル
=============================== */

/* アコーディオン */
.btn-open-menu {
	display: block;
	padding: .5em 1em;
	font-weight: 500;
	background-color: #01A3C1;
	color: #fff;
	position: relative;
}

.btn-open-menu:hover {
	color: #fff;
	text-decoration: none;
}

.btn-open-menu::before {
	content: '';
	display: inline-block;
	width: 12px;
	height: 14px;
	background: url(/support/washer/cloud/cocoro_wash/common/images/plus-solid-w.svg) no-repeat center center;
	background-size: auto 100%;
	position: absolute;
	top: 50%;
	right: 20px;
	margin-top: -0.5em;
}

.btn-open-menu.accordion-open[data-menu-target]::before {
	background: url(/support/washer/cloud/cocoro_wash/common/images/minus-solid-w.svg) no-repeat center center;
	background-size: auto 100%;
}

.open-menu-container {
	padding: 1em 1em;
	background-color: #E6F6F9;
	display: none;
}

/* ====================================
	スマートフォン専用スタイル
===================================== */
@media only screen and (max-width: 767px) {

	.line-gray {
		margin: 40px 0 50px;
		border-top: solid 1px #D9D9D9;
	}

	.img-ttl {
		margin-bottom: .5em;
		text-align: center;
	}

	.img-gamen {
		padding: 0 15%
	}

	.ttl {
		margin-bottom: .5em;
		font-size: 1.6rem;
	}

	.icon-new {
		margin-left: .5em;
		padding: 0 .5em;
		font-size: .7em;
		background-color: #E6000D;
		color: #fff;
	}

	/* ページナビ */
	ul.list-pagenavi {
		display: flex;
		flex-wrap: wrap;
	}

	ul.list-pagenavi li {
		margin-right: 1.5em;
		margin-bottom: .25em;
		font-size: 1.2rem;
	}

	ul.list-pagenavi a {
		display: inline-block;
		padding-left: 1.25em;
		position: relative;
	}

	ul.list-pagenavi a::before {
		content: '';
		display: inline-block;
		width: 12px;
		height: 14px;
		background: url(../images/chevron-down-solid.svg) no-repeat center center;
		background-size: auto 100%;
		position: absolute;
		top: 50%;
		left: 0;
		margin-top: -0.5em;
	}

	/* メインセクション */
	.main-title {
		margin: 40px 5% 30px;
		font-size: 2.6rem;
		text-align: center;
	}

	.main-text {
		font-size: 1.4rem;
		line-height: 1.6;
	}

	/* サブセクション */
	.sub-section {
		font-size: 1.4rem;
		line-height: 1.6;
	}

	.sub-title {
		margin: 50px 0 10px;
		font-size: 2.1rem;
		line-height: 1.4;
	}

	/* 注釈セクション */
	.caption-section {
		padding-top: 6rem;
	}

	/* 画像リスト */
	ul.list-img li {
		margin-top: 40px;
	}

	/* 手順画像 */
	.list-flow-container {
		margin-top: 40px;
	}

	.list-flow-container .ttl {
		font-size: 1.4rem;
		text-align: center;
	}

	ul.list-img-flow {
		padding: 0 20%;
	}

	ul.list-img-flow li {
		position: relative;
	}

	ul.list-img-flow li:not(:first-child) {
		margin-top: 18%;
	}

	ul.list-img-flow li:not(:first-child)::before {
		content: '';
		display: block;
		width: 18%;
		padding-top: 18%;
		background: url(/support/washer/cloud/cocoro_wash/common/images/caret-down-solid.svg) no-repeat center center;
		background-size: 90% auto;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translate(-50%, -100%);
	}

	/* アコーディオン */
	.btn-open-menu {
		font-size: 1.4rem;
	}

	.open-menu-container {
		font-size: 1.2rem;
	}

}

/* ====================================
	PC&タブレット、印刷専用スタイル
===================================== */
@media print,
screen and (min-width: 768px) {

	.line-gray {
		margin: 40px 0 50px;
		border-top: solid 1px #D9D9D9;
	}

	.img-ttl {
		margin-bottom: .5em;
		text-align: center;
	}

	.img-gamen {
		padding: 0 15%;
	}

	.ttl {
		margin-bottom: .5em;
		font-size: 2rem;
	}

	.icon-new {
		margin-left: .5em;
		padding: 0 .5em;
		font-size: .6em;
		background-color: #E6000D;
		color: #fff;
	}

	/* ページナビ */
	ul.list-pagenavi {
		display: flex;
		justify-content: center;
	}

	ul.list-pagenavi li {
		margin-right: 1em;
		font-size: 1.4rem;
	}

	ul.list-pagenavi a {
		display: inline-block;
		padding-left: 1.25em;
		position: relative;
	}

	ul.list-pagenavi a::before {
		content: '';
		display: inline-block;
		width: 12px;
		height: 14px;
		background: url(../images/chevron-down-solid.svg) no-repeat center center;
		background-size: auto 100%;
		position: absolute;
		top: 50%;
		left: 0;
		margin-top: -0.5em;
	}

	/* メインセクション */
	.main-title {
		margin: 80px 0 60px;
		font-size: 3.2rem;
		text-align: center;
	}

	.main-text {
		font-size: 1.8rem;
	}

	/* サブセクション */
	.sub-title {
		margin: 60px 0 20px;
		font-size: 2.8rem;
	}

	.sub-text {
		font-size: 1.8rem;
		line-height: 2;
	}

	.flex-container {
		display: flex;
		justify-content: space-between;
	}

	.flex-visual {
		width: 50%;
		order: 1;
	}

	.flex-text {
		width: 48%;
	}

	/* 注釈セクション */
	.caption-section {
		padding: 50px 0 40px;
	}

	.caption-section .base-width {
		padding-top: 40px;
		border-top: solid 1px #D9D9D9;
	}

	/* 画像リスト */
	ul.list-img {
		display: flex;
		flex-wrap: wrap;
		margin-top: 50px;
	}

	ul.list-img li {
		width: 32%;
	}

	ul.list-img li:not(:nth-child(3n-2)) {
		margin-left: 2%;
	}

	/* 手順画像 */
	.list-flow-container {
		margin-top: 50px;
	}

	.list-flow-container .ttl {
		font-size: 1.6rem;
	}

	ul.list-img-flow {
		display: flex;
		flex-wrap: wrap;
		padding: 0 6%;
	}

	ul.list-img-flow li {
		width: 28%;
		position: relative;
	}

	ul.list-img-flow li:not(:nth-child(3n-2)) {
		margin-left: 8%;
	}

	ul.list-img-flow li:not(:nth-child(3n-2))::before {
		content: '';
		display: block;
		width: 28%;
		padding-top: 28%;
		background: url(/support/washer/cloud/cocoro_wash/common/images/caret-right-solid.svg) no-repeat center center;
		background-size: 60% auto;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translate(-100%, -50%);
	}

	/* アコーディオン */
	.btn-open-menu::before {
		width: 18px;
		height: 18px;
	}

}

/* ====================================
	タブレット、印刷専用スタイル
===================================== */
@media print,
screen and (min-width: 768px) and (max-width: 1079px) {}

/* ====================================
	PC専用スタイル
===================================== */
@media only screen and (min-width: 1080px) {}