body {
	-webkit-print-color-adjust: exact;
}

.block-ctrl {
	margin-bottom: 30px;
}

.block-supp {
	margin: 30px 0;
}

.bottom-spacer {
	margin-bottom: 10px;
}

.no-padding {
	padding-right: 0!important;
	padding-left: 0!important;
}
.no-padding-r {
	padding-right: 0!important;
}
.no-padding-l {
	padding-left: 0!important;
}

.top-index {
	display: block;
	margin: 0 auto 6px auto;
	padding: 6px 0;
	background-color: #000!important;
	font-size: 24px;
	text-align: center;
	color: #fff;
}

.row.field {
	margin-right: auto;
	margin-left: auto;
}

.no-child {
	display: table;
	padding: 3px 0;
	text-align: center;
	vertical-align: middle;
}

.radiobutton {
	display: none;
}
label {
	padding: 10px 20px;
}
.radiobutton:checked + label {
	background-color: pink;
}

.suplabel {
	display: table;
	border: 1px solid #666;
	margin: 0 auto;
	padding: 3px 0;
	background-color: #bbb!important;
	text-align: center;
	vertical-align: middle;
	height: 2em;
}
.suplabel p {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}
.suplabel2 {
	background-color: #fff!important;
}
.supdata {
	display: table;
	border: 1px solid #666;
	font-size: 16px;
	margin: 0 auto;
	padding: 3px 0;
	background-color: #fff!important;
	text-align: center;
	vertical-align: middle;
	height: 4em;
}
.supdata.row1 {
	height: 2em;
}
.supdata.row3 {
	height: 6em;
}
.supdata.row3a {
	height: 7em;
}
.supdata.row4 {
	height: 8em;
}
.supdata.row5 {
	height: 10em;
}

.lborder {
	border-left: 1px solid #666;
}
.rborder {
	border-left: 1px solid #666;
}

.supdata .left {
	text-align: left;
	padding-left: 20px;
}
.supdata .right {
	text-align: right;
	padding-right: 20px;
}

.supdata p {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}
.supdata p.left {
	text-align: left;
	padding-left: 20px;
}
.supdata p.right {
	text-align: right;
	padding-right: 20px;
}

.suplabel span,
.supdata span {
	font-size: 80%;
}

.supdata table {
	width: 100%;
	height: 100%;
}

.supdata table th,
.supdata table td {
	font-size: 16px;
	font-weight: normal;
}

.supdata ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
.supdata li {
	display: inline-block;
	padding-right: 12px;
	font-size: 80%;
}

.w12p {
	width: 12%!important;
}
.w38p {
	width: 38%!important;
}

.comentbox {
	padding: 20px 30px;
}

/*---- フォームアイテム ----*/
div.radio-group {
	padding: 8px 0 0;
}
div.check-group {
	padding: 8px 40px 0;
}

@media screen and (max-width:767px) {
	div.check-group.lg {
		padding: 8px 10px 0;
	}
}

/*---- checkbox ----*/
div.checkitem {
	display: inline-block;
}

div.check-group input {
	/*display: none;*/
	opacity:0; /* 要素を透明に */
	height: 1px; /* 高さを出して 0 x 0 を回避 */
	width: 1px;
	-webkit-appearance: none; /* アウトライン消す */
	appearance: none;
}
//div.check-group input {
//	transform: scale(2);
//	margin: 0 6px 0 0;
//	accent-color: red;
//}
div.check-group label {
	cursor: pointer;
	padding: 5px 10px;
	float: left;
	border: solid 1px #aaa;
	margin-left: -1px;
	background: #ffdada;
	text-align: center;
}
div.check-group input:checked+label {
	color: #fff;
	background: #2187c3;
}
@media screen and (max-width:767px) {
	div.check-group label {
		font-size: 95%;
	}
}

/*---- radio ----*/
div.radioitem {
	display: inline-block;
}
div.radioitem.no-disp {
	display: none;
}

div.radio-group input {
	/*display: none;*/
	opacity:0; /* 要素を透明に */
	height: 1px; /* 高さを出して 0 x 0 を回避 */
	width: 1px;
	-webkit-appearance: none; /* アウトライン消す */
	appearance: none;
}
div.radio-group label {
	cursor: pointer;
	padding: 5px 10px;
	margin-bottom: 0;
	float: left;
	border: solid 1px #aaa;
	margin-left: -1px;
	background: #ffdada;
	text-align: center;
}
div.radio-group input:checked+label {
	color: #fff;
	background: #2187c3;
}

.opebutton button {
	margin-top: -28px;
}

/*---- ドロップダウン ----*/
.dropdown-menu {
	padding: 2px 16px 2px 16px;
}

.input-group {
	margin-bottom: 8px!important;
}
.input-group-append label {
	padding: 0;
	margin-bottom: 0!important;
}

/*---- 日付カスタマイズ ----*/
input[type="date"]{
	position: relative;
}
input[type="date"]::-webkit-inner-spin-button{
	-webkit-appearance: none;
}
input[type="date"]::-webkit-clear-button{
	webkit-appearance: none;
}
input[type=date]::-webkit-calendar-picker-indicator {
	position: absolute;
	width: 100%;
	height: 100%;
	opacity: 0;
}

/*---- 時刻カスタマイズ ----*/
input[type="time"]{
	position: relative;
}
input[type="time"]::-webkit-inner-spin-button{
	-webkit-appearance: none;
}
input[type="time"]::-webkit-clear-button{
	webkit-appearance: none;
}
input[type=time]::-webkit-calendar-picker-indicator {
	position: absolute;
	width: 100%;
	height: 100%;
	opacity: 0;
}

.input-group-append .input-group-text {
	width: 9.4em;
}
.input-group-append.lg .input-group-text {
	width: 12.8em;
}
.input-group-append label {
	width: 5.4em;
	margin-right: auto;
	margin-left: auto;
}
.input-group-append.lg label {
	width: 10.4em;
}
.input-group-append.left label {
	margin-left: 0;
}
.input-group-append .hissu {
	font-size: 60%;
	color: #fff;
	padding: 2px 4px 1px 4px;
	background-color: #dc3545;
	border-radius: 5px;
}

@media screen and (max-width:767px) {
	.input-group-append label {
		font-size: 95%;
	}
	.input-group input[type=text],
	.input-group input[type=number],
	.input-group input[type=email],
	.input-group input[type=date],
	.input-group input[type=time],
	.input-group select,
	.input-group textarea,
	.input-group span.form-control {
		width: 100%!important;
	}
}

/* プレースホルダー */
::placeholder {
	font-size: 95%!important;
	color: #ccc!important;
}
.announce-color {
	color: #fbc64d!important;
}
/* 旧Edge対応 */
::-ms-input-placeholder {
	color: #fbc64d!important;
}
/* IE対応 */
:-ms-input-placeholder {
	color: #fbc64d!important;
}


.input-group-text.bgtransparent {
	background-color: transparent;
	border-style: none;
}
.centerbotton {
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}
.centerbotton button {
	margin-bottom: 10px;
}
.searchclear {
/*	position: absolute;
	right: 5px;
	top: 0;
	bottom: 0;
	height: 14px;
	margin: auto;
	font-size: 14px;*/
	cursor: pointer;
	color: #ccc;
}

.form-control {
	border-color: #8e8e8e;
}
.form-control.noborder {
	border-style: none;
}

.valid-feedback {
	font-size: 110%;
}
.valid-feedback label {
	padding: 3px;
}
.invalid-feedback {
	font-size: 90%;
}
li.invalid-feedback {
	width: auto;
}
.invalid-feedback label {
	padding: 4px 14px!important;
}
.list-invalid-feedback {
	display: inline-flex!important;
}

