html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

h1, h2, h3, h4, h5, h6, p, a {
  font-family: 'Roboto','Noto Sans TC', Arial, Helvetica, sans-serif;
  line-height: 1.5em;
}

p {
  color: #333;
  font-size: 16px;
  font-weight: 300;
}

* {
  outline: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

img {
  max-width: 100%;
  height: auto;
  border: 0;
}

a, a:hover {
  text-decoration: none;
}

em {
  font-style: normal;
}

body {
  background-color: #fff;
  font-size: 14px;
  color: #444;
}

@media screen and (max-width: 1024px) {
  body {
    background-size: 120% auto;
  }
}

.wrap {
  position: relative;
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  padding: 0 15px;
}

#outerWrap {
  padding-top: 0;
  width: 100%;
  overflow: hidden;
}

@media screen and (max-width: 1024px) {
  #outerWrap {
    padding-top: 70px;
  }
}

.pageMain {
  padding-top: 3em;
}

.container {
  position: relative;
  max-width: 100%;
  width: 1400px;
  margin: 0 auto;
  padding: 0 3% 3em;
  min-height: 400px;
}

/*-- animation ----------*/
/*floating*/
.floating {
  -webkit-animation-name: floating;
          animation-name: floating;
  -webkit-animation-duration: 1.8s;
          animation-duration: 1.8s;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
}

@keyframes floating {
  0% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
  }
  50% {
    -webkit-transform: translateY(10%);
            transform: translateY(10%);
  }
  100% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
  }
}

@-webkit-keyframes floating {
  0% {
    -webkit-transform: translateY(0%);
  }
  50% {
    -webkit-transform: translateY(10%);
  }
  100% {
    -webkit-transform: translateY(0%);
  }
}

/* Icon Wobble Horizontal */
@-webkit-keyframes hvr-icon-wobble-horizontal {
  16.65% {
    -webkit-transform: translateX(6px);
            transform: translateX(6px);
  }
  33.3% {
    -webkit-transform: translateX(-5px);
            transform: translateX(-5px);
  }
  49.95% {
    -webkit-transform: translateX(4px);
            transform: translateX(4px);
  }
  66.6% {
    -webkit-transform: translateX(-2px);
            transform: translateX(-2px);
  }
  83.25% {
    -webkit-transform: translateX(1px);
            transform: translateX(1px);
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

@keyframes hvr-icon-wobble-horizontal {
  16.65% {
    -webkit-transform: translateX(6px);
            transform: translateX(6px);
  }
  33.3% {
    -webkit-transform: translateX(-5px);
            transform: translateX(-5px);
  }
  49.95% {
    -webkit-transform: translateX(4px);
            transform: translateX(4px);
  }
  66.6% {
    -webkit-transform: translateX(-2px);
            transform: translateX(-2px);
  }
  83.25% {
    -webkit-transform: translateX(1px);
            transform: translateX(1px);
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

/*- OWL -*/
.owl-theme .owl-nav .owl-next, .owl-theme .owl-nav .owl-prev {
  opacity: 1;
  position: absolute;
  z-index: 1;
  top: 50%;
  right: -2%;
  background-image: url(../images/iArrow02R_w.png);
  background-position: center center;
  background-repeat: no-repeat;
  background-color: #d6d6d6;
  background-size: 6px auto;
  width: 36px;
  height: 36px;
  border-radius: 18px;
}

.owl-theme .owl-nav .owl-next:hover, .owl-theme .owl-nav .owl-prev:hover {
  background-color: #71130c;
}

.owl-theme .owl-nav .owl-prev {
  left: -2%;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.owl-dots {
  margin-top: 0px;
  width: 100%;
  text-align: center;
}

.owl-dots .owl-dot {
  border: 1px solid #71130c;
  height: 0.8em;
  width: 0.8em;
  border-radius: 0.4em;
  margin-right: 0.3em;
  display: inline-block;
}

.owl-dots .owl-dot:hover {
  background-color: #ccc;
  border: 1px solid #71130c;
}

.owl-dots .owl-dot.active, .owl-dots .owl-dot.active:hover {
  background-color: #71130c;
  border: 1px solid #71130c;
}

/*font*/
.titleBox, .titleBox02, .titleBox03 {
  font-family: 'Roboto','Noto Sans TC', Arial, Helvetica, sans-serif;
  margin-bottom: 0.5em;
  width: 100%;
  color: #71130c;
  font-size: 40px;
  font-weight: 700;
  text-transform: uppercase;
  position: relative;
  padding-top: 0.5em;
}

.titleBox::before, .titleBox02::before, .titleBox03::before {
  position: absolute;
  left: 0;
  top: 0;
  content: "";
  width: 40px;
  height: 1px;
  background-color: #71130c;
}

.titleBox .num, .titleBox02 .num, .titleBox03 .num {
  color: #71130c;
  font-size: 28px;
  font-weight: 700;
  margin-left: 85px;
  letter-spacing: 0;
  margin-left: 40px;
}

@media screen and (max-width: 600px) {
  .titleBox, .titleBox02, .titleBox03 {
    font-size: 30px;
  }
  .titleBox .num, .titleBox02 .num, .titleBox03 .num {
    font-size: 20px;
  }
}

.titleBox02 {
  text-align: center;
  display: block;
}

.titleBox02::before {
  display: none;
}

.titleBox02 .num {
  margin-left: 1em;
}

.titleBox02 .num::before {
  content: "";
  width: 40px;
  height: 1px;
  background-color: #71130c;
  display: inline-block;
  -webkit-transform: translateY(-8px);
          transform: translateY(-8px);
  margin-right: 0.5em;
}

.titleBox03 {
  color: #fff;
}

.titleBox03::before {
  background-color: #fff;
}

.titleBox03 .num {
  color: #fff;
}

.titleBox04 {
  background: url("../images/line02.jpg") center bottom no-repeat;
  font-family: 'Roboto','Noto Sans TC', Arial, Helvetica, sans-serif;
  margin: 0 auto 0.5em;
  width: 100%;
  color: #71130c;
  font-size: 42px;
  font-weight: 700;
  font-style: italic;
  text-align: center;
}

.fSy16_b {
  color: #333;
  font-size: 16px;
  font-weight: 700;
}

.fSy18_r {
  color: #71130c;
  font-size: 18px;
  font-weight: 500;
}

.fSy20_r {
  color: #71130c;
  font-size: 20px;
  font-style: italic;
  font-weight: 500;
}

.fSy26_b {
  color: #333;
  font-size: 26px;
  font-weight: 700;
}

.fSy26_rI {
  color: #71130c;
  font-size: 26px;
  font-style: italic;
  font-weight: 300;
}

.fSy42_r {
  color: #71130c;
  font-size: 42px;
  font-weight: 500;
}

/*Icon*/
.iArrowR {
  background: url(../images/iArrowRight_gy.png) no-repeat left top;
  width: 31px;
  height: 6px;
}

.iArrowL {
  background: url(../images/iArrowLeft_gy.png) no-repeat left top;
  width: 31px;
  height: 6px;
}

.iInquiry {
  background: url(../images/iInquiry_w.png) no-repeat left top;
  width: 20px;
  height: 20px;
}

/*Btn*/
.btnSy01 {
  color: #fff;
  font-size: 16px;
  height: 42px;
  line-height: 42px;
  text-align: center;
  width: 215px;
  padding: 0 5%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-color: #71130c;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  opacity: 0.9;
}

.btnSy01:active, .btnSy01:visited, .btnSy01:focus {
  background-color: #71130c;
  color: #fff;
}

.btnSy01 .iArrowR {
  position: relative;
  background: url(../images/iArrowRight.png) no-repeat left top;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
}

.btnSy01:hover {
  opacity: 1;
  -webkit-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
  color: #fff;
}

.btnSy01:hover .iArrowR {
  -webkit-animation-name: hvr-icon-wobble-horizontal;
          animation-name: hvr-icon-wobble-horizontal;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
}

.btnSy02 {
  color: #fff;
  font-size: 16px;
  height: 42px;
  line-height: 42px;
  text-align: center;
  width: 215px;
  padding: 0 5%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 1px solid #fff;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  font-weight: 300;
}

.btnSy02:active, .btnSy02:visited, .btnSy02:focus {
  color: #fff;
}

.btnSy02 .iArrowR {
  position: relative;
  background: url(../images/iArrowRight.png) no-repeat left top;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
}

.btnSy02:hover {
  font-weight: 500;
  -webkit-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
  color: #71130c;
  background-color: #fff;
}

.btnSy02:hover .iArrowR {
  background: url(../images/iArrowRight_r.png) no-repeat left top;
  -webkit-animation-name: hvr-icon-wobble-horizontal;
          animation-name: hvr-icon-wobble-horizontal;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
}

.btnSy03 {
  color: #71130c;
  font-size: 16px;
  height: 42px;
  line-height: 42px;
  text-align: center;
  width: 215px;
  padding: 0 5%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 1px solid #71130c;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  font-weight: 300;
}

.btnSy03:active, .btnSy03:visited, .btnSy03:focus {
  color: #71130c;
}

.btnSy03 .iArrowR, .btnSy03 .iArrowL {
  position: relative;
  background: url(../images/iArrowRight_r.png) no-repeat left top;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
}

.btnSy03 .iArrowL {
  background: url(../images/iArrowLeft_r.png) no-repeat left top;
}

.btnSy03:hover {
  font-weight: 500;
  -webkit-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
  color: #fff;
  background-color: #71130c;
}

.btnSy03:hover .iArrowR, .btnSy03:hover .iArrowL {
  background: url(../images/iArrowRight.png) no-repeat left top;
  -webkit-animation-name: hvr-icon-wobble-horizontal;
          animation-name: hvr-icon-wobble-horizontal;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
}

.btnSy03:hover .iArrowL {
  background: url(../images/iArrowLeft.png) no-repeat left top;
}

/*UL*/
ul.ulStyle01 {
  list-style: none;
  margin: 0;
  padding: 0;
}

ul.ulStyle01 li {
  list-style: none;
  margin: 0 0 0.2em 0;
  padding: 0;
}

ul.ulStyle02 {
  list-style: none;
  margin: 0;
  padding: 0;
}

ul.ulStyle02 li {
  list-style: decimal;
  margin: 0 0 0.2em 2em;
  padding: 0;
}

/*table*/
.table_scroll {
  overflow-x: auto;
}

.datatable {
  min-width: 500px;
  margin: 1em 0;
  border-top: 1px solid #d0d0d0;
}

.datatable tr {
  border-bottom: 1px solid #d0d0d0;
}

.datatable tr td {
  color: #333;
  padding: 0.3em 1em;
  font-size: 16px;
  font-weight: 500;
}

.datatable tr:nth-child(even) {
  background-color: #fff;
}

.datatable tr:last-of-type {
  border-bottom: 3px solid #71130c;
}

.datatable th {
  background-color: #71130c;
  color: #fff;
  padding: 0.3em 1em;
  font-size: 16px;
}

/*-- Pagebanner ----------*/
.pageBanner {
  width: 100%;
  position: relative;
  margin-bottom: 0;
}

.pageBanner .txt {
  width: 100%;
  height: 100%;
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
}

.pageBanner .txt p {
  text-align: center;
  font-style: italic;
  font-size: 50px;
  color: #fff;
  letter-spacing: 0.1em;
}

.pageBanner .txt p b {
  font-weight: 700;
}

.pageBanner img {
  display: block;
  margin: 0 auto;
}

@media screen and (max-width: 600px) {
  .pageBanner .txt p {
    font-size: 30px;
  }
}

/*-- breadcrumb ----------*/
.path {
  padding: 0.5em 3%;
  list-style: none;
  width: 100%;
  margin: 0 auto;
  background-color: #e0e0e0;
  position: relative;
}

.path ul, .path li {
  margin: 0;
  padding: 0;
  list-style: none;
}

.path li {
  display: inline;
  font-size: 14px;
  color: #71130c;
  font-weight: 500;
}

.path li a {
  font-size: 14px;
  font-weight: 500;
  color: #333;
  opacity: 0.6;
}

.path li a:hover {
  text-decoration: underline;
  opacity: 1;
}

.path li + li:before {
  padding: 2px 1em;
  color: #999;
  content: " / ";
  font-size: 12px;
  font-weight: 500;
}

@media screen and (max-width: 1200px) {
  .path {
    padding: 0.5em 3%;
  }
}

/*sidMenu*/
.subMenu01 {
  width: 100%;
  margin-bottom: 5em;
  font-family: 'Roboto','Noto Sans TC', Arial, Helvetica, sans-serif;
}

.subMenu01 ul, .subMenu01 li {
  margin: 0;
  padding: 0;
  list-style: none;
}

.subMenu01 ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 1400px;
  max-width: 100%;
  margin: 0 auto;
}

.subMenu01 li {
  border-bottom: solid 1px #b2b2b2;
  overflow: hidden;
  width: 50%;
}

.subMenu01 li a {
  font-size: 40px;
  height: 100%;
  width: 100%;
  padding: 0.3em;
  text-align: center;
  color: #cdcccb;
  display: block;
  font-weight: 500;
  text-transform: uppercase;
}

.subMenu01 li.current {
  border-bottom: solid 7px #71130c;
}

.subMenu01 li.current a {
  color: #71130c;
}

@media screen and (max-width: 600px) {
  .subMenu01 li a {
    font-size: 18px;
  }
}

.subMenu02 {
  margin-bottom: 2em;
}

.subMenu02 .mTitle {
  background: url("../images/line02.jpg") left bottom no-repeat;
  background-size: 100% auto;
  color: #71130c;
  font-weight: 900;
  font-size: 30px;
  font-style: italic;
  text-align: left;
  padding: 0.5em 5% 0;
  text-transform: uppercase;
  margin-top: 0.5em;
}

.subMenu02 .mTitle .btnOpenSidMenu {
  display: none;
  cursor: pointer;
  border: solid 2px #71130c;
  margin-left: 0.5em;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  float: right;
  background: url(../images/iArrow_r.png) center center no-repeat;
  background-size: 60% auto;
}

.subMenu02 .mTitle .btnOpenSidMenu.btnOpen {
  background: url(../images/iArrow_w.png) center center no-repeat #71130c;
  background-size: 60% auto;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
}

.subMenu02 .mBox {
  padding: 0.5em 0 0.5em 0.5em;
  border-bottom: 1px solid #d1d1d1;
}

.subMenu02 .mBox .link {
  font-weight: 700;
  font-size: 17px;
  color: #333;
  display: inline-block;
}

.subMenu02 .mBox ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.subMenu02 .mBox li {
  list-style: none;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0;
}

.subMenu02 .mBox li::before {
  content: "-";
  padding-right: 0.3em;
}

.subMenu02 .mBox li a {
  color: #999;
  font-weight: 500;
  font-size: 16px;
}

.subMenu02 .mBox li a:hover {
  color: #000;
}

.subMenu02 .mBox li a.current {
  color: #71130c;
}

@media screen and (max-width: 1024px) {
  .subMenu02 .btnOpenSidMenu {
    display: inline-block;
  }
  .subMenu02 .mTitle {
    margin: 0;
    background: none;
    border-bottom: solid #ccc 1px;
    padding: 0 3%;
    color: #aaa;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .subMenu02 .mBox {
    padding: 0.5em 3%;
  }
  .subMenu02 .menuBox.open {
    background-color: #e0e0e0;
  }
  .subMenu02 .menuBox.open .mBox {
    display: block;
    height: auto;
  }
  .subMenu02 .menuBox.open .mTitle {
    color: #fff;
    background-color: #333;
  }
}

.pagination {
  width: 100%;
  margin: 4em auto 2em;
  padding: 0 3%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.pagination a {
  color: #666;
  text-align: center;
  line-height: 2em;
  font-size: 16px;
  font-weight: 300;
  width: 2em;
  height: 2em;
  margin: 0 0.2em;
}

.pagination a .iPrev {
  background: url(../images/iArrow_gy.png) center center no-repeat;
  background-size: auto 50%;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  width: 100%;
  height: 100%;
  display: inline-block;
}

.pagination a .iNext {
  background: url(../images/iArrow_gy.png) center center no-repeat;
  background-size: auto 50%;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  width: 100%;
  height: 100%;
  display: inline-block;
}

.pagination a:hover {
  color: #000;
  font-weight: 500;
  text-decoration: none;
  -webkit-transition: all 0.25s ease 0s;
  transition: all 0.25s ease 0s;
}

.pagination a img {
  opacity: 0.8;
  width: 0.8em;
  height: 0.8em;
  margin: 0 auto;
  display: inline-block;
}

.pagination a.active {
  color: #a11a10;
  font-weight: 500;
}

/*-- about --------------------------------------------------------------------------*/
#abA {
  width: 100%;
  padding: 0;
  overflow: hidden;
}

#abA .container01 {
  position: relative;
  width: 100%;
  padding: 5em 0 5em calc((100% - 1200px)/2);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#abA .container01::before {
  content: "";
  position: absolute;
  height: 100%;
  width: 55%;
  left: 0;
  top: 0;
  z-index: 0;
  background-color: #f1f0ef;
}

#abA .container01 .leftBox {
  padding: 0 3%;
}

#abA .container01 .titleBox, #abA .container01 .txtBox {
  width: 330px;
}

#abA .container01 h1 {
  margin-bottom: 1em;
}

#abA .container01 .pic {
  width: 60%;
  max-width: 1162px;
}

@media screen and (max-width: 1024px) {
  #abA .container01 {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  #abA .container01 .leftBox {
    width: 30%;
    padding: 0 3%;
  }
  #abA .container01 .pic {
    width: 55%;
  }
}

@media screen and (max-width: 900px) {
  #abA .container01 {
    padding: 5em 0 0;
    display: inherit;
    background-color: #f1f0ef;
  }
  #abA .container01::before {
    display: none;
  }
  #abA .container01 .leftBox, #abA .container01 .pic, #abA .container01 .titleBox, #abA .container01 .txtBox {
    width: 100%;
  }
  #abA .container01 .leftBox {
    padding: 0 3% 5em;
  }
}

@media screen and (max-width: 600px) {
  #abA .container01 {
    padding: 3em 0  0;
  }
  #abA .container01 .leftBox {
    padding: 0 3% 3em;
  }
}

#abA .container02 {
  width: 1400px;
  max-width: 100%;
  padding: 5em 3%;
  margin: 0 auto;
}

#abA .container02 .itemBox {
  clear: both;
  overflow: hidden;
  padding: 5em 0;
}

#abA .container02 .itemBox .item {
  width: calc( 100%/4);
  float: left;
  text-align: center;
  margin-bottom: 2em;
}

#abA .container02 .itemBox p {
  font-size: 26px;
  font-weight: 500;
  color: #333;
}

@media screen and (max-width: 900px) {
  #abA .container02 {
    padding: 3em 3%;
  }
  #abA .container02 .itemBox {
    padding: 3em 0;
  }
  #abA .container02 .itemBox img {
    width: 100px;
    height: 100px;
  }
  #abA .container02 .itemBox p {
    font-size: 18px;
  }
}

@media screen and (max-width: 600px) {
  #abA .container02 .itemBox .item {
    width: calc( 100%/2);
  }
}

#abA .container03 {
  position: relative;
  width: 100%;
  padding: 5em 0 5em calc((100% - 1200px)/2);
  overflow: hidden;
}

#abA .container03::before {
  background-color: #f1f0ef;
  content: "";
  position: absolute;
  height: 80%;
  width: 100%;
  top: 0;
}

#abA .container03::after {
  content: "";
  position: absolute;
  height: 100%;
  width: 40%;
  right: 5%;
  top: 0;
  z-index: 0;
  background-color: #71130c;
}

#abA .container03 .rightBox {
  padding-left: 3%;
  position: relative;
  z-index: 2;
  display: inline-block;
}

#abA .container03 .titleBox, #abA .container03 .txtBox {
  width: 330px;
  padding-right: 8%;
}

#abA .container03 .titleBox03 {
  margin-bottom: 1em;
}

#abA .container03 p {
  color: #fff;
}

#abA .container03 .pic {
  float: left;
  width: 60%;
  max-width: 1058px;
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 1024px) {
  #abA .container03 {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  #abA .container03 .rightBox {
    width: 30%;
    padding: 0 3%;
  }
  #abA .container03 .pic {
    width: 55%;
  }
}

@media screen and (max-width: 900px) {
  #abA .container03 {
    padding: 5em 0 0;
    display: inherit;
    background-color: #f1f0ef;
  }
  #abA .container03::before {
    display: none;
  }
  #abA .container03::after {
    left: 0;
    right: auto;
  }
  #abA .container03::after, #abA .container03 .rightBox, #abA .container03 .pic, #abA .container03 .titleBox, #abA .container03 .txtBox {
    width: 100%;
  }
  #abA .container03 .rightBox {
    padding: 0 3% 5em;
  }
}

@media screen and (max-width: 600px) {
  #abA .container03 {
    padding: 3em 0  0;
  }
  #abA .container03 .leftBox {
    padding: 0 3% 3em;
  }
}

/*-- productList01 ----------*/
#prLA h1, #prLA .txtBox {
  width: 1400px;
  max-width: 100%;
  margin: 0 auto 2em;
  padding: 0 3%;
  text-align: center;
  overflow: hidden;
}

#prLA h1 {
  margin-bottom: 30px;
}

#prLA .productsBox {
  margin: 0 auto 5em;
  overflow: hidden;
  display: table;
}

#prLA .listCard {
  margin-bottom: 1em;
  padding: 0;
  display: inline-block;
  text-align: center;
  width: 100%;
  position: relative;
  float: left;
  width: calc(100%/3);
}

#prLA .listCard .photoBox {
  width: 100%;
  margin: 0 auto 0.8em;
  position: relative;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
  display: -webkit-inline-box;
  max-width: 643px;
}

#prLA .listCard .photoBox a {
  display: block;
}

#prLA .listCard .photoBox a::before {
  content: "";
  background-color: #9A3533;
  opacity: 0.5;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  opacity: 0.7;
  mix-blend-mode: color-burn;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}

#prLA .listCard .photoBox a img {
  position: relative;
  height: 100%;
  width: 100%;
  margin: 0 auto;
}

#prLA .listCard .listTxt {
  width: 100%;
  height: 100%;
  padding: 0 18%;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

#prLA .listCard .listTxt .title {
  font-size: 42px;
  font-weight: 100;
  line-height: 50px;
  color: #fff;
  margin-bottom: 0.5em;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
  text-align: center;
  text-transform: uppercase;
}

#prLA .listCard .listTxt .title b {
  font-weight: 500;
}

#prLA .listCard .listTxt .title span {
  font-size: 14px;
  font-weight: 300;
  line-height: 30px;
  font-style: italic;
  display: block;
  text-transform: initial;
}

#prLA .listCard .listTxt .txt {
  color: #fff;
  font-size: 16px;
  font-weight: 300;
  height: 0;
  overflow: hidden;
  margin-bottom: 1.5em;
  opacity: 0;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

#prLA .listCard:hover {
  z-index: 5;
}

#prLA .listCard:hover .photoBox {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}

#prLA .listCard:hover .photoBox a::before {
  opacity: 0;
}

#prLA .listCard:hover .listTxt .txt {
  opacity: 1;
  height: 4.5em;
}

#prLA .listCard:hover .listTxt .btnSy02 {
  background-color: #fff;
  color: #9A3533;
  font-weight: 500;
}

#prLA .listCard:hover .listTxt .btnSy02 .iArrowR {
  background: url(../images/iArrowRight_r.png) no-repeat left top;
}

@media screen and (max-width: 900px) {
  #prLA .listCard, #prLA .listCard:hover {
    margin: 0 auto;
    float: none;
    clear: both;
    width: 100%;
    overflow: hidden;
    display: -webkit-box;
  }
  #prLA .listCard .photoBox, #prLA .listCard:hover .photoBox {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  #prLA .listCard .photoBox a::before, #prLA .listCard:hover .photoBox a::before {
    opacity: 0.5;
  }
  #prLA .listCard .listTxt .txt, #prLA .listCard:hover .listTxt .txt {
    opacity: 1;
    height: 4.2em;
  }
  #prLA .listCard .listTxt .btnSy02, #prLA .listCard:hover .listTxt .btnSy02 {
    background-color: #fff;
    color: #9A3533;
    font-weight: 500;
  }
  #prLA .listCard .listTxt .btnSy02 .iArrowR, #prLA .listCard:hover .listTxt .btnSy02 .iArrowR {
    background: url(../images/iArrowRight_r.png) no-repeat left top;
  }
}

/*-- productList02 ----------*/
.prL02A .subMenu02 {
  float: left;
  display: inline-block;
  width: 225px;
  margin-left: 3%;
}

.prL02A .main {
  float: right;
  width: calc( 100% - 240px - 6%);
  padding: 5em 3% 5em 3%;
}

.prL02A .main h1, .prL02A .main > .txtBox {
  width: 1400px;
  max-width: 100%;
  margin: 0 auto 2em;
  padding: 0 3%;
  text-align: center;
  overflow: hidden;
}

.prL02A .main h1 {
  margin-bottom: 30px;
}

.prL02A .main > .txtBox {
  text-align: center;
  margin-bottom: 3em;
}

.prL02A .listCard {
  margin-bottom: 1em;
  padding: 0;
  display: inline-block;
  float: left;
  width: calc((100%/4) - 0.5em);
  padding-bottom: 2em;
}

.prL02A .listCard .photoBox {
  width: 100%;
  margin: 0 auto 0.5em;
  position: relative;
  overflow: hidden;
}

.prL02A .listCard .photoBox a {
  width: 100%;
  height: 100%;
  display: block;
}

.prL02A .listCard .photoBox img {
  position: relative;
  opacity: 0.95;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}

.prL02A .listCard .txtBox {
  width: 100%;
  padding: 0 1em;
  display: block;
}

.prL02A .listCard .txtBox a.title {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
  text-align: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.prL02A .listCard .txtBox a.title span {
  color: #b53026;
  font-size: 14px;
  font-weight: 300;
}

.prL02A .listCard .txtBox a.title b {
  font-weight: 500;
  font-size: 18px;
  color: #000;
  margin-bottom: 0.5em;
}

.prL02A .listCard .txtBox a.title::after {
  content: '';
  width: 40px;
  height: 4px;
  background-color: #b53026;
}

.prL02A .listCard:hover {
  -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
  z-index: 2;
  position: relative;
}

.prL02A .listCard:hover .photoBox img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  opacity: 1;
}

.prL02A .listCard:hover .txtBox a.title {
  font-weight: 900;
  border: none;
}

@media screen and (max-width: 1300px) {
  .prL02A .listCard {
    width: calc((100%/3) - 0.5em);
  }
}

@media screen and (max-width: 1024px) {
  .prL02A .subMenu02, .prL02A .main {
    width: 100%;
  }
  .prL02A .main {
    padding: 3em 0 5em 0;
  }
  .prL02A .subMenu02 {
    margin-left: 0;
    background-color: #f1f1f1;
  }
  .prL02A .subMenu02 .mTitle .btnOpenSidMenu {
    display: inline-block;
  }
  .prL02A .subMenu02 .mBox {
    display: none;
    height: 0;
  }
  .prL02A .subMenu02 .mBox ul {
    overflow: hidden;
  }
  .prL02A .subMenu02 .mBox li {
    float: left;
    margin-right: 2em;
  }
  .prL02A .listCard {
    width: calc((100%/3) - 0.5em);
  }
}

@media screen and (max-width: 700px) {
  .prL02A .listCard {
    width: calc((100%/2) - 0.5em);
  }
}

/*-- product-detail ----------*/
#prdA {
  overflow: hidden;
  padding-top: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  position: relative;
}

#prdA #photoShow {
  width: 50%;
}

#prdA #photoShow ul, #prdA #photoShow li {
  list-style: none;
}

#prdA #photoShow .owl-carousel {
  padding: 0;
}

#prdA #photoShow .owl-carousel .owl-item img {
  width: 430px;
  max-width: 100%;
  margin: 0 auto;
}

#prdA .detailInfo {
  width: 50%;
  padding: 2em 3%;
  background-color: #f6f5f4;
}

#prdA .detailInfo h1 {
  margin-bottom: 1em;
}

#prdA .detailInfo h1 .fSy18_r {
  display: block;
  margin-bottom: 0.5em;
}

#prdA .detailInfo .txtBox {
  margin-bottom: 1em;
}

#prdA .shareBox {
  margin-bottom: 1em;
}

#prdA .shareBox p {
  font-weight: 500;
}

#prdA .btnBox {
  margin: 1em 0;
  padding: 0.5em 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}

#prdA .btnBox .btnSy01, #prdA .btnBox .btnSy03 {
  width: 130px;
  margin-right: 0.5em;
  min-width: auto;
  padding: 0 3%;
}

#prdA .btnBox .btnSy01 {
  width: 100px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

#prdA .btnBox .btnSy01:hover {
  background-color: #2b3f5d;
}

@media screen and (max-width: 900px) {
  #prdA {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #prdA::before {
    display: none;
  }
  #prdA #photoShow, #prdA .detailInfo {
    width: 100%;
  }
}

.prdB {
  clear: both;
  padding: 0;
  overflow: hidden;
  background-color: #fff;
}

.prdB .table_scroll {
  margin-bottom: 20px;
}

.prdB .datatable {
  width: 100%;
}

.prdB #description .txtBox {
  padding: 0 0.5em;
}

.prdB #description .txtBox p {
  max-height: 100px;
  display: block;
  overflow: hidden;
}

.prdB #description ul.resp-tabs-list {
  background-color: #fff;
  margin-bottom: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0 calc((100% - 1200px)/2);
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

.prdB #description ul.resp-tabs-list li {
  font-family: 'Noto Sans TC',  sans-serif;
  border-bottom: solid 1px #b2b2b2;
  background: none;
  color: #666666;
  display: inline-block;
  text-transform: uppercase;
  position: relative;
  padding: 0 0.5em;
  margin-right: 0;
  width: 100%;
  font-size: 42px;
  line-height: 65px;
  letter-spacing: 1px;
  font-weight: 500;
}

.prdB #description ul.resp-tabs-list li.resp-tab-active {
  border-bottom: solid 6px #71130c;
  color: #71130c;
  position: relative;
}

.prdB #description .resp-arrow {
  border-top-color: #fff;
}

.prdB #description .resp-tabs-container {
  padding: 0 calc((100% - 1400px)/2);
}

.prdB #description .resp-tab-content {
  padding: 1em 3%;
}

@media screen and (max-width: 900px) {
  .prdB .wrap {
    padding: 0;
  }
  .prdB #description .resp-tabs-container {
    margin: 0 auto;
  }
  .prdB #description ul.resp-tabs-list {
    display: none;
  }
  .prdB #description ul.resp-tabs-list li {
    min-width: auto;
  }
  .prdB #description .resp-accordion {
    background-color: #999;
    color: #fff;
    font-weight: 900;
    border: none;
    font-weight: normal;
  }
  .prdB #description .resp-accordion.resp-tab-active {
    background-color: #333;
    color: #fff;
  }
}

#prdC {
  padding: 3em 0;
  background-color: #f6f5f4;
}

#prdC .titleBox04 {
  margin-bottom: 1em;
}

#prdC .listCard {
  margin: 0;
  padding: 2em 0;
  display: inline-block;
  background-color: #fff;
}

#prdC .listCard .photoBox {
  width: 100%;
  margin: 0 auto 0.5em;
  position: relative;
  overflow: hidden;
}

#prdC .listCard .photoBox a {
  width: 100%;
  height: 100%;
  display: block;
}

#prdC .listCard .photoBox img {
  position: relative;
  opacity: 0.95;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}

#prdC .listCard .txtBox {
  width: 100%;
  padding: 0 1em;
  display: block;
}

#prdC .listCard .txtBox a.title {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
  text-align: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#prdC .listCard .txtBox a.title span {
  color: #b53026;
  font-size: 14px;
  font-weight: 300;
}

#prdC .listCard .txtBox a.title b {
  font-weight: 500;
  font-size: 18px;
  color: #000;
  margin-bottom: 0.5em;
}

#prdC .listCard .txtBox a.title::after {
  content: '';
  width: 40px;
  height: 4px;
  background-color: #b53026;
}

#prdC .listCard:hover {
  z-index: 2;
  position: relative;
}

#prdC .listCard:hover .photoBox img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  opacity: 1;
}

#prdC .listCard:hover .txtBox a.title {
  font-weight: 900;
  border: none;
}

@media screen and (max-width: 1600px) {
  #prdC {
    padding: 3em 3%;
  }
}

@media screen and (max-width: 960px) {
  #prdC .owl-theme .owl-nav .owl-prev, #prdC .owl-theme .owl-nav .owl-next {
    display: none;
  }
}

/*-- newsList ----------*/
#newsList {
  width: 1024px;
  max-width: 100%;
  margin: 5em auto;
  padding: 0 3%;
}

#newsList h1, #newsList .txtBox {
  text-align: center;
  overflow: hidden;
}

#newsList h1 {
  margin-bottom: 30px;
}

#newsList .itemBox {
  overflow: hidden;
  width: 100%;
  padding: 2em 0;
  margin-bottom: 2em;
}

#newsList .itemBox .item {
  margin-bottom: 1em;
  padding: 1.5em 0.5em 1.5em 0;
  overflow: hidden;
  position: relative;
  border-bottom: solid 1px #e6e5e5;
  -webkit-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
}

#newsList .itemBox .item::after {
  content: "";
  height: 1px;
  width: 0;
  position: absolute;
  left: 0;
  bottom: 0;
  background-color: #71130c;
  -webkit-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
}

#newsList .itemBox .item p {
  font-size: 16px;
  width: calc(100% - 45px);
}

#newsList .itemBox .item p .date {
  color: #000;
  font-weight: 500;
  padding-right: 2em;
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
  display: inline-block;
}

#newsList .itemBox .item p .title {
  color: #7A7A79;
  font-weight: 300;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  height: 1em;
  display: inline-block;
  height: 1.3em;
  width: calc(100% - 150px);
}

#newsList .itemBox .item:hover .iArrowR {
  -webkit-animation-name: hvr-icon-wobble-horizontal;
          animation-name: hvr-icon-wobble-horizontal;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
}

#newsList .itemBox .item:hover::after {
  width: 100%;
}

@media screen and (max-width: 900px) {
  #newsList .itemBox {
    padding: 0;
  }
  #newsList .itemBox .item p .title {
    width: 100%;
    display: block;
  }
}

/*--faq------------*/
#faq {
  width: 1024px;
  max-width: 100%;
  margin: 5em auto;
  padding: 0 3%;
}

#faq h1, #faq .txtBox {
  text-align: center;
  overflow: hidden;
}

#faq h1 {
  margin-bottom: 30px;
}

#faq .qaBox {
  border-bottom: 1px solid #d0d0d0;
  padding: 0em;
  cursor: pointer;
}

#faq .qaBox:first-of-type {
  border-top: 1px solid #d0d0d0;
}

#faq .qaBox .q {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 2em 3%;
}

#faq .qaBox .q .num {
  color: #333;
  font-size: 24px;
  font-weight: 700;
  margin-right: 0.5em;
  width: 30px;
}

#faq .qaBox .q .txt {
  width: calc( 100% - 50px);
  font-size: 16px;
  color: #333;
  font-weight: 500;
}

#faq .qaBox .q::after {
  text-align: center;
  width: 20px;
  font-size: 22px;
  content: "+";
  float: right;
  font-weight: 500;
  color: #666;
}

#faq .qaBox .a {
  background-color: #f1f0ef;
  font-size: 16px;
  color: #7a7a79;
  overflow: hidden;
  padding: 0 6%;
  height: 0;
  -webkit-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
}

#faq .qaBox.open .q::after {
  content: "-";
}

#faq .qaBox.open .a {
  -webkit-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
  height: auto;
  padding: 2em 6%;
}

@media screen and (max-width: 900px) {
  #faq {
    padding: 0;
  }
  #faq .qaBox .q .num {
    font-size: 16px;
  }
}

/*projects*/
#projects {
  position: relative;
  width: 100%;
  display: block;
  overflow: hidden;
}

#projects .leftBox {
  position: absolute;
  max-width: 847px;
  height: 100%;
  width: 45%;
  overflow: hidden;
  float: left;
}

#projects .leftBox img {
  float: right;
  max-width: none;
  width: auto;
  height: 100%;
}

#projects .rightBox {
  padding: 3em 3% 2em;
  float: right;
  width: 55%;
}

#projects .rightBox h1 {
  margin-bottom: 2em;
}

#projects .rightBox h1 .fSy42_r {
  margin-right: 0.5em;
}

#projects .rightBox .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 2em 0;
  border-bottom: 1px solid #d0d0d0;
}

#projects .rightBox .item:first-of-type {
  border-top: 1px solid #d0d0d0;
}

#projects .rightBox .item .num {
  color: #333;
  font-size: 24px;
  font-weight: 700;
  margin-right: 0.5em;
  width: 30px;
}

#projects .rightBox .item .txt {
  width: calc( 100% - 30px);
  font-size: 16px;
  color: #7a7a79;
  font-weight: 500;
}

@media screen and (max-width: 1024px) {
  #projects .leftBox {
    width: 40%;
  }
  #projects .rightBox {
    width: 60%;
  }
}

@media screen and (max-width: 850px) {
  #projects .leftBox {
    width: 100%;
    clear: both;
    position: inherit;
    height: 300px;
  }
  #projects .leftBox img {
    width: 100%;
    height: auto;
    float: left;
  }
  #projects .rightBox {
    width: 100%;
    float: none;
    clear: both;
  }
}
