html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%
}

body {
  margin: 0
}

main {
  display: block
}

h1 {
  margin: .67em 0;
  font-size: 2em
}

hr {
  height: 0;
  box-sizing: content-box;
  overflow: visible
}

pre {
  font-family: monospace;
  font-size: 1em
}

a {
  background-color: transparent
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted
}

b,
strong {
  font-weight: bolder
}

code,
kbd,
samp {
  font-family: monospace;
  font-size: 1em
}

small {
  font-size: 80%
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}

sub {
  bottom: -0.25em
}

sup {
  top: -0.5em
}

img {
  border-style: none
}

button,
input,
optgroup,
select,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15
}

button,
input {
  overflow: visible
}

button,
select {
  text-transform: none
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none
}

button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText
}

fieldset {
  padding: .35em .75em .625em
}

legend {
  max-width: 100%;
  padding: 0;
  white-space: normal;
  color: inherit;
  box-sizing: border-box;
  display: table
}

progress {
  vertical-align: baseline
}

textarea {
  overflow: auto
}

[type=checkbox],
[type=radio] {
  padding: 0;
  box-sizing: border-box
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto
}

[type=search] {
  -webkit-appearance: textfield;
  -moz-appearance: textfield;
  appearance: textfield;
  outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
  appearance: none
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  appearance: button;
  font: inherit
}

details {
  display: block
}

summary {
  display: list-item
}

template {
  display: none
}

[hidden] {
  display: none
}

body {
  font-family: Arial, "Microsoft JhengHei", sans-serif;
  -webkit-tap-highlight-color: transparent
}

.container {
  width: 100%;
  min-height: 100vh;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  position: relative
}

.content {
  width: 100%;
  display: flex;
  flex-grow: 1;
  flex-direction: column
}

.header {
  width: 100%;
  padding: 20px 2vw;
  background-color: #5ac2cd;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  z-index: 1040
}

@media(max-width: 1024px) {
  .header {
    padding: 10px 5vw
  }
}

.logo {
  width: 60%;
  max-width: 290px;
  position: relative;
  z-index: 1
}

.logo::before {
  content: "";
  width: 100%;
  padding-bottom: 22.0689655172%;
  background-image: url(../images/logo.png);
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center
}

.ham {
  width: 44px;
  height: 60px;
  display: none;
  position: relative;
  z-index: 1060
}

@media(max-width: 1024px) {
  .ham {
    display: block;
    cursor: pointer
  }
}

.ham>span {
  width: 85%;
  height: 3px;
  background-color: #fff;
  position: absolute;
  right: 50%;
  transform: translate(50%, -50%);
  transition: .3s all
}

.ham>span:nth-child(1) {
  top: 35%
}

.ham>span:nth-child(2) {
  top: 50%
}

.ham>span:nth-child(3) {
  top: 65%
}

.ham.active>span:nth-child(1) {
  top: 50%;
  transform: translate(50%, -50%) rotate(-225deg)
}

.ham.active>span:nth-child(2) {
  opacity: 0
}

.ham.active>span:nth-child(3) {
  top: 50%;
  transform: translate(50%, -50%) rotate(225deg)
}

.ham__mask {
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, .6);
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  transition: .3s opacity;
  pointer-events: none
}

@media(max-width: 1024px) {
  .ham__mask.active {
    opacity: 1;
    pointer-events: all
  }
}

.nav {
  margin-left: 5%;
  display: flex;
  flex-grow: 1;
  justify-content: space-between;
  align-items: center
}

@media(max-width: 1366px) {
  .nav {
    margin-left: 2%
  }
}

@media(max-width: 1024px) {
  .nav {
    width: 90%;
    max-width: 280px;
    height: auto;
    padding: 20px;
    margin-left: 0;
    background: linear-gradient(180deg, #5ac2cd, #f6b6d0);
    box-sizing: border-box;
    overflow-y: auto;
    flex-grow: 0;
    flex-direction: column;
    justify-content: flex-start;
    position: absolute;
    top: 100%;
    right: 0;
    z-index: 1040;
    transform: translateX(100%);
    transition: .3s transform
  }

  .nav.active {
    transform: translateX(0)
  }
}

.nav__item {
  padding: 10px 15px;
  border-radius: 10px;
  box-sizing: border-box;
  position: relative;
  transition: .3s background-color;
  display: flex;
  justify-content: center;
  align-items: center
}

.nav__item:hover {
  background-color: #f6b6d0
}

.nav__item:hover>.nav__text::before {
  opacity: 1
}

@media(max-width: 1024px) {
  .nav__item {
    width: 100%;
    padding: 15px 0;
    border-radius: 0
  }

  .nav__item:not(:nth-last-child(1)) {
    border-bottom: 1px solid #fff
  }

  .nav__item:hover>.nav__text {
    color: #fff
  }
}

.nav__text {
  font-weight: bold;
  text-decoration: none;
  white-space: nowrap;
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  cursor: pointer;
  font-size: 1.5rem;
  letter-spacing: 0rem;
  line-height: 2.25rem
}

@media(max-width: 1600px) {
  .nav__text {
    font-size: 1.4375rem;
    letter-spacing: 0rem;
    line-height: 2.15625rem
  }
}

@media(max-width: 1366px) {
  .nav__text {
    font-size: 1.375rem;
    letter-spacing: 0rem;
    line-height: 2.0625rem
  }
}

@media(max-width: 1024px) {
  .nav__text {
    font-size: 1.3125rem;
    letter-spacing: 0rem;
    line-height: 1.96875rem
  }
}

@media(max-width: 420px) {
  .nav__text {
    font-size: 1.25rem;
    letter-spacing: 0rem;
    line-height: 1.875rem
  }
}

.nav__link {
  cursor: pointer;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1
}

.nav__share {
  display: flex;
  align-items: center;
  position: relative
}

.nav__share:hover .nav__share__icon {
  background-color: #f6b6d0
}

.nav__share:hover .nav__share__icon::before {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20320%20512%22%3E%3C%21--%20Font%20Awesome%20Free%205.15.1%20by%20%40fontawesome%20-%20https%3A%2F%2Ffontawesome.com%20License%20-%20https%3A%2F%2Ffontawesome.com%2Flicense%2Ffree%20%28Icons%3A%20CC%20BY%204.0%2C%20Fonts%3A%20SIL%20OFL%201.1%2C%20Code%3A%20MIT%20License%29%20--%3E%3Cpath%20fill%3D%22%23ffffff%22%20d%3D%22M279.14%20288l14.22-92.66h-88.91v-60.13c0-25.35%2012.42-50.06%2052.24-50.06h40.42V6.26S260.43%200%20225.36%200c-73.22%200-121.08%2044.38-121.08%20124.72v70.62H22.89V288h81.39v224h100.17V288z%22%2F%3E%3C%2Fsvg%3E")
}

@media(max-width: 1024px) {
  .nav__share:hover .nav__share__icon {
    background-color: #fff
  }

  .nav__share:hover .nav__share__icon::before {
    background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20320%20512%22%3E%3C%21--%20Font%20Awesome%20Free%205.15.1%20by%20%40fontawesome%20-%20https%3A%2F%2Ffontawesome.com%20License%20-%20https%3A%2F%2Ffontawesome.com%2Flicense%2Ffree%20%28Icons%3A%20CC%20BY%204.0%2C%20Fonts%3A%20SIL%20OFL%201.1%2C%20Code%3A%20MIT%20License%29%20--%3E%3Cpath%20fill%3D%22%235ac2cd%22%20d%3D%22M279.14%20288l14.22-92.66h-88.91v-60.13c0-25.35%2012.42-50.06%2052.24-50.06h40.42V6.26S260.43%200%20225.36%200c-73.22%200-121.08%2044.38-121.08%20124.72v70.62H22.89V288h81.39v224h100.17V288z%22%2F%3E%3C%2Fsvg%3E")
  }
}

@media(max-width: 1024px) {
  .nav__share {
    width: 100%;
    padding: 15px 0;
    justify-content: center
  }
}

.nav__share__icon {
  width: 50px;
  height: 50px;
  margin-right: 5px;
  background-color: #fff;
  border-radius: 50%;
  transition: .3s background-color;
  display: flex;
  justify-content: center;
  align-items: center
}

.nav__share__icon::before {
  content: "";
  width: 50%;
  height: 50%;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20320%20512%22%3E%3C%21--%20Font%20Awesome%20Free%205.15.1%20by%20%40fontawesome%20-%20https%3A%2F%2Ffontawesome.com%20License%20-%20https%3A%2F%2Ffontawesome.com%2Flicense%2Ffree%20%28Icons%3A%20CC%20BY%204.0%2C%20Fonts%3A%20SIL%20OFL%201.1%2C%20Code%3A%20MIT%20License%29%20--%3E%3Cpath%20fill%3D%22%235ac2cd%22%20d%3D%22M279.14%20288l14.22-92.66h-88.91v-60.13c0-25.35%2012.42-50.06%2052.24-50.06h40.42V6.26S260.43%200%20225.36%200c-73.22%200-121.08%2044.38-121.08%20124.72v70.62H22.89V288h81.39v224h100.17V288z%22%2F%3E%3C%2Fsvg%3E");
  display: block;
  transition: .3s background-image;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center
}

.nav__share__text {
  font-weight: bold;
  text-decoration: none;
  white-space: nowrap;
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  cursor: pointer;
  font-size: 1.5rem;
  letter-spacing: 0rem;
  line-height: 1.8rem
}

@media(max-width: 1600px) {
  .nav__share__text {
    font-size: 1.4375rem;
    letter-spacing: 0rem;
    line-height: 1.725rem
  }
}

@media(max-width: 1366px) {
  .nav__share__text {
    font-size: 1.375rem;
    letter-spacing: 0rem;
    line-height: 1.65rem
  }
}

@media(max-width: 1024px) {
  .nav__share__text {
    font-size: 1.3125rem;
    letter-spacing: 0rem;
    line-height: 1.575rem
  }
}

@media(max-width: 420px) {
  .nav__share__text {
    font-size: 1.25rem;
    letter-spacing: 0rem;
    line-height: 1.5rem
  }
}

.footer {
  width: 100%;
  padding: 5px;
  background-color: #0a282d;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  font-size: .875rem;
  letter-spacing: .04375rem;
  line-height: 1.3125rem
}

@media(max-width: 1600px) {
  .footer {
    font-size: .875rem;
    letter-spacing: .04375rem;
    line-height: 1.3125rem
  }
}

@media(max-width: 1366px) {
  .footer {
    font-size: .875rem;
    letter-spacing: .04375rem;
    line-height: 1.3125rem
  }
}

@media(max-width: 1024px) {
  .footer {
    font-size: .875rem;
    letter-spacing: .04375rem;
    line-height: 1.3125rem
  }
}

@media(max-width: 420px) {
  .footer {
    font-size: .875rem;
    letter-spacing: .04375rem;
    line-height: 1.3125rem
  }
}

@media(max-width: 568px) {
  .footer {
    flex-direction: column
  }
}

.footer__copyRight {
  color: rgba(255, 255, 255, .5)
}

.footer__link {
  margin-left: 10px
}

@media(max-width: 568px) {
  .footer__link {
    margin-top: 5px;
    margin-left: 0
  }
}

.footer__link>a {
  text-decoration: none;
  color: rgba(90, 194, 205, .5)
}

.footer__link>a:hover {
  color: #5ac2cd
}

.scene {
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  pointer-events: none
}

.scene__ball {
  width: 18.125%;
  position: absolute
}

@media(max-width: 568px) {
  .scene__ball {
    width: 30%
  }
}

.scene__ball::before {
  content: "";
  width: 100%;
  padding-bottom: 100%;
  border-radius: 50%;
  display: block
}

.scene__ball:nth-child(odd)::before {
  background-color: #f9ccde
}

.scene__ball:nth-child(even)::before {
  background-color: #8cd4dc
}

.scene__ball:nth-child(1) {
  top: 5%;
  left: -5%
}

.scene__ball:nth-child(2) {
  bottom: -5%;
  left: 5%
}

.scene__ball:nth-child(3) {
  top: 15%;
  right: 5%
}

.scene__ball:nth-child(4) {
  right: 2%;
  bottom: 5%
}

.content {
  background-image: linear-gradient(180deg, #bde7eb, #ffffff);
  box-sizing: border-box;
  align-items: center;
  position: relative;
  cursor: default
}

.content__head {
  width: 100%;
  margin: 50px 0;
  display: flex;
  justify-content: center;
  position: relative
}

@media(max-width: 568px) {
  .content__head {
    margin: 25px 0
  }
}

.content__title {
  font-weight: bold;
  white-space: nowrap;
  color: #0a282d;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 3.75rem;
  letter-spacing: 0rem;
  line-height: 5.625rem
}

@media(max-width: 1600px) {
  .content__title {
    font-size: 3.28125rem;
    letter-spacing: 0rem;
    line-height: 4.921875rem
  }
}

@media(max-width: 1366px) {
  .content__title {
    font-size: 2.8125rem;
    letter-spacing: 0rem;
    line-height: 4.21875rem
  }
}

@media(max-width: 1024px) {
  .content__title {
    font-size: 2.34375rem;
    letter-spacing: 0rem;
    line-height: 3.515625rem
  }
}

@media(max-width: 420px) {
  .content__title {
    font-size: 1.875rem;
    letter-spacing: 0rem;
    line-height: 2.8125rem
  }
}

.content__title::before {
  content: "";
  width: 164px;
  height: 130px;
  background-image: url(../assets/images/title_icon.png);
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center
}

@media(max-width: 568px) {
  .content__title::before {
    width: 106.6px;
    height: 84.5px
  }
}

.content__wrap {
  width: 100%;
  max-width: 1400px;
  padding: 0 5% 5% 5%;
  box-sizing: border-box;
  position: relative
}

.content__wrap>.editor {
  padding: 0
}

.editor {
  width: 100%;
  padding: 20px;
  box-sizing: border-box;
  cursor: default
}

.editor a {
  text-decoration: underline;
  word-break: break-all;
  color: #5ac2cd
}

.editor img {
  max-width: 100%;
  margin: 0 auto 20px auto;
  display: block
}

.editor ul,
.editor ol {
  -webkit-padding-start: 20px;
  padding-inline-start: 20px
}

.editor ul.list--cjk,
.editor ol.list--cjk {
  list-style-type: cjk-decimal;
  -webkit-padding-start: 40px;
  padding-inline-start: 40px
}

.editor__h1 {
  font-weight: bold;
  color: #5ac2cd;
  font-size: 2.25rem;
  letter-spacing: 0rem;
  line-height: 3.375rem
}

@media(max-width: 1600px) {
  .editor__h1 {
    font-size: 2.15625rem;
    letter-spacing: 0rem;
    line-height: 3.234375rem
  }
}

@media(max-width: 1366px) {
  .editor__h1 {
    font-size: 2.0625rem;
    letter-spacing: 0rem;
    line-height: 3.09375rem
  }
}

@media(max-width: 1024px) {
  .editor__h1 {
    font-size: 1.96875rem;
    letter-spacing: 0rem;
    line-height: 2.953125rem
  }
}

@media(max-width: 420px) {
  .editor__h1 {
    font-size: 1.875rem;
    letter-spacing: 0rem;
    line-height: 2.8125rem
  }
}

.editor__h2 {
  font-weight: bold;
  color: #003979;
  font-size: 1.5rem;
  letter-spacing: 0rem;
  line-height: 2.25rem
}

@media(max-width: 1600px) {
  .editor__h2 {
    font-size: 1.4375rem;
    letter-spacing: 0rem;
    line-height: 2.15625rem
  }
}

@media(max-width: 1366px) {
  .editor__h2 {
    font-size: 1.375rem;
    letter-spacing: 0rem;
    line-height: 2.0625rem
  }
}

@media(max-width: 1024px) {
  .editor__h2 {
    font-size: 1.3125rem;
    letter-spacing: 0rem;
    line-height: 1.96875rem
  }
}

@media(max-width: 420px) {
  .editor__h2 {
    font-size: 1.25rem;
    letter-spacing: 0rem;
    line-height: 1.875rem
  }
}

.editor__h3 {
  font-weight: bold;
  color: #000;
  font-size: 1.25rem;
  letter-spacing: 0rem;
  line-height: 1.875rem
}

@media(max-width: 1600px) {
  .editor__h3 {
    font-size: 1.1875rem;
    letter-spacing: 0rem;
    line-height: 1.78125rem
  }
}

@media(max-width: 1366px) {
  .editor__h3 {
    font-size: 1.125rem;
    letter-spacing: 0rem;
    line-height: 1.6875rem
  }
}

@media(max-width: 1024px) {
  .editor__h3 {
    font-size: 1.0625rem;
    letter-spacing: 0rem;
    line-height: 1.59375rem
  }
}

@media(max-width: 420px) {
  .editor__h3 {
    font-size: 1rem;
    letter-spacing: 0rem;
    line-height: 1.5rem
  }
}

.editor__h4 {
  font-weight: bold;
  color: #cc3421;
  font-size: 1.5rem;
  letter-spacing: 0rem;
  line-height: 2.25rem
}

@media(max-width: 1600px) {
  .editor__h4 {
    font-size: 1.4375rem;
    letter-spacing: 0rem;
    line-height: 2.15625rem
  }
}

@media(max-width: 1366px) {
  .editor__h4 {
    font-size: 1.375rem;
    letter-spacing: 0rem;
    line-height: 2.0625rem
  }
}

@media(max-width: 1024px) {
  .editor__h4 {
    font-size: 1.3125rem;
    letter-spacing: 0rem;
    line-height: 1.96875rem
  }
}

@media(max-width: 420px) {
  .editor__h4 {
    font-size: 1.25rem;
    letter-spacing: 0rem;
    line-height: 1.875rem
  }
}

.editor__p {
  font-weight: bold;
  color: #233e42;
  font-size: 1.25rem;
  letter-spacing: 0rem;
  line-height: 1.875rem
}

@media(max-width: 1600px) {
  .editor__p {
    font-size: 1.1875rem;
    letter-spacing: 0rem;
    line-height: 1.78125rem
  }
}

@media(max-width: 1366px) {
  .editor__p {
    font-size: 1.125rem;
    letter-spacing: 0rem;
    line-height: 1.6875rem
  }
}

@media(max-width: 1024px) {
  .editor__p {
    font-size: 1.0625rem;
    letter-spacing: 0rem;
    line-height: 1.59375rem
  }
}

@media(max-width: 420px) {
  .editor__p {
    font-size: 1rem;
    letter-spacing: 0rem;
    line-height: 1.5rem
  }
}

.editor__wrap {
  width: 100%;
  padding: 2% 5%;
  background-image: linear-gradient(180deg, #fef8fa, #ffffff);
  border-top: 1px solid #fff;
  border-bottom: 1px solid #5ac2cd;
  border-radius: 20px;
  box-shadow: 0 5px 0 rgba(10, 40, 45, .1);
  box-sizing: border-box;
  display: flex;
  flex-direction: column
}

.editor__wrap:not(.editor__wrap:nth-last-child(1)) {
  margin-bottom: 20px
}

@media(max-width: 568px) {
  .editor__wrap {
    padding: 5%
  }
}

.editor__img {
  margin: auto
}

.editor__img::before {
  content: "";
  width: 100%;
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center
}

.editor__img--i1 {
  width: 90%;
  max-width: 500px
}

.editor__img--i1::before {
  padding-bottom: 100%;
  background-image: url(../assets/images/information_aq_01.png)
}

.editor__img--i2 {
  width: 90%;
  max-width: 500px
}

.editor__img--i2::before {
  padding-bottom: 100%;
  background-image: url(../assets/images/information_aq_02.png)
}

.editor__img--i3 {
  width: 90%;
  max-width: 500px
}

.editor__img--i3::before {
  padding-bottom: 100%;
  background-image: url(../assets/images/information_aq_03.png)
}

.editor__img--i4 {
  width: 90%;
  max-width: 532px
}

.editor__img--i4::before {
  padding-bottom: 87.969924812%;
  background-image: url(../assets/images/winners_pic.png)
}

.editor--center {
  text-align: center
}

.editor--italic {
  font-style: italic
}

.editor--pointer {
  cursor: pointer
}

.editor--divide {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center
}

.editor--divide::before,
.editor--divide::after {
  content: "———";
  margin: 0 10px;
  position: relative
}

@media(max-width: 568px) {

  .editor--divide::before,
  .editor--divide::after {
    content: "——"
  }
}

.editor--gradient {
  width: 100%;
  padding: 20px;
  text-align: center;
  color: #fff;
  background-image: linear-gradient(180deg, #f6b6d0, rgba(90, 194, 205, 0.7));
  border-bottom: 1px solid #f6b6d0;
  border-radius: 20px;
  box-shadow: 0 5px 0 rgba(10, 40, 45, .1)
}

@media(max-width: 568px) {
  .editor--gradient {
    font-size: 20px;
    line-height: 24px
  }
}
