/* General Sections 
------------------------------------------------------------------------- */
* {
	margin: 0;
	padding: 0;
}

body {
	background-color: #ffffff;
	font-family: "Noto Sans JP","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ W3","メイリオ",sans-serif;
	font-size: 15px;
	letter-spacing: 1px;
	color: #333333;
	line-height: 160%;
	vertical-align: top;
	-webkit-font-smoothing: antialiased;
}

ul li {
	list-style: none;
}

a {
	text-decoration: none;
	border: 0px;
}

img {
	border: 0px;
}

input[type="text"] {
	padding: 4px 2px 4px 2px;
	border: 1px solid #dddddd;
}

input[type="number"] {
	padding: 4px 2px 4px 2px;
	border: 1px solid #dddddd;
	text-align: right;
}

input[type="password"] {
	padding: 4px 2px 4px 2px;
	border: 1px solid #dddddd;
}

input[type="radio"] {
	vertical-align: 1px;
	margin: 0px 4px 0px 0px;
}

input[type="checkbox"] {
	vertical-align: 1px;
	margin: 0px 4px 0px 0px;
}

label {
	margin: 0px 10px 0px 0px;
	cursor: pointer;
}

input[type="file"] {
	font-size: 12px;
}

select {
	padding: 4px 4px 4px 4px;
	border: 1px solid #dddddd;
}

select option {
	padding: 4px 4px 4px 4px;
}

textarea {
	border: 1px solid #dddddd;
	padding: 4px 2px 4px 2px;
	font-size: 13px;
}

button {
	cursor: pointer;
}

p {
	margin: 0px 0px 16px 0px;
}

.floatbox:after {
	content: " ";
	clear: both;
	height: 0;
	display: block;
	visibility: hidden;
}

.visible {
	opacity: 1 !important;
	visibility: visible !important;
}

.invisible {
	opacity: 0;
	visibility: hidden;
	transition: 300ms;
}

.pc_only {
	display: none;
}

/* Form Table
------------------------------------------------------------------------- */
table.form {
	border-collapse: separate;
	border-spacing: 8px;
	background-color: #f6f6f6;
	width: 100%;
}

table.form th {
	background-color: #fcfcfc;
	width: 200px;
}

table.form td {
	background-color: #ffffff;
	padding: 10px 10px 10px 10px;
}

table.form td input[type='text'] {
	width: 400px;
}

table.form td input[type='number'] {
	width: 100px;
}

table.form td small {
	display: block;
	font-size: 90%;
}

table.form td textarea {
	width: calc(100% - 10px);
	height: 300px;
	padding: 4px 4px 4px 4px;
	margin: 0px 6px 0px 0px;
}

table.form td.category label {
	display: block;
}

/* Validation
------------------------------------------------------------------------- */
span.error {
	display: block;
	color: #ee0000;
}