* {
	margin : 0;
	padding : 0;
	box-sizing : border-box;
}

body {
	color:#123;
	background-color: rgba(245,220,135,1.0);
}

#container {
	max-width : 960px;
	background-color : #fff;
	margin : 1em auto;
	margin-bottom : 5em;
	box-shadow : 0 3px 10px 0 #9E9E9E;
	border-radius : 10px;
	border : 2px solid #fff;
}


#footer {
	clear : both;
	padding : 1em 0;
	background-color: rgba(250,190,0,1.0);
	border-top : 2px solid #ccc;
	color : #FFFFFF;
	border-bottom-left-radius : 10px;
	border-bottom-right-radius : 10px;
	font-weight : normal;
	text-align : center
}

img {
	border : none;
	outline : none;
}

a { color:#039; text-decoration : none; }
a:hover { color:#136; text-decoration : none; }



/* タイトル設定 */
h1 {
	display : block;
	width : 100%;
	padding-bottom : 37.5%;
	background-image :url('../image/topimg.jpg');
	background-repeat : no-repeat;
	background-size : cover;
	border-top-left-radius : 10px;
	border-top-right-radius : 10px;
}

h1 span { display : none; }


/* コメント設定 */
.comment {
	display : block;
	margin : 2em auto;
	padding : 1em;
	width : 80%;
	border : solid 1px rgba(0,0,0,0.5);
}

.comment p { margin-bottom : 1em; }


@media screen and (max-width : 500px) {  /* max-width 500px */

	.comment { width : 90%; }

}/* max-width 500px */



/* 概要設定 */
.outline {
	display : block;
	margin : 2em auto;
	margin-bottom : 0;
	padding : 0;
	width : 80%;
	overflow : auto;
	border : solid 0px rgba(0,0,0,1.0);
}

	.outline:after { display : block; content : ""; clear : both; }

.outline h2 {
	margin-bottom : 2em;
	overflow : auto;
}

.outline h2:last-child { margin-bottom : 0.8em; }

.outline h2 span {
	display : block;
	width : calc(100% - 5em);
	font-size : 1em;
	float :left;
	border : solid 0px rgba(0,0,0,1.0);
}

	.outline h2:last-child span { width : calc(100% - 6em); }

.outline h2 span:first-child { width : 5em; text-align : right; }
	.outline h2:last-child span:first-child { width : 6em; text-align : right; }


.outline h2 span:first-child:after { content : "："; }

	.outline h2:nth-child(1) span:last-child { margin-left : 5em; }
	.outline h2:nth-child(2) span:last-child { margin-left : 5em; }


@media screen and (max-width : 500px) {  /* max-width 500px */

	.outline { width : 90%; }

	.outline h2:after { display : block; content : ""; clear : both; }

	.outline h2 span {
		margin : 0 auto !important;
		width :100% !important;
		float : none;
	}

	.outline h2 span:first-child {
		text-align:center !important;
		border-bottom : dotted 1px rgba(0,0,0,1.0);
		margin-bottom : 0.5em !important;
	}

	.outline h2 span:first-child:after { content : ""; }


}/* max-width 500px */




/* タイムライン設定 */
.timeline {
	display : block;
	margin : 2em auto;
	margin-bottom : 4em;
	padding : 0;
	width : 80%;
	overflow : auto;
	border : solid 0px rgba(0,0,0,1.0);
}

.timeline h2 span { padding : 0 1em; }

.timeline table { width : 93%; margin : 1em auto; }
.timeline table tr {}
.timeline table tr td { vertical-align : top; padding-bottom :1em; }
.timeline table tr td:nth-child(1) { width : 2.5em; }
.timeline table tr td:nth-child(2) { width : 8em; }

.timeline table tr td dl {}
.timeline table tr td dl dt { font-size : 1.35em; font-weight :900; }
.timeline table tr td dl dd { text-align : right;}

.timeline table tr:nth-child(2) td dl dd span:nth-child(1),
.timeline table tr:nth-child(3) td dl dd span:nth-child(1) { font-size : 0.9em; }

.timeline table tr td dl dd span:nth-last-child(2) {
	margin-left : 0.5em;
	margin-right : 0.5em;
	font-size: 1.3em;
	font-weight : 900;
}

.timeline p { width : 93%; margin : 0 auto; }

.timeline table tr td dl dd span:nth-child(1):after { white-space:pre; content:"\a"; }

@media screen and (max-width : 500px) {  /* max-width 500px */

	.timeline { width : 90%; }

	.timeline h2 {
		text-align : center !important;
		border-bottom : dotted 1px rgba(0,0,0,1.0);
		margin-bottom : 0.5em !important;
	}


	.timeline table tr td {
		width : 100%;
		margin : 0;
		padding : 0.5em;
		float : left;
	}

	.timeline table tr td:first-child { background-color : rgba(210,230,245,1.0); }
	.timeline table tr td:last-child { padding-bottom : 1em; }



}/* max-width 500px */




/* 主催・講演 */
.sponsored {
	display : block;
	margin : 2em auto;
	margin-top : 5em;
	margin-bottom : 3em;
	padding : 0;
	width : 80%;
	overflow : auto;
	border : solid 0px rgba(0,0,0,1.0);
}

.sponsored table { margin : 0 1em; }
.sponsored table tr {}
.sponsored table tr td { padding-bottom : 1em; vertical-align : top; font-size : 1em; }
.sponsored table tr td:nth-child(1) { width : 4em; }
.sponsored table tr td:nth-child(2) {  }

.sponsored tr td:last-child span { white-space:nowrap; }


@media screen and (max-width : 500px) {  /* max-width 500px */

	.sponsored { width : 90%; }

	.sponsored table tr td {
		display : block;
		width : 100%;
		float : left;
		font-size : 0.85em;
	}

	.sponsored table tr td span {
		display : block;
		width : 100%;
		float : left;
	}



}/* max-width 500px */



/* ボタン設定 */
.btn { margin-bottom :3em; }

.bo {
	text-align:center;
	width : 300px;
	display : block;
	color : #FFF;
	background-color: rgba(50,100,150,1.0);
	margin : 10px auto;
	padding : 15px 0 0 ;
	font-size : 17px;
	font-weight : normal;
	height : 60px;
	border : 2px #fff;
	border-radius : 5px;         /* CSS3 */
	-moz-border-radius : 5px;    /* Firefox */
	-webkit-border-radius : 5px; /* Safari,Chrome */
}

.btn p { text-align : center; }


.bo a {
	color:#FFF;
	text-decoration: none;
	border:2px #fff;
}

.bo:hover {
	background-color: #C46264;
	text-decoration: none;
	border:2px #fff;
}


/* ページトップ */
#page-top { position: fixed; bottom: 20px; right: 20px; }
#page-top a { display: block; background:url('pagetop.png') no-repeat; text-indent:100%; white-space:nowrap; overflow:hidden; width:60px; height:60px; filter: alpha(opacity=60); -moz-opacity:0.6; opacity:0.6; }
#page-top a:hover { filter: alpha(opacity=100); -moz-opacity:1; opacity:1; }


/* フッター */
#footer ul li {
	list-style-type : none;
	color : rgba(0,0,0,1.0);
	font-size : 0.9em;
}


