/* =================================
	TBS RESET CSS
================================= */

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,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,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video,main {margin:0;padding:0;border:0;font-size:100%;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,main {display:block;}
body {font-family:Verdana,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;line-height:1;}
ol,ul {list-style:none;}
blockquote,q {quotes:none;}
blockquote:before,blockquote:after,q:before,q:after {content:'';content:none;}
table {border-collapse:collapse;border-spacing:0;}
wbr:after {content:"\00200B";}

/*	TBS reset
============================== */
.alt {position:absolute;top:-5000px;left:-9999px;}
.clearfix:after {content:"";clear:both;display:block;}
.hide-txt {text-indent:110%;white-space:nowrap;overflow:hidden;}
.fp-causion {display:none;}
.nocontxt {-webkit-touch-callout: none;-webkit-user-select: none;user-select: none;-webkit-user-drag:none;}
.nocontxt img {pointer-events: none;}
@media all and (min-width:768px) {
.alt-pc {position:absolute;top:-5000px;left:-9999px;}
.clearfix-pc:after {content:"";clear:both;display:block;}
.hide-txt-pc {text-indent:110%;white-space:nowrap;overflow:hidden;}
}
@media all and (max-width:767px) {
.alt-smp {position:absolute;top:-5000px;left:-9999px;}
.clearfix-smp:after {content:"";clear:both;display:block;}
.hide-txt-smp {text-indent:110%;white-space:nowrap;overflow:hidden;}
}
div.embed-tbsplayer {
background-color:#000;
position:relative;
height:0;
padding-top:56.25%;
}
div.embed-tbsplayer .tbs-player {
position:absolute;
left:0;
top:0;
width:100%;
height:100%;
}
div.embed-tbsplayer-audio {
background-color:#fff;
}
div.embed-tbsplayer-audio .tbs-player {
height:46px;
}
div.lbx-overlay {
z-index:10000;position:absolute;background-color:#000;width:100%;height:100%;left:0;top:0;right:0;bottom:0;opacity:0.9;
}

/* =================================
	COMMON CSS
================================= */

/* link */
a:link {
	text-decoration:underline;
	color:#fa4e17;
}
a:visited {
	text-decoration:none;
	color:#fa4e17;
}
a:active {
	text-decoration:none;
	color:#fa4e17;
}
a:hover {
	text-decoration:underline;
	color:#fa4e17;
}

/* text-color */
.gray {color:#808080;}
.black {color:#171717;}
.purple {color:#a757a8;}
.ultramarine {color:#465daa;}
.blue {color:#0067c0;}
.lightblue {color:#afdfe4;}
.deepgreen {color:#060;}
.green {color:#008000;}
.yellowgreen {color:#b9c42f;}
.yellow {color:#ffb74c;}
.orange {color:#ff7b00;}
.pink {color:#f58f98;}
.vermilion {color:#ef454a;}
.red {color:#ed1a3d;}
.carmine {color:#c22047;}
.magenta {color:#ec008c;}
.brown {color:#994c00;}
.reddishbrown {color:#800000;}
.yellowocher {color:#c39143;}
.gold {color:#ffd700;}
.silver {color:#c0c0c0;}

/* margin-bottom */
.mgb-0 {margin-bottom:0 !important;}
.mgb-20 {margin-bottom:20px !important;}
.mgb05em {margin-bottom:0.5em !important;}
.mgb1em {margin-bottom:1em !important;}
.mgb15em {margin-bottom:1.5em !important;}

/* lazyload */
.lazy {
	display:block;
	position:relative;
}

/* strech */
.img-strech {
	position:relative;
	height:0;
}
.img-strech .inner {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}

/* nowrap */
.nowp {
	white-space:nowrap;
}


/*	background
============================== */
html, body, div#con-body {
	background-color:#000;
}
body {
	color:#f8f8f8;
	text-align:center;
	-webkit-text-size-adjust:100%;
	-ms-text-size-adjust: 100%;
}

@media all and (min-width: 768px) {
div.cover {
}
}
@media all and (max-width: 767px) {
div.cover {
}
}


/*	copyright
============================== */
p.copyright {
	color:#ccc;
	line-height:1.25;
	text-align:center;
}
p.copyright a {
	color:#ffe0e0;
}
@media all and (min-width: 768px) {
	p.copyright {
		font-size:75%;
		padding:25px 0;
	}
	p.copyright a:hover {
		text-decoration:none;
	}
}
@media all and (max-width: 767px) {
	p.copyright {
		font-size:67.5%;
		padding:10px;
	}
}


/*	pagetop
============================== */
p.pgt {
}
p.pgt a {
	display:block;
}
@media all and (min-width: 768px) {
p.pgt {
	position:absolute;
	right:40px;
	bottom:0;
}
p.pgt a {
	background-image:url(../img/pagetop.png);
	background-repeat:no-repeat;
	background-position:left top;
	width:80px;
	height:80px;
	text-indent:110%;
	white-space:nowrap;
	overflow:hidden;
}
}
@media all and (max-width: 767px) {
p.pgt {
	text-align:center;
}
p.pgt a, p.pgt span {
	display:block;
}
p.pgt a {
	text-decoration:none;
	color:#fff44e;
	background-color:#c00;
}
p.pgt a span {
	background-image:url(../img/cmn_menu.svg);
	background-repeat:no-repeat;
	background-position:right bottom;
	font-weight:bold;
	height:44px;
	line-height:44px;
}
}


/*	layout
============================== */
div.cover .wrap {
	text-align:left;
}
@media all and (min-width: 768px) {
div.cover {
	position:relative;
	padding-top:30px;
}
div.cover .wrap {
	width:922px;
	margin:0 auto;
}
div.wrap div.col-lef {
	width:590px;
	float:left;
}
div.wrap div.col-rig {
	width:300px;
	float:right;
}
}
@media all and (max-width: 767px) {
div.cover {
	padding-top:15px;
}
div.wrap div.col-lef {
	margin:0 1em 1.5em;
}
}

/*	header
============================== */
header.header {
	
}
header.header div.pics span.lazy {
	display:block;
	position:relative;
	height:0;
	padding-top:47.7223427%;
	background-repeat:no-repeat;
	background-size:cover;
}
header.header div.pics span.lazy img {
	display:block;
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}
@media all and (min-width: 768px) {
header.header {
	position:relative;
	height:670px;
}
header.header h1 {
	position:absolute;
	left:0;
	top:440px;
	background-image:url(../img/logo_pc.png);
	background-repeat:no-repeat;
	background-position:left top;
	width:922px;
	height:230px;
	z-index:2;
}
}
@media all and (max-width: 767px) {
header.header h1 {
	margin:0 20%;
	margin-bottom:10px;
}
header.header h1 > span {
	display:block;
	background-image:url(../img/logo_smp.png);
	background-repeat:no-repeat;
	background-position:left top;
	background-size:cover;
	position:relative;
	height:0;
	padding-top:48.4375%;
}
header.header h1 > span span {
	display:block;
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	text-indent:110%;
	white-space:nowrap;
	overflow:hidden;
}
header.header p.oa {
	font-weight:bold;
	text-align:center;
	line-height:1.25;
	background-color:#c00;
	padding:0.5em 0;
	margin-bottom:1.25em;
}
}

/*	introduction
============================== */
div.introduction p.txt {
	line-height:1.75;
	text-align: justify;
	text-justify: distribute;
}
div.recta div {
	width:300px;
	height:250px;
	overflow:hidden;
}
div.col-rig p.btn20160101 span {
	margin:0 auto;
	width:300px;
	height:200px;
	display:block;
	background-image:url(../img/btn_20160101.jpg);
	background-repeat:no-repeat;
	background-position:center center;
}
div.col-rig p.btn20160101 span a {
	display:block;
	width:300px;
	height:200px;
	text-indent:110%;
	white-space:nowrap;
	overflow:hidden;
}

@media all and (min-width: 768px) {
div.introduction {
	padding-bottom:30px;
}
div.introduction p.c-copy {
	background-image:url(../img/logo_pc.png);
	background-repeat:no-repeat;
	background-position:0 -230px;
	height:40px;
	text-indent:110%;
	white-space:nowrap;
	overflow:hidden;
	margin-bottom:15px;
}
div.introduction p.txt {
	font-size:100%;
}
div.recta {
	margin-bottom:20px;
}
}
@media all and (max-width: 767px) {
div.introduction {
	margin-bottom:10px;
}
div.introduction p.c-copy {
	color:#fdb8b8;
	line-height:1.25;
	font-weight:bold;
	margin-bottom:0.5em;
}
div.introduction p.txt {
	font-size:87.5%;
}
div.recta {
	background-color:#4e4e4e;
	padding:10px 0;
}
div.recta div {
	margin:0 auto;
}
div.col-rig p.btn20160101 {
	padding-top:10px;
}
}


/*	boards
============================== */
div.wrap article.unit {
	background-color:#ff0c17;
	background-image:url(../img/brd.png);
	background-repeat:no-repeat;
}
div.wrap article.unit h2 {
	background-image:url(../img/h2.png);
	background-repeat:no-repeat;
	position:relative;
	height:0;
	padding-top:14.099783%;
}
div.wrap article.team h2 {
	background-position:center top;
}
div.wrap article.rule h2 {
	background-position:center center;
}
div.wrap article.chkpoint h2 {
	background-position:center bottom;
}
div.wrap article.unit h2 span {
	display:block;
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	text-indent:110%;
	white-space:nowrap;
	overflow:hidden;
}
@media all and (min-width: 768px) {
div.wrap article.unit {
	margin-bottom:30px;
	background-position:center -110px;
}
div.wrap article.unit div.inner {
	padding:0 60px 40px; 
}
}
@media all and (max-width: 767px) {
div.wrap article.unit {
	margin-bottom:10px;
	background-position:center -50px;
	background-size:80%;
}
div.wrap article.unit div.inner {
	padding:0 1em 1em; 
}
div.wrap article.unit h2 {
	background-size:cover;
}
}


/*	team
============================== */

article.team section h3 {
	color:#000;
	/* text-shadow:1px 1px 0 #fff, -1px 1px 0 #fff, -1px -1px 0 #fff, 1px -1px 0 #fff, 2px 2px 3px #000; */
	text-align:center;
	line-height:1.5;
	margin-bottom:0.5em;
}
article.team section ul li {
	line-height:1.5;
	margin-bottom:0.25em;
}

article.team section {
	text-align:center;
}

article.team div.pics span.lazy {
	display:block;
	background-color:#000;
	position:relative;
	height:0;
	padding-top:66.666666%;
	background-repeat:no-repeat;
}
article.team div.pics span.lazy img {
	display:block;
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}

article.team section.junior div.pics span.lazy {
	background-position:left top;
}
article.team section.london div.pics span.lazy {
	background-position:right top;
}
article.team section.ariyoshi div.pics span.lazy {
	background-position:left bottom;
}
article.team section.ogiyahagi div.pics span.lazy {
	background-position:right bottom;
}

@media all and (min-width: 768px) {

article.team div.inner div.t-over {
	padding-bottom:20px;
}
section.team-lef {
	width:360px;
	float:left;
}
section.team-rig {
	width:360px;
	float:right;
}
article.team div.pics {
	margin-bottom:20px;
}
}
@media all and (max-width: 767px) {
article.team section {
	font-size:87.5%;
	margin-bottom:2em;
}
article.team section.ogiyahagi {
	margin-bottom:0;
}
article.team div.pics {
	margin:0 20px 10px;
}
article.team div.pics span.lazy {
	background-size:200% 200%;
}
}



/*	rule
============================== */

article.rule ol {
	list-style-type:decimal;
	margin-left:1.5em;
}
article.rule ol li {
	line-height:1.5;
	margin-bottom:0.5em;
}
article.rule ol li dl dt {
	float:left;
	font-weight:bold;
}
article.rule ol li dl dd {
	padding-left:2em;
}
article.rule ol li dl dd ul li {
	float:left;
	padding-right:1.5em;
	margin-bottom:0;
}
article.rule ol li dl dd ul li:before {
	content:"・";
}
article.rule ol li div.point {
	margin-bottom:0.75em;
}
article.rule ol li div.point h3 {
	color:#000;
}
article.rule ol li div.point h3:before {
	content:"★ ";
}
@media all and (min-width: 768px) {
article.rule ol li {
	font-size:100%;
}
}
@media all and (max-width: 767px) {
article.rule ol li {
	font-size:87.5%;
}
article.rule ol li dl dd ul li {
	font-size:100%;
}
}


/*	check point
============================== */
article.chkpoint section {
	border:5px solid #000;
	border-top:none;
	background-color:#fff;
	margin-bottom:1em;
}
article.chkpoint section h3 {
	background-color:#000;
	text-align:center;
	line-height:1.25;
	padding:.75em 0;
}
article.chkpoint section dl {
	color:#000;
}
article.chkpoint section dl dt, article.chkpoint section dl dd {
	line-height:1.5;
}
@media all and (min-width: 768px) {
article.chkpoint section dl {
	padding:2em;
}
article.chkpoint section dl dt {
	float:left;
	padding-right:1em;
}
}
@media all and (max-width: 767px) {
article.chkpoint section dl {
	padding:1em;
}
article.chkpoint section dl dt {
	margin-bottom:0.25em;
}
article.chkpoint section dl dt, article.chkpoint section dl dd {
	font-size:87.5%;
}
}


@font-face {
	font-family: 'Secular One';
	src: url('/um/library/fonts/Secular_One/SecularOne-Regular.ttf') format("truetype");
}
p.gcb-hash {
	font-family: 'Secular One', 'sans serif';
	text-align:center;
	font-size:300%;
	margin:1.5em 0;
}


/* sns buttons */
div.sns-btns {
	width:300px;
	margin:0 auto;
}
div.sns-btns div.tw {
	width:150px;
	float:left;
	padding-left:50px;
	-webkit-box-sizing : border-box ;
	-moz-box-sizing : border-box ;
	box-sizing : border-box ;
}
div.sns-btns div.fb {
	float:right;
}
@media all and (min-width: 768px) {
div.sns-btns {
	margin-bottom:20px;
}
}
@media all and (max-width: 767px) {
div.sns-btns {
	margin-bottom:15px;
}
}