@charset "UTF-8";

#contents *{
	box-sizing: border-box;
	font-family: "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
}
#contents .min{
	font-family: "ヒラギノ明朝 W3 JIS2004", "Hiragino Mincho W3 JIS2004",serif;
}
#contents .wrap{
	width: 940px;
	margin: 0 auto;
}
#contents .ttl{
	font-size: 37px;
	line-height: 1.1;
	text-align: center;
	margin-bottom: 80px;
}
#contents .sub_ttl{
	font-size: 24px;
	text-align: center;
	margin-bottom: 35px;
}
.gray_bg{
	padding: 50px 0 60px;
	background: #f4f4f4;
}

.intro_box{
	padding-bottom: 100px;
}
.intro_box .lead_box p{
	font-size: 16px;
	line-height: 1.6875;
	text-align: center;
}

.navi_box .navi{
	display: flex;
	justify-content: space-between;
}
.navi_box .navi li{
	width: 180px;
}
.navi_box .navi li a{
	font-size: 16px;
	color: #fff;
	text-align: center;
	height: 100px;
	background: #b58e46;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	transition: opacity .4s;
}
.navi_box .navi li a:hover{
	text-decoration: none;
	opacity: .7;
}
.navi_box .navi li a::before{
	content: '';
	position: absolute;
	bottom: 15px;
	left: 50%;
	transform: translateX(-50%) rotate(45deg);
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	width: .5em;
	height: .5em;
}
.navi_box .many{
	margin-top: 75px;
	background: #fff;
	padding: 35px 40px;
}
.navi_box .many_navi{
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
}
.navi_box .many_navi li{
	width: 425px;
	background: #f4f4f4;
}
.navi_box .many_navi li:nth-child(n+3){
	margin-top: 20px;
}
.navi_box .many_navi li a{
	font-size: 16px;
	line-height: 1.625;
	padding: 1.4em;
	display: block;
	height: 100%;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	position: relative;
	transition: opacity .4s;
}
.navi_box .many_navi li a:hover{
	text-decoration: none;
	opacity: .7;
}
.navi_box .many_navi li a::before{
	content: '';
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translateY(-50%) rotate(45deg);
	border-right: 1px solid #5a5a5a;
	border-bottom: 1px solid #5a5a5a;
	width: .5em;
	height: .5em;
}

.faq_box{
	padding: 100px 0;
}
.faq_box .sub_ttl{
	margin-top: 95px;
}
.faq_box .sub_ttl:first-child{
	margin-top: 0;
}
.faq_box dl{
	border-bottom: 1px solid #dedede;
}
.faq_box dt{
	font-size: 16px;
	line-height: 2;
	padding: 25px 45px;
	border-top: 1px solid #dedede;
	position: relative;
	cursor: pointer;
}
.faq_box dt::before{
	content: '';
	position: absolute;
	top: 27px;
	left: 0;
	width: 25px;
	height: 25px;
	background: url(../img/q.png) no-repeat center center /contain;
}
.faq_box dt .icon{
	width: 25px;
	height: 25px;
	position: absolute;
	top: 50%;
	right: 0;
	display: block;
	transform: translateY(-50%);
}
.faq_box dt .icon::before,
.faq_box dt .icon::after{
	content: '';
	position: absolute;
	top: 50%;
	right: 0;
	background: #bca06b;
	transform: translateY(-50%);
}
.faq_box dt .icon::before{
	width: 100%;
	height: 1px;
}
.faq_box dt .icon::after{
	width: 1px;
	height: 100%;
	right: 12px;
}
.faq_box dt.open .icon::after{
	display: none;
}
.faq_box dd .inner{
	border-top: 1px dotted #dedede;
	padding: 25px 45px 25px 90px;
	position: relative;
	min-height: 75px;
}
.faq_box dd,
.faq_box dd p{
	font-size: 16px;
	line-height: 2;
}
.faq_box dd .inner > *+*{
	margin-top: 15px;
}
.faq_box dd p a{
	color: #ac87bf;
	text-decoration: underline;
}
.faq_box dd p a:hover{
	text-decoration: none;
}
.faq_box dd .btn a{
	font-size: 14px;
	width: 240px;
	height: 60px;
	line-height: 1.5;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	border: 1px solid #222222;
	padding: 0 25px;
	position: relative;
	transition: opacity .4s;
}
.faq_box dd .btn a::before{
	font-size: 11px;
	content: '＞';
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
}
.faq_box dd .btn a:hover{
	opacity: .7;
	text-decoration: none;
}
.faq_box dd{
	display: none;
}
.faq_box dd .inner::before{
	content: '';
	position: absolute;
	top: 27px;
	left: 45px;
	width: 22px;
	height: 24px;
	background: url(../img/a.png) no-repeat center center /contain;
}

.contact_box{
	padding: 80px 0;
}
.contact_box .txt{
	font-size: 20px;
	line-height: 1.5;
	text-align: center;
}
.contact_box .btn{
	margin-top: 35px;
}
.contact_box .btn a{
	font-size: 20px;
	text-align: center;
	color: #fff;
	width: 320px;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #bca06b;
	margin: 0 auto;
	transition: opacity .4s;
}
.contact_box .btn a span{
	position: relative;
}
.contact_box .btn a span::before{
	content: '>';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: -35px;
}
.contact_box .btn a:hover{
	opacity: .7;
	text-decoration: none;
}

#footer1{
	background: none;
}

@media screen and (max-width: 640px) {

	#contents .wrap{
		width: 89%;
		margin: 0 auto;
	}
	#contents .ttl{
		font-size: 30px;
		line-height: 1.1;
		margin-bottom: 40px;
	}
	#contents .sub_ttl{
		font-size: 20px;
		margin-bottom: 40px;
	}
	.gray_bg{
		padding: 45px 0 60px;
	}

	.intro_box{
		padding-bottom: 55px;
	}
	.intro_box .lead_box p{
		font-size: 15px;
		text-align: left;
	}

	.navi_box .navi{
		display: block;
	}
	.navi_box .navi li{
		width: 100%;
	}
	.navi_box .navi li+li{
		margin-top: 10px;
	}
	.navi_box .navi li a{
		font-size: 15px;
		text-align: left;
		height: auto;
		display: block;
		padding: 17px 17px;
	}
	.navi_box .navi li a::before{
		top: 50%;
		bottom: auto;
		left: auto;
		right: 15px;
		transform: translateY(-50%) rotate(45deg);
	}
	.navi_box .many{
		margin-top: 36px;
		padding: 35px 5% 20px;
	}
	.navi_box .many_navi{
		display: block;
	}
	.navi_box .many_navi li{
		width: 100%;
	}
	.navi_box .many_navi li:nth-child(n+2){
		margin-top: 10px;
	}
	.navi_box .many_navi li a{
		font-size: 13px;
		padding: 1.4em;
		min-height: 75px;
		display: flex;
		justify-content: flex-start;
		align-items: center;
	}
	.navi_box .many_navi li a::before{
		top: 50%;
		bottom: auto;
		left: auto;
		right: 15px;
		transform: translateY(-50%) rotate(45deg);
	}

	.faq_box{
		padding: 50px 0;
	}
	.faq_box .sub_ttl{
		margin-top: 52px;
		margin-bottom: 25px!important;
	}
	.faq_box .sub_ttl:first-child{
		margin-top: 0;
	}
	.faq_box dt{
		font-size: 15px;
		line-height: 1.6;
		padding: 20px 30px;
	}
	.faq_box dt::before{
		top: 20px;
		width: 19px;
		height: 20px;
	}
	.faq_box dt .icon{
		width: 18px;
		height: 18px;
	}
	.faq_box dt .icon::after{
		right: 9px;
	}
	.faq_box dd .inner{
		padding: 15px 0 15px 30px;
		min-height: 0;
	}
	.faq_box dd,
	.faq_box dd p{
		font-size: 15px;
		line-height: 1.6;
	}
	.faq_box dd .inner > *+*{
		margin-top: 15px;
	}
	.faq_box dd .btn a{
		font-size: 15px;
		width: 100%;
		height: auto;
		min-height: 60px;
		padding: 0 25px 0 17px;
	}
	.faq_box dd .btn a::before{
		font-size: 11px;
		right: 10px;
	}
	.faq_box dd .inner::before{
		top: 16px;
		left: 0;
		width: 19px;
		height: 20px;
	}

	.contact_box{
		padding: 50px 0;
	}
	.contact_box .txt{
		font-size: 18px;
	}
	.contact_box .btn{
		margin-top: 30px;
	}
	.contact_box .btn a{
		font-size: 18px;
		width: 90%;
		height: 60px;
	}
	.contact_box .btn a span::before{
		right: -20px;
	}
	.android .contact_box .btn a span::before{
		margin-top: -1px;
	}

	#footer1{
		background: none;
	}

}

.faq_box{
	padding-top: 0;
}
.faq_box dd.many_link{
	display: block;
	margin-top: -90px;
	padding-top: 90px;
}
.faq_box .sub_ttl{
	padding-top: 105px;
	margin-top: -10px;
}
@media screen and (max-width: 640px) {
.faq_box dd.many_link{
	display: block;
	margin-top: -50px;
	padding-top: 50px;
}
.faq_box .sub_ttl{
	padding-top: 65px;
	margin-top: -10px;
}