@charset "utf-8";

/* 既存のキャンペーン本文で必要な基本スタイル。 */
html {
	height: 100%;
	min-width: 1000px;
}

body, table, th, td, div, h1, h2, h3, h4, h5, h6, p, ul, ol, li, form, textarea, input {
	margin: 0;
	padding: 0;
}

table, div {
	margin: 0 auto;
}

body {
	height: 100%;
	text-align: center;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #642;
}

td { vertical-align: top; }
img, textarea { vertical-align: bottom; }

a { text-decoration: none; }
a img { border: none; }
a img:hover, a:hover img { opacity: 0.7; }
a, a:link { color: #5588ff; }
a:visited { color: #8855aa; }
a:hover, a:active { color: #00cccc; }

input[type="submit"], input[type="reset"], input[type="button"], button {
	font-weight: bold;
	padding: 8px;
	border: 1px solid #808080;
	box-shadow: inset 0 1px 3px #fff;
	border-radius: 3px;
	cursor: pointer;
}

input[type="text"] {
	color: #303030;
	font-weight: bold;
	padding: 8px;
	border: 1px solid #808080;
	box-shadow: inset 0 1px 3px #bbb;
	border-radius: 3px;
}

input[type="text"]:focus { background: #f0f0ff; }

div.clearfix {
	overflow: hidden;
	clear: both;
}

/* Book専用のヘッダーはロゴだけを表示する。 */
.book-header {
	padding: 14px 20px;
	background: #ffc800;
	text-align: left;
}

.book-header a { display: inline-block; }
.book-logo { height: 32px; width: auto; color: #fff; vertical-align: bottom; }
.book-header a:hover .book-logo { opacity: 0.7; }

div.general {
	font-size: 13px;
	box-sizing: border-box;
	width: 960px;
	margin: 20px auto;
	padding: 5px;
	background-color: #fffcf6;
	border-radius: 5px;
	border: 1px solid #664422;
	text-align: left;
}

div.general h1 {
	font-size: 20px;
	font-weight: bold;
	margin: 5px;
	padding: 2px 5px;
	text-align: left;
	border-bottom: 1px solid #7D4422;
}

div.general div.body { padding: 10px; }

div.general table {
	border-collapse: collapse;
	margin-left: 0;
}

div.general th { background-color: #eee; }
div.general td { background-color: #fff; }

div.general th, div.general td {
	vertical-align: top;
	text-align: left;
	font-size: 13px;
	padding: 8px 15px;
	color: #4E4E4E;
	border: solid 1px #7B7B7B;
}

div.general form { text-align: center; }
div.general form th { width: 200px; vertical-align: middle; }
div.general form td { width: 600px; vertical-align: middle; }
div.general form td input[type="text"] { width: 580px; }
div.general form input[type="submit"] { width: 500px; margin: 15px; }
div.general form table { margin: 0 auto; }
div.general form div.message { color: #ff0000; margin-bottom: 5px; }

.com3d2_reservation .general {
	background: #27323c;
	border: none;
	color: #fff;
	text-align: center;
}

.com3d2_reservation .general h1 {
	border-bottom: 1px solid #aaa;
	text-align: center;
}

.com3d2_reservation .general .message {
	color: #ff5555;
}

.com3d2_reservation .general .tbl th {
	background: #0a0d0f;
	color: #fff;
	text-align: center;
	vertical-align: middle;
}

.com3d2_reservation .general .tbl1 th {
	font-size: 20px;
}

.com3d2_reservation .general .tbl tr:nth-child(even) th {
	background-color: #13191e;
}

.com3d2_reservation .general .tbl td {
	background: #13191e;
	color: #fff;
	text-align: center;
	vertical-align: middle;
}

.com3d2_reservation .general .tbl1 td {
	font-size: 20px;
}

.com3d2_reservation .general .tbl2 th {
	font-size: 15px;
}

.com3d2_reservation .general .tbl2 td {
	font-size: 15px;
	padding: 5px;
}

.com3d2_reservation .general .tbl tr:nth-child(even) td {
	background-color: #1d252d;
}

.com3d2_reservation .general .tbl1 th, .com3d2_reservation .general .tbl1 td {
	border: none;
}

.com3d2_reservation .general .tbl2 th, .com3d2_reservation .general .tbl2 tr {
	border: 1px solid #fff;
}

.com3d2_reservation .general .tbl2 td {
	border: none;
}

.com3d2_reservation .general a:visited, .com3d2_reservation .general a:link {
	color: #7cff81;
}

/* キャンペーン専用の配色と固定画像に合わせた寸法。 */
.com3d2_reservation .general.reservation-grade { background-color: #a39869; }
.com3d2_reservation .general h1.reservation-heading { font-size: 30px; }
.reservation-download { width: 500px; }
.reservation-overview { width: 740px; }
.reservation-column { width: 370px; }
.reservation-milestones { width: 360px; }
