@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');

*{margin: 0; padding: 0; list-style: none; box-sizing: border-box;}
a{color: #000; cursor: pointer; border: none; text-decoration: none;}
img{
	display: inline-block;
	font-size: 0;
	vertical-align: bottom;
	line-height: normal;
	width: 100%;
	height: auto;
}
article, section,header,footer{
	display: block;
	width: 100%;
}
html,
body,
#base{
	height: 100%;
}
body{
	font-size: 14px;
	line-height: 2;
	font-family: 'Noto Sans JP', "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Hiragino Sans W3", "ヒラギノ角ゴ ProN W3", "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #000;
	background: #fff;
}
h1,h2,h3,h4,h5,h6,p,div,li,dt,dd {
	font-size:100%;
}
h1,h2,h3,h4,h5,h6,strong{
	line-height: normal;
	font-weight: 900;
}

.sp{
	display: none;
}

#base{
	position: relative;
}

#mv{
	display: flex;
	justify-content: center;
	align-items: center;
	height: 90vh;
}
#mv img{
	width: 140px;
}

main{
	max-width: 1260px;
	padding: 0 58px;
	margin: 0 auto;
}
main h2{
	font-size: 257%;
	line-height: normal;
	font-weight: 700;
	text-align: center;
	margin-bottom: 28px;
}

#mainTxt{
	text-align: center;
	font-size: 150%;
	line-height: 2;
	font-weight: 700;
	margin-bottom: 140px;
}

#service{
	margin-bottom: 126px;
}
#service ul{
	display: flex;
	justify-content: center;
}
#service ul li img{
	width: 364px;
	border: solid 1px #ddd;
	border-radius: 10px;
}
#service ul li{
	padding: 0 14px 14px 14px;
}

#corporate dl{
	display: flex;
	width: 100%;
}
#corporate dl:nth-child(even){
	background: #f7f7f7;
}
#corporate dt{
	padding: 28px;
	padding-left: 38px;
}
#corporate dd{
	padding: 28px 38px;
	padding-left: 0;
}
#corporate dt{
	width: 26%;
}

footer{
	border-top: solid 1px #000;
	text-align: center;
	margin-top: 196px;
	padding-bottom: 196px;
}
footer p{
	margin-top: 56px;
}

@media screen and (max-width: 1260px) {/* vw */

	body{
		font-size: 1.25vw;
	}

	#mv{
		height: 85vh;
	}
	#mv img{
		width: 10vw;
	}

	main{
		max-width: inherit;
		padding: 0 8vw;
	}
	main h2{
		margin-bottom: 2vw;
	}

	#mainTxt{
		margin-bottom: 10vw;
	}

	#service{
		margin-bottom: 8vw;
	}
	#service ul li img{
		width: 24vw;
	}
	#service ul li{
		padding: 0 1vw 1vw 1vw;
	}

	#corporate dt{
		padding: 2vw;
		padding-left: 3vw;
	}
	#corporate dd{
		padding: 2vw 3vw;
		padding-left: 0;
	}

	footer{
		margin-top: 14vw;
		padding-bottom: 14vw;
	}
	footer p{
		margin-top: 4vw;
	}

}

@media screen and (max-width: 1024px) {/* iPad pro */

	body{
		font-size: 1.6vw;
	}


}

@media screen and (max-width: 768px) {/* TB */




}

@media screen and (max-width: 759px) {/* SP */

	.sp{
		display: block;
	}

	body{
		font-size: 3vw;
	}

	#mv{
		height: 80vh;
	}
	#mv img{
		width: 20vw;
	}

	main{
		padding: 0 4vw;
	}
	main h2{
		margin-bottom: 4vw;
	}

	#mainTxt{
		margin-bottom: 20vw;
	}

	#service{
		margin-bottom: 16vw;
	}
	#service ul li img{
		width: 56vw;
	}
	#service ul li{
		padding: 0 2vw 2vw 2vw;
	}

	#corporate dl{
		flex-wrap: wrap;
	}
	#corporate dt{
		width: 100%;
		padding: 4vw;
		padding-bottom: 0;
		font-weight: 700;
	}
	#corporate dd{
		width: 100%;
		padding: 4vw;
		padding-top: 2vw;
	}

	footer{
		margin-top: 28vw;
		padding-bottom: 28vw;
	}
	footer p{
		margin-top: 8vw;
	}

}