@charset "UTF-8";
.fontfix {
  font-family: "Heebo", "Noto Sans", "Noto Sans TC", "Noto Sans JP", sans-serif;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Slider */
.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat;
}

/* Icons */
@font-face {
  font-family: "slick";
  src: url("./fonts/slick.eot");
  src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal;
}
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}
.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}
.slick-prev:hover:before, .slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}
.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: white;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}
[dir=rtl] .slick-prev {
  left: auto;
  right: -25px;
}
.slick-prev:before {
  content: "←";
}
[dir=rtl] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: -25px;
}
[dir=rtl] .slick-next {
  left: -25px;
  right: auto;
}
.slick-next:before {
  content: "→";
}
[dir=rtl] .slick-next:before {
  content: "←";
}

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}
.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
  color: black;
  opacity: 0.75;
}

.pgkv {
  display: block;
  position: relative;
  width: 100%;
}
.pgkv .mimg {
  overflow: hidden;
  z-index: 2;
}
.pgkv .mtitle {
  color: white;
  font-weight: 500;
  line-height: 1;
}
@media all and (max-width: 575px) {
  .pgkv .mtitle {
    font-size: 0.9375em;
  }
}
@media all and (min-width: 576px) {
  .pgkv .mtitle {
    font-size: 1.25em;
  }
}
.pgkv .mtitle + div {
  color: white;
  font-weight: 500;
  line-height: 1;
  margin-top: 0.5em;
  display: block;
}
@media all and (max-width: 575px) {
  .pgkv .mtitle + div {
    font-size: 1.75em;
  }
}
@media all and (min-width: 576px) {
  .pgkv .mtitle + div {
    font-size: 3.125em;
  }
}
.pgkv .txt_pos {
  z-index: 3;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  top: 50%;
  left: 50%;
}
.pgkv .bgcolor {
  background-color: #c4002e;
  height: 0;
}
@media all and (max-width: 768px) {
  .pgkv .bgcover {
    padding-bottom: 108%;
  }
  .pgkv .bgcover.pc_use {
    display: none;
  }
}
@media all and (min-width: 769px) {
  .pgkv .bgcover {
    height: 450px;
  }
  .pgkv .bgcover.mo_use {
    display: none;
  }
}
@media all and (max-width: 768px) {
  .pgkv .bgcolor {
    padding-bottom: 60%;
    width: 40vw;
  }
  .pgkv .mimg {
    width: 60vw;
    position: absolute;
    top: 0;
    left: 40vw;
  }
  .pgkv .txt_pos {
    width: 100%;
    padding: 0 25px;
    top: 55%;
  }
}
@media all and (min-width: 769px) {
  .pgkv .bgcolor {
    height: 400px;
    width: 34vw;
  }
  .pgkv .mimg {
    width: 70vw;
    position: absolute;
    top: 0;
    left: 30vw;
  }
  .pgkv .txt_pos {
    padding: 0 16px;
    max-width: 1296px;
    width: 96%;
  }
}
@media all and (min-width: 769px) and (max-width: 1441px) {
  .pgkv .txt_pos {
    -webkit-transform: translate(-50%, 0%);
            transform: translate(-50%, 0%);
  }
}

.top-menu-ul .item_menu_Box {
  position: relative;
  margin: 0 auto;
  overflow-x: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
  text-align: center;
}
.top-menu-ul .item_menu_Box::-webkit-scrollbar {
  display: none;
}
.top-menu-ul ul.slides {
  white-space: nowrap;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.top-menu-ul li {
  position: relative;
  display: inline-block;
}
.top-menu-ul li:last-child:after {
  opacity: 0;
}
.top-menu-ul li:after {
  content: "";
  width: 2px;
  height: 50px;
  background-color: #e60036;
  display: inline-block;
  -webkit-transform: rotate(30deg) translate(10px, 10px);
          transform: rotate(30deg) translate(10px, 10px);
  -webkit-transform-origin: bottom;
          transform-origin: bottom;
}
.top-menu-ul li.active a {
  color: #e60036;
  border-color: #e60036;
}
.top-menu-ul li a {
  position: relative;
  color: #4f4e4e;
  font-weight: 500;
  line-height: 2;
  display: inline-block;
  border-bottom: 2px solid rgba(230, 0, 54, 0);
}
@media all and (max-width: 768px) {
  .top-menu-ul {
    margin: 0 auto;
    padding: 0 20px;
  }
  .top-menu-ul .item_menu_Box {
    height: 42px;
    overflow-y: hidden;
  }
  .top-menu-ul li a {
    margin-right: 1em;
  }
  .top-menu-ul li:not(:last-child) {
    margin-right: 3em;
  }
  .top-menu-ul li:after {
    position: absolute;
    top: -50%;
    right: -5%;
  }
  .top-menu-ul::before {
    background: -webkit-gradient(linear, left top, right top, color-stop(30%, rgb(255, 255, 255)), to(rgba(255, 255, 255, 0)));
    background: linear-gradient(90deg, rgb(255, 255, 255) 30%, rgba(255, 255, 255, 0) 100%);
    width: 30px;
    height: 60px;
    content: "";
    z-index: 1;
    pointer-events: none;
    position: absolute;
    top: -10px;
    left: 12px;
  }
  .top-menu-ul.mleft::before {
    opacity: 0;
  }
  .top-menu-ul::after {
    background: -webkit-gradient(linear, right top, left top, color-stop(30%, rgb(255, 255, 255)), to(rgba(255, 255, 255, 0)));
    background: linear-gradient(-90deg, rgb(255, 255, 255) 30%, rgba(255, 255, 255, 0) 100%);
    width: 30px;
    height: 60px;
    content: "";
    z-index: 1;
    pointer-events: none;
    position: absolute;
    top: -10px;
    right: 12px;
  }
  .top-menu-ul.mright::after {
    opacity: 0;
  }
}
@media all and (min-width: 769px) {
  .top-menu-ul.open_flexslider .flex-direction-nav {
    display: block;
  }
  .top-menu-ul li a {
    margin: 0 2em;
  }
  .top-menu-ul li:not(:last-child) {
    margin-right: 1em;
  }
  .top-menu-ul li:hover a {
    color: #e60036;
    border-color: #e60036;
  }
}
@media all and (min-width: 1440px) {
  .top-menu-ul {
    width: 1400px;
  }
}

.flex-direction-nav {
  display: none;
}
.flex-direction-nav .svg {
  width: 10px;
  stroke: #333;
}
.flex-direction-nav a {
  position: absolute;
  position: absolute;
  top: 0.3em;
  width: 40px;
  height: 60px;
  padding-top: 12px;
  background-color: white;
}
.flex-direction-nav a.ltbn {
  left: 16px;
}
.flex-direction-nav a.rtbn {
  right: 16px;
  text-align: right;
}
.flex-direction-nav a:hover .svg {
  stroke: #e60036;
}
@media all and (max-width: 768px) {
  .flex-direction-nav a {
    text-align: center;
  }
}

@media all and (max-width: 575px) {
  #topmenu1 {
    font-size: 1.25rem;
  }
}
@media all and (min-width: 576px) {
  #topmenu1 {
    font-size: 1.5rem;
  }
}

/*----------------------編輯器------------------------*/
.editor_box {
  line-height: 1.75;
}
.editor_box ul, .editor_box ol {
  padding-left: 10px;
}
.editor_box ol {
  list-style: decimal;
}
.editor_box ul {
  list-style: disc;
}
.editor_box img {
  max-width: 100%;
  height: auto !important;
}
.editor_box b, .editor_box strong {
  font-weight: bold;
  font-style: inherit;
}
.editor_box em {
  font-style: italic;
}
.editor_box a {
  text-decoration: underline;
  color: #0782C1;
}
.editor_box iframe {
  max-width: 100%;
}
.editor_box h1, .editor_box h2, .editor_box h3, .editor_box h4, .editor_box h5, .editor_box h6 {
  margin: inherit;
}
.editor_box blockquote {
  font-style: italic;
  padding: 2px 20px 0 8px;
  border-left: 5px solid #ccc;
  margin-left: 40px;
}
.editor_box hr {
  border: none;
  border-top: 1px solid #4f4e4e;
}
@media all and (max-width: 990px) {
  .editor_box {
    line-height: 1.7;
  }
  .editor_box.pc_use {
    display: none;
  }
}
@media all and (min-width: 991px) {
  .editor_box {
    line-height: 2;
  }
  .editor_box.mo_use {
    display: none;
  }
}

/*---------------------video----------------------*/
.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}
.embed-responsive .embed-responsive-item, .embed-responsive iframe {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.embed-responsive.embed-responsive-16by9:before {
  content: "";
  display: block;
  padding-top: 56.25%;
}

.exhi-wrap .exhi {
  padding-bottom: 3.5em;
}
.exhi-wrap .bgcover {
  padding-bottom: 60%;
  -webkit-box-shadow: 0 0px 9px rgba(13, 5, 9, 0.4);
          box-shadow: 0 0px 9px rgba(13, 5, 9, 0.4);
}
.exhi-wrap .mtitle {
  color: #e60036;
  margin-top: 0.8em;
}
@media all and (max-width: 575px) {
  .exhi-wrap .mtitle {
    font-size: 0.9375rem;
  }
}
@media all and (min-width: 576px) {
  .exhi-wrap .mtitle {
    font-size: 1.25rem;
  }
}
.exhi-wrap .slick-slide {
  padding: 0 20px;
  width: 90vw;
  max-width: 320px;
}
.exhi-wrap .dots-container {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  width: 100%;
  height: 2px;
  background-color: #d8d8d8;
}
.exhi-wrap .line {
  width: 50%;
  height: 100%;
  background-color: #e60036;
  -webkit-transition: width 0.6s;
  transition: width 0.6s;
}
@media all and (max-width: 575px) {
  .exhi-wrap .exhi {
    padding-bottom: 1.5em;
  }
}
@media all and (max-width: 768px) {
  .exhi-wrap .row {
    padding-left: 0;
  }
  .exhi-wrap .slick-slide {
    padding: 0 8px;
  }
  .exhi-wrap .arrow-group {
    display: none;
  }
}
@media all and (min-width: 769px) {
  .exhi-wrap .row {
    margin-left: 0;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .exhi-wrap .slick-slide {
    max-width: 740px;
  }
}

.about .exhi-wrap {
  padding-left: calc(10% - 16px);
}
@media all and (max-width: 768px) {
  .about .exhi-wrap {
    padding-left: 17px;
  }
}
@media all and (min-width: 1600px) {
  .about .exhi-wrap {
    padding-left: calc((100vw - 1296px) / 2 - 16px);
  }
}

.index .p4 .exhi-wrap {
  padding-left: 2%;
}
@media all and (max-width: 768px) {
  .index .p4 .exhi-wrap {
    padding-left: 17px;
  }
}
@media all and (min-width: 991px) {
  .index .p4 .dots-container {
    max-width: 650px;
  }
  .index .p4 .exhi-wrap .slick-slide {
    max-width: 690px;
  }
  .index .p4 .exhi-wrap {
    padding-left: 35%;
  }
}
@media all and (min-width: 1440px) {
  .index .p4 .dots-container {
    max-width: 700px;
  }
  .index .p4 .slick-slide {
    max-width: 740px;
  }
  .index .p4 .exhi-wrap {
    padding-left: calc((100vw - 1296px) / 2 - 16px + 360px);
  }
}

.arrow-group {
  text-align: right;
}
.arrow-group .svg {
  width: 10px;
  stroke: #e60036;
}
.arrow-group a {
  position: relative;
  display: inline-block;
  border-radius: 99em;
  background-color: white;
  -webkit-box-shadow: 0 0px 9px rgba(13, 5, 9, 0.4);
          box-shadow: 0 0px 9px rgba(13, 5, 9, 0.4);
  width: 50px;
  height: 50px;
  padding-top: 12px;
  margin-left: 2em;
}
.arrow-group a.arrow {
  text-align: center;
  left: 0;
  right: 0;
  top: 0;
}
.arrow-group a:hover .svg {
  stroke: #333;
}

.about #topmenu1 {
  margin-bottom: 2em;
}
@media all and (max-width: 768px) {
  .about .pc_use {
    display: none;
  }
}
@media all and (min-width: 769px) {
  .about #topmenu1 {
    margin-bottom: 5em;
  }
  .about .mo_use {
    display: none;
  }
}

.cmp .imgbx .col-4 div::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 99em;
  background-color: #c4002e;
  margin-right: 10px;
  vertical-align: 2px;
  position: absolute;
  top: 0.75em;
  left: 0;
}
.cmp .imgbx .col-4 {
  margin-top: 68px;
}
.cmp .imgbx .col-4 div {
  margin-top: 12px;
  padding-left: 16px;
  position: relative;
}
.cmp .info {
  margin-bottom: 100px;
}
.cmp .info .btn1.red {
  margin-top: 16px;
  width: 16em;
}
@media all and (max-width: 768px) {
  .cmp .text-center-sm {
    text-align: center;
  }
  .cmp .imgbx .col-4 {
    max-width: 400px;
    margin: 24px auto 0;
  }
  .cmp .info {
    margin-bottom: 80px;
  }
  .cmp .info .col-6-img {
    margin-top: 1em;
    margin-bottom: 1em;
  }
}
@media all and (min-width: 769px) and (max-width: 990px) {
  .cmp .imgbx .col-4 {
    width: calc((100% - 25px) / 2);
  }
  .cmp .imgbx .col-4:not(:nth-child(2n)) {
    margin-right: 25px;
  }
  .cmp .info .btn1.red {
    margin-right: 24px;
  }
  .cmp .info .col-6-img {
    margin-top: 2em;
    margin-bottom: 2em;
  }
}
@media all and (min-width: 991px) {
  .cmp .imgbx .col-4 {
    width: calc((100% - 50px) / 3);
  }
  .cmp .imgbx .col-4:not(:nth-child(3n)) {
    margin-right: 25px;
  }
  .cmp .info .txt {
    width: 48%;
    padding-right: 24px;
    margin-top: 24px;
  }
  .cmp .info .btn1.red {
    margin-right: 24px;
  }
  .cmp .info .col-6-img {
    position: absolute;
    top: 0;
    right: 0;
    -webkit-transform: translateX(24px);
            transform: translateX(24px);
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .cmp .info .col-6-img img {
    width: 65%;
  }
}
@media all and (min-width: 1296px) {
  .cmp .info .col-6-img {
    -webkit-transform: translateX(calc((100vw - 1296px) / 2));
            transform: translateX(calc((100vw - 1296px) / 2));
  }
  .cmp .info .col-6-img img {
    width: 43vw;
  }
}

.intro .titleB {
  margin-bottom: 1.3em;
}
.intro .p1 .txt {
  font-weight: 500;
  line-height: 2.25;
}
@media all and (max-width: 575px) {
  .intro .p1 .txt {
    font-size: 1.125rem;
  }
}
@media all and (min-width: 576px) {
  .intro .p1 .txt {
    font-size: 1.25rem;
  }
}
.intro .p1 .txt i {
  color: #e60036;
}
.intro .p1 .txt b {
  color: #178562;
}
.intro .p2 li {
  padding: 1.3em 0em 1.3em 0.5em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.intro .p2 li:not(:last-child) {
  border-bottom: 1px solid #a3a3a3;
}
.intro .p2 li b {
  color: #178562;
  width: 4.75em;
  -moz-text-align-last: justify;
       text-align-last: justify;
}
.intro .p2 li div {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.intro .p2 li span {
  display: inline-block;
  width: 7.45em;
}
.intro .p2 li span:before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 99em;
  background-color: #c4002e;
  margin-right: 10px;
  vertical-align: 2px;
}
.intro .p2:after {
  content: "";
  background-color: #f7f7f7;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 100%;
  height: calc(100% - 160px);
  z-index: -1;
}
.intro .p3 .imgbx {
  background-color: #edf5f3;
  padding: 50px;
  overflow: auto;
  text-align: center;
}
.intro .p3 .fred {
  color: #e60036;
  padding: 0 25px 0.5em;
  line-height: 1.2;
}
.intro .p4 {
  padding: 5em 0 6em;
  position: relative;
}
.intro .p4:before {
  content: "";
  width: 100%;
  height: 100%;
  background: no-repeat url(../images/about/milestone_bg_1.png) left 200px/320px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.intro .p4:after {
  content: "";
  width: 100%;
  height: 100%;
  background: no-repeat url(../images/about/milestone_bg_2.png) right 95%/300px;
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: -1;
}
.intro .p5 {
  padding: 3.5em 0 0em;
}
.intro .p5 .exhi {
  margin: 4em 0 0em;
}
@media all and (max-width: 768px) {
  .intro .p1 {
    padding: 0 22px;
  }
  .intro .p1 .txt {
    line-height: 1.85;
    padding-top: 2em;
    padding-bottom: 3em;
  }
  .intro .p1 .txt em {
    display: block;
  }
  .intro .p1 .col-img {
    width: calc(100% + 50px);
    -webkit-transform: translateX(-25px);
            transform: translateX(-25px);
  }
  .intro .p2 {
    margin-bottom: 3em;
  }
  .intro .p2 li {
    padding-left: 0;
    letter-spacing: 0px;
  }
  .intro .p2 li b {
    width: 4em;
    margin-right: 1.8em;
  }
  .intro .p2:after {
    bottom: 12vw;
  }
  .intro .p3 .imgbx {
    height: calc(100vh - 70px);
  }
  .intro .p3 .imgbx img {
    height: 100%;
    max-width: initial;
  }
  .intro .p4 {
    padding: 4em 0 3em;
  }
  .intro .p4::before {
    background-position: left -2em;
    background-size: 8em;
  }
  .intro .p4::after {
    display: none;
  }
  .intro .p5 {
    padding: 3em 0 0;
  }
  .intro .p5 .titleB {
    text-align: center;
  }
  .intro .p5 .exhi {
    margin: 2em 0 0em;
  }
}
@media all and (min-width: 769px) {
  .intro .p1 {
    padding-left: 16px;
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .intro .p2 {
    margin-top: 65px;
    margin-bottom: 120px;
  }
  .intro .p2 li b {
    margin-right: 80px;
  }
  .intro .p2 .col-txt {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
@media all and (min-width: 769px) and (max-width: 990px) {
  .intro .p1 {
    max-width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
  .intro .p1 .col-img {
    width: 120%;
    -webkit-transform: translateX(-15%);
            transform: translateX(-15%);
  }
  .intro .p1 .txt {
    margin-top: 2em;
  }
  .intro .p2:after {
    bottom: 120px;
    height: calc(100% - 280px);
  }
  .intro .p3 .imgbx {
    height: calc(80vh - 70px);
  }
  .intro .p3 .imgbx img {
    height: 100%;
    max-width: initial;
  }
}
@media all and (min-width: 991px) {
  .intro .p1 {
    padding-left: 50vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -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;
  }
  .intro .p1 .col-img {
    position: absolute;
    top: 50%;
    right: 34vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 37vw;
    -webkit-transform: translate(-20vw, -50%);
            transform: translate(-20vw, -50%);
  }
  .intro .p2 .col-img {
    position: absolute;
    top: calc(50% + 80px);
    left: 48vw;
    -webkit-transform: translate(0vw, -50%);
            transform: translate(0vw, -50%);
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    height: 37vw;
  }
  .intro .p2 .col-txt {
    width: 42%;
  }
  .intro .p2:after {
    -webkit-clip-path: polygon(0 0, 100% 0, 950px 100%, 0% 100%);
            clip-path: polygon(0 0, 100% 0, 950px 100%, 0% 100%);
    width: 1240px;
    right: 20vw;
  }
  .intro .p5 {
    position: relative;
  }
  .intro .p5::before {
    content: "";
    -webkit-clip-path: polygon(50% 0%, 100% 0, 100% 100%, 0% 100%);
            clip-path: polygon(50% 0%, 100% 0, 100% 100%, 0% 100%);
    width: 900px;
    height: calc(100% + 6vw);
    background-color: #f5f5f5;
    position: absolute;
    top: 0;
    right: 0;
  }
}
@media all and (min-width: 1296px) {
  .intro .p1 {
    min-height: 450px;
  }
  .intro .p2 .col-img {
    min-height: 605px;
  }
  .intro .p2:after {
    right: calc(100% - 1240px);
  }
}
@media all and (min-width: 1440px) {
  .intro:before {
    content: "";
    width: 100%;
    height: 100%;
    background: no-repeat url(../images/about/c_pattern.png) right top;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
  }
}

.history .top-menu-history {
  width: 100vw;
  position: relative;
  margin-bottom: 5em;
}
.history .top-menu-history .item_menu_Box {
  position: relative;
  margin: 0 auto;
  overflow-x: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.history .top-menu-history .item_menu_Box::-webkit-scrollbar {
  display: none;
}
.history .top-menu-history ul.slides {
  white-space: nowrap;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.history .top-menu-history li {
  position: relative;
  display: inline-block;
  padding: 0 2em;
}
.history .top-menu-history .ytime {
  color: #333;
  font-weight: 800;
  line-height: 1;
  font-family: "Heebo", "Noto Sans", "Noto Sans TC", "Noto Sans JP", sans-serif;
  text-align: center;
}
@media all and (max-width: 575px) {
  .history .top-menu-history .ytime {
    font-size: 1.75rem;
  }
}
@media all and (min-width: 576px) {
  .history .top-menu-history .ytime {
    font-size: 3.125rem;
  }
}
.history .top-menu-history .dots {
  width: 100%;
  height: 2px;
  z-index: -1;
  display: block;
  margin: 2em auto;
  position: relative;
}
.history .top-menu-history .dots::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: calc(100% + 4em);
  height: 100%;
  background-color: #d8d8d8;
  z-index: -1;
}
.history .top-menu-history .dots i {
  width: 1em;
  height: 1em;
  display: inline-block;
  background-color: #c4002e;
  border-radius: 99em;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 10;
}
.history .top-menu-history .dots i:after {
  content: "";
  width: 150%;
  height: 150%;
  opacity: 0.3;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-color: #c4002e;
  border-radius: 99em;
  z-index: -1;
}
.history .top-menu-history li:nth-child(2) .dots::before {
  width: 80%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
.history .top-menu-history li:last-child .dots::before {
  width: 80%;
  -webkit-transform: translate(-100%, -50%);
          transform: translate(-100%, -50%);
}
.history .top-menu-history .txt {
  max-width: 10.8em;
  white-space: initial;
  text-align: left;
  line-height: 1.625;
  display: inline-block;
}
@media all and (max-width: 768px) {
  .history .top-menu-history {
    margin: 0 auto 4em;
  }
  .history .top-menu-history .dots {
    margin: 1em auto;
  }
  .history .top-menu-history .dots i {
    -webkit-transform: translate(-50%, -50%) scale(0.6);
            transform: translate(-50%, -50%) scale(0.6);
  }
  .history .top-menu-history li {
    padding: 0 1em;
    width: 8.8em;
  }
  .history .top-menu-history li.active {
    display: none;
  }
}
@media all and (min-width: 769px) {
  .history li.active {
    width: calc((100vw - 1296px) / 2 + 4em);
  }
  .history .open_flexslider .flex-direction-nav {
    display: block;
  }
  .history .flex-direction-nav a {
    margin-left: 2em;
    margin-bottom: 60px;
  }
}