body{
    background-color: #e2e2e2;

    position: relative;
    text-align:center;
}
h1{
    font-size: 1.4rem;
    font-weight: normal;

}


#btn_fsize{
    font-size: smaller;
    float: right;
    width: 12em;
}
.btn_fchg{
    width: 2em;
    margin: 0px 3px;
    background-color: #fff;
    border: #639ef7 solid 2px;
    border-radius: 0.5em;
    cursor : pointer;
    user-select: none;
}

#tpnl,#qpnl,#npnl,#cpnl,#apnl,#rpnl{
    font-family: "UD Digi Kyokasho NP-R","BIZ UDPGothic";
    margin: auto;
    width: 100%;
    max-width: 1000px;
    box-sizing: border-box;
    font-size:1.2rem;
}

#tpnl{
    
    position: absolute;
    width: 90%;
    height: 50%;
    left: 0;
    right: 0;
    top: 50px;

    padding: 10px;
    background-color: #ffb3fb;
    border: #ff7df6 solid 2px;
    border-radius: 0.5em;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content:center;
    min-height: 400px;
}
#sbtn{
    width: 10em;
    margin: 15px;
    background-image: url("img/icon/icon_n.svg") ;
    background-size: 32px;
    background-repeat:no-repeat;
    background-position: left top;
}
#cbpnl{
    width: 100%;
}

#tpnl input{
    margin: 10px;
}
label:hover{
    background-color: #f9ffa4;
}
.mycol{
    display: flex;
    flex-direction: column;
}
.myrow{
    display: flex;
    flex-direction: row;
    justify-content: center;
    flex-wrap: wrap;
}
#qpnl{
    display: flex;
    flex-direction: column;
    align-items: center;

    min-height: 150px;
}
#qno{
    width: 90%;
}
#qtxt{
    width: 90%;
    margin-top: 5px;
    margin-bottom: 5px;
    padding: 10px;
    text-align: left;
}
#qimg img{
    max-width: 100%;
}
#apnl{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 90px;
}
#atxt{
    width: 90%;
    margin-top: 5px;
    margin-bottom: 10px;
    padding: 10px;
    
    border: #eee solid 1px;
    border-radius: 0.5em;
    text-align: left;
}
.bg_ok{
    background-color: #acfcb0;
}
.bg_ng{
    background-color: #ff825c;
}
#npnl{
    width: 80%;
    display: flex;
    align-items: flex-start;
    justify-content:end;
    min-height: 100px;

}
#npnl label{
    margin: 5px;
}
#nbtn{
    width: 25%;
    min-width: 7em;
    margin: 5px;
    padding-top: 3px;
    padding-bottom: 3px;
    background-color: #f6ff75;
    border: #639ef7 solid 2px;
    border-radius: 0.5em;
    cursor : pointer;
    user-select: none;

    background-image: url("img/icon/icon_n.svg") ;
    background-size: 32px;
    background-repeat:no-repeat;
    background-position: left top;
}

#cpnl{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    min-height: 150px;
}
#cpnl img{
    margin: auto;
    vertical-align: middle;
    max-width: 250px;
}

#c1,#c2,#c3,#c4{
    display: table;
    width: 45%;


    margin: 5px;
    padding-top: 10px;
    padding-bottom: 10px;
    box-sizing: border-box;
    cursor : pointer;
    user-select: none;
    
    background-repeat:no-repeat;
    background-position: left top;
    background-size: 32px;
}
#c1{
    background-image: url("img/icon/icon_1.svg") ;
}
#c2{
    background-image: url("img/icon/icon_2.svg") ;
}
#c3{
    background-image: url("img/icon/icon_3.svg") ;
}
#c4{
    background-image: url("img/icon/icon_4.svg") ;
}
.cbtn_on{
    background-color: #fff;
    border: #639ef7 solid 2px;
    border-radius: 0.5em;
}
.cbtn_on:hover{
    background-color: #f6ff75;
    border: #639ef7 solid 2px;
    border-radius: 0.5em;
}
.cbtn_off{
    background-color: #6d6d6d;
    border: #1b1b1b solid 2px;
    border-radius: 0.5em;
}
.cbtn_ok{
    background-color: #9dffa5;
    border: #39e42a solid 2px;
    border-radius: 0.5em;
}

#rpnl{
    position: absolute;
    width: 90%;
    max-width: 800px;
    height: 25%;
    min-height: 300px;
    left: 0;
    right: 0;
    top: 50px;

    padding: 10px;
    background-color: #ffb3fb;
    border: #ff7df6 solid 3px;
    border-radius: 0.5em;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content:center;

    
}
#rmsg img{
    position: absolute;
    top:5px;
    left: 5px;
}

#xbtn{
    background-image: url("img/icon/icon_x.svg") ;
    background-size: 32px;
    background-repeat:no-repeat;
    background-position: left top;
}
#rsbtn{
    background-image: url("img/icon/icon_rs.svg") ;
    background-size: 32px;
    background-repeat:no-repeat;
    background-position: left top;
}
#rbtn{
    background-image: url("img/icon/icon_n.svg") ;
    background-size: 32px;
    background-repeat:no-repeat;
    background-position: left top;
}
.btn_close{
    position: absolute;
    top:0;
    right: 0;
    cursor: pointer;
}
.mybtn{
    width: 60%;
    margin: 20px 5px;
    padding: 3px;
    background-color: #fff;
    border: #639ef7 solid 3px;
    border-radius: 0.5em;
    cursor : pointer;
    user-select: none;
}
.mybtn:hover{
    background-color: #f6ff75;
}
.myhide{
    display: none;
    visibility:hidden;
}
span.uline{
    padding: 0px 3px;
    border-bottom: #a8049d 2px solid;
    background-color: #ffd6fd;
}
span.wbox{
    padding: 0px 3px;
    margin: 0px 1px;
    border: #222 1px solid;
    background-color: #eee;
    color: #eee;
}

footer{
    position: relative;
    border-top: gray solid 1px;
    padding-top: 10px;
    font-size: medium;

}

#qnum{
    position: absolute;
    top:0%;
    left: 0%;
    font-size: smaller;
    color: gray;
}

@media screen and ( max-width:750px) {
    #tpnl,#qpnl,#npnl,#cpnl,#apnl,#rpnl{
        font-size: 1.0rem;
    }
    #qpnl,#npnl,#cpnl{
        width: 100%;
    }
    #qtxt,#atxt{
        width: 95%;
    }
    #c1,#c2,#c3,#c4{
        width: 80%;
    }
    #rmsg img{
        width: 100px;
    }
    #rpnl .mybtn{
        width: 90%;
    }
}