@charset "UTF-8";

/*****************************************
			Calendar List
*****************************************/
#calList {
	width: 960px;
	margin: 10px auto;
	overflow: hidden;
	list-style: none;
	letter-spacing: -0.4em;
}
#calList li {
	background: url(../img/parts/list_point02.png) 8px 12px no-repeat #FFF;
	margin: 0 5px 5px 0;
	padding: 2px 6px 2px 20px;
	letter-spacing: normal;
	display: inline-block;
	border: solid 2px #CCC;
}
#calDesc {
	width: 960px;
	margin: 10px auto;
	overflow: hidden;
}
#calDesc p {
	margin: 0 0 5px 0;
}
#calDesc form input {
	cursor: pointer;
}
#calDesc form span {
	margin: 0 5px;
}
#calYMBox {
	float: left;
	_display: inline;
	line-height: 26px;
}
#calChangeBox {
	float: right;
}
#btn_calchange {
	background: url(../img/parts/btn_cal_change.png) 0 50% no-repeat;
	background-color: #007F5F;
	display: block;
	padding: 0 0 0 40px;
	width: 220px;
	height: 32px;
	line-height: 32px;
	border: none;
	border-radius: 4px;
	color: #FFF;
	font-weight: bold;
	text-align: left;
	transition: 0.3s;
}
#btn_calchange:hover {
	opacity: 0.7;
}
.holiday {
	color: #C33E44;
}
/*****************************************
			Calendar 
*****************************************/
#calendarAll {
	width: 958px;
	margin: 0 auto 20px auto;
	border: solid 1px #CCC;
	overflow: hidden;
}
#calendarAll dl {
	margin: -1px 0 0 0;
	overflow: hidden;
}
#calendarAll dl dt {
	margin: 0 0 -995px 0;
	padding: 10px 10px 1005px 10px;
	width: 120px;
	border-top: dotted 1px #CCC;
	float: left;
}
#calendarAll dl dd {
	margin: 0 0 -995px 140px;
	padding: 10px 10px 1005px 10px;
	border-top: dotted 1px #CCC;
	border-left: solid 1px #CCC;
}
/*****************************************
			7th Days Calendar
*****************************************/
#calendar7th {
	width: 960px;
	margin: 0 auto 20px auto;
}
#calendar7th table {
	background: #FFF;
	width: 100%;
	table-layout: fixed;
	border: solid 1px #CCC;
}
#calendar7th table th,
#calendar7th table td {
	vertical-align: top;
	padding: 5px;
}
#calendar7th table thead th {
	background: #FFFAE2;
	text-align: center;
	border-bottom: solid 1px #CCC;
	border-left: solid 1px #CCC;
}
#calendar7th table tbody td {
	border-left: solid 1px #CCC;
	border-bottom: dotted 1px #CCC;
}
#calendar7th table tbody td dl dt {
	width: 3em;
	text-align: center;
	display: inline-block;
	margin: 0 0 5px 0;
	background: #FFFAE2;
}
#calendar7th table tbody td.sun dl dt,
#calendar7th table tbody td.national dl dt {
	background: #FFDFE3;
}
#calendar7th table tbody td.sat dl dt {
	background: #ACD5E9;
}
/*****************************************
		Calendar Global Style
*****************************************/
#calendarAll dl.sun dt,
#calendarAll dl.national dt,
#calendar7th th.sun,
#calendar7th th.national { background: #FFDFE3; }
#calendarAll dl.sat dt,
#calendar7th th.sat { background: #ACD5E9; }
#calendarAll dl.today,
#calendar7th table tbody td.today { background: #FFEFCE; }
#calendarAll dl dd ul,
#calendar7th table tbody td dl dd ul {
	margin: 0;
	padding: 0 !important;
	list-style: none;
	overflow: hidden;
}
#calendarAll dl dd ul li,
#calendar7th table tbody td dl dd ul li {
	margin: -1px 0 5px 0;
	border-top: dotted 1px #CCC;
}
#calendarAll dl dd ul li.list_default,
#calendar7th table tbody td dl dd ul li.list_default {
	padding: 5px 5px 0 18px;
	background: url(../img/parts/list_point02.png) 6px 14px no-repeat;
}
#calendarAll dl dd ul li.list_icon,
#calendar7th table tbody td dl dd ul li.list_icon {
	padding: 5px 5px 0 18px;
	text-indent: -18px;
}
#calendarAll dl dd ul li.list_icon img,
#calendar7th table tbody td dl dd ul li.list_icon img {
	margin: 0 2px 0 0;
	vertical-align: middle;
}
/*****************************************
			Calendar Detail 
*****************************************/
#calText {
	width: 960px;
	margin: 20px auto;
	padding: 6px 4px 4px 28px;
	border: solid 2px #DDD;
	background: url(../img/parts/list_point01.png) 8px 11px no-repeat;
	box-sizing: border-box;
}
.border {
	height: 0;
	border: none;
	border-top: dotted 2px #000;
	margin: 35px 0;
}
/*****************************************
			List Index Question
*****************************************/
#listIndexQA {
	width: 960px;
	margin: 0 auto 20px auto;
	overflow: hidden;
	position: relative;
	z-index: 1000;
}
#listIndexQA dl {
	margin: 0 4px;
	padding: 5px 0;
	border-bottom: dotted 1px #999;
}
#listIndexQA dl dt {
	padding: 5px 5px 5px 42px;
	background: url(../img/faq/icon_q.png) 4px 2px no-repeat;
}
#listIndexQA dl dd {
	padding: 5px 5px 5px 42px;
	background: url(../img/faq/icon_a.png) 4px 2px no-repeat;
}
/*****************************************
			FAQ Detail Page
*****************************************/
#faqQ { margin: 0 0 15px 0;}
#faqQ dt {
	margin: 0 0 5px 0;
	padding: 0 0 0 42px;
	line-height: 40px;
	border: 2px solid #005DA9;
	border-radius: 4px;
	color: #000;
	font-size: 115%;
	font-weight: bold;
	background: url(../img/faq/icon_q.png) 5px 5px no-repeat;
}
#faqA dt {
	margin: 15px 0 5px 0;
	padding: 0 0 0 42px;
	line-height: 40px;
	border: 2px solid #0C6B1E;
	border-radius: 4px;
	color: #000;
	font-size: 115%;
	font-weight: bold;
	background: url(../img/faq/icon_a.png) 5px 5px no-repeat;
}
/*****************************************
				Mail Form
*****************************************/
#mailform dl {
	margin: -1px 0 0 0;
	padding: 10px;
	border: solid 1px #CCC;
	border-left: solid 3px #CCC;
	overflow: hidden;
	_height: 1%;
}
#mailform dl.req {
	border-left: solid 3px #D90000;
}
#mailform dl dt {
	width: 30%;
	float: left;
	_display: inline;
}
#mailform dl dt span {
	margin: 10px 15px 0 0;
	padding: 10px;
	display: block;
	border: dotted 1px #CCC;
}
#mailform dl.req dt strong {
	margin: 0 0 0 5px;
	color: #D90000;
	font-weight: normal;
}
#mailform dl dd {
	width: 70%;
	float: left;
	_display: inline;
}
#mailform dl dd p {
	margin: 15px 0 0 0;
	padding: 10px;
	border: dotted 1px #CCC;
}
#mailform input,
#mailform textarea,
#mailform select {
	font-size: 100%;
}
#mailform input[type="text"],
#mailform textarea {
	width: 100%;
	padding: 8px;
	box-sizing: border-box;
	border: none;
	border: 1px solid #666;
}
#mailform select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: url(../img/parts/select_arw.png) 100% 50% no-repeat;
	background-size: 16px auto;
	background-color: #FFF;
	color: #333;
	padding: 5px 22px 5px 8px;
	box-sizing: border-box;
	border: none;
	border: 1px solid #666;
}
#mailform input#field_email[type="text"],
#mailform input#field_email_conf[type="text"] {
	width: calc(100% - 5em);
}
#mailform input:focus,
#mailform textarea:focus {
	background: #FFD;
}
#mailform dl dd label {
	margin: 0 10px 0 5px;	
}
.mailformSubmitGroup {
	margin: 15px 0;
	text-align: center;
}
#mailform .fieldgroup span {
	display: block;
	margin: 5px 0;
	position: relative;
}
#mailform .fieldgroup span input {
	position: absolute;
	top: 0;
	opacity: 0;
	width: 100%;
	height: 100%;
}
#mailform .fieldgroup span input[type="checkbox"] + label {
	display: block;
	background: url(../img/parts/checkbox_off.png) 0 50% no-repeat;
	background-size: 14px auto;
	padding: 0 0 0 18px;
	font-weight: normal !important;
}
#mailform .fieldgroup span input[type="checkbox"]:checked + label {
	background: url(../img/parts/checkbox_on.png) 0 50% no-repeat;
	background-size: 14px auto;
}
#mailform .fieldgroup span input[type="radio"] + label {
	display: block;
	background: url(../img/parts/radio_box_off.png) 0 50% no-repeat;
	background-size: 14px auto;
	padding: 0 0 0 18px;
	font-weight: normal !important;
}
#mailform .fieldgroup span input[type="radio"]:checked + label {
	background: url(../img/parts/radio_box_on.png) 0 50% no-repeat;
	background-size: 14px auto;
}
.btnMailformSend, 
.btnMailformBack,
.btnMailformReset {
	-webkit-appearance: none;
	display: block;
	width: 200px;
	height: 50px;
	border: 0;
	border-radius: 5px;
	cursor: pointer;
}
.btnMailformSend {
	margin: 0 auto;
	background: #C03;
	border: solid 1px #123456;
	color: #FFF;
}
.btnMailformSend:hover { background: #DC0101; }
.btnMailformBack {
	margin: 0 auto;
	border: solid 1px #000;
	background: #333;
	color: #FFF;
}
.btnMailformBack:hover { background: #555; }
.btnMailformReset {
	margin: 15px auto 0 auto;
	background: #EEE;
	border: solid 1px #CCC;
	color: #333;
}
.btnMailformReset:hover { background: #DDD; }
#field_email {
	margin: 0 0 5px 0;
}
/*****************************************
			Google Maps View
*****************************************/
#mainMap {
	width: 960px;
	margin: 0 auto 10px auto;
	overflow: hidden;
	position: relative;
	z-index: 1000;
}
#mainMap p {
	margin: 0 0 10px 0;
}
#mapCategory {
	margin: 10px 0 5px 0;
}
#mapCategory ul {
	margin: 0;
	padding: 0;
	list-style: none;
	letter-spacing: -0.4em;
}
#mapCategory ul li {
	background: url(../img/parts/list_point02.png) 8px 12px no-repeat #FFF;
	margin: 0 5px 5px 0;
	padding: 2px 6px 2px 20px;
	letter-spacing: normal;
	display: inline-block;
	border: solid 2px #CCC;
}
#mapList {
	background: #FFF;
	border: solid 2px #CCC;
	padding: 5px 10px;
}
#mapList ul {
	margin: 0;
	padding: 0;
	list-style: none;
	letter-spacing: -0.4em;
}
#mapList ul li {
	margin: 0 15px 0 0;
	padding: 0 0 0 12px;
	background: url(../img/parts/list_point02.png) 0 50% no-repeat;
	letter-spacing: normal;
	display: inline-block;
}
#contentsMap {
	margin: 15px 0;
	overflow: hidden;
}
#mapCanvas {
	margin: 0 0 0 10px;
	padding: 1px;
	width: 70%;
	height: 500px;
	float: right;
	border: solid 1px #DDD;
}
#mapNav {
	overflow: hidden;
	line-height: 1.41;
}
#mapNav h2 {
	line-height: 48px;
	padding: 0 0 0 8px;
	background: #005FA7;
	border: solid 1px #004F97;
	font-weight: bold;
	color: #FFF;
}
#mapNav ul {
	background: #FFF;
	margin: 0;
	padding: 0;
	max-height: 453px;
	border-bottom: solid 1px #005FA7;
	list-style: none;
	overflow: auto;
}
#mapNav ul li {
	margin: 0;
	padding: 0;
	border-right: solid 1px #005FA7;
	border-top: dotted 1px #005FA7;
}
#mapNav ul li:first-child {
	border-top: none;
}
#mapNav ul li a {
	display: block;
	padding: 10px;
	border-left: solid 5px #005FA7;
	text-decoration: none;
	color: #000;
	cursor: pointer;
}
#mapNav ul li a:hover {
	border-left: solid 5px #D00;
	color: #D00;
}
#mapNav ul li.select a {
	border-left: solid 5px #D00;
	background: #EEE;
	color: #D00;
}
#mapNav ul li.select a:hover {
	color: #D00;
}
/*****************************************
			Search Page
*****************************************/
.searchResponse dt {
	margin: 0 0 5px 0;
	padding: 5px 5px 5px 20px;
	background: url(../img/parts/list_point02.png) 8px 15px no-repeat #F2F2F2;
	font-size: 121%;
	overflow: hidden;
	_zoom: 1;
}
.searchResponse dt .doc_info {
	margin: 0 0 0 8px;
	font-size: 71%;
	vertical-align: text-top;
}
.searchResponse dt .doc_info img {
	margin: 0 5px 0 0;
	vertical-align: middle;
}
.searchResponse dt .update {
	margin: 4px 8px 0 0;
	font-size: 71%;
	float: right;
	_display: inline;
}
.searchResponse dd {
	margin: 0 0 15px 0;
	padding: 0 15px;
}
.searchResponse dd a {
	font-size: 93%;
	color: #268645;
}
.searchResponse dd a:hover { color: #C03; }
.highlight {
	background: #FF0;
	font-weight: bold;
}
.backSearchList {
	margin: 0 0 15px 0;
}
.backSearchList .submit {
	display: block;
	margin: 0 auto;
	width: 50%;
	padding: 8px;
	background: #666;
	border: solid 1px #555;
	letter-spacing: normal;
	font-size: 100%;
	color: #FFF;
	text-decoration: underline;
	cursor: pointer;
	border-radius: 4px;
	transition: 0.3s;
}
.backSearchList .submit:hover {
	background: #333;
}
/*****************************************
			Section List
*****************************************/
#sectionList {
	width: 100%;
}
#sectionList th,
#sectionList td {
	padding: 5px;
	border: solid 1px #999;
}
#sectionList thead th {
	background: #E8F4FC;
}
.th_part { width: 15%;}
.th_section { width: 20%;}
.th_detail { width: 53%;}
.th_floor { width: 12%;}
/*****************************************
			Error Document
*****************************************/
#errorDocumentBox {
	width: 960px;
	margin: 20px auto;
}
#errorDocumentBoxInner {
	background: #FFF;
	padding: 15px;
	border: solid 2px #DDD;
}
/*****************************************
				Topics
*****************************************/
#topicsDetail {
	overflow: hidden;
}
#topicsDetail .date {
	margin: 0 0 10px 0;
	text-align: right;
}
#topicsDetail .photo {
	margin: 0 auto;
	width: 400px;
	float: left;
}
#topicsDetail .photo img {
	max-width: 100%;
	height: auto;
}
#topicsDetail .sentence {
	margin: 0 0 0 400px;
	padding: 5px 10px;
	font-size: 100%;
	line-height: 1.41;
}
/*****************************************
			Open Data
*****************************************/
#openDataCategory {
	width: 960px;
	margin: 0 0 0 -10px;
	padding: 10px 0 0 0;
	letter-spacing: -0.4em;
}
.openDataCategoryIndex {
	width: 172px;
	margin: 0 0 25px 0;
	padding: 0 10px;
	letter-spacing: normal;
	text-align: center;
	position: relative;
	display: inline-block;
	vertical-align: top;
}
.openDataIcon {
	width: 172px;
	margin: 0 0 8px 0;
	text-align: center;
}
.openDataIcon img {
	max-width: 100%;
	height: auto;
}
.openDataIcon a:hover {
	filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}
.openDataCount {
	width: 172px;
	line-height: 20px;
	position: absolute;
	top: 85px;
	left: 10px;
	font-size: 130%;
	font-weight: bold;
}
.openDataText {
	font-weight: bold;
}
.openDataFileExt {
	display: inline-block;
	margin: 0 10px 0 0;
	padding: 8px 12px;
	background: #039;
	border-radius: 50px;
	color: #FFF;
	font-size: 93%;
	letter-spacing: 0.1em;
	text-align: center;
	line-height: 1;
}
.openDataTable01 {
	width: 100% !important;
}
.openDataTable01 th {
	padding: 8px !important;
	width: 20% !important;
	background: #FFC !important;
	border: solid 1px #999 !important;
}
.openDataTable01 td {
	padding: 8px !important;
	border: solid 1px #999 !important;
}
.openDataTable02 {
	margin: 10px 0 !important;
	width: 100% !important;
}
.openDataTable02 th {
	padding: 8px !important;
	width: 20% !important;
	background: #EEE !important;
	border: solid 1px #999 !important;
}
.openDataTable02 td {
	padding: 8px !important;
	border: solid 1px #999 !important;
}
.btnBackHomeOpendata {
	margin: 15px 0;
	text-align: right;
}
.btnBackHomeOpendata a {
	display: inline-block;
	padding: 8px 20px;
	background: #520;
	border-radius: 5px;
	color: #FFF;
}
.btnBackHomeOpendata a:hover {
	background: #964;
}
.openDataSerachBox {
	margin: 20px -10px;
	padding: 12px 20px;
	background: #005FA7;
	border: solid 1px #003F87;
	border-radius: 5px;
}
.openDataSerachBox dl {
}
.openDataSerachBox dl dt {
	margin: 0 0 10px 0;
	padding: 0 0 5px 0;
	border-bottom: dotted 1px #FFF;
	font-size: 129%;
	font-weight: bold;
	text-align: center;
	color: #FFF;
}
.openDataSerachBox dl dd {
}
.openDataSerachBox dl dd label {
	margin: 0 5px 0 0;
	color: #FFF;
}
#od_keyword {
	padding: 0 8px;
	width: 653px;
	height: 35px;
	line-height: 35px;
	border: solid 2px #F2F2F2;
}
#btn_search_od_keyword {
	width: 100px;
	height: 39px;
	line-height: 39px;
	background: #F2F2F2;
	border: none;
	font-size: 100%;
	font-weight: bold;
	color: #000;
	cursor: pointer;
	transition: 0.3s;
}
#btn_search_od_keyword:hover {
	background: #FFB;
}
.openDataExtGroup {
	margin: 0 0 10px 0;
}
.openDataDate {
}
.openDataDate span {
	display: inline-block;
	margin: 0 5px 0 0;
	padding: 2px 5px;
	background: #FFC;
	border: solid 1px #CCC;
}
/*****************************************
				Hearing
*****************************************/
#hearingContents {
	width: 970px;
	overflow: hidden;
	letter-spacing: -0.4em;
}
.hearingContentsBox {
	width: 455px;
	margin: 0 30px 30px 0;
	display: inline-block;
	vertical-align: top;
	letter-spacing: normal;
}
.hearingContentsBox h3 {
	background: url("../img/title/title_point.png") 12px 22px no-repeat, url("../img/title/title_line.png") 0 100% repeat-x !important;
	padding: 10px 3px 10px 35px !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}
.hearingContentsBoxLong {
	width: 940px;
	margin: 0 0 30px 0;
	display: block;
	letter-spacing: normal;
	overflow: hidden;
}
.hearingForm {
	text-align: center;
}
.ranking_list {}
.ranking_list ul {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
}
.ranking_list ul li {
	background-position: 6px 8px !important;
	margin: 0 !important;
	padding: 4px 3px 4px 28px !important;
}
.ranking_list ul li.bg {
	background-color: #EEF !important;
}
.btn_hearinglist {
	display: block;
	margin: 10px auto;
	width: 260px;
	line-height: 40px;
	background: #2D75C4;
	color: #FFF !important;
	text-align: center;
	text-decoration: none;
	font-size: 115%;
	border-radius: 40px;
}
.btn_hearinglist:hover {
	background: #5DA5F4;
	color: #FF0 !important;
}
#hearingInq .btn_hearinglist {}
/*****************************************
			   Block List
*****************************************/
.block_list {
	width: 997px;
}
.block_list ul {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
	overflow: hidden;
	letter-spacing: -0.4em;
}
.block_list ul li {
	background: none !important;
	margin: 2px 12px 10px 0 !important;
	padding: 0 !important;
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	text-align: center;
	line-height: 1.5;
}
.block_list ul li a {
	display: table-cell;
	width: 126px;
	background: #2D75C4;
	padding: 0.25em 10px;
	color: #FFF;
	text-decoration: none;
	border-radius: 5px;
	height: 3em;
	vertical-align: middle;
	font-weight: bold;
}
.block_list ul li a:hover {
	background: #5DA5F4;
	color: #FF0;
}
/*****************************************
			  Block List 2
*****************************************/
.block_list2 {
	width: 997px;
}
.block_list2 ul {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
	overflow: hidden;
	letter-spacing: -0.4em;
}
.block_list2 ul li {
	background: none !important;
	margin: 2px 12px 10px 0 !important;
	padding: 0 !important;
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	text-align: center;
	line-height: 1.5;
}
.block_list2 ul li a {
	display: table-cell;
	background: #DDD;
	width: 126px;
	padding: 0.25em 10px;
	color: #000;
	text-decoration: none;
	border-radius: 5px;
	height: 3em;
	vertical-align: middle;
	font-weight: bold;
}
.block_list2 ul li a:hover {
	background: #333;
	color: #FFF;
}
/*****************************************
			Directory QA
*****************************************/
#dirQA ul {
	letter-spacing: -0.4em;
}
#dirQA ul li {
	display: inline-block;
	vertical-align: top;
	letter-spacing: normal;
	margin: 0 20px 5px 0;
	padding: 0;
	background-position: 0 7px;
}
#dirQA ul li a {
	display: block;
	padding: 0 0 0 18px;
}
/*****************************************
				FAQ
*****************************************/
#searchHead {
	margin: 0 0 15px 0;
}
#searchHead h2 {
	background: url(../img/parts/faq_serach.png) 10px 6px no-repeat #005DA9;
	color: #FFF;
	font-size: 150%;
	font-weight: bold;
	padding: 5px 5px 5px 50px;
	border: none;
	border-radius: 4px;
}
#searchHead form {
	margin: 10px;
	border: 1px solid #CCC;
	overflow: hidden;
}
#searchHead #field_search {
	background: none;
	width: 870px;
	height: 40px;
	padding: 0 0 0 10px;
	line-height: 40px;
	float: left;
}
#searchHead #btn_search {
	background: url("../img/parts/btn_search.png") 50% 50% no-repeat;
	width: 48px;
	height: 40px;
	float: right;
	position: relative;
	color: #000;
}
#searchHead #btn_search:hover {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}
/*****************************************
				Ranking
*****************************************/
#rankingQA {}
#rankingQA h2 {
	background: #005DA9;
	color: #FFF;
	font-size: 150%;
	font-weight: bold;
	padding: 5px 5px 5px 12px;
	border: none;
	border-radius: 4px;
}
#rankingQA dl {
	padding: 6px;
}
#rankingQA dl { color: #1B4474; }
#rankingQA dl dt {
	float: left;
	margin: 0 0 8px 0;
	text-align: center;
	width: 20px;
}
#rankingQA dl dd { margin: 0 0 8px 25px; }
#rankingQA dl dt.rank01 { background: url(../img/parts/icon_rank01.png) 50% 5px no-repeat; }
#rankingQA dl dt.rank02 { background: url(../img/parts/icon_rank02.png) 50% 5px no-repeat; }
#rankingQA dl dt.rank03 { background: url(../img/parts/icon_rank03.png) 50% 5px no-repeat; }