@charset "UTF-8";

.contents-area .ict-solution-text-area {
	width: 99vw;
	margin: 40px 0px;
	padding: 20px 20px;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	background-color: #efefef;
	/* 中央に配置 */
	box-sizing: border-box;
}

.contents-area .ict-solution-text-area .ict-solution-box {
	display: flex;
	justify-content: center;
	gap: 40px;
	margin: 0 auto;
	max-width: 1200px;
}

.contents-area .ict-solution-text-area .ict-solution-box .ict-soltion-img-box {
	width: 100%;
	max-width: calc(45% - 20px);
	position: relative;
	overflow: hidden;
	aspect-ratio: 16/9;
}

.contents-area .ict-solution-text-area .ict-solution-box .ict-soltion-text-box {
	width: 100%;
	max-width: calc(55% - 20px);
}

.contents-area .ict-solution-text-area .ict-solution-box .ict-soltion-img-box img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.contents-area .ict-solution-text-area h3 {
	margin: 0px 0px 20px;
	color: #333;
	font-size: clamp(1.2em, 2vw, 1.4em);
	font-weight: 600;
	letter-spacing: 0.1em;
	text-align: left;
}

.contents-area .ict-solution-text-area p {
	letter-spacing: 0.1em;
	color: #000000;
	margin-bottom: 5px;
	text-align: left;
}

.ict-solution-appeal-point-area {
	padding: 40px 0px;
	/* 背景色（必要に応じて変更） */
}

.ict-solution-appeal-point-box {
	display: flex;
	align-items: start;
	justify-content: center;
	gap: 30px;
	/* 画像とテキストの間隔 */
	flex-wrap: wrap;
	/* スマホ対応 */
	text-align: left;
}

.ict-solution-appeal-point-area:nth-child(even) .ict-solution-appeal-point-box {
	flex-direction: row-reverse;
}

.ict-solution-appeal-point-box .ict-solution-appeal-point-item {
	width: 100%;
}

/* 画像用の最大width設定 */
.ict-solution-appeal-point-box .ict-solution-appeal-point-img-item.ict-solution-appeal-point-item {
	max-width: calc(40% - 15px);
}

/* テキスト用の最大width設定 */
.ict-solution-appeal-point-box .ict-solution-appeal-point-text-item.ict-solution-appeal-point-item {
	max-width: calc(60% - 15px);
}

.ict-solution-appeal-point-item img {
	width: 100%;
	object-fit: cover;
	border-radius: 8px;
	/* 画像の角を丸く */
}

.ict-solution-appeal-point-area h3 {
	font-size: clamp(1.2em, 2vw, 1.4em);
	font-weight: bold;
	margin: 0px 0px 20px;
	letter-spacing: 0.1em;
	text-align: left;
}

.ict-solution-appeal-point-item p {
	margin-top: 0px;
	margin-bottom: 10px;
	font-size: 16px;
	line-height: 1.8;
	color: #333;
}

.ict-solution-appeal-point-item ul {
	padding: 0px 0px 0px 25px;
	color: #333;
}

/* 問い合わせ・締めの文章 */

.ict-solution-appeal-message-area {
	padding: 100px 30px;
	line-height: 1.8;
	color: #333;
}

.ict-solution-appeal-message-area h3 {
	color: #60C7F0;
	font-size: 1.8em;
	font-weight: 600;
	margin-bottom: 24px;
	text-align: center;
	letter-spacing: 0.05em;
}

.ict-solution-appeal-message-area p {
	margin-bottom: 20px;
	font-size: 1.05em;
}

@media screen and (min-width:768px) and (max-width:1049.99px) {

}


@media screen and (max-width: 768px) {

	.contents-area .ict-solution-text-area .ict-solution-box {
		flex-direction: column;
		align-items: center;
	}

	.contents-area .ict-solution-text-area .ict-solution-box .ict-soltion-img-box {
		width: 100%;
		max-width: 100%;
	}

	.contents-area .ict-solution-text-area .ict-solution-box .ict-soltion-text-box {
		width: 100%;
		max-width: 100%;
	}

	.ict-solution-appeal-point-box {
		flex-direction: column;
		gap: 20px;
	}

	.ict-solution-appeal-point-box .ict-solution-appeal-point-img-item.ict-solution-appeal-point-item,
	.ict-solution-appeal-point-box .ict-solution-appeal-point-text-item.ict-solution-appeal-point-item {
		margin: 0 auto;
		max-width: 90%;
	}

	.ict-solution-appeal-point-item img {
		width: 100%;
		max-width: 100%;
	}

	.ict-solution-appeal-message-area {
		padding: 40px 20px;
	}

	.ict-solution-appeal-message-area h3 {
		font-size: 1.4em;
	}

	.contents-area .ict-solution-text-area {
		padding: 20px 20px;
	}

	.ict-solution-appeal-point-area h3 {
		font-size: clamp(1.2em, 2vw, 1.6em);
		font-weight: bold;
		margin: 30px 0px 30px;
		letter-spacing: 0.1em;
		text-align: left;
	}
}