@charset "UTF-8";

/* Reset ----------------------------- */
html, body, div, span, h1, h2, h3, h4, h5, h6, p, img, strong, dl, dt, dd, ul, li, form, label, table, caption, tbody, tfoot, thead, tr, th, td, article, footer, header, menu, nav, section { margin:0; padding:0; border:0; outline:0; vertical-align:top; background:transparent; }
body { line-height:1; font-family: meiryo, 'Meiryo W53 Regular', 'Hiragino Kaku Gothic ProN', sans-serif; -webkit-text-size-adjust:none; min-width:320px;}
html{font-size:62.5%;}
article, footer, header, nav, section {	display:block; }
ul { list-style:none; }
a { margin:0; padding:0; border:0; font-size:100%; vertical-align:top; background:transparent; }
table { border-collapse:collapse; border-spacing:0; width:100%; }
hr { display:block; height:1px; border:0; border-top:1px solid #cccccc; margin:0; padding:0; }
input, select { vertical-align:middle; }
img { vertical-align:bottom;}
.cf:after { content: "."; display: block; clear: both; height: 0; visibility: hidden; }

.left{text-align:left!important}
.center{text-align:center!important}
.right{text-align:right!important}
.top{vertical-align:top!important}
.middle{vertical-align:middle!important}
.bottom{vertical-align:bottom!important}
.w5{width:5%!important}.w10{width:10%!important}.w15{width:15%!important}.w20{width:20%!important}.w25{width:25%!important}.w30{width:30%!important}.w35{width:35%!important}.w40{width:40%!important}.w45{width:45%!important}.w50{width:50%!important}.w55{width:55%!important}.w60{width:60%!important}.w65{width:65%!important}.w70{width:70%!important}.w75{width:75%!important}.w80{width:80%!important}.w85{width:85%!important}.w90{width:90%!important}.w95{width:95%!important}.w100{width:100%!important}

.caution { display:none; }


body{
	font-size: 1.6em;
	color: #333;
}

.main_section{
	min-height: 210px;
	padding: 0px;
	margin: 0 auto;
	width: calc(100% - 90px);
	max-width: 1100px;
	overflow: hidden;
	position: relative;
	overflow:hidden;
	text-align: center;
}

#concept #concept_txt,
#terms .main_section{
/* 	font-family: serif; */
/* 	font-weight: 400; */
	font-feature-settings: "palt";
	font-size: 2rem;
	margin-bottom: 2em;
}

#terms .main_section{
	font-family: serif;
}


#terms .main_section{
	font-family: inherit;
	font-feature-settings: inherit;
	text-align: justify;
	line-height: 1.5;
	font-size: 0.9em;
	color: #333;
	margin-bottom: 4em;
}

#terms .main_section section{
	width: 80%;
	margin: 0 10%;
}

#concept #concept_txt h2,
#terms .main_section h2{
	font-size: 2em;
	margin: 1em 0;
	font-weight: bold;
	font-family: 'Typonine Sans Regular 2', meiryo, 'Meiryo W53 Bold';
}

#terms .main_section h2{
	font-size: 1.5em;
	border-bottom: 1px #333 solid;
	padding-bottom: 0.2em;
}

#terms .main_section h3{
	font-feature-settings: "palt";
	margin: 1em 0 0.5em;
	font-size: 1.25em;
}

#concept .main_section p{
	line-height: 2;
	margin-bottom: 1em;
	padding: 0 10px;
}

#concept .main_section p:last-child{
	font-weight: bold;
	font-family: meiryo, 'Meiryo W53 Bold';
}

#terms .main_section p{
	line-height: inherit;
	margin-bottom: 0.5em;
}

#terms .main_section dl,
#terms .main_section ul{
	margin: 1em 0 2em;
	
}

#terms .main_section p.author{
	margin-top: 2em;
	text-align: right;
}

#sitemap #content{
	width: calc(100% - 40px);
	max-width: 1040px;
	margin: 0 auto;
	padding: 20px;
	color: #333;
	overflow: hidden;
	margin-bottom: 2em;
}

#sitemap #content div{
	width: 90%;
	margin: 0 5%;
}

#sitemap #content section{
	width: 49%;
	float: left;
	margin-right: 2%;
}

#sitemap #content section:nth-of-type(even){
	margin-right: 0;
}

#sitemap #content section:last-child{
	margin-top: 2em;
	border-top: #ddd 1px solid;
}

#sitemap #content section h4{
	margin-top: 1em;
	padding-bottom: 0.5em;
	border-bottom: #ddd 1px solid;
}

#sitemap #content section ul{
	margin-top: 0.5em;
}

#sitemap #content section li{
	line-height: 2em;
	position: relative;
	padding-left: 1em;
}

#sitemap #content section li a:before{
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 6.9px;
	border-color: transparent transparent transparent #333;
	top: 0.8em;
	left: 0;
}

#sitemap #content h2,
#sitemap #content h3{
	font-size: 1.5em;
	margin-bottom: 0.5em;
/* 	color: #00b2a9; */
	font-feature-settings : "palt";
	letter-spacing: 0.05em;
}

#sitemap #content h3{
	padding-bottom: 0.5em;
	border-bottom: #333 1px solid;
}


#sitemap #content a{
	text-decoration: none;
	color: #333;
	display: block;
}

#sitemap #content a:hover{
	opacity: 0.8;
}

.main_section a:hover{
	opacity: 0.8;
}


.main_section img{
	width: 100%;
	height: auto;
}

#sec_top{
	width: 100%;
	height: 60vh;
	max-width: inherit;
	position: relative;
	min-height: 580px;
}

#concept #sec_top{
	height: 40vh;	
}

#safe_img{
	position: absolute;
	width: auto;
	height: auto;
	min-width: 100%;
	min-height: 100%;
	left: 50%;
	top: 50%;
	-webkit-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
}

#safe_img{
	display: none;
}

#concept #safe_img{
	display: block;
	-webkit-transform: translate3d(-50%, -55%, 0);
	transform: translate3d(-50%, -55%, 0);
}

#welcome_video{
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	min-height: 100%;
/* 	min-height: 100%; */
	min-width: 100%;
/* 	min-width: 100vw; */
	width: auto;
	height: auto;
}

#video_wrapper{
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
	animation: show_video 2s linear 0s;
	background-color: #000;
	margin: 0 auto;
	animation-fill-mode: backwards;
}

@keyframes show_video{
	0% {
		width: 0;
		height: 1px;
/* 		transform: translate(0, 50vh); */
		top: 50%;
/* 		left: 50vw; */
	}
	50% {
		width: 100%;
		height: 1px;
/* 		transform: translate(0, 50vh); */
		top: 50%;
/* 		left: 0; */
	}
	
	100% {
		height: 100%;
/* 		transform: translate(0, 0); */
		top: 0;
	}
}

.main_section.exhibition{
	height: 350px;
}

/*
.main_section.exhibition img{
	width: inherit;
}
*/

.main_section.exhibition a{
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
}

#sec_glossary{
	height: 210px;
}

img.section_mark{
	position: absolute;
	top: 0;
	left: 30px;
	width: 80px;
	height: 80px;
	box-shadow: 2px 2px 4px rgba(0,0,0,0.5);
}

.section_ttl{
	position: absolute;
	top: 14%;
	left: 18%;
	width: 39%;
}

#sec_principle > a{
	background: url(../../../img/bg_principle.jpg) no-repeat center center;
	background-size:cover;
}

#sec_history > a{
	background: url(../../../img/bg_history.jpg) no-repeat center center;
	background-size:cover;
}

#sec_process > a{
	background: url(../../../img/bg_process.jpg) no-repeat center center;
	background-size:cover;
}

#sec_glossary > a{
	background: url(../../../img/bg_words.jpg) no-repeat center center;
	background-size:cover;
}

#sec_glossary .section_ttl{
	width: 20%;
	top: 25%;
}


.section_ttl img{
	width: 100%;
}

.section_caption{
	position: absolute;
	top: 41.5%;
	left: 18%;
	color: #fff;
	font-size: 0.75em;
	line-height: 1.45;
	text-align: left;
	width: 45%;
}

#sec_history .section_caption,
#sec_process .section_caption{
	width: 40%;
}

#sec_history .section_caption{
	color: #333;
}

img.section_enter{
	position: absolute;
	top: 65%;
	left: 18%;
	width: 11%;
}

#sec_glossary img.section_enter{
	top: 54%;
}


#top_ttl{
	position: absolute;
	top: 0;
/* 	height: calc(100% - 35px); */
	height: 100%;
	width: 100%;
	max-width: 1100px;
	text-align: center;
	line-height: 1.5em;
	left: 0;
	right: 0;
	margin: 0 auto;
}

#top_ttl section{
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: calc(100% - 20px);
	max-width: 1100px;
	opacity: 0;
/* 	font-size: 1.5vh; */
	padding: 10px 10px 60px;
	max-height: calc(100% - 70px);
	overflow: hidden;
}

#concept #top_ttl section{
	opacity: inherit;
	padding-bottom: 10px;
}

/*
#top_ttl img{
	width: auto;
	min-width: inherit;
	height: 100%;
	top:50%;
}
*/

#top_ttl #ttl_01{
	width: 50%;
	margin: 0 auto;
	margin-bottom: 1em;
	padding-right: 3%;
}


#concept #ttl_01{
	padding-right: 0;
}

#top_ttl #ttl_02{
	width: 40%;
	margin: 0 auto;
	margin-bottom: 1.5em;
}

#top_ttl section > div{
	width: 48%;
	margin: 0 auto;
	text-shadow: 0 0 10px #fff,0 0 10px #fff,0 0 40px #fff,0 0 40px #fff;
}

#top_ttl section p{
	margin-bottom: 1em;
/* 	font-weight: bold; */
	font-family:"Meiryo W53 Regular";
	color: #333;
	font-size: 1.8rem;
	line-height: 1.6;
}

#top_ttl section p span{
	display: inline-block;
	white-space: nowrap;
}


#top_ttl section p:last-of-type{
	font-family: meiryo, 'Meiryo W53 Bold';
	font-weight: bold;
}

#top_ttl a.goto{
	position: absolute;
	bottom: 20px;
	left: 0;
	right: 0;
	margin: 0 auto;
	display: none;
}

#top_arrow{
	width: auto;
	height: 3%;
}

#skip{
/* 	width: 100%; */
/* 	height: 10%; */
	position: absolute;
	bottom: 10px;
	right: 10px;
}


/*
#skip div{
	width: 100%;
	max-width: 1100px;
	margin: 0 auto 10px;
	position: relative;
	overflow: hidden;
}
*/


#skip p{
	background-color: rgba(0,0,0,0.4);
	border: #fff 1px solid;
	padding: 0.2em 0.5em;
	color: #fff;
	cursor: pointer;
	float: right;
	display: none;
}


#sec_glossary{
	min-height: 136px;
}

#sec_tmg{
	position: relative;
	min-height: inherit;
	text-align: left;
	margin: 20px auto 10px;
/* 	padding-left: 20px; */
}

#sec_tmg_ttl{
/* 	position: absolute; */
	
	width: 33.6%;
	margin-left: 10px;
/*
	left: 10px;
	top: 20px;
*/
}

#sec_tmg p{
	color: #00a9e0;
	display: inline-block;
	vertical-align: 8px;
}

.magArchive { 
	width: calc(100% - 90px);
	max-width: 1100px;
	color: #666;
	margin: 0 auto;
}

#magazine .magArchive{
	width: 100%;
}

.magArchive h3{
	width: 100%;
	display: block;
	padding: 5px 20px;
/* 	height: 20px; */
	line-height: 20px;
	border-bottom: 1px #666 solid;
	font-size: 1.8rem;
	font-family: 'Typonine Sans Light 2';
	vertical-align: bottom;
}

.magArchive h3 span{
/* 	font-family:'AXIS ProN W55 M'; */
	font-family: 'Meiryo W53 Regular'; 
	font-size: 1rem;
	vertical-align: -0.05em;
}

.magArchive .biBtn{
/* 	margin:23px 20px; */
	width: 100%;
	height: 140px;
	position: relative;
}

#magazine.article .biBtn{
	width: 100%;
	height: 100px;
	margin: 20px 0;
}

.magArchive .biBtn a{
	width: 100%;
	height: 100%;
	display: block;
	overflow: hidden;
	position: relative;
}

/*
#magazine.article .biBtn a{
	height: 100px;
}
*/

.magArchive .biBtn a img{
	width: 100%;
	height: auto;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}

.magArchive .biBtn a:hover{
	opacity: 0.8;
}

.magArcTtl{
	position: absolute;
	width: calc(100% - 20px);
/* 	height: 32px; */
	padding: 5px 10px;
	background: rgba(0,183,224,0.65);
	left: 0;
	top: 0;
	color: #fff;
	overflow: hidden;
}

.magArcTtl p:first-child{
	width: 20%;
	float: left;
	font-size: 2.8rem;
	font-family: 'Typonine Sans Regular 2';
}

.magArcTtl p:first-child span{
	font-size: 66%;
	margin-right: 0.5em;
	vertical-align: bottom;
}

.magArcTtl p:last-child{
	display: inline-block;
	width: 80%;
	float: right;
	text-align: right;
/* 	font-family: 'Meiryo W53 Regular'; */
	font-size: 1.7rem;
	margin-top: 0.8rem;
}


#sec_mm{
	display: block;
	width: calc(100% - 90px);
	height: 40px;
	background: #00abe3;
	text-align: center;
	line-height: 40px;
	max-width: 1100px;
	color: #fff;
/* 	font-family: 'AXIS ProN W55 R'; */
	font-size: 1.2rem;
	margin: 20px auto 40px;
	text-decoration: none;
}

#sec_mm:hover{
	opacity: 0.8;
}

#sec_mm span{
	font-family: 'Typonine Sans Light 2';
	font-size: 2.5rem;
	position: relative;
	padding-left: 0.8em;
	margin-left: 1em;
	position: relative;
	display: inline-block;
	height: 100%;
}

#sec_mm span:before{
	position: absolute;
	content: "";
	left: 0.135em;
	top: 0;
	bottom: 0;
	margin: auto 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0.2em 0 0.2em 0.3464em;
	border-color: transparent transparent transparent #fff;

}

/***** Tablet用 **********************************/
@media screen and (max-width:979px){
	.main_section{
		width: 100%;
		min-height: inherit;
	}

/*
	#sec_mm{
		padding: 20px 0;
	}
*/

	
	#sec_tmg_ttl,
	#sec_tmg_img{
		position: inherit;
		top: inherit;
		left: inherit;
	}
	
	#sec_tmg_ttl{
		margin-top: 10px;
	}
	
	.main_section.exhibition{
		height: 260px;
	}
	
	img.section_enter{
		top: inherit;
		bottom: 10%;
	}
	
	#sec_process p{
		width: 60%;
	}
}


/***** Phone用 **********************************/
@media screen and (max-width:812px){

}

@media screen and (max-width:767px){
	#top_wrapper{
		height: calc(100% - 75px);
	}

	#sec_top{
		/* margin-top: 75px; */
		height: 100%;
	}
	
	#top_ttl{
		width: 100%;
	}
	
	#top_ttl section p{
		margin-bottom: inherit;
		font-size: 1.4rem;
		margin-bottom: 0.25em;
	}
	
	/*
	#top_ttl img{
		width: 100%;
		height: auto;
		min-height: inherit;
	}
	*/
	
	#concept #safe_img{
		width: 100%;
		transform: translate3d(-50%, -49%, 0);
	}
	
	.main_section{
		min-height: inherit!important;
		width: 100%;
		overflow: hidden;
	}

	#sec_tmg{
		padding: 0 10px;
		box-sizing: border-box;
	}
	
	#sec_tmg > a{
		width: 100%;
	}

	#sec_tmg img{
		width: 100%;
		height: auto;
	}
	
	#sec_tmg_ttl{
		width: 50%;
		padding-left: 10px;
		margin-top: 0;
		margin-bottom: 10px;
	}
	
	#sec_tmg p{
		padding: 0 20px;
	}
	/*
	#sec_mm img{
		width: 100%;
	}
	*/
		
	#terms .main_section section{
		width: 90%;
		margin: 0 5%;
	}
	
	#sitemap #content section{
		width: 100%;
		float: inherit;
		margin-right: inherit;
	}
	
	#sitemap #content{
		/* margin-top: 109px; */
		padding: 20px 0;
	}

	#sitemap #content div{
		width: 100%;
		margin: 0;
	}

	#top_ttl #ttl_01{
		width: 100%;
		margin-bottom: 0.5em;
	}
	
	#top_ttl #ttl_02{
		width: 80%;
	}
	
	.main_section.exhibition,
	#sec_glossary{
		height: 27vh;
	}
	
	img.section_mark{
		position: absolute;
		left: 0;
		width: 15%;
		height: auto;
	}
	
	.section_ttl{
		position: absolute;
		top: 20%;
		left: 20%;
		width: 70%;
	}
	
	.section_caption{
		display: none;
	}
	
	img.section_enter{
		width: 25%;
		height: auto;
		left: 0;
		right: 0;
		margin: 0 auto;
		bottom: 10%;
	}
	
	#sec_glossary img.section_enter{
		top: inherit;
		bottom: 10%;
	}
	
	#sec_glossary .section_ttl{
		width: 40%;
		top: 30%;
		left: 20%;
	}

	.magArchive{
		width: 100%;
	}
		
	.magArcTtl{
/* 		height: 40px; */
		width: calc(100% - 40px);
		padding: 6px 20px;
	}
	
	.magArchive h3{
		width: 100%;
		margin-top: 1em;
		margin-bottom: 0.5em;
		font-size: 2.5rem;
		padding: 0 10px;
		
	}
	
	.magArchive h3 span{
		font-size: 1.5rem;
	}
	
	#magazine .magArchive .biBtn{
		width: 100%;
		height: auto;
		margin: inherit;
	}
	#magazine .magArchive .biBtn a{
		height: 180px;
		margin-bottom: 10px;
	}
	
	#magazine.page .magArchive .biBtn a{
		height: 120px;
	}
	
	#sec_mm{
		width: calc(100% - 20px);
		line-height: inherit;
		height: auto;
		padding: 10px;
		margin-bottom: 20px;
		
	}
	
	#sec_mm span{
		display: block;
		padding-left: 0;
		margin-left: 0;
		margin-top: 0.2em;
	}
	
	#sec_mm span:before{
		display: none;
	}
	
	/* #terms .main_section{
		margin-top: 75px;
	} */
	
}

@media screen and (max-width:767px) and (orientation: portrait){
	
	#top_wrapper{
		height: calc(100vh - 209px);
	}
	
	#sec_top{
		/* margin-top: 109px; */
		height: 100%;
	}
		
	#sec_tmg_ttl{
		width: calc( 100% - 40px );
	}
	
	#concept #safe_img{
		width: auto;
		height: 120%;
	}
	
	.magArcTtl p{
		width: 100%!important;
		text-align: left!important;

	}
	
	#top_ttl #ttl_02{
		margin-bottom: 0.5em;
	}
	
	#concept .main_section p{
		font-size: 1.6rem;
		text-align: justify;
	}
	
	#concept .main_section p:last-child{
		text-align: right;
	}
	
	#concept .main_section p br{
		display: none;
	}

	/* #terms .main_section{
		margin-top: 109px;
	} */

	#top_ttl section > div{
		width: 100%;
	}
	
}

@media screen and (max-width:767px) and (orientation: landscape){
	
	#top_ttl #ttl_01{
		width: 60%;	
	}
	
	#top_ttl #ttl_02{
		width: 40%;
		margin-bottom: 0;
	}
	
	img.section_enter{
		display: none;
	}
	
	.main_section.exhibition,
	#sec_glossary{
		height: calc(100% - 109px);
	}

	#top_ttl #ttl_01{
		margin-bottom: 0;
	}
	
	#top_ttl section p{
		display: none;
	}

}

@media screen and (max-height:768px){
/*
	#sec_top{
		height: calc( 100% - 105px );
	}
*/

/*
	#top_ttl section p br{
		display: none;
	}
*/
	
/*
	#sec_mm{
		padding: 20px 0;
	}
	
	#sec_mm img{
		width: 100%;
	}
*/	
	
}

@media screen and (max-height:768px) and (orientation: portrait){

	
	#top_ttl #ttl_02{
		width: 80%;
	}
	
/*
	#top_ttl section{
		font-size: 2vh;
	}
*/
	
	#top_ttl section > div{
		width: 90%;
	}
}

@media screen and (max-height:600px) and (orientation: landscape) {
}
