/*------------------------------------------------------------------------------
 * PCSP共通
------------------------------------------------------------------------------*/ 
	
	
	/*---------------------------------------
	 * Header
	---------------------------------------*/ 
	
	header{
		width: 100%;
		height: 92px;
		padding: 30px 0;
		background: #F70000;
		position: fixed;
		top:0;
		left:0;
		z-index: 1000;
	}
	
	
	
	
	/* MenuBtn
	---------------------------------------*/ 
	
	.menu-btn{
		width: 27px;
		height: 22px;
		position: absolute;
		top:6px;
		right:0;
		cursor: pointer;
		z-index: 2000;
	}
	
	
	
	/* MenuContent
	---------------------------------------*/ 
	
	.menu-content{
		width: 242px;
		height: 100%;
		background: #F70000;
		position: fixed;
		top:92px;
		right: -100%;
		z-index: 1000;
		padding:0px 0 20px;
		line-height: 1.5;
		color: #FFFFFF;
		overflow: scroll;
		-webkit-overflow-scrolling: touch;
		z-index: 1000;
	}
	.menu-content ul{
		width: 100%;
	}
	.menu-content ul > li{
		border-bottom: 1px dotted #FFFFFF;
	}
	.menu-content ul > li > a{
		display: block;
		width: 100%;
		height: 100%;
		padding:  10px 20px;
		position: relative;
	}
	.menu-content ul > li > a:hover{
		background: rgba(0,0,0,0.3);
	}
	.menu-content ul li a span{
		position: absolute;
		top:14px;
		right:20px;
		width: 8px;
		height: 16px;
			
		transition: transform .3s;
	}
	.menu-content ul li a.active span{
		transform: rotate(90deg);
	}
	.menu-content ul li .deco{
		background: #FFFFFF;
		border-radius: 15px;
		color: #004386;
		padding: 0 36px;
	}
	.menu-content ul > li ol{
		display: none;
	}
	.menu-content ul > li ol li{
		padding: 12px 40px;
	}
	.menu-content ul > li ol li a{
		display: block;
		width: 100%;
		height: 100%;
	}
	.menu-content ul > li ol li a::before{
		content:"";
		display: inline-block;
		width: 12px;
		height: 1px;
		background: #FFFFFF;
		vertical-align: middle;
		margin-right: 8px;
		margin-top: -5px;
	}
	
	.scrollbar_none{
    	height:100%;
		overflow-y:auto;
		-ms-overflow-style:none;
	}
	




/*------------------------------------------------------------------------------
 * PC
------------------------------------------------------------------------------*/ 

@media screen and (min-width: 769px) {	
	
	/*---------------------------------------
	 * Header
	---------------------------------------*/ 
	
	header .inner .logo{
		width: 186px;
		height: 32px;
	}
	header .inner{
		width: calc(100% - 50px);
		height: 32px;
		margin: 0 auto;
		position: relative;
	}
	
	
	/* Sns
	---------------------------------------*/ 
	header .inner .sns-list{
		position: absolute;
		top:0;
		right:36px;
	}
	header .inner .sns-list li{
		width: 32px;
		height: 32px;
		display: inline-block;
		margin: 0 6px;
	}
	
	
	/* MenuBtn
	---------------------------------------*/ 
	
	.menu-btn{
		width: 27px;
		height: 22px;
		position: absolute;
		top:6px;
		right:0;
		cursor: pointer;
		z-index: 2000;
	}
	.menu-trigger,
	.menu-trigger span {
	  display: inline-block;
	  transition: all .4s;
	  box-sizing: border-box;
	}
	.menu-trigger {
	  position: relative;
	  width: 27px;
	  height: 22px;
	}
	.menu-trigger span {
	  position: absolute;
	  left: 0;
	  width: 100%;
	  height: 2px;
	  background-color: #FFFFFF;
	}
	/*
	.menu-trigger.active span {
	  background-color: #FFFFFF;
	}
	*/
	.menu-trigger span:nth-of-type(1) {
	  top: 0;
	}
	.menu-trigger span:nth-of-type(2) {
	  top: 10px;
	}
	.menu-trigger span:nth-of-type(3) {
	  bottom: 0;
	}
	
	
	/* Animation*/
	
	.menu-trigger.active span:nth-of-type(1) {
	  -webkit-transform: translateY(10px) rotate(-45deg);
	  transform: translateY(10px) rotate(-45deg);
	}
	.menu-trigger.active span:nth-of-type(2) {
	  opacity: 0;
	}
	.menu-trigger.active span:nth-of-type(3) {
	  -webkit-transform: translateY(-10px) rotate(45deg);
	  transform: translateY(-10px) rotate(45deg);
	}
	
	
	/*---------------------------------------
	 * Main
	---------------------------------------*/ 
	
	main{
		margin-top: 92px;
	}
	
	
	/*---------------------------------------
	 * Footer
	---------------------------------------*/ 
	
	footer .sns .inner{
		width: calc(100% - 50px);
		max-width: 1000px;
		margin: 0 auto;
	}
	footer .sns .inner ul{
		text-align: center;
		margin-bottom: 65px;
	}
	footer .sns .inner ul li{
		display: inline-block;
		width: 59px;
		height: 59px;
		margin: 0 15px;
	}
	footer .sns .inner ul li a{
		width: 59px;
		height: 59px;
	}
	footer .credit{
		width: 100%;
		background: #F70000;
		padding: 30px 0;
	}
	footer .credit .inner{
		width: calc(100% - 50px);
		max-width: 1000px;
		margin: 0 auto;
		position: relative;
	}
	footer .credit .inner .logo{
		width: 186px;
		height: 32px;
	}
	footer .credit .inner small{
		position: absolute;
		top:50%;
		right:0;
		color: #FFFFFF;
		font-size: 1.2rem;
		transform: translateY(-50%) ; 
	}
	
	
	
	/*---------------------------------------
	 * Module
	---------------------------------------*/ 
	
	/* CategoryList
	---------------------------------------*/  
	
	.category{
		padding: 0px;
	}
	.category::before{
		content:"";
		width: 250px;
		height: 1px;
		display: block;
		background: #000000;
		margin: 0 auto 90px;
	}
	.category .inner{
		width: calc(100% - 50px);
		max-width: 1000px;
		margin: 0 auto;
	}
	.category .inner .category-list{
		font-size: 0;
	}
	.category .inner .category-list li{
		display: inline-block;
		width: 30%;
		text-align: center;
		margin:0 5% 50px 0;
		vertical-align: top;
	}
	.category .inner .category-list li:nth-child(3n){
		margin-right: 0;
	}
	.category .inner .category-list li a{
		display: block;
		font-size: 1.6rem;
	}
	.category .inner .category-list li a .thumbnail{
		width: 170px;
		margin: 0 auto 20px;
	}
	.category .inner .category-list li a .cat-name{
		font-size: 2.1rem;
		color: #F70000;
		font-weight: 700;
		border-bottom: 1px solid #F70000;
		padding-bottom: 20px;
		margin-bottom: 20px;
	}
	.category .inner .category-list li a .copy{
		font-size: 2.1rem;
		line-height: 1.3;
		font-weight: 700;
		margin-bottom: 20px;
	}
	.category .inner .category-list li a .read{
		line-height: 1.5;
	}
	
	
}



/*------------------------------------------------------------------------------
 * SP
------------------------------------------------------------------------------*/ 

@media screen and (max-width: 768px) {
	
	/*---------------------------------------
	 * Header
	---------------------------------------*/ 
	
	header{
		height: 45px;
		padding: 15px 0;
	}
	header .inner{
		width: calc(100% - 40px);
		height: 32px;
		margin: 0 auto;
		position: relative;
	}
	header .inner .logo{
		width: 93px;
		height: 16px;
	}
	
	
	
	/* Sns
	---------------------------------------*/ 
	
	header .inner .sns-list{
		display: none;
	}
	
	
	
	/* MenuBtn
	---------------------------------------*/ 
	
	.menu-btn{
		width: 27px;
		height: 18px;
		position: absolute;
		top:-1px;
		right:0;
		cursor: pointer;
		z-index: 2000;
	}
	.menu-trigger,
	.menu-trigger span {
	  display: inline-block;
	  transition: all .4s;
	  box-sizing: border-box;
	}
	.menu-trigger {
	  position: relative;
	  width: 27px;
	  height: 18px;
	}
	.menu-trigger span {
	  position: absolute;
	  left: 0;
	  width: 100%;
	  height: 2px;
	  background-color: #FFFFFF;
	}
	.menu-trigger span:nth-of-type(1) {
	  top: 0;
	}
	.menu-trigger span:nth-of-type(2) {
	  top: 8px;
	}
	.menu-trigger span:nth-of-type(3) {
	  bottom: 0;
	}
	
	
	
	/* Animation*/
	
	.menu-trigger.active span:nth-of-type(1) {
	  -webkit-transform: translateY(8px) rotate(-45deg);
	  transform: translateY(8px) rotate(-45deg);
	}
	.menu-trigger.active span:nth-of-type(2) {
	  opacity: 0;
	}
	.menu-trigger.active span:nth-of-type(3) {
	  -webkit-transform: translateY(-8px) rotate(45deg);
	  transform: translateY(-8px) rotate(45deg);
	}
	
	
	
	/* MenuContent
	---------------------------------------*/ 
	
	.menu-content{
		width: 60%;
		top: 45px;
		padding-bottom: 45px;
	}
	
	
	
	/*---------------------------------------
	 * Footer
	---------------------------------------*/ 
	
	footer .sns{
		display: none;
	}
	footer .credit{
		width: 100%;
		background: #F70000;
		padding: 20px 0;
	}
	footer .credit .inner{
		width: calc(100% - 50px);
		max-width: 1000px;
		margin: 0 auto;
		position: relative;
	}
	footer .credit .inner .logo{
		display: none;
	}
	footer .credit .inner small{
		font-size: 1rem;
		text-align: center;
		color: #FFFFFF;
		display: block;
	}
	
	
	
	/*---------------------------------------
	 * Module
	---------------------------------------*/ 
	
	/* CategoryList
	---------------------------------------*/
	
		.category{
		padding: 0px;
	}
	.category::before{
		content:"";
		width: 250px;
		height: 1px;
		display: block;
		background: #000000;
		margin: 0 auto 90px;
	}
	
	.category .inner{
		width: calc(100% - 40px);
		max-width: 500px;
		margin: 0 auto;
	}
	.category .inner .category-list{
		font-size: 0;
	}
	.category .inner .category-list li{
		display: inline-block;
		width: 47%;
		text-align: center;
		margin:0 6% 30px 0;
		vertical-align: top;
	}
	.category .inner .category-list li:nth-child(2n){
		margin-right: 0;
	}
	.category .inner .category-list li a{
		display: block;
		font-size: 1.3rem;
	}
	.category .inner .category-list li a .thumbnail{
		width: 80%;
		margin: 0 auto 20px;
	}
	.category .inner .category-list li a .cat-name{
		font-size: 1.8rem;
		color: #F70000;
		font-weight: 700;
		border-bottom: 1px solid #F70000;
		padding-bottom: 10px;
		margin-bottom: 10px;
	}
	.category .inner .category-list li a .copy{
		font-size: 1.4rem;
		line-height: 1.3;
		font-weight: 700;
		margin-bottom: 10px;
	}
	.category .inner .category-list li a .read{
		line-height: 1.5;
	}
	
	
	
}