@charset "utf-8";

body,p,td,div,span,a {
	font-size: 13px;
}

body {
	background: #eee;
}
header {
	display: block;
	border-bottom: 1px solid #ccc;
	background: #FFE9A9;
}
header h1 {
	display: none;
}
header table {
	border-collapse:collapse;
	width: 1200px;
	background: #FFE9A9;
	margin: 0 auto;
}
header table th {
	width: 50%;
	padding: 0.5em 0;
	text-align: left;
}
header table td {
	width: 35%;
	padding: 0.5em 0;
	text-align: right;
}
header table td:last-child {
	width: 15%;
}
header table td span {
	color: #f00;
}

main {
	display: block;
	background: #fff;
	width: 1200px;
	margin: 0 auto;
	padding: 20px 0;
}

main > section {
	display: block;
	width: 1100px;
	margin: 0 auto;
}
main > section > h2 {
	display: block;
	margin: 1.0em auto;
	padding: 0.3em 0;
	background: #333;
	border-radius: 2.0em;
	color: #FFE9A9;
	text-align: center;
	font-weight: 600;
	font-size: 18px;
}
main.full {
	width: 100% !important;
}
main.full > section {
	width: 98% !important;
	margin: 0 1%;
}
main.popup {
	/*width: 100% !important;*/
	width: 650px;
}
main.popup > section {
	width: 98% !important;
	margin: 0 1%;
}
main.popup > section table {
	width: 620px;
}
main.popup > section table.table-form {
	border-collapse:collapse;
	width: 620px;
}
main.popup > section table.table-form th {
	background: #FFE9A9;
	border-bottom: 1px solid #fff;
	padding: 0.5em 1.0em;
}
main.popup > section table.table-form td {
	border-bottom: 1px solid #eee;
	padding: 0.5em;
}
main.popup > section table.table-form tr.submit td {
	border-bottom: 0;
}

main > section > h2 + p {
	padding: 0 1.0em;
}

main > section .table-list {
	border-collapse:collapse;
	width: 1080px;
	margin: 0 auto 40px;
}
main > section .table-list thead th {
	background: #FFE9A9;
	border-right: 1px solid #fff;
	padding: 0.5em;
}
main > section .table-list thead th:last-child {
	border-right: 0;
}
main > section .table-list tbody tr td {
	background: #FFFBEE;
	border-right: 1px solid #FFE9A9;
	padding: 0.5em;
}
main > section .table-list tbody tr:nth-child(2n) td {
	background: #fff;
}
main > section .table-list tbody tr.odd td {
	background: #FFFBEE;
}
main > section .table-list tbody tr.even td {
	background: #fff;
}
main > section .table-list tbody tr.out td,
main > section .table-list tbody tr.gray td {
	background: #e0e0e0;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
main > section .table-list tbody tr.pink td {
	background: #ff99cc;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
main > section .table-list tbody tr.white td {
	background: #fff;
}
main > section .table-list tbody tr td:last-child {
	border-right: 0;
}
main > section .table-list tbody tr td:last-child a {
	white-space: nowrap;
}
main > section .table-list tbody tr td > i {
	padding: 0 0.5em 0 0;
	color: #f00;
	font-style: normal;
	font-weight: 600;
}

.search {
	display: block;
	width: 1080px;
	margin: 0 auto;
}
.search table {
	border-collapse:collapse;
}
.search table th {
	background: #eee;
	border-bottom: 1px solid #fff;
	padding: 0.5em 1.0em;
}
.search table td {
	border-bottom: 1px solid #eee;
	padding: 0.5em;
}
.search table tr.submit td {
	border-bottom: 0;
}

.btn-s {
	display: block;
	width: 240px;
	margin: 20px auto;
	padding: 0.5em 0;
	font-size: 16px;
	border: 1px solid #EE7800;
	border-radius: 2.0em;
	color: #EE7800;
	cursor: pointer;
	font-weight: 600;
}
.btn-s-inline {
	display: inline-block;
	width: 240px;
	margin: 20px 10px;
	padding: 0.5em 0;
	font-size: 16px;
	border: 1px solid #EE7800;
	border-radius: 2.0em;
	color: #EE7800;
	cursor: pointer;
	font-weight: 600;
}
.btn-s-gray {
	display: block;
	width: 240px;
	margin: 20px auto;
	padding: 0.5em 0;
	font-size: 16px;
	border: 1px solid #ccc;
	border-radius: 2.0em;
	color: #ccc;
	cursor: pointer;
	font-weight: 600;
}
.btn-s-gray-inline {
	display: inline-block;
	width: 240px;
	margin: 20px 10px;
	padding: 0.5em 0;
	font-size: 16px;
	border: 1px solid #ccc;
	border-radius: 2.0em;
	color: #ccc;
	cursor: pointer;
	font-weight: 600;
}

.btn-s:hover,
.btn-s-inline:hover {
	background: #EE7800;
	color: #fff;
}
.btn-s-gray:hover,
.btn-s-gray-inline:hover {
	background: #ccc;
	color: #fff;
}
.search table td input[type="text"],
input[type="password"],
input[type="text"],
.search table td select,
select,
textarea,
input[type="file"] {
	font-size: 13px;
	border-radius: 0.3em;
	border: 1px solid #ccc;
}
input[type="password"],
input[type="text"],
textarea {
	/*width: 100%;*/
	width: 99%;
}
input[type="password"].w50,
input[type="text"].w50,
textarea.w50 {
	/*width: 100%;*/
	width: 49%;
}
input[type="password"].w30,
input[type="text"].w30,
textarea.w30 {
	/*width: 100%;*/
	width: 30%;
}
input[type="password"].w10,
input[type="text"].w10,
textarea.w10 {
	/*width: 100%;*/
	width: 10%;
}

.tx-blue {
	color: blue;
}
.tx-red {
	color: red;
}

.pagination {
	width: 100%;
	letter-spacing: -.4em;
	margin: 20px auto 10px;
	text-align: center;
}
.pagination tr th {
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	padding: 0 0.5%;
}
.pagination tr th a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 30px;
	height: 30px;
	background: #EE7800;
	color: #fff;
	border: 1px solid #EE7800;
	border-radius: 50%;
	text-decoration: none;
	font-weight: 600;
	font-size: 14px;
}
.pagination tr td {
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	padding: 0 0.5%;
}
.pagination tr td a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 30px;
	height: 30px;
	background: #fff;
	border: 1px solid #EE7800;
	border-radius: 50%;
	color: #EE7800;
	text-decoration: none;
	font-weight: 600;
	font-size: 14px;
}
.pagination tr td a:hover {
	background: #EE7800;
	color: #fff;
}
.pagination tr td a.prev,
.pagination tr td a.next {
	margin: 0;
}


/* TOP */
.top > nav {
	display: block;
}
.top > nav ul {
	display: block;
	letter-spacing: -.4em;
	width: 640px;
	margin: 40px auto;
	padding: 0;
	background: #fff;
}
.top > nav ul li {
	display: inline-block;
	letter-spacing: normal;
	width: 298px;
	padding: 0.5em 0;
	margin: 0;
	border: 1px solid #EE7800;
	border-radius: 2.0em;
	color: #EE7800;
	text-align: center;
	cursor: pointer;
	font-weight: 600;
	font-size: 16px;
}
.top > nav ul li.active {
	background: #EE7800;
	color: #fff;
}
.top > nav ul li:first-child {
	margin-right: 40px;
}

.tabbox {
	display: none;
	width: 1100px;
	margin: 0 auto;
}
.tabbox.select {
	display: block;
}
.tabbox section {
	display: block;
}
.tabbox section h2,
.tabbox section h3 {
	display: block;
	margin: 1.0em auto;
	padding: 0.3em 0;
	background: #FFE9A9;
	border-radius: 2.0em;
	color: #333;
	text-align: center;
	font-weight: 600;
	font-size: 18px;
}
.tabbox section.other h2 {
	background: #333;
	color: #FFE9A9;
}
.tabbox section.sch h2 {
	color: #fff;
}
.tabbox section.sch.day h2 {
	background: #FE0000;
}
.tabbox section.sch.week h2 {
	background: #00B2F1;
}
.tabbox section.sch.every_week h2 {
	background: #F27D00;
}
.tabbox section.sch.month h2 {
	background: #00AF52;
}
.tabbox section.sch.time h2 {
	background: #6F2FA1;
}
.tabbox section.sch.week,
.tabbox section.sch.every_week {
	width: 540px;
	display: inline-block;
}

.tabbox section table {
	border-collapse:collapse;
	width: 100%;
	margin-bottom: 40px;
}
.tabbox section table td {
	width: 33.3%;
	width: -webkit-calc(100%/3);
	width: -moz-calc(100%/3);
	width: calc(100%/3);
	vertical-align: top;
}
.tabbox section table td.image {
	background: url(../img/top/top-image.png) no-repeat 34px bottom;
	background-size: 200px auto;
}
.tabbox section ul {
	display: block;
	letter-spacing: -.4em;
	margin: 0;
	padding: 0;
	list-style: none;
}
.tabbox section ul li {
	display: inline-block;
	letter-spacing: normal;
	margin: 0;
	padding: 0;
	list-style-type: none;
	width: 32%;
}
.tabbox section ul li:nth-child(3n-1) {
	margin: 0 2%;
}

dl dt > a {
	font-weight: 600;
	font-size: 13px;
}
dl dt > i {
	display: inline-block;
	background: #FFE9A9;
	color: 333;
	padding: 0 0.5em;
	margin-bottom: 0.5em;
	font-style: normal;
	font-size: 12px;
}
dl.icon dt {
	margin-left: 0;
}
dl.icon dt a {
	padding-left: 5px;
}

dl.icon dt span {
	color: #fff;
	border-radius: 50%;
	padding: 8px 13px 13px 13px;
	width: 39px;
	height: 39px;
	margin-left: 10px;
	box-sizing: border-box;
	display: inline-block;
	font-size: 13px;
	vertical-align: middle;
}
dl.icon dt span.red {
	background: #fe0000;
}
dl.icon dt span.green {
	background: #00af52;
}
dl.icon dt span.purple {
	background: #6f2fa1;
}
dl.icon dt span.light_blue {
	background: #00b2f1;
	padding: 10px 9px;
	font-size: 13px;
}
dl.icon dt a.pl-20 {
	padding-left: 20px;
}
dl.icon dd {
	padding-left: 34px;
}

/*
a.ma_btn {
	text-decoration: none;
	margin-left: 13px;
}
dt a + a span.manual {
	color: #e37e26;
	border: 2px #e37e26 solid;
	padding: 2px;
	font-weight: bold;
	font-size: 10px;
	letter-spacing: -1px;
	border-radius: 0;
	display: initial;
	margin-left: -18px;
}
*/

.position_out {
	position: relative;
}
span.position01 {
	position: absolute;
	left: -40px;
}


/* マニュアル */
.manual nav {
	display: block;
}
.manual nav ul {
	display: block;
	letter-spacing: -.4em;
	width: 1080px;
	margin: 0px auto 5px;
	padding: 0;
	background: #fff;
}
.manual nav ul li {
	display: inline-block;
	letter-spacing: normal;
	width: 200px;
	margin: 0 20px 0 0;
}
.manual nav ul li:last-child {
	margin-right: 0;
}
.manual nav ul li a {
	display: block;
	padding: 0.5em 0;
	margin: 0;
	border: 1px solid #EE7800;
	border-radius: 2.0em;
	text-decoration: none;
	color: #EE7800;
	text-align: center;
	font-weight: 600;
	font-size: 14px;
}
.manual nav ul li a.on,
.manual nav ul li a:hover {
	background: #EE7800;
	color: #fff;
}

/* 保護者（園児）情報 */
.kids-info {
	border-collapse:collapse;
	width: 1080px;
	margin: 0 auto;
}
.kids-info th {
	width: 75%;
	text-align: left;
	vertical-align: bottom;
}
.kids-info th div {
	display: inline-block;
	border: 2px solid #666;
	padding: 0.5em 1.0em;
	font-size: 16px;
	font-weight: 600;
}
.kids-info td {
	width: 25%;
}
.kids-info td ul {
	display: block;
}
.kids-info td ul li {
	display: block;
}
.kids-info td ul li a {
	display: block;
	padding: 0.5em 0;
	border: 1px solid #EE7800;
	border-radius: 2.0em;
	font-size: 13px;
	text-align: center;
	text-decoration: none;
	color: #EE7800;
	font-weight: 600;
}
.kids-info td ul li a:hover {
	background: #EE7800;
	color: #fff;
}


/* 本日の登園状況一覧 */
.attendance h3 {
	width: 1060px;
	padding: 10px;
	margin-left: 10px;
	background: #e0e0e0;
}
.attendance h3.admission {
	background: #FFE9A9;
}
.attendance p {
	margin-left: 20px;
}
.attendance nav {
	display: block;
}
.attendance nav ul {
	display: block;
	letter-spacing: -.4em;
	width: 1080px;
	margin: 20px auto;
	padding: 0;
	background: #fff;
}
.attendance nav ul.nav_center {
	text-align: center;
}
.attendance nav ul.nav_right {
	text-align: right;
}
.attendance nav ul.nav_right li {
	width: 250px;
}
.attendance nav ul li {
	display: inline-block;
	letter-spacing: normal;
	width: 200px;
	margin: 0 20px 0 0;
}
.attendance nav ul li:last-child {
	margin-right: 0;
}
.attendance nav ul li a {
	display: block;
	padding: 0.5em 0;
	margin: 0;
	border: 1px solid #EE7800;
	border-radius: 2.0em;
	text-decoration: none;
	color: #EE7800;
	text-align: center;
	font-weight: 600;
	font-size: 13px;
}
.attendance nav ul li a.on,
.attendance nav ul li a:hover {
	background: #EE7800;
	color: #fff;
}
main.attendance  > section .table-list tbody tr td.child_zero {
	text-align: center;
	color: #fff;
	background: #FE0000;
}
main.attendance  > section .table-list tbody tr td.child_one {
	text-align: center;
	color: #fff;
	background: #00B2F1;
}
main.attendance  > section .table-list tbody tr td.child_two {
	text-align: center;
	color: #fff;
	background: #00AF52;
}


/* 園児 保育料一覧 */
.sales-info {
	border-collapse:collapse;
	width: 1080px;
	margin: 0 auto;
}
.sales-info th {
	width: 75%;
	text-align: left;
	vertical-align: bottom;
}
.sales-info th div {
	display: inline-block;
	border: 2px solid #666;
	padding: 0.5em 1.0em;
	font-size: 16px;
	font-weight: 600;
}
.sales-info td {
	width: 25%;
}
.sales-info td ul {
	display: block;
}
.sales-info td ul li {
	display: block;
}
.sales-info td ul li a {
	display: block;
	padding: 0.5em 0;
	border: 1px solid #EE7800;
	border-radius: 2.0em;
	font-size: 16px;
	text-align: center;
	text-decoration: none;
	color: #EE7800;
	font-weight: 600;
}
.sales-info td ul li a:hover {
	background: #EE7800;
	color: #fff;
}

.search-btn,
.kids .search table tr.submit td input[type="submit"],
.kids .search table tr.submit td input[type="button"],
.sales .search table tr.submit td input[type="submit"],
.sales .search table tr.submit td input[type="button"] {
    width: 120px;
    margin: 0;
    border: 1px solid #007BA1;
    color: #007BA1;
    font-size: 13px;
    border-radius: 5px;
    padding: 2px 5px;
    font-weight: bold;
}
.search-btn:hover,
.kids .search table tr.submit td input[type="submit"]:hover,
.kids .search table tr.submit td input[type="button"]:hover,
.sales .search table tr.submit td input[type="submit"]:hover,
.sales .search table tr.submit td input[type="button"]:hover {
    background-color: #007BA1;
    border-color: #00B5ED;
    color: #FFF;
}

.sales .search form {
	margin-bottom: 20px;
}
.sales .search .table-list {
	width: 100%;
	word-break: break-all;
	word-wrap: break-all;
	margin-top: 20px;
}
.sales .search .table-list thead th {
	padding: 0;
}
.sales .search .table-list thead th.vivid {
	background: #ffd56f;
}

/* 社員情報 */
.staff-info {
	border-collapse:collapse;
	width: 1080px;
	margin: 0 auto;
}
.staff-info th {
	width: 75%;
	text-align: left;
	vertical-align: bottom;
	padding-bottom: 20px;
}
.staff-info th div {
	display: inline-block;
	border: 2px solid #666;
	padding: 0.5em 1.0em;
	font-size: 16px;
	font-weight: 600;
}
.staff-info td {
	width: 25%;
}
.staff-info td ul {
	display: block;
}
.staff-info td ul li {
	display: block;
}
.staff-info td ul li a {
	display: block;
	padding: 0.5em 0;
	border: 1px solid #EE7800;
	border-radius: 2.0em;
	font-size: 16px;
	text-align: center;
	text-decoration: none;
	color: #EE7800;
	font-weight: 600;
}
.staff-info td ul li a:hover {
	background: #EE7800;
	color: #fff;
}

.staff .table-list tbody tr td span {
	color: #fff;
	border-radius: 50%;
	padding: 1px 7px 7px 5px;
	width: 20px;
	height: 20px;
	margin-right: 10px;
	box-sizing: border-box;
	display: inline-block;
	font-size: 12px;
	vertical-align: middle;
}
.staff .table-list tbody tr td span.red {
	background: #fe0000;
}
.staff .table-list tbody tr td span.green {
	background: #00af52;
}
.staff .table-list tbody tr td span.purple {
	background: #6f2fa1;
}
.staff .table-list tbody tr td span.light_blue {
	background: #00b2f1;
}


/* 栄養士シフト登録 */
.nutritionist h3 {
	width: 1060px;
	padding: 10px;
	margin-left: 10px;
	background: #e0e0e0;
}
.nutritionist h3.admission {
	background: #FFE9A9;
}
.nutritionist p {
	margin-left: 20px;
}
.nutritionist nav {
	display: block;
}
.nutritionist nav ul {
	display: block;
	letter-spacing: -.4em;
	/* width: 1080px; */
	margin: 20px auto;
	padding: 0;
	background: #fff;
}
.nutritionist nav ul.nav_center {
	text-align: center;
}
.nutritionist nav ul.nav_right {
	text-align: right;
}
.nutritionist nav ul.nav_right li {
	width: 250px;
}
.nutritionist nav ul li {
	display: inline-block;
	letter-spacing: normal;
	width: 200px;
	margin: 0 20px 0 0;
}
.nutritionist nav ul li:last-child {
	margin-right: 0;
}
.nutritionist nav ul li a {
	display: block;
	padding: 0.5em 0;
	margin: 0;
	border: 1px solid #EE7800;
	border-radius: 2.0em;
	text-decoration: none;
	color: #EE7800;
	text-align: center;
	font-weight: 600;
	font-size: 16px;
}
.nutritionist nav ul li a.on,
.nutritionist nav ul li a:hover {
	background: #EE7800;
	color: #fff;
}
.nutritionist div ul {
	text-align: right;
	list-style: none;
	madgin:0 20px 10px 0;
}
.nutritionist div ul li {
	margin:0 20px 10px 0;
}
.nutritionist div ul li a {
	display: inline-block;
	width: 200px;
	text-align: center;
	text-decoration: none;
	border: 1px solid #ccc;
	padding: 5px;
	cursor: pointer;
}
.nutritionist div ul li a.half {
	width:85px;
	margin-left: 10px;
}


.nutritionist .reflect {
	text-align: right;
	madgin:0 20px 10px 0;
}
.nutritionist .reflect a {
	display: inline-block;
	width: 200px;
	text-align: center;
	text-decoration: none;
	border: 1px solid #ccc;
	padding: 5px;
	cursor: pointer;
}
.nutritionist .reflect a.half {
	width:85px;
}


.nutritionist .month_pagination {
	float: left;
}
.nutritionist .month_pagination h3 {
	display: inline-block;
	width:100px;
	background: none;
}
.nutritionist .table-list {
	clear: both;
	width: 100%;
	word-break: break-all;
	word-wrap: break-all;
}
.nutritionist .table-list thead th {
	width: 3%;
	padding: 0;
}
.nutritionist .table-list thead th.sat {
	background: #98e0f9;
}
.nutritionist .table-list thead th.sun {
	background: #ffb2b2;
}
.nutritionist .table-list tbody td {
	padding: 0.5em;
}

/* シフト登録 */
#shift-table {
	border: 0 !important;
}
#shift-table th {
	background: #FFE9A9 !important;
	color: #333 !important;
	/*border-right: 1px solid #fff !important;*/
	text-align: center !important;
}
#shift-table th a {
	color: #333 !important;
}
#shift-table tr:first-child th:last-child {
	/*border-right: 0 !important;*/
}
#shift-table td {
	/*border-right: 1px solid #FFE9A9 !important;*/
}
#shift-table td:last-child {
	/*border-right: 0 !important;*/
}

/* シフト登録 */
#attendance-list {
    border: 0 !important;
}
#attendance-list th {
    background: #FFE9A9 !important;
    color: #333 !important;
    /*border-right: 1px solid #fff !important;*/
    text-align: center !important;
}
#attendance-list th a {
    color: #333 !important;
}
#attendance-list tr:first-child th:last-child {
    /*border-right: 0 !important;*/
}
#attendance-list td {
    /*border-right: 1px solid #FFE9A9 !important;*/
}
#attendance-list td:last-child {
    /*border-right: 0 !important;*/
}


.info-box {
	margin: 2em 0;
	background: #f1f1f1;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.info-box .info-box-title {
	font-size: 1.2em;
	background: #5fc2f5;
	padding: 4px;
	text-align: center;
	color: #FFF;
	font-weight: bold;
	letter-spacing: 0.05em;
}
.info-box p {
	padding: 15px 20px;
	margin: 0;
}

main.login {
	margin: 30px auto 0;
	width: 100% !important;
}
main.login > section {
	width: 450px !important;
}
main.login form{
	width: 300px;
	margin: 30px auto;
	padding: 20px;
	border: 1px solid #ccc;
}

main.login form .h2 {
	text-align: center;
}

main.login form .id,
main.login form .pass{
	margin-bottom: 10px;
}

main.login form input[type="text"],
main.login form input[type="password"] {
	width: 290px !important;
	padding: 4px !important;
	font-size: 14px !important;
}
main.login form .submit{
	text-align: right;
}
