@charset "utf-8";

/*===================================================================

	001. contact

===================================================================*/

.title{
	background-image: url(../images/title__contact.png);
}

.contact__text{
	text-align: center;
	margin-bottom: 40px;
}
.contact__text .text2{
	text-align: left;
}

.contact__rule{
	border: 1px solid #707070;
	padding: 15px;
	height: 240px;
	overflow-y: scroll;
	font-size: 14px;
	line-height: 1.71;
	margin-bottom: 75px;
}

.contact__rule::-webkit-scrollbar{
	width: 16px;
}
.contact__rule::-webkit-scrollbar-track{
	background: #F5F5F5;
}
.contact__rule::-webkit-scrollbar-thumb{
	background: #CBCBCB;
}

.rule__title{
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 30px;
}

.rule__info{
	font-weight: normal;
}

.rule__desc{
	margin-left: 1em;
}

.rule__anchor{
	color: #2871B4;
	text-decoration: underline;
}

.contact__form{
	margin-bottom: 50px;
}

.form__cont{
	width: 63.6%;
	max-width: 700px;
	margin: 0 auto;
	text-align: center;
}

.form__list{
	margin-bottom: 50px;
}

.form__title{
	font-size: 18px;
	position: relative;
	display: inline;
}

.form__title.aster::after{
	content: "必須";
	border: 1px solid #2871B4;
	color: #2871B4;
	font-size: 14px;
	padding: 3px;
	width: 55px;
	line-height: 1;
	display: inline-block;
	position: absolute;
	top: 0;
	left: 100%;
	margin-left: 15px;
}

.form{
	border: 1px solid #707070;
	width: 100%;
	display: block;
	margin: 20px auto 0;
	padding: 14px;
	height: 50px;
}

/* .form.short{
	width: 72%;
	max-width: 500px;
} */

.form__textarea{
	height: 285px;
}

.form__button{
	background: #2871B4;
	color: #fff;
	font-size: 18px;
	letter-spacing: .5em;
	text-align: center;
	display: block;
	margin: 0 auto;
	padding: 6.5px;
	width: 222px;
}

.contact__caution{
	width: 90%;
	max-width: 700px;
	font-size: 12px;
	font-weight: bold;
	line-height: 1.66;
}

.caution__list.text + .text{
	margin-top: 0;
}

.caution__list{
	padding-left: 1em;
}

.caution__list::before{
	content: "・";
	display: inline-block;
	margin-left: -1em;
}

.h3 {
	margin: auto;
	padding: 20px;
	margin-bottom: 30px;
	text-align: center;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
	font-size: 18px;
}

/*===================================================================

	002. responsive

===================================================================*/

@media screen and (max-width: 768px){
	/*==============================================

		001. contact

	==============================================*/


	.contact__text{
		text-align: center;
		margin-bottom: 40px;
	}

	.contact__rule{
		border: 1px solid #707070;
		padding: 15px;
		height: 240px;
		overflow-y: scroll;
		font-size: 12px;
		line-height: 1.71;
		margin-bottom: 75px;
	}

	.rule__title{
		font-size: 14px;
		font-weight: bold;
		margin-bottom: 20px;
	}

	.rule__info{
		font-weight: normal;
	}

	.rule__desc{
		margin-left: 1em;
	}

	.rule__anchor{
		color: #2871B4;
		text-decoration: underline;
	}

	.contact__form{
		margin-bottom: 50px;
	}

	.form__cont{
		width: 90%;
	}

	.form__list{
		margin-bottom: 50px;
	}

	.form__title{
		font-size: 14px;
	}

	.form__title.aster::after{
		font-size: 10px;
		padding: 0;
		line-height: 1.7;
	}

	.form{
		border: 1px solid #707070;
		width: 100%;
		display: block;
		margin: 20px auto 0;
		padding: 8px;
		height: auto;
	}

	.form.short{
		width: 100%;
	}

	.form__textarea{
		height: 285px;
	}

	.form__button{
		color: #fff;
		font-size: 18px;
		letter-spacing: .5em;
		text-align: center;
		display: block;
		margin: 0 auto;
		padding: 6.5px;
		width: 222px;
	}

	.contact__caution{
		width: 90%;
		max-width: 700px;
		font-size: 12px;
		font-weight: bold;
		line-height: 1.66;
	}

	.caution__list.text + .text{
		margin-top: 0;
	}

	.caution__list{
		padding-left: 1em;
	}

	.caution__list::before{
		content: "・";
		display: inline-block;
		margin-left: -1em;
	}

}
