body {
  margin: 2px;
  padding: 2px;
 -webkit-print-color-adjust;
}

.f1{ display:none; }

#prt_title{
	font-weight: bold;
	font-size: 24px;
}

#doc_date{
	text-decoration-line: underline;
	text-align: right;
	text-underline-position: under;
}


.cnt{    padding: 2%;}

/* D&D*/
#dnd {
	border: 2px dotted #C0E8FF;
	width: 98%;
	display: inline-block;
	color: #92AAB0;
	text-align: center;
	vertical-align: middle;
	margin:1%;
	font-size: 200%;
}


/*年月日選択*/
.cal {	display: none; }

.lcal {
	font-size: 1.2vw;
	display:flex;
  	list-style: none;
	min-width:0;
	width: 100%;
	/*color:rgba(62, 64, 50, 0.7);*/
	color:rgba(62, 64, 50, 0.7);*/
}

.lcal input[type="radio"] { display: none; }

.lcal input[type="radio"]:checked + label {
	background: #C0E8FF;
	border: 1px solid #28A7E1; 
	color:black;
}

.lcal .calradio-l {
	flex:1 1 10px;
	white-space: nowrap;
	text-align: center;
	cursor: pointer;
	border: 1px solid rgba(76, 105, 109);
	transition: 0.6s;
	overflow:hidden;
	width:0;
}

.lcal .dis{ 
	background-color: rgb(100, 100, 100); 
	border: 1px solid rgb(255, 255, 255);
	cursor: auto;
}


.button.cal:checked{
	/*background-color: rgb(14, 29, 233);  */
	background-color: rgb(141,195,232); 
/*	background-color: orange;*/
}


/*Setting box*/
/*.inui{*/
.uibox{
	padding: 0.2em 0.2em;
	/*	background: #cde4ff; /*èƒŒæ™¯è‰²*/
	display: grid;
	grid-gap: 2px;

/*	justify-content: space-between;*/
	border: solid #404e53;
/*	font-weight: bold;*/
	vertical-align: text-top;
	/*color: #576769; */
	color: black;
	transition: 400ms;
	opacity:1;
	height: auto;
	width: auto;
}

.uibox > div{
	border: solid #000304;
}

#minfo{ grid-column: 1/2; }
#calc { grid-column: 2/3; }

#d-table{ grid-column: 3/6;
	  box-sizing: border-box;
}


.canvas-cont {
	position: relative;
	align-content: center;
	padding: 0.2em 0.2em;
/*	height: 40vh;*/
	height: 300px;
	border: solid 1px #ccc;
/*
  width: ;
  height: 600px;  
*/
}

.chartSelect {
  margin: 10px;
  padding: 10px;
  width: 320px;
  border: solid 1px #ccc;
  line-height: 1;
}

#cs_month { margin-left: 10px; }


#chk_sb:checked ~ .inui{
	overflow: hidden;
	opacity:0;
	height: 0;
}

.data table{
	font-size: 0.8vw;
	table-layout: fixed;
	text-align: right;
	border-collapse: collapse;
	width: 100%;
}

.data th{
	border: 1px solid;
	text-align: center;
	width:auto;
	background-color: #dad5dd96;
}

.data td{
	border: 1px solid;
}

.title {
	width: 100%;
	background-color: #000101;
	display: block;
	color: #FFF;
	font-family:Trebuchet MS;
	font-size:18px;
}

/*
.title::first-letter{
	color: orange;
	font-weight: 100;
}
*/

.title_p::first-letter{
	color: black;
	font-weight: 100;
}

#dl_csv{
	margin-top: 0px;
	margin-bottom: 0px;
}

.rpt{
	display: none;
	text-align: center;
}

/*font Awsome*/
/*DL*/
.fas{
	display: inline-block;
	padding: 0.5em 1em;  
	background: #FFF;/*ボタン色*/
	text-align:right;
	font-size: 20px;
	font-color: white;
	border-radius: 5px;
	border: solid 2px ;
	cursor :pointer;
/* float:right;*/
	bottom:0;
}

/*アイコンを表示*/
.DL label:before {
	display: inline-block;
	content: '\f56d';
	font-family: 'Font Awesome 5 Free';
	padding-right: 5px;
}

.fa-print label:before {
	display: inline-block;
	padding-right: 5px;
}

/* show hide */
.showhide a {
	font-weight: bold;
	border-radius: 5px;
	cursor :pointer;
	transition: .5s;
	float:right;
}

/*アイコンを表示*/
.showhide a:before {
	display: inline-block;
	content: '\f00d';
	font-family: 'Font Awesome 5 Free';
	padding-right: 5px;
	transition: 0.2s;
}

/*アイコンを切り替え*/
.showhide a[type="checkbox"]:checked ~ label:before {
	 content: '\f078';
	 -webkit-transform: rotate(360deg);
	 transform: rotate(360deg);
	 color: #668ad8;
}

.showhide input[type="checkbox"] {
	display: none;
}

/* Check Box */
.button {
	appearance: none;
	-webkit-appearance: none;
	-ms-appearance: none;
	-moz-appearance: none;
	display: inline-block;
	vertical-align: middle;
	width: 18%;
	height: 28px;
	border-style: outset;
	text-align: center;
	line-height: 24px;
	font-size: 20px;
	font-weight: bold;
	cursor: pointer;
	margin: 2px -2px 2px -2px;
	transition: 200ms;
    user-select: none;
}

.tl{
	display: inline-block;
	height:25px;
	width: 12%;
	float:left;
    background: whitesmoke;
}

.tr{
	display: inline-block;
	height:25px;
	width: 10%;
	float:right;
    background: whitesmoke;
}

.button:focus:hover{ outline: none; }

.button:active{ transition: none; }

.button:not(:checked)::after{
	display: inline;
	content: attr(data-label);
	color: rgba(62, 64, 50, 0.7);
	transition: none;
}

.button:checked{
	background: #C0E8FF;
	border-style: inset;
	transition: 1000ms;
}

.button:checked::after{
	content: attr(data-label);
	transition: 1000ms;
}

.button:active::after{
	transition: none;
}


/* LOADING */
.is-hide{
 display:none; 
}
.loading{
  position:fixed;
  top:0;
  right:0;
  bottom:0;
  left:0;
  background:rgba(0,0,0,.5);
}
.loading::before{
  content:"";
  display:block;
  position:fixed;
  left:50%;
  top:50%;
  width:50px;
  height:50px;
  border-radius:5px;
  margin-top:-15px;
  margin-left:-15px;
  background:white;
}
.loading::after{
  content:"";
  display:block;
  position:fixed;
  left:50%;
  top:50%;
  width:32px;
  height:32px;
  border-radius:20px;
  margin-top:-10px;
  margin-left:-10px;
  border:4px solid #60ABB9;
  border-right:4px solid white;
  animation: rotate 1s infinite linear;
}

.loading_char{
  text-align: center;
  display:inline-block;
  position:fixed;
  left:50%;
  top:50%;
  width:50px;
  height:20px;
  margin-top:30px;
  margin-left:-15px;
  border-radius:0 0 5px 5px;
  background:white;
  color: #60ABB9;
;
}

@keyframes rotate {
  0%    { transform: rotate(0deg); }
  100%  { transform: rotate(360deg); }
}

@-webkit-keyframes spin {
	0% {-webkit-transform: rotate(0deg);}
	100% {-webkit-transform: rotate(360deg);}
}
@-moz-keyframes spin {
	0% {-moz-transform: rotate(0deg);}
	100% {-moz-transform: rotate(360deg);}
}
@-ms-keyframes spin {
	0% {-ms-transform: rotate(0deg);}
	100% {-ms-transform: rotate(360deg);}
}
@-o-keyframes spin {
	0% {-o-transform: rotate(0deg);}
	100% {-o-transform: rotate(360deg);}
}
@keyframes spin {
	0% {transform: rotate(0deg);}
	100% {transform: rotate(360deg);}
}

.wrapper{
	min-height: 100vh;
	position: relative;
}

footer{
  	font-family:Trebuchet MS;
	width: 100%;
	background-color: #000;
	color: #fff;
	text-align: center;

	position: fixed;
	bottom: 0; 
	left:0;
}

@page { size: A4 portrait; }
