@charset "UTF-8";

/*****************************************
			Calendar List
*****************************************/
#calList {
	width: 1000px;
	margin: 10px auto;
	overflow: hidden;
	list-style: none;
	letter-spacing: -0.4em;
}
#calList li {
	background: url(../img/parts/list_point01.png) 7px 10px no-repeat;
	margin: 0 5px 5px 0;
	padding: 2px 8px 2px 25px;
	letter-spacing: normal;
	display: inline-block;
	border: solid 2px #CCC;
}
#calDesc {
	width: 1000px;
	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;
	line-height: 26px;
}
#calChangeBox {
	float: right;
}
#btn_calchange {
	background: url(../img/parts/btn_cal_change.png) 0 50% no-repeat;
	background-color: #0C27A0;
	display: block;
	padding: 0 0 0 40px;
	width: 220px;
	height: 32px;
	line-height: 32px;
	border: none;
	border-radius: 3px;
	color: #FFF;
	font-weight: bold;
	text-align: left;
}
#btn_calchange:hover {
	background-color: #2D71F0;
}
.holiday {
	color: #C33E44;
}
/*****************************************
			Calendar 
*****************************************/
#calendarAll {
	width: 998px;
	margin: 0 auto 20px auto;
	border: solid 1px #CCC;
	overflow: hidden;
	_zoom: 1;
}
#calendarAll dl {
	margin: -1px 0 0 0;
	overflow: hidden;
	_zoom: 1;
}
#calendarAll dl dt {
	margin: 0 0 -995px 0;
	padding: 10px 10px 1005px 10px;
	width: 120px;
	border-top: dotted 1px #CCC;
	float: left;
	_display: inline;
}
#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: 1000px;
	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;
	/display: inline;
	/zoom: 1;
	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;
	_zoom: 1;
}
#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_point01.png) 2px 12px 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: 970px;
	margin: 0 auto 20px auto;
	padding: 5px 4px 5px 26px;
	border: solid 1px #DDD;
	background: url(../img/parts/list_point01.png) 9px 12px no-repeat;
}
.border {
	height: 0;
	border: none;
	border-top: dotted 2px #000;
	margin: 35px 0;
}
/*****************************************
			Directory QA
*****************************************/
#dirQA ul {
	letter-spacing: -0.4em;
}
#dirQA ul li {
	display: inline-block;
	/display: inline;
	/zoom: 1;
	vertical-align: top;
	letter-spacing: normal;
	margin-right: 20px;
}
/*****************************************
			List Index Question
*****************************************/
#listIndexQA {
	width: 1000px;
	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 #009060;
	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 #09249F;
	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: inline-block;
	margin: 0 10px 0 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: 1000px;
	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_point01.png) 8px 9px no-repeat;
	margin: 0 5px 5px 0;
	padding: 2px 8px 2px 24px;
	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 0 0;
	overflow: hidden;
}
#mapCanvas {
	margin: 0 0 0 10px;
	padding: 1px;
	border: solid 1px #DDD;
}
#mapNav {
	overflow: hidden;
	line-height: 1.41;
}
#mapNav h2 {
	padding: 9px 0 7px 8px;
	background: #EEE;
	border: solid 1px #DDD;
	font-weight: bold;
	color: #000;
}
#mapNav ul {
	background: #FFF;
	margin: 0;
	padding: 0;
	list-style: none;
	border: solid 1px #DDD;
	border-top: none;
	overflow: auto;
}
#mapNav ul li {
	margin: 0;
	padding: 0;
	border-bottom: dotted 1px #DDD;
}
#mapNav ul li:last-of-type {
	border-bottom: none;
}
#mapNav ul li a {
	display: block;
	padding: 10px;
	border-left: solid 5px #DDD;
	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 #333;
	letter-spacing: normal;
	font-size: 100%;
	color: #FFF;
	text-decoration: underline;
	cursor: pointer;
}
.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: 1000px;
	margin: 10px auto;
}
#errorDocumentBoxInner {
	padding: 15px;
	border: solid 2px #DDD;
}
/*****************************************
				Idol
*****************************************/
#idolProfileBox {
	width: 1000px;
	margin: 0 auto;
	overflow: hidden;
	letter-spacing: -0.4em;
}
.idolProfileBlue,
.idolProfileGreen,
.idolProfilePink,
.idolProfileOrange {
	margin: 0 26px 50px 0;
	width: 145px;
	display: inline-block;
	/display: inline;
	/zoom: 1;
	letter-spacing: normal;
	vertical-align: top;
	overflow: hidden;
}
.idolProfileBlue:nth-child(6n),
.idolProfileGreen:nth-child(6n),
.idolProfilePink:nth-child(6n),
.idolProfileOrange:nth-child(6n) {
	margin: 0 0 50px 0;
}
.idol_photo {
	margin: 0 0 3px 0;
	text-align: center;
}
.idol_photo img {
	background: #FFF;
	padding: 1px;
	border: solid 1px #E5E5E5;
}
.idol_name {
	margin: 0 0 3px 0;
	font-weight: bold;
	text-align: center;
}
.idol_birth,
.idol_parents,
.idol_comment {
	margin: 5px 0 0 0;
	padding: 5px;
	border-radius: 5px;
	line-height: 1.41;
	overflow: hidden;
	_zoom: 1;
}
.idolProfileBlue .idol_comment { background: #DFF2FF; }
.idolProfileGreen .idol_comment { background: #D9FFD9; }
.idolProfilePink .idol_comment { background: #FEE; }
.idolProfileOrange .idol_comment { background: #FFEFD0; }
/*
.idol_birth dt,
.idol_parents dt,
.idol_comment dt {
	margin: 0 0 -1000px 0;
	padding: 5px 0.5em 1005px 0.5em;
	width: 4em;
	border-right: solid 1px #FFF;
	color: #FFF;
	float: left;
	_display: inline;
}
.idol_birth dd,
.idol_parents dd,
.idol_comment dd {
	margin: 0 0 0 5em;
	padding: 5px 0.5em;
}
*/
.idolBtnGroup {
	width: 1000px;
	margin: 0 auto 25px auto;
	text-align: right;
}
.idolBtnGroup a {
	display: inline-block;
	padding: 5px 10px;
	background: #0A3A93;
	border: solid 1px #333;
	border-radius: 5px;
	color: #FFF;
}
.idolBtnGroup a:hover {
	background: #305DB2;
}
.idolDescBox {
	width: 968px;
	margin: 0 auto 25px auto;
	padding: 15px;
	background: #FFC;
	border: solid 1px #D27919;
	border-radius: 5px;
	font-size: 114%;
}
.idolDescBox p {
	margin: 0 0 5px 0;
}
.idolDescBox .emphasis {
	font-weight: bold;
	color: #C40;
}
.idolDescBox dl {
	margin: 5px 0 0 0;
	overflow: hidden;
}
.idolDescBox dl dt {
	width: 4em;
	float: left;
}
.idolDescBox dl dd {
	margin: 0 0 0 4em;
}
/*****************************************
			Photo Gallery
*****************************************/
.photoGallery {
	margin: 10px 0 20px 0;
	overflow: hidden;
	_zoom: 1;
}
.photoGallery .mainPhoto {
	margin:  15px auto 10px auto;
	width: 700px;
	border: solid 3px #000;
	overflow: hidden;
	position: relative;
}
.photoGallery .photoWrap {
	width: 100%;
	text-align: center;
	position: absolute;
	top: 0;
	left: 0;
}
.photoGallery .mainPhoto img {
}
.photoGallery ul {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	letter-spacing: -0.4em;
	text-align: center;
}
.photoGallery ul li {
	margin: 0 5px 0 4px;
	background: none !important;
	display: inline-block;
	/display: inline;
	/zoom: 1;
	letter-spacing: normal;
	vertical-align: top;
	cursor: pointer;
}
.photoGallery ul li img {
	width: 108px;
	border: solid 1px #4D4D4D;
}
.photoGallery ul li img:hover {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}
/*****************************************
				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: 1020px;
	margin: 0 0 0 -10px;
	padding: 10px 0 0 0;
	letter-spacing: -0.4em;
}
.openDataCategoryIndex {
	width: 147px;
	margin: 0 0 25px 0;
	padding: 0 10px;
	letter-spacing: normal;
	text-align: center;
	position: relative;
	display: inline-block;
	vertical-align: top;
}
.openDataIcon {
	width: 147px;
	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: 147px;
	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: #000;
	border-radius: 5px;
	color: #FFF;
}
.btnBackHomeOpendata a:hover {
	background: #333;
}
.openDataSerachBox {
	margin: 20px -10px;
	padding: 12px 20px;
	background: #102D9D;
	border: solid 1px #001D8D;
	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: 690px;
	height: 35px;
	line-height: 35px;
	border: solid 2px #DDD;
}
#btn_search_od_keyword {
	width: 100px;
	height: 39px;
	line-height: 39px;
	background: #DDD;
	border: none;
	font-size: 100%;
	font-weight: bold;
	color: #000;
	cursor: pointer;
}
#btn_search_od_keyword:hover {
	background: #FF0;
}
.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;
}