@charset "UTF-8";

/* ------- MAIN IMAGE ---------------------------------------------- */
.main-image-head{
	background-image: url("../img/parent/img_main.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}
.main-image-head h1{
	color: #FFF;
	font-family: var(--font-jp);
	font-weight: var(--font-w-m);
	text-align: center;
	width: 100%;
}
@media print, screen and (min-width: 781px) {
	.main-image-head{
		height: 400px;
	}
	.main-image-head h1{
		font-size: 28px;
	}
}
@media screen and (max-width: 780px) {
	.main-image-head{
		height: 300px;
	}
	.main-image-head h1{
		font-size: 22px;
	}
}





/* ------- COMMON ---------------------------------------------- */
.section-head{
	color: #0071BC;
	font-family: var(--font-jp);
	font-weight: var(--font-w-m);
}
@media print, screen and (min-width: 781px) {
	.section-head{
		font-size: 34px;
		text-align: center;
	}
}
@media screen and (max-width: 780px) {
	.section-head{
		font-size: 24px;
		text-align: center;
	}
}



/* ------- ABOUT ---------------------------------------------- */
#parent-about{
	position: relative;
}
#parent-about:before{
	background-color: #F7F7F7;
	content: "";
	display: block;
	width: 100%;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: -1;
}
.about-list{
	counter-reset: number 0;
}
.about-item .image{
	position: relative;
}
.about-item .image:before{
	background: url("../img/parent/bg_tri.svg") no-repeat;
	counter-increment: number 1;
	color: #FFF;
	content: counter(number);
	font-family: var(--font-en);
	font-weight: var(--font-w-l);
	line-height: 1;
	display: block;
	position: absolute;
	left: 0;
	top: 0;
}
.about-item dl > dt{
	font-family: var(--font-jp);
	font-weight: var(--font-w-m);
	line-height: 1.41;
	text-align: center;
}
@media print, screen and (min-width: 781px) {
	#parent-about{
		padding-top: 120px;
		padding-bottom: 110px;
	}
	#parent-about:before{
		top: 260px;
	}
	.parent-about-inner{
		margin: 0 auto;
		width: var(--main-width);
		max-width: var(--main-max-width);
	}
	.about-list{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.about-item{
		background-color: #FFF;
		margin-top: 60px;
		width: 47.22%;
	}
	.about-item .image:before{
		font-size: 38px;
		padding-top: 20px;
		padding-left: 20px;
		height: 110px;
		width: 110px;
	}
	.about-item dl{
		padding: 0 50px 35px;
	}
	.about-item dl > dt{
		font-size: 24px;
		margin-top: 30px;
		margin-bottom: 30px;
	}
}
@media screen and (max-width: 780px) {
	#parent-about{
		padding-top: 60px;
		padding-bottom: 55px;
	}
	#parent-about:before{
		top: 260px;
	}
	.parent-about-inner{
	}
	.about-list{
		margin-left: 15px;
		margin-right: 15px;
	}
	.about-item{
		background-color: #FFF;
		margin-top: 30px;
	}
	.about-item .image:before{
		background-size: 55px auto;
		font-size: 19px;
		padding-top: 10px;
		padding-left: 10px;
		height: 55px;
		width: 55px;
	}
	.about-item dl{
		padding: 0 15px 30px;
	}
	.about-item dl > dt{
		font-size: 18px;
		margin-top: 30px;
		margin-bottom: 30px;
	}
}


/* ------- AREA ---------------------------------------------- */
.parent-area-head p{
	font-family: var(--font-jp);
	font-weight: var(--font-w-m);
}
.area-item{
	background-color: #F7F7F7;
	border-top-style: solid;
	border-top-width: 5px;
}
.area-item:nth-child(1){
	border-top-color: #68B064;
}
.area-item:nth-child(2){
	border-top-color: #75D3A1;
}
.area-item:nth-child(3){
	border-top-color: #0897BC;
}
.area-item:nth-child(4){
	border-top-color: #0DB3BC;
}
.area-item:nth-child(5){
	border-top-color: #7DA9D3;
}
.area-item:nth-child(6){
	border-top-color: #0371BC;
}
.area-item dt{
	font-family: var(--font-jp);
	font-weight: var(--font-w-m);
	text-align: center;
}
@media print, screen and (min-width: 781px) {
	#parent-area{
		margin: 0 auto;
		width: var(--main-width);
		max-width: var(--main-max-width);
		padding: 120px 0 80px;
	}
	.parent-area-desc{
		display: flex;
		justify-content: space-between;
	}
	.parent-area-desc .parent-area-head{
		align-self: center;
		width: 39.35%;
	}
	.parent-area-head .section-head{
		text-align: left;
	}
	.parent-area-head p{
		font-size: 18px;
		margin-top: 30px;
	}
	.parent-area-desc .image{
		width: 44.44%;
	}
	
	.parent-area-list{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-top: 80px;
	}
	.area-item{
		margin-bottom: 2.93%;
		padding: 30px 30px 35px;
		width: 31.38%;
	}
	.area-item dt{
		font-size: 24px;
		margin-bottom: 25px;
	}
}
@media screen and (max-width: 780px) {
	#parent-area{
		padding: 60px 15px 40px;
	}
	.parent-area-desc{
	}
	.parent-area-desc .parent-area-head{
	}
	.parent-area-head .section-head{
	}
	.parent-area-head p{
		font-size: 18px;
		margin-top: 30px;
	}
	.parent-area-desc .image{
		margin-top: 30px;
	}
	
	.parent-area-list{
		margin-top: 40px;
	}
	.area-item{
		margin-bottom: 2.93%;
		padding: 15px 15px 20px;
	}
	.area-item dt{
		font-size: 18px;
		margin-bottom: 15px;
	}
}

/* ------- FAQ ---------------------------------------------- */
.faq-item{
	background-color: #F7F7F7;
	margin-bottom: 10px;
	position: relative;
}
.faq-item dt > span{
	background-color: #0071BC;
	border-radius: 50%;
	color: #FFF;
	font-family: var(--font-en);
	font-weight: var(--font-w-l);
	display: block;
	text-align: center;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.faq-item dt{
	cursor: pointer;
	font-family: var(--font-jp);
	font-weight: var(--font-w-m);
	position: relative;
}
.faq-item dt:before,
.faq-item dt:after{
	background-color: #0071BC;
	content: "";
	display: block;
	height: 2px;
	width: 30px;
	position: absolute;
	right: 19px;
	top: 50%;
	transition: .3s;
}
.faq-item dt:after{
	transform: rotate(90deg);
}
.faq-item dt.active:after{
	transform: rotate(0);
	opacity: 0;
}
.faq-item dd{
	display: none;
}
@media print, screen and (min-width: 781px) {
	#parent-faq{
		border-top: 1px dotted #0071BC;
		margin: 0 auto;
		width: var(--main-width);
		max-width: var(--main-max-width);
		padding: 120px 0 180px;
	}
	.faq-list{
		margin-top: 130px;
	}
	.faq-item dt{
		font-size: 18px;
		padding: 30px 90px 30px 100px;
	}
	.faq-item dt > span{
		font-size: 30px;
		line-height: 50px;
		width: 50px;
		left: 20px;
	}
	.faq-item dd{
		padding: 0 90px 35px 100px;
	}
}
@media screen and (max-width: 780px) {
	#parent-faq{
		border-top: 1px dotted #0071BC;
		margin: 0 15px;
		padding: 60px 0 90px;
	}
	.faq-list{
		margin-top: 65px;
	}
	.faq-item dt{
		font-size: 16px;
		line-height: 1.4;
		padding: 15px 45px 15px 50px;
	}
	.faq-item dt > span{
		font-size: 15px;
		line-height: 25px;
		width: 25px;
		left: 10px;
	}
	.faq-item dt:before,
	.faq-item dt:after{
		height: 1px;
		width: 15px;
	}
	.faq-item dd{
		padding: 15px;
	}
}