@charset "UTF-8";

@import url('https://fonts.googleapis.com/css?family=Fjalla+One');

:root {
	--main-color:#004f96;
	--main-color2:#165a96;
	--text-color:#333;
	--border-color:#ccc;
	--bg-color:#fff;
	--bt-color:#ff0;
}
html {
	font-size:14px;
	font-family: 'Open Sans',-apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
}
body {
	color:#000;
	background-color:#fff;
	position:relative;
}
a {
	color:var(--main-color);
	transition:.2s;
}
a:hover {
	opacity:.8;
	text-decoration:none;
}
h1 {
	font-size:1.5rem;
	margin-bottom:1.5rem;
}
h2 {
	font-size:1.3rem;
	margin-bottom:1.3rem;
}

@media screen and (min-width: 769px) {
	.sponly{
		display:none;
	}
}
@media screen and (max-width: 768px) {
	html {
		font-size:3vw;
	}
	body {
		padding-top:70px;
	}
	.pconly{
		display:none;
	}
}



/* components */
select,
input,
textarea,
.inpdiv {
	padding:.4em 1em;
	border:1px solid var(--border-color);
	margin-bottom:.4em;
	border-radius:4px;
}
button.ui-datepicker-trigger {
	border:none;
	padding: .4em 1em;
	background-color:var(--main-color);
	color:#fff;
	border-radius:4px;
	margin-left:.2rem;
}
input[type=color] {
	padding:0;
	border:none;
	min-width:50px;
}
.messages {
	color:#c00;
	border:1px dotted #ccc;
	padding:.4rem 1rem;
	margin-bottom:.4rem;
}
.btn-primary {
	background-color:var(--main-color);
	border:none;
}
.btn-download {
	background-color:#666;
	color:#fff;
	border:none;
}
.btn-close {
	background-color:#999;
	color:#fff;
	border:none;
}
input::placeholder {
	color:#bbb;
}
.pagination {
	display:block;
	text-align:center;
	line-height:1;
}
.pagination span {
	display:inline-block;
	border:1px solid var(--border-color);
	margin-bottom:.1em;
}
.pagination span a {
	display:block;
	padding:.6em 1em;
	height:100%;
	width:100%;
	color:#333;
}
.pagination span.previous-inactive,
.pagination span.next-inactive {
	background-color:#eee;
}
.pagination span.active a {
	background-color:var(--main-color);
	color:#fff;
}
.btn-group {
	width:100%;
}
ul.multiselect-container {
	border:none;
	border-radius:0;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.2);
}
.multiselect-container > li > a {
	color:var(--text-color);
}
.multiselect-container > li > .hover {
	color:var(--text-color);
}
.multiselect-container > li > a > label {
	font-weight:normal;
	display:block;
	padding:.2em 1em;
	white-space:nowrap;
}
.fj {
	font-family: 'Fjalla One', sans-serif;
}


/* header */
header {
	position:relative;
	font-size:1.2rem;
	background-color:var(--main-color);
	color:#fff;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.2);
	z-index:100;
}
header a {
	color:#fff;
}
header a:hover {
	opacity:.8;
	color:#fff;
}
header nav {
	position:relative;
	display:flex;
}
header nav > div {
	position:relative;
	white-space:nowrap;
	vertical-align:middle;
	flex:1;
}
header nav a {
	display:block;
	height:100%;
	padding:.6rem 0;
	text-align:center;
}
header nav a:hover {
	background-color:rgba(0,0,0,.1);
}
header .nav a i,
header .nav a svg {
	display:block;
	font-size:1.5rem;
	margin:0 auto .5rem;
}
header nav a span {
	display:block;
	font-size:.8rem;
	line-height:1.2;
}
header nav .dropdown {
	display:none;
	position:absolute;
	left:0;
	top:100%;
	width:100%;
	background-color:var(--main-color);
	z-index:100;
}
header nav .dropdown a {
	background-color:var(--main-color2);
}
header .spnav {
	display:table;
	height:70px;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	background-color:var(--main-color);
}
header .spnav > * {
	display:table-cell;
	vertical-align:middle;
	padding:0 1rem;
}
@media screen and (min-width: 769px) {
	header nav > div:hover .dropdown {
		display:block;
	}
}
@media screen and (max-width: 768px) {
	header {
		position:fixed;
		top:0;
		left:0;
		height:70px;
		width:100%;
	}
	header .nav {
		display:none;
		position:absolute;
		top:100%;
		left:0;
		width:100%;
		background-color:var(--main-color);
	}
	header nav > div {
		display:block;
		width:33.33333333%;
		float:left;
	}
}



footer .copyright {
	text-align:center;
	padding:30px 10px;
}



/* login index */
.indexwrap {
	display:flex;
	justify-content:center;
	align-items:center;
	position:fixed;
	width:100%;
	height:100%;
	left:0;
	top:0;
	background:url(../img/login_001.jpg) center center no-repeat #fff;
	background-size:cover;
}
.indexwrap > div {
	width:100%;
}
.indexwrap h1 {
	background-color:rgba(200,0,0,.7);
	color:#fff;
	letter-spacing:.2em;
	width:100%;
	padding:2em 0;
	text-align:center;
	font-size:30px;
	margin-bottom:3em;
}
.loginform {
	max-width:500px;
	margin:0 auto;
	padding:30px;
	background-color:rgba(255,255,255,.8);
	border-radius:20px;
}
.loginform p {
	margin-bottom:1em;
}
.loginform .liarea {
	display:flex;
	flex-wrap:wrap;
}
.loginform .liarea .key {
	width:88px;
	display:flex;
	align-items:center;
	display: block;
}
.loginform .liarea .key span {
	display:inline-block;
	border:1px solid #333;
	background-color:#fff;
	padding:.5em;
	width:100%;
	border-radius:4px;
}
.loginform .liarea .inp {
	width:calc(100% - 88px);
	padding-left:.5em;
}
.loginform input {
	display:block;
	width:100%;
	border:1px solid #333;
	padding:.5em;
	border-radius:0;
}
.loginform .lbtnarea {
	text-align:center;
	padding:3em 0 1em;
}
.btn-gray {
	font-size:20px;
	padding:.4em;
	border-radius:5em;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#e5e4e5+0,e5e4e5+70,ffffff+100 */
	background: rgb(229,228,229); /* Old browsers */
	background: -moz-linear-gradient(-45deg, rgba(229,228,229,1) 0%, rgba(229,228,229,1) 70%, rgba(255,255,255,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(-45deg, rgba(229,228,229,1) 0%,rgba(229,228,229,1) 70%,rgba(255,255,255,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(135deg, rgba(229,228,229,1) 0%,rgba(229,228,229,1) 70%,rgba(255,255,255,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e5e4e5', endColorstr='#ffffff',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
.btn-gray span {
	padding:.6em 2em .4em;
	position:relative;
	display:inline-block;
	border-radius:4em;
	letter-spacing:.2em;
	line-height:1;
	color:#4d4c4c;
	box-shadow:0 0 0 1px rgba(255,255,255,.6) inset,0 0 0 1px #9d9d9d,5px 5px 5px 0 #eee;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#f1f0f0+0,d8d7d6+100 */
	background: rgb(241,240,240); /* Old browsers */
	background: -moz-linear-gradient(-45deg, rgba(241,240,240,1) 0%, rgba(216,215,214,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(-45deg, rgba(241,240,240,1) 0%,rgba(216,215,214,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(135deg, rgba(241,240,240,1) 0%,rgba(216,215,214,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f1f0f0', endColorstr='#d8d7d6',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
	font-variant-ligatures: none;
}
.btn-gray span:hover {
	opacity:.8;
}


/* contents */
.contents {
	margin:30px auto;
	padding:0 30px;
	min-width:320px;
}
.contents .tabwrap {
	padding:1rem 0;
}
.contents h1 {
	font-size:1.6rem;
	border-left:10px solid var(--main-color);
	padding-left:1rem;
	margin:0 auto .5em;
	letter-spacing:.2em;
}
.contents .btnarea {
	margin-bottom:1em;
	text-align:right;
}
.table th,
.table td {
	vertical-align:middle;
	padding:.5em;
}
.table thead th {
	background-color:var(--main-color);
	color:var(--bg-color);
	font-weight:normal;
	border-bottom-width:1px;
}
.table thead th a {
	color:var(--bg-color);
}
#tablearea {
	overflow-x:auto;
}
#tablearea.oxnone {
	overflow:visible;
}
#tablearea table {
	white-space:nowrap;
	border-bottom:1px solid #dee2e6;
	margin-bottom:1rem;
	font-size:12px;
}
@media screen and (max-width: 768px) {
	.contents {
		padding:0 1rem;
	}
	#tablearea table {
		white-space:nowrap;
		border-bottom:1px solid #dee2e6;
		margin-bottom:1rem;
		font-size:.7rem;
	}
}



/* dashboard */
#grapharea {
	max-width:900px;
	margin:0 auto;
}
.releasenote p {
	background-color:#f4f4f4;
	padding:1rem;
}



/* search form */
.searchform {
	margin-bottom:1rem;
}
.searchform label {
	font-size:.8rem;
	display:block;
	margin-bottom:.2em;
}
.searchform button.multiselect,
.reportform button.multiselect {
	width:100%;
	margin-bottom:.4em;
}
.searchform .dropdown-toggle {
	text-align:left;
}
.searchform .dropdown-toggle::after {
	display:none;
}



/* detail */
.detail .qr {
	text-align:center;
	margin:1rem auto;
	padding:5px;
}

#images {
	display:flex;
	flex-wrap:wrap;
	padding:5px 0;
}
#images .img {
	width:25%;
	padding:5px 0;
}
#images .text {
	width:75%;
	padding:5px 5px 5px 1rem;
}
#images .img a {
	display:block;
	padding-top:100%;
	position:relative;
}
#images .img img {
	display:block;
	position:absolute;
	left:0;
	top:0;
	height:100%;
	width:100%;
	object-fit:cover;
	background-color:#ccc;
}
#images input {
	display:block;
	width:100%;
}


/* mymodal */
.mymodal {
	display:flex;
	justify-content:center;
	align-items:center;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	padding:0;
	overflow:hidden;
	transition:.2s ease;
	box-shadow:0 0 10px rgba(0,0,0,.2);
	z-index:-1;
	opacity:0;
}
.mymodal.on {
	top:0;
	left:0;
	padding:30px;
	overflow:auto;
	z-index:2000;
	opacity:1;
}
.mymodal > a.mymodalcloseback {
	display:block;
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background-color:rgba(0,0,0,.4);
}
.mymodal > div.mymodalcontent {
	position:relative;
	width:800px;
	max-width:100%;
	max-height:100%;
	overflow:auto;
	background-color:#f8f9fa;
	border-radius:10px;
	transition:.2s ease;
	transform:scale(.9);
}
.mymodal.on > div.mymodalcontent {
	transform:scale(1);
}
.mymodal > a.mymodalclose.mymodalclosebtn {
	background-color:var(--main-color);
	color:#fff;
	display:flex;
	justify-content:center;
	align-items:center;
	position:absolute;
	top:0;
	right:0;
	width:40px;
	height:40px;
	line-height:1;
	text-align:center;
}
@media screen and (max-width: 768px) {
	.mymodal {
	}
	.mymodal.on {
		align-items:flex-start;
		padding:0;
	}
	.mymodal > div.mymodalcontent {
		border-radius:0;
		height:100%;
	}
	.mymodal > a.mymodalclose.mymodalclosebtn {
		font-size:1.2rem;
		padding:10px;
		height:auto;
		width:auto;
		background-color:var(--main-color);
	}
}

/* modalform */
.modalform,
.pjform {
	margin:2rem auto;
	max-width:768px;
}
.pjform {
	padding:0 1rem;
}
.modalform h1 {
	font-size:1.5rem;
	margin-bottom:10px;
	padding:0 1rem;
}
.modalform h2 {
	font-size:1.1rem;
	margin-bottom:10px;
}
.modalform p.error {
	border:1px solid #c00;
	color:#c00;
	padding:1em;
}
.modalform .formbody {
	padding:0 1rem;
}
.modalform select,
.modalform input,
.modalform textarea,
.modalform .hidevalue,
.modalform .inpdiv,
.pjform input,
.pjform textarea {
	display:block;
	width:100%;
	background-color:#fff;
	border:1px solid var(--border-color);
	border-radius:4px;
}
.modalform .inp {
	margin-bottom:.4em;
}
.modalform input[type=checkbox] {
	display:inline;
	width:auto;
}
.modalform .hidevalue {
	padding:.4rem 1rem;
	border:1px solid #ccc;
	border-radius:4px;
	background-color:#eee;
}
.modalform .datepicker,
.pjform .datepicker {
	display: inline-block;
	width:8rem;
}
.modalform select {
	display:block;
}
.modalform textarea.min {
	height:4em;
}
.modalform input.min,
.modalform select.min,
.pjform input.min {
	display:inline-block;
	width:auto;
}
.modalform label,
.pjform label {
	margin:0 0 .4em;
	display:block;
}
.modalform .inline {
	display:inline-block;
	width:auto;
}
.modalformbtns {
	text-align:center;
	padding:1em 0;
}
.modalform .disabled,
.pjform .disabled {
	background-color:#eee;
}
@media screen and (max-width: 768px) {
	.modalform {
		margin:0 auto;
		padding:0;
	}
	.modalform h1 {
		font-size:1.2rem;
		line-height:1;
		padding:10px;
		background-color:var(--main-color);
		color:#fff;
	}
}
.etcdetail {
	margin:2rem auto;
	padding:0 1rem;
	max-width:768px;
}
.etcdetail .qr {
	margin:2rem auto;
	text-align:center;
}


.progress {
	position:fixed;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	background:url(../img/ajax-loader.gif) center center no-repeat #000000;
	opacity:0;
	transition:.2s ease;
	z-index:-1;
}
.progress.on {
	z-index:2500;
	opacity:.5;
}

.toast {
	position:fixed;
	bottom:10%;
	display:none;
	width:100%;
	text-align:center;
	z-index:3000;
}
#toast {
	line-height:1;
	display:inline-block;
	background: rgba(0, 0, 0, 0.6);
	color: #fff;
	border-radius: 15px;
	padding: 8px 15px;
	box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.2);
	font-size: 13px;
}




.calenderheader {

}
.calenderheader .monthnavi {
	text-align:center;
	margin-bottom:.5rem;
}
.calenderheader .monthnavi .link {
	display:inline-block;
	margin:0 .5rem;
	font-size:1.5rem;
}
.calenderheader .monthnavi .current {
	font-size:1.8rem;
}


.calender {
	display:flex;
	flex-wrap:wrap;
	border:1px solid #333;
}
.calender > div {
	width:calc(100% / 7);
}
.calender .monthday {
	border:1px solid #333;
	padding:.5em;
	position:relative;
	height:100%;
}
.calender .monthday.wday {
	background-color:var(--main-color);
	color:#fff;
	text-align:center;
}
.calender .monthday.outofmonth {
	background-color:#ccc;
}
.calender .monthday .num {
	display:block;
	font-size:1.2rem;
		margin-bottom:.5em;
}
.calender .monthday .details {
	overflow:auto;
	font-size:.8rem;
	max-height:8rem;
}
.calender .monthday .line {
	display:block;
	padding:.1em 0;
	width:100%;
	overflow:hidden;
	white-space:nowrap;
	text-overflow:ellipsis;
}
.calender .monthday .bgstatus {
	padding:0 .5em;
	display:inline-block;
}
@media screen and (max-width: 768px) {
	.calender {
		border:none;
	}
	.calender > div {
		width:100%;
		background-color:#f2f2f2;
	}
	.calender > div:nth-child(odd) {
		background-color:#ddd;
	}
	.calender .monthday {
		border:none;
	}
}


.sect {
	margin:2rem auto;
}
.sect h2 {
	letter-spacing:.2em;
}


.todaysplan {

}
.todaysplan .inner {
	border-top:1px solid #ccc;
}
.todaysplan .detail {
	display:flex;
	align-items:center;
	border-bottom:1px solid #ccc;
}
.todaysplan .detail > div {
	padding:.5em;
}
.todaysplan .detail .bgstatus {
	padding:.2em 1em;
}
.todaysplan .detail .etc {
	flex:1;
}
.todaysplan .detail .memo {
	height:1.5rem;
	overflow:hidden;
	cursor:pointer;
}
.todaysplan .detail .memo:before {
	content:'＋';
}
.todaysplan .detail .memo.on {
	height:auto;
}
.todaysplan .detail .memo.on:before {
	content:"";
}
@media screen and (max-width: 768px) {
	.todaysplan .detail .pid {
		flex:1;
	}
}


span.bgstatus {
	display:inline-block;
	padding:.2em 1em;
}
.bgstatus {
	color:#fff;
}
.bgstatus10 {
	background-color:#f00;
}
.bgstatus20 {
	background-color:#d00;
}
.bgstatus30 {
	background-color:#b00;
}
.bgstatus40 {
	background-color:#900;
}
.bgstatus50 {
	background-color:#700;
}
.bgstatus60 {
	background-color:#500;
}
.bgstatus90 {
	background-color:#300;
}



.projectdetail {
	padding:2rem 1rem;
}
.projectdetail .key {
	white-space:nowrap;
}