@charset "utf-8";

/* ――――――――――――――――――――――――――

Bootstrap Reset Stylesheet

―――――――――――――――――――――――――― */
body {
	font-size: 1rem;
	line-height: 1.75em;
	letter-spacing: 0;
	font-weight: 400;
}
img {
	vertical-align: top;
}
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
address,
ol, ul, dl, dd,
blockquote, .blockquote,
pre,
label,
.figure-img,
.table,
.breadcrumb,
.jumbotron,
.form-group {
	margin-bottom: 0;
}
dt {
	font-weight: 400;
}
ol, ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.table th {
	font-weight: 400;
}

/* ----- header footer ----- */
header div, header span, header nav, header p,
footer div, footer span, footer nav, footer p,
header ul, header ol, header li, header dl, header dt, header dd,
footer ul, footer ol, footer li, footer dl, footer dt, footer dd {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	background: transparent;
}
header a,
footer a {
	margin: 0;
	padding: 0;
	vertical-align: baseline;
	background: transparent;
}
header ul, header ol,
footer ul, footer ol {
	list-style: none;
}

/* ----- .list-inline ----- */
.list-inline {
	letter-spacing: -.4em;
}
.list-inline-item {
	display: inline-block;
	letter-spacing: normal;
}
.list-inline-item:not(:last-child) {
	margin-right: 0;
}

/* ----- .breadcrumb ----- */
.breadcrumb {
	font-size: 12px;
	line-height: 1.5em;
	padding: 0.25rem 1rem;
	border-radius: 0;
	background: #ffffff;
}
.breadcrumb-item + .breadcrumb-item::before {
	display: inline-block;
	padding-right: 0.5rem;
	color: #888888;
	content: "/";
}
.breadcrumb-item.active {
	color: #aaaaaa;
}
.breadcrumb a i.fa {
	font-size: 1.25em;
	margin-right: 0.2em;
	vertical-align: bottom;
}
@media (min-width: 992px) {
	.breadcrumb {
		font-size: 14px;
		line-height: 1.5em;
	}
}
@media (min-width: 1200px) {
	.breadcrumb {
		padding: 0.25rem 1.5rem;
	}
}

/* ----- .blockquote ----- */
.blockquote {
	margin-bottom: 0;
	font-size: 1rem;
}
.blockquote-footer {
	display: block;
	font-size: 80%;
	color: #666666;
}

/* ----- hr ----- */
hr {
	margin-top: 1em;
	margin-bottom: 1em;
	border: 0;
	border-top: 1px solid rgba(0, 0, 0, 0.1);
}

/* ----- mark ----- */
mark,
.mark {
	padding: 0;
	font-weight: 700;
	text-decoration: none;
	background: linear-gradient(transparent 60%, #ffff99 60%);
}

/* ----- .table ----- */
.table {
	width: 100%;
	color: #333333;
	background: #ffffff;
}
.table th,
.table td {
	padding: 0.6rem 0.75rem;
	vertical-align: middle;
	border-top: 1px solid #cccccc;
}
.table tr:last-child th,
.table tr:last-child td {
	border-bottom: 1px solid #cccccc;
}
.table thead th {
	vertical-align: middle;
	padding: 0.3rem 0.75rem;
	font-weight: 400;
	border-bottom: 1px solid #cccccc;
}
.table tbody + tbody {
	border-top: 1px solid #cccccc;
}
.table-bordered {
	border: 1px solid #cccccc;
}

/* .table-bordered */
.table-bordered th,
.table-bordered td {
	border: 1px solid #cccccc;
}
/* .table-borderless */
.table-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody + tbody,
.table-borderless tr:last-child th,
.table-borderless tr:last-child td {
	border: 0;
}
/* .table-dark */
.table-dark,
.table-dark > th,
.table-dark > td {
	background-color: #333333;
	color: #ffffff;
}
.table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
	border-color: #cccccc;
}
.table-hover .table-dark:hover {
	background-color: #bbbbbb;
}
/* .thead-dark */
.table .thead-dark th {
	color: #fff;
	background-color: #333333;
	border-color: #cccccc;
}
/* .thead-light */
.table .thead-light th {
	color: #333333;
	background-color: #eeeeee;
	border-color: #cccccc;
}
/* .table-responsive */
.table-responsive thead th {
	white-space: nowrap;
	padding-left: 2rem;
	padding-right: 2rem;
}
/* .table-striped */
.table-striped tbody tr:nth-of-type(odd) {
	background-color: rgba(0, 0, 0, 0.025);
}

/* ----- .form ----- */
.form-control {
	color: #333333;
	border: 1px solid #cccccc;
}
.input-group-text {
	color: #333333;
	background-color: #eeeeee;
	border: 1px solid #cccccc;
}
.custom-select {
	color: #333333;
	border: 1px solid #cccccc;
}
.custom-select:focus::-ms-value {
	color: #333333;
}
.custom-select:disabled {
	color: #777777;
	background-color: #eeeeee;
}
.custom-file-input[disabled] ~ .custom-file-label,
.custom-file-input:disabled ~ .custom-file-label {
	background-color: #eeeeee;
}
.custom-file-label {
	color: #333333;
	border: 1px solid #cccccc;
}
.custom-file-label::after {
	color: #333333;
	content: "選択";
	background-color: #eeeeee;
}
.custom-control-input[disabled] ~ .custom-control-label::before, .custom-control-input:disabled ~ .custom-control-label::before {
	background-color: #eeeeee;
}
.form-check-input {
	margin-top: 0.5rem;
}
.custom-control-label::before {
	top: 0.35rem;
	border: #aaaaaa solid 1px;
}
.custom-control-label::after {
	top: 0.35rem;
}
.custom-switch .custom-control-label::after {
	top: calc(0.35rem + 2px);
}

/* ----- .card-columns ----- */
.card-columns .card {
	margin-bottom: 1.25rem;
}
@media (min-width: 576px) {
	.card-columns {
		-webkit-column-count: 1;
			 -moz-column-count: 1;
						column-count: 1;
	}
}
@media (min-width: 768px) {
	.card-columns {
		-webkit-column-count: 2;
			 -moz-column-count: 2;
						column-count: 2;
	}
}
@media (min-width: 992px) {
	.card-columns {
		-webkit-column-count: 3;
			 -moz-column-count: 3;
						column-count: 3;
	}
}
@media (min-width: 1200px) {
	.card-columns {
		-webkit-column-count: 4;
			 -moz-column-count: 4;
						column-count: 4;
	}
}
@media (min-width: 1366px) {
	.card-columns {
		-webkit-column-count: 5;
			 -moz-column-count: 5;
						column-count: 5;
	}
}

/* ----- .sticky-top ----- */
@supports ((position: -webkit-sticky) or (position: sticky)) {
	.sticky-top {
		z-index: 1;
	}
}

