@charset "UTF-8";

/* ====================================
	共通スタイル
 ==================================== */
.bdr-gray {
	padding: .5em 1em;
	border: solid 1px #ddd;
}

.no-pt {
	padding-top: 11rem !important;
}

/* キャプション付きイメージ */
.fig-caption-bottom figcaption {
	margin-top: .5em;
	font-weight: 500;
	text-align: center;
}

/* メインタイトル */
.main-title {
	font-weight: 500;
	text-align: center;
}

/* サブセクション */
.sub-title {
	font-weight: 700;
}

.sub-bdr-bottom {
	border-bottom: solid 1px #D9D9D9;
}

hr.sub-bdr-bottom {
	border-top: none;
}

/* サブサブセクション */
.sub-sub-title {
	padding-left: 13px;
	position: relative;
}

.sub-sub-title::before {
	content: '';
	display: block;
	width: 4px;
	height: 85%;
	background: #000;
	position: absolute;
	top: 8%;
	left: 0;
}

.sub-item-container .sub-sub-title {
	margin-top: 0;
}

/* ====================================
	スマートフォン専用スタイル
===================================== */
@media only screen and (max-width: 767px) {

	article {
		font-size: 1.5rem;
		line-height: 1.6;
	}

	.no-pt {
		padding-top: 0rem !important;
	}

	/* フレックスコンテナ */
	.flex-item-text,
	.flex-item-img {
		width: 100%;
	}

	/* メインビジュアル */
	.main-visual {
		margin-top: 2rem;
	}

	/* メインタイトル */
	.main-title {
		margin: 5rem 0 0;
		font-size: 2.2rem;
		line-height: 1.4;
	}

	/* サブセクション */
	.sub-section {
		padding-top: 5rem;
	}

	.sub-bdr-bottom {
		padding-bottom: 5rem;
	}

	.sub-section .sub-title {
		font-size: 1.8rem;
	}

	.text-container {
		margin-top: 2rem;
	}

	.img-container {
		margin-top: 3rem;
	}

	.flex-container>.flex-item:nth-of-type(n+2)>.text-container:first-child,
	.flex-container>.flex-item:nth-of-type(n+2)>.img-container:first-child {
		margin-top: 0;
	}

	/* サブアイテム・2列 */
	.sub-item-container>.sub-item {
		padding-top: 5rem;
	}

	.sub-title+.sub-item-container>.sub-item:nth-of-type(-n+2) {
		padding-top: 2rem;
	}

	/* 注釈セクション */
	.caption-section {
		padding-top: 5rem;
	}

	/* サブサブセクション */
	.sub-sub-title {
		margin-top: 6rem;
		font-size: 1.6rem;
	}

	.sub-title+.sub-sub-item>.sub-sub-title,
	.sub-title+.sub-sub-title {
		margin-top: 3rem;
	}

	/* ===== 製品固有スタイル ===== */

	/* 画像リスト */
	ul.list-figures li {
		margin-top: 1em;
	}

	ul.list-figures li:first-child {
		margin-top: 0;
	}

	ul.list-figures li .img {
		width: 100%;
	}

	ul.list-figures.sp-col2,
	ul.list-figures.col4 {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	ul.list-figures.sp-col2 li,
	ul.list-figures.col4 li {
		width: 48%;
		margin-top: 1em;
	}

	ul.list-figures.sp-col2.no-gap li {
		width: 50%;
	}

	ul.list-figures.sp-col2 li:nth-child(-n+2),
	ul.list-figures.col4 li:nth-child(-n+2) {
		margin-top: 0;
	}

	/* リンクバナー */
	.btn-arrow a {
		font-size: 1.4rem;
	}

}

/* ====================================
	PC&タブレット、印刷専用スタイル
===================================== */
@media print,
screen and (min-width: 768px) {

	/* 最大幅 */
	.maxw500 {
		max-width: 500px;
	}

	.maxw600 {
		max-width: 600px;
	}

	.maxw640 {
		max-width: 640px;
	}

	.maxw750 {
		max-width: 750px;
	}

	.maxw860 {
		max-width: 860px;
	}

	.maxw900 {
		max-width: 900px;
	}

	.maxw1000 {
		max-width: 1000px;
	}

	/* フレックスコンテナ：カスタム幅 */
	.flex-container.r40p,
	.flex-container.half-custom {
		justify-content: space-between;
	}

	.flex-container.r40p>.flex-item.r40p-l {
		padding-right: 4%;
		flex: 1;
	}

	.flex-container.r40p>.flex-item.r40p-r {
		width: 40%;
	}

	/* フレックスコンテナ：ハーフ・カスタム */
	.flex-container.half-custom>.flex-item {
		width: 47%;
	}

	/* メインビジュアル */
	.main-visual {
		margin-top: 8rem;
	}

	/* メインタイトル */
	.main-title {
		margin: 8rem 0 0;
		font-size: 3.2rem;
		line-height: 1.4;
	}

	/* サブセクション */
	.sub-section {
		padding-top: 19rem;
		margin-top: -11rem;
	}

	.sub-bdr-bottom {
		padding-bottom: 8rem;
	}

	.sub-title {
		font-size: 2.2rem;
	}

	.text-container,
	.img-container {
		margin-top: 4rem;
	}

	.text-container.pc-slim,
	.img-container.pc-slim {
		margin-top: 2rem;
	}

	/* サブアイテム・2列 */
	.sub-item-container {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.sub-title+.sub-item-container>.sub-item:nth-of-type(-n+2) {
		padding-top: 4rem;
	}

	.sub-item-container>.sub-item {
		display: flex;
		flex-direction: column;
		width: 47%;
		padding-top: 8rem;
	}

	.sub-item-container>.sub-item.sub-bdr-bottom {
		padding-bottom: 8rem;
	}

	.sub-item-container .sub-item .img-container {
		min-height: 0%;
		/* IE対応 */
		width: 100%;
		margin-top: auto;
		padding-top: 2rem;
	}

	/* 画像下揃え */
	.fix-bottom-img .flex-item {
		display: flex;
		flex-direction: column;
	}

	.fix-bottom-img .img-container {
		min-height: 0%;
		/* IE対応 */
		width: 100%;
		margin-top: auto;
		padding-top: 2rem;
	}

	/* フレックスコンテナ・画像幅固定 */
	.flex-item-text {
		padding-right: 2.7%;
		flex: 1;
	}

	.flex-item-img.w40p {
		width: 40%;
	}

	/* 注釈セクション */
	.caption-section {
		padding-top: 8rem;
	}

	/* サブサブアイテム */
	.sub-sub-item {
		padding-top: 8rem;
	}

	.sub-title+.sub-sub-item {
		padding-top: 4rem;
	}

	.sub-sub-title {
		font-size: 1.8rem;
	}

	.sub-sub-title+.text-container {
		margin-top: 2rem;
	}

	/* ===== 製品固有スタイル ===== */

	/* 画像リスト */
	ul.list-figures {
		display: flex;
		flex-wrap: wrap;
	}

	ul.list-figures li .img {
		width: 100%;
	}

	ul.list-figures.col2 {
		justify-content: space-between;
	}

	ul.list-figures.col2 li {
		width: 48%;
		margin-top: 1em;
	}

	ul.list-figures.col2.no-gap li {
		width: 50%;
	}

	ul.list-figures.col2 li:nth-child(-n+2) {
		margin-top: 0;
	}

	ul.list-figures.col3 li {
		width: 32%;
		margin-left: 2%;
	}

	ul.list-figures.col3 li:nth-child(3n-2) {
		margin-left: 0;
	}

	ul.list-figures.col4 li {
		width: 23%;
		margin-left: 2.666%;
	}

	ul.list-figures.col4 li:nth-child(4n-3) {
		margin-left: 0;
	}

	/*サブサブタイトル フレックスコンテナ ハーフ 2段目以降 */
	.flex-container.half>.flex-item:nth-of-type(n+3) {
		margin-top: 4rem;
	}

	.flex-container.half-custom>.flex-item:nth-of-type(n+3) {
		margin-top: 6rem;
	}

	.flex-container.r30p {
		justify-content: space-between;
	}

	.flex-container.r30p>.flex-item.r30p-l {
		padding-right: 4%;
		flex: 1;
	}

	.flex-container.r30p>.flex-item.r30p-r {
		width: 30%;
	}

	/*pm2.5注釈 */
	.r-cap {
		text-align: right;
	}
}