@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&family=Fustat:wght@200..800&family=Noto+Sans+JP:wght@100..900&family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&display=swap');
/*リセット*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-style:normal;
	font-weight: normal;
	font-size: 100%;
	vertical-align: baseline;
}
*, *::before, *::after {
	box-sizing: border-box;
}
ol, ul, dl{
    list-style:none;
}

html{
	margin:0;
	padding:0;
}

body{
	font-size: 16px;
	line-height: 1.8;
	color:#333;
	font-family: "Noto Sans JP", sans-serif;
}

.pc{
	display:block;
}
.sp{
	display:none;
}
.pcVisble{
	visibility:visible;
}
.spVisble{
	visibility:hidden;
}

a:link,a:visited {
    color:#000;
	text-decoration: none;
}
a.apply{
	display:flex;
	justify-content:center;
	align-items:center;
	width:500px;
	height:80px;
	margin:0 auto;
	background:#EB5C01;
	color:#fff;
	font-size: 20px;
}
/*--------------*/
header{
	position:fixed;
	width:100%;
	height:100px;
	background:#fff;
}
.header{
	display:flex;
	width:100%;
	height:100%;
	max-width:1440px;
	margin:0 auto;
	padding:0 0 0 50px;
	z-index:100;
	background:#fff;
}

#logo{
	width:78px;
	padding:20px 0 0;
}
#apply{
	width:300px;
	margin:0 0 0 auto;
	background:#EB5C01;
	color:#fff;
}
#apply a{
	display:flex;
	justify-content:center;
	align-items:center;
	width:100%;
	height:100%;
	color:#fff;
}
#contact{
	position:relative;
	width:100px;
	background: #000;
}
#contact a{
	display:flex;
	justify-content:center;
	align-items:center;
	height:100%;
	width:100%;
}
/*--------------*/
main{
	padding:100px 0 0;
}
section{
	width:100%;
	max-width:1200px;
	margin:0 auto;
}
/*--------------*/
.mainvis{
	height:380px;
	padding:122px 0 0;
	background:#F3F3F3 url(../img/mainvis.jpg) no-repeat;
	background-size:auto 78.94%;
	background-position:right center;
	text-align:center;
}
.mainvis > div{
	max-width:1440px;
	margin:0 auto;
	padding:0 0 0 50px;
	text-align:left;
}
.mainvis h1{
	color: #333;
	font-family: "Roboto Condensed";
	font-size: 100px;
	font-style: normal;
	font-weight: 500;
	line-height: 64px; /* 64% */
	letter-spacing: -5px;
	text-shadow: 2px 1px 2px #F3F3F3;
}
.mainvis h1 span{
	display:block;
	color: #333;
	font-family: "Noto Sans JP";
	font-size: 20px;
	font-style: normal;
	font-weight: 500;
	line-height: 64px; /* 320% */
	letter-spacing: -1px;
}
/*----------------------------------------------*/
.lead{
	margin:48px auto 50px;
	text-align:center;
	color: #333;
	font-size: 20px;
	font-style: normal;
	font-weight: 500;
	line-height: 40px; /* 200% */
}
.position{
	width:100%;
	margin:0 auto 70px;
}
.position > li{
	padding:40px 50px 47px;
	margin:0 auto 30px;
	border: 1px solid #CCC;
	background: #FFF;
	box-shadow: 4px 4px 4px 0 rgba(0, 0, 0, 0.25);
}
.position > li h2{
	padding:0 0 0 15px;
	margin:0 0 15px;
	font-size: 24px;
	font-style: normal;
	font-weight: 500;
	line-height: 64px; /* 266.667% */
	letter-spacing: -1.2px;
	border-left:5px solid #EB5C01;
	border-bottom:1px solid #999;
}
.position .summary{
	margin:0 0 35px;
}
.position dl{
	display:flex;
	flex-wrap:wrap;
	width:83.3%;
	margin:0 auto 50px;
	font-size: 14px;
}
.position dl dt{
	width:20%;
	padding:10px 0;
	font-style: normal;
	font-weight: 700;
	line-height: 28px; /* 200% */
	border-bottom:1px solid #999;
}
.position dl dt:last-child{
	border:none;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: 28px; /* 200% */
}
.position dl dd{
	width:80%;
	padding:10px 0;
	border-bottom:1px solid #999;
}
.position dl dd ul li{
	position:relative;
	padding:0 0 0 8px;
	line-height: 32px;
}
.position dl dd ul li:before{
	position:absolute;
	content:"・";
	left:-8px;
}
.detailBtn{
	display:flex;
	justify-content:center;
	align-items:center;
	width: 360px;
	height: 50px;
	margin:0 auto;
	color:#fff;
	background:#000;
	cursor:pointer;
}
/*----------------------------------------------*/
footer{
	background:#000;
}
.footer{
	display:flex;
	justify-content:space-between;
	align-items:end;
	flex-wrap:wrap;
	width:100%;
	max-width:1440px;
	padding:50px 50px 27px;
	margin:0 auto;
	color:#fff;
}
.footer > li:nth-of-type(1){
	width:50%;
}
.footer > li:nth-of-type(1) svg{
	margin:0 0 31px;
}
.footer > li:nth-of-type(1) h1{
	color: #FFF;
	font-family: "Noto Sans JP";
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	line-height: 32px; /* 160% */
}
.footer > li:nth-of-type(2){
	width:360px;
	color: #FFF;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	line-height: 34px; /* 283.333% */
}
.footer a{
	color:#fff;
}
.copyright{
	color: #FFF;
	font-family: Fustat;
	font-size: 12px;
	font-style: normal;
	font-weight: 500;
	line-height: 14px; /* 116.667% */
}


@media screen and (max-width: 980px) {
	.pc{
		display:none;
	}
	.sp{
		display:block;
	}
	.pcVisble{
		visibility:hidden;
	}
	.spVisble{
		visibility:visible;
	}
	a.apply{
		width:100%;
		height:60px;
		font-size: 16px;
	}
	/*--------------*/
	header{
		height:50px;
	}
	.header{
		padding:0 0 0 20px;
	}
	#logo{
		padding:9px 0 0;
	}
	#logo svg{
		width:39px;
		height:32px;
	}
	#apply{
		width:150px;
		font-size: 12px;
		font-style: normal;
		font-weight: 500;
		line-height: 32px; /* 266.667% */
		letter-spacing: -0.6px;
	}
	#contact{
		width:70px;
		font-size: 12px;
	}
	/*--------------*/
	main{
		padding:50px 0 0;
	}
	section{
		width:90%;
	}
	/*--------------*/
	.mainvis{
		height:auto;
		padding:38px 0 0;
		aspect-ratio:393 / 320;
		background:#F3F3F3 url(../img/mainvis_sp.jpg) no-repeat;
		background-size:95% auto;
		background-position:right bottom 30px;
		text-align:left;
	}
	.mainvis > div{
		padding:0 0 0 5%;
	}
	.mainvis h1{
		color: #333;
		font-size: 56.25px;
		line-height: 36px; /* 64% */
		letter-spacing: -2.812px;
	}
	.mainvis h1 span{
		font-size: 15px;
		line-height: 48px; /* 320% */
		letter-spacing: -0.75px;
	}
	/*----------------------------------------------*/
	.lead{
		margin:35px auto 30px;
		font-size: 16px;
		text-align:left;
		line-height: 28px; /* 175% */
	}
	.position > li{
		padding:20px 5.6% 30px;
	}
	.position > li h2{
		padding:0 0 0 10px;
		margin:0 0 10px;
		font-size: 18px;
		line-height: 48px; /* 266.667% */
		letter-spacing: -0.9px;
	}
	.position dl{
		width:100%;
	}
	.position dl dt{
		width:32%;
	}
	.position dl dt:last-child{
		width:100%;
	}
	.position dl dd{
		width:68%;
	}
	.position dl dd ul li{
		color: #000;
		font-size: 13px;
		font-weight: 400;
		line-height: 24px; /* 184.615% */
	}
	.position .summary{
		margin:0 0 30px;
	}
	.detailBtn{
		width: 82%;
		height: 38px;
		color: #FFF;
		font-size: 14px;
		line-height: 48px; /* 342.857% */
		letter-spacing: -0.7px;
	}
	/*----------------------------------------------*/
	.footer{
		width:90%;
	}
	.footer > li:nth-of-type(1){
		width:100%;
		margin:0 0 100px;
		font-size: 14px;
	}
	.footer > li:nth-of-type(1) svg{
		width: 90px;
		height: 75px;
	}
	.footer > li:nth-of-type(2){
		width:100%;
		font-size: 14px;
	}
	.copyright{
		font-size: 10px;
	}
	
	
}
