@charset "UTF-8";

body {
	color: #2e2e2e;
	font-family: Meiryo, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
	font-size: 17px;
	line-height: 1.8em;
	padding: 0px;
	margin: 0px;
	text-align: left;
	background-color: #fafafa;

}

* {
	box-sizing: border-box;
}

::selection {
	background-color: wheat;
}

#header {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	height: auto;
	padding: 0px 0px 10px 0px;
}

#header h1 {
	text-align: left;
	margin: 0px;
	padding: 0px;

}

h3 {
	text-align: left;

	font-size: 1.0em;
	margin: 0.4em 0em 0.4em 0em;
	padding: 0px;
	color: #922512;
}

h4 {
	margin: 0px 0px 0px 0px;
	padding: 0px;
	color: #922512;
}

p {
	margin: 0px 0px 20px 0px;
	padding: 0px;
}

a {
	color: #b62910;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

/*---------------------------------------- form */

::placeholder {
    color: #c0995f;
}
/*name address*/
input[type="text"][size="24"] {
	width: 320px;
}

input[type="email"][size="24"] {
	width: 320px;
}

input[type="tel"][size="14"] {
	width: 200px;
}

/*postal*/
input[type="text"][size="16"] {
	width: 200px;
}

/*kosuu*/
input[type="text"][size="2"] {
	width: 38px;
	text-align: right;
}

textarea {
	width: 320px;
}

input[type="checkbox"],
input[type="radio"] {
	margin: 14px 10px;
	transform: scale(1.5);
	accent-color: #a03923;
}

label {
	display: inline;
}

.kaigyo label {
	display: block;
}

label:hover {
	background-color: bisque;
}

input[type="text"],
input[type="email"],
input[type="tel"],
textarea,
select {
	font-size: 1em;
	border: 1px solid #b6b6b6;
	border-radius: 4px;
	margin: 5px 0px 5px 0px;
	outline: none;
	padding: 4px;
	color: #2e2e2e;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
select:focus,
textarea:focus {
	border-color: #a03923;
	box-shadow: 0 0 0 1px #a03923;
}

select {
	border: 1px solid #b37272;
	color: #2e2e2e;
}

span.smallf {
	display: inline-block;
	margin: 0px;
	line-height: 140%;
	font-size: 80%;
}

.btn {

	cursor: pointer;
	display: inline-block;
	margin: 0px;
	padding: 7px 14px;
	text-decoration: none;
	background: #b62910;
	color: #FFF;
	border-radius: 4px;
	margin: 1em;
	font-size: 0.9em;
	border: none;
	transition: 0.2s, box-shadow 0.2s;
}

.btn:hover {
	box-shadow: 0px 0px 10px #b33924;
	background: #c43f27;
}

.winop::after {
	content: url(ico_winop.gif);
	vertical-align: 0px;
}
.e {
	color: #cc3300;
	font-size: 0.8em;
}
/*https://zuborashiki.com/css-switch-box/*/
/*中身を非表示にしておく*/
.switchbox div {
	height: 0;
	overflow-y: hidden;
	transition: 0.8s;
	/*ゆっくり表示させる*/
	opacity: 0;
}

/*クリックで中身を表示*/
.switchbox input:checked+label+div {
	height: auto;
	opacity: 1;
}

/*------------------------------------------ table */
.carttable,
.inputtable {
	border-collapse: collapse;
	width: 100%;
	padding: 0px;
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 10px;
	margin-left: auto;
	border: 1px solid #b6b6b6;
}

.carttable tr,
.inputtable tr {
	border-bottom: 1px solid #b6b6b6;
}

.carttable tr.bodrno {
	border-bottom: none;
}

.carttable tr.imgleft img {
	float: left;
	margin-right: 10px;
}

.carttable td,
.inputtable td {
	word-break: break-all;
	margin: 0px;
	padding: 5px 5px;
	text-align: left;
}

.inputtable td:nth-child(1) {
	width: 140px;
	background-color: #f1f1f1;
}

.carttable td.txrt {
	text-align: right;
	white-space: nowrap;
	vertical-align: middle;
	background-color: #f1f1f1;
	border-left: 1px solid #d3d3d3;
}

/*------------------------------------------ layout */
.modoru {
	margin-top: 0.6em;
	margin-bottom: 0.6em;
}

#main_wrap {
	text-align: left;
	min-height: 90vh;
	width: 900px;
	margin: 0px auto 40px auto;
	padding: 10px 10px 40px 10px;
	box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

.pageplace {
	width: 100%;
	margin: 0px;
	padding: 0px 0px 10px 0px;
}

.pageplace ul {
	/*background-color:#dddddd;*/
	display: inline-block;
	margin: 0px;
	height: auto;
	width: 100%;
	padding: 0px;
	border-bottom: 1px solid #b6b6b6;
}

.pageplace li {
	float: left;
	margin: 0px;
	padding: 0px 10px 0px 10px;
	list-style-type: none;
}

.pageplace li.thispage {
	border-top: 1px solid #b6b6b6;
	border-left: 1px solid #b6b6b6;
	border-right: 1px solid #b6b6b6;
	background-color: #f1f1f1;
	color: #2e2e2e;
}

.centerwrap {
	margin: 0px;
	height: auto;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
	clear: both;
	text-align: center;
}

.textwrap {
	padding: 10px;
	/*border-top: solid 1px #b6b6b6;
	border-bottom: solid 1px #b6b6b6;*/
}

ul {
	margin-left: auto;
	margin-right: auto;
	margin-top: 0px;
	margin-bottom: 0px;
	padding: 0px;
	list-style-type: none;
	text-align: left;
}

li {
	margin: 0px;
	padding: 0px;
	display: inline-block;
	text-align: center;
}

dl {
	width: 100%;
	padding: 0px;
	margin: 0px 0px 1em 0px;
}

dt {
	float: left;
	display: block;
	padding-right: 0em;
	clear: both;
}

dd {
	display: block;
	padding-left: 7em;
	width: 100%;
	margin: 0px;
}

.grid-container {
	display: grid;
	gap: 4px;
	grid-template-columns: repeat(2, 20%);
}

.grid-item {
	padding: 0px 4px 0px 0px;
}

.cgipal {
	margin-left: auto;
	margin-right: auto;
	clear: both;
	height: auto;
	width: 90%;
	text-align: right;
	font-size: 0.8em;
	font-style: italic;
	padding: 0px 0px 20px 0px;
}

span.hissu {
	color: #a03923;
}

/*------------------------------------------------@media screen*/
@media screen and (max-width: 900px) {
	body {
		font-size: 18px;
	}

	#main_wrap {
		width: 100%;
	}

	.inputtable td {
		display: block;
	}

	.inputtable td:nth-child(1) {
		width: 100%;
	}

	.inputtable td {
		border: none;
	}
}