@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@600&display=swap');

/* CSS Document */

/*reset*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
caption, tfoot, thead, 
article, aside, canvas, details, embed, 
figure, .figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;

border: 0;
font-size: 100%;
font-family: Arial,微軟正黑體,Microsoft JhengHei;
vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, .figcaption, figure, 
footer, header, hgroup, menu, nav, section {
display: block;
}
html{height:100%;}
body{line-height:1; color: #000 !important; background-color: #fff !important; position: relative;}
blockquote, q{quotes:none;}
blockquote:before, blockquote:after,
q:before, q:after{content:''; content:none;}
table{border-collapse:collapse; border-spacing:0;}
sup{vertical-align:super;}

button{cursor:pointer;}

.text-center {
	text-align: center;
}

.text-right {
    text-align: right;
}

.high-center {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
}

.row {
    width: 100%;
    padding: 0 !important;
    margin: 0 !important;
}

/*button style*/
.primary-btn {
	padding-top: 10px;
	margin-right: 10px;
}
.primary-btn a, 
.primary-btn button {
    color: #fff;
    padding: 10px 36px;
    border-radius: 50px;
    transition: all 0.5s;
}
.primary-btn button {
    border: 0;
}
.primary-btn a:hover, 
.primary-btn button:hover {
    color: #fff;
}
.primary-btn i {
    transition: all 0.5s;
}
.primary-btn a:hover i, 
.primary-btn button:hover i {
    transform: translateX(8px);
}

/*start*/
#wrapper{
    height: 100%;
	min-height:100%;
    overflow: hidden;
	position:relative;
}
header{
    background: linear-gradient(to bottom, rgb(0, 0, 0, 0.4) 0%, rgb(0, 0, 0, 0) 100%);
    height: 80px;
	width:100%;
	position:fixed;
	z-index:998;
    /*box-shadow: 0 2px 8px rgb(0 0 0 / 20%);*/
}
img{width:100%; height:auto; margin:0px auto;}

nav{width: 100%; max-width: 1400px; margin:0 auto;}

nav>ul{
	float:right;
	padding-top: 3px;
	padding-left:0;
    margin-top: 1rem;
    display: flex;
    justify-content: flex-end;
}

nav>ul>li{display:inline-block; padding:10px;}

nav>ul>li>a{
	color:#000;
	font-size:16px;
	text-decoration:none;
	padding: 15px 0 30px;
	letter-spacing:.1em;
	position:relative;
	transition: all 0.5s;
}

nav>ul>li>a>i {
	font-size: 18px;
	padding: 0 5px;
}

nav>ul>li>a::after{
    content:"";
    position:absolute;
    height:2px;
    width:100%;
    transform:scale(0,1);
    background:#00aced;
    transition:all 0.2s ease-in-out;
    top:40px;
    border-radius:5px;
    left:0%;
}

nav>ul>li a:hover{color:#00aced;}
nav>ul>li a:hover::after{transform:scale(1,1);}

.nav-lan-box{
	margin-left:15px;
	display:flex;
	align-items:center;
	position:relative;
	}

.nav-lan-box .nav-lan-btn{color:#000; cursor:pointer;}
.nav-lan-btn i{margin-right:5px;}

.nav-lan-list{
	padding-left:0;
	list-style:none;
    position:absolute;
    top:100%;
    left:50%;
    margin-left:-35px;
    -webkit-transform-origin:top;
    -ms-transform-origin:top;
    transform-origin:top;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    -webkit-transition:all 0.4s ease;
    -o-transition:all 0.4s ease;
    transition:all 0.4s ease;
    pointer-events:none;
    -webkit-transform:rotateX(90deg);
    transform:rotateX(90deg);
    opacity:0;
	}

.nav-lan-open .nav-lan-list{
	pointer-events:auto;
    -webkit-transform:rotateX(0deg);
    transform:rotateX(0deg);
    opacity:1;
    }

.nav-lan-list li{background-color:#00aced;}

.nav-lan-list li a{
	display:inline-block;
    width:100%;
    height:35px;
    line-height:35px;
    padding:0 25px;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    text-align:center;
    position:relative;
    font-size:13px;
    font-weight:300;
    color:#fff;
	}

.nav-lan-list li:not(:first-child) a::before{
    content:"";
    position:absolute;
    top:0;
    left:10px;
    width:calc(100% - 20px);
    height:1px;
    background-color:rgba(255, 255, 255, 0.3);
	}

.nav-lan-btn:hover {
    color: #00aced;
}

.nav-lan-list li:hover{background-color:#0088cc;}

.main-menu li.has-drop{position:relative;}

.main-menu li.has-drop .navDrop{
	display:none;
	position:absolute;
    top:135%;
    left:0;
    width:150%;
	}

.main-menu li.has-drop:hover .navDrop{display:block;}

#logo{float:left; margin-top:20px; max-width:260px;}

.main-menu .navDropmenu{
	width:100%;
	padding-left:0;
	margin:10px;
}

.main-menu .navDropmenu li{background-color:#dcdcdc;}

.main-menu .navDropmenu li a{
	display:block;
	padding:15px;
	}
 
.main-menu .navDropmenu li:hover{
	background-color:#ccc;
	}

#logo img{width:100%;}

a{
	color:#00aced; 
	font-size:16px;
	text-decoration:none;
}
p{
	font-size:16px;
	color:#000;
	line-height:1.5em;
}

#mobile{display:none; text-align:left;}

#mobile a{
	color:#ccc;
	letter-spacing:2px;
	position:relative;
	transition: all 0.5s;
}

#mobile ul{margin-top: 10px; padding-left:0; background: linear-gradient(to bottom, #1e3c77, #355ba8);}

#mobile ul li{
	border-bottom:1px #888 solid;
}

/* The component will reset button browser styles */

.r-button{
    --uirButtonBackgroundColor: var(--rButtonBackgroundColor, transparent);
    --uirButtonPadding: var(--rButtonPadding, var(--rButtonPaddingTop, 0) var(--rButtonPaddingRight, 0) var(--rButtonPaddingBottom, 0) var(--rButtonPaddingLeft, 0));
    --uirButtonBorderWidth: var(--rButtonBorderWidth, 0);
    --uirButtonBorderStyle: var(--rButtonBorderStyle, solid);
    --uirButtonBorderColor: var(--rButtonBorderColor, currentColor);
    --uirButtonFontFamily: var(--rButtonFontFamily, inherit);
    --uirButtonFontSize: var(--rButtonFontSize,  inherit);
    --uirButtonColor: var(--rButtonColor);
  
    background-color: var(--uirButtonBackgroundColor);
    padding: var(--uirButtonPadding);
  
    border-width: var(--uirButtonBorderWidth);
    border-style: var(--uirButtonBorderStyle);
    border-color: var(--uirButtonBorderColor);
  
    cursor: pointer;
  
    font-family: var(--uirButtonFontFamily);
    font-size: var(--uirButtonFontSize);
  }
  
  .r-button::-moz-focus-inner,
  .r-button[type="button"]::-moz-focus-inner,
  .r-button[type="reset"]::-moz-focus-inner,
  .r-button[type="submit"]::-moz-focus-inner {
    
    /* Remove the inner border and padding in Firefox. */
    
    border-style: none;
    padding: 0;
  }
  
  /* The component will reset browser's styles of link */
  
  .r-link{
      --uirLinkDisplay: var(--rLinkDisplay, inline-flex);
      --uirLinkTextColor: var(--rLinkTextColor);
      --uirLinkTextDecoration: var(--rLinkTextDecoration, none);
  
      display: var(--uirLinkDisplay) !important;
      color: var(--uirLinkTextColor) !important;
      text-decoration: var(--uirLinkTextDecoration) !important;
  }
  
  /* The component will reset browser's styles of list */
  
  .r-list{
      --uirListPaddingLeft: var(--rListPaddingLeft, 0);
      --uirListMarginTop: var(--rListMarginTop, 0);
      --uirListMarginBottom: var(--rListMarginBottom, 0);
      --uirListListStyle: var(--rListListStyle, none);
  
      padding-left: var(--uirListPaddingLeft) !important;
      margin-top: var(--uirListMarginTop) !important;
      margin-bottom: var(--uirListMarginBottom) !important;
      list-style: var(--uirListListStyle) !important;
  }
  
  /* Basic styles of the hamburger component */
  
  .m-hamburger{  
    --uiHamburgerThickness: var(--hamburgerThickness, 4px);
  
    display: var(--hamburgerDisplay, inline-flex);
    width: var(--hamburgerWidth, 28px);
    height: var(--hamburgerHeight, 20px);
    position: relative;
    z-index: 999999;
  }
  
  .m-hamburger::before, 
  .m-hamburger::after, 
  .m-hamburger__label{
    width: 100%;
    height: var(--uiHamburgerThickness);
    border-radius: var(--hamburgerBorderRadius, 5px);
    background-color: var(--hamburgerBackgroundColor, currentColor);
  
    position: absolute;
    left: 0;
  }
  
  .m-hamburger::before, 
  .m-hamburger::after{
    content:"";
  }
  
  .m-hamburger::before{
    top: 0;
  }
  
  .m-hamburger::after{
    bottom: 0;
  }
  
  .m-hamburger__label{
    /* The calculation of middle hamburger button line position */
    
    top: calc(50% - calc(var(--uiHamburgerThickness) / 2));
  }
  
  /* helper to hide elements that are available only for screen readers. */
  
  .screen-reader{
    width: var(--screenReaderWidth, 1px) !important;
    height: var(--screenReaderHeight, 1px) !important;
    padding: var(--screenReaderPadding, 0) !important;
    border: var(--screenReaderBorder, none) !important;
  
    position: var(--screenReaderPosition, absolute) !important;
    clip: var(--screenReaderClip, rect(1px, 1px, 1px, 1px)) !important;
    overflow: var(--screenReaderOverflow, hidden) !important;
  }
  
  /*
  =====
  MENU STYLES
  =====
  */
  
  .menu-container{
    --uiMenuCircleSize: var(--menuCircleSize, 6.25rem);
    --uiMenuCircleOffset: var(--menuCircleOffset, 1rem);
    --uiMenuCircleHeight: calc(var(--uiMenuCircleSize) / 2);  

    --uiMenuCircleBackgroundColor: var(--menuCircleBackgroundColor, currentColor);
  
    --uiMenuHamburgerWidth: var(--menuHamburgerWidth, 1.75rem);
    --uiMenuHamburgerHeight: var(--menuHamburgerHeight, 1.25rem);
    
    --rButtonPaddingTop: calc(var(--uiMenuCircleHeight) - var(--uiMenuHamburgerHeight) - var(--uiMenuCircleOffset));
    
    --hamburgerWidth: var(--uiMenuHamburgerWidth);
    --hamburgerHeight: var(--uiMenuHamburgerHeight);
    --hamburgerBackgroundColor: var(--menuHamburgerBackgroundColor, #fff);
  
    width: 100%;
    
    display: flex;
    flex-direction: column;
    align-items: center;  
  
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: var(--menuZindex, 9998);
  }
  
  .menu__nav{
    box-sizing: border-box;
    width: 100%;
    height: 0;
  
    transition: opacity .2s ease-out;
    opacity: 0;
  
    display: flex;
    align-items: flex-end;
    z-index: 2;

    overflow-y: overlay;

    &::-webkit-scrollbar {

        width: 7px;
  
      }
  
      &::-webkit-scrollbar-button {
  
        background: transparent;
  
        border-radius: 4px;
  
      }
  
      &::-webkit-scrollbar-track-piece {
  
        background: transparent;
  
      }
  
      &::-webkit-scrollbar-thumb {
  
        border-radius: 4px;
  
        background-color: rgba(0, 0, 0, 0.4);
  
        border: 1px solid slategrey;
  
      }
  
      &::-webkit-scrollbar-track {
  
        box-shadow: transparent;
  
      }
  }
  
  .menu__list{
    width: 100%;
    max-height: 100%;
  
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  
  .menu__toggle{
    box-sizing: border-box;
    width: var(--uiMenuCircleSize);
    height: var(--uiMenuCircleHeight);
    flex: none;
  
    position: relative;
  }
  
  .menu__toggle::before{
    /*
    1. The font-size property is used to simplify calculations of the element's sizes and position
    2. The negative value for the bottom property need for hiding half of circle. 
    */
  
    content: "";
    width: 1em;
    height: 1em;
    font-size: var(--uiMenuCircleSize); /* 1 */
  
    background-color: var(--uiMenuCircleBackgroundColor);
    border-radius: 50%;
  
    position: absolute;
    bottom: -.5em; /* 2 */
    left: calc(50% - .5em);
    z-index: -1;
  
    will-change: width, height;
    transition: transform .25s cubic-bezier(0.04, -0.1, 0.29, 0.98),
                width .25s cubic-bezier(0.04, -0.1, 0.29, 0.98),
                height .25s cubic-bezier(0.04, -0.1, 0.29, 0.98);
  }
  
  /* styles of hamburger's animation */
  
  .m-hamburger::before, 
  .m-hamburger::after, 
  .m-hamburger__label{
    transition-timing-function: ease;
    transition-duration: .15s;  
  }
  
  .m-hamburger::before, 
  .m-hamburger::after{
    transition-property: transform;
  }
  
  .m-hamburger__label{
    transition-property: transform, opacity;
  }
  
  /*
  =====
  MENU STATES
  =====
  */
  
  .menu__toggle:focus,
  .menu__link:focus{
    outline: var(--menuHaburgerOutlineOWidth, 2px) solid var(--menuHaburgerOutlineColor);
    outline-offset: var(--menuHaburgerOutlineOffset, 5px);
  }
  
  .menu_activated{
    height: 100%;
  }
  
  .menu_activated .menu__nav{
    flex-grow: 1;
    opacity: 1;
  
    will-change: opacity;
    transition-duration: .2s;
    transition-delay: .3s;
  }
  
  .menu_activated .menu__toggle::before{
    width: 100vmax;
    height: 100vmax;
    transform: translate3d(-50vh, -50vh, 0) scale(5);
    transition-duration: 1s;
  }
  
  .menu:not(.menu_activated) .menu__list{
    display: none;
  }
  
  .menu_activated .m-hamburger::before{
    top: 50%;
    transform: translate3d(0, -50%, 0) rotate(45deg);
  }
  
  .menu_activated .m-hamburger::after{
    transform: translate3d(0, -50%, 0) rotate(135deg);
    top: 50%;
  }
  
  .menu_activated .m-hamburger__label{
    transform: rotate(-45deg) translate3d(-.285em,-.3em, 0);
    opacity: 0;
  }
  
  /*
  =====
  SETTINGS
  =====
  */
  
  :root{
    --colorWhite: #fff;
    --colorMain: #8ba4be;
    --menuCircleBackgroundColor: var(--colorMain);
    --menuHamburgerBackgroundColor: var(--colorWhite);
    --menuHaburgerOutlineColor: var(--colorMain);
  }
  
  .menu_activated{
    --menuHaburgerOutlineColor: var(--colorWhite);
  }
  
  .menu__group{
    --rLinkTextColor: var(--colorWhite);
  
    padding: .5rem 2rem; 
    font-size: 2rem;
    font-weight: 700;
    text-transform: uppercase;
  }
  

.navmenu-container {
    width: 100%;
    height: 100%;
}

.navmenu-logo {
    width: 100%;
    max-width: 260px;
    float: left;
    margin-top: 20px;
}

.navmenu-row {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto !important;
    padding: 30px 0 !important;
}

.navmenu-list {
    padding: 0 !important;
}

.navmenu-image {
    display: block;
    height: 0;
    text-align: center;
    padding-bottom: 60%;
    overflow: hidden;
    position: relative;
}

.navmenu-image img {
    max-width: 100%;
    min-width: 100%;
    object-fit: cover;
    height: 100%;
    -moz-object-fit: cover;
    -ms-object-fit: cover;
    -o-object-fit: cover;
    -webkit-object-fit: cover;
    position: absolute;
    transform: translate(-50% , 0);
}

.navmenu-item{width:100%; position:relative; list-style: none;}

.navmenu-info {
    padding-top: 10px;
}

.navmenu-icon {
    display: flex;
    padding: 20px 0;
}
.navmenu-icon a {
    color: #fff;
    font-size: 30px;
    padding: 0 20px 0 0;
}

.navmenu-icon a:hover {
    color: #00ffff;
}

.navmenu-accordion {
    display:block;
    font-size:18px;
    position: relative;
    cursor: pointer;
    padding:20px 20px 0;
    color:#fff;
    letter-spacing:2px;
    margin-bottom: 10px;
    width: 100%;
    text-align: left;
    outline: none;
    transition: 0.5s;
}
  
.navmenu-panel {
	padding: 0 20px;
	max-height: 0;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    margin-bottom: 20px;
	overflow: hidden;
	transition: max-height 0.2s ease-out;
}

.navmenu-accordion:after {
    position: absolute;
    top: 20px;
    right: 20px;
    content: '+';
    color: #ccc;
    font-size: 16px;
    font-weight: bold;
    font-family: 'Font Awesome 5 Free';
}

.navmenu-panel p {
    color: #ddd;
    margin-top: 10px;
}

.navmenu-accordion:hover {
    color: #00ffff;
}

.dropnav-item a:hover {
    color: #00ffff;
}

.language-tit {
    color: #fff;
    font-size: 18px;
}

.language-tit i {
    margin-right: 5px;
}

.language-options {
    padding: 15px 0 0;
}

.language-options li {
    display: inline;
    padding: 0 15px 0 0;
}

.language-options li a {
    color: #fff;
    padding: 10px 20px;
    border: 1px solid #fff;
    border-radius: 5px;
    transition: all 0.5s;
}

.language-options li a:hover {
    background-color: #fff;
    color: #7386a4;
}

.drop-box h3 {
    font-size: 20px;
    color: #fff;
}

.dropnav-item a {
    font-size: 16px !important;
    color: #ddd;
    line-height: 1.5em;
    padding: 0 !important;
}

#mobile ul li:hover a{color:#fff;}

.navmenu-item.lang{text-align:center;}
.navmenu-item.lang a{display:inline-block; padding:20px 0;}

.navmenu-item.has-drop>a::before{
	content:"";
    display:inline-block;
    width:60px;
    height:100%;
    background:#f0f0f2;
    position:absolute;
    top:0;
    right:0;
    border-left:1px solid #ededed;
    z-index:1;
	}

.navmenu-item.has-drop>a::after{
	content:"+";
	font-size:20px;
	position:absolute;
    top:30%;
    left:auto;
    right:22px;
    z-index:10;
	}

.navmenu-item.has-drop:hover>a::after{color:#5f605d;}
.navmenu-item.has-drop:hover>a.is-open::after{
	content:"-";
	font-size:28px;
	top:20%;
	}

/*手機次選單_start*/
#mobile ul.mobile-dropmenu{
	padding-left:0;
	margin:0;
	}

#mobile ul.mobile-dropmenu li{
	width:100%;
	background-color:#486371;
	}

#mobile ul.mobile-dropmenu li:hover{background-color:#668bc4;}

#mobile ul.mobile-dropmenu li a{color:#fff;}
/*手機次選單_end*/

.mobile-menu{width:100%;}

.mobile-menu li{
	width:100%;
	padding:10px 0;
	font-size:16px;
	font-weight:bold;
}

.open-nav{position:absolute; top: 20%; right: 10%; cursor:pointer; z-index:999999;}

.open-nav i {
    color: #999;
    font-size: 28px;
	padding: 5px 20px;
}

/* dropdown menu */
.main-menu .dropdown {
    position: static;
}
.drop-menu {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    width: 100%;
    left: 0;
    right: 0;
    top: 65px;
    border-radius: 0;
    padding: 15px;
    max-height: 40vh;
    overflow-y: scroll;
    background-color: #fff;
    box-shadow: 0 5px 10px rgb(0,0,0,0.4);
    transition: all 0.5s;
    z-index: 0;
}
.main-menu .dropdown:hover .drop-menu {
    opacity: 1;
    visibility: visible;
    z-index: 9;
}
.drop-row {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto !important;
    padding-top: 10px !important;
}
.drop-box {
    padding: 10px 6px 0 !important;
}
.drop-menu h3 {
    font-size: 20px;
    font-weight: bold;
    padding-bottom: 10px;
    border-bottom: 1px solid #ccc;
}
.dropnav {
    padding-top: 10px !important;
    padding-left: 0 !important;
    padding-bottom: 20px !important;
}
.dropnav-item {
    list-style: none;
    padding: 3px 0;
}

/*hover animation effect*/
.hover-fadeup, .hover-fadedown {
    transform: translateY(0);
    transition: all 0.5s;
}

.hover-fadeup:hover {
    transform: translateY(-20px);
}

.hover-fadedown:hover {
    transform: translateY(20px);
}

.hover-fadeleft, .hover-faderight {
    transform: translateX(0);
    transition: all 0.5s;
}

.hover-fadeleft:hover {
    transform: translateX(-20px);
}

.hover-faderight:hover {
    transform: translateX(20px);
}

.hover-zoomin {
    transform: scale(1);
    transition: all 0.5s;
}

.hover-zoomin:hover {
    transform: scale(1.1);
}

/*index_banner*/
.banner-body {
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    color: #fff;
    background-image: linear-gradient(to top, #a2c1d8, #7386a4);
    overflow: hidden;
    position: relative;
}

.moving-imgbox {
    position: absolute;
    z-index: 9;
}

.moving-imgbox img {
    width: auto;
}

.moving-imgbox1 {
    top: -5%;
    right: 15%;
    z-index: 999;
}

.moving-imgbox1 img {
    max-width: 480px;
}

.moving-imgbox2 {
    top: 10%;
    left: 0;
}

.moving-imgbox2 img {
    max-width: 360px;
}

.moving-imgbox3 {
    top: 15%;
    right: -10%;
}

.moving-imgbox3 img {
    max-width: 680px;
}

.moving-imgbox4 {
    top: 7%;
    left: -7%;
}

.moving-imgbox4 img {
    max-width: 800px;
}

.moving-imgbox5 {
    top: 9%;
    right: 16%;
}

.moving-imgbox5 img {
    max-width: 640px;
}

.banner-header {
    width: 100%;
    max-width: 1400px;
    height: 100%;
    min-height: 920px;
    margin: 0 auto;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}

.main-title-block {
    z-index: 9;
}

.banner-scroll {
    position: absolute;
    left: 50%;
    bottom: 5%;
    transform: translate(-50%, 0);
    z-index: 9;
}

.single-scroll-down-animation h3 {
    text-transform: uppercase;
    font-weight: 400;
    font-size: 18px;
    margin-bottom: 10px;
    color: #fff;
    -webkit-writing-mode: vertical-lr;
    writing-mode: vertical-lr;
    letter-spacing: 5px;
}

.scroll-down{
    width: 2px;
    height: 110px;
    position: relative;
    background: transparent;
    animation: scrollDown 1.5s ease infinite;
    border-radius: 100%;
    margin: 0 auto; 

    &:before{
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background: linear-gradient(transparent, #00b0ff, transparent);
    }
}

@keyframes scrollDown{
    0%{
        transform-origin: top;
        transform: scaleY(0);
    }
    45%{
        transform-origin: top;
        transform: scaleY(1);
    }
    55%{
        transform-origin: bottom;
        transform: scaleY(1);
    }
    100%{
        transform-origin: bottom;
        transform: scaleY(0);
    }
}

.banner-logo {
    position: absolute;
    bottom: 8%;
    right: 0;
    z-index: 2;
}

.banner-logo img {
    max-width: 720px;
}

.main-title-block h1 {
    font-size: 22px;
}

.main-title-block h2 {
    font-family: 'Caveat', cursive;
    font-size: 84px;
    font-weight: bold;
    padding: 6px 0;
}

.main-title-block p {
    color: #fff;
    font-size: 18px;
}

.banner-block{
    position: relative;
    width: 580px;
    height: 460px;
    margin: 100px 80px 20px 60px;
    background-size: cover;
    box-shadow: 0 6px 12px 1px rgba(0,0,0,0.3);
  }
  
  .banner-block h2{
    position: absolute;
    font-size: 48px;
    font-weight: bold;
    color: #fff;
    text-shadow: 2px 2px 8px black;
  }

  .banner-block-1{
    background: url('/images/banner-img-1.jpg') no-repeat 50% 50%;
  }
  
  .banner-block-2{
    background: url('/images/banner-img-2.jpg') no-repeat 50% 50%;
  }
  
  .banner-block-3{
    background: url('/images/banner-img-3.jpg') no-repeat 50% 50%;
  }
  
  .banner-block-4{
    background: url('/images/banner-img-4.jpg') no-repeat 50% 50%;
  }
  
  .banner-block-5{
    background: url('/images/banner-img-5.jpg') no-repeat 50% 50%;
  }

  .banner-container{
    margin-left: 200px;
    z-index: 1;
  }
  
  .banner-block-1 h2,
  .banner-block-3 h2,
  .banner-block-5 h2{
    bottom: 15%;
    right: -12%;
  }
  
  .banner-block-2 h2,
  .banner-block-4 h2{
    top: 5%;
    right: -12%;
}

/* index about area */
.area-container {
    position: relative;
}
.about-area {
    background-image: url(/images/about-area-bg.png);
    background-repeat: no-repeat;
    background-position: top center;
    padding-top: 100px;
}
.area-row {
    width: 100%;
    max-width: 1400px;
    padding: 80px 0 !important;
    margin: 0 auto !important;
}
.area-col {
    z-index: 1;
}
.about-area-img img {
    width: 720px;
}
.area-row-txt {
    z-index: 1;
}
.about-area .area-row {
    /*flex-direction: row-reverse;*/
    padding: 100px 0 0 !important;
}

.area-txt-box {
    display: flex;
}

.about-area-txt {
    margin: auto;
    padding: 0 15px;
}

.area-entit {
    width: auto !important;
}
.area-entit h2 {
    font-family: 'Caveat', cursive;
    font-size: 80px;
}
.about-area-entit {
    top: 30%;
    left: 0;
}
.about-area-entit h2 {
    color: #eee;
}
.area-tit {
    margin-bottom: 15px;
}
.area-tit h3 {
    font-size: 28px;
    font-weight: 600;
}
.area-btn {
    display: flex;
    margin-top: 20px;
}
.area-btn .circle-btn-box {
    flex: 1;
}
.circle-btn {
    display: inline-block;
    color: #000;
    padding: 32px;
    position: relative;
    letter-spacing: 1px;
  
    &:hover {
      .btn__circle {
        transform: scale(0);
      }
  
      .btn__white-circle {
        transform: translate(-50%, -50%) scale(1);
      }
  
      .btn__text {
        transform: translate(40px, -50%);
      }
    }
}
.circle-btn:hover {
    color: #0088cc;
}
.btn__circle,
.btn__text,
.btn__white-circle {
    position: absolute;
}
  
.btn__circle {
    top: 0;
    left: 0;
    height: 100%;
    border-radius: 100%;
    width: 100%;
    box-shadow: 0 0 1px 1px #000;
    transition: 0.3s linear;
}

.btn__white-circle {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0);
    width: 56px;
    height: 56px;
    border-radius: 100%;
    background: #00aced;
    display: flex;
    transition: 0.3s ease-in-out;
}
  
.btn__text {
    top: 50%;
    transform: translateY(-50%);
    white-space: nowrap;
    z-index: 2;
    padding: 24px 5px;
    transition: 0.3s linear;
}
.circle-btn i {
    color: #fff;
    font-size: 24px;
    margin: auto;
}
.about-hover-container {
	position: relative;
	display: flex;
	.container {
		position: relative;
		height: 430px;
		width: 310px;
		margin: auto;
		display: -webkit-box;
		&:hover {
			> .bottom-right {
				top: 55%;
				left: 80%;
				box-shadow: 0px 37px 29px rgba(0, 0, 0, 0.3);
				width: 350px;			
			}
			> .middle {
				height: 90%;
				left: 5%;
				top: 5%;
				width: 90%;
				box-shadow: 0px 23px 33px rgba(0, 0, 0, 0.34);
				.overlay {
					opacity: 1;
					z-index: 1;

					p:nth-child(1) {
						padding-top: 0;
					}
				}
			}
			> .top-left {
				left: -70px;
				top: -90px;
				width: 150px;
				box-shadow: 0px 37px 29px rgba(0, 0, 0, 0.3);
			}
			> .top-right {
				 left: 250px;
				 top: -90px;
				 width: 260px;
				 height: 280px;
				box-shadow: 0px 37px 29px rgba(0, 0, 0, 0.3);
			}
			> .bottom-left {
				left: -89%;
				top: 65%;
				width: 360px;
				box-shadow: 0px 37px 29px rgba(0, 0, 0, 0.3);
			}
		
		}
		.about-area-img {
			background: url(/images/about-area-img.jpg) no-repeat;
		}
		.bg-image {
			background-size: auto;
			background-attachment: fixed;
			background-position: 10% 10%; 
		}
		.middle {
			transition: 500ms all;
			 transition-delay: 0.25s;
			transition-timing-function: cubic-bezier(.17,.67,.33,.97);
			position: relative;
			margin: auto;
			height: 100%;
			width: 100%;
			margin: 0px;
			left: 0;
			top: 0;
			box-shadow: 0px 17px 23px rgba(0, 0, 0, 0.34);
			.bg-image {
				height: 100%;
				width: 100%;	
			}
			.overlay {
				position: absolute;
				top: 0;
				left: 0;
				height: 100%;
				width: 100%;
				z-index: 9;
				background: rgba(0, 47, 82, 0.75);
				display: flex;
				flex-direction: column;
				transition: 300ms all;
			 transition-delay: 0.37s;
				opacity: 0;
				text-decoration: none;
				z-index: -1;
			}
            .overlay p {
                position: relative;
                margin: auto;
                color: #fff;
                text-transform: uppercase;
                font-family: 'Roboto', sans-serif;
                font-size: 1.1em;
                opacity: 0.8;
                &:nth-child(1) {
                    margin-bottom: 4px !important;
                    padding-top: 30px;
                    transition: all 400ms;
                    transition-delay: 0.3s;
                }
                &:nth-child(2) {
                    margin-top: 4px !important;
                }
            }
		}
		.bottom-right {
			transition: 800ms all;
			transition-delay: 0.15s;
			transition-timing-function: cubic-bezier(.17,.67,.33,.97);
			position: absolute;
			left: 0%;
			top: 48%;
			width: 100%;
			box-shadow: 0px 37px 29px rgba(0, 0, 0, 0);
			z-index: 1;
			.bg-image {
				height: 220px;
				width: 100%;	
			}
		}
		.bottom-left {
			transition: 800ms all;
			transition-delay: 0.17s;
			transition-timing-function: cubic-bezier(.17,.67,.33,.97);
			position: absolute;
			left: 0%;
			top: 48%;
			width: 100%;
			z-index: 1;
			.bg-image {
				height: 220px;
				width: 100%;	
			}
		}
		
		.top-left {
			transition-timing-function: cubic-bezier(.17,.67,.33,.97);
			transition: 600ms all;
			transition-delay: 0.19s;
			position: absolute;
			left: 0%;
			top: 0%;
			width: 150px;
			z-index: 1;
			.bg-image {
				height: 220px;
				width: 100%;	
			}
			
			
		}
		.top-right {
			transition: 500ms all;
			transition-delay: 0.08s;
			position: absolute;
			left: 0%;
			top: 0%;
			width: 300px;
			height: 260px;
			z-index: 1;
			transition-timing-function: cubic-bezier(.17,.67,.33,.97);
			.bg-image {
				 float: right;
				 height: 100%;
				 width: 100%;
			}
		}	
	}
}

@media (max-width: 920px) {
	.about-hover-container {
		transform: scale(.8) translateX(0px);
		overflow: hidden;
		.overlay {
			p:nth-child(1) {
				 margin-top: 125px;
			}
			p:nth-child(2) {
				margin-bottom: 30px !important;
			}
		}
		.bottom-right, .bottom-left, .top-left, .top-right {
			box-shadow: 0px 0px 0px !important;
		}
		
	}	
}
@media (max-width: 350px) {
	.bottom-right, .bottom-left, .top-left, .top-right {
		display: none !important;
	}
}

/* index service area */
.service-area {
    background-image: url(/images/service-bg.png);
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 70px 0;
}
.service-area-entit {
    top: 0;
    right: 15%;
}
.service-area-entit h2 {
    color: #aaa;
}
.service-area .area-tit h3 {
    color: #fff;
}
.service-area .area-txt p {
    color: #fff;
}
.service-area .btn__circle {
    box-shadow: 0 0 1px 1px #fff;
}
.service-area .btn__text {
    color: #fff;
}
.service-container {
    display: flex;
    width: 100%;
    padding: 4% 2%;
    box-sizing: border-box;
  }
  
  .service-box {
    flex: 1;
    overflow: hidden;
    transition: .5s;
    margin: 0 2%;
    box-shadow: 0 5px 10px rgba(0,0,0,.3);
    line-height: 0;
    height: 420px;
  }
  
  .service-box img {
    width: 200%;
    height: calc(100% - 45px);
    object-fit: cover; 
    transition: .5s;
  }

  .service-box span {
    font-size: 18px;
    display: block;
    text-align: center;
    height: 45px;
    line-height: 2.6;
    background-color: #fff;
    color: #000;
}
.service-box:hover span {
    color: #0072af;
}
  
  .service-box:hover { flex: 1 1 50%; }
  .service-box:hover > img {
    width: 100%;
    height: 100%;
  }  

/* index works area */
.works-area {
    background-image: url(/images/work-bg.jpg);
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: cover;
}
.works-block {
    flex-direction: row-reverse;
}
.works-area-entit {
    top: 0;
}
.works-area-entit h2 {
    color: #ccc;
}
.work-tab {
    padding-top: 10px;
}
.works-item {
    color: #fff;
    position: relative;
    overflow: hidden;
    margin-bottom: 20px;
    width: 100%;
    background: #000000;
    text-align: center;
  }
  .works-item * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .works-img {
    display: block;
    height: 0;
    text-align: center;
    padding-bottom: 80%;
    overflow: hidden;
    position: relative;
}
.works-img img {
    max-width: 100%;
    min-width: 100%;
    object-fit: cover;
    height: 100%;
    -moz-object-fit: cover;
    -ms-object-fit: cover;
    -o-object-fit: cover;
    -webkit-object-fit: cover;
    position: absolute;
    transform: translate(-50% , 0) scale(1);
    transition: all 0.3s;
}
  .works-item img {
    opacity: 1;
    width: 100%;
    -webkit-transition: opacity 0.35s;
    transition: opacity 0.35s;
  }
  .works-item .works-info {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: left;
  }
  .works-item .works-info > div {
    float: left;
    height: 100%;
    overflow: hidden;
    width: 50%;
    position: relative;
  }
  .works-item .works-info::before {
    position: absolute;
    top: 50%;
    bottom: 50%;
    left: 50%;
    width: 2px;
    content: '';
    opacity: 0;
    background-color: rgba(255, 255, 255, 0);
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
    -webkit-transition-delay: 0.6s;
    transition-delay: 0.6s;
  }
  .works-item h2,
  .works-item p {
    margin: 0;
    padding: 20px;
    opacity: 0;
    position: absolute;
    top: 0;
    width: 100%;
    left: 0;
    -webkit-transition: opacity 0.45s, -webkit-transform 0.45s;
    transition: opacity 0.45s,-webkit-transform 0.45s,-moz-transform 0.45s,-o-transform 0.45s,transform 0.45s;
  }
  .works-item h2 {
    text-align: right;
    display: inline-block;
    word-spacing: -0.1em;
    font-weight: 300;
    text-transform: uppercase;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    -webkit-transform: translate3d(50%, 0%, 0);
    transform: translate3d(50%, 0%, 0);
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
  }
  .works-item h2 span {
    font-weight: 800;
  }
  .works-item p {
    display: block;
    bottom: 0;
    text-align: left;
    font-weight: 300;
    top: 0%;
    color: #000;
    background: #ffffff;
    -webkit-transform: translate3d(-50%, 0%, 0);
    transform: translate3d(-50%, 0%, 0);
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
  }
  .works-item a {
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    position: absolute;
    color: #ffffff;
  }
  .works-item:hover img {
    opacity: 0.7;
  }
  .works-item:hover .works-info h2,
  .works-item:hover .works-info p {
    -webkit-transform: translate3d(0%, 0%, 0);
    transform: translate3d(0%, 0%, 0);
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
  }
  .works-item:hover .works-info h2 {
    opacity: 1;
  }
  .works-item:hover .works-info p {
    opacity: 1;
  }
  .works-item:hover .works-info::before {
    background: #ffffff;
    top: 0px;
    bottom: 0px;
    opacity: 1;
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
}
.works-container .circle-btn-box {
    margin-top: 15px;
}

/* index news area */
.news-area {
    background-image: url(/images/news-bg.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
}
.news-area-entit {
    right: 10%;
    bottom: 10%;
}
.news-area-entit h2 {
    color: #fff;
}
.news-area-content {
    z-index: 1;
}
.news-item {
    background-color: #fff;
    padding: 10px;
    margin: 15px 0;
    box-shadow: 0 5px 10px rgba(0,0,0,.3);
}
.area-item-img {
    display: block;
    height: 0;
    text-align: center;
    overflow: hidden;
    position: relative;
}
.news-img {
    padding-bottom: 30%;
}
.area-item-img img {
    max-width: 100%;
    min-width: 100%;
    object-fit: cover;
    height: 100%;
    -moz-object-fit: cover;
    -ms-object-fit: cover;
    -o-object-fit: cover;
    -webkit-object-fit: cover;
    position: absolute;
    transform: translate(-50% , 0) scale(1);
    transition: all 0.3s;
}
.area-item:hover .area-item-img img {
    transform: translate(-50% , 0) scale(1.1);
}
.area-item-tit h4 {
    color: #00aced;
    font-size: 20px;
    font-weight: bold;
    padding: 10px 0 0;
    min-height: 60px;
    overflow: hidden;
    text-overflow: ellipsis;
    text-transform: inherit;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
}
.area-item-date p {
    font-size: 14px;
    color: #aaa;
    margin-bottom: 10px;
}
.area-item-txt p {
    font-size: 16px;
    line-height: 1.5em;
    color: #666;
    min-height: 72px;
    overflow: hidden;
    text-overflow: ellipsis;
    text-transform: inherit;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    white-space: normal;
}
.area-more-btn {
    text-align: right;
}
.area-more-btn button {
    border: 1px solid #aaa;
    border-radius: 5px;
    background-color: #fff;
    color: #666;
    padding: 5px 10px;
    transition: all 0.4s;
}
.area-item:hover .area-more-btn button {
    border: 1px solid #00aced;
    background-color: #00aced;
    color: #fff;
}
.news-area-txt .btn__white-circle {
    background: #fff;
}
.news-area-txt .circle-btn i {
    color: #00aced;
}
.news-area-txt .circle-btn:hover {
    color: #fff;
}

/* index article area */
.article-area {
    background-image: url(/images/article-bg.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
}
.article-area-item {
    margin-bottom: 20px;
    z-index: 1;
}
.article-area-entit {
    left: 0;
    bottom: 32%;
}
.article-area-entit h2 {
    color: #fff;
}
.article-area-txt .area-tit h3 {
    color: #000;
}
.article-area-txt .circle-btn{
    color: #fff;
}
.article-area-txt .circle-btn:hover {
    color: #fff;
}
.article-area-txt .btn__text {
    color: #000;
}
.article-box {
    background-color: #fff;
    box-shadow: 0 5px 10px rgba(0,0,0,.3);
}
.article-img {
    padding-bottom: 70%;
}
.article-info {
    padding: 5px 10px;
}

/* index faq area */
.faq-area {
    background-image: linear-gradient(to top, #7386a4, #a2c1d8);
}

/*
.faq-area::before {
    position: absolute;
    display: block;
    content: "";
    background-image: url(/images/faq-before.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    top: -120px;
    z-index: 1;
    width: 100%;
    height: 150px;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(.1);
}
*/

.faq-area-entit {
    margin: 0 auto;
    text-align: center;
}
.faq-area-entit h2 {
    color: #fff;
    font-size: 120px;
    font-weight: 900;
}
.faq-area .area-tit {
    text-align: center;
    margin-top: -30px;
    margin-bottom: 40px;
}
.collapsible-filter {
    margin-bottom: 20px;
}

.collapsible-accordion {
    position: relative;
    background-color: #fff;
    border: 1px solid #eee;
    border-radius: 5px;
    color: #444;
    cursor: pointer;
    padding: 18px;
    width: 100%;
    text-align: left;
    outline: none;
    font-size: 15px;
    transition: 0.5s;
}
  
.collapsible-expand, .collapsible-accordion:hover {
	border: 1px solid #00aced;
    box-shadow: 0 3px 8px 1px rgba(0,0,0,0.3);
}
  
.collapsible-panel {
	padding: 0 18px;
	background-color: #fff;
    border: 1px solid #eee;
    box-shadow: 0 3px 8px 1px rgba(0,0,0,0.1);
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.2s ease-out;
}

.collapsible-accordion:after {
    position: absolute;
    top: 50%;
    right: 20px;
    content: '+';
    color: #aaa;
    font-size: 18px;
    font-weight: bold;
    font-family: 'Font Awesome 5 Free';
    transform: translate(0 , -50%);
}

.collapsible-txt {
    margin-top: 10px;
	padding: 10px;
}

.collapsible-tit {
    margin-right: 30px;
}

.collapsible-tit h4 {
    font-size: 18px;
    font-weight: 600;
    color: #666;
}

.collapsible-tit b {
    font-size: 22px;
    font-weight: 900;
    color: #00aced;
}

.collapsible-txt p {
    color: #666;
}

.faq-area-img {
    position: relative;
}

.faq-img {
    display: block;
    width: 100%;
    height: 0;
    max-width: 80%;
    padding-bottom: 80%;
    overflow: hidden;
    position: relative;
}
.faq-img img {
    max-width: 100%;
    min-width: 100%;
    object-fit: cover;
    -moz-object-fit: cover;
    -ms-object-fit: cover;
    -o-object-fit: cover;
    -webkit-object-fit: cover;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50% , -50%);
}

/* index contact area */
.contact-area {
    background-image: url(/images/contact-bg.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    padding: 0 0 170px;
}
.contact-area-entit h2 {
    color: #000;
}
.contact-area-box {
    margin-left: auto;
}
.contact-area-box .area-tit h3 {
    color: #fff;
}
.contact-area-box .contact-container p {
    color: #fff;
}
.contact-btn {
    margin-top: 30px;
}
.contact-btn a {
    color: #fff;
    background-color: transparent;
    border: 1px solid #fff;
    padding: 12px 16px;
    margin-right: 10px;
    transition: all 0.4s;
}
.contact-btn a:hover {
    color: #fff;
    background-color: #00aced;
    border: 1px solid #00aced;
}

/*索引區_start*/
.bread-block{
	position: absolute;
    right: 14%;
    bottom: 10%;
}

.bread-block ul{
	display:flex;
    flex-wrap:wrap;
    align-items:center;
    height:80px;
    padding-left: 1rem;
	}

.bread-block ul li{
    font-weight:600;
    color:#000;
    list-style: none;
    padding: 5px;
    background-color: #fff;
}

.bread-block ul li a{position:relative; color: #00aced; transition: all 0.5s;}
.bread-block ul li a:hover{color: #e9876e;}

.bread-block ul li a::after{
	content:">";
    padding-right:7px;
    padding-left:5px;
    color:#868686;
	}

.bread-block a span{
	font-size:14px;
    font-weight:600;
    color:#555555;
    transition:all 0.4s ease;
    text-transform:uppercase;
	}

.bread-block a:hover span{color:#c69c6d;}

.bread-block ul li i{margin-right:7px;}

/*索引區_end*/

/*page_banner*/
.page-banner {
    position: relative;
}
.page-banner-container {
    height: 100%;
    max-height: 100%;
    min-height: 500px;
    /*animation: fadedown 500ms;*/
}
/*
@keyframes fadedown {
	0%{
		transform: translateY(-100px);
        opacity: 0;
	}
	100%{
		transform: translateY(0);
        opacity: 1;
	}
}
*/

.page-banner-info {
    position: absolute;
    top: 30%;
    left: 15%;
}
.page-banner-txt h1 {
    font-family: 'Anton', sans-serif;
    font-style: normal;
    font-size: 60px;
    letter-spacing: 2px;
    color: #67bd9a;
}
.page-banner-txt h2 {
    color: #fff;
    font-size: 30px;
    font-weight: 600;
}

/*about_page*/
.page-container {
    position: relative;
    padding-top: 40px;
    padding-bottom: 250px;
    background: url(/images/page-container-shape.png);
    background-repeat: no-repeat;
    background-position: center bottom;
}
.page-edit-block {
    width: 100%;
    max-width: 1400px;
    margin: auto !important;
    padding: 0 15px;
}
.page-edit-box {
    position: relative;
    padding: 0 !important;
    margin: 0 !important;
}
.page-tab .tab {
    margin-bottom: 40px;
}
.tablinks {
    display: block;
    width: 100%;
    max-width: 180px;
    min-width: 140px;
    color: #000;
    background-color: transparent;
    border: 1px solid #000;
    border-radius: 5px;
    padding: 8px 20px;
    margin-bottom: 15px;
    transition: all 0.5s;
}
.page-tab .active {
    background-color: #f1ae7a;
}
.tablinks:hover {
    color: #fff;
    background-color: #00aced;
    border: 1px solid #00aced;
}
.page-title h3 {
    font-size: 26px;
    font-weight: 600;
}
.about-brand {
    padding: 0 !important;
}
.about-content-txt {
    width: 100%;
    max-width: 80%;
}
.about-content-map {
    padding: 0 !important;
}
.about-map-box iframe {
    width: 100%;
    height: 360px;
}

/* table style */
.table-responsive table {
    width: 100%;
    border-top: 1px solid #ccc;
}
.table-responsive th {
    background-color: #00aced;
    font-size: 18px;
    font-weight: 600;
    color: #fff;
    padding: 5px 10px;
}
.table-responsive tr {
    border-bottom: 1px solid #ccc;
    transition: 0.5s;
}
.table-responsive tr:hover {
    background-color: #eee;
    transition: 0.5s;
}
.table-responsive td:first-child {
    font-weight: 600;
    color: #e9876e;
}
.table-responsive td {
    padding: 10px;
}
.edit-content-box h4 {
    font-size: 18px;
    margin-bottom: 5px;
}
.timetable-option {
    margin: 30px 0 40px;
}
.timetable-content {
    margin-bottom: 20px;
}
#monthOption {
    border-radius: 5px;
    border-color: #00aced;
    padding: 6px 20px 6px 6px;
}

/*contact_page*/
.contact-form-box {
    padding-top: 80px;
}
.contact-tit {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50% , 0);
    z-index: -1;
}
.contact-tit h3 {
    font-size: 180px;
    font-weight: 900;
    color: #eee;
}
:focus {
    outline: 0;
}
.contact-form-inner {
    padding-right: 20px;
}
.contact-form-tit h5 {
    font-size: 18px;
}
.contact-form-tit h6 {
    font-size: 14px;
    color: #666;
}
.contact-form-column {
    width: 100%;
    border: 0;
    margin: 5px 0;
    padding: 10px;
    background-color: transparent;
    border-bottom: 1px solid #333;
}
#contact-message {
    height: 100%;
    min-height: 100px;
    max-height: 200px;
	margin-bottom: 0;
}
.contact-verify {
    display: flex;
}
.contact-verify .contact-form-column {
    flex: 5;
}
.contact-verify img {
    flex: 1;
    padding: 10px 0 5px 15px;
}
.content-form-btn {
    margin-top: 10px !important;
    margin-bottom: 40px
}
.contact-info-box {
    padding-top: 80px;
}
.contact-info-item {
    padding-right: calc(var(--bs-gutter-x)/ 2);
    padding-left: calc(var(--bs-gutter-x)/ 2);
}
.contact-info-item h4 {
    font-size: 22px;
    font-weight: 600;
    margin-bottom: 12px;
}
.contact-info-item ul {
    padding: 0;
}
.contact-info-item ul li {
    list-style: none;
}
.contact-info-item ul li a {
    color: #333;
    transition: all 0.4s ease;
    line-height: 1.5em;
}
.contact-info-item ul li a:hover {
    color: #355ba8;
}
.contact-map-item a {
    color: #333;
    transition: all 0.4s ease;
    line-height: 1.5em;
}
.contact-map-item a:hover {
    color: #355ba8;
}
.contact-map-box iframe {
    margin-top: 15px;
    width: 100%;
    height: 300px;
    padding: 10px;
}

/* product-showbox */
.product-showbox {
    height: 100%;
    width: 100%;
    max-width: 450px;
    margin: 0 auto;
}

.product-showbox .swiper-container{
	width:100%;
	height:480px;
	margin-left:auto;
	margin-right:auto;
    }

	.product-showbox .swiper-slide {
		background-size: cover;
		background-position: center;
		display: block;
		height: 0;
		text-align: center;
		padding-bottom: 100%;
		overflow: hidden;
		position: relative;
	}

	.product-showbox .swiper-slide img {
		width: 100%;
		max-width: 100%;
    	min-width: 100%;
	    object-fit: cover;
    	height: 100%;
	    -moz-object-fit: cover;
    	-ms-object-fit: cover;
    	-o-object-fit: cover;
    	-webkit-object-fit: cover;
    	position: absolute;
    	transform: translate(-50% , 0) scale(1);
    	transition: all 0.3s;
	}

	.product-showbox .gallery-top {
		height: 100%;
		max-height: 360px;
		width: 100%;
	}

.product-showbox .gallery-thumbs{height:100px; box-sizing:border-box; padding:10px 0;}

.product-showbox .gallery-thumbs .swiper-slide{height:100%; opacity:0.4;}

.product-showbox .gallery-thumbs .swiper-slide-thumb-active{opacity:1;}

.product-infobox .project-price {
    margin: 15px 0;
}
.product-infobox .article-detail-txt {
    margin-top: 40px;
    padding-top: 20px;
    border-top: 1px solid #aaa;
}
.product-infobox .article-detail-txt h4 {
    font-size: 20px;
    font-weight: 600;
    color: #00aced;
}
.product-detail img {
    margin-bottom: 15px;
}

/*article_page*/
.article-area-box {
    max-width: 1160px;
}
.article-block {
    flex-direction: row-reverse;
}
.article-item {
    padding: 40px 0;
}
.article-item .row {
    border-bottom: 1px solid #aaa;
}
.article-item a:hover .row {
    border-bottom: 1px solid #e9876e;
}
.article-area-img {
    display: block;
    height: 0;
    padding-bottom: 20%;
    overflow: hidden;
    position: relative;
}
.article-area-img img {
    max-width: 100%;
    min-width: 100%;
    object-fit: cover;
    -moz-object-fit: cover;
    -ms-object-fit: cover;
    -o-object-fit: cover;
    -webkit-object-fit: cover;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50% , -50%);
	opacity: 0.8;
    transition: all 0.5s;
    padding: 5px;
}
.article-item a:hover .article-area-img img {
    opacity: 1;
}
.article-tit h3 {
    color: #333;
    font-size: 24px;
    font-weight: 600;
    display: -webkit-box;
    width: 100%;
    height: 2.4em;
    line-height: 1.2em;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
	transition: all 0.5s;
}
.article-item a:hover .article-tit h3 {
    color: #355ba8;
}
.article-sub {
    padding-bottom: 5px;
}
.article-sub span {
    color: #888;
}
.more-btn {
    margin-top: 15px;
}
.article-area-info {
    padding: 0 20px;
}
.article-date {
    padding-bottom: 5px;
}
.article-date span {
    color: #888;
    font-size: 14px;
}
.article-detail-img {
    display: block;
	width: 100%;
    max-width: 600px;
    margin: auto;
    height: 0;
    padding-bottom: 35%;
    overflow: hidden;
    position: relative;
}
.article-detail-img img {
    max-width: 100%;
    min-width: 100%;
    object-fit: cover;
    -moz-object-fit: cover;
    -ms-object-fit: cover;
    -o-object-fit: cover;
    -webkit-object-fit: cover;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50% , -50%);
}
.article-detail-intro {
    padding-left: 20px !important;
}
.article-detail-tit {
    margin: 20px 0;
}
.article-detail-tit h3 {
    color: #333;
    font-size: 24px;
    font-weight: 600;
    line-height: 1.2em;
}
.article-detail-date span {
    display: block;
    font-size: 18px;
    font-weight: 600;
    color: #e9876e;
}
.article-detail-date a {
    font-size: 18px;
    font-weight: 600;
    color: #e9876e;
}
.article-detail-date a:hover {
    color: #355ba8;
}
.article-detail-content {
    border-top: 1px solid #aaa;
    margin-top: 20px !important;
    padding-top: 20px;
}
.article-detail-txt {
    margin-bottom: 20px;
}
.article-detail-txt p {
    color: #333;
}
.article-detail-content img {
    margin-bottom: 15px;
}
.article-table-responsive table {
    width: 100%;
    table-layout: fixed;
    border-top: 1px solid #ccc;
}
.article-table-responsive th {
    background-color: #00aced;
    font-size: 18px;
    font-weight: 600;
    text-align: center;
    color: #fff;
    padding: 5px 10px;
}
.article-table-responsive tr {
    transition: 0.5s;
}
.table-responsive tr:hover {
    background-color: #eee;
    transition: 0.5s;
}
.article-table-responsive td {
    border-width: 1px;
    border-color: #ccc;
    background-color: #fff;
    text-align: center;
    padding: 10px;
    transition: all 0.5s;
}
.article-table-responsive td:hover {
    background-color: #eee;
}
.back-btn {
    margin-top: 60px;
	transition: all 0.5s;
}
.back-btn:hover {
    transform: translateX(-8px);
}
.back-btn a {
    color: #fff;
    background-color: #00aced;
    padding: 10px 36px;
    border-radius: 50px;
    transition: all 0.5s;
}
.back-btn a:hover {
    color: #fff;
    background-color: #355ba8;
}
.back-btn i {
	transition: all 0.5s;
}
.back-btn a:hover i {
	transform: translateX(-8px);
}

/*privacy_page*/
.privacy-row {
    max-width: 1000px;
}
.content-block {
    padding-top: 40px;
}
.content-txt h1 {
    font-size: 30px;
    font-weight: 600;
}
.content-txt h2 {
    font-size: 20px;
}
.content-txt p, 
.content-txt ul {
    color: #888;
}

/*footer_start*/
footer{
    position: relative;
	line-height:1.4em;
	padding:30px 0 70px;
    background-color: #fff;
    box-shadow: 0 -2px 8px rgb(0 0 0 / 20%);
    background-image: linear-gradient(to top, #7386a4, #a2c1d8);
    /*
	background-size:cover;
    background-position:right;
    background-repeat:no-repeat;
    background-image: linear-gradient(to bottom, #e9876e 60%, #fcd986 100%);
    */
}

footer::before {
    position: absolute;
    display: block;
    content: "";
    background-image: url(/images/foot-before.png);
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: cover;
    top: -175px;
    z-index: 1;
    width: 100%;
    height: 180px;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(.1);
}

footer a{
	color:#fff;
	transition:all 0.4s ease;
	line-height:1.5em;
    font-size:16px;
	}
	
footer a:hover{color:#00ffff;}

.foot-logo {
    width: 100%;
    max-width: 280px;
    position: absolute;
    top: -15%;
    left: 50%;
    transform: translate(-50%, 0);
    z-index: 2;
}
.foot-privacy {
    text-align: center;
    padding: 10px 0;
}
.foot-privacy a {
    border-bottom: 1px solid #fff;
    padding-bottom: 3px;
}
footer li {
    list-style: none;
}
footer i {
    transition: all 0.4s ease;
}
footer a:hover i {
    color: #00ffff;
}
.foot-icon {
    text-align: center;
}
.foot-icon a {
    font-size: 26px;
    padding: 6px;
    transform: translateY(0);
    transition: all 0.5s;
}
.foot-icon a i {
    transform: translateY(0);
    transition: all 0.5s;
}
.foot-icon a:hover i {
    transform: translateY(-5px);
}
.foot-list li {
    transform: translateX(0);
    transition: all 0.5s;
}
.foot-list li:hover {
    transform: translateX(5px);
}
.foot-subtit {
    font-size: 20px;
    font-weight: 600;
    color: #fff;
    padding-bottom: 5px;
}
.foot-untitled {
    padding-top: 40px;
}

footer .green-circle {
    position: absolute;
    bottom: 0;
    right: 5%;
    animation: float 3000ms infinite;
}

.foot-block{width:100%; max-width:1400px; margin:20px auto 40px;}

.foot-block .foot-row {
    width: 100%;
    margin: 0;
    padding: 0;
}

.foot-info-box,.foot-list-box {
    width: 100%;
    margin: auto;
}

.foot-info-block {
    padding-right: calc(var(--bs-gutter-x)/ 2);
    padding-left: calc(var(--bs-gutter-x)/ 2);
}

.foot-box{width:33.333%; position:relative;}

.foot-box>.box-inner{margin:15px;}

.foot-box>.box-inner i{margin-right:5px;}

.foot-box-contact {
    margin: auto;
}

#footlogo{max-width:220px;}
#footlogo img{width:100%;}

.foot-block h3{
	font-size:20px;
	font-weight:600;
	color:#fff;
	margin-bottom:10px;
}

.foot-block p{
	line-height:1.7em;
	color:#fff;
	letter-spacing:1px;
    margin-bottom: 0;
}

.foot-block ul{padding-left:0;}

ul.foot-project-list li{
	display:inline-block;
	color:#fff;
	padding:3px 10px 3px 0;
	}

.foot-block li i{margin-right:5px; color:#fff;}

.ccin{
	width:100%;
    max-width:400px;
    margin:0 auto;
    text-align:center;
    color:#ccc;
    font-size:12px;
    box-sizing:border-box;
	}

.ccin a{font-size:12px; color:#aaa;}
.ccin li{font-size:12px;}

.ccin img{vertical-align:middle;}

.ccin a:hover{color:#00aced;}
/*footer_end*/

/*goTop*/
.goTop{
    position: fixed;
    bottom: 20%;
    right: 0;
    width: 40px;
    z-index: 99;
}
.goTop a:link, .goTop a:visited {
    text-decoration: none;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    line-height: 0;
    font-size: 0;
    font-weight: 500;
    font-family: 'Microsoft YaHei', sans-serif;
    color: #fff;
    width: 100%;
    height: 80px;
    overflow: hidden;
    border-radius: 40px 0 0 40px;
    background-color: #00aced;
    box-shadow: 0 0 13px rgba(0, 0, 0, 0.3);
    transition: all 0s ease 0s;
}
.goTop a:active, .goTop a:hover {
	text-decoration:none;
	cursor:pointer;
	font-size:16px;
    color: #fff;
	transition: all 0.25s ease 0s;
}
.goTop a::after {
    content: '\f062';
    font-size: 20px;
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
    position: absolute;
    top: 50%;
    Opacity: 1.0;
    transition: all 0.5s ease 0s;
}
.goTop a:hover::after{
	filter:alpha(opacity=0);
	Opacity:0;
	transition:all 0.25s ease 0s;
}


/* bread_start */


/* bread_end */


/*頁籤區_start*/
.numpage-btn{width:100%; text-align:center; margin-top: 20px;}

.numpage-btn .pagination{
	margin:20px 0;
    display:inline-flex;
    border-radius:0;
    padding-left:0;
    list-style:none;
	}

.pagination>li{display:inline;}

.numpage-btn .pagination li{padding:5px 10px;}
.numpage-btn .pagination li.active{
    color:#fff;
	}

.pagination>li>a, .pagination>li>span {
	position: relative;
    float: left;
    padding: 6px 12px;
    margin-left: -1px;
    line-height: 1.42857143;
    color: #fff;
    text-decoration: none;
    background-color: #67bd9a;
    transition: all 0.3s;
}

.pagination>li>a:focus,
.pagination>li>a:hover,
.pagination>li>span:focus,
.pagination>li>span:hover{
    color:#fff;
}

.pagination>li>a:focus,
.pagination>li>a:hover,
.pagination>li>span:focus,
.pagination>li>span:hover{
	background-color:#f1ae7a;
	}

.pagination>.active>a,
.pagination>.active>a:focus,
.pagination>.active>a:hover,
.pagination>.active>span,
.pagination>.active>span:focus,
.pagination>.active>span:hover{
	color: #fff;
    background-color: #00aced;
	}

.pagination>li:hover i{color:#fff;}
/*頁籤區_end*/


/*螢幕大小*/
@media screen and (max-width:1600px){
	nav {
		padding: 0 20px;
	}
    .moving-imgbox1 img {
        max-width: 420px;
    }
    .moving-imgbox2 img {
        max-width: 300px;
    }
    .moving-imgbox3 img {
        max-width: 520px;
    }
    .moving-imgbox4 img {
        max-width: 600px;
    }
    .moving-imgbox5 img {
        max-width: 560px;
    }
    .about-area-img img {
        width: 620px;
    }
}

@media screen and (max-width:1400px){
	.area-row {
		padding: 80px 0 !important;
	}
    .works-item h2 {
        font-size: 28px;
    }
    .bread-block {
        position: relative;
        right: auto;
        bottom: auto;
    }
}

@media screen and (max-width:1200px){
    .moving-imgbox5 {
        top: 10%;
        right: 10%;
    }
    .works-item h2 {
        font-size: 26px;
    }
    .contact-tit h3 {
        font-size: 150px;
    }
    .foot-info-box {
        margin: 0 auto;
    }
    .moving-imgbox1 img {
        max-width: 360px;
    }
    .moving-imgbox2 img {
        max-width: 280px;
    }
    .moving-imgbox3 img {
        max-width: 420px;
    }
    .moving-imgbox4 img {
        max-width: 500px;
    }
    .moving-imgbox5 img {
        max-width: 450px;
    }
    .about-area-img img {
        width: 540px;
    }
}

@media screen and (max-width:1080px){
    .moving-imgbox5 {
        right: 5%;
    }
	nav {
		padding: 0;
	}
	.area-row {
		padding: 70px 0 !important;
	}
    .about-map-box iframe {
        height: 300px;
    }
	header{padding-top:5px;}
	nav>ul{display:none;}
	#openNav{
		float:left;
		cursor:pointer;
	}
	#logo{text-align:center; float:none; margin:10px 20px 0;}
	.footbox{width:90%;}
	.foot-infoblock{width:60%;}
	.foot-service-block{width:80%;}
	nav{width:100%;}
	.footbox{max-width:700px; justify-content:center;}
	.foot-box{width:100%;}
	.foot-box.foot-box-contact{width:60%;}
	.foot-box.foot-box-project{width:40%;}
}

@media screen and (max-width:991px){
    .navmenu-image {
        display: none;
    }
    .moving-imgbox4 {
        top: 6%;
    }
    .moving-imgbox1 img {
        max-width: 320px;
    }
    .moving-imgbox2 img {
        max-width: 220px;
    }
    .moving-imgbox3 {
        top: 50%;
    }
    .moving-imgbox3 img {
        max-width: 380px;
    }
    .moving-imgbox4 img {
        max-width: 460px;
    }
    .moving-imgbox5 {
        top: 9%;
        right: 8%;
    }
    .moving-imgbox5 img {
        max-width: 400px;
    }
    .about-area-img {
        margin-top: 30px;
    }
    .about-area-img img {
        width: 500px;
    }
    .service-area {
        background-image: url(/images/service-bg-s.png);
    }
    .works-item h2 {
        font-size: 24px;
    }
    .article-area-txt {
        margin-bottom: 25px;
    }
    .works-item h2 {
        font-size: 22px;
    }
    .news-area-content {
        padding: 0 25px !important;
    }
    .news-img {
        padding-bottom: 50%;
    }
    .article-area-item {
        margin-bottom: 30px;
    }
    .faq-img {
        max-width: 60%;
        padding-bottom: 60%;
        margin: 0 auto 40px;
    }
    .banner-info {
        top: 35%;
        left: 10%;
    }
	.article-item {
		padding: 40px 10px;
	}
	.article-area-img {
		padding-bottom: 50%;
	}
	.article-area-info {
		margin-top: 10px !important;
	}
	.article-detail-img {
		padding-bottom: 40%;
	}
}

@media screen and (max-width:767px){
	#logo {
		max-width: 220px;
	}
	#openNav {
		margin: 5px 0 0 10px;
	}
	header {
		height: 70px;
	}
    .moving-imgbox1 {
        right: 8%;
    }
    .moving-imgbox3 {
        top: 55%;
        right: -12%;
    }
    .moving-imgbox3 img {
        max-width: 360px;
    }
    .moving-imgbox4 {
        top: 7%;
        left: -10%;
    }
    .moving-imgbox5 {
        top: 8%;
        right: 0;
    }
    .moving-imgbox5 img {
        max-width: 360px;
    }
    .banner-info {
        left: 0;
        padding: 10px;
        max-width: 100%;
    }
    .page-banner-info {
        top: 25%;
    }
    .page-banner-txt h1 {
        font-size: 50px;
    }
    .page-banner-txt h2 {
        font-size: 26px;
    }
	.area-row {
		padding: 60px 0 !important;
	}
    .about-content-txt {
        max-width: 100%;
    }
    .listing-item {
        width: -webkit-calc(100%/2);
        width: -moz-calc(100%/2);
        width: calc(100%/2);
    }
    .contact-info-item {
        margin-top: 15px;
    }
	.article-detail-img {
		padding-bottom: 50%;
	}
    .contact-tit {
        display: none;
    }
    .contact-form-box {
        padding-top: 0;
    }
    .contact-info-box {
        padding-top: 20px;
    }
    .foot-list-box {
        margin-top: 40px !important;
    }
    .foot-col .col-sm-4 {
        display: flex;
    }
}

@media screen and (max-width: 640px){
    .moving-imgbox1 {
        right: 0;
    }
    .moving-imgbox3 {
        top: 60%;
        right: -18%;
    }
    .moving-imgbox4 {
        top: 7.5%;
        left: -16%;
    }
    .moving-imgbox5 {
        top: 8.8%;
    }
	.article-tit h3 {
		font-size: 22px;
	}
	.article-detail-tit h3 {
		font-size: 22px;
	}
	.article-sub span {
		font-size: 14px;
	}
    .contact-form-tit h5 {
        font-size: 16px;
    }
}

@media screen and (max-width:575px){
    .moving-imgbox4 {
        top: 6.5%;
    }
    .moving-imgbox5 {
        top: 7.5%;
    }
    .main-title-block h1 {
        font-size: 18px;
    }
    .main-title-block h2 {
        font-size: 72px;
    }
    .main-title-block p {
        color: #fff;
        font-size: 14px;
    }
    .moving-imgbox1 img {
        max-width: 280px;
    }
    .moving-imgbox2 img {
        max-width: 200px;
    }
    .moving-imgbox3 img {
        max-width: 320px;
    }
    .moving-imgbox4 img {
        max-width: 420px;
    }
    .moving-imgbox5 img {
        max-width: 300px;
    }
    .about-area-img img {
        width: 440px;
    }
    .work-list-tab {
        margin-bottom: 20px;
    }
    .work-tab {
        display: flex;
    }
    .work-tab .tablinks {
        margin: 0 5px;
    }
    .foot-block .foot-row {
        margin: auto !important;
    }
    .foot-block ul {
        margin: 0;
    }
    .foot-logo-item {
        width: 30% !important;
    }
    .foot-info-item {
        width: 70% !important;
        margin: auto !important;
        padding-left: 20px !important;
    }
    .foot-col .col-sm-4 {
        display: block;
    }
    .foot-list-box .col-sm-4 {
        width: 33%;
    }
    .foot-list {
        margin: 0 0 30px;
    }
}

@media screen and (max-width:500px){
    .moving-imgbox1 img {
        max-width: 240px;
    }
    .moving-imgbox2 img {
        max-width: 180px;
    }
    .moving-imgbox3 img {
        max-width: 280px;
    }
    .moving-imgbox4 img {
        max-width: 360px;
    }
    .moving-imgbox5 {
        top: 8%;
    }
    .moving-imgbox5 img {
        max-width: 280px;
    }
    .about-area-img img {
        width: 400px;
    }
    .primary-btn a, 
    .primary-btn button {
        font-size: 14px;
        padding: 8px 25px;
    }
    .banner-txt h1 {
        font-size: 28px;
    }
	.area-row {
		padding: 50px 0 !important;
	}
    .area-tit {
        margin-bottom: 0;
    }
    .area-tit h2 {
        font-size: 22px;
    }
    .area-entit h3 {
        font-size: 48px;
    }
    .contact-info-item h4 {
        font-size: 20px;
    }
	.article-detail-img {
		padding-bottom: 60%;
	}
    .foot-logo {
        top: -10%;
    }
}

@media screen and (max-width:480px){
    .moving-imgbox1 {
        top: 0;
        right: -10%;
    }
    .main-title-block h1 {
        font-size: 16px;
    }
    .main-title-block h2 {
        font-size: 60px;
    }
    .work-tab {
        display: block;
    }
    .work-tab .tablinks {
        width: 100%;
        max-width: 100%;
        min-width: auto;
        padding: 10px;
        margin: 0 0 10px;
    }
    .article-table-responsive {
        width: 240px;
        height: auto;
        overflow-x: scroll;
        scrollbar-width: thin;
    }
    .article-table-responsive table {
        table-layout: auto;
    }
	.numpage-btn .pagination li {
		padding: 4px 7px;
	}
	.pagination>li>a, .pagination>li>span {
		font-size: 14px;
		padding: 4px 8px;
	}
    .listing-item {
        width: 100%;
    }
    .product-showbox .gallery-top {
        max-height: 300px;
    }
    .product-showbox .gallery-thumbs {
        height: 90px;
    }
	#logo img{width:100%;}
    .open-nav i {
        font-size: 24px;
        padding: 5px 10px;
    }
    footer {
        padding: 10px 0 70px;
    }
    .foot-list-box .col-sm-4 {
        width: 100%;
    }
    .foot-list-serve {
        margin-top: 10px !important;
    }
    .foot-list-box li {
        display: inline-block;
        padding: 3px;
    }
    .foot-untitled {
        padding-top: 0;
    }
}

@media screen and (max-width:420px){
    .moving-imgbox3 img {
        max-width: 260px;
    }
    .moving-imgbox4 img {
        max-width: 320px;
    }
    .moving-imgbox5 img {
        max-width: 240px;
    }
    .about-area-img img {
        width: 340px;
    }
    .foot-logo-item {
        width: 100% !important;
    }
    .foot-info-item {
        width: 100% !important;
        margin: 10px auto 0 !important;
        padding-left: calc(var(--bs-gutter-x)/ 2) !important;
    }
}

@media screen and (max-width: 400px){
    .moving-imgbox1 {
        right: -15%;
    }
    .moving-imgbox3 {
        right: -20%;
    }
    .moving-imgbox4 {
        top: 7%;
        left: -20%;
    }
    .moving-imgbox5 {
        top: 8.5%;
    }
    .works-item h2 {
        font-size: 22px;
    }
    .about-map-box iframe {
        height: 240px;
    }
    .product-showbox .gallery-top {
        max-height: 240px;
    }
    .product-showbox .gallery-thumbs {
        height: 70px;
    }
	#footlogo{width:100%; margin-top:0;}
}

@media screen and (max-width: 360px){
    .moving-imgbox1 {
        top: 3%;
        right: -25%;
    }
    .moving-imgbox2 {
        top: 15%;
        left: 0;
    }
    .moving-imgbox4 {
        top: 8%;
        left: -25%;
    }
    .moving-imgbox5 {
        top: 9.6%;
    }
    .about-area {
        padding-top: 200px;
    }
    .main-title-block h2 {
        font-size: 52px;
    }
    .moving-imgbox1 img {
        max-width: 200px;
    }
    .moving-imgbox2 img {
        max-width: 160px;
    }
    .moving-imgbox3 img {
        max-width: 220px;
    }
    .moving-imgbox4 img {
        max-width: 280px;
    }
    .moving-imgbox5 img {
        max-width: 220px;
    }
    .about-area-img img {
        width: 280px;
    }
    .contact-btn a {
        display: block;
        margin-bottom: 15px;
    }
    .about-map-box iframe {
        height: 220px;
    }
    .page-banner-txt h1 {
        font-size: 42px;
    }
    .page-banner-txt h2 {
        font-size: 24px;
    }
    footer {
        padding: 1px 0 70px;
    }
    .foot-logo {
        max-width: 240px;
    }
}

@media screen and (max-width: 320px){
    .moving-imgbox2 img {
        max-width: 140px;
    }
    .moving-imgbox3 img {
        max-width: 200px;
    }
    .works-item h2 {
        font-size: 20px;
    }
    .about-map-box iframe {
        height: 200px;
    }
    .product-showbox .gallery-top {
        max-height: 200px;
    }
    .product-showbox .gallery-thumbs {
        height: 60px;
    }
}









