@charset "utf-8";  
/*------------------------------------------------------------ 
	デフォルトスタイル	全ページ共通css
------------------------------------------------------------*/  

@import url('https://fonts.googleapis.com/css?family=Heebo:400,500,700');

/**** フォントサイズ　*************

基本を12pxに、サイズは％指定。

====偶数====　　　====奇数====
■10px = 84%      ■11px = 92%
■12px = 100%     ■13px = 109%
■14px = 117%     ■15px = 125%
■16px = 134%     ■17px = 142%
■18px = 150%     ■19px = 159%
■20px = 167%     ■21px = 175%
■22px = 184%     ■23px = 192%
■24px = 200%     ■25px = 209%
■26px = 217%     ■27px = 226%

**********************************/

html,
body { margin: 0; padding: 0;}
body {
	font-size: 76%;
	background: #fff;
	-webkit-text-size-adjust: 100%;
}

html { font-size: 100%;}

div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td ,figure, figcaption,picture{
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-family: 'Noto Sans JP', "游ゴシック", "Yu Gothic", YuGothic, 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, 'メイリオ', Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	font-size: 100%;
	line-height: 1.2;
	font-weight: 400;
	vertical-align: baseline;
	background: transparent;
}  

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section,main,picture {
    display: block;
}

blockquote,
q { quotes: none;}

a {
	color:inherit;
	text-decoration: none;
	outline: none;
}

ins {
	color: #000;
	text-decoration: none;
}

mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}

del { text-decoration: line-through;}
abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0;
	padding: 0;
}

label{ cursor:pointer;}

input,
select,
textarea {
	font-size: 100%;
	vertical-align: middle;
	font-family: 'Noto Sans JP', "游ゴシック", "Yu Gothic", YuGothic, 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, 'メイリオ', Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	font-weight: 400;
}

input[type=text],
input[type=tel],
input[type=password],
textarea{ -webkit-appearance:none;}

input[type=checkbox],
input[type=radio]{
	position:relative;
	top:-1px;
}

ul,ol { list-style-type: none;}
img { vertical-align: middle;}

.img-responsive{
	width:100%;
	height:auto;
}

.opacity { transition:opacity 0.2s ease-out;}
.opacity:hover { opacity: .7;}

.clear { clear: both;}
.clearfix { width: 100%;}
.clearfix:after {
	content: " ";
	display: block;
	clear: both;
	visibility:hidden;
	height:0.1px;
	font-size:0.1em;
	line-height:0;
}

.fl { float: left;}
.fr { float: right;}

.txtl { text-align: left;}
.txtr { text-align: right;}
.txtc { text-align: center;}

strong,
strong *,
.fwb { font-weight: bold;}

.clrr { color: #FF0000;}
.clrb { color: #333;}
.clrw { color: #fff;}

.il { display: inline;}
.bl { display: block;}
.no { display: none;}

.li2 { line-height: 2;}

/* margin */
.mt05 { margin-top: 5px;}
.mt10 { margin-top: 10px;}
.mt20 { margin-top: 20px;}
.mt30 { margin-top: 30px;}

.mr10 { margin-right: 10px;}
.mr20 { margin-right: 20px;}
.mr30 { margin-right: 30px;}

.mb10 { margin-bottom: 10px;}
.mb20 { margin-bottom: 20px;}
.mb30 { margin-bottom: 30px;}

.ml10 { margin-left: 10px;}
.ml20 { margin-left: 20px;}
.ml30 { margin-left: 30px;}

/* padding */
.pt10 { padding-top: 10px;}
.pt20 { padding-top: 20px;}
.pt30 { padding-top: 30px;}

.pr10 { padding-right: 10px;}
.pr20 { padding-right: 20px;}
.pr30 { padding-right: 30px;}

.pb10 { padding-bottom: 10px;}
.pb20 { padding-bottom: 20px;}
.pb30 { padding-bottom: 30px;}

.pl10 { padding-left: 10px;}
.pl20 { padding-left: 20px;}
.pl30 { padding-left: 30px;}

/* font-size */
.font10 { font-size: 84%;}
.font11 { font-size: 92%;}
.font12 { font-size: 100%;}
.font13 { font-size: 109%;}
.font14 { font-size: 117%;}
.font15 { font-size: 125%;}
.font16 { font-size: 134%;}
.font17 { font-size: 142%;}
.font18 { font-size: 150%;}
.font19 { font-size: 159%;}
.font20 { font-size: 167%;}
.font21 { font-size: 175%;}
.font22 { font-size: 184%;}
.font23 { font-size: 192%;}
.font24 { font-size: 200%;}
.font25 { font-size: 209%;}
.font26 { font-size: 217%;}
.font27 { font-size: 226%;}

/* editor */
#editor{
	font-size:125%;
	line-height:1.8;
}

#editor div{ overflow:hidden;}

#editor img{
	max-width:100%;
	height:auto!important;
}

#editor *{ line-height:1.8;}

#editor table,
#editor caption,
#editor tbody,
#editor tfoot,
#editor thead,
#editor tr,
#editor th,
#editor td {
	border: 1px solid gray;
    border-spacing: 2px;
	border-collapse: separate;
}

#editor strong * { font-weight: bold;}
#editor a:hover { text-decoration: underline;}

.hover{ overflow:hidden;}
.hover img{ transition:all 0.3s ease-out;}
.hover:hover img{ transform:scale(1.1);}

.c-image{
    width:100%;
    height:100%;
    object-fit: cover;
}

/*------------------------------------------------------------ 
    スタイル 
------------------------------------------------------------*/

.inner {
	width:auto;
	max-width: 1080px;
	margin: 0 auto;
	padding-right:15px;
	padding-left:15px;
}

.inner.small{ max-width:960px;}

.list{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:justify;
	   -ms-flex-pack:justify;
	justify-content:space-between;
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.list-end{
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.list-center{
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.list-left{
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: start;
}

.list-align{
  -webkit-box-align: center;
     -ms-flex-align: center;
        align-items: center;
}

.flex-start{
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: start;
}


/*------------------------------------------------------------ 
    ヘッダー 
------------------------------------------------------------*/

#wrap{
	width:100%;
	overflow: hidden;
}

#hdLogo{
	width:375px;
	padding:28px 0 28px 15px;
}

#hdMenu{
	max-width:calc(100% - 320px);
	padding:0 15px 20px 0;
	box-sizing: border-box;
}

#hdMenu__inner{ flex:1;}

.hdFollow dt{
	color:#091E3C;
	font-weight:500;
	font-size:117%;
	font-family: 'Heebo', sans-serif;
}

.hdFollow dd{ height:20px;}

.hdFollow li{
	width:23px;
	height:18px;
	margin-left:20px;
}

#langBtn{
	width:90px;
	height:36px;
	margin-left:15px;
}

#langBtn a{
	display:block;
	width:100%;
	height:100%;
	text-align:center;
	line-height:36px;
	font-family: 'Heebo', sans-serif;
	color:#fff;
	font-size:117%;
	background:#091E3C
}

#hdSubNavi{ margin-top:7px;}

#hdSubNavi li li{ margin-top: 7px;}
#hdSubNavi > li + li{ margin-left:12px;}
#hdSubNavi li li:not(:last-child){ margin-right:12px;}

.subNaviItem a{
	color:#091E3C;
	font-size:109%;
	line-height:28px;
}

.subNaviItem .navi{
	display:block;
	line-height:26px;
	padding:0 9px;
	border:1px solid #B5B5B6;
	border-radius:3px;
	transition:all 0.2s ease-out;
}

.subNaviItem .navi:hover{ background:#F7F8F8;}

.hdLink{
	height:50px;
	padding:14px 0 14px 10px;
}

.gNavi{
	width:100%;
	text-align:center;
	background:#F7F8F8;
	border-top:1px solid #DCDDDD;
}

.gNavi a{
	display:block;
	padding:20px 25px;
	color:#091E3C;
	font-size:134%;
	letter-spacing:0.4px;
	font-weight:500;
	transition:all 0.2s ease-out;
}

.gNavi .selected,
.gNavi a:hover{
	color:#fff;
	background:#091E3C;
}

.gNavi a span{
	color:inherit;
	font-weight:inherit;
}

.gNavi__submenu{
	display: none;
	width:auto;
	padding: 0 20px 10px;
}

#spNavi .gNavi .gNavi__submenu a{
	width:100%;
	padding:10px 0;
	font-size: 125%;
	line-height: 1;
}


/*------------------------------------------------------------ 
    コンテンツ 
------------------------------------------------------------*/ 

#pankuzu{
	font-size:109%;
	padding-top:12px;
	padding-bottom:12px;
	color:#091E3C;
	letter-spacing:-0.4em;
	white-space: nowrap;
	overflow-x:auto;
	-webkit-overflow-scrolling: touch;
}

#pankuzu li{
	display:inline-block;
	vertical-align:middle;
	line-height:18px;
	letter-spacing:normal;
	padding-right:18px;}

#pankuzu li:not(:last-child){
	margin-right:18px;
	border-right:1px solid #B5B5B6;
}

#pankuzu a{
	line-height:inherit;
	color:inherit;
}

.button{
	width:auto;
	max-width:320px;
	height:46px;
}

.button a{
	display:block;
	width:100%;
	text-align:center;
	line-height:46px;
	font-size:134%;
	color:#fff;
	font-weight:500;
	background:#384961;
	position:relative;
	overflow:hidden;
	transition:all 0.2s ease-out;
}

.button a:hover{ background:#091E3C;}

.button a:after{
	display:block;
	content:"";
	width:0;
	height:0;
	border-width:0 0 46px 330px;
	border-style:solid;
	border-color:transparent transparent #091E3C transparent;
	margin-top:-46px;
}

#detailContents{
	width:100%;
	border-top:1px solid #DCDDDD;
	padding-top:45px;
}

#detailHd{
	width:100%;
	color:#091E3C;
	margin-bottom:20px;
	text-align:center;
}

#detailHd-en{ /* 共通化のときにスポンサーと併せてもいいかも **/
	font-family: 'Heebo', sans-serif;
	font-size:36px;
	letter-spacing:1px;
	font-weight:500;
}

#detailHd-jp{
	font-size: 134%;
    color: #091E3C;
    font-weight: 300;
	margin-top:5px;
}

.photoItem{ width:20%;}

/*------------------------------------------------------------ 
    フォーム 
------------------------------------------------------------*/ 

#contactForm{
	width:auto;
	max-width:960px;
	padding:80px 80px 60px;
	margin:0 auto;
	box-sizing:border-box; 
	background:#F7F8F8;
}

#contactTbl{
	width:100%;
	font-size:117%;
}

#contactTbl th{
	width:165px;
	text-align:left;
	vertical-align:top;
	line-height:40px;
	padding-bottom:20px;
	position:relative;
}

#contactTbl th:before{
	display:block;
	width:40px;
	line-height:20px;
	text-align:center;
	border-radius:3px;
	position:absolute;
	right:0;
	top:10px;
	font-weight:300;
	color:#fff;
	font-size:12px;
}

#contactTbl .required:before{
	content:"必須";
	background:#F8832D;
}

#contactTbl .free:before{
	content:"任意";
	background:#B5B5B6;
}

#contactTbl td{
	vertical-align:middle;
	padding:0 0 20px 25px;
	box-sizing:border-box;
}

#contactTbl td > .list{
	width:100%;
	max-width:610px;
}

.formBox.col2{
	width:calc(50% - 15px);
	box-sizing:border-box;
}

.formBox.col3{
	width:calc(33.333333% - 10px);
	box-sizing:border-box;
}

.formBox label{
	width:40px;
	padding-right:5px;
	box-sizing:border-box;
	line-height:40px;
}

.formBox input{ width:calc(100% - 40px);}

.formBox.col3 label{
	width:24px;
	text-align:right;
	padding-right:0;
}

.formBox.col3 input{ width:calc(100% - 24px);}

.form-input{
	width:100%;
	height:40px;
	padding:0 15px;
	background:#fff;
	border:1px solid #DCDDDD;
	border-radius:3px;
	box-sizing:border-box;
}

.form-input.small{ width:100px;}

.form-txtarea{
	width:100%;
	height:120px;
	padding:10px 15px;
	background:#fff;
	border:1px solid #DCDDDD;
	border-radius:3px;
	box-sizing:border-box;
	overflow:auto;
	resize:none;
}

.form-radio{
	display:inline-block;
	vertical-align:middle;
	margin-right:20px;
	height:40px;
}

.form-radio input{ display:none;}

.form-radio span{
	display:block;
	line-height:40px;
	padding-left:30px;
	position:relative;
}

.form-radio span:before{
	display:block;
	content:"";
	width:18px;
	height:18px;
	border:1px solid #DCDDDD;
	border-radius:50%;
	box-sizing:border-box;
	position:absolute;
	left:0;
	top:52%;
	background:#fff;
	transform:translateY(-50%);
}

.form-radio input:checked + span:after{
	display:block;
	content:"";
	width:8px;
	height:8px;
	background:#091E3C;
	border-radius:50%;
	position:absolute;
	top:52%;
	left:5px;
	transform:translateY(-50%);
}

#submit{
	width:100%;
	max-width:725px;
	height:55px;
	margin:40px auto 0;
	padding: 0 15px;
	color:#9FA0A0;
	text-align:center;
	line-height:55px;
	font-size:175%;
	font-weight:500;
	box-sizing:border-box;
}

#submit a{
	display:block;
	width:100%;
	text-align:center;
	line-height:55px;
	color:#fff;
	font-weight:500;
	background:#384961;
	position:relative;
	overflow:hidden;
	transition:all 0.2s ease-out;
}

#submit a:hover{ background:#091E3C;}

#submit a:after{
	display:block;
	content:"";
	width:0;
	height:0;
	border-width:0 0 60px 700px;
	border-style:solid;
	border-color:transparent transparent #091E3C transparent;
	margin-top:-60px;
}

.error{
	margin-top:10px;
	text-align:left;
}

.error span{
	display:inline-block;
	padding:5px;
	color:#fff;
	font-size:12px;
	background:#F8832D;
	border-radius:3px;
}

.grecaptcha-badge{ bottom:150px!important;}

/* loading */

#overlay{
	display:none;
	width:100%;
	height:100%;
	background:rgba(255,255,255,.7);
	position:fixed;
	top:0;
	left:0;
	z-index:1000;
}

#loader{
	width:50%;
	height:50%;
	border: 6px solid rgba(100, 100, 100, 0.6);
	border-top: 6px solid rgba(255, 255, 255, 1);
	border-radius:50%;
	height: 50px;
	width: 50px;
	-webkit-animation: fancybox-rotate .8s infinite linear;
	animation: fancybox-rotate .8s infinite linear;
	background: transparent;
	position: absolute;
	top: 45%;
	left: 50%;
	margin-top: -30px;
	margin-left: -30px;
	z-index: 99999;
}

@-webkit-keyframes fancybox-rotate {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg); } }

@keyframes fancybox-rotate {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg); } }


/*------------------------------------------------------------ 
    ファイル関連 
------------------------------------------------------------*/ 

.fileList{
	width:auto;
	padding:30px;
	background:#F7F8F8;
}

.fileList li:not(:last-child){ margin-bottom:13px;}

.fileList a{
	display:inline-block;
	color:#091E3C;
	font-size:134%;
	padding-left:20px;
	position:relative;
	text-decoration:underline;
}

.fileList a:hover{ text-decoration:none;}

.fileList a:before{
	display: block;
    content: "";
    width: 6px;
    height: 6px;
    border-top: solid 2px #091E3C;
    border-right: solid 2px #091E3C;
    position: absolute;
    top: 50%;
    left: 0;
    transform: rotate(45deg) translateY(-50%);

}

/*------------------------------------------------------------ 
    ナビゲーション 
------------------------------------------------------------*/ 

#pagination{
	width:100%;
	margin-top:25px;
	text-align:center;
	overflow:hidden;
}

#pagination li{
	display:inline-block;
	vertical-align:top;
	width:40px;
	height:40px;
	text-align:center;
	line-height:40px;
	color:#3E3A39;
	font-size:134%;
	margin:0 5px 10px; 
}

#pagination a{
	display:block;
	width:100%;
	height:100%;
	line-height:38px;
	color:#3E3A39;
	box-sizing:border-box;
	border:1px solid #DCDDDD;
	background:#fff;
	transition:all 0.2s ease-out;
}

#pagination .selected,
#pagination a:hover{ background:#DCDDDD;}

/*------------------------------------------------------------ 
    国際大会・市民大会 
------------------------------------------------------------*/ 

#tournamentHd{
	width:100%;
	padding-top:35.71428571428571%;
	background:no-repeat 50% 50%;
	background-size:cover;
	height:0;
	position:relative;
}

#tournamentHd:before{
	display:block;
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	bottom:0;
	z-index:2;
	background: -moz-linear-gradient(top, rgba(255,255,255,0) 50%, rgba(9,30,60,.5) 100%);
	background: -webkit-linear-gradient(top, rgba(255,255,255,0) 50%, rgba(9,30,60,.5) 100%);
	background: linear-gradient(to bottom, rgba(255,255,255,0) 50%, rgba(9,30,60,.5) 100%);
}

#tournamentHdInner{
	width:100%;
	position:absolute;
	left:0;
	bottom:11.66666666666667%;
	z-index:10;
}

#tournamentHdInner .inner{
	max-width:1680px;
	padding:0;
}

#tournamentHdInner .inner .list{
	width:64.28571428571429%;
	margin:0 auto;
}

#tournamentHd-txt{
	font-family: 'Heebo', sans-serif;
	color:inherit;
	font-size:100px;
	font-weight:bold;
	line-height:1;
	text-shadow:1px 1px 1px rgba(0,0,0,.3);
}

#tournamentHd-year{
	font-family: 'Heebo', sans-serif;
	color:inherit;
	font-size:235px;
	font-weight:bold;
	line-height:1;
	text-shadow:1px 1px 1px rgba(0,0,0,.3);
}

#tournamentHd-ttl{
	width:45%;
	text-align:center;
	color:#091E3C;
	font-size:200%;
	padding:10px 0;
	font-weight:bold;
	margin-top:10px;
}

#tournamentHd-date{
	font-family: 'Heebo', sans-serif;
	color:inherit;
	font-size:44px;
	line-height:1;
	font-weight:bold;
	margin-top:10px;
	text-shadow:1px 1px 1px rgba(0,0,0,.3);
}

#tournamentHd-date span{
	font-family: 'Heebo', sans-serif;
	color:inherit;
	font-weight:inherit;
	font-size:62px;
	line-height:52px;
}



/*
@media screen and (max-width: 1125px){
#tournamentHd-txt{ font-size:66px;}
#tournamentHd-year{ font-size:156px;}
#tournamentHd-ttl{ font-size:134%;}
#tournamentHd-date{ font-size:30px;}
#tournamentHd-date span{ font-size:42px;}
}
*/

#tournamentMenu{
	width:100%;
	background:#091E3C;
}

.tournamentMenuItem{ flex:1;}

.tournamentMenuItem a{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	  -webkit-box-align: center;
     -ms-flex-align: center;
        align-items: center;
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	width:100%;
	height:60px;
	text-align:center;
	color:#fff;
	padding: 0 .5em;
	font-size:142%;
	transition:all 0.2s ease-out;
	box-sizing: border-box;
}

.tournamentMenuItem a:hover,
.tournamentMenuItem .selected{
	color:#091E3C;
	background:#fff;
}

#contentsWrap{ padding-top:40px;}
#mainContents{ width:calc(100% - 385px);}
#sideContents{ width:360px;}

.section{ margin-top:40px;}
.sectionHd + .section{ margin-top:30px;}

.sectionHd{
	color:#091E3C;
	font-size:175%;
	font-weight:bold;
	margin-bottom:25px;
}

.sectionHd.nobdr{ margin-bottom:13px;}

.sectionHd:not(.nobdr):after{
	display:block;
	content:"";
	width:120px;
	height:2px;
	background:#091E3C;
	margin-top:10px;
}

.aboutTxt{
	color:#091E3C;
	font-size:125%;
	line-height:1.8;
}

.aboutTbl{
	width:100%;
	margin-bottom:30px;
	color:#091E3C;
	font-size:125%;
	margin-top:40px;
	border-top:1px solid #231815;
	border-bottom:1px solid #231815;
}

.aboutTbl th,
.aboutTbl td{
	vertical-align:top;
	padding:13px 0;
	line-height:1.5;
}

.aboutTbl tr:not(:last-child) th,
.aboutTbl tr:not(:last-child) td{ border-bottom:1px solid #C9CACA;}

.aboutTbl th{
	width:140px;
	text-align:left;
}

.gmap{
	width:100%;
	height:370px;
	background:#DCDDDD;
	position:relative;
}

.gmapFrame iframe,
.map-frame iframe{
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
}

.map-frame{
	width:100%;
	height: 0;
	padding-top:69.35251798561151%;
	position: relative;
}

/* sidemenu */

.subHd{
	color:#091E3C;
	font-size:175%;
	font-weight:bold;
}

.sideContentsMenu{
	margin-top:10px; 
	border-top:1px solid #231815;
}

.sideContentsMenu li{
	width:100%;
	border-bottom:1px solid #B5B5B6;
}

.sideContentsMenu a{
	display:block;
	width:100%;
	padding:15px 0;
	font-size:134%;
	color:#091E3C;
}

.sideBox{
	width:auto;
	padding:20px 30px;
	margin-top:25px;
	text-align:center;
	border:1px solid #C9CACA;
}

.sideFBbox{
	width:100%;
	height:320px;
	margin-top:25px;
}

#sideShare dt{
	width:100%;
	text-align:center;
	color:#091E3C;
	font-size:117%;
	font-weight:bold;
	margin-bottom:25px;
}

#sideShare li{
	width:43px;
	padding:0 10px;
}


/* 日程表 */

#schedule{
	width:100%;
	padding:35px 0 50px;
	margin-bottom:-40px;
	margin-top:120px;
	color:#091E3C;
	background:#C0E3FF;
}

#schedule.result{
	margin:0;
	padding:50px 0 0;
}

#scheduleHd{
	width:100%;
	text-align:center;
	font-size:175%;
	font-weight:bold;
	margin-bottom:30px;
}

#scheduleTbl{ width:100%;}

#scheduleTbl th{
	font-size:117%;
	padding-bottom:9px;
	vertical-align:middle;
	border-bottom:1px solid #231815;
}

#scheduleTbl .thead1{
	width:110px;
	text-align:left;
	padding-left:10px;
}

#scheduleTbl .thead2{
/*	width:155px;*/
	text-align:left;
}

#scheduleTbl .thead3{
	width:170px;
	text-align:left;
}

#scheduleTbl .thead4{
	width:70px;
}

#scheduleTbl .thead5{
	width:230px;
	text-align:left;
}

#scheduleTbl .thead7{ width:110px;}

#scheduleTbl td{
	padding:18px 0;
	line-height:1.5;
	vertical-align:middle;
	border-bottom:1px solid #231815;
}

/*#scheduleTbl td:not(:last-child){ padding-right:5px;}*/

#scheduleTbl .tbody{ font-size:109%;}

.schedule-day{ max-width:105px;}

.schedule-date{
	font-size:32px;
	line-height:30px;
	font-weight:bold;
}

.schedule-week{
	width:28px;
	line-height:28px;
	text-align:center;
	border:1px solid #000;
	border-radius:3px;
	font-size:109%;
	position:relative;
	top:2px;
}

#scheduleTbl .list{ }

.schedule-city{
	width:60px;
	font-size:117%;
}

.schedule-place{
	width:calc(100% - 60px);
	font-size:117%;
	line-height:1.4;
	padding-right:10px;
	box-sizing:border-box;
}

/* コース情報 */

.courseHd{
	width:auto;
	color:#C0E3FF;
	font-size:200%;
	font-weight:bold;
	line-height:60px;
	padding:0 20px;
	background:#091E3C;
}

/*.courseHd.result{ color:#00A4FF;}*/

.courseHdTbl{
	width:100%;
	color:#091E3C;
	background:#C0E3FF;
	transition:all 0.2s ease-out;
}

.courseHdTbl th{
	vertical-align:middle;
	padding:10px 0 5px;
	font-weight:300;
	text-align:left;
}

.courseHdTbl .thead1{ width:160px;}
.courseHdTbl .thead2{ width:110px;}
.courseHdTbl .thead3{ width:65px;}

.courseHdTbl td{
	font-size:134%;
	vertical-align:middle;
	font-weight:bold;
	padding-bottom:10px;
}

.courseHdTbl th:first-child,
.courseHdTbl td:first-child{ padding-left:20px;}
.courseHdTbl th:last-child,
.courseHdTbl td:last-child{ padding-right:20px;}

#courseNavi{
	width:100%;
	margin-bottom:30px;
}

#courseNavi li:not(:last-child){ margin-bottom:10px;}

#courseNavi a{
	display:block;
	width:100%;
	padding-bottom:5px;
	background:#F7F8F8;
	color:#091E3C;
	transition:all 0.2s ease-out;
}

#courseNavi .courseHdTbl{
	color:inherit;
	background:none;
	transition:all 0.2s ease-out;
}

#courseNavi dt{
	width:auto;
	padding:15px 20px 10px;
	font-size:200%;
	font-weight:bold;
	transition:all 0.2s ease-out;
}

#courseNavi a:hover,
#courseNavi .selected{
	background:#091E3C;
	color:#fff;
}

.courseInfo{
	width:100%;
	font-size:134%;
	color:#091E3C;
	border-top:1px solid #231815;
}

.courseInfo th{
	width:165px;
	text-align:left;
	font-weight:bold;
	padding:15px 0 15px 5px;
	vertical-align:middle;
	border-bottom:1px solid #B5B5B6;
}

.courseInfo td{
	padding:14px 0;
	vertical-align:middle;
	border-bottom:1px solid #B5B5B6;
}

.courseInfo p{ font-size:100%;}

.courseInfo .thead1{ width:275px;}

.courseInfo .thead2{ width:60px;}

.courseInfo .thead2 a{
	display:block;
	width:100%;
	height:22px;
	line-height:22px;
	padding-top:2px;
	color:#fff;
	font-size:84%;
	text-align:center;
	font-weight:500;
	font-family: 'Heebo', sans-serif;
	background:#091E3C;
	border-radius:3px;
}

.courseInfo .thead3{
	text-align:right;
	padding-right:10px;
	padding-left:10px;
}

.courseInfoList{
	width:100%;
	letter-spacing:-0.4em;
}

.courseInfoList li{
	display:inline-block;
	vertical-align:top;	
	letter-spacing:normal;
	padding:8px 0;
}

.courseInfoList li a{
	display:block;
	padding:0 15px;
	line-height:30px;
	color:#fff;
	background:#898989;
}

.courseInfoList li:first-child a,
.courseInfoList li:last-child a{ background:#00A4FF;}

.courseInfoList li:not(:last-child){
	position:relative;
	padding-right:40px;
}

.courseInfoList li:not(:last-child):after{
	display:block;
	content:"";
	width:22px;
	height:1px;
	background:#231815;
	position:absolute;
	right:9px;
	top:50%;
}

#city{
	width:100%;
	margin-top:50px;
	padding-top:40px;
	border-top:1px solid #DCDDDD;
}

#cityHd{
	font-size:200%;
	color:#091E3C;
	font-weight:bold;
	margin-bottom:20px;
}

.cityWrap{ overflow: hidden;}


/*
.cityItem:nth-child(9n){ margin-right:0;}
.cityItem:nth-child(n+10){ margin-top:18px;}
.cityItem:nth-child(9n+2):last-child{ margin-right:854px;}
.cityItem:nth-child(9n+3):last-child{ margin-right:732px;}
.cityItem:nth-child(9n+4):last-child{ margin-right:610px;}
.cityItem:nth-child(9n+5):last-child{ margin-right:488px;}
.cityItem:nth-child(9n+6):last-child{ margin-right:366px;}
.cityItem:nth-child(9n+7):last-child{ margin-right:244px;}
.cityItem:nth-child(9n+8):last-child{ margin-right:122px;}
*/


.cityItem figcaption{
	width:auto;
	padding:5px 2px;
	border:1px solid #C9CACA;
	margin-top:12px;
	color:#091E3C;
	font-size:117%;
	font-weight:300;
	line-height:18px;
	text-align:center;
	border-radius:5px;
}


/* アクセス・交通規制 */

.accessHd{
	width:100%;
	line-height:60px;
	color:#091E3C;
	font-size:200%;
	font-weight:bold;
	background:#C0E3FF;
	text-align:center;
	margin-bottom:30px;
}

.accessTxt{
	color:#091E3C;
	font-size:167%;
	margin:15px 0 25px;
}

.accessBox{
	width:calc(50% - 40px);
	margin-top:15px;
}

.accessBoxHd{
	width:auto;
	font-size:125%;
	margin-bottom:5px;
	border:1px solid #231815;
}

.accessBoxHd-ttl{
	width:160px;
	text-align:center;
	line-height:42px;
	color:#fff;
	font-weight:bold;
	background:#091E3C;
}

.accessBoxHd-txt{
	width:calc(100% - 175px);
	padding:10px 15px 10px 0;
	line-height:22px;
	color:#091E3C;
	box-sizing:border-box;
}

.accessRoute{ width:100%;}

.accessRoute th{
	width:42px;
	vertical-align:middle;
	padding:15px 0;
	border-bottom:1px solid #C9CACA;
}

.accessRoute td{
	padding:15px 0 15px 50px;
	color:#091E3C;
	font-size:125%;
	line-height:1.5;
	border-bottom:1px solid #C9CACA;
}


/* 速報・結果 */

#resultMenu{
	width:100%;
	margin-left:auto;
	margin-right:auto;
}

#scheduleTbl + #resultMenu{ margin-top:30px;}

#resultMenu li{ width:calc(33.333333% - 10px);}
#resultMenu a{
	display:block;
	width:100%;
	height:100%;
	text-align:center;
	line-height:64px;
	color:#fff;
	font-size:167%;
	font-weight:bold;
	background:#091E3C;
	transition:all 0.2s ease-out;
}

#resultMenu a:hover,
#resultMenu .selected{
	background:#fff;
	color:#091E3C;
}

#bulletinList{
	width:auto;
	margin-top:50px;
	background:#FFFFF5;
	border:1px solid #DCDDDD;
}

#bulletinList li{
	width:auto;
	color:#091E3C;
	font-size:117%;
	padding:12px 15px;
	border-bottom:1px solid #DCDDDD;
}

#bulletinList li:last-child{
	background:#F7F8F8;
	border-bottom:none;
}

.bulletinList-date{
	width:55px;
	line-height:1.6;
}

.bulletinList-txt{
	width:calc(100% - 55px);
	line-height:1.6;
}

.resultList{
	width:100%;
	color:#091E3C;
	font-size:125%;
	padding-bottom:24px;
	border-bottom:1px solid #DCDDDD;
}

.resultList li:not(:last-child){ margin-bottom:12px;}

.resultBox{ margin-top:20px;}
.courseHdTbl + .resultBox{ margin-top:40px;}

.resultBox:last-child .resultList{
	padding-bottom:0;
	border-bottom:none;
}


/* ギャラリー */

#gallery li{
	width:21.58273381294964%;
	margin-top:30px;
}

#gallery li:nth-child(4n+2):last-child{ margin-right:calc((21.58273381294964% + 4.556354916067146%) * 2);}
#gallery li:nth-child(4n+3):last-child{ margin-right:calc((21.58273381294964% + 4.556354916067146%) * 1);}


#gallery li.notfound{
    width:100%;
    text-align:left;
    border-top:1px solid #ccc;
    border-bottom:1px solid #ccc;
    padding:1em 0;
}


/*------------------------------------------------------------ 
    ニュース 
------------------------------------------------------------*/ 

.tournament-newsDate{
	color: #3E3A39;
	font-size: 117%;
	margin-top:-10px;
}

.article-share{
	width:100%;
	overflow:hidden;
	padding:45px 0 15px;
	margin-bottom:30px;
	border-bottom:1px solid #DCDDDD;
}

.article-share dt{
	float:left;
	font-size:167%;
	line-height:22px;
	letter-spacing:2px;
	color:#3E3A39;
	font-family: 'Heebo', sans-serif;
}

.article-share dd{
	float:right;
	overflow:hidden;
}

.article-share li{
	float:left;
	margin-left:25px;
}

.article-share a path,
.article-share a rect,
.article-share a polyline{ transition:all 0.2s ease-out;}

.article-share a:hover path{ fill:#091E3C;}
.article-share a:hover rect,
.article-share a:hover polyline{ stroke:#091E3C;}


/* 404 */

.notfound{
	text-align:center;
	color:#091E3C;
	font-size:134%;
	padding:50px 0;
}

/*------------------------------------------------------------ 
    フッター 
------------------------------------------------------------*/  

#sponsor{
	width:100%;
	margin-top:40px;
	text-align:center;
	padding-top:30px;
	border-top:1px solid #DCDDDD;
}

#sponsorHd-en{
	font-size:36px;
	color:#091E3C;
	letter-spacing:1px;
	font-family: 'Heebo', sans-serif;
	font-weight:500;
}

#sponsorHd-jp{
	font-size:134%;
	color:#091E3C;
	font-weight:300;
	margin-top:5px;
}

#sponsorList{
	width:100%;
	margin-top:40px;
}

#sponsorList > li:not(:last-child){
	padding-bottom:30px;
	margin-bottom:30px;
	border-bottom:1px solid #DCDDDD;
}

#sponsorList figcaption{
	margin-top:12px;
	color:#091E3C;
	font-weight:300;
}

#sponsorList ul{ margin:-14px 0;} 
#sponsorList li li{ margin:14px 10px;}

#sponsorList #sponsorList3{
	max-width:1400px;
	margin-left:auto;
	margin-right:auto;
}

.sponsor1{
	width:auto;
	max-height:52px;
}

.sponsor2{
	width:auto;
	max-height:30px;
}

.sponsor3{
	width:auto;
	max-height:44px;
}

#sponsorList .last{
	line-height:44px;
}

#pagetop{
	display:none;
	width:60px;
	height:60px;
	position:fixed;
	right:20px;
	bottom:20px;
	z-index:500;
}

#pagetop a{
	display:block;
	width:100%;
	height:100%;
	background:rgba(9,30,60,.7);
	transition:background 0.2s ease-out;
	position:relative;
}

#pagetop a:hover{ background:#091E3C;}

.arrow-box{
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
	transform:rotate(-90deg);
}

.arrow-right{
	width:10px;
	height:18px;
	fill:none;
	position:absolute;
	margin:auto;
	top:0;
	right:0;
	bottom:0;
	left:0;
	stroke:#fff;
	stroke-width:2px;
}

#footer{
	width:100%;
	margin-top:50px;
	padding-bottom:20px;
}

#ftNavi{
	width:100%;
	padding:17px 0;
	border-top:1px solid #DCDDDD;
}

#ftNavi li{ margin:3px 10px;}

#ftTxt{
	color:#091E3C;
	font-size:125%;
	line-height:1.6;
	text-align:center;
	margin:10px 0;
}

#copyright{
	width:100%;
	text-align:center;
	color:#727171;
}



/*------------------------------------------------------------ 
    MediaQuery 
------------------------------------------------------------*/  

/* PC */
@media screen and (max-width: 1680px){

/* citizen&international */
#tournamentHd-txt{ font-size:5.9vw;}
#tournamentHd-year{ font-size:13.8vw;}
#tournamentHd-ttl{ font-size:1.45vw;}
#tournamentHd-date{ font-size:2.64vw;}
#tournamentHd-date span{ font-size:3.7vw;}

}

@media screen and (max-width: 1220px){

#hdLogo{
	width:300px;
	height:34px;
	padding:32px 0 32px 15px;
}

#hdSubNavi > li + li{ margin-left:8px;}
#hdSubNavi li li:not(:last-child){ margin-right:8px;}

}

@media screen and (max-width: 960px) and (min-width: 835px){

#hdLogo{ width:calc(100vw * (300 / 960));}
#hdMenu{ max-width:calc(100% - (100vw * (320 / 960)));}

.hdFollow li{ margin-left:16px;}

#hdSubNavi{ margin-top: 0;}
#hdSubNavi li li{ margin-top: 5px;}
#hdSubNavi > li + li{ margin-left:6px;}
#hdSubNavi li li:not(:last-child){ margin-right:6px;}

.subNaviItem .navi{ padding: 0 6px;}

#hdLink-logo1{
	width:80px;
	height:auto;
}

#hdLink-logo2{
	width:40px;
	height:auto;
}

}


/* TABLET */
@media screen and (min-width: 835px){

.tb-show{ display:none;}

/* city */
.cityList{
	width:auto;
	margin: -18px -19px 0 0;
}

.cityItem{
	width:103px;
	margin:18px 19px 0 0;
}

}

@media screen and (max-width: 834px){

.tb-hide{ display:none;}

.list > #hdMenu,
#header > #gNavi{ display: none;}

body{ padding-top: 80px;}

#header{
	width:100%;
	height: 80px;
	padding: 0 20px;
	box-sizing:border-box;
	background:#fff;
	position: fixed;
	top:0;
	left: 0;
	z-index: 10000;
	box-shadow: rgba(149, 157, 165, .1) 0px 3px 9px;
}

#header > .list{
	height:100%;
	  -webkit-box-align: center;
     -ms-flex-align: center;
        align-items: center;
}

#hdLogo{
	padding: 0;
	height:auto;
}

#navBtn{
	width:40px;
	height:40px;
	position:relative;
	z-index: 1000;
}

#navBtn a{
	display:block;
	width:100%;
	height:100%;
	position:relative;
}

.top-bar,
.middle-bar,
.bottom-bar{
	width: 30px;
	height: 1px;
	background-color:#000;
	transition: transform .1s 0s ease-in-out,top .1s .1s ease-in-out;
	transform-origin: 50% 50%;
	position: absolute;
	top: 8px;
	left:5px;
}

.middle-bar{
	transition: opacity 0s .15s linear ;
	top: 20px;
}

.bottom-bar{ top: 33px;}

.open .top-bar{
	transform: rotate(45deg);
	top: 20px;
}

.open .middle-bar{ opacity: 0;}

.open .bottom-bar{
	transform: rotate(-45deg);
	top: 20px;
}

#spNavi{
	display:block;
	width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 900;
    padding: 90px 100px 60px;
    box-sizing: border-box;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    opacity: 0;
    visibility: hidden;
    transition: all 0.5s cubic-bezier(0.485, 0.135, 0, 0.995);
}

.open #spNavi {
    background: #fff;
    opacity: 1;
    visibility: visible;
}

#spNavi #gNavi,
#spNavi #hdMenu{
    width: 100%;
    transform: translateX(15%);
    transition: all 0.6s cubic-bezier(0.485, 0.135, 0, 0.995);
}

.open #spNavi #gNavi,
.open #spNavi #hdMenu{ transform: translateX(0%);}

#spNavi #gNavi{
	background:none;
	border:none;
	text-align: left;
}

#spNaviInner{
	max-width:380px;
	margin: 0 auto;
}

#spNavi #gNavi .list{ display: block;}

#spNavi .gNavi li{
	position: relative;
	z-index: 1;
}

#spNavi .gNavi a{
	width:calc(100% - 48px);
	padding:0;
	line-height: 48px;
	font-size: 150%;
}

.gNavi__trigger{
	display:block;
	width:48px;
	height: 48px;
	position:absolute;
	right:0;
	top:0;
	z-index: 10;
	cursor: pointer;
}

.gNavi__trigger::after{
	content:"";
	width:6px;
	height: 6px;
	border-right:2px solid #091E3C;
	border-bottom:2px solid #091E3C;
	transform: rotate(45deg) translate(-25%,-50%);
	position: absolute;
	right:50%;
	top:50%;
}

.gNavi__trigger.is-selected::after{
	border-top:2px solid #091E3C;
	border-left:2px solid #091E3C;
	border-right:none;
	border-bottom:none;
}

#spNavi .gNavi a:hover,
.gNavi .selected{
	color:#091E3C;
	background:none;
}

#spNavi #hdMenu{
	display: block;
	max-width:100%;
	padding: 0;
	margin-top:18px;
}

#spNavi #hdMenu__inner{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:justify;
	   -ms-flex-pack:justify;
	justify-content:space-between;
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

#spNavi #hdSubNavi{
	order:1;
	width:100%;
	margin:0 0 30px;
}

#spNavi #hdSubNavi,
#spNavi #hdSocialNavi{
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

#spNavi #hdSocialNavi{
	order:2;
	width:100%;
	padding-bottom: 10px;
}

#spNavi #hdSubNavi > li + li{ margin:11px 0 0;}
#spNavi #hdSubNavi li li:not(:last-child){ margin-right: 16px;}
#spNavi #hdSubNavi > li + li li:not(:last-child){ margin-right: 8px;}
#spNavi .subNaviItem a{ font-size: 117%;}

#spNavi #langBtn{ margin-left: 20px;}

#spNavi .hdLink{
	display: inline-block;
	padding:20px 0;
}

#spNavi .hdLink + .hdLink{ margin-left: 20px;}



/* contents */

#detailHd-en,
#sponsorHd-en{ font-size:32px;}
#detailHd-jp,
#sponsorHd-jp{ font-size:125%;}

.sectionHd { font-size: 150%;}
.sectionHd:not(.nobdr)::after {
    width: 96px;
    margin-top: 8px;
}

.fileList{ padding:24px;}
.fileList a{ font-size:125%;}



/* form */
#contactForm{ padding:60px 40px 40px;}

.formBox.col2{ width:calc(50% - 5px);}

#submit{
	max-width:480px;
	height:50px;
	line-height:50px;
	font-size:150%;}

#submit a{ line-height:50px;}

#submit a:after{
	border-width:0 0 50px 480px;
	margin-top:-50px;
}



/* citizen&international */

#tournamentHd{ padding-top: 55%;}
#tournamentHdInner .inner .list{ width:80%;}
#tournamentHd-txt{ font-size:calc(100vw * (60 / 834));}
#tournamentHd-year{ font-size: calc(100vw * (130 / 834));}

#tournamentHd-ttl{
	width:50%;
	font-size: calc(100vw * (16 / 834));
	margin-top:0;
}

#tournamentHd-date{
	font-size: calc(100vw * (22 / 834));
	padding-left: calc(100vw * (30 / 834));
	margin-top: 0;
}

#tournamentHd-date span{ font-size: calc(100vw * (31 / 834));}

#tournamentMenu{
	white-space: nowrap;
	overflow-x:auto;
	-webkit-overflow-scrolling: touch;
	position: sticky;
	top:80px;
	z-index: 9900;
}

#tournamentMenu > ul{
	min-width:700px;
	padding: 0;
}

.tournamentMenuItem a{
	font-size: 117%;
	height:50px;
}

#mainContents,
#mainContents > div,
#sideContents,
#sideContents > div{
	width:100%;
	height:auto!important;
}


#sideContents{ margin-top: 40px;}

#mainContentsInner,
#sideContentsInner{
	position:static!important;
	width:auto!important;
}

.subHd,
#scheduleHd{ font-size: 150%;}
.sideContentsMenu a{ font-size: 125%;}

#schedule{
	margin-top:40px;
	padding: 40px 0;
}

#schedule .inner{
	white-space: nowrap;
	overflow-x:auto;
	-webkit-overflow-scrolling: touch;
}

#scheduleTbl{ width:834px;}

#scheduleTbl th,
#scheduleTbl .tbody{ font-size: 109%;}

#scheduleTbl td{ padding: 15px 0;}

.schedule-date{ font-size: 30px;}

.accessHd{
	line-height:48px;
	font-size:175%;
}

.accessTxt{ font-size:150%;}
.accessBox{ width:calc(50% - 10px);}

.accessBoxHd{ font-size:117%;}
.accessBoxHd-ttl{ width:140px;}
.accessBoxHd-txt{ width:calc(100% - 155px);}

.accessRoute td{
	padding-left:30px;
	font-size:117%;
}

#schedule.result{ padding-top: 40px;}
#resultMenu a {
    line-height: 52px;
    font-size: 134%;
}

#editor,
.courseInfo{ font-size: 117%;}

.courseHd{
	font-size:175%;
	line-height: 48px;
	padding:0 15px;
}

.courseHdTbl td{ font-size:125%;}
.courseHdTbl th:first-child,
.courseHdTbl td:first-child{ padding-left: 15px;}
.courseHdTbl th:last-child,
.courseHdTbl td:last-child{ padding-right: 15px;}

#courseNavi dt{
	padding:15px 15px 5px;
	font-size:175%;
}

.sideContentsMenu li:nth-child(n+4){ display: none;}

.btn-center{ margin: 20px auto 0;}

#city{ margin-top: 40px;}
#cityHd{ font-size: 175%;}

.cityList{
	width:auto;
	margin:-18px 0 0;
}

.cityItem{
	width:calc(14.28571428571429% - 12px);
	margin:18px 0 0;
	box-sizing:border-box;
}

.cityItem figcaption {
    padding: 4px 2px;
    margin-top: 8px;
    font-size: 109%;
    border-radius: 4px;
}


/* footer */

#sponsorList{ margin-top:32px;}
#sponsorList > li:not(:last-child){
	padding-bottom:24px;
	margin-bottom:24px;
}

#sponsorList ul{ margin:-11px 0;} 
#sponsorList li li{ margin:11px 8px;}

.sponsor1{ max-height:42px;}
.sponsor2{ max-height:24px;}
.sponsor3{ max-height:35px;}
#sponsorList .last{ line-height:35px;}

#footer{ margin-top:40px;}

#ftNavi{ padding:14px 0;}
#ftNavi li{ margin:2px 8px;}

#ftTxt{
	font-size:117%;
	margin:8px 0;
}

}

@media screen and (max-width: 834px) and (min-width: 481px){

.cityItem:not(:nth-child(7n)){ margin-right: 14px;}

}

/* SP */
@media screen and (min-width: 481px){

.sp-show{ display:none;}

}

@media screen and (max-width: 480px){

.sp-hide{ display:none;}
body{ padding-top: 60px;}

#header{
	height:60px;
	padding: 0 15px;
}

#hdLogo{ width:200px;}

#spNavi{ padding: 70px 30px 60px;}

#spNavi .gNavi a{
	width:calc(100% - 40px);
	font-size: 134%;
	line-height: 40px;
}

#spNavi .gNavi .gNavi__submenu a{ font-size: 117%;}

.gNavi__trigger{
	width:40px;
	height: 40px;
}

.gNavi__submenu{ padding: 0 14px 10px;}

.hdFollow dt{ font-size: 109%;}
.hdFollow li{ margin-left: 14px;}

#spNavi #langBtn{
	width:74px;
	margin-left: 15px;
}



/* contents */

#pankuzu{
	font-size:100%;
	padding-top:10px;
	padding-bottom: 10px;
}

#pankuzu li{ padding-right: 10px;}

#pankuzu li:not(:last-child){
	margin-right:10px;
	line-height: 14px;
}

#detailContents{ padding-top:30px;}

#detailHd-en,
#sponsorHd-en{
	font-size: 28px;
	line-height: 1;
}

#detailHd-jp,
#sponsorHd-jp{ font-size:117%;}

.photoItem{ width:33.333333%;}
.photoItem:nth-child(n+4){ display: none;}

.button{
	max-width:280px;
	height:40px;
}

.button a{
	line-height:40px;
	font-size: 117%;
}

.button a::after {
    border-width: 0 0 40px 280px;
    margin-top: -40px;
}

.section{ margin-top: 30px;}
.sectionHd {
	font-size: 134%;
	margin-bottom:21px;
}

.fileList{ padding:20px 15px;}
.fileList li:not(:last-child){ margin-bottom: 16px;}
.fileList a{ font-size:117%;}

.aboutTxt{
	font-size:117%;
	line-height: 1.75;
}

/* form */
#contactForm{ padding:30px 20px 10px;}

#contactTbl,
#contactTbl tbody,
#contactTbl tr,
#contactTbl th,
#contactTbl td{ display: block;}

#contactTbl th{
	width:100%;
	line-height: 20px;
	padding-bottom: 0;
	margin-bottom: 12px;
}

#contactTbl th::before{ top:0;}
#contactTbl td{
	width:100%;
	padding-left: 0;
}

.formBox.col2{ width:calc(50% - 8px);}
.formBox label{
	width:36px;
	text-align: left;
	padding-right: 0;
}

.formBox input{ width:calc(100% - 36px);}

.form-input.small{ width:80px;}

#submit{
	height:46px;
	line-height:46px;
	font-size:134%;
	margin-top:30px;
}

#submit a{ line-height:46px;}

#submit a:after{
	border-width:0 0 46px 480px;
	margin-top:-46px;
}



/* citizen&international */

#tournamentHdInner{ bottom:0;}
#tournamentHdInner .inner .list{ width:90%;}
#tournamentHd-txt{ font-size:calc(100vw * (38 / 480));}
#tournamentHd-year{ font-size: calc(100vw * (90 / 480));}

#tournamentHd-ttl{
	width:54%;
	padding: calc(100vw * (8 / 480)) 0;
	font-size: calc(100vw * (11 / 480));
}

#tournamentHd-date{
	font-size: calc(100vw * (16 / 480));
	padding-left: calc(100vw * (15 / 480));
}

#tournamentHd-date span{ font-size: calc(100vw * (24 / 480));}

#tournamentMenu{ top:60px;}

#tournamentMenu > ul{
	min-width:640px;
	padding: 0;
}

.tournamentMenuItem a{
	font-size: 109%;
	height:42px;
}

#sideContents{ margin-top: 30px;}

.aboutTbl{
	font-size:117%;
	margin-top:30px;
}
.aboutTbl,
.aboutTbl tbody,
.aboutTbl tr,
.aboutTbl th,
.aboutTbl td{ display: block;}

.aboutTbl th{
	width:100%;
	padding:15px 0 0;
	font-weight: bold;
}

.aboutTbl tr:not(:last-child){ border-bottom:1px solid #C9CACA;}
.aboutTbl tr:not(:last-child) th,
.aboutTbl tr:not(:last-child) td{ border-bottom: none;}

.aboutTbl td{ padding: 10px 0 15px;}
.aboutTbl td + td{ padding-top: 0;}

.subHd,
.accessTxt,
#scheduleHd{ font-size: 134%;}
.sideContentsMenu a{ font-size: 117%;}

.sideBox{
	padding:20px;
	margin-top:20px;
}

#schedule{
	margin-top:30px;
	padding: 30px 0;
}

.accessHd{
	line-height:42px;
	font-size:150%;
	margin-bottom: 24px;
}

.accessBox{ width:100%;}
.accessBox + .accessBox{ margin-top: 20px;}

.accessBoxHd-txt{ width:calc(100% - 150px);}
.accessRoute td{ padding-left:20px;}

#schedule.result,
#contentsWrap{ padding-top: 30px;}
#resultMenu li { width: calc(33.33333% - 6px);}
#resultMenu a {
    line-height: 40px;
    font-size: 100%;
}

.courseInfo__wrap{
	white-space: nowrap;
	overflow-x:auto;
	-webkit-overflow-scrolling: touch;
}

.courseInfo__wrap .courseInfo{ width:480px;}

.courseInfoList li:not(:last-child){ padding-right:32px;}
.courseInfoList li:not(:last-child):after{
	width:18px;
	right:7px;
}

.gmap{ height:280px;}

#courseNavi dt{
	padding:15px 15px 5px;
	font-size:150%;
}

.courseHdTbl td{ font-size: 117%;}

.article-share{
	padding-top: 32px;
	margin-bottom: 24px;
}

#cityHd{ font-size: 150%;}

.cityList{ margin:-14px 0 0;}

.cityItem{
	width:calc(20% - 8px);
	margin:14px 0 0;
}

.cityItem:not(:nth-child(5n)){ margin-right: 10px;}

.cityItem figcaption {
	font-size: 100%;
	padding:2px 1px;
}

.courseHdTbl .thead1{ width:120px;}
.courseHdTbl .thead2{ width:70px;}
.courseHdTbl td{ font-size:109%;}


/* footer */

#sponsorList{ margin-top:24px;}

#sponsorList figcaption{
	margin-top:6px;
	font-size:10px;
}

#sponsorList ul{ margin:-9px 0;} 
#sponsorList li li{ margin:9px 6px;}
/*
.sponsor1{ max-height:26px;}
.sponsor2{ max-height:18px;}
.sponsor3{ max-height:22px;}
#sponsorList .last{ line-height:18px;}
*/
#footer .gNavi li{ width:25%;}
#footer .gNavi a{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:center;
	   -ms-flex-pack:center;
	justify-content:center;
  -webkit-box-align: center;
     -ms-flex-align: center;
        align-items: center;
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	text-align: center;
	height:60px;
	padding:0;
	font-size: 117%;
}

#ftNavi > li + li li{ margin: 2px 6px 2px 0;}
#ftNavi > li + li li:last-child{ margin-right:0;}
.subNaviItem .navi{ padding: 0 6px;}

#ftTxt{
	font-size:100%;
	margin: 20px 0;
}

#pagetop{
	width:48px;
	height:48px;
	right:15px;
	bottom:15px;
}

}

