@charset "UTF-8";
/* CSS Document */

body, html {
	font-size: 6.25%;
  font-family: sans-serif;
  margin: 0;
  padding: 0;
  line-height: 1.6;
	scroll-behavior: smooth;
}
body {background: #fff url('../img/bg00.png') repeat bottom right/80px 80px;}

div.box-inner {width: 96%; max-width: 1110px; margin: 0 auto;}
p {line-height: 1.6; font-size: 15rem;}
img {max-width: 100%}
hr {display: block; border-bottom: 1px solid #ccc; margin: 60px auto}
sup {font-size: 80%; vertical-align: super}

.pc_show{display: inline}
.sp_show{display: none}
@media screen and (max-width: 1023px) {
	div.box-inner {width: 90%;}
	p {font-size: 14rem;}
	.pc_show{display: none}
	.sp_show{display: inline}
}

a {text-decoration: none; transition: 0.3s}
a:hover {opacity: 0.5}
.link_btn {display: block; text-align: center; margin: 20px auto}
.link_btn a {display: inline-block; color: #333; font-size: 15rem; background-color: #fff; border:  1px solid #666; padding: 8px 35px; border-radius: 50px; box-sizing: border-box;}
.link_btn a:hover {color: #039fe8; border-color: #039fe8}

@media screen and (max-width: 1023px) {
	.link_btn a {font-size: 13rem;}
}

/* Header NAVI */
.header {position: fixed; background: rgba(255,255,255,0.8); width: 100%; display: flex; top:0; left: 0; justify-content: space-between; 
	padding: 0 10px; box-sizing: border-box; height: 70px; z-index: 999; transition: 0.5s}
.header:hover {background: rgba(255,255,255,1);}

.header .logo a {font-size: 13rem; color: #333; display: flex; align-items: center; height: 40px; margin-top: 15px; padding: 0 10px; }
.header .logo a img {display: block; height: 80%; width: auto;}

.nav ul { list-style: none; display: flex; gap: 10px; height: 100%}
.nav ul li { display: block; height: 100%}
.nav ul li a {font-size: 13rem; color: #333; display: flex; align-items: center; height: 40px; padding: 15px 10px 5px 10px;}
.nav ul li a:hover {  background: linear-gradient(180deg, transparent 95%, #039FE8 95%); }

a.head-nav {display: none}

@media screen and (max-width: 1023px) {
    .header {height: 48px; padding: 0; }
	.header .logo a {height: 48px; padding: 0 10px; margin: 0}
	.header .logo a img {height: 50%;}
	
	.nav ul { }
	/* NAVI SP */
	a.head-nav{display: block; position: relative; height: 100%; width: 52px; background-color: rgba(0,0,0,0.8); box-sizing: border-box; }
	a.head-nav::before{ content: ''; position: absolute; top: 25%; right: 20%; display: block; width: 60%; height: 2px; background-color: #fff; transition: 0.5s;}
	a.head-nav::after{ content: ''; position: absolute; top: 42%; right: 20%; display: block; width: 30%; height: 2px; background-color: #fff;  transition: 0.5s;}
	a.head-nav strong{ position: absolute; bottom: 15%; display: block; width: 100%; text-align: center; color: #fff; font-size:10rem; font-family: 'Montserrat', sans-serif;  transition: 0.5s;}
	a.head-nav:hover{background-color: rgba(0,159,232,1); }
	a.head-nav:hover::after{width: 60%;}
	
	a.menu_on{z-index: 999; background-color: rgba(0,159,232,1);}
	a.menu_on::before{ top: 45%; right: 20%;  width: 60%; transform: rotate(45deg); }
	a.menu_on::after{ top: 45%; right: 20%; width: 60%; transform: rotate(-45deg); }
	a.menu_on strong{ opacity: 0}

	#navi { position: fixed; top: 0; right: 0; z-index: 888; height: 100vh; width: 0%; background-color: rgba(0,0,0,0.9); opacity: 0; transition: 0.5s;}
	#navi.navi_on {opacity: 1; width: 80%;}
	#navi ul { position: absolute; left:5%; top: 12vh; display: block; width: 80%; font-size: 1.6rem; white-space: nowrap}
	#navi ul li { margin: 0 ; height: auto;}
	#navi ul li a { display: block; color: #fff; box-sizing: border-box; padding: 10px 0 10px 10px; }
	#navi ul li a:hover { padding: 10px 0 10px 20px;}

	#navi ul li.navi-lang {margin-bottom: 20px}
	#navi ul li.navi-lang a {border-bottom: 1px solid #ccc; }
	#navi ul li.navi-lang a::before {content: ''; display: inline-block; width: 16px; height: 16px; background: url("../img/lang.svg"); background-size: cover; margin-right: 10px; vertical-align: middle;}
	}


@media screen and (max-width: 769px) {
	#navi.navi_on{width: 100%}
	#navi ul {width: 90%; font-size: 1.4rem}
}

/* Main */
.hero { position: relative; display: flex; justify-content: center; align-content: center; width: 100%; overflow: hidden;}
.main01 { position: relative; width: 100%; height: 100%; }
.main01 img { display: block; min-height: 100%; width: auto; height: auto;}
.main02 { position: absolute; top:0; left: 0; width: 100%; height: 100%; overflow: hidden;}
.main02 img { position: absolute; bottom: 0; left: 25vw; width: auto; max-width: 75vw; height: auto; min-height: 100%}

@media screen and (max-width: 1023px) {
	.hero { }
	.main01 { }
	.main01 img { min-height: 0}
	.main02 img { bottom: auto; top: 0; left: 60vw; right: auto; width: auto; max-width: auto; height: 100vw; min-height: auto;}
}

/* Features */
.slogan { }
.slogan_wrap { }
.slogan h1 { display: block; text-align: center; padding: 80px 0; margin: 0 auto; font-size: 24rem}
.slogan h1 img { max-width: 640px; display: block; margin: 20px auto}

@media screen and (max-width: 1023px) {
	.slogan { }
	.slogan h1 {padding: 40px 0; font-size: 15rem}
	.slogan h1 img { max-width: 94%;}
}

/* top-contents */
.top-contents { position: relative; background: #eee url("../img/top-bg03.png") no-repeat bottom center / contain; overflow: hidden; padding: 80px 0 35vw 0; box-sizing: border-box;}
.top-contents::before {content: ''; width: 26vw; height:35vw;  position: absolute; top: 1vw; left: 2vw; background:url("../img/top-bg01.png") no-repeat top left / contain; z-index: 1;}
.top-contents::after {content: ''; width: 16vw; height:34vw;  position: absolute; top: 1vw; right: 2vw; background:url("../img/top-bg02.png") no-repeat top right / contain; z-index: 1;}
.top-contents .box-inner {}
.top-contents h2 {font-family: "Montserrat", sans-serif; font-size: 36rem; margin-bottom: 10px}
.top-contents h3 {font-size: 22rem;}

@media screen and (max-width: 1023px) {
	.top-contents { padding: 80px 0 5vw 0;}
	.top-contents h2 {font-size: 28rem;}
	.top-contents h3 {font-size: 16rem;}
}

.top-news { padding-bottom: 80px; position: relative; z-index: 2}
.top-news h2 {width: 96%; max-width: 1110px; margin: 0 auto;}
.top-news .box-wrap { background-color: rgb(156 225 255 / 65%); padding: 30px 0 }
.top-news-box dl { font-size: 16rem; border-bottom: 1px solid #fff; padding: 10px 3px 10px 3px; box-sizing: border-box; display: flex; justify-content: start; flex-wrap: wrap; margin-bottom: 5px;}
.top-news-box dl dt { display: inline-block; width: 18%; font-family: "Montserrat", sans-serif;}
.top-news-box dl dd { display: inline-block; width: 82%;}
.top-news-box dl dd a { color: #111; text-decoration: underline; position: relative; box-sizing: border-box; padding-right: 20px}
.top-news-box dl dd a:hover { color: #039fe8;}
.top-news-box dl dd a::after { content: ''; width: 10px; height: 8px; background-color: #039fe8; position: absolute; right: 0; bottom: 3px; clip-path: polygon(0 0, 0% 100%, 100% 50%);}

@media screen and (max-width: 1023px) {
	.top-news-box dl { font-size: 14rem; line-height: 1.2; display: block;}
	.top-news-box dl dt { display: block; width: 100%;}
	.top-news-box dl dd { display: block; width: 100%;}
}

.top-score { padding-bottom: 80px; position: relative; z-index: 2}
.top-score table { width: 100%; border-top: solid 1px #000; border-left: solid 1px #000;}
.top-score table tr#top_score_head th.top_score_team { width: 115px;}
.top-score table th {
  border-right: solid 1px #000;
  border-bottom: solid 1px #000;
  text-align: center;
  background: #000;
  color: #fff;
  font-weight: bold;
  font-size: 10px;
  padding: 2px 0;
}
.top-score table td {
  border-right: solid 1px #000;
  border-bottom: solid 1px #000;
  background: #fff;
  text-align: center;
  padding: 10px;
  font-size: 14px;
}
@media screen and (max-width: 1023px) {
	.top-score table { }
	.top-score table tr#top_score_head th.top_score_team { width: auto;}
	.top-score table th {font-size: 9rem;}
	.top-score table td { font-size: 10rem; padding:5px 1px;}
}

.top-schedule { padding-bottom: 80px; position: relative; z-index: 2}
.top-schedule-box { background-color: rgba(255,255,255,0.9); display: flex; justify-content: center; padding-bottom: 20px}
.top-schedule-box dl { width: 49%; font-size: 16rem; padding: 20px 30px; box-sizing: border-box}
.top-schedule-box dl dd { border-bottom: 1px solid #666; padding: 20px 3px 10px 3px; box-sizing: border-box}
.top-schedule-box dl dd span { display: inline-block; margin-right: 20px; width: 25%; font-family: "Montserrat", sans-serif;}

@media screen and (max-width: 1023px) {
	.top-schedule-box { display: block; padding-bottom: 20px}
	.top-schedule-box dl { width: 100%; font-size: 14rem; padding: 0 20px;}
	.top-schedule-box dl dd { display: flex; flex-wrap: wrap; padding: 10px 3px 10px 3px;}
	.top-schedule-box dl dd span { width: 35%; margin-right: 5px}
}

/* PAGE CONTET */
.page-content {width: 100%; background-color: #eee;}
.page-main{ position: relative; height: 30vh; background-position: center; background-size: cover; margin-bottom: 40px;}
.page-main h1{ position: absolute; top: 45%; left: 10vw; font-size: 36rem; font-weight: bold; color: #fff; text-shadow: 0 10px 10px rgba(0,0,0,0.7);}
.page-content #content { padding-bottom: 60px}
.page-content h2 {font-size: 28rem; margin-bottom: 20px}
.page-content h3 {font-size: 26rem; margin:50px auto 20px auto}
.page-content h3 strong {font-size: 28rem; color: #00a0e9; font-family: "Montserrat", sans-serif;}
.page-content h4 {font-size: 20rem; margin:30px auto 10px auto}
.page-content h4 strong  {color: #00a0e9;}
.page-content h5 {font-size: 18rem; margin:30px auto 10px auto;}
.page-content h5 strong  {color: #00a0e9;}
.page-content h6 {font-size: 15rem; display: block; background: #555; color: #fff; margin:30px auto 10px auto; padding: 5px; box-sizing: border-box; }
.page-content p { margin-bottom: 20px; line-height: 1.8}
.page-content ul {font-size: 16rem; list-style: disc; padding-left: 24px; box-sizing: border-box}
.page-content ol{font-size: 16rem; list-style: decimal; padding-left: 24px; box-sizing: border-box}
.page-content li { margin-bottom: 10px }

@media screen and (max-width: 1023px) {
	.page-main h1{ font-size: 30rem;}
	.page-content h2 {font-size: 24rem;}
	.page-content h3 {font-size: 22rem;}
	.page-content h3 strong {font-size: 24rem; }
	.page-content h4 {font-size: 18rem; }
	.page-content h5 {font-size: 16rem; }
	.page-content h6 {font-size: 14rem; }
	.page-content ul {font-size: 14rem; padding-left: 20px;}
	.page-content ol{font-size: 14rem; padding-left: 20px;}
}

/* page-player */
.page-about-content {}
.page-about-content ul { display: block; list-style: none; font-size: 15rem; padding-left: 0}
.page-about-content ul li {display: block; border-bottom: 1px solid #666; padding: 5px; margin-bottom: 5px}
.page-about-content ul li strong {display: inline-block; width: 50%; max-width: 250px; margin-right: 10px}
.page-about-content ol { display: flex; list-style: none; font-size: 15rem; justify-content: space-between; flex-wrap: wrap; padding-left: 0}
.page-about-content ol li {display: block; border-bottom: 1px solid #666; padding: 5px; margin-bottom: 5px; width:22%; }
.page-about-content ol li strong {display: block; font-size: 16rem}

@media screen and (max-width: 1023px) {
	.page-about-content ol { display: block;}
	.page-about-content ol li {width:90%; }
}

/* page-player */
#player_nav {}
#player_nav ul { text-align: center; font-size: 15rem; display: flex; justify-content: center; flex-wrap: wrap;}
#player_nav ul li { display: inline-block; margin: 20px 5px;}
#player_nav ul li a {display: inline-block; color: #333; font-size: 15rem; background-color: #fff; border:  1px solid #666; padding: 8px 30px; border-radius: 50px; box-sizing: border-box;}
#player_nav ul li a:hover {color: #039fe8; border-color: #039fe8}
#player_nav ul li a.now_active { color: #fff; background-color: #039fe8; }
#player_nav ul li a.link-active {color: #fff; border-color: #039fe8; background-color: #039fe8}

#player_list {}
#player_list ul { display: flex; flex-wrap: wrap; gap: 20px; padding-left: 0; padding-bottom: 40px ; list-style: none}
#player_list ul li { width: calc((100% - 40px) / 3);  background-color: #fff; padding: 15px; margin-bottom:20px; box-sizing: border-box; box-shadow:0 10px 10px rgba(0,0,0,0.3); }
#player_list dl{ }
#player_list dl dt{ display: flex; justify-content: space-between; flex-wrap: wrap; margin-bottom: 5px;}
#player_list dl dt span{ width: calc(100% - 160px); font-size: 13rem; line-height: 1.2; display: block; padding-top: 15%}
#player_list dl dt span strong{ font-size: 17rem; display: block;}
#player_list dl dt img{ display: inline-block; max-width: 160px; width: auto; max-height: 160px; height: auto;}
#player_list dl dd{ }
#player_list dl dd p{ font-size: 12rem; display: block; border-bottom: 1px solid #bbb; padding: 2px 0; box-sizing: border-box; margin: 0}

.player_hidden {display: none;}

@media screen and (max-width: 1023px) {
	#player_nav { margin-bottom: 10px}
	#player_nav ul { padding-left: 0}
	#player_nav ul li { display: block; width: 48%; margin: 0 auto 5px auto}
	#player_nav ul li a { display: block; font-size: 13rem; padding: 8px 0}
	
	#player_list ul { justify-content: space-between; gap: 0;}
	#player_list ul li { width: 49%; padding: 10px; margin-bottom: 10px}
	#player_list dl dt{ display: block;}
	#player_list dl dt span{ width: 100%; padding-top: 5%; padding-bottom: 5% }
	#player_list dl dt img{ display: block; max-width: 160px; width: 100%; max-height: auto; height: auto; margin: 0 auto 10px auto}
	#player_list dl dd p{ font-size: 11rem; line-height: 1.2}
}


/* page-schedule */
h3#schedule_title {text-align: center}
.schedule_link {display: flex; flex-wrap: wrap; justify-content: space-between; margin-bottom: 40px}
.schedule_link a {display: inline-block; color: #333; font-size: 15rem;}
.schedule_link a:first-child::before {content: ''; width: 12px; height: 12px; clip-path: polygon(100% 0, 0 50%, 100% 100%); background-color: #ccc; display: inline-block; margin-right: 5px}
.schedule_link a:last-child::after {content: ''; width: 12px; height: 12px; clip-path: polygon(0 0, 0 100%, 100% 50%); background-color: #ccc; display: inline-block; margin-left: 5px}

#table_schedule_list { font-size: 15rem; width: 100%; border-top: solid 1px #969696; border-left: solid 1px #969696; margin-bottom: 20px }
#table_schedule_list th { border-right: solid 1px #969696; border-bottom: solid 1px #969696; background: #3271c8; padding: 5px 0; color: #fff; text-align: center; }
#table_schedule_list td { border-right: solid 1px #969696; border-bottom: solid 1px #969696; padding: 5px 0; text-align: center; background-color: #fff }
#table_schedule_list td.td_sat { background: #e1edff; }
#table_schedule_list td.td_sun { background: #ffdbd6; }
#table_schedule_list th.th_schedule_list01 { width: 84px; }
#table_schedule_list th.th_schedule_list02 { width: 97px; }
#table_schedule_list th.th_schedule_list03 { width: 202px; }
#table_schedule_list th.th_schedule_list04 { width: 117px; }
#table_schedule_list th.th_schedule_list05 { width: 124px; }

@media screen and (max-width: 1023px) {
	.schedule_link {margin-bottom: 10px}
	#table_schedule_list { font-size: 11rem; line-height: 1.2}
	
}

/* page-results */
#results_list h2.year-heading { display: block; font-size: 22rem; color: #007eb8; margin: 10px 0; }
#results_list h2.h2_title { margin-bottom: 10px;}
#results_list h2.h2_title a { display: block; font-size: 16rem; color: #fff; background-color: #039fe8; padding: 10px 40px 10px 20px; position: relative; transition: 0.3s; box-sizing: border-box;}
#results_list h2.h2_title a:hover { background-color:#8cd4f5;}
#results_list h2.h2_title a::after {content: ''; width: 20px; height: 10px; background-color: #fff; position: absolute; right: 10px; top: 20px; clip-path: polygon(100% 20%, 50% 100%, 0 20%, 0 0, 50% 80%, 100% 0);}
.results-table {margin:0 0 20px 0; width: 100%; border-top: solid 1px #999; border-left: solid 1px #999; font-size: 12rem; line-height: 1.4 }
.results-table th { border-right: solid 1px #999; border-bottom: solid 1px #999; text-align: center; background: #ddd; color: #000; font-weight: bold; padding: 2px 0; }
.results-table td { border-right: solid 1px #999; border-bottom: solid 1px #999; background: #fff; text-align: center; padding:10px 10px 5px 10px; }
.results-table td:nth-child(1) { font-size: 14rem;}
.results-table td:nth-child(1) span { display: block; font-size: 11rem; font-weight: normal}
.hiduke { width: 100px}
.kaijyou { width: 100px}

table.inner-score-table { margin: 0 0 5px 0; width: 100%; border-top: solid 1px #565656; border-left: solid 1px #565656; }
table.inner-score-table tr#top_score_head th.top_score_team { min-width: 115px; }
table.inner-score-table th { border-right: solid 1px #565656; border-bottom: solid 1px #565656; text-align: center; background: #565656; color: #fff; font-weight: bold; padding: 2px 0; min-width: 20px}
table.inner-score-table td { border-right: solid 1px #565656; border-bottom: solid 1px #565656; background: #fff; text-align: center; padding: 10px 5px; line-height: 1.1 }
.results-table td p { font-size: 13rem; text-align: left; margin-bottom: 5px; line-height: 1.4; color: #555}


.footer {background: #111; padding: 40px 0; color: #FFFFFF; position: relative;}
.footer .box-inner {display: flex; justify-content: space-between; flex-wrap: wrap}
.footer .box-inner div {}
.footer .box-inner div h6 { margin-bottom: 20px}
.footer .box-inner div h6 img { width: auto; max-width: 90%; height: auto; max-height: 36px;}
.footer .box-inner div p { margin-bottom: 10px; font-size: 14rem}
.footer .box-inner div p img { display: block; width: auto; max-width: 90%; height: auto; max-height: 28px;}
.footer .box-inner div:nth-child(2) { text-align: right;}
.footer .box-inner div:nth-child(2) a { display: inline-block; color: #fff; font-size: 12rem; margin-bottom: 10px}
.footer ol.foot-link { display: flex; justify-content: end}
.footer ol.foot-link li { display: inline-block; margin-left: 20px}
.footer .box-inner div p.copy {font-size: 11rem; font-family: "Montserrat", sans-serif;  }

@media screen and (max-width: 1023px) {
	.footer .box-inner {display: block;}
	.footer .box-inner div h6 img { display: block; max-width: 80%; margin: 0 auto;}
	.footer .box-inner div p { text-align: left; font-size: 12rem}
	.footer .box-inner div p img { display: block; max-width: 80%; margin: 0 auto 10px auto;}
	.footer .box-inner div:nth-child(2) { text-align: center;}
	.footer ol.foot-link { justify-content: center}
	.footer ol.foot-link li { margin-left: 20px; margin-right: 20px}
	.footer .box-inner div p.copy {text-align: center}
}

/*初回アクセス スプラッシュ画面*/
.splashimage {
  position: fixed;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background-color: #00a0e9;
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  animation: fadeOut 1s ease-in-out forwards;
  animation-delay: 2s;
}
@keyframes fadeOut {
  to {opacity: 0; visibility: hidden;}
}
.splashimage img {display: block; margin: 0 auto; margin-top: calc(45vh - 10vw ); width: 45vw; transform-origin: center; animation: splash 1s ease-in-out forwards;}
@keyframes splash {
  0% {opacity: 0; transform: scale(1)}
  100% {opacity: 1; transform: scale(1.3)}
}

/*scroll view*/
.fade-in{}

@media screen and (max-width: 1023px) {
}

/*SLIDE SHOW*/
div#n2-ss-2 .nextend-bullet-bar .n2-bullet.n2-active { background-color: #fff; border-radius: 0; clip-path: polygon(0 0, 100% 0, 100% 55%, 50% 100%, 0 55%);}

