/* ================================ *
 *	共通スタイル(IcCardManager引用)	*
 * ================================ */
body {
	padding-top: 0rem;
	padding-bottom: 45px;

	background-color: #FFFFFF;
	text-shadow: 0 1px 0 rgba(0,0,0,.15);
}

form {
	margin: 0;
}

hr {
	margin: 15px 0;
	border: 0;
	border-top: 1px solid #cccccc;
	border-bottom: 1px solid #ffffff;
}

/* ウインドウ最小幅指定 */
.fixed-minimum {
	/* 以下の幅 ＋ 右の余白20px ＋ 右の余白20px が横スクロールしない幅 */
	min-width: 560px;
}

/* contents */
.contents {
	margin-bottom: 1rem;
	margin-top: -0.5rem;
	padding: 0.5rem 1rem 2rem 1rem;
	border: 1px solid #cccccc;
	color: #333;

	background-color: #fcfcfc;
	background-image: -moz-linear-gradient(top, #ffffff, #fafafa);
	background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#fafafa));
	background-image: -webkit-linear-gradient(top, #ffffff, #fafafa);
	background-image: -o-linear-gradient(top, #ffffff, #fafafa);
	background-image: linear-gradient(to bottom, #ffffff, #fafafa);
	background-repeat: repeat-x;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#fffafafa',GradientType=0);

	-webkit-box-shadow: 0 .1rem .25rem rgba(0, 0, 0, 0.065);
	   -moz-box-shadow: 0 .1rem .25rem rgba(0, 0, 0, 0.065);
			box-shadow: 0 .1rem .25rem rgba(0, 0, 0, 0.065);

	-webkit-border-radius: .25rem;
	   -moz-border-radius: .25rem;
			border-radius: .25rem;
}

/* Bootstrap alert */
.alert {
	margin-bottom: .5rem;
}

/* Bootstrap accordion */
.accordion {
	margin-bottom: .5rem;
}

/* Bootstrap input-block-level */
input[type="file"].input-block-level {
	width: 100%;
}

/* 背景が透明なボックス */
.block, .search {
	min-height: 2rem;
	margin-bottom: .5rem;
	border: 1px solid rgb(227, 227, 227);
	background-color: rgb(252, 252, 252);
	background-image: -moz-linear-gradient(top, #ffffff, #fafafa);
	background-image: -webkit-gradient(linear, 0 0, 0 100%, from(rgb(255, 255, 255)), to(rgb(250, 250, 250)));
	background-image: -webkit-linear-gradient(top, rgb(255, 255, 255), rgb(250, 250, 250));
	background-image: -o-linear-gradient(top, #ffffff, #fafafa);
	background-image: linear-gradient(to bottom, rgb(255, 255, 255), rgb(250, 250, 250));
	background-repeat: repeat-x;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#fffafafa',GradientType=0);
	-webkit-box-shadow: 0 .1rem .25rem rgba(0, 0, 0, 0.065);
	   -moz-box-shadow: 0 .1rem .25rem rgba(0, 0, 0, 0.065);
			box-shadow: 0 .1rem .25rem rgba(0, 0, 0, 0.065);
	-webkit-border-radius: .25rem;
	   -moz-border-radius: .25rem;
			border-radius: .25rem;
}

/* 無効なデータ */
.disableData {
	color: #999;
	text-decoration: line-through;
}

/* 折り返し関連 */
.text-wrap {
	white-space: normal !important;
}

.text-nowrap {
	white-space: nowrap !important;
}

.text-line {
	white-space: pre-line !important;
}

.word-break-normal {
	word-break: normal !important;
}

.word-break-all {
	word-break: break-all !important;
}

.word-break-word {
	word-wrap: break-word !important;
	overflow-wrap: break-word !important;
}

.white-space-nowarp {
	white-space: nowrap;
}

.white-space-prewarp {
	white-space: pre-wrap !important;
}

/* 回り込みの解除 */
.clear {
	clear: both;
}

/* カレンダー最前面表示 */
.ui-datepicker {
	z-index: 9999 !important;
}

/* ページトップへのリンク */
#linkToPageTop{
	width: 3.75rem;
	height: 3.75rem;
	position: fixed;
	right: 0;
	bottom: 0;
	background: #3f98ef;
	opacity: 0.6;
	border-radius: 50%;
	z-index: 2000;
}
#linkToPageTop a{
	position: relative;
	display: block;
	width: 3.75rem;
	height: 3.75rem;
	text-decoration: none;
}
#linkToPageTop a::before{
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	content: '\f102';
	font-size: 1.875rem;
	color: #fff;
	position: absolute;
	width: 1.875rem;
	height: 1.875rem;
	top: -0.75rem;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	text-align: center;
}

/* スクロール時に画面を追いかけるブロック */
.affix-block {
	/* 浮いた時の位置を指定 */
	z-index: 1;
	top: 5px;
}

/* 印刷時の設定. */
@media print {
	body {
		padding-bottom: 0;
	}
}

/* -------------------------------- * /


/* ================================ *
 *	共通スタイル					*
 * ================================ */
/* 一般向の場合 */
.public {
	background-color: #002e4e !important;
}

@media (min-width: 1200px) {
	body {
		font-size: 100% !important;
	}
}

/* -------------------------------- *
 *	共通div							*
 * -------------------------------- */
div {
/* 	-webkit-border-radius: .25rem; */
/* 	   -moz-border-radius: .25rem; */
/* 			border-radius: .25rem; */
}


/* -------------------------------- *
 *	アイコン						*
 * -------------------------------- */
i {
	font-size: 100% !important;
}

.fa-lg {
	font-size: 1.33333em !important;
	line-height: .75em;
	vertical-align: -.0667em
}

.fa-xs {
	font-size: .75em !important;
}

.fa-sm {
	font-size: .875em !important;
}

.fa-1x {
	font-size: 1em !important;
}

.fa-2x {
	font-size: 2em !important;
}

.fa-3x {
	font-size: 3em !important;
}

.fa-4x {
	font-size: 4em !important;
}

.fa-5x {
	font-size: 5em !important;
}

.fa-6x {
	font-size: 6em !important;
}

.fa-7x {
	font-size: 7em !important;
}

.fa-8x {
	font-size: 8em !important;
}

.fa-9x {
	font-size: 9em !important;
}

.fa-10x {
	font-size: 10em !important;
}

/* -------------------------------- *
 *	位置							*
 * -------------------------------- */
.position-static {
	position: static !important;
}

.position-relative {
	position: relative !important;
}

.position-absolute {
	position: absolute !important;
}

.position-fixed {
	position: fixed !important;
}

.position-sticky {
	position: -webkit-sticky !important;
	position: sticky !important;
}

.top-0 {
	top: 0 !important;
}

.top-50 {
	top: 50% !important;
}

.top-100 {
	top: 100% !important;
}

.bottom-0 {
	bottom: 0 !important;
}

.bottom-50 {
	bottom: 50% !important;
}

.bottom-100 {
	bottom: 100% !important;
}

.start-0 {
	left: 0 !important;
}

.start-50 {
	left: 50% !important;
}

.start-100 {
	left: 100% !important;
}

.end-0 {
	right: 0 !important;
}

.end-50 {
	right: 50% !important;
}

.end-100 {
	right: 100% !important;
}

.translate-middle {
	transform: translate(-50%, -50%) !important;
}

.translate-middle-x {
	transform: translateX(-50%) !important;
}

.translate-middle-y {
	transform: translateY(-50%) !important;
}


/* -------------------------------- *
 *	タイトル						*
 * -------------------------------- */
.title {
	width: 100%;
	padding: .0rem .75rem .25rem .25rem;
	font-size: 100%;
	background: #ffffff;
}

.title h5 {
	position: relative;
	overflow: hidden;
	margin: 0 .25rem .25rem 0;
	padding: .5rem 1rem .5rem .5rem;
}

.title h5::first-letter {
	font-size: 1.75rem;
	padding: .25rem .6rem;
	color: #FFFFFF;
	background: #3E1586;

	-webkit-border-radius: 50%;
	   -moz-border-radius: 50%;
			border-radius: 50%;
}

.title h5::before, .title h5::after {
	content: "";
	position: absolute;
	bottom: 0;
}
.title h5::before {
	border-bottom: 2px solid #7886C6;
	width: 100%;
}
.title h5::after {
	border-bottom: 2px solid #ddd;
	width: 100%;
}

.sub-title {
  font-size: 1rem;
  font-weight: 300;
}

/* -------------------------------- *
 *	検索条件						*
 * -------------------------------- */
.search {
	width: 98%;
	margin-top: .5rem;
	margin-bottom: .75rem;
	padding-bottom: .5rem;
	font-size: 90%;

}

.search-row, .search-row-center {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: center;
	margin: .25rem -15px;
}

.search-row-center {
	justify-content: center;
	margin-top: .5rem;
}

.search-row > label, .search-row-center > label {
	position: relative;
	width: 100%;
	min-height: 1px;
	padding-right: .5rem;
	padding-left: .75rem;
}

.search-lbl-1, .search-lbl-2, .search-lbl-mobile {
	margin: .25rem;
}

.search-col-1, .search-col-2, .search-col-3, .search-col-mobile {
	margin: .25rem 0rem;
}

.search-row > .search-title {
	font-size: 1rem;
	font-weight: bold;
	line-height: 2.5rem;
	margin-top: -.25rem;
	padding-left: 1.25rem;
	background-color: rgba(222,225,234,0.5);
	border-bottom: .15rem solid #9cabb9;
/* 	-webkit-border-top-left-radius: .25rem; */
/* 	   -moz-border-top-left-radius: .25rem; */
/* 			border-top-left-radius: .25rem; */
/* 	-webkit-border-top-right-radius: .25rem; */
/* 	   -moz-border-top-right-radius: .25rem; */
/* 			border-top-right-radius: .25rem; */
}

@media (max-width: 575.98px) {
	.search-col-1, .search-col-2, .search-col-3 {
		-ms-flex: 0 0 90%;
		flex: 0 0 90%;
		max-width: 90%;
		margin-left: 1rem;
		margin-right: 0.25rem;
	}
	.search-lbl-1, .search-lbl-2 {
		font-weight: bold;
	}
}

@media (min-width: 576px) {
	.search-lbl-1, .search-lbl-2 {
		-ms-flex: 0 0 25%;
		flex: 0 0 25%;
		max-width: 25%;
		text-align: right;
	}

	.search-col-1, .search-col-2 {
		-ms-flex: 0 0 70%;
		flex: 0 0 70%;
		max-width: 70%;
	}

	.search-col-3 {
		-ms-flex: 1 1 auto;
		flex: 1 1 auto;
		max-width: auto;
	}
}

@media (min-width: 768px) {
	.search-lbl-1, .search-lbl-2 {
		-ms-flex: 0 0 10%;
		flex: 0 0 10%;
		max-width: 10%;
	}

	.search-col-1, .search-col-2 {
		-ms-flex: 0 0 35%;
		flex: 0 0 35%;
		max-width: 35%;
	}

	.search-col-3 {
		-ms-flex: 1 1 auto;
		flex: 1 1 auto;
		max-width: auto;
	}
}

.search-col-mobile {
	-ms-flex: 0 0 90%;
	flex: 0 0 90%;
	max-width: 55%;
	margin-right: 0.25rem;
}
.search-lbl-mobile {
	font-weight: bold;
	max-width: 35%;
}

/* @media (min-width: 768px) { */
/* 	.search-lbl-1 { */
/* 		-ms-flex: 0 0 10%; */
/* 		flex: 0 0 10%; */
/* 		max-width: 10%; */
/* 	} */

/* 	.search-lbl-2 { */
/* 		-ms-flex: 0 0 12%; */
/* 		flex: 0 0 12%; */
/* 		max-width: 12%; */
/* 	} */

/* 	.search-col-1 { */
/* 		-ms-flex: 0 0 33%; */
/* 		flex: 0 0 33%; */
/* 		max-width: 33%; */
/* 	} */

/* 	.search-col-2 { */
/* 		-ms-flex: 0 0 38%; */
/* 		flex: 0 0 38%; */
/* 		max-width: 38%; */
/* 	} */

/* 	.search-col-3 { */
/* 		-ms-flex: 1 1 auto; */
/* 		flex: 1 1 auto; */
/* 		max-width: auto; */
/* 	} */
/* } */

/* @media (min-width: 992px) { */
/* 	.search { */
/* 		max-width: 90%; */
/* 	} */

/* 	.search-lbl-1 { */
/* 		-ms-flex: 0 0 8%; */
/* 		flex: 0 0 8%; */
/* 		max-width: 8%; */
/* 	} */

/* 	.search-lbl-2 { */
/* 		-ms-flex: 0 0 13%; */
/* 		flex: 0 0 13%; */
/* 		max-width: 13%; */
/* 	} */

/* 	.search-col-1 { */
/* 		-ms-flex: 0 0 33%; */
/* 		flex: 0 0 33%; */
/* 		max-width: 33%; */
/* 	} */

/* 	.search-col-2 { */
/* 		-ms-flex: 0 0 44%; */
/* 		flex: 0 0 44%; */
/* 		max-width: 44%; */
/* 	} */
/* } */

/* -------------------------------- *
 *	データ表示枠					*
 * -------------------------------- */
.frame {
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%;
	padding: 3rem, 1rem;
	font-size: 82%;
}

/* -------------------------------- *
 *	エラー表示用					*
 * -------------------------------- */
.error {
	position: relative;
	padding: .1rem .3rem;
	margin-top: .1rem;
	white-space: pre-line;
	color: red;
	background-color: rgba(255,0,0,.1);
	border: 1px solid rgba(255,0,0,.2);
	-webkit-border-radius: .25rem;
	   -moz-border-radius: .25rem;
			border-radius: .25rem;
}

.alert-error {
	color: #f90000;
	background-color: rgba(255,0,0,.1);
	border: 1px solid rgba(255,0,0,.2);
}

/* -------------------------------- *
 *	テキストボックスをラベル化		*
 * -------------------------------- */
.likeLabel {
	color: #495057;
	background-color: transparent;
	border: none;
	width: 100% !important;
	max-width: 100% !important;
	font: inherit;
	text-shadow: inherit;
}

/* -------------------------------- *
 *	大きいチェックボックス			*
 * -------------------------------- */
.big {
	-webkit-transform: scale(1.5);
	transform: scale(1.5);
}

/* -------------------------------- *
 *	ボタン							*
 * -------------------------------- */
.btn {
 	margin: .25rem;
 	white-space: normal;
}

.btn.disabled, .btn:disabled {
	opacity: 0.15;
}

.opacity {
	opacity: 0.15;
}

.rounded-circle {
	border-radius: 50% !important;
}

.rounded-pill {
	border-radius: 50rem !important;
}

/* -------------------------------- *
 *	フォント(レスポンシブ対応)		*
 * -------------------------------- */
h1, .h1 {
	font-size: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
	h1, .h1 {
		font-size: 2.5rem;
	}
}

h2, .h2 {
	font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
	h2, .h2 {
		font-size: 2rem;
	}
}

h3, .h3 {
	font-size: calc(1.3rem + 0.6vw);
}
@media (min-width: 1200px) {
	h3, .h3 {
		font-size: 1.75rem;
	}
}

h4, .h4 {
	font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
	h4, .h4 {
		font-size: 1.5rem;
	}
}

h5, .h5 {
	font-size: 1.25rem;
}

h6, .h6 {
	font-size: 1rem;
}

/* -------------------------------------------- *
 *	リストグループ縦→横※bootstrap5から移植	*
 * -------------------------------------------- */
.list-group-horizontal {
	flex-direction: row;
}
.list-group-horizontal > .list-group-item:first-child {
	border-bottom-left-radius: 0.25rem;
	border-top-right-radius: 0;
}
.list-group-horizontal > .list-group-item:last-child {
	border-top-right-radius: 0.25rem;
	border-bottom-left-radius: 0;
}
.list-group-horizontal > .list-group-item.active {
	margin-top: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item {
	border-top-width: 1px;
	border-left-width: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item.active {
	margin-left: -1px;
	border-left-width: 1px;
}

@media (min-width: 576px) {
	.list-group-horizontal-sm {
		flex-direction: row;
	}
	.list-group-horizontal-sm > .list-group-item:first-child {
		border-bottom-left-radius: 0.25rem;
		border-top-right-radius: 0;
	}
	.list-group-horizontal-sm > .list-group-item:last-child {
		border-top-right-radius: 0.25rem;
		border-bottom-left-radius: 0;
	}
	.list-group-horizontal-sm > .list-group-item.active {
		margin-top: 0;
	}
	.list-group-horizontal-sm > .list-group-item + .list-group-item {
		border-top-width: 1px;
		border-left-width: 0;
	}
	.list-group-horizontal-sm > .list-group-item + .list-group-item.active {
		margin-left: -1px;
		border-left-width: 1px;
	}
}
@media (min-width: 768px) {
	.list-group-horizontal-md {
		flex-direction: row;
	}
	.list-group-horizontal-md > .list-group-item:first-child {
		border-bottom-left-radius: 0.25rem;
		border-top-right-radius: 0;
	}
	.list-group-horizontal-md > .list-group-item:last-child {
		border-top-right-radius: 0.25rem;
		border-bottom-left-radius: 0;
	}
	.list-group-horizontal-md > .list-group-item.active {
		margin-top: 0;
	}
	.list-group-horizontal-md > .list-group-item + .list-group-item {
		border-top-width: 1px;
		border-left-width: 0;
	}
	.list-group-horizontal-md > .list-group-item + .list-group-item.active {
		margin-left: -1px;
		border-left-width: 1px;
	}
}
@media (min-width: 992px) {
	.list-group-horizontal-lg {
		flex-direction: row;
	}
	.list-group-horizontal-lg > .list-group-item:first-child {
		border-bottom-left-radius: 0.25rem;
		border-top-right-radius: 0;
	}
	.list-group-horizontal-lg > .list-group-item:last-child {
		border-top-right-radius: 0.25rem;
		border-bottom-left-radius: 0;
	}
	.list-group-horizontal-lg > .list-group-item.active {
		margin-top: 0;
	}
	.list-group-horizontal-lg > .list-group-item + .list-group-item {
		border-top-width: 1px;
		border-left-width: 0;
	}
	.list-group-horizontal-lg > .list-group-item + .list-group-item.active {
		margin-left: -1px;
		border-left-width: 1px;
	}
}
@media (min-width: 1200px) {
	.list-group-horizontal-xl {
		flex-direction: row;
	}
	.list-group-horizontal-xl > .list-group-item:first-child {
		border-bottom-left-radius: 0.25rem;
		border-top-right-radius: 0;
	}
	.list-group-horizontal-xl > .list-group-item:last-child {
		border-top-right-radius: 0.25rem;
		border-bottom-left-radius: 0;
	}
	.list-group-horizontal-xl > .list-group-item.active {
		margin-top: 0;
	}
	.list-group-horizontal-xl > .list-group-item + .list-group-item {
		border-top-width: 1px;
		border-left-width: 0;
	}
	.list-group-horizontal-xl > .list-group-item + .list-group-item.active {
		margin-left: -1px;
		border-left-width: 1px;
	}
}
@media (min-width: 1400px) {
	.list-group-horizontal-xxl {
		flex-direction: row;
	}
	.list-group-horizontal-xxl > .list-group-item:first-child {
		border-bottom-left-radius: 0.25rem;
		border-top-right-radius: 0;
	}
	.list-group-horizontal-xxl > .list-group-item:last-child {
		border-top-right-radius: 0.25rem;
		border-bottom-left-radius: 0;
	}
	.list-group-horizontal-xxl > .list-group-item.active {
		margin-top: 0;
	}
	.list-group-horizontal-xxl > .list-group-item + .list-group-item {
		border-top-width: 1px;
		border-left-width: 0;
	}
	.list-group-horizontal-xxl > .list-group-item + .list-group-item.active {
		margin-left: -1px;
		border-left-width: 1px;
	}
}

/* -------------------------------- *
 *	ナビゲーションバースクロール	*
 * -------------------------------- */
.navbar-nav-scroll {
	max-height: var(--bs-scroll-height, 75vh);
	overflow-y: auto;
}

.nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default;
}

@media (min-width: 576px) {
	.navbar-expand-sm .navbar-nav-scroll {
		overflow: visible;
	}
}

@media (min-width: 768px) {
	.navbar-expand-md .navbar-nav-scroll {
		overflow: visible;
	}
}

@media (min-width: 992px) {
	.navbar-expand-lg .navbar-nav-scroll {
		overflow: visible;
	}
}

@media (min-width: 1200px) {
	.navbar-expand-xl .navbar-nav-scroll {
		overflow: visible;
	}
}

@media (min-width: 1400px) {
	.navbar-expand-xxl .navbar-nav-scroll {
		overflow: visible;
	}
}

.navbar-expand .navbar-nav-scroll {
	overflow: visible;
}

/* -------------------------------- *
 *	スクロールdiv					*
 * -------------------------------- */
.scroll {
	overflow: auto;
	white-space: nowrap;
	z-index: 1002;
}

::-webkit-scrollbar {
	width: .5rem;
	height: .5rem;
}

/*スクロールバーの軌道*/
::-webkit-scrollbar-track {
	background: #F1F1F1;
	border-radius: .25rem;
	box-shadow: inset 0 0 3px rgba(0, 0, 0, .1);
}

/*スクロールバーの動く部分*/
::-webkit-scrollbar-thumb {
	background: #BCBCBC;
	border-radius: .25rem;
	box-shadow: 0 0 1px rgba(255, 255, 255, .5);
}

/* スクロール内のテーブルはボーダー削除 */
.scroll {
	margin: 0 !important;
	border: 0 !important;
}

/* -------------------------------- *
 *	スピナー						*
 * -------------------------------- */
@-webkit-keyframes spinner-border {
  to {
    transform: rotate(360deg) /* rtl:ignore */;
  }
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg) /* rtl:ignore */;
  }
}
.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: -0.125em;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  -webkit-animation: 0.75s linear infinite spinner-border;
  animation: 0.75s linear infinite spinner-border;
}

.spinner-border-sm {
  width: 1rem;
  height: 1rem;
  border-width: 0.2em;
}

.spinner-border-lg {
  width: 5rem;
  height: 5rem;
  border-width: 0.5em;
}

@-webkit-keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}
.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: -0.125em;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  -webkit-animation: 0.75s linear infinite spinner-grow;
  animation: 0.75s linear infinite spinner-grow;
}

.spinner-grow-sm {
  width: 1rem;
  height: 1rem;
}

.spinner-grow-lg {
  width: 5rem;
  height: 5rem;
}

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
.spinner-grow {
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
  }
}

/* -------------------------------- *
 *	リンク							*
 * -------------------------------- */
.link-primary {
  color: #0d6efd;
}
.link-primary:hover, .link-primary:focus {
  color: #0a58ca;
}

.link-secondary {
  color: #6c757d;
}
.link-secondary:hover, .link-secondary:focus {
  color: #565e64;
}

.link-success {
  color: #198754;
}
.link-success:hover, .link-success:focus {
  color: #146c43;
}

.link-info {
  color: #0dcaf0;
}
.link-info:hover, .link-info:focus {
  color: #3dd5f3;
}

.link-warning {
  color: #ffc107;
}
.link-warning:hover, .link-warning:focus {
  color: #ffcd39;
}

.link-danger {
  color: #dc3545;
}
.link-danger:hover, .link-danger:focus {
  color: #b02a37;
}

.link-light {
  color: #f8f9fa;
}
.link-light:hover, .link-light:focus {
  color: #f9fafb;
}

.link-dark {
  color: #212529;
}
.link-dark:hover, .link-dark:focus {
  color: #1a1e21;
}

/* -------------------------------- *
 *	モーダル						*
 * -------------------------------- */
.modal-dialog-scrollable {
  height: calc(100% - 1rem);
}
.modal-dialog-scrollable .modal-content {
  max-height: 100%;
  overflow: hidden;
}
.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}
@media (min-width: 576px) {
  .modal-dialog-scrollable {
    height: calc(100% - 3.5rem);
  }
}

.modal-dialog-fluid {
	max-width: inherit;
	width: 90%;
}

/* モーダルヘッダー */
.modal-header {
	margin-bottom: 0;
	background-color: rgba(202, 210, 217, 0.05);
	-webkit-border-bottom-left-radius: 0;
	   -moz-border-bottom-left-radius: 0;
			border-bottom-left-radius: 0;
	-webkit-border-bottom-right-radius: 0;
	   -moz-border-bottom-right-radius: 0;
			border-bottom-right-radius: 0;
}

/* モーダルボディー */
.modal-body {
	font-size: 1rem;
	padding: 1.5rem 1.25rem;
	-webkit-border-radius: 0;
	   -moz-border-radius: 0;
			border-radius: 0;
}

/* モーダルフッター */
.modal-footer {
	padding: 0.75rem 1.25rem;
	background-color: rgba(202, 210, 217, 0.05);
	-webkit-border-top-left-radius: 0;
	   -moz-border-top-left-radius: 0;
			border-top-left-radius: 0;
	-webkit-border-top-right-radius: 0;
	   -moz-border-top-right-radius: 0;
			border-top-right-radius: 0;
}


/* モーダル内のテーブル */
.modal-tbl {
	table-layout: fixed;
	font-size: 82%;	
}
.modal-tbl thead {
	text-align: center;
}
.modal-tbl thead, .modal-tbl th, .modal-tbl td {
	vertical-align: middle !important;
}

/* スクロールバーの実装 */
.table-sticky {
	display: block;
	overflow-y: scroll;
	height: calc(100vh/2);
}
.table-sticky thead th {
	position: sticky;
	top: 0;
	z-index: 1;
}

/*ポータルのお知らせテーブル用スクロールバー*/
.notice-table-container {
	overflow-y: auto;
	max-height: 400px;
}
.notice-table-sticky thead th {
	position: sticky;
	top: 0;
	z-index: 1;
}

/* -------------------------------- *
 *	共通table						*
 * -------------------------------- */
 th {
	position: relative;
}
 
/* 土曜日のセルの文字色＆背景色 */
th.saturday {
	color: #1d4293;
}
td.saturday {
	background-color: rgba(189,206,242,.35);
}

/* 日曜日のセルの文字色＆背景色 */
th.sunday, th.holiday {
	color: #c50030;
}
td.sunday, td.holiday {
	background-color: rgba(255,197,211,.35);
}

/* 休業日のセルの文字色＆背景色 */
th.closedday {
	color: #6c757d;
}
td.closedday {
	background-color: rgba(108,117,125,.25);
}

/* セル非表示時、隣接セルの罫線も消えてしまうため、ダミー行のセルに設定 */
tr.dummy th, tr.dummy td {
	margin: 0 !important;
	padding: 0 !important;
}
tr.dummy td {
	border-top: .05rem solid #dee2e6 !important;
}

/* テーブル関連 */
[class*="-tbl"] {
	margin: 0 auto;
	margin-bottom: .5rem;
	color: #495057;
	border-collapse: separate;
	border-spacing: 0;
	border: .05rem solid #c7cbcf;
	-webkit-border-radius: .25rem;
	   -moz-border-radius: .25rem;
			border-radius: .25rem;
}

[class*="-tbl"] thead {
	word-break: break-all;
}

[class*="-tbl"] tbody {
	word-wrap: break-word;
	overflow-wrap: break-word;
}

.table-striped tbody tr:nth-of-type(odd) {
	background-color: rgba(222,225,234,0.1);
}

.table-hover tbody tr:hover {
	background-color: rgba(222,225,234,0.15);
}

/* メッセージ表示時背景色 */
.table-hover tbody tr.message {
	background-color: transparent;
}

/* ヘッダー基本背景色 */
[class*="-tbl"] th {
	background-color: rgba(222,225,234,1);
}

/* ヘッダーの最終行のみ下線を表示 */
[class*="-tbl"] thead th[rowspan],
[class*="-tbl"] thead tr:last-child th {	/* ヘッダーが2行の場合の対応 */
	border-bottom: .15rem solid #9cabb9;
}

[class*="-tbl"] thead tr th:first-child {	/* ヘッダーが2行の場合の対応 */
	border-left: .05rem solid #fcfcfc;
}

/* 2列目以降のthセルの左だけ線を表示 */
[class*="-tbl"] tr th+th {
	border-left: .05rem solid #fcfcfc;
}

/* 2行目以降のthセルの上だけ線を表示 */
[class*="-tbl"] tr+tr th {
	border-top: .05rem solid #fcfcfc;
}

/* 2列目以降のtdセルの左だけ線を表示 */
[class*="-tbl"] tr td+td {
	border-left: .05rem solid #dee2e6;
}

/* 2行目以降のtdセルの上だけ線を表示 */
[class*="-tbl"] tr+tr td {
	border-top: .05rem solid #dee2e6;
}

/* テーブルを角丸に設定 */
/* [class*="-tbl"] tr:first-child > :first-child { */
/* 	-webkit-border-top-left-radius: .25rem; */
/* 	   -moz-border-top-left-radius: .25rem; */
/* 			border-top-left-radius: .25rem; */
/* } */

/* [class*="-tbl"] tr:first-child > :last-child { */
/* 	-webkit-border-top-right-radius: .25rem; */
/* 	   -moz-border-top-right-radius: .25rem; */
/* 			border-top-right-radius: .25rem; */
/* } */

/* [class*="-tbl"] tr:last-of-type > :first-child { */
/* 	-webkit-border-bottom-left-radius: .25rem; */
/* 	   -moz-border-bottom-left-radius: .25rem; */
/* 			border-bottom-left-radius: .25rem; */
/* } */

/* [class*="-tbl"] tr:last-of-type > :last-child { */
/* 	-webkit-border-bottom-right-radius: .25rem; */
/* 	   -moz-border-bottom-right-radius: .25rem; */
/* 			border-bottom-right-radius: .25rem; */
/* } */

/* 不要なradiusを削除 */
/* [class*="-tbl"] thead tr:first-child > :first-child, */
/* [class*="-tbl"] thead tr:not(:first-child) > th:first-of-type { */
/* 	-webkit-border-bottom-left-radius: 0; */
/* 	   -moz-border-bottom-left-radius: 0; */
/* 			border-bottom-left-radius: 0; */
/* } */

/* [class*="-tbl"] thead tr:first-child > :last-child, */
/* [class*="-tbl"] thead tr:not(:first-child) > th:last-of-type { */
/* 	-webkit-border-bottom-right-radius: 0; */
/* 	   -moz-border-bottom-right-radius: 0; */
/* 			border-bottom-right-radius: 0; */
/* } */

/* [class*="-tbl"] tbody tr:first-child > :first-child, */
/* [class*="fixed"] tbody tr:first-child > :first-child { */
/* 	-webkit-border-top-left-radius: 0; */
/* 	   -moz-border-top-left-radius: 0; */
/* 			border-top-left-radius: 0; */
/* } */

/* [class*="-tbl"] tbody tr:first-child > :last-child, */
/* [class*="fixed"] tbody tr:first-child > :last-child { */
/* 	-webkit-border-top-right-radius: 0; */
/* 	   -moz-border-top-right-radius: 0; */
/* 			border-top-right-radius: 0; */
/* } */

/* fixed-tbl:幅固定テーブル
/*  list-tbl:幅固定テーブル&横スクロール */
.fixed-tbl, .list-tbl {
	table-layout: fixed;
	margin-top: .5rem;
	margin-bottom: 1rem;
}

.fixed-tbl thead, .list-tbl thead {
	text-align: center;
}

.fixed-tbl thead, .fixed-tbl th, .fixed-tbl td,
 .list-tbl thead,  .list-tbl th,  .list-tbl td {
	vertical-align: middle !important;
}

@media (max-width: 991.98px) {
	.list-tbl {
		width: 95vw;
		min-width: 992px;
	}
}

/* 編集アイコン表示用 */
.tbl-col-icon {
	position: relative;
	height: 100%;
}
.blackLink {
	text-decoration: none;
	color:#4c5454;
}
.blackLink:hover {
	text-decoration: underline; /* 併記しておくほうがベター */
	color:#1d1f1f;
}
.iconLink-left {
	position: absolute;
	left: .5rem;
	bottom: .25rem;
}
.iconLink-right {
	position: absolute;
	right: .5rem;
	bottom: .25rem;
}


.tbl-col-3, .tbl-col-4, .tbl-col-5, .tbl-col-6, .tbl-col-7, .tbl-col-8, .tbl-col-9, .tbl-col-10,
.tbl-col-11, .tbl-col-12, .tbl-col-13, .tbl-col-14, .tbl-col-15, .tbl-col-16, 
.tbl-col-20, .tbl-col-25, .tbl-col-40, .tbl-col-55, .tbl-col-60, .tbl-col-btn {
	width: auto;
}

@media (max-width: 575.98px) {
	.tbl-col-3, .tbl-col-4, .tbl-col-5, .tbl-col-6, .tbl-col-7, .tbl-col-8, .tbl-col-9, .tbl-col-10,
	.tbl-col-11, .tbl-col-12, .tbl-col-13, .tbl-col-14, .tbl-col-15, .tbl-col-16, 
	.tbl-col-20, .tbl-col-25, .tbl-col-40, .tbl-col-55, .tbl-col-btn {
		width: 100%;
	}
}

@media (min-width: 576px) {
	.tbl-col-btn {
		width: 4%;
		max-width: 4%;
		min-width: 48dp;
		margin: 0;
		padding: 0;
	}

	.tbl-col-3 {
		width: 3.5%;
		max-width: 3.5%;
	}

	.tbl-col-4 {
		width: 4%;
		max-width: 4%;
	}

	.tbl-col-5 {
		width: 5%;
		max-width: 5%;
	}

	.tbl-col-6 {
		width: 6%;
		max-width: 6%;
	}

	.tbl-col-7 {
		width: 7%;
		max-width: 7%;
	}

	.tbl-col-8 {
		width: 8.5%;
		max-width: 8.5%;
	}

	.tbl-col-9 {
		width: 9%;
		max-width: 9%;
	}

	.tbl-col-10 {
		width: 10%;
		max-width: 10%;
	}

	.tbl-col-11 {
		width: 11%;
		max-width: 11%;
	}

	.tbl-col-12 {
		width: 12%;
		max-width: 12%;
	}

	.tbl-col-13 {
		width: 13.5%;
		max-width: 13.5%;
	}

	.tbl-col-14 {
		width: 14%;
		max-width: 14%;
	}

	.tbl-col-15 {
		width: 15%;
		max-width: 15%;
	}

	.tbl-col-16 {
		width: 16.5%;
		max-width: 16.5%;
	}

	.tbl-col-20 {
		width: 20%;
		max-width: 20%;
	}

	.tbl-col-25 {
		width: 25%;
		max-width: 25%;
	}

	.tbl-col-40 {
		width: 40%;
		max-width: 40%;
	}

	.tbl-col-55 {
		width: 55%;
		max-width: 55%;
	}
	
	.tbl-col-60 {
		width: 60%;
		max-width: 60%;
	}
}

/* ------------------------------------------------------------------------------------------------------------------------------------ */

/* -------------------------------- *
 *	画面オーバーレイ				*
 * -------------------------------- */
.full-overlay-transparent {
	position: fixed;
	left: 0; top: 0;
	width: 100%; height: 100%;
	z-index: 2147483647;
}

/* 背景が薄いパターンで文字列を表示させる場合 */
.full-overlay {
	position: fixed;
	left: 0; top: 0;
	width: 100%; height: 100%;
	background: rgba(100, 100, 100, .5);
	z-index: 2147483647;
}
.full-overlay .text {
	position: fixed;
	left: 50%; top: 50%;
	width: 100%;
	transform: translate(-50%, -50%);
	color: rgba(250, 250, 250, 1);
	font-size: 24px;
	text-align: center;
}


/* ================================ *
 *	トップ画面スタイル				*
 * ================================ */

/* 吹き出し本体 */
.balloon {
	width: calc(100% * 0.75);
	position: relative;
	margin: 2rem;
	padding: 2rem;
	text-align: center;
	vertical-align: center;
	color: #61C359;
	background-color: #fff;
	border: 2px solid #61C359;
	border-radius: 1rem;
	z-index: 2;
}

/* 三角アイコン */
.balloon::before, .balloon::after {
	content: '';
	position: absolute;
	display: block;
	width: 0;
	height: 0;
	right: -1rem;
	top: 3rem;
	border-left: 1rem solid #61C359;
	border-top: 1rem solid transparent;
	border-bottom: 1rem solid transparent;
}

.balloon::after {
	right: -0.825rem;
	border-left: 1rem solid #fff;
	border-top: 1rem solid transparent;
	border-bottom: 1rem solid transparent;
}

.balloon:hover {
	border-width: 2.5px;
}

.balloon:hover .h2, .balloon .h6 {
	color: #FCAA00;
}

a.btn-sso, a.btn-login {
	display: block;
	text-decoration: none;
	width: 40%;
	margin: 2rem;
	padding: 0.8rem;
	text-align: center;
	overflow: hidden;

	-webkit-border-radius: 1rem;
	   -moz-border-radius: 1rem;
			border-radius: 1rem;
}

a.btn-top {
	text-decoration: none;
	width: 100%;
}

a.btn-sso .h2, a.btn-login .h2, a.btn-top .h2 {
	display: inline-block;
	transition: .5s;
}

a.btn-sso:hover, a.btn-login:hover, a.btn-top:hover span {
	transform: scale(1.1);
}

a.btn-top:hover img {
	position: relative;
	top: calc(100% * 0.01);
	left: calc(100% * 0.04);
	transform: scale(1.2);
}

a.btn-sso i, a.btn-login i {
	font-size: 5rem;
}

a.btn-sso:hover .h2, a.btn-login:hover .h2 {
	letter-spacing: 5px;
}

a.btn-sso:hover .h6, a.btn-login:hover .h6, a.btn-top:hover .h6 {
	letter-spacing: 3px;
}

a.btn-sso {
	color: #00336D;
	background-color: #fff;
	border: 2px solid #00336D;
}

a.btn-login {
	color: #4D9BE8;
	background-color: #fff;
	border: 2px solid #4D9BE8;
}

@media (max-width: 767.98px) {
	a.btn-sso, a.btn-login, a.btn-top  {
		width: 98%;
	}

	.miyadaimoukun {
		position: absolute;
		top: -calc(100% * 0.5);
		left: calc(100% * 0.85);
		margin: 0;
		padding: 0;
	}
}

/* ================================ *
 *	ポータル画面スタイル			*
 * ================================ */
/* ポータルメニュー項目用 */
.navbar-item-center{
	justify-content: space-around;
}

@media (max-width: 992px) {
	.nav-link {
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: center;
		padding: 10px;
	}
	.nav-link img.image-detail {
		width: 30px;
		height: 30px;
		margin-right: 1em;
	}
	.nav-link br {
		display: none;
	}
	.nav-text-jp {
		padding-right: 1em;
	}
}

/*ポータルのお知らせテーブル用*/
.notice-tbl{
	background-color: white;
}
.notice-tbl thead {
	text-align: center;
}
.notice-tbl thead, .notice-tbl th, .notice-tbl td {
	vertical-align: middle !important;
}
.notice-tfoot-td{
	margin-left: 
	auto; width: 1200px;
}

/* ================================ *
 *	設備詳細画面スタイル			*
 * ================================ */
.equip-flex {
	position: relative;
	width: 100%;
	min-height: 1px;
	padding: .5rem !important;

	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%;

	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;

	font-size: 82%;
}

.equip-flex img {
	font-size: 100%;
}

.equip-left, .equip-right {
	padding-left: .25rem;
	padding-right: .25rem;
}

.equip-right {
	vertical-align: top;
}

[class*="equip-tbl"] {
	table-layout: fixed;
}

[class*="equip-tbl"] th, [class*="equip-tbl"] td {
	vertical-align: middle;
}

.equip-tbl-left tr th:first-child,
.equip-tbl-top tr th:first-child {
	border-right: .15rem solid #9cabb9;
}

.equip-tbl-price th {
	border-bottom: .15rem solid #9cabb9;
}

[class*="equip-tbl"] tbody tr:hover {
	background-color: rgba(222,225,234,0.175);
}

.equip-tbl-right th {
	width: 30%;
	max-width: 30%;
}

.equip-tbl-top th,
.equip-tbl-left th {
	width: 20%;
	max-width: 20%;
}

img.image-list {
	max-width: 100%;
	width: auto;
	height: auto;
}

img.image-detail {
	max-width: 100%;
	max-height: 300px;
	width: auto;
	height: auto;
	margin: 1rem;
}

@media (max-width: 767.98px) {
	.equip-left, .equip-right {
		max-width: 100%;
	}

	[class*="equip-tbl"] th, [class*="equip-tbl"] td {
		max-width: 100%;
		width: 100%;
		display: block;
	}

	[class*="equip-tbl"] td {
		background-color: #fff;
	}

	.pc-title {
		display: none;
	}

	.sp-title {
		display: block;
	}

	.data-label-list td {
		display: block;
		text-align: right;
	}

	.data-label-list td::before {
		content: attr(data-label);
		float: left;
		font-size: .7rem;
		font-weight: bold;
		color: #999;
	}

	img.image-detail {
		margin: 0rem;
	}
}

@media (min-width: 768px) {
	.equip-left {
		max-width: 60%;
	}

	.equip-right {
		vertical-align: top;
		max-width: 40%;
	}

	.sp-title {
		display: none;
	}
}

a.paperBtn {
	font-size: 9pt;
	border-radius: 15px 15px 15px 15px;
	-webkit-border-radius: 15px 15px 15px 15px;
	-moz-border-radius: 15px 15px 15px 15px;
}

/* ================================ *
 *	予約一覧画面スタイル			*
 * ================================ */
.reserve-tbl-top, .reserve-tbl-fixed {
	table-layout: auto;
	overflow: hidden;
}

.reserve-tbl-price {
	table-layout: fixed;
	text-align: right !important;
}

.reserve-tbl-top thead th {
	border-bottom: .15rem solid #9cabb9;
}

.reserve-tbl-top th {
	text-align: center;
	vertical-align: middle !important;
}

.reserve-tbl-fixed tr th {
	border-right: .15rem solid #9cabb9;
}

.reserve-tbl-price tbody tr:not(:nth-child(1)) th:first-child {
	background-color: rgba(222,225,234,0.7);
	border-right: .15rem solid #9cabb9;
}

.reserve-tbl-top td, .reserve-tbl-fixed td, .reserve-tbl-price td, .reserve-tbl-application td {
	vertical-align: middle !important;
}

.reserve-tbl-price tr:nth-child(1) th,
.reserve-tbl-application th {
	text-align: center;
	vertical-align: middle;
	background-color: rgba(222,225,234,0.75);
	border-bottom: .15rem solid #9cabb9;
}

.reserve-tbl-fixed th,
.reserve-tbl-price th,
.reserve-tbl-application th {
	vertical-align: middle;
}

.reserve-col-15 {
	width: 15%;
	max-width: 15%;
}

.reserve-col-25 {
	width: 25%;
	max-width: 25%;
}

.reserve-col-30 {
	width: 30%;
	max-width: 30%;
}

@media (max-width: 575.98px) {
}

@media (max-width: 767px) {
	.reserve-col-15, .reserve-col-25, .reserve-col-30 {
		width: 100%;
		max-width: 100%;
	}

	.reserve-tbl-fixed th, .reserve-tbl-fixed td {
		width: 100%;
		display: block
	}

	.reserve-tbl-top {
		display: block;
	}
	.reserve-tbl-top thead {
		display: none;
	}
	.reserve-tbl-top tbody, .reserve-tbl-top tr, .reserve-tbl-top th, .reserve-tbl-top td {
		display: block;
		width: 100%;
	}
	.reserve-tbl-top tr {
		margin-bottom: .5rem;
	}
	.reserve-tbl-top th {
		padding: 1rem 1rem .5rem;
		font-weight: bold;
	}
	.reserve-tbl-top td {
		position: relative;
		padding: .5rem .5rem 1rem calc(30% + .5rem);
		min-height: 2rem;
	}
	.reserve-tbl-top td:before {
		content: attr(data-label);
		font-weight: bold;
		position: absolute;
		top: 0;
		left: 0;
		box-sizing: border-box;
		width: 40%;
		padding: .5rem 1rem;
	}
	.reserve-tbl-top td.saturday:before {
		color: #1d4293;
	}
	.reserve-tbl-top td.sunday:before,
	.reserve-tbl-top td.holiday:before {
		color: #c50030;
	}
	.reserve-tbl-top td.closedday:before {
		color: #6c757d;
	}

	.reserve-tbl-price,
	.reserve-tbl-application {
		width: 100%;
	}
	.reserve-tbl-price .thead,
	.reserve-tbl-application .thead {
		display: none;
	}
	.reserve-tbl-price th,
	.reserve-tbl-application th {
		display: block;
		width: 100%;
		border: inherit;
	}
	.reserve-tbl-price td,
	.reserve-tbl-application td {
		padding: .3rem .5rem;
		display: block;
		width: 100%;
		border: inherit;
		min-height: 2rem;
		text-align: right;
	} 
	.reserve-tbl-price td:before,
	.reserve-tbl-application td:before {
		content: attr(data-label);
		font-size: .7rem;
		font-weight: bold;
		padding: 0rem 1rem;
		color: #999;
		display: block;
		text-align: left;
	}

	.reserve-tbl-application td:first-child {
		background: #dee1ea;
		color: #fff;
		font-weight: bold;
		text-align: center;
		padding: .5rem;
	}

	.reserve-tbl-application .sp-title {
		display: inline;
	}
}

/* ================================ *
 *	予約利用履歴一覧画面スタイル		*
 * ================================ */
.reserve-list-footer {
	position: fixed;
	right: 4.5rem;
	bottom: .5rem;
	z-index: 100;
}

.f1-6 {
	font-size: 1.6rem;
}

/* ================================ *
 *	利用者情報変更画面スタイル		*
 * ================================ */
.account-tbl {
	table-layout: fixed;
	margin-top: .5rem;
	margin-bottom: .5rem;
	width: 100%;
}

.account-tbl thead, .account-tbl th, .account-tbl td {
	vertical-align: middle !important;
}

.account-tbl th {
	width: 35%;

	padding-left: 1rem;
	padding-right: .75rem;
	border-right: .15rem solid #9cabb9;
}

@media (max-width: 575.98px) {
	.account-tbl th,
	.account-tbl td {
		width: 100%;
		display: block;
	}
}

@media (min-width: 576px) {
	.account-tbl td {
		padding-left: 1rem;
		padding-right: 1rem;
	}
}

@media (min-width: 768px) {
	.account-tbl th {
		max-width: 25%;
	}

	.account-tbl td {
		padding-left: 2rem;
		padding-right: 2rem;
	}
}

/* ================================ *
 *	予算表示画面スタイル			*
 * ================================ */
.budget {
	width: 95vw;
	height: 65vh;
}

/* ================================ *
 *	mobile画面スタイル			*
 * ================================ */
.link-block {
  	position: relative;
  	font-size: 1rem;
}
 
.link-block .alert{
  	font-size: 0.9rem;
	padding: .3rem .5rem;
}
 
.link-block a {
	position: absolute;
	top: 0;
	left: 0;
	height:100%;
	width: 100%;
}

.mobile-equipment-list {
	list-style: none;
	padding-left: 0;
	display: block;
}

.vertical-tbl {
	table-layout: fixed;
	text-align: left !important;
	margin-top: .5rem;
	margin-bottom: .5rem;
	width: 100%;
}

.vertical-tbl-top, .vertical-tbl-bottom {
	table-layout: auto;
	overflow: hidden;
}

.vertical-tbl thead, .vertical-tbl th, .vertical-tbl td {
	vertical-align: middle !important;
}

.vertical-tbl th,
.vertical-tbl td {
	display: block;
	width: 100%;
}

.vertical-tbl thead th {
	text-align: center;
}

.vertical-tbl tbody th {
	text-align: left;	
}

.vertical-tbl td {
	vertical-align: middle !important;	
}

.price-tbl td {
	text-align: right !important;
}

.vertical-tbl-apply-use {
	table-layout: fixed;
	text-align: right !important;
	margin-top: .5rem;
	margin-bottom: .5rem;
	width: 100%;

}

.vertical-tbl-apply-use th {
	width: 10%;
}

.vertical-tbl-apply-use-hr {
	border-radius: 0;
	border-left: none;
	border-right: none;
	border-bottom: .12rem solid #A3A3A3;
}

.vertical-tbl-apply-use td:before,
.vertical-tbl td:before {
	content: attr(data-label);
	font-size: .8rem;
	font-weight: bold;
	padding: 0rem 0.5rem;
	color: #999;
	display: block;
	text-align: left;
}

/* 検索パネル　フロート表示 */
@media (max-width: 575.98px) {
	.mobile-search-panel {
		position: sticky;
	top: 60px;
	z-index: 100;
	}
}

@media (min-width: 576px) {
	.mobile-search-panel {
		position: sticky;
		top: 130px;
		z-index: 100;
	}
}

@media (min-width: 768px) {
	.mobile-search-panel {
		position: sticky;
		top: 90px;
		z-index: 100;
	}
}


/* -------------------------------- * /


/* ================================ *
 *	ツールチップスタイル			*
 * ================================ */
 /* ツールチップ本体 */
.tooltip-inner {
	max-width: 600px;
	padding: 0.25rem 0.5rem;
	color: #000;
	text-align: left;
	text-align: start;
	background-color: #fff;
	background-clip: padding-box;
	border: 1px solid #000;
	border-radius: 0.3rem;
	opacity: 1;
}

/* ツールチップの背景の透過率 */
.tooltip.show {
	opacity: 1;
}

/* ツールチップの三角形部分 */
.tooltip .arrow::before, .tooltip .arrow::after {
	position: absolute;
	content: "";
	border-color: transparent;
	border-style: solid;
}

/* 上に出るツールチップ ----- start */
.bs-tooltip-top, .bs-tooltip-auto[x-placement^="top"] {
	margin-bottom: 0.5rem;
}

.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^="top"] .arrow {
	bottom: 0;
}

.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^="top"] .arrow::before,
.bs-tooltip-top .arrow::after,
.bs-tooltip-auto[x-placement^="top"] .arrow::after {
	border-width: 0.5rem 0.5rem 0;
}

.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^="top"] .arrow::before {
	bottom: 0;
	border-top-color: #000;
}
.bs-tooltip-top .arrow::after, .bs-tooltip-auto[x-placement^="top"] .arrow::after {
	bottom: 1px;
	border-top-color: #fff;
}
/* 上に出るツールチップ ----- end  */

/* 右に出るツールチップ ----- start */
.bs-tooltip-right, .bs-tooltip-auto[x-placement^="right"] {
	margin-left: 0.5rem;
}

.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^="right"] .arrow {
	left: calc(1px * -1);
	width: 0.5rem;
	height: 1rem;
	margin: 0.3rem 0;
}

.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^="right"] .arrow::before,
.bs-tooltip-right .arrow::after,
.bs-tooltip-auto[x-placement^="right"] .arrow::after {
	border-width: 0.5rem 0.5rem 0.5rem 0;
}

.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^="right"] .arrow::before {
	left: 0;
	border-right-color: #000;
}
.bs-tooltip-right .arrow::after, .bs-tooltip-auto[x-placement^="right"] .arrow::after {
	left: 1px;
	border-right-color: #fff;
}
/* 右に出るツールチップ ----- end  */

/* 下に出るツールチップ ----- start */
.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^="bottom"] {
	margin-top: 0.5rem;
}

.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^="bottom"] .arrow {
	top: calc(1px * -1);
}

.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^="bottom"] .arrow::before,
.bs-tooltip-bottom .arrow::after,
.bs-tooltip-auto[x-placement^="bottom"] .arrow::after {
	border-width: 0 0.5rem 0.5rem 0.5rem;
}

.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
	top: 0;
	border-bottom-color: #000;
}
.bs-tooltip-bottom .arrow::after, .bs-tooltip-auto[x-placement^="bottom"] .arrow::after {
	top: 1px;
	border-bottom-color: #fff;
}
/* 下に出るツールチップ ----- end  */

/* 左に出るツールチップ ----- start */
.bs-tooltip-left, .bs-tooltip-auto[x-placement^="left"] {
	margin-right: 0.5rem;
}

.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^="left"] .arrow {
	right: calc(1px * -1);
	width: 0.5rem;
	height: 1rem;
	margin: 0.3rem 0;
}

.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^="left"] .arrow::before,
.bs-tooltip-left .arrow::after,
.bs-tooltip-auto[x-placement^="left"] .arrow::after {
	border-width: 0.5rem 0 0.5rem 0.5rem;
}

.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^="left"] .arrow::before {
	right: 0;
	border-left-color: #000;
}
.bs-tooltip-left .arrow::after, .bs-tooltip-auto[x-placement^="left"] .arrow::after {
	right: 1px;
	border-left-color: #fff;
}
/* 左に出るツールチップ ----- end  */

/* インフォメーションマーク関連のスタイル */
th .info-mark {
	position: absolute;
	right: 5px;
	bottom: 3px;
}

.info-mark i {
	cursor: pointer;
	border: none;
	background: none;
	color: #2b78fd;
}

.info-mark i:hover{
  color: #3e3eff;
}

/* ================================ *
 *	デジタル利用簿					*
 * ================================ */
/* 選択されたタブの色 */
.tab-color-custom.active {
  color: #fff;
  background-color: #2d96ff;
}

.emphasis-text{
	font-size: 1.25rem;
	font-weight: bold;
	
}
