html {
    height: 100%;
    width: 100%;
}

body {
    margin: 0;
    padding: 0;
    font-family: 'Arial', 'Helvetica', 'LiHei Pro', 'Microsoft JhengHei', sans-serif;
    width: 100%;
    height: 100%;
    font-weight: 400;
    overflow-x: hidden;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: inherit;
    font-weight: 400;
    line-height: 1.1;
    color: #3e3e3e;
}

p {
    font-size: 1.8rem;
}

strong {
    color: #3177b3;
}

.opp {
    opacity: 1;
}

@media only screen and (min-width: 45px) {
    .flex-row.row {
        display: flex;
        flex-wrap: wrap;
    }
    .flex-row.row>[class*='col-'] {
        display: flex;
        flex-direction: column;
    }
    .flex-row.row:after,
    .flex-row.row:before {
        display: flex;
    }
}

.flex-row .thumbnail,
.flex-row .caption {
    display: flex;
    -webkit-box-flex: 1;
    flex: 1 0 auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
}

.flex-text {
    flex-grow: 1
}

.flex-row img {
    height: auto;
    /*width:100%;*/
}

.loading-overlay{display:table;opacity:0.7;}
.loading-overlay-content{text-transform:uppercase;letter-spacing:0.4em;font-size:1.15em;font-weight:bold;text-align:center;display:table-cell;vertical-align:middle;}
.loading-overlay.loading-theme-light{background-color:#fff;color:#000;}
.loading-overlay.loading-theme-dark{background-color:#000;color:#fff;}

/*======================
=top
=========================*/

.top {
    background: url('../img/topbg.jpg') no-repeat center center fixed;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    height: 100%;
    width: 100%;
}

.top:before {
    content: "";
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.bannertitle{
    float: right;
}

.circle {
    padding: 20% 0 0 0;
}

.phoneimg {
    float: right;
    padding: 5% 0 0 0;
}


/*======================
= contact
======================*/

.contact {
    background: url('../img/contact.png') no-repeat right center fixed;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    height: 100%;
    width: 100%;
}

.row span {
    position: relative;
    display: inline-block;
    margin: 30px 10px;
    width: 80%;
}

.basic-slide {
    display: inline-block;
    width: 100%;
    padding: 10px 0 10px 15px;
    font-family: "Open Sans", sans;
    font-weight: 400;
    color: #2e2e2e;
    background: #faface;
    border: 0;
    border-radius: 3px;
    outline: 0;
    text-indent: 90px;
    transition: all .3s ease-in-out;
}

.basic-slide::-webkit-input-placeholder {
    color: #efefef;
    text-indent: 0;
    font-weight: 300;
}

.basic-slide+label {
    display: inline-block;
    position: absolute;
    width: 90px;
    top: 0;
    left: 0;
    padding: 10px 15px;
    text-shadow: 0 1px 0 rgba(19, 74, 70, 0.4);
    background: #f7f74a;
    transition: all .3s ease-in-out;
    border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
}

.basic-slide:focus,
.basic-slide:active {
    color: #377D6A;
    text-indent: 0;
    background: #fff;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.basic-slide:focus::-webkit-input-placeholder,
.basic-slide:active::-webkit-input-placeholder {
    color: #aaa;
}

.basic-slide:focus+label,
.basic-slide:active+label {
    transform: translateX(-100%);
}

.cbtn .btn {
    padding: 16px 12px;
}

.contacttitle h2 {
    font-size: 40px;
}

.contactsub h4 {
    font-size: 25px;
}

@media screen and (max-width: 480px) {
    .contacttitle h2 {
        font-size: 30px;
    }
    .contactsub h4 {
        font-size: 20px;
    }
    .row span {
        margin: 20px 0px;
    }
}

@media screen and (max-width: 376px) {
    .contacttitle h2 {
        font-size: 26px;
    }
    .contactsub h4 {
        font-size: 14px;
    }
    .row span {
        margin: 10px 0px;
    }
}



/*====================
=icon
====================*/

.icon {
    background: #c3cacb;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    height: 100%;
    width: 100%;
}

.icontitle {
    padding: 1%;
    border-radius: 2rem;
    background: #faf9f7;
    text-align: center;
    margin-top: 2%;
}

.icontitle h3 {
    font-size: 40px;
    color: #FF5252;
}

.iconitem img {
    margin: 0 auto;
    width: 30%;
}

.iconitem h4 {
    font-size: 25px;
}

.iconitem hr {
    border-top: 10px solid #EEE;
    border-radius: 1rem;
    width: 60%;
}

@media screen and (min-width: 769px){
    .iconitem{
    margin:10% 0; 
    }
}

@media screen and (max-width: 769px) {
    .iconitem img {
        width: 55%;
    }
}

@media screen and (max-width: 480px) {
    .iconitem img {
        width: 45%;
    }
    .icontitle h3 {
        font-size: 25px;
    }
    .iconitem h4 {
        font-size: 20px;
    }
}

@media screen and (max-width: 376px) {
    .iconitem img {
        width: 40%;
    }
    .icontitle h3 {
        font-size: 22px;
    }
    .iconitem h4 {
        font-size: 18px;
    }
}


/*====================
=
====================*/

.footertop {
    background: url('../img/footer.png') no-repeat center center fixed;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    height: 100%;
    width: 100%;
}

.footbtn {
    margin: 2% 0;
}

.footertitle h5{
    color: #FFF;
}
.footertitle p{
    color: #FFF;
}
.footertitle a{
    color: #FFF;
}

@media screen and (max-width: 480px) {
    .footertoptitle h3 {
        font-size: 30px;
    }
}

@media screen and (max-width: 376px) {
    .footertoptitle h3 {
        font-size: 20px;
    }
}
footer{
    background: #a1a1a0;
}

.footaside img{
    margin:0 auto;
    max-width: 100%;
}
@media screen and (max-width: 1450px) {
 .footaside img{
    margin:0 auto;
    width: 50%;
}   
}

@media screen and (max-width: 768px) {
 .footaside img{
    margin:0 auto;
    width: 50%;
}   
}

@media screen and (max-width: 480px) {
 .footaside img{
    margin:0 auto;
    width: 80%;
}   
}
@media screen and (max-width: 375px) {
 .footaside img{
    margin:0 auto;
    width: 100%;
}   
}