@charset "utf-8";

html{
	background-color:#fffded;
	background-size:425px;
	width:100%;
	height:100%;
}





#wraps{
	z-index: -1000 !important;
	position:fixed;
	display: inline;
}



@media screen and (max-width: 640px) {
	html{
		background-color:#fffded;
		width:100%;
		height:100%;
	}

	

}




#wrap{
	width: 100%;
}

.left{float: left;}
.right{float: right;}

a{
/* 	-webkit-transition: all 0.1s;
    transition: all 0.1s; */
    color:#231815;
    text-decoration:underline;
/*     text-transform:uppercase; */
}

a:hover{

}


/* =========================================================
about
========================================================= */
#content{
	text-align:left;
}

section{margin-bottom:100px;}

#trailer{
	width:100%;
	height:800px;
	display:table;
	margin-bottom:200px;
}

#trailer section{
	display:table-cell;
	vertical-align:middle;
	color: #666;
}
#trailer h1{
	margin:auto;
	vertical-align:middle;
	display:inline-block;
	font-size:4em;
	line-height:1.1em;
}

#trailer p{
	font-size:1.9em;
	font-weight:bold;
	line-height:1.5em;
}



#trailer .arrow{
	position:absolute;
	bottom:30px;
	left:0;
	right:0;
	font-weight:bold;
}
#trailer .arrow dt{
	margin-bottom:5px;
}

header{
	height: 696px;
	width:100%;
	text-align:center;
	margin-bottom:100px;
	background:url(../img/bg.png) no-repeat bottom right 30px;
	background-size:606px;
}

header h2{
	display: block;
	position:absolute;
	left:30px;
}

header h2 img{
	height:132px;

}

nav{
	position:relative;
	left:90px;
	top:150px !important;
	text-align:left;
	width:100%;

}


nav li{
	margin:15px 0;
}

nav li img{
	height:56px;
}

header p{
	position:absolute;
	bottom:300px;
	width:100%;
}


@media screen and (max-width: 640px) {


	#content{
		text-align:left;
	}

	section{margin-bottom:100px;}


	header{
		height: 1100px;
		width:100%;
		text-align:center;
		margin-bottom:150px;
		position:relative;
		background:url(../img/bg.png) no-repeat bottom 20px center;
		background-size:614px;

	}

	header h2{
		display: block;
		position:relative;
		left:0px;
		top:30px !important;
	}
	
	header h2 img{
		height:156px;
	}


	nav{
		position:absolute;
		/*bottom:0px !important;*/
		top:auto !important;
		text-align:right;
		width:auto;
		left:25%;
	}


	nav li{
		margin:15px 0;
	}

	nav li img{
		height:66px;
	}

	header p{
		position:absolute;
		bottom:100px;
		width:100%;
	}



}



@keyframes fade-in {
      0% {
        display: none;
        opacity: 0;
      }
      1% {
        display: block;
        opacity: 0;
      }
      100% {
        display: block;
        opacity: 1;
      }
    }

    @-moz-keyframes fade-in {
      0% {
        display: none;
        opacity: 0;
      }
      1% {
        display: block;
        opacity: 0;
      }
      100% {
        display: block;
        opacity: 1;
      }
    }

    @-webkit-keyframes fade-in {
      0% {
        display: none;
        opacity: 0;
      }
      1% {
        display: block;
        opacity: 0;
      }
      100% {
        display: block;
        opacity: 1;
      }
    }


h2{
	margin-bottom:50px;
}

#about{
	display:block;
	text-align:left;
}

#about .eng{
	font-weight:bold;
	font-size:32px;
	line-height:1.4em;
	letter-spacing:0.05em;
	margin-bottom:50px;
}
#about .copy{
	font-size:18px;
	line-height:1.7em;
	letter-spacing:0.05em;
	margin-bottom:40px;
}
#about .copy span{
	font-size:14px;
	margin-left:-0.5em;
}

#about .copy strong{
	line-height:0.7em;
}


#about .date{
	font-weight:bold;
	font-size:28px;
	line-height:1.4em;
	letter-spacing:0.05em;
	margin-bottom:50px;
}

#about .date dl{
	width:580px;
}

#about .date dt{
	display:inline-block;
	width:200px;
}
#about .date dd{
	display:inline-block;
}


#about .date p{
	font-size:14px;
	margin-left:-0.5em;
	position: relative;
	top: -5px;
	font-weight:normal;
	letter-spacing:0.02em;
}



#about .first .visitor .eng{
	font-weight: bold;
	font-size: 18px;
	line-height: 1.8em;
	letter-spacing: 0.08em;
	margin-bottom: 2.5em;
}

#about .visitor .invitation{
	font-weight: bold;
	font-size: 32px;
	letter-spacing: 0.05em;
}


#map_canvas{
	width:100%;
	height:500px;
	margin-bottom:60px;

}


#about .place{
	width:100%;
	box-sizing: border-box;
	
}

#about .place a{
	font-weight:bold;
}

#about .place .placeBox{
	margin-bottom:63px;
	margin-right:45px;
	float:left;
	vertical-align:top;
	width:340px;
	height:auto;
}

#about .place .placeBox.first-child{
	/*height:350px;*/
	width:400px;
}

@media screen and (max-width: 1274px) {

	#about .place .placeBox.first-child{
		/*height:800px;*/
	}
}	


@media all and (-webkit-min-device-pixel-ratio:0) and (min-resolution: .001dpcm) {

	#about .place .placeBox{
		margin-bottom:63px;
		margin-right:40px;
		float:left;
		vertical-align:top;
		width:340px;
	}
}

@-moz-document url-prefix() {
	
	#about .place .placeBox{
		margin-bottom:63px;
		margin-right:40px;
		float:left;
		vertical-align:top;
		width:340px;
	}
	
}


#about .place .num{
	font-weight:bold;
	font-size:30px;
	margin-bottom:20px;
	line-height:1.1em;
}

#about .place .num img{
	height:28px;
}

#about .place .num span{
	font-weight:bold;
	font-size:18px;
	margin-bottom:20px;
}

#about .place .address{
	margin-bottom:20px;
}

#about .place .notice{
	font-size:11px;
	line-height:2.0em;
	letter-spacing:0.05em;
	margin-top:3px;
}


#about .place dd{
	letter-spacing:0.05em;
	line-height:1.6em;
	font-size:14px;
}

#about .place dd span{font-weight:bold;}

#about .place dt h3{
	font-weight:bold;
	font-size:26px;
	letter-spacing:0.04em;
	margin-bottom:12px;
}

#about .place dt.jp h3{
	font-weight:bold;
	margin-top:-5px;
	margin-bottom:6px;
	font-size:22px;
	line-height:1.5em;
}


#about .first, #about .place,
#exhibitor,footer{
	padding:30px;
}

#about .first{
	padding-bottom:90px;
}

#about .first img{
	height:48px;
}


@media screen and (max-width: 640px) {

	h2{
		margin-bottom:34px;
	}

	#about{
		display:block;
		text-align:left;
	}

	#about .eng{
		font-weight:bold;
		font-size:30px;
		line-height:1.5em;
		letter-spacing:0.02em;
		margin-bottom:60px;
	}
	#about .copy{
		font-size:18px;
		line-height:1.5em;
		letter-spacing:0.05em;
		margin-bottom:50px;
	}
	#about .copy span{
		font-size: 22px;
		margin-left:-0.5em;
	}

	#about .date{
		font-weight:bold;
		font-size:36px;
		line-height:1.4em;
		letter-spacing:0.01em;
		margin-bottom:30px;
	}

	#about .date dl{
		width:580px;
	}

	#about .date dt{
		display:inline-block;
		width:270px;
	}
	#about .date dd{
		display:inline-block;
	}


	#about .date p{
		font-size:22px;
		margin-left:-0.5em;
		position: relative;
		top: -0px;
		font-weight:normal;
		letter-spacing:0.02em;
	}

	#map_canvas{
		width:100%;
		height:350px;
		margin-bottom:1em;

	}

	#about .place{
		width:580px;
	}

	#about .place a{
		font-weight:bold;
	}

	#about .place .placeBox{
		margin-bottom:60px;
		margin-right:0;
		float:left;
		vertical-align:top;
		width:580px;
		height:auto;
	}

	#about .place .placeBox.first-child{
		height:auto;
		width:580px;
	}
	#about .place dl,
	#about .place dt,#about .place dd{
		width:580px;
	}
	#about .place .num{
		font-weight:bold;
		margin-bottom:1em;
		line-height:0.6em;
	}

	#about .place .num img{
		height:42px;
	}

	#about .place .num span{
		font-weight:normal;
		margin-bottom:1em;
		position:relative;
		top:14px;
		font-size:21px;
	}

	#about .place .address{
		margin-bottom:2em;
		width:100%;
	}

	#about .place .notice{
		line-height:2.0em;
	}


	#about .place dd{
		letter-spacing:0.05em;
		line-height:1.5;
		font-size:15px;
	}

	#about .place dd span{font-weight:bold;}

	#about .place dt h3{
		font-weight:bold;
		letter-spacing:0.08em;
		margin-bottom:0.75em;
		font-size:30px;
	}



	#about .first, #about .place,
	#exhibitor, #visitor,footer{
		padding:30px;
	}




}









#exhibitor{	
	width:100%;
	box-sizing:border-box;
	padding:120px 30px;

}
#exhibitor h2 img{
	height:48px;
}

#exhibitor ul{word-wrap: break-word;}

#exhibitor li{
	display:inline;
	font-size:32px;
	font-weight:bold;
	line-height:1.6em;
	word-wrap: break-word;
	letter-spacing:0.01em;
	color:#fffffa;
}

#exhibitor li a{
	color:#fffffa;
}
#exhibitor li a:hover{
	color:#fff;
	text-decoration:none;
	
}



#exhibitor li:after{
	content:",";
	margin-right:5px;
	hyphen:auto;
}
#exhibitor li.last-child:after{
	content:"";
	margin-right:0px;

}

#exhibitor li a{text-transform:none;}


#visitor{
}

#visitor .eng{
	font-weight:bold;
	font-size:18px;
	line-height:1.8em;
	letter-spacing:0.08em;
	margin-bottom:2.5em;
}
#visitor .copy{
	font-size:1.2em;
	line-height:1.8em;
	letter-spacing:0.05em;
	margin-bottom:1.8em;
}

#visitor .invitation{
	font-weight:bold;
	font-size:32px;
	letter-spacing:0.05em;
}

footer{
	font-size:0.9em;
	letter-spacing:0.05em;
	padding-bottom: 30px;
	/*padding-top: 420px;*/
}
footer a {font-weight:bold;}

footer p.jp{
	margin-bottom:1.5em;
}
footer p.eng{
	font-weight:bold;
}


@media screen and (max-width: 640px) {

	#visitor{

	}

	#visitor .eng{
		font-weight:bold;
		font-size:0.8em;
		line-height:1.5em;
		letter-spacing:0.08em;
		margin-bottom:2.5em;
	}
	#visitor .copy{
		font-size:0.9em;
		line-height:1.8em;
		letter-spacing:0.05em;
		margin-bottom:1.8em;
	}

	#visitor .invitation{
		font-weight:bold;
		font-size:1.6em;
		letter-spacing:0.1em;
		line-height:1.8em;
	}

	footer{
		font-size:12px;
		letter-spacing:0.05em;
	}
	footer a {font-weight:bold;}

	footer p.jp{
		margin-bottom:1.5em;
		line-height:1.8em;
	}
	footer p.eng{
		font-weight:bold;
		line-height:1.5em;
	}

	br.pcOnly{
		display:none;
		}



}


#loader{
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1000;
}