@charset "UTF-8";
main{
    padding-bottom: 5rem;
}
.req::before{
    content: '*';
}
form > .flex_item::after{
    content: '';
    border: 0.5px solid #0C2C3F;
    position: absolute;
    top: 150px;
    width: 100%;
}
form > div:nth-child(5)::after{
    top: 300px;
}
.privacy > p{
    text-align: center;
    padding-top: 5rem;
}
.privacy > ul{
    list-style: disc;
    width: 50%;
    height: auto;
    margin: auto;
}
.privacy > div{
    text-align: center;
}
.checkbox{
    width: 30%;
    height: 3.5rem;
    text-align: center;
}
.checkbox > input{
    width: 3.5rem;
    height: 3.5rem;
    transform: translate(-10px, 8px);
    border: 1px solid #E9FAFF;
    accent-color: #0C2C3F;
    margin-right: 0;
}
.button{
    text-align: center;
}
button{
    text-align: center;
    background-color: #E9FAFF;
    border: none;
    padding: 15px 50px;
    margin: auto;
}

/* 確認画面 */
.confirm_content{
    width: 65%;
    height: auto;
    margin: auto;
}
.confirm_content + .button{
    display: flex;
    justify-content: space-evenly;
}

/* 送信完了画面 */
.send_content, .call{
    text-align: center;
}

/*PCデザイン*/
@media screen and (min-width:845px){
    .flex_item{
        justify-content: center;
        position: relative;
        width: 70%;
        height: 10rem;
        margin-bottom: 10rem;
        margin-left: auto;
        margin-right: auto;
    }
    form > div:nth-child(5){
        height: 20rem;
    }
    label{
        width: 30%;
        height: 100%;
        text-align: right;
        line-height: 10rem;
        margin-right: 10rem;
    }
    input{
        border: none;
        width: 40%;
        height: 100%;
        text-align: left;
        margin-bottom: 5rem;
    }
    form > div:nth-child(5) > label{
        line-height: 20rem;
    }
    textarea{
        border: none;
        width: 40%;
        height: 100%;
        text-align: left;
    }
}

/*スマホデザイン*/
@media screen and (max-width:844px){
    .flex_item{
        position: relative;
        width: 80%;
        height: 10rem;
        text-align: center;
    }
    form > div:nth-child(5){
        height: 20rem;
    }
    form > .flex_item::after{
        top: 80px;
        left: 0;
    }
    form > div:nth-child(5)::after{
        top: 220px;
    }
    input{
        border: none;
        width: 100%;
        text-align: center;
        margin-top: 1.5rem;
    }
    textarea{
        border: none;
        width: 80%;
        height: 15rem;
        text-align: left;
        margin: 1.5rem 10% 0 10%;
    }
    .privacy > ul{
        width: 60%;
    }
    .checkbox > input{
        width: 1.5rem;
        height: 1.5rem;
        transform: translate(-5px, 5px);
    }
    .button{
        margin-top: 5rem;
    }
}