@charset "UTF-8";
/*=============================================================
 login 新規会員登録
=============================================================*/
/*! mainimg
------------------------------------------------ */
#contactArea { overflow: hidden; padding: 45px 0; }
#contactArea .read { padding: 30px 0; }
#contactArea .read a { color: #13449d; text-decoration: underline; }
#contactArea .red { color: #d82a34; }
#contactArea .formtbl .must { display: inline-block; position: absolute; top: 15px; right: 15px; box-sizing: border-box; width: 45px; line-height: 2; background-color: #d82a34; color: #fff; font-size: 1.0rem; text-align: center; }
#contactArea .formtbl table { border-top: 1px solid #dfdede; }
#contactArea .formtbl table th , #contactArea .formtbl table td { box-sizing: border-box; }
@media (max-width: 639px), print { #contactArea .formtbl table th , #contactArea .formtbl table td { display: block; } }
#contactArea .formtbl table th { position: relative; padding: 15px 15px 12px; font-weight: bold; font-size: 1.5rem; }
#contactArea .formtbl table th .stxt { display: inline-block; margin-left: 9px; color: #c9c7c7; font-size: 10px; vertical-align: middle; }
#contactArea .formtbl table td { padding: 0 15px 15px; border-bottom: 1px solid #dfdede; }
#contactArea .formtbl table td .txt { font-size: 1.3rem; }
#contactArea .formtbl table td .txt + .txt { margin-top: 1em; }
#contactArea .formtbl table input[type="text"] , #contactArea .formtbl table input[type="email"] , #contactArea .formtbl table input[type="tel"] , #contactArea .formtbl table select , #contactArea .formtbl table textarea ,#contactArea .formtbl table input[type="password"]{ box-sizing: border-box; width: 100%; padding: 8px; background-color: #f6f6f6; }
#contactArea .formtbl table textarea { height: 250px; }
#contactArea .formtbl table .zip { margin-bottom: 10px; }
#contactArea .formtbl table .zip input[type="text"] { width: 165px; }
#contactArea .formtbl table .zip .zipMark { display: inline-block; padding: 0 10px 6px 0; }
#contactArea .formtbl table .pref { margin-bottom: 15px; }
#contactArea .formtbl table .address01 { margin-bottom: 15px; }
#contactArea .formtbl table .label .wpcf7-list-item { display: block; margin: 0; }
#contactArea .formtbl table .label .wpcf7-list-item label input { vertical-align: middle; }
#contactArea .formtbl .privacy { margin-top: 20px; margin-bottom: 20px; background: #f6f6f6; }
#contactArea .formtbl .privacy .acceptance { padding-top: 5px; }
#contactArea .formtbl .privacy .acceptance .must { position: static; margin-right: 20px; }
#contactArea .formtbl .privacy .acceptance input { margin-right: 5px; vertical-align: middle; }
#contactArea .formtbl .privacy .acceptance a { color: #13449d; text-decoration: underline; }

#contactArea .formtbl .privacy .th {
	position: relative; padding: 15px 15px 12px; font-weight: bold; font-size: 1.5rem;}
#contactArea .formtbl .privacy .th .stxt { display: inline-block; margin-left: 9px; color: #c9c7c7; font-size: 10px; vertical-align: middle; }
#contactArea .formtbl .privacy .td { padding: 0 15px 15px; }
#contactArea .formtbl .privacy .tit {
	margin-top: 1em;
	font-weight: bold;
	margin-bottom: 5px;
}
#contactArea .formtbl .privacy .box {
	background: #fff;
	border: 1px solid #dfdede;
}
#contactArea .formtbl .privacy .boxtit{
	position: relative;
	padding: 10px 15px;
}
#contactArea .formtbl .privacy .boxtit:before,#contactArea .formtbl .privacy .boxtit:after{
	content: '';
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translate(0,-50%);
	width: 16px;
	height: 2px;
	background: #aeaeb0;
	transition: all .3s;
}
#contactArea .formtbl .privacy .boxtit:after {
	transform: translate(0,-50%) rotate(90deg);
}
#contactArea .formtbl .privacy .boxtit.on:after {
	transform: translate(0,-50%) rotate(0);
}
#contactArea .formtbl .privacy .content-toggle {
	display: none;
	padding: 10px 15px;
	border-top: 1px solid #dfdede;
}
#contactArea .formtbl .privacy a {
	color: #13449d;
	text-decoration: underline;
}
#contactArea .formtbl .privacy .boxtxt + .boxtxt{
	margin-top: 1em;
}
#contactArea .formtbl .error span {
	position: relative;
	display: inline-block;
	margin-top: 5px;
	padding: 4px 15px;
	background: #13449d;
	color: #fff;
}
#contactArea .formtbl .error span:before {
	content: '';
	position: absolute;
	top: -19px;
	left: 20px;
	border: 10px solid transparent;
	border-bottom-color: #13449d;
}
#contactArea .formtbl .error02 {
	color: #d82a34;
}
#contactArea .formtbl .formSetInput {
	position: relative;
	display: block;
}
#contactArea .formtbl .formSetInput br {
	display: none;
}
#contactArea .formtbl table .formSetInput input {
	padding-right: 35px;
}
#contactArea .formtbl .formSetInput .fa {
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translate(0,-50%);
	cursor: pointer;
}



#contactArea .formtbl .btns input,#contactArea .formtbl .btns button { display: block; width: 290px; margin: 0 auto 10px; padding: 12px 0; border-radius: 25px; background-color: #d82a34; color: #fff; font-size: 1.5rem; text-align: center; -webkit-appearance: none; -moz-appearance: none; appearance: none; border: 0; font-family: inherit; font-weight: bold; }
#contactArea .formtbl .btns input.back,#contactArea .formtbl .btns button.back { background-color: #ccc; }
@media (min-width: 640px), print { #contactArea { padding: 70px 0 100px; font-size: 1.5rem; }
	#contactArea .read { padding: 40px 0 20px; }
	#contactArea .read a:hover { text-decoration: none; }
	#contactArea .formtbl { width: 1000px; margin: 0 auto; }
	#contactArea .formtbl .must { top: 35px; right: 40px; line-height: 1.8; font-size: 1.2rem; }
	#contactArea .formtbl table th { width: 320px; padding: 25px 0; border-bottom: 1px solid #dfdede; font-size: 1.6rem; }
	#contactArea .formtbl table th .stxt { display: block; line-height: 1.2; margin-left: 0; font-size: 13px; }
	#contactArea .formtbl table td { padding: 25px 0; vertical-align: middle; }
	#contactArea .formtbl table textarea { height: 240px; }
	#contactArea .formtbl table select { width: 230px; }
	#contactArea .formtbl table .zip input[type="text"] { width: 210px; }
	#contactArea .formtbl table .pref { margin-bottom: 10px; }
	#contactArea .formtbl table .address01 , #contactArea .formtbl table .address02 { display: table; width: 100%; margin-bottom: 10px; }
	#contactArea .formtbl table .address01 p , #contactArea .formtbl table .address02 p { display: table-cell; vertical-align: middle; }
	#contactArea .formtbl table .address01 p.txt , #contactArea .formtbl table .address02 p.txt { width: 160px; }
	#contactArea .formtbl table .address02 { margin-bottom: 0; }
	#contactArea .formtbl table .label .wpcf7-list-item { display: inline-block; width: 170px; }
	#contactArea .formtbl table .label .wpcf7-list-item:nth-child(3n+2) { width: 325px; }
	#contactArea .formtbl table .label .wpcf7-list-item label { display: inline-block; width: 100%; }
	#contactArea .formtbl table .label .wpcf7-list-item label input { vertical-align: middle; }
	#contactArea .formtbl .privacy { margin-top: 25px; margin-bottom: 25px; display: table; }
	#contactArea .formtbl .privacy .acceptance { padding: 20px 20px 0 0; }
	#contactArea .formtbl .privacy .acceptance .must { margin-right: 40px; vertical-align: middle; }
	#contactArea .formtbl .privacy .acceptance input { margin-right: 10px; }
	#contactArea .formtbl .privacy .acceptance a:hover { text-decoration: none; }
	#contactArea .formtbl .btns { text-align: center; }
	#contactArea .formtbl .btns input,#contactArea .formtbl .btns button { display: inline-block; width: 360px; margin: 10px 20px; padding: 12px 0; border-radius: 30px; font-size: 2.0rem; cursor: pointer; transition: all .3s ease 0s; }
	#contactArea .formtbl .btns input:not([disabled]):hover,#contactArea .formtbl .btns button:not([disabled]):hover { background: #ba0e16; }
	#contactArea .formtbl .btns input[disabled],#contactArea .formtbl .btns button[disabled] { opacity: .7; cursor: default; }
	#contactArea .formtbl .btns input.back:hover,#contactArea .formtbl .btns button.back:hover { background: #aaa; }
	#contactArea .formtbl .privacy .th {
		display: table-cell; vertical-align: top; width: 320px; padding: 25px 7px; border-bottom: 1px solid #dfdede; font-size: 1.6rem; box-sizing: border-box; }
	#contactArea .formtbl .privacy .th .stxt { display: block; line-height: 1.2; margin-left: 0; font-size: 13px; }
	#contactArea .formtbl .privacy .th .must {
		top: 30px;
	}
	#contactArea .formtbl .privacy .td { display: table-cell; padding: 25px 20px 25px 0; vertical-align: middle; }
	#contactArea .formtbl .privacy .boxtit{
		padding: 15px 20px;
	}
	#contactArea .formtbl .privacy .tit-toggle {
		cursor: pointer;
	}
	#contactArea .formtbl .privacy .boxtit:before,#contactArea .formtbl .privacy .boxtit:after{
		width: 12px;
	}
	#contactArea .formtbl .privacy .content-toggle {
		padding: 15px 20px;
	}
	#contactArea .formtbl .privacy a:hover {
		text-decoration: none;
	}
}
