@charset "UTF-8";

/* ▼▼▼ トップ
======================================================*/

#mainVisual {
	width: 100%;
	margin-top: -74px;
	z-index: -1;
}

#lead {
	padding: 60px 0 150px;
}

#lead .image {
	width: 114px;
	margin: 0 auto 40px;
}

#lead p.catch {
	width: 100%;
	margin: 0 auto;
	font-size: 22px;
	font-weight: 500;
	text-align: center;
}

#lead p.kome {
	width: 55%;
	margin: 0 auto 94px;
	font-size: 12px;
	text-align: right;
}

#lead ul.flex_box {
	width: 84%;
	margin: 0 auto 34px;
}

#lead .flex_box li {
	position: relative;
	display: flex;
	width: 250px;
	height: 182px;
	background-color: #6A9A5B;
	color: #fff;
	padding-bottom: 40px;
	font-size: 18px;
	font-weight: 500;
	border-radius: 10px;
	justify-content: center;
	align-items: flex-end;
	text-align: center;
}

#lead .flex_box li::before {
	content: "";
	position: absolute;
	background: url(../img/top/icon1.png) no-repeat center center / contain;
	width: 110px;
	height: 110px;
	margin: auto;
	top: -180px;
	right: 0;
	bottom: 0;
	left: 0;
}

#lead .flex_box li:nth-child(2):before {
	background-image: url(../img/top/icon2.png);
}

#lead .flex_box li:nth-child(3):before {
	background-image: url(../img/top/icon3.png);
}

#lead .text {
	font-size: 18px;
	font-weight: 500;
	text-align: center;
}

#lead .text span {
	color: #6A9A5B;
	font-size: 22px;
	font-weight: bold;
	border-bottom: 1px solid #6A9A5B;
}

#car {
	position: relative;
	background-color: #F5F0E8;
	padding: 48px 0 70px;
}

#car::before,
#car::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 78px;
	bottom: 100%;
	left: 0;
}

#car::before {
	background: url(../img/top/wave_top.png) no-repeat center bottom / 100% 100%;
	bottom: 100%;
}

#car::after {
	background: url(../img/top/wave_bottom.png) no-repeat center bottom / 100% 100%;
	top: 100%;
}

#car::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 78px;
	left: 0;
}

#car .title {
	font-size: 26px;
	font-weight: bold;
}

#car .box {
	display: flex;
	align-items: center;
	margin-bottom: 60px;
}

#car .box .text {
	width: 57.5%;
	background-color: #fff;
	padding: 40px 70px;
	margin-right: -5%;
	position: relative;
	z-index: 1;
}

#car .box .text .title {
	position: relative;
	color: #6A9A5B;
	margin-bottom: 15px;
	text-align: center;
}

#car .box .text .title::before,
#car .box .text .title::after {
	content: "";
	position: absolute;
	width: 22px;
	height: 34px;
	top: 5px;
}

#car .box .text .title::before {
	background: url(../img/top/left.svg) no-repeat center center / contain;
	left: 0;
}

#car .box .text .title::after {
	background: url(../img/top/right.svg) no-repeat center center / contain;
	right: 0;
}

#car .box .image {
	width: 50%;
}

#car .inner {
	width: 74%;
	padding: 10px 35px;
	margin: 0 auto;
	border-left: 8px solid #6A9A5B;
}

#car .inner img {
	width: 140px;
}

#instructor {
	padding: 190px 0;
}

#instructor .flex_box {
	width: 91.7%;
	margin: 0 auto 80px;
	align-items: center;
}

#instructor .name {
	font-size: 22px;
	margin-bottom: 15px;
}

#instructor .detail {
	font-size: 18px;
}

#instructor .image {
	width: 19.4%;
	min-width: 194px;
}

#instructor .btn a {
	color: #fff;
	background-color: #6A9A5B;
	margin: 0 auto;
}

#instructor .btn a:hover {
	background-color: #ffff;
	color: #6A9A5B;
	opacity: 1;
}

#instructor .btn a::before {
	border-left-color: #fff;
}

#instructor .btn a:hover::before {
	border-left-color: #6A9A5B;
}

/* ▼▼▼ 480px〜768px
======================================================*/
@media screen and (max-width: 768px) {
	header.is-active {
		background-color: #6A9A5B;
	}

	#mainVisual {
		margin: 0 auto;
		position: relative;
	}

	#lead {
		padding: 35px 0 100px;
	}

	#lead .image {
		width: 84px;
		margin: 0 auto 24px;
	}

	#lead p.catch {
		font-size: 18px;
	}

	#lead p.kome {
		width: 100%;
	}

	#lead .flex_box li::before {
		width: 90px;
		height: 90px;
		top: -140px;
	}

	#lead .flex_box li {
		width: 69%;
		height: 148px;
		padding-bottom: 34px;
		margin: 0 auto 60px;
		font-size: 16px;
	}

	#lead .flex_box li:last-child {
		margin-bottom: 20px;
	}

	#lead .text {
		font-size: 16px;
	}

	#lead .text span {
		font-size: 18px;
	}

	#car {
		padding: 10px 0 20px;
	}

	#car .box {
		flex-direction: column-reverse;
		margin-bottom: 30px;
	}

	#car .box .text {
		width: 95%;
		padding: 25px 20px;
		margin: -20px 0 0 0;
	}

	#car .title {
		font-size: 17px;
	}

	#car .box .text .title::before,
	#car .box .text .title::after {
		width: 16px;
		height: 26px;
		top: 3px;
	}

	#car .box .image {
		width: 100%;
	}

	#car .inner {
		width: 100%;
		padding: 5px 0 5px 10px;
		margin: 0 auto;
		border-left: 6px solid #6A9A5B;
	}

	#car .inner img {
		width: 110px;
	}

	#instructor {
		padding: 150px 0;
	}

	#instructor .image {
		margin: 0 auto 10px;
	}

	#instructor .name {
		font-size: 18px;
		margin-bottom: 10px;
		text-align: center;
	}

	#instructor .flex_box {
		width: 100%;
		margin: 0 auto 60px;
	}

	#instructor .detail {
		font-size: 14px;
	}
}