/* お客様名とログアウトボタンのためのスタイル */
div#left {
	float: left;
}

div#right {
	text-align: right;
}

.clearLeft {
	clear: left;
}

/* ログイン画面用 */
table.login {
	border-collapse: collapse;
	border-spacing: 0;
	border: none;
}

table.login td {
	border: none;
}


/***** お知らせ *****/
div.info {
	position: relative;
	top: 0;
	left: 0;
	margin-top: 48px;
	padding-left: 32px;
	padding-top: 8px;
	padding-bottom: 8px;
	border-top: solid 1px gray;
	border-bottom: solid 3px gray;
}

div.info div.stamp_normal {
	position: absolute;
	top: -40px;
	left: 0px;
	height: 24px;
	width: 24px;
	background-image: url(image/info_normal.png);
}

div.info div.stamp_high {
	position: absolute;
	top: -40px;
	left: 0px;
	height: 24px;
	width: 24px;
	background-image: url(image/info_high.png);
}

div.info div.subject {
	position: absolute;
	top: -39px;
	left: 28px;
	font-size: large;
	color: navy;
	font-weight: bold;
}

/***** (トップ用)お知らせ *****/
div.info_main {
	padding-left: 34px;
	padding-top: 8px;
	padding-bottom: 8px;
	border-bottom: solid 3px gray;
	word-break: break-all;
}

/***** (トップ用)お知らせスタンプ *****/
div.info_main .stamp_main {
	position: relative;
	top: 0px;
	left: -32px;
}

/***** (トップ用)お知らせ タイトル部 *****/
div.info_main div.subject_main {
	position: relative;
	top: 0px;
	left: -28px;
	border-bottom: solid 1px gray;
	font-size: large;
	color: navy;
	font-weight: bold;
	padding-bottom: 5px;
}

/***** (トップ用)お知らせ 日付部 *****/
div.info_main div.date_main {
	/* position		: absolute;
	top				: -16px;
	right			: 24px; */
	font-size: small;
	text-align: right;
}

div.info div.date {
	position: absolute;
	top: -16px;
	right: 24px;
	font-size: small;
}

/* 鍵の詳細情報エリア */
div.seldet {
	margin-left: 5%;
	width: 90%;
	background-color: #ffffff;
	/* Android 4.xx系標準ブラウザバグ対策？ */
}

/* タイムテーブルエリア */
div.timetable {
	margin: 0px;
	padding: 0px;
	width: 100%;
	background-color: #ffffff;
	/* Android 4.xx系標準ブラウザバグ対策？ */
	overflow: auto;
}

/* タイムテーブル用テーブル */
table.tttbl {
	border-collapse: collapse;
	border-spacing: 0;
	border-left: solid 1px #888888;
	border-top: solid 1px #888888;
}

table.tttbl th,
td {
	padding: 4px;
	border-right: solid 1px #888888;
	border-bottom: solid 1px #888888;
}

table.tttbl th {
	background: #CCC;
	overflow: hidden;
}

table.tttbl td {
	height: 1em;
}

/* 予約の開始日時、終了日時用 */
table.resv {
	border-collapse: collapse;
	border-spacing: 0;
	border-left: solid 1px #888888;
	border-top: solid 1px #888888;
}

table.resv th,
td {
	padding: 5px;
	border-right: solid 1px #888888;
	border-bottom: solid 1px #888888;
}

table.resv th {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #eaeaea), color-stop(1, #999999));
}

/* 普通のテーブルスタイル（プロパティ表示等） */
table.general {
	border-collapse: collapse;
	border: 4px ridge #aaa;
}

table.general th {
	background: #dfdfdf;
	border-top: 1px solid black;
	border-bottom: 1px solid black;
	border-left: 1px solid black;
	border-right: 3px double black;
	height: 1.3em;
	padding-left: 1em;
	padding-right: 1em;
	white-space: nowrap;
	vertical-align: middle;
	text-align: left;
}

table.general td {
	border-top: 1px solid black;
	border-bottom: 1px solid black;
	border-left: 1px solid black;
	border-right: 1px solid black;
	height: 1.3em;
	padding-left: 1em;
	padding-right: 1em;
	white-space: nowrap;
	vertical-align: middle;
	text-align: left;
}

/* 普通のテーブルスタイル２（ヘッダ：２重線、センター） */
table.general2 {
	border-collapse: collapse;
	border: 4px ridge #aaa;
}

table.general2 th {
	background: #dfdfdf;
	border-top: 1px solid black;
	border-bottom: 3px double black;
	border-left: 1px dashed black;
	border-right: 1px dashed black;
	height: 1.3em;
	padding-left: 1em;
	padding-right: 1em;
	white-space: nowrap;
	vertical-align: middle;
	text-align: center;
}

table.general2 td {
	border-top: 1px solid black;
	border-bottom: 1px solid black;
	border-left: 1px dashed black;
	border-right: 1px dashed black;
	height: 1.3em;
	padding-left: 1em;
	padding-right: 1em;
	white-space: nowrap;
	vertical-align: middle;
	text-align: left;
}

/* 折り返しテーブルスタイル（プロパティ表示等） */
table.wrapback {
	border-collapse: collapse;
	border: 4px ridge #aaa;
}

table.wrapback th {
	background: #dfdfdf;
	border-top: 1px solid black;
	border-bottom: 1px solid black;
	border-left: 1px solid black;
	border-right: 3px double black;
	height: 1.3em;
	padding-left: 1em;
	padding-right: 1em;
	white-space: normal;
	vertical-align: middle;
	text-align: left;
}

table.wrapback td {
	border-top: 1px solid black;
	border-bottom: 1px solid black;
	border-left: 1px solid black;
	border-right: 1px solid black;
	height: 1.3em;
	padding-left: 1em;
	padding-right: 1em;
	white-space: normal;
	vertical-align: middle;
	text-align: left;
}

/* 折り返しテーブルスタイル２（ヘッダ：２重線、センター） */
table.wrapback2 {
	border-collapse: collapse;
	border: 4px ridge #aaa;
}

table.wrapback2 th {
	background: #dfdfdf;
	border-top: 1px solid black;
	border-bottom: 3px double black;
	border-left: 1px dashed black;
	border-right: 1px dashed black;
	height: 1.3em;
	padding-left: 1em;
	padding-right: 1em;
	white-space: normal;
	vertical-align: middle;
	text-align: center;
}

table.wrapback2 td {
	border-top: 1px solid black;
	border-bottom: 1px solid black;
	border-left: 1px dashed black;
	border-right: 1px dashed black;
	height: 1.3em;
	padding-left: 1em;
	padding-right: 1em;
	white-space: normal;
	vertical-align: middle;
	text-align: left;
}

.input-width {
	text-align: left;
	width: 30em;
	background-color: lightyellow;
}

.input-small-width {
	text-align: left;
	width: 15em;
	background-color: lightyellow;
}

.input-zip {
	width: 4em;
}

.error {
	font-size: 12px;
}

#documentdiv {
	margin: auto;
}

input[type=checkbox] {
	margin: 0px;
	position: initial;
}

#menseki,
#noc,
#jiko_intro {
	background-color: lightgray;
	padding: 10px;
	text-align: center;
	border-radius: 10px;
	margin-bottom: 10px;
}

#menseki button,
#noc button,
#jiko_intro button {
	background-color: dimgray;
	border-radius: 20px;
	color: white;
	margin-top: 10px;
}

.s-input-add {
	margin: 5px;
}

#s-extra-passenger .input-group-text {
	padding: 0px 5px;
	color: #656363;
	font-size: 12px;
}

.s-del-passenger {
	background-color: red;
	padding: 4px 9px;
	color: #f7f4d7;
	margin: 5px;
}

#s-add-passenger {
	background-color: #6363ec;
	width: 10em;
	padding: 5px 10px;
	color: #fdfbef;
	margin: 10px;
	font-size: 14px;
	border-radius: 5px;
	margin-top: 15px;
}

/***** モーダルカバーDIVスタイル *****/
div#modalcover2 {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background: url("./image/alphapng.png");
	z-index: 10000;
	display: none;
}

/***** モーダルダイアログ *****/
div#subwindow2 {
	position: absolute;
	top: 10%;
	left: 10%;
	width: 80%;
	height: 80%;
	background-color: #fff;
	border: solid 3px blue;
}

/***** タイトルバー *****/
div#titlebar2 {
	position: absolute;
	top: -34px;
	left: -3px;
	width: 100%;
	height: 26px;
	padding-top: 2px;
	background: url("./image/titlebar.png");
	font-weight: bold;
	color: white;
	cursor: default;
	border: solid 3px blue;
	font-size: large;
	white-space: nowrap;
	overflow: hidden;
}

div#dlgtitle {
	position: absolute;
	top: 8px;
	left: 0px;
	width: 100%;
	height: 100%;
}

/***** 閉じるボタン *****/
div#closebtn2 {
	position: absolute;
	top: 0px;
	right: 0px;
	height: 24px;
	width: 24px;
}

/***** ダイアログコンテンツ *****/
div#dialogcontent2 {
	position: relative;
	top: 0px;
	width: 100vw;
	max-width: 100%;
	height: 100%;
	background-color: white;
	overflow: auto;
	white-space: nowrap;
	-webkit-overflow-scrolling: touch;
	overflow-y: scroll;
}

/***** ダイアログ内iframe *****/
iframe#dialogframe {
	/* position		: absolute; */
	top: 0px;
	width: 1px;
	min-width: 95%;
	height: 100%;
	border: none;
	/* left 			: 0px;
	display			: block; */
}

/***** ダイアログ内content *****/
div.dlgcontent {
	padding: 1em;
	border: none;
}

#reserve,
#reserveChange {
	width: 100%;
	background-color: dimgrey;
	height: 40px;
	border-radius: 40px;
	font-size: 20px;
	color: white;
}

#reserve:disabled,
#reserveChange:disabled {
	background-color: #e4e4e4;
	color: grey
}

.wrap-checkbox input[type=checkbox] {
	display: none;
}

.headerdiv {
	width: 80%;
	margin: auto;
}

.headerdiv .headerTable td {
	display: block;
	width: 100%;
	font-size: small;
	font-weight: lighter;
}

.eq-width {
	width: 33%;
}

tr.no-width td.top-td {
	border: none;
	height: 40px;
	font-size: small;
	font-weight: lighter;
}

table.priceTable,
table.price-bottom-table {
	width: 80%;
	margin: auto;
	margin-top: 20px;
}

table.priceTable td,
table.price-bottom-table td {
	border: 1px solid black;
}

table.priceTable td,
table.price-bottom-table td {
	display: block;
	width: 100%;
}

.price-imgdiv {
	width: 80%;
	margin: auto;
	padding-top: 20px;
}

.price-imgdiv h1 {
	font-size: large;
	font-weight: bolder;
}

table.priceTable tr.first td:first-child {
	background-color: black;
	color: white;
}

table.priceTable tr.first td:not(:first-child),
table.priceTable tr.second td:nth-child(2n+4),
table.priceTable tr.second2 td:nth-child(2n+3) {
	display: none;
}

table.priceTable tr.second td:first-child {
	background-color: black;
	color: white;
}

table.priceTable tr.carName td:first-child,
table.priceTable tr.second td:nth-child(2),
table.priceTable tr.second2 td:first-child {
	font-weight: bold;
	background-color: #fcc0c8;
}

table.priceTable td,
table.priceTable th {
	display: block;
}

table.priceTable td[data-th]:before {
	content: attr(data-th);
}

.post .ui-input-text {
	width: 54px;
	margin-right: 5px;
	float: left;
}

.post-text {
	display: block;
	float: left;
	margin-right: 5px;
}

.post2 .ui-input-text {
	width: 74px;
	margin-right: 20px;
	float: left;
}

.post2 .zipbutton {
	width: 100px;
	height: 36px;
	float: left;
	font-size: medium;
	padding-top: 5px;
	padding-bottom: 3px;
	margin-left: -10px;
}

.licenseType input {
	width: 20px;
	display: inline-block;
}

.ui-checkbox {
	padding: 0 5px 0 0;
	display: inline-block;
	vertical-align: middle;
}

@media screen and (max-width: 480px) {

	/* 480pxまでの幅の場合に適応される */
	table.wrapback2 td {
		padding-left: 0.5em;
		padding-right: 0.5em;
		white-space: normal;
		vertical-align: middle;
		text-align: left;
	}

	table.general td {
		white-space: normal;
	}
}