html {
    height: 100%;
    font-family: 'Noto Sans', sans-serif;
    font-size: 14px;
    color: #363636;
    line-height: 1.7em;
}

body {
    position: relative;
    margin: 0;
    display: flex;
    flex-direction: column;
    height: 100vh;
}

* {
    box-sizing: border-box;
}

.logo {
    position: absolute;
    right: 0;
    top: 1.4em;
}

.header:before {
    position: fixed;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 7em;
    content: "";
    background-color: #fff;
    border-bottom: solid 1px #cccccb;
}

.header {
    top: 0;
    height: 7em;
    position: fixed;
    z-index: 4;
    background-color: #fff;
    max-width: 1200px;
    width: 94%;
}

a {
    color: #c51718;
    text-decoration: none;
    background: transparent;
}

.navi_main {
    list-style: none;
    padding: 0;
    text-transform: uppercase;
    margin-top: 3.9em;
    font-size: 1.2em;
}

    .navi_main li {
        float: left;
        margin-right: 1.8em;
    }

    .navi_main a {
        color: #363636;
        text-decoration: none;
    }

    .navi_main li.selected > a {
        color: #c51718;
    }

    .navi_main a:active {
        text-decoration: none;
        color: #c51718;
    }

    .navi_main a:hover {
        text-decoration: none;
        color: #c51718;
    }

.navi_sub:before {
    top: 7.85em;
    left: 0;
    height: 32px;
    width: 100%;
    content: "";
    z-index: -2;
    background-color: #e2e2e2;
    border-bottom: solid 1px #cccccb;
    position: fixed;
}

.navi_sub {
    top: 6.7em;
    position: fixed;
    list-style: none;
    padding: 0;
    padding-top: 8px;
    text-transform: uppercase;
    font-size: 0.9em;
    overflow: hidden;
}

    .navi_sub li {
        display: inline;
        margin-right: 2em;
    }

    .navi_sub a {
        color: #676666;
        text-decoration: none;
    }

        .navi_sub a:active {
            text-decoration: none;
            color: #c51718;
        }

        .navi_sub a:hover {
            text-decoration: none;
            color: #c51718;
        }

    .navi_sub li.selected > a {
        color: #c51718;
    }

.content-hover {
    background-color: #fff;
    z-index: 1;
    padding: 20px;
    height: auto;
}

.img-index {
    max-width: 100%;
    height: auto;
    position: relative;
    opacity: 1;
    background-color: #fff;
    z-index: 1;
    padding: 0px;
}

.img-full-width {
    position: fixed;
    max-height: 87%;
    left: 0;
    top: 7em;
    z-index: -4;
}

.content {
    padding-top: 11em;
    padding-bottom: 3em;
    max-width: 1200px;
    margin: 0 auto;
    width: 94%;
    flex: 1 0 auto;
}

.content_left {
    width: 48%;
    margin-right: 4%;
    float: left;
}

.content_right {
    width: 48%;
    float: left;
}

.clear {
    clear: both;
}

.flex {
    max-width: 100%;
    height: auto;
}

.burger {
    position: absolute;
    left: 3px;
    top: 2.3em;
    display: none;
}

    .burger .label {
        padding: 0 0 0 10px;
    }

.menu {
    display: none;
}

.footer {
    background: #e2e2e2;
    border-top: solid 1px #cccccb;
    z-index: 16;
    text-align: center;
    font-size: 0.8em;
    text-transform: uppercase;
    flex-shrink: 0;
    left: 0;
    right: 0;
}

.navi_foot {
    list-style: none;
    text-align: center;
    padding: 0.4rem;
    margin: 0;
}

    .navi_foot li {
        display: inline;
    }

    .navi_foot a {
        color: #363636;
        text-decoration: none;
        margin-right: 1em;
    }

        .navi_foot a:active {
            color: #c51718;
            text-decoration: none;
        }

        .navi_foot a:hover {
            text-decoration: none;
            color: #c51718;
        }

    .navi_foot li.selected > a {
        color: #c51718;
    }

.fb {
    margin-bottom: -5px;
}

@media print {
}

@media screen and (max-width:56em) {

    .content:before {
        position: absolute;
        z-index: -1;
        top: 0;
        left: 0;
        width: 100%;
        height: 7.5em;
        content: "";
        background-color: #fff;
        border-bottom: solid 1px #cccccb;
    }

    .content_left, .content_right {
        width: 100%;
    }

        .content_left .textalignright {
            text-align: left;
        }

    .logo {
        width: 180px;
        left: 50%;
        transform: translateX(-50%);
    }

    .header:before {
        height: 7.5em;
        position: absolute;
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
    }

    .header {
        height: 7em;
        position: absolute;
        justify-content: center;
        display: flex;
    }

    .navi_main {
        margin-top: 4.5em;
        font-size: 1.2em;
    }

        .navi_main li {
            margin-right: 1.7em;
        }

    .navi_sub:before {
        display: none;
    }

    .navi_sub {
        top: 7.4em;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        width:100%;
        text-align:center;
    }
}

@media screen and (max-width:37em) {

    .content:before {
        height: 5.7em;
    }

    .content {
        padding-top: 8em;
    }

    .header:before {
        height: 5.7em;
    }

    .header {
        height: 5.7em;
    }

    .logo {
        right: 0;
        left: auto;
        transform: none;
    }

    .navi_main {
        display: none;
    }

    .navi_sub {
        display: none;
    }

    .burger {
        display: inherit;
    }

    .menu {
        display: inherit;
    }
}
