h2,
section h2 {
  font-weight: normal !important; }

h3,
section h3 {
  font-weight: normal !important; }

h4 {
  font-weight: normal !important; }

.gh__header {
  display: none; }

#menu ul li a,
#menu-bar .signup {
  text-transform: uppercase; }

.btn-white-empty:hover {
  color: #ffffff !important;
  background-color: #fff !important;
  border-color: #fff !important; }

#hero .kv .bg {
  top: 0; }

#hero .kv .group {
  left: 33%;
  width: 630px; }

#hero .kv .title {
  width: 80%;
  max-width: 1000px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 auto;
  text-align: center;
  top: 120px;
  left: auto;
  right: auto; }
  #hero .kv .title h2 {
    font-size: 6vw;
    margin-top: -30px;
    font-weight: 500 !important; }

#hero .kv .date {
  top: 275px; }

.fromzero {
  height: 250px;
  bottom: 220px;
  left: 0; }

.tohero {
  height: 250px;
  bottom: 220px;
  right: 0; }

#hero .kv .group #menu-bar .signup {
  width: auto; }
  #hero .kv .group #menu-bar .signup a {
    width: auto;
    padding-left: 20px;
    padding-right: 20px; }

#kv-sponsor a {
  margin-bottom: 0; }

.index-sponsor {
  left: auto;
  right: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%); }

#logo-hero h2 {
  font-size: 2.4vw;
  margin-left: 0; }

#logo-hero .city {
  max-width: 60px;
  position: relative;
  left: 0;
  margin: 0 15px;
  bottom: -10px; }

#index-intro .container {
  width: 75% !important; }
  #index-intro .container .image {
    height: auto; }
    #index-intro .container .image img {
      max-width: 210px;
      right: 145px;
      bottom: -100px; }

#index-intro p {
  width: 80%;
  font-size: 15px;
  margin: 0; }

#index-intro hr {
  border-top: 1px solid #30acdd; }

#index-intro h3 {
  text-transform: none;
  font-size: 24px;
  font-weight: normal !important; }

.alltexta {
  height: 460px; }

#index-activity-content p {
  font-weight: normal; }

#asia-series-info {
  background-size: cover; }
  #asia-series-info .container {
    padding: 60px 0; }
  #asia-series-info p {
    width: 100%;
    text-align: center; }

#rungroup p {
  width: 80%;
  max-width: 1000px;
  margin: 0 auto 30px auto;
  text-align: center; }

#rungroup h3 {
  font-weight: normal !important; }

#index-activity-content .container {
  width: 70% !important; }

#index-activity-content .place img {
  width: 80%;
  max-width: 800px; }

#index-activity-content .text {
  width: 60%;
  margin-left: 50px; }

#index-activity-content a {
  margin: 0 auto;
  font-size: 14px; }

#index-sponsor h2 {
  font-size: 21px;
  margin-bottom: 10px; }

#index-sponsor div .spcial-logo-01 {
  width: 200px;
  height: auto;
  margin: 15px 0 10px 0; }

#index-sponsor div .spcial-logo-02 {
  width: 400px;
  height: auto;
  max-width: 400px;
  margin: 10px 0; }

#index-sponsor div .spcial-logo-03 {
  max-width: 400px;
  height: auto; }

#index-sponsor div .spcial-logo-04 {
  max-width: 300px;
  height: auto; }

#index-sponsor .threelogo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  margin-bottom: 30px; }
  #index-sponsor .threelogo img {
    max-width: 160px; }

#index-sponsor div img {
  max-width: 230px;
  margin: 10px 10px; }

#index-sponsor div .amino {
  width: 230px;
  margin: 0px 0 10px 0; }

#index-sponsor .container div {
  width: 100%; }

#index-sponsor .container {
  width: 1250px !important; }

#kv-sponsor .logo div a {
  line-height: 1 !important;
  margin: 0; }

#asia-race .wrapper {
  padding: 0; }
  #asia-race .wrapper ol {
    width: 75%; }
  #asia-race .wrapper ol li .local p {
    line-height: 1.4 !important;
    max-width: 160px;
    font-size: 16px; }
  #asia-race .wrapper ol li .time p {
    font-size: 16px; }

#grc .grc-ig {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row; }

#grc li {
  font-size: 30px; }

#grc a {
  margin: 0; }

#grc .line {
  margin-bottom: 17px; }

#grc p {
  font-size: 21px; }

#grc .title h2 {
  font-size: 5vw;
  margin-bottom: 0; }

#grc h3 {
  margin-bottom: 15px; }

#grc .container {
  padding: 0;
  padding-top: 60px; }

#grc .container .grctext {
  font-size: 32px;
  font-family: "Oswald";
  margin-bottom: 10px;
  margin-left: 10px; }

#medal .container .info-award ol li img {
  width: 300px; }

#medal .container .info-award ol li h3 {
  font-size: 21px; }

#index-award {
  z-index: 10; }

#race-table .list td:nth-child(1) {
  width: 30%; }

#series .container {
  width: 90% !important;
  margin: 30px auto; }
  #series .container .all-grpup {
    width: 80%;
    margin: 0 auto;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }
  #series .container .group:nth-child(1) {
    width: auto;
    margin: 10px 10px; }
  #series .container .group {
    max-width: 350px;
    margin: 10px 10px; }
  #series .container .group ol {
    padding: 0; }
  #series .container .group h3 {
    max-width: 380px;
    font-size: 13px; }
    #series .container .group h3 hr {
      max-width: 20px; }
  #series .container .group li {
    width: auto;
    padding: 0 15px; }
    #series .container .group li h3 {
      font-size: 18px; }
    #series .container .group li a {
      font-size: 12px;
      padding: 0.3rem 1rem;
      margin-top: 10px; }
  #series .container .group li img {
    max-width: 160px; }
  #series .container li h3 {
    margin-bottom: 10px;
    font-weight: normal !important; }
  #series .container a p {
    margin: 30px auto 0 auto;
    font-size: 16px; }

.about-group-table .wrapper .list table tbody tr:nth-child(6) {
  background-color: #111111; }

.about-group-table .wrapper .list table tbody tr:nth-child(1) {
  background: #333333; }

#medal .container .info-award ol li h3 {
  font-size: 28px;
  margin-bottom: 30px; }

#medal .container .info-award ol {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }

#info-activity {
  max-height: 850px; }
  #info-activity .text {
    padding: 5vw 5vw; }

.slider {
  height: auto;
  margin: 4vw auto 4vw auto; }

.m-top {
  margin-top: 5vw; }

#route-content {
  min-height: 65vh;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }
  #route-content .title {
    width: 50%;
    max-width: 900px;
    margin-top: 60px; }
  #route-content .container {
    padding: 0;
    margin-bottom: 15px; }
    #route-content .container img {
      max-width: 950px; }
  #route-content .route-21k {
    margin-top: 60px; }

#route-content .container:nth-child(4) {
  padding: 3vw 0 3vw 0; }

#rule-content .container h2,
#faq-content .container h2 {
  color: #000000;
  margin-top: 30px; }

#gift .list .completed .award h5,
#reward .list .completed .award h5 {
  margin-bottom: 15px; }

#gift .list .completed .award .small,
#reward .list .completed .award .small {
  margin: 0 auto 0 auto;
  color: #999999; }

#gift .list .completed .award img,
#reward .list .completed .award img {
  width: 100%;
  max-width: 400px;
  margin: 0 0 15px 0; }

#gift .list .completed .award,
#reward .list .completed .award {
  width: calc(100% / 2);
  max-width: 500px;
  min-height: 500px; }

#gift .list .gift .award,
#reward .list .gift .award {
  width: calc(100% / 2);
  max-width: 500px;
  min-height: 500px; }

#gift .list .gift .p01 img,
#reward .list .gift .p01 img {
  max-width: 230px; }

#gift .list .racepack,
#reward .list .racepack {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column; }

#reward .list .completed .award {
  width: calc(100% / 3);
  max-width: 500px;
  min-height: 280px; }
  #reward .list .completed .award img {
    width: 100%;
    max-width: 250px;
    margin: 10px; }

#gift-02 {
  padding-bottom: 60px; }
  #gift-02 .list .completed .award img {
    margin: 30px 15px;
    border-radius: 15px; }
  #gift-02 .list .completed .award h5 {
    margin: 30px 0; }
  #gift-02 .list .completed .award div {
    height: auto; }

.about-group-table-2 {
  padding: 0 0 30px 0; }
  .about-group-table-2 .list td,
  .about-group-table-2 .list table tbody tr td {
    width: 25%; }

#about-group-table-raceaward {
  padding-top: 100px; }
  #about-group-table-raceaward .small {
    color: #777777;
    margin-top: 10px;
    font-size: 12px; }

#coach,
#pacer {
  background-color: #000000;
  padding: 60px 0; }
  #coach .title,
  #pacer .title {
    color: #ffffff;
    text-align: center; }

.coach,
.coach2,
.pacer {
  padding: 0;
  width: 100%;
  max-width: auto;
  background-color: #000000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 10px auto; }
  .coach .coach-content,
  .coach .pacer-content,
  .coach2 .coach-content,
  .coach2 .pacer-content,
  .pacer .coach-content,
  .pacer .pacer-content {
    width: 100%;
    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; }
  .coach h2,
  .coach2 h2,
  .pacer h2 {
    color: #ffffff !important;
    font-size: 30px;
    margin-bottom: 24px; }
  .coach .bg,
  .coach2 .bg,
  .pacer .bg {
    width: 100%;
    height: 300px;
    background-size: cover;
    background-position: center; }
  .coach svg,
  .coach2 svg,
  .pacer svg {
    width: 36px;
    margin: 30px auto 0 auto;
    text-align: center; }
  .coach a,
  .coach2 a,
  .pacer a {
    font-size: 12px;
    margin-bottom: 0; }

.coach {
  max-width: 950px; }

#pacer {
  padding: 60px 0 100px 0; }

.pacer {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .pacer .bg {
    height: 220px; }

.pacer .pacer-content {
  width: calc(100% / 7 - 20px);
  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;
  margin: 60px 5px; }

.btn-cta p {
  font-size: 12px;
  margin-top: 5px; }

.btn-cta-grc,
.btn-cta-local {
  opacity: 1; }

@media (min-width: 2000px) and (max-width: 2560px) {
  #asia-race .wrapper ol {
    width: 55%; }
  #hero .kv .group {
    width: 750px; }
  #hero .kv .fromzero {
    height: 290px;
    bottom: 100px;
    left: 0; }
  .slider {
    margin: 140px auto 4vw auto; } }

@media (max-width: 1680px) {
  #hero .kv .title {
    max-width: 850px; }
  .fromzero {
    height: 230px;
    bottom: 220px;
    left: 0; }
  .tohero {
    height: 230px;
    bottom: 220px;
    right: 0; }
  #index-intro .container .image img {
    right: 55px; }
  #asia-race .wrapper ol {
    width: 80%; }
  #index-intro h3 {
    font-size: 21px;
    width: 90%; }
  #grc .container {
    padding-top: 0; }
  #grc .title {
    height: 250px; } }

@media (max-width: 1540px) {
  .slider {
    margin: 11vw auto 60px auto; }
  #hero .kv .group {
    height: 950px; } }

@media (max-width: 1440px) {
  .slider {
    margin: 3vw auto 0 auto; }
  #hero .kv .date {
    max-width: 170px;
    top: 235px;
    left: 400px; }
  #hero .kv .title {
    max-width: 650px; }
  #hero .kv .group {
    left: 33%;
    width: 470px; }
  #hero .kv .fromzero {
    height: 160px;
    bottom: 360px;
    left: 50px; }
  #hero .kv .tohero {
    width: auto;
    height: 160px;
    bottom: 360px;
    right: 0; }
  #logo-hero h2 {
    margin-left: 87px;
    font-size: 2.5vw; }
  #index-intro {
    height: auto; }
    #index-intro a {
      font-size: 14px !important; }
    #index-intro h3 {
      font-size: 18px; }
    #index-intro .container .image img {
      max-width: 160px;
      right: 85px;
      bottom: -40px; }
  #index-activity-content h3 {
    font-size: 24px; }
  #index-award .photo {
    width: 100%; }
    #index-award .photo .cloth img {
      max-width: 900px; }
  #asia-series-info p {
    font-size: 18px; }
  #reward .list .completed .award img {
    margin: 0 15px;
    max-width: 250px; }
  .coach svg,
  .coach2 svg,
  .pacer svg {
    width: 28px; }
  .coach h2,
  .coach2 h2,
  .pacer h2 {
    font-size: 24px; }
  .coach .btn-size-default,
  .coach2 .btn-size-default,
  .pacer .btn-size-default {
    padding: 0.8em 1.2em; } }

@media (max-width: 1368px) {
  .runner {
    top: 60px;
    width: 450px;
    left: 2%; }
  .carousel .slider {
    margin: 60px auto 60px auto; }
  #index-intro h3 {
    font-size: 18px; }
  #index-intro p {
    font-size: 13px; }
  #index-intro hr {
    width: 85%; }
  #index-award {
    max-height: 560px; }
    #index-award h2 {
      margin: 0 auto 30px auto; }
    #index-award .photo .cloth img {
      max-width: 800px; }
  .alltexta {
    height: 440px; } }

@media (max-width: 1280px) {
  #index-intro .container .image {
    height: 470px; }
    #index-intro .container .image img {
      max-width: 150px;
      right: 83px; }
  #index-intro a {
    font-size: 14px !important; }
  #menu ul li a {
    font-size: 14px; }
  #info-activity .bg {
    background-position: center center; }
  .carousel .slider {
    margin: 3vw auto 4vw auto; }
  #asia-race .wrapper ol li .local p,
  #asia-race .wrapper ol li .time p {
    font-size: 14px; } }

@media (max-width: 1250px) {
  #hero .kv .tohero {
    bottom: 48%;
    right: 24%; } }

@media (max-width: 1024px) {
  #menu-bar .signup {
    width: auto; }
    #menu-bar .signup a {
      width: auto;
      font-size: 14px; }
  #kv-sponsor img {
    height: 30px; }
  #hero .kv .date {
    max-width: 170px;
    top: 165px;
    left: 230px; }
  #hero .kv .bg {
    top: 30px; }
  #hero .kv .fromzero {
    height: 130px;
    bottom: 510px;
    left: 0; }
  #hero .kv .tohero {
    height: 130px;
    bottom: 510px;
    right: 70px; }
  #hero .kv .title {
    max-width: 650px;
    top: 90px; }
  #hero .kv .group {
    left: 33%;
    width: 400px; }
  .runner {
    width: 300px;
    left: 4%;
    top: 110px; }
  #index-intro h3 {
    font-size: 14px; }
  #index-intro .container {
    min-height: 40vh; }
    #index-intro .container .image h2 {
      font-size: 80px; }
    #index-intro .container .image image {
      height: 360px; }
    #index-intro .container .image img {
      max-width: 130px;
      right: 30px;
      bottom: 0; }
  #index-intro p {
    font-size: 12px; }
  .alltexta {
    height: 350px; }
  .carousel .slider {
    margin: 5.5vw auto 0 auto; }
  #index-sponsor .container {
    width: 800px !important; }
  #info-activity .bg {
    background-position: 88% center; }
  #index-award .photo {
    width: 100%;
    height: 300px; }
    #index-award .photo .cloth img {
      min-width: 630px; }
  #asia-race .text {
    font-size: 16px; }
  #asia-race h3 {
    margin-top: 15px; }
  #asia-race .wrapper ol {
    width: 90%; }
  #asia-race .wrapper ol li .time {
    height: 40px; }
    #asia-race .wrapper ol li .time p {
      font-size: 12px; }
  #asia-race .wrapper ol li .local {
    height: 40px; }
    #asia-race .wrapper ol li .local p {
      font-size: 12px;
      max-width: 105px; }
  #grc .title {
    height: 200px; }
    #grc .title h2 {
      font-size: 7vw;
      margin-bottom: 0; }
  #grc h3 {
    width: 80%;
    margin: 0 auto 15px auto; }
  #medal .container .info-award ol li img {
    width: 180px; }
  #index-activity-content h2,
  #index-activity-content h2 span {
    height: 110px; }
  #index-activity-content h3 {
    font-size: 16px; }
  #index-activity-content p {
    font-size: 12px;
    line-height: 1.4 !important; }
  #index-activity-content a {
    margin: 0 auto;
    margin-bottom: 15px; }
  #pacer-content {
    height: 650px; }
  #pacer-content .container div h2 {
    font-size: 32px;
    margin-bottom: 35px; }
  #rungroup .intro .container,
  #virtualrun .intro .container {
    padding: 60px 0 0 0; }
  #logo-hero h2 {
    font-size: 3.5vw; }
  #route-content {
    min-height: 65vh; }
  #info-main-content .frame h2 {
    padding: 0 2rem; }
  #gift .list,
  #gift-02 .list {
    margin-bottom: 30px; }
    #gift .list .completed .award img,
    #gift-02 .list .completed .award img {
      margin: 30px 10px 0 10px;
      max-width: 180px; }
    #gift .list .completed .finisher,
    #gift-02 .list .completed .finisher {
      min-height: 460px; }
      #gift .list .completed .finisher img,
      #gift-02 .list .completed .finisher img {
        margin: 30px 10px 0 10px;
        max-width: 180px; }
  #gift .link,
  #gift-02 .link {
    margin-bottom: 30px; }
  #reward .list .completed .award h5 {
    font-size: 18px; }
  #reward .list .completed .award {
    min-height: 200px; }
  .about-group-table-2 {
    padding: 0 0 10vw 0; }
  .about-group-table .list h4,
  .about-group-table-2 .list h4,
  .about-group-table-3 .list h4 {
    font-size: 16px;
    color: #777777; }
  #series .container .group h3 {
    min-width: 200px;
    height: 42px; }
  #series .container .all-grpup {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; } }

@media (max-width: 820px) {
  #hero .kv .title {
    max-width: 440px;
    top: 90px; }
  #hero .kv .tohero {
    right: 60px; }
  .carousel .slider {
    margin: 70px auto 0 auto; }
  #index-intro .container {
    width: 80% !important; }
  #index-intro h3 {
    font-size: 13px; }
  #index-intro p {
    font-size: 12px; }
  #index-intro .container .image {
    height: auto; }
  #index-intro .container .image img {
    bottom: -60px; }
  .alltexta {
    height: 310px; }
  #index-activity-content .container {
    width: 80% !important;
    margin: 0 auto; }
  #index-activity-content .place img {
    width: 100%;
    max-width: 850px; }
  #index-activity-content .place {
    padding-right: 30px; }
  #index-activity-content h2,
  #index-activity-content h2 span {
    height: 90px; }
  #album-content:after {
    top: 30px; }
  #index-activity-content p {
    margin-top: 10px; }
  #index-activity-content a {
    font-size: 13px !important; }
  #pacer-content .container div h2 {
    font-size: 28px;
    margin-bottom: 35px; }
  #index-award {
    padding: 10vw 0 5vw 0; }
    #index-award .container {
      padding: 0; }
    #index-award .photo .cloth {
      width: 100%; }
      #index-award .photo .cloth img {
        max-width: 500px;
        min-width: 300px; }
    #index-award h2 {
      margin: 0 auto 10px auto; }
  #grc {
    padding: 0 0 30px 0; }
    #grc h3 {
      width: 80%;
      margin: 0 auto 30px auto; }
  #rungroup h3 {
    font-weight: normal !important;
    width: 80%;
    margin: 0 auto 10px auto; }
  #reward .list .completed .award {
    min-height: 110px; }
  #reward .list .completed .award img {
    max-width: 100px; }
  #reward .list .completed .award {
    min-height: 140px; }
  #gift .list .completed .award img,
  #gift-02 .list .completed .award img {
    margin: 30px 10px 0 10px;
    max-width: 180px; }
  #gift .list .completed .finisher,
  #gift-02 .list .completed .finisher {
    min-height: 420px; }
    #gift .list .completed .finisher img,
    #gift-02 .list .completed .finisher img {
      margin: 30px 10px 0 10px;
      max-width: 180px; } }

@media (max-width: 768px) {
  #hero .kv .group {
    left: 27%;
    width: 400px; }
  #index-sponsor .container {
    width: 620px !important; }
  #index-sponsor div .spcial-logo-02 {
    width: 400px;
    height: auto; }
  #index-intro .container .image h2 {
    font-size: 70px; }
  #index-intro .container .image img {
    max-width: 100px;
    right: 0;
    bottom: 0px; }
  #index-intro a {
    margin-top: 20px; }
  .pacer .bg {
    height: 150px; }
  .coach svg,
  .coach2 svg,
  .pacer svg {
    width: 21px; } }

@media (max-width: 599px) {
  a {
    max-width: 240px !important; }
  #menu-bar .signup {
    width: 200px; }
    #menu-bar .signup a {
      width: 200px;
      font-size: 12px;
      padding: 5px 3px; }
  #menu-bar #brand #logo {
    top: 17px; }
  #hero {
    height: 530px;
    max-height: 530px; }
    #hero .kv .group {
      height: 400px;
      width: 100%;
      top: 50px;
      position: absolute;
      left: 50%;
      -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
      transform: translate(-50%, 0);
      z-index: 10; }
    #hero .kv .fromzero {
      height: 140px;
      width: auto;
      max-width: 500px;
      left: 10%;
      top: auto;
      bottom: -10px; }
    #hero .kv .tohero {
      height: 120px;
      bottom: 0;
      right: 25px;
      position: absolute; }
    #hero .kv .title {
      top: 80px;
      right: 0; }
  .white-end-bg {
    top: 121vw; }
  .carousel .slider {
    margin: 30px auto 30px auto; }
  .carousel .slider .slide {
    height: 70px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  #logo-hero .city {
    left: 5%; }
  #index-intro h3 {
    font-size: 14px; }
  #index-intro .container {
    margin-top: 0; }
  #kv-sponsor .logo {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 10px 0; }
    #kv-sponsor .logo div {
      margin: 5px 10px; }
      #kv-sponsor .logo div p {
        width: auto; }
  .slider {
    margin: 17vw auto 0 auto; }
  .slider .slide-track {
    margin-top: 30px; }
  #index-intro {
    height: auto;
    padding-bottom: 60px; }
    #index-intro h3 {
      font-size: 14px;
      width: 100%;
      padding-right: 0; }
    #index-intro hr {
      width: 100%; }
    #index-intro p {
      width: 100%; }
    #index-intro .container {
      max-height: 1500px;
      margin-top: 30px; }
    #index-intro .container .image {
      width: 100%;
      height: auto;
      margin-top: 50px; }
      #index-intro .container .image img {
        right: auto;
        left: 50%;
        position: absolute;
        max-width: 120px;
        top: -60px; }
  #index-sponsor .threelogo {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; }
  #index-sponsor .threelogo img {
    max-width: 160px;
    width: 100%;
    margin: 10px 10px; }
  #index-sponsor .twologo,
  #index-sponsor .bottom60 {
    margin-bottom: 15px !important; }
  #index-sponsor div .amino {
    width: 250px; }
  #index-sponsor div .spcial-logo-01 {
    width: 180px;
    height: auto;
    margin-top: 30px; }
  #index-sponsor div .spcial-logo-02 {
    width: 80%;
    max-width: 320px;
    height: auto; }
  #index-sponsor div .spcial-logo-03 {
    max-width: 350px;
    width: 100%; }
  #index-sponsor div .spcial-logo-04 {
    max-width: 450px;
    width: 70%; }
  #index-award h2 {
    margin: 30px auto 60px auto;
    width: 90%; }
  #index-award .photo {
    height: 300px; }
  #medal div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }
  #route-content .route-21k {
    margin-top: 30px; }
  #route-content .container {
    padding: 2vw 0 0 0;
    margin-bottom: 0; }
  #info-activity .bg {
    background-position: center center; }
  #info-activity .text {
    padding: 0;
    width: 85%;
    margin: 30px auto; }
  #info-activity .bg {
    height: 70vw; }
  #index-activity-content .place img {
    width: 100%;
    max-width: 250px; }
  #index-activity-content .text {
    padding: 0;
    width: 90%;
    margin: 50px auto; }
  #index-activity-content a {
    max-width: 180px; }
  #index-activity-content h3 {
    font-size: 18px; }
  #asia-race .text {
    width: 90%; }
  #asia-race .wrapper ol {
    margin-left: auto; }
    #asia-race .wrapper ol li .local {
      width: 150px;
      height: 40px; }
    #asia-race .wrapper ol li .time {
      width: 150px;
      height: 40px; }
  #asia-series-info .container {
    width: 90% !important; }
    #asia-series-info .container .text {
      margin-top: 30px; }
    #asia-series-info .container p {
      width: 100%; }
    #asia-series-info .container a {
      font-size: 14px !important; }
  #medal .container .info-award ol li img {
    width: 280px; }
  #medal .container .info-award ol li h3 {
    font-size: 28px; }
  #grc .title:before {
    height: 70px; }
  #grc .title {
    height: 150px; }
    #grc .title h2 {
      font-size: 8.5vw; }
  #grc h3 {
    font-size: 21px; }
  #info-link-group .container .list {
    margin-top: 30px; }
  #info-link-group .container .list a {
    margin: 10px; }
  #route-content .title {
    width: 100%;
    max-width: 900px;
    margin-top: 30px; }
  #rungroup .intro .container,
  #virtualrun .intro .container {
    padding: 30px 0 0 0; }
  #rungroup .intro .container .class-area .text .blue-t,
  #virtualrun .intro .container .class-area .text .blue-t {
    font-size: 20px; }
  #rungroup .intro .container .class-area .text ol li,
  #virtualrun .intro .container .class-area .text ol li {
    font-size: 16px; }
  #rungroup a,
  #virtualrun a {
    width: 80%;
    font-size: 14px !important;
    margin-bottom: 30px; }
  #rungroup h3 {
    width: 85%; }
  #rule-content .container,
  #faq-content .container:nth-child(1) {
    margin-top: 10vw; }
  #rule-content h3,
  #faq-content h3 {
    line-height: 1.2 !important; }
  #faq-content li {
    font-size: 14px; }
  #gift .list .completed,
  #reward .list .completed {
    width: 90%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; }
  #gift .list .completed .award,
  #reward .list .completed .award {
    width: 90%;
    padding: 5px 10px;
    margin: 10px 15px;
    min-height: 450px;
    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; }
    #gift .list .completed .award img,
    #reward .list .completed .award img {
      max-width: 300px;
      margin: 5px 10px 0 10px; }
  #gift .list h4,
  #reward .list h4 {
    font-size: 16px;
    padding: 0 10px; }
  #gift .list h2,
  #reward .list h2 {
    margin-bottom: 15px; }
  #gift .list .small,
  #reward .list .small {
    font-size: 12px;
    text-align: center;
    margin: 20px auto 0 auto;
    padding: 0 30px; }
  #gift .list .completed .award p,
  #reward .list .completed .award p {
    line-height: 1.4 !important;
    font-size: 13px;
    margin-bottom: 0; }
  #gift .list .completed .award div,
  #reward .list .completed .award div {
    height: auto; }
  #gift .full-list .container,
  #gift-02 .full-list .container {
    width: 90% !important;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; }
  .gift-02 .full-list .container .photo img {
    width: 100%;
    max-width: 280px;
    margin-left: 0; }
  #reward .list .small {
    padding: 0 10px;
    margin-bottom: 30px; }
  #reward .list .completed .award {
    width: 90%;
    padding: 5px 10px;
    margin: 10px 15px;
    min-height: 350px; }
  #reward .list .completed .award img {
    margin: 0; }
  #reward .list {
    margin-bottom: 0; }
  .about-group-table-2 {
    padding: 30px 0 60px 0; }
  .about-group-table .wrapper,
  .about-group-table-2 .wrapper,
  .about-group-table-3 .wrapper {
    width: 90%; }
  #about-group-table-raceaward {
    padding-top: 60px; }
  p[data-id="footer"] {
    font-size: 12px;
    padding: 20px 25px; }
  #series .container .group h3 {
    font-size: 12px; }
  #coach {
    padding: 60px 0 30px 0; }
  .coach {
    max-width: 93.5%; }
    .coach .bg {
      height: 200px; }
    .coach a {
      font-size: 12px !important;
      width: 80%; }
    .coach .coach-content {
      margin: 0px 5px; }
  .pacer .bg {
    height: 200px; }
  .pacer .pacer-content {
    width: calc(100% / 2 - 20px);
    margin: 30px 5px; }
    .pacer .pacer-content a {
      font-size: 12px !important;
      width: 80%; }
  .coach svg,
  .coach2 svg,
  .pacer svg {
    width: 30px; }
  #series .container h3 {
    font-size: 20px; }
  #series .container .group li {
    padding: 0;
    margin-left: 0;
    margin-right: 0;
    max-width: 180px; }
  #series .container .product {
    overflow: hidden; }
  #series .container .group {
    min-width: auto;
    width: 80%;
    margin: 15px auto; }
  .btn-cta p {
    font-size: 11px;
    margin-top: 5px; } }

@media (max-width: 430px) {
  #menu-bar .signup a {
    width: 220px; }
  #kv-sponsor img {
    height: 30px; }
  #kv-sponsor .logo div {
    margin: 5px 5px; }
  #kv-sponsor .logo div p {
    margin-right: 5px; }
  #index-intro .container .image {
    height: auto; }
    #index-intro .container .image img {
      max-width: 120px;
      top: 190px; }
  #album-content:after {
    font-size: 15vw; }
  #series .container .group:nth-child(1) h3 hr,
  #series .container .group h3 hr {
    max-width: 10px; }
  #series .container a p {
    font-size: 14px; }
  #info-link-group .container .list a {
    font-size: 12px !important; }
  .btn-black-fill {
    font-size: 14px !important; } }

@media (max-width: 390px) {
  #hero {
    height: 520px;
    max-height: 520px; }
  #hero .kv .title {
    top: 80px;
    left: auto;
    right: 0;
    width: 80%;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0); }
  #index-award .photo {
    height: 210px; }
  #asia-race .text {
    width: 90%;
    font-size: 14px;
    margin-bottom: 30px; }
  #asia-race .wrapper ol {
    padding: 0;
    overflow: hidden; } }

@media (max-width: 375px) {
  #index-intro .bg {
    height: 210vw; }
  .index-sponsor {
    width: 180px; }
  #pacer {
    padding: 60px 0 60px 0; } }

@media (max-width: 360px) {
  #menu-bar .signup {
    width: 200px; }
    #menu-bar .signup a {
      width: 200px;
      font-size: 10px;
      padding: 1em 0.4em; }
  #hero {
    height: 460px;
    max-height: 460px; }
    #hero .kv .bg {
      height: 550px; }
    #hero .kv .fromzero {
      height: 100px;
      left: 50px;
      bottom: 20px; }
    #hero .kv .tohero {
      height: 100px;
      bottom: 20px;
      right: 55px;
      position: absolute; }
  .index-sponsor {
    width: 160px; }
  #logo-hero .city {
    max-width: 50px;
    bottom: -10px;
    left: 0; }
  .carousel .slider {
    margin: 30px auto 30px auto; }
  #asia-race .wrapper ol li .local,
  #asia-race .wrapper ol li .time {
    width: 130px; }
  #index-award h2 {
    margin: 30px auto 30px auto;
    width: 90%; }
  #index-award .photo {
    height: 200px; }
  #index-award .photo .cloth img {
    max-width: 330px;
    min-width: 220px; }
  #index-sponsor div .spcial-logo-01 {
    width: 140px; }
  #asia-series-info .container p {
    font-size: 14px;
    margin: 10px 0 20px 0; }
  #asia-series-info .container a {
    font-size: 12px !important; }
  #info-activity .bg {
    height: 20vw;
    min-height: 200px; }
  #index-activity-content .container h2,
  #index-activity-content .container h2 span {
    height: 70px; }
  #pacer-content .container .text h2 {
    font-size: 24px;
    margin-bottom: 0px;
    line-height: 1.4 !important; }
  #menu-bar #brand #logo {
    width: 100px;
    background-size: 100px 32px; }
  #rungroup a,
  #virtualrun a {
    font-size: 12px !important; }
  #kv-page-bar h2 {
    font-size: 36px; }
  #route-content .container:nth-child(1) h3 {
    font-size: 20px; }
  #medal .container .info-award ol li img {
    width: 180px; } }

@media (max-width: 320px) {
  #menu-bar .signup {
    width: 170px; }
    #menu-bar .signup a {
      width: 170px;
      font-size: 10px;
      padding: 1em 2px; }
  #hero .kv .fromzero {
    height: auto;
    width: 70px;
    right: auto;
    left: 30px;
    top: auto;
    bottom: 60px; }
  #hero .kv .tohero {
    height: 86px;
    bottom: 65px;
    right: 60px;
    position: absolute; }
  #kv-sponsor img {
    height: 25px; }
  #kv-sponsor .logo div p {
    font-size: 8px; }
  .btn-cta p {
    font-size: 10px; }
  #index-intro .bg {
    height: 250vw; }
  #index-intro h3 {
    font-size: 13px; }
  #index-intro p {
    font-size: 10px; }
  #index-intro a {
    font-size: 12px !important; }
  #index-intro .container {
    padding: 0; }
    #index-intro .container .image img {
      max-width: 100px;
      top: 140px; }
  .white-end-bg {
    top: 133vw; }
  #index-activity-content a {
    font-size: 12px !important;
    max-width: 180px !important; }
  #asia-race .text {
    width: 90%; }
  #asia-race .wrapper ol {
    margin-left: auto;
    width: 100%; }
    #asia-race .wrapper ol li .local {
      width: 130px;
      height: 40px; }
    #asia-race .wrapper ol li .time {
      width: 130px;
      height: 40px; }
  #asia-race .container p {
    font-size: 14px;
    margin: 10px 0 20px 0; }
  #reward .list .completed .award {
    min-height: 300px; }
  #reward .list .completed .award img {
    max-width: 230px; }
  #reward .list .small {
    padding: 0 10px;
    font-size: 12px;
    margin-bottom: 30px; }
  #gift .list .completed .award,
  #reward .list .completed .award {
    width: 90%; }
  #index-activity-content .place img {
    max-width: 210px; }
  #asia-race .btn-white-fill {
    font-size: 14px !important; }
  #index-award .photo {
    height: 180px; }
  #index-award h2 {
    margin: 30px auto 30px auto; }
  #kv-page-bar h2 {
    font-size: 28px; }
  #gift .list .completed .finisher img,
  #gift-02 .list .completed .finisher img {
    margin: 20px 10px;
    max-width: 140px; }
  .coach .bg,
  .pacer .bg {
    height: 150px; }
  .coach h2,
  .coach2 h2,
  .pacer h2 {
    font-size: 18px;
    margin-bottom: 16px; }
  .coach svg,
  .coach2 svg,
  .pacer svg {
    width: 24px; }
  #series .container .group {
    min-width: 100%; }
  #series .container .group li {
    margin-left: 5px;
    margin-right: 5px;
    max-width: 120px; }
  .btn-cta-grc:before,
  .btn-cta-local:before {
    width: 53.5px;
    height: 53.5px;
    top: 8.5px;
    left: 8.5px; } }

#watchface-content a.guide {
  color: #ccf0ff;
  font-size: 14px;
  border-bottom: 1px solid; }

#watchface-content .text p {
  margin: 10px auto 0px auto; }

#watchface-content .btn-white-fill {
  margin-top: 15px; }

@media (max-width: 599px) {
  #watchface-content a.guide {
    font-size: 14px; } }
