@charset "UTF-8";

section{
	width:100%;
	margin-bottom:100px;}

section.gray{
	background:var(--c-higray);
	color:#ffffff;}

.inner{
	width:var(--fullsize);
	margin:0 auto;}

.sec.up .inner{
	width:calc(var(--fullsize) + 100px);
	margin:0 auto;
	padding:50px;
	box-sizing:border-box;}

.sec.up .inner.all{
	padding:50px 0;}

.sec.up .inner.all.half{
	padding:30px 0;}

.sec.up .inner.all .pl{
	padding-left:50px;}

.sec.up .inner.all .pr{
	padding-right:50px;}

.inner.banner_document{
	margin-top:100px;}

@media (max-width: 1227px){
.sec.up .inner{
	width:calc(100% - 100px);
	margin:0 50px;
	padding:50px;
	box-sizing:border-box;}
}

@media (max-width: 1057px){
.inner{
	width:100%;
	padding:0 20px;
	box-sizing:border-box;}

.inner.banner_document{
	margin-top:0;}

.inner.banner_document img{
	width:100%;}
}

@media (max-width: 640px){
.sec.up .inner{
	width:calc(100% - 40px);
	margin:0 20px;
	padding:20px;
	box-sizing:border-box;}

.sec.up .inner.all{
	padding:20px 0;}

.sec.up .inner.all.half{
	padding:20px 0;}

.sec.up .inner.all .pl{
	padding-left:20px;}

.sec.up .inner.all .pr{
	padding-right:20px;}
}



.inner_side{
	width:auto;
	margin-left:calc((100% - var(--fullsize)) / 2);
	overflow: hidden;}

@media (max-width: 1057px){
.inner_side{
	margin-left:20px;}
}

/* 2nd 共通ヘッダ設定 */
.sec_header{
	height:500px;
	position:relative;
	display:flex;
	justify-content:flex-start;
	align-items:flex-end;
	background-size:cover;
	background-position:center center;
	background-repeat:none;
	margin:85px 0 0;
	padding:50px;
	box-sizing:border-box;}

.sec_header.mid{
	height:530px;}

.sec_header.sml{
	height:320px;}

@media (max-width: 640px){
.sec_header{
	height:320px;
	padding:50px 20px 20px;
	margin:70px 0 0;}

.sec_header.mid{
	height:320px;}

.sec_header.sml{
	height:320px;}
}

.sec_header.news{
	background-image:url("../img/news_back_01.jpg");
	align-items:center;}

.sec_header.about{
	background-image:url("../img/about_back_01.jpg");
	align-items:center;}

.sec_header.aboutjbf{
	background-image:url("../img/aboutjbf_back_01.jpg");
	align-items:center;}

.sec_header.documents{
	background-image:url("../img/documents_back_01.jpg");
	align-items:center;}

.sec_header.mission{
	background-image:url("../img/mission_back_01.jpg");
	margin-bottom:100px;}

.sec_header.athletes{
	background-image:url("../img/athletes_back_01.jpg");
	margin-bottom:0px;}

.sec_header.athletes.member{
	background-image:url("../img/athletes_back_02.jpg");
	margin-bottom:0px;}

@media (max-width: 640px){
.sec_header.mission{
	margin-bottom:50px;}
}

.sec_header.results{
	background-image:url("../img/results_back_01.jpg");
	align-items:center;}

.sec_header.schedule{
	background-image:url("../img/schedule_back_01.jpg");
	align-items:center;}

.sec_header.logomark{
	background-image:url("../img/logomark_back_01.jpg");
	align-items:center;}

.sec_header.donation{
	background-image:url("../img/donation_back_01.jpg");
	align-items:center;}

.sec_header.eurovision{
	background-image:url("../img/eurovision_back_01.jpg");
	align-items:center;}

.sec_header .title{
	text-align:left;
	color:#fff;}

.sec_header .title h2{
	font-family: "urw-din", sans-serif;
	line-height:1.2em;
	margin:0;}

.sec_header .title h2 span{
	font-size:0.5em;
	line-height:1.9em;}

.sec_header .title p{
	font-weight:500;}

.sec_header .copy{
	position:absolute;
	top:10px;
	right:10px;
	padding:2px 5px;
	font-size:0.6em;
	background-color:rgba(255,255,255,0.5);
	border-radius:5px;}



/* 2nd 共通基本設定 */
section.sec{
	position:relative;}

section.sec.up{
	margin-bottom:0;}

@media (max-width: 640px){
section.sec.up{
	margin-bottom:0;}
}

section.sec .inner{
	position:relative;}

section.sec .inner.w_spc{
	background-color:var(--c-white);}

section.sec .inner.g_spc{
	background-color:#f0f0f0;}

section.sec .inner.top_up{
	margin-top:-100px;}

@media (max-width: 640px){
section.sec .inner.top_up{
	margin-top:-50px;}
}

section.sec h3{
	text-align:left;
	padding-bottom:5px;
	margin-bottom:1.5em;}

@media (max-width: 640px){
section.sec h3{
	font-size:1.5em;
	line-height:1.5em;}
}

section.sec h4{
	text-align:left;
	margin-bottom:0.8em;
	font-weight:500;}

section.sec h4.box{
	padding:10px 12px 8px;
	border-radius:5px;
	font-size:1.2em;
	line-height:1.4em;}

section.sec h4.box.t_blue{
	color:var(--c-white);
	background-color:var(--c-blue);}

section.sec h4.t_max{
	font-size:2.5em;
	font-weight:700;}

@media (max-width: 640px){
section.sec h4.t_max{
	font-size:1.5em;
	font-weight:600;}
}

section.sec p{
	text-align:justify;
	line-height:2em;
	margin-bottom:20px;}

section.sec .en{
	text-align:left;
	font-size:1.05em;}

section.sec p:last-child{
	margin-bottom:0;}

section.sec .photo img{
	width:100%;}

section.sec .jbf_line{
	height:4px;
	background: linear-gradient(to right,
	#e60012 calc(100% / 3),
	#1d2088 calc(100% / 3),
	#1d2088 calc(200% / 3),
	#c09b0f calc(200% / 3));}

section.sec .btn_line{
	margin-top:30px;
	border:2px solid var(--c-blue);
	border-radius:5px;}

section.sec .btn_line.w50{
	width:50%;
	margin:30px auto 0;}

@media (max-width: 640px){
section.sec .btn_line.w50{
	width:100%;}
}

section.sec .btn_line a{
	position:relative;
	display:block;
	padding:10px 0;
	text-decoration:none;
	color:var(--c-blue);}

section.sec .btn_line a:hover{
	background-color:var(--c-blue);
	color:var(--c-white);
	opacity:1.0;}

section.sec .btn_line a::after{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 1em;
	margin: auto;
 	content: "";
 	ertical-align: middle;
	width: 0.6em;
	height: 0.6em;
	border-top: 2px solid var(--c-blue);
	border-right: 2px solid var(--c-blue);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);}

section.sec .btn_line a:hover::after{
	border-top: 2px solid var(--c-white);
	border-right: 2px solid var(--c-white);}

section.sec .btn_line.red{
	margin-top:30px;
	border:2px solid var(--c-red);
	border-radius:5px;}

section.sec .btn_line.red a{
	position:relative;
	display:block;
	padding:10px 0;
	text-decoration:none;
	color:var(--c-red);
	text-align:center;}

section.sec .btn_line.red a:hover{
	background-color:var(--c-red);
	color:var(--c-white);
	opacity:1.0;}

section.sec .btn_line.red a::after{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 1em;
	margin: auto;
 	content: "";
 	ertical-align: middle;
	width: 0.6em;
	height: 0.6em;
	border-top: 2px solid var(--c-red);
	border-right: 2px solid var(--c-red);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);}

section.sec .btn_line.red a:hover::after{
	border-top: 2px solid var(--c-white);
	border-right: 2px solid var(--c-white);}

section.sec .btn_line.white{
	border:2px solid var(--c-white);}

section.sec .btn_line.white a{
	color:var(--c-white);}

section.sec .btn_line.white a:hover{
	background-color:var(--c-white);
	color:var(--c-red);}

section.sec .btn_line.white a::after{
	border-top: 2px solid var(--c-white);
	border-right: 2px solid var(--c-white);}

section.sec .btn_line.white a:hover::after{
	border-top: 2px solid var(--c-red);
	border-right: 2px solid var(--c-red);}




section.sec .btn_fill.red{
	margin-top:30px;
	border:none;
	border-radius:5px;}

section.sec .btn_fill.red a{
	position:relative;
	display:block;
	padding:20px 0;
	text-decoration:none;
	background-color:var(--c-red);
	color:var(--c-white);
	border-radius:5px;}

section.sec .btn_fill.red a:hover{
	background-color:var(--c-red);
	color:var(--c-white);
	opacity:1.0;}

section.sec .btn_fill.red a::after{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 1em;
	margin: auto;
 	 content: "";
 	ertical-align: middle;
	width: 0.6em;
	height: 0.6em;
	border-top: 2px solid var(--c-white);
	border-right: 2px solid var(--c-white);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);}

section.sec .btn_fill.red a:hover::after{
	border-top: 2px solid var(--c-white);
	border-right: 2px solid var(--c-white);}



/* 2nd mission 背景切り替わり */
.change_back{
    height: 530px;
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    padding: 50px;
    box-sizing: border-box;
    transition: background-image 0.5s ease-in-out;
}

@media (max-width: 640px){
.change_back{
	height:230px;
	padding:20px;
	margin:0 0 50px;}
}

.change_back.tl{
    justify-content: flex-start;
    align-items: flex-start;}
.change_back.tc{
    justify-content: center;
    align-items: flex-start;}
.change_back.tr{
    justify-content: flex-end;
    align-items: flex-start;}

.change_back.mission_02 {
    background-image: url("../img/mission_back_02.jpg");}
.change_back.mission_03 { 
    background-image: url("../img/mission_back_03.jpg");} 
.change_back.mission_04 { 
    background-image: url("../img/mission_back_04.jpg");}

.change_back.mission_02.change {
    background-image: url("../img/mission_back_02_o.jpg");}
.change_back.mission_03.change { 
    background-image: url("../img/mission_back_03_o.jpg");} 
.change_back.mission_04.change { 
    background-image: url("../img/mission_back_04_o.jpg");}

.change_back::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    opacity: 0;
    transition: opacity 1.5s ease-in-out;}

.change_back.change::after {
    opacity: 1;}

.change_back p{
	font-family: "urw-din", sans-serif;
	font-size:1.5em;
	font-weight:600;}


/* mission */
section.sec.mission dl.mission_text{
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-start;
	align-items:stretch;}

section.sec.mission dl.mission_text dt{
	width:40px;
	font-size:2em;
	line-height:1em;
	text-align:left;
	font-weight:600;}

section.sec.mission dl.mission_text dd{
	width:calc(100% - 40px);
	text-align:left;
	padding:0.5em 0 20px;}

section.sec.mission dl.mission_text dd:last-child{
	padding:0.5em 0 0;}

section.sec.mission .inner .word_do{
	position:absolute;
	top:150px;
	left:calc(1000px - 453px);}

section.sec.mission .inner .word_sei{
	position:absolute;
	top:-400px;
	left:calc(1000px - 551px);}

section.sec.mission .inner .word_kon{
	position:absolute;
	top:-500px;
	left:calc(1000px - 736px);}

section.sec.mission .inner .word_ren{
	position:absolute;
	top:-600px;
	left:-111px;
	max-width:1223px !important;}

@media (max-width: 1057px){
section.sec.mission .inner .word_do{
	position:absolute;
	top:150px;
	left:calc(1000px - 453px);}

section.sec.mission .inner .word_sei{
	position:absolute;
	top:-400px;
	left:calc(1000px - 551px);}

section.sec.mission .inner .word_kon{
	position:absolute;
	top:-500px;
	left:calc(1000px - 736px);}

section.sec.mission .inner .word_ren{
	position:absolute;
	top:-600px;
	left:-111px;
	max-width:1223px !important;}

}

@media (max-width: 640px){
section.sec.mission .inner .word_do{
	position:absolute;
	top:-300px;
	right:-40px;
	left:auto;
	width:190px;}

section.sec.mission .inner .word_sei{
	position:absolute;
	top:-150px;
	right:-60px;
	left:auto;
	width:250px;}

section.sec.mission .inner .word_kon{
	position:absolute;
	top:-170px;
	right:-50px;
	left:auto;
	width:320px;}

section.sec.mission .inner .word_ren{
	position:absolute;
	top:-45vw;
	right:0;
	left:auto;
	width:100%;}

section.sec.mission.top_ren{
	padding-top:10vw !important;}

}


/* 日本バイアスロンナショナルチーム */

.athletes_year{
	background:var(--c-white);
	color:var(--c-black);
	font-weight:600;
	font-size:1.4em;
	line-height:1em;
	padding:20px 0;
	text-align:center;}

section.sec h3.athletes_title{
	font-size:1.4em;
	letter-spacing:0.1em;
	color:var(--c-white);
	font-weight:400;
	padding:5px 0 2px;
	border-top:1px solid var(--c-white);
	border-bottom:1px solid var(--c-white);}

.athletes_btn_box{
	display:flex;
	justify-content:space-between;}

.athletes_btn_box li{
	width:48%;
	display:flex;
	flex-direction:column;
	gap:20px;}

.athletes_btn_box li.staff{
	width:100%;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	flex-direction:row;
	gap:20px;}

@media (max-width: 640px){
.athletes_btn_box{
	flex-direction:column;
	gap:40px;}

.athletes_btn_box li{
	width:100%;}
}

.athletes_btn_box h4{
	font-size:1.1em;
	line-height:1em;
	letter-spacing:0.1em;
	font-weight:300 !important;
	margin:0 !important;
	color:var(--c-white);}

.athletes_btn_box li.staff .athletes_btn{
	width:48%;}

.athletes_btn_box .athletes_btn{
	border-left:5px solid var(--c-blue);}

.athletes_btn_box .athletes_btn.woman{
	border-left:5px solid var(--c-gold);}

.athletes_btn_box .athletes_btn a{
	position:relative;
	display:block;
	margin-left:10px;
	font-size:1.3em;
	line-height:1.2em;
	text-decoration:none;
	text-align:left;
	color:var(--c-white);
	letter-spacing:0.1em;
	padding:20px 20px 15px;
	background-image: linear-gradient(90deg, var(--c-red), rgba(82, 8, 13, 1));
	box-sizing:border-box;}

.athletes_btn_box .athletes_btn a span{
	font-size:0.8rem;}

.athletes_btn_box .athletes_btn a::after{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 1em;
	margin: auto;
 	content: "";
 	ertical-align: middle;
	width: 0.6em;
	height: 0.6em;
	border-top: 2px solid var(--c-white);
	border-right: 2px solid var(--c-white);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);}

.athletes_btn_box.staff .athletes_btn{
	border-left:5px solid var(--c-red);}

.athletes_btn_box.staff .athletes_btn a{
	background-image: linear-gradient(90deg, var(--c-gold), rgba(84, 68, 31, 1));}

.athletes_btn_box .athletes_btn a span{
	color:var(--c-black);}

@media (max-width: 640px){
.athletes_btn_box.staff{
	flex-direction:column;
	gap:20px;}

.athletes_btn_box li.staff .athletes_btn{
	width:100%;}
}

.athletes_info_box{
	display:flex;
	justify-content:space-between;}

.athletes_info_box li{
	width:70%;
	display:flex;
	flex-direction:column;}

.athletes_info_box li.photo{
	width:27%;
	display:flex;
	flex-direction:column;
	gap:10px;}

.athletes_info_box li.photo h4{
	display:none;}

.athletes_info_box li.photo .copy {
	text-align:right;
	color:var(--c-white);
	font-size: 0.6em;}

.athletes_info_box h4{
	font-size:1.1em;
	line-height:1em;
	letter-spacing:0.1em;
	font-weight:300 !important;
	margin:0 !important;
	padding-bottom:50px;
	color:var(--c-white);}

.athletes_info_box h5{
	text-align:left;
	font-size:2.0em;
	line-height:1em;
	letter-spacing:0.1em;
	font-weight:500 !important;
	padding-bottom:10px;
	margin-bottom:10px;
	color:var(--c-white);
	border-bottom:1px solid var(--c-red);}

.athletes_info_box .h5_sub{
	font-size:1.1em;
	line-height:1em;
	letter-spacing:0.1em;
	font-weight:300 !important;
	margin-bottom:50px;
	color:var(--c-red);}

.athletes_info_box dl{
	display:flex;
	justify-content:flex-start;
	flex-wrap:wrap;}

.athletes_info_box dt{
	width:30%;
	text-align:left;
	font-size:1.1em;
	line-height:1em;
	letter-spacing:0.1em;
	font-weight:300 !important;
	padding-bottom:10px;
	margin-bottom:20px;
	color:var(--c-white);
	border-bottom:1px solid var(--c-red);}

.athletes_info_box dd{
	width:70%;
	text-align:left;
	font-size:1.1em;
	line-height:1em;
	letter-spacing:0.1em;
	font-weight:300 !important;
	padding-bottom:10px;
	margin-bottom:20px;
	color:var(--c-white);
	border-bottom:1px solid var(--c-red);}

@media (max-width: 640px){
.athletes_info_box{
	flex-direction:column-reverse;
	gap:40px;}

.athletes_info_box li{
	width:100%;}

.athletes_info_box li.photo{
	width:100%;}

.athletes_info_box h4{
	display:none;}

.athletes_info_box li.photo h4{
	display:inline;
	font-size:1.1em;
	line-height:1em;
	letter-spacing:0.1em;
	font-weight:300 !important;
	margin:0 !important;
	padding-bottom:10px;
	color:var(--c-white);}
}












/* ハンバーガー */
.hamburger {
	position:fixed;
	top:0px;
	left:calc(100vw - 75px);
	display: block;
	height: 55px;
	margin-left: auto;
	z-index: 2000;
	width: 40px;
	border: none;
	background-color:rgba(0,0,0,0);
	cursor:pointer;}

.hamburger.-active .hamburger__line {
	background-color: transparent;}

.hamburger.-active .hamburger__line::before {
	top: 0;
	transform: rotate(45deg);
	background-color:var(--c-red);}

.hamburger.-active .hamburger__line::after {
	top: 0;
	transform: rotate(-45deg);
	background-color:var(--c-gold);}

.hamburger.-active .hamburger__text::before {
	content: 'CLOSE';
	color:var(--c-blue);}

.hamburger__line {
	display: block;
	height: 2px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%);
	width: 24px;
	background-color:var(--c-blue);
	transition: 0.4s;}

.hamburger__line:before,
.hamburger__line:after {
	content: "";
	display: block;
	height: 100%;
	position: absolute;
	width: 100%;
	background-color: #fff;
	transition: inherit;}

.hamburger__line:before {
	top: -6px;
	background-color:var(--c-red);}

.hamburger__line:after {
	top: 6px;
	background-color:var(--c-gold);}

.hamburger__text {
	position: absolute;
	bottom: -5px;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	text-align:center;}

.hamburger__text::before {
	content: "MENU";
	text-align: center;
	color:var(--c-black);
	font-size: 0.7em;
	font-weight:400;}

.header {
	width: 300px;}

.header__nav-area {
	position: fixed;
	top: 75px;
	left: 0;
	z-index: 1000; /* 他の要素よりも前面に表示 */
	width: 100vw; /* ビューポートの幅に合わせる */
	height: 100vh; /* ビューポートの高さに合わせる */
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.4s ease, visibility 0s linear 0.4s, transform 0.4s ease;
	transform: translateX(50px);
	background-color: rgba(255,255,255,0.95); /* 不透明な背景色 */
	z-index: 1900;}

.header__nav-area.-active {
	opacity: 1;
	visibility: visible;
	transition-delay: 0s; /* アクティブ時は遅延なし */
	transform: translateX(0);
	overflow-y:auto;}

@media screen and (max-width:640px){
.header__nav-area {
	top: 70px;}
}

@media screen and (max-width:500px){
.hamburger {
	left:calc(100vw - 60px);}
}

.global-navigation{
	position:relative;
	width:100%;
	background-color:rgba(0,0,0,1);
	display:flex;
	align-items:stretch;
	box-sizing:border-box;}

.global-navigation .logo{
	width:340px;
	display:flex;
	align-items:center;
	flex-shrink:0;
	box-sizing:border-box;}

.global-navigation .logo h1{
	width:100%;
	text-align:center;
	margin:0 50px;}

.global-navigation .logo h1 img{
	margin:5px 0 0 0;}

.global-navigation .gloval{
	width:100%;
	height:100px;
	padding-right:70px;
	display:flex;
	justify-content:flex-end;}

.global-navigation .gloval .gloval_main nav ul,
.global-navigation .gloval .gloval_main nav ul{
	width:100%;
	height:70px;
	display:flex;}

.global-navigation .gloval .gloval_main nav li{
	display:flex;
	align-items:flex-end;
	position:relative;}

.global-navigation .gloval .gloval_main nav li.event{
	border-left:3px solid var(--c-red);}

.global-navigation .gloval .gloval_main nav li.facility{
	border-left:3px solid var(--c--gold);}

.global-navigation .gloval .gloval_main nav li a{
	display:block;
	text-align:center;
	font-size:0.8em;
	line-height:1em;
	padding:5px 10px;
	text-decoration:none;
	color:var(--c-black);}

.global-navigation .gloval .gloval_main nav li ul{
	width:100%;
	display:flex;
	align-items:flex-end;
	margin-right:35px;}

.global-navigation .gloval .gloval_main nav li ul li{
	border-left:1px solid #c4c4c4;
	position:relative;}

.global-navigation .gloval .gloval_main nav li ul li:last-child{
	border-left:none;}

.global-navigation .gloval .gloval_main nav li ul li a{
	padding:5px 15px;}

.global-navigation .gloval .gloval_main.en nav li ul li a{
	display:flex;
	align-items:baseline;}

.global-navigation .gloval .gloval_main nav li ul li img{
	width:16px;
	height:16px;}

.global-navigation .gloval .gloval_main.en nav li ul li img.jp{
	width:15px;
	height:10px;
	margin-left:5px;}

.global-navigation .gloval .gloval_main nav li.event a{
	height:100%;
	display:flex;
	align-items:flex-end;
	padding-right:20px;
	margin-right:10px;}

.global-navigation .gloval .gloval_main.en nav li.event a img.jp{
	width:15px;
	height:10px;
	margin-left:5px;
	margin-bottom:2px;}

.global-navigation .gloval .gloval_main nav li.event.on a{
	background:#e13018;}

.global-navigation .gloval .gloval_main nav li.facility a{
	height:100%;
	display:flex;
	align-items:flex-end;
	padding-right:20px;}

.global-navigation .gloval .gloval_main.en nav li.facility a img.jp{
	width:15px;
	height:10px;
	margin-left:5px;
	margin-bottom:2px;}

.global-navigation .gloval .gloval_main nav li.facility.on a{
	background:var(--c-gold);}

.global-navigation .gloval .gloval_main nav li ul li:nth-child(3) a{
	padding-right:7px;}

.global-navigation .gloval .gloval_main nav li ul li:last-child a{
	padding-left:7px;}

.global-navigation  .gloval .gloval_main nav li ul li .popup a{
	color:#000;
	padding:0;
	margin:0;
	opacity:1;
	font-size:0.8em;
	line-height:1.4em;
	white-space:nowrap;
	text-align:center;
	display:flex;
	justify-content:center;}

.global-navigation  .gloval .gloval_main nav li ul li .popup a:hover,
.global-navigation  .gloval .gloval_main nav li ul li .popup a:focus {
	text-decoration: underline;}

.global-navigation  .gloval .gloval_main nav li ul li .popup input.box_search{
	height:20px;
	border:1px solid #000;
	border-radius:0;
	margin:0;
	vertical-align:middle;
	box-sizing:border-box;}

.global-navigation  .gloval .gloval_main nav li ul li .popup button.btn_search{
	height:20px;
	border:none;
	margin:0;
	padding:0;
	background:none;
	vertical-align:middle;
	box-sizing:border-box;
	cursor:pointer;}

.global-navigation  .gloval .gloval_main nav li ul li .popup .btn_search img{
	width:22px;
	height:20px;}

.global-navigation  .gloval .gloval_main nav li ul li a.trigger{
	padding:4px 7px 3px 15px;
	margin-right:10px;}

.global-navigation  .gloval .gloval_main nav li ul li .foreign{
	position:relative;
	width:100%;
	white-space:nowrap;
	font-size:0.8em;
	line-height:1em;
	display:flex;
	align-items:center;
	justify-content:center;}

.global-navigation  .gloval .gloval_main nav li ul li .foreign::before{
	position:absolute;
	content:url(../img/head_icon_gloval.svg);
	width:16px;
	height:16px;
	top:50%;
	transform:translateY(-50%);
	left:0;}

.global-navigation  .gloval .gloval_main nav li ul li .foreign a{
	font-size:1em;
	line-height:1em;
	padding:5px 0;
	margin:0;}

.global-navigation  .gloval .gloval_main nav li ul li .foreign a.jp{
	padding:5px 10px 5px 25px;
	margin-right:10px;
	border-right:1px solid #666;}

.global-navigation  .gloval .gloval_main nav li ul li .foreign span{
	margin:0;}


@media screen and (max-width:1100px){
.global-navigation{
	position:relative;
	width:100%;
	background-color:rgba(0,0,0,1);
	display:flex;
	align-items:stretch;
	box-sizing:border-box;}

.global-navigation .logo{
	width:290px;
	display:flex;
	align-items:center;
	flex-shrink:0;
	box-sizing:border-box;}

.global-navigation .logo h1{
	width:100%;
	text-align:center;
	margin:0  0 0 20px;}

.global-navigation .gloval{
	width:100%;
	height:100px;
	padding-right:70px;
	display:flex;
	justify-content:flex-end;}
}

@media screen and (max-width:640px){
.global-navigation{
	height:100px;}

.global-navigation .gloval{
	position:absolute;
	width:auto;
	height:auto;
	top:100px;
	left:50%;
	margin:0;
	padding:0;
	transform:translateX(-50%);
	z-index:10;}

.global-navigation .gloval .gloval_main nav ul,
.global-navigation .gloval .gloval_main nav ul{
	width:100%;
	height:auto;
	display:flex;}

.global-navigation .gloval .gloval_main nav li ul{
	align-items:center;
	margin-right:0;}
}



.gloval-navigation_box{
	width:1100px;
	margin:100px auto;
	box-sizing:border-box;}

.global-navigation_list{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	margin-bottom:50px;}

.global-navigation_list li{
	width:33%;
	padding-right:20px;
	color:var(--c-black);
	box-sizing:border-box;
	text-align:left;}
/*
.global-navigation_list li.artfes,
.global-navigation_list li.about{
	border-left:1px solid #8a8a8b;
	padding-left:20px;}
*/
.global-navigation_list li a{
	color:var(--c-black);
	text-decoration:none;}

.global-navigation_list li a.nb{
	display:block;
	text-decoration:none;;}

.global-navigation_list li .title{
	display:block;
	margin-bottom:10px;}

.global-navigation_list li.red .title{
	border-left:3px solid #e13018;
	padding-left:15px;}

.global-navigation_list li.gold .title{
	border-left:3px solid var(--c-gold);
	padding-left:15px;}

.global-navigation_list li.blue .title{
	border-left:3px solid var(--c-blue);
	padding-left:15px;}

.global-navigation_list li .title .main{
	font-family: "urw-din", sans-serif;
	font-size:1.5em;
	font-weight:600;
	line-height:1.3em;
	letter-spacing:0em;
	margin-bottom:5px;}

.global-navigation_list li .title .eng_sub{
	font-size:0.9em;
	font-weight:400;
	letter-spacing:0.1em;
	color:var(--c-black);}

.global-navigation_list li span{
	display:block;
	width:100%;
	height:1px;
	margin-bottom:20px;
	transition:0.5s;}
/*
.global-navigation_list li dt:hover span,
.global-navigation_list li dt:focus span{
	width:100%;}
*/
.global-navigation_list li.red span{
	background-color:var(--c-red);}

.global-navigation_list li.gold span{
	background-color:var(--c-gold);}

.global-navigation_list li.black span{
	background-color:var(--c-black);}

.global-navigation_list li.blue span{
	background-color:var(--c-blue);}

.global-navigation_list li ul{
	}

.global-navigation_list li ul li{
	width:100%;
	font-size:0.9em;
	margin-bottom:5px;}

.global-navigation_list li.event ul li,
.global-navigation_list li.facility ul li{}

.global-navigation_list li.event ul li::before,
.global-navigation_list li.facility ul li::before{
	content:'─';
	margin-right:10px;}


@media screen and (max-width:1100px){
.gloval-navigation_box{
	width:80%;
	margin:50px auto;
	padding:0;
	box-sizing:border-box;}

.global-navigation_list{
	display:flex;
	flex-flow: column;
	justify-content:first;
	margin-bottom:20px;}

.global-navigation_list li{
	width:100%;
	margin-bottom:20px;}

.gnavmenu dt{
	position:relative;
	display:block;
	cursor:pointer;}

.gnavmenu dd{
	display:none;}
/*
.gnavmenu dt::after{
	content:'＋';
	position:absolute;
	top:50%;
	right:15px;
	transform:translateY(-50%);
	transition:0.5s;}
*/
.gnavmenu dt.active::after{
	content:'―';}
}




.global-navigation_foot{
	width:100%;}

.global-navigation_foot .sns_box{
	width:100%;
	display:flex;
	justify-content:space-between;}

.global-navigation_foot .sub_button{
	width:100%;
	display:flex;
	justify-content:start;
	margin-bottom:20px;}

.global-navigation_foot .sub_button li a{
	font-size:0.8em;
	font-weight:500;
	line-height:1em;
	letter-spacing:0.15em;
	color:var(--c-black);
	text-decoration:none;
	padding:5px 20px;
	border:1px solid #8a8a8b;}

.global-navigation_foot .sub_button.en li a{
	padding:8px 20px 10px;
	display: flex;
	align-items:baseline;}

.global-navigation_foot .sub_button.en li a img{
	margin:0 0 0 5px;}

.global-navigation_foot .sub_menu{
	display:flex;
	flex-wrap:wrap;
	margin-bottom:20px;
	padding:0;}

.global-navigation_foot .sub_menu.en{
	display:flex;
	justify-content:flex-end;}

.global-navigation_foot .sub_menu li{
	flex-grow: 0;
	width: auto;
	font-size:0.8em;
	font-weight:500;
	line-height:1em;
	letter-spacing:0.15em;
	margin:0 10px 10px 0;
	color:var(--c-black);}

.global-navigation_foot .sub_menu li a{
	position:relative;
	color:var(--c-black);}

.global-navigation_foot .sub_menu.en li a{
	display: flex;
	align-items:baseline;}

.global-navigation_foot .sub_menu.en li a img{
	margin:0 5px;}

.global-navigation_foot .official{
	display:flex;
	align-items:stretch;
	font-size:0.8em;
	line-height:1em;
	margin-bottom:12px;}

.global-navigation_foot .official li{
	display:flex;
	align-items:center;
	margin-right:20px;}

.global-navigation_foot .official li img{
	vertical-align:middle;
	width:24px;}

.global-navigation_foot .official li.title{
	border-left:1px solid #8a8a8b;
	border-right:1px solid #8a8a8b;
	box-sizing:border-box;
	font-feature-settings:normal;
	letter-spacing:0.3em;
	padding:0 0.7em 0 1em;
	color:#000;
	font-weight:200;}

.global-navigation_foot .sns li:last-child{
	margin-right:0;}

.global-navigation_foot .copyright{
	font-size:0.8em;
	font-weight:300;
	line-height:1em;
	color:#fff;
	text-align:right;}


.wp-pagenavi{
	display:flex;
	justify-content:flex-end;
	gap:10px;}

.wp-pagenavi span{
	padding:5px;
	line-height:1em;}

.wp-pagenavi span.current{
	background:#e60012;
	border:1px solid #e60012;
	font-weight:600;
	color:#fff;}

.wp-pagenavi a{
	padding:5px;
	line-height:1em;}

.wp-pagenavi a.page{
	background:#fff;
	border:1px solid #c9caca;}



.lower #page-title {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 27.8333333333333vw;
    padding-top: 80px;
    background-image: url(/img/athletes_back_02.jpg);
    background-size: cover;
    background-position: center;
}
.lower #page-title.tops {
    background-image: url(/img/athletes_back_01.jpg);
}

@media screen and (max-width: 959px) {
    .lower #page-title {
        padding-top: 0;
    }
}