@charset "utf-8";
/* ------------------------------------------------------------ 共通 */
.btns .submit_btn .btn{ background: #fff; color: #000; width: 265px; line-height: 180%; letter-spacing: 0.05em;font-family: 'Noto-Sans-JP-Medium'; display: block; margin: 0 auto; padding: 15px 0 17px; border-radius: 100px; border: 1px solid #000; transition: 0.5s;}
.btns .back_btn a { background: #C4C4C4; color: #000; width: 265px; line-height: 180%; letter-spacing: 0.05em;font-family: 'Noto-Sans-JP-Medium'; display: block; margin: 0 auto; padding: 15px 0 17px; border-radius: 100px; text-align: center; border: 1px solid #000; transition: 0.5s;}

.btns .submit_btn .btn.thumb-hover{ background: #000; color: #fff; border: 1px solid #fff; transition: 0.5s;}
.btns .back_btn a.thumb-hover{background: #000; color: #C4C4C4; border: 1px solid #C4C4C4; transition: 0.5s;}
/* ------------------------------------------------------------ contact */
#contact { margin: 0 auto; padding: 80px 0 15px; background: none; }


#contact .intro { text-align: center; line-height: 2; margin: 0 auto 30px;}

#contact .caution {	font-size: 14px; text-align: center; margin: 0 0 25px;}
#contact .form_box { width: 900px; margin: 0 auto;}
#contact .form_box .box{padding: 20px 0 0;}
#contact .form_box .flex div{width: 440px ;height: auto;}
#contact .form_box .flex div:not(:last-child){margin: 0 20px 0 0}
#contact .form_box .box input{padding: 21px 22px 22px; line-height: 160%; width: 100%; margin: 10px 0 0; border: 1px solid #D0D0D0;}
#contact .form_box .box label{font-size: 17px;font-family: 'Noto-Sans-JP-Medium'; letter-spacing: 0.05em;line-height: 189%;}
#contact .form_box .box textarea{width: 100%;; height: 312px;margin: 10px 0 0;padding: 21px 22px 22px;line-height: 160%;  border: 1px solid #D0D0D0;}
#contact .btns {padding: 54px 0 0;}

h3.title{font-size: 60px;font-family: 'Noto-Sans-JP-Medium'; text-align: center; line-height: 160%;}
p.caution{ font-size: 20px; text-align: center; padding: 40px 0 0; line-height: 160%;}
/* ------------------------------------------------------------ .line_box ------------------------------------------------------------ */
#contact .line_box{padding: 130px 0 0;}
#contact .line_box a{display: block;}
#contact .line_box a:last-child{margin: 0 0 0 38px}

/* ------------------------------------------------------------ error */
#error {padding: 80px 0 0px;}
#error .alert { margin: 50px 0 0;}
#error .alert span { display: block; text-align: center; line-height: 160%;}
#error .alert span:not(:last-child){margin: 0 0 20px;}
#error .btns { padding: 54px 0 0;}


/* ------------------------------------------------------------ confirm */
#confirm {padding: 80px 0 0px;}
#confirm form{width: 900px; margin: 0 auto; padding: 40px 0 0;}
#confirm table { width: 100%;}
#confirm table tr {	border-bottom: solid 1px #e5e5e5;}
#confirm table tr:first-of-type { border-top: solid 1px #e5e5e5;}
#confirm table tr th { width: 250px; line-height: 160%; font-weight: bold; text-align: left; padding: 20px 20px; font-size: 18px;}
#confirm table tr td { line-height: 160%; padding: 20px 0;}
#confirm .btns { display: flex; justify-content: center;padding: 54px 0 0;}
#confirm .btns .submit_btn { margin: 0 0 0 20px;}
#confirm .btns .back_btn { }
#confirm .btns .back_btn a { display: inline-block;}


/* ------------------------------------------------------------ thanks */
#thanks { margin: 80px 0 0; }
#thanks p.caution{ font-size: 26px; }

#thanks small { display: block; font-size: 16px; text-align: center; line-height: 200%; margin: 40px 0 0; }
#thanks .top_btn{padding: 54px 0 0;}
#thanks .top_btn a { background: #C4C4C4; color: #000; width: 265px; line-height: 180%; letter-spacing: 0.05em;font-family: 'Noto-Sans-JP-Medium'; display: block; margin: 0 auto; padding: 15px 0 17px; border-radius: 100px; text-align: center; border: 1px solid #000; transition: 0.5s;}
#thanks .top_btn a.thumb-hover{background: #000; color: #C4C4C4; border: 1px solid #C4C4C4; transition: 0.5s;}




/* ------------------------------------------------------------ mobile */

@media only screen and (max-width:768px) {
	
	/* ------------------------------------------------------------ 共通 */
	.btns .submit_btn .btn{ width: 80%; padding: 15px 0 17px;}
	.btns .back_btn a { width: 80%; padding: 15px 0 17px;}
	
	/* ------------------------------------------------------------ contact */
	#contact { padding: 40px 0 0; }
	
	#contact .intro { margin: 0 auto 20px; text-align: left;}
	
	#contact .caution {	font-size: 14px; margin: 0 0 25px; text-align: left;}
	#contact .form_box { width: 100%; margin: 0 auto 20px;}
	#contact .form_box .box{padding: 16px 0 0;}
	#contact .form_box .flex{flex-direction: row;}
	#contact .form_box .flex div{width: 100% ;height: auto;}
	#contact .form_box .flex div:not(:last-child){margin: 0 10px 0 0}
	#contact .form_box .box input{padding: 11px; margin: 5px 0 0; font-size: 14px;}
	#contact .form_box .box label{font-size: 16px; line-height: 160%;}
	#contact .form_box .box textarea{margin: 5px 0 0;padding: 11px; height: 314px;}
	#contact .btns {padding: 50px 0 0;}
	
	h3.title{font-size: 30px;}
	p.caution{ font-size: 16px; padding: 20px 0 0;}
	/* ------------------------------------------------------------ .line_box ------------------------------------------------------------ */
	#contact .line_box{padding: 50px 0 0;}
	#contact .line_box a:last-child{margin: 20px 0 0}
	
	/* ------------------------------------------------------------ error */
	#error {padding: 40px 0 0px;}
	#error .alert { margin: 30px 0 0;}
	#error .alert span { display: block; text-align: center; line-height: 160%; font-size: 12px;}
	#error .alert span:not(:last-child){margin: 0 0 12px;}
	#error .btns { padding: 50px 0 0;}	
	/* ------------------------------------------------------------ confirm */
	#confirm {padding: 40px 0 0px;}
	#confirm form{width: 100%; margin: 0 auto; padding: 30px 0 0;}
	#confirm table { width: 100%;}
	#confirm table tr th { width: 150px; padding: 15px 10px; font-size: 14px;}
	#confirm table tr td {  padding: 20px 0;font-size: 12px;}
	#confirm .btns { padding: 50px 0 0;}
	#confirm .btns .back_btn {width: 50%;}
	#confirm .btns .submit_btn { margin: 0 0 0 10px; width: 50%;}
	#confirm .btns a { width: 100%;}
	#confirm .btns .submit_btn .btn {width: 100%; }
	
	/* ------------------------------------------------------------ thanks */
	#thanks { margin: 40px 0 0; }
	#thanks p.caution{ font-size: 16px; }
	
	#thanks small { font-size: 13px; margin: 20px 0 0; }
	#thanks .top_btn{padding: 50px 0 0;}
	#thanks .top_btn a { width: 80%; padding: 15px 0 17px; }
	
	
}