
body{
    margin:0; padding:0;
    font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
}
header{text-align: center; background:#19395e; color:#fff; margin:0;padding:30px 10px;}
header h1{ margin:0; }
main,
div.cont{
    max-width: 800px;
    margin: 20px auto;
    padding: 0 30px 30px;
    box-sizing: border-box;
    background: #fff;
    border: solid 1px #fff;
    border-radius: 10px;
    box-shadow: 1px 2px 5px rgba(0,0,0,0.5);
}

/* layout Parts ================- */
div.wrap{ width: 100%; padding: 0; margin: 0 0 50px;}
ul{ width: 100%; padding: 0; margin: 0;}
hr{ margin: 30px 0; }
pre{
    border:solid 5px #e0d2bf;
    padding: 10px;
    font-size: 14px;
}

.small{ font-size: 12px; }
.txt-right{ text-align: right; }

.input-small{ font-size: 12px; width: 100px; }

/* List Parts ================- */
ul li{ width: 100%; box-sizing: border-box; padding: 5px 0; border-bottom: dotted 1px #aaa; list-style-type: none; }
ul a{ display: block;padding:10px 0; }
ul a:hover{ color: #004266;background:#d4edff; }

dl{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
dl dt{
    width: 50%;
    padding: 10px 0;
    min-width: 300px;
    display: inline-block;
    font-weight: bold;
    font-size: 1.2em;
    border-bottom: solid 1px #ccc;
}
dl dd{
    width: 50%;
    padding: 10px 0;
    min-width: 300px;
    margin:0;
    border-bottom: solid 1px #ccc;
}


/* FormParts ================- */
button { cursor: pointer;
    padding: 5px 1.5em;
    margin: 5px 10px 5px 0;
    background: #eee;
    border: solid 1px #aaa;
    border-radius: 20px;
}
button:hover { opacity: 0.7; }
.btn_red{
    font-weight: bold;
    background: #ff5c5c;
    color: #fff;
}
.btn_gray{
    background: #ddd;
}
select,input,textarea {
    margin: 5px;
    padding: 5px 10px;
}
.btn_large{
    font-size: 18px;
}
.btn_small{
    padding: 1px 8px;
    font-size: 10px;
}

