/* common */
.pc {
  display: block;
}

.sp {
  display: none;
}

.top__mainwrap {
  /* overflow: hidden; */
}

/* ナビゲーション */
/* TOPページ */
.new-tournament-banner {
  align-items: center;
  display: flex;
  margin-bottom: 24px;
}

.new-tournament-banner .new-tournament-banner-block {
  align-items: center;
  background: #fff;
  display: flex;
  height: 100px;
  justify-content: center;
  width: 49%;
}

.new-tournament-banner .banner-2021 {
  border: 1px solid #005e96;
  box-shadow: 0 5px 0 0 #005e96;
  margin-right: 2%;
}

.new-tournament-banner .banner-result {
  background: #fcca00;
  color: #000;
  margin-right: 2%;
}

.new-tournament-banner .banner-highlights {
  background: #ccc;
}

.new-tournament-banner .banner-2021 img {
  width: 450px;
}

.new-tournament-banner .banner-result img,
.new-tournament-banner .banner-highlights img {
  width: 530px;
}

.new-tournament-banner .new-tournament-banner-block:hover {
  box-shadow: none;
}

/* 2021年大会 */
.type_naby,
.type_naby .l-titleo__inner {
  background: #0279bf;
  color: #fff;
}

.type_naby .l-tilte__left,
.type_naby .l-titleo__inner h2 {
  background: #005e96;
}

.textcolor_naby {
  color: #005e96 !important;
}

.bgcolor_naby {
  background: #005e96 !important;
}

.new-tournament #top-con .l-contents {
  padding-top: 10px;
}

.new-tournament .top__mainwrap .top__title__block {
  align-items: center;
  background: #fff;
  border: 12px solid #005e96;
  display: flex;
  justify-content: center;
  margin-bottom: 20px;
  padding: 20px 40px;
  text-align: center;
}

.top__mainwrap .top__provisional__block {
  align-items: center;
  background: #fff;
  border: 12px solid #bcce09;
  display: block;
  margin-bottom: 20px;
  padding: 30px;
  text-align: center;
}

.top__mainwrap .top__highlight__block {
  align-items: center;
  background: #fff;
  border: 12px solid #005e96;
  display: block;
  line-height: 3;
  margin-bottom: 20px;
}

.top__mainwrap .top__result__block {
  align-items: center;
  background: #fcca00;
  display: block;
  line-height: 3;
  margin-bottom: 20px;
}

.new-tournament .top__mainwrap .top__title__block img:first-child {
  margin-right: 45px;
}

.new-tournament .top__mainwrap .top__main__visual,
.new-tournament .top__mainwrap .after__2021__event,
.new-tournament .top__mainwrap .top__memorial__visual {
  line-height: 1;
  margin-bottom: 20px;
}

.new-tournament .top__countdown {
  background: #fcca00;
  margin-bottom: 20px;
  padding: 10px 13px;
  text-align: center;
}

.new-tournament .top__countdown .top__countdown_border {
  border-bottom: 1px solid #000;
  border-top: 1px solid #000;
  padding: 17px 0;
}

.new-tournament .top__news_btn .news_btn_text {
  padding-right: 20px;
  position: relative;
}

.new-tournament .top__news_btn .news_btn_text::after {
  border-right: 2px solid #bcce09;
  border-top: 2px solid #bcce09;
  content: "";
  display: block;
  height: 8px;
  position: absolute;
  right: 0;
  top: -1px;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  width: 8px;
}

.new-tournament .top__news_badge {
  background: #005e96;
  color: #fff;
  font-size: 10px;
  line-height: 1;
  padding: 8px 10px;
  position: absolute;
  right: 0;
  top: 0;
}

.new-tournament .top__bnrarea {
  background: #fff;
  padding: 30px 40px;
}

.new-tournament .top__bnrarea ul {
  width: 48.5%;
}

.new-tournament .top__bnrarea ul li {
  width: 100%;
}

.new-tournament .top__information .top__information_title {
  background: #005e96;
}

.new-tournament .top__information .top__information_wrap {
  background: #fff;
  padding: 35px 30px;
}

.new-tournament .top__information .top__information_list {
  display: flex;
  flex-wrap: wrap;
}

.new-tournament .top__information .top__information_list .list_block {
  border-bottom: 1px solid #005e96;
  padding: 20px 30px;
  width: 27.32%;
}

.new-tournament .top__information .top__information_list .list_block {
  border-left: 1px solid #005e96;
}

.new-tournament .top__information .top__information_list .list_block:nth-child(3),
.new-tournament .top__information .top__information_list .list_block:nth-child(5) {
  border-right: 1px solid #005e96;
}

.new-tournament .top__information .top__information_list .list_block:nth-child(-n+3) {
  border-top: 1px solid #005e96;
}

.new-tournament .top__information .top__information_list_title {
  color: #005e96;
  display: block;
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 20px;
}

.new-tournament .top__information .top__information_inner_list .list_item {
  align-items: center;
  display: flex;
  margin-bottom: 5px;
}

.new-tournament .top__information .top__information_inner_list .list_item svg {
  fill: #005e96;
  height: 10px;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 10px;
}

.new-tournament .top__information .top__information_inner_list .list_item a {
  color: #000;
  line-height: 1.6;
  padding-left: 15px;
  position: relative;
}

.top__information .top__information_inner_list .list_item a.etag-ready::after {
  background: #a2a2a2;
  color: #fff;
  content: "Coming Soon";
  display: inline-block;
  font-size: 10px;
  letter-spacing: 0;
  padding: .2em .4em;
  position: relative;
  right: -6px;
  top: 0;
  transform: translateY(-3px);
}

a.tag-end:hover,
a.etag-end02:hover {
  opacity: 1;
}

.top__information .top__information_inner_list .list_item a.tag-end::after {
  background: #a2a2a2;
  color: #fff;
  content: "受付終了";
  display: inline-block;
  font-size: 10px;
  letter-spacing: 0;
  padding: .2em .4em;
  position: relative;
  right: -6px;
  top: 0;
  transform: translateY(-3px);
}

.top__information .top__information_inner_list .list_item a.etag-end02::after {
  background: #a2a2a2;
  color: #fff;
  content: "Closed";
  display: inline-block;
  font-size: 10px;
  letter-spacing: 0;
  padding: .2em .4em;
  position: relative;
  right: -6px;
  top: 0;
  transform: translateY(-3px);
}

a.open_ja::after,
.new-tournament .top__information .top__information_inner_list .list_item a.open_ja::after {
  background: #005e96;
  color: #fff;
  content: "エントリー受付中";
  display: inline-block;
  font-size: 8px;
  letter-spacing: 0;
  padding: .2em .4em;
  position: relative;
  right: -6px;
  top: 0;
  transform: translateY(-3px);
}

a.open_en::after,
.new-tournament .top__information .top__information_inner_list .list_item a.open_en::after {
  background: #005e96;
  color: #fff;
  content: "Now Open";
  display: inline-block;
  font-size: 8px;
  letter-spacing: 0;
  padding: .2em .4em;
  position: relative;
  right: -6px;
  top: 0;
  transform: translateY(-3px);
}

.top__information .top__information_inner_list .list_item a.tag-new::after {
  background: #005e96;
  color: #fff;
  content: "New";
  display: inline-block;
  font-size: 10px;
  letter-spacing: 0;
  padding: .2em .4em;
  position: relative;
  right: -6px;
  top: 0;
  transform: translateY(-3px);
}

.subnav.vr2 .subnav__inner li a.tag-new span::after {
  background: #005e96;
  color: #fff;
  content: "New";
  font-size: 10px;
  letter-spacing: 0;
  margin-left: 5px;
  padding: .4em;
}

.top__mainwrap .top__provisional__block .provisional__title,
.top__mainwrap .top__highlight__block .provisional__title,
.top__mainwrap .top__result__block .provisional__title {
  color: #000 !important;
  font-size: .3rem;
}

.top__mainwrap .top__highlight__block .provisional__title,
.top__mainwrap .top__result__block .provisional__title {
  text-align: center;
}

.after__2021__event img {
  width: 100%;
}

/* 2021年大会 英語版 */
.new-tournament.en .top__title__deta {
  border-bottom: 2px solid #000;
  border-top: 2px solid #000;
  line-height: 1;
  padding: 4px 30px;
  text-align: center;
}

.new-tournament.en .top__title__deta .deta__text {
  color: #000;
  display: block;
  font-size: 26px;
  font-weight: bold;
}

/* 2022年大会 */
.textcolor_yellow {
  color: #f6bf35 !important;
}

.bgcolor_yellow {
  background: #f6bf35 !important;
}

.type_yellow02,
.type_yellow02 .l-titleo__inner {
  background: #FFC940;
  color: #fff;
}

.type_yellow02 .l-tilte__left,
.type_yellow02 .l-titleo__inner h2 {
  background: #F6BF35;
}

/* 出走権が得られるイベント情報 */
.bgcolor_green {
  background: #6db327;
}

.bgcolor_magenta {
  background: #d70072;
}

.type_orange02,
.type_orange02 .l-titleo__inner {
  background: #fd8036;
  color: #fff;
}

.type_orange02 .l-tilte__left,
.type_orange02 .l-titleo__inner h2 {
  background: #ff7422;
}

.is-entry_ticket .l-main__inner {
  padding: 40px 0 0;
}

#entry_ticket_content .title01,
#entry_ticket_content .text03 {
  padding-left: 40px;
}

#entry_ticket_content .entry_ticket-list-item {
  display: flex;
  justify-content: space-between;
  padding: 0 40px 40px;
}

#entry_ticket_content .entry_ticket-list-item img {
  max-width: 100%;
  height: auto;
}

#entry_ticket_content .entry_ticket-list-item:not(:last-child) {
  border-bottom: 1px solid #f4f4f4;
  margin-bottom: 40px;
}

#entry_ticket_content .image-box {
  align-items: center;
  border: 1px solid #f4f4f4;
  display: flex;
  font-size: 0;
  justify-content: center;
  width: 50%;
}

#entry_ticket_content .content-box {
  color: #000;
  width: 47%;
}

#entry_ticket_content .content-box .top-block {
  margin-bottom: 10px;
}

#entry_ticket_content .date-text {
  font-size: 13px;
  font-weight: bold;
  margin-right: 10px;
}

#entry_ticket_content .close-text,
#runner_service_content .close-text {
  color: #dc3b1d;
  display: block;
  font-size: 12px;
  font-weight: bold;
  margin: 20px 0;
  padding: 5px 10px;
  text-align: center;
}

#entry_ticket_content .tag-list {
  align-items: center;
  display: flex;
  margin-top: 5px;
}

#entry_ticket_content .tag-list-item {
  color: #fff;
  font-size: 10px;
  font-weight: bold;
  margin-right: 8px;
  padding: 0 5px;
}

#entry_ticket_content .content-box-title {
  font-size: 18px;
  margin-bottom: 20px;
}

#entry_ticket_content .content-box-title.closed {
  margin-bottom: 5px;
}

#entry_ticket_content .content-box p {
  line-height: 2;
  margin-bottom: 30px;
}

#entry_ticket_content .content-box .content-above-btn {
  margin-bottom: 10px;
}

#entry_ticket_content .content-btn {
  background: #ff7422;
  border-radius: 10px;
  color: #fff;
  display: block;
  font-size: 13px;
  font-weight: bold;
  margin: auto;
  padding: 15px;
  text-align: center;
  width: 300px;
}

/* participants背景画像 */
.check_ttl.check_01_ttl.is_add {
  background: url(/2021/participants/images/check_ttl_bg.png) no-repeat top;
}

.check_ttl.check_02_ttl.is_add {
  background: url(/2021/participants/images/check_ttl_bg.png) no-repeat top;
}

.check_ttl.check_03_ttl.is_add {
  background: url(/2021/participants/images/check_ttl_bg.png) no-repeat top;
}

.entry_schedule .check_ttl.is_add {
  background: url(/2021/participants/images/check_ttl_bg.png) no-repeat top;
}

/* エントリースケジュール */
.entry-btn-block {
  display: flex;
  justify-content: space-between;
  margin: auto;
  max-width: 800px;
}

.entry-btn-block .entry-btn {
  align-items: center;
  background: #005e96;
  border-radius: 10px;
  color: #fff;
  display: flex;
  font-size: 14px;
  justify-content: center;
  padding: 25px 15px;
  text-align: center;
  width: 40%;
}

.entry-btn-block .entry-btn.disabled {
  background: #888;
}

/* eventテーマカラー修正 */
.top__news_tabBox .top__news_tabBox_list > li > a.is-active,
.type_cyan02 {
  color: #fff;
}

.type_cyan02,
.type_cyan02 .l-titleo__inner {
  background: #0BCCEF;
}

.type_cyan02 .l-tilte__left,
.type_cyan02 .l-titleo__inner h2 {
  background: #00B9DB;
}

.textcolor_cyan_03 {
  color: #0BCCEF !important;
}

.title02_02_cyan02 {
  color: #0BCCEF;
  font-size: .18rem;
  line-height: 1.38889;
}

.textcolor_blue_03 {
  color: #005e96 !important;
}

.bgcolor_blue_03 {
  background-color: #005e96 !important
}

.title02_02_cyan02:before {
  border: .3em solid #0BCCEF;
  border-radius: 50%;
  content: "　";
  display: inline-block;
  height: 10px;
  margin-right: 7px;
  vertical-align: middle;
  width: 10px;
}

/* news タブ */
.is-news .tab01 li a,
.is-news .tab01 li span {
  padding: 15px;
}

/* news entryエリア PD add 20241028 */
.is-news .entry {
  overflow-wrap: break-word;
}
/* // news entryエリア PD add 20241028 */

.top__news_list .top__news_badge {
  color: #fff;
  font-size: 10px;
  line-height: 1;
  padding: 8px 10px;
  position: absolute;
  right: 0;
  top: 0;
}

.event_block_flex {
  display: flex;
}

/* 大会配下awmm調整 */
.new-tournament .board_title {
  font-size: 0;
}

/* footer調整 */
.pc_view_footer {
  display: flex;
  gap: 30px;
}

.sp_view_footer {
  display: none;
}

.subnav__inner .header-external-page-link {
  display: flex;
}

.header-external-page-img {
  margin-left: 10px;
}

.faq_usucyan.frequently.common dt {
  width: 100%;
}

.frequently dl {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}

.frequently .faq_box {
  width: 49%;
}

a.textlink02 {
  word-wrap: break-word;
}

.icon_add_link {
  position: relative;
}

.icon_add_link::after {
  background: url("/common/images/top/add_link.svg");
  content: "";
  height: 11px;
  margin-left: 8px;
  position: relative;
  right: 0;
  top: 0;
  width: 13px;
}

/* expoテーマカラー追加 */
.top__news_tabBox .top__news_tabBox_list > li > a.is-active,
.type_purple01 {
  color: #fff;
}

.type_purple01,
.type_purple01 .l-titleo__inner {
  background: #A5A0CF;
}

.type_purple01 .l-tilte__left,
.type_purple01 .l-titleo__inner h2 {
  background: #9B95C9;
}

.title02_02_purple02 {
  color: #A5A0CF;
  font-size: .18rem;
  line-height: 1.38889;
}

.textcolor_purple_01 {
  color: #9B95C9 !important;
}

.bgcolor_purple_01 {
  background-color: #A5A0CF !important
}

.title02_02_purple01 {
  display: flex;
  color: #9B95C9;
}

.title02_02_purple01:before {
  border: .3em solid #9B95C9;
  border-radius: 50%;
  content: "　";
  display: inline-block;
  height: 10px;
  margin-right: 7px;
  vertical-align: middle;
  width: 10px;
  margin-top: 4px;
}


@media print, screen and (max-width: 1023px) {
  /* common */
  .pc {
    display: none;
  }

  .sp {
    display: block;
  }

  /* ナビゲーション */
  .gnav__list__wrap .subnav.vr2 {
    border: none;
    padding: 0;
  }

  .gnav__list__wrap .subnav__wrap .subnav__title {
    display: block;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 12px;
  }

  .gnav__tournament .subnav__inner a svg {
    fill: #00c3cb;
  }

  .gnav__tournament .subnav__wrap .subnav__title {
    color: #00c3cb;
  }

  .gnav__2022 .subnav__inner a svg {
    fill: #f8b400;
  }

  .gnav__2022 .subnav__wrap .subnav__title {
    color: #f8b400;
  }

  /* ランナーの方へ */
  .gnav__service li a svg {
    display: none;
  }

  .gnav__service li a svg + span {
    padding-left: 0;
  }

  /*マイエントリー*/
  .gnav__myentry.gnav__list__wrap .subnav.vr2 {
    padding: 0 23px 23px;
  }

  .gnav__myentry li a svg {
    display: none;
  }

  .gnav__myentry li a svg + span {
    padding-left: 0;
  }

  /* TOPページ */
  .new-tournament-banner {
    display: block;
    margin-bottom: 16px;
    margin-left: 16px;
    margin-right: 16px;
  }

  .new-tournament-banner .new-tournament-banner-block {
    height: auto;
    margin-bottom: 20px;
    width: 100%;
  }

  .new-tournament-banner .new-tournament-banner-block img {
    width: 100%;
  }

  .new-tournament-banner .banner-2021 {
    box-shadow: 0 4px 0 0 #005e96;
  }

  .top__mainwrap .top__provisional__block .provisional__title {
    font-size: 18px;
  }

  .top__mainwrap .top__highlight__block .provisional__title,
  .top__mainwrap .top__result__block .provisional__title {
    font-size: 1em;
  }

  .new-tournament-banner .banner-result h2 {
    font-size: 12px;
  }

  /* 2021年大会 */
  .new-tournament #top-con .l-contents {
    padding-top: 0;
  }

  .l-wrapper.new-tournament {
    padding-top: 90px;
  }

  .l-wrapper.new-tournament .l-header {
    height: 90px;
  }

  .new-tournament .pc-sideheader {
    display: none !important;
  }

  .new-tournament .top__mainwrap .top__title__block {
    border: none;
    display: block;
    line-height: 0;
    margin-bottom: 0;
    padding: 15px 20px;
  }

  .new-tournament .top__mainwrap .top__title__block.first {
    border: 6px solid #f6bf35;
    margin: 20px;
  }

  .new-tournament .top__mainwrap .top__title__block img.sp {
    margin: 0 auto 5px;
  }

  .new-tournament .top__mainwrap .top__title__block img:last-child {
    width: 220px;
  }

  .new-tournament .top__mainwrap .top__main__visual {
    height: auto;
    line-height: 0;
    margin-bottom: 0;
    overflow: visible;
    width: 100%;
  }

  .new-tournament .top__mainwrap .top__main__visual img {
    position: static;
    transform: none;
  }

  .new-tournament .top__countdown {
    padding: 10px 20px;
  }

  .new-tournament .top__countdown .top__countdown_border {
    padding: 6px 0;
  }

  .new-tournament .top__news {
    margin: 0 0 20px;
    padding-bottom: 30px;
  }

  .new-tournament .top__news .top__news_list {
    padding: 20px 20px 4px;
  }

  .new-tournament .top__news_badge {
    right: -14px;
    top: -5px;
    transform: scale(0.6);
  }

  .new-tournament .top__news_list > li:nth-child(3) {
    display: none;
  }

  .new-tournament .top__bnrarea {
    margin-bottom: 30px;
    padding: 30px 20px;
  }

  .new-tournament .top__bnrarea_inner {
    padding: 0;
  }

  .new-tournament .top__bnrarea ul {
    width: 100%;
  }

  .new-tournament .top__bnrarea ul:not(:last-child) {
    margin-bottom: 20px;
  }

  .new-tournament .top__bnrarea ul li {
    line-height: 0;
    margin: 0;
    width: 100%;
  }

  .new-tournament .top__bnrarea ul a {
    font-size: 0;
  }

  .new-tournament .top__information .top__information_title {
    font-size: 15px;
  }

  .new-tournament .top__information .top__information_wrap {
    padding: 20px;
  }

  .new-tournament .top__information .top__information_list {
    border: 1px solid #005e96;
    display: block;
  }

  .new-tournament .top__information .top__information_list:last-child {
    border-bottom: none;
  }

  .new-tournament .top__information .top__information_list .list_block {
    width: auto;
  }

  .new-tournament .top__information .top__information_list .list_block {
    border-left: none;
  }

  .new-tournament .top__information .top__information_list .list_block:nth-child(3),
  .new-tournament .top__information .top__information_list .list_block:nth-child(5) {
    border-right: none;
  }

  .new-tournament .top__information .top__information_list .list_block:nth-child(-n+3) {
    border-top: none;
  }

  .new-tournament .top__information .top__information_list_title {
    margin-bottom: 10px;
  }

  /* 英語大会 */
  .new-tournament.en .top__title__deta {
    border-bottom: 1px solid #000;
    border-top: 1px solid #000;
    margin: 5px auto 0;
    padding: 4px 0;
    width: 260px;
  }

  .new-tournament.en .top__title__deta .deta__text {
    font-size: 16px;
  }

  /* news youtube調整 PD add 20250709 */
  .is-news .entry iframe {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
  }

  /* エントリースケジュール */
  .entry-btn-block .entry-btn {
    font-size: 12px;
    padding: 25px 10px;
  }

  /* 出走権が得られるイベント情報 */
  .is-entry_ticket .l-main {
    padding: 30px 0;
  }

  .is-entry_ticket .l-main__inner {
    padding: 20px 0 0;
  }

  #entry_ticket_content .title01,
  #entry_ticket_content .text03 {
    padding-left: 20px;
  }

  #entry_ticket_content .tag-list-item {
    white-space: nowrap;
  }

  #entry_ticket_content .entry_ticket-list-item {
    display: block;
    padding: 0 20px 25px;
  }

  #entry_ticket_content .entry_ticket-list-item:not(:last-child) {
    margin-bottom: 30px;
  }

  #entry_ticket_content .image-box {
    margin-bottom: 20px;
    width: 100%;
  }

  #entry_ticket_content .content-box {
    width: 100%;
  }

  #entry_ticket_content .date-text {
    font-size: 12px;
  }

  #entry_ticket_content .content-box-title {
    font-size: 15px;
  }

  #entry_ticket_content .content-btn {
    padding: 15px 0;
    width: 100%;
  }

  /* TOPページニュース調整 */
  .top__news_list .top__news_badge {
    padding: 5px 8px;
  }

  .pc_view_footer {
    flex-flow: column;
    gap: 16px;
    margin-bottom: 24px;
  }

  .event_block_flex {
    display: block;
  }

  .event_block_flex .subnav__inner {
    margin-bottom: 40px;
  }

  .faq_usucyan.frequently.common dt {
    display: flex;
    justify-content: center;
    width: 100%;
  }

  .frequently dl {
    display: block;
    width: 100%;
  }

  .frequently .faq_box {
    width: 100%;
  }
}

@media print, screen and (min-width: 1024px) {
  /* ナビゲーション */
  .pc-gnav {
    display: flex;
    justify-content: center;
  }

  .pc-gnav li span {
    color: #000;
  }

  .pc-gnav__past .gnav__inner,
  .pc-gnav__media .gnav__inner {
    left: -25px;
    top: -13px;
  }

  .pc-gnav li.pc-gnav__news span,
  .pc-gnav li.pc-gnav__media span,
  .pc-gnav li.pc-gnav__shop span,
  .pc-gnav li.pc-gnav__myentry span,
  .pc-gnav li.pc-gnav__news.en span,
  .pc-gnav li.pc-gnav__media.en span,
  .pc-gnav li.pc-gnav__myentry.en span {
    background: none;
    width: auto;
  }

  .pc-gnav li.pc-gnav__tournament a:hover span,
  .pc-gnav li.pc-gnav__tournament .current span {
    border-bottom: 2px solid #005e96;
  }

  .pc-gnav li.pc-gnav__2022 a:hover span {
    border-bottom: 2px solid #f6bf35;
  }

  .pc-gnav li.pc-gnav__news a:hover span {
    border-bottom: 2px solid #aebf00;
  }

  .pc-gnav li.pc-gnav__sdgs a:hover span {
    border-bottom: 2px solid #f598cd;
  }

  .pc-gnav li.pc-gnav__service a:hover span,
  .pc-gnav li.pc-gnav__runner a:hover span,
  .pc-gnav li.pc-gnav__runner .current span {
    border-bottom: 2px solid #ff7422;
  }

  .pc-gnav li.pc-gnav__shop a:hover span {
    border-bottom: 2px solid #f9c22f;
  }

  .pc-gnav li.pc-gnav__charity a:hover span {
    border-bottom: 2px solid #f00d8c;
  }

  .pc-gnav li.pc-gnav__volunteer a:hover span {
    border-bottom: 2px solid #21adee;
  }

  .pc-gnav li.pc-gnav__event a:hover span,
  .pc-gnav li.pc-gnav__event .current span {
    border-bottom: 2px solid #0bccef;
  }

  .pc-gnav li.pc-gnav__expo a:hover span {
    border-bottom: 2px solid #A5A0CF;
  }

  .pc-gnav li.pc-gnav__faq a:hover span {
    border-bottom: 2px solid #77b0c3;
  }

  .pc-gnav li.pc-gnav__gallery a:hover span,
  .pc-gnav li.pc-gnav__past a:hover span,
  .pc-gnav li.pc-gnav__past .current span {
    border-bottom: 2px solid #01b4bb;
  }

  .pc-gnav li.pc-gnav__media a:hover span,
  .pc-gnav li.pc-gnav__media .current span {
    border-bottom: 2px solid #126f49;
  }

  .gnav__list__wrap .subnav.runner,
  .gnav__list__wrap .subnav.general,
  .gnav__list__wrap .subnav.volunteer,
  .gnav__list__wrap .subnav.past {
    gap: 55.5px;
    justify-content: center;
  }

  .gnav__list__wrap .subnav.vr2 .subnav__inner {
    display: block;
  }

  .gnav__list__wrap .subnav.vr2 .past__inner {
    display: flex;
  }

  .gnav__inner > li > b span,
  .gnav__inner > li .gnav__tit span {
    max-width: 1240px;
  }

  .gnav__list__wrap .subnav.vr2 .subnav__inner a {
    padding: 0;
    width: 100%;
  }

  .gnav__list__wrap .subnav.vr2 .subnav__inner li,
  .gnav__list__wrap .subnav.vr2 .subnav__inner li:nth-child(3n-1) {
    background-color: #fff;
    min-height: 30px !important;
    margin: 0;
    width: 260px;
  }

  .gnav__list__wrap .subnav.vr2 .past__inner li,
  .gnav__list__wrap .subnav.vr2 .past__inner li:nth-child(3n-1) {
    margin: 0 20px 7px 0;
  }

  .gnav__list__wrap .subnav.vr2 .past__inner li,
  .gnav__list__wrap .subnav.vr2 .past__inner li:nth-child(3n-1),
  .gnav__list__wrap .subnav.vr2 .media__inner li,
  .gnav__list__wrap .subnav.vr2 .media__inner li:nth-child(3n-1) {
    border: initial;
    height: auto;
    margin: 0;
    padding: 0 0 25px;
    width: 100%;
  }

  .past__inner a span:first-child,
  .media__inner a span:first-child {
    font-size: 13px;
    font-weight: 400;
    justify-content: initial;
    margin: 0;
    overflow: initial;
    text-align: left;
    white-space: normal;
  }

  .gnav__list__wrap .subnav.vr2 .subnav__inner a svg,
  .gnav__list__wrap .subnav.vr2 .subnav__inner .link_disable svg {
    top: 50%;
    transform: translateY(-50%);
  }

  .gnav__list__wrap .subnav__wrap .subnav__title {
    display: block;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 20px;
  }

  .gnav__list__wrap .subnav__block {
    width: 30%;
  }

  .gnav__list__wrap .subnav__block.past,
  .gnav__list__wrap .subnav__block.media {
    width: 100%;
  }

  .gnav__list__wrap .subnav__block:not(:last-child) {
    margin-right: 17px;
  }

  .gnav__tournament .subnav.vr2 .subnav__inner a svg {
    fill: #00c3cb;
  }

  .gnav__tournament .subnav__wrap .subnav__title {
    color: #00c3cb;
  }

  .gnav__2022 .subnav.vr2 .subnav__inner a svg {
    fill: #f6bf35;
  }

  .gnav__2022 .subnav__wrap .subnav__title {
    color: #f6bf35;
  }

  .gnav__runner .subnav__wrap .subnav__title {
    color: #ff7422;
  }

  .gnav__past .subnav.vr2 .subnav__inner a svg {
    fill: #dc3b1d;
  }

  .gnav__past .subnav__wrap .subnav__title {
    color: #dc3b1d;
  }

  /* ランナーの方へ */
  .gnav__service svg {
    fill: #ff7422;
    margin-top: 6px;
    vertical-align: top;
  }

  .gnav__service .subnav.vr2 .subnav__inner a svg {
    top: 109px;
  }

  .gnav__service .subnav.vr2 .subnav__inner a {
    padding-top: 108px;
    width: 280px;
  }

  .gnav__service .subnav.vr2 .subnav__inner li:nth-child(2),
  .gnav__service .subnav.vr2 .subnav__inner li:nth-child(3) {
    margin: 0 20px;
  }

  .subnav.vr2 .subnav__inner li .service1 {
    background: url(/common/images/navservice1.jpg) no-repeat top;
    background-size: 280px;
  }

  .subnav.vr2 .subnav__inner li .service2 {
    background: url(/common/images/navservice2.jpg) no-repeat top;
    background-size: 280px;
  }

  .subnav.vr2 .subnav__inner li .service3 {
    background: url(/common/images/navservice3.jpg) no-repeat top;
    background-size: 280px;
  }

  .subnav.vr2 .subnav__inner li .service4 {
    background: url(/common/images/navservice4.jpg) no-repeat top;
    background-size: 280px;
  }

  /* add 202504 オフィシャルグッズ */
  .gnav__shop .subnav__wrap {
    justify-content: flex-end;
  }

  /*マイエントリー*/
  .gnav .gnav__myentry .gnav__tit {
    background: #005bac;
  }

  .gnav .gnav__myentry.gnav__list__wrap .subnav__wrap {
    max-width: 1000px;
  }

  .gnav.en_gnav .gnav__myentry.gnav__list__wrap .subnav__wrap {
    max-width: 940px;
  }

  .gnav .gnav__myentry.gnav__list__wrap .subnav.vr2 {
    justify-content: flex-end;
  }

  .gnav .gnav__myentry.gnav__list__wrap .subnav.vr2 .subnav__inner li {
    margin: 0 0 10px 0;
  }

  .gnav__myentry.gnav__list__wrap .subnav.vr2 .subnav__inner a {
    font-size: 16px;
  }

  .gnav .gnav__myentry .subnav__wrap svg {
    fill: #005bac;
  }

  /* footer調整 */
  .m-footer02,
  .m-footer02_en {
    height: auto;
  }

  .m-footer02 .l-footer_inner,
  .m-footer02_en .l-footer_inner {
    align-items: center;
    display: flex;
    justify-content: space-between;
  }

  /* past2025タブ調整 PD add 20250717 */
  .has-relay.tab01 > ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }
  
  .has-relay.tab01 li a,
  .has-relay.tab01 li span {
    padding: 12px;
    display: flex;
    align-items: center;
    height: 100%;
    box-sizing: border-box;
    text-align: center;
    line-height: 1.25;
  }
  
  .has-relay.tab01 li {
    float: none;
    margin-right: 0;
  }
}

@media screen and (max-width: 768px) {
  /* past2025タブ調整 PD add 20250717 */
  .has-relay.tab01 li a,
  .has-relay.tab01 li span {
    padding: 10px 12px;
  }
}
