* {
  margin: 0px;
  font-family: Helvetica, "Noto Sans CJK TC", "Source Han Sans TWHK", "Open Sans", "PingFang TC", "PT Sans Narrow", "Microsoft JhengHei", sans-serif; }

body {
  overflow-y: scroll;
  position: relative; }

.responsive {
  width: 80%;
  max-width: 700px;
  margin: 0 auto; }

.center {
  text-align: center; }

a {
  color: #5A6865; }

a.button {
  display: inline-block;
  margin: 2em auto;
  padding: 1em;
  cursor: pointer;
  text-decoration: none;
  -webkit-transition: color 300ms cubic-bezier(0.68, -0.55, 0.265, 1.55), background-color 300ms cubic-bezier(0.68, -0.55, 0.265, 1.55), -webkit-box-shadow 300ms cubic-bezier(0.68, -0.55, 0.265, 1.55);
          transition: color 300ms cubic-bezier(0.68, -0.55, 0.265, 1.55), background-color 300ms cubic-bezier(0.68, -0.55, 0.265, 1.55), box-shadow 300ms cubic-bezier(0.68, -0.55, 0.265, 1.55);
  -webkit-box-shadow: 0 0 1em #5A6865;
          box-shadow: 0 0 1em #5A6865;
  background-color: #5A6865;
  color: #C7D2B7; }
  a.button:hover {
    -webkit-box-shadow: 0 0 1em #C7D2B7;
            box-shadow: 0 0 1em #C7D2B7;
    background-color: #C7D2B7;
    color: #5A6865; }

#logo {
  position: relative; }
  #logo #bgCircle {
    position: relative;
    width: 200px;
    height: 200px;
    margin: 16px; }
  #logo img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
  #logo #logoBg {
    width: 100%; }
  #logo #logoMain {
    width: 80%;
    -webkit-transform: translate(-50%, -55%);
        -ms-transform: translate(-50%, -55%);
            transform: translate(-50%, -55%); }

#bg {
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-color: #D9EBEA; }
  #bg .layer {
    width: 100%;
    height: 100%; }
  #bg img {
    width: 110%;
    height: auto;
    position: absolute;
    left: -8%; }
  #bg .bgTop {
    top: -14%; }
  #bg .bgBtn {
    bottom: -14%; }

#bg_footer_stand {
  height: 16em; }

#navbar {
  position: relative;
  text-align: center;
  font-size: 1.28em;
  color: #939CA2;
  background-color: #fff;
  max-width: 600px;
  margin: 2em auto 0 auto;
  -webkit-border-radius: .3em;
          border-radius: .3em;
  -webkit-box-shadow: 0 0 .5em .5em #fff;
          box-shadow: 0 0 .5em .5em #fff;
  -webkit-transition: top 1000ms cubic-bezier(0.16, 0.84, 0.44, 1);
          transition: top 1000ms cubic-bezier(0.16, 0.84, 0.44, 1);
  top: 6em; }
  #navbar.open {
    top: 0; }
  #navbar .nav, #navbar a {
    position: relative;
    text-decoration: none;
    color: #939CA2;
    font-weight: 600;
    padding: 0 0.5em;
    -webkit-transition: color 800ms cubic-bezier(0.16, 0.84, 0.44, 1);
            transition: color 800ms cubic-bezier(0.16, 0.84, 0.44, 1); }
    #navbar .nav h1, #navbar a h1 {
      color: #5A6865;
      position: absolute;
      left: 50%;
      top: .6em;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      opacity: 0;
      -webkit-transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1);
              transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1);
      pointer-events: none;
      font-size: 3em; }
      @media screen and (max-width: 800px) {
        #navbar .nav h1, #navbar a h1 {
          margin-top: 1em; } }
    #navbar .nav:hover, #navbar a:hover {
      color: #5A6865; }
  #navbar .nav_triangle {
    display: inline-block;
    border-top: 0.4em solid transparent;
    border-bottom: 0.4em solid transparent;
    border-left: 0.6em solid #5A6865; }
  #navbar .nav_sub_triangle {
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    border-top: 0.6em solid #5A6865;
    border-left: 0.4em solid transparent;
    border-right: 0.4em solid transparent;
    opacity: 0;
    -webkit-transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1);
            transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1); }
  @media screen and (max-width: 800px) {
    #navbar .nav, #navbar a {
      display: block;
      position: static; }
    #navbar .nav_sub_triangle, #navbar .nav_seperator {
      display: none; }
    #navbar .nav > h1 {
      position: absolute;
      top: 110%; } }

.targetor {
  position: fixed;
  top: 0; }

#target_about:target + #about.open {
  color: #5A6865; }
  #target_about:target + #about.open .nav_sub_triangle {
    -webkit-transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
            transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
    opacity: 1; }
  #target_about:target + #about.open h1 {
    -webkit-transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
            transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
    opacity: 1; }

#target_rules:target + #rules.open {
  color: #5A6865; }
  #target_rules:target + #rules.open .nav_sub_triangle {
    -webkit-transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
            transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
    opacity: 1; }
  #target_rules:target + #rules.open h1 {
    -webkit-transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
            transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
    opacity: 1; }

#target_schedule:target + #schedule.open {
  color: #5A6865; }
  #target_schedule:target + #schedule.open .nav_sub_triangle {
    -webkit-transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
            transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
    opacity: 1; }
  #target_schedule:target + #schedule.open h1 {
    -webkit-transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
            transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
    opacity: 1; }

#target_staff:target + #staff.open {
  color: #5A6865; }
  #target_staff:target + #staff.open .nav_sub_triangle {
    -webkit-transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
            transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
    opacity: 1; }
  #target_staff:target + #staff.open h1 {
    -webkit-transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
            transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
    opacity: 1; }

#target_apply:target + #apply.open {
  color: #5A6865; }
  #target_apply:target + #apply.open .nav_sub_triangle {
    -webkit-transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
            transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
    opacity: 1; }
  #target_apply:target + #apply.open h1 {
    -webkit-transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
            transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 300ms;
    opacity: 1; }

#content {
  background-color: white;
  min-height: 0em;
  margin-top: 6em;
  -webkit-box-shadow: 0 0 6em 6em rgba(255, 255, 255, 0.6);
          box-shadow: 0 0 6em 6em rgba(255, 255, 255, 0.6);
  background-color: rgba(255, 255, 255, 0.6);
  color: #5A6865;
  font-size: 1.28em;
  overflow-x: hidden;
  -webkit-transition: min-height 800ms cubic-bezier(0.16, 0.84, 0.44, 1);
          transition: min-height 800ms cubic-bezier(0.16, 0.84, 0.44, 1); }
  @media screen and (max-width: 800px) {
    #content {
      margin-top: 8em; } }
  #content > .responsive {
    -webkit-transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 1200ms;
            transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1) 1200ms;
    opacity: 0; }
  #content.open {
    min-height: 20em; }
    #content.open > .responsive {
      opacity: 1; }
  #content article p {
    margin: 1em 0;
    padding-left: 0; }
  #content strong {
    display: block;
    text-align: center; }
  #content h2 {
    text-align: center;
    margin-bottom: 1em; }
  #content h3 {
    margin-top: 1.5em; }
  #content p {
    padding-left: 1em;
    text-align: justify; }
  #content ul {
    margin-top: .5em;
    padding-left: 4em; }
  #content .hr {
    background-color: #5A6865;
    height: .8em;
    margin: 4em 0; }
  #content .tb {
    vertical-align: top;
    margin: 1.5em 0;
    line-height: 1.5em; }
    #content .tb .title {
      width: 20%;
      float: left;
      text-align: right;
      font-weight: 900; }
      @media screen and (max-width: 800px) {
        #content .tb .title {
          width: 100%;
          float: none;
          text-align: left; } }
    #content .tb .info {
      width: 78%;
      float: right;
      text-align: left; }
      @media screen and (max-width: 800px) {
        #content .tb .info {
          width: 100%;
          float: none; } }
    #content .tb::after {
      display: block;
      content: ' ';
      clear: both; }
    #content .tb .col-left {
      width: 49%;
      float: left; }
    #content .tb .col-right {
      width: 49%;
      float: right; }
    #content .tb .task {
      text-align: right;
      font-weight: 900; }
      @media screen and (max-width: 800px) {
        #content .tb .task {
          text-align: center;
          padding: 0; } }
    #content .tb .people {
      text-align: left; }
    @media screen and (max-width: 800px) {
      #content .tb .col-left, #content .tb .col-right {
        width: 100%;
        float: none; }
      #content .tb .people > p {
        text-align: center;
        padding: 0; } }
  #content .events {
    margin-top: 3em; }

.hosts .host {
  display: block;
  margin-bottom: 2em; }

.text {
  display: none;
  -webkit-transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1);
          transition: opacity 800ms cubic-bezier(0.16, 0.84, 0.44, 1);
  opacity: 0; }
  .text.show {
    opacity: 1; }

.stand {
  height: 4em; }
