.-dev_hide{
	display: none;
}
.section_movie_small,section_movie_middle,section_movie_large{
	clear:both;
}
#menu_logo{
	visibility:hidden;
	height:0px;
}
#contents{
	left:0;
	right:0;
	margin:0 auto;
	overflow-x:hidden;
	overflow-y:auto;
}
.addthis_inline_share_toolbox{
	margin-top: 50px;
}
input,textarea{
   -webkit-appearance: none;
   border-radius: 0;
	padding:0.5em;
}
select{
   border-radius: 0;
}
.selected_icon{
	font-family:Arial, 'FontAwesome';
	font-size:0.9em;
	margin:0.2em 0.4em 0 0;
}

.link_button .selected_icon{
	font-family:Arial, 'FontAwesome';
	font-size:0.9em;
	margin:0.1em 0.4em 0 0;
	float:left;
}
.image_link .selected_icon{
/*	font-family:Arial;
*/	opacity:1;
	font-size:1.2em;
}

img{
	display: block !important;
}

hr{
	border-top:1px rgba(128,128,128,0.5) dashed;
	width:80%;
	margin:1.7em 10% 0.7em 10%;
	display:block;
}

hr.linehr{
	border-top:1px rgba(128,128,128,0.5) solid;
	width:20%;
	margin:1.4em 2%;
	padding:0%;
	display:inline-block;
	border-bottom:0px rgba(128,128,128,0.5) solid;
	border-left:0px rgba(128,128,128,0.5) solid;
	border-right:0px rgba(128,128,128,0.5) solid;
}
hr.section_line{
	margin:30px 10px 30px 10px;
}
section, article, header {
/*	display: block;
	float: left;
*/	width: 100%;
	margin:0px;
	position:relative;
}
section{
	overflow: hidden;
	
}

.modal_space{
	height:0px;
	display:none;
}

article{
	position: absolute;
}
div#opening_cont{
	position:absolute;
	top:0px;
	z-index: -100;

	max-height:400px;
}

#preload_opening_images{
	visibility:hidden;
}

#preview_div{
	width:100%;
	height:100%;
}
#preview_mode{
	position:fixed;
	background:#000;
	color:#fff;
	left:50%;
	margin-left: -60px;
	right:10px;
	width:120px;
	z-index:10000;
	font-size:12pt;
	text-align:center;
	padding:10px 5px 5px 5px;
}
#preview span{
	margin-top:20px;
	width:auto;
}
#preview_mode a{
	font-size:18pt;
	float:right;
	margin-top:-5px;
}

#opening{
	position: fixed;
	padding: 0px;
	top:0px;
	width:100%;
/*	background: url('../images/back1.jpg') 50% 50% no-repeat fixed;
	background-position:center center;
	background-size: cover;
	vertical-align:middle;
*/
}
#opening #opening_images_count{
	display:none;

}
.logo_back{
	background:#fff;
	opacity:0.55;
	width:80%;
	margin:auto auto;
	height:75%;
	position:absolute;
	top:-15px;/*0%;*/
	left:10%;
	z-index: 1;
/*
	background:#000;
	opacity:0.7;
	width:90%;
	margin:auto auto;
	height:65%;
	position:absolute;
	top:10%;
	left:5%;
	z-index: 1;
*/	
}
#msg{
	position:absolute;
/*	top:-5000px;
*/	left:0;
	right:0;
	margin:auto;
	width: 100%;
	background:rgba(255,255,255,0.0);
	display:none;
	z-index: 2;
}
#msg p{
	position:relative;
	width:100%;
	text-align: center;
}
.msg1{
/*	color:#fff;
*/	position:relative;
	text-align:center;
	display:inline;
	font-weight:200;
	letter-spacing: 0.2em;
	line-height: 1.1em;
	display:none;
	font-size: 3em;
}
.msg2{
	position:relative;
	text-align:center;
	display:inline;
	font-weight:100;
	letter-spacing: 0.2em;
	line-height: 1.1em;
	display:none;
	font-size: 3em;
}
.msg3{
	position:relative;
/*	color:#fff;
*/	line-height: 1.2em;
	width:90%;
	text-align:center;
	display:none;
	font-weight: 200 !important;
	letter-spacing: -0.0em;
	opacity:0;
	margin-top:50px;
	font-size: 2em;
	display:none;
}

.section_movie{
	width:100%;
	height:100%;
}

#opening_logo{
	position:absolute;
	top:20%;
	width:100%;
	text-align:center;
	opacity:0;
	z-index: 2;
}
#logo_image{
	margin:0px auto;
	min-width: 100px;
	max-width:300px;
}

.logo_large{
	width:30%;
	margin:0px auto;
}

#scroll_arrow_container{
	position:absolute;
	bottom:0px;
	padding-bottom:2%;
	text-align: center;
	width:100%;
}
#scroll_arrow{
	position:relative;
	bottom:0px;
	left:0;
	right:0;
	margin:0px auto;
	width:72px;
	text-align: center;
	opacity:0;
}	
	
.section_fff{
	width:100%;
	position:relative;
	z-index: 100;
	background: #fff;
	margin:0% 0px 0px 0px;
	padding:0px;
/*	margin:30% 0px 0px 0px;
	padding:100px 0px 50px 0px;*/
}
.section_transback{
	width:100%;
	position:relative;
	z-index: 100;
	margin:0% 0px 0px 0px;
/*	margin:30% 0px 0px 0px;
	padding:100px 0px 50px 0px;*/
}

.space_div{
	height:2.3em;
	margin:0px;
	padding:0px;
}
.upfade,.rightfade,.leftfade{
	transition: 0.8s;
}

.fade05{
	opacity: 0;
	transition: 1s;
	transition-delay:0.5s; 
}
.fade15{
	opacity: 0;
	transition: 1s;
	transition-delay:1.5s; 
}

.upfade,.downfade{
	transition-delay:0.3s; 
}
.fadein{
	opacity: 0;
}
.upfade{
	opacity: 0;
	transform: translate(0,60px); 
	-webkit-transform: translate(0,60px); 
}
.upfade_s{
	opacity: 0;
	transform: translate(0,20px); 
	-webkit-transform: translate(0,20px); 
}
.zoomfade,.downfade{
	transition: 1.5s;
	transition-delay:1.3s; 
}
.rightfade{
	opacity: 0;
	transform: translate(60px,0); 
	-webkit-transform: translate(60px,0); 
}
.leftfade{
	opacity: 0;
	transform: translate(-60px,0); 
	-webkit-transform: translate(-60px,0); 
}
.zoomfade{
	opacity: 0;
	transform: scale(0.5, 0.5);
	-webkit-transform: scale(0.5, 0.5);
}

.wipefade{
	transition: 1s;
	transform:scale(0.0,1.0);
	-webkit-transform: scale(0.0, 1.0);
}

.downfade{
	opacity: 0;
	transition: 1.5s;
	transition-delay:1.3s; 
	transform: translate(0,-60px); 
}
.moveto{
	opacity: 1.0;
	transform: translate(0,0); 
	-webkit-transform: translate(0,0);
	transform: scale(1, 1);
	-webkit-transform: scale(1, 1);
}



h1 {
	font-size: 36px;
	font-weight: 100;
/*	font-weight: 200;
*/	text-align:left ;
   line-height: 1.7em;
	padding:1em;
}

.l_column{
	padding:4% 2%;
	width:46%;
	float:left;
}
.r_column{
	padding:4% 2%;
	width:46%;
	float:right;
}
h2 textarea {
	font-size: 30px;
	font-weight: 200;
/*	font-weight: 300;
*/	
	text-align: center;
	color:#000000;
	margin:0em;
	padding:5% 2% 4% 2%;
	position:relative;
	letter-spacing:-0.05em;
	left:0;
	right:0;
	line-height: 1.1em;
}

.largetext{
	font-size:1.4em;
}
.smalltext{
	font-size:0.7em;
}
p{
	line-height:1.7em;
}
li p{
	font-weight:300;
}

.title_align_{
	text-align:center;
}
.title_align_left{
	text-align:left;
}
.title_align_center{
	text-align:center;
}
.title_align_right{
	text-align:right;
}

.line_align_left{
}
.line_align_center{
	width:20%;
}
.line_align_right{
}

.h6div{
	margin:0px 0px 30px 10px;
	font-size: 14px;
	font-weight: 300;
	border-left:1px #666 solid;
	padding:1.7em 0px 0.2em 0.7em;
}
.remodal h3{
	margin:30px 0px 0px 0px;
	padding-left:0px;
	width:100%;
	text-align:left;
}
.remodal p{
	margin-top:20px;
	line-height:1.5em;	
	font-weight: 200;
}
.remodal .h6div{
	margin:0px 0px 40px 0px;
}

.title_container{
	margin-top:-1px;
	padding:0px;
}
.title_container p{
	padding:0% 15%;
	line-height: 1.5em;
}

.title_container div{
	padding:20px;
	text-align:center;
}
.title_container div hr{
	opacity:0.1;
	width:5%;
	margin:30px auto 30px auto;
	border-top: 3px #666 solid;
	border-left: 0px;
	border-right: 0px;
	border-bottom: 0px;
}
.title_container h4{
	max-width:700px;
	font-size:14pt;
/*	text-align: center;
*/	margin:40px auto 0px auto;
}
.title_container div p{
	max-width:700px;
	margin:0px auto;
}

.title_container div.h4_column_div{
	width: 100%;
	max-width: 100%;
	padding:0px 0px 0px 0px;
	margin:0px 0px 0px 0px;
	overflow: hidden;
}
div.h2_column_div{
	padding:0px 0px;
	position: relative;
}
div.h2_column_div table td{
	width:50%;
	vertical-align: middle;
}
div.h2_column_div h2{
	margin: 0px;
	padding:1.7em;
}
div.h2_column_div h3{
	padding:1.7em;
/*	position: absolute;
	top: 25%;
	left:75%;
	transform: translate(-50%, -50%);
*/
}
div.h4_column_div table td{
	width:50%;
	vertical-align: middle;
}
div.h4_column_div h4{
	padding:1.7em;
	float:left;
	margin:0px 0px 0px 0px;
}
div.h4_column_div p{
	padding:1.7em;
	float:right;
	margin:10px 0px 10px 0px;

}
.link_button{
	width:100%;
	padding:0 0px 0% 0;
	text-align: center;
	background: transparent;
	clear:both;
}
.link_button form{
	width:100%;
	text-align: center;
}
.link_button button{
	border:0px;
	padding:2% 4%;
	font-size:1.5em;
	width:auto;
	min-width:50%;
	max-width:90%;
	margin:6% auto;
	left:0;
	right:0;
	cursor: pointer;
}
article {
	width: 96%;
/*	padding: 3em 2%;*/
}




.transback{
	background: rgba(0,0,0,0);
}
section{
	visibility: hidden;
}
li p{
	line-height:1.5em;
}



.unit_num{
	display:none;
	height:0px;
	clear:both;
}
.spacer{
	position:relative;
	height:0%;
}
.text_cont{
	margin:20px;
}

.movie_area{
	clear:both;
	margin:0px;
	padding:0px;

	font-size:30pt;
	color:#fff;
	position:relative;
	
}
.movie_text{
	position:absolute;
	text-align:center;
	top:50%;
   left:50%;
   width:100%;
   margin:-0.5em 0 0 -50%;
	opacity:1;
}
.left_movie{
	width:50%;
	float:left;
	height:auto;
}
.fa-arrow-circle-right{
	margin-left: 10px;
	opacity:0.5;
}

#loading_container{
	position:fixed;
	top:0;
	right:0;
	bottom:0;
	left:0;
	z-index: 1000000;
	background:rgba(220,220,220,0.5);
}
#loading{
	width:24px;
	height:24px;
	position:absolute;
	top:50%;
	left:50%;
	margin:-12px 0 0 -12px;
}
#loading i{
	font-size:24pt;
	color:rgba(220,220,220,0.3);
}
.fa-circle-o-notch{
	color:#aaa;
}

#logo1{
	width: 100%;
}
#logo1 img{
	position:absolute;
	top:200px;
	left:0;
	right: 0;
	margin:auto;
	width: 60%;
	max-width: 400px;
}
.logo-motion{
	font-family: 'Work Sans', sans-serif;
	font-weight:200;
	font-size:1.1em;
	letter-spacing: -0.05em;
	margin-right: 0.1em;
}
.logo-web{
	font-family: 'Arimo', sans-serif;
	font-weight:500;
/*	font-weight:700;
*/	letter-spacing: -0.05em;
}



/* Basic CSS */


.goto-next {
	border: 0;
	bottom: 0;
	display: block;
	height: 5em;
	left: 50%;
	margin: 0 0 0 -5em;
	overflow: hidden;
	position: absolute;
	text-indent: 10em;
	white-space: nowrap;
	width: 10em;
	z-index: 1;
}
.goto-next:before {
	background-image: url("images/arrow.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	content: '';
	display: block;
	height: 1.5em;
	left: 50%;
	margin: -0.75em 0 0 -1em;
	position: absolute;
	top: 50%;
	width: 2em;
	z-index: 1;
}

.sprite{
	position: relative;/*fixed*/
}

#fps{
	z-index:1000;
	background:#eeeeee;
	display: none;
}
#share{
	position:fixed;
	left:0px;
	bottom:-70px;
	z-index: 10000;
	margin:0 1% 1% 1.5%;
	text-align: center;
}
#to_top{
	position:fixed;
	right:0px;
	bottom:-70px;
	z-index: 10003;
	margin:0 1% 1% 0;
	padding:1% 1.5%;
	background:rgba(0,0,0,0.4);
	text-align: center;
	opacity:1;
	cursor: pointer;
}
#to_top a{
	display:block;
	margin-top:0px;
	text-align: center;
	color:#fff;
}
i.to_top{
	opacity:0.7;
	color:rgba(255,255,255,0.9);
	font-size:20pt;
	-moz-transform: rotate(-90deg);
   -webkit-transform: rotate(-90deg);
   -o-transform: rotate(-90deg);
   -ms-transform: rotate(-90deg);
   transform: rotate(-90deg);
}

/*
 COLOR STETTING
 */
 #param_value{
	 display:none;
	 height:0px;
 }
.title_color_main{
	color:#000;
}
.title_color_sub{
	color:#000;
}
.title_color_{
	color:#000;
}
.title_color_white{
	color:#fff;
}
.title_color_gray1{
	color:#f1f1f1;
}
.title_color_gray2{
	color:#eee;
}
.title_color_gray3{
	color:#777;
}
.title_color_gray4{
	color:#444;
}
.title_color_gray5{
	color:#222;
}
.title_color_black{
	color:#000;
}
.link_arrow_button{
	color:#ccc;
}

#menu a.title_color_main{
	color:#000;
}
#menu a.title_color_sub{
	color:#000;
}
#menu a.title_color_{
	color:#000;
}
#menu a.title_color_white{
	color:#fff;
}
#menu a.title_color_gray1{
	color:#eee;
}
#menu a.title_color_gray2{
	color:#bbb;
}
#menu a.title_color_gray3{
	color:#777;
}
#menu a.title_color_gray4{
	color:#444;
}
#menu a.title_color_gray5{
	color:#222;
}
#menu a.title_color_black{
	color:#000;
}

.title_bgcolor_main{
	background-color:#fff;
}
.title_bgcolor_sub{
	background-color:#fff;
}
.title_bgcolor_{
	background-color:#fff;
}
.title_bgcolor_white{
	background-color:#fff;
}
.title_bgcolor_gray1{
	background-color:#eee;
}
.title_bgcolor_gray2{
	background-color:#bbb;
}
.title_bgcolor_gray3{
	background-color:#777;
}
.title_bgcolor_gray4{
	background-color:#444;
}
.title_bgcolor_gray5{
	background-color:#222;
}
.title_bgcolor_black{
	background-color:#000;
}
#map_btn{
	margin-bottom:70px;
} 
#googlemap_container{
	width:100%;
	margin:0px;
	padding:0px;
	position:relative;
	z-index: 10002;
}
#google_map{
	width:100%;
	height:50%;
	margin:0px;
	padding:0px;
}
#close_googlemap{
	width:100%;
	height:auto;
	text-align: center;
	cursor: pointer;
}
#close_googlemap i{
	font-size:30pt;
	margin:0px auto;
	left:0;
	right:0;
	padding:10px 0;
	width:40px;
}


.contact_container{
	display:none;
	position:fixed;
	background:rgba(0,0,0,0.9);
	z-index: 10005;
	text-align: center;
	width:100%;
	height: 100%;
	padding:20px;
}
.contact_container *{
	display:block;
	margin:10px auto;	
}
.contact_container h3{
	color:#fff;
	text-align: center;
}
.close_contact{
	width:80%;
	max-width: 600px;
	text-align: right;
	cursor: pointer;
}
.close_contact img{
	display: inline !important;
}
#mail_form{
	text-align:center;
}
#mail_form #mail_form_titile{
	color:#000;
	font-size:40pt;
	text-align:center;
	margin:0px;
}
#mail_form #error{
	width:80%;
	font-size:1em;
	margin:10px auto !important;
	color:#fff;
	text-align: center;
}
#mail_form #error i{
	font-size:1em;
	color:#91BF02;
}

#mail_form input{
	font-size:14pt;
	width:80%;
	max-width: 600px;
	border:1px #dddddd solid;
	background: #f0f0f0;
	color:#666;
	padding: 20px;
}
#mail_form textarea{
	font-size:14pt;
	width:80%;
	max-width: 600px;
	border:1px #dddddd solid;
	background: #f0f0f0;
	color:#666;
	padding:20px;
	line-height: 1.7em;
}
#mail_form #send_button{
	width:100%;
	text-align: center;
}

.separator{
	display:none;
	height:0px;
}

.fa-spinner{
	color:#fff;
}

.line{
	padding:0% 3% 0% 3%; 
	width:100%;
}
.clearboth{
	clear:both;
	height:0px;
}

.nowrapword{
	white-space: nowrap
}


@media screen and (max-width: 768px) {
	#menu_logo{
		visibility:visible;
		height:auto;
		margin-bottom:40px;
	}
	.title_container p{
		padding:5% 5%;
		line-height: 1.5em;
	}
	#menu_back{
		opacity: 0;
	}
	.link_button button{

		width:60%;
	}
	.grid_cont li{
		display: inline-block;
		width:50%;
		padding:0%;
		margin:0px;
		vertical-align:top;
	}
	
	#scroll_arrow img{
		position:relative;
		bottom:0px;
		left:0;
		right:0;
		margin:0px auto;
		width:60px;
	}
	

	#footer_left{
		width:60%;
	}
	#footer_right{
		width:20%;
	}
}
@media screen and (max-width: 640px) {

	.msg1{
		font-size: 2em;
	}
	.msg2{
		font-size: 2em;
	}
	.msg3{
		font-size: 1.4em;
	}
	
	.title_container p{
		padding:5% 5%;
		line-height: 1.5em;
	}
	
	.table_container .td_left{
		line-height:1.5em;
		white-space:normal;
	}

	.modal_space{
		display:block;
		height:300px;
	}	
	
	.left_block,.right_block{
		width:92% !important;
	}
	.grid_cont li{
		display: inline-block;
		width:100%;
		padding:1%;
		margin:0px;
		vertical-align:top;
	}
	#scroll_arrow img{
		position:relative;
		bottom:0px;
		left:0;
		right:0;
		margin:0px auto;
		width:48px;
	}
	#footer_left{
		width:90%;
		padding:4% 2%;
		margin:5% 3%;
		border-top:0px;
	}
	#footer_right{
		display:none;
	}
	
	#mail_form #send_button i{
		font-size:14pt;
	}
	
	.single_cont li article{
		width: 80%;
	}
	
	#footer_bottom i{
		font-size:24pt;
	}
	
	.random_cont li{
		clear:both;
		position:relative;
		margin:10px 0;
		padding:10px 0;
	}
	.random_cont li div{
	}
	.random_cont li div.li_unit{
		padding:3%;
		position:relative;
	}
	.random_cont .li_1 div{
		width:76%;
		left:9%;
		margin-top:0px;
		z-index:2;
	}
	.random_cont .li_1 img{
		clear:both;
		width:90%;
		margin:0 5%;
		z-index:1;
	}
	.random_cont .li_2 div{
		width:76%;
		left:9%;
		margin-top:0px;
		z-index:2;
	}
	.random_cont .li_2 img{
		clear:both;
		width:90%;
		margin:0 5%;
		z-index:1;
	}
	.random_cont .image_link{
		clear:both;
	}
	.l_column{
		width:100%;
		float:none;
	}
	.r_column{
		width:100%;
		float:none;
	}
	div.h4_column_div h4{
		width: 100%;
		padding:4% 3%;
		float:none;
		margin:20px 0px 0px 0px;
	}
	div.h4_column_div p{
		width: 100%;
		padding:4% 2%;
		float:none;
		margin:20px 0px 20px 0px;
	}
	
	div.h2_column_div table td{
		width:100%;
		display:block;
	}
	div.h4_column_div table td{
		width:100%;
		display:block;
	}

	.works li{
		width:50% !important;		
	}
	.works img.work{
		width:100% !important;		
	}
	footer li{
		margin-bottom: 1em !important;
	}
	#menu_container img.menu_img{
		margin-top:-250px !important;
	}
	#menu_container .alpha_label{
		border-top:0px;
	}
	h1{
		top:30px !important;
	}
	.header_msg p{
		padding-right:30px !important;
	}
	

}


@media (orientation: landscape) and (max-width: 840px) {
	#msg{
		margin-top:50px;
	}
	.msg1{
		font-size:1.7em;
	}
	.msg2{
		font-size:1.7em;
	}
	.msg3{
		font-size:1.3em;
		top:-20px !important;
	}
	
	.upfade{
		transform: translate(0,0px); 
		-webkit-transform: translate(0,0px); 
	}
	.downfade{
		transform: translate(0,0px); 
	}
}