@charset "UTF-8";


/* ==================================================
全ページ共通
================================================== */

/* 全体
-------------------------------------------------- */
@font-face {
	font-family: 'use-Dense-Regular';
  	src:url('../../font/Dense-Regular.otf') format('opentype'),
		url("../../font/dense-regular-webfont.eot") format('embedded-opentype');
}

* {
	position: relative;
	box-sizing: border-box;
	overscroll-behavior-x: none !important;
}

html,
body {
	width: 100%;
	height: 100%;
}

.wrapper {
	width: 100vw;
	height: 100vh;
}

html,
body,
input,
select,
textarea {
	display: block;
	/*font-family: 'ヒラギノ明朝 ProN W6', 'HiraMinProN-W6', "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", sans-serif;*/
	/*font-family: 'ヒラギノ明朝 ProN W3', 'HiraMinProN-W3', "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", 'メイリオ', 'Meiryo', 'Osaka', 'sans-serif';*/
	font-family: 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	color: /*#ebf6f7;*/ rgba(0,10,2,1); /* 墨色 */    /*rgba(84,82,81,1);*/
	/*background-color: rgba(239, 245, 255, 0.5); /*#ffdbe5; /*#ffffff;*/
	background-color: #ffffff;	/*R204 G230 B255 */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-overflow-scrolling: touch
}

img {
	vertical-align: bottom;
}

img[src$=".svg"] {
	width: 100%;
}


a {
	color: rgba(0,10,2,1);
	text-decoration: none;
	-webkit-transition: all 0.3s linear;
    transition: all 0.3s linear;
}
a:hover {
	text-decoration : underline;
}


.font_gothic {
	font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
}

.menustr_font {
	font-family: 'use-Dense-Regular';
	-ms-font-feature-settings: "normal";
}

.cf::after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	overflow: hidden;
	clear: both;
}

.clear {
	clear: both;
}

.wrap {
	width: 100%;
}

input.submit {
	cursor: pointer;
}

.fill {
	margin: 60px 0;
}

h1 {
	text-align: center;
}

.red {
	background-color: #ff4c10;
	color: #ffffff;
}

.yellow {
	background-color: #ffdb6f;
}

.blue {
	background-color: #a6e1ff;
}

.blue_title {
	color: #6500FF;
	font-size: 16px;
	font-weight: bold;
}

.obj_mv {
	transition: .8s;
	transform: translate(0, 40px);
	-moz-transform: translate(0, 40px);
	-webkit-transform: translate(0, 40px);
	-ms-transform: translate(0, 40px);
}
.mv {
	transform: translate(0, 0);
	-moz-transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
	-ms-transform: translate(0, 0);
}

.hand {
	cursor: pointer;
}

.must_green {
	-webkit-border-radius: 4px;
	border-radius: 4px;
	font-style: normal;
	font-size: 81.25%;
	color: #FFF;
	background-color: #00A6FF; /*#3693eb; #2626FF;*/
	padding: 1px 3px;
	font-weight: bold;
}

.must_guide_hoan {
	-webkit-border-radius: 4px;
	border-radius: 4px;
	font-style: normal;
	font-size: 81.25%;
	color: #FFF;
	background-color: #BB0000;
	padding: 1px 3px;
	font-weight: bold;
}

.must_guide_tuki {
	-webkit-border-radius: 4px;
	border-radius: 4px;
	font-style: normal;
	font-size: 81.25%;
	color: #FFF;
	background-color: #3D3DFF;
	padding: 1px 3px;
	font-weight: bold;
}

.must_guide_na {
	-webkit-border-radius: 4px;
	border-radius: 4px;
	font-style: normal;
	font-size: 81.25%;
	color: #FF0000;
	background-color: rgba(255,255,255,0);
	padding: 1px 3px;
	font-weight: bold;
}

.must_stat_holiday_1 {
	-webkit-border-radius: 4px;
	border-radius: 4px;
	font-style: normal;
	font-size: 81.25%;
	color: #FF0000;
	background-color: #D2F0B9; /*#F9E8E8;*/
	padding: 1px 3px;
	font-weight: bold;
}

.must_stat_holiday_2 {
	-webkit-border-radius: 4px;
	border-radius: 4px;
	font-style: normal;
	font-size: 81.25%;
	color: #FF0000;
	background-color: rgba(255,255,255,0);
	padding: 1px 3px;
	font-weight: bold;
}

.contextmenu {
  	display: none;
  	position: fixed;
	line-height: 1.5em;
	padding: 5px;
  	left: 0px;
  	top: 0px;
  	width: 100px;
  	height: 86px;
	border: 1px solid #ccc;
	background-color: #fff;
}
.contextmenu li {
  	cursor: pointer;
	border-top: 1px solid #ccc;
}
.contextmenu li:first-child {
	border-top: none;
}


/* フォーム
-------------------------------------------------- */

input:not([type="checkbox"]) {
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	appearance: none;
	border-radius: 4px;
	font-size: 16px;
}

textarea {
	border: 1px solid #cccccc;
	border-radius: 4px;
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	appearance: none;
}

input[type="checkbox"] {
	width: 16px;
	height: 16px;
	border-radius: 2px;
}

select {
	display: block;
	font-size: 16px;
	padding: 0 8px;;
	width: 100%;
	border: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	appearance: none;
	background-image: url('../images/select.png');
	background-repeat: no-repeat;
	background-size: 8px 6px;
	background-position: 96% 50%;
	background-color: #ffffff;
}

.entryLineInput_size16 {
	border: none;
    outline: none;
	border-bottom: 1px solid #ccc;
	background-color: #fff;
    font-size: 16px;
	color: inherit;
	display: inline-block;
	vertical-align: middle;
	/*border: 1px solid #ccc;*/
	/*border-radius: 3px;*/
}

.entryLineInput_size12 {
	border: none;
    outline: none;
	border-bottom: 1px solid #ccc;
	background-color: #fff;
    font-size: 12px;
	color: inherit;
	display: inline-block;
	vertical-align: middle;
	/*border: 1px solid #ccc;*/
	/*border-radius: 3px;*/
	width: 100%;
}

.entryLineInput_size16_date {
	width: 40%;
	padding: 3px 3px 3px 5px;
    font-size: 16px;
	border: none;
    outline: none;
	/*border-bottom: 1px solid #ccc;*/
	background-color: #fff;
	color: inherit;
	display: inline-block;
	vertical-align: middle;
	/*border: 1px solid #ccc;*/
	/*border-radius: 3px;*/
}

.entryLineInput_size16_time {
	margin-left: 5px;
	width: 48%;
	padding: 3px 3px 3px 5px;
    font-size: 16px;
	border: none;
    outline: none;
	border-bottom: 1px solid #ccc;
	background-color: #fff;
	color: inherit;
	display: inline-block;
	text-decoration: none;
	vertical-align: middle;
	/*border: 1px solid #ccc;*/
	/*border-radius: 3px;*/
}

.entryLineInput_size12_date {
	width: 90%;
	margin-left: 5px;
	padding: 2px 2px 2px 2px;
	font-size: 12px;
	border: none;
    outline: none;
	border-bottom: 1px solid #ccc;
	background-color: #fff;
	color: inherit;
	display: inline-block;
	text-decoration: none;
	vertical-align: middle;
	/*border: 1px solid #ccc;*/
	/*border-radius: 3px;*/
}

.entryLineInput_size12_time {
	width: 50%;
	margin-left: 5px;
	padding: 2px 2px 2px 2px;
    font-size: 12px;
	border: none;
    outline: none;
	border-bottom: 1px solid #ccc;
	background-color: #fff;
	color: inherit;
	display: inline-block;
	text-decoration: none;
	vertical-align: middle;
	/*border: 1px solid #ccc;*/
	/*border-radius: 3px;*/
}

.entryLineInput {
	width: 100%;
    font-size: 16px;
	border: none;
    outline: none;
	border-bottom: 1px solid #ccc;
	background-color: #fff;
	color: inherit;
	display: inline-block;
	text-decoration: none;
	/*border: 1px solid #ccc;*/
	/*border-radius: 3px;*/
}

.entryTextarea {
	width: 100%;
    font-size: 16px;
	resize: none;
	height: 10em;
	margin: 3px 0;
	padding: 3px;
	border: none;
    outline: none;
	border-bottom: 1px solid #ccc;
	background-color: #fff;
	color: inherit;
	/*border: 1px solid #ccc;*/
	/*border-radius: 3px;*/
}

.entryTextarea_5 {
	width: 100%;
    font-size: 16px;
	resize: none;
	height: 5em;
	margin: 3px 0;
	padding: 3px;
	color: inherit;
	border: 1px solid #ccc;
	border-radius: 3px;
}

.entryTextarea_2 {
	width: 100%;
    font-size: 16px;
	resize: none;
	height: 3em;
	margin: 3px 0;
	padding: 3px;
	color: inherit;
	border: 1px solid #ccc;
	border-radius: 3px;
}

.error_message {
	padding: 10px 0 10px 0;
	color: #ff4c10;
}

/* 上はスマホに適用するスタイルを書く */
@media screen and (min-width:600px) and ( max-width:959px) {
	/* タブレットに適用したいスタイル */
	.entryLineInput_size12_date {
		width: 90%;
	}
	.entryLineInput_size12_time {
		width: 38px;
	}

}
@media screen and (min-width:960px) and ( max-width:1280px) {
	/* 通常のデスクトップに適用したいスタイル */
	/* タブレットに適用したいスタイル */
	.entryLineInput_size12_date {
		width: 90%;
	}
	.entryLineInput_size12_time {
		width: 38px;
	}

}
@media screen and (min-width:1281px) {
	/* 横幅の広いデスクトップに適用したいスタイル */
	/* タブレットに適用したいスタイル */
	.entryLineInput_size12_date {
		width: 90%;
	}
	.entryLineInput_size12_time {
		width: 38px;
	}

}


/* ボタンエリア
-------------------------------------------------- */
.onebtnarea_wrap {
	display:inline-block;
	text-align: center;
	width: 50%;
}

/*
.onebtnarea {
	width: 100%;
	height: 60px;
}
*/

.onebtnarea_fixed {
	position: fixed;
	bottom: 0;
	width: 100%;
	height: 60px;
	padding: 10px;
	background-color: #eee; /*#eeeeee;*/
	text-align: center;
	z-index: 999;
}

.onebtnarea a,
.onebtnarea input {
	display: block;
	margin: auto;
	padding: 12px 0;
	height: 40px;
	text-decoration: none;
	font-size: 14px;
	font-weight: bold;
	color: rgba(0, 10, 2, 1);
	border-radius: 4px;
	border: 1px solid #ccc;
	text-align: center;
	background: -moz-linear-gradient(rgba(255,255,255,1), rgba(255,255,255,1));
	background: -webkit-linear-gradient(linear, 100% 0%, 100% 100%, from(rgba(255,255,255,1)), to(rgba(255,255,255,1)));
	background: -ms-linear-gradient(rgba(255,255,255,1), rgba(255,255,255,1));
}

.onebtnarea a.cancel,
.onebtnarea a.return,
.onebtnarea input.return {
	width: 50%;
	max-width: 150px;
	background-color: #eee;
}

.onebtnflowarea a,
.onebtnflowarea input {
	padding: 10px 0 10px 0;
	height: 40px;
	font-size: 14px;
	font-weight: bold;
	color: rgba(0, 10, 2, 1);
	border-radius: 4px;
	border: 1px solid #666666;
	text-align: center;
}

.onebtnflowarea a.cancel,
.onebtnflowarea a.return,
.onebtnflowarea input.return,
.onebtnflowarea a.submit,
.onebtnflowarea input.submit {
	width: 50%;
	max-width: 100px;
	background-color: #eee;
}

.twobtnarea_wrap {
	display:inline-block;
	text-align: center;
	width: 50%;
}

.twobtnarea_fixed {
	position: fixed;
	bottom: 0;
	width: 100%;
	height: 60px;
	padding: 10px;
	background-image: url('../images/back.png');
	text-align: center;
	z-index: 999;
}

.twobtnarea a,
.twobtnarea input {
	display: inline-block;
	margin: auto;
	padding: 8px 0;
	height: 40px;
	font-size: 14px;
	font-weight: bold;
	color: rgba(0, 10, 2, 1);
	border-radius: 4px;
	border: 1px solid #666666;
	text-align: center;
}

.twobtnarea a.cancel,
.twobtnarea a.return,
.twobtnarea input.return,
.twobtnarea a.submit,
.twobtnarea input.submit {
	width: 50%;
	max-width: 100px;
	background-color: #eee;
}

.btnarea_wrap {
	width: 100%;
}

.btnarea {
	height: 40px;
}

.btnarea.fixed {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 60px;
	padding: 10px;
	background-color: #eee;
	text-align: center;
	z-index: 999;
}

.btnarea a,
.btnarea input {
	display: block;
	margin: auto;
	padding: 12px 0;
	height: 40px;
	font-size: 14px;
	font-weight: bold;
	color: rgba(0, 10, 2, 1);
	border-radius: 4px;
	border: 1px solid #666666;
	text-align: center;
}

.btnarea a.cancel,
.btnarea a.return,
.btnarea input.return {
	float: left;
	width: 49%;
	background-color: #eee;
}

.btnarea a.submit,
.btnarea input.submit {
	float: right;
	width: 49%;
	background-color: #5f0000;
}

.btnarea a.disable,
.btnarea input.disable {
	padding: 10px 0;
	color: #666666;
	background-color: #fff;
	border: 1px solid #666666;
	pointer-events: none;
}

.btnarea .deleBtn {
 	width: auto;
	color: #ff6633;
	font-size: 12px;
	font-weight: bold;
	text-decoration: none;
	padding: 10px 30px 8px 30px;
	border: solid 1px #ff6633;
	border-radius: 4px;
	background: -moz-linear-gradient(rgba(255,255,255,1), rgba(255,255,255,1));
	background: -webkit-linear-gradient(linear, 100% 0%, 100% 100%, from(rgba(255,255,255,1)), to(rgba(255,255,255,1)));
	background: -ms-linear-gradient(rgba(255,255,255,1), rgba(255,255,255,1));
}

.btnarea a.deleBtn:hover {
	background-color: #ff6600;
	color: #fff;
}

/* 上はスマホに適用するスタイルを書く */
@media screen and (min-width:600px) and ( max-width:959px) {
	/* タブレットに適用したいスタイル */
	.btnarea_wrap {
		display:inline-block;
		text-align: center;
		width: 50%;
		max-width: 300px;
	}

}
@media screen and (min-width:960px) and ( max-width:1280px) {
	/* 通常のデスクトップに適用したいスタイル */
	.btnarea_wrap {
		display:inline-block;
		text-align: center;
		width: 50%;
		max-width: 300px;
	}

}
@media screen and (min-width:1281px) {
	/* 横幅の広いデスクトップに適用したいスタイル */
	.btnarea_wrap {
		display:inline-block;
		text-align: center;
		width: 50%;
		max-width: 300px;
	}

}


/* table smartphoneもpc表示と同じ
-------------------------------------------------- */
thead th {
  /*resize: horizontal;*/
  overflow: hidden;
}

.table_pcpc {
	width: 100%;
	overflow: hidden;
	word-break: break-all;
	border-collapse: collapse;
	word-wrap: break-word;
	margin-top: 10px;
}

.table_pcpc tr {
	border: 1px solid #cccccc;
}

.table_pcpc th {
	width: auto;
	margin: 0 auto;
	border: none;
	text-align: center;
	padding: 6px 8px 5px;
	overflow: hidden;
	color: inherit; /*rgba(0,10,2,1);*/
	font-weight: bold;
	font-size: 16px;
	word-break: break-all;
	word-wrap: break-word;
	background-color: rgba(234,235,236,1);
}

.table_pcpc td{
	width: auto;
	padding: 10px;
	text-align: left;
	vertical-align: middle;
	color: inherit; /*rgba(0,10,2,1);*/
	border-left: 1px solid #cccccc;
	overflow: hidden;
	word-break: break-all;
	word-wrap: break-word;
	font-size: 16px;
	line-height:1.3em;
}

/* 上はスマホに適用するスタイルを書く */
@media screen and (min-width:600px) and ( max-width:959px) {
	/* タブレットに適用したいスタイル */
	.table_pcpc {
		width: 100%;
	}
	.table_pcpc th {
		font-size: 14px;
		text-align: center;
		vertical-align: middle;
		display: table-cell;
	}
	.table_pcpc td {
		padding: 10px;
		width: 70%;
		border-left: 1px solid #cccccc;
		font-size: 14px;
		display: table-cell;
	}
}
@media screen and (min-width:960px) and ( max-width:1280px) {
	/* 通常のデスクトップに適用したいスタイル */
	.table_pcpc {
		width: 100%;
	}
	.table_pcpc th {
		font-size: 14px;
		text-align: center;
		vertical-align: middle;
		display: table-cell;
	}
	.table_pcpc td {
		padding: 10px;
		width: 70%;
		border-left: 1px solid #cccccc;
		font-size: 14px;
		display: table-cell;
	}
}
@media screen and (min-width:1281px) {
	/* 横幅の広いデスクトップに適用したいスタイル */
	.table_pcpc {
		width: 100%;
	}
	.table_pcpc th {
		font-size: 14px;
		text-align: center;
		vertical-align: middle;
		display: table-cell;
	}
	.table_pcpc td {
		padding: 10px;
		width: 70%;
		border-left: 1px solid #cccccc;
		font-size: 14px;
		display: table-cell;
	}
}

/* table smartphoneはList表示
-------------------------------------------------- */

.table_pcsp {
	width: 100%;
	overflow: hidden;
	word-break: break-all;
	border-collapse: collapse;
	word-wrap: break-word;
	margin-top: 10px;
}

.table_pcsp tr {
	border: 1px solid #cccccc;
}

.table_pcsp th {
	width: auto;
	margin: 0 auto;
	border: none;
	text-align: center;
	padding: 6px 8px 5px;
	overflow: hidden;
	color: inherit; /*rgba(0,10,2,1);*/
	font-weight: bold;
	font-size: 16px;
	word-break: break-all;
	word-wrap: break-word;
	display: list-item;
	background-color: rgba(234,235,236,1);
}

.table_pcsp td{
	width: auto;
	padding: 10px;
	text-align: left;
	vertical-align: middle;
	color: inherit; /*rgba(0,10,2,1);*/
	border: none;
	overflow: hidden;
	word-break: break-all;
	word-wrap: break-word;
	font-size: 16px;
	line-height:1.3em;
	display: list-item;
}

/* 上はスマホに適用するスタイルを書く */
@media screen and (min-width:600px) and ( max-width:959px) {
	/* タブレットに適用したいスタイル */
	.table_pcsp {
		width: 100%;
	}
	.table_pcsp th {
		font-size: 14px;
		text-align: center;
		vertical-align: middle;
		display: table-cell;
	}
	.table_pcsp td {
		padding: 10px;
		width: 70%;
		border-left: 1px solid #cccccc;
		font-size: 14px;
		display: table-cell;
	}
}
@media screen and (min-width:960px) and ( max-width:1280px) {
	/* 通常のデスクトップに適用したいスタイル */
	.table_pcsp {
		width: 100%;
	}
	.table_pcsp th {
		font-size: 14px;
		text-align: center;
		vertical-align: middle;
		display: table-cell;
	}
	.table_pcsp td {
		padding: 10px;
		width: 70%;
		border-left: 1px solid #cccccc;
		font-size: 14px;
		display: table-cell;
	}
}
@media screen and (min-width:1281px) {
	/* 横幅の広いデスクトップに適用したいスタイル */
	.table_pcsp {
		width: 100%;
	}
	.table_pcsp th {
		font-size: 14px;
		text-align: center;
		vertical-align: middle;
		display: table-cell;
	}
	.table_pcsp td {
		padding: 10px;
		width: 70%;
		border-left: 1px solid #cccccc;
		font-size: 14px;
		display: table-cell;
	}
}

/* week table smartphoneもpc表示と同じ
-------------------------------------------------- */

.sp_table {
	display: block;
}

.pc_table {
	display: none;
}

.table_31_sch {
	width: 0;
	display: block;
	/*overflow: scroll;*/
	/*overflow-y: scroll;*/
	/*overflow-x: scroll;*/
	height: 0;
    /*white-space: nowrap;*/
	word-break: break-all;
	word-wrap: break-word;
	border-collapse: collapse;
	border: 1px solid #cccccc;
	-webkit-overflow-scrolling: touch;
}

.table_31_sch tr {
	border: 1px solid #cccccc;
}

.table_31_sch thead th {
	/* 縦スクロール時に固定する */
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	/* tbody内のセルより手前に表示する */
	z-index: 9;
	/* その他 */
	width: auto;
	margin: 0 auto;
	border: none;
	text-align: center;
	padding: 6px 8px 5px;
	overflow: hidden;
	color: inherit; /*rgba(0,10,2,1);*/
	border-left: 1px solid #cccccc;
	font-weight: bold;
	font-size: 12px;
	word-break: break-all;
	word-wrap: break-word;
	background-color: rgba(234,235,249,1.0);
}

.table_31_sch th:first-child, .table_31_sch td:first-child {
	position: -webkit-sticky;
  	position: sticky;
  	left: 0;
	z-index: 9;
}

.table_31_sch td:first-child {
	background-color: rgba(234,235,249,1.0);
}

.table_31_sch thead th:first-child {
  /* ヘッダー行内の他のセルより手前に表示する */
  z-index: 10;
}

.table_31_sch tbody th {
	/*padding: 10px;*/
	text-align: left;
	vertical-align: middle;
	color: inherit; /*rgba(0,10,2,1);*/
	border-left: 1px solid #cccccc;
	overflow: hidden;
	word-break: break-all;
	word-wrap: break-word;
	font-size: 12px;
	line-height:1.3em;
	background-color: rgba(234,235,249,1.0);
}

.table_31_sch tbody td {
	/*padding: 10px;*/
	text-align: left;
	vertical-align: middle;
	color: inherit; /*rgba(0,10,2,1);*/
	border-left: 1px solid #cccccc;
	overflow: hidden;
	word-break: break-all;
	word-wrap: break-word;
	font-size: 12px;
	line-height:1.3em;
}

.table_31_sch tbody td:hover {
	border: 2px solid #FF0000;
}

.table_m_sch {
	display: block;
	overflow: scroll;
	height: calc(100vh - 225px);
    white-space: nowrap;
	word-break: break-all;
	word-wrap: break-word;
	border-collapse: collapse;
	margin-top: 10px;
	border: 1px solid #cccccc;
	-webkit-overflow-scrolling: touch;
}

.table_m_sch tr {
	border: 1px solid #cccccc;
}

.table_m_sch thead th {
	/* 縦スクロール時に固定する */
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	/* tbody内のセルより手前に表示する */
	z-index: 9;
	/* その他 */
	width: auto;
	margin: 0 auto;
	border: none;
	text-align: center;
	padding: 6px 8px 5px;
	overflow: hidden;
	color: inherit; /*rgba(0,10,2,1);*/
	border-left: 1px solid #cccccc;
	font-weight: bold;
	font-size: 12px;
	word-break: break-all;
	word-wrap: break-word;
	background-color: rgba(234,235,249,1.0);
}

.table_m_sch th:first-child, .table_m_sch td:first-child {
	position: -webkit-sticky;
  	position: sticky;
  	left: 0;
	z-index: 9;
}

.table_m_sch td:first-child {
	background-color: rgba(234,235,249,1.0);
}

.table_m_sch thead th:first-child {
  /* ヘッダー行内の他のセルより手前に表示する */
  z-index: 10;
}

.table_m_sch tbody th {
	width: 120px;
	/*padding: 10px;*/
	text-align: left;
	vertical-align: middle;
	color: inherit; /*rgba(0,10,2,1);*/
	border-left: 1px solid #cccccc;
	overflow: hidden;
	word-break: break-all;
	word-wrap: break-word;
	font-size: 12px;
	line-height:1.3em;
	background-color: rgba(234,235,249,1.0);
}

.table_m_sch tbody td {
	width: 120px;
	/*padding: 10px;*/
	text-align: left;
	vertical-align: middle;
	color: inherit; /*rgba(0,10,2,1);*/
	border-left: 1px solid #cccccc;
	overflow: hidden;
	word-break: break-all;
	word-wrap: break-word;
	font-size: 12px;
	line-height:1.3em;
	background-color: #ffffff;
}


.table_sch {
	width: 100%;
	overflow: hidden;
	word-break: break-all;
	border-collapse: collapse;
	word-wrap: break-word;
	margin-top: 10px;
}

.table_sch tr {
	border: 1px solid #333333;
}

.table_sch th {
	width: auto;
	margin: 0 auto;
	border: none;
	text-align: center;
	padding: 6px 8px 5px;
	overflow: hidden;
	color: inherit; /*rgba(0,10,2,1);*/
	border-left: 1px solid #333333;
	font-weight: bold;
	font-size: 12px;
	word-break: break-all;
	word-wrap: break-word;
	background-color: rgba(234,235,249,0.7);
}

.table_sch td {
	width: 12%;
	padding: 10px;
	text-align: left;
	vertical-align: middle;
	color: inherit; /*rgba(0,10,2,1);*/
	border: 1px solid #333333;
	overflow: hidden;
	word-break: break-all;
	word-wrap: break-word;
	font-size: 12px;
	line-height:1.3em;
}

.table_sch .month_point:hover {
	border: 2px solid #FF0000;
}

.sch_week_bus {
	background-color: rgba(234,235,249,0.5);
}

.sch_week_clt {
	background-color: rgba(234,235,249,0.5);
}

.sch_week_yos {
	background-color: rgba(234,235,249,0.5);
}

.sch_week_drv {
	background-color: rgba(234,235,249,0.5);
}

.sch_week_uop {
	background-color: rgba(234,235,249,0.5);
}

.table_sch.table_sch_option1 tr:nth-child(odd) td {
	background: #ddeeff;
}

.table_sch .month_day_number {
	font-size: 18px;
	font-weight: bold;
}

.table_sch .month_day_box {
	/*height: 150px;*/
	min-height: 100px;
}

.table_sch .month_day_bus {
	width: 27%;
}

.table_sch .month_day_title {
	width: 28%;
}

.table_sch .month_day_driver {
	width: 20%;
}

.table_sch .month_day_ft {
	width: 22%;
}

.table_sch .red_str_day {
	color: #ff4500;
}

.table_sch .blue_str_day {
	color: #4169e1;
}

.table_sch .desc_backcolor {
	background-color: rgba(234,235,249,0.7);
}

.table_sch tr {
	border: 1px solid #cccccc;
}




/* monthview table
-------------------------------------------------- */

.table_month_sch {
	width: 100%;
	word-break: break-all;
	border-collapse: collapse;
	word-wrap: break-word;
	z-index: 10;
}

.table_month_sch tr {
	border: 1px solid #333333;
}

.table_month_sch th {
	width: auto;
	margin: 0 auto;
	border: none;
	text-align: center;
	padding: 6px 8px 5px;
	color: inherit; /*rgba(0,10,2,1);*/
	border-left: 1px solid #333333;
	font-weight: bold;
	font-size: 12px;
	background-color: rgba(234,235,249,1.0);
}

.table_month_sch td {
	width: 12%;
	padding: 10px;
	text-align: left;
	vertical-align: middle;
	color: inherit; /*rgba(0,10,2,1);*/
	border: 1px solid #333333;
	font-size: 12px;
	line-height:1.3em;
}

.table_month_sch .month_point:hover {
	border: 2px solid #FF0000;
}

.table_month_sch.table_sch_option1 tr:nth-child(odd) td {
	background: #ddeeff;
}

.table_month_sch .month_day_number {
	font-size: 18px;
	font-weight: bold;
}

.table_month_sch .month_day_box {
	min-height: 60px;
}

.table_month_sch .month_day_bus {
	width: 27%;
}

.table_month_sch .month_day_title {
	width: 28%;
}

.table_month_sch .month_day_driver {
	width: 20%;
}

.table_month_sch .month_day_ft {
	width: 22%;
}

.table_month_sch .red_str_day {
	color: #ff4500;
}

.table_month_sch .blue_str_day {
	color: #4169e1;
}

.table_month_sch .desc_backcolor {
	background-color: rgba(234,235,249,0.7);
}

.table_month_sch tr {
	border: 1px solid #cccccc;
}

.table_month_sch th {
	position: -webkit-sticky;
	position: sticky;
	top: 0;
    left: 0;
	width: auto;
	margin: 0 auto;
	border: none;
	text-align: center;
	padding: 6px 8px 5px;
	color: inherit;
	border-left: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
	font-weight: bold;
	font-size: 12px;
	word-break: break-all;
	word-wrap: break-word;
	background-color: rgba(234,235,249,1.0);
}

.table_month_sch thead tr:first-child{
    z-index: 99999;
}



/* login
-------------------------------------------------- */

.top_panel_wrapper {
	display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	-webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
	justify-content: center;
	flex-direction: column;		/* 縦一列 */
}

.top_panel_wrapper .login_area {
	width: 100%;
	text-align: center;
}

.top_panel_wrapper .login_area .logo .logo_size {
	width: 200px;
}

.top_panel_wrapper .login_area .loginUser {
	padding-top: 20px;
}

.top_panel_wrapper .login_area .loginPass {
	padding-bottom: 50px;
}

.top_panel_wrapper .login_area .loginInput_size16 {
    font-size: 16px;
	color: inherit;
	display: inline-block;
	text-decoration: none;
	vertical-align: middle;
	border-radius: 3px;
	margin: 5px;
	border: solid 1px #cccccc;
}







.table_detail {
	width: 100%;
	overflow: hidden;
	word-break: break-all;
	border-collapse: collapse;
	word-wrap: break-word;
	margin-top: 10px;
}

.table_detail tr {
	border: 1px solid #cccccc;
}

.table_detail th {
	width: auto;
	margin: 0 auto;
	border: none;
	text-align: center;
	padding: 3px;
	overflow: hidden;
	color: inherit; /*rgba(0,10,2,1);*/
	border-left: 1px solid #cccccc;
	font-weight: bold;
	font-size: 12px;
	word-break: break-all;
	word-wrap: break-word;
	background-color: rgba(234,235,249,0.5);
}

.table_detail td {
	padding: 3px;
	text-align: left;
	vertical-align: middle;
	color: inherit; /*rgba(0,10,2,1);*/
	border-left: 1px solid #cccccc;
	overflow: hidden;
	word-break: break-all;
	word-wrap: break-word;
	font-size: 12px;
	line-height:1.3em;
}

.table_detail .detail_no {
	width: 6%;
	text-align: center;
}

.table_detail .detail_driver {
	width: 20%;
}

.table_detail .detail_driver .detail_pc_driver {
	font-size: 12px;
	padding: 5px;
	border: solid 1px #ccc;
	border-radius: 5px;
}

.table_detail .detail_fromto {
	width: 22%;
}

.table_detail .detail_comment {
	width: 22%;
}

.table_detail .detail_action {
	width: 8%;
}

.table_detail .detail_sp_no {
	width: 10%;
	text-align: center;
}

.table_detail .detail_sp_driver_comment {
	width:78%
}

.table_detail .detail_sp_driver_comment .detail_sp_fromto {
	width: 100%;
	padding: 5px 0 5px 0;
}

.table_detail .detail_sp_driver_comment .detail_sp_driver {
	width: 100%;
	font-size: 12px;
	padding: 5px;
	border: solid 1px #ccc;
	border-radius: 5px;
}

.table_detail .detail_sp_driver_comment .detail_sp_comment {
	width: 100%;
}

.table_detail .detail_sp_action {
	width:10%
}

.table_detail .detail_action .d_btn {
	margin: 2px;
	padding: 0px;
	background-color: #ddeeff;
	width: 20px;
	height: 20px;
	display: inline-block;
	border: solid 1px #ccc;
	text-align: center;
	font-size: 16px;
}

.table_detail .detail_sp_action .d_btn {
	margin: 2px;
	padding: 0px;
	background-color: #ddeeff;
	width: 20px;
	height: 20px;
	display: inline-block;
	border: solid 1px #ccc;
	text-align: center;
	font-size: 16px;
}

.indexall_popup {
	position: fixed;
	top: 0;
	left: 0;
	display: none;
 	/*display: table;*/
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, .3);
	z-index: 9999;
}

.table_alloc_sch {
	width: 100%;
	overflow: hidden;
	/*word-break: break-all;*/
	border-collapse: collapse;
	/*word-wrap: break-word;*/
	margin-top: 10px;
	border-top: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
}

.table_alloc_sch .cell_topline {
	border-top: 1px solid #cccccc;
}

.table_alloc_sch .cell_leftline {
	border-left: 1px solid #cccccc;
}

.table_alloc_sch .cell_rightline {
	border-right: 1px solid #cccccc;
}

.table_alloc_sch .cell_bottomline {
	border-bottom: 1px solid #cccccc;
}

.table_alloc_sch th {
	width: auto;
	margin: 0 auto;
	border: none;
	text-align: center;
	padding: 6px 8px 5px;
	overflow: hidden;
	color: inherit; /*rgba(0,10,2,1);*/
	font-weight: bold;
	font-size: 12px;
	/*word-break: break-all;
	word-wrap: break-word;*/
	background-color: rgba(234,235,249,0.5);
}

.table_alloc_sch td {
	padding: 10px;
	text-align: left;
	vertical-align: middle;
	color: inherit; /*rgba(0,10,2,1);*/
	overflow: hidden;
	/*word-break: break-all;
	word-wrap: break-word;*/
	font-size: 12px;
	line-height:1.3em;
}

.table_alloc_sch .red_str_day {
	color: #ff4500;
}

@media screen and (min-width:600px) and ( max-width:959px) {
	/* タブレットに適用したいスタイル */
	.sp_table {
		display: none;
	}
	.pc_table {
		display: block;
	}
	.table_sch {
		width: 100%;
	}
	.table_sch th {
		font-size: 14px;
		text-align: center;
		vertical-align: middle;
		display: table-cell;
	}
	.table_sch td {
		padding: 10px;
		width: 12%;
		font-size: 12px;
		display: table-cell;
	}
}
@media screen and (min-width:960px) and ( max-width:1280px) {
	/* 通常のデスクトップに適用したいスタイル */
	.sp_table {
		display: none;
	}
	.pc_table {
		display: block;
	}
	.table_sch {
		width: 100%;
	}
	.table_sch th {
		font-size: 14px;
		text-align: center;
		vertical-align: middle;
		display: table-cell;
	}
	.table_sch td {
		padding: 10px;
		width: 12%;
		font-size: 12px;
		display: table-cell;
	}
}
@media screen and (min-width:1281px) {
	/* 横幅の広いデスクトップに適用したいスタイル */
	.sp_table {
		display: none;
	}
	.pc_table {
		display: block;
	}
	.table_sch {
		width: 100%;
	}
	.table_sch th {
		font-size: 14px;
		text-align: center;
		vertical-align: middle;
		display: table-cell;
	}
	.table_sch td {
		padding: 10px;
		width: 12%;
		font-size: 12px;
		display: table-cell;
	}
}

/* entry table
-------------------------------------------------- */

.entable_ent {
	width: 100%;
	overflow: hidden;
	word-break: break-all;
	border-collapse: collapse;
	word-wrap: break-word;
	margin-top: 10px;

}

.entable_ent tr {
	border: 1px solid #cccccc;
}

.entable_ent th {
	width: auto;
	margin: 0 auto;
	border: none;
	text-align: center;
	padding: 6px 8px 5px;
	overflow: hidden;
	color: inherit; /*rgba(0,10,2,1);*/
	font-weight: bold;
	font-size: 16px;
	word-break: break-all;
	word-wrap: break-word;
	display: list-item;
	background-color: rgba(234,235,236,1);
}

.entable_ent td{
	width: auto;
	padding: 10px;
	text-align: left;
	vertical-align: middle;
	color: inherit; /*rgba(0,10,2,1);*/
	border: none;
	overflow: hidden;
	word-break: break-all;
	word-wrap: break-word;
	font-size: 16px;
	line-height:1.3em;
	display: list-item;
	background-color: rgba(255,255,255,1);
}

/* 上はスマホに適用するスタイルを書く */
@media screen and (min-width:600px) and ( max-width:959px) {
	/* タブレットに適用したいスタイル */
	.entable_ent {
		width: 100%;
	}
	.entable_ent th {
		font-size: 14px;
		text-align: center;
		vertical-align: middle;
		display: table-cell;
	}
	.entable_ent td {
		padding: 10px;
		width: 70%;
		border-left: 1px solid #cccccc;
		font-size: 14px;
		display: table-cell;
	}
}
@media screen and (min-width:960px) and ( max-width:1280px) {
	/* 通常のデスクトップに適用したいスタイル */
	.entable_ent {
		width: 100%;
	}
	.entable_ent th {
		font-size: 14px;
		text-align: center;
		vertical-align: middle;
		display: table-cell;
	}
	.entable_ent td {
		padding: 10px;
		width: 70%;
		border-left: 1px solid #cccccc;
		font-size: 14px;
		display: table-cell;
	}
}
@media screen and (min-width:1281px) {
	/* 横幅の広いデスクトップに適用したいスタイル */
	.entable_ent {
		width: 100%;
	}
	.entable_ent th {
		font-size: 14px;
		text-align: center;
		vertical-align: middle;
		display: table-cell;
	}
	.entable_ent td {
		padding: 10px;
		width: 70%;
		border-left: 1px solid #cccccc;
		font-size: 14px;
		display: table-cell;
	}
}

/* blog画面
-------------------------------------------------- */
.mntblog {
	width: 90%;
	margin: auto;
	padding: 80px 0 100px 0;
}

.mntblog #must {
	-webkit-border-radius: 4px;
	border-radius: 4px;
	font-style: normal;
	font-size: 81.25%;
	color: #FFF;
	background-color: rgba(118,158,196,1);
	padding: 1px 3px;
	font-weight: normal;
}

.mntblog .image_size {
	width: 100%;
}

.mntblog .blog_image_attr_wrapper {
	padding: 30px 0 0 0;
}

.mntblog .blog_image_wrapper {
	padding: 0 15px 30px 15px;
}

.mntblog select {
	display: block;
	color: inherit; /*rgba(0,10,2,1);*/
	font-size: 16px;
	padding: 0 8px;
	margin: 3px 0 12px 0;
	width: 100%;
	height: 40px;
	border: none;
	border-radius: 4px;
	border: 1px solid #cccccc;
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	appearance: none;
	background-image: url('../images/select.png');
	background-repeat: no-repeat;
	background-size: 8px 6px;
	background-position: 96% 50%;
	background-color: #ffffff;
}

.mntblog .entryLineInput_size16 {
	width: 100%;
	margin: 2px 0 12px 0;
	padding: 3px 5px;
    font-size: 16px;
	color: inherit; /*rgba(0,10,2,1);*/
	border-radius: 4px;
	border: 1px solid #cccccc;
	display: inline-block;
	text-decoration: none;
	vertical-align: middle;
	border-radius: 3px;
}

.mntblog .entryTextarea {
	width: 100%;
    font-size: 16px;
	resize: none;
	height: 10em;
	margin: 3px 0;
	padding: 3px 5px;
	color: inherit; /*rgba(0,10,2,1);*/
	border-radius: 4px;
	border: 1px solid #cccccc;
	border-radius: 3px;
}

.mntblog .mnt.onebtnarea {
	padding: 30px 0 30px 0;
}

.mntblog .mnt.btnarea input.submit {
	padding-top:8px;
}

.mntblog .sp {
	display: block;
}

.mntblog .pc {
	display: none;
}

/* 上はスマホに適用するスタイルを書く */
@media screen and (min-width:600px) and ( max-width:959px) {
	/* タブレットに適用したいスタイル */
	.mntblog {
		width: 90%;
		margin: auto;
	}
	.mntblog .sp {
		display: none;
	}
	.mntblog .pc {
		display: block;
	}
}
@media screen and (min-width:960px) and ( max-width:1280px) {
	/* 通常のデスクトップに適用したいスタイル */
	.mntblog {
		width: 80%;
		margin: auto;
	}
	.mntblog .sp {
		display: none;
	}
	.mntblog .pc {
		display: block;
	}
}
@media screen and (min-width:1281px) {
	/* 横幅の広いデスクトップに適用したいスタイル */
	.mntblog {
		width: 70%;
		margin: auto;
	}
	.mntblog .sp {
		display: none;
	}
	.mntblog .pc {
		display: block;
	}
}

/* checkbox_input
-------------------------------------------------- */
.chk_input{
	display:none;
}
.chk_block{
	width:150px;
	position:relative;
	clear:both;
	/*margin:0 auto 25px;*/
	/*margin-top: 20px;*/
	float: left;
}
.chk_rank_block{
	width:180px;
	position:relative;
	clear:both;
	/*margin:0 auto 25px;*/
	/*margin-top: 20px;*/
	float: left;
}
.chk_span{
	text-transform:uppercase;
	font-weight:bold;
	letter-spacing:1px;
	font-size:15px;
	float:right;
	width:80px;
	margin:5px 0 0;
}
.chk_label{
	width:60px;
	height:30px;
	box-sizing:border-box;
	border:3px solid #ccc;
	background:#ccc;
	float:left;
	border-radius:100px;
	position:relative;
	cursor:pointer;
	transition:.3s ease;
}
input[name=sche_checkbox]:checked + .chk_label{
  background:#55e868;
  border-color:#55e868;
}
input[name=sche_checkbox]:checked + .chk_label:before{
  left:30px;
}
.chk_label:before{
	transition:.3s ease;
	content:'';
	width:20px;
	height:20px;
	position:absolute;
	background:white;
	left:2px;
	top:2px;
	box-sizing:border-box;
	border:none;
	color:black;
	border-radius:100px;
}
/* 上はスマホに適用するスタイルを書く */
@media screen and (min-width:600px) and ( max-width:959px) {
	/* タブレットに適用したいスタイル */
	.chk_block{
		width:220px;
	}
	.chk_span{
		width:150px;
	}
}
@media screen and (min-width:960px) and ( max-width:1280px) {
	/* 通常のデスクトップに適用したいスタイル */
	.chk_block{
		width:220px;
	}
	.chk_span{
		width:150px;
	}
}
@media screen and (min-width:1281px) {
	/* 横幅の広いデスクトップに適用したいスタイル */
	.chk_block{
		width:220px;
	}
	.chk_span{
		width:150px;
	}
}

/* raio buttun
-------------------------------------------------- */
label {
  	display: block;
}

input[type="radio"] {
  	appearance: none;
  	display: none;
  	opacity: 0;
  	width: 1px;
  	position: absolute;
  	height: 1px;
}

input[type="radio"] + span {
	position: relative;
  	display: inline-block;
  	vertical-align: middle;
  	cursor: pointer;
  	padding: 10px 11px 8px 36px;
  	border-radius: 4px;
  	font-weight: 500;
  	font-size: 14px;
}

input[type="radio"] + span::before,
input[type="radio"] + span::after {
  	position: absolute;
  	content: "";
  	display: block;
  	border-radius: 50%;
  	top: 0;
  	bottom: 0;
  	margin: auto 10px auto 0;
  	box-sizing: border-box;
}

input[type="radio"] + span::before {
  	width: 20px;
  	height: 20px;
  	background: #fff;
  	border: 2px solid #999999;
  	left: 9px;
}

input[type="radio"] + span::after {
  	width: 10px;
  	height: 10px;
  	background: #999999;
  	left: 14px;
  	opacity: 0;
}

input[type="radio"]:checked + span::before {
  	border: 2px solid #55e868;
}

input[type="radio"]:checked + span::after {
  	background: #55e868;
  	opacity: 1;
}


/* 　アップロードフォーム
-------------------------------------------------- */
.wrapper .upload {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	display: none;	/* flexで指定する　*/
	justify-content: center;
    align-items: center;
	background-color: rgba(0, 0, 0, .3);
	z-index: 999;
}

.wrapper .upload .inner {
	width: 95%;
	height: 95%;
	padding: 40px 20px 20px 20px;
	background-color: #ffffff;
	border-radius: 10px;
	z-index: 1000;
}

.wrapper .upload .inner .inner_in {
	overflow:auto;
	margin: auto;
	width: 95%;
	height: 95%;
	/*padding: 20px 10px 20px 10px;*/
	background-color: #ffffff;
	z-index: 1001;
}

.wrapper .upload .txt {
	margin: 0 0 20px;
	font-size: 14px;
	line-height: 1.5em;
	border: none;
}

.wrapper .upload .txt strong {
	display: block;
	margin: 0 0 10px;
	padding: 0 0 10px;
	font-size: 18px;
	text-align: center;
	border-bottom: 1px solid #cccccc;
}

.wrapper .upload .id {
	margin: 0 0 20px;
	text-align: center;
	font-size: 20px;
}

.wrapper .upload .id strong {
	font-weight: 700;
}

.wrapper .upload textarea {
	width: 100%;
	height: 8.5em;
	font-size: 16px;
}

.wrapper .upload input {
	display: block;
	margin-top: 10px;
	padding: 8px 0;
	width: 49%;
	font-size: 16px;
	font-weight: 600;
	color: #ffffff;
	border-radius: 4px;
	border: none;
}

.wrapper .upload .upload_image_box {
	text-align:center;
	width: 100%;
	margin-top: 10px;
	margin-bottom: 10px;
}

.wrapper .upload input.submit {
	float: left;
	background-color: #5f0000;
}

.wrapper .upload input.close {
	margin: auto;
	background-color: #5f0000;
}

.wrapper .upload input.cancel {
	float: right;
	background-color: #777777;
}

.wrapper .upload .closebtn {
	position: absolute;
	right: 10px;
	top: 10px;
	z-index: 1001;
	/*background-color: #5f0000;
	border-radius: 50%;*/
}

.wrapper .upload .closebtn .inner_popup_close {
	display: block;
	width: 30px;
	height: 30px;
	text-align: center;
	vertical-align: top
}

.wrapper .upload .checkbox_input {
	display: none;
}
.wrapper .upload .checkbox_parts {
  	padding-left: 20px;
  	position:relative;
  	margin-right: 20px;
	font-size: 14px;
}
.wrapper .upload .checkbox_parts::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 15px;
	height: 15px;
	border: 1px solid #999;
	border-radius: 4px;
}
.wrapper .upload .checkbox_input:checked + .checkbox_parts {
  	color: #009a9a;
}
.wrapper .upload .checkbox_input:checked + .checkbox_parts::after {
	content: "";
	display: block;
	position: absolute;
	top: -5px;
	left: 5px;
	width: 7px;
	height: 14px;
	transform: rotate(40deg);
	border-bottom: 3px solid #009a9a;
	border-right: 3px solid #009a9a;
}

/* 上はスマホに適用するスタイルを書く */
@media (max-width:844px) {
	/* タブレットに適用したいスタイル */
	.wrapper .upload .inner {
		width: 95%;
		height: 95%;
	}
}
@media screen and (min-width:845px) and (max-width:1133px) {
/*@media screen and (min-width:816px) and (max-width:900px) {*/
	/* タブレットに適用したいスタイル */
	.wrapper .upload .inner {
		width: 80%;
		height: 90%;
	}å
}
@media screen and (min-width:1134px) {
	/* 横幅の広いデスクトップに適用したいスタイル */
	.wrapper .upload .inner {
		width: 80%;
		height: 90%;
	}
}
