/*tl icon*/
.tl{position:fixed;right:0.5%;top:16%;z-index:1000;}
/*LINE icon*/
.line{position:fixed;right:0.5%;top:24%;z-index:1000;}


@media only screen and (max-width: 480px) {
  .tl{position:fixed;right:0.5%;top:40%;z-index:1000}
  .line{position:fixed;right:0.5%;top:46%;z-index:1000;}
}

@media(max-width:428px){
  .tl, .line{
    transform:scale(0.85);  }
}

/*go_top*/
#gotop {
    display: none;
    position: fixed;
    right: 20px;
    bottom: 20px;
    padding: 18px 15px;
    font-size: 17px;
    border-radius: 10px;width:60px;height:60px;
    background-color: #86bb46;
    color: white;
    text-align:center;
    cursor: pointer;
}



/*body*/
.row [class^="col-"] {
  padding:10px;
}


body[data-type="fullpage"]:not(#managehome) #wrap > :not(:last-child) { margin-bottom: 0px; }


/*logo*/

 #logo img {
   padding: 0 16px 16px;
 }


/*top*/
.navbar-nav > li > a {
    color: #fff;
}


.topnavbar .container {
  text-align: justify;
  font-size: 0;
  /*text-align: center;*/  
  padding-top:0px;
}

.topnavbar .container::after {
  content: "";
  display: inline-block;
  width: 100%;
}

.topnavbar {
  background-color: #fff;
  top:0px;
  position: relative;
  z-index:100;
  width:100%;
  padding: .6rem 0;
  height: 100px;
}



/*nav*/
#nav ul li a {
    white-space: nowrap;
    color: #333;
    line-height: 1.3;
    font-weight: normal;
    padding: 10px 18px;
    font-size: 95%;
    border-right: 1px #888 dotted;
    transition:all 0.5s;
}

#nav ul li a:hover{
    color: #1580c3;
}

#nav ul li a span{transition:all 0.5s;}

#nav ul li a:hover span{border-top:2px solid #1580c3;padding-top:5px;}


#nav ul li.current a  {
    color: #1580c3;  
}

#nav .subnav {
    position: absolute;
    top: 100%;
    max-width: 200px;
    background-color: rgba(75,75,75,0.55);
} 


#nav ul .subnav li a {
    background-color: rgba(75, 75, 75,0.85);
    color: #fff;
    text-align: left;
    width: 200px;
}

#nav ul li .subnav a span {
    display: inline-block;
    max-width: 200px;
    padding: 0px 10px;
    border-top:0px;
}

#nav ul li .subnav a span:hover  {
    display: inline-block;
    max-width: 200px;
    border-top: 0px solid;
    padding: 0px 10px;
    border-top:0px;
}

#nav li.has-subnav ul li a {
    color: #fff;
    width:200px;
    white-space: pre-line;
    padding:12px 5px;
  }



/*Banner*/
.swiper-container {
  height: auto !important;
}

#bodyinhome .swiper-wrapper,#bodyinhome .swiper-slide {
  height: 0 !important;
  padding-bottom: calc(800 / 1920 * 100%); /* 注意圖片高度與寬度要去掉單位 */
}

#bodyinpage .swiper-wrapper,#bodyinpage .swiper-slide {
  height: 0 !important;
  padding-bottom: calc(500 / 1920 * 100%); /* 注意圖片高度與寬度要去掉單位 */
}

.swiper-slide {
  width: 100% !important;
}



/*Index_1*/
#bodyinhome .fcol.fcol-1 .container{
   padding:60px 20px;
}

.ab.row{
   background:#efefef;
   padding:30px;
   position: relative;
   z-index:99999;
   margin-right:-55px;
   margin-top:15%;   
}

@media(max-width:480px){
  .ab.row{
   position: relative;
   z-index:1;
   margin-top:5%;   
   margin-left:-5px; 
   margin-right:5px; 
   padding:20px; 
  }
}


/*bt*/
#call a.more-btn {
  position: relative;
  margin-top: 53px;
  padding: 10px 20px;
  border: solid 1px #ccc;
  color: #333;
  font-size:18px;
  border-radius: 0em;
  display: block;
  width:200px; 
  margin:5% auto;

}

#call a.more-btn span {
    color: #FFE9AB;
    text-shadow: 0px 0px 6px rgba(248, 255, 51, 0.76);
}

#call a.more-btn:hover{
    color: #fff;
    text-decoration: none;
}

#call a.more-btn::before {
  content: "";
  position: absolute;
  z-index: -1;
  background-color: #86bb46;
  left: 0px;
  top: 0px;
  bottom: 0px;
  width: 0px;
  border-radius: 0em;
}


#call a.more-btn:hover:before {
    right: 0px;
    width: 100%;
    border-radius: 0em;
}

#call a.more-btn:before {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}


#call a.more-btn span {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

@media(max-width:767px){
.mobile-br:before { 
    content: ' '; 
    display: block;
 }
}


/*Index_2*/
#bodyinhome .fcol.fcol-2{
  background:url(https://static.iyp.tw/409060/files/3fe40f78-a76a-4091-b30e-a6a5ff989e65.png);
  background-position:top 30% center;
  background-size:cover;
  min-height:400px;  
}


#bodyinhome .fcol.fcol-2 .container{
   max-width:100%;
   width:100%; 
   padding:60px 20px;
}


.courBox {
    width: 100%;
}

.courBox .mark {
    transition: 0.4s;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    z-index: 2;
    background: #000;
    opacity: 0;
}

.courBox li {
    position: relative;
    float: left;
    width: 25%;
    list-style: none;
}

.courBox .courTxt {
    overflow: hidden;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    padding-left: 30px;
    z-index: 3;
    text-shadow: black 0.1em 0.1em 0.2em;
}

.courBox li a:hover .mark {
      -webkit-transition: 0.4s;
      transition: 0.4s;
      opacity: 0.5; }


.courBox .courTxt p {
    font-family:'cwTeXYen';
    position: relative;
    display: block;
    color: #fff;
    font-size: 1rem;
    opacity: 0;
    top: 10px;
    transition: 0.4s;
}

.courBox li .courTxt p {
      opacity: 0;
      -webkit-transition: 0.4s;
      transition: 0.4s;
      top: 10px;
      left:30px;
}

.courBox li:hover .courTxt p {
      opacity: 1;
      -webkit-transition: 0.4s;
      top: -10px; 
      left:30px;
}


.courBox .courTxt h3 {
    font-family:'cwTeXYen';
    display: block;
    font-size: 1.750rem;
    color: #fff;
    margin-bottom: 30px;
    padding-left: 30px;
   font-weight: bold;
}

.courBox .courTxt h3::after {
    content: '';
    margin-top: 15px;
    display: block;
    width: 15%;
    height: 5px;
    background: #237dc5;
}

.courPhoto .mark:hover{opacity:0.65;}

@media(max-width:960px){
.courBox li {
    width: 50%;
  }
} 

@media(max-width:767px){
.courBox .courTxt h3 {
    font-size: 1.550rem; 
 }
}  

@media(max-width:480px){
.courBox .courTxt  {
    padding-left: 10px;
    padding-top:00%;
 }  
} 


/*Index_3*/
#bodyinhome .fcol.fcol-3 .container{
   padding:60px 20px;
}

#service .list article {
  background: #fff;
  width: 90%;
  margin: 0%;
  box-shadow: 0px 5px 15px rgba(0,0,0,0.16);
  padding: 15px 15px 5px;
  text-align: left;
  height: 450px;
}

@media screen and (max-width: 768px) {
  #service .list article {
    height: 490px;
  }
}

#service .list article a {
  display: block;
}

#service .list article .image_hover {
  height: 75%;
  display: flex;
  align-items: center;
}

#service p {
  font-size: 90%;
  padding: 8px 0px;
  color: #777;
}

#service p span {
  padding: 8px 0px;
  color: #000;
}

.image_hover {
  width: 100%;
  height: auto;
  position: relative;
  overflow: hidden;
}

.image_hover img {
  margin: auto;
  transition: transform 0.6s ease;
}

.image_hover:hover img {
  transform: scale(1.2);
}

.project .dfd-folio-categories .byline.category {
  display: inline-block;
  overflow: hidden;
  margin-bottom: 10px;
}

span.cat-name {
  background: #1580c3;
  padding: 5px 15px;
  float: right;
}


/*Index_4*/
#bodyinhome .fcol.fcol-4{
   background:url(https://static.iyp.tw/409060/files/982e2009-71d0-407b-8b69-0f63511b07da.png)no-repeat;
   background-position:top center;
   background-size:cover;
   min-height:300px;     
}


#bodyinhome .fcol.fcol-4 .container{
   padding:120px 20px 60px;
}


/*Index_5~6*/
#bodyinhome .fcol.fcol-5,
#bodyinhome .fcol.fcol-6{
  display:none;  
}


/*bt*/
#call2 a.more-btn {
  position: relative;
  margin-top: 40px;
  padding: 10px 20px;
  border: solid 1px #fff;
  color: #fff;
  font-size:18px;
  border-radius: 0em;
  display: block;
  /*width:250px;*/
  margin:10% auto;
  z-index: 9999;
}

@media(max-width:480px){
  #call2 a.more-btn {
      margin:0% auto;
  }
}

#call2 a.more-btn span {
    color: #fff;
    text-shadow: 0px 0px 6px rgba(248, 255, 51, 0.76);
}

#call2 a.more-btn:hover{
    color: #fff;
    text-decoration: none;
}

#call2 a.more-btn::before {
  content: "";
  position: absolute;
  z-index: -1;
  background-color: #86bb46;
  left: 0px;
  top: 0px;
  bottom: 0px;
  width: 0px;
  border-radius: 0em;
}


#call2 a.more-btn:hover:before {
    right: 0px;
    width: 100%;
    border-radius: 0em;
}

#call2 a.more-btn:before {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}


#call2 a.more-btn span {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}



/*h1*/
.h1title h1{
   display:none;
}


/*pd*/
ul.product-list li h3 {
  flex:1 0 auto;
  max-height:3.15rem;
  margin:0.7rem 0;
  font-size:1.05rem;
  line-height:1.5;
  color:inherit;
  overflow:hidden;
  padding:0 16px;
  color: #333;
}

/*news*/
.nw.row img{
  box-shadow: 0 5px 5px rgba(44,44,44,0.25);
}


/*form*/
.mark {
  color: #C33;
  margin: 0 3px;
  background: none;
}


/*footer*/
#foot-nav{
  display:none;
}

@media(max-width:480px){
  #footer .col-md-3,
  #footer .col-md-5{
   flex: 0 0 100%;
  }
}

/*gallery */
div.gallery {
  margin: 5px;
  border: 1px solid #ccc;
  float: left;
  width: 24%;
}

@media(max-width:480px){
  div.gallery {
  margin: 5px;
  border: 1px solid #ccc;
  float: left;
  width: 22%;
}  
}

div.gallery:hover {
  border: 1px solid #777;
}

div.gallery img {
  width: 100%;
  height: auto;
}

div.desc {
  padding: 15px;
  text-align: center;
}


/*文字滑過變色方塊*/
.serveimg {
   display: block;
   text-align: center;
   width: 100%;
   min-height:100px
   padding-bottom: 100%;
   background:  #0a4881;
   overflow: hidden;
   position: relative;
   padding:10px 10px;
}
.serveimg:hover {
     display: block;
   text-align: center;
   width: 100%;
   min-height:100px
   padding-bottom: 100%;
   background: #4682b4;
   overflow: hidden;
   position: relative;
   padding:10px 10px;
}
