/*
================================================================================================================
大会について
================================================================================================================
*/
/*参戦チーム*/
.section#about .team{display:flex; color:#fff; align-items:center; margin:5px auto; padding:10px 0;}
.section#about .team > p{font-family:'Noto Sans JP', sans-serif; font-weight:700; font-size:15px; text-shadow:0 0 10px rgba(0,0,0,.5),2px 2px 0 rgba(0,0,0,.5),1px 1px 0 rgba(0,0,0,.5);}

.section#about .team > p:first-child{width:30%; text-align:center;}
.section#about .team > p:nth-child(2){width:70%; padding-left:10px;}
.section#about .team > p:nth-child(2) span{display:block; font-size:22px; margin:5px 0;}
.section#about .team > p:nth-child(2) span:first-child{font-size:12px; font-weight:400;}
.section#about .team > p:nth-child(2) span:nth-child(2){font-size:22px; font-weight:900;}
.section#about .team > p img{width:100%;}

@media screen and (max-width:800px){
.section#about .team > p:first-child{width:40%;}
.section#about .team > p:nth-child(2){width:60%}}
@media screen and (max-width:700px){
.section#about .team{flex-wrap:wrap;}
.section#about .team > p:first-child,
.section#about .team > p:nth-child(2){width:100%; text-align:center; padding:0;}
.section#about .team > p img{max-width:220px;}}
@media screen and (max-width:550px){
.section#about .team > p{font-size:14px;}
.section#about .team > p span:nth-child(2){font-size:20px;}}

/*歴代優勝チーム*/
.section#about #champion > ul{color:#000; background:#fff; text-align:center;}
.section#about #champion > ul + ul{margin-top:30px;}
.section#about #champion > ul > li:nth-child(1){padding:20px;}
.section#about #champion > ul > li:nth-child(1) a img{width:100%; max-width:500px; transition:all .3s ease}
.section#about #champion > ul > li:nth-child(1) a:hover img{opacity:.7;}
.section#about #champion > ul > li:nth-child(2){display:flex;}
.section#about #champion > ul > li:nth-child(2) img{width:60%; max-width:240px;}

.section#about #champion > ul > li > div{padding:10px;}
.section#about #champion > ul > li > div span{display:inline-block; color:#fff; background:#000; border-radius:10px; padding:0 20px;}
.section#about #champion > ul > li > div p{margin-top:10px;}

@media screen and (min-width:871px){.section#about #champion > ul > li > div{flex:1;}}
@media screen and (max-width:870px){
.section#about #champion > ul > li:nth-child(2){flex-wrap:wrap;}
.section#about #champion > ul > li > div{width:100%;}}

/*
================================================================================================================
大会ルール-見出し
================================================================================================================
*/
.section#regulation strong{font-size:20px; font-weight:800;}
.section#regulation b,
.section#regulation em{display:block; color:#fff; font-size:16px; font-weight:600; margin:20px auto 5px 0;}
@media screen and (max-width:480px){
.section#regulation strong{font-size:18px;}
.section#regulation b,.section#regulation em{font-size:14px;}}

.section#regulation .cat > b span,
.section#regulation em span{display:inline-block; border-radius:10px; padding:3px 20px;}
@media screen and (max-width:480px){
.section#regulation .cat > b span,
.section#regulation em span{display:block; width:100%; text-align:center;}}

/*見出し-大*/
.section#regulation .cat > strong.title-sub{
display:block;
border-bottom:1px solid #fe5a72;
padding:0 0 2px 0;
margin:30px auto 5px;}
.section#regulation .cat > strong.title-sub:first-of-type{margin:0 auto 5px;}
.section#regulation .cat > strong.title-sub > span{display:inline !important; font-size:12px;}

/*見出し-小*/
.section#regulation .cat > b span{background:#3971ef;}
.section#regulation .cat b + dl{margin:5px auto 10px 0 !important;}

/*見出し-小*/
.section#regulation em span{background:#fe5a72;}
.section#regulation em + dl.point{margin:5px auto 10px 0 !important;}

/*
================================================================================================================
大会ルール-表
================================================================================================================
*/
.section#regulation dl,
.section#regulation ul.table,
.section#regulation ul.theme,
.section#regulation ul.battle{display:flex; width:100%; font-size:13px; font-family:'Noto Sans JP', sans-serif; font-weight:700; flex-wrap:wrap;}

.section#regulation .cat dl,
.section#regulation ul.table,
.section#regulation ul.theme,
.section#regulation ul.battle{color:#fff; background:#000;}

.section#regulation ul.ast.small{line-height:150% !important;}

@media screen and (max-width:480px){
.section#regulation dl,
.section#regulation ul.table,
.section#regulation ul.theme,
.section#regulation ul.battle{font-size:12px;}}

/*
========================
試合ステージ説明
=========================
*/
.section#regulation > dl{color:#fff; border:1px solid #333; border-bottom:none;}
.section#regulation > dl dt{width:150px; background:rgba(57,113,239,.8); border-bottom:1px solid #333;}
.section#regulation > dl dd{width:calc(100% - 150px); color:#222; background:rgba(255,255,255,.95); border-bottom:1px solid #333;}
.section#regulation > dl dt + dd{border-left:1px solid #333;}
.section#regulation > dl > * > p{display:flex; height:100%; align-items:center;}

@media screen and (min-width:641px){
.section#regulation > dl dt,
.section#regulation > dl dd{padding:10px;}}

@media screen and (max-width:640px){
.section#regulation > dl dt,
.section#regulation > dl dd{width:100%; padding:5px 10px;}
.section#regulation > dl dt + dd{border-left:none;}}

/*
========================
汎用
========================
*/
.section#regulation .cat dl{max-width:600px; color:#fff; border:1px solid #999; border-bottom:none; margin:5px auto 10px 0;}
.section#regulation .cat dl > *{padding:5px 10px;}
.section#regulation .cat dl dt{width:150px; border-bottom:1px solid #999;}
.section#regulation .cat dl dd{width:calc(100% - 150px); background:#444; border-bottom:1px solid #999;}
.section#regulation .cat dl > * > p{display:flex; height:100%; align-items:center;}
.section#regulation .cat dl dt + dd{border-left:1px solid #999;}

.section#regulation .cat dl.point:not(.long){max-width:320px;}
.section#regulation .cat dl.point{margin:20px auto 20px 0;}
.section#regulation .cat dl.point > *{display:block; text-align:center;}
.section#regulation .cat dl.point > * > p{text-align:center; justify-content:center;}
@media screen and (max-width:690px){
.section#regulation .cat dl:not(.point) > *{width:100% !important;}
.section#regulation .cat dl:not(.point) dt + dd{border-left:none;}}
@media screen and (max-width:640px){
.section#regulation .cat dl.point{max-width:none;}
.section#regulation .cat dl.point > *{width:50% !important;}}
@media screen and (max-width:480px){
.section#regulation .cat dl.point.long dt{width:100px !important;}
.section#regulation .cat dl.point.long dd{width:calc(100% - 100px) !important;}}

/*各対戦説明*/
ul.battle{display:flex; max-width:320px; flex-wrap:wrap; border:1px solid #999; border-bottom:none; margin:20px auto 20px 0;}
ul.battle li{border-bottom:1px solid #999;}
ul.battle li:nth-child(3n - 2){width:100px;}
ul.battle li:nth-child(3n - 1){width:calc(100% - 180px ); border-left:1px solid #999; border-right:1px solid #999;}
ul.battle li:nth-child(3n){width:80px;}
ul.battle li p{display:flex; width:100%; height:100%; text-align:center; padding:5px 0; align-items:center; justify-content:center;}
ul.battle li:not(:nth-child(3n - 2)) p{background:#444;}
@media screen and (max-width:640px){ul.battle{max-width:unset;}}
@media screen and (min-width:421px) and (max-width:640px){
ul.battle li{width:calc(100% / 3) !important;}}

/*
========================
DDR
========================
*/
.ddr#regulation ul.table{display:flex; border:1px solid #999; border-top:none; margin:5px auto 5px 0;}
.ddr#regulation ul.table li{width:50%; border-top:1px solid #999; padding:5px 0;}
.ddr#regulation ul.table li:nth-child(odd){border-right:1px solid #999;}
.ddr#regulation ul.table li:nth-child(odd) span{font-weight:normal !important;}
.ddr#regulation ul.table li:nth-child(even){background:rgba(255,255,255,.3);}
.ddr#regulation ul.table.theme li{display:flex; align-items:center; padding:5px;}
.ddr#regulation ul.table.theme li:nth-child(odd){width:170px; text-align:center; justify-content:center;}
.ddr#regulation ul.table.theme li:nth-child(even){width:calc(100% - 170px); justify-content:flex-start;}

.ddr#regulation .multi{
display:block;
width:100%;
font-size:40px;
line-height:40px !important;
text-align:center;
margin:10px auto 15px 0;
justify-content:center;
align-items:center;}

@media screen and (max-width:800px){.ddr#regulation ul.table.theme li:nth-child(even){text-align:left;}}
@media screen and (min-width:481px){
.ddr#regulation ul.table{max-width:300px;}
.ddr#regulation ul.table.theme{max-width:unset;}
.ddr#regulation .multi{max-width:540px;}}
@media screen and (max-width:480px){
.ddr#regulation ul.table.theme li{width:100% !important;}
.ddr#regulation ul.table.theme li:nth-child(odd){border-right:none;}}