@charset "utf-8";
/* html
------------------------------------------------------------ */
html {
	font-size : medium;
	letter-spacing : 0.2em;
	font-family: "メイリオ",sans-serif;
}
/* body
------------------------------------------------------------ */
body {
	color : #0A463C;
	background-color : #FFFFFF;
	-webkit-text-size-adjust: 100%;
}
/* header
------------------------------------------------------------ */
header#header {
	color : #FFFFFF;
	background-color : #0A463C;
}
header#header div.title {
	font-size : 1.5rem;
	text-align : center;
	-webkit-box-flex:1;
	-moz-box-flex:1;
	-o-box-flex:1;
	-ms-box-flex:1;
	box-flex:1;
	-webkit-box-ordinal-group:1;
	-moz-box-ordinal-group:1;
	-o-box-ordinal-group:1;
	-ms-box-ordinal-group:1;
	box-ordinal-group:1;
}
header#header div.title a {
	color : #FFFFFF;
	text-decoration : none;
}
/* main
------------------------------------------------------------ */
div#main {
	background-color : #FFFFFF;
}
div#main article {
	width : 100%;
}
div#main article section {
	padding-bottom : 10px;
}
div#main article section a {
	color : #E45149;
}
/* main -> article -> h2
------------------------------------------------------------ */
div#main article section h2 {
	font-size: 1.2rem;
	padding : 3px 5px 3px 10px;
	margin : 10px;
}
div#main article section li {
	width : 100%;
	padding : 5px;
	border-bottom : solid 1px #053F5C;
}
div#main article section li:first-child {
	border-top : solid 1px #053F5C;
}
/* main -> article ->  section -> table
------------------------------------------------------------ */
div#main article section table {
	width : 100%;
	margin-left : 0px;
	margin-bottom : 0px;
	border-collapse: collapse;
	font-size : 0.8rem;
	line-height : 25px;
}
div#main article section table th {
	padding : 5px;
	color : #FFFFFF;
	background-color : #259086;
	border : solid 1px #0A463C;
}
div#main article section table td {
	padding : 5px;
	border : solid 1px #0A463C;
}
div#main article section#regist table th#tag {
	width : 100px;
}

div#main article section table.calendar {
	width : 100%;
}
div#main article section table.calendar th {
	width : calc(100% / 7);
}
div#main article section table.calendar td {
	Vertical-align: text-top;
}
div#main article section table.calendar td.today {
	background-color : #B6D2DD;
}
div#main article section table.calendar td.sunday {
	background-color : #E45149;
}
div#main article section table.calendar td.sunday a {
	color : #FCEEC7;
}
div#main article section table.calendar td.saturday {
	background-color : #FCEEC7;
}
div#main article section table.calendar div.panel {
	line-height: 1rem;
}
/*
-------------------------------------------------------------*/
@media screen and (orientation: landscape) {
	div#main article section div.list {
		width : 100%;
		border-bottom : solid 1px #053F5C;
		background-color : #B6D2DD;
		position: relative;
	}
	div#main article section div.list span.run {
		width : 230px;
		display : inline-block;
		text-align: center;
		position: absolute;
		top: 50%;
		transform: translate(0, -50%);
	}
	div#main article section div.list span.run span.set {
		font-size : 0.6rem;
		padding : 5px;
		letter-spacing: 1px;
		display : block;
	}
	div#main article section div.list span.task {
		width : calc(100% - 240px);
		display : inline-block;
		background-color : #FFFFFF;
		margin-left : 230px;
		padding-left : 10px;
	}
	div#main article section div.list span.task a.task {
		width : 100%;
		color : #0A463C;
		text-decoration : none;
		display : block;
	}
}
@media screen and (orientation: portrait) {
	div#main article section div.list {
		width : 100%;
		background-color : #B6D2DD;
	}
	div#main article section div.list span.run  {
		width : 100%;
		font-size : 0.8rem;
		padding : 5px;
		display : block;
	}
	div#main article section div.list span.run span.set {
		display : none;
	}
	div#main article section div.list span.task {
		width : calc(100%-30px);
		display : block;
		padding : 10px;
		background-color : #FFFFFF;
	}
	div#main article section div.list span.task a.task {
		width : 100%;
		padding : 5px;
		color : #0A463C;
		text-decoration : none;
		display : block;
	}
}
/*
-------------------------------------------------------------*/
label, input[type='checkbox'] {
    cursor: pointer;
    display : inline-block;
	margin-right : 10px;
}

label {
    padding: 10px;
}
/*
-------------------------------------------------------------*/

div#main article section span.er {
	width : 100%;
	display : block;
	padding : 20px 0;
	color : #E45149;
	font-size: 1.2rem;
	text-align : center;
}
div#main article section p.attention {
	font-size: 1.1rem;
	color : red;
	padding : 5px;
	text-align : center;
	padding : 10px;
	letter-spacing : 5px;
}
/*
-------------------------------------------------------------*/
div#main article section form input {
	color : #0A463C;
	border: solid 1px #053F5C;
	background : none;
	font-size: 1.0rem;
	padding : 10px 5px;
}

div#main article section form input#email ,
div#main article section form input#subject {
	width : 100%;
	border : none;
}

// project label
div#main article section form input.subject {
	width : 50%;
}


div#main article section form textarea#message {
	padding : 5px;
	width : 100%;
	height : 500px;
	font-size: 1.0rem;
	border : none;
	background : none;
}

div#main article section form input.submit {
	color : #FFFFFF;
	background : #0A463C;
	width : 100%;
	padding : 10px;
	margin : 10px 0;
	border: solid 1px;
	letter-spacing : 3px;
}
div#main article section form input.submit:hover {
	color : #0A463C;
	background-color:#0A463C;
}

/* main -> article -> section#login
------------------------------------------------------------ */
div#main article section#login {
  display: flex;
  justify-content: center;
  align-items: center;
  height : calc(80vh - 120px);
}
div#main article section#login form {
	margin : auto;
}
div#main article section#login form h2 {
	margin-bottom : 30px;
}
div#main article section#login form div {
	padding-left : 50px;
	line-height : 4;
}
div#main article section#login form div span {
	width : 60px;
	display : inline-block;
}
div#main article section#login form input {
	padding : 5px;
	width : 260px;
	letter-spacing : 3px;
	border-radius: 5px;
	border: 1px solid #006666;
	background : none;
	-webkit-appearance:none;
}
div#main article section#login form div.submit {
	width : 100%;
	padding : 0;
	text-align: center;
	align-items : center;
}
div#main article section#login form input.submit {
	color : #FFFFFF;
	background : #0A463C;
	width : 220px;
	padding : 20px;
	margin-top : 50px;
	letter-spacing : 5px;
}
div#main article section#login form input.submit:hover {
	color : #0A463C;
	background-color:#259086;
}
/* --------------------------- */
div#side {
	background-color : #259086;
}
div#side aside {
	width : 100%;
	height : auto;
}
div#side aside li {
	font-size: 1.0rem;
	letter-spacing : 5px;
	width : 100%;
	height : auto;
	border-bottom : solid 1px #0A463C;
}
div#side aside li a {
	color : #FFFFFF;
	width : 100%;
	display : block;
	padding : 15px;
	word-break : break-all;
	box-sizing : border-box;
}
div#side aside li a:hover,
div#side aside li.this a {
	color : #0A463C;
	background-color:#B6D2DD;
}
footer#footer {
	background-color : #F1F1F1;
}