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; }

#menu-bar .signup {
  width: 180px; }
  #menu-bar .signup a {
    width: 180px; }

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

#logo-hero .city {
  max-width: 230px;
  position: relative;
  left: auto;
  margin-top: 50px;
  bottom: 0; }

#hero .kv .date {
  width: 18%;
  max-width: 400px;
  top: 132px;
  left: 965px; }

.fromzero {
  left: 32%;
  bottom: 318px; }

.tohero {
  right: 27%;
  bottom: 180px; }

#index-intro .container {
  width: 85% !important;
  padding: 50px 0 150px 0; }
  #index-intro .container .image h2 {
    margin-right: 260px; }
  #index-intro .container .image img {
    max-width: 650px;
    right: 0%;
    margin-top: 370px; }

#index-intro h3 {
  font-weight: normal !important;
  text-transform: none;
  font-size: 16px;
  padding-right: 30px;
  font-family: 'Roboto', sans-serif; }

.alltexta {
  margin-bottom: 350px; }

.slider {
  margin: 6vw auto 2vw auto; }

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

#album-content {
  background-color: #000000;
  background-position: bottom center;
  background-size: contain;
  background-repeat: no-repeat; }

#type {
  background-color: #ffffff; }
  #type .intro {
    padding-top: 0; }

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

#rungroup h2 {
  color: #000000;
  margin-top: 60px; }

#rungroup h3 {
  font-size: 36px;
  font-weight: normal !important;
  margin: 30px 0 10px 0;
  color: #ec5e57; }

#rungroup .pacer-pic {
  width: 100%;
  max-width: 1000px;
  margin: 10px auto 30px auto; }

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

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

#camp {
  background-color: #000000;
  text-align: center;
  position: relative;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 0 0 60px 0; }
  #camp h2, #camp h3, #camp h4 {
    color: #ffffff; }
  #camp p {
    color: #e6e6e6; }
  #camp .title {
    margin: 100px auto 30px auto;
    background-color: #000000;
    position: relative;
    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: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; }
    #camp .title h2 {
      position: relative;
      z-index: 10; }
  #camp .container {
    padding: 0; }
    #camp .container .content {
      text-align: left;
      width: 85%;
      margin: 0 auto; }
      #camp .container .content img {
        width: 60%;
        margin: 30px auto 60px auto;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center; }
  #camp ol {
    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: 0;
    padding: 0; }
  #camp svg {
    width: 40px;
    height: 40px;
    margin: 0 10px; }
  #camp h3 {
    line-height: 1.2 !important; }

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

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

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

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

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

#asia-race .wrapper ol li .local p {
  max-width: 150px;
  line-height: 1.2 !important; }

#index-sponsor h2 {
  font-size: 21px;
  margin: 15px auto; }

#index-sponsor div .spcial-logo-01 {
  width: 230px;
  height: auto; }

#index-sponsor div .spcial-logo-02 {
  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 .container {
  width: 1440px !important; }

#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; }

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

.guide {
  background: #70cff4;
  background: -moz-linear-gradient(left, #70cff4 0%, #20a0d2 100%);
  background: -webkit-linear-gradient(left, #70cff4 0%, #20a0d2 100%);
  background: -webkit-gradient(linear, left top, right top, from(#70cff4), to(#20a0d2));
  background: -o-linear-gradient(left, #70cff4 0%, #20a0d2 100%);
  background: linear-gradient(to right, #70cff4 0%, #20a0d2 100%);
  font-size: 18px !important;
  border-color: #ffffff !important;
  border-width: 0 !important;
  text-align: center;
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 auto 60px auto !important;
  width: 30%;
  max-width: 330px; }

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

#race-table .list table tbody tr td:nth-child(2), #race-table .list table tbody tr td:nth-child(3) {
  width: 35%; }

#race-table .list table tbody tr:nth-child(2) td {
  width: 11.6%; }

#race-table .list table tbody tr td.label p {
  color: #ffffff; }

#race-pack {
  background-color: #ffffff;
  text-align: center;
  overflow: hidden;
  position: relative;
  padding: 0 0 5vw 0; }
  #race-pack h2 {
    font-weight: bold;
    margin: 0 0 30px 0;
    padding: 0;
    color: #000000;
    line-height: 1.4 !important;
    text-align: center; }
  #race-pack .basic {
    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-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0; }
  #race-pack .frame {
    width: calc(100% / 3);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }
    #race-pack .frame h2 {
      font-size: 32px;
      font-weight: bold;
      margin: 0;
      padding: 0;
      color: #20a0d2; }
    #race-pack .frame h3 {
      font-size: 21px;
      font-weight: bold;
      margin: 0;
      padding: 0 15px;
      color: #000000;
      line-height: 1.2 !important; }
  #race-pack .headerdivider {
    border-left: 3px solid #000;
    height: 120px;
    width: 3px;
    padding: 10px 0; }
  #race-pack .repc {
    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; }
    #race-pack .repc img {
      width: 50%; }
  #race-pack .small {
    margin-top: 30px; }
  #race-pack .link {
    margin-top: 30px;
    max-width: 90%; }

#info-main-content .frame h3 {
  font-size: 28px; }

.ma-bo-30 {
  margin-bottom: 30px; }

#series .container li h3 {
  margin-bottom: 10px;
  font-weight: normal !important; }

.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; }

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

#route-content, #result-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 .container, #result-content .container {
    margin-top: 3vw;
    padding: 0; }
    #route-content .container .link, #result-content .container .link {
      margin: 10px auto 60px auto;
      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; }
      #route-content .container .link a, #result-content .container .link a {
        margin: 0 10px; }
    #route-content .container img, #result-content .container img {
      padding: 15px 0; }
  #route-content .container:nth-child(2), #result-content .container:nth-child(2) {
    margin-bottom: 3vw; }

#result-content {
  background-position: top center;
  background-size: cover;
  background-image: url(../images/result-bg.jpg); }
  #result-content h3 {
    color: #ffffff; }

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

#rule-content .container .underline,
#faq-content .container .underline {
  font-weight: bold;
  text-decoration: none;
  font-size: 18px; }

#rule-content .container .rule-table p {
  margin-bottom: 0;
  color: #ffffff !important; }

#gift .list .completed .award p,
#gift-02 .list .completed .award p {
  line-height: 1.4 !important;
  height: 115px; }

#gift .list .completed .award h5,
#gift-02 .list .completed .award h5 {
  font-size: 28px; }

#gift .list .completed .award img,
#gift-02 .list .completed .award img {
  width: 100%;
  margin: 10px 10px 0 10px; }

#gift .list .completed .finisher,
#gift-02 .list .completed .finisher {
  min-height: 530px; }
  #gift .list .completed .finisher p,
  #gift-02 .list .completed .finisher p {
    line-height: 1.4 !important;
    min-height: 90px; }
  #gift .list .completed .finisher h5,
  #gift-02 .list .completed .finisher h5 {
    font-size: 28px; }
  #gift .list .completed .finisher img,
  #gift-02 .list .completed .finisher img {
    width: 100%;
    max-width: 300px;
    margin: 30px 30px 0 30px; }

#gift .list .link,
#gift-02 .list .link {
  margin: 0 auto;
  text-align: center; }

#gift .list .completed .award img, #gift-02 .list .completed .award img {
  max-width: 330px; }

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

#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;
  -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; }

#menu ul li a, #menu-bar .signup {
  font-size: 16px;
  margin: 0 15px 0 15px; }

#menu-bar .signup a {
  width: 150px;
  font-size: 14px; }

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

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

@media (min-width: 1930px) and (max-width: 2560px) {
  #hero {
    max-height: 1050px; }
  #hero .kv .date {
    left: 55%; }
  .runner {
    width: 660px; }
  #index-intro .container .image h2 {
    margin-right: 260px;
    font-size: 180px; }
  #index-intro .container .image img {
    max-width: 800px;
    right: 0%;
    margin-top: 300px; } }

@media (max-width: 1680px) {
  .fromzero {
    left: 35%; }
  #logo-hero h2 {
    font-size: 1.8vw; }
  #series .container .group li img {
    max-width: 160px; }
  #menu ul li a, #menu-bar .signup {
    font-size: 16px;
    margin: 0 10px; }
  #menu-bar .signup a {
    width: 150px;
    font-size: 13px; }
  #menu-bar .signup {
    width: 150px; }
  #menu ul {
    margin-left: 150px; }
  #index-intro h3 {
    width: 100%;
    padding-right: 0px; }
  #index-intro .container .image {
    width: 50%;
    height: 600px; }
  #index-intro .container .image img {
    max-width: 640px;
    margin-top: 450px; }
  #index-intro .container .image h2 {
    margin-right: 30px;
    font-size: 130px;
    margin-top: -10px; }
  #asia-race .text {
    font-size: 18px; }
  #asia-race .wrapper ol li .local p {
    font-size: 16px; }
  #asia-race .wrapper ol li .time p {
    font-size: 14px; }
  #asia-race .btn-white-fill {
    font-size: 16px; }
  #grc .title {
    height: 250px; } }

@media (max-width: 1512px) {
  .fromzero {
    left: 38%; }
  #hero .kv .tohero {
    bottom: 100px;
    right: 15%; }
  #hero .kv .date {
    left: 985px; } }

@media (max-width: 1440px) {
  #hero .kv .bg {
    height: 780px; }
  #hero .kv .date {
    top: 130px;
    left: 920px;
    width: 15%;
    max-width: 300px; }
  #hero .kv .fromzero {
    left: 41%;
    bottom: 240px; }
  #hero .kv .tohero {
    bottom: 150px;
    right: 18%; }
  .slider {
    margin: 8vw auto 0 auto; }
  #index-award .photo {
    width: 100%; }
    #index-award .photo .cloth img {
      max-width: 1000px; }
  #index-intro {
    height: auto; }
    #index-intro h3 {
      font-size: 13px; }
    #index-intro .container {
      padding: 7vw 0 10vw 0; }
      #index-intro .container .image {
        height: 520px; }
        #index-intro .container .image img {
          max-width: 530px;
          right: 0;
          bottom: -70px; }
          #index-intro .container .image img h2 {
            margin-top: 10px; }
      #index-intro .container .text {
        width: 70%; }
    #index-intro a {
      font-size: 14px !important; }
  #asia-series-info p {
    font-size: 18px; }
  .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; }
  #rungroup .pacer-pic {
    max-width: 850px; } }

@media (max-width: 1368px) {
  #hero .kv .fromzero {
    left: 41%;
    bottom: 150px; }
  #hero .kv .tohero {
    bottom: 60px;
    right: 18%; }
  #hero .kv .date {
    top: 120px;
    left: 885px;
    width: 15%;
    max-width: 300px; }
  #hero .kv .bg {
    height: 750px; }
  .carousel .slider {
    margin: 14vw auto 2vw auto; }
  #index-intro h3 {
    font-size: 13px;
    padding-right: 30px; }
  #index-intro p {
    font-size: 13px; }
  #index-intro hr {
    width: 85%; }
  #index-intro .container .image img {
    max-width: 480px;
    right: 0;
    bottom: -50px; }
    #index-intro .container .image img h2 {
      margin-right: 30px;
      font-size: 110px;
      margin-top: 20px; }
  #index-intro .container .text {
    width: 100%; }
  #index-award h2 {
    margin: 0 auto 30px auto; }
  #index-award .photo .cloth img {
    max-width: 900px; } }

@media (max-width: 1280px) {
  #index-intro .container .image {
    height: 470px; }
  #index-intro a {
    font-size: 14px !important; }
  #index-intro h3 {
    font-size: 13px; }
  #logo-hero h2 {
    margin-left: 70px;
    font-size: 28px; }
  #logo-hero .city {
    max-width: 150px;
    left: -65px;
    bottom: -25px; } }

@media (max-width: 1024px) {
  #menu-bar .signup {
    width: auto; }
    #menu-bar .signup a {
      width: auto;
      font-size: 14px; }
  #menu ul {
    margin-left: 0; }
  #hero .kv .bg {
    height: 550px; }
  #hero .kv .date {
    max-width: 150px;
    top: 85px;
    left: 645px; }
  #hero .kv .fromzero {
    left: 43%;
    bottom: 171px; }
  #hero .kv .tohero {
    bottom: 110px;
    right: 18%; }
  #kv-sponsor img {
    height: 30px; }
  #logo-hero .city {
    max-width: 170px;
    left: -80px;
    bottom: -25px; }
  #logo-hero h2 {
    font-size: 3.2vw;
    margin-left: 75px; }
  .carousel .slider {
    margin: 4vw auto 2vw auto; }
  #index-intro h3 {
    font-size: 12px;
    padding-right: 15px; }
  #index-intro .container {
    padding: 0px 0 80px 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; }
    #index-intro .container .image {
      height: 420px;
      width: 100%; }
      #index-intro .container .image img {
        max-width: 450px;
        margin-top: 0;
        right: 100px;
        bottom: 0; }
      #index-intro .container .image h2 {
        font-size: 100px;
        margin-right: 260px; }
  .alltexta {
    margin-bottom: 0; }
  #asia-race .wrapper ol li .local {
    height: 40px; }
    #asia-race .wrapper ol li .local p {
      font-size: 12px; }
  #asia-race .wrapper ol li .time {
    width: 150px;
    height: 40px; }
  #index-award .photo {
    width: 100%;
    height: 400px; }
  #grc .title {
    height: 200px; }
    #grc .title h2 {
      font-size: 120px; }
  #index-activity-content h2,
  #index-activity-content h2 span {
    height: 110px; }
  #index-activity-content a {
    margin: 0 auto;
    margin-bottom: 15px; }
  #index-activity-content p {
    font-size: 12px;
    line-height: 1.4 !important; }
  #index-activity-content .text {
    width: 50%;
    margin-left: 0; }
  #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; }
  #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; }
  .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; }
  .pacer .pacer-content {
    width: calc(100% / 5 - 20px); }
  #race-pack .frame h3 {
    font-size: 16px;
    padding: 0 10px; }
  .guide {
    width: 80%; }
  #rungroup .pacer-pic {
    max-width: 700px; }
  #series .container .group ol {
    padding: 0 1vw; }
  #series .container .group li h3 {
    font-size: 18px; }
  #series .container .group li img {
    max-width: 120px; }
  #series .container .group li a {
    font-size: 12px;
    padding: 0.8em 1em; } }

@media (max-width: 820px) {
  #menu ul li a, #menu-bar .signup {
    font-size: 12px;
    margin: 0 10px;
    line-height: 1.4 !important; }
  #hero .kv .fromzero {
    left: 41%;
    bottom: 210px; }
  #hero .kv .tohero {
    bottom: 150px;
    right: 18%; }
  #hero .kv .bg {
    height: 490px; }
  #hero .kv .date {
    max-width: 150px;
    top: 85px;
    left: 520px; }
  #index-intro .container {
    width: 90% !important;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 0px 0 30px 0; }
  #index-intro h3 {
    font-size: 13px; }
  #index-intro p {
    font-size: 12px; }
  #index-intro .container .image h2 {
    margin-right: 100px;
    font-size: 70px; }
  #index-intro .container .image img {
    max-width: 330px;
    right: 160px;
    bottom: 0; }
  #index-activity-content .place img {
    width: 100%;
    max-width: 230px; }
  #index-activity-content .container {
    width: 80% !important; }
  #index-activity-content h2,
  #index-activity-content h2 span {
    height: 90px; }
  #index-activity-content p {
    margin-top: 10px; }
  #index-activity-content a {
    font-size: 13px !important; }
  #asia-race .text {
    font-size: 18px; }
  #asia-race .wrapper ol li .time p {
    font-size: 11px; }
  #asia-race .wrapper ol li .local {
    width: 150px; }
  #asia-race .wrapper ol li .local p {
    font-size: 12px;
    max-width: 100px; }
  #index-award h2 {
    margin: 0 auto 60px auto; }
  #grc .title h2 {
    font-size: 110px; }
  #grc h3 {
    width: 80%;
    font-size: 32px;
    margin: 0 auto 30px auto; }
  #rungroup h3 {
    font-weight: normal !important;
    width: 80%;
    margin: 30px auto 0 auto; }
  #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 .date {
    max-width: 150px;
    top: 85px;
    left: 505px; }
  #index-sponsor div .spcial-logo-02 {
    width: 400px;
    height: auto; }
  #index-intro .container .image {
    width: 50%; }
  #index-intro .container .image img {
    max-width: 270px;
    right: 30px; }
  #index-intro a {
    margin-top: 20px; }
  #index-intro .container .image h2 {
    margin-right: 0;
    font-size: 70px; }
  .pacer .bg {
    height: 150px; }
  .coach svg, .coach2 svg, .pacer svg {
    width: 21px; } }

@media (max-width: 766px) {
  #kv-sponsor .logo div {
    margin: 15px 5px; } }

@media (max-width: 599px) {
  #menu-bar .signup {
    width: 200px; }
    #menu-bar .signup a {
      width: 200px;
      font-size: 12px;
      padding: 5px 3px; }
  #menu-bar #brand #logo {
    top: 17px; }
  #menu ul li a, #menu-bar .signup {
    font-size: 13px;
    margin: 0 5px; }
  #logo-hero .city {
    left: 5px;
    bottom: -33px; }
  #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; }
  #hero {
    height: 530px;
    max-height: 530px; }
  #hero .kv .fromzero {
    left: 85px;
    top: 235px;
    width: 300px;
    height: auto; }
  #hero .kv .tohero {
    bottom: 130px;
    right: 3%; }
  #hero .kv .date {
    width: 30%;
    max-width: 300px;
    top: 165px;
    left: 270px; }
  #hero .kv .bg {
    height: 590px; }
  #index-intro {
    height: auto;
    padding-bottom: 60px; }
    #index-intro h3 {
      font-size: 12px;
      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 {
        max-width: 280px;
        top: 0;
        margin-top: 240px;
        right: auto;
        left: 50%;
        position: absolute; }
  #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 img {
    width: 50%; }
  #index-sponsor div .spcial-logo-02 {
    width: 100%;
    height: auto; }
  #index-sponsor .container div {
    padding: 10px 0; }
  #index-sponsor .container {
    padding: 15vw 0 15vw 0; }
  #index-award h2 {
    margin: 30px auto 30px auto; }
  #index-award .photo {
    height: 200px; }
  #asia-race .text {
    font-size: 15px;
    width: 90%; }
  #asia-race .wrapper ol li {
    min-width: 90px;
    margin: 5px; }
  #asia-race .container p {
    width: 100%; }
  #asia-race p {
    width: 90%; }
  #asia-series-info .container p {
    width: 100%; }
  #index-activity-content .place img {
    width: 100%;
    max-width: 250px; }
  #index-activity-content .text {
    width: 100%;
    margin-left: 0; }
  #index-activity-content h3 {
    font-size: 28px; }
  .rule-table .list table {
    width: 50%; }
  #race-pack {
    padding: 10vw 0; }
    #race-pack h2 {
      padding: 0 40px; }
    #race-pack .basic {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column; }
    #race-pack .frame {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      width: 100%; }
    #race-pack .headerdivider {
      height: 5px;
      width: 100%;
      border-bottom: 2px solid #000;
      border-left: 0;
      margin-bottom: 10px; }
    #race-pack .frame h2,
    #race-pack .frame h3 {
      font-size: 21px;
      width: 90%;
      margin: 0 auto; }
    #race-pack .last {
      margin-bottom: 60px; }
    #race-pack .repc img {
      width: 100%; }
    #race-pack .small {
      width: 90%;
      margin: 0 auto; }
  #race-table .wrapper {
    overflow-x: auto; }
  #race-table .wrapper div, #bus-table .wrapper div {
    width: 180%; }
  #grc .title:before {
    height: 70px; }
  #grc .title {
    height: 150px; }
    #grc .title h2 {
      font-size: 55px; }
  #camp .title {
    margin: 60px auto 30px auto; }
  #camp .container .content img {
    width: 100%; }
  #camp .container .content img {
    width: 100%;
    margin: 30px auto 0px auto; }
  #info-main-content .frame h3 {
    font-size: 21px; }
  .ma-bo-30 {
    margin-bottom: 0px; }
  #index-sponsor div .spcial-logo-02 {
    width: 80%;
    height: auto; }
  #pacer-content .container .people01 .bg:before,
  #pacer-content .container .people02 .bg:before,
  #pacer-content .container .people03 .bg:before,
  #pacer-content .container .people04 .bg:before {
    height: 200px; }
  #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%;
    font-size: 24px; }
  #rungroup .pacer-pic {
    max-width: 400px;
    margin-bottom: 10px;
    width: 90%; }
  #rule-content .container, #faq-content .container:nth-child(1) {
    margin-top: 10vw; }
  #rule-content h3, #faq-content h3 {
    line-height: 1.2 !important; }
  #route-content .container {
    padding: 5vw 0 5vw 0; }
  #route-content .container:nth-child(4) {
    padding: 10vw 0 20vw 0; }
  #route-content .container:nth-child(1) h3 {
    margin-bottom: 0px; }
  #route-content .container .link {
    margin: 10px auto 30px auto;
    text-align: center; }
  #gift .list, #gift-02 .list {
    margin-bottom: 30px; }
    #gift .list .completed .award img, #gift-02 .list .completed .award img {
      margin: 20px 10px; }
    #gift .list .completed .award p, #gift-02 .list .completed .award p {
      height: auto; }
    #gift .list .completed .finisher, #gift-02 .list .completed .finisher {
      min-height: 240px; }
      #gift .list .completed .finisher p, #gift-02 .list .completed .finisher p {
        min-height: auto; }
      #gift .list .completed .finisher img, #gift-02 .list .completed .finisher img {
        margin: 20px 10px;
        max-width: 180px; }
  #gift .link, #gift-02 .link {
    width: 90%;
    margin-bottom: 30px; }
  .about-group-table-2 {
    padding: 10px 0 10vw 0; }
  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; }
  #index-sponsor div .spcial-logo-01 {
    width: 230px;
    height: auto;
    margin-top: 30px; }
  #index-sponsor div .amino {
    width: 250px; }
  .about-group-table .wrapper, .about-group-table-2 .wrapper, .about-group-table-3 .wrapper {
    width: 90%; }
  .guide {
    margin: 30px auto !important;
    max-width: 200px; }
  .btn-cta p {
    font-size: 11px;
    margin-top: 5px; }
  #series .container {
    padding: 30px 0; }
    #series .container .product {
      overflow: auto; }
    #series .container ol {
      width: 170%;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-flow: row;
      flex-flow: row;
      -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
      padding: 0 10px;
      padding-left: 30px; }
    #series .container li {
      padding: 0;
      margin-right: 10px; }
      #series .container li a {
        font-size: 12px !important;
        width: 80%;
        padding: 0.8em 0.2em !important; }
      #series .container li p {
        font-size: 12px;
        margin-top: 10px; }
      #series .container li img {
        max-width: 160px; }
    #series .container li h3 {
      font-size: 16px; }
    #series .container h3 {
      font-size: 24px; }
  #series .container .group li p {
    margin-top: 10px;
    font-size: 12px; } }

@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; }
  #album-content:after {
    font-size: 15vw; }
  #logo-hero .city {
    left: -15px;
    bottom: -10px;
    max-width: 180px; }
  #series .container .group:nth-child(1) h3 hr {
    max-width: 100px; }
  #info-link-group .container .list a {
    margin: 0;
    font-size: 12px !important; }
  .btn-black-fill {
    font-size: 14px !important; }
  #series .container a p {
    font-size: 14px; }
  #camp .title h2 {
    font-size: 32px; }
  #result-content .container .link a {
    font-size: 14px !important; } }

@media (max-width: 390px) {
  #hero {
    height: 520px;
    max-height: 520px; }
  #hero .kv .date {
    left: 254px; }
  #hero .kv .fromzero {
    left: 115px;
    top: 235px;
    width: 250px;
    height: auto; }
  #hero .kv .tohero {
    bottom: 160px;
    right: 3%; } }

@media (max-width: 375px) {
  #index-intro .bg {
    height: 210vw; }
  #asia-race .wrapper a {
    width: 50%; }
  #asia-race .btn-white-fill {
    font-size: 14px !important; }
  #pacer {
    padding: 60px 0 60px 0; }
  #camp .title h2 {
    font-size: 28px;
    margin-bottom: 0; }
  #camp h3 {
    font-size: 21px; }
  #camp p {
    margin-bottom: 30px; } }

@media (max-width: 360px) {
  a {
    width: 90%;
    margin: 0 auto; }
  #hero .kv {
    max-height: 510px; }
  #hero .kv .date {
    left: 240px;
    top: 210px; }
  #hero .kv .fromzero {
    left: 105px;
    top: 265px;
    width: 240px;
    height: auto; }
  #hero .kv .tohero {
    bottom: 20%; }
  #menu-bar .signup {
    width: 300px; }
    #menu-bar .signup a {
      width: 300px;
      font-size: 10px;
      padding: 1em 0.4em; }
  #logo-hero .city {
    max-width: 120px;
    bottom: -23px; }
  #index-intro .bg {
    height: 220vw; }
  #asia-series-info .container a {
    font-size: 12px !important; }
  #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; }
  #menu-bar #brand #logo {
    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; }
  #route-content .container .link a {
    margin: 0 5px;
    font-size: 12px !important; }
  #medal .container .info-award ol li img {
    width: 180px; }
  #race-pack .link, #info-link-group .container .list a {
    font-size: 12px !important;
    max-width: 240px; }
  #race-table .wrapper div, #bus-table .wrapper div {
    overflow-x: hidden; }
  #rungroup h2 {
    margin-top: 35px; }
  #result-content .container .link a {
    font-size: 13px !important; } }

@media (max-width: 320px) {
  #logo-hero .city {
    max-width: 180px;
    bottom: -13px; }
  #menu-bar .signup {
    width: 400px; }
    #menu-bar .signup a {
      width: 400px;
      font-size: 10px;
      padding: 1em 2px; }
  #hero {
    height: 460px;
    max-height: 460px; }
  #hero .kv .date {
    left: 210px;
    top: 175px; }
  #hero .kv .fromzero {
    left: 85px;
    top: 235px;
    width: 220px;
    height: auto; }
  #kv-sponsor img {
    height: 25px; }
  #kv-sponsor .logo div p {
    font-size: 8px; }
  #logo-hero .city {
    max-width: 115px; }
  .btn-cta p {
    font-size: 10px; }
  #index-intro h3 {
    font-size: 12px; }
  #gift .list .completed .award img, #gift-02 .list .completed .award img {
    max-width: 140px; }
  #index-activity-content .place img {
    max-width: 150px; }
  #index-activity-content h3 {
    font-size: 24px; }
  #grc .title h2 {
    font-size: 45px; }
  #kv-page-bar h2 {
    font-size: 28px; }
  #gift .list .completed .finisher img, #gift-02 .list .completed .finisher img {
    margin: 20px 10px;
    max-width: 140px; }
  #series .container .group {
    min-width: 100%; }
  .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; }
  #rungroup h3 {
    width: 85%;
    margin: 15px auto 0 auto;
    font-size: 21px; }
  #route-content .container .link a {
    font-size: 11px !important; }
  #result-content h3 {
    color: #ffffff;
    font-size: 21px;
    margin-top: 60px; }
  #result-content .container .link a {
    font-size: 12px !important; }
  .btn-cta p {
    font-size: 10px; }
  .btn-cta-grc:after, .btn-cta-local:after {
    content: "";
    width: 58.5px;
    height: 58.5px;
    top: 5.5px;
    left: 5.5px; }
  .btn-cta-grc:before, .btn-cta-local:before {
    width: 53.5px;
    height: 53.5px;
    top: 8px;
    left: 8px; } }

#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; } }
