@charset "UTF-8";
.quad-width {
  display: inline-block;
  padding: 10px;
  margin: 0px;
  width: calc(100% - 20px);
  -webkit-transition: height 0.5s ease;
  transition: height 0.5s ease;
  -webkit-transition: width 0.5s ease;
  transition: width 0.5s ease; }
  @media only screen and (min-width: 360px) {
    .quad-width {
      width: calc(100% - 20px); } }
  @media only screen and (min-width: 640px) {
    .quad-width {
      width: calc(50% - 20px); } }
  @media only screen and (min-width: 1024px) {
    .quad-width {
      width: calc(25% - 20px); } }

.half-width {
  display: inline-block;
  padding: 10px;
  margin: 0px;
  width: calc(100% - 20px);
  -webkit-transition: height 0.5s ease;
  transition: height 0.5s ease;
  -webkit-transition: width 0.5s ease;
  transition: width 0.5s ease; }
  @media only screen and (min-width: 360px) {
    .half-width {
      width: calc(100% - 20px); } }
  @media only screen and (min-width: 640px) {
    .half-width {
      width: calc(50% - 20px); } }
  @media only screen and (min-width: 1024px) {
    .half-width {
      width: calc(50% - 20px); } }

.one-third-width {
  display: inline-block;
  padding: 10px;
  margin: 0px;
  width: calc(100% - 20px);
  -webkit-transition: height 0.5s ease;
  transition: height 0.5s ease; }
  @media only screen and (min-width: 360px) {
    .one-third-width {
      width: calc(100% - 20px); } }
  @media only screen and (min-width: 640px) {
    .one-third-width {
      width: calc(50% - 20px); } }
  @media only screen and (min-width: 1024px) {
    .one-third-width {
      width: calc(33% - 20px); } }

* {
  box-sizing: border-box;
  font-family: "微軟正黑體", "Microsoft JhengHei"; }

body {
  font-size: 1em;
  margin: 0px;
  overflow-x: hidden; }

.sub-title {
  padding: 20px; }

.center {
  display: block;
  margin: auto;
  clear: both;
  text-align: center; }

.img-icon {
  position: relative;
  top: 8px;
  display: inline-block;
  width: 30px;
  height: 30px; }

.top-align {
  vertical-align: top; }

.top-title {
  padding: 10px;
  display: none;
  font-size: 1.2em;
  color: white;
  text-decoration: none; }
  @media only screen and (min-width: 640px) {
    .top-title {
      display: inline-block; } }
  @media only screen and (min-width: 1024px) {
    .top-title {
      display: inline-block; } }

.bar-padding {
  height: 50px; }

.fixbar {
  z-index: 4;
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  display: block;
  background-color: rgba(50, 50, 50, 0.7); }
  .fixbar p {
    margin: 5px; }
  .fixbar ul {
    float: right;
    list-style-type: none;
    margin-top: 10px;
    padding: 0px; }
    @media only screen and (min-width: 640px) {
      .fixbar ul {
        display: inline-block; } }
    .fixbar ul li {
      padding: 0px 20px;
      display: inline-block; }
      .fixbar ul li a {
        font-weight: bold;
        text-decoration: none;
        color: white;
        font-size: 1em; }
        .fixbar ul li a:hover {
          cursor: pointer;
          color: #c89664; }

.inline-block {
  display: inline-block; }

.theme {
  position: relative;
  height: 400px;
  background-color: #565656;
  color: white; }
  .theme .layer0 {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 0% 0%; }
  .theme .layer1 {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%; }
  .theme .layer2 {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 100% 50%; }
  .theme .layer3 {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 0% 70%; }
  .theme .title-container {
    position: absolute;
    top: 150px;
    left: 0px;
    width: 100%;
    height: calc(100% - 150px); }
    .theme .title-container .title {
      font-size: 3em;
      padding-top: 0px;
      padding-bottom: 3px;
      margin: 0px;
      font-weight: bold; }
    .theme .title-container .sub-title {
      font-size: 1.5em;
      padding: 0px;
      margin: 0px; }
    .theme .title-container .bold-title {
      font-size: 1.5em;
      padding-bottom: 3px;
      margin: 0px;
      font-weight: bold; }
    .theme .title-container .wide-space {
      font-size: 1em;
      padding: 0px;
      letter-spacing: 12px;
      margin: 0px; }

.content-container {
  color: #323232;
  max-width: 75em;
  margin: auto;
  padding: 10px 0px;
  clear: both; }

.segment {
  padding: 30px 0px; }
  .segment:nth-child(even) {
    background-color: #f1cbd9; }
    .segment:nth-child(even).light {
      background-color: #f0d298; }
    .segment:nth-child(even) .button {
      display: inline-block;
      margin: 10px;
      padding: 20px;
      background-color: #CB6243; }
      .segment:nth-child(even) .button a {
        text-decoration: none;
        color: white; }
      .segment:nth-child(even) .button:hover {
        background-color: #FB9273; }
  .segment:nth-child(odd) {
    background-color: #6eb3c1; }
    .segment:nth-child(odd).light {
      background-color: #a2d0b8; }
    .segment:nth-child(odd) .button {
      display: inline-block;
      margin: 10px;
      padding: 20px;
      background-color: #67AA8D; }
      .segment:nth-child(odd) .button a {
        text-decoration: none;
        color: white; }
      .segment:nth-child(odd) .button:hover {
        background-color: #97DABD; }
  .segment .ticket-header {
    background-color: #f7bf0e; }
  .segment ul {
    margin: 5px; }
    .segment ul li {
      line-height: 1.7em; }
  .segment p {
    margin: auto;
    padding: 10px;
    line-height: 1.7em; }
  .segment .center-p {
    margin: auto;
    max-width: 640px; }
  .segment a {
    color: #323232;
    text-decoration: none; }
    .segment a:hover {
      cursor: pointer;
      color: #646464; }
  .segment iframe {
    width: 100%;
    height: 360px; }
  .segment .scroll-x {
    max-width: 100%;
    overflow-x: auto; }
    .segment .scroll-x .timebar {
      padding-top: 10px;
      height: 200px; }
  .segment .aware {
    text-decoration: underline;
    font-weight: bold; }
  .segment .toggle-bt {
    cursor: pointer; }
    .segment .toggle-bt .expand-icon {
      position: relative;
      top: 5px;
      width: 30px;
      height: 30px; }
  .segment .toggle-content {
    display: none; }
  .segment .logo-container {
    padding: 10px 50px;
    width: 100%;
    max-width: 1024px;
    margin: auto; }
  .segment .org-logo {
    max-width: 100%;
    max-height: 150px;
    margin: 30px; }

.slide, .slide-4col {
  position: relative;
  width: 100%;
  margin: auto; }
  .slide img, .slide-4col img {
    width: 100%;
    height: 300px;
    object-fit: cover; }

.arrow-icon {
  width: 20px;
  height: 20px; }

.item-list .item {
  vertical-align: top;
  display: inline-block; }
  .item-list .item .circular {
    width: 60%;
    height: auto;
    margin: auto;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%; }
  .item-list .item p {
    text-align: left;
    font-size: 1em; }

.item-table {
  padding: 10px 20px; }

table {
  border-collapse: collapse;
  vertical-align: top;
  width: 100%; }
  table caption {
    padding: 5px; }
  table th {
    padding: 10px;
    background-color: #f7bf0e;
    border: 1px solid #9E9E9E; }
  table td {
    padding: 10px;
    border: 1px solid #9E9E9E;
    background-color: white;
    color: black;
    text-align: left; }

.footer {
  position: relative;
  margin-top: 0px;
  padding: 0px 10px;
  width: 100%;
  background-color: #1a5d9e;
  color: #ffffff; }
  @media only screen and (min-width: 640px) {
    .footer {
      height: 60px; } }
  @media only screen and (min-width: 1024px) {
    .footer {
      height: 60px; } }
  .footer .contact-info {
    display: block;
    margin: auto;
    padding: 0px 30px 20px 30px;
    font-size: 0.9em; }
    @media only screen and (min-width: 640px) {
      .footer .contact-info {
        position: absolute;
        left: 20px;
        display: inline-block;
        text-align: left;
        padding: 10px; } }
    @media only screen and (min-width: 1024px) {
      .footer .contact-info {
        position: absolute;
        left: 20px;
        display: inline-block;
        text-align: left;
        padding: 10px; } }
  .footer ul {
    padding: 20px;
    display: block;
    margin: auto;
    list-style-type: none; }
    @media only screen and (min-width: 640px) {
      .footer ul {
        position: absolute;
        right: 20px;
        padding: 0px; } }
    @media only screen and (min-width: 1024px) {
      .footer ul {
        position: absolute;
        right: 20px;
        padding: 0px; } }
    .footer ul li {
      cursor: pointer;
      display: inline-block;
      margin: 10px 10px 0px 10px; }
      @media only screen and (min-width: 640px) {
        .footer ul li {
          margin: 10px 20px; } }
      @media only screen and (min-width: 1024px) {
        .footer ul li {
          margin: 10px 20px; } }
      .footer ul li a {
        color: #ffffff;
        text-decoration: none; }
        .footer ul li a:hover {
          color: #f5a623; }
    .footer ul img {
      position: relative;
      top: 10px;
      width: 30px;
      height: 30px;
      -webkit-filter: invert(100%);
      filter: invert(100%); }
