.mainvisual {
	position: relative;
	margin-bottom: 2.5rem;
}

.mainvisual__body {
	position: absolute;
	height: 100%;
	width: 100%;
	max-width: 100rem;
	padding-left: 1rem;
	padding-right: 1rem;
	margin: auto;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	left: 0;
	right: 0;
	top: 0;
}

.mainvisual__ttl {
	width: 27.7rem;
	margin-bottom: 2rem;
}

.mainvisual__txt {
	width: 58.7rem;
}

.mainvisual__image {
	width: 100%;
}

.mainvisual__image img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: left center;
	object-position: left center;
}

.service-list {
	margin: 9.8rem 0 0;
}

.service-compare {
	display: flex;
	justify-content: center;
}

.service-compare:not(:last-child) {
	padding-bottom: 2.5rem;
	margin-bottom: 5rem;
	position: relative;
}

.service-compare:not(:last-child)::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: url(../images/common/icon_dot.svg) repeat center;
	background-size: 4px 1px;
}

.service-compare--small {
	padding: 0 6rem;
}

.service-compare__item {
	max-width: calc(50% - 2rem);
	text-align: center;
	position: relative;
}

.service-compare__item:nth-child(odd) {
	margin-left: auto;
}

.service-compare__item:nth-child(odd) .service-compare__image::after {
	left: calc(100% + 1.5rem);
	top: 50%;
	border: solid rgba(0,0,0,0);
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(136,183,213,0);
	border-left-color: #000;
	border-width: .9rem 0 .9rem 1.1rem;
	margin-top: -0.9rem;
}

.service-compare__item:nth-child(even) {
	margin: 0 auto 0 4rem;
}

.service-compare__image {
	position: relative;
	margin-bottom: .4rem;
}

.service-compare__txt {
	font-family: "Noto Serif JP",serif;
	font-weight: 400;
}

@media (min-width: 768px) {

.mainvisual {
	margin-bottom: 5.5rem;
}

.mainvisual__body {
	justify-content: center;
}

.mainvisual__ttl {
	margin-bottom: 4rem;
	width: 28.2rem;
}

.mainvisual__txt {
	width: 67rem;
}

.mainvisual__image {
	margin: 0 5.8rem 0 auto;
	height: 60rem;
	width: calc(50% + 33.5rem - 5.8rem);
}

.service-list {
	margin: 5.5rem 0 18rem;
	padding: 0 7rem;
}

.service-compare:not(:last-child) {
	padding-bottom: 3rem;
	margin-bottom: 5.5rem;
}

.service-compare__item {
	max-width: calc(50% - 2.6rem);
}

.service-compare__item:nth-child(odd) .service-compare__image::after {
	left: calc(100% + 1.9rem);
	border-width: 1.2rem 0 1.2rem 1.5rem;
	margin-top: -1.2rem;
}

.service-compare__item:nth-child(even) {
	margin-left: 5.2rem;
}

.service-compare__txt {
	font-size: 1.5rem;
	font-size: 2rem;
}

}

@media (max-width: 767px) {

.container {
	padding: 0 6rem;
}

.mainvisual__body {
	padding: 0 0 5.5rem 6rem;
}

}

