/*****************************************************************************/
/*********************************** Fonts ***********************************/
/*****************************************************************************/
/* noto-sans-tc-300 - chinese-traditional */
@font-face {
  font-family: 'Noto Sans TC';
  font-style: normal;
  font-weight: 300;
  src: url('../../../assets/fonts/noto-sans-tc-v26-chinese-traditional/noto-sans-tc-v26-chinese-traditional-300.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../../../assets/fonts/noto-sans-tc-v26-chinese-traditional/noto-sans-tc-v26-chinese-traditional-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../../../assets/fonts/noto-sans-tc-v26-chinese-traditional/noto-sans-tc-v26-chinese-traditional-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../../../assets/fonts/noto-sans-tc-v26-chinese-traditional/noto-sans-tc-v26-chinese-traditional-300.woff') format('woff'), /* Modern Browsers */
       url('../../../assets/fonts/noto-sans-tc-v26-chinese-traditional/noto-sans-tc-v26-chinese-traditional-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../../../assets/fonts/noto-sans-tc-v26-chinese-traditional/noto-sans-tc-v26-chinese-traditional-300.svg#NotoSansTC') format('svg'); /* Legacy iOS */
}
/* noto-sans-tc-regular - chinese-traditional */
@font-face {
  font-family: 'Noto Sans TC';
  font-style: normal;
  font-weight: 400;
  src: url('../../../assets/fonts/noto-sans-tc-v26-chinese-traditional/noto-sans-tc-v26-chinese-traditional-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../../../assets/fonts/noto-sans-tc-v26-chinese-traditional/noto-sans-tc-v26-chinese-traditional-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../../../assets/fonts/noto-sans-tc-v26-chinese-traditional/noto-sans-tc-v26-chinese-traditional-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../../../assets/fonts/noto-sans-tc-v26-chinese-traditional/noto-sans-tc-v26-chinese-traditional-regular.woff') format('woff'), /* Modern Browsers */
       url('../../../assets/fonts/noto-sans-tc-v26-chinese-traditional/noto-sans-tc-v26-chinese-traditional-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../../../assets/fonts/noto-sans-tc-v26-chinese-traditional/noto-sans-tc-v26-chinese-traditional-regular.svg#NotoSansTC') format('svg'); /* Legacy iOS */
}
/* noto-sans-tc-700 - chinese-traditional */
@font-face {
  font-family: 'Noto Sans TC';
  font-style: normal;
  font-weight: 700;
  src: url('../../../assets/fonts/noto-sans-tc-v26-chinese-traditional/noto-sans-tc-v26-chinese-traditional-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../../../assets/fonts/noto-sans-tc-v26-chinese-traditional/noto-sans-tc-v26-chinese-traditional-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../../../assets/fonts/noto-sans-tc-v26-chinese-traditional/noto-sans-tc-v26-chinese-traditional-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../../../assets/fonts/noto-sans-tc-v26-chinese-traditional/noto-sans-tc-v26-chinese-traditional-700.woff') format('woff'), /* Modern Browsers */
       url('../../../assets/fonts/noto-sans-tc-v26-chinese-traditional/noto-sans-tc-v26-chinese-traditional-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../../../assets/fonts/noto-sans-tc-v26-chinese-traditional/noto-sans-tc-v26-chinese-traditional-700.svg#NotoSansTC') format('svg'); /* Legacy iOS */
}

/*****************************************************************************/
/********************************** Global ***********************************/
/*****************************************************************************/
html {
  scroll-padding-top: 20px;
}

body {
  font-family: 'Noto Sans TC', sans-serif;
}

a {
  text-decoration: none;
}

/*************** Section ***************/
.section-primary {
  padding-top: 5rem;
  color: white;
  background-color: #87c033;
}

.section-secondary {
  padding-top: 5rem;
  background-color: white;
}

/**************** Text ****************/
.section-capital {
  color: white;
  font-size: min(max(3.6vw, 30px), 60px);
  font-weight: bold;
}

.section-capital-primary {
  color: white;
}

.section-capital-secondary {
  color: #87c033;
}

/*************** Button ***************/
.btn-base {
  padding: 1rem 2rem;
  border: none;
  border-radius: 10rem;
  text-decoration: none;
}

.btn-primary {
  color: rgba(255, 255, 255, 0.7);
  background-color: rgba(135, 192, 51, 0.7);
  transition: all 0.3s ease-in-out;
}

.btn-primary:hover {
  color: white;
  background-color: #87c033;
  box-shadow: 0px 2px 15px rgba(0, 0, 0, 0.3);
}


/*****************************************************************************/
/********************************** Navbar ***********************************/
/*****************************************************************************/
#navbarRoot {
  background-color: white;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.5);
}

#navbarRoot .navbar-brand {
  font-size: 1.8rem;
  color: black;
}

#navbarRoot .navbar-brand:hover {
  color: #87c033;
}

#navbarRoot .navbar-nav .nav-item .nav-link {
  color: black;
}

#navbarRoot .navbar-nav .nav-item .nav-link:hover,
#navbarRoot .navbar-nav .nav-item .nav-link.active {
  color: #87c033;
}


/*****************************************************************************/
/********************************* Masthead **********************************/
/*****************************************************************************/
.masthead-text-capital {
  color: white;
  font-weight: 700;
  font-size: min(max(7.5vw, 38px), 70px);
}

.masthead-text-description {
  color: rgba(255, 255, 255, 0.75);
  font-size: min(max(1.8vw, 18px), 40px);
  margin-bottom: 5rem;
}

.masthead-slide-1 {
  padding: 14rem 2rem 9rem;
  background: linear-gradient(rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0.35)), url("../assets/img/masthead_01.jpg");
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: cover;
}

.masthead-slide-2 {
  padding: 14rem 2rem 9rem;
  background: linear-gradient(rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0.35)), url("../assets/img/masthead_02.jpg");
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: cover;
}

.masthead-slide-3 {
  padding: 14rem 2rem 9rem;
  background: linear-gradient(rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0.35)), url("../assets/img/masthead_03.jpg");
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: cover;
}

.swiper-pagination .swiper-pagination-bullet {
  width: 18px;
  height: 10px;
  background-color: rgba(255, 255, 255, 0.4);
  opacity: 1;
  border-radius: 0;
  transition: 0.3s;
}

.swiper-pagination .swiper-pagination-bullet-active {
  width: 36px;
  background-color: #e0e0e0;
}

.swiper-button-prev,
.swiper-button-next {
  color: rgba(255, 255, 255, 0.4);
}

.swiper-button-prev:hover,
.swiper-button-next:hover {
  color: #e0e0e0;
}


/*****************************************************************************/
/*********************************** About ***********************************/
/*****************************************************************************/
.about-box {
  border-radius: 10px;
  background-color: rgba(255, 255, 255, 0.8);
  box-shadow: 0px 2px 15px rgba(0, 0, 0, 0.3);
}

.about-box .about-img {
  border-radius: 10px 10px 0 0;
}

.about-box .about-img img {
  transition: all 0.5s;
}

.about-box .about-img:hover img {
  transform: scale(1.15);
}

.about-box .about-info {
  padding: 20px;
}

.about-box .about-info h4 {
  color: #87c033;
}


/*****************************************************************************/
/********************************** Service **********************************/
/*****************************************************************************/
.section-service-singleP {
  padding-top: 4rem;
  padding-left: 2rem;
  padding-right: 1rem;
  height: 36rem;
  background-image: url("../assets/img/service_01.jpg");
  background-position: 70% top;
  background-size: cover;
  background-repeat: no-repeat;
}

.section-service-imageP {
  padding-top: 4rem;
  padding-left: 2rem;
  padding-right: 1rem;
  height: 36rem;
  background-image: url("../assets/img/service_03A.jpg");
  background-position: 20% top;
  background-size: cover;
  background-repeat: no-repeat;
}

@media (min-width: 600px) {
  .section-service-imageP {
    padding-right: 2rem;
  }
}

.section-service-singleP-capital,
.section-service-imageP-capital {
  color: #87c033;
  font-size: min(max(2.4vw, 24px), 40px);
  font-weight: bold;
}

.block-imageP {
  padding: 15px;
  background-color: rgba(0, 0, 0, 0.4);
}


/*****************************************************************************/
/*********************************** Case ************************************/
/*****************************************************************************/
.case-item {
  cursor: pointer;
  position: relative;
}

.case-item .case-item-cover {
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(135, 192, 51, 0.7);
  transition: all 0.2s ease-in-out;
  opacity: 0;
}

.case-item:hover .case-item-cover {
  opacity: 1;
}

.case-item .case-item-cover .case-item-name {
  font-size: 2.5rem;
  font-weight: bold;
}

.case-item .case-img-box {
  box-shadow: 0px 2px 15px rgba(0, 0, 0, 0.3);
  transition: all 0.5s;
}

.case-item:hover .case-img-box {
  box-shadow: 0px 2px 15px rgba(0, 0, 0, 0.7);
}

.case-modal-name {
  color: white;
  font-size: 2rem;
  font-weight: bold;
}

.modal-header-custom {
  background-color: #87c033;
}

.btn-modal {
  color: rgba(255, 255, 255, 0.7);
  background-color: rgba(135, 192, 51, 0.7);
  transition: all 0.3s ease-in-out;
}

.btn-modal:hover {
  color: white;
  background-color: #87c033;
  box-shadow: 0px 2px 15px rgba(0, 0, 0, 0.3);
}

.case-modal-info {
  position: relative;
  padding-left: 2rem;
  padding-right: 2rem;
}

.case-modal-info .img-case-phone {
  position: absolute;
  bottom: 5px;
  right: 3rem;
  width: 16%;
  height: 65%;
  z-index: 1;
}


/*****************************************************************************/
/********************************** Contact **********************************/
/*****************************************************************************/
.section-contact {
  margin-top: 5rem;
  padding-top: 5rem;
  padding-bottom: 4rem;
  color: white;
  background-color: #87c033;
}

.form-select {
  height: 3.5rem;
}

.form-textarea {
  height: 100%;
}

#message {
  height: 100%;
  min-height: 10rem;
}

.btn-contact {
  padding: 0.8rem 1.8rem;
  color: white;
  background-color: #87c033;
  border: 2px solid white;
  transition: all 0.3s ease-in-out;
}

.btn-contact:hover {
  color: #87c033;
  background-color: white;
  box-shadow: 0px 2px 15px rgba(0, 0, 0, 0.3);
}

.msg-submit {
  display: block;
}

.msg-done {
  display: none;
  color: white;
}

/*****************************************************************************/
/*********************************** Footer **********************************/
/*****************************************************************************/
.section-footer {
  padding-top: 5rem;
  color: white;
  background-color: #87c033;
  border-top: 1px solid white;
}

.rbb {
  border: 1px solid red;
}

.bbb {
  border: 1px solid blue;
}

.gbb {
  border: 1px solid green;
}

