/*-----------------------------------
common
-----------------------------------*/
.cflex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
.nav ul {
	width: 95vw;
	margin: 0 auto 8vw;
}
.nav ul li {
	font-size: 5.2vw;
	list-style: none;
	margin: 1vw 6vw;
}
.nav ul li a {
	text-decoration: underline;
}

/*----------- ctable -----------*/
table.ctable {
	width: 100%;
    border-collapse: collapse;
	margin: 15vw auto 5vw;
	border-top: none;
}
table.ctable th,
table.ctable td {
	border-top: none;
	border-bottom: 1px dotted #524439;
	padding: 3vw 1vw;
    vertical-align: middle;
}
table.ctable th {
	text-align: center;
}
table.ctable th:before {
	content: none;
	padding: 0;
}
table.ctable td {
	border-left: 1px dotted #524439;
	border-right: 1px dotted #524439;
}
table.ctable tr:first-of-type th,
table.ctable tr:first-of-type td {
	border-top: none;
}
table.ctable tr th.row2 {
	border-bottom: none;
}

/* totop */
.totop {
	margin-bottom: 15px;
}
.totop a {
	display: block;
	text-align: right;
	text-decoration: underline;
}

/*-----------------------------------
common end
-----------------------------------*/


.compe_contents {
	width: 95vw;
	margin: 8vw auto;
	color: #231815;
	line-height: 1.5;
}

/* タイトル */
.compe_contents .ttl {
	width: 100%;
	font-size: 4.2vw;
	font-weight: normal;
	text-align: center;
	color: #fff;
	padding: .5vw;
	background: url(https://www.newkarumai.com/images/ttl_bg.gif);
	background-size: cover;
	margin: 20vw auto 3vw;
}


table.ctable.compe_m {
	display: block;
	width: 100%;
	overflow-x: scroll;
}
table.ctable.compe_m tr {
	width: 100%;
}

.compe_contents caption {
	width: 98vw;
	font-size: 4.8vw;
	font-weight: bold;
	color: #449D2F;
}

.compe_contents tr.ttl {
	width: 100%;
	height: auto;
    font-size: 4.2vw;
    background: url(https://www.newkarumai.com/images/ttl_bg.gif);
    background-size: cover;
    margin-bottom: 4vw;
}
.compe_contents table.compe_m tr.ttl th {
    font-size: 4.2vw;
    font-weight: normal;
    text-align: center;
    color: #fff;
    padding: 0;
}
.compe_contents table.compe_m td {
	font-size: 3.5vw;
}
.compe_contents table.compe_m tr.ttl th:last-of-type,
.compe_contents table.compe_m td:last-of-type {
	min-width: 45vw;
	border-right: 1px dotted #524439;
}
/* 日付箇所 */
.compe_contents table.compe_m tr.ttl th:first-of-type,
.compe_contents table.compe_m td.day {
	min-width: 15vw;
	text-align: center;
	line-height: 1.5;
	padding: 3vw 0;
}
.compe_contents table.compe_m td.day span.holiday {
	color: #c30d23;
}
/* コンペの名前 */
.compe_contents table.compe_m tr.ttl th:nth-of-type(2),
.compe_contents table.compe_m td.name {
	min-width: 35vw;
	text-align: center;
}

/* コンペ種類 */
.compe_contents table.compe_m tr.ttl th:nth-of-type(3),
.compe_contents table.compe_m td.howto {
	min-width: 30vw;
}
.compe_contents table.compe_m tr td.howto .cflex {
	justify-content: center;
}
span.sm_hall, span.sm_play, span.sm_rule {
	padding: 2vw;
	margin: .5vw 2vw;
	font-size: 3.5vw;
	color: #fff;
	border-radius: 5px;
}
span.sm_hall {
	background-color: #1E531B;
}
span.sm_play {
	background-color: #693923;
}
span.sm_rule {
	background-color: #67571C;
}


/* 注釈 */
.compe_contents .ttl p,
.compe_contents .ttl li,
table.ctable td {
	font-size:  4.2vw;
	line-height: 1.5;
}

