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

body {
  font-family: 'Merriweather','Helvetica Neue','微軟正黑體', Arial, sans-serif; 
  background-color: #000000;
  color: #FFFFFF;}

hr {
  max-width: 50%;
  border-width: 3px;
  border-color: rgba(255, 255, 255, 1); }

a {
  color: #F05F40;
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  transition: all 0.2s; }
  a:hover {
    color: #f05f40;
    text-decoration: none; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Open Sans','Helvetica Neue',微軟正黑體, Arial, sans-serif; }

.bg-primary {
/*  background-color: #F05F40 !important; }*/
  background-color: #000000 !important; }
    
.bg-dark {
  background-color: #212529 !important; }

.text-faded {
  color: rgba(255, 255, 255, 0.7); }

section {
  padding: 4rem 0; 
  }
  @media (min-width: 992px){ 
    section{
      padding: 8rem 0; 
    }
  }

::-moz-selection {
  color: #fff;
  background: #212529;
  text-shadow: none; }

::selection {
  color: #fff;
  background: #212529;
  text-shadow: none; }

img::selection {
  color: #fff;
  background: transparent; }

img::-moz-selection {
  color: #fff;
  background: transparent; }

body {
  -webkit-tap-highlight-color: #212529; }

#mainNav {
  border-bottom: 1px solid rgba(33, 37, 41, 0.1);
  background-color: #fff;
  font-family: 'Open Sans', 'Helvetica Neue', Arial, sans-serif;
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  transition: all 0.2s; }
  #mainNav .navbar-brand {
    font-weight: 700;
    text-transform: uppercase;
    color: #F05F40;
    font-family: 'Open Sans', 'Helvetica Neue', Arial, sans-serif; }
    #mainNav .navbar-brand:focus, #mainNav .navbar-brand:hover {
      color: #f05f40; }
  #mainNav .navbar-nav > li.nav-item > a.nav-link,
  #mainNav .navbar-nav > li.nav-item > a.nav-link:focus {
    font-size: 1rem;
    font-weight: 700;
    text-transform: uppercase;
    color: #212529; }
    #mainNav .navbar-nav > li.nav-item > a.nav-link:hover,
    #mainNav .navbar-nav > li.nav-item > a.nav-link:focus:hover {
      color: #F05F40; }
    #mainNav .navbar-nav > li.nav-item > a.nav-link.active,
    #mainNav .navbar-nav > li.nav-item > a.nav-link:focus.active {
      color: #F05F40 !important;
      background-color: transparent; }
      #mainNav .navbar-nav > li.nav-item > a.nav-link.active:hover,
      #mainNav .navbar-nav > li.nav-item > a.nav-link:focus.active:hover {
        background-color: transparent; }
  @media (min-width: 992px) {
    #mainNav {
      border-color: transparent;
      background-color: transparent; }
      #mainNav .navbar-brand {
        color: rgba(255, 255, 255, 0.7); }
        #mainNav .navbar-brand:focus, #mainNav .navbar-brand:hover {
          color: #fff; }
      #mainNav .navbar-nav > li.nav-item > a.nav-link {
        padding: 0.5rem 1rem; }
      #mainNav .navbar-nav > li.nav-item > a.nav-link,
      #mainNav .navbar-nav > li.nav-item > a.nav-link:focus {
        color: rgba(255, 255, 255, 0.7); }
        #mainNav .navbar-nav > li.nav-item > a.nav-link:hover,
        #mainNav .navbar-nav > li.nav-item > a.nav-link:focus:hover {
          color: #fff; }
      #mainNav.navbar-shrink {
        border-bottom: 1px solid rgba(33, 37, 41, 0.1);
        background-color: #fff; }
        #mainNav.navbar-shrink .navbar-brand {
          color: #F05F40; }
          #mainNav.navbar-shrink .navbar-brand:focus, #mainNav.navbar-shrink .navbar-brand:hover {
            color: #f05f40; }
        #mainNav.navbar-shrink .navbar-nav > li.nav-item > a.nav-link,
        #mainNav.navbar-shrink .navbar-nav > li.nav-item > a.nav-link:focus {
          color: #212529; }
          #mainNav.navbar-shrink .navbar-nav > li.nav-item > a.nav-link:hover,
          #mainNav.navbar-shrink .navbar-nav > li.nav-item > a.nav-link:focus:hover {
            color: #F05F40; } }


  @media (max-width: 991px){
    #navbarResponsive .navbar-nav{
      margin-top:10px;
      flex-direction: row;
      justify-content:space-around;
    }
  }
  @media (max-width: 575px){ 
    #mainNav .navbar-nav > li.nav-item > a.nav-link,
    #mainNav .navbar-nav > li.nav-item > a.nav-link:focus{
      font-size:.9rem;
    }
  }

header.masthead {
  padding-top: 5rem;
/*  padding-bottom: calc(10rem - 56px);*/
  background-color: black;
/*  background-image: url("../img/header.jpg");*/
  background-position: center center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover; }
  @media (min-width: 992px) {
    header.masthead {
      padding-top: 0;
      padding-bottom: 0; }
  }

.service-box {
  display: flex;
  flex-direction: column;
  justify-content: center;}

.text-primary {
    color: #ff3838 !important; }

#mainLogo{
  width:75px;
  }
  @media (min-width: 768px){
    #mainLogo{
      width:100px;
    }
  }
  @media (min-width: 992px) {
    #mainLogo{
      width:125px;
    }
  }

#foot-logo{
  margin-top: .5rem;
  margin-bottom: .5rem;
  display: flex;
  justify-content: center;
  align-items: center;
}


/* --homepage-- */

#img-background{
  display: block;
  margin:auto;
  max-width:100%;
}

  @media (max-width: 575px){
    section#content{
      padding-top:2rem;
    }
  }

#content div{
  margin-bottom: .7em;
}

#col-logo{
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  }
  #col-logo img,
  #foot-logo img{
     width:115px;
  }
  @media (min-width: 576px){
    #col-logo img,
    #foot-logo img{
      width:125px;
    }
  }
  @media (min-width: 768px){
    #col-logo img,
    #foot-logo img{
      width:140px;
    }
  }
  @media (min-width: 1200px){
    #col-logo img,
    #foot-logo img{
      width:160px;
    }
  }

#content{
  font-size: .95rem;
  }
  @media (min-width: 768px){
    #content{
      font-size:1rem;
    }
  }
  @media (min-width: 1200px){
    #content{
      font-size:1.1rem;
    }
  }

#content p{
  font-family: 'Raleway', Arial, sans-serif;
  text-transform: none;
  color: rgba(255,255,255,0.9);
  font-weight: 500;
  font-size: 1em;
  letter-spacing: 1px;
}

.service-box h2{
  font-size:1.5em;
  }
  margin-bottom: .2em;
  @media (min-width: 399px){
    .service-box h2{
      font-size:1.75em;
    }
  }
.service-box span{
  font-size:4em;
  margin-bottom: .2em;
}
.service-box p{
  font-size:1em;
}


#foot-bar {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  }
  @media (min-width: 705px){
    #foot-bar{
      flex-direction: row;
    }
  }
#foot-bar,
#foot-bar-bottom{
  font-size: .75rem;
  }
  @media (min-width: 370px){
    #foot-bar,
    #foot-bar-bottom{
      font-size:.8rem;
    }
  }
  @media (min-width: 1046px){
    #foot-bar,
    #foot-bar-bottom{
      font-size:.9rem;
    }
  }
  @media (min-width: 1200px){
    #foot-bar,
    #foot-bar-bottom{
      font-size:1rem;
    }
  }
#foot-bar div{
  margin-right: 1.5em;
  }
  @media (max-width: 705px){
    #foot-bar div{
      text-align: center;
      justify-content: center;
      margin-right: 0px;
    }
  }

#foot-bar #name-cpy p{
  font-family: "Open Sans", "Helvetica Neue", 微軟正黑體, Arial, sans-serif;
  line-height: 1.2;
  font-size:1.1em;
  }
  @media (min-width: 350px){
    #foot-bar #name-cpy p{
      font-size:1.25em;
    }
  }
#foot-bar p,
#foot-bar i,
#foot-bar span{
  font-size:1em;
}

#foot-bar p,
#foot-bar i,
#foot-bar span,
#foot-bar h1{
  margin-bottom: 1em;
  }
  @media (max-width: 705px){
    #foot-bar p,
    #foot-bar i,
    #foot-bar span,
    #foot-bar h1{
      margin-bottom: .7em;
    }
  }

#foot-bar #foot-content{
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center;
  }
  @media (min-width: 992px){
    #foot-bar #foot-content{
      flex-direction: row;
    }
  }

#foot-bar #foot-content #name-cpy{
  display: flex;
  flex-direction: column;
  }
  @media (min-width: 500px){
    #foot-bar #foot-content #name-cpy{
      flex-direction: row;
    }
  }

#foot-bar #foot-content #name-cpy p:first-child{
  margin-right: 0em;
  }
  @media (min-width: 500px){
    #foot-bar #foot-content #name-cpy p:first-child{
      margin-right: 1em;
    }
  }

#foot-bar-bottom {
  text-align: center;
}

.text-indent{
  text-indent: 2em;
}

/* --gallery-- */
.content{
  padding-bottom: 30px;
  padding-top: 30px;

  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
          align-items: center;
  -webkit-justify-content: center;
          justify-content: center;
}

/* --side-- */
#side{
  padding-top:20px;
  background: rgba(255, 255, 255, 0.1);
  margin-left:auto;
  margin-right:auto;
  padding-left: 15px;
  padding-right: 15px;
  margin-bottom: .5em;
  font-size:1rem;
  
  border-radius: 20px;
  min-width: 200px;
  display: flex;
  flex-direction: column;
  }
  @media (max-width: 991px){
    #side{
      font-size:.9rem;
    }
  }
  @media (max-width: 767px){
    #side{
      font-size:.8rem;
    }
  }
  @media (max-width: 515px){
    #side{
      font-size:.7rem;
    }
  }

#side.side-adjust ul li span{
  font-size:1em;
  }
  @media (max-width: 370px){
    #side.side-adjust ul li span{
      display: none;
    }
  }

#side.side-adjust ul li{
  margin-left:.6em;
  width: 130px;
  }
  @media (max-width: 991px) {
    #side.side-adjust ul li{
      width: 120px;
    }  
  }
  @media (max-width: 767px) {
    #side.side-adjust ul li{
      width: 105px;
    }  
  }
  @media (max-width: 515px) {
    #side.side-adjust ul li{
      width: 95px;
    }  
  }
  @media (max-width: 370px) {
    #side.side-adjust ul li{
      width: 65px;
    }  
  }

#side.side-adjust #v-return a,
#side.side-adjust #h-return a{
  margin-left:.6em;
  }
  @media (min-width: 992px){
    #side.side-adjust #v-return a,
    #side.side-adjust #h-return a{
      width: 130px;
    }
  }

#side .title span{
  font-size:1em;
}
#side .title p{
  font-family: 'Sniglet',cursive, Arial, sans-serif;
  flex-grow: 1;
  font-size:1.3em;
  font-weight: 500;
  margin:0px;
}

#side i{
  margin-left: 5px;
  color:#d94600;
}

#side > .tabs{
  display: flex;
  flex-direction: row;
  flex-grow: 1;
  }

  @media (min-width: 992px){
    #side.side-adjust>.tabs{
    flex-direction: column;
    }
  }

#side>.tabs>ul{
  padding:0px ;
  list-style: none;
  display: flex;
  flex-direction: row;
  flex-grow: 1;
  flex-wrap: wrap;
  }

  @media (min-width: 992px){
    #side.side-adjust>.tabs>ul{
    flex-direction: column;
    }
  }

#side a{
  display: block;
  padding: 5px 15px;
  text-decoration: none;
  -webkit-transition: all 200ms ease-in-out 0s;
  transition: all 200ms ease-in-out 0s;
  color:rgba(255, 255, 255, 0.87);
  font-family: 'Open Sans', 'Helvetica Neue', Arial, sans-serif;
  font-weight: 600;
  font-size:1.2em;
  }
  #side a:hover{
    color:#F05F40;
  }
  #side .active a{
    color:#ff3838;
  }

  @media (min-width: 992px){
    #side.side-adjust a{
    padding: 15px;
    }
  }

#side .title{
  display: flex;
  flex-direction: row;
}

#side.side-adjust #h-return{
  display:block;
  }
  @media (min-width: 992px){
    #side.side-adjust #h-return{
      display:none;
    }
  }

#side.side-adjust #v-return{
  display:none;
  }
  @media (min-width: 992px){
    #side.side-adjust #v-return{
      display:block;
    }
  }


/* --Product-- */

.heading{
  font-family: 'Montserrat', sans-serif;  
  font-weight: 500;
  padding:5px 0px;
}

.double-border{
  margin: 15px 0px;
  border-top: 3px;
  border-bottom: 3px;
  border-left: 0px;
  border-right: 0px;
  border-color: #6c6c6c;
  border-style: double;
}

.groove-border{
  margin: 15px 0px;
  border-top: 0px;
  border-bottom: 3px;
  border-left: 0px;
  border-right: 0px;
  border-color: #6c6c6c;
  border-style: groove;
}

.col-border{
  background-image: url(/img/darkdenim.png);
  border: 1px dashed #6c6c6c;
  border-radius: 10px;
  margin: 5px 0px;
}

/* -- Contact */

#col-contact{
/*
  display: flex;
  flex-direction: column-reverse;
*/
  text-align: center;
  }
/*
  @media (min-width: 992px) {
    #col-contact{
      flex-direction: row;
    }
  }
*/

#col-contact-content{
  padding: 5px 20px;
  margin-top: 0px;
  margin-bottom: 0px;
  height: 100%;
  
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-self: flex-start;
}

#col-contact-content #foot-logo img{
  margin-bottom: .7em;
}

#col-contact-content #name-cpy p{
  font-size: 1.7em;
  font-family: "Open Sans", "Helvetica Neue", 微軟正黑體, Arial, sans-serif;
  margin-top: 0;
  margin-bottom: .5em;
}

#col-contact p,
#col-contact a{
  font-family: 'Raleway', Arial, sans-serif;
  text-transform: none;
  font-weight: 500;
  font-size: 1em;
  letter-spacing: 1px;
  }

.col-map{
  padding: 10px;
  border: 1px;
  border-color:rgba(255, 255, 255, 0.4);
  border-style:solid;
}

#google_map{
  min-height: 300px;
  height: 100%;
  opacity: 0.7;
  -webkit-transition: 0.35s, -webkit-transform 0.5s;
  transition: 0.35s, transform 0.5s;
  }
  #google_map:hover{
    opacity: 1;
  }

.map_labels {
  font-family: 'Raleway','微軟正黑體', Arial, sans-serif;
  color: #FFF;
  font-size:14px;
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 4px;
  padding: 2px 5px;
}

.p_normal{
  font-family: 'Raleway', Arial, sans-serif;
  text-transform: none;
  color: rgba(255,255,255,0.9);
  font-weight: 500;
  font-size: 1em;
  letter-spacing: 1px;
}

.dynamic-opacity{
  opacity: 0; !important
}