/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
section#spla h4:after{
	background: -moz-linear-gradient(left, transparent 30%, #19d719 40%, #19d719 60%, transparent 70%);
	background: -webkit-linear-gradient(left, transparent 30%, #19d719 40%, #19d719 60%, transparent 70%);
	background: linear-gradient(to left, transparent 30%, #19d719 40%, #19d719 60%, transparent 70%);
}
section#spla h5:before{ 
	background: #f02d7d;
} 
/*--------------
  スプラトゥーン
--------------*/
section#spla {
	background-color: #141414;
	background-repeat: no-repeat;
	background-position: center top;
}
section#spla > div > section:first-of-type {
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: left top, right top, center top;
	background-size: 25%, 25%, 100%;
}

section#spla > div > section:nth-of-type(n+2):nth-child(even) {
	background-color: rgba(255,255,255,.08);
}
section#spla > .graffiti_bg {
	background-position: left top, right top;
	background-repeat: repeat-y;
	background-size: 25%;
}

section#spla div {
	background-size: 100%;
}
section#spla .lead {
    padding: 1.5em 0 0;
    padding: calc(1.2em + 2.25vw) 0 0;
}
section#spla h2 {
	background-image: url(../images/spla_logo.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: contain;
	text-indent: -99999em;
	line-height: 15em;
	line-height: calc(8em + 24vw);
	padding: 0;
	margin-top: 0;
}
section#spla p.catch {
	text-align: center;
	color: #fff;
	font-size: 1.15em;
	font-size: calc(.75em + 1.5vw);
	font-weight: 600;
	line-height: 1.4;
	text-shadow: 0 0 1em #000, 0 0 .75em #000, 0 0 .25em #000;
	padding: .75em 0 0;
	font-feature-settings : "palt";
}
section#spla p.format {
	font-size: 1em;
	font-size: calc(.75em + 1vw);
	font-weight: 600;
	line-height: 2em;
	max-width: 22em;
	color: #fff;
	margin: .75em auto 0;
	padding: 0;
	text-align: center;
	background: -moz-linear-gradient(left, transparent, rgba(20,20,20,1), 10%, rgba(20,20,20,1) 90%, transparent);
	background: -webkit-linear-gradient(left, transparent 0%, rgba(20,20,20,1) 10%, rgba(20,20,20,1) 90%, transparent 100%);
	background: linear-gradient(to left, transparent 0%, rgba(20,20,20,1) 10%, rgba(20,20,20,1) 90%, transparent 100%);
}
/*エントリーボタン*/
section#spla .entry_btn {
    display: inline-block;
    background-color: #f02d7d;
    font-size: 1.4em;
    font-size: calc(1.2em + .5vw);
    font-weight: 600;
    text-decoration: none;
    width: 90%;
    max-width: 24em;
    margin: auto;
    padding: 1em;
    border-radius: .15em;
    cursor: pointer;
    box-shadow: 0 0.1em 0.1em 0 rgba(0,0,0,0.14), 0 0.05em 0.25em 0 rgba(0,0,0,0.12), 0 0.15em 0.05em -0.1em rgba(0,0,0,0.2);
}
section#spla .entry_btn:hover {
	box-shadow: 0 .15em .15em 0 rgba(0,0,0,0.14), 0 .05em .35em 0 rgba(0,0,0,0.12), 0 .35em .05em -.05em rgba(0,0,0,0.2);
}
section#spla .entry_btn.disable {
	background-color: #999;
}
/*賞金*/
section#spla #spla_prize .box {
	text-align: center;
}
section#spla #spla_prize p {
	margin: 0 auto;
}
section#spla #spla_prize p img {
	margin: .5em auto;
}
section#spla #spla_prize small .item {
	width: 32em;
	max-width: 100%;
}
/*ルール*/
section#spla #spla_rule section:first-child h4 {
	padding-top: 0;
}
section#spla #spla_rule h5 {
	background-color: #fff;
	color: #141414;
	line-height: 2;
	padding: 0;
	margin-bottom: .4em;
	border: none;
	text-align: center;
	border-radius: .5em .5em 0 0;
}
section#spla #spla_rule h5:before {
	content: none;
}
section#spla .spla_tournament ol.flex_container {
	padding: 0;
	position: relative;
	list-style: none;
}
section#spla .spla_tournament ol.flex_container {
	margin-bottom: 1.8em;
	margin-bottom: calc(1.2em + 2.4vw);
}
section#spla .spla_tournament ol.flex_container:first-of-type:after {
	content: '';
	position: absolute;
	right: 46%;
	right: calc( 50% - 1em );
	bottom: -1.5em;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 1em 1em 0 1em;
	border-color: #fff transparent transparent transparent;
}
section#spla .spla_tournament .flex_container > * {
	padding: 0;
    display: -webkit-box;
    display: -webkit-flexbox;
    display: -webkit-flex;
    display: flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	-webkit-align-items: center;
  	align-items: center;
}
section#spla .spla_tournament .flex_container > *,
section#spla .spla_stage .flex_container p {
  	background-color: rgba(255,255,255,.1);
	margin-bottom: .4em;
	text-align: center;
	padding: .5em 0;
}
section#spla .spla_stage .flex_container p {
  	border-radius: 0 0 .5em .5em;
}
section#spla .spla_tournament .flex_container > * p {
	width: 100%;
}
/*参加チーム*/
section#spla #spla_teams .flex_container div > p {
	font-size: .8em;
	text-align: center;
	padding: .6em 0;
	border-bottom: solid 1px rgba(255,255,255,.25);
}
section#spla #spla_teams .flex_container div > p:nth-child(-n+3) {
	border-top: solid 1px rgba(255,255,255,.25);
}
section#spla #spla_teams .flex_container:not(:last-child) {
	padding-bottom: 1.2em;
}
section#spla #spla_teams .flex_container div > p {
	float: left;
	width: 49%;
	margin-right: 2%;
}
section#spla #spla_teams .flex_container div > p:nth-child(odd) {
	margin-right: 0;
}
section#spla #spla_teams .flex_container div:after {
	content: '';
	display: block;
	clear: both;
}
/*大会結果*/
section#spla #sfv_result .flex_container > p {
	font-size: .8em;
	text-align: center;
	padding: .6em 0;
	border-bottom: solid 1px rgba(255,255,255,.25);
}
section#spla #spla_result .flex_container > p:last-child {
	margin-right: 0;
}
section#spla #spla_result .flex_container > p.no_border {
	border: none;
}
section#spla #spla_result .spla_result_final .place1 {

}
section#spla #spla_result .spla_result_final .place1 h4 {
	padding-top: 0;
}
section#spla #spla_result .spla_result_final .place2 {
	max-width: 28em;
	margin: 0 auto;
}
section#spla #spla_result .spla_result_final .place3 .flex_container > div {
	max-width: 24em;
	margin: 0 auto;
}
section#spla #spla_result .spla_result_final p {
	padding-top: .6em;
	text-align: center;
	color: #fff;
	font-size: 1em;
	font-weight: 600;
	border: none;
}
@media screen and (min-width:813px) {
	section#spla {
		background-size: 120%;
		background-size: calc( 95% + 250px );
	}
	section#spla #spla_rule .image {
		width: 50%;
		margin: auto;
	}
	section#spla #spla_prize h4 {
		padding-top: 0;
	}
	section#spla .spla_tournament .flex_container > * {
		margin-right: .4em;
		height: 9em;
	}
	section#spla .spla_stage .flex_container > *  {
		margin-right: 1em;
	}
	section#spla .spla_tournament .flex_container > *:first-child {
		border-radius: 0 0 0 .5em;
	}
	section#spla .spla_tournament .flex_container > *:last-child {
		border-radius: 0 0 .5em 0;
	}
	section#spla .spla_tournament .flex_container > *:last-child,
	section#spla .spla_stage .flex_container > *:last-child {
		margin-right: 0;
	}
	/*参加チーム*/
	section#spla #spla_teams .flex_container > *:not(:last-child) {
		margin-right: 3em;
		margin-right: calc( 1.8em + 2.4vw );
	}
	/**/
	section#spla #spla_result .spla_result_final .place3 {
		max-width: 60em;
		margin: 0 auto;
	}
}
@media screen and (max-width:812px) {
	section#spla {
		background-size: 160%;
		background-size: calc( 95% + 250px );
	}
	section#spla #spla_prize .flex_container section:first-child h4 {
		padding-top: 0;
	}

	section#spla .spla_tournament .flex_container > *:last-child {
		border-radius: 0 0 .5em .5em;
	}
	section#spla .spla_stage .flex_container > * {
		float: left;
		width: 49%;
	}
	section#spla .spla_stage .flex_container > *:nth-child(2n+1) {
		margin-right: 2%;
	}
	section#spla .spla_stage .flex_container > *:nth-child(-n+2) {
		padding-bottom: .5em;
	}
	section#spla .spla_stage .flex_container > *:nth-last-child(2) {
		padding-bottom: 0;
	}
	section#spla .spla_stage .flex_container:after {
		content: '';
		display: block;
		clear: both;
	}
}