@charset "utf-8";

body,div,
h1,h2,p,
ol,ul,li {
	margin: 0;
	padding: 0;
	border: 0;
}


@-webkit-viewport { width: device-width; }
@-moz-viewport { width: device-width; }
@-ms-viewport { width: device-width; }
@-o-viewport { width: device-width; }
@viewport { width: device-width; }

html, body {
	min-height: 100%;
}

body {
	min-width: 290px;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
	background: #2f4050;
	color: #555;
	font: normal 14px Verdana, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}


p {
	float: left;
	width: 100%;
	margin-bottom: 1em;
}

p.intro {
	font-size: 1.25em;
	color: #555;
	font-weight: bold;
}

a {
	color: #19aa8d;
}

a:active,
a:hover {
	outline: 0;
	text-decoration: none;
}

#header {
	position: fixed;
	top: 0;
	display: flex;
	width: 100%;
	height: 50px;
	background: #fff;
	z-index: 100;
	box-shadow: 0 0 5px #aaa;
}
#header div, #header p {
	display: inline-block;
	box-sizing: border-box;
}
#header div {
	display: flex;
}
#header div span {
	position: relative;
	display: block;
	width: 50px;
	height: 50px;
	background: #f4f4f4;
	border-right: solid 1px #ddd;
	text-indent: -9999px;
	box-sizing: border-box;
	cursor: pointer;
}
#header div span::selection {
	background: #fff;
}
#header div span:before {
	position: absolute;
	top: 0;
	left: 0;
	width: 46px;
	color: #a7b1c2;
	line-height: 40px;
	text-align: center;
	text-indent: 0px;
	font-size: 24px;
	font-family: "responsivenav";
	content: "\2261";
}
#header div span:after {
	position: absolute;
	top: 30px;
	left: 0;
	width: 46px;
	color: #777e8a;
	text-align: center;
	text-indent: 0px;
	font-size: 8px;
	font-family:"Open Sans", "Roboto", sans-serif;
	content: "CLOSE";
}
#header div .arrow:after {
	/*content: "\2261";*/
	content: "OPEN";
}
#header div h1 {
	margin: 0 0 0 20px;
	line-height : 50px;
	font-size: 31px;
	font-weight: normal;
	font-family: 'Racing Sans One', cursive !important;
}
#header div h1 a {
	color: #2f4050;
	text-decoration: none;
}
h2 {
	float: left;
	width: 100%;
	margin: 10px 0 0;
	color: #2f4050;
	font-size: 22px;
}

#header section {
	display: flex;
	height: 50px;
    margin: 0 0 0 auto;
}
#header section ul {
	list-style: none;
	overflow: hidden;
    width: auto;
	height: 40px;
    margin: 5px 0;
	background: #fff;
	border-radius: 4px;
    text-align: right;
	line-height: 40px;
    box-sizing: border-box;
	transition: .3s ease;
}
#header section ul.open {
	height: 80px;
	box-shadow: 0px 2px 3px rgb(0 0 0 / 10%);
}
#header section ul li a {
	display: block;
    padding: 0 15px;
	text-align: left;
	white-space: nowrap;
	transition: .3s ease;
}
#header section ul li:first-child a {
	color: #555;
}
#header section ul li:first-child a:hover {
	background: #fff;
}
#header section ul li a span {
	display: inline-block;
    width: 16px;
    margin: -2px 0 0 0;
    line-height: 16px;
    vertical-align: middle;
    text-align: center;
    color: #fff;
    font-size: 12px;
    border-radius: 4px;
}
#header section ul li a:hover {
	background: #f4f4f4;
}
#header section ul li span {
    display: inline-block;
    width: 16px;
    margin: -2px 0 0 0;
    line-height: 16px;
    vertical-align: middle;
    text-align: center;
    color: #fff;
    font-size: 12px;
    border-radius: 4px;
}
#header section ul li #icon_a {
	background: #cd5c5c;
}

#header section ul li #icon_b {
	background: #6495ed;
}

#header section ul li #icon_c {
	background: #cdb55c;
}

#header section ul li #icon_- {
	background: #aaa;
}
#header section p {
	display: flex;
	align-items: center;
    justify-content: center;
	width: auto;
	margin: 0 20px 0 10px;
}
#header section p a {
	display: flex;
	align-items: center;
    justify-content: center;
	padding: 0 15px;
    height: 30px;
	background: #19aa8d;
	color: #fff;
	text-decoration: none;
	white-space: nowrap;
    border-radius: 4px;
	transition: .3s ease;
}
#header section p a:hover {
	background: #1dc8a6;
}

.main {
	box-sizing: border-box;
	-webkit-overflow-scrolling: touch;
	padding: 1em 2em;
	position: fixed;
	overflow: hidden;
	overflow-y: scroll;
	top: 50px;
	right: 0;
	bottom: 0;
	width: 82%;
	background: #f4f4f4;
	transition: .3s ease;
}
.wide {
	width: 100%;
}

.main::-webkit-scrollbar {
	-webkit-appearance: none;
	background-color: rgba(0,0,0, .15);
	width: 8px;
	height: 8px;
}

.main::-webkit-scrollbar-thumb {
	border-radius: 0;
	background-color: rgba(0,0,0, .4);
}

.nav-collapse {
	position: absolute;
	width: 18%;
	top: 50px;
	left: 0;
}

.nav-collapse ul {
	display: block;
	width: 100%;
	list-style: none;
}

.nav-collapse li {
	width: 100%;
	display: block;
	border-bottom: 1px solid rgba(0,0,0, .2);
	border-top: 1px solid rgba(255,255,255, .1);
}

.nav-collapse a {
	position: relative;
	color: #a7b1c2;
	border-right: solid 6px #2f4050;
	text-shadow: 0 -1px rgba(0,0,0, .5);
	display: block;
	padding: 1em 1em 1em 3em;
	width: 100%;
	text-decoration: none;
	cursor: pointer;
	box-sizing: border-box;
	transition: .3s ease;
}

.nav-collapse li a span {
	display: inline-block;
	position: absolute;
	top: 14px;
	left: 12px;
	width: 20px;
	height: 20px;
	transition: .3s ease;
}

.nav-collapse li:nth-child(1) a span {
	background: url(../images/ico/calendar.png) no-repeat 0 0;
}
.nav-collapse li:nth-child(1) a:hover span, .nav-collapse li:nth-child(1).active a span {
	background: url(../images/ico/calendar_h.png) no-repeat 0 0;
}
.nav-collapse li:nth-child(2) a span {
	background: url(../images/ico/book-open.png) no-repeat 0 0;
}
.nav-collapse li:nth-child(2) a:hover span, .nav-collapse li:nth-child(2).active a span {
	background: url(../images/ico/book-open_h.png) no-repeat 0 0;
}
.nav-collapse li:nth-child(3) a span {
	background: url(../images/ico/shopping-cart.png) no-repeat 0 0;
}
.nav-collapse li:nth-child(3) a:hover span, .nav-collapse li:nth-child(3).active a span {
	background: url(../images/ico/shopping-cart_h.png) no-repeat 0 0;
}
.nav-collapse li:nth-child(4) a span {
	background: url(../images/ico/phaze.png) no-repeat 0 0;
}
.nav-collapse li:nth-child(4) a:hover span, .nav-collapse li:nth-child(4).active a span {
	background: url(../images/ico/phaze_h.png) no-repeat 0 0;
}
.nav-collapse li:nth-child(5) a span {
	background: url(../images/ico/package.png) no-repeat 0 0;
}
.nav-collapse li:nth-child(5) a:hover span, .nav-collapse li:nth-child(5).active a span {
	background: url(../images/ico/package_h.png) no-repeat 0 0;
}
.nav-collapse li:nth-child(6) a span {
	background: url(../images/ico/gold.png) no-repeat 0 0;
}
.nav-collapse li:nth-child(6) a:hover span, .nav-collapse li:nth-child(6).active a span {
	background: url(../images/ico/gold_h.png) no-repeat 0 0;
}
.nav-collapse li:nth-child(7) a span {
	background: url(../images/ico/user.png) no-repeat 0 0;
}
.nav-collapse li:nth-child(7) a:hover span, .nav-collapse li:nth-child(7).active a span {
	background: url(../images/ico/user_h.png) no-repeat 0 0;
}
.nav-collapse li:nth-child(8) a span {
	background: url(../images/ico/setting.png) no-repeat 0 0;
}
.nav-collapse li:nth-child(8) a:hover span, .nav-collapse li:nth-child(8).active a span {
	background: url(../images/ico/setting_h.png) no-repeat 0 0;
}

.nav-collapse a:hover { border-right: 6px solid #fff; color: #fff; background: #293846 }
.nav-collapse .active a { border-right: 6px solid #19AA8D; color: #fff; background: #293846 }
.nav-collapse li:first-child a { border-top: 0 }
.nav-collapse li:last-child a { border-bottom: 0 }
.nav-collapse li ul {
	display: none;
	background: #1c2630;
}
.nav-collapse li ul li {
	border: 0;
}
.nav-collapse li ul li a {
	padding: 5px 1em 5px 3em;
}
.nav-collapse li.active ul li a {
	border-right: 6px solid #1c2630;
	color: #a7b1c2;
}
.nav-collapse li.active ul li a:hover {
	border-right: 6px solid #fff;
	color: #fff;
}
.nav-toggle { display: none }

.pager {
	position: relative;
	list-style: none;
	display: flex;
	margin: 0 0 1em 0;
	padding: 10px 0 6px;
	overflow-x: scroll;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
}
.pager::-webkit-scrollbar {
	height: 6px;
}
.pager::-webkit-scrollbar-thumb {
	background: #ddd;
	border-radius: 10px;
}
.pager::-webkit-scrollbar-track{
}
.pager li {
	display: flex;
	flex: 0 0 29px;
	width: 29px;
	height: 29px;
	align-items: center;
	justify-content: center;
	background: #2f4050;
	margin: 0 2px;
	color: #fff;
}
.pager li a {
	width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
	background: #fff;
	border: solid 1px #ddd;
	box-sizing: border-box;
	text-decoration: none;
}
.pager li a:hover {
	border: solid 1px #19aa8d;
}
.pager li.p_prev, .pager li.p_next {
    position: sticky;
	top: 0;
	width: auto;
	flex: 0 0 auto;
}
.pager li.p_prev {
    left: 0;
    margin: 0 2px 0 0;
}
.pager li.p_prev::before {
	position: absolute;
	top: 0;
    left: 0;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 14.5px 8px 0 0;
	border-color: #f7f7f7 transparent transparent transparent;
}
.pager li.p_prev::after {
	position: absolute;
	bottom: 0;
    left: 0;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 14.5px 0 0 8px;
	border-color: transparent transparent transparent #f7f7f7;
}
.pager li.p_next {
    right: 0;
    margin: 0 0 0 2px;
}
.pager li.p_next::before {
	position: absolute;
	top: 0;
    right: 0;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 8px 14.5px 0;
	border-color: transparent #f7f7f7 transparent transparent;
}
.pager li.p_next::after {
	position: absolute;
	bottom: 0;
    right: 0;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 14.5px 8px;
	border-color: transparent transparent #f7f7f7 transparent;
}
.pager li.p_prev a, .pager li.p_next a {
	background: #2f4050;
	border: 0;
	color: #fff;
}
.pager li.p_prev a {
	padding: 0 10px 0 18px;
}
.pager li.p_next a {
	padding: 0 18px 0 10px;
}

@media screen and (max-width: 40em) {
	#header div span {
		display: none;
	}
	.js .nav-collapse {
		clip: rect(0 0 0 0);
		max-height: 0;
		position: absolute;
		display: block;
		overflow: hidden;
	}
	.nav-collapse {
		top: 50px;
		width: 100%;
		position: relative;
	}
	.nav-collapse.opened { max-height: 9999px }
	.nav-collapse a:hover { background: transparent }
	.nav-collapse .active a:hover { color: #fff; background: rgba(0,0,0, .3) }
	.nav-toggle {
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
		-webkit-touch-callout: none;
		-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		user-select: none;
		text-decoration: none;
		text-indent: -999px;
		position: relative;
		overflow: hidden;
		width: 40px;
		height: 40px;
		float: right;
		display: block;
		background: #2f4050;
		border-bottom-right-radius: 4px;
		border-bottom-left-radius: 4px;
	}
	.nav-toggle:before {
		color: #a7b1c2; /* Edit this to change the icon color */
		font-family: "responsivenav";
		font-style: normal;
		font-weight: normal;
		font-variant: normal;
		font-size: 24px;
		text-transform: none;
		position: absolute;
		content: "\2261";
		text-indent: 0;
		text-align: center;
		line-height: 40px;
		speak: none;
		width: 100%;
		top: 0;
		left: 0;
		transition: .3s ease;
	}
	.nav-toggle.active:before {
		font-size: 24px;
		content: "\00D7";
	}
	.nav-toggle:hover:before {
		background: #293846;
		color: #fff;
	}
	.main {
		-webkit-overflow-scrolling: auto;
		box-shadow: none;
		padding: 0 20px 1em;
		position: relative;
		top: 50px;
		width: 100%;
		overflow: hidden;
	}
	.main::-webkit-scrollbar { background-color: transparent }
}





#login_page {
	background: #f4f4f4;
	font: normal 14px  Verdana, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
#login_page > div {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 400px;
	height: 400px;
	max-width: 90%;
}
#login_page h1 {
	text-align: center;
	color: #2f4050;
	font-size: 31px;
	font-weight: normal;
	font-family: 'Racing Sans One', cursive !important;
}
#login_page form {
	background: #2f4050;
	padding : 30px;
	box-shadow: 0 0 5px rgba(0,0,0, .6);
}
#login_page form > div {
	padding: 0 0 10px 0;
	color: #a7b1c2;
}
#login_page input[type="text"], #login_page input[type="password"] {
	width: 100%;
	height: 40px;
	border: 0;
	margin: 0 0 20px 0;
	padding: 0 0 0 10px;
	color: #555;
	line-height: 40px;
	font: bold 18px  Meiryo, sans-serif;
	box-sizing: border-box;
	border-radius: 4px;
}
#login_page input[type="submit"] {
	width: 100%;
	height: 40px;
	background: #2f4050;
	border: solid 1px #a7b1c2;
	text-align: center;
	color: #a7b1c2;
	line-height: 40px;
	font: bold 18px  Meiryo, sans-serif;
	cursor: pointer;
	box-sizing: border-box;
	border-radius: 4px;
	transition: .3s ease;
	-webkit-appearance: none;
}
#login_page input[type="submit"]:hover {
	background: #293846;
	border: solid 1px #fff;
	color: #fff;
}




#cale_top {
	clear: both;
}
#cale_top>div {
	display: none;
	overflow: auto;
	background: #fff;
	padding: 10px 1em;
	box-sizing: border-box;
	box-shadow: 0 0 4px #ddd;
}
#cale_top>div:first-child {
	display: block;
	background: #2f4050;
	box-shadow: 0 0 4px #aaa;
}
#cale_top>div form {
	font: bold 18px Meiryo, sans-serif;
	color: #fff;
}
#cale_top>div form select {
	height: 40px;
	border: 0;
	margin: 3px 0;
	padding: 0 0 0 10px;
	font: bold 18px Meiryo, sans-serif;
	border-radius: 4px;
}
#cale_top>div form>p, #cale_top>div>p {
	float: right;
	width: auto;
	margin: 0;
	font: bold 18px Meiryo, sans-serif;
	line-height: 40px;
}
#cale_top>div form>p>a {
	display: inline-block;
	width: 100px;
	height: 40px;
	background: #2f4050;
	border: solid 1px #a7b1c2;
	margin: 3px 0 3px 10px;
	text-align: center;
	color: #a7b1c2;
	font: bold 18px Meiryo, sans-serif;
	text-decoration: none;
	line-height: 40px;
	vertical-align: top;
	box-sizing: border-box;
	border-radius: 4px;
	transition: .3s ease;
}
#cale_top>div a:hover {
	background: #293846;
	border: solid 1px #fff;
	color: #fff;
}
#cale_top>div form>p>a:nth-child(1) {
	width: 120px;
	background: #6495ed;
	border: 0;
	color: #fff;
}
#cale_top>div form>p>a:nth-child(1):hover {
	background: #82aaf1;
}
#cale_top table {
	width: 100%;
	table-layout: fixed;
	border-collapse: separate;
	border-spacing: 2px;
	margin: 1em 0 0 0;
}
#cale_top table th {
	padding: 2px;
	text-align: left;
}
#cale_top table tr td:first-child p {
	background: #f9ebeb;
	color: #cd5c5c;
}
#cale_top table tr td:last-child p {
	background: #edf3fd;
	color: #6495ed;
}
#cale_top table td {
	background: #fff;
	border: solid 1px #fff;
	height: 100px;
	padding: 0;
	vertical-align: top;
	overflow: hidden;
	white-space: nowrap;
}
#cale_top table td p {
	display: block;
	float: none;
	background: #eee;
	padding: 2px;
	margin: 0 0 1px 0;
	box-sizing: border-box;
}
#cale_top table td p span {
	display: inline-block;
}
#cale_top table td table {
	border-collapse: collapse;
}
#cale_top table td table th, #cale_top table td table td {
	padding: 0;
	line-height: 20px;
	text-align: center;
}
#cale_top table td table th {
	/*font-weight: normal;*/
	border: solid 1px #eee;
}
#cale_top table td table td {
	border: solid 1px #eee;
}
#cale_top table .off_check {
	border: solid 1px #19aa8d;
}
#cale_top table .off_check p {
	background: #19aa8d !important;
	color: #fff !important;
}
#cale_top table .off_day p {
	background: #cd5c5c !important;
	color: #fff !important;
}
#cale_top table .dl_on, #cale_top table .dl_off, #cale_top table .dl_off_s {
	clear: both;
	margin: 1px 0;
}
#cale_top table .dl_on dt, #cale_top table .dl_off dt, #cale_top table .dl_off_s dt {
	display: inline-block;
	/*width: 2em;*/
	font-weight: bold;
}
#cale_top table .dl_on dd, #cale_top table .dl_off dd, #cale_top table .dl_off_s dd {
	display: inline-block;
	margin: 0 0 0 5px;
}
#cale_top table .dl_on dt {
	color: #6495ed;
}
#cale_top table dl.hidden, #cale_top .cell_slide span.hidden {
	display: none;
}
#cale_top table .open {
	position: relative;
	border: solid 1px #2f4050;
}
#cale_top table .open:after {
	content: "";
	position: absolute;
	bottom: -22px;
	left: 50%;
	margin-left: -10px;
	border: 10px solid transparent;
	border-top: 12px solid #2f4050;
}
#cale_top table .open p {
	background: #2f4050 !important;
	color: #fff !important;
}
.hide_table, .cell_slide {
	display: none;
}
#cale_top .cell_detail td {
	background: #f4f4f4;
	border: solid 1px #f4f4f4;
}
#cale_top .cell_detail table {
	width: auto;
	max-width: 100%;
	margin: 10px auto;
}
#cale_top .cell_detail td {
	padding: 0;
}
#cale_top .cell_detail td th, #cale_top .cell_detail td td {
	border: solid 1px #ddd;
	padding: 2px 0;
	white-space: nowrap;
}
#cale_top .cell_detail td td {
	background: #fff;
	height: auto;
	padding: 2px 10px;
}
#cale_top .cell_1_1 {
	background: #2f4050;
	font-weight: bold;
	color: #fff;
}
#cale_top .cell_1_2 {
	background: #eee;
	font-weight: bold;
}
#cale_top .cell_2_1 {
	color: #111;
}
#cale_top .cell_2_2 {
	color: #aaa;
}
#cale_top .cell_slide span {
	display: block;
}
#inline-rule {
	font: bold 18px Meiryo, sans-serif;
}
#inline-rule div {
	float: left;
	width: 240px;
}
#inline-rule table {
	border-collapse: collapse;
	table-layout: fixed;
	width: 100%;
}
#inline-rule table tr {
	border-bottom: solid 2px #f4f4f4;
}
#inline-rule table tr th, #inline-rule table tr td {
	line-height: 50px;
}
#inline-rule table tr th {
	background: #2f4050;
	color: #fff;
}
#inline-rule table tr td {
	text-align: center;
}
#inline-rule dl {
	background: #f4f4f4;
	margin: 0 0 0 240px;
	padding: 0 20px 20px 20px;
	vertical-align: top;
}
#inline-rule dl dt {
	line-height: 50px;
}
#inline-rule dl dd {
	margin: 0;
	font-size: 14px;
	font-weight: normal;
}
@media screen and (max-width: 40em) {
	#inline-rule div {
		float: none;
		width: 100%;
	}
	#inline-rule dl {
		margin: 0;
	}
}
#p_etc {display: flex}
#p_etc li {
	display: flex;
	width: 100%;
    align-items: center;
    justify-content: center;
	background: #ccc;
	margin: -2px 0 0 2px;
	color: #fff;
	text-align: center;
	cursor: pointer;
	transition: .3s ease;
}
#p_etc li a {
	width: 100%;
	color: #fff;
	padding: 8px 14px;
}
#p_etc li:last-child {
	color: #19aa8d;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0px 0px 0px 5px rgb(244 244 244) inset;
    white-space: nowrap;
}
#p_etc li:last-child:hover {
    background: #fff;
}
#p_etc li:last-child a {
	display: block;
	color: #19aa8d;
	text-decoration: none;
}
#p_etc li#p_active {
	background: #fff;
	cursor: default;
}
#p_etc li#p_active a {
	color: #555;
	font-weight: bold;
}
#p_etc li:hover {
	background: #aaa;
}
#p_regi {
	float: none;
	background: #fff;
	margin: 2em 0 0 0;
	padding: 1em;
	text-align: center;
	box-sizing: border-box;
	box-shadow: 0 0 4px #ddd;
}
#p_regi a, #p_regi input[type="submit"] {
	display: inline-block;
	height: 40px;
	width: 120px;
	background: #19aa8d;
	margin: 0 5px;
	font: bold 18px Meiryo, sans-serif;
	color: #fff;
	line-height: 40px;
	text-decoration: none;
	border: 0;
	border-radius: 4px;
	transition: .3s ease;
}
#p_regi a:hover, #p_regi  input[type="submit"]:hover {
	background: #1dc8a6;
}
#p_regi a:not(:first-child), #p_regi input[type="submit"]:not(:first-child) {
	background: #ccc;
}
#p_regi a:not(:first-child):hover, #p_regi  input[type="submit"]:not(:first-child):hover {
	background: #aaa;
}
#p_regi select {
	height: 40px;
	font: bold 18px  Meiryo, sans-serif;
}
#cale_top.cale_regi table {
	height: 100%;
}
#cale_top.cale_regi table td {
	position: relative;
	height: 80px;
}
#cale_top.cale_regi table .schedule {
	border: solid 1px #19aa8d;
}
#cale_top.cale_regi table .outwork {
	border: solid 1px #6495ed;
}
#cale_top.cale_regi table .schedule p {
	background: #19aa8d !important;
	color: #fff;
}
#cale_top.cale_regi table .outwork p {
	background: #6495ed !important;
	color: #fff;
}
#cale_top.cale_regi table td select {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	min-height: 80px;
	background: #fff;
	opacity: 0;
}
#cale_top.cale_regi table td select option, #cale_top.cale_regi table td select optgroup {
	font-family: Meiryo, sans-serif;
}
#cale_top.cale_regi table td select option[value=""] {
	color: #aaa;
	font-weight: bold;
}



#cale_create {
	clear: both;
}
#cale_create form>div {
	display: block;
	overflow: auto;
	background: #2f4050;
	padding: 1em;
	box-sizing: border-box;
	box-shadow: 0 0 4px #aaa;
}
#cale_create form>div select {
	border: 0;
	height: 40px;
	padding: 0 0 0 10px;
	font: bold 18px Meiryo, sans-serif;
}
#cale_create form>div>p {
	float: right;
	background: #2f4050;
	width: auto;
	margin: 0;
	font: bold 18px Meiryo, sans-serif;
	line-height: 40px;
	box-shadow: none;
}
#cale_create form>div>p>a {
	display: inline-block;
	width: 100px;
	height: 40px;
	background: #2f4050;
	border: solid 1px #a7b1c2;
	margin: 0 0 0 10px;
	text-align: center;
	color: #a7b1c2;
	font: bold 18px Meiryo, sans-serif;
	text-decoration: none;
	line-height: 40px;
	vertical-align: top;
	box-sizing: border-box;
	border-radius: 4px;
	transition: .3s ease;
}
#cale_create form>div>p>a:hover {
	background: #293846;
	border: solid 1px #fff;
	color: #fff;
}
#cale_create dl {
	background: #fff;
	padding: 1em 2em;
}
#cale_create dt, #cale_create dd {
	display: inline-block;
	border-top: dashed 1px #ddd;
	margin: 0;
	padding: 10px 0;
	vertical-align: top;
	font-size: 16px;
	font-weight: bold;
	line-height: 250%;
	box-sizing: border-box;
}
#cale_create dt:first-child, #cale_create dt:first-child + dd {
	border: 0;
}
#cale_create dt {
	width: 20%;
}
#cale_create dd {
	width: 79%;
}
#cale_create dd table {
	width: 100%;
}
#cale_create input[type="text"] {
	height: 30px;
	border: solid 1px #ddd;
	padding: 0 10px;
	font-size: 16px;
	font-weight: bold;
	line-height: 30px;
	border-radius: 4px;
}
#cale_create input[type="text"].text_s {
	width: 30%;
}

#cale_create select, #cale_create input[type="time"] {
    height: 30px;
    border: solid 1px #ddd;
    padding: 0 0 0 6px;
    font-size: 16px;
    font-weight: bold;
    line-height: 30px;
	vertical-align: middle;
    border-radius: 4px;
}

#cale_create ul select, #cale_create ul input[type="time"] {
    padding: 0;
}

@media screen and (max-width: 640px) {
	#cale_create input[type="time"] {
		width: 70px;
	}
}

#cale_create .asterisk {
	color: #cd5c5c;
}
#cale_create input, #cale_create select, #cale_create option {
	font-family: Verdana, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
#cale_create p {
	background: #fff;
	margin: 0 0 2em 0;
	text-align: center;
	box-shadow: 0 0 4px #ddd;
}
#cale_create p input {
	display: inline-block;
	width: 120px;
	height: 40px;
	background: #19aa8d;
	border: 0;
	margin: 10px;
	vertical-align: middle;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	font-family: Verdana, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	cursor: pointer;
	box-sizing: border-box;
	border-radius: 4px;
	transition: .3s ease;
	-webkit-appearance: none;
}
#cale_create p input:hover {
	background: #1dc8a6;
}


#cale_create.cale_month form > ul {
	list-style: none;
	padding: 2em 0;
}
#cale_create.cale_month form > ul > li > a {
	position: relative;
	display: block;
	height: 40px;
	background: #fff;
	margin: 0 0 2px 0;
	color: #2f4050;
	font-size: 16px;
	font-weight: bold;
	line-height: 40px;
	text-decoration: none;
	text-indent: 1em;
	box-sizing: border-box;
	box-shadow: 0 0 4px #ddd;
}
#cale_create.cale_month form > ul > li > a:before {
	position: absolute;
	top: 0;
	right: 0;
	width: 40px;
	background: #2f4050;
	color: #a7b1c2;
	line-height: 40px;
	text-align: center;
	text-indent: 0px;
	font-size: 24px;
	font-family: "responsivenav";
	content: "\2013";
	transition: .3s ease;
}
#cale_create.cale_month form > ul > li > .open:before {
	content: "\002B";
}
#cale_create.cale_month form > ul > li > a:hover:before {
	background: #293846;
	color: #fff;
}
#cale_create.cale_month form ul li ul {
	list-style: none inside;
	position: relative;
	background: #fff;
	margin: 1em;
	padding: 1em;
}
#cale_create.cale_month form ul li ul:before {
	content: "";
	position: absolute;
	top: -22px;
	left: 40px;
	border: 10px solid transparent;
	border-bottom: 12px solid #fff;
}
#cale_create.cale_month form ul li .close {
	display: none;
}
#cale_create.cale_month form ul li ul li {
	font-weight: bold;
	font-size: 16px;
	line-height: 250%;
}
#cale_create.cale_month form ul li ul li span {
	cursor: pointer;
}




@media screen and (max-width: 40em) {
	#cale_top>div form>p a:nth-child(2) {
		display: none;
	}
	#cale_top table .dl_on dd, #cale_top table .dl_off dt {
		display: none;
	}
	#cale_top.cale_regi table td {
		height: 60px;
	}
}




#user_list {
	clear: both;
	padding: 0 0 2em 0;
}
#user_list ul {
	list-style: none;
}
#user_list li {
}
#user_list dl {
	position: relative;
	background: #fff;
	border-bottom: solid 1px #ddd;
	margin: 0;
	line-height: 350%;
	overflow: auto;
}
#user_list .table_h {
	background: #2f4050;
	box-shadow: 0 0 4px #aaa;
}
#user_list .table_h span {
	color: #fff;
}
#user_list .s_invalid {
	display: none;
	background: #f4f4f4;
	color: #aaa;
}
#user_list dt, #user_list dd {
	display: inline-block;
	margin: 0;
	box-sizing: border-box;
}
#user_list dt {
}
#user_list dd {
	position : absolute;
	top: 0;
	right: 0;
	text-align: right;
}
#user_list dd span {
	border-right: solid 6px #ccc;
}
#user_list .table_h dd span {
	border-right: solid 6px #2f4050;
}
#user_list .a_team {
	border-right: solid 6px #cd5c5c;
}
#user_list .b_team {
	border-right: solid 6px #6495ed;
}
#user_list .c_team {
	border-right: solid 6px #cdb55c;
}
#user_list .s_invalid dd span {
	border-right: solid 6px #f4f4f4;
}
#user_list .user_check, #user_list .user_id, #user_list .user_name, #user_list .user_authority, #user_list .user_post, #user_list .user_team {
	display: inline-block;
	vertical-align: top;
	white-space: nowrap;
}
#user_list .user_id {
	position : absolute;
	top: 0;
	left: 20px;
}
#user_list .user_name {
	position : absolute;
	top: 0;
	left: 100px;
}
#user_list .user_authority {
	position : absolute;
	top: 0;
	left: 40%;
}
#user_list .user_post {
	position : absolute;
	top: 0;
	left: 70%;
}
#user_list .user_team {
	padding: 0 14px 0 0;
}
#user_list p {
	background: #fff;
	list-style: none inside;
	padding: 1em;
	position: relative;
	background: #fff;
	margin: 1em 0;
	box-sizing: border-box;
}
#user_list p:before {
	content: "";
	position: absolute;
	top: -22px;
	left: 40px;
	border: 10px solid transparent;
	border-bottom: 12px solid #fff;
}
#user_list .user_submit {
	display: inline-block;
	width: 70px;
	height: 40px;
	background: #19aa8d;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	line-height: 40px;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
	border-radius: 4px;
	transition: .3s ease;
	-webkit-appearance: none;
}
#user_list .user_submit:hover {
	background: #1dc8a6;
}
#user_list .user_switch {
	position: absolute;
	top: 14px;
	right: 14px;
	display: inline-block;
	width: 200px;
	height: 40px;
	background: #ccc;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	line-height: 40px;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	box-sizing: border-box;
	border-radius: 4px;
	transition: .3s ease;
	-webkit-appearance: none;
}
#user_list .user_switch:hover {
	background: #aaa;
}



@media screen and (max-width: 40em) {
	#user_list .user_id {
		width : 80px;
	}
	#user_list .user_name {
		width : 160px;
	}
	#user_list .user_authority, #user_list .user_post  {
		display: none;
	}
	#user_list dd span {
		text-indent: -9999px;
		text-align: left;
	}
}




#mypage {
	clear: both;
}
#mypage dl {
	background: #fff;
	padding: 1em 2em;
}
#mypage dt, #mypage dd {
	display: inline-block;
	margin: 0;
	padding: 10px 0;
	vertical-align: top;
	font-size: 16px;
	font-weight: bold;
	line-height: 250%;
}
#mypage dt {
	width: 20%;
}
#mypage dd {
	width: 80%;
}
#mypage input[type="text"], #mypage input[type="password"] {
	width: 30%;
	height: 30px;
	border: solid 1px #ddd;
	margin: 0 5px 0 0;
	padding: 0 10px;
	font-size: 16px;
	font-weight: bold;
	line-height: 30px;
	border-radius: 4px;
}
#mypage input[type="text"].text_s, #mypage input[type="password"].text_s {
	width: 30%;
}
#mypage select {
	height: 30px;
	border: solid 1px #ddd;
	padding: 0 0 0 6px;
	font-size: 16px;
	font-weight: bold;
	border-radius: 4px;
}
#mypage label {
	padding: 0 20px 0 0;
}
#mypage .asterisk {
	color: #cd5c5c;
}
#mypage input, #mypage select, #mypage option {
	font-family: Verdana, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
#mypage ul {
	list-style: none;
	display: inline-flex;
	flex-direction: column;
}
#mypage ul li {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#mypage p {
	background: #fff;
	margin: 0 0 2em 0;
	text-align: center;
	box-shadow: 0 0 4px #ddd;
}
#mypage p input {
	display: inline-block;
	width: 120px;
	height: 40px;
	background: #19aa8d;
	border: 0;
	margin: 10px;
	vertical-align: middle;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	font-family: Verdana, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	cursor: pointer;
	box-sizing: border-box;
	border-radius: 4px;
	transition: .3s ease;
	-webkit-appearance: none;
}
#mypage p input:hover {
	background: #1dc8a6;
}




@media screen and (max-width: 40em) {
	#mypage dt, #mypage dd {
		width: 100%;
	}
	#mypage dt {
		border-top: dashed 1px #ddd;
		padding-bottom: 0;
	}
	#mypage dt:first-child {
		border: 0;
	}
	#mypage dd {
		padding-top: 0;
	}
	#mypage input[type="text"], #mypage input[type="password"] {
		width: 100%;
		box-sizing: border-box;
	}
	#mypage input[type="text"].text_s, #mypage input[type="password"].text_s {
		width: 50%;
		box-sizing: border-box;
	}
}

.cell_slide form {
	margin: 10px 0;
	padding: 1em;
	background: #fff;
	font-size: 18px;
	font-weight: bold;
	line-height: 250%;
	text-align: center;
}
.cell_slide form input[type="text"], .cell_slide form input[type="number"] {
	width: 200px;
	height: 24px;
	font-size: 18px;
}
.cell_slide form input[type="submit"], .cell_slide form input[type="button"] {
	display: inline-block;
	height: 40px;
	width: 120px;
	margin: 15px 5px 10px;
	font: bold 18px Meiryo, sans-serif;
	color: #fff;
	line-height: 40px;
	text-decoration: none;
	border: 0;
	border-radius: 4px;
	transition: .3s ease;
	-webkit-appearance: none;
}
.cell_slide form input[type="submit"] {
	background: #19aa8d;

}
.cell_slide form input[type="button"] {
	background: #ccc;
}

@media print{
	body {
		background: #fff;
	}
	#header, #foo {
		display: none;
	}
	.main {
		position: static;
		width: 100%;
		overflow-y: auto;
	}
}
