/* 共通部分 上書き用 */
div.head h1 {
    width: 100%;
}


section {
    width: 960px;
    height: auto;
    margin: auto;
}

article.mainContainer {
    width: 100%;
    height: auto;
    margin: auto;
    background: white;
}

div.head + a {
    display: block;
    width: 300px;
    margin: 5px 0 5px 20px;
    line-height: 0;
}
.head + a > img {
    width: 100%;
}

h2 {
    width: 100%;
    margin: auto;
    padding-left: 20px;
    color: white;
    background-color: #333333;
    height: 40px;
    -js-display: flex;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    -webkit-align-items:center;
    align-items:center;
}
h2 > a {
    color: white;
    font-size: 1.6rem;
    text-decoration: underline;
    padding-right: 8px
}

h2 + p {
        width: 960px;
        text-align: center;
        margin: 20px auto 20px;
        font-size: 1.6rem;
        font-weight: normal;
}
section.size {
}


h3 {
    width: 100%;
    height: 40px;
    font-size: 1.6rem;
    color: white;
    padding: 0 0 0 10px;
    margin: 0 0 20px 0;
    -js-display: flex;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    -webkit-align-items:center;
    align-items:center;
}
h3:nth-of-type(1) {
    background-color: #cb5544;
}
h3:nth-of-type(2){
    background-color:#646464;
}
h3:nth-of-type(3){
    background-color:#655586;
}
h3:nth-of-type(4){
    background-color:#0086b9;
}
h3:nth-of-type(5){
    background-color:#cc5588;
}
h3:nth-of-type(6){
    background-color:#eab855;
}

figure {
    -js-display: flex;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-flow: row wrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    width: 100%;
    margin: 0 0 20px 0;
}
figure > img {
    display: block;
    width: 33.333%;
    width: calc(100% / 3);
    height: 100%;
}

table,
tbody {
    width: 100%;
}
table {
    border: solid 1px #cccccc;
}
tr {
    width: 100%;
    border: solid 1px #cccccc;
}
td {
    width: 16%;
    height: 26px;
    border: dotted 1px #cccccc;
    font-size: 1.3rem;
    text-align: center;
    vertical-align: middle;
}
td:first-of-type {
    width: 20%;
    background-color: #EEEEEE;
}
tr:first-of-type > td {
    background-color: #dddddd;
}
th {
    background-color: #cccccc;
    font-size: 1.4rem;
    height: 26px;
    vertical-align: middle;
    border-bottom: solid 1px #bbbbbb
}

@media screen and (max-width:959px) {
    article.mainContainer {
    }
    section {
        width: 100%;
    }
    div.head + img {
        width: 200px;
        margin: 5px 0 5px 20px
    }
    h2 + p {
        width: 100%;
        padding: 0 2%;
    }
    figure {
        padding: 0 2%
    }
}
@media screen and (max-width:767px) {
    div.head + a {
        display: block;
        width: 150px;
        margin: 5px 0 5px 20px;
        line-height: 0;
    }
    .head + a > img {
        width: 100%;
    }
    h2 + p {
        font-size: 1.4rem;
    }
}
@media screen and (max-width:414px) {
    td {
        font-size: 1.2rem;
    }
    figure {
        padding: 0;
        display: block;
    }
    figure > img {
        width: 95%;
        margin: auto;
    }
}
@media screen and (max-width:320px) {}
