input[type=text], input[type=email], input[type=url], input[type=tel], input[type=password] {
    width: 100%;
    /* height: 24px; */
    padding: 2px 4px;
	background-color: #fff;
	border-radius: 4px;
}
input[type="number"] {
	width: 70px;
	vertical-align: text-bottom;
	background-color: #fff;
	padding: 0 0 0 4px;
}
textarea {
	width: 100%;
	background-color: #fff;
	border-radius: 4px;
}
label {
	cursor: pointer;
}
::placeholder {
	color: #aaa;
}
.form_tbl {
	width: calc(100% + 2px);
	border-radius: 8px;
	border-collapse: separate;
	border-spacing: 1px;
	margin: -1px -1px 9px -1px;
	overflow: hidden;
}
.form_tbl tr th {
	width: 100px;
	color: #fff;
	font-size: 12px;
	vertical-align: middle;
	background-color: #D71718;
	/* padding: 11px 0; */
	text-align: center;
}
.form_tbl tr td {
	font-size: 14px;
	background-color: #eee;
	padding: 10px 7px;
}
.form_tbl tr td input:read-only {
	background-color: transparent;
}
.form_tbl tr td.chk input:read-only {
	background-color: #ccc;
}
.form_tbl tr td .cap {
	display: block;
	font-size: 14px;
}
.form_tbl tr td .cap::before {
	content: '※';
}
.form_tbl tr td.in {
	padding: 7px;
	text-align:left;
	font-size: 16px;
}
.form_tbl tr td.in .sele {
	background: #fff url('../img/icon_arrow_down.png') no-repeat right 4px top 5px;
	background-size: 16px 16px;
	padding-right: 22px;
	cursor: pointer;
}
.form_tbl tr td.in.zip input {
	width: 100px;
}
.form_tbl tr td.in.zip button {
	background-color: #81838B;
	color: #fff;
	padding: 2px 8px;
	font-size: 14px;
	border-radius: 4px;
}
.form_tbl tr td.in.pref input {
	max-width: 160px;
	background: #fff url('../img/icon_arrow_down.png') no-repeat right 4px top 5px;
	background-size: 16px 16px;
	padding-right: 22px;
	cursor: pointer;
}
.form_tbl tr td.in.pass button {
	background-color: #81838B;
	color: #fff;
	margin-top: 4px;
	padding: 2px 8px;
	font-size: 14px;
	border-radius: 4px;
}
.form_tbl tr.price th {
	background-color: #f30;
}
.form_tbl tr.price td span {
	color: #d00;
	font-size: 16px;
	font-weight: bold;
}
.form_tbl tr.point th {
	background-color: #f30;
}
.form_tbl tr.point td button {
	width: 70px;
	background-color: #f30;
	color: #fff;
	vertical-align: text-bottom;
	text-align: center;
	border-radius: 4px;
}
.form_tbl tr.point td span {
	display: inline-block;
	margin: 2px 0;
}
.form_tbl tr.point td span:first-child {
	margin-right: 5px;
}
.form_tbl tr.point td span.war {
	display: flex;
	color: #d00;
}
.form_tbl tr.point td span.war::before {
	content: '※';
}
.form_tbl tr td.in label {
	display: flex;
	line-height: 1.5;
}
.form_tbl tr td.in label input {
	flex-shrink: 0;
}
.form_tbl tr.check th {
	background-color: #ff4500;
}
.form_cont {
	border: 1px solid #ddd;
	border-radius: 8px;
	padding: 9px 7px;
	margin-bottom: 10px;
	overflow: hidden;
}
.form_cont ul li {
	font-size: 14px;
	background: transparent url('../img/icon_gray.png') no-repeat 0 3px;
	background-size: 16px 16px;
	padding: 2px 0 2px 19px;
	text-align: left;
}
.form_cont ul li.war {
	color: #f00;
	background-image: url('../img/icon_red.png');
}
.form_cont ul li a {
	text-decoration: 1px underline currentColor;
}
.form_cont p {
	font-size: 14px;
	border-bottom: 1px solid #ddd;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.form_cont .user_name {
    font-size: 14px;
    background: transparent url(../img/nihon_user.png) no-repeat 0 0;
    background-size: 24px 24px;
    padding-left: 32px;
    display: flex;
    align-items: center;
	padding-bottom: 5px;
}
.form_butt {
	display: flex;
	margin: 0 -5px 15px -5px;
}
.form_butt button {
	width: calc(50% - 10px);
	max-width: 200px;
	color: #fff;
	font-size: 12px;
	background: #888 url('../img/icon_next.png') no-repeat right 10px top 12px;
	background-size: 16px 16px;
	border-radius: 8px;
	padding: 10px 0;
	margin: 0 5px;
	text-align: center;
	display: block;
}
.form_butt button.right {
	margin-left: auto;
}
.form_butt button.left {
	background: #81838B no-repeat;
}
.form_butt button.left:hover {
	background-image: none;
}