@charset "UTF-8";

/* ====================================
	共通スタイル
 ==================================== */

/* ====================================
	スマートフォン専用スタイル
===================================== */
@media only screen and (max-width: 767px) {
	.pc-only {
		display: none;
	}

	.btn-arrow {
		display: block;
		text-align: center;
	}

	.btn-arrow a {
		padding: 0.7em 1em 0.7em 2em;
		display: block;
		font-size: 1.4rem;
	}

	#usa-french .btn-arrow {
		display: block;
		margin-top: 4rem;
	}

	.cap-text {
		font-size: 1.5rem;
	}

	.tool.flex-container>.flex-item.mt-adjust {
		margin-top: 4rem;
	}


	/* .sub-title+.flex-container>.flex-item.mt-adjust:first-of-type {
		margin-top: 3rem;
	} */
	.flex-container.sp-col2 .flex-item:nth-of-type(-n+2) {
		margin-top: 3rem;
	}

	.mt-adjust {
		margin-top: 4rem;
	}

	.tool .ttl-color-area.under-text {
		margin-bottom: 0.6rem;
	}

	.tool.fix-bottom-img .mt-container {
		min-height: 0%;
		width: 100%;
		margin-top: auto;
		padding-top: 1rem;
	}

	.tool.fix-bottom-img .flex-item {
		display: flex;
		flex-direction: column;
	}

	.w-tool.fix-bottom-img>.flex-item:nth-of-type(n+2) .mt-container {
		padding-top: 0;
	}

}

/* ====================================
	PC&タブレット、印刷専用スタイル
===================================== */
@media print,
screen and (min-width: 768px) {
	.flex-container.fix-bottom-img .img-container {
		min-height: 0%;
		/* IE対応 */
		margin-top: auto;
	}

	.btn-arrow {
		margin: 0 auto;
		line-height: 1.4;
	}

	#usa-french .btn-arrow {
		display: block;
		width: 380px;
		margin-top: 6rem;
	}

	.cap-text {
		font-size: 1.6rem;
	}


	.mt-adjust {
		margin-top: 6rem;
	}

	.flex-container.col3 {
		justify-content: flex-start;
	}

	.sub-title+.flex-container.col3>.flex-item.mt-adjust:nth-of-type(-n+3) {
		margin-top: 4rem;
	}

	.flex-container.col3 .flex-item:nth-of-type(-n+3) {
		margin-top: 4rem;
	}


	.flex-container .flex-item.mt-adjust {
		margin-top: 6rem;
	}

	/* .flex-container.half>.flex-item.mt-adjust:nth-of-type(n+3) {
		margin-top: 6rem;
	} */
	.tool .ttl-color-area.under-text {
		margin-bottom: 1.4rem;
	}

	.tool.fix-bottom-img .mt-container {
		min-height: 0%;
		width: 100%;
		margin-top: auto;
		padding-top: 1.4rem;
	}
}

/* ====================================
	タブレット、印刷専用スタイル
===================================== */
@media only screen and (min-width: 768px) and (max-width: 1079px) {
	.pc-only {
		display: none;
	}
}

/* ====================================
	PC大画面専用スタイル
===================================== */
@media only screen and (min-width: 1080px) {
	.tab-only {
		display: none;
	}
}