@charset "utf-8";

/* ========================================================
	大会スケジュール
======================================================== */

.column_side {
	text-align: center;
	line-height: 1.5;
}
.column_side dl + dl {
	margin-top: 50px;
}
.column_side dt {
	padding: 15px 0;
	background-color: #b3b3b3;
	color: #fff;
	font-weight: bold;
	font-size: 2rem;
}
.column_side li a {
	display: block;
	padding: 18px 0;
	border-bottom: 1px solid #ededed;
	font-weight: bold;
	font-size: 1.6rem;
	text-decoration: none;
}
.column_side li a.current {
	background-color: #f4f4f4;
}

.column_side .calender {
	margin-top: 70px;
	padding: 20px 5px;
	border: 1px solid #ededed;
}
.column_side .calender + .calender {
	margin-top: 10px;
}
.column_side .calender table {
	width: 100%;
	table-layout: fixed;
	font-weight: bold;
	line-height: 1.5;
}
.column_side .calender table caption {
	text-align: center;
	font-weight: bold;
}
.column_side .calender table caption > span {
	display: block;
	width: 110px;
	margin: 0 auto 20px;
	padding-bottom: 10px;
	border-bottom: 3px solid #ffa423;
}
.column_side .calender table th,
.column_side .calender table td {
	padding: 2px;
	font-weight: bold;
	text-align: center;
}
.column_side .calender table td a {
	display: block;
	width: 26px;
	line-height: 26px;
	margin: auto;
	border-radius: 100%;
	text-decoration: none;
	text-align: center;
}
.column_side .calender table td a[href] {
	background-color: #ffa423;
	color: #fff;
}
.column_side .calender table td a.past {
	opacity: .2;
}
@media screen and (min-width: 769px), print {
	.column_main {
		float: left;
		width: 670px;
	}
	.column_side {
		float: right;
		width: 280px;
	}
	.column_side li a:hover {
		background-color: #f4f4f4;
		text-decoration: underline;
	}
}
@media screen and (max-width: 768px) {
	.column_side {
		margin-top: 40px;
	}
	.column_side dl + dl {
		margin-top: 25px;
	}
	.column_side dt {
		padding: 10px 0;
		font-size: 1.8rem;
	}
	.column_side li a {
		padding: 15px 0;
		font-size: 1.3rem;
	}

	.column_side .calender {
		margin-top: 35px;
		font-size: 1.5rem;
	}
	.column_side .calender table th,
	.column_side .calender table td {
		padding: 5px 0px;
	}
}



/* tournament_main
============================================================================================================ */
.tournament_main .shop_name {
	margin-bottom: 40px;
	padding-bottom: 20px;
	border-bottom: 5px solid #e6e6e6;
	font-size: 3.2rem;
	line-height: 1.5;
}
.tournament_main section + section {
	margin-top: 50px;
	padding-top: 50px;
	border-top: 1px solid #e5e5e5;
}
.tournament_main section header {
	position: relative;
	margin-bottom: 30px;
	font-weight: bold;
	line-height: 1.6;
}
.tournament_main section header .cat {
	margin-bottom: 10px;
	font-weight: bold;
	color: #979797;
}
.tournament_main section header h1 {
	padding-right: 120px;
	font-size: 3.2rem;
	line-height: 1.5;
}
.tournament_main section header .shop {
	position: absolute;
	right: 0;
	top: 0;
	padding: 2px 10px;
	min-width: 110px;
	background-color: #b3b3b3;
	text-align: center;
	font-size: 1.3rem;
	color: #fff;
}
.tournament_main section .column_ph {
	margin-top: 40px;
	text-align: center;
}
.tournament_main section .column_ph img {
	max-width: 100%;
	height: auto;
}
.tournament_main section .comment {
	margin-top: 20px;
}
@media screen and (min-width: 769px), print {
	.tournament_main section .column_ph {
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		justify-content: space-between;
	}
	.tournament_main section .column_ph > * {
		width: 320px;
	}
}
@media screen and (max-width: 768px) {
	.tournament_main .shop_name {
		margin-bottom: 25px;
		padding-bottom: 15px;
		border-bottom-width: 3px;
		font-size: 2.2rem;
	}
	.tournament_main section + section {
		margin-top: 30px;
		padding-top: 30px;
	}
	.tournament_main section header {
		margin-bottom: 20px;
	}
	.tournament_main section header .cat {
		margin-right: 90px;
		margin-bottom: 5px;
	}
	.tournament_main section header h1 {
		padding-right: 100px;
		font-size: 2.2rem;
	}
	.tournament_main section header .shop {
		min-width: 90px;
		font-size: 1.1rem;
	}
	.tournament_main section .column_ph {
		margin-top: 20px;
	}
	.tournament_main section .column_ph li {
		margin-top: 15px;
	}
	.tournament_main section .comment {
		margin-top: 15px;
	}
	.info_table > dl > dt > * {
		padding: 2px 0;
		line-height: 1.3;
	}
}

/* result_contents
============================================================================================================ */
.result_contents {
	margin-top: 40px;
	line-height: 1.8;
}
.result_contents .table_title {
	margin-top: 20px;
	margin-bottom: -15px;
	font-weight: bold;
}
.result_contents table {
	margin-top: 20px;
	width: 100%;
	table-layout: fixed;
	line-height: 1.5;
}
.result_contents table th,
.result_contents table td {
	padding: 10px;
	border: 1px solid #ededed;
	text-align: center;
}
.result_contents table th {
	font-weight: bold;
}
.result_contents table thead tr > * {
	background-color: #f5f5f5;
}
.result_contents table thead tr > *:first-child:empty {
	width: 20%;
}
.result_contents table tbody tr > * {
	font-size: 1.4rem;
}
.result_contents table tbody th {
	background-color: #b3b3b3;
	color: #fff;
}
.result_contents table tbody th.orange {
	background-color: #ffa423;
}
.result_contents table tbody th.black {
	background-color: #313131;
}
.result_contents .ph {
	margin-top: 20px;
}
.result_contents .ph img {
	max-width: 100%;
	height: auto;
}
.result_contents .btn {
	margin-top: 20px;
}

@media screen and (max-width: 768px) {
	.result_contents {
		margin-top: 20px;
	}
	.result_contents table th,
	.result_contents table td {
		padding: 5px;
	}
	.result_contents table thead tr > *:first-child:empty {
		width: 25%;
	}
	.result_contents table tbody tr > * {
		font-size: 1.2rem;
	}
}