@charset "UTF-8";

/* common */
body{
	background: #fff;
}
body.noscroll{
	overflow: hidden;
}
main{
	overflow: hidden;
}
/* pagetitle-default */
#pagetitle-default{
	position: relative;
	padding-bottom: 70px;
	background: #F4F9FC;
}
#pagetitle-default .breadcrumbs{
	font-weight: 500;
}
@media screen and (max-width: 1024px) {
	#pagetitle-default{
		padding-bottom: 60px;
	}
}
@media screen and (max-width: 767px) {
	#pagetitle-default{
		padding-bottom: 40px;
	}
	#pagetitle-default .en{
		font-size: 11.5vw;
	}
}

main > p{
	font-size: 2.6rem;
	font-weight: 500;
	text-align: center;
	padding: 100px 0 80px;
}
main > p span{
	font-weight: bold;
}
@media screen and (max-width: 1024px) {
	main > p{
		font-size: 2.6vw;
		padding: 8vw 0 5vw;
	}
}
@media screen and (max-width: 767px) {
	main > p{
		font-size: 5vw;
		padding: 10vw 0 8vw;
		line-height: 1.5em;
	}
}

#recruitment .ttl.flex-start h3,
#faq .ttl.flex-start h3{
	font-size: 3.0rem;
	font-weight: 400;
}
#recruitment .ttl.flex-start,
#faq .ttl.flex-start{
	align-items: center;
	margin-bottom: 30px;
}
@media screen and (max-width: 1024px) {
	#recruitment .ttl.flex-start h3,
	#faq .ttl.flex-start h3{
		font-size: 2.8vw;
	}
	#recruitment .ttl.flex-start,
	#faq .ttl.flex-start{
		margin-bottom: 3.2vw;
	}
}
@media screen and (max-width: 767px) {
	#recruitment .ttl.flex-start h3,
	#faq .ttl.flex-start h3{
		font-size: 4.6vw;
	}
	#recruitment .ttl.flex-start,
	#faq .ttl.flex-start{
		margin-bottom: 3.2vw;
	}
}

/* recruitment */
#recruitment .flex{
	border-top: 1px solid #ddd;
	padding: 25px 0;
	align-items: center;
}
#recruitment .flex:last-child{
	border-bottom: 1px solid #ddd;
}
#recruitment .flex p:first-child{
	width: 20%;
	font-weight: 400;
	padding-left: 3.6vw;
}
#recruitment .flex p:last-child{
	width: 80%;
	font-size: 1.5rem;
	font-weight: 400;
	padding-right: 3.5vw;
}
#recruitment .flex p a{
	text-decoration: underline;
}
#recruitment .flex p a:hover{
	text-decoration: none;
}
@media screen and (max-width: 1024px) {
	#recruitment .flex{
		padding: 3vw 0;
	}
	#recruitment .flex p:first-child{
		width: 20%;
		padding-left: 3.0vw;
	}
	#recruitment .flex p:last-child{
		width: 80%;
		font-size: 1.5vw;
		padding-right: 3.0vw;
	}
}
@media screen and (max-width: 767px) {
	#recruitment .flex{
		padding: 3vw 0;
	}
	#recruitment .flex p:first-child{
		width: 25%;
		padding-left: 0;
		line-height: 1.4;
	}
	#recruitment .flex p:last-child{
		width: 75%;
		font-size: 3.5vw;
		padding-right: 0;
	}
}

/* faq */
#faq{
	margin-top: 100px;
}
#faq .faq-cntnr:nth-child(n+3){
	margin-top: 60px;
}
#faq .faq-cntnr h4{
	font-size: 2.2rem;
	font-weight: 400;
}
#faq .faq-cntnr dl{
	margin-top: 15px;
	background: #F4F9FC;
}
#faq .faq-cntnr dl dt,
#faq .faq-cntnr dl dd{
	position: relative;
}
#faq .faq-cntnr dl dt p:first-child{
	position: absolute;
	top: 20px;
	left: 30px;
	line-height: 1.2;
}
#faq .faq-cntnr dl dt p:last-child{
	font-size: 1.8rem;
	font-weight: 400;
	padding-left: 45px;
}
#faq .faq-cntnr dl dt{
	padding: 20px 25px 20px 30px;
	cursor: pointer;
	position: relative;
}
#faq .faq-cntnr dl dt::before{
	content: "";
	position: absolute;
	background: url("../img/close.svg") no-repeat center / cover;
	width: 20px;
	aspect-ratio: 1/1;
	right: 25px;
	top: 50%;
	transition: all .4s;
	transform: rotate(0deg) translate(0, -50%);
	transform-origin: 50% 0;
}
#faq .faq-cntnr dl dt.active::before{
	transform: rotate(45deg) translate(0, -50%);
}
#faq .faq-cntnr dl dd p:first-child{
	position: absolute;
	top: 0;
	left: 30px;
	line-height: 1.2;
}
#faq .faq-cntnr dl dd p:last-child{
	font-size: 1.5rem;
	font-weight: 400;
	padding-left: 45px;
}
#faq .faq-cntnr dl dd ul{
	padding-left: 45px;
	counter-reset: num;
}
#faq .faq-cntnr dl dd ul li{
	position: relative;
	padding-left: 2.5rem;
	counter-increment: num;
	font-size: 1.5rem;
}
#faq .faq-cntnr dl dd ul li::before{
	content: counter(num) "）";
	position: absolute;
	left: 0;
	top: 0;
}
#faq .faq-cntnr dl dd{
	padding: 0px 25px 25px 30px;
	display: none;
}
#faq .faq-cntnr dl .en{
	font-size: 2.2rem;
}
#faq .faq-cntnr > p{
	border: 5px solid #F4F9FC;
	padding: 50px 0;
	font-size: 1.7rem;
	font-weight: 400;
	text-align: center;
	margin-top: 15px;
}
#faq .faq-cntnr dl dd a{
	text-decoration: underline;
}
#faq .faq-cntnr dl dd a:hover{
	text-decoration: none;
}
@media screen and (max-width: 1024px) {
	#faq{
		margin-top: 10vw;
	}
	#faq .faq-cntnr:nth-child(n+3){
		margin-top: 60px;
	}
	#faq .faq-cntnr h4{
		font-size: 2.4vw;
	}
	#faq .faq-cntnr dl{
		margin-top: 15px;
	}
	#faq .faq-cntnr dl dt p:first-child{
		top: 21px;
		left: 30px;
	}
	#faq .faq-cntnr dl dt p:last-child{
		font-size: 1.8vw;
		padding-left: 40px;
	}
	#faq .faq-cntnr dl dt{
		padding: 20px 25px;
	}
	#faq .faq-cntnr dl dt::before{
		width: 17px;
		right: 25px;
	}
	#faq .faq-cntnr dl dd p:first-child{
		position: absolute;
		top: 0;
		left: 30px;
	}
	#faq .faq-cntnr dl dd p:last-child{
		font-size: 1.5vw;
		padding-left: 40px;
	}
	#faq .faq-cntnr dl dd ul{
		padding-left: 40px;
	}
	#faq .faq-cntnr dl dd ul li{
		padding-left: 2.3rem;
		font-size: 1.5vw;
	}
	#faq .faq-cntnr dl dd ul li::before{
		left: 0;
		top: 0;
	}
	#faq .faq-cntnr dl dd{
		padding: 0px 25px 25px;
	}
	#faq .faq-cntnr dl .en{
		font-size: 2.2vw;
	}
	#faq .faq-cntnr > p{
		border: 4px solid #F4F9FC;
		padding: 40px 0;
		font-size: 1.7vw;
		margin-top: 15px;
	}
}
@media screen and (max-width: 767px) {
	#faq{
		margin-top: 12vw;
	}
	#faq .faq-cntnr:nth-child(n+3){
		margin-top: 30px;
	}
	#faq .faq-cntnr h4{
		font-size: 4.5vw;
	}
	#faq .faq-cntnr dl{
		margin-top: 10px;
	}
	#faq .faq-cntnr dl dt p:first-child{
		top: 3.5vw;
		left: 15px;
	}
	#faq .faq-cntnr dl dt p:last-child{
		font-size: 3.8vw;
		padding-left: 20px;
		padding-right: 20px;
		line-height: 1.4em;
	}
	#faq .faq-cntnr dl dt{
		padding: 15px;
	}
	#faq .faq-cntnr dl dt::before{
		width: 17px;
		right: 15px;
	}
	#faq .faq-cntnr dl dd p:first-child{
		position: absolute;
		top: 2px;
		left: 15px;
	}
	#faq .faq-cntnr dl dd p:last-child{
		font-size: 3.5vw;
		padding-left: 20px;
		line-height: 1.8;
	}
	#faq .faq-cntnr dl dd ul{
		padding-left: 20px;
	}
	#faq .faq-cntnr dl dd ul li{
		padding-left: 2.3rem;
		font-size: 3.5vw;
	}
	#faq .faq-cntnr dl dd ul li::before{
		left: 0;
		top: 0;
	}
	#faq .faq-cntnr dl dd{
		padding: 0px 15px 15px;
	}
	#faq .faq-cntnr dl .en{
		font-size: 4.5vw;
	}
	#faq .faq-cntnr > p{
		border: 3px solid #F4F9FC;
		padding: 20px 15px;
		text-align: left;
		font-size: 3.8vw;
		margin-top: 10px;
	}
}
