@charset "UTF-8";

/* ===========================
 layout
=========================== */
.container {
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    padding: 80px 20px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.container form {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.container_inr {
    flex: 1;
}

@media (min-width: 800px) {
	p {
        text-align: center;
	}
    p.password_note {
        text-align: left;
    }
}

/* ===========================
　header
=========================== */
.header_ttl {
    color: #fff;
    background-color: #014BB1;
    text-align: center;
    font-size: min(8vw, 3rem);
    line-height: 1.13;
    padding: 30px 0 30px;
}

@media (min-width: 800px) {
    .header_ttl {
        padding: 70px 0 30px;
    }
}

/* ===========================
　header
=========================== */
.form_table {
    width: 100%;
    margin-bottom: 30px;
}

.form_table th {
    text-align: left;
}

@media (min-width: 800px) {
    .form_table th {
        width: 135px;
        padding: 10px 0;
        text-align: left;
    }
}

/* ===========================
　explanation
=========================== */
.explanation {
    border: 5px solid #E3ECF6;
    padding: 5vw;
    text-align: center;
    margin-top: 30px;
}

.explanation_ttl {
    font-size: min(5.6vw, 2.5rem);
    margin-bottom: 25px;
    font-weight: 500;
    color: #014BB1;
    line-height: 1.52;
}

.explanation_ttl span {
    display: inline-block;
}

.explanation_txt {
    text-align: justify;
    max-width: 628px;
    margin: 0 auto;
}

.explanation_soon {
    color: #D45147;
    font-size: 2.4rem;
    font-weight: 500;
    text-align: center;
}

@media (min-width: 800px) {
    .explanation {
        padding: 30px 30px;
        margin-top: 50px;
    }
}

/* ===========================
title
=========================== */
.title_page {
    margin-bottom: 35px;
}