html,
body{
    padding: 0;
    margin: 0;
    border: 0;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
html{
    min-height: 100%;
    background: url(../image/background/wood_01.jpg) center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
html.development{
    background: #0f0 url(../mockup/home/landscape.jpg) no-repeat center top;
    background-size: contain;
}
body{
    position: relative;
}
.development body{
    opacity: 0.4;
}
a{
    text-decoration: none;
    color: #fff;
    outline: none;
}
a::-moz-focus-inner{ 
    border: 0;
}

.img__size-by-parent-padding__container{
    position: relative;
}
.img__size-by-parent-padding{
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: auto;
    height: 100%;
    margin: 0 auto;
}
.list--horizontal{
    padding: 0;
    margin: 0;
    list-style: none;
}
.list--horizontal > li{
    float: left;
}
.list--horizontal > li > a{
    display: block;
}
.list--horizontal > li > a > img{
    display: block;
    width: 100%;
    border: 0;
}
.thumbnail__container{
    width: 100%;
    padding: 0 0 0.5%;
    margin-left: auto;
    margin-right: auto;
    font-size: 0;
    text-align: center;
}
.thumbnail{
    display: inline-block;
    width: 29%;
    margin: 0 0.15% 0.2%;
    border: 4px solid #000;
    border-radius: 4px;
}
.thumbnail a,
.thumbnail__image{
    display: block;
    width: 100%;
}
.hover--zoom--in--01{
    cursor: pointer;
    transition: transform 0.6s ease-in-out;
}
.hover--zoom--in--01:hover{
    z-index: 1;
    -ms-transform:     scale(1.05,1.05);
    -webkit-transform: scale(1.05,1.05);
    transform:         scale(1.05,1.05);
    box-shadow: 0 0 10px #000;
}
.clear{
    float: none !important;
    height: 0;
    border: 0 !important;
    clear: both;
}

#site__header{
    padding-top: 1.6%;
}
#site__title{
    padding-top: 11.33%;
    margin: 0 0 0 -0.9%;
    text-align: center;
}
body > .site__logo{
    position: absolute;
    top: 0;
    right: 0;
    padding: 4.14% 5.4%;
    margin: 1.4% 1.5% 0 0;
}
body > .site__logo .img__size-by-parent-padding{
    left: auto;
}
body > .welcome-to{
    position: absolute;
    top: 0;
    left: 0;
    padding: 3.2% 7%;
    margin: 3.4% 0 0 1.2%;
}
#site__body{
    margin-top: 1.1%;
}
#site__footer{
    margin: 0.5% 0;
}
#site__footer .site__navigation{
    position: relative;
    width: 33%;
    padding-top: 2.15%;
}
#site__footer .site__navigation.home,
#site__footer .site__navigation.social-media{
    display: none;
}
#site__footer .site__navigation a{
    position: absolute;
    top: 0;
    height: 100%;
}
#site__footer .site__navigation.about a{
    left: 37%;
    width: 30%;
}
#site__footer .site__navigation.contact a{
    left: 17.1%;
    width: 35%;
}
#site__footer .site__navigation.copyright img{
    top: 15%;
    left: -4.1%;
    height: 84%;
}
#site__footer .list--horizontal > li > a > img{
    width: auto;
}
body > .meet-the-home-cooked-family{
    padding-top: 3.18%;
    margin: 1.4% 0 0 -0.94%;
}

.landscape .responsive--portrait{
    display: none !important;
}
.portrait .responsive--landscape{
    display: none !important;
}
.portrait .responsive--portrait{
    display: block !important;
}

@media screen and (max-aspect-ratio: 1/1){    
    html{
        background: none;
    }
    html.development{
        background-image: url(../mockup/home/portrait.jpg);
        background-size: cover;
    }
    body{
        background: url(../image/background/wood_02.jpg) center;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }
    html.paneling-background body{
        background: url(../image/background/wood_04.jpg) center;
    }
    #site__header{
        padding-top: 2.2%;
    }
    #site__title{
        padding-top: 16%;
        margin: 0 0 0 1.2%;
    }
    .site__logo,
    .welcome-to{
        display: none;
    }
    body > .meet-the-home-cooked-family{
        padding-top: 5.7%;
        margin: 2.5% 0 0 0%;
    }
    #site__body {
        margin-top: 2.2%;
    }
    #site__body > .thumbnail__container{
        width: 93%;
        margin: 0 auto 0;
    }
    /*
    [slide__active_is="true"] .thumbnail__container{
        height: 1px;
        overflow: hidden;
    }
    */
    #site__body > .thumbnail__container > .thumbnail{
        width: 96.4%;
        margin: 0 0.8% 2.2%;
        border: 0;
        border-radius: 0;
    }
    #site__footer{
        margin: 3% 0;
    }
    #site__footer .site__navigation{
        padding-top: 4.15%;
    }
    #site__footer .site__navigation.placeholder{
        width: 22.2%;
    }
    #site__footer .site__navigation.contact a{
        left: 17.1%;
        width: 61%;
    }
    #site__footer .site__navigation.copyright img {
        top: 15%;
        height: 83.5%;
    }
}
/*
@media screen and (max-aspect-ratio: 1/1) and (max-width: 670px){
    #site__body > .thumbnail__container > li > a > span {
        left: 11%;
        width: 78%;
        line-height: 25px;
        font-size: 18px;
        letter-spacing: 1px;
    }
    #site__footer > .list--horizontal > li + li{
        border-top: 3px solid #fff;
    }
    #site__footer .site__navigation{
        line-height: 62px;
        font-size: 30px;
    }
    #site__footer .site__navigation.copyright{
        font-size: 16px;
        border-bottom: 3x solid #fff;
    }
}
@media screen and (max-aspect-ratio: 1/1) and (max-width: 540px){
    #site__body > .thumbnail__container > li > a > span{
        left: 11%;
        width: 78%;
        line-height: 15px;
        font-size: 12px;
    }
    #site__footer > .list--horizontal > li + li{
        border-top: 2px solid #fff;
    }
    #site__footer .site__navigation{
        line-height: 45px;
        font-size: 22px;
    }
    #site__footer .site__navigation.copyright{
        font-size: 12px;
        border-bottom: 2px solid #fff;
    }
}
*/
