/** @format */

@charset "utf-8";
/*  visit.css
---------------------------------------------- */

/*  pc
---------------------------------------------- */

/*  catch
---------------------------------------------- */
#catch {
	margin-top: 115px;
	display: flex;
	align-items: center;
}
#catch .txt_wrap .ttl {
	margin-bottom: 30px;
	color: var(--color_brown);
	font-weight: 700;
	font-size: 4rem;
	text-align: center;
}
#catch .txt_wrap .desc {
	line-height: 2.2;
}
#catch img {
	position: relative;
	margin: 0 calc(50% - 55vw) 0 35px;
	width: 52vw;
}

/*  support
---------------------------------------------- */
#support .sprt_list {
	display: flex;
	flex-wrap: wrap;
}
#support .sprt_list {
	border-bottom: 1px solid #7b7b7b;
}
#support .sprt_list li {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 20px;
	width: calc(100% / 4);
	height: 210px;
	border-top: 1px solid #7b7b7b;
	border-right: 1px solid #7b7b7b;
}
#support .sprt_list li:nth-child(4n) {
	border-right: none;
}
#support .sprt_list li .img {
	width: 130px;
	height: 100px;
}
#support .sprt_list li .img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center bottom;
}
#support .sprt_list li .txt {
	font-weight: 700;
}

/*  fee
---------------------------------------------- */
#fee {
	padding: 130px 0 40px;
}

/*  mobile & smart phone
---------------------------------------------- */
@media only screen and (max-width: 959px) {
	/*  catch
---------------------------------------------- */
	#catch {
		margin: 180px auto 70px;
		display: block;
	}
	#catch .txt_wrap .ttl {
		margin-bottom: 20px;
	}
	#catch img {
		position: relative;
		display: block;
		margin: 20px calc(50% - 60vw) 0 auto;
		width: 80%;
	}

	/*  support
---------------------------------------------- */
	#support .sprt_list {
		border-bottom: 1px solid #7b7b7b;
	}
	#support .sprt_list li {
		gap: 20px;
		width: calc(100% / 2);
		height: 160px;
		border-left: 1px solid #7b7b7b;
		border-right: none;
	}
	#support .sprt_list li:nth-child(2n) {
		border-right: 1px solid #7b7b7b;
	}
	#support .sprt_list li .img {
		width: 110px;
		height: 80px;
	}

	/*  fee
---------------------------------------------- */
	#fee {
		padding: 100px 0 40px;
	}
}
