@charset "utf-8";
/* CSS Document */
/* 会員ページ用 */

div.container {
    max-width: 1024px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
}

div.form-area {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-bottom: 1rem;
}
div.row {
    display: flex;
    align-items: flex-start;
    width: 100%;
    margin: 1rem 0;
}
div.title {
    width: 100%;
    text-align: center;
    font-size: 20px;
    font-weight: bold;
}
div.explain {
    width: 100%;
    margin: 0 auto;
    text-align: center;
    font-size: 14px;
    line-height: 1.5rem;
}
div.explain select {
    font-size: 14px;
}
span.item-name {
    font-size: 14px;
    font-weight: bold;
}
span.require {
    font-size: 12px;
    font-weight: bold;
    color: red;
}
div.explain textarea {
    width: 70%;
    font-size: 14px;
    line-height: 21px;
}
@media (max-width: 480px) {
    div.explain textarea {
        width: 100%;
    }
}
div.result {
    /* 完了メッセージが複数段落でも左右に割れず、上下に積んで中央寄せする */
    display: flex;
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    font-size: 16px;
    text-align: center;
}

div.input-error {
    width: auto;
    color: red;
    display: flex;
    justify-content: center;
}

div.item-name {
    flex: 0 0 49%;
    text-align: right;
    margin-right: 0.5rem;
    font-size: 14px;
    font-weight: bold;
}
div.item-content {
    flex: 1;
    margin-left: 0.5rem;
    font-size: 14px;
}
input.inputform {
    font-size: 13px;
}
input.corp {
    width: 80%;
}
input.hall {
    width: 80%;
}
input.name {
    width: 80%;
}
input.tel {
    width: 40%;
}
input.email {
    width: 80%;
    margin-bottom: 1rem;
}
div.button-row {
    display: flex;
    justify-content: center;
}
a.prev-button {
    width: 150px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 1rem;
    font-size: 16px;
    font-weight: bold;
    color: #f75c28;
    text-decoration: none;
    border: solid #f75c28;
    border-width: 1px 1px 3px 1px;
    border-radius: 15px;
    background-color: white;
}
button.update-button {
    width: 150px;
    height: 44px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 1rem;
    font-size: 16px;
    font-weight: bold;
    color: white;
    text-decoration: none;
    border: solid #c72c00;
    border-width: 1px 1px 3px 1px;
    border-radius: 15px;
    background-color: #f75c28;
    cursor: pointer;
}
@media (max-width: 480px) {
    div.explain {
        width: 80%;
        text-align: left;
        line-height: 1.3rem;
    }
    div.item-name {
        flex: 0 0 30%;
    }
    input.corp {
        width: 67%;
    }
    input.hall {
        width: 67%;
    }
    input.name {
        width: 67%;
    }
    input.tel {
        width: 67%;
    }
    input.email {
        width: 67%;
    }
}