:root {

  --font-family: ltc-bodoni-175, serif;

  --font-sec-family: ltc-bodoni-175, serif;

  --font-color: #1D2D5E;

  --font-hover: #FFB340;

  --main-color: #1D2D5E;

  --yellow-color: #F6CD5D;

  --border-color: rgba(0, 0, 0, 0.1);

}

a {
  text-decoration: none !important;
}


html,
body {

  overflow-x: hidden;

  position: relative;

}

button {

  pointer-events: auto;

  cursor: pointer;

  border: none;

  margin: 0;

  font-family: inherit;

  font-size: inherit;

  position: relative;

  display: inline-block;

}

button::before,

button::after {

  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

}





/* 回到頂部 */
.backTop-btn {
  width: 50px;
  height: 50px;
  font-size: 25px;
  font-weight: 700;
  background: #1d523e;
  color: #fff;
  border-radius: 50%;
  position: fixed;
  bottom: 25px;
  right: 30px;
  text-align: center;
  line-height: 45px;
  z-index: 999;
  display: none;
}

.backTop-btn:active,
.backTop-btn:focus {
  background: #1d523e;
  color: #fff;
}

.backTop-btn:hover {
  background: #fff;
  color: #1d523e !important;
}


@media screen and (max-width:768px) {


  /* 回到頂部 */
  .backTop-btn {
    width: 45px;
    height: 45px;
    font-size: 25px;
    bottom: 25px;
    right: 10px;
    line-height: 41px;
  }
}



@media (min-width:1200px) {

  .container {

    width: 1598px;

  }

}



img {

  max-width: 100%;

  height: auto;

}



a:hover {

  text-decoration: none;

  /* color: #FFB340; */
  color: #F6CD5D;

}

ul {
  padding: 0;
  list-style: none;
}




/* HEADER */
.headercontainer {
  width: 100%;
}

.header {
  position: relative;
  z-index: 10;
}

#headlight {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9;
}

.header-nav-container {
  position: relative;
  z-index: 9;
}

.header-nav-wapper {
  display: flex;
  height: 100px;
  width: 100%;
  column-gap: 5em;
  align-items: center;
  margin: 0 auto;
  justify-content: center;
}

.header-nav .menu-main-menu {
  display: flex;
  list-style: none;
  column-gap: 0em;
  margin-bottom: 0;
  align-items: center;
  height: 100px;
  position: relative;
}

.menu-main-menu .menu-item:hover::after {
  width: 35%;
  height: 2px;
  background-color: #359F7E;
  position: absolute;
  bottom: 20%;
  left: 33%;
  content: '';
}

.menu-main-menu .menu-item>a {
  font-size: 18px;
  color: #fff;
  line-height: 25px;
  text-transform: uppercase;
}

.menu-main-menu .menu-item:hover>a {
  color: #359F7E;
}

.menu_active>a {
  color: #359F7E !important;
}


/* Stricky-Header */
.stricky-header {

  width: 100%;

  top: 0;

  position: fixed;

  z-index: 9999;

  background-color: #1d523e;

  display: flex;

  /* display: none; */

}

.stricky-container {
  display: flex;
  height: 100px;
  /* width: 91.3%;
  column-gap: 5em; */
  align-items: center;
}

.stricky-header-nav .stricky-menu {
  display: flex;
  list-style: none;
  column-gap: 0em;
  margin-bottom: 0;
  align-items: center;
  height: 100px;
}

.stricky-menu .menu-item:hover::after {
  width: 35%;
  height: 2px;
  background-color: #359F7E;
  position: absolute;
  bottom: 20%;
  left: 33%;
  content: '';
}


.stricky-menu .menu-item>a {
  font-size: 18px;
  color: #fff;
  line-height: 25px;
  text-transform: uppercase;
}

.stricky-menu .menu-item:hover>a {
  color: #359F7E;
}

.stricky-menu .menu_active a {
  color: #359F7E;
}


/* 下拉菜單 */
.menu-item {
  position: relative;
  height: 100px;
  display: flex;
  align-items: center;
  padding: 0 30px;
}

.menu-item .dropdown_menu {
  width: 100%;
  position: absolute;
  top: 79%;
  left: 0%;
  background-color: rgba(12, 10, 10, 0.5);
  display: none;
}

.stricky-menu .menu-item .dropdown_menu {
  background-color: rgba(29, 82, 62);
}

.menu-item .dropdown_menu.longerdrop {
  width: 350px;
  left: -45%;
}

.menu-item .dropdown_menu.longdrop {
  width: 330px;
  left: -5%;
}

.menu-item .dropdown_menu>li {
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}

.menu-item .dropdown_menu>li:last-child {
  border-bottom: none;
}

.menu-item .dropdown_menu>li>a {
  font-size: 15px;
  color: #fff;
  line-height: 25px;
}

.menu-item .dropdown_menu>li:hover>a {
  color: #359F7E;
}

.dropdown_menu .menu_child>li:hover>a {
  color: #359F7E;
}

.stricky-menu .menu-item .dropdown_menu>li>a {
  font-weight: normal;
}







/* FOOTER */
.footer {
  height: fit-content;
  padding: 80px 0 60px 0;
  background: url(../pics/footer.jpg) no-repeat;
  background-position: center;
  background-size: cover;
}

.footercontainer {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}

.footercontainer .foot-left h1 {
  font-weight: bold;
  font-size: 150px;
  color: #FFFFFF;
  line-height: 117px;
}

.footercontainer .foot-right ul {
  display: flex;
  flex-direction: column;
}

.footercontainer .foot-right ul li {
  height: 60px;
  line-height: 60px;
}

.footercontainer .foot-right ul li a {
  font-size: 18px;
  color: #FFFFFF;
  line-height: 25px;
}

.footercontainer .foot-right ul li a:hover {
  color: #359F7E;
}

.footercontainer .foot-right ul li.foot-active a {
  color: #359F7E;
}





/**
*手機端
*/
/* mobile-header-start */
.mobile-header {
  display: none;

}

.mobilecontainer {
  padding: 0 15px;
  position: relative;
  z-index: 10;
  transition: all 0.3s ease-in-out;
}

.mobilecontainer.whitenav {
  background-color: #fff;
}

.mobilecontainer.sticky {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  background-color: #fff;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.mobilecontainer .mobile-head {
  height: 100px;
  display: flex;
  align-items: center;
}

.mobilecontainer .mobile-logo {
  margin: 0 auto;
}

.mobilecontainer .mobile-logo>a {
  width: 180px;
  display: inline-block;
}

.mobilecontainer .nav-overlay {
  position: fixed;
  top: 100px;
  left: 0;
  width: 100%;
  height: 90%;
  background-color: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(6px);
  z-index: 999;
  display: none;
  /* 默认隐藏 */
}

.mobilecontainer .mobile-navbar {
  position: fixed;
  top: -100%;
  /* 初始位置在屏幕外 */
  left: 0;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.8);
  z-index: 1000;
  transition: top 0.3s ease-in-out;

}

.mobilecontainer .mobile-navbar>ul {
  padding: 0;
  margin-bottom: 0;
}

.mobilecontainer .mobile-navbar>ul>li {
  height: 60px;
  text-align: center;
  line-height: 60px;
  border-bottom: 1px solid #f0e5e3;
}

.mobilecontainer .mobile-navbar>ul>li>a {
  font-size: 18px;
  color: #333;
  line-height: 20px;
}

.mobilecontainer .mobile-navbar>ul>li:hover a,
.mobilecontainer .mobile-navbar>ul>li>a:active {
  color: #7B2B26;
  font-weight: bold;
}

.mobilecontainer .mobile-navbar>ul>li.mobile-active a {
  color: #7B2B26;
  font-weight: bold;
}

.mobilecontainer .mobile-navbar .mobile-has-children>img {
  padding: 0 0 5px 3px;
  transition: transform 0.3s;
  width: 16px;
}

/* 子菜單*/
.mobilecontainer .mobile-navbar .mobile-has-children .mobile-children {
  display: none;
}

.mobilecontainer .mobile-navbar .mobile-has-children .mobile-children>li {
  height: 55px;
  text-align: center;
  line-height: 55px;
  font-size: 16px;
  color: #777777;
  /* border-top: 1px solid #f0e5e3; */
}

.mobilecontainer .mobile-navbar .mobile-has-children .mobile-children>li>img {
  width: 15px;
  padding: 0 0 3px 3px;
  transition: transform 0.3s;
}

.mobilecontainer .mobile-navbar .mobile-has-children {
  min-height: 0;
  height: auto;
  padding-left: 20px;
}

.mobilecontainer .mobile-navbar .mobile-has-children.open a {
  color: #7B2B26;
}

.mobilecontainer .mobile-navbar .mobile-has-children.open>img {
  transform: rotate(180deg);
  padding: 5px 3px 0 0;
}


/* banner */
.bannercontainer>img {
  width: 100%;
}

.childcontainer>img {
  width: 100%;
}

/* mobile-header-end */
@media screen and (max-width:1250px) {
  .header-nav-wapper {
    column-gap: 1em;
  }

  .header-nav .menu-main-menu {
    column-gap: 1em;
  }

  .stricky-header-nav .stricky-menu {
    column-gap: 1em;
  }

  .menu-item {
    padding: 0 13px;
  }

  .menu-main-menu .menu-item>a {
    font-size: 16px;
  }

  .stricky-menu .menu-item>a {
    font-size: 16px;
  }
}

@media screen and (max-width:992px) {
  .header {
    display: none;
  }

  /* footer */
  .footer {
    padding: 30px 0;
  }

  .footercontainer {
    padding: 0 30px;
  }

  .footercontainer .foot-left h1 {
    font-size: 100px;
    line-height: 100px;
  }
}

@media screen and (max-width:768px) {

  /* banner */
  .bannercontainer>img {
    height: 270px;
  }

  .childcontainer>img {
    height: 270px;
  }



}