html {
    height: 100%;
}

body {
    max-width: 70em;
    min-height: 100%;
    margin: 0 auto;
    background-color: white;
    display: flex;
    flex-direction: column;
}

header img {
    display: block;
    margin: 0 auto;
    object-fit: contain;
    max-width: 100%;
    height: 10em;
}

aside {
    max-width: 12em;
}

aside img {
    width: 100%;
    display: block;
    object-fit: contain;
}

h1 {
    text-align: center;
}

section {
    display: flex;
    flex-direction: row;
}

.contents {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

main {
    margin: 1em 1em;
}

section {
    margin-bottom: 2em;
}

section > :first-child {
    width: 12em;
    margin-right: 2em;
}

section > :last-child {
    margin-left: 2em;
}

section > div:first-child img {
    display: block;
    width: 12em;
    object-fit: contain;
}

section > div:first-child > a {
    display: block;
    text-align: center;
}

.index > ul > li > a {
    font-weight: 999;
}

.contents {
    margin: 1em;
}

.r00 { background-color: rgb(153, 204, 255); }
.r15 { background-color: rgb(255, 255, 193); }
.r1  { background-color: rgb(255, 255, 171); }
.r2  { background-color: rgb(255, 255, 150); }
.r3  { background-color: rgb(255, 255, 128); }
.r4  { background-color: rgb(235, 250, 119); }
.r5  { background-color: rgb(235, 250, 119); }
.r13 { background-color: rgb(194, 240, 101); }
.r6  { background-color: rgb(194, 240, 101); }
.r7  { background-color: rgb(154, 230, 83);  }
.r16 { background-color: rgb(144, 228, 79);  }
.r8  { background-color: rgb(134, 224, 74);  }
.r9  { background-color: rgb(113, 219, 66);  }
.r14 { background-color: rgb(93, 214, 57);   }
.r10 { background-color: rgb(73, 209, 48);   }
.r11 { background-color: rgb(52, 204, 39);   }
.r12 { background-color: rgb(12, 194, 21);   }

footer {
    margin-top: auto;
    text-align: center;
}
