@charset "UTF-8";

/* 
 * firefox
 *   施設アイコンのliをdisplay:block;にして横に並べると
 *   サイズを計算がうまくできない 
 * 2008-09-08 微調整 (east)
 */

/*
 * ページ内共通
 */
* 
{
	margin: 0;
	padding: 0;
	font-style: normal;
	font-weight: normal;
}

a:link 
{
	color: #666;
}
a 
{
	text-decoration: none;
	color: #666;
}

img 
{
	border: none;
}

h2 
{
	font-size: 14px;
	font-weight: bold;
}
h3 
{
	clear: both;
	font-size: 14px;
	font-weight: bold;
	margin-left: 8px;
	padding : 1px 18px;
	background: url(images/allow3.png) no-repeat center left;
	color: #333;
}
h4 
{
	clear: both;
	font-size: 12px;
	margin-left: 12px;
	padding : 1px 15px;
	background: url(images/allow2_small.png) no-repeat center left;
	color: #333;
}
h5 
{
	clear: both;
	font-size: 12px;
	margin-left: 12px;
	padding : 1px 15px;
	color: #333;
}

body 
{
	background-color: #e0e6fc;
	color: #333;
	text-align: left;
	/* font: 12px/175% sans-serif; */
	font: 0.8em/175% 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
}

#wrapper 
{
	width: 800px;
	margin: 0 auto;
	background-color: #ffffff;
	border-left: 1px solid #afafb2;
	border-right: 1px solid #afafb2;
	border-bottom: 1px solid #afafb2;
}
#bg 
{
	width: 780px;
	margin: 0 auto;
	padding: 5px;
}

#wrapper_short2 
{
	width: 500px;
	margin: 0 auto;
	background-color: #ffffff;
	border-left: 1px solid #afafb2;
	border-right: 1px solid #afafb2;
	border-bottom: 1px solid #afafb2;
}
#bg_short2 
{
	width: 480px;
	margin: 0 auto;
	padding: 5px;
}

/*
 * プラン検索（一覧）から戻る
 */
.back_to_the
{
	width: 780px;
	height: 30px;
	margin-bottom: 6px;
}
.back_to_the .back_button
{
	float: left;
	width: 80px;
	height: 30px;
}
.back_button a
{
	display: block;
	width: 100%;
	height: 25px;
	padding-top: 5px;
	text-indent: 34px;
	font-size: 16px;
	font-weight: bold;
	background: url(images/back_to_the.png) no-repeat;
}
.back_to_the img.vj_logo
{
	display: block;
	float: right;
}

/*
 * ページヘッダ
 */
#plan_head 
{
	height: 57px;
	background: url(images/plan_head.png) no-repeat;
}
#input_head 
{
	height: 57px;
	background: url(images/input_head.png) no-repeat;
}
#conf_head {
	height: 57px;
	background: url(images/r_conf_head.png) no-repeat;
}

#req_head {
	width: 478px;
	height: 57px;
	background: url(images/request_head.png) no-repeat;
}

#plan_head #plan_head_text, 
#input_head #input_head_text, 
#conf_head #conf_head_text,
#req_head #req_head_text 
{
	display:block;
	float:left;
/*	width: 395px; */
	width: 790px;
	margin-top:12px;
	font-weight: bold;
	font-size: 14px;
	text-indent:42px;
	color: #666;
}

/*
 * ページフッタ
 */
#page_bottom 
{
	width: 780px;
	margin-top: 20px;
	margin-bottom: 20px;
}
#page_bottom_short2 
{
	width: 480px;
	margin-top: 20px;
	margin-bottom: 20px;
}

/*
 * プラン：検索
 */
#search 
{
	height: 57px;
	background: url(images/search_back.png) no-repeat;
}

#search #search_text 
{
	display:block;
	float:left;
	margin-top:20px;
	width: 395px;
	color: #666;
	font-weight: bold;
	font-size: 14px;
	text-indent:60px;
}

#search #search_date 
{
	display:block;
	float:left;
	width: 250px;
}

#search_date #search_year 
{
	display: block;
	float:left;
	width: 100px;
	padding-left: 15px;
	padding-top: 18px;
	font-weight: bold;
}

#search_year select 
{
	width: 70px;
}

#search_date #search_month 
{
	float:left;
	width: 72px;
	margin-left: 13px;
	padding-left: 20px;
	padding-top: 18px;
	font-weight: bold;
}

#search_month select 
{
	width: 50px;
}

#search_button a 
{
	display:block;
	float:left;
	width: 80px;
	height: 27px;
	margin-top: 11px;
	padding: 9px 0 0 45px;
	font-size: 14px;
	font-weight: bold;
	background: url(images/search_button.png) no-repeat;
}

#search_button a:hover 
{
	background: url(images/search_button_over.png) no-repeat;
	color: #fff;
}

/*
 * 中身
 */
.content 
{
	width: 780px;
	margin: 0 auto;
	padding-top: 10px;
}
.content_short 
{
	width: 680px;
	margin: 0 auto;
	padding-top: 10px;
}
.content_short2 
{
	width: 480px;
	margin: 0 auto;
	padding-top: 10px;
}

.content_title 
{
	clear: both;
	width: 780px;
	height: 32px;
	background: url(images/title_back.png) no-repeat;
}

.content_plan_title 
{
	clear: both;
	width: 758px;
	height: 22px;
	padding: 5px 10px;
	background: #8ecdf0;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
}

.content_title h2, 
.content_title_short h2 
{
	padding: 6px 20px 0 20px;
	color: #333;
}
.content_title_short 
{
	width: 680px;
	height: 32px;
	background: url(images/title_back_short.png) no-repeat;
}

.content_body 
{
	clear: both;
	width: 758px;
	padding: 10px;
	border: 1px solid #ccc;
	color: #333;
}
.content_body_short {
	width: 658px;
	padding: 10px;
	border: 1px solid #ccc;
	color: #666;
}
.content_body_short2 {
	width: 458px;
	padding: 10px;
	border: 1px solid #ccc;
	color: #666;
}

.content_description 
{
	width: 780px;
	margin: 0 auto;
	padding: 5px 0px;
}
.content_description_short 
{
	width: 680px;
	padding: 15px 0;
	margin: 0 auto;
}

.content_description li, 
.content_description_short li 
{
	margin-left: 40px;
	color: #999;
}

/*
 * 中身：ホテル
 */
.content_body #hotel_equipment 
{
	width: 100%;
}
#hotel_equipment .hotel_equipment_image 
{
	float: left;
	vertical-align: top;
	padding: 0 10px 0 0;
}
#hotel_equipment table 
{
	margin: 0px;
	padding: 0px;
	border-collapse: collapse;
	border-width: 0px;
}
#hotel_equipment td 
{
	text-align: left;
	vertical-align: top;
}

.content_body .hotel_footer 
{
	width: 100%;
	height: 40px;
}
.hotel_footer .hotel_footer_icon {
	float: right;
}

/*
 * 中身：プラン
 */
.content_body .plan_left 
{
	float: left;
}
.content_body .plan_right 
{
	float: right;
	width: 380px;
}
.content_body .plan_footer 
{
	clear: both;
	width: 100%;
	height: 60px;
	margin-top: 5px;
}

.plan_left .plan_explanation 
{
	float: left;
}
.plan_explanation .plan_room 
{
	float: left;
	width: 180px;
	font-size: 12px;
	text-align:center;
	font-weight: normal;
	border : 1px solid #ccc;
}

.plan_left .plan_explanation2 
{
	float: right;
	width: 550px;
	padding : 5px 5px 5px 15px;
}
.plan_explanation2 ul 
{
	margin-left: 15px;
}
.plan_left .plan_explanation2 ul li
{
	font-weight: bold;
}
.plan_right .plan_remarks 
{
}
.plan_remarks .plan_remarks_text 
{
}
.plan_remarks .plan_remarks_list 
{
}
.plan_remarks_list ul 
{
	padding :0px;
	margin: 0px;
	margin-top: -15px;
}
.plan_remarks_list li 
{
	margin-left: 15px;
	font-weight: bold;
}

.content_body #plan_equipment 
{
}
#plan_equipment .equipment_image 
{
	float: left;
	padding: 0 10px 0 0;
}
#plan_equipment table 
{
	border: 0px;
}
#plan_equipment table tr 
{
	border: 0px;
}
#plan_equipment table td 
{
	border: 0px;
	text-align: left;
	vertical-align: top;
}

.plan_footer .plan_footer_icon 
{
	float: left;
	width: 510px;
	margin-top: 10px;
}
.plan_footer .plan_footer_icon_detail 
{
	float: left;
}

.plan_footer .reservation_button 
{
	float: right;
}

.content .attention, 
.content_description .attention 
{
	clear: both;
	margin-left: 12px;
	padding : 1px 15px;
	font-size: 12px;
	color: #BF473F;
}

/* 
 * 施設アイコン 
 */
.hotel_footer_icon ul, 
.plan_footer_icon ul, 
.plan_footer_icon_detail ul 
{
	margin: 0px;
	padding: 0px;
	list-style: none;
}
.hotel_footer_icon li, 
.plan_footer_icon li, 
.plan_footer_icon_detail li 
{
	display: block;
	float: left;
	padding-left: 5px;
}
.hotel_footer_icon img, 
.plan_footer_icon img, 
.plan_footer_icon_detail img 
{
	width: 45px;
	height: 45px;
}
.hotel_footer_icon div.chargeable, 
.plan_footer_icon div.chargeable, 
.plan_footer_icon_detail div.chargeable 
{
	font-size: 10px;
	text-align: center;
	color: red;
}

/*
 * カレンダー：説明
 */
.content_description #calender_mark 
{
	padding-left:15px;
}
#calender_mark ul 
{
	list-style: none;
}
#calender_mark li 
{
	display: block;
	float: left;
	margin: 0px;
	padding-left: 5px;
	width: 105px;
	height: 21px;
	font-size: 12px;
	color: #666;
}
#calender_mark #ok 
{
	padding: 1px;
	text-align: center;
	font-weight: bold;
	background: url(images/ok.png) no-repeat;
}
#calender_mark #warning 
{
	padding: 1px;
	text-align: center;
	font-weight: bold;
	background: url(images/warning.png) no-repeat;
}
#calender_mark #full 
{
	padding: 1px;
	text-align: center;
	font-weight: bold;
	background: url(images/full.png) no-repeat;
}

/* 
 * カレンダー：1ヶ月 
 */
.plan_explanation .reservation_calender {
	float: left;
	width: 180px;
	margin-left: 10px;
}
.reservation_calender table 
{
	width: 180px;
	border-right: 1px solid #333;
}
.reservation_calender table caption 
{
	border: 1px solid #666;
	font-weight: bold;
	background: #f2f2f2;
}

/*
 * カレンダー：3ヶ月
 */
.plan_explanation_threemonth 
{
	width: 760px;
	margin: 0px;
}
.plan_explanation_threemonth .reservation_calender_threemonth 
{
	float: left;
	width: 250px
}
.reservation_calender_threemonth table 
{
	width: 238px;
	margin: 0 auto;
	border-right: 1px solid #333;
}
.reservation_calender_threemonth table caption 
{
	margin: 0 auto;
	border: 1px solid #666;
	font-size: 12px;
	font-weight: bold;
	background: #f2f2f2;
}

/*
 * カレンダー：中身
 */
.reservation_calender table tr.week, 
.reservation_calender_threemonth table tr.week 
{
	background: #f2f2f2;
}
.reservation_calender table td, 
.reservation_calender_threemonth table td 
{
	width: 25px;
	border-left: 1px solid #666;
	border-bottom: 1px solid #666;
	font-size: 10px;
	font-weight: bold;
	line-height: 140%;
	text-align: center;
}
.reservation_calender_threemonth table td {
	width: 34px;
	font-size: 11px;
}
.reservation_calender table td.sun, 
.reservation_calender_threemonth table td.sun 
{
	text-align: center;
	color:#f00;
}
.reservation_calender table td.sat, 
.reservation_calender_threemonth table td.sat 
{
	color:#1874fe;
}
.reservation_calender table td.ok, 
.reservation_calender_threemonth table td.ok 
{
	background: #80ff80;
}

.reservation_calender table td.warning, 
.reservation_calender_threemonth table td.warning 
{
	background: #ffdd54;
}
.reservation_calender table td.full, 
.reservation_calender_threemonth table td.full 
{
	background: #ff8080;
	color: #666;
	font-weight: normal;
}
.reservation_calender table td.disable, 
.reservation_calender_threemonth table td.disable 
{
	background: #dddddd;
	color: #aaa;
	font-weight: normal;
}

.rank_red 
{
	padding: 1px 2px;
	background: maroon;
	color: white;
	font-weight: bold;
}
.rank_blue 
{
	padding: 1px 2px;
	background: navy;
	color: white;
	font-weight: bold;
}
.rank_purple 
{
	padding: 1px 2px;
	background: purple;
	color: white;
	font-weight: bold;
}

/*
 * プラン：ページ移動
 */
#page_content 
{
	width: 200px;
	height: 30px;
	margin: 0 0 0 auto;
	padding:10px 0;
}
#page_content a#prev 
{
	float: left;
	width: 47px;
	height: 23px;
	margin-left: 15px;
	padding: 7px 0 0 33px;
	font-size: 14px;
	font-weight: bold;
	background: url(images/back1.png) no-repeat;
}
#page_content a#forward 
{
	float: right;
	width: 47px;
	height: 23px;
	margin-right: 12px;
	padding: 7px 0 0 33px;
	font-size: 14px;
	font-weight: bold;
	background: url(images/next1.png) no-repeat;
}

#calender_page_switch 
{
	display: block;
	float: right;
	width: 90px;
	height: 18px;
	margin-top: 12px;
	margin-right: 12px;
}
#calender_page_switch a#prev 
{
	display: block;
	float: left;
	line-height: 100%;
	height: 14px;
	font-size: 14px;
	padding: 0px 0px 0px 14px;
	background: url(images/allow_left1.png) no-repeat;
}
#calender_page_switch a#forward 
{
	display: block;
	float: right;
	line-height: 100%;
	height: 14px;
	font-size: 14px;
	padding: 0px 0px 0px 14px;
	background: url(images/allow_right1.png) no-repeat;
}

/*
 * 基本料金表
 */
#price_table 
{
	border-top: 1px solid #666;
	border-left: 1px solid #666;
}

#price_table #price_head td 
{
	padding: 5px 10px;
	font-size: 14px;
	font-weight: bold;
	border-right: 1px solid #666;
	border-bottom: 1px solid #666;
	background: #f2f2f2;
}

#price_table .price_1_head, 
#price_table .price_2_head 
{
	padding: 5px 10px;
}
#price_table .price_1 td 
{
	padding: 5px 10px;
	font-size: 12px;
	text-align: right;
	border-right: 1px solid #666;
	border-bottom: 1px solid #666;
	background: #afc6e9;
}
#price_table .price_2 td 
{
	padding: 5px 10px;
	font-size: 12px;
	text-align: right;
	border-right: 1px solid #666;
	border-bottom: 1px solid #666;
	background: #d7e3f4;
}

/*
 * ユーザーアカウント
 */
.content_body .content_load_user, 
.content_body_short2 .content_load_user 
{
	margin: 7px 0 7px 15px;
}
.content_load_user table 
{
	border-width: 0px;
}

/*
 * 中身：予約
 */
.content .content_body_noborder, 
.content_description .content_body_noborder 
{
	width: 780px;
	color: #666;
}
.content_body_noborder .content_table 
{
	width: 780px;
	border-top: 1px solid #cccccc;
	border-left: 1px solid #cccccc;
}
.content_table .content_table_head 
{
	width: 200px;
	padding: 5px 10px;
	font-size: 12px;
	font-weight: bold;
	background: #f2f2f2;
}
.content_table .content_table_head2 
{
	width: 30px;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	background: #f2f2f2;
}
.content_table .content_table_head3 
{
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	background: #f2f2f2;
}
.content_table .content_table_head_half 
{
	width: 90px;
	padding: 5px 10px;
	font-size: 12px;
	font-weight: bold;
	background: #f2f2f2;
}
.content_table td 
{
	padding: 5px 10px;
	font-size: 12px;
	border-right: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
}

select.d_4len 
{
	width: 70px;
}
select.d_2len 
{
	width: 45px;
}

/*
 * メッセージ
 */
.content .message_top 
{
	display: block;
	width: 680px;
	height: 13px;
	margin: 0 auto;
	background: #5499ff url(images/message_top.png) no-repeat;
}
.content .message_body 
{
	display: block;
	width: 680px;
	margin: 0 auto;
	padding: 10px 0;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	background: #5499ff;
	color: #fff;
}
.content .message_bottom 
{
	display: block;
	width: 680px;
	height: 13px;
	margin: 0 auto;
	background: #fff url(images/message_bottom.png) no-repeat;
}

.content .message_warning 
{
	display: block;
	width: 780px;
	margin: 0 auto;
	padding: 10px 0;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	color: #fff;
	background: #ff2a7f;
}

.message_text {
	padding: 5px 0;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	color: #333;
}

/*
 * ボタンまわり
 */
.next_dialog, .cancel_dialog 
{
	width: 280px;
	margin: 0 auto;
	overflow: hidden;
	padding-top: 10px;
}

.next_dialog a.yes_button, 
.cancel_dialog a.yes_button 
{
	display: block;
	float: right;
	width: 120px;
	height: 26px;
	padding-top: 12px;
	font-size: 14px;
	font-weight: bold;
	background: url(images/yes_blue.png) no-repeat;
}
.next_dialog a.no_button, 
.cancel_dialog a.no_button 
{
	display: block;
	float: left;
	width: 120px;
	height: 26px;
	padding-top: 12px;
	font-size: 14px;
	font-weight: bold;
	background: url(images/no_blue.png) no-repeat;
}
.next_dialog a.next_button, 
.next_dialog a.login_button, 
.cancel_dialog a.cancel_button 
{
	display: block;
	width: 240px;
	height: 28px;
	margin: 0 auto;
	padding-top: 10px;
	font-size: 14px;
	font-weight: bold;
	background: url(images/forward_blue.png) no-repeat;
}

.return_button 
{
	width: 240px;
	height: 38px;
	margin: 0 auto;
	background: url(images/return.png) no-repeat;
}
.return_button a 
{
	display: block;
	width: 240px;
	height: 29px;
	padding-top: 9px;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
}

.reservation_button a 
{
	margin-top: 10px;
	display: block;
	width: 199px;
	height: 29px;
	padding-top: 9px;
	padding-left: 41px;
	font-size: 14px;
	font-weight: bold;
	color: #fff;
	background: url(images/forward.png) no-repeat;
}

.close_button 
{
	width: 120px;
	height: 38px;
	margin: 0 auto;
	text-align: center;
	background: url(images/no.png) no-repeat;
}
.close_button a 
{
	display: block;
	width: 120px;
	height: 26px;
	padding-top: 9px;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
}

/*
 * 確認
 */
#login_input 
{
	width: 360px;
	padding-left: 180px;
	padding-top: 20px;
	padding-bottom: 20px;
}
#login_input .login_field 
{
	width:120px;
	padding-left: 18px;
	font-weight: bold;
	font-size:14px;
	background: url(images/allow1.png) no-repeat left center;
}

#login_input input
{
	margin-left: 5px;
}

/*
 * アンカー
 */
a.request_account 
{
	text-decoration: underline;
	color: blue;
}

a.table_cell 
{
	display: block;
	width: 100%;
	height: 100%;
	color: #333;
	font-weight: bold;
	text-decoration: none;
}

a.table_cell:hover 
{
	background : #4f94f7;
	color: #fff;
}

#request_user_button a 
{
	display:block;
	width: 100px;
	height: 25px;
	margin-left: 10px;
	font-size: 12px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	padding-top: 4px;
	background: url(images/request_button.png) no-repeat;
}
#request_user_button a:hover 
{
	background: url(images/request_button_over.png) no-repeat;
}

#load_user_button a 
{
	display:block;
	width: 100px;
	height: 27px;
	margin-left: 10px;
	font-size: 12px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	padding-top: 2px;
	background: url(images/load_button.png) no-repeat;
}
#load_user_button a:hover 
{
	background: url(images/load_button_over.png) no-repeat;
}

/*
 * エラー
 */
.content .error_message_body_at 
{
	display: block;
	width: 760px;
	margin: 10px auto;
	padding: 10px 10px;
	background: #ff2a7f;
	font-size: 14px;
	font-weight: bold;
	text-align: left;
	color: #fff;
}

#error_page_content 
{
	width: 780px;
	height: 30px;
	margin: 0 0 0 0;
	padding:10px 0;
}

#error_page_content a#modify 
{
	float: left;
	width: 47px;
	height: 25px;
	margin-left: 0;
	padding: 5px 0 0 36px;
	font-size: 14px;
	font-weight: bold;
	background: url(images/back1.png) no-repeat;
}

/**
 * status string format
 * add 2008-03-19
 */
.content-status-reserving {
	background: #0055d4;
	font-weight: bold;
	font-size: 14px;
	color: #fff;
	padding: 3px
}
.content-status-past-today {
	color: #93a7ac;
	font-weight: bold;
	font-size: 14px;
}
.content-status-past {
	color: #93a7ac;
	font-weight: bold;
	font-size: 14px;
}
.content-status-cancel {
	background: #d40000;
	font-weight: bold;
	font-size: 14px;
	color: #fff;
	padding: 3px
}
.content_description h4 
{
	color:#bf473f;
}

