@charset "UTF-8";

/* +++#main-visual+++ */
#main-visual{
	padding-top: 3.6rem;
}
#main-visual:after{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	background: #fff;
	content: "";
	display: block;
	z-index: 1;
	height: 7.2rem;
}
.mv01{
	width: 54rem;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
.mv02{
	position: absolute;
	right: 0;
	bottom: 12.7rem;
	width: 25rem;
	border-radius: 1.2rem;
	overflow: hidden;
}
#main-visual .txt{
	position: absolute;
	left: .8rem;
	top: 7.2rem;
	z-index: 999;
}
#main-visual .catch{
	font-size: 2.8rem;
	line-height: 1.75;
	font-weight: 500;
}
#main-visual .sub-catch{
	font-size: 1.8rem;
	font-weight: 500;
	color: #12a076;
	margin-top: .5em;
}

/* +++++#service+++++ */
#service{
	background: #fff;
}
.outline-text{
	margin-bottom: 7.2rem;
}
.service01{
	align-items: center;
}
#service .text{
	width: calc(50% - 3.6rem);
}
#service .pic{
	width: calc(50% - 3.6rem);
	border-radius: 1.2rem;
	overflow: hidden;
}
.service01{
	justify-content: flex-end;
	padding-bottom: 7.2rem;
	border-bottom: 1px solid #eee;
}
.service-contents{
	justify-content: space-between;
	align-items: center;
}
.service02,
.service04{
	flex-direction: row-reverse;
}
.service-contents:not(:last-of-type){
	border-bottom: 1px solid #eee;
	padding-bottom: 7.2rem;
	margin-bottom: 7.2rem;
}
#service .button01{
	font-size: 1.4rem;
	min-width: 20rem;
	width: fit-content;
	padding: 0 1.8em;
	font-weight: 400;
}

/* +++.works-list+++ */
.works-list{
	justify-content: space-between;
}
.works-list li{
	width: calc(33.333% - 3.2rem);
	margin-bottom: 4.8rem;
}
.works-list img{
	display: block;
	border-radius: 1.2rem;
}
.works-list figcaption{
	display: block;
	text-align: center;
	margin-top: 1.2rem;
}
#works .caption{
	text-align: center;
	
}


/* ++++++++++++++++++++++ */
/* +++SmartPhone Style+++ */
/* ++++++++++++++++++++++ */
@media screen and (max-width: 768px){


/* +++#main-visual+++ */
	#main-visual{
		padding-top: 1.8rem;
		padding-bottom: 3.6rem;
	}
	#main-visual .inner{
		display: block;
	}

	#main-visual .txt{
		position: relative;
		left: auto;
		top: auto;
	}
	#main-visual .catch{
		font-size: 2.1rem;
	}
	#main-visual .sub-catch{
		font-size: 1.5rem;
		margin-top: 0;
	}
	.mv01{
		width: calc(61.8% - 1.2rem);
		margin: 2.4rem 0 0 0;
	}
	.mv02{
		width: 38.2%;
		right: 0;
		bottom: -3.6rem;
		border-radius: .8rem;
		z-index: 9999;
	}


/* +++++#service+++++ */
	.outline-text{
		margin-bottom: 4.8rem;
	}
	.service01{
		align-items: block;
	}
	#service .text{
		width: 100%;
	}
	#service .text p{
		margin-top: 1.8rem;
	}
	#service .pic{
		width: 100%;
		border-radius: .8rem;
	}
	.service01{
		display: block;
		padding-bottom: 3.6rem;
	}
	.service-contents{
		display: block;
	}

	.service-contents:not(:last-of-type){
		padding-bottom: 3.6rem;
		margin-bottom: 3.6rem;
	}
	#service .button01{
		font-size: 1.3rem;
		min-width: 20rem;
		padding: 0 1.8em;
		margin-top: 2.4rem;
	}

/* +++.works-list+++ */

	.works-list li{
		width: calc(50% - .9rem);
		margin-bottom: 2.4rem;
	}
	.works-list img{
		border-radius: .8rem;
	}
	.works-list figcaption{
		margin-top: .8rem;
	}
	#works .caption{
		text-align: left;
	}
}

