@charset "utf-8";

/**
 *
 *  ページ用CSS
 *　faq
 */

/*--------------------------------------------------------------------------
   Overwright
---------------------------------------------------------------------------*/
.page-ttl .pic{
	height: 250px;
}
.page-ttl h1{
	margin-top: 20px;
}



/*--------------------------------------------------------------------------
   Content
---------------------------------------------------------------------------*/

/* faq
-----------------------------------------------------------------*/
.faq{
	padding: 80px 0 180px;
}
.page-nav-list{
	display: flex;
	justify-content: space-between;
	margin-bottom: 90px;
}
.page-nav-list li{
	max-width: 250px;
	width: calc((100% - 30px)/4);
	border-bottom: 1px solid #231815;
}
.page-nav-list li a{
	position: relative;
	display: block;
	padding: 10px 25px 10px 0;
	font-weight: bold;	
}
.page-nav-list li a::after{
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-45%);
	display: block;
	width: 20px;
	height: 12px;
	content: "";
	background: url(../img/common/arw_down.svg) no-repeat;
	background-size: 100% auto;
	transition: .3s;
}
.page-nav-list li a:hover::after{
	transform: translateY(-20%);
}
.faq-sec + .faq-sec{
	margin-top: 110px;
}
.faq-sec h2{
	position: relative;
	margin-bottom: 30px;
	padding-left: 20px;
	font-size: 2rem;	
}
.faq-sec h2::before{
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: 6px;
	height: 100%;
	content: "";
	border-radius: 100vmax;
	background: #A00817;
}
.faq-sec dl > div{
	background: #E9E7E7;
	border-radius: 20px;
}
.faq-sec dl > div + div{
	margin-top: 12px;
}
.faq-sec dl dt{
	position: relative;
	display: flex;
	padding: 25px 4%;
	cursor: pointer;
}
.faq-sec dl dt::after{
	position: absolute;
	right: 35px;
	top: 50%;
	transform: translateY(-50%);
	display: block;
	width: 45px;
	height: 45px;
	content: "";
	background: url(../img/common/ico_plus.svg) no-repeat;
	background-size: 100% auto;
}
.faq-sec dl dt.open::after{
	background-image: url(../img/common/ico_minus.svg);
}
.faq-sec dl dd{
	display: none;
	padding: 0 4% 25px;
}
.faq-sec dl dd div{
	display: flex;
}
.faq-sec dl .en{
	margin-right: 15px;
	font-size: 5rem;
	line-height: 1;
	font-weight: 500;
}
.faq-sec dl dd .en{
	color: #A00817;
}
.faq-sec dl dt span:nth-child(2){
	padding: 12px 50px 12px 0;
	font-size: 1.8rem;
	font-weight: bold;
}
.faq-sec dl dd span:nth-child(2){
	padding: 12px 50px 12px 0;
}
.faq-sec dl dd .btn-base{
	margin: 15px 0 0 40px;
}
.faq-sec dl dd .btn-base a{
	max-width: 230px;
	height: 40px;
}
.faq-sec dl dd .btn-base a span{
	padding: 0 40px 0 20px;
	font-size: 1.3rem;
	text-align: left;
}
.faq-sec dl dd .btn-base a span::after{
	right: 20px;
	width: 24px;
	height: 6px;	
}
.faq-sec dl dd .btn-base a:hover span::after{
	right: 15px;
}

















/*--------------------------------------------------------------------------
   mobile
---------------------------------------------------------------------------*/
@media screen and (max-width: 768px) {
	.page-ttl{
		padding: 20px 20px 40px;
	}
	.page-ttl .pic{
		height: 0;
	}
	.page-ttl h1{
		margin-top: 0;
	}
	.page-ttl .ttl-area h1 .en{
		font-size: 3.5rem;
		letter-spacing: -1px;
	}

/* faq
-----------------------------------------------------------------*/
	.faq{
		padding: 40px 0 60px;
	}
	.page-nav-list{
		flex-wrap: wrap;
		margin-bottom: 50px;
	}
	.page-nav-list li{
		max-width: none;
		width: calc(50% - 7px);
	}
	.page-nav-list li a{
		padding: 8px 20px 8px 0;
	}
	.page-nav-list li a::after{
		width: 15px;
		height: 8px;
	}
	.page-nav-list li a:hover::after{
		transform: translateY(-45%);
	}
	.faq-sec + .faq-sec{
		margin-top: 50px;
	}
	.faq-sec h2{
		margin-bottom: 25px;
		padding-left: 15px;
		font-size: 1.7rem;	
	}
	.faq-sec h2::before{
		width: 3px;
	}
	.faq-sec dl > div{
		border-radius: 10px;
	}
	.faq-sec dl > div + div{
		margin-top: 12px;
	}
	.faq-sec dl dt{
		padding: 18px 20px 15px;
	}
	.faq-sec dl dt::after{
		right: 12px;
		width: 27px;
		height: 27px;
	}
	.faq-sec dl dd{
		padding: 0 20px 15px;
	}
	.faq-sec dl .en{
		margin-right: 10px;
		font-size: 3rem;
	}
	.faq-sec dl dt span:nth-child(2){
		padding: 5px 30px 12px 0;
		font-size: 1.3rem;
	}
	.faq-sec dl dd span:nth-child(2){
		padding: 2px 30px 12px 0;
		text-align: justify;
	}
	.faq-sec dl dd .btn-base{
		margin: 0 0 0 30px;
	}
	.faq-sec dl dd .btn-base a{
		max-width: 224px;
		height: 40px;
	}
	.faq-sec dl dd .btn-base a span{
		padding: 0 40px 0 20px;
		font-size: 1.3rem;
	}
	.faq-sec dl dd .btn-base a span::after{
		right: 15px;
	}
	.faq-sec dl dd .btn-base a:hover span::after{
		right: 15px;
	}




}