body {
    margin: 0;
    /* width: 100vw; */
    width: calc(100vw - calc(100vw - 100%));
    /* overflow-x: hidden; */
    display: grid;
    font-family: 'Times New Roman','Meiryo',sans-serif;
    grid-template:
    "header" 40px
    "main" auto/
    auto;
}
@media (min-width: 767px){
    body {
        grid-template:
        "header header header " 40px
        "...... main   ...... " auto/
        100px  auto 120px;
    }
}
main{
    grid-area: main;
}
_:lang(x)::-internal-media-controls-overlay-cast-button, 
    fieldset{
        border-color: rgb(240,240,240);
    }
_:lang(x)::-internal-media-controls-overlay-cast-button, 
    select{
        background-color: buttonface;
        height: 26px;
        border-radius: 3px;
    }
_:lang(x)::-internal-media-controls-overlay-cast-button, 
    body{
        text-shadow: 0 0 black;
    }
header{
    grid-area: header;
    /* padding: .5rem; */
    color: #fff;
    background-color: #373a3e;
    font-size: 1.5rem;
    border: solid;
    border-color: #373a3e;
    display: grid;
    grid-template:
    "title ... logout" /
    auto auto 120px;
}
logo{
    grid-area: title;
}
logout{
    grid-area: logout;
}
/* minna > a,
logout > a */
header a{
    color: white;
    text-decoration: none;
}
main a:visited{
    color: blue;
}

.submit{
    background-color: #0d6efd;
    border-color: #0d6efd;
    border-radius: 5px;
    border-style: solid;
    border-width: 1px;
    color: rgb(255, 255, 255);
    cursor: pointer;
    display: inline-block;
    font-size: 16px;
    font-weight: 400;
    line-height: 25px;
    padding: 2px 4px;
    text-decoration-line: none;
    transition-delay: 0s, 0s, 0s;
    transition-duration: 0.15s, 0.15s, 0.15s;
    transition-property: color, background-color, border-color;
    transition-timing-function: ease-in-out, ease-in-out, ease-in-out;
    user-select: none;
}
.singup:hover {
    color: #fff;
    background-color: #0b5ed7;
    border-color: #0a58ca;
}
.pn {
    position: relative;
    top: -9px;
}
main table h3 {
    margin: 0px;
    padding: 0px;
}
table{
    width: 100%;
    text-align: left;
    border-collapse: collapse;
}
tr td:nth-of-type(1){
    background: #dce1ea;
    width: 25%;
    font-weight: bold;
}
td{
    border: 1px solid black;
    padding: 1rem;
}
p:lang(en) {
    font-size: 19px;
}
h3:lang(en) {
    font-size: 21px;
}
