@charset "UTF-8";

#form_wrap {
	width:100%;
}

/* --- form --- */

.form_list {
	margin:0 auto 50px;
}

.form_list dt,
.form_list dd {
	position:relative;
}

.form_list dt {
	width:28%;
	padding:40px 1em 40px 0;
	font-size:1.8rem;
	line-height:2;
	font-weight:700;
}


.form_list dd {
	width:72%;
	padding:28px 0 40px;
}


/* スマホ時の装飾を削除 */
input[type="text"],
input[type="email"],
input[type="number"],
button,
input[type="submit"],
textarea  {
	border-radius: 0;
	border:none;
	-webkit-appearance: none;
}

input:focus {
	outline:none;
}


input[type="text"],
input[type="email"],
input[type="number"] {
	background:#fff;
	width:100%;
	font-size:1.8rem;
	line-height:2;
	height: 3.75em;
	padding:0.5em 0 0.5em 0;
	border-radius: 0px;
	border-bottom:1px solid #b7b7b7;
}

@-moz-document url-prefix() {
  /* Firefoxのみに適用 */
input[type="text"],
input[type="email"],
input[type="number"] {
	padding:0.65em 0em 0.65em;
}
}


/* radio checkbox */

.radio_check {
	display: block;
}

.form_list dd .radio_check:not(:last-of-type) {
	margin-bottom:0.5em;
	line-height:1.5;
}



input[type="radio"],
input[type="checkbox"] {
    display: none;
}

input[type="radio"] + span,
input[type="checkbox"] + span {
    padding-left: 1.75em;
    position: relative;
	font-size:1.8rem;
}


input[type="checkbox"] + span::before,
input[type="radio"] + span::before {
	content: "";
    display: block;
    width: 20px;
    height: 20px;
	/* border: 1px solid #e4e4e4; */
	background:#fff;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
	border-radius:0px;
	border:1px solid #b7b7b7;
	box-sizing: border-box;
}


.privacy_check_wrap {
	text-align: center;
}

.privacy_check a {
	text-decoration: underline;
}

.privacy_check a:hover {
	text-decoration: none;
}

/*
.privacy_check input[type="checkbox"]:checked + span::before {
	content: "";
	background:#C22424;
	border: 1px solid #C22424;
}
*/


input[type="checkbox"]:checked + span::after,
input[type="radio"]:checked + span::after {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    background: #C22424;
    position: absolute;
    top: 0;
    left: 4px;
    bottom: 0;
    margin: auto 0;
	border-radius:0px;
	box-sizing: border-box;
}




/* textarea */

textarea {
	resize: vertical;
	background:#fff;
	width:100%;
	font-size:1.8rem;
	line-height:2;
	height:400px;
    overflow: auto;
    padding: 1em;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
	border-radius: 0px;
	border:1px solid #b7b7b7;
	margin-top:20px;
}

/* submit */

.submit_wrap {
	margin:3em 0 0 0;
}

.submit_wrap button {
	margin:0 auto;
	padding:0;
}

/* req */

.req {
	position:relative;
	display: inline-block;
	width:50px;
	height:22px;
	line-height:22px;
	font-size:1.2rem;
	color:#fff;
	text-align: center;
	font-weight:500;
	background:#b7193f;
	border-radius: 11px;
	margin-left:1.5em;
}


input::placeholder,
textarea::placeholder {
  color: #b7b7b7;
  font-size:1.8rem;
  line-height:2;
  font-weight:500;
}

/* IE */
input:-ms-input-placeholder,
textarea:-ms-textarea-placeholder {
	color: #b7b7b7;
	font-size:1.8rem;
	line-height:2;
	font-weight:500;
}

/* Edge */
input::-ms-input-placeholder,
textarea::-ms-textarea-placeholder {
	color: #b7b7b7;
	font-size:1.8rem;
	line-height:2;
	font-weight:500;
}


/* --- ver. smart phone --- */

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

	#form_wrap {
		max-width:100%;
	}


	.form_list dt,
	.form_list dd,
	input[type="text"],
	input[type="email"],
	input[type="number"],
	.radio_wrap {
		width:100%;
	}

	/* font 16 - 25 */
 	.form_list dt,
	.form_list dd,
	input[type="text"],
	input[type="email"],
	input[type="number"],
	.form_list select,
	.submit_wrap button,
	textarea,
	.req::before,
	input[type="radio"] + span,
	input[type="checkbox"] + span,
	input[type="radio"] + span::before,
	input[type="radio"]:checked + span::after,
	input[type="checkbox"] + span::before,
	input[type="checkbox"]:checked + span::after,
	.req::after,
	.radio_wrap label span {
        font-size:1.4rem;
    }

	input[type="checkbox"] + span::before,
	input[type="checkbox"] + span::after {
		border-radius:0vw;
	}

	/* textarea */
	textarea {
		font-size:1.4rem;
		height:55vw;
		margin-top:2.5vw;
	}

	.form_list {
		margin:0vw auto 7.5vw;
	}

	.form_list dt {
		width:100%;
		padding:5vw 0 0 0;
		border-bottom:0;
		font-size:1.6rem;
	}

	.form_list dt:first-of-type {
		padding-top:0;
	}

	.form_list dd {
		position:relative;
		padding:2.5vw 0 5vw 0;
		width:100%;
		font-size:1.4rem;
	}


input[type="checkbox"] + span::before,
input[type="radio"] + span::before {
	width:5vw;
	height:5vw;
}

input[type="checkbox"]:checked + span::after,
input[type="radio"]:checked + span::after {
	width:3vw;
	height:3vw;
	left:1vw;
}


input::placeholder,
textarea::placeholder {
	font-size:1.6rem;
}

/* IE */
input:-ms-input-placeholder,
textarea:-ms-textarea-placeholder {
	font-size:1.6rem;
}

/* Edge */
input::-ms-input-placeholder,
textarea::-ms-textarea-placeholder {
	font-size:1.6rem;
}



	.privacy_check p,
	.privacy_check a,
	.privacy_check input[type="checkbox"] + span::before {
		font-size:1.4rem;
	}

/* req */

.req {
	width:12.5vw;
	height:5.5vw;
	line-height:5.5vw;
	border-radius: 2.75vw;
}


}





