@charset "UTF-8";

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

:root {
	--main-color:#ab8a72;
	--main-color2:#444444;
	--text-color:#333;
	--border-color:#ccc;
	--bg-color:#fff;
	--bt-color:#ff0;
}
html {
	font-size:14px;
}
body {
	color:#000;
	background-color:#fff;
	position:relative;
	font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	text-align:justify;
}
a {
	color:#ab8a72;
	transition:.2s;
	cursor:pointer;
}
a:hover {
	opacity:.8;
	text-decoration:none;
}
h1 {
	font-size:1.5rem;
	margin-bottom:1rem;
}
h2 {
	font-size:1.3rem;
	margin-bottom:1rem;
}
ul,li,div {
	margin:0;
	padding:0;
	list-style:none;
}

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



/* components */
select,
input,
textarea,
.inpdiv {
	padding:.4em 1em;
	border:1px solid #ccc;
	margin-bottom:.4em;
	border-radius:4px;
}
button.ui-datepicker-trigger {
	border:none;
	padding: 4px 10px;
	background-color:#ab8a72;
	color:#fff;
	border-radius: 4px;
}
input[type=color] {
	padding:0;
	border:none;
	min-width:50px;
}
.messages {
	color:#c00;
	border:1px dotted #ccc;
	padding:.4rem 1rem;
	margin-bottom:.4rem;
}
.btn {
	border:none;
}
.btn-primary {
	background-color:#ab8a72;
	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 #ccc;
	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:#ab8a72;
	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);
	overflow:auto;
	max-height:12rem;
}
.multiselect-container > li > a {
	color:#333;
}
.multiselect-container > li > .hover {
	color:#333;
}
.multiselect-container > li > a > label {
	font-weight:normal;
	display:block;
	padding:.2em 1em;
	white-space:nowrap;
}
.fj {
	font-family: 'Fjalla One', sans-serif;
}
.breadcrumbs {
	padding:1em;
	font-size:1.4rem;
}
.breadcrumbs a,
.breadcrumbs span {
	margin-right:1em;
	letter-spacing:.15em;
}
@media screen and (max-width: 768px) {
	.breadcrumbs {
		font-size:1rem;
	}
}


/* header */
header {
	position:relative;
	font-size:1.2rem;
	background-color:#ab8a72;
	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:#ab8a72;
	z-index:100;
}
header nav .dropdown a {
	background-color:#9e8f84;
}
header .spnav {
	display:flex;
	height:60px;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	background-color:#ab8a72;
	justify-content:space-between;
}
header .spnav > * {
	height:100%;
	padding:0 1rem;
	display:flex;
	align-items:center;
	font-size:1.5rem;
}
@media screen and (min-width: 769px) {
	header nav > div:hover .dropdown {
		display:block;
	}
}
@media screen and (max-width: 768px) {
	header {
		height:60px;
	}
	header .nav {
		position:fixed;
		top:60px;
		left:0;
		width:100%;
		max-height:0;
		overflow:hidden;
		background-color:#ab8a72;
		transition:.3s;
	}
	header .nav.on {
		max-height:30rem;
		overflow:visible;
	}
	header .nav {
		flex-wrap:wrap;
	}
	header .nav > div {
		display:block;
		width:33.33333333%;
		flex:auto;
	}
}


header.staffheader {
	display:flex;
	background-color:#ccc;
	text-align:center;
	font-size:2rem;
	line-height:1;
	justify-content:center;
}
header.staffheader > div {

}
header.staffheader .title {
	flex:1;
	letter-spacing:.2em;
	padding:3rem 0;
	background-color:#ab8a72;
}
header.staffheader .title.title2 {
	background-color:#ab8a72;
}
header.staffheader .spmenubar {
	position:absolute;
	left:1rem;
	top:3rem;
}
@media screen and (max-width: 768px) {
	header.staffheader {
		font-size:2rem;
	}
	header.staffheader .title {
		padding:2rem 0;
	}
	header.staffheader .spmenubar {
		top:2rem;
	}
}



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(169,87,40,.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:10px;
}
.loginform p {
	margin-bottom:1em;
}
.loginform .liarea {
	display:flex;
	flex-wrap:wrap;
}
.loginform .liarea .checks {
	width:100%;
	margin-bottom:2em;
	text-align:center;
}
.loginform .liarea .checks label {
	margin:0 1em;
}
.loginform .liarea .key {
	width:88px;
	display:flex;
	align-items:center;
	display: block;
	text-align:center;
}
.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:1.3rem;
	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;
	font-weight:bold;
	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;
}
.btn-imdrop {
	border:2px dashed #ccc;
	display:block;
	padding:2rem;
}
@media screen and (max-width: 768px) {
	.indexwrap h1 {
		font-size:1.5rem;
	}
	.loginform {
		width:70vw;
		padding:2rem;
	}
}






/* 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 #ab8a72;
	padding-left:1rem;
	margin:0 auto 1rem;
	letter-spacing:.2em;
}
.contents h2 {
	border-left:8px solid #ab8a72;
	padding-left:.8rem;
	letter-spacing:.2em;
}
.contents .btnarea {
	margin-bottom:1em;
	text-align:right;
}
.table {
	border-bottom:1px solid #dee2e6;
}
.table th,
.table td {
	vertical-align:middle;
	padding:.5em;
}
.table td.ctmb {
	padding:0;
}
.table thead th {
	background-color:#ab8a72;
	color:#fff;
	font-weight:normal;
	border-bottom-width:1px;
}
.table thead th a {
	color:#fff;
}
.table tr.invalid td {
	opacity:.5;
}
.table .key {
	white-space:nowrap;
	font-weight:bold;
}
#tablearea {
	overflow-x:auto;
}
#tablearea.oxnone {
	overflow:visible;
}
#tablearea table {
	white-space:nowrap;
	margin-bottom:1rem;
	font-size:1rem;
}
.table td .thumb img {
	height:2rem;
	width:2rem;
	object-fit:cover;
	transition:.2s;
}
.table td .thumb.on img {
	height:5rem;
	width:auto;
}
.table .min {
	font-size:80%;
}
@media screen and (max-width: 768px) {
	.contents {
		padding:0 10px;
	}
}



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



/* search form */
.searchform {
	margin-bottom:1rem;
}
.searchform label {
	display:block;
	font-size:80%;
	margin-bottom:.2em;
}
.searchform .form-control.checkwrap {
	border:none;
}
.searchform label.checklabel {
	display:inline-block;
	white-space:nowrap;
	font-size:1rem;
	margin-right:1rem;
}
.searchform label input[type=checkbox] {
	margin:0 .3em 0 0;
	position:relative;
	top:.1rem;
}
.searchform button.multiselect,
.reportform button.multiselect {
	width:100%;
	margin-bottom:.4em;
}
.searchform .dropdown-toggle {
	text-align:left;
}
.searchform .dropdown-toggle::after {
	display:none;
}
button.multiselect {
	background-color:#f4f4f4;
}



/* mymodal */
.mymodal {
	display:flex;
	justify-content:center;
	align-items:center;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	padding:30px;
	overflow:auto;
	transition:.2s;
	z-index:-1;
	opacity:0;
	transform:scale(1);
	box-shadow:0 0 10px rgba(0,0,0,.2);
}
.mymodal.on {
	z-index:2000;
	opacity:1;
	transform:scale(1);
}
.mymodal > a.mymodalclose {
	display:block;
	position:absolute;
	width:100%;
	height:100%;
	background-color:rgba(0,0,0,.4);
}
.mymodal .mymodalcwrap {
	position:relative;
	width:800px;
	max-width:100%;
	max-height:100%;
	overflow:auto;
	background-color:#666;
	transition:.2s;
	transform:scale(.8);
}
.mymodal.on .mymodalcwrap {
	transform:scale(1);
	background-color:#f8f9fa;
}
.mymodal .mymodalcontent {
	position:relative;
}
.mymodal a.mymodalclose.mymodalclosebtn {
	background-color:#ccc;
	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 {
		padding:0;
	}
	.mymodal.on {
		align-items:flex-start;
		padding:0;
	}
	.mymodal .mymodalcwrap {
		border-radius:0;
		height:100%;
		width:100%;
	}
	.mymodal a.mymodalclose.mymodalclosebtn {
		font-size:4vw;
		padding:10px;
		height:auto;
		width:auto;
		background-color:#ab8a72;
		display:block;
		text-align:right;
		cursor:pointer;
	}
}

/* modalform */
.modalform {
	margin:30px auto;
	padding:0 30px;
	max-width:768px;
}
.modalform h1 {
	font-size:1.5rem;
	margin-bottom:10px;
}
.modalform h2 {
	font-size:1.1rem;
	margin-bottom:10px;
}
.modalform p.error {
	border:1px solid #c00;
	color:#c00;
	padding:1em;
}
.modalform .fgroup {
	padding:8px 10px;
	position:relative;
}
.modalform .fgroup.line:before {
	content:"";
	position:absolute;
	top:50%;
	left:10px;
	right:10px;
	border-bottom:1px dotted #ab8a72;
}
.modalform .bgroup {
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	padding:8px 10px;
}
.modalform select,
.modalform input,
.modalform textarea,
.modalform .hidevalue,
.modalform .inpdiv,
.modalform .forms button {
	display:block;
	width:100%;
	background-color:#fff;
	border:1px solid #ccc;
	border-radius:4px;
	margin-bottom:.4em;
}
.modalform .forms button.multiselect {
	background-color:#eee;
	border:none;
}
.modalform .inp,
.modalform .forms button {
	margin-bottom:.4em;
	text-align:left;
}
.modalform input[type=checkbox] {
	display:inline;
	width:auto;
}
.modalform .hidevalue {
	padding:.4rem 1rem;
	border:1px solid #ccc;
	border-radius:4px;
	background-color:#eee;
}
.modalform select {
	display:block;
}
.modalform textarea.min {
	height:4em;
}
.modalform input.min,
.modalform select.min {
	display:inline-block;
	width:auto;
}
.modalform label {
	margin:0;
	display:block;
	font-size:.9rem;
	font-weight:bold;
}
.modalform .inline {
	display:inline-block;
	width:auto;
}
.mymodal .btns {
	padding:1rem 0;
	text-align:center;
}
@media screen and (max-width: 768px) {
	.modalform {
		margin:0 auto;
		padding:0;
	}
	.modalform h1 {
		font-size:4vw;
		line-height:1;
		padding:10px;
		background-color:#ab8a72;
		color:#fff;
	}
	.modalform h1 a {
		color:#fff;
	}
	.modalform .forms {
		padding:0 1rem;
	}
	.modalform .btns {
		padding:1rem;
	}
	.modalform label {
		font-size:1.2rem;
	}
}



.modalimgs {
	margin:30px auto;
	padding:0 30px;
	max-width:768px;
}
.modalimgs #images {
	margin:0 -.5rem;
}
.modalimgs #images #imsortform:after {
	content:"";
	display:block;
	clear:both;
}
.modalimgs #images #imsortform > div {
	float:left;
	width:25%;
	padding:.5rem;
}
.modalimgs #images .imgarea {
	position:relative;
	background-color:#eee;
	padding:.5rem;
}
.modalimgs #images .num {
}
.modalimgs #images .img {
	display:block;
	height:120px;
	margin:.5rem 0;
}
.modalimgs #images .img img {
	display:block;
	max-width:100%;
	max-height:120px;
	width:auto;
	height:auto;
	margin:0 auto;
}
.modalimgs #images .caparea {
	margin:.5rem 0;
}
.modalimgs #images .caparea input {
	display:block;
	width:100%;
	margin:0;
}
.modalimgs #images .btnarea {
	text-align:right;
}
@media screen and (max-width: 768px) {
	.modalimgs {
		padding:0 1rem;
	}
	.modalimgs #images > div {
		width:50%;
	}
}



.modaloptions {
	margin:30px auto;
	padding:0 30px;
	max-width:768px;
}
.modaloptions .table {
	border-bottom:1px solid #dee2e6;
}
@media screen and (max-width: 768px) {
	.modaloptions {
		padding:0 1rem;
	}
}



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

.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;
}



.calendarheader {
	margin:1rem auto;
}
.calendarheader .monthnavi {
	text-align:center;
	font-size:1.5rem;
}


.calendar {
	display:flex;
	flex-wrap:wrap;
}
.calendar > div {
	width:calc(100% / 7);
	padding:.2rem;
}
.calendar .monthday {
	border:1px solid #ab8a72;
	height:100%;
	padding:.5rem;
	min-height:8rem;
}
.calendar .monthday.wday {
	text-align:center;
	min-height:0;
	background-color:#ab8a72;
	color:#fff;
}
.calendar .monthday.outofmonth {
	background-color:#eee;
}
.calendar .monthday.today {
	background-color:#ffe;
}
.calendar .monthday .num {
	font-size:1.5rem;
}
.calendar .monthday .details {
	text-align:left;
	overflow:hidden;
	text-overflow:ellipsis;
}
.calendar .monthday .btn {
	margin-bottom:.1em;
	max-width:100%;
}
@media screen and (max-width: 768px) {
	.calendar > div {
		width:100%;
		padding:.2rem 0;
	}
}



.clmwrap {
	display:flex;
		flex-wrap:wrap;
	justify-content:space-between;
	margin:2rem auto;
}
.clmwrap .clm2 {
	width:49%;
}
@media screen and (max-width: 768px) {
	.clmwrap .clm2 {
		width:100%;
	}
}



.release_note {
	border:1px solid #dee2e6;
	padding:1rem;
	background-color:#f4f4f4;
}