
.searchContactOuter .title {
	margin-bottom: 20px;
	padding: 20px 0;
	color: #209eff;
	font-size: 122%;
	border-top: 1px solid #999;
	border-bottom: 1px solid #999;
}
.searchContactOuter input[type=text] {
	padding: 5px 10px;
	font-size: 16px;
	width:100%;
	border: none;
	border-radius: 3px;
	background: #ddf0ff;
}
.searchContactOuter input[name=btn_confirm],
.searchContactOuter input[name=btn_submit],
.searchContactOuter input[name=btn_back] {
	margin-top: 10px;
    padding: 10px 10px;
	font-size: 16px;
	color: #fff;
	cursor: pointer;
	border: none;
	border-radius: 3px;
	box-shadow: 0 3px 0 #2887d1;
	background: #4eaaf1;
    display: block;
    margin: 0 auto;
    width: 100%;
    max-width: 450px;
}
.searchContactOuter input[name=btn_back] {
	margin-bottom: 20px;
	box-shadow: 0 3px 0 #777;
	background: #999;
}
.searchContactOuter .element_wrap {
	margin-bottom: 10px;
	padding: 10px 0;
	border-bottom: 1px solid #ccc;
	text-align: left;
}
.searchContactOuter label {
	display: block;
	margin-bottom: 10px;
	font-weight: bold;
	width: 100%;
	vertical-align: top;
}

.searchContactOuter .element_wrap h3{
position:relative;
    border-left: 3px solid #999;
    font-size: 1em;
    padding: 0px 5px;
}


.searchContactOuter .element_wrap p {
	display: inline-block;
	margin:  0;
	text-align: left;
}
.searchContactOuter label[for=belong_01],
.searchContactOuter label[for=belong_02],
.searchContactOuter label[for=belong_03],
.searchContactOuter label[for=belong_04],
.searchContactOuter label[for=address_01],
.searchContactOuter label[for=address_02],
.searchContactOuter label[for=address_03],
.searchContactOuter label[for=address_04],
.searchContactOuter label[for=address_05],
.searchContactOuter label[for=gender_male],
.searchContactOuter label[for=gender_female]{
	margin-right: 0px;
	width: auto;
	font-weight: normal;
	width:100%;
    background-color: #ddf0ff;
    text-align: center;
    border-radius: 5px;
    padding: 10px;
    position:relative;
    transition: all 0.2s linear;
}

.searchContactOuter #belong_01,
.searchContactOuter #belong_02,
.searchContactOuter #belong_03,
.searchContactOuter #belong_04,
.searchContactOuter #address_01,
.searchContactOuter #address_02,
.searchContactOuter #address_03,
.searchContactOuter #address_04,
.searchContactOuter #address_05,
.searchContactOuter #gender_male,
.searchContactOuter #gender_female,
.searchContactOuter #agreement{
display:none;
}


.searchContactOuter .element_wrap input:checked + label{
    background-color: #00B66E;
    color: white;
}


.searchContactOuter .choice,
.searchContactOuter .choice2,
.searchContactOuter .choice3{
text-align:center;
}
.searchContactOuter .choice h3,
.searchContactOuter .choice2 h3,
.searchContactOuter .choice3 h3{
text-align:left;
}
.searchContactOuter .choice ul,
.searchContactOuter .choice2 ul,
.searchContactOuter .choice3 ul{
    display: flex;
    flex-wrap: wrap;
list-style:none;
    margin: 0 -5px;
padding:0;
}
.searchContactOuter .choice li{
width:calc(100% / 2);
padding:5px;
}
.searchContactOuter .choice2 li{
width:calc(100% / 2);
padding:5px;
    margin: 0 0 -10px;
}
.searchContactOuter .choice3 li{
width:calc(100% / 1);
padding:5px;
    margin: 0 0 -10px;
}
@media only screen and (max-width: 568px) {
.searchContactOuter .choice2 li{
    width:calc(100% / 1);
}
}

.searchContactOuter select{
    width: 100%;
    background-color: #ddf0ff;
    padding: 5px 10px;
    border: none;
    border-radius: 3px;
    background: #ddf0ff;
    font-size: 1.1em;
}


.searchContactOuter label[for=agreement] {
	width: auto;
	font-weight: normal;
    background-color: #ddf0ff;
    text-align: center;
    border-radius: 5px;
    padding: 10px 10px 10px 40px;
    position:relative;
    transition: all 0.2s linear;
}





.searchContactOuter label[for=belong_01]:hover,
.searchContactOuter label[for=belong_02]:hover,
.searchContactOuter label[for=belong_03]:hover,
.searchContactOuter label[for=belong_04]:hover,
.searchContactOuter label[for=address_01]:hover,
.searchContactOuter label[for=address_02]:hover,
.searchContactOuter label[for=address_03]:hover,
.searchContactOuter label[for=address_04]:hover,
.searchContactOuter label[for=address_05]:hover,
.searchContactOuter label[for=gender_male]:hover,
.searchContactOuter label[for=gender_female]:hover,
.searchContactOuter label[for=agreement]:hover {
    background-color: #00B66E;
    color: white;
}




.searchContactOuter .choice label::before,
.searchContactOuter .choice2 label::before,
.searchContactOuter .choice3 label::before {
    font-family: "Font Awesome 5 free";
    content: "\f0c8";    
    font-weight:bold;
    position: absolute;
    left: 10px;
    display: block;
    color:#fff;
    z-index:5;
    font-size: 1.5em;
    top: 50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
}
.searchContactOuter .choice label::after,
.searchContactOuter .choice2 label::after,
.searchContactOuter .choice3 label::after {
    font-family: "Font Awesome 5 free";
    content: "\f00c";    
    font-weight:bold;
    position: absolute;
    left: 12px;
    display: block;
    color:#ddf0ff;
    z-index:10;
    top: 50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
}


/*
.choice input[type="checkbox"]:checked + label {
    color: #ed6103;
}
*/

.searchContactOuter .choice input[type="radio"]:checked + label::after ,
.searchContactOuter .choice2 input[type="radio"]:checked + label::after ,
.searchContactOuter .choice3 input[type="radio"]:checked + label::after ,
.searchContactOuter .choice input[type="checkbox"]:checked + label::after {
    color: #ed6103;
}


.searchContactOuter textarea[name=genre] ,
.searchContactOuter textarea[name=contact] {
	padding: 5px 10px;
	width: 100%;
	height: 100px;
	font-size: 16px;
	border: none;
	border-radius: 3px;
	background: #ddf0ff;
}
.searchContactOuter .error_list {
	padding: 10px 30px;
	color: #ff2e5a;
	font-size: 86%;
	text-align: left;
	border: 1px solid #ff2e5a;
	border-radius: 5px;
}


/**/
.searchContactOuter .formError.inline {
    display: block!important;
}
.searchContactOuter .formError .formErrorContent {
    background: #ff735b!important;
    font-size: 14px!important;
}


.searchContactOuter .birthday{}
.searchContactOuter .birthday ul{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin:0;
}
.searchContactOuter .birthday ul li{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.searchContactOuter .birthday ul li:nth-child(1){width:calc(40%);}
.searchContactOuter .birthday ul li:nth-child(2){width:calc(30%);}
.searchContactOuter .birthday ul li:nth-child(3){width:calc(30%);}
.searchContactOuter .birthday ul li select{
    width:calc(100% - 1.5em);
}
.searchContactOuter .birthday ul li span{
     width:1.5em;
}


.need {
    color: #ea4444;
    font-size: 12px;
    display: inline-block;
    padding: 2px 5px 3px 5px;
    margin: 0 0 0 0px;
    border-radius: 3px;
    font-weight: bold;
}
.finishComment{
    font-size: 14px;
    margin: 30px 0;
    line-height: 2em;
}