@charset "utf-8";

/*==================================================================================================================*/
/* ------> イベント <<<---------------------------------------------------------------------------------------------*/
/*==================================================================================================================*/

/* 新着リスト
------------------------------------------------------------------------------------------------------------------- */

.event_new_list {
	padding:0;
	}

.event_new_loading {
	background:url(../images/event/loading.gif) no-repeat center center;
	width:100%;
	height:118px;
	}

.event_new_list ul {
	width:100%;
	height:118px;
	overflow:auto;
	}

	.event_new_list ul li {
		margin-bottom:13px;
		padding:0 0 16px 0;
		background:url(../images/line1.gif) no-repeat bottom left;
		line-height: 1em;
		}
	span.event_new_meta {
		display:block;
		}

	span.list_status_ok,
	span.list_status_ng,
	span.list_status_end {
		margin-right:5px;
		text-indent:-9999px;
		vertical-align:-1px;
		background:url(../images/event/event_parts.gif) no-repeat;
		width:31px;
		height:31px;
		display:block;
		float:left;
		}

	span.list_status_ok {background-position:-414px 0;}
	span.list_status_ok, x:-moz-any-link, x:default {vertical-align:-3px;}
	span.list_status_ok {vertical-align/***/:-2px\9;}

	span.list_status_ng {background-position:-414px -31px;}
	span.list_status_ng, x:-moz-any-link, x:default {vertical-align:-3px;}
	span.list_status_ng {vertical-align/***/:-2px\9;}

	span.list_status_end {background-position:-414px -62px;}
	span.list_status_end, x:-moz-any-link, x:default {vertical-align:-3px;}
	span.list_status_end {vertical-align/***/:-2px\9;}

	span.event_new_cate {
		margin-right:-5px;
		font-size:11px;
		font-weight:bold;
		color:#ff9d01;
		}

	span.event_new_day {
		margin:0;
		padding:0 0 0 0px;
		font-weight:bold;
		font-size:12px;
		color:#ff9d01;
		}
	span.event_new_title {
		display:block;
		margin:3px 0 0 41px;
		font-size:13px;
		}
	span.event_new_title a:link, span.event_new_title  a:visited {color:#818181;text-decoration:underline;}
	span.event_new_title a:hover, span.event_new_title a:active {color:#aeaeae;text-decoration:underline;}

div.event_new_nolist {
	text-indent:-9999px;
	text-align:left;
	background:url(../images/event/event_new_no_list.gif) no-repeat center center;
	width:100%;
	height:100px;
	}


/* イベント一覧
------------------------------------------------------------------------------------------------------------------- */
.list_body {
	margin:0 0 20px 0;
	padding:0 19px 14px 19px;
	border:solid 1px #f1eade;
	position:relative;
	}

.list_body h3 {
	margin:0 0 15px 0;
	padding:10px;
	font-size:1.4em;
	font-weight:bold;
	line-height:1.4em;
	background:#f8f3ea;
	}

.list_body dl{
	margin:0 0 10px 0;
	padding-bottom:5px;
	border-bottom:solid 1px #ebe2d1;
	width:100%;
	}
.list_body dt {
	padding:0;
	font-size:1em;
	font-weight:bold;
	width:300px;
	}

.list_body dd {
	margin:-20px 0px 0px 0px;
	padding:0 0 8px 0;
	text-align:right;
	}

.list_body p.event_list_outline {
	}

.list_body p.event_detail_link {
	text-align:right;
	}

	.list_body p.event_detail_link a {
		padding:0;
		}

span.event_list_icon_entry,
span.event_list_icon_close,
span.event_list_icon_end,
span.event_list_icon_free,
span.event_list_icon_pay,
span.event_list_icon_individual,
span.event_list_icon_anyone,
span.event_list_icon_business {
	text-align:left;
	text-indent:-9999px;
	vertical-align:0;
	background-image:url(../images/event/event_parts.gif);
	background-repeat:no-repeat;
	width:80px;
	height:20px;
	display:inline-block;
	}

span.event_list_icon_entry {background-position:0 0;}
span.event_list_icon_close {background-position:0 -20px;}
span.event_list_icon_end {background-position:0 -40px;}
span.event_list_icon_free {background-position:-100px 0;}
span.event_list_icon_pay {background-position:-100px -20px;}
span.event_list_icon_individual {background-position:-200px 0;}
span.event_list_icon_anyone {background-position:-200px -20px;}
span.event_list_icon_business {background-position:-200px -40px;}

p.event_list_no_list {
	text-indent:-9999px;
	text-align:left;
	background:url(../images/event/event_list_no_list.gif) no-repeat center center;
	width:100%;
	height:607px;
	}

.event_list_pagenavi {
	padding:30px 0 0 0;
	text-align:center;
	}

div.event_list_pagenavi ul {
    margin:0;
    padding:0;
    text-align:center;
	}

div.event_list_pagenavi ul li {
    margin:0;
    padding:0;
    display:inline;
	}

div.event_list_pagenavi ul li span,
div.event_list_pagenavi ul li a {
    margin:0;
    padding:5px 12px;
    text-decoration:none;
    border:solid 1px #DDDDDD;
    background: #fff;
    display:inline-block;
	}

div.event_list_pagenavi ul li span {
    font-weight: bold;
    color: #FFFFFF;
    border:solid 1px #A6A6A6;
    background:#A6A6A6;
	}

div.event_list_pagenavi ul li a:hover {
    background:#D4D4D4;
	}

/* イベント詳細
------------------------------------------------------------------------------------------------------------------- */
#event_outline {
	margin:0 0 50px 0;
	}

	div.event_header {
		margin:0 0 25px 0;
		}

	#event_outline h2 {
		margin:0 0 10px 0;
		padding:0 0 5px;
		font-size:1.6em;
		font-weight:bold;
		line-height:1.4em;
		color:#575043;
		border-bottom:solid 3px #ebe2d1;
		}

	div.event_meta {
		}

	div.status_group {
		width:320px;
		float:left;
		}

	span.event_detail_icon_entry,
	span.event_detail_icon_close,
	span.event_detail_icon_end,
	span.event_detail_icon_free,
	span.event_detail_icon_pay,
	span.event_detail_icon_individual,
	span.event_detail_icon_anyone,
	span.event_detail_icon_business {
		text-align:left;
		text-indent:-9999px;
		vertical-align:0;
		background-image:url(../images/event/event_parts.gif);
		background-repeat:no-repeat;
		width:81px;
		height:20px;
		display:inline-block;
		}

	span.event_detail_icon_entry {background-position:0px 0;}
	span.event_detail_icon_close {background-position:0px -20px;}
	span.event_detail_icon_end {background-position:0px -40px;}
	span.event_detail_icon_free {background-position:-100px 0;}
	span.event_detail_icon_pay {background-position:-100px -20px;}
	span.event_detail_icon_individual {background-position:-200px 0;}
	span.event_detail_icon_anyone {background-position:-200px -20px;}
	span.event_detail_icon_business {background-position:-200px -40px;}

	div.list_back_link {
		text-align:right;
		width:150px;
		float:right;
		}

		div.list_back_link a {
			padding:0;
			background:url(../images/list4.gif) no-repeat right center;
			}

	div.event_outline_text {}

	.event_aim {
		padding:25px 0 0 0;
		}

		.event_aim h3 {
			margin:0 0 10px 0;
			padding:0 0 3px 0;
			font-size:1.2em;
			font-weight:bold;
			line-height:1.5em;
			color:#ff9201;
			border-bottom:solid 2px #ebe2d1;
			}

/* ===== タブメニュー ===== */

ul.event_tab_navi {
    margin: 0 0 20px 0;
    border-bottom:solid 2px #ff9b01;
	}

	ul.event_tab_navi li {
	    margin:0 5px 0 0;
	    width:125px;
	    height:32px;
		}

	ul.event_tab_navi li a,
	ul.event_tab_navi li a:hover,
	ul.event_tab_navi li span {
	    text-indent:-9999px;
	    background:url(../images/event/event_parts.gif) no-repeat;
	    width:125px;
	    height:32px;
	    display:block;
		}

	ul.event_tab_navi li.tab_outline a {
	    background-position:0 -80px;
		}

	ul.event_tab_navi li.tab_outline a:hover {
	    background-position:0 -112px;
		}

	ul.event_tab_navi li.tab_outline span {
	    background-position:0 -144px;
		}

	ul.event_tab_navi li.tab_access a {
	    background-position: -125px -80px;
		}

	ul.event_tab_navi li.tab_access a:hover {
	    background-position:-125px -112px;
		}

	ul.event_tab_navi li.tab_access span {
	    background-position: -125px -144px;
		}

	ul.event_tab_navi li.tab_apply a {
	    background-position: -250px -80px;
		}

	ul.event_tab_navi li.tab_apply a:hover {
	    background-position: -250px -112px;
		}

	ul.event_tab_navi li.tab_apply span {
	    background-position: -250px -144px;
		}

/* ===== 概要 ===== */

#event_detail {
	margin:0 0 50px 0;
	}

	#event_detail h2 {
		position:absolute;
		top:-9999px;
		left:-9999px;
		}

div.event_detail_list {
	width:100%;
	position:relative;
	padding:0 0 10px 0;
	background:url(../images/line2.gif) no-repeat left bottom;
	}

	.event_detail_list .list_line {
		background:url(../images/line2.gif) no-repeat left top;
		padding:12px 0 0 0;
		position:relative;
		background:url(../images/line2.gif) no-repeat left top;
		}

	.event_detail_list .list_name {
		width:20%;
		float:left;
		font-weight:bold;
		line-height:1.7em;
		}
	.event_detail_list .list_name span {
		margin:0;
		padding:0 0 0 15px;
		background:url(../images/list3.gif) no-repeat top left;
		}

	.event_detail_list .list_contents {
		width:80%;
		float:right;
		}

	.event_detail_list .list_contents_inner {
		padding:0 0 0 15px;
		border-left:solid 2px #faf7f1;
		}

/* ===== アクセス ===== */

#accessmap {
	margin:0 0 50px 0;
	}

	#accessmap h2 {
		position:absolute;
		top:-9999px;
		left:-9999px;
		}

	#accessmap div#access_map {
		margin:0 0 10px 0;
		width:100%;
		height:350px;
		}

	#accessmap dl {
		width:100%;
		}

	#accessmap dt {
		padding:0;
		text-indent:-9999px;
	    background:url(../images/event/event_parts.gif) no-repeat;
		background-position:-335px 0;
		width:70px;
		height:16px;
		}

	#accessmap dd {
		margin:-25px 0px 0px 0px;
		padding:4px 0 8px 0;
		}

	#accessmap dd p {
		margin:0;
		padding:3px 0 0 75px;
		}

/* ===== 参加申込 ===== */

#event_apply {}

	#event_apply h2 {
		position:absolute;
		top:-9999px;
		left:-9999px;
		}

	#event_apply p.apply_lead {
		margin:0 0 20px 0;
		}

	#event_apply p.apply_entry_end {
		padding:0;
		text-indent:-9999px;
		border:solid 3px #f5f5f5;
		background:url(../images/event/apply_entry_end.gif) no-repeat center;
		width:100%;
		height:150px;
		}

p.apply_confirm_lead {
	margin:0 0 20px 0;
	}

section#confirm_event_info {
	margin:0 0 40px 0;
	}

#confirm_event_info h2,
#confirm_personal_data h2 {
	margin:0 0 15px 0;
	padding:0 0 0 18px;
	font-size:15px;
	font-weight:bold;
	color:#de8000;
	background:url(../images/list6.gif) no-repeat left top;
	}

div.event_apply_done {
	padding:50px 0 0 0;
	text-align:center;
	}

	div.event_apply_done p.event_apply_done_text {
		margin:0 0 15px 0;
		text-indent:-9999px;
		background:url(../images/event/event_apply_done.gif) no-repeat center center;
		width:100%;
		height:50px;
		}



/*==================================================================================================================*/
/* ------> 予約 <<<-------------------------------------------------------------------------------------------------*/
/*==================================================================================================================*/

/* カレンダー（小）
------------------------------------------------------------------------------------------------------------------- */

div.calendar_mini_loading {
	background:url(../images/reservation/loading.gif) no-repeat center center;
	width:100%;
	height:209px;
	}

div.calendar_mini {
	padding:0;text-align:center;
	}

div.calendar_mini table.calendar_head {
	width:190px;
	}

div.calendar_mini table.calendar_head td.month {
	text-align:center;
	vertical-align:middle;
	}

div.calendar_mini table.calendar_head td.month h4 {
	margin:0;
	font-weight:bold;
	line-height:25px;
	text-align:center;
	}

div.calendar_mini table.calendar_head td.back {
	text-align:left;
	vertical-align:middle;
	width:13px;
	}

div.calendar_mini table.calendar_head td.next {
	text-align:right;
	vertical-align:middle;
	width:13px;
	}

div.calender_btn_back,
div.calender_btn_back:hover,
div.calender_btn_back_dis,
div.calender_btn_next,
div.calender_btn_next:hover,
div.calender_btn_next_dis {
	text-align:left;
	text-indent:-9999px;
	background-image:url(../images/reservation/reservation_parts.gif);
	background-repeat:no-repeat;
	width:13px;
	height:13px;
	display:block;
	}

	div.calender_btn_back {background-position:0 0;}
	div.calender_btn_back:hover {background-position:0 -15px;}
	div.calender_btn_back_dis {background-position:0 -30px;}
	div.calender_btn_next {background-position:-15px 0;}
	div.calender_btn_next:hover {background-position:-15px -15px;}
	div.calender_btn_next_dis {background-position:-15px -30px;}


div.calendar_mini table.calendar_body {font-size:10px;border-top:solid 1px #CBCBCB;border-left:solid 1px #BCBCBC;width:189px;}
div.calendar_mini table.calendar_body th {line-height:25px;text-align:center;vertical-align:middle;color:#87806A;border-right:solid 1px #CBCBCB;border-bottom:solid 1px #CBCBCB;background:#F2F2F2;}
div.calendar_mini table.calendar_body th.sat {color:#3989B6;}
div.calendar_mini table.calendar_body th.sun {color:#D53C3C;}
div.calendar_mini table.calendar_body td {padding:0;font-weight:bold;line-height:25px;text-align:center;vertical-align:middle;border-right:solid 1px #CBCBCB;border-bottom:solid 1px #CBCBCB;}


/* カレンダー（大）
------------------------------------------------------------------------------------------------------------------- */

div.calendar_large_loading {
	background:url(../images/reservation/loading.gif) no-repeat center center;
	width:100%;
	height:535px;
	}

div.calendar_body {
margin:0 0 40px 0;
}

div.calendar_body_inner {
}

div.calendar_large {
	margin:0 0 10px 0;
	background:url(../images/reservation/reserve_back.gif) repeat-y;
	}

div.calendar_large h4 {
	margin:0 0 5px 0;
	font-size:25px;
	font-weight:bold;
	line-height:32px;
	}

div.calendar_large {
	padding:0;
	text-align:center;
	background:url(../images/reservation/reserve_btm.gif) no-repeat left bottom;
	}

div.calendar_large table {
	font-size:14px;
	line-height:120%;
	border-collapse: collapse;
	border-top:solid 1px #ccc;
	border-left:solid 1px #ccc;
	width:100%;
	}

div.calendar_large th {
	text-align:center;
	vertical-align:middle;
	border-right:solid 1px #ccc;
	border-bottom:solid 1px #ccc;
	background:#F1F1F1;
	height:26px;
	}

div.calendar_large th div {
	line-height:26px;
	text-align:center;
	width:100%;
	height:26px;
	}

div.calendar_large th.sat {
	color:#1F7AAE;
	background:#EDF7FD;
	}

div.calendar_large th.sun {
	color:#D83A3A;
	background:#FEECEC;
	}

div.calendar_large td {
	padding:5px 0 0 0;
	text-align:center;
	vertical-align:middle;
	border-right:solid 1px #ccc;
	border-bottom:solid 1px #ccc;
	}

div.calendar_large td.over {
	background:#F5EFC2;
	}

div.calendar_large td div {
	height:70px;
	}

div.calendar_large td div img {
	margin:10px 0 0 0;
	}

div.calendar_large td span.fw {
	font-weight:normal;
	line-height:1.4em;
	}

div.calendar_large td span.f120 {
	line-height:1.1em;
	}

div.calendar_large td.sat span.fw {
	color:#1F7AAE;
	}

div.calendar_large td.sun span.fw {
	color:#D83A3A;
	}

div.calendar_large td.ac_cell {
	background:#F5EFC2;
	}

section#reserve_day {
	margin:0 0 40px 0;
	}

.calendar_mark_detail {
	text-indent:-9999px;
	background:url(../images/reservation/mark_detail.gif) no-repeat right center;
	height:12px;
	}


/* カレンダー（大小共通）
------------------------------------------------------------------------------------------------------------------- */

div.calendar_large table.calendar_body td.rsv_o,
div.calendar_mini table.calendar_body td.rsv_o {cursor:pointer;background:#FFFFFF;}
div.calendar_large table.calendar_body td.rsv_v,
div.calendar_mini table.calendar_body td.rsv_v {cursor:pointer;background:#FFE765;}
div.calendar_large table.calendar_body td.rsv_x,
div.calendar_mini table.calendar_body td.rsv_x {background:#DADADA;}

div.calendar_large table.calendar_body td.rsv_o:hover,
div.calendar_mini table.calendar_body td.rsv_o:hover {cursor:pointer;background:#F5EFC2;}

div.calendar_mini div.reserve_o,
div.calendar_mini div.reserve_x,
div.calendar_mini div.reserve_v {
	display:none;
	}

div.calendar_large div.reserve_o,
div.calendar_large div.reserve_x,
div.calendar_large div.reserve_v {
	margin:10px 0 0 0;
	text-align:left;
	text-indent:-9999px;
	background-image:url(../images/reservation/reservation_parts.gif);
	background-repeat:no-repeat;
	width:19px;
	height:20px;
	display:inline-block;
	}

div.calendar_large div.reserve_o {
	background-position:-35px 0;
	}

div.calendar_large div.reserve_x {
	background-position:-60px 0;
	}

div.calendar_large div.reserve_v {
	background-position:-80px 0;
	}

/* 予約フォーム
------------------------------------------------------------------------------------------------------------------- */

section#reserve_day h2,
section#reserve_personal_data h2 {
	margin:0 0 15px 0;
	font-size:18px;
	font-weight:bold;
	}

div.reserve_apply_done {
	padding:50px 0 0 0;
	text-align:center;
	}

	div.reserve_apply_done p.reserve_apply_done_text {
		margin:0 0 15px 0;
		text-indent:-9999px;
		background:url(../images/reservation/reserve_apply_done.gif) no-repeat center center;
		width:100%;
		height:80px;
		}

/*==================================================================================================================*/
/* ------> フォーム <<<---------------------------------------------------------------------------------------------*/
/*==================================================================================================================*/

/* フォームレイアウト
------------------------------------------------------------------------------------------------------------------- */

div.form_layout {
	background:url(../images/line2.gif) no-repeat bottom;
	width:100%;
	position:relative;
	margin-bottom:20px;
	}

	.form_layout .list_line {
		background:url(../images/line2.gif) no-repeat left top;
		padding:10px 0;
		position:relative;
		}

	.form_layout .list_name {
		padding:3px 0 0 0;
		width:20%;
		float:left;
		}

	.form_layout .list_name span {
		display:block;
		color:#504c45;
		font-weight:bold;
		padding:0 0 0 15px;
		background:url(../images/list3.gif) no-repeat top left;
		}

	.form_layout .list_name span.hissu {
		padding-right:40px;
		background:url(../images/inquiry/hissu.gif) no-repeat right top;
		}
	.form_layout .list_name span.unhissu {
		padding-right:40px;
		background:none;
		}
	.form_layout .list_contents {
		width:80%;
		float:right;
		}

	.form_layout .list_contents_inner {
		padding:0 0 0 15px;
		}

		.form_layout .list_contents .sec_list_line {
			border-top:nome;
			padding:5px 0;
			position:relative;
			}

		.form_layout .list_contents .sec_list_name {
			padding:4px 0 0 0;
			width:15%;
			float:left;
			}

		.form_layout .list_contents .sec_list_name  span {
			padding:;
			}

		.form_layout .list_contents .sec_list_contents {
			padding:0;
			border:nome;
			width:85%;
			float:right;
			}

		.form_layout .list_contents div.list_contents_text {
			padding:3px 0;
			}

.form_example {
	color:#999;
	}

.mail_sup1 {
	padding:5px 0;
	}

.mail_sup2 {
	margin:0 0 10px 0;
	padding:5px 0 0 0;
	}

.direct_mail {
	margin:0 0 5px 0;
	font-weight:bold;
	}

/* 入力フィールド関連
------------------------------------------------------------------------------------------------------------------- */

.form_layout input[type=text],
.form_layout textarea,
.form_layout select,
.form_layout option {
	line-height:1.6em;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	border:solid 1px #ddd;
	}

.form_layout input[type=text]:focus,
.form_layout textarea:focus,
.form_layout select:focus,
.form_layout option:focus {
	background:#FFF8E1;
	}

.form_layout input[type=text],
.form_layout input[type=password] {
	padding:2px 6px;
	}

.form_layout select {
	padding:4px;
	}

.inputarea1 {width:150px;}
.inputarea2 {width:429px;}
.inputarea3 {
	padding:6px 0 6px 6px;
	width:429px;
	height:150px;
	}
.inputarea4 {width:355px;}

/* 送信ボタン関連
------------------------------------------------------------------------------------------------------------------- */

div.submit {
	padding:10px;
	text-align:center;
	}

	div.submit input[type=submit].submit_btn_confirm,
	div.submit input[type=submit].submit_btn_send,
	div.submit input[type=submit].submit_btn_back {
		text-indent:-9999px;
		border:none;
		background-image:url(../images/event/submit_btn.gif);
		background-repeat:no-repeat;
		width:160px;
		height:50px;
		cursor:pointer;
		}

	div.submit input[type=submit].submit_btn_confirm {
		background-position:0 0;
		}

	div.submit input[type=submit].submit_btn_send {
		margin-right:15px;
		background-position:-170px 0;
		}

	div.submit input[type=submit].submit_btn_back {
		background-position:-340px 0;
		width:100px;
		height:50px;
		}

		div.submit input[type=submit].submit_btn_confirm:hover,
		div.submit input[type=submit].submit_btn_send:hover,
		div.submit input[type=submit].submit_btn_back:hover {
			opacity: .75; /* Standard: FF gt 1.5, Opera, Safari */
			filter: alpha(opacity=75); /* IE lt 8 */
			-ms-filter: "alpha(opacity=75)"; /* IE 8 */
			-khtml-opacity: .75; /* Safari 1.x */
			-moz-opacity: .75; /* FF lt 1.5, Netscape */
			}

/* 入力エラー関連
------------------------------------------------------------------------------------------------------------------- */

p.error_box {
	padding:13px 15px 10px 15px;
	margin:0 0 10px 0;
	font-size:16px;
	font-weight:bold;
	text-align:center;
	color:#E8041F;
	border:solid 2px #F06C7C;
	background:#FFD7DC;
	}

.form_layout input.error,
.form_layout select.error,
.form_layout textarea.error {
	font-weight:normal;
	border:solid 1px #FA4563;
	background:#FFF2F4;
	}

p.error {
	padding-top:3px;
	font-weight:bold;
	color:#E6243F;
	}

/*==================================================================================================================*/
/* ------> ClearFix & etc <<<---------------------------------------------------------------------------------------*/
/*==================================================================================================================*/

.clr {clear:both;}
.event_tab_navi li {float:left;display:inline;}

/* modern browsers */
.clearfix:after,
.event_tab_navi:after,
.event_detail_list .list_line:after,
.form_layout .list_line:after,
.form_layout .sec_list_line:after {content:".";display:block;height:0;clear:both;visibility:hidden;}

/* IE7 */
.clearfix,
.event_tab_navi,
.event_detail_list .list_line,
.form_layout .list_line,
.form_layout .sec_list_line {display:inline-block;}

/* legacy IE */
* html .clearfix,
* html .event_tab_navi,
* html .event_detail_list .list_line,
* html .form_layout .list_line,
* html .form_layout .sec_list_line {height:1%;}

.clearfix,
.event_tab_navi,
.event_detail_list .list_line,
.form_layout .list_line,
.form_layout .sec_list_line {display:block;}
