@charset "utf-8";

.contact_line {
	min-height: 56px;
}

.contact_line_top .contact_type {
	vertical-align: top;
	padding-top: 5px;
}
.check .contact_line_top .contact_type {
	padding-top: 18px;
}

.content_radio_list,
.content_chb_list {
	margin-bottom: -10px;
}

.content_radio,
.content_chb {
	display: inline-block;
	position: relative;
	margin-right: 38px;
	margin-bottom: 10px;
}

.content_radio input,
.content_chb input {
	position: absolute;
	left: 0;
	opacity: 0;
}

.content_radio input {
	top: 1px;
}

.content_chb input {
	top: 3px;
}

.content_radio input {
	width: 22px;
	height: 22px;
}

.content_chb input {
	width: 18px;
	height: 18px;
}

.content_radio label,
.content_chb label {
	display: inline-block;
	position: relative;
	font-size: 1.6rem;
}

.content_radio label:after,
.content_chb label:after,
.content_radio label:before,
.content_chb label:before {
	content: '';
	position: absolute;
}

.content_radio label:after,
.content_radio label:before {
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
}

.content_radio label:after {
	top: 1px;
}

.content_radio label:before {
	top: 6px;
}


.content_chb label:after,
.content_chb label:after {
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}

.content_radio label:before,
.content_chb label:before {
	display: none;
	z-index: 1;
}

.content_radio input[type='radio']:checked+label:before {
	display: block;
}

.content_radio input[type='radio'][name='sex']+label {
	font-weight: bold;
}

.content_chb input[type='checkbox']:checked+label:before {
	display: block;
}

.content_chb input[type='checkbox']:checked+label::after {
	background-color: #000;
}

.content_radio label,
.content_chb label {
	padding-left: 30px;
}

.content_radio label:after {
	width: 16px;
	height: 16px;
	border: 3px solid #b2b2b2;
	background-color: #ffffff;
	position: absolute;
	left: 0;
}

.content_radio label:before {
	left: 5px;
	width: 12px;
	height: 12px;
	background-color: #db3714;
}

.content_chb label:after {
	width: 16px;
	height: 16px;
	border: 1px solid #e0e4ec;
	position: absolute;
	left: 0;
	top: 3px;
}

.content_chb label:before {
	top: 5px;
	bottom: auto;
	left: 6px;
	width: 4px;
	height: 8px;
	border-right: 2px solid #ffffff;
	border-bottom: 2px solid #ffffff;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}

.birthdayBox {
	display: flex;
	align-items: center;
}

.birthdayBox>li {
	width: 32%;
	margin-right: 2%;
	font-size: 1.6rem;
}

.birthdayBox>li:last-of-type {
	margin-right: 0;
}

.birthdayBox>li select {
	width: calc(100% - 34px);
	height: 56px;
	margin-right: 10px;
	background-color: #f4f5fa;
	background-image: url(../img/ico_select.png);
	padding-left: 15px;
	padding-right: 35px;
	background-position: right 20px center;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border: none;
}

.birthdayBox>li span {
	width: 24px;
	font-weight: bold;
}

textarea.message {
	display: none;
	margin-top: 15px;
}

.agree {
	margin-top: 50px;
}

#submit {
	margin-top: 0;
}

pre {
	display: none;
	margin-top: 10px;
}

@media only screen and (max-width: 1024px) {}

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

	.contact_line {
		min-height: 0;
		padding-bottom: 20px;
	}

	.contact_line_top .contact_type,.check .contact_line_top .contact_type {
		padding-top: 0;
	}

	textarea.message {
		margin-top: 10px;
	}

	.agree {
		margin-top: 30px;
	}
}

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


	.contact_list{
		padding-bottom: 30px;
	}

	.content_radio_list,
	.content_chb_list {
		margin-bottom: -5px;
	}

	.content_radio,
	.content_chb {
		margin-right: 30px;
		margin-bottom: 5px;
	}

	.content_radio input {
		top: 0;
	}

	.content_chb input {
		top: 2px;
	}

	.content_radio input {
		width: 20px;
		height: 20px;
	}

	.content_chb input {
		width: 16px;
		height: 16px;
	}

	.content_radio label,
	.content_chb label {
		font-size: 1.4rem;
	}

	.content_radio label:after {
		top: 0;
	}

	.content_radio label:before {
		top: 5px;
	}


	.content_radio label,
	.content_chb label {
		padding-left: 26px;
	}

	.content_radio label:after {
		width: 16px;
		height: 16px;
		border-width: 2px;
	}

	.content_radio label:before {
		left: 5px;
		width: 10px;
		height: 10px;
	}

	.content_chb label:after {
		width: 16px;
		height: 16px;
		top: 2px;
	}

	.content_chb label:before {
		top: 4px;
	}

	.birthdayBox>li {
		width: 33%;
		margin-right: 0.33%;
		font-size: 1.4rem;
	}

	.birthdayBox>li:last-of-type {
		margin-right: 0;
	}

	.birthdayBox>li select {
		width: calc(100% - 27px);
		height: 40px;
		margin-right: 5px;
		padding-left: 10px;
		padding-right: 25px;
		background-position: right 10px center;
	}

	.birthdayBox>li span {
		width: 22px;
	}

}