@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosanstc.css);
@import url("https://fonts.googleapis.com/css2?family=Lilita+One&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Signika:wght@600&display=swap");
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
select,
textarea,
p,
blockquote,
th,
td {
  padding: 0;
  margin: 0; }

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

fieldset,
img {
  border: 0;
  border-style: none; }

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
  font-weight: normal;
  font-style: normal; }

ol,
ul {
  list-style: none; }

caption,
th {
  text-align: left; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: normal;
  font-size: 100%; }

q:before, q:after {
  content: ""; }

abbr,
acronym {
  border: 0; }

a {
  text-decoration: none;
  color: inherit; }

input,
button,
textarea,
select,
option {
  font-family: inherit;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit; }

*:focus {
  outline: none; }

@-webkit-keyframes shine {
  0%,
  100% {
    -webkit-filter: brightness(1);
    filter: brightness(1); }
  50% {
    -webkit-filter: brightness(1.2);
    filter: brightness(1.2); } }

@keyframes shine {
  0%,
  100% {
    -webkit-filter: brightness(1);
    filter: brightness(1); }
  50% {
    -webkit-filter: brightness(1.2);
    filter: brightness(1.2); } }

@-webkit-keyframes picnicPoring {
  0%,
  100% {
    -webkit-transform: scale(1, 1) translateY(0);
    transform: scale(1, 1) translateY(0); }
  50% {
    -webkit-transform: scale(1.1, 0.9) translateY(10px);
    transform: scale(1.1, 0.9) translateY(10px); } }

@keyframes picnicPoring {
  0%,
  100% {
    -webkit-transform: scale(1, 1) translateY(0);
    transform: scale(1, 1) translateY(0); }
  50% {
    -webkit-transform: scale(1.1, 0.9) translateY(10px);
    transform: scale(1.1, 0.9) translateY(10px); } }

@-webkit-keyframes show-popup {
  0% {
    -webkit-transform: translate(-50%, -50%) scale(0.7);
    transform: translate(-50%, -50%) scale(0.7);
    opacity: 0; }
  45% {
    -webkit-transform: translate(-50%, -50%) scale(1.05);
    transform: translate(-50%, -50%) scale(1.05);
    opacity: 1; }
  80% {
    -webkit-transform: translate(-50%, -50%) scale(0.95);
    transform: translate(-50%, -50%) scale(0.95);
    opacity: 1; }
  100% {
    -webkit-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
    opacity: 1; } }

@keyframes show-popup {
  0% {
    -webkit-transform: translate(-50%, -50%) scale(0.7);
    transform: translate(-50%, -50%) scale(0.7);
    opacity: 0; }
  45% {
    -webkit-transform: translate(-50%, -50%) scale(1.05);
    transform: translate(-50%, -50%) scale(1.05);
    opacity: 1; }
  80% {
    -webkit-transform: translate(-50%, -50%) scale(0.95);
    transform: translate(-50%, -50%) scale(0.95);
    opacity: 1; }
  100% {
    -webkit-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
    opacity: 1; } }

@-webkit-keyframes hide-popup {
  0% {
    -webkit-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
    opacity: 1; }
  100% {
    -webkit-transform: translate(-50%, -50%) scale(0.5);
    transform: translate(-50%, -50%) scale(0.5);
    opacity: 0; } }

@keyframes hide-popup {
  0% {
    -webkit-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
    opacity: 1; }
  100% {
    -webkit-transform: translate(-50%, -50%) scale(0.5);
    transform: translate(-50%, -50%) scale(0.5);
    opacity: 0; } }

h1 {
  font-size: 40px;
  font-weight: 700; }

h2 {
  font-size: 36px;
  font-weight: 600; }

h3 {
  font-size: 28px;
  font-weight: 600; }

h4 {
  font-size: 26px;
  font-weight: 600; }

h5 {
  font-size: 22px;
  font-weight: 500; }

p {
  font-size: 18px; }

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

footer {
  background-color: #29301a; }

html,
body {
  margin: 0;
  padding: 0;
  width: 100%;
  height: auto; }

body {
  line-height: 1.5;
  font-family: 'Noto Sans TC', "微軟正黑體", sans-serif;
  font-size: 18px;
  overflow-x: hidden;
  color: #333333;
  background: url(../img/grass_bg.jpg), #97c439; }
  body::-webkit-scrollbar {
    width: 8px; }
  body::-webkit-scrollbar-thumb {
    background: #708d4a;
    border-radius: 2.5px; }
  body::-webkit-scrollbar-track {
    background: #daecc3; }

main {
  overflow: hidden;
  position: relative; }

nav {
  display: none; }

header {
  background-image: url(../img/kv_bg.jpg);
  background-repeat: no-repeat;
  background-position: center top;
  height: 1030px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  position: relative; }
  header .logo {
    position: absolute;
    left: 20px;
    top: 20px;
    -webkit-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    z-index: 10; }
    header .logo:hover {
      -webkit-animation: shine .5s infinite;
      animation: shine .5s infinite; }
  header .slogan {
    padding-top: 40px;
    text-align: center;
    font-size: 0;
    pointer-events: none; }
    header .slogan_01 {
      margin-bottom: 6px; }
      header .slogan_01 > div {
        width: 58px;
        height: 58px;
        background-image: url(../img/slogan1.png);
        background-repeat: no-repeat;
        background-size: cover;
        margin: 0 4px;
        display: inline-block; }
      header .slogan_01 > div:nth-child(2) {
        background-position: -64px 0; }
      header .slogan_01 > div:nth-child(3) {
        background-position: -128px 0; }
      header .slogan_01 > div:nth-child(4) {
        background-position: -192px 0; }
    header .slogan_03 {
      margin-top: -10px; }
  header .cha {
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain; }
    header .cha_picnicPoring {
      background-image: url(../img/kv_poring.png);
      width: 160px;
      height: 148px;
      right: calc(50% - 211px);
      top: 575px;
      -webkit-animation: picnicPoring 1s infinite;
      animation: picnicPoring 1s infinite; }
    header .cha_knight {
      background-image: url(../img/kv_knight.png);
      width: 435px;
      height: 515px;
      left: calc(50% - 522px);
      top: 301px; }
    header .cha_gm {
      background-image: url(../img/kv_gm.png);
      width: 447px;
      height: 614px;
      right: calc(50% - 551px);
      top: 245px; }
    header .cha_chick {
      background-image: url(../img/kv_chick.png);
      width: 118px;
      height: 179px;
      left: calc(50% - 400px);
      top: 787px; }

.event {
  padding: 80px 20px;
  margin-bottom: 100px;
  position: relative;
  z-index: 1; }
  .event .bgdeco {
    position: absolute;
    background-repeat: no-repeat; }
  .event .eventWrap {
    position: relative;
    max-width: 1024px;
    padding: 0 40px 80px;
    margin: 0 auto;
    -webkit-box-shadow: 3px 0 0 rgba(65, 65, 65, 0.3);
    box-shadow: 3px 0 0 rgba(65, 65, 65, 0.3); }
    .event .eventWrap::before {
      content: "";
      display: block;
      width: 100%;
      height: 103%;
      position: absolute;
      left: 0;
      top: 0;
      z-index: -1;
      -webkit-transform: rotate(8deg);
      -ms-transform: rotate(8deg);
      transform: rotate(8deg);
      -webkit-box-shadow: 3px 3px 0 rgba(65, 65, 65, 0.3);
      box-shadow: 3px 3px 0 rgba(65, 65, 65, 0.3); }
    .event .eventWrap .matbd {
      width: 100%;
      height: 23px;
      position: absolute;
      left: 0;
      z-index: -1;
      -webkit-filter: drop-shadow(3px 3px 0 rgba(65, 65, 65, 0.3));
      filter: drop-shadow(3px 3px 0 rgba(65, 65, 65, 0.3)); }
      .event .eventWrap .matbd_top {
        top: -23px; }
      .event .eventWrap .matbd_btm {
        bottom: -23px;
        -webkit-transform: scaleY(-1);
        -ms-transform: scaleY(-1);
        transform: scaleY(-1); }
    .event .eventWrap .title {
      text-align: center;
      margin-top: -150px; }
    .event .eventWrap .foreword {
      max-width: 800px;
      margin: 20px auto 30px; }
      .event .eventWrap .foreword span {
        color: #f84a4a; }

.eventContent .bgdeco--grass1 {
  background-image: url(../img/bg_grass01.png);
  width: 309px;
  height: 298px;
  left: -66px;
  top: 130px;
  z-index: -2; }

.eventContent .bgdeco--grass2 {
  background-image: url(../img/bg_grass02.png);
  width: 448px;
  height: 343px;
  right: -67px;
  bottom: 150px;
  z-index: -2; }

.eventContent .bgdeco--rocker {
  background-image: url(../img/bg_rocker.png);
  width: 325px;
  height: 536px;
  left: 95px;
  top: -37px;
  z-index: -1; }
  @media only screen and (max-width: 1366px) {
    .eventContent .bgdeco--rocker {
      left: -33px; } }

.eventContent .bgdeco--poring {
  background-image: url(../img/s1_partyPoring.png);
  width: 223px;
  height: 281px;
  right: calc(50% - 587px);
  bottom: 162px;
  z-index: 10; }

.eventContent .eventWrap {
  background-image: url(../img/s1_bg_poring.jpg);
  border: 3px solid #f9d281; }
  .eventContent .eventWrap::before {
    background-image: url(../img/s1_bg_grid.jpg); }
  .eventContent .eventWrap::after {
    content: "";
    display: block;
    position: absolute;
    background-image: url(../img/s1_food.png);
    width: 190px;
    height: 240px;
    left: -113px;
    bottom: 80px; }
  .eventContent .eventWrap .matbd {
    background-image: url(../img/s1_border.png); }
  .eventContent .eventWrap .step {
    max-width: 800px;
    margin: 0 auto; }
    .eventContent .eventWrap .step > div {
      padding-bottom: 20px;
      position: relative; }
      .eventContent .eventWrap .step > div .stepTag {
        border-width: 4px;
        border-style: solid; }
      .eventContent .eventWrap .step > div:not(:last-child)::after {
        content: "";
        position: absolute;
        display: block;
        height: 100%;
        border-left: 5px dashed rgba(255, 189, 60, 0.5);
        left: 62px;
        top: 0; }
      .eventContent .eventWrap .step > div:nth-child(1) .stepTag {
        background-color: #ffe3ab;
        border-color: #ffe3ab; }
        .eventContent .eventWrap .step > div:nth-child(1) .stepTag h4 span {
          color: #ffe3ab; }
      .eventContent .eventWrap .step > div:nth-child(2) .stepTag {
        background-color: #ffda91;
        border-color: #ffda91; }
        .eventContent .eventWrap .step > div:nth-child(2) .stepTag h4 span {
          color: #ffda91; }
      .eventContent .eventWrap .step > div:nth-child(3) .stepTag {
        background-color: #ffcc68;
        border-color: #ffcc68; }
        .eventContent .eventWrap .step > div:nth-child(3) .stepTag h4 span {
          color: #ffcc68; }
      .eventContent .eventWrap .step > div:nth-child(4) .stepTag {
        background-color: #ffbd3c;
        border-color: #ffbd3c; }
        .eventContent .eventWrap .step > div:nth-child(4) .stepTag h4 span {
          color: #ffbd3c; }
      .eventContent .eventWrap .step > div:nth-child(5) .stepTag {
        background-color: #ffb629;
        border-color: #ffb629; }
        .eventContent .eventWrap .step > div:nth-child(5) .stepTag h4 span {
          color: #ffb629; }
    .eventContent .eventWrap .step .stepTag {
      position: relative;
      z-index: 5;
      overflow: hidden;
      display: inline-block;
      padding: 0 15px 0 0;
      border-radius: 8px 20px 8px 20px; }
      .eventContent .eventWrap .step .stepTag h4 {
        color: #3f331b; }
        .eventContent .eventWrap .step .stepTag h4 span {
          display: inline-block;
          background-color: #fff;
          border-radius: 6px 14px 6px 14px;
          padding: 0 15px;
          margin-right: 15px; }
    .eventContent .eventWrap .step p {
      padding-left: 134px;
      margin-top: 10px; }
    .eventContent .eventWrap .step .btn_cosplay {
      margin: 10px 0 0 134px;
      display: inline-block;
      border-radius: 50px;
      color: #fff;
      font-weight: bold;
      padding: 5px 15px;
      background: -webkit-linear-gradient(315deg, #ff6666 30%, #f35454 100%);
      background: -o-linear-gradient(315deg, #ff6666 30%, #f35454 100%);
      background: linear-gradient(135deg, #ff6666 30%, #f35454 100%);
      -webkit-box-shadow: -3px -3px 0 #d34242 inset;
      box-shadow: -3px -3px 0 #d34242 inset;
      cursor: pointer;
      -webkit-transition: all .2s ease-in-out;
      -o-transition: all .2s ease-in-out;
      transition: all .2s ease-in-out; }
      .eventContent .eventWrap .step .btn_cosplay:hover {
        -webkit-transform: translateY(-2px);
        -ms-transform: translateY(-2px);
        transform: translateY(-2px);
        -webkit-animation: shine .5s infinite;
        animation: shine .5s infinite; }

.eventInfo .bgdeco--devil {
  background-image: url(../img/bg_devil.png);
  width: 261px;
  height: 405px;
  left: 165px;
  top: 196px;
  z-index: -2; }

.eventInfo .bgdeco--grass3 {
  background-image: url(../img/bg_grass03.png);
  width: 581px;
  height: 445px;
  left: -100px;
  top: 360px;
  z-index: -1; }

.eventInfo .eventWrap {
  background-image: url(../img/s2_bg_poring.jpg);
  border: 3px solid #c8deb5; }
  .eventInfo .eventWrap::before {
    background-image: url(../img/s2_bg_grid.jpg); }
  .eventInfo .eventWrap::after {
    content: "";
    display: block;
    position: absolute;
    background-image: url(../img/s2_food.png);
    width: 205px;
    height: 193px;
    right: 40px;
    bottom: -60px; }
  .eventInfo .eventWrap .matbd {
    background-image: url(../img/s2_border.png); }
  .eventInfo .eventWrap .infoContainer {
    max-width: 800px;
    margin: 45px auto 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    .eventInfo .eventWrap .infoContainer > div {
      background-color: #fff;
      border-radius: 20px;
      width: 32%;
      margin-bottom: 50px;
      text-align: center;
      position: relative;
      min-height: 130px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      padding-top: 15px; }
      .eventInfo .eventWrap .infoContainer > div:nth-child(4) {
        width: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 30px 50px; }
        .eventInfo .eventWrap .infoContainer > div:nth-child(4) p {
          margin-bottom: 20px; }
        .eventInfo .eventWrap .infoContainer > div:nth-child(4) img {
          max-width: 100%; }
      .eventInfo .eventWrap .infoContainer > div .info_title {
        position: absolute;
        display: inline-block;
        background-color: #7ab954;
        color: #fff;
        border-radius: 8px 20px 8px 8px;
        padding: 3px 18px 3px 15px;
        font-weight: bold;
        left: 0;
        top: -15px; }
  .eventInfo .eventWrap .loginContainer {
    text-align: center;
    margin-bottom: 30px; }
    .eventInfo .eventWrap .loginContainer .loginText {
      margin-bottom: 20px; }
      .eventInfo .eventWrap .loginContainer .loginText--logout {
        display: none; }
        .eventInfo .eventWrap .loginContainer .loginText--logout .username {
          color: #ea5251; }
        .eventInfo .eventWrap .loginContainer .loginText--logout .logout__btn {
          display: inline-block;
          background-color: #97bf43;
          color: #fff;
          border-radius: 50px;
          padding: 2px 10px;
          margin-top: 5px;
          cursor: pointer;
          font-weight: 500; }
    .eventInfo .eventWrap .loginContainer .login_icons > div {
      font-size: 0;
      width: 60px;
      height: 60px;
      background-color: #97bf43;
      border-radius: 30px;
      display: inline-block;
      background-size: 90%;
      background-repeat: no-repeat;
      background-position: center center;
      cursor: pointer;
      margin: 0 5px;
      -webkit-transition: background .2s ease-in-out;
      -o-transition: background .2s ease-in-out;
      transition: background .2s ease-in-out; }
      .eventInfo .eventWrap .loginContainer .login_icons > div:hover {
        background-color: #afd856; }
    .eventInfo .eventWrap .loginContainer .login_icons--gn {
      background-image: url(../img/icon_gn.png); }
    .eventInfo .eventWrap .loginContainer .login_icons--fb {
      background-image: url(../img/icon_fb.png); }
    .eventInfo .eventWrap .loginContainer .login_icons--gl {
      background-image: url(../img/icon_google.png); }
    .eventInfo .eventWrap .loginContainer .login_icons--ap {
      background-image: url(../img/icon_apple.png); }
    .eventInfo .eventWrap .loginContainer .login_icons--bh {
      background-image: url(../img/icon_bh.png); }
  .eventInfo .eventWrap .register {
    text-align: center;
    font-size: 0;
    margin-bottom: 30px; }
    .eventInfo .eventWrap .register_btn {
      display: inline-block;
      cursor: pointer;
      max-width: calc(50% - 20px);
      -webkit-transition: all .2s ease-in-out;
      -o-transition: all .2s ease-in-out;
      transition: all .2s ease-in-out; }
      .eventInfo .eventWrap .register_btn:hover {
        -webkit-transform: translateY(-2px);
        -ms-transform: translateY(-2px);
        transform: translateY(-2px);
        -webkit-animation: shine .5s infinite;
        animation: shine .5s infinite; }
      .eventInfo .eventWrap .register_btn img {
        max-width: 100%; }
      .eventInfo .eventWrap .register_btn--leader {
        margin-right: 20px; }
  .eventInfo .eventWrap .search {
    text-align: center; }
    .eventInfo .eventWrap .search .search_btn {
      display: inline-block;
      text-align: center;
      cursor: pointer;
      -webkit-transition: all .2s ease-in-out;
      -o-transition: all .2s ease-in-out;
      transition: all .2s ease-in-out; }
      .eventInfo .eventWrap .search .search_btn:hover {
        -webkit-transform: translateY(-2px);
        -ms-transform: translateY(-2px);
        transform: translateY(-2px);
        -webkit-animation: shine .5s infinite;
        animation: shine .5s infinite; }

.eventReward .bgdeco--grass4 {
  background-image: url(../img/bg_grass04.png);
  width: 373px;
  height: 297px;
  right: -100px;
  top: 0;
  z-index: -1; }

.eventReward .bgdeco--blacksmith {
  background-image: url(../img/bg_blacksmith.png);
  width: 402px;
  height: 645px;
  right: -12px;
  top: -265px;
  z-index: -1; }

.eventReward .bgdeco--grass5 {
  background-image: url(../img/bg_grass05.png);
  width: 413px;
  height: 439px;
  left: -197px;
  bottom: -300px; }

.eventReward .bgdeco--amistr {
  background-image: url(../img/bg_amistr.png);
  width: 360px;
  height: 290px;
  left: 18px;
  bottom: -84px; }

.eventReward .eventWrap {
  background-image: url(../img/s3_bg_poring.jpg);
  border: 3px solid #debfb4; }
  .eventReward .eventWrap::before {
    background-image: url(../img/s3_bg_grid.jpg); }
  .eventReward .eventWrap .matbd {
    background-image: url(../img/s3_border.png); }
  .eventReward .eventWrap .foreword {
    text-align: center; }
  .eventReward .eventWrap .gameBtns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    .eventReward .eventWrap .gameBtns > div {
      cursor: pointer;
      -webkit-transition: .2s;
      -o-transition: .2s;
      transition: .2s;
      position: relative;
      font-size: 0; }
      .eventReward .eventWrap .gameBtns > div img {
        max-width: 100%; }
      .eventReward .eventWrap .gameBtns > div:not(:last-child) {
        margin-right: 10px; }
      .eventReward .eventWrap .gameBtns > div:hover {
        -webkit-transform: translateY(-3px);
        -ms-transform: translateY(-3px);
        transform: translateY(-3px); }
      .eventReward .eventWrap .gameBtns > div.active {
        -webkit-transform: translateY(-3px);
        -ms-transform: translateY(-3px);
        transform: translateY(-3px); }
        .eventReward .eventWrap .gameBtns > div.active::after {
          content: "";
          display: block;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 12px 8px 0;
          border-color: #fcaeba transparent transparent;
          position: absolute;
          bottom: -12px;
          left: 50%;
          -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
          transform: translateX(-50%); }
  .eventReward .eventWrap .gameReward {
    max-width: 836px;
    margin: 20px auto 0;
    background-color: #fff;
    border-radius: 20px; }
    .eventReward .eventWrap .gameReward .itemList {
      -ms-flex-negative: 0;
      flex-shrink: 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: distribute;
      justify-content: space-around;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      width: 100%;
      height: 100%;
      padding: 60px;
      -webkit-transition: -webkit-transform .8s;
      transition: -webkit-transform .8s;
      -o-transition: transform .8s;
      transition: transform .8s;
      transition: transform .8s, -webkit-transform .8s;
      display: none; }
      .eventReward .eventWrap .gameReward .itemList.active {
        display: block; }
      .eventReward .eventWrap .gameReward .itemList .item {
        text-align: center;
        max-width: 600px;
        margin: 0 auto; }
        .eventReward .eventWrap .gameReward .itemList .item:not(:last-child) {
          margin-bottom: 25px; }
        .eventReward .eventWrap .gameReward .itemList .item p {
          font-size: 16px; }
        .eventReward .eventWrap .gameReward .itemList .item > div {
          display: inline-block;
          vertical-align: middle; }
        .eventReward .eventWrap .gameReward .itemList .item .img {
          width: 90px;
          height: 90px;
          border: 4px solid #e99aab;
          border-radius: 100%;
          overflow: hidden;
          margin-right: 10px;
          position: relative; }
          .eventReward .eventWrap .gameReward .itemList .item .img img {
            position: absolute;
            left: 50%;
            top: 50%;
            -webkit-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
        .eventReward .eventWrap .gameReward .itemList .item .text {
          text-align: left;
          width: calc(100% - 110px); }
          .eventReward .eventWrap .gameReward .itemList .item .text .itemName {
            color: #d43355;
            font-size: 18px;
            font-weight: 500;
            line-height: 1.2;
            margin-bottom: 5px; }
            .eventReward .eventWrap .gameReward .itemList .item .text .itemName span {
              font-size: 16px;
              color: #f29090;
              font-weight: normal; }
  .eventReward .eventWrap .gameRewardText {
    max-width: 836px;
    margin: 10px auto 0;
    text-align: center; }
    .eventReward .eventWrap .gameRewardText p {
      font-size: 16px;
      color: #eb6c80; }

.notice {
  margin-bottom: 100px; }
  .notice .noticeWrap {
    max-width: 1024px;
    margin: 0 auto;
    padding: 0 50px; }
  .notice_title {
    text-align: center;
    margin-bottom: 30px; }
  .notice_content {
    counter-reset: li; }
    .notice_content li {
      counter-increment: li;
      padding-left: 32px;
      position: relative;
      margin-bottom: 12px; }
      .notice_content li::before {
        content: counter(li);
        display: inline-block;
        position: absolute;
        left: 0;
        top: 2px;
        background-color: #5c7920;
        width: 26px;
        height: 26px;
        border-radius: 100%;
        color: #fff;
        text-align: center;
        line-height: 25px;
        font-size: 16px; }
      .notice_content li a {
        font-weight: bold;
        color: #b84545; }

.overlay {
  width: 100%;
  height: 100%;
  position: fixed;
  background-color: rgba(0, 0, 0, 0.7);
  top: 0;
  left: 0;
  -webkit-transition: height 0.3s ease-in;
  -o-transition: height 0.3s ease-in;
  transition: height 0.3s ease-in;
  z-index: 999;
  display: none; }

.popupWrap {
  width: 100%;
  height: auto;
  max-width: 600px;
  margin: 10px auto 0;
  position: fixed;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%) scale(1);
  -ms-transform: translate(-50%, -50%) scale(1);
  transform: translate(-50%, -50%) scale(1);
  background-color: #fefff9;
  border-radius: 20px;
  border: 3px solid #475633;
  z-index: 999;
  display: none;
  -webkit-animation: hide-popup 0.3s forwards;
  animation: hide-popup 0.3s forwards; }
  .popupWrap.visible {
    -webkit-animation: show-popup 0.3s;
    animation: show-popup 0.3s; }
  .popupWrap .close {
    width: 40px;
    height: 40px;
    position: absolute;
    right: 10px;
    top: -46px;
    cursor: pointer; }
    .popupWrap .close::after {
      content: "";
      position: absolute;
      width: 100%;
      height: 100%;
      display: block;
      background-color: rgba(255, 255, 255, 0.2);
      border-radius: 100%;
      left: 0;
      top: 0;
      -webkit-transform-origin: center center;
      -ms-transform-origin: center center;
      transform-origin: center center;
      -webkit-transition: -webkit-transform .2s ease-in-out;
      transition: -webkit-transform .2s ease-in-out;
      -o-transition: transform .2s ease-in-out;
      transition: transform .2s ease-in-out;
      transition: transform .2s ease-in-out, -webkit-transform .2s ease-in-out;
      -webkit-transform: scale(0);
      -ms-transform: scale(0);
      transform: scale(0); }
    .popupWrap .close:hover::after {
      -webkit-transform: scale(1);
      -ms-transform: scale(1);
      transform: scale(1); }
    .popupWrap .close span {
      position: absolute;
      left: 0;
      display: block;
      background-color: #fff;
      width: 40px;
      height: 3px;
      -webkit-transform-origin: left center;
      -ms-transform-origin: left center;
      transform-origin: left center; }
      .popupWrap .close span:nth-child(1) {
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
        top: 4px;
        left: 6px; }
      .popupWrap .close span:nth-child(2) {
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
        top: 32px;
        left: 5px; }
  .popupWrap .title {
    text-align: center;
    color: #fefff9;
    line-height: 1.1;
    height: 159px;
    background-image: url(../img/popup_titlebg.jpg);
    background-position: top center;
    background-repeat: no-repeat;
    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;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    border-radius: 17px; }
    .popupWrap .title h1 {
      margin-top: -12px; }
    .popupWrap .title h2 {
      font-size: 32px;
      color: #e3f19e; }
    .popupWrap .title::after {
      content: "";
      position: absolute;
      display: block;
      background-image: url(../img/popup_poring.png);
      background-repeat: no-repeat;
      width: 156px;
      height: 112px;
      right: 30px;
      bottom: -9px;
      z-index: 10; }
  .popupWrap .content {
    padding: 50px; }
  .popupWrap .popupBtn {
    cursor: pointer;
    background-color: #708d4a;
    font-size: 26px;
    color: #fefff9;
    border-radius: 100px;
    width: 200px;
    height: 60px;
    text-align: center;
    line-height: 60px;
    -webkit-box-shadow: -3px -3px 0 #5a7738 inset;
    box-shadow: -3px -3px 0 #5a7738 inset;
    margin: 0 auto;
    font-weight: bold; }
  .popupWrap_cosplay p {
    margin-bottom: 30px; }
  .popupWrap_register {
    padding-bottom: 20px; }
    .popupWrap_register .content {
      height: calc(80vh - 160px - 60px);
      overflow-y: scroll;
      padding: 50px 40px;
      margin: 0 10px; }
      .popupWrap_register .content::-webkit-scrollbar {
        width: 5px; }
      .popupWrap_register .content::-webkit-scrollbar-thumb {
        background: #708d4a;
        border-radius: 2.5px; }
      .popupWrap_register .content::-webkit-scrollbar-track {
        background: #daecc3; }
    .popupWrap_register .hrline {
      margin: 38px 0;
      width: 100%;
      height: 4px;
      background-image: url(../img/form_hr.png); }
    .popupWrap_register label {
      display: block;
      padding-left: 20px;
      margin-bottom: 2px;
      color: #708d4a; }
    .popupWrap_register select, .popupWrap_register input {
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      width: 100%;
      border: 1px solid #708d4a;
      border-radius: 50px;
      padding: 6px 20px; }
    .popupWrap_register select {
      background-image: url(../img/form_select_arrow.png);
      background-repeat: no-repeat;
      background-position: right 18px center; }
    .popupWrap_register .form--selectgame label {
      font-size: 22px; }
    .popupWrap_register .form--selectgame select, .popupWrap_register .form--selectgame input {
      background-color: #deedca;
      border: none; }
    .popupWrap_register .form--selectgame form > div:not(:last-child) {
      margin-bottom: 16px; }
    .popupWrap_register .form--game {
      margin-bottom: 60px; }
      .popupWrap_register .form--game .inputGroup, .popupWrap_register .form--game .selectGroup {
        margin-bottom: 16px; }
      .popupWrap_register .form--game select:focus, .popupWrap_register .form--game input:focus {
        -webkit-box-shadow: 0 0 2px #475633;
        box-shadow: 0 0 2px #475633;
        background-color: #f8ffd8; }
    .popupWrap_register .form--teamMembers {
      margin-bottom: 60px; }
    .popupWrap_register .form--rom, .popupWrap_register .form--roa, .popupWrap_register .form--rox {
      display: none; }
    .popupWrap_register .teamInfo--group {
      margin-bottom: 16px; }
      .popupWrap_register .teamInfo--group > div:first-child {
        font-size: 22px;
        padding-left: 20px;
        margin-bottom: 2px;
        color: #708d4a; }
      .popupWrap_register .teamInfo--group > div:last-child {
        background-color: #deedca;
        border-radius: 50px;
        padding: 6px 20px; }
      .popupWrap_register .teamInfo--group .invite {
        color: #f77373;
        word-break: break-all; }
    .popupWrap_register .teamInfo--delete div {
      cursor: pointer;
      background-color: #eb526a;
      border-radius: 50px;
      padding: 6px 20px;
      color: #fff;
      text-align: center; }
      .popupWrap_register .teamInfo--delete div:hover {
        background-color: #ce475b; }
      .popupWrap_register .teamInfo--delete div.reserve {
        background-color: #becbaa; }
        .popupWrap_register .teamInfo--delete div.reserve:hover {
          background-color: #a4b191; }
    .popupWrap_register .teamMembers--group {
      margin-bottom: 16px; }
      .popupWrap_register .teamMembers--group > div:first-child {
        border: 1px solid #708d4a;
        border-radius: 50px;
        padding: 4px;
        position: relative;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
        .popupWrap_register .teamMembers--group > div:first-child p {
          width: 100%; }
          .popupWrap_register .teamMembers--group > div:first-child p span {
            background-color: #708d4a;
            color: #fff;
            border-radius: 50px;
            padding: 2px 10px;
            margin-right: 6px;
            display: inline-block; }
          .popupWrap_register .teamMembers--group > div:first-child p.reserve {
            color: #c4d5a1;
            text-decoration: line-through; }
        .popupWrap_register .teamMembers--group > div:first-child .member--delete {
          background-color: #97c154;
          border-radius: 50px;
          color: #fff;
          text-align: center;
          min-width: 110px;
          padding: 2px 0;
          cursor: pointer; }
          .popupWrap_register .teamMembers--group > div:first-child .member--delete:hover {
            background-color: #86ac49; }
          .popupWrap_register .teamMembers--group > div:first-child .member--delete.reserve {
            background-color: #c1d79e; }
            .popupWrap_register .teamMembers--group > div:first-child .member--delete.reserve:hover {
              background-color: #adc08d; }
      .popupWrap_register .teamMembers--group > div:last-child {
        padding-left: 15px;
        color: #708d4a; }

@media only screen and (max-width: 1280px) {
  header {
    background-image: url(../img/kv_bg_1280.jpg);
    height: 1000px; }
    header .cha_picnicPoring {
      width: 143px;
      height: 133px;
      right: calc(50% - 198px); }
    header .cha_knight {
      width: 395px;
      height: 468px;
      left: calc(50% - 461px); }
    header .cha_gm {
      right: calc(50% - 538px); }
    header .cha_chick {
      top: 835px;
      left: calc(50% - 536px); }
  .event .bgdeco {
    background-size: contain; }
  .event .eventWrap {
    max-width: 900px;
    padding: 0 80px 80px; }
  .eventContent .bgdeco--rocker {
    display: none; }
  .eventContent .bgdeco--poring {
    bottom: 106px; }
  .eventInfo .bgdeco--devil {
    left: -84px;
    top: 99px; }
  .eventReward .bgdeco--grass5 {
    z-index: -1;
    bottom: 67px; }
  .eventReward .bgdeco--blacksmith {
    width: 339px;
    height: 543px;
    right: -59px;
    top: -167px; }
  .eventReward .bgdeco--amistr {
    z-index: 5;
    bottom: -101px;
    left: -48px; } }

@media only screen and (max-width: 1024px) {
  header {
    background-size: contain;
    height: 97vw; }
    header .logo {
      left: 1vw;
      top: 1vw; }
      header .logo img {
        width: 20vw; }
    header .slogan {
      padding-top: 2.8vw; }
      header .slogan_01 > div:not(:first-child) {
        display: none; }
      header .slogan_01 > div:first-child {
        background-size: contain;
        width: 22vw;
        height: 5.3vw; }
      header .slogan_02 img {
        max-width: 45vw; }
      header .slogan_03 {
        margin-top: -0.3vw; }
        header .slogan_03 img {
          max-width: 18vw; }
    header .cha_picnicPoring {
      width: 13vw;
      height: 12vw;
      right: 33%;
      top: 42vw; }
    header .cha_knight {
      width: 44vw;
      height: 52vw;
      left: 7%;
      top: 27vw; }
    header .cha_gm {
      width: 48vw;
      height: 66vw;
      right: -4%;
      top: 21vw; }
    header .cha_chick {
      width: 12vw;
      height: 18vw;
      left: 18%;
      top: 81vw; }
  .event .eventWrap {
    padding: 0 60px 80px; }
    .event .eventWrap::before {
      -webkit-transform: rotate(3deg);
      -ms-transform: rotate(3deg);
      transform: rotate(3deg); }
    .event .eventWrap .title {
      margin-top: -14vw; }
      .event .eventWrap .title img {
        width: 25vw; }
  .eventContent .bgdeco--poring {
    bottom: -42px;
    right: -19px; }
  .eventContent .eventWrap .step > div:not(:last-child)::after {
    left: 44px; }
  .eventContent .eventWrap .step p {
    padding-left: 80px; }
  .eventContent .eventWrap .step .btn_cosplay {
    margin: 10px 0 0 78px; }
  .eventInfo .bgdeco--devil {
    display: none; }
  .eventInfo .eventWrap::after {
    right: 13px;
    bottom: -82px; }
  .eventReward .bgdeco--blacksmith {
    display: none; }
  .eventReward .bgdeco--amistr {
    width: 307px;
    height: 247px;
    bottom: -120px; }
  .eventReward .eventWrap .gameReward .itemList {
    padding: 60px 40px; } }

@media only screen and (max-width: 768px) {
  h4 {
    font-size: 22px; }
  .event .eventWrap {
    padding: 0 7vw 80px; }
    .event .eventWrap::before {
      -webkit-transform: rotate(1.5deg);
      -ms-transform: rotate(1.5deg);
      transform: rotate(1.5deg); }
    .event .eventWrap .title {
      margin-top: -19vw; }
      .event .eventWrap .title img {
        width: 32vw; }
  .eventContent .bgdeco--poring {
    width: 175px;
    height: 220px; }
  .eventContent .eventWrap::after {
    background-size: contain;
    background-repeat: no-repeat;
    width: 157px;
    height: 199px; }
  .eventContent .eventWrap .step > div .stepTag {
    border-width: 3px; }
  .eventInfo .eventWrap {
    padding: 0 5vw 80px; }
    .eventInfo .eventWrap::after {
      background-size: contain;
      background-repeat: no-repeat;
      width: 166px;
      height: 156px; }
    .eventInfo .eventWrap .infoContainer > div {
      padding: 15px 15px 0;
      width: 48%; }
      .eventInfo .eventWrap .infoContainer > div:nth-child(3) {
        width: 100%; }
      .eventInfo .eventWrap .infoContainer > div:nth-child(4) {
        padding: 30px 20px; }
    .eventInfo .eventWrap .register {
      margin-bottom: 4%; }
      .eventInfo .eventWrap .register_btn {
        max-width: calc(50% - 10px); }
        .eventInfo .eventWrap .register_btn--leader {
          margin-right: 10px; }
    .eventInfo .eventWrap .search .search_btn {
      width: 46%;
      max-width: 250px; }
      .eventInfo .eventWrap .search .search_btn img {
        width: 100%; }
  .eventReward .eventWrap {
    padding: 0 5vw 80px; }
    .eventReward .eventWrap .gameReward .itemList {
      padding: 40px 20px; }
      .eventReward .eventWrap .gameReward .itemList .item .img {
        width: 70px;
        height: 70px;
        border: 3px solid #e99aab; }
        .eventReward .eventWrap .gameReward .itemList .item .img img {
          max-width: 100%; }
  .popupWrap {
    width: 90%;
    max-width: 600px; }
    .popupWrap .title {
      background-size: cover;
      background-position: center bottom; } }

@media only screen and (max-width: 580px) {
  h1 {
    font-size: 34px; }
  h2 {
    font-size: 30px; }
  nav {
    display: block;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 9999999;
    left: -80vw;
    -webkit-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out; }
    nav.show {
      left: 0; }
    nav .container {
      width: 80vw;
      height: 100vh;
      background-color: rgba(64, 74, 44, 0.95);
      position: relative; }
      nav .container .controller {
        position: absolute;
        right: -46px;
        top: 10px;
        cursor: pointer;
        background-color: #516921;
        padding: 8px; }
        nav .container .controller span {
          -webkit-transition: .5s;
          -o-transition: .5s;
          transition: .5s;
          display: block;
          margin-bottom: 5px;
          width: 30px;
          height: 4px;
          background-color: #fff;
          border-radius: 4px;
          position: relative;
          left: 0;
          -webkit-transform-origin: left center;
          -ms-transform-origin: left center;
          transform-origin: left center; }
          nav .container .controller span:last-child {
            margin-bottom: 0; }
        nav .container .controller.show span {
          -webkit-transition: .5s;
          -o-transition: .5s;
          transition: .5s; }
          nav .container .controller.show span:nth-child(1) {
            -webkit-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
            transform: rotate(45deg);
            top: -1px;
            left: 4px; }
          nav .container .controller.show span:nth-child(2) {
            width: 0; }
          nav .container .controller.show span:nth-child(3) {
            -webkit-transform: rotate(-45deg);
            -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
            top: 2px;
            left: 4px; }
      nav .container .logo {
        text-align: center;
        padding-top: 5vw; }
        nav .container .logo a {
          display: inline-block; }
        nav .container .logo img {
          width: 34vw; }
      nav .container .menu ul {
        max-width: 250px;
        margin: 5vw auto 0;
        text-align: center; }
        nav .container .menu ul li {
          color: #fefff9;
          font-size: 24px;
          font-weight: bold;
          margin-bottom: 4vw;
          cursor: pointer;
          position: relative; }
          nav .container .menu ul li::after {
            content: "";
            display: block;
            width: 100%;
            height: 1px;
            background-color: #687450;
            position: absolute;
            bottom: -2.5vw; }
          nav .container .menu ul li:last-child::after {
            display: none; }
  header {
    background-image: url(../img/kv_bg_580.jpg);
    height: 148vw;
    background-size: cover; }
    header .logo {
      display: none; }
    header .slogan {
      display: none; }
    header .cha {
      display: none; }
  .event {
    margin-bottom: 10vw; }
    .event .eventWrap .title {
      margin-top: -23vw; }
      .event .eventWrap .title img {
        width: 40vw; }
  .eventContent .eventWrap::after {
    bottom: -62px;
    width: 126px;
    height: 159px;
    left: -72px; }
  .eventContent .bgdeco--poring {
    width: 134px;
    height: 169px;
    bottom: -11px; }
  .eventInfo .eventWrap::after {
    width: 113px;
    height: 106px;
    bottom: -64px; }
  .eventInfo .eventWrap .infoContainer > div:nth-child(4) {
    padding: 40px 20px 30px; }
    .eventInfo .eventWrap .infoContainer > div:nth-child(4) p {
      margin-bottom: 10px; }
  .eventInfo .eventWrap .loginContainer .login_icons > div {
    width: 50px;
    height: 50px;
    margin: 0 2px; }
  .eventInfo .eventWrap .register_btn {
    width: 80%;
    max-width: 300px; }
    .eventInfo .eventWrap .register_btn--leader {
      margin-right: 0;
      margin-bottom: 10px; }
  .eventInfo .eventWrap .search .search_btn {
    width: 60%; }
  .eventReward .bgdeco--amistr {
    width: 240px;
    height: 193px;
    bottom: -60px; }
  .eventReward .eventWrap .gameBtns {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    .eventReward .eventWrap .gameBtns > div {
      width: 45%;
      margin: 6px !important; }
      .eventReward .eventWrap .gameBtns > div:not(:last-child) {
        margin-right: 0; }
      .eventReward .eventWrap .gameBtns > div.active {
        -webkit-filter: drop-shadow(0 0 2px #d88383);
        filter: drop-shadow(0 0 2px #d88383); }
        .eventReward .eventWrap .gameBtns > div.active::after {
          display: none; }
  .eventReward .eventWrap .gameReward .itemList {
    padding: 40px 20px; }
    .eventReward .eventWrap .gameReward .itemList .item:not(:last-child) {
      margin-bottom: 20px; }
    .eventReward .eventWrap .gameReward .itemList .item .img {
      border: 2px solid #e99aab;
      margin-bottom: 10px; }
    .eventReward .eventWrap .gameReward .itemList .item .text {
      width: 100%;
      text-align: center; }
      .eventReward .eventWrap .gameReward .itemList .item .text .itemName {
        text-align: center; }
  .notice .noticeWrap {
    padding: 0 5vw; }
  .notice_title {
    margin-bottom: 20px; }
    .notice_title img {
      width: 35vw; }
  .popupWrap {
    max-width: 90vw; }
    .popupWrap .content {
      padding: 40px 30px; }
    .popupWrap .title::after {
      background-size: contain;
      background-repeat: no-repeat;
      width: 120px;
      height: 86px;
      bottom: -22px; }
    .popupWrap_register .content {
      padding: 30px 3vw; }
    .popupWrap_register .teamMembers--group > div:first-child {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      border-radius: 15px;
      padding: 14px; }
      .popupWrap_register .teamMembers--group > div:first-child p {
        margin-bottom: 10px; }
      .popupWrap_register .teamMembers--group > div:first-child .member--delete {
        padding: 4px 10px; }
    .popupWrap_register .teamMembers--group > div:last-child {
      padding: 0 8px; } }

@media only screen and (max-width: 480px) {
  h2 {
    font-size: 22px; }
  h4 {
    font-size: 18px; }
  .eventContent .eventWrap .step {
    counter-reset: step; }
    .eventContent .eventWrap .step > div::after {
      display: none !important; }
    .eventContent .eventWrap .step > div:nth-child(1) .stepTag h4::before {
      color: #fce3a8; }
    .eventContent .eventWrap .step > div:nth-child(2) .stepTag h4::before {
      color: #fbda8c; }
    .eventContent .eventWrap .step > div:nth-child(3) .stepTag h4::before {
      color: #facb60; }
    .eventContent .eventWrap .step > div:nth-child(4) .stepTag h4::before {
      color: #f9bc29; }
    .eventContent .eventWrap .step > div:nth-child(5) .stepTag h4::before {
      color: #f9b500; }
    .eventContent .eventWrap .step .stepTag h4 {
      white-space: nowrap; }
      .eventContent .eventWrap .step .stepTag h4::before {
        counter-increment: step;
        display: inline-block;
        content: counter(step);
        background-color: #fff;
        border-radius: 6px 14px 6px 14px;
        padding: 0 15px;
        margin-right: 15px; }
      .eventContent .eventWrap .step .stepTag h4 span {
        display: none; }
    .eventContent .eventWrap .step p {
      padding-left: 0; }
    .eventContent .eventWrap .step .btn_cosplay {
      margin: 10px 0 0 0; }
  .popupWrap .title {
    background-position: center bottom;
    height: 137px; }
    .popupWrap .title::after {
      -webkit-transform: scaleX(-1);
      -ms-transform: scaleX(-1);
      transform: scaleX(-1);
      right: inherit;
      left: 15px;
      width: 93px;
      height: 68px;
      display: none; }
    .popupWrap .title h2 {
      font-size: 26px; } }
