@charset "UTF-8";
/* CSS Document */

html{
	font-size: 16px;
}

body{
	margin-bottom: 80px;
}

.kt-clear{
	clear: both!important;
}

/*  =====================  フォーム  =====================  */

.kt-bg-light-glay{
	background-color: #ececec;
}
.kt-bg-pink {
	background-color: #f8d3e0;
	color: black;
}

/*  =====================  フォーム  =====================  */

/*  チェックボクス  */
.kt-form-check{}

.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
  opacity: 0.5;
}

.kt-form-check-list{
	padding-left: 29px;/* 24px + 5px = 29px */
}

.kt-form-check-list .form-check-input{
	margin-top: 7px;/*4px */
}

.kt-form-check-list .form-check-label:hover{
	background-color: rgba(203,215,238,.35);
}

.kt-form-parent{
	background-color: #dfe0e5;/*#dfe0e5;*/
}

.kt-form-parent:hover{
	background-color: #d6d7dc;/*#dfe0e5;*/
}

.kt-form-check-list .form-check-label{
	padding-top: 3px;
	padding-bottom: 3px;
	padding-right: 10px;	
}

.kt-form-check-list .form-check-input  ~ .form-check-label{
	display: block;
	padding-left: 30px;
	margin-left: -30px;
}

.kt-form-child.kt-form-check-list{
	padding-left: 50px;
}

.kt-form-child-group .kt-form-child-group .kt-form-child.kt-form-check-list{
	padding-left: 75px;/*50px;*/
}

.kt-form-child.kt-form-check-list .form-check-input  ~ .form-check-label{
	padding-left: 50px;
	margin-left: -50px;
}

.kt-form-child-group .kt-form-child-group .kt-form-child.kt-form-check-list .form-check-input  ~ .form-check-label{
	padding-left: 75px;/*50px;*/
	margin-left: -75px;
}

.kt-form-check-list .form-check-input:checked[type="checkbox"]  ~ .form-check-label,
.kt-form-check-list .form-check-input:checked[type="radio"]  ~ .form-check-label{
	background-color: #cbd7ee;
}

.kt-form-check-list .form-check-input:checked[type="checkbox"]  ~ .form-check-label:hover,
.kt-form-check-list .form-check-input:checked[type="radio"]  ~ .form-check-label:hover{
	background-color: #beceed;
}

.kt-form-parent.kt-form-check-list .form-check-input:checked[type="checkbox"]  ~ .form-check-label:hover,
.kt-form-parent.kt-form-check-list .form-check-input:checked[type="checkbox"]  ~ .form-check-label{
	background-color: transparent;
}

/*  グループ - チェックボクス -コラプス  */

.kt-in-collapse{
	position: relative;
}

.kt-in-collapse label{
	margin-right: 24px;
}

.kt-in-collapse .btn{
	position: absolute;
	top: 5px;
	width: 18px;
	height: 18px;
	right: 5px;
	margin: 0;
	padding: 0;
	
}
.kt-in-collapse .btn img{
	margin: 0;
}

.kt-in-collapse .btn.collapsed img.kt-icon-open,
.kt-in-collapse .btn[aria-expanded="false"] img.kt-icon-open{
	display: block!important;
}

.kt-in-collapse .btn.collapsed img.kt-icon-close,
.kt-in-collapse .btn[aria-expanded="false"] img.kt-icon-close{
		display: none!important;
}

.kt-in-collapse .btn[aria-expanded="true"] img.kt-icon-close,
.kt-in-collapse .btn:not(.collapsed) img.kt-icon-close{
	display: block;
}

.kt-in-collapse .btn[aria-expanded="true"] img.kt-icon-open,
.kt-in-collapse .btn:not(.collapsed) img.kt-icon-open{
	display: none;
}

/*  =====================  ヘッダー  =====================  */

/*  共通ヘッダー  */

.kt-header{
	background-color: #fff;
	border-top: 3px solid #002063;
	height: 4rem;/*64px;*/
	/*min-height: 64px;*/
	box-shadow:  0 .5em 1.5em rgba(0, 0, 0, .1),  0 .125em .5em rgba(0, 0, 0, .15);
	z-index: 101;/*100*/
	position: relative;
	min-width: 980px;
}

.kt-header-icho{
	margin-left: 16px;
	margin-right: 8px;
}

.kt-h1-app-name{
	line-height: 1.5rem;
	font-size: 1.375rem;
}

.kt-app-name{
	font-weight: 600;
	font-size: 1.375rem;
	color: #555;
	font-feature-settings: "palt";
}

/*  ログイン課・氏名  */

.kt-header-login{
	margin-top: 10px;
	margin-right: 16px;
	float: left;
}

.kt-header-login-img{
	float: left;
	margin-right: 8px;
}

.kt-header-login-neame-wrap{
	float: left;
	line-height: 1;
	padding-right: 3px;
	overflow-x: hidden;
	text-overflow: ellipsis;
	max-width: 40vw;
	white-space: nowrap;
}

.dropdown-toggle.kt-header-login-a::after {
	margin-top: 16px;
}

.kt-header-login-neame-wrap * {
	text-decoration: none;
	font-style: normal;
	font-weight: normal;
}

.kt-header-login-dept {
	display: block;
	max-width: 40vw;
	overflow-x: hidden;
	text-overflow: ellipsis;
}

.kt-header-login-name{
	font-size: 1.125rem;
	line-height: 1.33;
}

.kt-header-login .dropdown-menu.show{
	z-index: 110;
}

.kt-header-login li:last-child .dropdown-item{
	padding: 8px 10px;
	border: 1px solid var(--bs-primary);
	margin: 0 10px;
	width: auto;
}

/*  =====================  グローバル ナビゲーションバー（Global Navi）  =====================  */

.kt-nav-left-bar{
	background-color: var(--bs-primary);
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3.75rem;/*60px;*/
}

.kt-nav-left-bar > ul{
	margin: 100px 0 0 0;
	padding: 0;
	list-style: none;
}

.kt-nav-left-bar > ul > li{
	margin: 0;
	padding: 0;
}

.kt-nav-left-bar-item{
	color: #fff!important;
	text-decoration: none;
	font-size: .75rem;/*.6875rem;*/
	display: block;
	margin: 10px 0;
	padding: 10px .5em;
	text-align: center;
	line-height: 1.2;
	position: relative;
}

.kt-nav-left-bar-item img{
	display: block;
	margin: 5px auto;
}

.kt-gmenu-on{
	background-color: #020a31;
}

.kt-gmenu-on::after{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8px 8px 8px 0;
	border-color: transparent #ffffff transparent transparent;
	position: absolute;
	right: 0;
	top: 28px;
}

.kt-nav-left-bar-item[data-info-on="on"]::before{
	content: "";
	position: absolute;
	top: -8px;
	right: 0;
	width: 25px;
	height: 25px;
	border: 2px solid #fff;
	background-color: #cf0000;
	border-radius: 100%;
	background-image: url("../img/pict-ex-mark.svg");
	background-size: 60%;
	background-position: center center;
	background-repeat: no-repeat;
}

/*  =====================  ナビゲーションバー（NavBar）  =====================  */

.kt-navbar{
	margin-left: 3.75rem;/*60px;*/
	background-color: rgba(0,32,99,.8);
}

.kt-nav-non-globalnavi{
	margin-left: 0;
	background-color: rgba(0,32,99,1.0);
}

.kt-navbar,
.kt-navbar .container-fluid{
	padding: 0;
	height: 3.4375rem;/*55px;*/
	position: relative;
}

/*  =====================  ボタン  =====================  */

.kt-btn-120{
	min-width: 120px;
}

.kt-btn-140{
	min-width: 140px;
}

.btn-check:focus + .btn, .btn:focus {
  outline: 0;
}


/*  =====================  バッジ・ラベル  =====================  */

.kt-badge {
    border-radius: .25rem;
	margin-left: 3px;
	margin-top: -1px;
	margin-right:  3px;
	
}

.kt-badge-required{
	font-size: .75rem;
	background-color: #c62826!important;
}

.kt-badge-sikuchoson{
	font-size: 1rem;
	border: 1px solid #555;
}

.kt-badge-ichijitaizai{
	font-size: 1rem;
	background-color: #04aa9c!important;
}

.kt-badge-ichijitaizai::before{
	content: "";
	display: inline-block;
	height: 22px;
	width: 18px;
	background-image: url("../img/pict-ichiji-taizai-w.svg");
	background-repeat: no-repeat;
	margin: -1px 4px -1px -5px;
	vertical-align: middle;
}


/*  =====================  テーブル  =====================  */

.kt-table th{
	background-color: #ebebeb;
	font-size: .875rem;
}

.kt-table th,
.kt-table td{
	height: 58px;
	vertical-align: middle;
}

.kt-table{
	border-top: 1px solid #ccc;
}


/* --- テーブルバーチカル ---- */

.kt-table-vertical{
	border-top: 1px solid #ccc;
}


.kt-table-vertical th{
	padding-left: 16px;
}

/* --- テーブル選択 ---- */

.table {
  --bs-table-hover-bg: #e0ecff;
}

tr.kt-table-row-checked > td{
	background-color: #e0ecff;
}

.kt-table-title-nav{
	padding-top: 16px;
	margin-top: -16px;
	position: sticky;
	top: 102px;/*102px;*/
	background-color: #fff;
}

/* --- テーブルヘッダー---- */

.table > :not(:first-child) {
  border-top: 1px solid #ccc;
}

.kt-table-header-fixd-position-search-after thead{
	position: sticky;
	/** top: 10.25rem;/*164px;*/
	z-index: 2;
}

/*  =====================  ボタン関連  =====================  */

.kt-btn-line-msg-hashin{
	padding-left: 0;
}

/* --- ボタンアイコン ー---- */

/* 滞在者新規登録 */
.kt-btn-icon-taizaisya-shinki-touroku,
.kt-btn-icon-taizaisya-taikan-touroku{
	margin: -3px 6px -2px 0;
}

/* ラインメッセージ配信*/
.kt-btn-icon-line-msg-hashin{
	margin-top: calc(-.375rem - 1px);
	margin-bottom:  calc(-.375rem - 1px);
	margin-left: -1px;
	margin-right: 8px;
	vertical-align: middle;
	height: 40px;
	width: 40px;
}

/*  =====================  モーダル  =====================  */

.kt-mordal .modal-header{
	padding: 0.5rem 1rem;
}

.kt-mordal .modal-header h5{
	font-size: 1rem;
}

.kt-mordal .modal-content {
	border-radius: 0;
}

/*  =====================  ページネイション  =====================  */

.pagination .kt-pagination-page-item-start .page-link{
	padding-left: .5rem;
	padding-right: .375rem;
}

.pagination .kt-pagination-page-item-prev .page-link{
	padding-left: .5rem;
	padding-right: .375rem;
}

.pagination .kt-pagination-page-item-next .page-link{
	padding-left: .375rem;
	padding-right: .5rem;
}

.pagination .kt-pagination-page-item-last .page-link{
	padding-left: .375rem;
	padding-right: .5rem;
}

.pagination .kt-pagination-par-select{
	width: 75px;
}

.pagination .kt-pagination-par-select .form-select{
	padding-left: 8px;
	padding-right: 18px;
	background-position-x: calc(100% - 6px);
}

/*  =====================  リスト  =====================  */


/* 定義リスト風ULリスト  */

.kt-dl-list-type{
	margin-bottom: 0;
}

.kt-dl-list-type > li{
	margin-right: 1.5rem;
	display: inline-block;
	line-height: 2;
}

.kt-dl-list-type > li > em{
	font-style: normal;
	font-size: .875rem;
}

.kt-dl-list-type > li > strong{
	font-size: 1.125rem;/*18px*/
}

/*  =====================  DatePicker =====================  */

.tui-datepicker{
	z-index: 1;
}

.tui-datepicker .tui-is-selectable.tui-is-selected{
	background-color:#004aa8;/*0,74,168*/
}

.tui-calendar td, .tui-calendar th {
	color: #555;
}

.tui-calendar td:hover{
	background-color: #999;
}

.tui-calendar .tui-calendar-title-today,
.tui-calendar .tui-calendar-body-header th {
	color: #4c4c4c;	
}

.tui-calendar .tui-calendar-title-today {
    background-color: #e0ecff;
}

.tui-calendar .tui-calendar-title-today:hover {
	background-color: rgba(0,74,168,.25);
}

.tui-datepicker .tui-is-selectable:hover {
    background-color: #e0ecff;
}

.kt-datepicker-input{
	padding-left: .5rem;
	background-color: #888!important;
	
	background-image:url("../img/pict-btn-calendar.svg"), linear-gradient(270deg, rgba(235, 235, 235, 1), rgba(235, 235, 235, 1) 29px, rgba(178, 178, 178, 1) 29px, rgba(178, 178, 178, 1) 30px, rgba(255, 255, 255, 1)30px,rgba(255, 255, 255, 1));
	background-repeat: no-repeat;
	background-position: right 8px center,right center;
}

/*  =====================  ページトップ  =====================  */

#page-top{
  width: 60px;
  height: 70px;
  position: fixed;
  right: -60px;
  bottom: 0px;
	background-color: rgba(0,32,99,.6);
	z-index: 99;
}
.has-scroll #page-top {
	right: 0px;	
}

#page-top:hover{
	background-color: rgba(0,32,99,.9);
}

#page-top a{
  position: relative;
  display: block;
  width: 60px;
  height: 70px;
  text-decoration: none;
}
#page-top a::before{
	content: "";
	display: block;
	background-image: url("../img/btn-pagetop.svg");
	background-repeat: no-repeat;
	background-position: center center;
  position: absolute;
  width: 47px;
  height: 35px;
  top: 18px;
  left: 7px;
  margin: auto;
}



.ktkn-bousai-reader-btn, .ktkn-bousai-renkei-btn {
	font-size: 0.5rem;	
}
/* 訓練モード スタイル */
.training .kt-header {
  background-color: #00ff00;
}
.training .kt-header h1::after {
  content: "【訓練モード】";
  color: white;
  font-size: 24px;
  font-weight: 800;
  text-shadow: 1px 1px 0px #000000, -1px -1px 0px #000000, -1px 1px 0px #000000, 1px -1px 0px #000000, 1px 0px 0px #000000, -1px 0px 0px #000000, 0px 1px 0px #000000, 0px -1px 0px #000000;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
