@charset "utf-8";

/*-----------------------------------
フォーム設定
-----------------------------------*/
input,textarea,select{
    font-family: "游ゴシック","YuGothic","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN","メイリオ","Meiryo","sans-serif";
}
/*placeholder*/
input::-webkit-input-placeholder,
input:-ms-input-placeholder,
input::-moz-placeholder,
textarea::-webkit-input-placeholder,
textarea:-ms-input-placeholder,
textarea::-moz-placeholder {
    color: #777;
}

input[type="text"],
input[type="password"],
input[type="date"],
input[type="datetime"],
input[type="datetime-local"],
input[type="month"],
input[type="week"],
input[type="email"],
input[type="number"],
input[type="search"],
input[type="tel"],
input[type="time"],
input[type="url"],
select,
textarea{
    width:100%;
    margin: 3px;
    padding: 10px;
    background-color: #f3f3f3;
    border: solid 1px #CCC;
    border-radius: 5px;
    font-size: 1em;
}
select{
    height: 40px;
    color: #444;
}
input[type="text"]:focus,
input[type="password"]:focus,
input[type="date"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="time"]:focus,
input[type="url"]:focus,
textarea:focus{
    background-color: #FFD7D7;
    border: solid 1px #CCC;
}
input[type="text"]:disabled,
input[type="password"]:disabled,
input[type="number"]:disabled,
select:disabled,
textarea:disabled {
    background-color: #cdcdcd;
    border: 1px solid #BBB;
}
input[type="radio"],
input[type="checkbox"] {
    margin: 3px 5px 3px 3px;
    border: solid 1px #CCC;
}
input[type="submit"],
input[type="button"],
button{
    margin: 0;
    padding: 0;
    border-style: none;
    background: none;
    border-radius: 0px;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    -webkit-appearance: none;
}
input[type="submit"],
input[type="button"],
button{
    display: block;
    padding: 10px 50px 13px;
    background-color: #87bb1e;
    border-radius: 5px;
    box-shadow: 0 -3px 0 rgba(0, 0, 0, 0.2) inset;
    text-align: center;
    font-size: 1.2em;
    font-weight: bold;
    font-family: "游ゴシック","YuGothic","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN","メイリオ","Meiryo","sans-serif";
    color: #FFF;
    cursor: pointer;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}
input[type="submit"]:hover,
input[type="button"]:hover,
button:hover{
    opacity: 0.8;
}
.back input[type="submit"],
.back input[type="button"],
.back button{
    background-color: #999;
}

.error{
    margin-left: 3px;
    font-weight: bold;
    color: #FF0033;
}

/*--Large screens--*/
@media print, screen and (min-width: 768px){
    .btn {
        position: relative;
        overflow: hidden;
    }
    .btn ul {
        float: left;
        margin: 0 0 0 0;
        padding: 0;
        position: relative;
        left: 50%;
    }
    .btn ul li {
        float: left;
        position: relative;
        left: -50%;
        margin: 0 8px 5px;
    }
}
/*--Small screens--*/
@media only screen and (max-width: 767px){
    input[type="radio"],
    input[type="checkbox"] {
        margin: 0 10px 0 5px;
        -webkit-transform: scale(1.5);
        transform: scale(1.5);
    }
    .btn ul {
        margin: 0 auto;
    }
    .btn ul li{
        margin-bottom: 15px;
        text-align: center;
    }
    .btn ul li:last-child{
        margin-bottom: 0;
    }
    input[type="submit"],
    input[type="button"],
    button{
        margin: 0 auto;
        padding: 10px 25px;
        font-size: 1.1em;
    }
}

/*-----------------------------------
essence
-----------------------------------*/
.required label{
    position: relative;
    display: block;
    padding-right: 50px;
}
.required label:before{
    position: absolute;
    z-index: 100;
    content: "必須";
    display: block;
    padding: 0 7px;
    background-color: #ff9933;
    border-radius: 3px;
    font-size: 0.8em;
    font-weight: bold;
    line-height: 2.2;
    color: #FFF;
}
/*--Large screens--*/
@media print, screen and (min-width: 768px){
    th{
        width: 250px;
    }
    .required label:before{
        height: 26px;
        top: 50%;
        right: 0;
        margin-top: -13px;
    }
}
/*--Small screens--*/
@media only screen and (max-width: 767px){
    .required label:before{
        top: 2px;
        right: 0;
    }
}

/*-----------------------------------
announcement statement
-----------------------------------*/
.announcement_statement {
    margin: 0 0 10px;
}
.announcement_statement .head {
    margin-bottom: 5px;
    font-weight: bold;
}
.announcement_statement .message {
    margin-bottom: 15px;
    padding: 15px;
    background-color: #f3f3f3;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}
.announcement_statement p.consent{
    text-align: center;
}
/*--Small screens--*/
@media only screen and (max-width: 40em){
    .announcement_statement .message{
        font-size: 0.9em;
        line-height: 1.8;
    }
    .container .announcement_statement p.consent{
        margin-bottom: 20px;
    }
}
