:root {
    --ws_pt: 100%;
    --ws_px: 900px;
    --ac_color: #2f66a4;
    --rc_wh: 20px;
    --base_padding: 5px;
    --large_fontsize: 22px;
    --btn_c1: #283593;
    --btn_c2: #ffffff;
}

body {
    font-size: 16px;
    font-family: "游ゴシック","Yu Gothic","Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
    height: 100%;
    margin: 0px;
}

input[type=password] {
    border: none;
    border-bottom: 1px solid #9e9e9e;
    border-radius: 0;
    outline: none;
    height: 3rem;
    width: 100%;
    font-size: 1rem;
    margin: 0 0 20px 0;
    padding: 0;
    box-shadow: none;
    box-sizing: content-box;
    transition: all 0.3s;
}

input[type=password]:focus {
    box-shadow: 0 2px 0 #283593;
}

input[type=text] {
    border: none;
    border-bottom: 1px solid #9e9e9e;
    border-radius: 0;
    outline: none;
    height: 3rem;
    width: 100%;
    font-size: 1rem;
    margin: 0 0 20px 0;
    padding: 0;
    box-shadow: none;
    box-sizing: content-box;
    transition: all 0.3s;
}

input[type=text]:focus {
    box-shadow: 0 2px 0 #283593;
}

input[type=radio] {
    accent-color: var(--ac_color);
    width: var(--rc_wh);
    height: var(--rc_wh);
}

input[type=checkbox] {
    accent-color: var(--ac_color);
    width: var(--rc_wh);
    height: var(--rc_wh);
}

td {
    padding: var(--base_padding);
}

.header {
    width: var(--ws_pt);
    background: #283593;
    color: #ffffff;
    margin-bottom: 10px;
}

.header_cont {
    width: 900px;
}

.btn_footer {
    margin-top: 30px;
    margin-bottom: 20px;
}

.top_d {
    font-size: var(--large_fontsize);
    font-weight: bold;
    padding: var(--base_padding);
    flex-basis: 100%;
}

.btn {
    display: inline-block;
    cursor: pointer;
    border-radius: 5px;
    width: 120px;
    padding: 10px;
}

.btn--w {
    color: var(--btn_c1);
    background: var(--btn_c2);
}

.btn--w:hover {
    color: var(--btn_c1);
    background: #d1d1d1;
}

.btn--b {
    color: var(--btn_c2);
    background: var(--btn_c1);
}

.btn--b:hover {
    color: var(--btn_c2);
    background: #283493a0;
}


.q_box {
    width: var(--ws_px);
}

.q_title {
    display: flex;
    flex-flow: row;
    flex-basis: 100%;
    color: #000;
    font-size: 16px;
    padding: var(--base_padding);
}

.q_input {
    width: var(--ws_pt);
    padding: 5px 0px;
}

.tbl1 {
    width: 800px;
    margin-top: 20px;
    border: 2px solid #000000;
    background:#f6f6f6;
}

.td_pg1 {
    padding: 20px;
}

.td_pg2 {
    padding: 0px 20px 20px 20px;
}

.tbl2 {
    width: 900px;
}

.div_flex {
    display: flex;
    align-items: center;
    padding: 15px 0px;
}

.div_sub {
    width: 33%;
}

.div_b1 {
    width: 600px;
    border: 2px solid #000000;
    padding: 5px;
    text-align: center;
    background:#f6f6f6;
}

.div_b2 {
    width: 500px;
    border: 2px solid #000000;
    padding: 5px;
    text-align: left;
    background:#f6f6f6;
}

.div_b3 {
    width: 600px;
}

.box_border {
    width: 900px;
    border: 1px solid #666666;
}

.get_page_div {
    width: 700px;
    background:#f1f1f1;
    text-align: left;
    border: 2px solid #000;
    font-size: 16px;
    padding: 5px;
    line-height: 130%;
}


/* 装飾 */
.spn_b {
    font-weight: bold;
}

.spn_u {
    text-decoration: underline;
}

.fc1 {
    color: #ff0000;
}


/* スマホ */
@media screen and (max-width: 700px) {
    .pc{
        display: none;
    }
    
    .sp{
        display: block;
        width: 100%;
    }

    .header_cont {
        width: 80%;
    }

    .tbl1 {
        width: 90%;
        margin-top: 20px;
        border: 2px solid #000000;
        background:#f6f6f6;
    }

    .td_pg1 {
        padding: 5px;
    }
    
    .td_pg2 {
        padding: 5px;
    }

    .tbl2 {
        width: 90%;
    }

    .div_flex {
        display: inline-block;
        align-items: center;
        padding: 15px 0px;
    }

    .div_sub {
        width: 100%;
    }

    .div_b1 {
        width: 80%;
        border: 2px solid #000000;
        padding: 5px;
        text-align: center;
        background:#f6f6f6;
    }

    .div_b2 {
        width: 80%;
        border: 2px solid #000000;
        padding: 5px;
        text-align: left;
        background:#f6f6f6;
    }

    .div_b3 {
        width: 90%;
    }

    .q_box {
        width: 90%;
    }

    .get_page_div {
        width: 80%;
        background:#f1f1f1;
        text-align: left;
        border: 2px solid #000;
        font-size: 16px;
        padding: 5px;
        line-height: 130%;
    }
}
