@charset "utf-8";
/* header
------------------------------------------------------------ */
header#header div.title {
	color : #ffffff;
	font-size : 1.5rem;
	text-align : center;
	padding : 8px 0;
	-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 -> article 
------------------------------------------------------------ */
div#main article {
	width : 100%;
	height : auto;
	padding : 20px 15px;
	letter-spacing : 3px;
}
/* main -> article -> h1
------------------------------------------------------------ */
div#main article h1 {
	font-size: 1.1rem;
	border-left : solid 10px #006666;
	border-bottom : solid 2px #006666;
	padding : 5px 10px;
	margin-bottom : 20px;
}
div#main article h1 a {
	color : #ffffff;
	text-decoration : none;
}
/* main -> article -> section
------------------------------------------------------------ */
div#main article section {
//	padding-bottom : 20px;
/*	min-width : 450px; */
}
/* main
------------------------------------------------------------ */
a {
	color : #006666;
}
div#main article section a {
	color : #006666;
}
------------------------------------------------------------ */
/* main -> article -> h2
------------------------------------------------------------ */
div#main article section h2 {
	font-size: 1.0rem;
	background-color : #beeddd;
	border-left : solid 10px #006666;
	padding : 3px 5px 3px 10px;
	margin-left : 0px;
	margin-bottom : 0px;
}
div#main article section h2 a {
	color : #ffffff;
	text-decoration : none;
}

/* main -> article -> section -> p
------------------------------------------------------------ */
div#main article section p {
	padding-left : 35px;
	padding-bottom : 10px;
}
/* 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;
	background-color : #beeddd;
	border : solid 1px #669999;
}
div#main article section table td {
	padding : 5px;
	border : solid 1px #669999;
}
div#main article section table td.run {
	text-align: center;
}
div#main article section#list table th#run {
	width : 230px;
}
div#main article section#list table td div.sub {
	color : #666666;
	font-size : 0.6rem;
	padding : 5px;
	line-height: 1rem;
	letter-spacing: 1px;
}
div#main article section#list .title {
	color : #000000;
	font-weight: bold;
	padding : 5px;
	display: block
}
div#main article section#list table td div.tag {
	color : #666666;
	font-size : 0.6rem;
	line-height: 1rem;
	letter-spacing: 2px;
}
div#main article section#regist table th#tag {
	width : 100px;
}
/* main -> article ->  section -> ol 
------------------------------------------------------------ */
div#main article  section ol {
	padding-left : 40px;
	padding-bottom : 30px;
}
div#main article  section ol li {
	list-style-type: decimal;
	list-style-position: outside;
}
/* main -> article ->  section -> ul
------------------------------------------------------------ */
div#main article  section ul {
	padding-left : 40px;
	padding-bottom : 30px;
}
div#main article  section ul li {
	list-style-type: square;
	list-style-position: outside;
}

/*
-------------------------------------------------------------*/

div#main article section span.er {
	width : 100%;
	display : block;
	padding : 20px 0;
	color : #cb0e00;
	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 : #333333;
	padding : 5px;
	letter-spacing : 1px;
	border: solid 1px;
	background : none;
}

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

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;
	letter-spacing : 1px;
	border: solid 1px;
	border : none;
	background : none;
}

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

/* 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 {
/*	min-width : 450px; */
	margin : auto;
}
div#main article section#login form h2 {
	margin-bottom : 50px;
}
div#main article section#login form div {
	padding-left : 50px;
	line-height : 4;
}
div#main article section#login form div span {
	width : 120px;
	display : inline-block;
}
div#main article section#login form div div.btn {
	width : 100%;
	padding : 0;
	text-align : center;
	margin-top : 50px;
}
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#side aside {
	width : 100%;
	height : auto;
}

div#side aside li {
	width : 100%;
	height : auto;
	border-bottom : solid 1px #006666;
}

div#side aside li:first-child {
	border-top : solid 1px #006666;
}

div#side aside li a {
	color : #ffffff;
	width : 100%;
	display : block;
	padding : 15px 15px;
	word-break : break-all;
	box-sizing : border-box;
}
div#side aside li.this a {
	color : #551a8b;
	background-color:#ccffff;
}
div#side aside li a:hover {
	color : #551a8b;
	background-color:#ccffff;
}

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 : #f5f5dc;
}
div#main article section table.calendar td.sunday {
	background-color : #ffe4e1;
}
div#main article section table.calendar td.saturday {
	background-color : #e0ffff;
}
div#main article section table.calendar div.panel {
	line-height: 1rem;
}

label, input[type='checkbox'] {
    cursor: pointer;
    display : inline-block;
	margin-right : 10px;
}

label {
    padding: 10px;
}