@charset "UTF-8";

/*==============================================================================

	General
	
==============================================================================*/

html {
	overflow-y: scroll;
}

html,body {
	background: #eaf2f9;
}

body {
	color: #333333;
}

#main #calendar .fancybox-inner .cpopup {
	position: relative;
	display: block;
	width: 600px !important;
	height: 300px !important;
}


/*------------------------------------------------------------------------------
	Font
------------------------------------------------------------------------------*/

/*
px = %
10 = 77
11 = 85
12 = 93
13 = 100
14 = 108
15 = 116
16 = 123.1
17 = 131
18 = 138.5
19 = 146.5
20 = 153.9
21 = 161.6
22 = 167
23 = 174
24 = 182
25 = 189
26 = 197
*/

.fs10 { font-size: 77%; }
.fs11 { font-size: 85%; }
.fs12 { font-size: 93%; }
.fs13 { font-size: 100%; }
.fs14 { font-size: 108%; }
.fs15 { font-size: 116%; }
.fs16 { font-size: 123.1%; }
.fs17 { font-size: 131%; }
.fs18 { font-size: 138.5%; }
.fs19 { font-size: 146.5%; }
.fs20 { font-size: 153.9%; }
.fs21 { font-size: 161.6%; }
.fs22 { font-size: 167%; }
.fs23 { font-size: 174%; }
.fs24 { font-size: 182%; }
.fs25 { font-size: 189%; }
.fs26 { font-size: 197%; }

.fl { float: left !important; width: auto; }
.fr { float: right !important; width: auto; }

.tal { text-align: left !important; }
.tar { text-align: right !important; }
.tac { text-align: center !important; }

.vat { vertical-align: top !important; }
.vam { vertical-align: middle !important; }
.vab { vertical-align: bottom !important; }

.fwb { font-weight: bold !important; }
.fwn { font-weight: normal !important; }
.fred { color: #ff0000 !important; }

.att { color: #da0717 !important; }

/*------------------------------------------------------------------------------
	Margin & Padding
------------------------------------------------------------------------------*/

.m00 { margin: 0 !important; }
.mt00 { margin-top: 0 !important; }
.mt05 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt25 { margin-top: 25px !important; }
.mt30 { margin-top: 30px !important; }
.mr00 { margin-right: 0 !important; }
.mr05 { margin-right: 5px !important; }
.mr10 { margin-right: 10px !important; }
.mr15 { margin-right: 15px !important; }
.mr20 { margin-right: 20px !important; }
.mr30 { margin-right: 30px !important; }
.mb00 { margin-bottom: 0 !important; }
.mb05 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.ml00 { margin-left: 0 !important; }
.ml05 { margin-left: 5px !important; }
.ml10 { margin-left: 10px !important; }
.ml15 { margin-left: 15px !important; }
.ml20 { margin-left: 20px !important; }
.ml25 { margin-left: 25px !important; }
.ml30 { margin-left: 30px !important; }

.p05 { padding: 5px !important; }
.p10 { padding: 10px !important; }
.p15 { padding: 15px !important; }
.p20 { padding: 20px !important; }
.p25 { padding: 25px !important; }
.p30 { padding: 30px !important; }
.pt00 { padding-top: 0px !important; }
.pt05 { padding-top: 5px !important; }
.pt10 { padding-top: 10px !important; }
.pt15 { padding-top: 15px !important; }
.pt20 { padding-top: 20px !important; }
.pt25 { padding-top: 25px !important; }
.pt30 { padding-top: 30px !important; }
.pr00 { padding-right: 0 !important; }
.pr05 { padding-right: 5px !important; }
.pr10 { padding-right: 10px !important; }
.pr15 { padding-right: 15px !important; }
.pr20 { padding-right: 20px !important; }
.pr25 { padding-right: 25px !important; }
.pr30 { padding-right: 30px !important; }
.pb00 { padding-bottom: 0 !important; }
.pb05 { padding-bottom: 5px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb15 { padding-bottom: 15px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb25 { padding-bottom: 25px !important; }
.pb30 { padding-bottom: 30px !important; }
.pl00 { padding-left: 0 !important; }
.pl05 { padding-left: 5px !important; }
.pl10 { padding-left: 10px !important; }
.pl15 { padding-left: 15px !important; }
.pl20 { padding-left: 20px !important; }
.pl25 { padding-left: 25px !important; }
.pl30 { padding-left: 30px !important; }

/*------------------------------------------------------------------------------
	link
------------------------------------------------------------------------------*/

a:link,
a:active {
	color: #005ba8;
	text-decoration: underline;
}

a:visited {
	color: #005ba8;
	text-decoration: underline;
}

a:hover {
	color: #005ba8;
	text-decoration: none;
}

/*------------------------------------------------------------------------------
	Typography
------------------------------------------------------------------------------*/

h1 {
    margin: 0;
    font-size: 100%;
	line-height: 1.2;
}

h2 {
	margin: 0;
    font-size: 100%;
	line-height: 1.2;
}

h3 {
    margin: 0;
    font-size: 100%;
	line-height: 1.2;
}

h4 {
    margin: 0;
    font-size: 100%;
	line-height: 1.2;
}

h5 {
    margin: 0;
    font-size: 100%;
	line-height: 1.2;
}

h6 {
    margin: 0;
    font-size: 100%;
	line-height: 1.2;
}

p {
	margin: 0;
	font-size: 100%;
	line-height: 1.2;
}

strong {
	font-weight: bold;
}

em {
	font-style: italic;
}

/*------------------------------------------------------------------------------
	List
------------------------------------------------------------------------------*/

dl,
ol,
ul {
    margin: 1em 0;
}

dd {
    margin: 0 0 0 40px;
}

ol,
ul {
    padding: 0 0 0 40px;
}

nav ul,
nav ol {
    list-style: none;
    list-style-image: none;
}

/*------------------------------------------------------------------------------
	Table
------------------------------------------------------------------------------*/

/*------------------------------------------------------------------------------
	clearfix
------------------------------------------------------------------------------*/

.clearfix {
	zoom: 1;
}

.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

/*==============================================================================

	Layout
	
==============================================================================*/

/*------------------------------------------------------------------------------
	Header
------------------------------------------------------------------------------*/

header {
	margin: 0;
	background: #ffffff;
}

header #header_top {
	height: 92px;
	width: 860px;
	margin: 0 auto;
	position: relative;
}

header #header_top h1 {
	position: relative;
	width: 395px;
	height: 57px;
	top: 20px;
	left: 0;
	text-indent: -9999em;
}

header #header_top h1 a {
	display: block;
	width: 395px;
	height: 57px;
	background: url(../img/logo.png) no-repeat left top;
}

header #header_top #font_size {
	position: absolute;
	width: 214px;
	background: url(../img/fontsize_bg.png) no-repeat left center;
	top: 15px;
	right: 0;
}

header #header_top #font_size ul {
	margin: 0 0 0 85px;
	padding: 0;
	list-style: none;
	zoom: 1;
}

header #header_top #font_size ul:after {
	content: "";
	display: block;
	clear: both;
}

header #header_top #font_size ul li {
	float: left;
	margin: 0 0 0 5px;
	cursor: pointer;
}

header #header_top #head_nav {
	margin: 0;
	padding: 0;
	line-height: 1;
	position: absolute;
	top: 52px;
	right: 0;
}

header #header_top #head_nav ul {
	margin: 8px 0 0 0;
	position: relative;
	padding: 0;
	list-style: none;
	zoom: 1;
}

header #header_top #head_nav ul:after {
	content: "";
	display: block;
	clear: both;
}

header #header_top #head_nav ul li {
	position: absolute;
	display: inline-block;
	top: 0;
	right: 0;
	height: 20px;
	margin: 0;
	padding: 0;
	line-height: 1;
}

header #header_top #head_nav ul li a {
	display: block;
	text-decoration: none;
	text-indent: 100%;
	text-align: left;
	overflow: hidden;
	white-space:nowrap;
	*text-indent: -9999em;
}

header #header_top #head_nav ul li a:hover {}

header #header_top #head_nav ul li.fee { right: 318px; }
header #header_top #head_nav ul li.faq { right: 182px; }
header #header_top #head_nav ul li.link { right: 115px; top: 1px; }
header #header_top #head_nav ul li.sitemap { right: 0px; }

header #header_top #head_nav ul li.fee a {
	width: 87px;
	height: 18px;
	background: url(../img/headnav_fee.png) no-repeat left top;
}

header #header_top #head_nav ul li.faq a {
	width: 118px;
	height: 18px;
	background: url(../img/headnav_faq.png) no-repeat left top;
}

header #header_top #head_nav ul li.link a {
	width: 57px;
	height: 18px;
	background: url(../img/headnav_link.png) no-repeat left top;
}

header #header_top #head_nav ul li.sitemap a {
	width: 98px;
	height: 17px;
	background: url(../img/headnav_sitemap.png) no-repeat left top;
}

header #header_top #logout a:hover {
	background-position: 0 -33px;
}

header #global_nav {
	position: relative;
	background: url(../img/gnav_bg.png) repeat-x left top;
	height: 65px;
	z-index: 100;
}

header #global_nav ul {
	position: relative;
	width: 860px;
	margin: 0 auto;
	padding: 6px 0 0 0;
	zoom: 1;
}

header #global_nav ul:after {
	content: "";
	display: block;
	clear: both;
}

header #global_nav ul > li {
	float: left;
	height: 59px;
	border-right: 1px solid #5e95cd;
}

header #global_nav ul > li.first {
	border-left: 1px solid #5e95cd;
	border-right: 1px solid #5e95cd;
}

header #global_nav ul > li > a {
	position: relative;
	display: block;
	height: 59px;
}

header #global_nav ul > li > a > .inner {
	display: block;
	margin: 0 auto;
	text-indent: 120%;
	text-align: left;
	overflow: hidden;
	white-space: nowrap;
}

header #global_nav ul > li > a:hover {
	background: #045bb4;
}

header #global_nav ul > li > a:hover {}

header #global_nav ul > li.active > a {
	background: #045bb4 url(../img/gnavi_on.png) no-repeat bottom center;
}

header #global_nav ul > li.facility > a { width: 130px; }
header #global_nav ul > li.facility > a:hover { background: #045bb4 url(../img/gnavi_on.png) no-repeat bottom center; }
header #global_nav ul > li.facility > a > .inner {
	position: absolute;
	top: 8px;
	left: 16px;
	width: 100px;
	height: 36px;
	background: url(../img/gnav_facility.png) no-repeat left top;
}

header #global_nav ul > li.apply > a { width: 130px; }
header #global_nav ul > li.apply > a:hover { background: #045bb4 url(../img/gnavi_on.png) no-repeat bottom center; }
header #global_nav ul > li.apply > a > .inner {
	position: absolute;
	top: 14px;
	left: 16px;
	width: 96px;
	height: 29px;
	background: url(../img/gnav_apply.png) no-repeat left top;
}

header #global_nav ul > li.calendar > a { width: 202px; }
header #global_nav ul > li.calendar > a .inner {
	position: absolute;
	top: 18px;
	left: 17px;
	width: 169px;
	height: 23px;
	background: url(../img/gnav_calendar.png) no-repeat left top;
}

header #global_nav ul > li.event > a { width: 130px; }
header #global_nav ul > li.event > a > .inner {
	position: absolute;
	top: 12px;
	left: 16px;
	width: 95px;
	height: 33px;
	background: url(../img/gnav_event.png) no-repeat left top;
}

header #global_nav ul > li.cinepal > a { width: 130px; }
header #global_nav ul > li.cinepal > a > .inner {
	position: absolute;
	top: 13px;
	left: 21px;
	width: 85px;
	height: 30px;
	background: url(../img/gnav_cinepal.png) no-repeat left top;
}

header #global_nav ul > li.access > a { width: 130px; }
header #global_nav ul > li.access > a > .inner {
	position: absolute;
	top: 22px;
	left: 14px;
	width: 100px;
	height: 18px;
	background: url(../img/gnav_access.png) no-repeat left top;
}

header #global_nav ul > li > .drop {
	visibility: hidden;
	position: absolute;
	width: 210px;
	top: 60;
	background: #ffffff;
	box-shadow: 0px 3px 5px rgba(160,185,210,0.15);
	behavior: url(http://www.towerhall.jp/PIE.htc);
	z-index: 100;
}

:root header #global_nav ul > li > .drop {
	background: rgba(255,255,255,0.95);
	box-shadow: 0px 3px 5px rgba(0,55,100,0.3);
}

header #global_nav ul > li > .drop > .drop_inner {
	padding: 15px;
	zoom: 1;
}

header #global_nav ul > li > .drop > .drop_inner:after {
	content: "";
	display: block;
	clear: both;
}

header #global_nav ul > li.facility > .drop { left: 0; width: 390px; }
header #global_nav ul > li.apply > .drop { left: 130px; }
header #global_nav ul > li.access > .drop { right: 0; }

header #global_nav ul > li > .drop > .drop_inner > ul {
	float: left;
	width: 180px;
	margin: 0;
	padding: 0;
	list-style: none;
	border: none;
	line-height: 1.5;
}

header #global_nav ul > li > .drop > .drop_inner > ul > li {
	float: none;
	width: auto;
	height: auto;
	margin: 0;
	padding: 0;
	border: none;
	font-size: 93%;
}

header #global_nav ul > li > .drop > .drop_inner > ul > li > a {
	display: block;
	width: auto;
	height: auto;
	margin: 0;
	padding: 5px 5px 5px 25px;
	border: none;
	color: #0b3e72;
	text-decoration: none;
	background: transparent url(../img/dropnav_link_icon.png) no-repeat 10px center;
}

header #global_nav ul > li > .drop > .drop_inner > ul > li > a:hover {
	background: #e8eff6 url(../img/dropnav_link_icon.png) no-repeat 10px center;
	color: #0b3e72;
	text-decoration: underline;
}

header #global_nav ul > li > .drop > .drop_inner > ul > li.last {
	margin-bottom: 0;
}

/* panlist */

header #panlist {
	margin: 0 auto;
	background: #eaf2f9;
}

header #panlist ul {
	width: 860px;
	margin: 0 auto;
	padding: 0;
	list-style: none;
	zoom: 1;
}

header #panlist ul:after {
	content: "";
	display: block;
	clear: both;
}

header #panlist ul li {
	float: left;
	margin: 0;
	padding: 10px 15px 10px 15px;
	background: url(../img/panlist_section_bg.png) no-repeat left center;
	font-size: 93%;
	line-height: 1.5;
}

header #panlist ul li.first {
	margin: 0 0 0 0;
	padding: 10px 12px 10px 20px;
	background: url(../img/panlist_home_icon.png) no-repeat left 13px;
}

header #panlist ul li a {
	color: #005ba8;
	text-decoration: underline;
}

header #panlist ul li a:hover {
	text-decoration: none;
}

header .notopimage li {
	margin-bottom: -10px !important;
}


/*------------------------------------------------------------------------------
	Content
------------------------------------------------------------------------------*/

#content {
	padding: 30px 0 30px 0;
}

#content_inner {
	width: 860px;
	margin: 0 auto;
}

/* main */

#content #main_wrap {
	margin: 0;
	zoom: 1;
}

#content #main_wrap:after {
	content: "";
	display: block;
	clear: both;
}

#content #main_wrap #main {
	width: 860px;
	min-height: 200px;
	height: auto !important;
	height: 200px;
}

#content #main_wrap #bottom_bnr {
	margin: 0;
	padding: 20px 0 0 0;
	zoom: 1;
}

#content #main_wrap #bottom_bnr:after {
	content: "";
	display: block;
	clear: both;
}

#content #main_wrap #bottom_bnr ul {
	margin: 0;
	padding: 0;
}

#content #main_wrap #bottom_bnr ul li {
	margin: 0 16px 0 0;
	padding: 0;
	width: 276px;
	list-style: none;
	float: left;
}

#content #main_wrap #bottom_bnr ul li.last {
	margin-right: 0;
}

/* box */

.wrap-box {
	position: relative;
	box-shadow: 0px 1px 4px rgba(160,185,210,0.15);
	behavior: url(http://www.towerhall.jp/PIE.htc);
}

:root .wrap-box {
	box-shadow: 0px 1px 4px rgba(0,55,100,0.2);
}

.wrap-box-inner {
	background: #ffffff;
	padding: 35px;
}

/*------------------------------------------------------------------------------
	Fotter
------------------------------------------------------------------------------*/

footer {
	background: #ffffff;
}

footer .backtotop {
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 1000;
    display: none;
}
 
footer .backtotop a {
    display: block;
    text-decoration: none;
}

footer #footer_top {
	border-top: 8px solid #4085d0;
}

footer #footer_top_inner {
	width: 860px;
	margin: 0 auto;
	min-height: 200px;
}

footer #footer_top_inner #ft_sitemap {
	width: 100%;
	display: table;
	border-left: 1px solid #dbe3e9;
	border-right: 1px solid #dbe3e9;
	zoom: 1;
}

footer #footer_top_inner #ft_sitemap:after {
	content: "";
	display: block;
	clear: both;
}

footer #footer_top_inner #ft_sitemap .ft_col {
	display: table-cell;
	padding: 25px 20px;
	border-right: 1px solid #dbe3e9;
	vertical-align: top;
	*float: left;
}

footer #footer_top_inner #ft_sitemap .last {
	border-right: none;
}

footer #footer_top_inner #ft_sitemap .ft_col .ft_logo {
	margin: 0 0 20px 0;
}

footer #footer_top_inner #ft_sitemap .ft_col .ft_info {
	margin: 0;
	padding: 12px 15px;
	background: #eff5fb;
	border-radius: 5px;
	line-height: 1.5;
	color: #263d56;
}

footer #footer_top_inner #ft_sitemap dl {
	margin: 0;
	padding: 0;
	line-height: 1.2;
}

footer #footer_top_inner #ft_sitemap dl dt {
	margin: 0 0 15px 0;
	padding: 0 0 0 8px;
	border-left: 8px solid #77ace6;
	font-weight: bold;
	font-size: 108%;
}

footer #footer_top_inner #ft_sitemap dl dd {
	margin: 0;
	padding: 0;
}

footer #footer_top_inner #ft_sitemap ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

footer #footer_top_inner #ft_sitemap ul li {
	margin: 0 0 5px 0;
	font-size: 93%;
}

footer #footer_top_inner #ft_sitemap ul li.last {
	margin-bottom: 0;
}

footer #footer_top_inner #ft_sitemap ul li a {
	display: block;
	padding: 2px 5px 2px 15px;
	background: url(../img/ftsitemap_link_icon.png) no-repeat left center;
	color: #0b3e72;
	text-decoration: none;
}

footer #footer_top_inner #ft_sitemap ul li a:hover {
	color: #4988e7;
	text-decoration: underline;
}

footer #footer_bottom {
	background: #4085d0;
}

footer #footer_bottom #foot_nav {
	margin: 0;
	padding: 15px 0;
	list-style: none;
	zoom: 1;
}

footer #footer_bottom #foot_nav:after {
	content: "";
	display: block;
	clear: both;
}

footer #footer_bottom #foot_nav li {
	float: left;
	margin: 0 22px 0 0;
	padding: 0 0 0 11px;
	font-size: 93%;
	line-height: 1.5;
	background: url(../img/footnav_link_icon.png) no-repeat left 4px;
}

footer #footer_bottom #foot_nav li a {
	color: #ffffff;
	text-decoration: none;
}

footer #footer_bottom #foot_nav li a:hover {
	text-decoration: underline;
}

footer #footer_bottom_inner {
	position: relative;
	width: 860px;
	margin: 0 auto;
}

footer #footer_bottom #copy {
	position: absolute;
	margin: 0;
	padding: 0;
	color: #ffffff;
	top: 15px;
	right: 0;
}

footer #footer_bottom #copy p {
	margin: 0;
	padding: 0;
}