/*!**********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./node_modules/sass-loader/dist/cjs.js!./src/scss/all.scss ***!
  \**********************************************************************************************************************************************************************************/
@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  border: 0;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  font: inherit;
  font-size: 100%; }

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block; }

body {
  line-height: 1; }

ol,
ul {
  list-style: none; }

blockquote,
q {
  quotes: none; }

blockquote::before,
blockquote::after,
q::before,
q::after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

.hide-text {
  text-indent: 101%;
  overflow: hidden;
  white-space: nowrap; }

.disableScroll {
  overflow: hidden; }

*,
*::before,
*::after {
  box-sizing: border-box; }

body {
  letter-spacing: 1px;
  color: #333;
  text-align: center;
  font-family: 'Noto Sans TC', '微軟正黑體', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  -ms-overflow-style: none;
  /* for Internet Explorer, Edge */
  scrollbar-width: none;
  /* for Firefox */
  overflow-y: scroll; }

body::-webkit-scrollbar {
  display: none;
  /* for Chrome, Safari, and Opera */ }

a {
  display: inline-block;
  color: inherit;
  text-decoration: none; }

img {
  display: inline-block;
  max-width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  margin: auto; }

strong {
  color: #cc0041; }

.container {
  margin: 0 auto;
  padding: 0 15px;
  max-width: 670px; }
  @media (min-width: 900px) {
    .container {
      padding: 0 20px;
      max-width: 1200px; } }

.btn {
  display: inline-block;
  border: 1px solid transparent;
  padding: 10px 30px;
  vertical-align: middle;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.5;
  text-align: center;
  border-radius: 3px;
  cursor: pointer;
  transition: .3s; }
  @media (min-width: 900px) {
    .btn {
      padding: 10px 50px; } }
  @media (max-width: 1000px) and (min-width: 900px) {
    .btn {
      padding-right: 40px;
      padding-left: 40px; } }

.btn-primary {
  color: #fff;
  background-color: #a50034; }

.btn-outline-primary {
  color: #a50034;
  background-color: transparent;
  border-color: #a50034; }

.btn-info {
  position: relative;
  border: none;
  padding-right: 0;
  padding-left: 0;
  font-weight: 600;
  letter-spacing: 2px;
  color: #cc0041;
  background-color: transparent;
  font-style: italic;
  font-family: 'Open Sans', sans-serif; }

.btn-info::before {
  content: '';
  position: absolute;
  right: 0;
  bottom: -4px;
  display: inline-block;
  width: 60%;
  height: 1px;
  background-color: #e7e7e7; }

.btn-info::after {
  content: '';
  position: absolute;
  bottom: -4px;
  left: 0;
  display: inline-block;
  width: 50%;
  height: 1px;
  background-color: #cc0041;
  transition: .5s; }

.btn-info:hover::after {
  width: 100%;
  transition: .3s; }

.btn-primary:hover,
.btn-primary.active {
  background-color: #cc0041;
  transition: .3s; }

.btn-cta {
  position: fixed;
  right: 0;
  bottom: 4%;
  z-index: 2;
  width: calc(280px / 2);
  border: none;
  background-color: transparent;
  transition: .4s; }

.btn-cta:hover {
  transform: scale(1.05);
  transition: .4s; }

.card__item {
  background-color: #fff;
  border-radius: 10px;
  transition: box-shadow .3s; }
  @media (min-width: 900px) {
    .card__item {
      width: 32%; } }
  .card__item .card__img img {
    border-top-right-radius: 10px;
    border-top-left-radius: 10px; }
  .card__item .card__title {
    overflow: hidden;
    font-weight: 500;
    font-size: 24px;
    color: #a50034;
    text-overflow: ellipsis;
    white-space: nowrap; }
  .card__item .card__desc {
    overflow: hidden;
    font-weight: 400;
    font-size: 16px;
    line-height: 2;
    letter-spacing: 2px;
    color: #333;
    text-align: justify;
    -moz-text-align-last: center;
         text-align-last: center;
    text-overflow: ellipsis;
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    /* 行數 */ }
  .card__item .card__footer {
    display: flex;
    justify-content: flex-end; }
  .card__item .card__img,
  .card__item .card__title,
  .card__item .card__desc,
  .card__item .card__footer {
    margin-bottom: 24px; }
  .card__item .card__body,
  .card__item .card__footer {
    padding-right: 18px;
    padding-left: 18px; }

.card__item:hover {
  box-shadow: 0 0 8px rgba(33, 33, 33, 0.8); }

.section-kol .slick-slide {
  opacity: .6; }
  @media (min-width: 768px) {
    .section-kol .slick-slide {
      opacity: 1; } }

.section-kol .slick-active.slick-center {
  opacity: 1; }

.article__item {
  position: relative;
  transition: top .5s; }
  .article__item .article__cover img,
  .article__item .article__body {
    border-radius: 10px; }
  .article__item .article__body {
    position: relative;
    top: -50px;
    width: 90%;
    margin: auto;
    padding: 20px;
    color: #333;
    background-color: #fff;
    box-shadow: 0 0 50px #c1c1c1; }
  .article__item .article__name {
    font-size: 20px; }
  .article__item .article__content {
    font-size: 16px;
    line-height: 30px;
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    /* 行數 */ }
  .article__item .article__name,
  .article__item .article__content {
    margin-bottom: 10px; }

.article__item:hover {
  top: -4px;
  transition: top .5s; }

.article__cover {
  position: relative; }

.article__cover.label15th::before {
  content: '';
  position: absolute;
  top: -1px;
  left: 10px;
  width: calc(158px / 2);
  height: calc(204px / 2);
  background-image: url(../../677221f28f2bdd656139.png);
  background-size: contain;
  background-repeat: no-repeat; }

.section-form {
  position: relative;
  padding-top: 56px;
  padding-bottom: 56px;
  background-color: #efefef;
  box-shadow: 0 0 3px #efefef; }
  .section-form .form-title {
    margin-bottom: 26px;
    padding-bottom: 24px;
    font-size: 26px;
    letter-spacing: 2px;
    color: #333;
    border-bottom: 1px solid #cdcdcd; }
  .section-form .form-row {
    text-align: left; }
    @media (min-width: 900px) {
      .section-form .form-row {
        display: flex;
        justify-content: center;
        margin-bottom: 36px;
        text-align: left; } }
  .section-form .form-row-block {
    text-align: left; }
  .section-form .form-group {
    position: relative;
    width: 100%;
    margin-bottom: 30px; }
    .section-form .form-group label {
      display: block;
      font-size: 18px;
      color: #333; }
  @media (min-width: 900px) {
    .section-form .form-group:nth-child(2) {
      margin-left: 10px; } }
  .section-form input,
  .section-form textarea {
    border: none;
    padding-left: 10px;
    font-size: 16px;
    outline: 1px solid #bfbfbf;
    font-family: 'Noto Sans TC', sans-serif;
    color: #333; }
  .section-form input {
    height: 40px; }
  .section-form textarea {
    padding-top: 10px; }
  .section-form input,
  .section-form textarea,
  .section-form button {
    width: 100%; }
  .section-form input::-moz-placeholder, .section-form textarea::-moz-placeholder {
    font-size: 14px;
    color: #999; }
  .section-form input:-ms-input-placeholder, .section-form textarea:-ms-input-placeholder {
    font-size: 14px;
    color: #999; }
  .section-form input::placeholder,
  .section-form textarea::placeholder {
    font-size: 14px;
    color: #999; }
  .section-form input:focus,
  .section-form textarea:focus {
    outline: 2px solid #333; }
  .section-form input.invalid {
    outline: 2px solid #cc0041; }
  .section-form .field-required::after {
    content: '*';
    color: #a50034; }
  .section-form .form-info {
    margin-bottom: 40px;
    font-size: 14px;
    color: #8d8d8d;
    text-align: left; }
  .section-form .field-title,
  .section-form .form-info__title {
    font-size: 18px;
    color: #333; }
  .section-form .form-btn-share {
    position: relative;
    margin-top: 20px;
    color: #fff;
    background-color: #2975f2; }
    .section-form .form-btn-share img {
      width: calc(24px / 2);
      margin-right: 10px;
      vertical-align: middle; }
  .section-form .pc-desc {
    display: none; }
  .section-form .pc-desc,
  .section-form .mobile-desc {
    margin-bottom: 20px; }
  @media (min-width: 600px) {
    .section-form .pc-desc {
      display: block; }
    .section-form .mobile-desc {
      display: none; } }

.image-icon {
  width: calc(84px / 2); }

.drop-box {
  border: 1px dashed #b5b5b5;
  text-align: center;
  background-color: #fff; }
  .drop-box label {
    padding-top: 20px;
    padding-bottom: 20px;
    cursor: pointer; }
  .drop-box #uploadImage,
  .drop-box #uploadVideo,
  .drop-box #best_uploadImage,
  .drop-box #best_uploadImageSerial,
  .drop-box #best_uploadVideo {
    display: none; }

.drop-box__desc {
  font-size: 14px;
  line-height: 1.5;
  color: #999; }

.upload-container .upload-item {
  position: relative;
  display: inline-block;
  margin-right: 20px;
  max-width: 100px; }

.upload-container .upload-item--remove {
  position: absolute;
  top: -10px;
  right: -14px;
  display: inline-block;
  transform: scale(0.8);
  cursor: pointer; }

.upload-container .upload-video .upload-item--remove {
  right: -30px; }

.section-form::before {
  position: absolute;
  top: -40px;
  display: inline-block;
  border: solid transparent;
  border-bottom-color: #efefef;
  border-width: 20px; }

.section-form::after {
  content: '';
  position: absolute;
  top: -18px;
  right: 0;
  left: 0;
  z-index: 1;
  display: inline-block;
  width: 37px;
  height: 37px;
  margin: 0 auto;
  background-color: #efefef;
  box-shadow: inset 11px 11px 10px -10px #ccc;
  transform: rotate(45deg); }

#agree,
#best_agree {
  width: auto;
  height: 20px; }

.policy {
  font-size: 13px; }

.policy a {
  font-weight: 500;
  color: #cc0041;
  text-decoration: underline; }

.error-msg {
  position: absolute;
  bottom: -30px;
  left: 0;
  font-size: 14px;
  color: #cc0041; }

.form-group.sticker-container {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 0; }
  .form-group.sticker-container span {
    margin-right: 10px;
    color: #999;
    text-align: center; }
  @media (min-width: 900px) {
    .form-group.sticker-container {
      justify-content: flex-end;
      margin-bottom: 0; } }

.sticker-sample {
  width: calc(360px / 1.6); }

.upload-loading {
  visibility: hidden !important; }

.sticker-sample--note {
  display: block; }

.upload-demo-wrap {
  width: 300px;
  height: 300px;
  margin: 0 auto; }

.upload-msg {
  width: 260px;
  border: 1px solid #aaa;
  margin: 50px auto;
  padding: 50px;
  font-size: 22px;
  color: #aaa;
  text-align: center; }

.upload-demo .upload-demo-wrap,
.upload-demo .upload-result,
.upload-demo.ready .upload-msg {
  display: none; }

.upload-demo.ready .upload-demo-wrap {
  display: block; }

.upload-demo.ready .upload-result {
  display: inline-block; }

.header__logo {
  overflow: hidden;
  width: 70px;
  background-image: url(../../6cfc0acaab7373166b5f.png);
  white-space: nowrap;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  text-indent: 101%; }
  @media (min-width: 900px) {
    .header__logo {
      width: 80px;
      margin-top: 14px;
      margin-bottom: 14px; } }

#menu__toggle {
  display: none;
  opacity: 0; }

.menu__btn {
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  z-index: 10;
  display: flex;
  align-items: center;
  width: 44px;
  height: 44px;
  margin: auto;
  cursor: pointer; }

.menu__btn::before {
  content: '';
  position: absolute;
  left: -42px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 20px 60px 20px;
  border-color: transparent transparent #a50034 transparent; }

.menu__btn::after {
  content: '';
  width: 100%;
  height: 60px;
  background-color: #a50034;
  transform: scaleX(2); }

.menu__btn > span,
.menu__btn > span::before,
.menu__btn > span::after {
  content: '';
  position: relative;
  position: absolute;
  z-index: 99;
  display: block;
  width: 100%;
  height: 3px;
  background-color: #fff;
  border-radius: 20px;
  transition-duration: .25s; }

.menu__btn > span::before {
  top: -12px; }

.menu__btn > span::after {
  top: 12px; }

#menu__toggle:checked ~ .menu__btn > span,
#menu__toggle:checked ~ .menu__btn > span::before,
#menu__toggle:checked ~ .menu__btn > span::after {
  z-index: 99;
  background-color: #a50034; }

#menu__toggle:checked ~ .menu__btn > span {
  transform: rotate(45deg); }

#menu__toggle:checked ~ .menu__btn > span::before {
  top: 0;
  transform: rotate(0); }

#menu__toggle:checked ~ .menu__btn > span::after {
  top: 0;
  transform: rotate(90deg); }

#menu__toggle:checked ~ .menu__btn::before {
  display: none; }

#menu__toggle:checked ~ .menu__btn::after {
  background-color: transparent; }

.menu__box {
  position: fixed;
  top: 0;
  z-index: 9;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  height: 100%;
  margin: 0;
  color: #cc0041;
  text-align: right;
  background-color: #fff;
  visibility: hidden;
  transform: translateY(-100%);
  transition-duration: .4s; }

#menu__toggle:checked ~ .menu__box {
  right: 0;
  visibility: visible;
  transform: translateY(0%); }

.menu__logo {
  display: none; }

#menu__toggle:checked ~ .menu__box .menu__logo {
  top: 0;
  left: 0;
  display: block;
  width: 100px;
  margin-top: 20px;
  margin-bottom: 40px;
  margin-left: 20px;
  opacity: 1;
  align-self: flex-start; }

.menu__item {
  display: block;
  margin-bottom: 80px;
  font-size: 20px;
  letter-spacing: 3px;
  color: #333;
  text-align: center;
  text-decoration: none;
  transition-duration: .25s; }

.menu__item::after {
  content: '';
  position: relative;
  top: 40px;
  right: 0;
  left: 0;
  display: block;
  width: 50px;
  height: 1px;
  margin: 0 auto;
  background-color: #8d8d8d; }

.menu__box li:nth-child(5) .menu__item::after,
.menu__box li:last-child .menu__item::after {
  display: none; }

.menu__outerlink {
  display: inline-block;
  width: 50px;
  height: 50px;
  margin: 0;
  vertical-align: middle;
  background-image: url(../../630741a4309610ea041b.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  border-bottom: none;
  transition: .4s; }

#menu__toggle:checked ~ .menu__box .menu__item:hover {
  color: #a50034; }

#menu__toggle:checked ~ .menu__box .menu__outerlink:hover {
  background-image: url(../../faa047a39252762c8b20.png);
  border-bottom: none; }
  #menu__toggle:checked ~ .menu__box .menu__outerlink:hover img {
    transform: scale(1.5);
    transition-duration: .5s; }

@media (min-width: 900px) {
  #menu__toggle,
  .menu__btn {
    display: none; }
  .menu__box {
    position: relative;
    right: 0;
    flex-direction: row;
    margin: 0;
    padding: 0;
    visibility: visible;
    transform: translateY(0%); }
  #menu__toggle:checked ~ .menu__box .menu__logo {
    display: none; }
  .menu__box li {
    height: 100%;
    margin-bottom: 3px;
    line-height: 75px; }
  .menu__item {
    margin-right: 26px;
    margin-bottom: 0;
    margin-left: 26px;
    padding: 0;
    font-size: 16px;
    color: #333;
    transition: .2s;
    cursor: pointer;
    border-bottom: 2px solid transparent; }
  .menu__item::after {
    top: 4px;
    bottom: 0;
    left: 26px;
    display: inline-block;
    width: 1px;
    height: 20px; }
  .menu__item:hover,
  .menu__item.active {
    color: #a50034;
    border-bottom: 2px solid #a50034; }
  .menu__outerlink {
    width: 35px;
    height: 35px;
    margin-right: 0;
    margin-left: 0; }
  .menu__outerlink,
  .menu__outerlink:hover,
  .menu__outerlink:active {
    border-bottom: none; }
  .menu__outerlink:hover {
    background-image: url(../../faa047a39252762c8b20.png); } }

@media screen and (max-width: 1000px) and (min-width: 900px) {
  .menu__item {
    margin-right: 10px;
    margin-left: 10px; }
  .menu__item::after {
    left: 10px; } }

.popup {
  position: relative;
  padding: 0 10px;
  line-height: 2;
  letter-spacing: 1.5px;
  background-color: #fff; }
  @media (min-width: 900px) {
    .popup {
      padding: 0 30px; } }
  @media (min-width: 900px) {
    .popup .article-container {
      display: flex; } }
  .popup .howto-container,
  .popup .article-container {
    padding-top: 60px;
    padding-bottom: 10px; }
    @media (min-width: 900px) {
      .popup .howto-container,
      .popup .article-container {
        padding-top: 90px;
        padding-bottom: 30px; } }
  .popup .prize-container {
    padding-top: 50px; }
    @media (min-width: 900px) {
      .popup .prize-container {
        padding-top: 60px; } }
  @media (min-width: 900px) {
    .popup .article__item,
    .popup .article__content {
      width: 50%; } }
  .popup .prize__title,
  .popup .howto__title {
    font-size: 20px;
    letter-spacing: 2px;
    background: -webkit-linear-gradient(-90deg, #c6004d, #99003f);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent; }
  .popup .howto__subtitle {
    display: block;
    font-size: 18px;
    color: #333; }
    @media (min-width: 900px) {
      .popup .howto__subtitle {
        font-size: 18px; } }
  @media (min-width: 900px) {
    .popup .prize__category {
      display: flex;
      flex-wrap: wrap;
      justify-content: start; } }
  .popup .prize__item {
    width: 100%; }
    @media (min-width: 900px) {
      .popup .prize__item {
        width: 33%; } }
  .popup .prize__category:nth-child(2) .prize__item {
    margin: auto; }
  .popup .carousel-prizes-wrapper {
    justify-content: space-between;
    align-items: center; }
  .popup .prize__content {
    font-weight: 500;
    font-size: 20px; }
  .popup .prize__desc {
    font-size: 16px;
    color: #333; }
    .popup .prize__desc p {
      margin-bottom: 30px;
      line-height: 1.5; }
  .popup .prize__note {
    display: block;
    font-size: 16px;
    color: #999; }
  .popup .prize__price {
    display: block;
    font-weight: 500;
    font-size: 18px;
    color: #999; }
  .popup .prize__item img {
    width: calc(600px / 2); }
  .popup .howto-header {
    margin: auto;
    margin-bottom: 20px;
    text-align: center; }
    @media (min-width: 900px) {
      .popup .howto-header {
        margin-bottom: 40px; } }
  .popup .howto__title {
    margin-bottom: 6px; }
    @media (min-width: 900px) {
      .popup .howto__title {
        margin-bottom: 12px; } }
  .popup .howto__menu {
    font-size: 14px;
    color: #999;
    text-align: left; }
    @media (min-width: 900px) {
      .popup .howto__menu {
        font-size: 16px; } }
  .popup .howto__menu__item {
    margin-bottom: 16px; }
  .popup .howto__menu__title {
    position: relative;
    display: inline-block;
    margin-right: 16px;
    padding-right: 12px;
    padding-left: 12px;
    font-weight: 500;
    line-height: 1.2;
    color: #c0003d;
    border-right: 2px solid #a50034;
    border-left: 2px solid #a50034; }
  .popup .howto__menu_details {
    display: block; }
    @media (min-width: 900px) {
      .popup .howto__menu_details {
        display: inline; } }
  .popup .howto__menu__item:nth-child(3) .howto__menu_details {
    display: block; }
  .popup .howto__menu__list {
    list-style-type: decimal;
    list-style-position: inside; }
  .popup .list-sub span {
    display: block; }
  @media (min-width: 900px) {
    .popup .article {
      padding-top: 30px;
      padding-bottom: 30px; } }
  .popup .article__content {
    height: 200px;
    padding: 30px;
    text-overflow: ellipsis;
    /* hide scrollbar but allow scrolling */
    overflow-y: scroll; }
    @media (min-width: 900px) {
      .popup .article__content {
        height: 400px; } }
  .popup .article__owner {
    font-size: 20px; }
  .popup .article__link {
    margin-bottom: 20px; }
  .popup .article__link.nolink {
    visibility: hidden; }

#cboxOverlay {
  position: fixed;
  width: 100%;
  height: 100%;
  background-color: #000; }

#colorbox #cboxClose {
  position: absolute;
  top: 15px;
  right: 15px;
  width: 35px;
  height: 35px;
  background-image: url(../../91b5addc312526616d02.png);
  border-radius: 50%;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat; }
  @media (min-width: 900px) {
    #colorbox #cboxClose {
      top: 35px;
      right: 35px;
      width: 50px;
      height: 50px; } }

#cboxLoadedContent {
  -ms-overflow-style: none;
  /* for Internet Explorer, Edge */
  scrollbar-width: none;
  /* for Firefox */
  overflow-y: scroll; }

#cboxLoadedContent::-webkit-scrollbar {
  display: none;
  /* for Chrome, Safari, and Opera */ }

.prize-better::before,
.prize-best::before {
  content: '';
  position: absolute;
  left: 0;
  width: calc(394px / 2.8);
  height: calc(229px / 2.8);
  background-repeat: no-repeat;
  background-size: contain; }
  @media (min-width: 600px) {
    .prize-better::before,
    .prize-best::before {
      width: calc(394px / 2);
      height: calc(229px / 2); } }

.prize-better::before {
  background-image: url(../../93daed518b4b846d12d7.png); }

.prize-best::before {
  background-image: url(../../4a528e920b692426b547.png); }

.carousel-prizes {
  width: 100%; }
  @media (min-width: 900px) {
    .carousel-prizes {
      width: 50%; } }

.btn__close-outside {
  position: fixed;
  top: 10px;
  right: 10px;
  z-index: 99999;
  width: 30px;
  height: 30px;
  background-image: url(../../3296e0dc06ce9e55c359.png);
  visibility: hidden;
  background-repeat: no-repeat;
  background-size: contain; }

@media (min-width: 900px) {
  .article__img.slick-slide img {
    max-height: 400px; } }

@-webkit-keyframes swing {
  20% {
    transform: rotate3d(0, 0, 1, 8deg); }
  40% {
    transform: rotate3d(0, 0, 1, -5deg); }
  60% {
    transform: rotate3d(0, 0, 1, 3deg); }
  80% {
    transform: rotate3d(0, 0, 1, -3deg); }
  to {
    transform: rotate3d(0, 0, 1, 0deg); } }

@keyframes swing {
  20% {
    transform: rotate3d(0, 0, 1, 8deg); }
  40% {
    transform: rotate3d(0, 0, 1, -5deg); }
  60% {
    transform: rotate3d(0, 0, 1, 3deg); }
  80% {
    transform: rotate3d(0, 0, 1, -3deg); }
  to {
    transform: rotate3d(0, 0, 1, 0deg); } }

@-webkit-keyframes pulse {
  from {
    transform: scale3d(1, 1, 1); }
  50% {
    transform: scale3d(1.02, 1.02, 1.02); }
  to {
    transform: scale3d(1, 1, 1); } }

@keyframes pulse {
  from {
    transform: scale3d(1, 1, 1); }
  50% {
    transform: scale3d(1.02, 1.02, 1.02); }
  to {
    transform: scale3d(1, 1, 1); } }

@-webkit-keyframes pulse-grow {
  100% {
    transform: scale(1.02); } }

@keyframes pulse-grow {
  100% {
    transform: scale(1.02); } }

@-webkit-keyframes scroll-down {
  0% {
    transform: translate(0, 0); }
  50% {
    transform: translate(0, 20px); }
  100% {
    transform: translate(0, 0); } }

@keyframes scroll-down {
  0% {
    transform: translate(0, 0); }
  50% {
    transform: translate(0, 20px); }
  100% {
    transform: translate(0, 0); } }

.styled-checkbox {
  position: absolute;
  opacity: 0; }
  .styled-checkbox + label {
    position: relative;
    cursor: pointer;
    padding: 0; }
  .styled-checkbox + label::before {
    content: '';
    display: inline-block;
    width: 18px;
    height: 18px;
    border: 1px solid #bfbfbf;
    margin-right: 4px;
    vertical-align: text-top;
    transform: scale(1.2);
    background: #fff; }
  .styled-checkbox:hover + label::before {
    background: #cc0041; }
  .styled-checkbox:checked + label::before {
    background: #cc0041; }
  .styled-checkbox:disabled + label {
    color: #b8b8b8;
    cursor: auto; }
  .styled-checkbox:disabled + label::before {
    box-shadow: none;
    background: #ddd; }
  .styled-checkbox:checked + label::after {
    content: '✔';
    position: absolute;
    top: -10px;
    left: 2px;
    display: block;
    font-size: 20px;
    color: #fff; }

.swal-image {
  max-width: 200px !important; }

.swal-content {
  font-size: 14px !important;
  text-align: left !important; }

.header {
  position: fixed;
  top: 0;
  z-index: 9;
  display: flex;
  justify-content: space-between;
  width: 100%;
  height: 60px;
  padding-right: 20px;
  padding-left: 20px;
  background-color: #fff;
  box-shadow: 0 5px 30px 0 rgba(0, 0, 0, 0.5); }
  .header .hamburger-menu {
    height: 100%; }
  @media (min-width: 900px) {
    .header {
      height: 75px;
      padding-right: 70px;
      padding-left: 70px; } }

.section-kv {
  position: relative;
  margin-top: 60px;
  margin-bottom: 100px;
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat; }
  @media (min-width: 768px) {
    .section-kv {
      margin-top: 70px; } }
  .section-kv .container {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    margin: 0 auto;
    max-width: 300px;
    margin-top: 50px; }
    @media (min-width: 900px) {
      .section-kv .container {
        height: 100%;
        max-width: 1200px;
        margin-top: 10px; }
        .section-kv .container .inner {
          transform: translateY(30%); } }
    @media (min-width: 1200px) {
      .section-kv .container .inner {
        transform: translateY(50%); } }
  .section-kv .kv-logo {
    width: calc(191px / 2); }
  .section-kv .title,
  .section-kv .subtitle {
    display: inline-block;
    margin-bottom: 10px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 8px;
    background-image: linear-gradient(330deg, #c6004d 30%, #99003f 90%);
    background-image: -webkit-linear-gradient(330deg, #c6004d 30%, #99003f 90%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent; }
    @media (min-width: 900px) {
      .section-kv .title,
      .section-kv .subtitle {
        margin-bottom: 14px; } }
  .section-kv .hint-info {
    position: relative;
    top: -14px;
    display: inline-block;
    font-size: 14px;
    background-image: linear-gradient(330deg, #c6004d 30%, #99003f 90%);
    background-image: -webkit-linear-gradient(330deg, #c6004d 30%, #99003f 90%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent; }
    @media (min-width: 900px) {
      .section-kv .hint-info {
        top: -16px;
        font-size: 20px; } }
  .section-kv .title {
    font-weight: 500;
    font-size: 26px;
    background-image: linear-gradient(to right, #cc0041 50%, #a50034 55%); }
  .section-kv .subtitle {
    font-size: 34px; }
    @media (min-width: 900px) {
      .section-kv .subtitle {
        font-size: 40px; }
        .section-kv .subtitle p {
          display: inline-block; } }
  .section-kv .justify {
    text-align: justify;
    -ms-text-justify: inter-ideograph;
    text-justify: inter-ideograph;
    -moz-text-align-last: justify;
    -webkit-text-align-last: justify; }
  .section-kv .justify::after {
    content: '';
    display: inline-block;
    width: 100%; }
  .section-kv .subtitle-desc {
    display: inline-block;
    font-size: 16px;
    line-height: 1.5;
    letter-spacing: 1px;
    color: #333; }
  @media (min-width: 900px) {
    .section-kv .kv-logo,
    .section-kv .title {
      display: block; }
    .section-kv .subtitle-desc {
      font-size: 23px;
      letter-spacing: 2px; } }

.section-video .title,
.section-kol .title,
.section-collect-intro .title,
.section-article .title {
  display: inline-block;
  margin-bottom: 30px;
  padding-bottom: 10px;
  font-weight: 500;
  font-size: 38px;
  letter-spacing: 10px;
  background-image: linear-gradient(330deg, #c6004d 30%, #99003f 90%);
  background-image: -webkit-linear-gradient(330deg, #c6004d 30%, #99003f 90%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent; }

.section-video .title__head,
.section-kol .title__head,
.section-collect-intro .title__head,
.section-article .title__head {
  display: block;
  margin-bottom: 15px;
  font-weight: 300;
  font-size: 30px;
  letter-spacing: 2px;
  color: #6b6b6b; }

.section-video .desc,
.section-kol .desc,
.section-collect-intro .desc,
.section-article .desc {
  margin-bottom: 30px;
  font-weight: 400;
  font-size: 16px;
  line-height: 2;
  letter-spacing: 1px;
  color: #333; }

@media (min-width: 900px) {
  .section-video .title,
  .section-kol .title,
  .section-collect-intro .title,
  .section-article .title {
    margin-bottom: 40px;
    font-size: 48px; }
  .section-video .title__head,
  .section-kol .title__head,
  .section-collect-intro .title__head,
  .section-article .title__head {
    margin-bottom: 20px;
    font-size: 32px; }
  .section-video .desc,
  .section-kol .desc,
  .section-collect-intro .desc,
  .section-article .desc {
    font-size: 16px; } }

.section-video {
  position: relative; }
  .section-video .content {
    margin: 0 auto;
    padding: 0 15px;
    font-size: 16px;
    text-align: left;
    max-width: 670px; }
  .section-video .container {
    padding-right: 0;
    padding-left: 0;
    max-width: 100%; }
  @media (min-width: 900px) {
    .section-video .container {
      display: flex;
      justify-content: space-between;
      padding: 0 20px;
      max-width: 1200px; }
    .section-video .content {
      width: 45%;
      margin-top: 100px; } }
  @media (min-width: 900px) {
    .section-video .media {
      width: 55%; } }
  .section-video .media-img {
    position: relative;
    display: inline-block; }
  .section-video .image-container:nth-child(1) {
    position: relative;
    top: -20px;
    right: 15px;
    text-align: right; }
    .section-video .image-container:nth-child(1) .media-img {
      width: calc(700px / 3.6); }
      @media (min-width: 900px) {
        .section-video .image-container:nth-child(1) .media-img {
          width: calc(700px / 3); } }
  .section-video .image-container:nth-child(3) {
    position: relative;
    top: 20px;
    left: -15px;
    text-align: left; }
    .section-video .image-container:nth-child(3) .media-img {
      width: calc(589px / 3.6); }
      @media (min-width: 900px) {
        .section-video .image-container:nth-child(3) .media-img {
          width: calc(589px / 3); } }
      @media (min-width: 1100px) {
        .section-video .image-container:nth-child(3) .media-img {
          width: calc(589px / 2.2); } }
    @media (min-width: 900px) {
      .section-video .image-container:nth-child(3) {
        top: -10px;
        left: -70%;
        display: inline-block; } }
    @media (min-width: 1100px) {
      .section-video .image-container:nth-child(3) {
        top: -8%;
        left: -80%; } }
  .section-video .video-container {
    position: relative;
    overflow: hidden;
    width: 100%;
    border: 2px solid #8d8d8d;
    padding-bottom: 56.25%;
    /* 16:9 */ }
    @media (min-width: 900px) {
      .section-video .video-container {
        height: 30vw; } }
  .section-video .video-bg {
    position: absolute;
    width: 100%;
    height: 100%; }
  .section-video .video-play {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: calc(224px / 1.5);
    height: calc(224px / 1.5);
    border: none;
    margin: auto 0;
    background-color: transparent;
    background-image: url(../../7a95c0f48df85c2037bb.png);
    transform: translateX(-50%);
    background-size: contain;
    background-repeat: no-repeat; }
  .section-video .video-play a {
    width: 100%;
    height: 100%; }
  .section-video .video-play:hover {
    background-image: url(../../7b85ab8ba8e9bc116e0b.png); }
  .section-video .video-container iframe {
    position: absolute;
    top: 0;
    top: -25%;
    left: 0;
    width: 100%;
    height: 150%; }

.section-video::after {
  content: '';
  position: absolute;
  right: 0;
  bottom: -30px;
  left: 0;
  display: block;
  width: 1px;
  height: 60px;
  margin-right: auto;
  margin-left: auto;
  background-color: #a50034;
  -webkit-animation: scroll-down 2s infinite;
          animation: scroll-down 2s infinite; }

.section-kol {
  background-color: #f9f9f9; }
  .section-kol .container {
    padding-top: 60px;
    padding-right: 0;
    padding-bottom: 60px;
    padding-left: 0;
    max-width: 1200px; }
    @media (min-width: 900px) {
      .section-kol .container {
        padding-top: 80px;
        padding-right: 20px;
        padding-bottom: 100px;
        padding-left: 20px; } }
  .section-kol .card__item {
    margin: 10px; }

.section-collect-intro {
  position: relative; }
  .section-collect-intro .container {
    position: relative;
    padding-right: 0;
    padding-left: 0;
    max-width: 100%; }
    @media (min-width: 900px) {
      .section-collect-intro .container {
        padding-top: 125px; } }
  .section-collect-intro .container:nth-child(2) {
    padding-top: 40px; }
    @media (min-width: 900px) {
      .section-collect-intro .container:nth-child(2) {
        padding-top: 90px; } }
  .section-collect-intro .content {
    margin-bottom: 20px;
    padding-right: 30px;
    padding-left: 30px; }
    .section-collect-intro .content .pc-desc {
      display: none; }
    @media (min-width: 900px) {
      .section-collect-intro .content {
        width: 50%;
        margin: 0 auto 30px; } }
    @media (max-width: 1000px) and (min-width: 900px) {
      .section-collect-intro .content {
        width: 55%; } }
    @media (min-width: 768px) {
      .section-collect-intro .content .pc-desc {
        display: block; }
      .section-collect-intro .content .mobile-desc {
        display: none; } }
  .section-collect-intro .desc {
    margin-bottom: 30px; }
  @media (min-width: 900px) {
    .section-collect-intro .intro-img {
      position: absolute; } }
  .section-collect-intro .intro-img:first-child {
    position: relative;
    top: -40px;
    padding-right: 15px;
    text-align: right; }
    .section-collect-intro .intro-img:first-child img {
      width: calc(663px / 4); }
    @media (min-width: 768px) {
      .section-collect-intro .intro-img:first-child img {
        width: calc(663px / 3); } }
    @media (min-width: 900px) {
      .section-collect-intro .intro-img:first-child {
        position: absolute;
        top: -60px;
        right: 35px; }
        .section-collect-intro .intro-img:first-child img {
          width: calc(663px / 2); } }
    @media (max-width: 1000px) and (min-width: 900px) {
      .section-collect-intro .intro-img:first-child img {
        width: calc(663px / 3.2); } }
    @media (max-width: 1200px) and (min-width: 1001px) {
      .section-collect-intro .intro-img:first-child img {
        width: calc(663px / 2.5); } }
  .section-collect-intro .intro-img:last-child {
    text-align: left; }
    .section-collect-intro .intro-img:last-child img {
      width: calc(608px / 3.5); }
    @media (min-width: 768px) {
      .section-collect-intro .intro-img:last-child img {
        width: calc(608px / 3); } }
    @media (min-width: 900px) {
      .section-collect-intro .intro-img:last-child {
        bottom: 0;
        left: 0; }
        .section-collect-intro .intro-img:last-child img {
          width: calc(608px / 2); } }
    @media (max-width: 1000px) and (min-width: 900px) {
      .section-collect-intro .intro-img:last-child img {
        width: calc(663px / 2.8); } }
  .section-collect-intro .award-wrapper {
    margin-top: 40px; }
    .section-collect-intro .award-wrapper .award__item {
      position: relative;
      margin-bottom: 50px;
      padding-right: 20px;
      padding-left: 20px; }
    .section-collect-intro .award-wrapper .award__item:first-child::after {
      content: '';
      position: absolute;
      right: 0;
      bottom: 0;
      width: 1px;
      height: 70%;
      background-color: #f9f9f9; }
    .section-collect-intro .award-wrapper .award__title {
      width: calc(668px / 3);
      margin: 0 auto; }
    .section-collect-intro .award-wrapper .award__img {
      width: calc(1000px / 3);
      margin: 0 auto 16px; }
    .section-collect-intro .award-wrapper .award__btn {
      padding: 10px 30px; }
    @media (min-width: 600px) {
      .section-collect-intro .award-wrapper .award__title {
        width: calc(668px / 2.5); }
      .section-collect-intro .award-wrapper .award__img {
        width: calc(1000px / 2.5); } }
    @media (min-width: 768px) {
      .section-collect-intro .award-wrapper {
        display: flex;
        justify-content: center; }
        .section-collect-intro .award-wrapper .award__item {
          width: 50%;
          margin-bottom: 50px; }
        .section-collect-intro .award-wrapper .award__title {
          width: calc(668px / 3);
          margin-bottom: 30px; }
        .section-collect-intro .award-wrapper .award__img {
          width: calc(1000px / 3); } }
    @media (max-width: 1200px) and (min-width: 900px) {
      .section-collect-intro .award-wrapper .award__title {
        width: calc(668px / 2.5); }
      .section-collect-intro .award-wrapper .award__img {
        width: calc(1000px / 2.5); } }
    @media (min-width: 1200px) {
      .section-collect-intro .award-wrapper .award__title {
        width: calc(668px / 2); }
      .section-collect-intro .award-wrapper .award__img {
        width: calc(1000px / 2); } }

.section-collect {
  margin-bottom: 45px;
  padding-right: 20px;
  padding-left: 20px; }
  @media (min-width: 900px) {
    .section-collect {
      margin-bottom: 60px;
      padding-right: 0;
      padding-left: 0; } }
  @media (min-width: 900px) {
    .section-collect .submit-wrapper-reverse {
      flex-direction: row-reverse; } }
  .section-collect .submit-wrapper {
    background-color: #f9f9f9; }
    @media (min-width: 900px) {
      .section-collect .submit-wrapper {
        display: flex; } }
    .section-collect .submit-wrapper .submit__content {
      margin: auto;
      padding: 30px 20px;
      text-align: left; }
      @media (min-width: 900px) {
        .section-collect .submit-wrapper .submit__content {
          padding: 0 55px; } }
    @media (min-width: 900px) {
      .section-collect .submit-wrapper .submit__content,
      .section-collect .submit-wrapper .submit__media {
        width: 50%; } }
    .section-collect .submit-wrapper .submit__title {
      display: inline-block;
      margin-bottom: 15px;
      font-weight: 500;
      font-size: 24px;
      letter-spacing: 4px;
      background-image: linear-gradient(330deg, #c6004d 30%, #99003f 90%);
      background-image: -webkit-linear-gradient(330deg, #c6004d 30%, #99003f 90%);
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent; }
    .section-collect .submit-wrapper .submit__desc {
      margin-bottom: 20px;
      font-size: 16px;
      line-height: 2;
      color: #333;
      text-align: justify; }
    .section-collect .submit-wrapper .submit__details {
      margin-bottom: 20px;
      font-size: 12px;
      line-height: 1.8;
      color: #8d8d8d; }
    .section-collect .submit-wrapper .submit__btns {
      text-align: center; }
      @media (min-width: 900px) {
        .section-collect .submit-wrapper .submit__btns {
          text-align: left; } }
      .section-collect .submit-wrapper .submit__btns .btn {
        width: 45%; }
        @media (min-width: 900px) {
          .section-collect .submit-wrapper .submit__btns .btn {
            width: auto; } }
    .section-collect .submit-wrapper .howto__button {
      transition-property: transform;
      transition-duration: .3s;
      margin-right: 20px; }
    .section-collect .submit-wrapper .fill__button {
      -webkit-animation-name: pulse-grow;
              animation-name: pulse-grow;
      -webkit-animation-duration: .3s;
              animation-duration: .3s;
      -webkit-animation-iteration-count: infinite;
              animation-iteration-count: infinite;
      -webkit-animation-direction: alternate;
              animation-direction: alternate; }

.section-form {
  box-shadow: inset 0 11px 5px -10px #ccc, inset 0 -11px 5px -10px #ccc;
  padding-right: 26px;
  padding-left: 26px;
  display: none; }
  .section-form form,
  .section-form .form-finish {
    max-width: 660px;
    margin: auto;
    line-height: 2; }
  .section-form .form-step1,
  .section-form .form-step2,
  .section-form .form-finish {
    display: none; }
  .section-form .form-close {
    position: absolute;
    top: 30px;
    right: 30px;
    width: 30px;
    height: 30px;
    border: none;
    background-image: url(../../91b5addc312526616d02.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    cursor: pointer; }
    @media (min-width: 900px) {
      .section-form .form-close {
        width: 50px;
        height: 50px; } }

.section-article {
  margin-bottom: 100px;
  padding-top: 40px; }
  @media (min-width: 900px) {
    .section-article {
      margin-bottom: 50px; } }
  .section-article .container {
    width: 100%; }
  .section-article .article-wrapper {
    perspective: 500px;
    width: 80%;
    margin: auto; }
    @media (min-width: 600px) {
      .section-article .article-wrapper {
        width: 70%; } }
    @media (min-width: 768px) {
      .section-article .article-wrapper {
        display: flex;
        justify-content: space-around;
        width: 100%;
        flex-wrap: wrap; }
        .section-article .article-wrapper .article__item {
          width: 30%; } }
    @media (min-width: 900px) {
      .section-article .article-wrapper {
        width: 100%; } }

.section-info {
  padding-top: 50px;
  text-align: left;
  background-color: #f5f5f5; }
  .section-info .container {
    position: relative; }
  .section-info .title {
    margin-bottom: 20px;
    font-weight: 700;
    font-size: 16px;
    color: #333; }
  .section-info .collapse__content {
    overflow: hidden;
    padding-right: 26px;
    padding-bottom: 40px;
    padding-left: 26px;
    font-size: 14px;
    line-height: 1.5;
    color: #8d8d8d;
    list-style-type: decimal;
    background: -webkit-linear-gradient(bottom, #fff, #8d8d8d);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent; }
  .section-info .collapse__content.show {
    -webkit-text-fill-color: #8d8d8d; }
  .section-info .collapse__content li {
    margin-bottom: 10px; }
  .section-info .collapse__content--hide {
    display: none; }
  .section-info .collapse__btn {
    position: absolute;
    bottom: 20px;
    left: 50%;
    border: none;
    border-bottom: 1px solid #333;
    font-weight: 700;
    font-size: 14px;
    background-color: transparent;
    transform: translateX(-50%);
    cursor: pointer; }

.footer {
  padding-top: 24px;
  padding-bottom: 24px;
  font-size: 14px;
  color: #fff;
  background-color: #333; }
  @media (max-width: 375px) {
    .footer {
      font-size: 13px; } }

.document__overlay {
  position: fixed;
  top: 0;
  z-index: 99;
  display: none;
  width: 100%;
  height: 100%;
  background-color: #fff; }

.section-collect-intro,
.section-collect {
  max-width: 1200px;
  margin: 0 auto; }

