@charset "utf-8";

body{
	padding: 0;
	 border-top: 12px solid #e50012;
}

#container,
header.root
{
	margin: 0 auto 24px;
	padding: 0 12px;
	width: 100%;
	max-width: 480px;
	min-width: 320px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

figure.fotorama .fotorama__wrap{
	max-width: 480px;
	min-width: 320px;
	
}

#selectLang{
	position: absolute;
	right: 40px;
	top: 8px;
}

/* HEADER DETAIL ++++++++++++++++++ */
header section .wrapper{
	padding-top: 0;
	width: 32px;
	height: auto;
	float: right;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;/*  */
}

header button{
	display: block;
	padding: 8px;
	width: 32px;/*  */
	vertical-align: middle;
	cursor: pointer;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;/*  */
	background : -webkit-gradient(linear, left top, left bottom, from(#ff0000), to(#aa0000));
    background : -webkit-linear-gradient(top, #ff0000, #aa0000);
	background: linear-gradient(to bottom, #ff0000, #aa0000);
}

header button .icon-bar{
    display: block;
	margin: 0 0 4px;
	width: 16px;
    height: 2px;
	background-color: #F5F5F5;
}

header button .icon-bar.end{
	margin: 0;
}

header.root section hgroup{
	width: 156px;
	float: left;
}

header.root section hgroup h1{
	height: 48px;
	line-height: 48px;
	vertical-align: middle;
	text-indent: -9999px;
	background: url("./images/logo.png") no-repeat left center;
	background-size:  auto 48px !important;
	-webkit-background-size:  auto 48px !important;
    -moz-background-size:  auto 48px !important;
}

#en header.root section hgroup h1{
	height: 48px;
	line-height: 48px;
	vertical-align: middle;
	text-indent: -9999px;
	background: url("./images/logo_en.png") no-repeat left center;
	background-size:  auto 48px !important;
	-webkit-background-size:  auto 48px !important;
    -moz-background-size:  auto 48px !important;
}

header.root nav#scrollNavi{
	position: fixed;
	top: 60px;
	left: 0;
	width: 100%;
	height: 0;
	overflow: hidden;
	z-index: 99999;
	background: transparent;
	transition: all 0.3s cubic-bezier(0.42, 0, 0.52, 1);
    -webkit-transition: all 0.3s cubic-bezier(0.42, 0, 0.52, 1);
    -ms-transition: all 0.3s cubic-bezier(0.42, 0, 0.52, 1);
}

header.root nav#scrollNavi .naviWrapper{
	position: absolute;
	top: -252px;
	left: 0;
	width: 100%;
	transition: all 0.3s cubic-bezier(0.42, 0, 0.52, 1);
    -webkit-transition: all 0.3s cubic-bezier(0.42, 0, 0.52, 1);
    -ms-transition: all 0.3s cubic-bezier(0.42, 0, 0.52, 1);
	border-bottom: 12px #e50012 solid;
}

header.root nav#scrollNavi.scrolldown .naviWrapper{
	display: block;
	transform: translate(0,252px);
	-webkit-transform: translate(0,252px);
	-ms-transform: translate(0,252px);
}

header.root nav#scrollNavi a span{
	display: block;
	margin: 0 auto;
	width: 100%;
	max-width: 468px;
}

header.root nav#scrollNavi.bdn{
	border-bottom: 0;
}

nav#scrollNavi a:active{
	color: #e50012;
}

header.root nav#scrollNavi em{
	display: none;
}

header.root section#mainVsual{
	margin-bottom: 8px;
}

/* CONTENTS ++++++++++++++++++ */

#container h1#main,
#recent{
	margin: 0 auto 16px;
}

#recent article {
	margin: 0 0 16px;
	
}

#spTwt,
.spUtb{
	margin-bottom: 28px;
}

/* ASIDE ++++++++++++++++++ */

#primary{
	margin: 0;
	float: none;
}

#secondary{
	margin: 0;
	width: 100%;
	float: none;
}

#secondary:after{
	content:" ";
	height: 0;
	clear: both;
	display: block;
}


#primary #newsArea h1.main,
#primary #action h1.main,
#primary #fbTimeline h1.main,
#primary #support h1.main,
#primary #about h1.main,
#primary #contact h1.main
{
	margin: 0 0 16px;
	padding: 0 0 0 24px;
	height: auto;
	font-size: 20px;
	font-weight: bold;
	line-height: 24px;
	color: #e50012;
	background: url("./images/dropCap-a.png") no-repeat 0 2px;
	background-size:  auto 20px !important;
	-webkit-background-size:  auto 20px !important;
    -moz-background-size:  auto 20px !important;
    -o-background-size:  auto 20px !important;

}


#newsArea{
	margin: 0 0 28px;
	border-bottom: solid #b3b3b3 1px;
	/* background: url("./images/ill-rainbow.png") no-repeat right top; */
}

#newsArea article{
	margin: 0 0 16px;
	padding: 0 0 0 8px;
	color: #3c3f99;
}

section article
{
    margin: 0 0 32px;
    padding: 0 0 0 8px;
    border-left: solid #e50012 4px;
}

#newsArea article dl {
    margin: 0 0 12px;
	border-bottom: 0;
}

#newsArea article dl dt{
	margin-bottom: 4px;
	padding-left: 4px;
	font-weight: bold;
	color: #666666;
	background: #EEEEEE;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	
}



section#action article{
	margin: 0 0 32px;
	padding: 0 0 0 8px;
}

section#action article dt{
	margin-bottom: 20px;
}

section#action article dt div.more{
	width: 100%;
	height: 20px;
	cursor: pointer;
}

section#action article dd img,
section#action article dd{
	width: 100%;
	max-width: 308px;
	height: auto;
}

#primary #voice article dd img{
	height: 140px;
	width: auto;
}

#primary article dl {
  margin-bottom: 12px; }


footer {
    background: #4c4c4c none repeat scroll 0 0;
    color: #fff;
    padding: 4px;
    width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;

}

section#about article dt{
	width: 100%;
	float: none;
}

section#about article dd{
	width: 100%;
	float: none;
}

/* SNS ++++++++++++++++++ */

#fbTimeline {
	margin-bottom: 28px; 
}

#fbTimeline article {
	display: flex;
	flex-flow: column nowrap;
	justify-content: center; 
	
	padding-left: 8px;
	width: 100%;
	box-sizing: border-box;
}
	  
#fbTimeline article div{
	/* flex: 0 1 304px; */
	margin: 0 auto 12px;
	/* padding: 8px 0; */
	padding: 0;
	width: 100%;
	text-align: center;
	box-sizing: border-box;
	/* border-bottom: #e7e7e7 solid 1px; */
}
	  
#fbTimeline article div:first-child{
	/* border-top: #e7e7e7 solid 1px; */
}
	  
#fbTimeline article div:last-child{
	margin-bottom: 0;
}
	  
#fbTimeline article div span{
	margin: 0 auto;
}
	  
/* CSS3 ++++++++++++++++++ */

div#cutIll2,
div#cutIll3,
div#cutIll4
{
	opacity: 0.6;
	display: none;
}
		
	#secondary aside.bannerShort,
	#secondary aside.banner{
		margin-right: 0;
		width:100%;
		height: auto;
		float: none;
	}
		
		
	#secondary aside#vol,
	#secondary aside#sakuraBlog
	{
		
		/* float: right; */
	}

	#secondary aside#vol span{
		min-height: 100px;
	}

	#secondary div aside:nth-child(2n){
		margin-right: 0;
	}

  #primary > section article p {
    /* font-size: 13px;  */
	}
	
#fbTimeline{
/* display: none; */
}	


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



		
	#secondary .spUtb iframe{
		width: 304px;
		height: 170px;
	}
	
	

}

