@charset "UTF-8";

/* ================================================
2025 
================================================ */

body {
  /* background: url(../img/psjapan2025/content_bg.png) no-repeat; */
  background: none;
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
}

#kv {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  #kv {
    margin-bottom: 0 !important;
  }
  
}

.kv_inner {
  background: url(../img/psjapan2025/kv_bg.jpg) no-repeat;
  background-position: center;
  background-size: cover;
  position: relative;
  height: 630px;
}

@media screen and (max-width: 767px) {
  .kv_inner {
    background: url(../img/psjapan2025/kv_bg_sp.jpg) no-repeat;
    background-position: center;
    background-size: cover;
    height: 100%;
  }
}

.kv_inner .topcampaign {
  position: absolute;
  top: 50%;
  margin: 0;
  transform: translate(0, -50%);
}

@media screen and (max-width: 767px) {
  .kv_inner .topcampaign {
    position: initial;
    transform: none;
    padding: 20px 0;
  }
}

.kv_index {
  max-width: 700px;
  margin: 0 auto;
  margin-top: -80px;
}

@media screen and (max-width: 767px) {
  .kv_index {
    margin-top: 0;
  }

  .kv_index ul {
    padding-bottom: 30px;
  }
}

.kv_index_ttl {
  background: #f4e827;
  font-size: 20px;
  font-weight: 900;
  margin-bottom: 20px; 
}

@media screen and (max-width: 767px) {
  .kv_index_ttl {
    font-size: calc(45 / 750*100vw);
    line-height: initial;
    padding: 3px 0;
    margin-bottom: 15px;
  }
}

.kv_index_list_ttl { 
  background: #fff;
  color: #173063;
  font-size: 15px;
  font-weight: 900;
  border-radius: 4px 4px 0 0;
}

@media screen and (max-width: 767px) {
  .kv_index_list_ttl {
    font-size: calc(33 / 750*100vw);
  }
}

.kv_index_list_date {
  background: #000;
  color: #fff;
  font-size: 20px;
  border-radius: 0 0 4px 4px;
}

@media screen and (max-width: 767px) {
  .kv_index_list_date {
    font-size: calc(45 / 750*100vw);
  }
}

.kv_index_list_date span {
  font-size: 32px;
  font-weight: 900;
}

@media screen and (max-width: 767px) {
  .kv_index_list_date span {
    font-size: calc(55 / 750*100vw);
  }
}


.kv_top {
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .kv_top {
    margin-bottom: calc(80 /750*100vw);
  }
}

.kv_bottom {

}


/* =======================================================================================================

about

======================================================================================================= */

#about {
  padding: 100px 0;
  background: #000;
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  #aboubt {
    padding: 65px 0;
  }
}

#rule {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  #rule {
    padding: 65px 0;
  }
}

#about.border_bg,
.border_bg {
  padding: 100px 0;
  background: url(../img/psjapan2025/content_bg.png) repeat;
  width: 100%;
  background-size: 100% 612px;
}

@media screen and (max-width: 767px) {
  #about.border_bg,
  .border_bg {
    background: url(../img/psjapan2025/content_bg_sp.png) repeat;
    background-size: 100% calc(700 / 750*100vw);
    padding: 65px 0;
  }
}

.rule_flex {
  display: flex;
  align-items: stretch; 
  flex-wrap: wrap;
  gap: 0 25px;
  margin-top: 16px;
}

@media screen and (max-width: 767px) {
  .rule_flex {
    flex-direction: column;
  }
}

.rule_block {
  width: calc(100% / 3 - 17px);
  display: flex;
  flex-direction: column;
}

@media screen and (max-width: 767px) {
  .rule_block {
    width: 100%;
    margin-bottom: 20px;
  }

  .rule_block:last-child {
    margin-bottom: 0px;
  }
}

.rule_block:last-child {
  width: 100%;
}

.rule_block_body {
  border: solid 1px #fff;
  padding: 20px;
  flex: 1 1 auto; 
}

#rule .rule_block .rule_block_ttl {
  font-size: 18px;
  font-weight: 700;
  color: #15a9fb;
  margin-bottom: 5px;
}

.rule_block .rule_block_txt {
  font-size: 15px;
  color: #fff;
  line-height: 2;
}

.rule_block .rule_arrow {
  text-align: center;
  margin: 20px 0;
}

@media screen and (max-width: 767px) {
  .rule_block .rule_arrow {
    display: none;
  }

  .rule_block:nth-child(3) .rule_arrow {
    display: block;
    margin-bottom: 0;
  }

  #rule .sec_body p {
    white-space: normal;
  }
}

.rule_block .rule_arrow img {
  width: 16px;
  max-width: 100px;
}



/* =======================================================================================================

flow

======================================================================================================= */

#flow {
  margin-bottom: 0;
}

#flow h4 {
  background: #000;
  color: #fff;
  text-align: center;
  margin-bottom: 50px;
  padding: 8px;
  border-radius: 40px;
  font-size: 20px;
  letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
  #flow h4 {
    font-size: calc(30 / 750 * 100vw);
  }

  #flow .list_02 h4 {
    margin-bottom: 10px;
  }

  #flow h4 span {
    display: none;
    
  }

  .list_02_text {
    color: #fff;
    text-align: center;
    font-size: calc(26 / 750 * 100vw);
    margin-bottom: 30px;
  }
}

#flow .list_inner {
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  #flow .list_item_inner {
    align-items: center;

  }
}

#flow .list_item {
  margin-right: 40px;
}

#flow .list_item_img_block:before {
  content: "";
  width: 32px;
  right: -37px;
}

@media screen and (max-width: 767px) {
  #flow .list_item_img_block:before,
  #flow .list_item:nth-child(1) .list_item_img_block:before,
  #flow .list_item:nth-child(2) .list_item_img_block:before {
    bottom: calc(-90 / 750 * 100vw);
  }
}


#flow .list_movie {
  text-align: center;
  position: relative;
}

#flow .list_movie a:before {
  content: "";
  width: 100px;
  height: 100px;
  background: url(../img/psjapan2025/play_movie.png) no-repeat;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 99;
}

@media screen and (max-width: 767px) {
  #flow .list_movie a:before {
    background-size: contain;
    content: "";
    width: 50px;
    height: 50px;
  }
}

#flow .list_02 {
  margin-bottom: 120px;
}

@media screen and (max-width: 767px) {
  #flow .list_02 {
    margin-bottom: 60px;
  }
}

#flow .list_03 {
  margin-bottom: 60px;
} 

#flow .btns {
  gap: 0 20px;
}

@media screen and (max-width: 767px) {
  #flow .btns {
    flex-direction: column;
  }
}

#flow .btn01 {
  width: 300px;
}

.btn01 {
  align-items: center;
  gap: 0 10px;
  font-size: 15px;
}

.btn01:before {
  position: initial;
  transform: rotate(45deg);
}

@media screen and (max-width: 767px) {
  #flow .btn01 {
    margin: auto;
    margin-bottom: 20px;
  }

  .btn01 {
    font-size: calc(28 / 750 * 100vw);
  }
}


#flow .btn01:before {
  left: 20px;
}


/* =======================================================================================================

supporter

======================================================================================================= */


#about.supporter .base_base {
  padding-top: 50px;
}

#about.supporter .base_base .sec_ttl {
  background: none;
  height: auto;
}

.sp_supporter {
  /* margin-top: -50px; */
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .sp_supporter {
    /* margin-top: -20px; */
    margin-bottom: 25px;
  }
}

/* .sp_supporter02 {
  margin-top: -130px;
}

@media screen and (max-width: 767px) {
  .sp_supporter02 {
    margin-top: -70px;
  }
} */

.sp_supporter_about {
  height: auto;
  padding-bottom: 32px;
}


.supporter_list_item {
  width: calc(100% / 4 );
  padding: 17px 10px;
}

@media screen and (max-width: 767px) {
  .supporter_list_item {
    width: calc( 100% / 2 );
    padding: 8px;
  }
}

.supporter_list_item_inner {
  padding: 25px 18px;
}

@media screen and (max-width: 767px) {
  .supporter_list_item_inner {
    padding: 12px 12px 16px;
  }

  .sns_item_id {
    font-size: 10px;
  }
}


/* =======================================================================================================

tournament

======================================================================================================= */


#about .local_tournament h3.local_tournament_ttl {
  background: linear-gradient(90deg, #09bbfe 0%, #5a42ec 99%);
  color: #000;
}

.local_tournament .sec_body {
  margin-top: 50px;
}

.local_tournament_flex {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

@media screen and (max-width: 767px) {
  .local_tournament_flex {
    flex-direction: column;
  }
}

.local_tournament_block {
  width: calc(100% / 2 - 10px);
}

@media screen and (max-width: 767px) {
  .local_tournament_block {
    width: 100%;
  }
}

.local_tournament_block_body {
  border: solid 1px #fff;
}

.local_tournament_block_ttl {
  background: #0078ff;
  color: #fff;
  padding: 5px 0;
  font-size: 20px;
}

@media screen and (max-width: 767px) {
  .local_tournament_block_ttl {
    font-size: calc( 30 / 750*100vw);
  }
}

.local_tournament_block_02 .local_tournament_block_ttl {
  background: #de2121;
}

.local_tournament_block_03 .local_tournament_block_ttl {
  background: #ff7200;
}

.local_tournament_block_04 .local_tournament_block_ttl {
  background: #b2df00;
}

.local_tournament_block_05 .local_tournament_block_ttl {
  background: #19d800;
}

.local_tournament_block_06 .local_tournament_block_ttl {
  background: #19d800;
}

.local_tournament_block_07 .local_tournament_block_ttl {
  background: #ff0076;
}



.local_tournament_block_inner {
  padding: 20px 30px;
}

@media screen and (max-width: 767px) {
  .local_tournament_block_inner  {
    padding: 16px;
  }
}

.local_tournament_block_txt {
  display: block;
  font-size: 20px;
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: solid 1px #898989;
}

.local_tournament_block_txt a {
  color: #fff;
  text-decoration: underline;
}

@media screen and (max-width: 767px) {
  .local_tournament_block_txt {
    font-size: calc( 28 / 750*100vw);
  }
}

.local_tournament_block_txt a img {
  margin-bottom: 16px;
}

.local_tournament_block_txt span {
  display: block;
  font-size: 14px;
  padding-top: 8px;
}

@media screen and (max-width: 767px) {
  .local_tournament_block_txt span {
    font-size: calc( 25 / 750*100vw);
  }
}


.local_tournament_block_date {
  font-size: 16px;
}

@media screen and (max-width: 767px) {
  .local_tournament_block_date {
    font-size: calc( 25 / 750*100vw);
  }
}


.local_tournament_block_result_ttl {
  background: #1e1e1e;
  color: #fff;
  text-align: center;
  font-size: 16px;
  padding: 10px 0;
}

@media screen and (max-width: 767px) {
  .local_tournament_block_result_ttl {
    font-size: calc( 28 / 750*100vw);
  }
}


.online_tournament_block {
  width: calc(100% / 2 - 10px);
  border: solid 1px #e5e5e5;
  background: #313131;
  padding: 8px 0;
}

@media screen and (max-width: 767px) {
  .online_tournament .local_tournament_flex {
    flex-direction: row;
  }

  .online_tournament_block {

  }
}

.online_tournament_block_result {
  width: 100%;
  background: #1e1e1e;
}

.online_tournament_block_ttl {
  font-size: 20px;
  letter-spacing: 1px;
}

@media screen and (max-width: 767px) {
  .online_tournament_block_ttl {
    font-size: calc( 25 / 750*100vw);
  }
}

.online_tournament_block_result .online_tournament_block_ttl {
  font-size: 16px;
}

@media screen and (max-width: 767px) {
  .online_tournament_block_result .online_tournament_block_ttl {
    font-size: calc( 28 / 750*100vw);
  }
}


.local_tournament .btn01,
.online_tournament .btn01 {
  background: linear-gradient(-45deg, rgb(255, 0, 0) 0%, rgba(255, 208, 0, 0.99608) 100%);
}

#about h3 {
  /* margin-bottom: 16px; */
}

@media screen and (max-width: 767px) {
  #about h3 {
    height: auto;
  }
}

.base_base {
  background: rgba(0, 0, 0, 0.7);
}

#about h4 {
  font-size: 18px;
  font-weight: 900;
  padding-top: 8px;
}

@media screen and (max-width: 767px) {
  #about h4 {
    font-size: calc( 32 / 750*100vw);
    padding-top: 12px;
  }
}

.movie_slider {
  display: flex;
  align-items: center;
  gap: 0 50px;
  justify-content: center;
}

@media screen and (max-width: 767px) {
  .movie_slider {
    flex-direction: column;
  }
}

#movie .list_item {
  width: calc(100% / 3 - 33px);
  padding: 0;
}

@media screen and (max-width: 767px) {
  #movie .list_item {
    width: 100%;
    padding: 0 calc(35/750*100vw);
    margin-bottom: 20px;
  }

  #movie .list_item_inner {
    width: 100%;
  }

  #movie .list_item img {
    width: 100%;
  }
}

#movie, #faq {
  background: rgba(0, 0, 0, 0.8);
  margin-bottom: 100px;
}

@media screen and (max-width: 767px) {
  #movie, #faq {
    margin-bottom: calc(120 / 750*100vw);
  }
}

#faq {
  margin-bottom: 0;
}

#movie.movie h2, 
#faq.faq h2 {
  background: none;
}

#movie .sec_body, 
#faq .sec_body {
  margin-top: 70px;
}

footer {
  margin-top: 0;
}

.fixed_cta_btn {
  opacity: 0 !important;
  visibility: hidden !important;
}

.fixed_cta_btn.scrolled {
  opacity: 1 !important;
  visibility: visible !important;
}



#about .p-about  h2 {
  background: none;
  height: auto;
  margin-top: 0;
  padding-top: 20px;
}

#about .p-about  h3 {
  background: linear-gradient(90deg, #09bbfe 0%, #5a42ec 99%);
  color: #000;
}

.sel_ttl_link {
  display: inline-block;
  margin-top: 30px;
}

.sel_ttl_link p {
  color: #09bbfe;
  text-decoration: underline;
}

#special_2025 .supporter_list_items {
  justify-content: center;
}


.flow_list_text {
  color: #fff;
  text-align: center;
  margin-bottom: 40px;
}






/* 0717 */


.p_local .p_local_link,
.p_online .p_online_link {
  color: #fff;
  text-decoration: underline;
}

@media screen and (max-width: 767px) {
  .p_online .p_online_link {
    font-size: 12px;
  }
}

.rule_block_body:not(:last-child) {
  background: #ffd800;
}


.p_special {

}

.p_special .base_base p,
.p_special .base {
  color: #000;
}

.p_special .base_base {
  background: rgba(255, 255, 255, 0.7);
}



#about .p_online h4.fs_large {
  font-size: 28px;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  #about .p_online h4.fs_large {
    font-size: calc(22 /750*100vw);
  }
}




.logos {
  margin-top: 100px;
}

@media screen and (max-width: 767px) {
  .logos {
    margin-top: calc(120 / 750*100vw);
    padding-top: 0;
  }
}

.logos_body {
  max-width: 1330px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .logos_body {
    padding: 0 calc(35/750*100vw);
    margin-top: 0 !important;
  }
}

.logos_body ul {
  display: flex;
  align-items: center;
  gap: 0 30px;
}

@media screen and (max-width: 767px) {
  .logos_body ul {
    flex-direction: column;
    gap: 30px 0;
  }
}


#about dl dd .fc_white {
  color: #fff;
  text-decoration: underline;
}




.btn02 {
  background: transparent !important;
}



.sec_body_txt {
  font-size: 28px;
  font-weight: 900;
}
@media screen and (max-width: 767px) {
  .sec_body_txt {
    font-size: calc(34 / 750*100vw);
  }
}



table.online_table tbody tr:nth-child(odd) {
  background: #e5e5e5;
}

table.online_table tbody tr td {
  color: #000;
}

table.online_table tbody tr td:first-child {
  border-right: solid 1px #000;
}

table.online_table tbody tr:nth-child(even) {
  background: #fff;
}

@media screen and (max-width: 767px) {
  table.online_table {
    display: inline-table;
  }

  table.online_table tr {
    display: table-row;
  }

  table.online_table tr th,
  table.online_table tr td {
    width: auto;
    display: table-cell;
  }

  table.online_table tr th {
    text-align: center;
  }

  table.online_table tbody {
    display: table-header-group;
  }
}



.fw_b {
  font-weight: bold;
}

.d_b {
  display: block;
}

.d_ib {
  display: inline-block;
}

.bt_wht {
  border-top: solid 1px #fff;
}

.bb_wht {
  border-bottom: solid 1px #fff;
}


.result table.tablepress {
  margin-bottom: 0;
  border-collapse: separate;
}

.result table.tablepress caption {
  display: none;
}

.result table.tablepress .row-1 {

}

.result table.tablepress td {
  text-align: center;
}

.result table.tablepress td[rowspan="2"] {
  vertical-align: middle;
}

.result table.tablepress tr.odd td {
  background: #e5e5e5;
}



.result table.tablepress tr td[colspan="3"] {
  background: linear-gradient(90deg, #09bbfe 0%, #5a42ec 99%);
  font-weight: 600;
}

.result table.tablepress tr.row-1 td {
  background: #000;
  color: #fff;
}

.result table.tablepress tbody tr td:not(:last-child) {
  border-right: solid 1px #000;
}


.accordion_trigger {
  cursor: pointer;
  position: relative;
  user-select: none;
  background: linear-gradient(90deg, #09bbfe 0%, #5a42ec 99%);
}

.accordion_trigger::after {
  content: '▼';
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 0.3s ease;
}

.accordion_trigger.active::after {
  transform: translateY(-50%) rotate(180deg);
}

.accordion_content {
  transition: all 0.3s ease;
  overflow: hidden;
}

.accordion_content.active {
  display: block !important;
}


.online_result.result table.tablepress .row-2 td {
  background: #000;
  color: #fff;
  border-left: solid 1px #fff;
}

.chogakuensai_result table {
  border: solid 1px #000;
}

.chogakuensai_result table.tablepress .row-1 td {
  background: linear-gradient(90deg, #09bbfe 0%, #5a42ec 99%);
  font-weight: 600;
}

.chogakuensai_result table.tablepress td[colspan="3"] {
  background: transparent;
}

.chogakuensai_result table.tablepress tr.row-1 td {
  background: red !important;
  color: #fff;
}


.chogakuensai_result table.tablepress tr.odd td {
  background: #e5e5e5;
}

.chogakuensai_result table.tablepress tr.even td {
  background: #fff;
}



.chogakuensai_result table.tablepress tr td:has(strong) {
  background: red !important;
  color: #fff;
}

.line-red {
  background: #CC324F;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 50px)) rotate(-45deg);
          transform: translateX(calc(-50% - 50px)) rotate(-45deg);
}

.line-blue {
  background: #006EE6;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 48px)) rotate(-43deg);
          transform: translateX(calc(-50% - 48px)) rotate(-43deg);
}

.line-yellow {
  background: #EACD00;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 46px)) rotate(-41deg);
          transform: translateX(calc(-50% - 46px)) rotate(-41deg);
}

.line-purple {
  background: #7F56DB;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 44px)) rotate(-39deg);
          transform: translateX(calc(-50% - 44px)) rotate(-39deg);
}

.line-green {
  background: #3BDD97;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 42px)) rotate(-37deg);
          transform: translateX(calc(-50% - 42px)) rotate(-37deg);
}

.line-red1 {
  background: #CC324F;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 40px)) rotate(-35deg);
          transform: translateX(calc(-50% - 40px)) rotate(-35deg);
}

.line-yellow1 {
  background: #EACD00;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 38px)) rotate(-33deg);
          transform: translateX(calc(-50% - 38px)) rotate(-33deg);
}

.line-purple1 {
  background: #7F56DB;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 36px)) rotate(-31deg);
          transform: translateX(calc(-50% - 36px)) rotate(-31deg);
}

.line-green1 {
  background: #3BDD97;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 34px)) rotate(-29deg);
          transform: translateX(calc(-50% - 34px)) rotate(-29deg);
}

.line-red2 {
  background: #CC324F;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 32px)) rotate(-27deg);
          transform: translateX(calc(-50% - 32px)) rotate(-27deg);
}

.line-blue2 {
  background: #006EE6;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 30px)) rotate(-25deg);
          transform: translateX(calc(-50% - 30px)) rotate(-25deg);
}

.line-yellow2 {
  background: #EACD00;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 28px)) rotate(-23deg);
          transform: translateX(calc(-50% - 28px)) rotate(-23deg);
}

.line-purple2 {
  background: #7F56DB;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 26px)) rotate(-21deg);
          transform: translateX(calc(-50% - 26px)) rotate(-21deg);
}

.line-green2 {
  background: #3BDD97;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 24px)) rotate(-19deg);
          transform: translateX(calc(-50% - 24px)) rotate(-19deg);
}

.line-red3 {
  background: #CC324F;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 22px)) rotate(-17deg);
          transform: translateX(calc(-50% - 22px)) rotate(-17deg);
}

.line-blue3 {
  background: #006EE6;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 20px)) rotate(-15deg);
          transform: translateX(calc(-50% - 20px)) rotate(-15deg);
}

.line-yellow3 {
  background: #EACD00;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 18px)) rotate(-13deg);
          transform: translateX(calc(-50% - 18px)) rotate(-13deg);
}

.line-violet {
  background: #BDBDFE;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 16px)) rotate(-11deg);
          transform: translateX(calc(-50% - 16px)) rotate(-11deg);
}

.line-mos {
  background: #028A15;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 14px)) rotate(-9deg);
          transform: translateX(calc(-50% - 14px)) rotate(-9deg);
}

.line-red4 {
  background: #CC324F;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 12px)) rotate(-7deg);
          transform: translateX(calc(-50% - 12px)) rotate(-7deg);
}

.line-blue4 {
  background: #006EE6;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 10px)) rotate(-5deg);
          transform: translateX(calc(-50% - 10px)) rotate(-5deg);
}

.line-yellow4 {
  background: #EACD00;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 8px)) rotate(-3deg);
          transform: translateX(calc(-50% - 8px)) rotate(-3deg);
}

.line-purple4 {
  background: #7F56DB;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 6px)) rotate(-1deg);
          transform: translateX(calc(-50% - 6px)) rotate(-1deg);
}

.line-green4 {
  background: #3BDD97;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 4px)) rotate(1deg);
          transform: translateX(calc(-50% - 4px)) rotate(1deg);
}

.line-red5 {
  background: #CC324F;
  left: 50%;
  -webkit-transform: translateX(calc(-50% - 2px)) rotate(3deg);
          transform: translateX(calc(-50% - 2px)) rotate(3deg);
}

.line-blue5 {
  background: #006EE6;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 0px)) rotate(5deg);
          transform: translateX(calc(-50% + 0px)) rotate(5deg);
}

.line-yellow5 {
  background: #EACD00;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 2px)) rotate(7deg);
          transform: translateX(calc(-50% + 2px)) rotate(7deg);
}

.line-violet2 {
  background: #BDBDFE;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 4px)) rotate(9deg);
          transform: translateX(calc(-50% + 4px)) rotate(9deg);
}

.line-mos2 {
  background: #028A15;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 6px)) rotate(11deg);
          transform: translateX(calc(-50% + 6px)) rotate(11deg);
}

.line-red6 {
  background: #CC324F;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 8px)) rotate(13deg);
          transform: translateX(calc(-50% + 8px)) rotate(13deg);
}

.line-blue6 {
  background: #006EE6;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 10px)) rotate(15deg);
          transform: translateX(calc(-50% + 10px)) rotate(15deg);
}

.line-yellow6 {
  background: #EACD00;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 12px)) rotate(17deg);
          transform: translateX(calc(-50% + 12px)) rotate(17deg);
}

.line-violet3 {
  background: #BDBDFE;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 14px)) rotate(19deg);
          transform: translateX(calc(-50% + 14px)) rotate(19deg);
}

.line-mos3 {
  background: #028A15;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 16px)) rotate(21deg);
          transform: translateX(calc(-50% + 16px)) rotate(21deg);
}

.line-red7 {
  background: #CC324F;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 18px)) rotate(23deg);
          transform: translateX(calc(-50% + 18px)) rotate(23deg);
}

.line-blue7 {
  background: #006EE6;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 20px)) rotate(25deg);
          transform: translateX(calc(-50% + 20px)) rotate(25deg);
}

.line-yellow7 {
  background: #EACD00;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 22px)) rotate(27deg);
          transform: translateX(calc(-50% + 22px)) rotate(27deg);
}

.line-purple5 {
  background: #7F56DB;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 24px)) rotate(29deg);
          transform: translateX(calc(-50% + 24px)) rotate(29deg);
}

.line-green5 {
  background: #3BDD97;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 26px)) rotate(31deg);
          transform: translateX(calc(-50% + 26px)) rotate(31deg);
}

.line-red8 {
  background: #CC324F;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 28px)) rotate(33deg);
          transform: translateX(calc(-50% + 28px)) rotate(33deg);
}

.line-blue8 {
  background: #006EE6;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 30px)) rotate(35deg);
          transform: translateX(calc(-50% + 30px)) rotate(35deg);
}

.line-yellow8 {
  background: #EACD00;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 32px)) rotate(37deg);
          transform: translateX(calc(-50% + 32px)) rotate(37deg);
}

.line-violet4 {
  background: #BDBDFE;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 34px)) rotate(39deg);
          transform: translateX(calc(-50% + 34px)) rotate(39deg);
}

.line-mos4 {
  background: #028A15;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 36px)) rotate(41deg);
          transform: translateX(calc(-50% + 36px)) rotate(41deg);
}

.line-red9 {
  background: #CC324F;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 38px)) rotate(43deg);
          transform: translateX(calc(-50% + 38px)) rotate(43deg);
}

.line-blue9 {
  background: #006EE6;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 40px)) rotate(45deg);
          transform: translateX(calc(-50% + 40px)) rotate(45deg);
}

.line-yellow9 {
  background: #EACD00;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 42px)) rotate(47deg);
          transform: translateX(calc(-50% + 42px)) rotate(47deg);
}

.line-purple6 {
  background: #7F56DB;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 44px)) rotate(49deg);
          transform: translateX(calc(-50% + 44px)) rotate(49deg);
}

.line-green6 {
  background: #3BDD97;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 46px)) rotate(51deg);
          transform: translateX(calc(-50% + 46px)) rotate(51deg);
}

.line-red10 {
  background: #CC324F;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 48px)) rotate(53deg);
          transform: translateX(calc(-50% + 48px)) rotate(53deg);
}



.hensachi {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0 30px;
}

@media screen and (max-width: 767px) {
  .hensachi {
    flex-direction: column;
  }
}


.hensachi_left {
  width: calc(50% - 15px);
}

.hensachi_right {
  width: calc(50% - 15px);
}

@media screen and (max-width: 767px) {
  .hensachi_left {
    width: 100%;
  }

  .hensachi_left table tr {
    display: flex;
  }

  .hensachi_left table th,
  .hensachi_left table td {
    display: table-cell;
    width: calc(100% / 2);
    text-align: center;
  }

  /* .hensachi_left table th {
    width: 150px;
  } */

  .hensachi_right {
    width: 100%;
  }
}



.hensachi_right_txt {
  border: solid 2px #fff;
  border-radius: 10px;
  padding: 20px;
}


/* 1024 */

#about dl dd.final_txt span {
  font-size: 18px;
  font-weight: 400;
  margin-bottom: 8px;
  display: inline-block;
}

.spe_supporter02_img {
  width: 75%;
}

@media screen and (max-width: 767px) {
  .spe_supporter02_img {
    width: 100%;
  }
}

.online_tournament_block_txt {
  width: calc(100% / 2 - 10px);
  display: flex;
  align-items: center;
  justify-content: center;
}



/* ==================================================================
result 
================================================================== */



#about .p_result.p-about h3 {
  color: #fff;
}

.p_result {
  padding: 0 0 120px;
}

@media screen and (max-width: 767px) {
  .p_result {
    padding: 0 0 60px;
  }
}

.result_table {
  width: 100%;
  border-collapse: collapse;
  
}

.result_table th,
.result_table td {
  border: solid 1px #fff;
  padding: 10px;
}

.result_table th {
  background: #696969;
}


@media screen and (max-width: 767px) {
  .table_scroll {
     overflow-x: auto;
    width: 100%;
  }

  .result_table {
    min-width: 600px;
  }
}

.result_imgs {
  margin-bottom: 30px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.result_imgs img {
  width: 100%;
}

.result_imgs img:not(:first-child) {
  width: calc(100% / 2 - 5px);
}



.result_ttl {
  font-size: 24px;
  font-weight: 700;
  color: #fff;
  text-align: center;
  margin-bottom: 30px;
  line-height: 2;
  letter-spacing: 3px;
}

@media screen and (max-width: 767px) {
  .result_ttl {
    font-size: 16px;
    letter-spacing: 1px;
  }
}

.result_ttl span {
  display: block;
  font-size: 60px;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .result_ttl span {
    font-size: 35px;
  }
}

.result_block {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 30px;
}

.result_block img {
  width: calc(100% / 3);
}

@media screen and (max-width: 767px) {
  .result_block img {
    width: calc(100% / 2);
  }
}

.result_txt {
  font-size: 60px;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .result_txt {
    font-size: 40px;
  }
}