@charset "utf-8";

/*****************************************************************
 * モーダルダイアログ
 * @note
 * 参考
 * https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css
 *****************************************************************/

.dlg_modal-open{
	overflow:hidden
}
.dlg_modal-open .dlg_modal{
	overflow-x:hidden;
	overflow-y:auto
}
.dlg_modal{
	position:fixed;
	top:0;
	left:0;
	z-index:1050;
	display:none;
	width:100%;
	height:100%;
	overflow:hidden;
	background-color: rgba(0,0,0,0.4);
	outline:0
}
.dlg_modal-dialog{
	position:relative;
	width:auto;
	margin:.5rem;
	pointer-events:none
}
.dlg_modal.fade .dlg_modal-dialog{
	transition:-webkit-transform .3s ease-out;
	transition:transform .3s ease-out;
	transition:transform .3s ease-out,-webkit-transform .3s ease-out;
	-webkit-transform:translate(0,-50px);
	transform:translate(0,-50px)
}
@media (prefers-reduced-motion:reduce){
	.dlg_modal.fade .dlg_modal-dialog{
		transition:none
	}
}
.dlg_modal.show .dlg_modal-dialog{
	-webkit-transform:none;
	transform:none
}
.dlg_modal.modal-static .dlg_modal-dialog{
	-webkit-transform:scale(1.02);
	transform:scale(1.02)
}
.dlg_modal-dialog-scrollable{
	display:-ms-flexbox;
	display:flex;
	max-height:calc(100% - 1rem)
}
.dlg_modal-dialog-scrollable .dlg_modal-content{
	max-height:calc(100vh - 1rem);
	overflow:hidden
}
.dlg_modal-dialog-scrollable .dlg_modal-footer,.dlg_modal-dialog-scrollable .dlg_modal-header{
	-ms-flex-negative:0;
	flex-shrink:0
}
.dlg_modal-dialog-scrollable .dlg_modal-body{
	overflow-y:auto
}
.dlg_modal-dialog-centered{
	display:-ms-flexbox;
	display:flex;
	-ms-flex-align:center;
	align-items:center;
	min-height:calc(100% - 1rem)
}
.dlg_modal-dialog-centered::before{
	display:block;
	height:calc(100vh - 1rem);
	height:-webkit-min-content;
	height:-moz-min-content;
	height:min-content;
	content:""
}
.dlg_modal-dialog-centered.dlg_modal-dialog-scrollable{
	-ms-flex-direction:column;
	flex-direction:column;
	-ms-flex-pack:center;
	justify-content:center;
	height:100%
}
.dlg_modal-dialog-centered.dlg_modal-dialog-scrollable .dlg_modal-content{
	max-height:none
}
.dlg_modal-dialog-centered.dlg_modal-dialog-scrollable::before{
	content:none
}
.dlg_modal-content{
	position:relative;
	display:-ms-flexbox;
	display:flex;
	-ms-flex-direction:column;
	flex-direction:column;
	width:100%;
	pointer-events:auto;
	background-color:#fff;
	background-clip:padding-box;
	border:1px solid rgba(0,0,0,.2);
	border-radius:.3rem;
	outline:0
}
.dlg_modal-backdrop{
	position:fixed;
	top:0;
	left:0;
	z-index:1040;
	width:100vw;
	height:100vh;
	background-color:#000
}
.dlg_modal-backdrop.fade{
	opacity:0
}
.dlg_modal-backdrop.show{
	opacity:.5
}
.dlg_modal-header{
	display:-ms-flexbox;
	display:flex;
	-ms-flex-align:start;
	align-items:flex-start;
	-ms-flex-pack:justify;
	justify-content:space-between;
/*	padding:1rem 1rem;*/
	padding:0.5rem 0.5rem;									/* ダイアログヘッダー内側余白 */
	border-bottom:1px solid #dee2e6;
	border-top-left-radius:calc(.3rem - 1px);
	border-top-right-radius:calc(.3rem - 1px)
}
.dlg_modal-header .close{
	padding:1rem 1rem;
	margin:-1rem -1rem -1rem auto
}
.dlg_modal-title{
	margin-bottom:0;
	line-height:1.5}
	.modal-body{
	position:relative;
	-ms-flex:1 1 auto;
	flex:1 1 auto;
	padding:1rem
}
.dlg_modal-footer{
	display:-ms-flexbox;
	display:flex;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	-ms-flex-align:center;
	align-items:center;
	-ms-flex-pack:end;
	justify-content:flex-end;
/*	padding:.75rem; */
	padding:.38rem;											/* ダイアログフッター内側余白 */
	border-top:1px solid #dee2e6;
	border-bottom-right-radius:calc(.3rem - 1px);
	border-bottom-left-radius:calc(.3rem - 1px)
}
.dlg_modal-footer>*{
	margin:.25rem
}
.dlg_modal-scrollbar-measure{
	position:absolute;
	top:-9999px;
	width:50px;
	height:50px;
	overflow:scroll
}
/*
min-width:576px -> 476px
max-width:500px -> 400px
*/
@media (min-width:476px){
	.dlg_modal-dialog{
		max-width:400px;
		margin:1.75rem auto
	}
	.dlg_modal-dialog-scrollable{
		max-height:calc(100% - 3.5rem)
	}
	.dlg_modal-dialog-scrollable .dlg_modal-content{
		max-height:calc(100vh - 3.5rem)
	}
	.dlg_modal-dialog-centered{
		min-height:calc(100% - 3.5rem)
	}
	.dlg_modal-dialog-centered::before{
		height:calc(100vh - 3.5rem);
		height:-webkit-min-content;
		height:-moz-min-content;
		height:min-content
	}
	.dlg_modal-sm{
		max-width:300px
	}
}
@media (min-width:992px){
	.dlg_modal-lg,.dlg_modal-xl{
		max-width:800px
	}
}
@media (min-width:1200px){
	.dlg_modal-xl{
		max-width:1140px
	}
}
.alert-dismissible .close{
	position:absolute;
	top:0;
	right:0;
	padding:.75rem 1.25rem;
	color:inherit
}
.close{
	float:right;
	font-size:1.5rem;
	font-weight:700;
	line-height:1;
	color:#000;
	text-shadow:0 1px 0 #fff;
	opacity:.5
}
.close:hover{
	color:#000;
	text-decoration:none
}
.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{
	opacity:.75
}
button.close{
	padding:0;
	background-color:transparent;
	border:0
}
a.close.disabled{
	pointer-events:none
}

