@charset "utf-8";
/*==================================================
	【会社概要】ページ固有のスタイル
==================================================*/
#service .box {
	min-height: 372px;
	position: relative;
	display: flex;
	align-items: center;
	margin-bottom: 100px;
}
#service .box .img {
	position: absolute;
	width: 620px;
	top: 0;
	left: 0;
}
#service .box:nth-of-type(even) .img {
	left: auto;
	right: 0;
}
#service .box:nth-of-type(odd) .img img  {
	border-top-left-radius: 50px;
}
#service .box:nth-of-type(even) .img img  {
	border-top-right-radius: 50px;
}
#service .box .img span {
	position: absolute;
	display: flex;
	align-items: flex-end;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 114px;
	background : linear-gradient(180deg, rgba(0, 162, 255, 0) 0%, rgba(0, 162, 255, 1) 100%);
	color : rgba(255, 255, 255, 0.5);
	font-size: 60px;
	line-height: 1;
	font-weight: 200;
}
#service .box:nth-of-type(even) .img span {
	justify-content: flex-end;
}
#service .box .info {
	padding: 50px;
	z-index: 1;
	background: #f2f2f2;
	width: 550px;
	margin-left: auto;
	position: relative;
}
#service .box:nth-of-type(even) .info {
	margin-left: 0;
	margin-right: auto;
}
#service .box .info h3 {
	text-align: center;
	font-size: 40px;
	margin-bottom: 20px;
}
#service .box .info h3::first-letter {
	color: var(--color-secondary);
}
#service .box .info .txt {
	text-align: center;
}
@media print, screen and (min-width: 769px){ /* PCのみ */
}
@media print, screen and (min-width: 641px){ /* PC・タブレット */
}
@media only screen and (max-width: 768px) and (min-width: 641px){ /* タブレットのみ */
}
@media only screen and (max-width: 768px) {  /* タブレット以下 */
	#service .box {
		min-height: unset;
		display: block;
		margin-bottom: 50px;
	}
	#service .box .img {
		position: relative;
		margin: 0 auto;
		width: 100%;
		max-width: 620px;
	}
	#service .box .info {
		width: 100%;
		padding: 30px;
	}
	#service .box .info h3 {
		font-size: 25px;
	}
}
@media only screen and (max-width: 640px){ /* スマホ */
	#service .box {
		margin-bottom: 30px;
	}
	#service .box:nth-of-type(odd) .img img {
		border-top-left-radius: 30px;
	}
	#service .box:nth-of-type(even) .img img {
		border-top-right-radius: 30px;
	}
	#service .box .info {
		padding: 15px;
	}
	#service .box .info h3 {
		font-size: 20px;
	}
	#service .box .info .txt {
		text-align: left;
	}
}