@CHARSET "utf-8";

h2 {
	font-size: 1.20em;
}

h3 {
	font-size: 1.10em;
}

footer {
	width: 100%;
	position: absolute;
	bottom: 0;
}

.wrapper {
	min-height: 98vh;
	min-width: 250px;
	position: relative; /*←相対位置*/
	padding-bottom: 30px; /*←footerの高さ*/
	box-sizing: border-box; /*←全て含めてmin-height:100vhに*/
}

.back {
	margin-left: 20px;
}

#page-top {
	display: none;
}

/* 混雑状況表示 */
.statusIcon {
	width: 50px;
	height: 50px;
}

.statusText {
	display: block;
}

.searchBar {
	margin-bottom: 80px;
}

.updateLink {
	margin-left: 30px;
}

/* 本部メニュー */
div.menu {
	border: 1px solid #000;
}

div.adjustment {
	margin-left: -20px;
}

/* レスポンシブテーブル */
.responsiveTable {
	width: 80%;
	border: none;
	padding: 0px;
	margin-top: -20px;
}

.responsiveTable .thead {
	visibility: hidden;
	/*    display: none;*/
}

.responsiveTable thead {
	display: none;
	margin-top: 20px;
}

.responsiveTable tr, .responsiveTable td {
	display: block;
	width: 100%;
	position: relative;
	padding: 0px;
}

.responsiveTable td:first-child:before {
	background: #f4e3fb;
	box-sizing: border-box;
	font-weight: bold;
	height: 42px;
	line-height: 40px;
	position: absolute;
	top: -41px;
	left: -0.3%;
	display: block;
	width: 100.8%;
	border: 1px solid black;
	margin-top: 0px;
	padding-left: 10px;
	font-size: 14px;
	text-align: center;
	white-space: nowrap;
	overflow: hidden;
}

.responsiveTable tr {
	margin-bottom: 40px;
	border: none;
}

.responsiveTable tr:last-child {
	margin-bottom: 5px;
}

.responsiveTable td {
	border: none;
	border-bottom: 1px solid black;
	border-left: 1px solid black;
	border-right: 1px solid black;
	padding: 10px;
}

.inputTable {
	box-sizing: border-box;
	border-collapse: collapse;
	width: 80%;
}

.inputTable th {
	border: none;
	text-align: center;
	padding: 4px 12px;
	display: block;
	width: auto;
	box-sizing: border-box;
}

.inputTable td {
	border: none;
	border-top: 1px solid #000;
	padding: 4px 12px;
	display: block;
	width: auto;
	box-sizing: border-box;
}

table.congestionHistory td:first-child:before {
	content: "更新時刻／混雑状況／備考／更新ユーザー";
	font-size: 3vw;
}

table.congestion td:first-child:before {
	content: "混雑状況／備考";
	font-size: 3vw;
}

table.congestionList td:first-child:before {
	content: "投票所名称／混雑状況／備考／更新時刻／更新ユーザー";
	font-size: 3vw;
}

div.indexList>table.congestionList td:first-child:before {
	content: "投票所名称／混雑状況／備考／更新時刻";
	font-size: 3vw;
}

table.contactTable td:first-child:before {
	content: "No.／操作／タイトル／詳細／通知・非通知";
	font-size: 3vw;
}

table.congestionList td.pollingPlaceName {
	text-align: center;
}

/* 混雑状況登録 */
table.congestion input[type="radio"] {
	position: relative;
	left: -75px;
	top: 25px;
}

table.congestion label {
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	height: 100%;
	display: block;
}

table.congestion .radio {
	width: 50px;
	height: 50px;
}

table.congestion .textarea {
	width: 99%;
}

table.congestionHistory td.memo {
	word-break: break-all;
}

ul.ks-cboxtags {
	list-style: none;
}

ul.ks-cboxtags li {
	list-style: none;
}

.searchBar {
	height: 35px;
}

.searchBar a.reload {
	display: none;
}

.searchBar #reload {
	position: relative;
	top: 20px;
}

/* 連絡事項 */
h2.noticeTitle {
	margin-top: 10px;
	margin-bottom: 5px;
}

table.contactTable {
	margin-top: 50px;
}

/* 連絡項目追加 */
table.inputTable .inputTitle {
	width: 98%;
	box-sizing: border-box;
}

table.inputTable .detail {
	width: 100%;
}

.topButton input[type="submit"] {
	margin-left: 20px;
}