#fv {
	width: 100vw;
	height: 100svh;
	background: url("../img/top_fv.jpg") no-repeat center top / cover;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0
}
#fv #h2box {
	background-color: rgba(0,175,238,0.35);
	color: #fff;
	font-size: var(--f36);
	margin-top: 50px;
	padding: 1em 0;
	text-align: center;
	width: calc(100% - 60px);
	max-width: 1200px;
}
#fv #h2box h2 {
	font-weight: 600;
	text-shadow: 4px 4px 5px rgba(0,0,0,0.5);
}
#fv #h2box span {
	display: inline-block;
}
#about p {
	margin-bottom: 2em;
}
#about img {
	width: 100%;
	height: auto;
	max-width: 700px;
}
#service .box {
	background-color: #fff;
	box-shadow: 4px 4px 6px rgba(0,0,0,0.3);
	margin-bottom: 3em;
	padding: 15px;
}
#service .box figure {
	width: 100%;
}
#service .box img {
	width: 100%;
	height: auto;
}
#service .box h4  {
	color: var(--maincolor);
	font-size: var(--f30);
	margin: 0.5em 0;
}
#service .box a {
	border-bottom: 1px solid var(--maincolor);
	color: var(--maincolor);
	display: none;
	font-weight: 700;
	line-height: 24px;
	margin-top: 0.5em;
	margin-left: auto;
	padding-left: 0.5em;
	position: relative;
	width: 9em;
	height: 24px;
}
#service .box a:before {
  	content: "";
  	position: absolute;
  	bottom: 0;
  	right: 0;
  	width: 20px;
  	height: 1px;
  	border-radius: 9999px;
  	background-color: var(--maincolor);
  	transform: rotate(45deg);
  	transform-origin: calc(100% - 0.5px) 50%;
}
@media screen and (min-width: 768px) {
	header#top .nav-items__item a.current {
		border-bottom: none;
	}
	header#top.active .nav-items__item a.current {
		border-bottom: solid 2px var(--maincolor);
	}
	#fv #h2box {
		margin-top: 160px;
		padding: 1em;
		width: fit-content;
	}
	#about .flbox {
		display: flex;
		justify-content: space-between;
	}
	#about .flbox div {
		width: 50%;
	}
	#about .flbox figure {
		width: 48%;
	}
	#about .flbox h3 {
		text-align: left;
		margin-top: 1em;
	}
	#service .flbox {
		display: flex;
		justify-content: space-between;
	}
	#service .flbox .box {
		width: 28%;
		max-width: 440px;
	}
}
@media screen and (min-width: 1280px) {
	#fv #h2box {
		margin-top: 200px;
	}
	#service .box {
		padding: 20px;
	}
}