﻿@charset "utf-8";

/* =======================================================================
	BASE_STYLE
======================================================================= */
html {height:100%;box-sizing: border-box;scroll-padding-top: 70px;}
*, *:before, *:after {box-sizing: inherit;}
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, 
pre, code, form, fieldset, legend, input, textarea, 
p, blockquote, th, td{margin:0;padding:0;}
a {outline: none; color:#0055AC;}
img { border:none }
h2,h3,h4,h5,h6 {font-size:100%;	font-weight:normal;}
body{
	width:100%;
	height:100%;
	font-family: "Noto Sans Japanese";
	font-size:16px;
	line-height: 1.6;
	font-weight:500;
	color:#111;
	background:#FFF;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-text-size-adjust: none;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
	word-wrap:
	break-word;
}
#wrapper{width:100%;}
@media screen and (min-width:2560px) {#wrapper{width:60%;margin:0 auto;}}
@media screen and (min-width:5120px) {#wrapper{width:35%;margin:0 auto;}}
.pcnone{display:none !important;}

/* Clearfix */
.clearfix:after {
	content: "";
	clear: both;
	display: block;
}
/* FadeIn */
.fadeIn {opacity: 0;transition: 1s;}
.fadeIn.is-show{opacity: 1;}

/* =======================================================================
	HEADER
======================================================================= */
header{
	width:100%;
	height:100px;
	line-height:1;
	background:#FFF;
	box-shadow: 0 1px 2px 0 rgba(0, 0, 0, .1);
	position: fixed;
	z-index:999;
}
header .header_inner{
	width:100%;
	min-width:1200px;
	display: flex;
	position:relative;
	padding:0 0 0 35px;
	margin:0 auto;
}
header .header_inner .header_logo{padding-top:15px;}
header .header_inner .navi{display:none;}
header .header_inner nav.pc_nav ul{
	display: flex;
	margin:40px 0 0 15px;
}
header .header_inner nav.pc_nav li{
	font-size:16px;
	font-weight: 500;
	margin:0 0 0 35px;
}
header .header_inner nav.pc_nav li a{
	display: block;
	color:#111;
	text-decoration: none;
}
header .header_inner nav.pc_nav li a:hover{text-decoration: underline;}
header .header_inner .header_link{
	font-size:0;
	position:absolute;
	top:0;
	right:0;
}
.header_link a.header_btn{
	width:240px;
	height:100px;
	font-size:20px;
	font-weight:600;
	text-decoration: none;
	color:#FFF;
	background:#70C100;
	display:inline-block;
	text-align:center;
	padding:27px 0 0 0;
}
.header_link a.header_btn span{
	font-family:font-family: "Helvetica Neue";
	font-size:16px;
	font-weight:600;
	display:block;
	margin-top:10px;
}
.header_link span.cs{
	width:240px;
	height:100px;
	font-size:19px;
	font-weight:600;
	text-decoration: none;
	color:#FFF;
	background:#70C100;
	display:block;
	text-align:center;
	padding:39px 0 0 0;
}

.header_link a.header_btn:hover{opacity:0.8;}

@media screen and (min-width:768px) and ( max-width:1024px) {
	header .header_inner{min-width:100% !important;}
	header .header_inner nav.pc_nav{display:none;}
	header .header_inner .header_link{display:none;}
	/* Drawer */
	.el_humburger {
		cursor: pointer;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		pointer-events: auto;
		caret-color: transparent;
		position: fixed;
		top: 32px;
		right: 40px;
		padding:0;
		z-index:100;
	}
	.el_humburger_wrapper {
		width: 40px;
		display: inline-block;
	}
	.el_humburger_text.el_humburger_text__close {display: none; }
	.js_humburgerOpen .el_humburger_text.el_humburger_text__menu {display: none; }
	.js_humburgerOpen .el_humburger_text.el_humburger_text__close {display: block;}
	.el_humburger span.el_humburger_bar {
		width: 100%;
		height: 3px;
		background: #333;
		display: block;
		-webkit-transition: all .2s ease-in-out;
		-o-transition: all .2s ease-in-out;
		transition: all .2s ease-in-out;
		margin: 0 auto 9px;
	}
	body.js_humburgerOpen span.el_humburger_bar{
		background: #FFF !important;
		margin: 0 auto 8px;
	}
	.js_humburgerOpen .el_humburger span.el_humburger_bar.top {
		-webkit-transform: translateY(9px) rotate(-45deg);
		-ms-transform: translateY(9px) rotate(-45deg);
		transform: translateY(9px) rotate(-45deg);
	}
	.js_humburgerOpen .el_humburger span.el_humburger_bar.middle {opacity: 0;}
	.js_humburgerOpen .el_humburger span.el_humburger_bar.bottom {
		-webkit-transform: translateY(-12px) rotate(45deg);
		-ms-transform: translateY(-12px) rotate(45deg);
		transform: translateY(-12px) rotate(45deg);
	}
	.el_humburgerButton.el_humburgerButton__close {
		background: #FFF;
	}
	.el_humburgerButton__close span.el_humburger_bar {
		width: 35px;
		height: 4px;
		display: block;
		margin: 0 auto;
	}
	.el_humburgerButton__close span.el_humburger_bar.top {
		-webkit-transform: translateY(5px) rotate(-45deg);
		-ms-transform: translateY(5px) rotate(-45deg);
		transform: translateY(5px) rotate(-45deg);
	}
	.el_humburgerButton__close span.el_humburger_bar.bottom {
		-webkit-transform: translateY(-6px) rotate(45deg);
		-ms-transform: translateY(-6px) rotate(45deg);
		transform: translateY(-6px) rotate(45deg);
	}
	.navi {
		display:block !important;
		width: 0;
		height: 100%;
		overflow: auto;
		will-change: transform;
		background-color: rgba(15, 15, 15, 0.95);
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		-webkit-transition: all 200ms ease-out;
		-o-transition: all 200ms ease-out;
		transition: all 200ms ease-out;
		transform:translateZ(0) translateX(0%);
		position: fixed;
		top:0;
		right:0;
		padding-top: 10%;
		z-index: 99;
	}
	.js_humburgerOpen .navi {width: 500px;}
	.navi_item {
		font-size: 18px;
		font-weight:500;
		white-space: nowrap;
		margin:0 0 60px 80px;
		padding-left:30px;
		position:relative;
	}
	.navi_item a{color:#FFF;text-decoration: none;}
	.navi_item a:hover{opacity:0.8;}
	.navi_item:before {
	    content: '';
	    position: absolute;
	    top: 50%;
	    display: inline-block;
	    width: 15px;
	    height: 3px;
	    background-color: #FFF;
	    left: 0;
	}
	.navi_item.op_innerLink {cursor: pointer;}
	.navi_item_btn{
		margin:70px 0 0 50px;
		padding-left:30px;
		position:relative;
	}
	.navi_item_btn a{
		width:250px;
		font-size:18px;
		line-height:1;
		font-weight:600;
		text-decoration: none;
		color:#FFF;
		background:#70C100;
		display:inline-block;
		text-align:center;
		border-radius: 8px;
		padding:23px 0 24px 0;
	}
	.navi_item_btn a:hover{opacity:0.8;}
}
@media screen and (min-width:2560px) {header{width:60%;}}
@media screen and (min-width:5120px) {header{width:35%;}}

/* =======================================================================
	MAIN
======================================================================= */
#wrapper main{
	width:100%;
	padding-top:100px;
}
h2{
	max-width:1100px;
	font-size:44px;
	font-weight:600;
	line-height:1;
	color:#E62589;
    display: flex;
    position:relative;
    align-items: center;
	text-align:center;
	padding:0;
	margin:0 auto 80px auto;
}
h2 span{
	font-size:18px;
	color:#111;
    position: absolute;
	top: 60px;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}
h2::before,h2::after{
	content:"";
	flex-grow: 1;
	border-bottom: 1px solid #AC9DA3;
}
h2::before{
	margin-right: 35px;
}
h2::after{
	margin-left: 35px;
}

/* MV
------------------------------------------------------------------------*/
section.mv{
	width:100%;
	height:700px;
	background:url(../images/mv_bg_pc.jpg) center center repeat;
	background-size:auto 102%;
	position:relative;
}
section.mv .mv_pc{
	width:100%;
	height:190px;
	text-align:center;
	background: rgba(255,255,255,0.94);
	position:absolute;
	top: 50%;
	transform: translateY(-50%);
}
section.mv .mv_pc img{margin-top:-75px;}
section.mv .mv_sp{display:none;}

@media screen and (min-width:768px) and ( max-width:1024px) {
	section.mv{
		width:100%;
		height:500px;
		background-size:100% auto !important;
	}
	section.mv .mv_pc img{width:92%;margin:-45px auto 0 auto;}
}

/* OUTLINE
------------------------------------------------------------------------*/
section#outline{
	width:100%;
	padding:80px 0;
}
section#outline .outline_inner{
	width:980px;
	margin:0 auto;
}
/* スコア速報はこちら */
section#outline a.leaderboard{
	width:450px;
	font-size:25px;
	line-height:1;
	font-weight:600;
	text-decoration: none;
	color:#FFF;
	background:#E62589;
	display:block;
	text-align:center;
	border-radius: 8px;
	padding:27px 0 28px 0;
	margin:0 auto 70px auto;
}
section#outline a.leaderboard:hover{opacity:0.75;}

section#outline .outline_inner h3{
	font-size:22px;
	font-weight:600;
	line-height:1;
	color:#E62589;
	border-left:#E62589 6px solid;
	padding:5px 0 6px 12px;
	margin:40px 0 20px 0;
}
section#outline dl{
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	border-bottom: solid 1px #BBB;
	margin:0 auto;
}
section#outline dl dt{
	float:left;
	width:22%;
	font-size:17px;
	font-weight:600;
	height:auto;
	border-top: solid 1px #BBB;
	padding:2.7% 2.5% 2.5% 2.5%;
	margin:0;
}
section#outline dl dd{
	float:left;
	width:78%;
	height:auto;
	border-top: solid 1px #BBB;
	padding:2.7% 2.5% 2.5% 2.5%;
	margin:0;
}
section#outline dl dd strong{
	font-size:17px;
	display:block;
	margin:5px 0;
}
section#outline dl dd ol{margin-left:25px;}
section#outline dl dd ol li{margin-bottom:20px;}
section#outline dl dd a.btnlink{
	width:270px;
	font-size:18px;
	line-height:1;
	font-weight:600;
	text-decoration: none;
	color:#FFF;
	background:#70C100;
	display:inline-block;
	text-align:center;
	border-radius: 8px;
	padding:23px 0 24px 0;
	margin:10px 0;
}
section#outline dl dd a.btnlink:hover{opacity:0.75;}
section#outline table{
	width:100%;
	line-height:1.7;
	border-collapse:collapse;
	border-spacing:1px;
	border: solid 1px #BBB;
	margin:25px 0 10px 0;
}
section#outline table th{
	font-size:15px;
	font-weight:600 !important;
	font-weight:normal;
    background:#f5f5f5;
	border: solid 1px #CCC;
	text-align:center;
	padding:1.5% 2.5%;
}
section#outline table td{
	border: solid 1px #CCC;
	text-align:right;
	padding:1.5% 2.5%;
}
section#outline .notes{
	font-size:15px;
	font-weight:500;
}
div.entry_close{
	font-size:16px;
	line-height:1;
	font-weight:600;
	text-decoration: none;
	color:#FFF;
	background:#999;
	display:inline-block;
	text-align:center;
	border-radius: 8px;
	padding:23px 20px 24px 20px;
	margin:10px 0 10px 10px;
}
@media screen and (min-width:768px) and ( max-width:1024px) {
	section#outline .outline_inner{width:90%;}
}

/* PLAYERS
------------------------------------------------------------------------*/
section#players{
	width:100%;
	background:#FAF5F9;
	padding:75px 0 60px 0;
}
section#players .players_inner{
	width:1100px;
	margin:0 auto;
}
.players_inner .players_area{
	display: flex;
	flex-wrap:wrap;
	gap:0 4%;
	padding:0;
	margin:80px auto 0 auto;
}
.players_area .players_bx{
	width:48%;
	margin:25px 0;
}
.players_bx h3{
	font-size:18px;
	line-height:1.4;
	color:#FFF;
	font-weight:600;
	background:#222;
	border-left:#E62589 6px solid;
	padding:10px 0 10px 15px;
}
.players_bx ul{
	list-style-type: none;
	margin-top:10px;
}
.players_bx ul li{
	font-size:17px;
	display:inline-block;
	margin:15px 20px 0 0;
}
.players_inner .players_area span{
	color:#222;
	font-size:30px;
	font-weight:700;
	display:block;
	line-height:1;
	margin:80px auto;
}

@media screen and (min-width:768px) and ( max-width:1024px) {
	section#players .players_inner {width:90%;}
}

/* LIVE･ARCHIVE
------------------------------------------------------------------------*/
section#live_archive{
	width:100%;
	text-align:center;
	padding:75px 0 90px 0;
}
section#live_archive h2{
	margin-bottom:100px;
}
section#live_archive h3{
	font-size:30px;
	font-weight:700;
	margin:150px 0 50px 0;
}
section#live_archive .video_area{
	width:1100px;
	margin:0 auto;
}
@media screen and (min-width:768px) and ( max-width:1024px) {
	section#live_archive .video_area{width:90%;}
}

/* LEADERBOARD
------------------------------------------------------------------------*/
section#leaderboard{
	width:100%;
	background:#FAF5F9;
	text-align:center;
	padding:75px 0 80px 0;
}
section#leaderboard h2{
	margin-bottom:100px;
}
section#leaderboard iframe{
	border:1px;
}
@media screen and (min-width:768px) and ( max-width:1024px) {
	section#leaderboard iframe{
		width:90%;
		height:550px;
		margin:0 auto;
	}
}

/* NHG2025
------------------------------------------------------------------------*/
section.nhg2025{padding:60px 0;}
section.nhg2025 a{
	width:380px;
	font-size:18px;
	line-height:1.6;
	font-weight:600;
	text-decoration: none;
	color:#FFF;
	background:#E12B8A;
	display:block;
	text-align:center;
	border-radius: 8px;
	padding:16px 0 15px 0;
	margin:0 auto;
}
section.nhg2025 a:hover{opacity:0.8;}

/* =======================================================================
	FOOTER
======================================================================= */
footer{
	width:100%;
	font-size:13px;
	text-align:center;
	border-top:#AC9DA3 1px solid;
	padding:25px 0;
}