@charset "UTF-8";
.input_box { width: 90%; padding: 5px; background-color: #fff; border: solid 1px #000; margin: 0 10px 0 0; overflow: hidden; }

.input_box_s { width: 30%; padding: 5px; background-color: #fff; border: solid 1px #000; margin: 0 10px 0 0; overflow: hidden; }

#submit_btn { text-align: center; margin-bottom: 60px; }
#submit_btn .submit { margin: 0 auto; padding: 10px 40px; position: relative; overflow: hidden; text-decoration: none; display: inline-block; text-align: center; outline: none; transition: ease .2s; background-color: #0099FF; color: #fff; }
#submit_btn .submit:hover { color: #000; background-color: #fff; border: solid 3px #0099FF; transition: all 0.2s; }
#submit_btn .reset { margin: 0 auto; padding: 10px 40px; position: relative; overflow: hidden; text-decoration: none; display: inline-block; text-align: center; outline: none; transition: ease .2s; background-color: #666; color: #fff; }
#submit_btn .reset:hover { color: #000; background-color: #fff; border: solid 3px #666; transition: all 0.2s; }

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

.checkbox { box-sizing: border-box; cursor: pointer; display: inline-block; padding: 5px 30px; position: relative; width: auto; }

.checkbox::before { background: #fff; border: solid 1px #000; content: ''; display: block; width: 16px; height: 16px; left: 5px; margin-top: -8px; position: absolute; top: 50%; }

.checkbox::after { border-right: 3px solid #214492; border-bottom: 3px solid #214492; content: ''; display: block; width: 7px; height: 9px; left: 10px; margin-top: -5px; opacity: 0; position: absolute; top: 50%; transform: rotate(45deg); }

input[type=checkbox]:checked + .checkbox::after { opacity: 1; }

/* ラジオボタン01 */
input[type=radio] { display: none; }

.radio01 { width: 100%; height: auto; box-sizing: border-box; cursor: pointer; display: inline-block; padding: 5px 30px; position: relative; }

.radio01::before { background: #fff; border: 1px solid #000; border-radius: 50%; content: ''; display: block; width: 16px; height: 16px; left: 5px; margin-top: -8px; position: absolute; top: 50%; }

.radio01::after { background: #66CC99; border-radius: 50%; content: ''; display: block; width: 10px; height: 10px; left: 8px; margin-top: -5px; opacity: 0; position: absolute; top: 50%; }

input[type=radio]:checked + .radio01::after { opacity: 1; }

.error { text-align: center; font-size: 1.6rem; margin: 40px 0; color: #ff0000; }

.error_messe { text-align: center; font-size: 1.4rem; margin-bottom: 20px; color: #ff0000; }

@media screen and (max-width: 428px) { body { font-size: 1.0rem; }
  .error { text-align: center; font-size: 1.2rem; margin: 40px 0; color: #ff0000; }
  .error_messe { text-align: center; font-size: 1.0rem; margin-bottom: 10px; color: #ff0000; } }
