@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
#gHeader .hBox {
	padding: 5rem 10rem;
	justify-content: right;
	max-width: 1220px;
	margin: auto;
}
}
#gHeader .linkList li:not(:first-child) {
	border-left: 1px solid #595757;
}
#gHeader .linkList a {
	padding: 0 1rem 0 1.3rem;
	font-size: 1.7rem;
	letter-spacing: 0.16em;
	line-height: 1.3;
}
#gHeader .linkList a:hover {
	opacity: 0.7;
}
#main {
	margin-bottom: 4.3rem;
}
#main .mainVisual {
	margin-bottom: 6rem;
}
#main .mainVisual .videoBox {
	margin-bottom: 6rem;
	position: relative;
	aspect-ratio: 192/84.5;
	overflow: hidden;
}
#main .mainVisual .videoBox video {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 120%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}
#main .mainVisual .title {
	margin-bottom: 1.5rem;
	text-align: center;
	font-weight: 400;
	font-size: 4.2rem;
	letter-spacing: 0.15em;
	line-height: 1.47;
}
#main .mainVisual .text {
	text-align: center;
	font-size: 1.8rem;
	letter-spacing: 0.05em;
	line-height: 1.73;
}
#main .do {
	margin-bottom: 6.5rem;
}
#main .do .pho {
	margin: 0 auto 1.3rem;
	max-width: 68rem;
}
#main .do .ttl {
	text-align: center;
	font-weight: 500;
	font-size: 3.8rem;
	letter-spacing: 0.15em;
}
#main .skill {
	margin-bottom: 4.7rem;
}
#main .skill .headLine02 {
	margin-bottom: 1.3rem;
}
#main .skill .imgBox {
	margin-bottom: -5.5rem;
	align-items: flex-start;
}
#main .skill .imgBox .phoBox {
	width: 38rem;
}
#main .skill .imgBox .txtBox {
	width: calc(100% - 40rem);
}
#main .skill .imgBox .txtBox p {
	letter-spacing: 0.05em;
	line-height: 1.984;
}
#main .faq .headLine02 {
	margin-bottom: 2rem;
}
#main .faq .faqList {
	margin-bottom: 1rem;
	width: 48.2%;
}
#main .faq .faqList li {
	margin: 0 1rem 3.7rem;
}
#main .faq .faqList li:last-child {
	margin-bottom: 0;
}
#main .faq .faqList .title {
	margin-bottom: 1.6rem;
	padding: 1rem 1rem 1rem 5rem;
	position: relative;
	font-size: 1.8rem;
	letter-spacing: 0.15em;
	border: 0.2rem solid #00AFCC;
	border-radius: 0.9rem;
	background: url(../img/index/faq_icon01.png) no-repeat left 1.8rem top 1.2rem / 2.2rem;
}
#main .faq .faqList .title01 {
	letter-spacing: 0;
}
#main .faq .faqList .title::after {
	width: 1.2rem;
	height: 2.4rem;
	position: absolute;
	top: 0;
	left: -1.2rem;
	content: "";
	z-index: 1;
	background: url(../img/index/faq_img01.png) no-repeat left top -0.1rem / 100%;
	pointer-events: none;
}
#main .faq .faqList .faqBox {
	position: relative;
	padding: 1.5rem 2.3rem 1.9rem 5.2rem;
	color: #fff;
	
	background: #00AFCC url(../img/index/faq_icon02.png) no-repeat left 1.8rem top 2.3rem / 2.2rem;
	border-radius: 0.8rem;
}
#main .faq .faqList .faqBox::after {
	width: 1.1rem;
	height: 2.7rem;
	position: absolute;
	top: 0;
	right: -1.1rem;
	content: "";
	z-index: 1;
	background: url(../img/index/faq_img02.png) no-repeat left top / 100%;
	pointer-events: none;
}
#main .faq .faqList .faqBox .ttl {
	margin-bottom: 0.4rem;
	font-size: 2.5rem;
	font-weight: 500;
	letter-spacing: 0.15em;
}
#main .faq .faqList .faqBox .ttl01 {
	letter-spacing: 0.11em;
}
#main .faq .faqList .faqBox .txt {
	font-size: 1.37rem;
	line-height: 1.68;
	letter-spacing: 0.13em;
}
#main .faq .faqList .faqBox .txt01 {
	letter-spacing: 0;
}
#main .faq .imgBox {
	margin-bottom: -1.3rem;
	align-items: flex-start;
}
#main .faq .imgBox .txtBox {
	margin-top: 2.8rem;
	flex: 1;
}
#main .faq .imgBox .txtBox .ttl {
	margin: 0 -1rem 1rem 0;
	font-size: 3.4rem;
	letter-spacing: 0.08em;
}
#main .faq .imgBox .txtBox .txt {
	font-size: 2.2rem;
	letter-spacing: 0.05em;
	line-height: 1.35;
}
#main .faq .imgBox .phoBox {
	width: 26.6rem;
}
@media all and (max-width: 896px) {
	#gHeader .hBox {
		padding: 0;
		display: block;
	}
	#main {
		margin-bottom: 4.3rem;
	}
	#main .mainVisual {
		margin-bottom: 4rem;
	}
	#main .mainVisual .videoBox {
		margin-bottom: 0;
		aspect-ratio: 108/125;
	}
	#main .mainVisual .videoBox video {
		width: 100%;
	}
	#main .mainVisual .title {
		margin-bottom: 0.7rem;
		font-size: 2.2rem;
		line-height: 1.41;
	}
	#main .mainVisual .text {
		font-size: 1.3rem;
		line-height: 1.74;
	}
	#main .do {
		margin-bottom: 4rem;
	}
	#main .do .sub {
		display: none;
	}
	#main .do .pho {
		max-width: 100%;
		width: 33.1rem;
	}
	#main .do .ttl {
		font-size: 2.2rem;
		letter-spacing: 0;
	}
	#main .skill {
		margin-bottom: 3.3rem;
	}
	#main .skill .headLine02 {
		margin-bottom: 0.6rem;
	}
	#main .skill .imgBox {
		margin-bottom: 3rem;
		display: block;
	}
	#main .skill .imgBox .phoBox {
		margin: 0 auto;
		width: 34.9rem;
	}
	#main .skill .imgBox .txtBox {
		margin-bottom: 0.8rem;
		width: auto;
	}
	#main .skill .imgBox .txtBox p {
		text-align: center;
		font-size: 1.3rem;
		line-height: 1.74;
	}
	#main .faq .headLine02 {
		margin-bottom: 1.5rem;
	}
	#main .faq .sub {
		margin-bottom: 2.5rem;
		display: none;
	}
	#main .faq .faqList {
		margin-bottom: 3rem;
		width: auto;
	}
	#main .faq .faqList:last-of-type {
		margin-bottom: 0;
	}
	#main .faq .faqList li {
		margin-bottom: 3rem;
	}
	#main .faq .faqList li {
		margin: 0 0.8rem 3rem;
	}
	#main .faq .faqList li:last-child {
		margin-bottom: 0;
	}
	#main .faq .faqList .title {
		margin-bottom: 1.3rem;
		padding: 0.8rem 1rem 0.9rem 4.2rem;
		font-size: 1.5rem;
		border-width: 0.3rem;
		border-radius: 0.7rem;
		background-size: 1.85rem auto;
		background-position: left 1.5rem top 0.9rem;
	}
	#main .faq .faqList .title::after {
		width: 1rem;
		left: -1rem;
		background-image: url(../img/index/faq_img01_sp.png);
	}
	#main .faq .faqList .faqBox {
		padding: 1.3rem 2rem 1.7rem 4.5rem;
		background-size: 1.85rem auto;
		background-position: left 1.5rem top 1.9rem;
	}
	#main .faq .faqList .faqBox::after {
		width: 0.9rem;
		right: -0.9rem;
	}
	#main .faq .faqList .faqBox .ttl {
		margin: 0 -1rem 0.2rem 0;
		font-size: 2.1rem;
	}
	#main .faq .faqList .faqBox .txt {
		font-size: 1.13rem;
	}
	#main .faq .imgBox {
		margin-bottom: 1.4rem;
		display: block;
	}
	#main .faq .imgBox .txtBox {
		margin: 0 0 0.5rem;
		text-align: center;
	}
	#main .faq .imgBox .txtBox .ttl {
		margin: 0 0 0.5rem;
		font-size: 2.2rem;
		letter-spacing: 0.1em;
		line-height: 1.42;
	}
	#main .faq .imgBox .txtBox .txt {
		font-size: 1.3rem;
		letter-spacing: 0.07em;
		line-height: 1.74;
	}
	#main .faq .imgBox .phoBox {
		margin: 0 auto;
		width: 24rem;
	}
}