html, body, div, span, h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dt, dd, img, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, a, article, aside, details, figcaption, figure, footer, header, hgroup, menu, #nav, section {
  margin: 0 auto;
  padding: 0;
  border: 0;
  font: inherit;
  vertical-align: baseline;
}
 
* {
  box-sizing: border-box;
}

article, aside, audio, details, figcaption, figure, footer, header, hgroup, main, menu, #nav, section { 
  display: block;
}

html{
    position:relative;
    min-height: 100%;
}

body{
    min-height:100%;
    font-family: Arial, Helvetica, serif;
    font-size: 16px;
    color:#1a1a1a;
}


*:before,
*:after{
    -webkit-box-sizing: border-box;
}
.clearfix {
  *zoom: 1;
}

.clearfix:before,
.clearfix:after {
  display: table;
  line-height: 0;
  content: "";
}

.clearfix:after {
  clear: both;
}


header{
    width: 100%;
    height: 100px;
    background: #1a1a1a;
    position:fixed;
    z-index:999999;
}
.header-left,
.header-right{
    position: relative;
    color: white;
    float: left;
}
.header-left{
    width: 30%;
    height:100px;
}
.header-right label{
    position: absolute;
    top: -3.7em;
    right: 0;
    cursor: pointer;
}
.header-right span{
    position: relative;
    width: 2em;
    height: 2em;
    background: rgba(255,255,255,.3);
    -webkit-transition: all .3s ease;
}
.header-right span:hover{
    background: rgba(255,255,255,.6);
}
.header-right span:before,
.header-right span:after{
    content: '';
    position: absolute;
    width: 2em;
    height: .3em;
    top: 4px;
    left: 0;
    background: white;
}
.header-right span:after{
    top: 14px;
}
.header-right{
    width: 70%;
    text-align: right;
}
#open{
    display: none;
}

#logo{
    width:100%;
    max-width: 350px;
    height:100px;
    padding: 10px;
}

a{
    text-decoration: none;
    color: white;
}
nav>a{
    position: relative;
    display: inline-block;
    font-size: 1.2em;
    line-height: 100px;
    padding: 0 1.3em;
    -webkit-transition: all .3s ease;
}
nav>a:hover{
    color: #ff8000;
}

.hidden-desktop{
    display: none;
}

#wrapper{
    width:80%;
    margin:0 auto;
}
/*----------------- basic setting ---------------------------*/

h1{
    font-size: 3em;
}

section h2{
    font-size:2.25em;
}

 h3{
    font-size: 1.3em;
    font-weight: bold;
    }

p{
    font-size: 1.3em;
    line-height: 1.5em;
}

#heading h2{
    color:white;
    text-shadow: 1px 2px #333333;
    margin: 100px 0 30px 0px;
    font-weight: bold;
}

#heading2 h2{
    color: #1a1a1a;
    margin: 200px 0 20px 0px;
    }

.one_quarter p{
    font-size: 1.15em;
}

.one_quarter h3{
    padding: 0 50px;
    display:block;
    
    }

.padding-top{
    padding-top: 100px;
}


.white {
    color:white;
}
/*---------------------- footer --------------------------- */
#footer{
    background:#ff8000;
    height:60px;
    color: white;
    text-align: center;
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
}

#footer p{
    line-height: 60px;
}


/* ----------------------- banner ----------------------------*/
banner{
    background:url('img/banner.jpg');
    display:table;
    text-align: center;
    width:100%;
    box-shadow: 0px 0px 30px 0px #333333;

}

#title{
    display: table-cell;
    height:350px;
    vertical-align: middle;
    text-align: center;
}

banner h1{
    font-weight: bold;
    color:white;   
    margin-top: 100px;
    text-shadow: 2px 2px #333333;
}




/*----------------- main ---------------------------------*/
#bg{
    background:url('img/background.jpg');
}

#bg2{
    background:url('img/tile3.jpg');
}

#bg3{
    background:url('img/contact.jpg');
}

#bg4{
      background:url('img/background2.jpg');
}

.one_half, .one_half_2,.one_third, .one_third_gallery,.two_third, .one_quarter, .two_quarter, .three_quarter{
    display:inline-block; 
    float:left; 
    margin:0 0 0 3.06748466257669%; 
    list-style:none; 
}

#one_half {
    width:50%;
    margin: 0 auto;
    padding: 120px 80px 100px 30px;
    float:left;
   }

#one_half_2 {
    width:50%;
    margin: 0 auto;
    padding: 120px 80px 120px 30px;
    float:left;
   }  

#one_half_3 {
    width:50%;
    margin: 0 auto;
    padding: 120px 80px 120px 30px;
    float:left;
   }     

#one_half_2 img{
    width:100%;
    max-width: 500px;
    margin-bottom: 40px;
    box-shadow: 0px 0px 3px 1px #333333;
}

.center{
    text-align: center;
}

.one_third{
    width:30%;
    border: 2px solid #cccccc;
    box-shadow: 0px 0px 1px 1px #cccccc;
    border-radius: 10px;
    height:auto;
    margin-top: 45px;
    margin-bottom: 180px;
    background: rgba(204, 204, 204, 0.7);
    line-height:1.5em;
    display: table-cell;
    }

.one_third_gallery{
    width:30%;
    margin-top: 45px;
    margin-bottom: 180px;
    }

.one_third_gallery img{
    width:100%;
    max-width: 350px;
    margin-bottom: 20px;
    box-shadow: 0px 0px 3px 3px rgba(25, 25, 25, 0.3);
    border-radius: 10px;
}


article p{
    padding:40px;
}

.container{
    width: 80%;
    margin: 0 auto;
}

.one_quarter {
    width:25%;
    margin: 0 auto 100px auto;
    float:left;
    margin-top: 80px;
   }

.one_quarter img{
    width:100%;
    max-width: 250px;
    box-shadow: 0px 0px 2px 2px gray;
    border-radius: 10px;
    margin-bottom: 30px;
}   

.one_quarter p{
    padding-top:20px;
}

   hr{
    width:70%;
    margin: 0 auto;
   }


/* -------------------------- form ----------------------------- */
form{
    width:95%;
    border: 2px solid white;
    padding:40px 20px;
    margin: 0 auto;
    text-align: center;
}

input{
    background-color:none;
    padding:15px;
    color:#333333;
    width:90%;
    border:none;
    font-size:1em;
    font-family: inherit;
    border-bottom:1px dotted #333333;
}

textarea{
    background-color:none;
    padding:15px;
    color:#333333;
    width:90%;
    border:none;
    font-family: inherit;
    font-size:1em;
}

.button{
    width:90%;
    background-color:rgba(153, 153, 102, 0.9);
    color:#ffffff;
    font-size:1em;
    padding:20px;
    font-weight: bold;

}


/*----------------------- image slide -----------------------*/

#holder{
    width:60%;
    margin:0 auto;
    padding-top: 250px;
    text-align: center;
}


/* ------------------- responsive design --------------------*/

@media (min-width: 1025px) and (max-width: 1240px) {
    .one_third{
        height:auto;
   }

}

@media (min-width: 1151px) and (max-width: 1400px) {
    .one_quarter img{
        max-width: 200px;
    }
}


@media (min-width: 987px) and (max-width: 1150px) {
    .one_quarter {
        width:48%;
        margin: 0 auto;
        float:left;
        margin-top: 80px;
   }

   .one_quarter img{
    width:100%;
    max-width: 300px;
    }

   .bottom{
    margin-bottom: 120px;
   } 

    #heading2 h2{
    margin: 180px 0 20px 0px;
    }

}

@media  (max-width: 986px) {
    .one_quarter {
        width:100%;
        margin: 0 auto;
        float:left;
        margin-top: 50px;
   }

   .one_quarter img{
    width:100%;
    max-width: 400px;
    }

   .bottom{
    margin-bottom: 120px;
   } 
  
}


@media (min-width: 768px) and (max-width: 1024px) {

.box{
        width: 49%;
        margin-bottom: 5%;
    }

    ul li:nth-child(3) .box{
        clear: both;
    }

    ul li:nth-child(2n) .box{
        margin-right: 0;
        clear: right;
    }

    banner h1{
    font-size: 2.7em;
    padding: 0px 30px;
    }

    #wrapper{
        width:90%;
    }

    .container{
        width:80%;
    }

    .one_third{
        height:auto;
}
}


@media (min-width: 481px) and (max-width: 960px) {
    #one_half {
    width:100%;
    margin: 0 auto;
    padding:80px 70px;
    }

    #one_half_2 {
    width:100%;
    margin: 0 auto;
    padding: 0px 50px 80px 50px;
    margin-bottom: 60px;
    }

 #one_half_3 {
    width:100%;
    margin: 0 auto;
    padding: 0px 50px 80px 50px;
    margin-bottom: 60px;
    }


    #one_half_2 img{
        width:100%;
        max-width: 500px;
    }

    h2{
        font-size: 1.8em;
    }

    p{
        font-size: 1。2em;
    }
}


@media (min-width: 481px) and (max-width: 767px) {

    header{
        height:80px;
    }

    nav{
        height: 0;
        max-height:50px;
        overflow: hidden;
        -webkit-transition: all .3s ease;
        line-height: 50px;
        width: 100%;
        background:#4d4d4d;
    }

    nav :hover{
        background:#cccccc;
            }

    input[type="checkbox"]:checked + nav{
        height: 205px;
    }

    nav>a{
        line-height: 50px;
        display: inline-block;
        font-size: 1em;

    }

    #logo{
        width:100%;
        max-width: 250px;
        height:80px;
    }

    .header-right{
        width: 100%;
        text-align: center;
        height:0;
    }

    .header-left {
        width: 100%;
        text-align: left;
        height:80px;
        padding-left: 20px;
    }

    .hidden-desktop{
        display: block;
        margin: 4px 20px 0 0;
    }

    banner h1{
        font-size: 2.3em;
        margin-top: 80px;
        padding:0px 50px;
    }

    #wrapper{
        width:100%;
    }

    .one_third{
    width:100%;
    height:auto;
    margin-bottom:50px;
    }


    .one_third_gallery{
    width:100%;
    margin: 70px 0px 0px 0px;
    }

    .one_third_gallery img{
        max-width:500px;
    }

    #heading h2{
        margin: 80px 0 60px 0;
        font-size: 1.8em;

    }

    .last{
        margin-bottom: 180px;
    }

    .left{
        text-align: left;
    }

    section .container{
        width:85%;
        margin: 0 auto;
    }

     #one_half_2 {
    width:100%;
    margin: 0 auto;
    padding: 0px 50px 80px 50px;
    margin-bottom: 40px;

  }    

     #one_half_3 {
    width:100%;
    margin: 0 auto;
    padding: 0px 0px 80px 0px;
    margin-bottom: 40px;
}

     .one_third_gallery img{
        max-width:400px;
    }

    #holder{
    width:80%;
    padding-top: 180px;
    }


}

/* ------------------------------------------------------ */

@media (max-width: 480px) {
    nav{
        height: 0;
        overflow: hidden;
        -webkit-transition: all .3s ease;
        line-height: 50px;
        width: 100%;
        background:#4d4d4d;
        z-index:9999;
    }

    nav :hover{
        background:#cccccc;
    }

    input[type="checkbox"]:checked + nav{
        height: 205px;
    }

    nav>a{
        line-height: 50px;
        display: inline-block;
        border-bottom: solid 1px rgba(255,255,255,.1);
        font-size: 1em;
        width:100%;
    }

    header{
        height:80px;
        }

    #logo{
    width:100%;
    max-width: 200px;
    height:70px;
    }

    .header-right{
        width: 100%;
        text-align: center;
        height:0;
    }

    .header-left {
        width: 100%;
        text-align: left;
        height:70px;
        padding-left: 20px;
    }


    .hidden-desktop{
        display: block;
        margin: 9px 15px 0 0;
    }

    footer span{
        display: none;
    }

    footer p{
        font-size: 0.9em;
    }

    banner{
        z-index: 1;
    }

    banner h1{
        font-size: 1.7em;
        margin-top: 80px;
        padding: 0px 40px
    }

    #heading2 h2{
        margin-top:150px;
    }

    #wrapper{
        width:100%;
        margin: 0 auto;
    }

    #one_half {
    width:100%;
    margin: 0 auto;
    padding:80px 50px;
    }

    #one_half_2 {
    width:100%;
    margin: 0 auto;
    padding: 0px 50px 80px 50px;
    margin-bottom: 40px;
    }

     #one_half_3 {
    width:100%;
    margin: 0 auto;
    padding: 0px 0px 120px 0px;
    margin-bottom: 40px;
    }




    #one_half_2 img{
        width:100%;
        max-width: 400px;
        margin-bottom: 0px;
    }

    
    h2, section h2{
        font-size: 1.5em;
    }

    p{
        font-size: 1em;
    }

    .one_third{
    width:100%;
    margin: 0px 0px 50px 0px;
    border: 2px solid #cccccc;
    box-shadow: 0px 0px 1px 1px #cccccc;
    border-radius: 10px;
    background: rgba(204, 204, 204, 0.7);
    line-height:1.5em;
    height:auto;
    }

    #heading h2{
        margin: 80px 0 60px 0;
    }

    .last{
        margin-bottom: 140px;
    }

    .left{
        text-align: left;
    }

    section .container{
        width:80%;
        margin: 0 auto;
    }

    .one_third_gallery{
    width:100%;
    margin: 50px 0px 20px 0px;
    }

    .one_third_gallery img{
        max-width:300px;
    }

    #holder{
    width:90%;
    padding-top: 120px;
    }
}    

