/* reset all */

html {
    box-sizing: border-box;
}

* {
    margin: 0;
    padding: 0;
}

:root {
    font: 16px;
}

*,
*:before,
*:after {
    box-sizing: inherit;
}

a,
img {
    outline: none;
    border: none;
}

img {
    display: inline-block;
    width: 100%;
}

/* body set-up */

body {
    font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
    font-size: 1.125rem;
    line-height: 1.42;
    color: #57585a;
    background: #fff;
    font-weight: normal;
    background-image: url(../images/bg_obi.jpg);
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

/* main style */

a {
    color: inherit;
    display: inline-block;
    text-decoration: none;
    white-space: nowrap;
}

u {
    text-decoration: underline;
}

a:hover,
a:focus {
    outline: none;
    text-decoration: underline;
}

p {
    margin: 0 0 1.25rem;
}

h1 {
    padding-left: 36px;
    font-size: 52px;
    margin: 1.25rem 0;
    /* font-family: "Obi-bold", Helvetica, sans-serif;*/
    font-weight: bold;
    line-height: 1;
    color: #57585a;
    font-family: 'Roboto Condensed', sans-serif;
}

h1 span {
    font-size: 0.7em;
    font-weight: normal;
}

h2 {
    font-size: 1.125rem;
    margin-bottom: 0;
    line-height: 1.42;
    cursor: pointer;
    font-weight: normal;
    color: #fff;
    padding: 0;
    margin: 0;
    position: relative;
    margin: .312rem .625rem
}

h3 {
    font-family: 'Roboto Condensed', sans-serif;
    margin: 0 0 20px;
    font-size: 32px;
}


ul {
    padding: 0;
    margin: 0 0 .625rem 0;
    list-style: none;
}

ul li {
    padding-left: .937rem;
}

ul ul li {
    padding-left: 0;
}

ul li:before {
    content: "";
    float: left;
    position: relative;
    width: .312rem;
    height: .312rem;
    border-radius: .312rem;
    background: #fff;
    margin-left: -.937rem;
    top: .5rem;
}

ul ul li:before {
    content: "";
    float: left;
    position: relative;
    width: 5px;
    height: 5px;
    border-radius: 5px;
    background: #fff;
    margin-left: 0;
    top: .5rem;
    margin-right: .625rem
}


ol li span {
    content: "";
    position: absolute;
    width: 160px;
    height: 45px;
    background: #fff;
    border: 1px solid #d1d2d4;
    border-radius: 6px;
    -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    position: absolute;
    top: -62px;
    left: -60px;
    z-index: 100;
    color: #57585a;
    padding: 9px 5px;
    text-align: center;
    display: none;
}

ol li:nth-of-type(2) span {
    width: 210px;
    left: -80px;
}

ol li:nth-of-type(3) span {
    width: 270px;
    left: -105px;
}

ol li:nth-of-type(6) span {
    width: 210px;
    left: -80px;
}

ol li:nth-of-type(7) span {
    width: 250px;
    left: -100px;
}

ol li:nth-of-type(8) span {
    width: 250px;
    left: -95px;
}

ol li:nth-of-type(1) span {
    left: -63px;
}

ol li span:after {
    content: "";
    position: absolute;
    bottom: -40%;
    left: 41%;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 15px solid #fff;
    border-bottom: 1px solid transparent;
}

ol li {
    display: inline-block;
    cursor: pointer;
    position: relative;
    margin-right: 1.25rem;
}

ol li:nth-of-type(1) img {
    max-width: 1.312rem;
}

ol li:nth-of-type(2) img {
    max-width: 2.062rem;
}

ol li:nth-of-type(3) img {
    max-width: 2rem;
}

ol li:nth-of-type(4) img {
    max-width: 1.937rem;
}

ol li:nth-of-type(5) img {
    max-width: 2.062rem;
    margin-bottom: .437rem;
}

ol li:nth-of-type(6) img {
    max-width: 2.187rem;
}

ol li:nth-of-type(7) img {
    max-width: 2.062rem;
}

ol li:nth-of-type(8) img {
    max-width: 2.125rem;
}

ol li:nth-of-type(9) img {
    max-width: 2rem;
}

ol li:hover span {
    display: block;
}

/* layout  */

#wrapper {
    display: block;
    max-width: 960px;
    margin: 0.75em auto;
    padding: 1.25rem;
    background: #fff;
}

/*--use clearfix when float get's overflowed--*/

.clearfix:after {
    content: ".";
    clear: both;
    display: block;
    visibility: hidden;
    height: 0;
}

/* content */

header {
    margin: -1.25rem 0 .625rem;
    padding: 0;
    position: relative;
}

header a {
    position: absolute;
    top: 0;
    left: 2.25rem;
    display: block;
    margin: 0 auto 0;
    max-width: 35%;

}

header img {
    display: block;
}

header section {
    margin-bottom: 1.25rem;
}

article,
footer {
    background-color: #ff7e21;
    padding: .937rem 2.25rem;
    margin: 0;
    color: #fff;
}

aside p {
    float: left;
    width: 25%;
    padding-bottom: 1.25rem;
    margin: 0
}

aside a {
    float: right;
    border-color: #ffffff;
    background: #ffffff;
    color: #ff7e21;
    position: relative;
    padding-right: 1.875rem;
    min-width: 10.625rem;
    text-align: left;
    display: inline-block;
    margin-bottom: 0;
    font-weight: bold;
    vertical-align: middle;
    cursor: pointer;
    border: 1px solid transparent;
    white-space: nowrap;
    padding: .5rem .75rem;
    font-size: 1.125rem;
    line-height: 1.42857143;
    border-radius: .25rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

}

aside a:after {
    content: '' !important;
    border: solid #ffffff;
    border-width: 0 .187rem .187rem 0;
    display: inline-block;
    padding: 4px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    position: absolute;
    right: .937rem;
    top: .937rem;
    border-color: #ff7e21;
}

footer section:nth-of-type(1) > a:hover,
aside a:hover {
    box-shadow: none;
    border-color: #ffffff;
    background: #ffffff;
    color: #e67522;
    text-decoration: none;
}

footer section:nth-of-type(1) p {
    font-family: 'Roboto Condensed', sans-serif;
}

.listDrop {
    margin-left: -.625rem;
    overflow: hidden;
    margin: 0;
    height: 0;
    transition: all 0.2s ease-out;
}

.activeLink {
    border-bottom: 1px solid #fff;
    padding-bottom: .312rem;
}

.activeList {
    height: auto;
    margin-bottom: .937rem;
    padding: .312rem .625rem;
}

h2:after {
    content: '' !important;
    border: solid #ffffff;
    border-width: 0 .187rem .187rem 0;
    display: inline-block;
    padding: .25rem;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    top: .312rem;
    position: absolute;
    right: .937rem;
}

.activeLink:after {
    content: '' !important;
    border: solid #ffffff;
    border-width: 0 .187rem .187rem 0;
    display: inline-block;
    padding: .25rem;
    -webkit-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
    transform: rotate(-135deg);
    position: absolute;
    right: .625rem;
    top: .625rem;
}

.lista,
.listc {
    width: 48.5%;
    float: left;
    position: relative;
    min-height: 1px;
    padding-left: 0;
    margin-bottom: 1.562rem;
    border: 1px solid #fff;
    border-radius: .25rem;
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}

.listb,
.listd {
    float: right;
    width: 48.5%;
    position: relative;
    min-height: 1px;
    padding-left: 0;
    margin-right: 0;
    margin-bottom: 1.562rem;
    border: 1px solid #fff;
    border-radius: .25rem;
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}

.lista .activeList,
.listb .activeList {
    height: 440px;
}

.listc .activeList,
.listd .activeList {
    height: 800px;
}

@media all and (-ms-high-contrast: none),
(-ms-high-contrast: active) {

    .lista .activeList,
    .listb .activeList {
        height: 440px;
    }

    .listc .activeList,
    .listd .activeList {
        height: 810px;
    }
}

@-moz-document url-prefix() {

    .lista .activeList,
    .listb .activeList {
        height: 440px;
    }

    .listc .activeList,
    .listd .activeList {
        height: 810px;
    }
}

footer section:nth-of-type(1) > a {
    position: relative;
    padding-right: 1.875rem;
    border-color: #ffffff;
    background: #ffffff;
    color: #ff7e21;
    box-shadow: none;
    text-align: left;
    padding: .625rem 1rem;
    font-size: 1.375rem;
    line-height: 1.3333333;
    border-radius: .375rem;
    margin-bottom: 0;
    font-weight: bold;
    vertical-align: middle;
    cursor: pointer;
    border: 1px solid transparent;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    width: 100%;
}

footer section:nth-of-type(1) > a:after {
    content: '' !important;
    border: solid #ffffff;
    border-width: 0 .187rem .187rem 0;
    display: inline-block;
    padding: 4px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    position: absolute;
    right: .937rem;
    top: 1.25rem;
    border-color: #ff7e21;
}

footer section:nth-of-type(1) {
    width: 48.5%;
    float: left;
    position: relative;
}

footer section:nth-of-type(2) {
    width: 48.5%;
    float: right;
    position: relative;
}

footer section:nth-of-type(1) p {
    margin-top: 1.25rem;
    line-height: 1.2;
}

footer section:nth-of-type(2) img {
    width: 100%;
    max-width: 190px;
    float: right;
    display: block;
}

footer {
    padding-bottom: 2.5rem;
}

@media only screen and (max-width:959px) {
    #wrapper {
        margin: 0 auto;
        border: 0;
        padding: 0;
    }

    .lista,
    .listc {
        width: auto;
        float: none;
        position: relative;
        min-height: 1px;
        padding-left: 0;
        margin-bottom: 15px;
        border: 1px solid #fff;
        border-radius: .25rem;
        -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
        box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
    }

    .listb,
    .listd {
        float: none;
        width: auto;
        position: relative;
        min-height: 1px;
        padding-left: 0;
        margin-right: 0;
        margin-bottom: .937rem;
        border: 1px solid #fff;
        border-radius: .25rem;
        -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
        box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
    }

    .lista .activeList,
    .listb .activeList {
        height: auto;
    }

    .listc .activeList,
    .listd .activeList {
        height: auto;
    }

    article,
    footer {
        background-color: #ff7e21;
        padding: 10px;
        margin: 0;
        color: #fff;
    }

    header {
        margin: 0 0 .625rem;
        padding: 0;
    }

    header a {
        left: .625rem;
    }

    h1 {
        font-size: 1.875rem;
        padding-left: .625rem;
    }

    h2 {}

    a {
        font-weight: bold;
    }

    ol li {
        display: block;
        margin: 10px auto;
        max-width: 30px;
    }

    ol li span {
        content: "";
        position: absolute;
        width: auto;
        height: auto;
        left: -3.437rem;
    }

    ol li:nth-of-type(1) span {
        left: -2.687rem;
    }

    ol li:nth-of-type(7) span {
        width: 15.625rem;
        left: -5.625rem;
    }

    ol li:nth-of-type(8) span {
        width: 15.625rem;
        left: -5.937rem;
    }

    ol li:nth-of-type(9) span {
        left: -2.187rem;
    }
}

@media only screen and (max-width:42.5rem) {

    aside p {
        float: none;
        width: auto;
        padding-bottom: .625rem;
        margin: 0
    }

    aside a {
        float: none;
        margin: 0 0 10px;

    }

    footer section:nth-of-type(1) {
        width: auto;
        float: none;
        position: relative;
    }

    footer section:nth-of-type(2) {
        width: auto;
        float: none;
        position: relative;
    }

    footer section:nth-of-type(1) > a,
    aside a {
        max-width: 12.5rem;
    }

    footer section:nth-of-type(2) img {
        float: none;
    }

    p {
        margin: 0 0 .625rem;
    }

    ul {
        margin: 0;
    }

    ul p:last-of-type {
        margin: 0;
    }

    h2 {
        font-size: 1rem;
    }
}

@media only screen and (max-width:29.937rem) {
    body {
        font-size: .812rem;
    }

    h1 {
        font-size: 1.125rem;
    }

}
