@charset "utf-8";
/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
base
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */

#contents {
	width: 1140px;
	margin: 187px auto 0;
	padding: 0;
}

@media (max-width: 1200px) {
	#contents {
		width: auto;
		margin: 187px 20px 0;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
}


/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
サービス内容
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */

#contents section {
	overflow: hidden;
	margin: 0 0 80px;
	position: relative;
}
#contents section:nth-of-type(odd) {
	padding: 0 340px 0 0;
}
#contents section:nth-of-type(even) {
	padding: 0 0 0 340px;
}
#contents section:last-child {
	margin: 0;
}
#contents section h3 {
	width: 800px;
	margin: 0 0 40px;
	padding: 18px 40px;
	letter-spacing: 0.2em;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#contents section div.right {
	width: 530px;
	margin: 0 0 0 30px;
	padding: 0;
}
#contents section div.right dl {
	margin: 0;
	padding: 0;
	border: 1px solid #f71a46;
}
#contents section div.right dl:first-of-type {
	margin: 20px 0 0;
}
#contents section div.right dl:nth-of-type(2) {
	margin: 0 0 5px;
	border-top: none;
}
#contents section div.right dl dt {
	margin: 0;
	padding: 14px 20px;
	border-bottom: 1px solid #f71a46;
}
#contents section div.right dl dt span {
	padding: 0 0 0 15px;
	position: relative;
}
#contents section div.right dl dt span:before {
	content: '';
	margin: -3px 0 0;
	position: absolute;
	top: 50%;
	left: 0;
	border-top: 10px solid #f71a46;
	border-right: 6px solid transparent;
	border-bottom: 10px solid transparent;
	border-left: 6px solid transparent;		
}
#contents section div.right dl dd {
	margin: 0;
	padding: 15px 20px;
}
#contents section img.illust {
	position: absolute;
}
#contents section:nth-of-type(1) img.illust {
	bottom: 0;
	right: 0;
}
#contents section:nth-of-type(2) img.illust {
	bottom: 80px;
	left: 40px;
}
#contents section:nth-of-type(3) img.illust {
	bottom: 30px;
	right: 0;
}
#contents section:nth-of-type(3) div.right dl {
	margin: 20px 0 5px;
}

@media (max-width: 1200px) {
	#contents section:nth-of-type(odd) {
		padding: 0;
	}
	#contents section:nth-of-type(even) {
		padding: 0;
	}
	#contents section:nth-of-type(1) {
		padding: 0 0 304px;
	}
	#contents section:nth-of-type(2) {
		padding: 0 0 337px;
	}
	#contents section:nth-of-type(3) {
		padding: 0 0 226px;
	}
	#contents section h3 {
		width: auto;
		padding: 18px 20px;
	}
	#contents section img.imgService {
		margin: 0 auto;
		display: block;
		float: none;
	}
	#contents section div.right {
		width: 100%;
		margin: 20px 0 0;
		display: block;
		float: none;
	}
	#contents section:nth-of-type(1) img.illust {
		margin: 0 -131px 0 0;
		right: 50%;
	}
	#contents section:nth-of-type(2) img.illust {
		margin: 0 0 0 -130px;
		bottom: 0;
		left: 50%;
	}
	#contents section:nth-of-type(3) img.illust {
		margin: 0 -145px 0 0;
		bottom: 0;
		right: 50%;
	}
}
@media (max-width: 950px) {
	#contents section {
		margin: -100px 0 80px;
	}
	#contents section:last-child {
		margin: -100px 0 0;
	}
	#contents section:nth-of-type(odd) {
		padding: 100px 0 0;
	}
	#contents section:nth-of-type(even) {
		padding: 100px 0 0;
	}
	#contents section:nth-of-type(1) {
		padding: 100px 0 304px;
	}
	#contents section:nth-of-type(2) {
		padding: 100px 0 337px;
	}
	#contents section:nth-of-type(3) {
		padding: 100px 0 226px;
	}
	#contents section h3 {
		width: auto;
		font-size: 24px;
		padding: 18px 20px;
		letter-spacing: 0;
	}
}


