@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP');

/*==================================
	Base
==================================*/

*{
	font-family: 'Noto Sans JP', sans-serif, 'Font Awesome 5 Free';
	font-weight:400;
}
html{
	font-size:13.5px;
	width:fit-content;
}
.rl{
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
strong,
th{
	font-weight:700;
}
.font-base,
.font-base *{
	font-size:15px;
}
.font-xxs{
	font-size:11px;
}
.font-xxs .table th,
.font-xxs .table td {
	padding: 0.5rem 0.3rem;
}

/*==================================
	Colors
==================================*/
.bg-success-light{
	background-color:#edfff6 !important;
}
.bg-success{
	background-color: #c6e6c6 !important;
}
.bg-success-light{
	background-color: #c6e4e4 !important;
}
.bg-primary{
	background-color:#b8daff !important;
}
.bg-secondary{
	background-color:#b4b5b7 !important;
}
.bg-primary.bg-op-level-1{
	background-color:#d9ebff !important;
}
.bg-primary.bg-op-level-2{
	background-color:#edf6ff !important;
}
.bg-corporate{
	background-color:#520000 !important;
}
.bg-corporate-light{
	background-color:#7e0102 !important;
}
.bg-warning{
	background-color:#a9764c !important;
}
.table-primary-light{
	background-color:#e4f0fd;
}
.text-warning{
	color:#f79f64 !important;
}
.text-corporate{
	color:#520000 !important;
}
.text-corporate-light{
	color:#7e0102 !important;
}
.badge-warning{
	background-color:#a9764c;
	color:#fff;
}

/*==================================
	Form
==================================*/
select.form-control{
	display:inline-block;
	width:auto;
	cursor:pointer;
	font-weight:700;
}
.form-control-appearance-none{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.td-input,
.td-input-group{
	padding:0 !important;
}
.td-input .form-control-appearance-none,
.td-input-group .form-control-appearance-none{
	background-color:transparent;
	width:100%;
	text-align:center;
	border:none;
	padding:0;
	min-height: 3.5rem;
	border-radius:0;
	padding:0 1rem;
	outline:none !important;
	box-shadow:none !important;
	color:#269898;
	font-size: 1.5rem;
}
.td-input-group .form-control-appearance-none{
	width:auto;
	padding:0 .5rem;
}
.custom-control.custom-control-single-check{
	width:1rem;
	height:1rem;
}
.custom-control-label.custom-control-single-check::before,
.custom-control-label.custom-control-single-check::after{
	left:-1.25rem;
}
.custom-control-label::before {
	border: #269898 solid 1px;
}
.custom-control-input:checked~.custom-control-label::before{
	border-color: #269898;
	background-color: #269898;
}
.x-check-lg .custom-control{
	min-height: 20px;
	padding-left: 20px;
}
.x-check-lg .custom-control .custom-control-label::before,
.x-check-lg .custom-control .custom-control-label::after{
	top: 0;
	left: -20px;
	width: 20px;
	height: 20px;
}

/*==================================
	Table
==================================*/
.table.table-max-content{
	width: max-content;
}
.table th,
.table td{
	padding: .5rem;
	vertical-align:middle;
}

.table-data th {
	white-space: nowrap !important;
	width: 1px;
	padding-right: 50px;
}

.table-nowrap {
	width: auto !important;
}

.table-nowrap th,
.table-nowrap td {
	white-space: nowrap;
	width: 1px;
}

/*}*/
.modal .table th,
.modal .table td{
	padding: .75rem;
}
.table-bordered td,
.table-bordered th {
	border: 1px solid #6b6b6b;
}
.table thead th {
	border-bottom: 2px solid #6b6b6b;
}
.table th .rl,
.table th .rl a{
	text-decoration:none !important;
	font-weight: 700;
}

.div-text-wrapper{
	white-space:normal;
	word-break:normal;
}
.div-text-wrapper-sm{
	width:150px;
}
.div-text-wrapper-md{
	width:250px;
}
.div-text-wrapper-lg{
	/*width:355px;*/
	width:210px;
}
.table td.td-radio{
	padding:0;
}
.td-radio label{
	display: table-cell;
	margin-bottom: 0;
	padding: .5rem;
	vertical-align: middle;
	position: relative;
	cursor:pointer;
}
.td-radio label input[type="radio"]{
	position:absolute;
	z-index:-1;
	opacity:0;
}
.td-radio label.checked{
	background-color:#ffc107;
}
.tr-memo{
	display:none;
}
.hide-obj{
	display:none;
}
.div-table{
	display:table;
	width:100%;
	height:100%;
}
.div-table-row{
	display:table-row;
}
.div-table-cell{
	display:table-cell;
	vertical-align:middle;
}
.table-primary, .table-primary>td,
.table-primary>th{
	background-color: #d9ebff;
}
.table .border-right{
	border-right:2px solid #6b6b6b !important;
}
.table .border-bottom{
	border-bottom:2px solid #6b6b6b !important;
}
.thead-warning th,
.thead-warning td{
	background-color:#a9764c !important;
	color:#fff !important;
	border-color:rgba(0, 0, 0, 0.22) !important;
}

/*==================================
	Text
==================================*/
.text-lg{
	font-size: 1.5rem;
}
.font-weight-normal{
	font-weight:400 !important;
}
.font-weight-bold{
	font-weight:700 !important;
}

/*==================================
	Button
==================================*/
.btn{
	font-size:14px;
}
.btn:focus,
.btn:active,
.btn.active{
	outline:none !important;
	box-shadow:none !important;
}
.btn-success{
	background-color: #066;
	font-weight:700;
	border-color: rgba(0, 0, 0, 0.258) !important;
}
.btn-success:hover,
.btn-success:active,
.btn-success:focus{
	background-color: #015656 !important;
}
.btn-success-secondary,
.btn-secondary-secondary,
.btn-success-secondary *,
.btn-secondary-secondary *{
	font-weight:700;
}
.btn-success-secondary{
	color: #fff;
	background-color: #48a048;
	border-color: rgba(0, 0, 0, 0.078) !important;
}
.btn-success-secondary:hover,
.btn-success-secondary:active,
.btn-success-secondary:focus{
	color: #fff;
	box-shadow:none;
	background-color: #3e8e3e;
}
.btn-secondary-secondary{
	color: #383838;
	background-color: #d6d8db;
	border-color: #bbbbbb;
}
.btn-secondary-secondary:hover,
.btn-secondary-secondary:active,
.btn-secondary-secondary:focus{
	color: #383838;
	box-shadow:none;
	background-color: #c7c7c7;
	border-color: #adadad;
}
.btn-primary{
	background-color: #63adfd;
	font-weight:700;
	border-color: rgba(0, 0, 0, 0.258) !important;
}
.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus{
	background-color:#56a1f3;
}
#fixed-alert .div-y-toggle-btns .btn-group .btn.btn-primary.active{
	/*background-color: #398be4;*/
	background-color: #f79f64;
}
.btn-danger{
	background-color: #f76472;
	font-weight:700;
	border-color: rgba(0, 0, 0, 0.258) !important;
}
.btn-danger:hover,
.btn-danger:active,
.btn-danger:focus{
	background-color:#f15967;
	box-shadow:none;
}
.btn-warning{
	background-color: #ffdd75;
	font-weight:700;
	border-color: rgba(0, 0, 0, 0.258) !important;
}
.btn-warning:hover,
.btn-warning:active,
.btn-warning:focus{
	background-color:#ffd863;
}
.btn-primary,
.btn-corporate{
	background-color: #520000;
	color:#fff;
	font-weight:700;
	border-color: rgba(0, 0, 0, 0.258) !important;
}
.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus,
.btn-corporate:hover,
.btn-corporate:active,
.btn-corporate:focus{
	background-color:#3c0101 !important;
	color:#fff;
}
.btn-primary.active,
.btn-corporate.active{
	background-color:#4f5b9e !important;
}
.btn-corporate-light{
	background-color: #7e0102;
	color:#fff;
	font-weight:700;
	border-color: rgba(0, 0, 0, 0.258) !important;
}
.btn-corporate-light:hover,
.btn-corporate-light:active,
.btn-corporate-light:focus{
	background-color:#7e0102 !important;
	color:#fff;
}
.btn-light{
	border-color: #d2d2d2;
}

/*==================================
	Pager
==================================*/
.page-link,
.page-link:hover{
	color:#131D53;
}
.page-item.active .page-link{
	background-color: #131D53;
	border-color: #131D53;
}

/*==================================
	Modal
==================================*/
.modal-header,
.modal-title{
	font-weight:700;
}
.modal-header{
	background-color: #eee;
}
.modal-footer .btn{
	min-width:120px;
}
.modal-body .table tr:first-child th,
.modal-body .table tr:first-child td{
	border-top:none;
}

/*==================================
	Card
==================================*/
.card-header{
	font-weight:700;
}

/*==================================
	Link color & File uploader
==================================*/
/*a,*/
.dropzone .dz-message span{
	color:#7e0102;
}
.dropzone .dz-message span{
	cursor:pointer;
	display: inline-block;
}
a:hover,
.dropzone .dz-message span:hover{
	color:#520000;
}
.dropzone .dz-message span:before{
	font-family: Font Awesome\ 5 Free;
	content:'\f0c6';
	margin-right:5px;
	font-weight:bold;
}
a.nav-link{
	color:#495057;
}
a.nav-link.active,
a.nav-link.active *{
	color:#fff !important;
	background-color:#7e0102 !important;
}

/*==================================
	Fixe header alert
==================================*/
#fixed-alert{
	position: fixed;
	z-index: 10;
	left: 0;
	top: 0;
	right: 0;
	background-color: #fff;
	/*box-shadow: 0 0 20px #fff;*/
}
#fixed-alert .btn{
	/*min-height:100%;*/
	min-width:110px;
	position:relative;
	min-height: 42px;
	line-height: 29px;
}
#fixed-alert .alert{
	position:relative;
}
#fixed-alert .alert .i-alert-hide{
	position:absolute;
	z-index:2;
	right:15px;
	top:10px;
	cursor:pointer;
	font-size:1.5rem;
}
#fixed-alert .btn .tooltip{
	display:none;
	opacity: 1;
	top: -20px;
	left: 50%;
	width: 120px;
	margin-left: -60px;
}
#fixed-alert .btn .tooltip .arrow::before{
	top: unset;
	border-width: 0.4rem 0.4rem 0;
	border-top-color: #ce0000;
	bottom: -26px;
	left: 55px;
}
#fixed-alert .btn .tooltip .tooltip-inner{
	background-color: #ce0000;
}
#fixed-alert .btn .span-text-x-show{
	display:none;
}
#fixed-alert .btn.x-target-hidden .span-text-x-show{
	display:inline;
}
#fixed-alert .btn.x-target-hidden .span-text-x-hide{
	display:none;
}
#fixed-alert .btn.x-target-hidden .tooltip,
#fixed-alert .btn.y-target-hiden .tooltip{
	display:block;
}
#fixed-alert .div-y-toggle-btns .btn{
	width:auto;
	min-width:0;
}
#fixed-alert select.form-control{
	height:42px;
	border-radius: 2px;
	border-color: #333;
	font-weight: 700;
}
#fixed-alert .div-y-toggle-btns,
#fixed-alert .btn-group{
	min-height:100%;
}
#fixed-alert .btn-group .btn{
	min-height:42px;
	border-width:1px;
	min-width:105px;
}
#fixed-alert .div-class-control-btns .btn{
	min-width:55px;
	width:auto;
	font-weight:700;
}
#fixed-alert .div-y-toggle-btns .btn-group .btn.button-y-show-all{
	text-decoration: line-through;
}
#fixed-alert .div-y-toggle-btns .btn-group .btn.button-y-show-all.active{
	text-decoration: none;
}
.div-class-control-btns{
	display:none;
}
.i-scroll-right,
.i-scroll-left{
	font-size:35px;
	margin-top:3px;
	cursor:pointer;
	vertical-align: middle;
	margin-left:5px;
}
.col-flex-menu {
	display: flex;
	justify-content: flex-start;
	width: 100%;
	flex-wrap: nowrap;
}
.col-flex-menu .col-flex-left,
.col-flex-menu .col-flex-center,
.col-flex-menu .col-flex-right{
	flex:1;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
}
.col-flex-menu .col-flex-center{
	justify-content: center;
}
.col-flex-menu .col-flex-center .i-scroll-right,
.col-flex-menu .col-flex-center .i-scroll-left{
	margin: 0;
	position: static !important;
}
.col-flex-menu .col-flex-right{
	justify-content: flex-end;
}
.col-flex-menu .col-flex-center .btn-group .btn{
	display: flex;
	justify-content: center;
	align-items: center;
	min-width: 110px;
}
.col-flex-menu .col-flex-center .btn-group .btn.btn-first-child{
	border-radius: .25rem 0 0 .25rem;
}
.col-flex-menu .col-flex-center .btn-group .btn.btn-last-child{
	border-radius: 0 .25rem .25rem 0;
	flex-direction: row-reverse;
}
.col-flex-menu .col-flex-center .btn-group .btn.disabled{
	cursor: not-allowed;
	opacity: .2;
}
.col-flex-menu .col-flex-center .btn-group .btn .fas,
.col-flex-menu .col-flex-center .btn-group .btn span{
	line-height: 1;
}
.col-flex-menu .col-flex-center .btn-group .btn .fas{
	font-size: 25px;
}
.col-flex-menu .col-flex-center .btn-group .btn span{
	font-size: 12px;
	line-height: 1.3;
	margin: 0 5px;
}

/*==================================
	Login
==================================*/
.body-login{
	background-color:#e8e8e8;
}
.div-login{
	width:400px;
	margin:100px auto 50px auto;
}
.div-login .card-body{
	padding: 50px 40px;
}
.div-login h1{
	font-size: 39px;
	margin-bottom: 30px;
	font-weight:200;
}
.div-login .input-group,
.div-login .input-group .form-control{
	min-height:40px;
}
.div-login .input-group{
	margin:0 0 15px 0;
}
.div-login .input-group-text{
	font-size: 12px;
	font-weight: 700;
}
.div-login .input-group .form-control{
	font-size:16px;
}
.div-login .btn{
	width:100%;
	padding:10px 0;
	font-size: 16px;
	margin-top:10px;
}
.div-login .copyright{
	text-align:center;
	font-size:11px;
	margin-bottom:0;
	margin-top:15px;
	color:#5f5f5f;
}

/*==================================
	Page Container
==================================*/
.v2-container {
	min-height: 100%;
	height: auto !important;
	height: 100%;
	position: relative;
}
.v2-screen {
	padding-bottom: 40px;
}

/*==================================
	Footer
==================================*/
footer{
	height: 40px;
	width: calc(100% - 260px);
	margin-left:260px;
	position: absolute;
	bottom: 0;
	background-color:#fff;
	text-align:right;
}
footer .copyright{
	line-height:40px;
	font-size:11px;
	margin:0;
	margin-right:15px;
}

/*==================================
	Main
==================================*/
header{
	position:relative;
	z-index:800;
	margin-left:260px;
}
header .navbar-brand{
	color:#fff;
	font-size: 19px;
	font-weight:200;
	line-height: 1;
	padding: 7px;
}
header .navbar-dark .navbar-text{
	font-weight:700;
	color: rgba(255, 255, 255, 0.9);
	background-color: rgba(255, 255, 255, 0.3);
	margin: -15px;
	padding: 12.5px;
	line-height: 39px;
}
header .navbar-dark .navbar-text .badge{
	/*background-color:#bca261;*/
	background-color:transparent;
	color: #fff;
	position: relative;
	top: -2px;
	padding: .45em .4em;
}
header .button-logout{
	position: relative;
	top: -2px;
}
.side-menu{
	width:260px;
	position:fixed;
	z-index:700;
	top:0;
	left:0;
	bottom:0;
	overflow-y:auto;
	box-shadow: 1px 1px 9px rgba(0, 0, 0, 0.169);
}
.side-menu .list-group,
.side-menu .list-group-item{
	border-radius:0;
	font-weight:700;
}
.side-menu.bg-light .list-group-item{
	background-color:transparent;
	border:none !important;
	border-bottom:1px solid rgba(0, 0, 0, 0.06) !important;
	padding: .85rem 1.25rem;
}
.side-menu.bg-light .list-group-item:hover{
	background-color:#eee;
}
.side-menu.bg-light .list-group-item.active{
	background-color:#a9764c !important;
	color:#fff !important;
}
.side-menu.bg-light .list-group-item .fas{
	min-width: 15px;
	color:#a9764c;
}
.side-menu.bg-light .list-group-item.active .fas{
	color:#fff;
}
.side-menu .div-dropdowns{
	display:none;
}
.side-menu .div-dropdowns .list-group-item{
	border-left: 20px solid #cacaca !important;
	background-color: #eee;
}
.side-menu .div-dropdowns .list-group-item:hover{
	background-color: #ddd;
}
.main{
	width:calc(100% - 260px);
	padding:15px 15px 15px 15px;
	margin-left:260px;
	/*width: 100%;*/
	/*padding-left: 315px;*/
}
.sub-menu{
	width:calc(100% - 260px);
	margin-left:260px;
	/*width: 100%;*/
	/*padding-left: 300px;*/
	background-color:#a9764c;
	display:flex;
	justify-content:flex-start;
	flex-wrap:nowrap;
}
.sub-menu a{
	padding:10px 15px;
	white-space:nowrap;
	color:#fff;
	font-weight:700;
	text-decoration:none !important;
	position:relative;
}
.sub-menu a:hover{
	background-color:#a9632a;
}
.sub-menu a.active{
	background-color:#7e0102;
}
.sub-menu a.active:after{
	content:'';
	width: 0;
	height: 0;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	border-top: 10px solid #7e0102;
	position:absolute;
	z-index:1;
	left:50%;
	bottom: -10px;
	margin-left:-10px;
}
.x-checks .fas{
	font-size:1.25rem;
	cursor:pointer;
}
.div-infos{
	max-height:300px;
	overflow-y:auto;
}
.div-status-sections section{
	margin-bottom:30px;
	display:flex;
	justify-content:flex-start;
	position:relative;
}
.div-status-sections section:after{
	content:'';
	width: 0;
	height: 0;
	border-left: 15px solid transparent;
	border-right: 15px solid transparent;
	border-top: 15px solid #e9ecef;
	position:absolute;
	z-index:1;
	left:50%;
	bottom: -22px;
	margin-left-:15px;
}
.div-status-sections section:last-child{
	margin-bottom:0;
}
.div-status-sections section:last-child:after{
	display:none;
}
.div-status-sections section .div-step-number,
.div-status-sections section .div-step-title{
	background-color:#e9ecef;
	padding:10px;
	font-weight:700;
	color: #969696;
}
.div-status-sections section .div-step-number{
	flex-basis:45px;
	text-align:center;
	margin-right:5px;
}
.div-status-sections section .div-step-title{
	flex-basis: calc(100% - 50px);
}
.div-status-sections section.passed:after{
	border-top: 15px solid #7e0102;
}
.div-status-sections section.passed .div-step-number,
.div-status-sections section.passed .div-step-title{
	background-color:#7e0102;
	color:#fff;
}
.div-status-sections section.current .div-step-number,
.div-status-sections section.current .div-step-title{
	background-color:#066;
	color:#fff;
}
.strong-select-label {
	padding: .5rem .95rem;
	min-width: 6rem;
	line-height: 1.25rem;
}
.tab-content.card{
	border-radius:0 0 .25rem .25rem;
}

.error,
.required{
	color:#E74C3C;
	font-weight:bold;
}

/*==================================
	Print css
==================================*/
@media print {
	.print-off{
		display:none;
	}
	.font-xxs{
		font-size:10px !important;
	}
	.font-xxs th,
	.font-xxs td{
		padding:4px !important;
	}
	.font-xxs th a,
	.font-xxs td a{
		color:#333 !important;
	}
	.font-xxs .custom-control-label::after,
	.font-xxs .custom-control-label::before{
		border:none !important;
		width:auto;
		height:auto;
	}
	.font-xxs .custom-control-input:checked~.custom-control-label::before{
		color: #333 !important;
		background-color:transparent; !important;
	}
	.font-xxs .x-check-lg{
		text-align:center !important;
		vertical-align:middle;
	}
	.font-xxs .x-check-lg .custom-control{
		min-height:0;
		padding-left:0;
	}
	.font-xxs .custom-control-input{
		position:absolute !important;
		top:0;
		left:0;
		z-index:1;
		opacity:1;
		border:none;
		background-color:transparent;
	}
}
