/**
 *	Booking form
 */
form.attmgr_booking_form {
	margin: 0;
	padding: 0;
	width: 100%;
	text-align: left;
}
form.attmgr_booking_form dl {
	margin: auto 0;
}
form.attmgr_booking_form dt {
	clear: left;
	float: left;
	width: 120px;
	padding: 3px 0;
}
form.attmgr_booking_form dd {
	margin: 0 0 1em 130px; 
}
form.attmgr_booking_form label span.required {
	color: #f66;
}
form.attmgr_booking_form input[type="text"] {
	max-width: 300px;
	width: 60%;
}
form.attmgr_booking_form textarea {
	width: 96%;
	min-height: 4em;
}
form.attmgr_booking_form textarea[readonly] {
	background-color: #f9f9f9;
}
form.attmgr_booking_form .not_entered {
	background-color: #ffeeee;
	border-color: #faa;
}
form.attmgr_booking_form input.attmgr_booking_date {
	width: auto;
}
form.attmgr_booking_form input.attmgr_booking_time {
	float: left;
	width: 100px;
}

@media screen and (max-width: 480px) {
	form.attmgr_booking_form dd {
		clear: left;
		margin: 0 0 1em 0; 
	}
}



/**
 *	Calendar
 */
table.attmgr_calendar_schedule {
	width: 100%;
	border-collapse: collapse;
	padding: 1px;
	font-size: small;
}
table.attmgr_calendar_schedule td,
table.attmgr_calendar_schedule th {
	padding: 3px !important;
	text-align: center;
	line-height: 1.3em;
	width: 12.5%;
}
table.attmgr_calendar_schedule th {
	border: 1px solid #ccc;
	background-color: #f9f9f9;
	color: #333;
}
table.attmgr_calendar_schedule td {
	border-width: 1px 1px 0;
	border-style: solid;
	border-color: #eee #ccc;
}
table.attmgr_calendar_schedule th.times {

}
table.attmgr_calendar_schedule th.sunday {
	background-color: #ffeef6;
	color: #c06;
}
table.attmgr_calendar_schedule th.saturday {
	background-color: #eef6ff;
	color: #06c;
}
table.attmgr_calendar_schedule td  a {
	text-decoration: none;
	box-shadow: none;
}
table.attmgr_calendar_schedule tr.tr_00 td {
	border-top: 1px solid #ccc;
}
table.attmgr_calendar_schedule tr:last-child td {
	border-bottom: 1px solid #ccc;
}

/*
 *	Mobile
 */
@media screen and (max-width: 480px) {
	table.attmgr_calendar_schedule th,
	table.attmgr_calendar_schedule td {
		padding:0;
		font-size: x-small;
		font-weight: normal;
	}
	table.attmgr_calendar_schedule .date,
	table.attmgr_calendar_schedule .dow {
		display:block;
		line-height: 1.3em;
	}
}

/**
 *	Staff Block
 */
dl.staff_block_table {
	margin: auto 0;
}
dl.staff_block_table dt {
	clear: left;
	float: left;
	width: 100px;
	height: 100px;
	font-weight: normal;
	text-align: center;
	margin-bottom: 1em;
}
dl.staff_block_table dt img {
	width: 50px;
	margin: 0px 8px 3px 8px;
}
dl.staff_block_table dd {
	margin: 0 0 1em 110px; 
	height: 100px;
}
dl.staff_block_table dd form label {
	margin-right: 10px;
}
@media only screen and (max-width:480px) {
	dl.staff_block_table dt {
		clear: both;
		float: both;
		width: 100%;
		height: auto;
		font-weight: normal;
		text-align: center;
		padding-bottom: 0;
	}
	dl.staff_block_table dt img {
		width: 50px;
		margin: 0px 8px 3px 8px;
	}
	dl.staff_block_table dd {
		padding-bottom: 1em;
		margin: 0 0 15px 0;
		text-align: center;
		height: auto;
		border-bottom: 1px solid #ccc;
	}
}

/**
 *	Timetable
 */
table.timetable {
	margin: 0;
	float: left;
	border-collapse: collapse;
	margin-bottom: 8px;
}
table.timetable td,
table.timetable th {
	padding: 0;
}
table.timetable tr.tt_body td {
	padding: 0;
	border: 1px solid #ccc;
	line-height: 3em;
}
table.timetable tr.tt_head td {
	padding: 0 0 0 3px;
	font-size: x-small;
	line-height: 1.3em;
	border: 1px solid #ccc;
	border-bottom: 1px solid #ddd;
	width: auto !important;	/* T.SOEN */
}
table.timetable td:last-child {
	border-right: 1px solid #ccc;
}
table.timetable td.tt_working {

}
table.timetable td.tt_working a {
	display: inline-table;
	width: 100%;
	height: 100%;
	text-decoration: none;
	position: relative;

}
table.timetable td.tt_working a:hover {

}
table.timetable td.tt_offtime {
	background: #fff;
}
table.timetable td.tt_close {

}
table.timetable td.tt_00 {
	border-left: 1px solid #ccc;
}

/* モバイル用のスタイル */
@media only screen and (max-width: 480px) {
    table.timetable {
        /*transform: scale(0.8);*/ /* テーブル全体を縮小 */
        transform-origin: top left;
    }
    table.timetable tr.tt_head td {
        font-size: 0.6em;
    }
    table.timetable td,
    table.timetable th {
        font-size: 0.7em;
        line-height: 1.2em;
    }
}

/**
 *	Booking list
 */
table.attmgr_booking_list {
	border-collapse: collapse;
	overflow-x: auto;	/* T.SOEN 横スクロールバーを表示する */
	width: 100%; /* T.SOEN テーブルが親要素の幅に収まるようにする */
    white-space: nowrap; /* T.SOEN テーブル内のテキストが折り返されないようにする */
}
table.attmgr_booking_list th {
	padding: 5px;
}
table.attmgr_booking_list td {
	padding: 5px;
}
table.attmgr_booking_list th.id,
table.attmgr_booking_list td.id {
	width: 5%;
	text-align: center;
}
table.attmgr_booking_list th.datetime,
table.attmgr_booking_list td.datetime {
	width: 20%;
}
table.attmgr_booking_list th.usingtime,
table.attmgr_booking_list td.usingtime {
	width: 25%;
}
table.attmgr_booking_list th.staff,
table.attmgr_booking_list td.staff {
	width: 10%;
}
table.attmgr_booking_list th.member,
table.attmgr_booking_list td.member {
	width: 10%;
}
table.attmgr_booking_list th.phone,
table.attmgr_booking_list td.phone {
	width: 5%;
}
table.attmgr_booking_list th.email,
table.attmgr_booking_list td.email {
	width: 20%;
}
table.attmgr_booking_list th.manage,
table.attmgr_booking_list td.manage {
	width: 5%;
}
table.attmgr_booking_list tr.canceled td {
	background-color: #eee;
	color: #999;
	text-decoration: line-through;
}
form#hide_cancelled_form {
	float: left;
}

/* T.SOEN スマートフォンの画面サイズに対するスタイル */
@media (max-width: 767px) {
    .attmgr_booking_list-wrapper {
        overflow-x: auto; /* スマートフォンの場合に横スクロールを有効にする */
    }
}

/* T.SOEN PCでも横スクロールを表示させるためのスタイル */
@media (min-width: 768px) {
    .attmgr_booking_list-wrapper {
        overflow-x: auto; /* PCでも横スクロールを有効にする */
    }
}

/**
 *	Page Navi
 */
.list_pagenavi-tpcnl {
	float: right;
	zoom: 100%;
	margin-top: 5px;
	margin-bottom: 5px;
	line-height: 1.5em;
}
.list_pagenavi-tpcnl:after {
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
	content: "";
}
.list_pagenavi-tpcnl .first_page,
.list_pagenavi-tpcnl .prev_page,
.list_pagenavi-tpcnl .current_page,
.list_pagenavi-tpcnl .next_page,
.list_pagenavi-tpcnl .last_page {
	float: left;
	margin-right: 1px;
	text-align: center;
}
.list_pagenavi-tpcnl .first_page,
.list_pagenavi-tpcnl .prev_page,
.list_pagenavi-tpcnl .next_page,
.list_pagenavi-tpcnl .last_page {
	border: 1px solid #ddd;
	background-color: #eee;
}
.list_pagenavi-tpcnl a,
.list_pagenavi-tpcnl span.invalid_link,
.list_pagenavi-tpcnl .current_page span {
	display: block;
	padding: 3px 10px;
	background-color: #fff;
}
.list_pagenavi-tpcnl span.invalid_link {
	color: #aaa;
	background-color: #f6f6f6;
}
.list_pagenavi-tpcnl a:hover {
	color: #fff;
	background-color: #0073aa;
}

/**
 *	Extract form
 */
form.extract_form {
	width: auto;
	float: left;
	margin-right: 10px;
}
form.extract_form {
	font-size: 0.8em;
}

/**
 *	Date picker
 */
.ui-datepicker {
	font-size: x-small;
}