/* Scss Document */
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

ul, ol {
  list-style: none;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

a {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

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

/* change border colour to suit your needs
*/
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

/* common-------------------------- */
html {
  font-size: 62.5%;
}

body {
  font-family: "Noto Sans JP", "Noto Sans Japanese", sans-serif;
  line-height: 1.4;
  font-size: 1.6rem;
  background: url(../images/bg.png) no-repeat 50% 0 #000000;
  background-size: cover;
  background-attachment: fixed;
  color: rgba(255, 255, 255, 0.9);
}
@media screen and (max-width: 768px) {
  body {
    background: #000000;
    font-size: 1.4rem;
  }
}

img {
  max-width: 100%;
  height: auto;
}

#contents {
  width: 100%;
  height: 100vh;
  -ms-scroll-snap-type: y mandatory;
      scroll-snap-type: y mandatory;
  overflow: scroll;
}
@media screen and (max-width: 768px) {
  #contents {
    background: url(../images/bg_sp.png) no-repeat 50% 0 #000000;
    background-size: 150%;
    height: auto;
  }
}

@media screen and (max-width: 768px) {
  .bottom-content {
    background: url(../images/bg_sp02.png) no-repeat 50% 0;
    background-size: cover;
  }
}

.blur {
  -webkit-backdrop-filter: blur(3px);
          backdrop-filter: blur(3px);
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(rgba(0, 0, 0, 0.6)));
  background: linear-gradient(180deg, transparent, rgba(0, 0, 0, 0.6));
}
@media screen and (max-width: 768px) {
  .blur {
    background: rgba(0, 0, 0, 0.55);
  }
}

.scroll {
  scroll-snap-align: start;
}

.mainimg, .catchcopy {
  height: 100vh;
}

.youtube {
  width: 100%;
  padding-bottom: 56.25%;
  position: relative;
}
.youtube iframe {
  width: 100%;
  height: 100%;
  position: absolute;
}

.logo {
  width: 100%;
  max-width: 500px;
}
@media screen and (min-width: 2559px) {
  .logo {
    max-width: 700px;
  }
}
@media screen and (max-width: 1200px) {
  .logo {
    max-width: 400px;
  }
}
@media screen and (max-width: 1024px) {
  .logo {
    max-width: 300px;
  }
}
@media screen and (max-width: 768px) {
  .logo {
    max-width: 190px;
  }
}

.btn {
  color: #fff;
  margin: 2rem auto;
  display: block;
  width: 300px;
  border-radius: 100px;
  font-size: 1.8rem;
  padding: 10px 3rem;
  z-index: 1;
  font-weight: 700;
}
.btn.btn-line {
  border: solid 2px #fff;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .btn.btn-line {
    background: #fff;
    color: #000;
  }
}
.btn.btn-line:after {
  content: "";
  position: absolute;
  z-index: -1;
  display: block;
  top: 0;
  width: 100%;
  height: 100%;
  left: -100%;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.btn.btn-line:hover {
  color: #000;
}
.btn.btn-line:hover:after {
  left: 0;
  background: #fff;
}

.tit-2 {
  font-size: 4.5rem;
  font-weight: 700;
  position: relative;
  z-index: 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .tit-2 {
    font-size: 2.5rem;
  }
}
.tit-2:after {
  position: absolute;
  -webkit-text-stroke: 1px #FF44B6;
  text-stroke: 1px #FF44B6;
  left: -2px;
  top: 2px;
  color: transparent;
  z-index: -2;
}
.tit-2:before {
  position: absolute;
  -webkit-text-stroke: 1px #0052E0;
  text-stroke: 1px #0052E0;
  right: -2px;
  top: -2px;
  color: transparent;
  z-index: -1;
}

.sub-txt {
  font-size: 1.4rem;
  margin: 5px 0 0;
  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;
  position: relative;
}
.sub-txt .ic {
  font-size: 55%;
  padding: 0 5px;
}
.sub-txt .ic.left {
  color: #FF44B6;
}
.sub-txt .ic.right {
  color: #0052E0;
}

/* mainimg-------------------------- */
@media screen and (max-width: 768px) {
  .mainimg {
    height: 90vh;
  }
}
@media screen and (max-width: 767px) {
  .mainimg {
    height: 470px;
  }
}

/* catchcopy-------------------------- */
@media screen and (max-width: 768px) {
  .catchcopy {
    height: auto;
  }
}

/* overview-------------------------- */
.overview {
  width: 100%;
  text-align: center;
  position: relative;
  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-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 25rem 0 40rem;
}
@media screen and (max-width: 768px) {
  .overview {
    padding: 20rem 0 10rem;
  }
}
.overview:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  height: 100%;
  width: 100%;
  background: url(../images/bg_stardust.png) no-repeat 50% 50%;
  background-size: cover;
  z-index: -1;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 70%, 0 100%);
          clip-path: polygon(0 0, 100% 0, 100% 70%, 0 100%);
  mix-blend-mode: screen;
}
@media screen and (max-width: 768px) {
  .overview:after {
    -webkit-clip-path: none;
            clip-path: none;
  }
}
.overview h2 {
  color: #FFF;
  text-align: center;
  text-shadow: 0px 1.3333333731px 4.6666669846px rgba(0, 0, 0, 0.71);
  font-size: 4.8rem;
  font-style: normal;
  font-weight: 700;
  margin-bottom: 3rem;
  letter-spacing: 1px;
}
@media screen and (max-width: 768px) {
  .overview h2 {
    font-size: 2.4rem;
  }
}
.overview p {
  text-shadow: 0px 1px 3.5px rgba(0, 0, 0, 0.71);
  font-size: 1.8rem;
  line-height: 3.4rem;
  margin-bottom: 3rem;
  letter-spacing: 1px;
}
@media screen and (max-width: 768px) {
  .overview p {
    font-size: 1.4rem;
    margin-bottom: 1rem;
    padding: 0 20px;
  }
}
.overview .bnr_group {
  width: 630px;
  margin: 3rem 0 0;
}
@media screen and (max-width: 768px) {
  .overview .bnr_group {
    width: 80%;
  }
}
.overview .bnr_group a {
  display: block;
  width: 48%;
}
@media screen and (max-width: 768px) {
  .overview .bnr_group a {
    width: 100%;
    margin-bottom: 10px;
  }
}

/* hado-------------------------- */
.HADO {
  -webkit-transform: translateY(-30%);
          transform: translateY(-30%);
  position: relative;
  z-index: 0;
  padding: 22rem 20px 17rem;
}
.HADO:after {
  content: "";
  position: absolute;
  left: 0;
  top: -30px;
  -webkit-clip-path: polygon(0 32.5%, 100% 0, 100% 70%, 0 100%);
          clip-path: polygon(0 32.5%, 100% 0, 100% 70%, 0 100%);
  z-index: -1;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
}
@media screen and (max-width: 768px) {
  .HADO {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    padding: 10rem 20px;
  }
  .HADO:after {
    -webkit-clip-path: none;
            clip-path: none;
  }
}
.HADO .tit-2:after, .HADO .tit-2:before {
  content: "WHAT IS HADO?";
}
.HADO .lead {
  font-size: 170%;
  font-weight: 700;
  margin: 5rem 0 2rem;
}
@media screen and (max-width: 768px) {
  .HADO .lead {
    font-size: 120%;
    font-weight: 400;
    margin: 2rem 0 1rem;
  }
}
.HADO .video-box {
  margin: 0 auto;
  max-width: 1000px;
}

/* schedule-------------------------- */
.schedule {
  -webkit-transform: translateY(-63rem);
          transform: translateY(-63rem);
  position: relative;
  z-index: -1;
  padding: 30rem 0 40rem;
  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-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.schedule:after {
  content: "";
  position: absolute;
  left: 0;
  top: -30px;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: linear-gradient(259deg, #112788 13.32%, #48153A 82.58%);
  opacity: 0.7278;
  -webkit-clip-path: polygon(0 22.5%, 100% 0, 100% 70%, 0 100%);
          clip-path: polygon(0 22.5%, 100% 0, 100% 70%, 0 100%);
}
@media screen and (max-width: 1055px) {
  .schedule {
    -webkit-transform: translateY(-65.5rem);
            transform: translateY(-65.5rem);
  }
  .schedule:after {
    -webkit-clip-path: polygon(0 25.5%, 100% 0, 100% 70%, 0 100%);
            clip-path: polygon(0 25.5%, 100% 0, 100% 70%, 0 100%);
  }
}
@media screen and (max-width: 768px) {
  .schedule {
    padding: 5rem 30px 8rem;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    z-index: 2;
  }
  .schedule:after {
    -webkit-clip-path: none;
            clip-path: none;
  }
}
.schedule .title_group {
  -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;
  border-bottom: solid 1px #fff;
  padding-bottom: 20px;
  margin-bottom: 35px;
}
.schedule h2 {
  font-size: 5.5rem;
  font-weight: 700;
  margin-right: 30px;
}
@media screen and (max-width: 768px) {
  .schedule h2 {
    font-size: 3.5rem;
    margin-bottom: 20px;
  }
}
.schedule .schedule_list {
  font-size: 1.8rem;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .schedule .schedule_list {
    font-size: 1.4rem;
  }
}
.schedule .schedule_list span {
  font-size: 1.4rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .schedule .schedule_list span {
    font-size: 1rem;
  }
}
.schedule .silver_text {
  background: -webkit-gradient(linear, left top, left bottom, from(#BBB), color-stop(45.31%, #FFF), color-stop(97.4%, #9A9A9A));
  background: linear-gradient(180deg, #BBB 0%, #FFF 45.31%, #9A9A9A 97.4%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 4rem;
  font-weight: 900;
  margin-bottom: 4.5rem;
}
.schedule .silver_text:lang(en) {
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .schedule .silver_text {
    font-size: 2rem;
    margin-bottom: 60px;
  }
  .schedule .silver_text:lang(en) {
    font-size: 1.8rem;
  }
}
.schedule .openinfo_list {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 80%;
  max-width: 1200px;
}
@media screen and (max-width: 768px) {
  .schedule .openinfo_list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
  }
}
.schedule .openinfo_list > li {
  width: calc(50% - 15px);
  border-radius: 1rem;
  padding: 7px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .schedule .openinfo_list > li {
    width: 100%;
    margin-bottom: 8rem;
  }
}
.schedule .openinfo_list > li .grad-border-content {
  border-radius: 0.5rem;
  padding: 30px 20px;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .schedule .openinfo_list > li .grad-border-content {
    padding-bottom: 50px;
  }
}
.schedule .openinfo_list > li .bubble {
  position: absolute;
  top: -20px;
  left: -10px;
  background: #ED1897;
  padding: 5px 15px 7px;
  font-weight: 700;
  font-size: 2rem;
}
.schedule .openinfo_list > li .bubble::after {
  content: "";
  position: absolute;
  background: #ED1897;
  width: 10px;
  height: 10px;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%);
          clip-path: polygon(0 0, 100% 0, 100% 100%);
  bottom: -9px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.schedule .openinfo_list > li h3 {
  font-size: 3rem;
  text-align: center;
  font-weight: 700;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 5px;
  padding: 0 20px 5px;
}
.schedule .openinfo_list > li h3:lang(en) {
  font-size: 1.8rem;
}
.schedule .openinfo_list > li p {
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.591rem;
  margin-bottom: 20px;
}
.schedule .openinfo_list > li p:lang(en) {
  font-size: 1.2rem;
  letter-spacing: 0;
}
.schedule .openinfo_list > li img {
  width: 70%;
  display: block;
  margin: 0 auto;
}
.schedule .openinfo_list > li .btn_openinfo {
  border-radius: 100px;
  padding: 6px;
  display: block;
  text-align: center;
  width: 250px;
  position: absolute;
  bottom: -30px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  text-decoration: none;
  font-weight: 700;
  font-size: 1.8rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.schedule .openinfo_list > li .btn_openinfo:lang(en) {
  font-size: 1.5rem;
}
.schedule .openinfo_list > li .btn_openinfo span {
  background: #060606;
  display: block;
  border-radius: 9rem;
  padding: 15px 10px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.schedule .openinfo_list > li .btn_openinfo:hover {
  color: #060606 !important;
}
.schedule .openinfo_list > li .btn_openinfo:hover span {
  background: none;
}
.schedule .openinfo_list > li.group_kansen {
  background: -webkit-gradient(linear, left top, right top, from(#F71980), to(#C608FF));
  background: linear-gradient(to right, #F71980 0%, #C608FF 100%);
  border-image-slice: 1;
  -webkit-box-shadow: 0px 0px 15px 3px rgba(153, 0, 147, 0.5);
          box-shadow: 0px 0px 15px 3px rgba(153, 0, 147, 0.5);
}
.schedule .openinfo_list > li.group_kansen .grad-border-content {
  background: url(../images/bg_kansen.png) no-repeat 0 0;
  background-size: cover;
}
.schedule .openinfo_list > li.group_kansen h3 {
  border-bottom: solid 5px;
  -o-border-image: linear-gradient(270deg, #F71980 0%, #C608FF 100%);
     border-image: -webkit-gradient(linear, right top, left top, from(#F71980), to(#C608FF));
     border-image: linear-gradient(270deg, #F71980 0%, #C608FF 100%);
  border-image-slice: 1;
}
.schedule .openinfo_list > li.group_kansen .btn_openinfo {
  background: -webkit-gradient(linear, left top, right top, from(#F71980), to(#C608FF));
  background: linear-gradient(to right, #F71980 0%, #C608FF 100%);
  color: #ED1897;
}
.schedule .openinfo_list > li.group_youtube {
  background: -webkit-gradient(linear, left top, right top, from(#1957F7), to(#6608FF));
  background: linear-gradient(to right, #1957F7 0%, #6608FF 100%);
  border-image-slice: 1;
  -webkit-box-shadow: 0px 0px 15px 3px rgba(30, 0, 212, 0.5);
          box-shadow: 0px 0px 15px 3px rgba(30, 0, 212, 0.5);
}
.schedule .openinfo_list > li.group_youtube .grad-border-content {
  background: url(../images/bg_youtube.png) no-repeat 0 0;
  background-size: cover;
}
.schedule .openinfo_list > li.group_youtube h3 {
  border-bottom: solid 5px;
  -o-border-image: linear-gradient(270deg, #1957F7 0%, #6608FF 100%);
     border-image: -webkit-gradient(linear, right top, left top, from(#1957F7), to(#6608FF));
     border-image: linear-gradient(270deg, #1957F7 0%, #6608FF 100%);
  border-image-slice: 1;
}
.schedule .openinfo_list > li.group_youtube .btn_openinfo {
  background: -webkit-gradient(linear, left top, right top, from(#1957F7), to(#6608FF));
  background: linear-gradient(to right, #1957F7 0%, #6608FF 100%);
  color: #306AFF;
}
.schedule .openinfo_list > li .info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 250px;
  margin: 10px auto 20px;
}
@media screen and (max-width: 768px) {
  .schedule .openinfo_list > li .info {
    width: 210px;
  }
  .schedule .openinfo_list > li .info:lang(en) {
    width: 240px;
  }
}
.schedule .openinfo_list > li .info a {
  font-size: 70%;
  color: #ED1897;
  margin-left: 5px;
}
.schedule .openinfo_list > li .info li {
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 5px;
}
.schedule .openinfo_list > li .info li:lang(en) {
  font-size: 1.3rem;
  margin-bottom: 8px;
}
@media screen and (max-width: 768px) {
  .schedule .openinfo_list > li .info li {
    font-size: 1.2rem;
    margin-bottom: 10px;
  }
}
.schedule .openinfo_list > li .info li:first-child {
  width: 100%;
}
.schedule .openinfo_list > li .info span {
  border: solid 1px #fff;
  font-size: 1.2rem;
  padding: 1px 10px;
  margin-right: 10px;
}
@media screen and (max-width: 768px) {
  .schedule .openinfo_list > li .info span {
    font-size: 1rem;
  }
}

/* presenters-------------------------- */
.presenters {
  position: relative;
  padding: 40rem 0 50rem;
  margin-top: -73.5rem;
}
.presenters:after {
  content: "";
  position: absolute;
  left: 0;
  top: -30px;
  -webkit-clip-path: polygon(0 34%, 100% 0, 100% 60%, 0 100%);
          clip-path: polygon(0 34%, 100% 0, 100% 60%, 0 100%);
  z-index: -1;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
}
.presenters .tit-2:after, .presenters .tit-2:before {
  content: "PRESENTERS";
}
.presenters > div {
  width: 80%;
  margin: 0 auto;
  max-width: 1100px;
}
@media screen and (max-width: 1200px) {
  .presenters .tit-2 {
    font-size: 3rem;
  }
}
@media screen and (max-width: 1055px) {
  .presenters {
    margin-top: -106.5rem;
  }
  .presenters .tit-2 {
    margin-bottom: 5rem;
  }
  .presenters:after {
    -webkit-clip-path: polygon(0 30.5%, 100% 0, 100% 60%, 0 100%);
            clip-path: polygon(0 30.5%, 100% 0, 100% 60%, 0 100%);
  }
}
@media screen and (max-width: 768px) {
  .presenters {
    margin-top: -19px;
    padding: 5rem 0 8rem;
    margin-bottom: 8rem;
  }
  .presenters:after {
    -webkit-clip-path: none;
            clip-path: none;
  }
}
.presenters .rhombus {
  width: 100%;
  height: auto;
  overflow: hidden;
}
.presenters .cast_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 650px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 768px) {
  .presenters .cast_list {
    width: 100%;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.presenters .cast_list li {
  width: 33%;
}
@media screen and (max-width: 768px) {
  .presenters .cast_list li {
    width: 50%;
    margin-bottom: 2rem;
  }
}
@media screen and (max-width: 414px) {
  .presenters .cast_list li {
    width: 100%;
    margin-bottom: 5rem;
  }
}
.presenters .cast_list .name {
  background: #000;
  border-bottom: 2px solid;
  -o-border-image: linear-gradient(90deg, #FF44B6 0%, #0052E0 101.72%);
     border-image: -webkit-gradient(linear, left top, right top, from(#FF44B6), color-stop(101.72%, #0052E0));
     border-image: linear-gradient(90deg, #FF44B6 0%, #0052E0 101.72%);
  border-image-slice: 1;
  width: 160px;
  padding: 5px 0;
  z-index: 2;
  position: relative;
  -webkit-transform: translate(-6px, -16px);
          transform: translate(-6px, -16px);
  font-size: 1.4rem;
  margin: 0 auto;
}
.presenters .cast_list .name:lang(en) {
  text-align: center;
}
.presenters .cast_list .name span {
  background: #FF44B6;
  padding: 0 10px;
  margin-right: 15px;
}
.presenters .cast_list .name span:lang(en) {
  display: block;
  text-align: center;
}
.presenters .cast_list li:nth-of-type(2) .name span {
  background: #0052E0;
}

/* finalist-------------------------- */
.finalist {
  padding: 6rem 0;
}
.finalist .tit-2:after, .finalist .tit-2:before {
  content: "FINALIST";
}
.finalist .lead {
  font-size: 2.2rem;
  font-weight: 600;
  border-bottom: solid 6px;
  -o-border-image: linear-gradient(90deg, #FF44B6 0%, #0052E0 101.72%);
     border-image: -webkit-gradient(linear, left top, right top, from(#FF44B6), color-stop(101.72%, #0052E0));
     border-image: linear-gradient(90deg, #FF44B6 0%, #0052E0 101.72%);
  border-image-slice: 1;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 3rem auto;
  padding-bottom: 1rem;
}
.finalist .lead:lang(en) {
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .finalist .lead {
    font-size: 1.8rem;
  }
  .finalist .lead:lang(en) {
    font-size: 1.2rem;
    text-align: center;
    padding: 0 30px 1rem;
  }
}
.finalist .country_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 70%;
  margin: 0 auto;
  min-width: 760px;
  max-width: 900px;
}
.finalist .country_list li {
  width: 25%;
  font-size: 1.4rem;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .finalist .country_list {
    min-width: auto;
  }
  .finalist .country_list li {
    width: 50%;
  }
}
@media screen and (max-width: 414px) {
  .finalist .country_list {
    width: 90%;
  }
}
.finalist .team_list {
  width: 80%;
  margin: 50px auto 0;
}
.finalist .team_list li {
  margin-bottom: 25px;
}
.finalist .team_list li .team_name {
  font-size: 1.4rem;
  text-align: center;
  margin-top: 5px;
}
.finalist .team_list li .flag-icon {
  margin-right: 5px;
}

/*prize-------------------------------*/
.prize {
  position: relative;
  padding: 13rem 0 17rem;
}
.prize .sub-txt {
  font-size: 3.4rem;
}
@media screen and (max-width: 768px) {
  .prize .sub-txt {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .prize {
    padding: 4rem 10px 8rem;
  }
}
.prize:after {
  content: "";
  position: absolute;
  left: 0;
  top: -30px;
  -webkit-clip-path: polygon(0 32.5%, 100% 0, 100% 70%, 0 100%);
          clip-path: polygon(0 32.5%, 100% 0, 100% 70%, 0 100%);
  z-index: -1;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
}
@media screen and (max-width: 768px) {
  .prize:after {
    -webkit-clip-path: none;
            clip-path: none;
  }
}
.prize .first {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(22.46%, #574C23), color-stop(52.61%, #FFF8E0), color-stop(87.28%, #665A2F));
  background: linear-gradient(180deg, #574C23 22.46%, #FFF8E0 52.61%, #665A2F 87.28%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 900;
  font-size: 6rem;
  width: 450px;
  margin: 0 auto 10px;
  border-bottom: solid 1px #fff;
  text-align: center;
  padding-bottom: 5px;
}
@media screen and (max-width: 768px) {
  .prize .first {
    width: 80%;
  }
}
@media screen and (max-width: 414px) {
  .prize .first {
    width: 90%;
    font-size: 4rem;
  }
}
.prize .first span {
  font-size: 80%;
}
.prize .under_block {
  width: 450px;
  margin: 0 auto;
  font-weight: 900;
  font-size: 3rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .prize .under_block {
    width: 80%;
  }
}
@media screen and (max-width: 414px) {
  .prize .under_block {
    width: 90%;
  }
}
.prize .second {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(13.88%, #BBB), color-stop(48.04%, #FFF), color-stop(87.3%, #9A9A9A));
  background: linear-gradient(180deg, #BBB 13.88%, #FFF 48.04%, #9A9A9A 87.3%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.prize .third {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(20.03%, #624F48), color-stop(51.4%, #FFF), color-stop(87.46%, #514844));
  background: linear-gradient(180deg, #624F48 20.03%, #FFF 51.4%, #514844 87.46%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.prize .mvp_list {
  width: 330px;
  margin: 2rem auto 1rem;
  font-weight: 600;
}
.prize .mvp_list:lang(en) {
  width: 380px;
}
.prize .mvp_list li {
  margin-bottom: 10px;
}
@media screen and (max-width: 414px) {
  .prize .mvp_list {
    width: 280px;
  }
  .prize .mvp_list:lang(en) {
    width: 280px;
    font-size: 1.2rem;
  }
}

/*news------------------------------*/
.news {
  position: relative;
  padding: 23rem 0 35rem;
  margin-top: -20rem;
  mix-blend-mode: screen;
}
.news:after {
  content: "";
  position: absolute;
  left: 0;
  top: -30px;
  -webkit-clip-path: polygon(0 19.5%, 100% 0, 100% 75%, 0 100%);
          clip-path: polygon(0 19.5%, 100% 0, 100% 75%, 0 100%);
  z-index: -1;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, right top, left top, color-stop(1.77%, rgba(81, 202, 247, 0.13)), color-stop(50%, rgba(224, 11, 11, 0.13)), color-stop(102.48%, rgba(244, 83, 225, 0.13)));
  background: linear-gradient(270deg, rgba(81, 202, 247, 0.13) 1.77%, rgba(224, 11, 11, 0.13) 50%, rgba(244, 83, 225, 0.13) 102.48%);
  -webkit-backdrop-filter: blur(18.5165996552px);
          backdrop-filter: blur(18.5165996552px);
}
@media screen and (max-width: 1055px) {
  .news:after {
    -webkit-clip-path: polygon(0 21.5%, 100% 0, 100% 75%, 0 100%);
            clip-path: polygon(0 21.5%, 100% 0, 100% 75%, 0 100%);
  }
}
@media screen and (max-width: 768px) {
  .news {
    margin-top: 0;
    padding: 5rem 0;
  }
  .news:after {
    -webkit-clip-path: none;
            clip-path: none;
  }
}
.news .tit-2:after, .news .tit-2:before {
  content: "NEWS";
}

#wordpress_blog {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 80%;
  margin: 5rem auto 0;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  max-width: 1200px;
}
#wordpress_blog .wp-article {
  cursor: pointer !important;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  width: calc(33.3333333333% - 20px);
}
@media screen and (max-width: 768px) {
  #wordpress_blog .wp-article {
    width: 100%;
    margin-bottom: 4rem;
  }
}
#wordpress_blog .wp-article a {
  cursor: pointer !important;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
#wordpress_blog .wp-article a:hover {
  opacity: 0.9;
}
#wordpress_blog .wp-article:hover {
  opacity: 0.8;
}
#wordpress_blog .post-date {
  color: #ccc;
  font-size: 1.4rem;
  margin-bottom: 5px;
}
#wordpress_blog .post-title {
  color: #fff;
  text-decoration: none;
  font-size: 1.5rem;
}
#wordpress_blog .eyecatch {
  background-color: #000;
  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;
  margin-bottom: 5px;
}
#wordpress_blog .eyecatch img {
  height: 15vw;
  width: auto;
  -o-object-fit: contain;
     object-fit: contain;
  max-height: 212px;
}
@media screen and (max-width: 768px) {
  #wordpress_blog .eyecatch img {
    height: 45vw;
  }
}

/* contact-------------------------- */
.contact {
  padding: 80px 0 200px;
}
@media screen and (max-width: 768px) {
  .contact {
    padding: 70px 0 120px;
    z-index: 2;
    position: relative;
  }
}
.contact .tit-2:after, .contact .tit-2:before {
  content: "CONTACT";
}

.sponsor {
  background: #ccc;
  padding: 10px;
}
.sponsor h3 {
  font-size: 1.2rem;
  border-bottom: solid 1px #999;
  color: #161616;
}
.sponsor ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 20px 0;
}
.sponsor li {
  width: 10%;
}
@media screen and (max-width: 768px) {
  .sponsor li {
    width: 25%;
  }
}

.select-lang {
  position: fixed;
  right: 10px;
  top: 10px;
  z-index: 9999;
}

.selectbox-lang {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}
.selectbox-lang:after {
  position: absolute;
  right: 10px;
  width: 10px;
  height: 7px;
  background-color: #fff;
  -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
          clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
  pointer-events: none;
}
.selectbox-lang select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: 2.8em;
  padding: 0.4em calc(0.8em + 30px) 0.4em 0.7em;
  border: none;
  border-bottom: 2px solid #cccccc;
  background-color: transparent;
  color: #fff;
  font-size: 0.8rem;
  cursor: pointer;
  outline: none;
}
.selectbox-lang select::focus, .selectbox-lang select::focus-visible {
  outline: none;
}
@media screen and (max-width: 768px) {
  .selectbox-lang select {
    font-size: 1.2rem;
  }
}

.flag-tw {
  background: url(../images/flag_tw.png) no-repeat 0 0;
  background-size: contain;
  position: relative;
  display: inline-block;
  width: 1.33333333em;
  line-height: 1em;
  height: 20px;
}/*# sourceMappingURL=style.css.map */