/*
 * 共通のスタイル
 */

@import url('jquery-ui-1.12.1/jquery-ui.min.css');
@import url('jquery-ui-1.12.1/jquery-ui.theme.min.css');
@import url('common-ui.css');

* {
	box-sizing: border-box;
}
.for-dialog {
	display: none;
}
html {
	font-family: "M PLUS Rounded 1c";
}
div {
	font-size: 13px;
}
input {
	border: solid 0.5px #a9a9a9;
}
a {
	color: #666;
	text-decoration: none;
}
a:hover {
	color: #000;
	background: #ddd;
}
a:visited {
	text-decoration: none;
}
.align-center {
	text-align: center;
}
button:hover {
	cursor: pointer;
}
button:disabled:hover {
	cursor: not-allowed;
}
button:disaNbled {
	color: #bbb;
}
.pull-right {
	float: right !important;
}
.caution {
	color: red !important;
	font-weight: 100 !important;
}
@media screen and (max-width:599px) { /* スマフォ用 */
	body {margin: 0px;}
	header.common-header {width: 100%;}
	footer.common-footer {width: 100%;}
	.content {
		width: 100%;
		min-height: 564px;
	}
	.top-page.content {width: 98%; margin: 1%}
	.page-title h2 {width: 100%;}
	.entry-area {width: 100%;}
	.item-input input {height: 32px;}
	.completed-message {width: 80%;}
}
@media screen and (min-width:600px) { /* ＰＣ用 */
	header.common-header {width: 540px;}
	body.top-page header.common-header {width: 680px;}
	footer.common-footer {width: 540px;}
	body.top-page footer.common-footer {width: 680px;}
	.content {width: 500px;}
	.top-page.content {width: 680px;}
	.page-title h2 {width: 500px;}
	.entry-area {
		width: 440px;
	    margin: 0px 24px;
	    padding: 12px;
	}
	.completed-message {width: 450px;}
}
header.common-header {
	height: 40px;
	display: table-cell;
	vertical-align: middle;
/*	border: 1px solid #eee; */
}
header.common-header a.site-name {
	display:inline-block;
	padding: 12px 8px;
	color: #6eaae5;
	font-family: 'Nico Moji';
}
header.common-header img.nya {
	width: 32px;
	height: 32px;
	vertical-align: middle;
}
header.common-header span.now {
	font-size: 12px;
}
@media screen and (max-width:599px) { /* スマフォ用 */
	header.common-header img.burger,header.common-header img.menu-close {
		margin: 4px 8px;
		width: 32px;
		height: 32px;
		vertical-align: middle;
		float: right;
	}
	header.common-header nav.menu-area {
		position: fixed;
		height: auto;
		width: 360px;
		top: 0px;
		padding-bottom: 80px;
		z-index: 10000;
		background: #fff;
		box-shadow: 0 10px 25px 0 rgba(0, 0, 0, .5);
	}
	header.common-header nav.menu-area {
		right: -360px;
		transition: all 300ms 0s ease;
	}
	header.common-header nav.menu-area.active {
		right: 0px;
		transition: all 300ms 0s ease;
	}
	header.common-header .sp-menu-area-top {
		height: 40px;
	}
	header.common-header nav.menu-area ul.menu {
		display: block;
		list-style: none;
		margin: 0;
		padding: 0 8px;
		width: 100%;
	}
	header.common-header nav.menu-area ul.menu li {
		margin: 2px;
		padding: 2 4px;
		text-align: right;
		font-size: 20px;
		line-height: 32px;
		background: #fff;
	}
	header.common-header nav.menu-area ul.menu li.divider {
		height: 1px;
		border-top: solid 1px #ccc;
	}
}
@media screen and (min-width:600px) { /* ＰＣ用 */
	header.common-header nav.menu-area {
	}
	header.common-header .sp-menu-area-top {
		display: none;
	}
	header.common-header img.burger,header.common-header img.menu-close {
		display: none;
	}
	header.common-header nav.menu-area ul.menu {
		list-style: none;
		margin: 0;
		padding: 8px;
	}
	header.common-header nav.menu-area ul.menu li {
		display: inline-block;
		margin: 0;
		padding: 0 4px;
		font-size: 12px;
	}
	header.common-header nav.menu-area ul.menu li.divider:before {
		content: '|';
	}
}
footer.common-footer {
	margin-top: 12px;
/*	border: 1px solid #eee; */
	text-align:center;
	color: #ccc;
	font-size: 13px;
}
footer.common-footer a {
	color: #ccc;
}
footer.common-footer a:hover {
	color: #000;
}
.page-title h2 {
	font-size: 20px;
	font-family: "Nico Moji";
	border-bottom: solid 1px #024857;
	color: #024857;
	padding: 0 20px;	
}
@media screen and (max-width:599px) { /* スマフォ用 */
	.notice-content {
		width: auto;
	}
}

@media screen and (min-width:600px) { /* ＰＣ用 */
	.notice-content {
		width: 420px;
	}
}
.notice-content {
	text-align: left;
	margin-bottom: 2px;

}
.notice-content .more-link {
	font-size: 10px;
}
.border {
	border: 1px solid black;
}
.top-page-title h2 {
	font-size: 14px;
	font-family: "Nico Moji";
	color: #024857;
	padding: 0 10px;
	margin: 2px;	
}
.notice-content table.notice-list .notice-date,.notice-content table.notice-list .title {
	font-size: 10px;
}
.notice-content table.notice-list td {
	padding: 0 10px;
}
.page-title .supplement {
	padding: 0 20px;
}
.page-message {
	display: none;
}
.page-message.has-error,.page-message.alert {
	color: #F44336;
	padding: 0 20px;
	display: block;
}
.required-mark {
	color: #F44336;
}
.entry-item {
	margin :4px 0;
}
.item-name {
	font-size: 18px;
	font-family: "Nico Moji";
	color: #024857;
}
.item-name.required:after {
	content:'※';
	color: #F44336;
}
.item-message {
	display: none;
}
.has-error .item-message {
	display: block;
	color: #F44336;
}
.has-error input,.has-error select,.has-error textarea,.has-error .agreement {
	background: #FFF0F5;
}
.item-input input[type='text'],.item-input input[type='password'] {
	width: 100%;
	margin-bottom: 4px;
}
.item-input input.date-field {
	width: 140px;
	background-image: url('../images/calendar-icon.png');
	background-repeat: no-repeat;
/*	background-position: right; */
    background-position: 120px 1px;
}
.item-input input.date-field:after {


}
.item-input input.time-field {
	width: 60px;
	margin-left: 20px;
	margin-right: 12px;
}
.item-input.agreement {
	text-align: center;
	margin: 24px 0;
}
.agreement-discription {
	text-align: center;
	padding: 24px 0 0 0;	
}
.item-input input[type="checkbox"] {
	width: auto;
}
.item-input select {
	margin-bottom: 2px;
	padding-bottom: 4px;
}
.item-input textarea {
	width: 100%;
	height: 10em;
}
.item-input label {
	display: block;
}
.item-input a {
	text-decoration: underline dotted;
}
.item-desc {
	color: #444;
	font-size: 12px;
}
.item-desc div {
	display: inline-block;
}
.item-conf {
	font-size: 14px;
	padding: 2px 4px; 
	margin-bottom: 4px;
	background-color: #D5EDF3;
}
.item-conf label {
	display: block;
}
.item-conf div {
    min-height: 19.3px;
}
.completed-message {
	background-color: #D5EDF3;
	text-align: center;
	padding: 10px 10px;
	margin: 20px 40px;
}
.top-page-area {
	display: inline-block;
	vertical-align: top;
}
table {
	border-collapse: collapse;/*隙間をなくす*/
	border: 1px solid black;
}
table th, table td {
	border: solid 1px black;
	text-align: left;
}
table th {/*table内のthに対して*/
	font-family: "Nico Moji";
	color: #024857;
	font-size: 16px;
	background: #D5EDF3;
	padding: 6px;/*上下左右6pxずつ*/
}
table td {/*table内のtdに対して*/
 	padding: 3px 10px;/*上下3pxで左右10px*/
}
th.schedule-list, th.past-schedule-list {
	border-left: 0;
	border-right:0;
}
th.past-schedule-list {
	text-align: right;
}
.cell-sunday {
	color: #F44336;
}
.cell-holiday {
	color: #F44336;
}
sup.holiday-name {
	font-size: 0.7em;
	color: #F44336;
}
.cell-saturday {
	color: #0000cd;
}
.schedule {
	color:#000000;
	font-size: 12px;
}
table.calendar {
	table-layout: fixed;
	border: 1px solid black;
}
@media screen and (max-width:599px) { /* スマフォ用 */
	table.calendar {
		width: 100%;
	}
}
@media screen and (min-width:600px) { /* ＰＣ用 */
	table.calendar {
		width: 800px;
	}
}
table.calendar tr.day-name th {
	padding: 2px 0 0 0;
}
table.calendar th { 
	text-align:center;
}
table.calendar th.month,table.calendar th.nav {
	border-left: 0;
	border-right:0;
}
table.calendar th.nav {
	cursor: pointer;
}
table.calendar td {
	padding: 0px 4px;
	vertical-align: top;
	cursor: pointer;
}
table.calendar td:hover {
	background: #eee;
}
table.calendar td .schedule {
	overflow: hidden;/*はみ出た部分を表示しない*/
	white-space: nowrap;/*折り返しなし*/
	background: #fff;
}
table.calendar td .schedule span.schedule {
	display: none;
}
table.calendar td .schedule span,#daily-schedule-dialog .schedule span {
	cursor: pointer;
}
#daily-schedule-dialog div.schedules-cell {
	border-top: solid 1px #ccc;
	border-left: solid 1px #ccc;
	border-right: solid 1px #ccc;
}
#daily-schedule-dialog div.schedule {
	border-bottom: solid 1px #ccc;
}
#daily-schedule-dialog div.schedule span {
	display: table-cell;
	padding: 2px;
}
#daily-schedule-dialog div.schedule span.schedule {
	width: 32px;
	border-right: solid 1px #ccc;
}
table.calendar td .schedules-cell {
	overflow-y: hidden; /*yはみ出た部分を表示しない*/
	height: 50;
	scroll-y: hidden;
}
.entry-button {
	text-align: center;
}
.entry-button a,.entry-button button {
	display: inline-block;
	border: solid 0.5px #a9a9a9;
	padding: 2px 8px;
	margin: 1px;
	text-decoration: none;
	color: #000000;
	background: #F5F5F5;
	font-family: "M PLUS Rounded 1c";
	font-size: 13px;
}
.entry-button a:disabled,.entry-button button:disabled {
	color: #bbb;
}
.entry-button a:hover,.entry-button button:enabled:hover {
	background: #DCDCDC;
}
.back-to-link,.link-to-add,.more-link {
	text-align: right;
}
.back-to-link button,.link-to-add button,.more-link button {
	font-size: 12px;
	font-family: "M PLUS Rounded 1c";
	text-decoration: none;
}
.content .search-result-list th {
	min-width: 70px;
	padding: 8px 12px;
	font-family: "M PLUS Rounded 1c";
	font-size: 13px;
	text-align: center;
}
.content .search-result-list th.sort_key {
	cursor: pointer;
}
@media screen and (max-width:599px) { /* スマフォ用 */
	.top-page-area {
		width: 100%;
	}
	.schedule-table {
		width: 100%;
		font-size: 12px;
	}
	.schedule-table td.schedule {
		width: 90px;
	}
	.schedule-table td.group {
		width: 100px;
	}
	.group-table {
		width: 100%;
		font-size: 12px;
	}
	.list-spacer {
		width: 50px;
	}
	.item-spacer {
		height: 20px;
	}
}
@media screen and (min-width:600px) { /* ＰＣ用 */
	.schedule-table {
		width: 420px;
		font-size: 12px;
	}
	.schedule-table td.schedule {
		width: 110px;
		padding: 4px
	}
	.schedule-table td.group {
		width: 100px;
	}
	.group-table {
		width: 200px;
		font-size: 12px;
	}
	.list-spacer {
		width: 50px;
	}
	.item-spacer {
		height: 20px;
	}
}

/* 一覧ページ用 */
nav.pagination {
}
nav.pagination ul {
	list-style: none;
}
nav.pagination ul li {
	display: inline-block;
	margin: 0;
	padding: 0;
}
nav.pagination ul a,nav.pagination ul span {
	display: table-cell;
	margin: 0;
	padding: 4px 12px;
	min-width: 12px;
	height: 32px;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	color: #444;
	border: 1px solid #ddd;
}
nav.pagination ul a:hover {
	cursor: pointer;
	background: #ddd;
}
table.notice-list {
	width: 100%;
	border: 0;
}
table.notice-list td {
	border: 0;
}
table.notice-list td.notice-date { 
	width: 100px;
	font-size: 12px;
}
table.notice-list td.title {
	font-size: 12px;
}
.page-title .title {
	font-size: 18px;
	width:360px;
	display: inline-block;
} 
.page-title .notice-date {
	font-size: 12px;
	width: 100px;
	display: inline-block;
}
.notice .page-title h2 {
	display: table-cell;
	vertical-align: bottom;	
}
.notice .description {
	padding: 10px;
}

/*
 * line関連
 */
button.line-button {
	display: inline-block;
	padding-left: 4px;
	padding-right: 5px;
	min-width: auto;
	background-color: #00B900;
	height: 30px;
	line-height: 30px;
	border-radius: 6px;
	font-family: Meiryo,HiraKakuProN-W3,"Arial Unicode MS",Arial,sans-serif,"Apple SD Gothic Neo";
	position: relative;
	color: #fff;
	font-size: 0;
	border: none;
}
button.line-button i {
	position: relative;
	left: 0;
	display: inline-block;
	width: 24px;
	height: 100%;
	margin-right: 4px;
	background: url(../images/line_v3.png) 0 4px no-repeat;
	    background-size: auto;
	background-size: 24px 22px;
	vertical-align: top;
	text-align: center;
}
button.line-button span.label {
	top: 0;
	white-space: nowrap;
	font-weight: 400;
	height: 100%;
	vertical-align: top;
	display: inline-block;
	position: relative;
}
button.line-button span.label span.lang {
	font-size: 11px;
	vertical-align: middle;
	letter-spacing: 0;
	font-weight: 100;
	white-space: nowrap;
	line-height: 30px;
	color: #fff;
}
