@charset "utf-8";

body {
	width: 750px;
	margin: 10px auto;
	font-family: 'ＭＳ Ｐゴシック', sans-serif;
	padding-bottom: 100px;
}

strong {
	color: #990000;
}

h1 {
	border-bottom:1px solid #ccc;
}

h2 {
	font-size: 18px;
	margin: 0;
}

table.order-table {
	width:100%;
	border-collapse: separate;
	border-spacing: 0;
	margin-bottom: 20px;
	border-top: solid 1px #000;
	border-left: solid 1px #000;
}

table.order-table th {
	font-weight: normal;
	font-size: 13px;
	border-right: solid 1px #000;
	border-bottom: solid 1px #000;
	padding: 8px;
}
table.order-table td {
	font-size: 13px;
	border-right: solid 1px #000;
	border-bottom: solid 1px #000;
	padding: 8px;
}

table.form-table {
	border-collapse: separate;
	border-spacing: 0;
	margin-bottom: 20px;
	width: 100%;
}

table.form-table th {
	font-weight: normal;
	font-size: 13px;
	text-align: right;
	padding: 8px;
	width: 150px;
}
table.form-table td {
	font-size: 13px;
	padding: 8px;
}

table.form-table input[type="text"],
table.form-table input[type="email"],
table.form-table input[type="date"],
table.form-table select,
table.form-table textarea {
	height: 30px;
	padding: 5px 8px;
	font-size: 14px;
	border: 1px solid #ccc;
	border-radius: 3px;
	font-family: inherit;
}

table.form-table textarea {
	height: auto;
	resize: vertical;
}

table.form-table label {
	font-size: 14px;
}

table.form-table input[type="radio"] {
	margin-right: 5px;
}

table.form-table div {
	margin-bottom: 5px;
}

table.info_table th {
	font-weight: normal;
	font-size: 13px;
	text-align: right;
}
table.info_table td {
	font-size: 13px;
}

.attension {
	font-size: 10px;
	text-align: right;
	margin-bottom: 10px;
}

.ta-left   { text-align: left; }
.ta-center { text-align: center; }
.ta-right  { text-align: right; }

/* モーダル用CSS */
.modal {
	display: none;
	position: fixed;
	z-index: 1000;
	padding-top: 100px;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: auto;
	background-color: rgba(0,0,0,0.6);
}

.modal-content {
	margin: auto;
	display: block;
	max-width: 80%;
	max-height: 80%;
}

.modal img {
	width: 100%;
	height: auto;
}

.close {
	position: absolute;
	top: 50px;
	right: 35px;
	color: #f1f1f1;
	font-size: 40px;
	font-weight: bold;
	cursor: pointer;
}

.close:hover,
.close:focus {
	color: #bbb;
	text-decoration: none;
	cursor: pointer;
}

.product-image {
	cursor: pointer;
}

.qty {
	text-align: right;
	height: 30px;
	font-size: 14px;
	padding: 5px 8px;
	border: 1px solid #ccc;
	width: 60px;
	-moz-appearance: textfield;
}

.qty::-webkit-outer-spin-button,
.qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.price {
	text-align: right;
}

.unit {
	text-align: right;
}

.form-buttons {
	text-align: center;
	margin: 30px 0;
}

.btn-confirm, .btn-reset, .btn-back, .btn-send {
	padding: 12px 24px;
	font-size: 14px;
	border: none;
	border-radius: 4px;
	cursor: pointer;
	margin: 0 10px;
}

.btn-confirm {
	background-color: #007bff;
	color: white;
}

.btn-confirm:hover {
	background-color: #0056b3;
}

.btn-reset {
	background-color: #6c757d;
	color: white;
}

.btn-reset:hover {
	background-color: #545b62;
}

.btn-back {
	background-color: #6c757d;
	color: white;
}

.btn-back:hover {
	background-color: #545b62;
}

.btn-send {
	background-color: #28a745;
	color: white;
}

.btn-send:hover {
	background-color: #218838;
}

.error-field {
	border: 2px solid #e74c3c !important;
	background-color: #fdf2f2;
}

.filled-field {
	border: 2px solid #28a745 !important;
	background-color: #f8fff9;
	font-weight:bold;
}
