@charset "UTF-8";
/**
2025デザイン変更用に作成
過去のCSS参照箇所があるため、style.css,assets/css/style.cssは残している
*/
/**-----------------------------------
共通
-----------------------------------*/
.pc {
  display: block;
}

.sp {
  display: none !important;
}

.container {
  width: 100%;
  max-width: 1230px;
  padding: 0 15px;
  margin: 0 auto;
}

.common_h2_01 {
  margin-bottom: 40px;
}
.common_h2_01 .txt {
  display: flex;
  justify-content: flex-start;
  align-items: end;
}
.common_h2_01 .txt .en {
  color: #000;
  font-size: 40px;
  font-weight: 600;
}
.common_h2_01 .txt .ja {
  color: #000;
  font-size: 18px;
  font-weight: bold;
  position: relative;
  padding-left: 30px;
  margin-bottom: 5px;
}
.common_h2_01 .txt .ja::before {
  content: "/";
  color: #000;
  position: absolute;
  top: 0;
  left: 10px;
  transform: rotate(25deg);
}

.displayed.fadeInUp {
  opacity: 0;
  transform: translateY(100px);
  animation-name: fadeIn;
  animation-duration: 1s;
  animation-fill-mode: forwards;
}
.displayed.fadeInLeft {
  opacity: 0;
  transform: translateX(150px);
  animation-name: fadeIn;
  animation-duration: 1.5s;
  animation-fill-mode: forwards;
  animation-delay: 0.5s;
}
.displayed.fadeInRight {
  opacity: 0;
  transform: translateX(-150px);
  animation-name: fadeIn;
  animation-duration: 1.5s;
  animation-fill-mode: forwards;
  animation-delay: 0.5s;
}

@keyframes fadeIn {
  100% {
    opacity: 1;
    transform: translate(0);
  }
}
@keyframes drawLineBefore {
  from {
    width: 0;
    opacity: 1;
  }
  to {
    width: 35%;
    opacity: 1;
  }
}
@keyframes drawLineAfter {
  from {
    width: 0;
    opacity: 1;
  }
  to {
    width: 35%;
    opacity: 1;
  }
}
@keyframes drawLineBefore02 {
  from {
    width: 0;
    opacity: 1;
  }
  to {
    width: 25%;
    opacity: 1;
  }
}
@keyframes drawLineAfter02 {
  from {
    width: 0;
    opacity: 1;
  }
  to {
    width: 25%;
    opacity: 1;
  }
}
.common_btn01 {
  width: 80%;
  max-width: 220px;
  padding-bottom: 10px;
  padding-right: 10px;
  position: relative;
  z-index: 1;
}
.common_btn01 a {
  width: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  background: #000;
  padding: 18px;
}
.common_btn01 a::before {
  content: "";
  width: 20px;
  height: 20px;
  background: #fff100;
  position: absolute;
  right: -10px;
  border-radius: 50%;
  top: calc(50% - 10px);
  right: 10px;
}
.common_btn01 a::after {
  content: "";
  width: 8px;
  height: 8px;
  margin: 0 10px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  transform: rotate(45deg);
  position: absolute;
  top: calc(50% - 4px);
  right: 7px;
  transition: 0.3s;
}
.common_btn01 a .txt {
  font-size: 16px;
  font-weight: bold;
  color: #fff;
}
.common_btn01 a:hover, .common_btn01 a:focus-visible {
  background: #fff100;
}
.common_btn01 a:hover .txt, .common_btn01 a:focus-visible .txt {
  color: #000;
}
.common_btn01 a:hover::before, .common_btn01 a:focus-visible::before {
  background: #000;
}
.common_btn01 a:hover::after, .common_btn01 a:focus-visible::after {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

/**-----------------------------------
ヘッダー
-----------------------------------*/
.header {
  width: 100%;
}
.header .hdader_inner {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 20px 15px;
  display: flex;
  justify-content: space-between;
}
.header .hdader_inner .header_block {
  width: 20%;
  max-width: 420px;
}
@media only screen and (max-width: 1100px) {
  .header .hdader_inner .header_block {
    width: 20%;
  }
}
.header .hdader_inner .header_logo .header_logo_link {
  display: block;
  margin-bottom: 10px;
}
.header .hdader_inner .header_logo .header_past_link {
  display: block;
  border: 2px solid #000;
  padding: 5px 40px 5px 40px;
  color: #000;
  font-size: 16px;
  text-decoration: none;
  position: relative;
  font-weight: 500;
  text-align: center;
}
@media only screen and (max-width: 1100px) {
  .header .hdader_inner .header_logo .header_past_link {
    font-size: 14px;
    padding: 5px 25px 5px 25px;
  }
}
.header .hdader_inner .header_logo .header_past_link::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  z-index: -1;
  transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
}
.header .hdader_inner .header_logo .header_past_link::after {
  content: "";
  width: 10px;
  height: 10px;
  margin: 0 10px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  transform: rotate(45deg);
  position: absolute;
  top: calc(50% - 5px);
  right: 5px;
  transition: 0.3s;
}
.header .hdader_inner .header_logo .header_past_link:hover {
  color: #fff;
}
.header .hdader_inner .header_logo .header_past_link:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}
.header .hdader_inner .header_logo .header_past_link:hover::after {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  right: 0;
}
.header .hdader_inner .header_content {
  width: calc(78% - 270px);
  max-width: 720px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-size: min(1vw, 16px);
}
@media only screen and (max-width: 1100px) {
  .header .hdader_inner .header_content {
    width: calc(78% - 200px);
  }
}
.header .hdader_inner .header_content .countdown_block {
  width: 100%;
  background: #000;
  display: flex;
  justify-content: center;
  padding: 0.625em;
  align-items: center;
  margin-bottom: 10px;
}
.header .hdader_inner .header_content .countdown_block .event_period {
  font-size: 1.5em;
  font-weight: 600;
  position: relative;
  padding-right: 15px;
  color: #fff;
}
.header .hdader_inner .header_content .countdown_block .event_period .small {
  font-size: 0.75em;
}
.header .hdader_inner .header_content .countdown_block .event_period::after {
  content: "";
  width: 2px;
  height: 100%;
  background: #fff100;
  position: absolute;
  top: 0;
  right: 0;
}
.header .hdader_inner .header_content .countdown_block .countdown {
  font-size: 1.5em;
  font-weight: 600;
  padding-left: 15px;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}
.header .hdader_inner .header_content .countdown_block .countdown .small {
  font-size: 1em;
}
.header .hdader_inner .header_content .countdown_block .countdown .num {
  font-size: 1.5em;
  font-weight: bold;
  padding: 0 5px;
}
.header .hdader_inner .header_content .hd_area {
  width: 100%;
  display: flex;
  justify-content: space-between;
  gap: 15px;
}
.header .hdader_inner .header_content .hd_area .area {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 2px;
}
.header .hdader_inner .header_content .hd_area .area .num {
  font-size: 1.375em;
  font-weight: bold;
}
.header .hdader_inner .header_content .hd_area .area .txt {
  font-size: 1em;
  font-weight: bold;
}
.header .hdader_inner .header_content .hd_area .area .week {
  font-size: 0.75em;
  font-weight: 500;
  color: #fff100;
  background: #000;
  border-radius: 50px;
  width: 1.5em;
  height: 1.5em;
  display: flex;
  justify-content: center;
  align-items: center;
}
.header .hdader_inner .header_content .hd_area .area .week.en {
  width: 2.5em;
  height: 2.5em;
}
.header .hdader_inner .hd_link {
  width: 270px;
  display: flex;
  align-items: end;
}
@media only screen and (max-width: 1100px) {
  .header .hdader_inner .hd_link {
    width: 200px;
  }
}
.header .hdader_inner .icon_block {
  width: 100%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.header .hdader_inner .icon_block .lang_change {
  margin: 0 15px;
  position: relative;
  display: inline-block;
}
.header .hdader_inner .icon_block select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: url(../img/common/lang_icon.png) center no-repeat;
  width: 80px;
  height: 30px;
  background-size: contain;
  font-size: 0;
  padding: 5px;
  cursor: pointer;
}
.header .hdader_inner .icon_block select option {
  font-size: 20px;
}
@media only screen and (max-width: 1100px) {
  .header .hdader_inner .icon_block select {
    width: 50px;
  }
}
.header .hdader_inner .icon_block .sns_list {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
}
.header .hdader_inner .icon_block .sns_list li {
  width: 40px;
  height: 40px;
}
@media only screen and (max-width: 1100px) {
  .header .hdader_inner .icon_block .sns_list li {
    width: 30px;
    height: 30px;
  }
}
.header .nav {
  width: 100%;
  background: #000;
  padding: 0 15px;
  position: relative;
}
.header .nav .nav_list {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  justify-content: center;
}
.header .nav .nav_list li {
  width: 16.6666666667%;
}
.header .nav .nav_list li.soon {
  display: none !important;
}
.header .nav .nav_list li a {
  display: flex;
  justify-content: center;
  align-content: center;
  flex-wrap: wrap;
  padding: 20px 0;
}
.header .nav .nav_list li a .en {
  color: #fff100;
  font-size: 14px;
  font-weight: 500;
  display: block;
  width: 100%;
  text-align: center;
  margin-bottom: 5px;
}
.header .nav .nav_list li a .ja {
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  display: block;
  width: 100%;
  text-align: center;
}
.header .nav .nav_list li a:hover, .header .nav .nav_list li a:focus-within {
  background: #fff100;
}
.header .nav .nav_list li a:hover .en, .header .nav .nav_list li a:focus-within .en {
  color: #000;
}
.header .nav .nav_list li a:hover .ja, .header .nav .nav_list li a:focus-within .ja {
  color: #000;
}
.header .nav .nav_list li:has(.nav_clist) a {
  cursor: pointer;
}
.header .nav .nav_list li .nav_clist {
  display: none; /* デフォルトは非表示 */
  position: absolute;
  top: 100%;
  left: 0;
  background-color: #444;
  list-style: none;
  padding: 0;
  margin: 0;
  z-index: 100; /* 他の要素の上に表示 */
  width: 100%;
}
.header .nav .nav_list li .nav_clist li {
  width: auto;
}
.header .nav .nav_list li .nav_clist li a {
  display: flex;
  justify-content: center;
  align-content: center;
  flex-wrap: wrap;
  padding: 20px;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
}
.header .nav .nav_list li .nav_clist li a:hover, .header .nav .nav_list li .nav_clist li a:focus-within {
  color: #000;
}
.header .nav .nav_list li:hover .nav_clist, .header .nav .nav_list li:focus-within .nav_clist, .header .nav .nav_list li.active .nav_clist {
  display: flex;
  justify-content: center;
  align-items: center;
}
.header .nav.en_nav .nav_list li a .en {
  font-size: 16px;
  margin-top: 5px;
}

/**-----------------------------------
TOP
-----------------------------------*/
.top_mv_bg {
  width: 100%;
  background: #fff100;
}
.top_mv_bg .mv_movie {
  padding: 60px 0;
}

.top_fix_bnr {
  position: fixed;
  bottom: 27px;
  right: 30px;
  z-index: 200;
  gap: 10px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  max-width: 240px;
}
@media only screen and (max-width: 1280px) {
  .top_fix_bnr {
    max-width: 200px;
  }
}
.top_fix_bnr a {
  box-shadow: 10px 10px 15px rgba(100, 101, 65, 0.25);
  max-width: 240px;
  width: 100%;
  transition: opacity 0.3s;
  pointer-events: auto;
}

.top_news_sec {
  width: 100%;
  padding: 100px 0;
}
.top_news_sec .container {
  overflow: hidden;
}
.top_news_sec .top_news_block {
  margin: 0 auto 50px;
}
.top_news_sec .top_news_block .news-item a {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  padding: 20px 0;
  border-bottom: 1px solid #ddd;
  gap: 20px;
}
.top_news_sec .top_news_block .news-item a .news-new {
  display: inline-block;
  background: #00aaeb;
  color: #fff;
  font-weight: bold;
  font-size: 16px;
  padding: 5px 26px;
  clip-path: polygon(8% 0, 100% 0, 92% 100%, 0% 100%);
  width: 100px;
  text-align: center;
}
.top_news_sec .top_news_block .news-item a .news-space {
  width: 100px;
  display: inline-block;
}
.top_news_sec .top_news_block .news-item a .news-date {
  font-size: 16px;
  color: #808080;
  font-weight: 500;
}
.top_news_sec .top_news_block .news-item a .news-title {
  font-size: 16px;
  font-weight: bold;
  padding: 5px;
}
.top_news_sec .top_news_block .news-item.news-item-first a {
  padding-bottom: 40px;
  gap: 50px;
}
.top_news_sec .top_news_block .news-item.news-item-first a .news-thumb {
  width: 320px;
  aspect-ratio: 3/2;
  position: relative;
  overflow: hidden;
}
.top_news_sec .top_news_block .news-item.news-item-first a .news-thumb img {
  position: absolute;
  -o-object-fit: contain;
     object-fit: contain;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.top_news_sec .top_news_block .news-item.news-item-first a .news-new {
  font-size: 24px;
  width: auto;
}
.top_news_sec .top_news_block .news-item.news-item-first a .news-date {
  margin: 15px 0;
}
.top_news_sec .top_news_block .news-item.news-item-first a .news-title {
  font-size: 26px;
  font-weight: bold;
}
.top_news_sec .top_news_btn {
  margin: 0 0 0 auto;
}

.slide01 {
  position: relative;
}
.slide01 .swiper-wrapper {
  height: auto;
}
.slide01 a:hover {
  opacity: 0.7;
}
.slide01 .swiper-slide .img {
  position: relative;
  width: 100%;
  padding-top: 153.3%;
  margin-bottom: 15px;
}
.slide01 .swiper-slide .img img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-fit: contain;
     object-fit: contain;
  background: #ddd;
}
.slide01 .swiper-slide .date {
  display: inline-block;
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 15px;
  color: #111;
}
.slide01 .swiper-slide .ttl {
  font-size: 16px;
  color: #111;
}
.slide01 .swiper-slide:focus-within {
  border: 2px solid #000;
}
.slide01 .swiper-button-prev {
  width: 60px;
  height: 60px;
  background: url(../img/common/slide01_arrow.png) center no-repeat;
  background-size: contain;
  top: 40%;
  left: -15px;
}
.slide01 .swiper-button-prev::after {
  content: none;
}
.slide01 .swiper-button-next {
  width: 60px;
  height: 60px;
  background: url(../img/common/slide01_arrow.png) center no-repeat;
  background-size: contain;
  top: 40%;
  right: -15px;
}
.slide01 .swiper-button-next::after {
  content: none;
}

.catchphrase_area {
  width: 100%;
  position: relative;
}
.catchphrase_area .catchphrase_img {
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
}
.catchphrase_area .catchphrase_txt {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.catchphrase_area .catchphrase_txt .txt01 {
  font-size: 84px;
  color: #fff000;
  font-weight: 500;
  text-align: center;
  margin-bottom: 15px;
  opacity: 0;
}
.catchphrase_area .catchphrase_txt .txt01 span {
  background: #000;
  padding: 0 20px;
  line-height: 1.5;
}
.catchphrase_area .catchphrase_txt .txt02 {
  font-size: 38px;
  color: #fff000;
  font-weight: bold;
  text-align: center;
  opacity: 0;
}
.catchphrase_area .catchphrase_txt .txt02 span {
  background: #000;
  padding: 0 20px;
  line-height: 1.5;
}
.catchphrase_area .catchphrase_txt .txt03 {
  font-size: 70px;
  color: #fff000;
  font-weight: bold;
  text-align: center;
  opacity: 0;
}
.catchphrase_area .catchphrase_txt .txt03 span {
  background: #000;
  padding: 0 20px;
  line-height: 1.5;
}

.top_event_sec {
  width: 100%;
  padding: 100px 0;
}
.top_event_sec .container {
  overflow: hidden;
}
.top_event_sec .top_event-cate_tab {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 50px;
}
.top_event_sec .top_event-cate_tab .cate_tab_btn {
  font-size: 22px;
  color: #808080;
  width: 16.6666666667%;
  text-align: center;
  cursor: pointer;
  padding: 3px;
}
.top_event_sec .top_event-cate_tab .cate_tab_btn.current {
  color: #000;
  border-bottom: 4px solid #fff000;
}
.top_event_sec .top_event_block {
  margin: 0 auto 50px;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 40px;
}
.top_event_sec .top_event_block .event-item {
  width: calc((100% - 120px) / 4);
}
.top_event_sec .top_event_block .event-item a {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
  align-content: flex-start;
  gap: 10px;
}
.top_event_sec .top_event_block .event-item a .event-thumb {
  width: 100%;
  aspect-ratio: 3/2;
  position: relative;
  overflow: hidden;
  margin-bottom: 5px;
}
.top_event_sec .top_event_block .event-item a .event-thumb img {
  position: absolute;
  -o-object-fit: contain;
     object-fit: contain;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.top_event_sec .top_event_block .event-item a .event-cat {
  display: inline-block;
  background: #000;
  color: #fff;
  font-weight: bold;
  font-size: 14px;
  padding: 5px 26px;
  clip-path: polygon(8% 0, 100% 0, 92% 100%, 0% 100%);
  width: 100px;
  text-align: center;
}
.top_event_sec .top_event_block .event-item a .event-date {
  font-size: 16px;
  color: #808080;
  font-weight: 500;
}
.top_event_sec .top_event_block .event-item a .event-title {
  font-size: 16px;
  font-weight: bold;
  padding: 5px;
  width: 100%;
  line-height: 1.5;
}
.top_event_sec .top_event_block .event-item.event-item-first {
  width: 100%;
}
.top_event_sec .top_event_block .event-item.event-item-first a {
  padding-bottom: 40px;
  gap: 50px;
}
.top_event_sec .top_event_block .event-item.event-item-first a .event-thumb {
  width: 320px;
  margin-bottom: 0;
}
.top_event_sec .top_event_block .event-item.event-item-first a .event-item_txtbox {
  width: calc(100% - 320px - 50px);
}
.top_event_sec .top_event_block .event-item.event-item-first a .event-cat {
  font-size: 20px;
  width: auto;
}
.top_event_sec .top_event_block .event-item.event-item-first a .event-date {
  margin: 15px 0;
  font-size: 20px;
}
.top_event_sec .top_event_block .event-item.event-item-first a .event-title {
  font-size: 26px;
  font-weight: bold;
}
.top_event_sec .top_event_btn {
  margin: 0 0 0 auto;
}
.top_event_sec .top_event_btn.last {
  margin-bottom: 0;
}

.event_cate_ttl, .top_result_cate_ttl {
  background: #000;
  color: #fff;
  padding: 15px;
  font-size: 28px;
  font-weight: bold;
  margin-bottom: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
.event_cate_ttl::before, .event_cate_ttl::after, .top_result_cate_ttl::before, .top_result_cate_ttl::after {
  content: "";
  width: 0;
  height: 14px;
  background: url(../img/common/event_cate_ttl_item.svg);
  background-repeat: repeat-x;
  background-size: contain;
  position: absolute;
  z-index: 5;
  opacity: 0;
}
.event_cate_ttl::before, .top_result_cate_ttl::before {
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.event_cate_ttl::after, .top_result_cate_ttl::after {
  top: 50%;
  left: 65%;
  transform: translateY(-50%);
}
.event_cate_ttl.displayed::before, .top_result_cate_ttl.displayed::before {
  animation: drawLineBefore 0.5s forwards;
}
.event_cate_ttl.displayed::after, .top_result_cate_ttl.displayed::after {
  animation: drawLineAfter 0.5s forwards 0.5s; /* delay after before animation */
}

.top_result_cate_ttl {
  font-size: 24px;
}
.top_result_cate_ttl::after {
  left: 75%;
}
.top_result_cate_ttl.displayed::before {
  animation: drawLineBefore02 0.5s forwards;
}
.top_result_cate_ttl.displayed::after {
  animation: drawLineAfter02 0.5s forwards 0.5s; /* delay after before animation */
}

.top_calendar_sec {
  width: 100%;
  padding: 100px 0;
}
.top_calendar_sec .top_calendar_block {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}
.top_calendar_sec .top_calendar_block .current_month {
  display: flex;
  justify-content: center;
  margin-bottom: 20px;
}
.top_calendar_sec .top_calendar_block .current_month .month {
  font-size: 32px;
  font-weight: bold;
}
.top_calendar_sec .top_calendar_block .current_month .month .num {
  font-size: 52px;
  padding: 3px;
}
.top_calendar_sec .top_calendar_block .event-calendar {
  width: 100%;
  border-collapse: collapse;
  margin-top: 1em;
}
.top_calendar_sec .top_calendar_block .event-calendar th, .top_calendar_sec .top_calendar_block .event-calendar td {
  border: 1px solid #ddd;
  width: 14.28%;
  vertical-align: top;
  padding: 8px 4px;
  text-align: left;
}
.top_calendar_sec .top_calendar_block .event-calendar th {
  background: #999;
  color: #fff;
  text-align: center;
}
.top_calendar_sec .top_calendar_block .event-calendar .event_col td {
  border-top: none;
  border-bottom: none;
}
.top_calendar_sec .top_calendar_block .event-calendar .date-col td.special_day {
  background: #fff100;
  color: #000;
  position: relative;
}
.top_calendar_sec .top_calendar_block .event-calendar .date-col td .event-name {
  font-size: 13px;
  color: #000;
  position: absolute;
  top: 50%;
  left: 25px;
  transform: translateY(-50%);
  line-height: 1.2;
}
.top_calendar_sec .top_calendar_block .event-calendar .date-num {
  font-weight: bold;
  font-size: 0.9em;
}
.top_calendar_sec .top_calendar_block .event-calendar .event {
  margin-top: 4px;
  padding: 4px;
  font-size: 0.85em;
}
.top_calendar_sec .top_calendar_block .event-calendar .event a {
  text-decoration: none;
  display: block;
  color: #000;
  padding: 5px;
  border-radius: 5px;
}
.top_calendar_sec .top_calendar_block .event-calendar .out-of-month {
  background: #f9f9f9;
  color: #ccc;
}
.top_calendar_sec .top_calendar_block .calendar-nav {
  display: flex;
  justify-content: flex-end;
}
.top_calendar_sec .top_calendar_block .calendar-button {
  background-color: #f0f0f0;
  border: 1px solid #ccc;
  padding: 4px 8px;
  margin: 2px 5px;
  cursor: pointer;
  border-radius: 4px;
}

.top_stage_sec {
  width: 100%;
  padding: 100px 0 50px;
  background-size: contain;
}
.top_stage_sec .top_event_block {
  margin-bottom: 50px;
}
.top_stage_sec .top_event_btn {
  margin: 0 auto 80px;
}
.top_stage_sec .top_event_btn.last {
  margin-bottom: 0;
}
.top_stage_sec .top_stage_img {
  width: 80%;
  max-width: 640px;
  margin: 15px auto 0;
  text-align: center;
}
.top_stage_sec .top_stages_block {
  width: 100%;
  position: relative;
}
.top_stage_sec .top_stages_block a {
  display: block;
}
.top_stage_sec .top_stages_block a:hover {
  opacity: 0.7;
}
.top_stage_sec .top_stages_block .top_stages_box {
  position: absolute;
}
.top_stage_sec .top_stages_block .top_stages_box.stage_ex {
  top: 39%;
  width: 35%;
  left: 4%;
}
.top_stage_sec .top_stages_block .top_stages_box.stage_01 {
  top: 4%;
  width: 28%;
  left: 15%;
}
.top_stage_sec .top_stages_block .top_stages_box.stage_02 {
  width: 28%;
  top: 12%;
  right: 6%;
}
.top_stage_sec .top_stages_block .top_stages_box.stage_03 {
  width: 28%;
  bottom: 26%;
  right: 11%;
}

.top_discover_sec {
  width: 100%;
  padding: 100px 0;
  background: #f2f2f2;
  overflow: hidden;
}
.top_discover_sec .discover_container {
  width: 100%;
}
.top_discover_sec .discoverSwiper {
  max-width: 1200px;
  margin: 0 auto;
}
@media only screen and (max-width: 980px) {
  .top_discover_sec .discoverSwiper {
    width: 80%;
  }
}
.top_discover_sec .discoverSwiper_block {
  width: 100%;
  max-width: 1600px;
  margin: 0px auto;
  position: relative;
}
.top_discover_sec .slider-container {
  position: relative;
  width: 100%;
  margin: auto;
  overflow: hidden;
  padding-bottom: 100px;
  padding-top: 50px;
  z-index: 5;
}
.top_discover_sec .background-arc {
  position: absolute;
  top: 25%;
  left: 50%;
  transform: translate(-50%, 0%);
  width: 100%;
  height: 200%;
  max-width: 1920px;
  max-height: 740px;
  z-index: -1;
}
.top_discover_sec .background-arc .bg-layer {
  position: absolute;
  width: 100%;
  height: 100%;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center top;
  transition: opacity 2s ease;
  opacity: 0;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
}
.top_discover_sec .background-arc .bg-layer.active {
  opacity: 1;
  z-index: 2;
}
.top_discover_sec .swiper-slide {
  text-align: center;
  font-size: 18px;
}
.top_discover_sec .swiper-slide img {
  width: 70%;
  height: auto;
  max-width: 360px;
  max-height: 360px;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.3s;
}
.top_discover_sec .thumbnail_bnr-container {
  width: 100%;
  max-width: 1400px;
  margin: 20px auto 40px;
}
.top_discover_sec .thumbnail_bnr-container .thum_bnr_block {
  width: 100%;
  display: none;
  justify-content: center;
  gap: 20px;
}
.top_discover_sec .thumbnail_bnr-container .thum_bnr_block a {
  width: calc((100% - 80px) / 5);
  display: block;
}
.top_discover_sec .thumbnail_bnr-container .thum_bnr_block a:hover {
  opacity: 0.7;
}
.top_discover_sec .thumbnail-container {
  width: 100%;
  max-width: 1400px;
  margin: 40px auto 20px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
}
.top_discover_sec .thumbnail-container a {
  display: block;
  width: calc((100% - 60px) / 4);
  height: auto;
  transition: opacity 0.3s;
}
.top_discover_sec .thumbnail-container a:hover {
  opacity: 0.7;
}
.top_discover_sec .swiper-backface-hidden .swiper-slide {
  transform: scale(0.6) translateY(25%);
  opacity: 0;
}
.top_discover_sec .swiper-backface-hidden .swiper-slide.swiper-slide-next {
  opacity: 1;
  transition: 0.5s;
  transform: scale(0.9) rotate(15deg) translateY(20%);
}
.top_discover_sec .swiper-backface-hidden .swiper-slide.swiper-slide-prev {
  opacity: 1;
  transition: 0.5s;
  transform: scale(0.9) rotate(-15deg) translateY(20%);
}
.top_discover_sec .swiper-backface-hidden .swiper-slide.swiper-slide-active {
  opacity: 1;
  transition: 0.5s;
  transform: scale(1.1) rotate(0) translateY(0%);
}
.top_discover_sec .prefecture {
  display: flex;
  justify-content: center;
  align-content: center;
  flex-wrap: wrap;
  width: 60%;
  max-width: 360px;
  margin: 10px auto 0;
}
.top_discover_sec .prefecture .en {
  color: #fff;
  display: block;
  width: 100%;
  padding-bottom: 5px;
  margin-bottom: 10px;
  font-size: 36px;
  font-weight: 500;
  border-bottom: 3px solid #fff;
}
.top_discover_sec .prefecture .ja {
  color: #fff;
  display: block;
  width: 100%;
  font-size: 28px;
  font-weight: bold;
}
@media only screen and (max-width: 980px) {
  .top_discover_sec .prefecture .en {
    font-size: 24px;
  }
  .top_discover_sec .prefecture .ja {
    font-size: 20px;
  }
}
.top_discover_sec .swiper-button-prev {
  width: 60px;
  height: 60px;
  background: url(../img/common/slide01_arrow.png) center no-repeat;
  background-size: contain;
  top: 40%;
  left: 0;
}
.top_discover_sec .swiper-button-prev::after {
  content: none;
}
.top_discover_sec .swiper-button-next {
  width: 60px;
  height: 60px;
  background: url(../img/common/slide01_arrow.png) center no-repeat;
  background-size: contain;
  top: 40%;
  right: 0;
}
.top_discover_sec .swiper-button-next::after {
  content: none;
}

.top_outline_sec {
  width: 100%;
  padding: 100px 0;
  background: #fffee6;
}
.top_outline_sec .top_outline_block {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 30px;
}
.top_outline_sec .top_outline_block .outline_box {
  width: calc((100% - 60px) / 3);
  max-width: 580px;
  text-decoration: none;
  overflow: hidden;
  position: relative;
}
.top_outline_sec .top_outline_block .outline_box:hover, .top_outline_sec .top_outline_block .outline_box:focus-within {
  opacity: 0.7;
}

.top_partner_logo {
  margin: 30px auto 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 100%;
  gap: 20px 0;
}
.top_partner_logo img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
}
.top_partner_logo a:hover {
  opacity: 0.7;
}

.top_partner_sec {
  width: 100%;
  padding: 70px 0 100px;
}
.top_partner_sec .top_partner_diamond {
  width: 100%;
  margin: 0 auto 50px;
}
.top_partner_sec .top_partner_diamond .top_partner_diamond_ttl {
  margin-bottom: 30px;
  position: relative;
}
.top_partner_sec .top_partner_diamond .top_partner_diamond_ttl::before {
  content: "";
  width: 100%;
  height: 2px;
  background: #ddd;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 5;
}
.top_partner_sec .top_partner_diamond .top_partner_diamond_ttl::after {
  content: "";
  width: 150px;
  height: 2px;
  background: #fff100;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 6;
}
.top_partner_sec .top_partner_diamond .top_partner_diamond_ttl .ttl {
  padding: 10px 30px 10px 20px;
  color: #000;
  font-size: 24px;
  font-weight: 500;
  position: relative;
  display: inline-block;
}
.top_partner_sec .top_partner_diamond .top_partner_logo .top_partner_logo_item {
  width: 265px;
  height: auto;
}
.top_partner_sec .top_partner_diamond .top_partner_logo .top_partner_logo_item a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.top_partner_sec .top_partner_platinum {
  width: 100%;
  margin: 0 auto 50px;
}
.top_partner_sec .top_partner_platinum .top_partner_platinum_ttl {
  margin-bottom: 30px;
  position: relative;
}
.top_partner_sec .top_partner_platinum .top_partner_platinum_ttl::before {
  content: "";
  width: 100%;
  height: 2px;
  background: #ddd;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 5;
}
.top_partner_sec .top_partner_platinum .top_partner_platinum_ttl::after {
  content: "";
  width: 150px;
  height: 2px;
  background: #fff100;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 6;
}
.top_partner_sec .top_partner_platinum .top_partner_platinum_ttl .ttl {
  padding: 10px 30px 10px 20px;
  color: #000;
  font-size: 24px;
  font-weight: 500;
  position: relative;
  display: inline-block;
}
.top_partner_sec .top_partner_platinum .top_partner_logo .top_partner_logo_item {
  width: 240px;
  height: 140px;
}
.top_partner_sec .top_partner_platinum .top_partner_logo .top_partner_logo_item a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.top_partner_sec .top_partner_gold {
  width: 100%;
  margin: 0 auto 70px;
}
.top_partner_sec .top_partner_gold .top_partner_gold_ttl {
  margin-bottom: 30px;
  position: relative;
}
.top_partner_sec .top_partner_gold .top_partner_gold_ttl::before {
  content: "";
  width: 100%;
  height: 2px;
  background: #ddd;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 5;
}
.top_partner_sec .top_partner_gold .top_partner_gold_ttl::after {
  content: "";
  width: 150px;
  height: 2px;
  background: #fff100;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 6;
}
.top_partner_sec .top_partner_gold .top_partner_gold_ttl .ttl {
  padding: 10px 30px 10px 20px;
  color: #000;
  font-size: 24px;
  font-weight: 500;
  position: relative;
  display: inline-block;
}
.top_partner_sec .top_partner_gold .top_partner_logo .top_partner_logo_item {
  width: 200px;
  height: 100px;
  margin: 0 30px;
}
.top_partner_sec .top_partner_gold .top_partner_logo .top_partner_logo_item a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.top_partner_sec .top_partner_gold .top_partner_logo .top_partner_logo_item.-fukuokatrance {
  width: 230px;
}
.top_partner_sec .top_partner_silver {
  width: 100%;
  margin: 0 auto 70px;
}
.top_partner_sec .top_partner_silver .top_partner_silver_ttl {
  margin-bottom: 30px;
  position: relative;
}
.top_partner_sec .top_partner_silver .top_partner_silver_ttl::before {
  content: "";
  width: 100%;
  height: 2px;
  background: #ddd;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 5;
}
.top_partner_sec .top_partner_silver .top_partner_silver_ttl::after {
  content: "";
  width: 150px;
  height: 2px;
  background: #fff100;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 6;
}
.top_partner_sec .top_partner_silver .top_partner_silver_ttl .ttl {
  padding: 10px 30px 10px 20px;
  color: #000;
  font-size: 24px;
  font-weight: 500;
  position: relative;
  display: inline-block;
}
.top_partner_sec .top_partner_silver .top_partner_logo .top_partner_logo_item {
  width: 164px;
  height: 82px;
  margin: 0 20px;
}
.top_partner_sec .top_partner_silver .top_partner_logo .top_partner_logo_item a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.top_partner_sec .top_partner_bronze {
  width: 100%;
  margin: 0 auto 70px;
}
.top_partner_sec .top_partner_bronze .top_partner_bronze_ttl {
  margin-bottom: 30px;
  position: relative;
}
.top_partner_sec .top_partner_bronze .top_partner_bronze_ttl::before {
  content: "";
  width: 100%;
  height: 2px;
  background: #ddd;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 5;
}
.top_partner_sec .top_partner_bronze .top_partner_bronze_ttl::after {
  content: "";
  width: 150px;
  height: 2px;
  background: #fff100;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 6;
}
.top_partner_sec .top_partner_bronze .top_partner_bronze_ttl .ttl {
  padding: 10px 30px 10px 20px;
  color: #000;
  font-size: 24px;
  font-weight: 500;
  position: relative;
  display: inline-block;
}
.top_partner_sec .top_partner_bronze .top_partner_logo .top_partner_logo_item {
  width: 130px;
  height: 65px;
  margin: 0 20px;
}
.top_partner_sec .top_partner_bronze .top_partner_logo .top_partner_logo_item a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.top_partner_sec .top_partner_bronze .top_partner_logo .top_partner_logo_item.kyuden {
  width: 160px;
}
.top_partner_sec .top_partner_communication {
  width: 100%;
  margin: 0 auto 70px;
}
.top_partner_sec .top_partner_communication .top_partner_communication_ttl {
  margin-bottom: 30px;
  position: relative;
}
.top_partner_sec .top_partner_communication .top_partner_communication_ttl::before {
  content: "";
  width: 100%;
  height: 2px;
  background: #ddd;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 5;
}
.top_partner_sec .top_partner_communication .top_partner_communication_ttl::after {
  content: "";
  width: 150px;
  height: 2px;
  background: #fff100;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 6;
}
.top_partner_sec .top_partner_communication .top_partner_communication_ttl .ttl {
  padding: 10px 30px 10px 20px;
  color: #000;
  font-size: 24px;
  font-weight: 500;
  position: relative;
  display: inline-block;
}
.top_partner_sec .top_partner_communication .top_partner_logo .top_partner_logo_item {
  width: 200px;
  height: 40px;
  margin: 10px auto;
}
.top_partner_sec .top_partner_communication .top_partner_logo .top_partner_logo_item a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.top_partner_sec .top_partner_consulting {
  width: 100%;
  margin: 0 auto 70px;
}
.top_partner_sec .top_partner_consulting .top_partner_consulting_ttl {
  margin-bottom: 30px;
  position: relative;
}
.top_partner_sec .top_partner_consulting .top_partner_consulting_ttl::before {
  content: "";
  width: 100%;
  height: 2px;
  background: #ddd;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 5;
}
.top_partner_sec .top_partner_consulting .top_partner_consulting_ttl::after {
  content: "";
  width: 150px;
  height: 2px;
  background: #fff100;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 6;
}
.top_partner_sec .top_partner_consulting .top_partner_consulting_ttl .ttl {
  padding: 10px 30px 10px 20px;
  color: #000;
  font-size: 24px;
  font-weight: 500;
  position: relative;
  display: inline-block;
}
.top_partner_sec .top_partner_consulting .top_partner_logo .top_partner_logo_item {
  width: 124px;
  height: 62px;
  margin: 0 15px 0;
}
.top_partner_sec .top_partner_consulting .top_partner_logo .top_partner_logo_item a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.top_partner_sec .top_partner_consulting .top_partner_logo .top_partner_logo_item.kyushukuadori {
  height: 85px;
  width: 170px;
}
.top_partner_sec .top_partner_iron {
  width: 100%;
  margin: 0 auto 0px;
}
.top_partner_sec .top_partner_iron .top_partner_iron_ttl {
  margin-bottom: 30px;
  position: relative;
}
.top_partner_sec .top_partner_iron .top_partner_iron_ttl::before {
  content: "";
  width: 100%;
  height: 2px;
  background: #ddd;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 5;
}
.top_partner_sec .top_partner_iron .top_partner_iron_ttl::after {
  content: "";
  width: 150px;
  height: 2px;
  background: #fff100;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 6;
}
.top_partner_sec .top_partner_iron .top_partner_iron_ttl .ttl {
  padding: 10px 30px 10px 20px;
  color: #000;
  font-size: 24px;
  font-weight: 500;
  position: relative;
  display: inline-block;
}
.top_partner_sec .top_partner_iron .top_partner_logo {
  max-width: 1200px;
  margin-bottom: 0;
}
.top_partner_sec .top_partner_iron .top_partner_logo .top_partner_logo_item {
  width: 110px;
  height: 55px;
  margin: 0 20px 30px;
}
.top_partner_sec .top_partner_iron .top_partner_logo .top_partner_logo_item a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.top_partner_sec .top_partner_iron .top_partner_logo .top_partner_logo_item.tokiomarine-nichido {
  width: 120px;
}
.top_partner_sec .top_partner_iron .top_partner_logo .top_partner_logo_item.kyuden {
  width: 150px;
}
.top_partner_sec .top_partner_iron .top_partner_logo .top_partner_logo_item.fukuoka-fg {
  width: 190px;
}
.top_partner_sec .top_partner_iron .top_partner_logo .top_partner_logo_item.ncbank {
  width: 120px;
}
.top_partner_sec .top_partner_iron .top_partner_logo .top_partner_logo_item.kabuto {
  width: 90px;
}
.top_partner_sec .top_partner_iron .top_partner_logo .top_partner_logo_item.nomura {
  width: 130px;
}
.top_partner_sec .top_partner_iron .top_partner_logo .top_partner_logo_item.westjr {
  width: 120px;
}

.top_supporters {
  width: 100%;
  padding: 100px 0;
  background: #f2f2f2;
}
.top_supporters .top_supporters_block .txt {
  font-size: 20px;
  font-weight: 500;
  color: #000;
  margin-bottom: 30px;
  line-height: 1.8;
  text-align: center;
}
.top_supporters .top_supporters_block .txt.last {
  margin-bottom: 0;
}

.top_friends {
  width: 100%;
  padding: 100px 0 50px;
}
.top_friends .top_friends_block .txt {
  font-size: 20px;
  font-weight: 500;
  color: #000;
  margin-bottom: 50px;
  line-height: 1.8;
  text-align: center;
}
.top_friends .top_friends_block .txt.last {
  margin-bottom: 0;
}

.top_leaflet_sec {
  width: 100%;
  padding: 50px 0 50px;
}
.top_leaflet_sec .top_leaflet_block {
  width: 100%;
  text-align: center;
}
.top_leaflet_sec .leaflet_btn {
  margin: 50px auto 0;
}

.bnr_block {
  width: 100%;
  padding: 50px 0 100px;
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: center;
}
.bnr_block a {
  display: block;
}

.ft {
  width: 100%;
  padding: 100px 0 150px;
  background: #000;
  position: relative;
}
.ft .ft_container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
}
.ft .ft_logo {
  margin: 0 auto 50px;
  text-align: center;
  display: block;
}
.ft .ft_bnr {
  width: 72%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 30px;
  margin: 0 auto 50px;
}
.ft .ft_bnr a {
  display: block;
  width: 48%;
}
.ft .ft_bnr a:hover {
  opacity: 0.7;
}
.ft .ft_link_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px 40px;
  background: #000;
  padding: 40px 20px;
  padding-left: 80px;
  width: 70%;
  margin: 0 auto;
}
.ft .ft_link_list a {
  display: flex;
  align-items: center;
  color: #fff;
  text-decoration: none;
  font-size: 16px;
  position: relative;
  padding-left: 30px;
}
.ft {
  /* 黄色丸 */
}
.ft .ft_link_list a::before {
  content: "";
  position: absolute;
  left: 0;
  width: 18px;
  height: 18px;
  background: #fff000;
  border-radius: 50%;
}
.ft {
  /* 矢印 */
}
.ft .ft_link_list a::after {
  content: "";
  width: 6px;
  height: 6px;
  margin: 0 10px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  transform: rotate(45deg);
  position: absolute;
  top: calc(50% - 3px);
  left: -4px;
}
.ft .ft_link_list a:hover {
  opacity: 0.7;
}
.ft .ft_copyright {
  position: absolute;
  bottom: 70px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 12px;
  color: #fff;
}

/**-----------------------------------
サブページ共通
-----------------------------------*/
.sub_main {
  width: 100%;
  background: #f2f2f2;
  padding: 80px 0;
}
.sub_main .sub_main_ttl {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  margin: 0 auto;
}
.sub_main .sub_main_ttl .en {
  font-size: 64px;
  font-weight: 500;
  display: block;
  width: 100%;
  text-align: center;
  position: relative;
  padding-bottom: 15px;
  margin-bottom: 15px;
  font-style: italic;
}
.sub_main .sub_main_ttl .en::after {
  content: "";
  width: 50px;
  height: 6px;
  background: #fff100;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.sub_main .sub_main_ttl .ja {
  font-size: 26px;
  font-weight: bold;
}
.sub_main.pattern02 {
  position: relative;
  height: 300px;
  display: flex;
  align-items: center;
  background: url(../img/common/title_bg.png) center no-repeat;
  background-size: cover;
}
.sub_main.pattern02 .sub_main_ttl {
  display: block;
}
.sub_main.pattern02 .sub_main_ttl .ttl {
  font-size: 56px;
  font-weight: 500;
  display: block;
  width: 100%;
  /* text-align: center; */
  position: relative;
  font-style: italic;
  color: #fff;
  line-height: 1.4;
}
.sub_main.pattern02::after {
  content: "";
  width: 35%;
  height: 8px;
  background: #fff100;
  position: absolute;
  bottom: 15%;
  right: 0;
  transform: skew(-35deg);
}
.sub_main.pattern02.outline {
  background: url(../img/outline/title_bg.png) center no-repeat;
  background-size: cover;
}
.sub_main.pattern02.sustainable {
  background: url(../img/outline/title_bg.png) center no-repeat;
  background-size: cover;
}

.page_link_block {
  width: 100%;
  max-width: 1260px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 100px 30px;
  gap: 20px;
  margin: 0 auto;
}
.page_link_block.stage {
  padding: 0;
  margin-top: 50px;
}
.page_link_block.stage .page_link_box .bg_img {
  padding-top: 25.8%;
}
.page_link_block.stage_bottom {
  padding: 0;
  margin-top: 50px;
}
.page_link_block .page_link_box {
  width: 48.3%;
  max-width: 580px;
  display: flex;
  justify-content: center;
  align-content: center;
  flex-wrap: wrap;
  text-decoration: none;
  overflow: hidden;
  position: relative;
}
.page_link_block .page_link_box .en {
  font-size: 18px;
  font-weight: 500;
  color: #fff;
  opacity: 0.6;
  display: block;
  width: 100%;
}
.page_link_block .page_link_box .ja {
  font-size: 26px;
  font-weight: bold;
  color: #fff;
  display: block;
  width: 100%;
  margin-bottom: 10px;
  line-height: 1.3;
}
.page_link_block .page_link_box::after {
  content: "";
  width: 50px;
  height: 50px;
  background: url(../img/common/outline_arrow.png) center no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0;
  right: 0;
}
.page_link_block .page_link_box .bg_img {
  width: 100%;
  position: relative;
  padding-top: 34.5%;
  display: block;
  overflow: hidden;
}
.page_link_block .page_link_box .bg_img::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transition: 0.3s;
}
.page_link_block .page_link_box .bg_img.stage_info::before {
  background: url(../img/common/stage_info_bg.png) center no-repeat;
  background-size: cover;
}
.page_link_block .page_link_box .bg_img.event_info.nagasaki::before {
  background: url(../img/common/event_info_nagasaki_bg.png) center no-repeat;
  background-size: cover;
}
.page_link_block .page_link_box .bg_img.event_info.fukuoka::before {
  background: url(../img/common/event_info_fukuoka_bg.png) center no-repeat;
  background-size: cover;
}
.page_link_block .page_link_box .bg_img.event_info.kumamoto::before {
  background: url(../img/common/event_info_kumamoto_bg.png) center no-repeat;
  background-size: cover;
}
.page_link_block .page_link_box .bg_img.event_info.miyazaki::before {
  background: url(../img/common/event_info_miyazaki_bg.png) center no-repeat;
  background-size: cover;
}
.page_link_block .page_link_box .bg_img.event_info.oita::before {
  background: url(../img/common/event_info_oita_bg.png) center no-repeat;
  background-size: cover;
}
.page_link_block .page_link_box .bg_img.tourist_info::before {
  background: url(../img/common/tourist_info_bg.png) center no-repeat;
  background-size: cover;
}
.page_link_block .page_link_box .bg_img.traffic::before {
  background: url(../img/common/traffic_bg.png) center no-repeat;
  background-size: cover;
}
.page_link_block .page_link_box .bg_img.course::before {
  background: url(../img/common/course_info_bg.png) center no-repeat;
  background-size: cover;
}
.page_link_block .page_link_box .txt {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}
.page_link_block .page_link_box:hover .bg_img::before, .page_link_block .page_link_box:focus-within .bg_img::before {
  opacity: 0.7;
}
.page_link_block.page_link-en .page_link_box .en {
  font-size: 32px;
  font-weight: bold;
  color: #fff;
  display: block;
  width: 100%;
  line-height: 1.3;
  opacity: 1;
}

.wp-pagenavi {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  font-weight: 500;
  margin-top: 90px;
}
.wp-pagenavi * {
  font-family: "Poppins";
  font-style: normal;
  font-weight: 600;
  font-size: 20px;
  line-height: 30px;
  letter-spacing: 0.05em;
}
.wp-pagenavi a {
  position: relative;
  margin: 0 6px;
  width: 60px;
  height: 60px;
  border-radius: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #ababab;
  transition: 0.3s;
}
.wp-pagenavi a.page {
  background: #ddd;
}
.wp-pagenavi a.page:hover {
  background: #fff100;
}
.wp-pagenavi span {
  margin: 0 6px;
  width: 60px;
  height: 60px;
  border-radius: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.wp-pagenavi span.current {
  background: #000;
  color: #fff;
}
.wp-pagenavi .previouspostslink {
  display: flex;
  align-items: center;
  justify-content: center;
}
.wp-pagenavi .previouspostslink::before {
  display: block;
  content: "";
  width: 12px;
  height: 12px;
  border-bottom: 3px solid #dddddd;
  border-left: 3px solid #dddddd;
  transform: rotate(45deg);
  border-top: 3px solid #000;
  border-right: 3px solid #000;
  border-left-width: 0;
  border-bottom-width: 0;
  transform: rotate(-135deg);
}
.wp-pagenavi .nextpostslink {
  display: flex;
  align-items: center;
  justify-content: center;
}
.wp-pagenavi .nextpostslink::before {
  display: block;
  content: "";
  width: 12px;
  height: 12px;
  border-top: 3px solid #dddddd;
  border-right: 3px solid #dddddd;
  transform: rotate(45deg);
  border-top: 3px solid #000;
  border-right: 3px solid #000;
  transition: 0.3s;
}
.wp-pagenavi .extend {
  display: none;
}

/**-----------------------------------
イベント
-----------------------------------*/
.event_nav_link {
  width: 100%;
  background: #000;
}
.event_nav_link .event_nav_link_list {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  max-width: 1200px;
  margin: 0 auto;
}
.event_nav_link .event_nav_link_list li {
  width: 25%;
}
.event_nav_link .event_nav_link_list li a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 20px 0;
  background: #000;
  color: #fff;
  transition: 0.3s;
  border-right: 1px solid #fff;
  border-left: 1px solid #fff;
  font-size: 18px;
  font-weight: bold;
}
.event_nav_link .event_nav_link_list li a.current {
  background: #fff100;
  color: #000;
}
.event_nav_link .event_nav_link_list li a:hover {
  background: #fff100;
  color: #000;
}

.event_list_sec {
  width: 100%;
  padding: 50px 0;
}
.event_list_sec .event_block {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 40px 20px;
}
.event_list_sec .event_block .event_box {
  width: calc((100% - 80px) / 5);
}
.event_list_sec .event_block .event_box a {
  display: block;
}
.event_list_sec .event_block .event_box a .img {
  position: relative;
  width: 100%;
  padding-top: 153.3%;
  margin-bottom: 15px;
}
.event_list_sec .event_block .event_box a .img img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-fit: contain;
     object-fit: contain;
  background: #ddd;
}
.event_list_sec .event_block .event_box a .date {
  display: inline-block;
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 15px;
  color: #111;
}
.event_list_sec .event_block .event_box a .ttl {
  font-size: 16px;
  color: #111;
}

/**-----------------------------------
お知らせ
-----------------------------------*/
.news_list_sec {
  width: 100%;
  padding: 50px 0;
}
.news_list_sec .news_block {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 40px 20px;
}
.news_list_sec .news_block .news_box {
  width: calc((100% - 80px) / 5);
}
.news_list_sec .news_block .news_box a {
  display: block;
}
.news_list_sec .news_block .news_box a .img {
  position: relative;
  width: 100%;
  padding-top: 153.3%;
  margin-bottom: 15px;
}
.news_list_sec .news_block .news_box a .img img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-fit: contain;
     object-fit: contain;
  background: #ddd;
}
.news_list_sec .news_block .news_box a .date {
  display: inline-block;
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 15px;
  color: #111;
}
.news_list_sec .news_block .news_box a .ttl {
  font-size: 16px;
  color: #111;
}

/**-----------------------------------
singleページ
-----------------------------------*/
.no_post {
  font-size: 18px;
  text-align: center;
  display: block;
  width: 100%;
  margin: 20px auto;
}

.single_sec {
  padding: 50px 0;
  background: #f2f2f2;
}
.single_sec .single_container {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 15px;
}
.single_sec .single_ttl_block {
  width: 100%;
}
.single_sec .single_ttl_block .date {
  font-size: 22px;
  font-weight: bold;
  color: #898989;
  margin-bottom: 15px;
  display: block;
}
.single_sec .single_ttl_block .single_ttl {
  font-size: 38px;
  line-height: 1.4;
  color: #000;
  font-weight: bold;
  display: block;
  width: 100%;
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 30px;
}
.single_sec .single_ttl_block .single_ttl::after {
  content: "";
  width: 100%;
  height: 3px;
  background: #fff100;
  position: absolute;
  bottom: 0;
  left: 0;
}
.single_sec .single_content p {
  font-size: 18px;
  line-height: 1.8;
  margin-bottom: 5px;
}
.single_sec .single_content a {
  color: #ee8f00;
  text-decoration: underline;
}
.single_sec .single_content img {
  display: block;
  margin: 10px auto;
  max-width: 100%;
  height: auto;
}
.single_sec .single_content .wp-caption-text {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 20px;
}
.single_sec .single_content .wp-caption {
  width: 100% !important;
}
.single_sec .single_re_btn {
  margin: 50px auto;
}

/**-----------------------------------
大会概要
-----------------------------------*/
.outline_sec {
  width: 100%;
  padding: 100px 0 100px;
}
.outline_sec .outline_block {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 30px;
}
.outline_sec .outline_block .outline_box {
  width: calc((100% - 60px) / 3);
  max-width: 580px;
  text-decoration: none;
  overflow: hidden;
  position: relative;
}
.outline_sec .outline_block .outline_box:hover, .outline_sec .outline_block .outline_box:focus-within {
  opacity: 0.7;
}

/**-----------------------------------
Sustainable
-----------------------------------*/
.sustainable_sec {
  width: 100%;
  padding: 100px 0 100px;
  background: #fff;
}
.sustainable_sec .container {
  max-width: 1200px;
}
.sustainable_sec .sustainable_main_ttl {
  width: 100%;
  display: flex;
  justify-content: center;
  margin-bottom: 80px;
}
.sustainable_sec .sustainable_block {
  width: 100%;
  margin-bottom: 100px;
}
.sustainable_sec .sustainable_block .sustainable_ttl {
  font-size: 26px;
  font-weight: bold;
  color: #000;
  line-height: 1.4;
  padding: 15px 10px 15px 10%;
  position: relative;
  margin-bottom: 50px;
}
.sustainable_sec .sustainable_block .sustainable_ttl::before {
  content: "";
  width: 88px;
  width: 7.5%;
  height: 50px;
  background: url(../img/sustainable/ttl_icon.svg) center no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0.75%;
}
.sustainable_sec .sustainable_block .sustainable_ttl::after {
  content: "";
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, #fff100 0%, #fff100 9%, #000 9%, #000 100%);
  position: absolute;
  bottom: 0;
  left: 0;
}
.sustainable_sec .sustainable_block p {
  font-size: 18px;
  color: #000;
  line-height: 1.8;
  margin-bottom: 20px;
}
.sustainable_sec .sustainable_block a {
  text-decoration: underline;
  font-size: 18px;
  color: #2c6fdd;
}
.sustainable_sec .sustainable_block .goal_flex {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 30px auto;
}
.sustainable_sec .sustainable_block .goal_flex .img_box {
  width: 49%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
.sustainable_sec .sustainable_block .goal_flex .img_box .img01 {
  width: 100%;
  margin-bottom: 50px;
}
.sustainable_sec .sustainable_block .goal_flex .img_box .img02 {
  width: 60%;
}
.sustainable_sec .sustainable_block .goal_flex .img_box .link {
  position: relative;
  width: 35%;
  text-decoration: none;
  padding-left: 30px;
  color: #00a0d2;
}
.sustainable_sec .sustainable_block .goal_flex .img_box .link::before {
  content: "";
  width: 25px;
  height: 25px;
  background: url(../img/sustainable/arrow01.png) center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.sustainable_sec .sustainable_block .goal_flex .img_box .link:hover {
  opacity: 0.7;
}
.sustainable_sec .sustainable_block .goal_flex .txt_box {
  width: 45%;
}
.sustainable_sec .sustainable_block .flex01 {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 30px auto 50px;
  align-items: flex-start;
}
.sustainable_sec .sustainable_block .flex01 .txt_box {
  width: 51.5%;
  background: #f2f2f2;
  padding: 40px 5%;
}
.sustainable_sec .sustainable_block .flex01 .txt_box .list01 {
  margin: 15px 0;
}
.sustainable_sec .sustainable_block .flex01 .txt_box .list01 li {
  font-size: 18px;
  color: #000;
  line-height: 1.8;
  padding-left: 1em;
  position: relative;
  font-weight: bold;
  margin: 5px 0;
}
.sustainable_sec .sustainable_block .flex01 .txt_box .list01 li::before {
  content: "";
  width: 12px;
  height: 12px;
  background: url(../img/sustainable/dot.png) center no-repeat;
  background-size: contain;
  border-radius: 50%;
  position: absolute;
  top: 9px;
  left: 0;
}
.sustainable_sec .sustainable_block .flex01 .img_box {
  width: 43%;
  max-width: 520px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
}
.sustainable_sec .sustainable_block .flex01 .img_box figure {
  width: 100%;
  text-align: center;
}
.sustainable_sec .sustainable_block .flex01 .img_box.col2 figure {
  width: calc((100% - 10px) / 2);
}
.sustainable_sec .sustainable_block .flex01 .img_box .sustainable_icon_block {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 10px;
}
.sustainable_sec .sustainable_block .flex01 .img_box .sustainable_icon_block img {
  width: calc((100% - 20px) / 3);
}
.sustainable_sec .sustainable_block .sustainable_img_flex {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 20px;
  margin: 30px auto;
}
.sustainable_sec .sustainable_block .sustainable_img_flex .sustainable_img_block {
  width: calc((100% - 60px) / 3);
  display: flex;
  flex-wrap: wrap;
}
.sustainable_sec .sustainable_block .sustainable_img_flex .sustainable_img_block .img_box {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 200px;
  padding: 30px;
  border: 1px solid #ddd;
}
.sustainable_sec .sustainable_block .sustainable_img_flex .sustainable_img_block .img_box img {
  max-width: 100%;
  max-height: 100%;
}
.sustainable_sec .sustainable_block .sustainable_img_flex .sustainable_img_block .txt_box {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  height: calc(100% - 200px);
}
.sustainable_sec .sustainable_block .sustainable_img_flex .sustainable_img_block .txt_box .ttl {
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  width: 100%;
  height: 80px;
  background: #000;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 0;
}
.sustainable_sec .sustainable_block .sustainable_img_flex .sustainable_img_block .txt_box .txt {
  width: 100%;
  height: calc(100% - 80px);
  font-size: 16px;
  background: #fff100;
  padding: 10px 25px;
  margin-bottom: 0;
  flex-grow: 1;
}
.sustainable_sec .sustainable_block .sustainable_img {
  width: 100%;
}
.sustainable_sec .sustainable_info_box {
  display: flex;
  align-items: center;
  padding: 25px 45px;
  border: 5px solid #fff100;
  flex-wrap: wrap;
}
.sustainable_sec .sustainable_info_box .sustainable-logo {
  width: 85px;
}
.sustainable_sec .sustainable_info_box .sustainable_info_box_texts {
  width: calc(100% - 110px);
  margin-left: 25px;
}
.sustainable_sec .sustainable_info_box .sustainable_info_box_texts p {
  font-size: 18px;
  color: #000;
  line-height: 1.8;
  margin-bottom: 0px;
  font-weight: bold;
}

/*過去のCSS上書き*/
.p-news-list .p-news-list__image {
  width: 100px;
}
.p-news-list .p-news-list__image::before {
  padding-top: 153.3%;
}

.p-content-body {
  background: #fff;
}
.p-content-body .p-standard h2 {
  font-size: 26px;
  font-weight: bold;
  color: #000;
  line-height: 1.4;
  background: #fff100;
  padding: 15px 10px 15px 20px;
  position: relative;
  margin-bottom: 50px;
  border-bottom: none;
}
.p-content-body .p-standard h2::before {
  content: "";
  width: 8px;
  height: 100%;
  background: #000;
  position: absolute;
  top: 0;
  left: 0;
}

.p-stage .p-team__items {
  pointer-events: none;
}

.p-stage-table {
  margin-bottom: 15px;
}

.p-stage-overview .copy {
  margin-top: 5px;
  text-align: right;
}

/*キャンペーン*/
.campaign-policy .campaign-policy_ttl {
  margin-bottom: 50px;
}
.campaign-policy .campaign-policy_ttl .en {
  color: "#222";
  font-size: 64px;
  font-weight: bold;
  display: block;
  width: 100%;
  text-align: center;
  position: relative;
  padding-bottom: 15px;
  margin-bottom: 15px;
  font-style: italic;
}
.campaign-policy .campaign-policy_ttl .en::after {
  content: "";
  width: 120px;
  height: 6px;
  background: #fff100;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.campaign-policy .campaign-policy_ttl .ja {
  color: #222;
  font-size: 26px;
  font-weight: bold;
  display: block;
  width: 100%;
  text-align: center;
}
.campaign-policy .main_txt {
  color: #222;
  font-size: 20px;
  font-weight: bold;
  display: block;
  width: 100%;
  line-height: 1.6;
  text-align: center;
}
.campaign-policy .campaign-policy_content {
  width: 100%;
  margin-top: 30px;
  padding-top: 30px;
  border-top: 2px solid #fff100;
}
.campaign-policy .campaign-policy_content .box {
  margin-bottom: 30px;
}
.campaign-policy .campaign-policy_content .box .ttl {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 10px;
  line-height: 1.6;
}
.campaign-policy .campaign-policy_content .box .txt {
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 10px;
}
.campaign-policy .campaign-policy_content .box .txt .underline {
  border-bottom: 1px solid #222;
}
.campaign-policy .campaign-policy_content .box ul li {
  font-size: 16px;
  margin: 10px 0;
  line-height: 1.6;
}

/*ステージ*/
.p-stage__wrapper .c-likeTabLink {
  background: none;
}
.p-stage__wrapper .c-likeTabLink.js-likeTabLinkFixed .c-likeTabLink__list.is-mt-have {
  margin-top: 0;
}
.p-stage__wrapper .c-likeTabLink.page_bottom .c-likeTabLink__list__item a::after {
  transform: rotate(-45deg);
}
.p-stage__wrapper .c-likeTabLink .c-likeTabLink__list__item {
  border-bottom: 2px solid #000;
  border-right: 1px solid #000;
}
.p-stage__wrapper .c-likeTabLink .c-likeTabLink__list__item a {
  background: #fff100;
  color: #000;
  position: relative;
}
.p-stage__wrapper .c-likeTabLink .c-likeTabLink__list__item a::after {
  content: "";
  width: 10px;
  height: 10px;
  margin: 0 10px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  transform: rotate(135deg);
  position: absolute;
  top: calc(50% - 5px);
  right: 5px;
  transition: 0.3s;
}
.p-stage__wrapper .c-likeTabLink .c-likeTabLink__list__item a span {
  background: none;
  font-size: 16px;
  color: #000;
}
.p-stage__wrapper .c-likeTabLink .c-likeTabLink__list__item a:hover {
  background: #000;
  color: #fff;
}
.p-stage__wrapper .c-likeTabLink .c-likeTabLink__list__item a:hover span {
  color: #fff;
}
.p-stage__wrapper .c-likeTabLink .c-likeTabLink__list__item a:hover::after {
  border-top: 2px solid #fff100;
  border-right: 2px solid #fff100;
}
.p-stage__wrapper .c-likeTabLink .c-likeTabLink__list__item a:hover .course::before, .p-stage__wrapper .c-likeTabLink .c-likeTabLink__list__item a:hover .spot::before, .p-stage__wrapper .c-likeTabLink .c-likeTabLink__list__item a:hover .event::before {
  filter: invert(0%);
}
.p-stage__wrapper .c-likeTabLink .c-likeTabLink__list__item a .course {
  position: relative;
  padding: 0 35px;
}
.p-stage__wrapper .c-likeTabLink .c-likeTabLink__list__item a .course::before {
  content: "";
  width: 22px;
  height: 27px;
  background: url(../img/stage/cource_icon.svg) center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  filter: invert(100%);
}
.p-stage__wrapper .c-likeTabLink .c-likeTabLink__list__item a .spot {
  position: relative;
  padding: 0 40px;
}
.p-stage__wrapper .c-likeTabLink .c-likeTabLink__list__item a .spot::before {
  content: "";
  width: 25px;
  height: 25px;
  background: url(../img/stage/spot_icon.svg) center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  filter: invert(100%);
}
.p-stage__wrapper .c-likeTabLink .c-likeTabLink__list__item a .event {
  position: relative;
  padding: 0 45px;
}
.p-stage__wrapper .c-likeTabLink .c-likeTabLink__list__item a .event::before {
  content: "";
  width: 34px;
  height: 24px;
  background: url(../img/stage/event_icon.svg) center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  filter: invert(100%);
}
.p-stage__wrapper .c-likeTabLink .c-likeTabLink__list__item:first-child {
  border-left: none;
}
.p-stage__wrapper .c-likeTabLink .c-likeTabLink__list__item:last-child {
  border-right: none;
}

.p-stage {
  background-color: #fff;
}

.p-stage_ttl {
  width: 100%;
  height: 100px;
  display: flex;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
}
.p-stage_ttl .stage_num {
  display: block;
  width: 200px;
  height: 100%;
  background: #000;
  position: relative;
  color: #fff100;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding-left: 30px;
}
.p-stage_ttl .stage_num .stage {
  font-size: 20px;
  font-style: italic;
  font-weight: bold;
  margin-right: 10px;
}
.p-stage_ttl .stage_num .num {
  font-size: 50px;
  font-style: italic;
  font-weight: bold;
}
.p-stage_ttl .stage_num::after {
  content: "";
  width: 41px;
  height: calc(100% + 1px);
  background: #fff100;
  clip-path: polygon(0 100%, 100% 0, 100% 100%);
  position: absolute;
  top: 1px;
  right: -1px;
  z-index: 5;
}
.p-stage_ttl .title {
  display: block;
  width: calc(100% - 200px);
  height: 100%;
  position: relative;
  background: #fff100;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  color: #000;
  font-size: 26px;
  font-weight: bold;
  padding-left: 30px;
}
.p-stage_ttl .title .txt {
  position: relative;
  z-index: 5;
}
.p-stage_ttl .title::after {
  content: "";
  width: 40px;
  height: 100%;
  background: #fff;
  clip-path: polygon(0 100%, 100% 0, 100% 100%);
  position: absolute;
  top: 0;
  right: -1px;
  z-index: 5;
}
.p-stage_ttl.miyazaki_oita::before {
  content: "Miyazaki-Oita";
  font-size: clamp(50px, 9vw, 100px);
  font-weight: bold;
  font-style: italic;
  color: #fff100;
  position: absolute;
  bottom: -10px;
  right: 25px;
  mix-blend-mode: color-dodge;
  z-index: 3;
  line-height: 1;
}
.p-stage_ttl.fukuoka::before {
  content: "Fukuoka";
  font-size: clamp(50px, 9vw, 100px);
  font-weight: bold;
  font-style: italic;
  color: #fff100;
  position: absolute;
  bottom: -10px;
  right: 25px;
  mix-blend-mode: color-dodge;
  z-index: 3;
  line-height: 1;
}
.p-stage_ttl.kumamoto::before {
  content: "Kumamoto";
  font-size: clamp(50px, 9vw, 100px);
  font-weight: bold;
  font-style: italic;
  color: #fff100;
  position: absolute;
  bottom: -10px;
  right: 25px;
  mix-blend-mode: color-dodge;
  z-index: 3;
  line-height: 1;
}
.p-stage_ttl.nagasaki::before {
  content: "Nagasaki";
  font-size: clamp(50px, 9vw, 100px);
  font-weight: bold;
  font-style: italic;
  color: #fff100;
  position: absolute;
  bottom: -10px;
  right: 25px;
  mix-blend-mode: color-dodge;
  z-index: 3;
  line-height: 1;
}

.p-stage-h3 {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}
.p-stage-h3 .ttl {
  font-size: 24px;
  color: #000;
  font-weight: bold;
  margin-right: 20px;
}
.p-stage-h3 .line {
  flex-grow: 1;
  height: 3px;
  background: #fff100;
}

.p-stage-course {
  margin-top: 80px;
}
.p-stage-course .p-stage-course_map {
  width: 100%;
  margin-bottom: 40px;
}
.p-stage-course .p-stage-course_map .copy {
  margin-top: 5px;
  text-align: right;
}
.p-stage-course .p-stage-flyer {
  margin: 30px auto;
}
.p-stage-course .p-stage-flyer .img {
  margin: 10px 0;
}
.p-stage-course .p-stage-course_txt {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.p-stage-course .p-stage-course_txt .p-stage-course_lead {
  width: 47.5%;
  font-size: 16px;
  line-height: 2;
  font-feature-settings: "palt";
  letter-spacing: 0.01em;
}
.p-stage-course .p-stage-course_txt .p-stage-course_table {
  border-top: 1px solid #000;
  width: 47.5%;
}
.p-stage-course .p-stage-course_txt .p-stage-course_table .p-stage-course_table_item {
  display: flex;
}
.p-stage-course .p-stage-course_txt .p-stage-course_table .p-stage-course_table_item .-head {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.02em;
  background-color: #000;
  color: #fff;
  flex: 1;
  padding: 15px 0;
  border-bottom: 1px solid #fff;
}
.p-stage-course .p-stage-course_txt .p-stage-course_table .p-stage-course_table_item .-body {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  font-size: 16px;
  letter-spacing: 0.02em;
  background-color: #fff;
  color: #000;
  flex: 2;
  padding: 15px 24px;
  border-bottom: 1px solid #000;
}
.p-stage-course .p-stage-course_txt .p-stage-course_table .p-stage-course_table_item:last-child .-head {
  border-bottom: 1px solid #000;
}
.p-stage-course .p-stage-course_txt .p-stage-course_comment {
  line-height: 1.5;
}
.p-stage-course .p-stage-kouteisa {
  margin-top: 50px;
}
.p-stage-course .p-stage-kouteisa .kouteisa_ttl {
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  background: #000;
  padding: 10px 40px 10px 20px;
  display: inline-block;
  position: relative;
}
.p-stage-course .p-stage-kouteisa .kouteisa_ttl::after {
  content: "";
  width: 20px;
  height: 100%;
  background: #fff;
  clip-path: polygon(0 0, 100% 0, 100% 100%);
  position: absolute;
  top: -1px;
  right: -1px;
  z-index: 5;
}
.p-stage-course .p-stage-kouteisa .p-stage-kouteisa__img {
  width: 100%;
  border: 2px solid #000;
  padding: 15px;
}

.p-stage-spot {
  width: 100%;
  margin-top: 80px;
}
.p-stage-spot .p-stage-spot__iconList {
  width: 100%;
  padding: 15px;
  background: #f2f2f2;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 15px;
  margin-bottom: 40px;
}
.p-stage-spot .p-stage-spot__iconList .p-stage-spot__iconList__item {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.p-stage-spot .p-stage-spot__iconList .p-stage-spot__iconList__item .p-stage-spot__iconList__item__img {
  width: 30px;
  height: 30px;
}
.p-stage-spot .p-stage-spot__iconList .p-stage-spot__iconList__item .p-stage-spot__iconList__item__text {
  font-size: 12px;
  font-weight: bold;
}
.p-stage-spot .p-stage-spot_map {
  width: 100%;
}
.p-stage-spot .p-stage-spot_map iframe {
  width: 100%;
  height: 640px;
}
.p-stage-spot .p-stage-spot-detail {
  margin-top: 36px;
  counter-reset: titlenum 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: 1fr;
  gap: 32px;
}
.p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item {
  border: 1px solid #000;
}
.p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__thumb {
  position: relative;
}
.p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__thumb__icon {
  position: absolute;
  top: 10px;
  left: 8px;
  display: flex;
}
.p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__thumb__icon .p-stage-spot-detail__item__thumb__icon__item {
  width: 48px;
  height: 48px;
}
.p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__textWrap .p-stage-spot-detail__item__textWrap__titleWrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #fff100;
}
.p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__textWrap .p-stage-spot-detail__item__textWrap__titleWrap .p-stage-spot-detail__item__textWrap__title {
  font-size: 20px;
  font-weight: bold;
  position: relative;
  padding: 15px 0px 15px 60px;
  line-height: 1.5;
}
.p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__textWrap .p-stage-spot-detail__item__textWrap__titleWrap .p-stage-spot-detail__item__textWrap__title .small {
  font-size: 16px;
}
.p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__textWrap .p-stage-spot-detail__item__textWrap__titleWrap .p-stage-spot-detail__item__textWrap__title::after {
  position: absolute;
  counter-increment: titlenum 1;
  content: counter(titlenum);
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 26px;
  color: rgb(255, 241, 0);
  left: 0px;
  top: 50%;
  transform: translate(0px, -50%);
  width: 50px;
  height: 100%;
  text-align: center;
  background: rgb(0, 0, 0);
}
.p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__textWrap .p-stage-spot-detail__item__textWrap__titleWrap .p-stage-spots-detail__item__textWrap__mapBtn {
  padding: 0 10px;
}
.p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__textWrap .p-stage-spot-detail__item__textWrap__titleWrap .p-stage-spots-detail__item__textWrap__mapBtn img {
  width: 30px;
}
.p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__textWrap .p-stage-spot-detail__item__textWrap__titleWrap .p-stage-spots-detail__item__textWrap__mapBtn:hover {
  cursor: pointer;
  opacity: 0.7;
}
.p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__textWrap__attention {
  text-align: center;
  margin-top: 10px;
  font-size: 0.8rem;
}
.p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__textWrap__text {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin-top: 16px;
  padding: 15px;
}
.p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__textWrap__text dt, .p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__textWrap__text dd {
  padding-top: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgb(215, 215, 215);
  line-height: 1.5;
  font-size: 14px;
}
.p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__textWrap__text dt:nth-last-child(-n+2), .p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__textWrap__text dd:nth-last-child(-n+2) {
  border-bottom: none;
}
.p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__textWrap__text dt {
  font-weight: bold;
}
.p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__textWrap__text dd a {
  padding: 2px 0 2px 22px;
  position: relative;
  display: inline-block;
  text-decoration: underline;
}
.p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__textWrap__text dd a::before {
  content: "";
  width: 18px;
  height: 18px;
  background: #000;
  position: absolute;
  top: 4px;
  left: 0;
}
.p-stage-spot .p-stage-spot-detail .p-stage-spot-detail__item__textWrap__text dd a::after {
  content: "";
  width: 6px;
  height: 6px;
  margin: 0 10px;
  border-top: 2px solid #fff100;
  border-right: 2px solid #fff100;
  transform: rotate(45deg);
  position: absolute;
  top: 10px;
  left: -5px;
  transition: 0.3s;
}

.p-stage-event {
  width: 100%;
  margin-top: 80px;
}
.p-stage-event .p-stage-event_block {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 40px;
}
.p-stage-event .p-stage-event_block .p-stage-event_box {
  width: calc(50% - 20px);
}
.p-stage-event .p-stage-event_block .p-stage-event_box .p-stage-event_place {
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  position: relative;
  margin-bottom: 20px;
  border-bottom: 1px solid #000;
}
.p-stage-event .p-stage-event_block .p-stage-event_box .p-stage-event_place span {
  position: relative;
  background: #000;
  padding: 10px 40px 10px 20px;
  display: inline-block;
}
.p-stage-event .p-stage-event_block .p-stage-event_box .p-stage-event_place span::after {
  content: "";
  width: 20px;
  height: 100%;
  background: #fff;
  clip-path: polygon(0 0, 100% 0, 100% 100%);
  position: absolute;
  top: -1px;
  right: -1px;
  z-index: 5;
}
.p-stage-event .p-stage-event_block .p-stage-event_box .p-stage-event_img {
  width: 100%;
}
.p-stage-event .p-stage-event_block .p-stage-event_box .p-stage-event_img:hover {
  opacity: 0.7;
}

.stage_modal.modal-overlay {
  display: none; /* 初期は非表示 */
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  z-index: 1000;
  justify-content: center;
  align-items: center;
}
.stage_modal.modal-overlay.active {
  display: flex;
  overflow-y: scroll;
}
.stage_modal .modal-content {
  position: relative;
  max-width: 90%;
  max-height: 90%;
}
.stage_modal .modal-content img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  border-radius: 4px;
}
.stage_modal .modal-close {
  position: absolute;
  top: -15px;
  right: -15px;
  background: #fff;
  border: none;
  border-radius: 50%;
  font-size: 24px;
  line-height: 1;
  width: 35px;
  height: 35px;
  cursor: pointer;
  z-index: 1001;
}

.omission_block {
  /*
  height: 640px;
  overflow: hidden;
  */
  position: relative;
  transition: height 0.4s ease;
}
.omission_block.open {
  height: auto;
}
.omission_block .pdf_btn_flex {
  width: 100%;
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  margin: 15px 0;
  gap: 10px;
}
.omission_block .pdf_btn_flex .pdf_download {
  background: #000;
  color: #fff;
  font-size: 16px;
  padding: 10px 15px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.omission_block .pdf_btn_flex .pdf_download:hover {
  opacity: 0.7;
}
.omission_block .pdf_btn_flex .pdf_download span {
  position: relative;
  padding-left: 25px;
}
.omission_block .pdf_btn_flex .pdf_download span::before {
  content: "";
  width: 18px;
  height: 18px;
  background: url(../img/common/download_icon.svg) center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.omission_block .pdf_btn_flex .expansion_btn {
  background: #000;
  color: #fff;
  font-size: 16px;
  padding: 10px 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
.omission_block .pdf_btn_flex .expansion_btn:hover {
  opacity: 0.7;
}
.omission_block .pdf_btn_flex .expansion_btn span {
  position: relative;
  padding-left: 25px;
}
.omission_block .pdf_btn_flex .expansion_btn span::before {
  content: "";
  width: 20px;
  height: 20px;
  background: url(../img/common/expansion_icon.svg) center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.omission_btn_block {
  width: 100%;
  height: 250px;
  background: linear-gradient(to bottom, transparent, #fff);
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: flex-end;
}
.omission_btn_block.active {
  position: relative;
  height: auto;
  margin-top: 50px;
  background: none;
}
.omission_btn_block.active .more_btn span::after {
  transform: rotate(-45deg);
  top: calc(50% - 4px);
}
.omission_btn_block .more_btn {
  width: 90%;
  max-width: 600px;
  height: 50px;
  background: #000;
  color: #fff;
  font-size: 16px;
  cursor: pointer;
}
.omission_btn_block .more_btn span {
  position: relative;
  padding: 0 30px;
}
.omission_btn_block .more_btn span::after {
  content: "";
  width: 10px;
  height: 10px;
  margin: 0 10px;
  border-top: 2px solid #fff100;
  border-right: 2px solid #fff100;
  transform: rotate(135deg);
  position: absolute;
  top: calc(50% - 8px);
  left: 0;
  transition: 0.3s;
}
.omission_btn_block .more_btn:hover {
  opacity: 0.7;
}

/*交通規制*/
.p-stage-traffic_soon {
  width: 100%;
  height: 500px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff100;
}
.p-stage-traffic_soon p {
  font-size: clamp(50px, 9vw, 100px);
  font-weight: bold;
  font-style: italic;
  color: #000;
}

/*チーム*/
.p-teams .p-teams__wrapper {
  max-width: 1260px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 100px 30px;
}
.p-teams .c-col-3 {
  gap: 25px;
}
.p-teams .p-team__items, .p-teams .p-team__items__link {
  aspect-ratio: 193/243;
  background: #888;
  transition: all 0.3s;
}
.p-teams .p-team__items.IWA, .p-teams .p-team__items__link.IWA {
  background: url(../img/teams/iwa_bg.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items.XAT, .p-teams .p-team__items__link.XAT {
  background: url(../img/teams/xat_bg.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items.TFT, .p-teams .p-team__items__link.TFT {
  background: url(../img/teams/tft_bg.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items.ART, .p-teams .p-team__items__link.ART {
  background: url(../img/teams/art_bg.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items.TUK, .p-teams .p-team__items__link.TUK {
  background: url(../img/teams/tuk_bg.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items.KIN, .p-teams .p-team__items__link.KIN {
  background: url(../img/teams/kin_bg.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items.MTR, .p-teams .p-team__items__link.MTR {
  background: url(../img/teams/mtr_bg.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items.SPA, .p-teams .p-team__items__link.SPA {
  background: url(../img/teams/spa_bg.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items.BGT, .p-teams .p-team__items__link.BGT {
  background: url(../img/teams/bgt_bg.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items.BLZ, .p-teams .p-team__items__link.BLZ {
  background: url(../img/teams/blz_bg.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items.VCF, .p-teams .p-team__items__link.VCF {
  background: url(../img/teams/vcf_bg.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items.VCH, .p-teams .p-team__items__link.VCH {
  background: url(../img/teams/vch_bg.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items.Q36, .p-teams .p-team__items__link.Q36 {
  background: url(../img/teams/q36_bg.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items.TEN, .p-teams .p-team__items__link.TEN {
  background: url(../img/teams/ten_bg.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items.CBW, .p-teams .p-team__items__link.CBW {
  background: url(../img/teams/cbw_bg.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items.ROI, .p-teams .p-team__items__link.ROI {
  background: url(../img/teams/roi_bg.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items.TSG, .p-teams .p-team__items__link.TSG {
  background: url(../img/teams/tsg_bg.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items.VSC, .p-teams .p-team__items__link.VSC {
  background: url(../img/teams/vsc_bg.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items.SMN, .p-teams .p-team__items__link.SMN {
  background: url(../img/teams/smn_bg.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover, .p-teams .p-team__items__link:hover {
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.6);
}
.p-teams .p-team__items:hover.IWA, .p-teams .p-team__items__link:hover.IWA {
  background: url(../img/teams/iwa_bg_on.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover.XAT, .p-teams .p-team__items__link:hover.XAT {
  background: url(../img/teams/xat_bg_on.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover.TFT, .p-teams .p-team__items__link:hover.TFT {
  background: url(../img/teams/tft_bg_on.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover.ART, .p-teams .p-team__items__link:hover.ART {
  background: url(../img/teams/art_bg_on.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover.TUK, .p-teams .p-team__items__link:hover.TUK {
  background: url(../img/teams/tuk_bg_on.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover.KIN, .p-teams .p-team__items__link:hover.KIN {
  background: url(../img/teams/kin_bg_on.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover.MTR, .p-teams .p-team__items__link:hover.MTR {
  background: url(../img/teams/mtr_bg_on.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover.SPA, .p-teams .p-team__items__link:hover.SPA {
  background: url(../img/teams/spa_bg_on.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover.BGT, .p-teams .p-team__items__link:hover.BGT {
  background: url(../img/teams/bgt_bg_on.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover.BLZ, .p-teams .p-team__items__link:hover.BLZ {
  background: url(../img/teams/blz_bg_on.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover.VCF, .p-teams .p-team__items__link:hover.VCF {
  background: url(../img/teams/vcf_bg_on.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover.VCH, .p-teams .p-team__items__link:hover.VCH {
  background: url(../img/teams/vch_bg_on.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover.Q36, .p-teams .p-team__items__link:hover.Q36 {
  background: url(../img/teams/q36_bg_on.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover.TEN, .p-teams .p-team__items__link:hover.TEN {
  background: url(../img/teams/ten_bg_on.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover.CBW, .p-teams .p-team__items__link:hover.CBW {
  background: url(../img/teams/cbw_bg_on.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover.ROI, .p-teams .p-team__items__link:hover.ROI {
  background: url(../img/teams/roi_bg_on.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover.TSG, .p-teams .p-team__items__link:hover.TSG {
  background: url(../img/teams/tsg_bg_on.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover.VSC, .p-teams .p-team__items__link:hover.VSC {
  background: url(../img/teams/vsc_bg_on.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover.SMN, .p-teams .p-team__items__link:hover.SMN {
  background: url(../img/teams/smn_bg_on.png) center no-repeat;
  background-size: cover;
}
.p-teams .p-team__items:hover .p-team__items__detail, .p-teams .p-team__items__link:hover .p-team__items__detail {
  background-color: unset !important;
}
.p-teams .p-team__items:hover .p-team__items__name-summary, .p-teams .p-team__items__link:hover .p-team__items__name-summary {
  color: #fff;
}
.p-teams .p-teams__contents {
  position: relative;
}
.p-teams .swiper-button-next, .p-teams .swiper-container-rtl .swiper-button-prev {
  width: 50px;
  height: 50px;
  right: -25px;
}
.p-teams .swiper-button-prev, .p-teams .swiper-container-rtl .swiper-button-next {
  width: 50px;
  height: 50px;
  left: -25px;
}
.p-teams .p-team__items__link {
  display: flex;
  justify-content: center;
  align-items: center;
}
.p-teams .p-team__items__link:hover {
  transform: scale(1);
}
.p-teams .p-team__items__image {
  padding: 0;
  padding-top: 1.5rem;
}
.p-teams .p-team__items__detail {
  border-top: none;
  padding: 1.5rem 1.5em;
}
.p-teams .p-team__items__name {
  font-size: 26px;
  font-weight: bold;
  color: #fff;
  line-height: 1.2;
}
.p-teams .p-team__items__name-summary {
  display: block;
  font-size: 0.6875rem;
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.05em;
  padding-top: 0.75rem;
}
.p-teams .p-teams__thumb {
  text-align: center;
  margin-bottom: 80px;
  height: auto;
}
.p-teams .p-teams__thumb .p-teams__thumb-image {
  height: auto;
}
.p-teams .p-teams-title {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  background: #fff100;
  position: relative;
  padding: 25px 40px 25px 40px;
  margin-bottom: 30px;
  overflow: hidden;
}
.p-teams .p-teams-title::before {
  content: "";
  width: 60px;
  height: 100%;
  background: #fff;
  clip-path: polygon(0 0, 100% 0, 0 100%);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
}
.p-teams .p-teams-title {
  /*
  .-head{
      font-size: clamp(34px, 3vw, 60px);
      font-weight: 600;
      font-style: italic;
      padding: 0 40px;
      border-right: 2px solid #000;
      z-index: 5;
  }
      */
}
.p-teams .p-teams-title .country {
  width: 90px;
  height: 60px;
  position: relative;
  z-index: 5;
}
.p-teams .p-teams-title .country.Japan {
  background: url(../img/teams/JPN.svg) center no-repeat;
  background-size: contain;
}
.p-teams .p-teams-title .country.Thailand {
  background: url(../img/teams/THA.svg) center no-repeat;
  background-size: contain;
}
.p-teams .p-teams-title .country.Australia {
  background: url(../img/teams/AUS.svg) center no-repeat;
  background-size: contain;
}
.p-teams .p-teams-title .country.Malaysia {
  background: url(../img/teams/MAS.svg) center no-repeat;
  background-size: contain;
}
.p-teams .p-teams-title .country.Australia2 {
  background: url(../img/teams/AUS.svg) center no-repeat;
  background-size: contain;
}
.p-teams .p-teams-title .country.Kazakhstan {
  background: url(../img/teams/KAZ.svg) center no-repeat;
  background-size: contain;
}
.p-teams .p-teams-title .country.Newzealand {
  background: url(../img/results/NZL.svg) center no-repeat;
  background-size: contain;
}
.p-teams .p-teams-title .country.USA {
  background: url(../img/results/USA.svg) center no-repeat;
  background-size: contain;
}
.p-teams .p-teams-title .country.Philippines {
  background: url(../img/teams/PHI.svg) center no-repeat;
  background-size: contain;
}
.p-teams .p-teams-title .country.Italy {
  background: url(../img/teams/ITA.svg) center no-repeat;
  background-size: contain;
}
.p-teams .p-teams-title .country.France {
  background: url(../img/teams/FRA.svg) center no-repeat;
  background-size: contain;
}
.p-teams .p-teams-title .country.Austria {
  background-size: contain;
}
.p-teams .p-teams-title .country.Belgium {
  background: url(../img/results/BEL.svg) center no-repeat;
  background-size: contain;
}
.p-teams .p-teams-title .country.Switzerland {
  background: url(../img/teams/CHE.svg) center no-repeat;
  background-size: contain;
}
.p-teams .p-teams-title .-body {
  width: calc(100% - 135px);
  margin-right: 45px;
  font-size: clamp(22px, 2vw, 34px);
  font-weight: bold;
  color: #000;
  z-index: 5;
  padding-left: 40px;
}
.p-teams .p-teams-title .-body .p-teams-title__description {
  display: block;
  color: #000;
  font-size: 1rem;
  font-weight: 600;
  margin-top: 5px;
}
.p-teams .p-teams-title .-body .p-teams-title__description .abbreviation {
  background: #000;
  color: #fff;
  padding: 3px 15px;
  transform: skew(-30deg);
  display: inline-block;
  margin-right: 20px;
}
.p-teams .p-teams-title .-body .p-teams-title__description .abbreviation .abbreviation_inner {
  transform: skew(30deg);
  display: inline-block;
}
.p-teams .p-teams-title .-body .p-teams-title__main {
  font-size: 2.75rem;
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid #000;
}
.p-teams .p-teams-title .-head {
  position: absolute;
  font-size: clamp(50px, 9vw, 140px);
  font-weight: bold;
  font-style: italic;
  color: rgba(0, 0, 0, 0.12);
  position: absolute;
  top: 50%;
  right: 25px;
  transform: translateY(-50%);
  z-index: 3;
  line-height: 1;
  white-space: nowrap;
}
.p-teams .p-teams-content {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.p-teams .p-teams-content .txt_box {
  width: 70%;
}
.p-teams .p-teams-content .img_box {
  width: 30%;
}
.p-teams .p-teams-link {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
}
.p-teams .p-teams-link .official_hp_btn {
  width: 100%;
  max-width: -moz-max-content;
  max-width: max-content;
  height: 120px;
  display: flex;
  justify-content: space-between;
  position: relative;
  gap: 15px;
}
.p-teams .p-teams-link .official_hp_btn:hover {
  opacity: 0.7;
}
.p-teams .p-teams-link .official_hp_btn .p-teams__detail-emblem {
  width: 120px;
  max-width: 120px;
  border: 1px solid #000;
}
.p-teams .p-teams-link .official_hp_btn .official_hp_txt {
  min-width: 260px;
  background: #000;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  flex-grow: 1;
  border: 1px solid #000;
  position: relative;
}
.p-teams .p-teams-link .official_hp_btn .official_hp_txt::after {
  content: "";
  width: 25px;
  height: 25px;
  background: url(../img/teams/btn_arrow.png) center no-repeat;
  background-size: cover;
  position: absolute;
  bottom: 0;
  right: 0;
}
.p-teams .p-teams-link .official_hp_btn .official_hp_txt .en {
  font-size: 28px;
  font-weight: 600;
  font-style: italic;
  text-align: center;
  display: block;
  width: 100%;
  color: #fff;
  margin-bottom: 5px;
}
.p-teams .p-teams-link .official_hp_btn .official_hp_txt .ja {
  font-size: 14px;
  font-weight: 500;
  text-align: center;
  display: block;
  width: 100%;
  color: #fff;
}
.p-teams .p-teams__detail-sns__list {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin: 0 30px;
  gap: 15px;
}
.p-teams .p-teams__detail-sns__list li {
  max-width: 50px;
}
.p-teams .p-teams__detail-sns__list li a:hover {
  opacity: 0.7;
}
.p-teams .p-teams-member .p-teams__thumb {
  margin-bottom: 0;
}

/*スペシャル*/
.special-nav {
  width: 100%;
  background: #000;
}
.special-nav .special-nav_list {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
.special-nav .special-nav_list li {
  width: 25%;
  border-right: 1px solid #ccc;
}
.special-nav .special-nav_list li:last-child {
  border-right: none;
}
.special-nav .special-nav_list li a {
  color: #fff;
  position: relative;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 15px 30px;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
}
.special-nav .special-nav_list li a:hover {
  color: #000;
  background: #fff100;
}
.special-nav .special-nav_list li a:hover::after {
  border-top: 2px solid #000;
  border-right: 2px solid #000;
}
.special-nav .special-nav_list li a::after {
  content: "";
  width: 10px;
  height: 10px;
  margin: 0 10px;
  border-top: 2px solid #fff100;
  border-right: 2px solid #fff100;
  transform: rotate(135deg);
  position: absolute;
  top: calc(50% - 5px);
  right: 5px;
  transition: 0.3s;
}

.p-special_sec {
  width: 100%;
  padding: 50px 0;
  position: relative;
}
.p-special_sec.special01 {
  padding-top: 100px;
}
.p-special_sec.special01::before {
  content: "";
  width: 24.5%;
  height: 100%;
  background: url(../img/special/bg01.png) top right no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  right: 0;
  opacity: 0.3;
}
.p-special_sec.special02::before {
  content: "";
  width: 24.5%;
  height: 100%;
  background: url(../img/special/bg02.png) top left no-repeat;
  background-size: contain;
  position: absolute;
  top: -100px;
  left: 0;
  opacity: 0.3;
}
.p-special_sec.special03::before {
  content: "";
  width: 20%;
  height: 100%;
  background: url(../img/special/bg03.png) top right no-repeat;
  background-size: contain;
  position: absolute;
  top: -120px;
  right: 0;
  opacity: 0.3;
}
.p-special_sec.special03::after {
  content: "";
  width: 20%;
  height: 100%;
  background: url(../img/special/bg04.png) bottom left no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0;
  left: 0;
  opacity: 0.3;
}
.p-special_sec.special04::before {
  content: "";
  width: 20%;
  height: 100%;
  background: url(../img/special/bg05.png) center right no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  right: 0;
  opacity: 0.3;
}
.p-special_sec.themesong::before {
  content: "";
  width: 20%;
  height: 100%;
  background: url(../img/special/bg06.png) center left no-repeat;
  background-size: contain;
  position: absolute;
  top: -100px;
  left: 0;
  opacity: 0.3;
}
.p-special_sec.special05 {
  padding-bottom: 100px;
}
.p-special_sec.special05::before {
  content: "";
  width: 20%;
  height: 100%;
  background: url(../img/special/bg07.png) center right no-repeat;
  background-size: contain;
  position: absolute;
  top: -100px;
  right: 0;
  opacity: 0.3;
}
.p-special_sec .p-special_contents {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
  z-index: 5;
}
.p-special_sec .p-special_contents .p-special-ttl {
  width: 100%;
  background: #fff100;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  position: relative;
  padding: 20px;
  margin-bottom: 50px;
  overflow: hidden;
}
.p-special_sec .p-special_contents .p-special-ttl::before {
  content: "";
  width: 100%;
  height: 2px;
  background: #000;
  position: absolute;
  left: 0;
  bottom: 0;
}
.p-special_sec .p-special_contents .p-special-ttl::after {
  content: "";
  width: 42px;
  height: calc(100% + 4px);
  background: #fff;
  clip-path: polygon(100% 100%, 100% 0, 0 100%);
  position: absolute;
  top: 0;
  right: -2px;
  z-index: 5;
}
.p-special_sec .p-special_contents .p-special-ttl .en {
  color: #000;
  font-size: 40px;
  font-weight: 600;
  font-style: italic;
}
.p-special_sec .p-special_contents .p-special-ttl .slash {
  padding: 0 15px;
  font-size: 34px;
}
.p-special_sec .p-special_contents .p-special-ttl .ja {
  color: #000;
  font-size: 20px;
  font-weight: bold;
}
.p-special_sec .p-special_contents .kumamon_comment {
  margin-bottom: 100px;
}
.p-special_sec .p-special_contents .p-special_flex01 {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.p-special_sec .p-special_contents .p-special_flex01.border_b {
  padding-bottom: 50px;
  margin-bottom: 50px;
  border-bottom: 1px solid #ddd;
}
.p-special_sec .p-special_contents .p-special_flex01 .img_box {
  width: 30%;
}
.p-special_sec .p-special_contents .p-special_flex01 .txt_box {
  width: 62%;
}
.p-special_sec .p-special_contents .p-special_flex01 .txt_box .p-special_h3 {
  background: #000;
  color: #fff;
  transform: skew(-30deg);
  margin-top: 30px;
  margin-bottom: 35px;
  font-size: 24px;
  font-weight: 600;
  font-style: italic;
  padding: 5px 30px;
  display: inline-block;
}
.p-special_sec .p-special_contents .p-special_flex01 .txt_box .p-special_h3 span {
  display: inline-block;
  transform: skew(30deg);
}
.p-special_sec .p-special_contents .p-special_flex01 .txt_box .name {
  padding-bottom: 10px;
  margin-bottom: 20px;
  display: inline-block;
}
.p-special_sec .p-special_contents .p-special_flex01 .txt_box .name .main {
  font-size: 34px;
  font-weight: bold;
  color: #000;
  margin-right: 15px;
  position: relative;
  z-index: 5;
}
.p-special_sec .p-special_contents .p-special_flex01 .txt_box .name .sub {
  font-size: 20px;
  font-weight: bold;
  color: #000;
  position: relative;
  z-index: 5;
}
.p-special_sec .p-special_contents .p-special_flex01 .txt_box .underline {
  position: relative;
}
.p-special_sec .p-special_contents .p-special_flex01 .txt_box .underline::after {
  content: "";
  width: 100%;
  height: 20px;
  background: url(../img/special/txt_line.png);
  background-repeat: repeat-x;
  background-size: contain;
  position: absolute;
  left: 0;
  bottom: 0;
}
.p-special_sec .p-special_contents .p-special_flex01 .txt_box .txt {
  font-size: 16px;
  line-height: 2;
}
.p-special_sec .p-special_contents .p-special_flex01 .txt_box dl {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.p-special_sec .p-special_contents .p-special_flex01 .txt_box dl dt {
  width: 150px;
  font-size: 16px;
  font-weight: bold;
}
.p-special_sec .p-special_contents .p-special_flex01 .txt_box dl dd {
  width: calc(100% - 150px);
  font-size: 16px;
  line-height: 1.8;
}
.p-special_sec .p-special_contents .p-special_flex02 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
}
.p-special_sec .p-special_contents .p-special_flex02 .img_box {
  width: 30%;
}
.p-special_sec .p-special_contents .p-special_flex02 .txt_box {
  width: 62.5%;
}
.p-special_sec .p-special_contents .metal_main_txt, .p-special_sec .p-special_contents .jersey_main_txt {
  margin-bottom: 50px;
}
.p-special_sec .p-special_contents .p-special_flex03 {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
  gap: 50px;
}
.p-special_sec .p-special_contents .p-special_flex03 .content_box {
  width: calc((100% - 50px) / 2);
  border: 1px solid #ddd;
  background: #fff;
}
.p-special_sec .p-special_contents .p-special_flex03 .content_box .content_box_ttl {
  width: 100%;
  background: #000;
  text-align: center;
  color: #fff;
  font-size: 22px;
  font-weight: bold;
  padding: 15px;
}
.p-special_sec .p-special_contents .p-special_flex03 .content_box .content_box_flex {
  width: 100%;
  padding: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.p-special_sec .p-special_contents .p-special_flex03 .content_box .content_box_flex .img_box {
  width: 50%;
  padding: 15px;
  text-align: center;
}
.p-special_sec .p-special_contents .p-special_flex03 .content_box .content_box_flex .txt_box {
  width: 50%;
  padding: 20px;
  position: relative;
}
.p-special_sec .p-special_contents .p-special_flex03 .content_box .content_box_flex .txt_box::after {
  content: "";
  width: 2px;
  height: 100%;
  background: #fff100;
  position: absolute;
  top: 0;
  left: 0;
}
.p-special_sec .p-special_contents .p-special_flex03 .content_box .content_box_flex .txt_box .ttl {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 15px;
}
.p-special_sec .p-special_contents .p-special_flex03.jersey .content_box {
  width: 100%;
}
.p-special_sec .p-special_contents .p-special_flex03.jersey .content_box .content_box_flex {
  position: relative;
}
.p-special_sec .p-special_contents .p-special_flex03.jersey .content_box .content_box_flex::before {
  content: "";
  width: 25%;
  height: 100%;
  background: url(../img/special/jersey_icon.png) top right no-repeat;
  background-size: contain;
  position: absolute;
  top: 20px;
  right: 20px;
}
.p-special_sec .p-special_contents .p-special_flex03.jersey .content_box .content_box_flex .img_box {
  width: 35%;
}
.p-special_sec .p-special_contents .p-special_flex03.jersey .content_box .content_box_flex .txt_box {
  width: 65%;
}
.p-special_sec .p-special_contents .comment {
  font-size: 16px;
  text-align: right;
  margin-top: 15px;
}
.p-special_sec .p-special_contents .movie_bg {
  background: url(../img/special/movie_bg.png) center no-repeat;
  background-size: cover;
  padding: 60px 15%;
  margin-bottom: 50px;
}
.p-special_sec .p-special_contents .movie_bg .movie_ttl {
  text-align: center;
  font-size: 80px;
  font-weight: bold;
  margin-bottom: 20px;
}
.p-special_sec .p-special_contents .movie_bg .movie_sub {
  width: -moz-max-content;
  width: max-content;
  margin: 0 auto;
  font-size: 20px;
  font-weight: bold;
  color: #000;
  line-height: 1.3;
}
.p-special_sec .p-special_contents .movie_bg .movie_box {
  margin-top: 30px;
}
.p-special_sec .p-special_contents .locus_link {
  position: relative;
  margin-top: 20px;
  display: inline-block;
  text-decoration: none;
  padding-left: 30px;
  color: #00a0d2;
}
.p-special_sec .p-special_contents .locus_link::before {
  content: "";
  width: 25px;
  height: 25px;
  background: url(../img/sustainable/arrow01.png) center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.p-special_sec .p-special_contents .locus_link:hover {
  opacity: 0.7;
}
.p-special_sec .txt {
  font-size: 16px;
  line-height: 1.8;
}
.p-special_sec .c-col-1__head {
  margin-top: 0;
}

/*アーカイブ*/
.archive-nav {
  width: 100%;
  background: #000;
}
.archive-nav .archive-nav_list {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
.archive-nav .archive-nav_list li {
  width: 33.3333333333%;
  border-right: 1px solid #ccc;
}
.archive-nav .archive-nav_list li:last-child {
  border-right: none;
}
.archive-nav .archive-nav_list li a {
  color: #fff;
  position: relative;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 15px 30px;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
}
.archive-nav .archive-nav_list li a:hover {
  color: #000;
  background: #fff100;
}
.archive-nav .archive-nav_list li a:hover::after {
  border-top: 2px solid #000;
  border-right: 2px solid #000;
}
.archive-nav .archive-nav_list li a::after {
  content: "";
  width: 10px;
  height: 10px;
  margin: 0 10px;
  border-top: 2px solid #fff100;
  border-right: 2px solid #fff100;
  transform: rotate(135deg);
  position: absolute;
  top: calc(50% - 5px);
  right: 5px;
  transition: 0.3s;
}

.archive_sec {
  padding: 50px 0;
  background: #fff;
  width: 100%;
}
.archive_sec.first {
  padding-top: 100px;
}
.archive_sec.last {
  padding-bottom: 100px;
}
.archive_sec .archive_content {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
}
.archive_sec .archive_ttl {
  font-size: 26px;
  font-weight: bold;
  color: #000;
  line-height: 1.4;
  padding: 15px 10px 15px 10%;
  position: relative;
  margin-bottom: 50px;
}
.archive_sec .archive_ttl::before {
  content: "";
  width: 88px;
  width: 7.5%;
  height: 50px;
  background: url(../img/archive/ttl_icon.svg) center no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0.75%;
}
.archive_sec .archive_ttl::after {
  content: "";
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, #fff100 0%, #fff100 9%, #000 9%, #000 100%);
  position: absolute;
  bottom: 0;
  left: 0;
}
.archive_sec .archive_list {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 20px;
}
.archive_sec .archive_list li {
  width: calc((100% - 40px) / 3);
}
.archive_sec .archive_list li a {
  display: block;
}

body.page-top .c-results {
  padding-top: 0;
}

.result2025.c-results {
  padding-bottom: 0;
}
.result2025.c-results .c-results-award__list {
  width: 100%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
}
.result2025.c-results .c-results-award__list.winer {
  margin-bottom: 30px;
  gap: 30px;
}
.result2025.c-results .c-results-award__list.winer .c-results-award__list__item__title {
  transform: skewX(-30deg);
  width: calc(100% - 30px);
  margin: 0 auto 10px;
  font-size: 1.25rem;
}
@media only screen and (max-width: 980px) {
  .result2025.c-results .c-results-award__list.winer .c-results-award__list__item__title {
    font-size: 1rem;
  }
}
.result2025.c-results .c-results-award__list.winer .c-results-award__list__item__title span {
  transform: skewX(30deg);
  display: block;
}
.result2025.c-results .c-results-award__list.winer .c-results-award__list__item {
  width: 32.5%;
  background: url(../img/results/winner_bg.png) center no-repeat;
  background-size: cover;
  padding: 20px;
}
.result2025.c-results .c-results-award__list.ex {
  gap: 15px;
}
.result2025.c-results .c-results-award__list.ex .c-results-award__list__item {
  width: calc((100% - 75px) / 6);
}
.result2025.c-results .c-results-award__list .c-results-award__list__item {
  width: calc((100% - 80px) / 5);
  background: #fff;
}
.result2025.c-results .c-results-award__list .c-results-award__list__item::before {
  content: none;
}
.result2025.c-results .c-results-award__list .c-results-award__list__item .c-results-award__list__item__wrap {
  display: block;
}
.result2025.c-results .c-results-award__list::before {
  content: none;
}
.result2025.c-results .c-results-award__list .c-results-award__list__item__title {
  color: #fff100;
  background: #000;
  width: 100%;
  min-height: 75px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.result2025.c-results .c-results-award__list .img {
  position: relative;
  width: 100%;
  padding-top: 145%;
  overflow: hidden;
  background: #eee;
}
.result2025.c-results .c-results-award__list .img img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -o-object-fit: cover;
     object-fit: cover;
}
.result2025.c-results .c-results-award__list .txt {
  background: #fff;
  width: 100%;
  padding: 5px;
}
.result2025.c-results .c-results-award__list .txt .name {
  font-size: 1.025rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 5px;
}
@media only screen and (max-width: 980px) {
  .result2025.c-results .c-results-award__list .txt .name {
    font-size: 0.975rem;
  }
}
.result2025.c-results .c-results-award__list .txt .country {
  text-align: center;
  font-size: 1rem;
  color: #808080;
}
@media only screen and (max-width: 980px) {
  .result2025.c-results .c-results-award__list .txt .country {
    font-size: 0.85rem;
  }
}
.result2025 .c-results-overflow .c-results-overflow-table {
  background: #fff100;
}
.result2025 .c-results-overflow .c-results-overflow-table thead th {
  vertical-align: middle;
}
.result2025 .c-results-overflow .c-results-overflow-table tbody td {
  padding: 15px 0;
  align-content: center;
}
.result2025 .c-results-overflow .c-results-overflow-table tbody td.national_flag_td {
  display: flex;
  justify-content: center;
  align-items: center;
}
.result2025 .c-results-overflow .c-results-overflow-table tbody td.national_flag_td .national_flag {
  width: 30px;
  display: inline-block;
  margin-right: 5px;
}

.result_report {
  width: 100%;
  background: #f2f2f2;
  padding: 90px 0;
}
.result_report .result_report_content {
  width: 100%;
  max-width: 1230px;
  padding: 50px 15px;
  margin: 0 auto;
  background: #fff;
}
.result_report .result_report_content .inner {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
}
.result_report .result_report_content .inner .p-news-header {
  padding-bottom: 20px;
  margin-bottom: 30px;
}
.result_report .result_report_content .inner .p-news p {
  font-size: 18px;
  line-height: 1.8;
  margin-bottom: 5px;
}
.result_report .result_report_content .inner .p-news a {
  color: #ee8f00;
  text-decoration: underline;
}
.result_report .result_report_content .inner .p-news img {
  display: block;
  margin: 10px auto;
  max-width: 100%;
  height: auto;
}
.result_report .result_report_content .inner .p-news .wp-caption-text {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 20px;
}
.result_report .result_report_content .inner .p-news .wp-caption {
  width: 100% !important;
}

.mv_countdown {
  padding-top: 50px;
}
.mv_countdown .countdown_block {
  width: 100%;
  background: #000;
  display: flex;
  justify-content: center;
  padding: 10px;
  align-items: center;
}
.mv_countdown .countdown_block .event_period {
  font-size: 34px;
  font-weight: 600;
  position: relative;
  padding-right: 15px;
  color: #fff;
}
.mv_countdown .countdown_block .event_period .small {
  font-size: 28px;
}
.mv_countdown .countdown_block .event_period::after {
  content: "";
  width: 2px;
  height: 100%;
  background: #fff100;
  position: absolute;
  top: 0;
  right: 0;
}
.mv_countdown .countdown_block .countdown {
  font-size: 34px;
  font-weight: 600;
  padding-left: 15px;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}
.mv_countdown .countdown_block .countdown .small {
  font-size: 26px;
}
.mv_countdown .countdown_block .countdown .num {
  font-size: 54px;
  font-weight: bold;
  padding: 0 5px;
}

.mv_slide {
  width: 100%;
  padding-bottom: 50px;
}
.mv_slide .swiper-pagination {
  bottom: 17px;
}
.mv_slide .swiper-pagination .swiper-pagination-bullet {
  width: 15px;
  height: 15px;
  margin: 0 10px;
  cursor: pointer;
}
.mv_slide .swiper-pagination .swiper-pagination-bullet-active {
  background: #000;
}

.final_fv {
  width: 100%;
  margin: 0 auto;
  padding: 50px 0;
}

.day_mv {
  width: 100%;
  padding: 50px 0;
  padding-right: 230px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
}
@media only screen and (max-width: 1280px) {
  .day_mv {
    padding-right: 190px;
  }
}
.day_mv .day_mv_movie {
  width: 80%;
  max-width: 1280px;
}
.day_mv .day_mv_movie iframe {
  width: 100%;
  height: 100%;
}
@media only screen and (max-width: 1280px) {
  .day_mv .day_mv_movie {
    width: calc(100% - 190px);
  }
}
.day_mv .day_mv_info {
  width: calc(20% - 20px);
}
@media only screen and (max-width: 1280px) {
  .day_mv .day_mv_info {
    width: 170px;
  }
}
.day_mv .day_mv_info .ttl {
  width: 100%;
  background: #000;
  padding: 20px;
  color: #fff;
  text-align: center;
  font-size: 1.25rem;
  font-weight: bold;
}
@media only screen and (max-width: 1380px) {
  .day_mv .day_mv_info .ttl {
    font-size: 1rem;
  }
}
.day_mv .day_mv_info .day_mv_info_box {
  width: 100%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding: 20px;
  gap: 20px;
  background: #fff;
}
.day_mv .day_mv_info .day_mv_info_box a {
  display: block;
  width: 100%;
  border: 1px solid #000;
  position: relative;
  padding: 60px 20px;
  background: #fff;
}
.day_mv .day_mv_info .day_mv_info_box a:hover {
  opacity: 0.7;
}
.day_mv .day_mv_info .day_mv_info_box a::before {
  content: "";
  background: url(../img/top/mv_window.png) center no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 40px;
  height: 40px;
}
@media only screen and (max-width: 1280px) {
  .day_mv .day_mv_info .day_mv_info_box a::before {
    width: 25px;
    height: 25px;
  }
}
.day_mv .day_mv_sns {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.day_mv .day_mv_sns .ttl {
  width: 24%;
  padding: 20px 45px 20px 15px;
  position: relative;
  background: #000;
  font-size: 1.5rem;
  font-weight: bold;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (max-width: 1380px) {
  .day_mv .day_mv_sns .ttl {
    font-size: 1.125rem;
    padding: 20px 35px 20px 10px;
  }
}
.day_mv .day_mv_sns .ttl::after {
  content: "";
  width: 45px;
  height: calc(100% + 1px);
  background: #fff;
  clip-path: polygon(100% 100%, calc(100% - 1px) 0, 0 100%);
  position: absolute;
  top: 0px;
  right: -1px;
}
.day_mv .day_mv_sns .sns_list {
  width: 76%;
  padding: 20px;
  display: flex;
  justify-content: space-between;
  background: #fff;
}
.day_mv .day_mv_sns .sns_list li {
  width: calc((100% - 20px) / 3);
}
.day_mv .day_mv_sns .sns_list li a {
  display: block;
}
.day_mv .day_mv_sns .sns_list li a:hover {
  opacity: 0.7;
}
@media only screen and (max-width: 1100px) {
  .day_mv .day_mv_sns .ttl {
    width: 100%;
    padding: 15px;
  }
  .day_mv .day_mv_sns .ttl::after {
    content: none;
  }
  .day_mv .day_mv_sns .sns_list {
    width: 100%;
  }
}

.youtube-ratio {
  margin-top: 15px;
}
.youtube-ratio iframe {
  width: 100%;
  max-width: 560px;
  height: auto;
  aspect-ratio: 16/9;
}/*# sourceMappingURL=2026.css.map */