*{
    box-sizing: border-box;
}
#corner2.loading{
    position:relative;
}
#corner2.loading:before{
    content:"";
    display:block;
    width:100%;
    height:100%;
    background-color:#fff;
    opacity:0.7;
    position:absolute;
    left:0;
    top:0;
    z-index:5;
}
#spform{
    padding-top:5px;
    position:relative;
}
#spform p{
    width:100%;
}

/*共通parts*/
#spform .spform_wrap{
    margin-bottom:35px;
}
#spform .spform_wrap_last{
    margin-bottom:0px;
}
#spform .spform_heading{
    margin:0;
    padding:0;
    margin-bottom:5px;
    font-size:14px;
    color:#333;
    font-weight:bold;
}
#spform .spform_heading:after{
    content:"：";
}
#spform .spform_heading img{
    vertical-align: middle;
    margin-left:5px;
}


/*ボタン上の矢印*/
#spform .spform_arrow{
    text-align:center;
    margin:10px 0;
    width:100%;
}


/*type='text'*/
#spform input[type='text']{
    display:block;
    width:100%;
    height: 45px;
    padding:10px;
    border-radius:5px;
    border: 1px solid #ff9b80;
    background-color: #fff;
    color: #000000;
    box-shadow: inset 0px 1px 4px rgb(0 0 0 / 20%);
}
#spform input[type='text']:focus{
    box-shadow: inset 0px 0px 5px #f00;
}


/*select*/
#spform select{
    display:block;
    width:100%;
    height:40px;
    text-align:center;
    border: 1px solid #6C0;
    color: #000;
    background: #CF6;
    border-radius:5px;
    box-shadow: 0px 1px 4px rgb(0 0 0 / 30%);
    cursor:pointer;
}
#spform select:hover{
    border: 1px solid #6C0;
    color: #fff;
    background: #6C3;
}


/*textarea*/
#spform textarea{
    display:block;
    width:100%;
    height:150px;
    padding:0.4em;
    border-radius:5px;
    border: 1px solid #ff9b80;
    background-color: #fff;
    color: #000000;
    box-shadow: inset 0px 1px 4px rgb(0 0 0 / 20%);
}
#spform textarea:focus{
    box-shadow: inset 0px 0px 5px #f00;
}


/*checkbox*/
.spform_checkbox_label{
    display:block;
    position:relative;
    width:100%;
    height:40px;
    line-height:40px;
    padding-left:40px;
    border: 1px solid #6C0;
    color: #000;
    background: #CF6;
    border-radius:5px;
    text-align: left;
    cursor:pointer;
}
.spform_checkbox_label input[type='checkbox']{
    position:absolute;
    left:20px;
    top:50%;
    width:auto;
    transform:translate(-50%, -50%);
    -webkit-transform:translate(-50%, -50%);
    -moz-transform:translate(-50%, -50%);
    margin:0;
    cursor:pointer;
}
.spform_checkbox_label:hover{
    border: 1px solid #6C0;
    color: #fff;
    background: #6C3;
}


/*送信ボタン*/
#spform .formSubmitWrap{
    text-align:center;
    padding:5px;
    box-sizing: border-box;
}
#spform .formSubmitWrap a{
    display:inline-block;
    font-size: 16px;
    padding: 0.6em 20px 0.6em 40px;
    min-width: 0.75em;
    position: relative;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    border: 1px solid #6C0;
    background: #CF6;
    color: #000;
    border-radius: 1em;
    min-width: 0.75em;
    line-height: 1.5;
    box-shadow: 0px 1px 4px rgb(0 0 0 / 30%);
    text-decoration:none;
}
#spform .formSubmitWrap a:before{
    content:"";
    position:absolute;
    left:13px;
    top:50%;
    transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    border-radius:50%;
    background-color:#999;
    width:17px;
    height:17px;
}
#spform .formSubmitWrap a:after{
    content:"";
    position:absolute;
    left:13px;
    top:50%;
    transform: translate(35%, -50%) rotateZ(45deg);
    -webkit-transform: translate(35%, -50%) rotateZ(45deg);
    -moz-transform: translate(35%, -50%) rotateZ(45deg);
    border:2px solid #fff;
    border-left-color:transparent;
    border-bottom-color:transparent;
    width:8px;
    height:8px;
    border-radius:2px;
    box-sizing: border-box;
}

#spform .formSubmitWrap a:hover{
    border: 1px solid #6C0;
    background: #6C3;
    color: #fff;
}



/*エラークラス*/
#spform .spform_wrap.spform_error .spform_heading{
    color:#f00;
}
#spform .spform_wrap .spform_error_text{
    color:#f00;
}
#spform .spform_wrap .spform_error_text:before{
    content:"※ ";
}


/*確認リスト*/
#form .form_confirm_list li{
    padding:15px;
    border-bottom:1px solid #ddd;
    text-align:left;
}
#form .form_confirm_list li:last-child{
    border:none;
}
#form .form_confirm_list li p{
    font-weight:bold;
    color:#333;
    font-size:14px;
    margin:0;
    margin-bottom:10px;
    padding:0;
}
#form .form_confirm_list li div{
    color:#333;
    font-size:16px;
    line-height:1.3;
}

#form .form_confirm_button_wrap{
    margin-top:20px;
    padding-bottom:20px;
}
#form .form_confirm_button_wrap div{
    text-align:center;
}
#form .form_confirm_button_wrap div:first-child{
    margin-bottom:20px;
}
#form .form_confirm_button_wrap a{
    display:inline-block;
    width:100%;
    max-width:300px;
    height:45px;
    font-weight:bold;
	border-radius:4px;
	height:45px;
	line-height:41px;
	text-align:center;
    text-decoration:none;
}
#form .form_confirm_button_wrap a.form_confirm_button_send{
    background-color:#2ecc71;
    border:1px solid #1abc9c;
	border-right:1px solid #16a085;
	border-bottom:4px solid #16a085;
	color:#fff;
}
#form .form_confirm_button_wrap a.form_confirm_button_send:hover{
    background-color:#16a085;
}
#form .form_confirm_button_wrap a.form_confirm_button_fix{
    background-color:#efefef;
    border:1px solid #aaa;
	border-right:1px solid #777;
	border-bottom:4px solid #777;
    color:#666;
}
#form .form_confirm_button_wrap a.form_confirm_button_fix:hover{
    background-color:#777;
	color:#fff;
}