@charset "utf-8";

footer .back{display: none;}

@media screen and (min-width : 960px){

	#news h2{
		margin: 0 0 2.5rem 0;
		letter-spacing: 0.03em;
		font-size: 1.5rem;
	}

	#gallery h2{
		margin: 4.4rem 0 5rem 0;
		/*margin: 6.1rem 0 5.6rem 0;*/
		padding: 0 0 0.9rem 0;
		position: relative;
		letter-spacing: 0.03em;
		font-size: 1.5rem;
	}
	#gallery h2::after{
		content: '';
		display: block;
		width: 1.5rem;
		height: 3px;
		background-color: #222222;
		position: absolute;
		bottom: 0; left: 0;
	}

	/* -------------------------------------------------------------------------------------------
	*
	* メインビジュアル
	*
	* ----------------------------------------------------------------------------------------- */

	#mainVisual .slider-container{
		width: 100%;
		margin: 0 auto 8rem auto;
		position: relative;
	}
	#mainVisual .slider-container a{
		display: inline-block;
		vertical-align: top;
	}


	/* -------------------------------------------------------------------------------------------
	*
	* ニュース
	*
	* ----------------------------------------------------------------------------------------- */

	#news{
		margin: 0 0 80px 0;
	}

	#news ul{
		boorder-color: #222222;
		border-width: 2px 0 2px 0;
		border-style: solid;
	}
	#news ul li{
		line-height: 1.3;
		padding: 20px 0;
		font-size: 0;
		}
		#news ul li:nth-of-type(n+2){
			boorder-color: #222222;
			border-width: 2px 0 0 0;
			border-style: solid;
		}
		#news ul li:nth-of-type(n+4){
			display: none;
		}
	#news ul li p.date{
		display: inline-block;
		vertical-align: top;
		/*margin: 0 2rem 0 0;*/
		width: 7rem;
		font-size: 1rem;
		letter-spacing: 0.03rem;
		}
		#news ul li:hover p.date{
			color: #aaaaaa;
			-webkit-transition: .1s linear;
			transition: .1s linear;
		}
		#news ul li.invalid:hover p.date{
			color: #222222;
		}
	#news ul li p.text{
		text-align: left;
		display: inline-block;
		vertical-align: top;
		width: 80%;
		}
		#news ul li:hover p.text{
			color: #aaaaaa;
			-webkit-transition: .1s linear;
			transition: .1s linear;
		}
		#news ul li.invalid:hover p.text{
			color: #222222;
		}
	#news ul li p.text span{
		display: inline-block;
		vertical-align: top;
		font-size: 1rem;
		letter-spacing: 0.02rem;
		}
		#news ul li.external p.text span::after{
			content: '';
			display: inline-block;
			vertical-align: middle;
			width: 0.9375rem;
			height: 0.9375rem;
			background-image: url(../img/common/icon_link_blank.png);background-repeat: no-repeat;background-position: 0 0;background-size: 100% auto;
			margin: -0.1rem 0 0 0.7rem;
		}
		#news ul li.external:hover p.text span::after{
			background-image: url(../img/common/icon_link_blank_on.png);background-repeat: no-repeat;background-position: 0 0;background-size: 100% auto;
			-webkit-transition: .1s linear;
			transition: .1s linear;
		}


	#news p.more{
		text-align: right;
		padding: 0 0.8rem 0 0;
		margin: 1.125rem 0 0 0;
	}
	#news p.more a{
		position: relative;
		display: block;
		line-height: 1;
		font-size: 0.9375rem;
		}
		#news p.more a::after {
			content: "";
			position: absolute;
			top: 0; bottom: 0; right: -0.8rem;
			margin: auto;
			vertical-align: middle;
			width: 0.4rem;
			height: 0.4rem;
			border-top: 2px solid #000000;
			border-left: 2px solid #000000;
			-webkit-transform: rotate(135deg);
			transform: rotate(135deg);
			-webkit-transition: all 0.3s ease;
			transition: all 0.3s ease;
		}
		body.js_isNotWin #news p.more a::after {
			top: -0.15rem;
		}
		body.js_isNotWin.js_isFirefox #news p.more a::after {
			top: -0.25rem;
		}

	#news p.more a:hover{
		color: #aaaaaa;
		-webkit-transition: color .1s linear;
		transition: color .1s linear;
		}
		#news p.more a:hover::after {
			-webkit-transition: .1s linear;
			transition: .1s linear;
			border-top: 2px solid #aaaaaa;
			border-left: 2px solid #aaaaaa;
		}




}@media screen and (max-width : 959px){

	#news h2{
		position: relative;
		width: 74vw;
		margin: 0 auto 8vw auto;
		letter-spacing: 0.03em;
		font-size: 5.5vw;
	}

	#gallery h2{
		padding: 0 0 3vw 0;
		position: relative;
		width: 74vw;
		margin: 25vw auto 15vw auto;
		letter-spacing: 0.03em;
		font-size: 5.5vw;
	}
	#gallery h2::after{
		content: '';
		display: block;
		width: 5.4vw;
		height: 3px;
		background-color: #222222;
		position: absolute;
		bottom: 0; left: 0;
	}


	/* -------------------------------------------------------------------------------------------
	*
	* メインビジュアル
	*
	* ----------------------------------------------------------------------------------------- */

	#mainVisual .slider-container{
		width: 100%;
		margin: 0 auto 22vw auto;
		position: relative;
	}


	/* -------------------------------------------------------------------------------------------
	*
	* ニュース
	*
	* ----------------------------------------------------------------------------------------- */

	#news{
		width: 74vw;
		margin: 0 auto 18vw auto;
	}

	#news ul{
		boorder-color: #222222;
		border-width: 2px 0 2px 0;
		border-style: solid;
	}
	#news ul li{
		line-height: 1.3;
		padding: 4.5vw 0;
		font-size: 0;
		}
		#news ul li:nth-of-type(n+2){
			boorder-color: #222222;
			border-width: 2px 0 0 0;
			border-style: solid;
		}
		#news ul li:nth-of-type(n+4){
			display: none;
		}
	#news ul li p.date{
		margin: 0 2vw 0 0;
		font-size: 3.5vw;
		letter-spacing: 0.03em;
	}
	#news ul li p.text{
	}
	#news ul li p.text span{
		display: inline-block;
		vertical-align: top;
		font-size: 3.8vw;
		letter-spacing: 0.02rem;
		}
		#news ul li.external p.text span::after{
			content: '';
			display: inline-block;
			vertical-align: middle;
			width: 3.5vw;
			height: 3.5vw;
			background-image: url(../img/common/icon_link_blank.png);background-repeat: no-repeat;background-position: 0 0;background-size: 100% auto;
			margin: -0.5vw 0 0 2vw;
		}

	#news p.more{
		font-size: 3.5vw;
		margin: 4.8vw 0 20vw 0;
		padding: 0 3vw 0 0;
		text-align: right;
	}
	#news p.more a{
		position: relative;
		display: inline-block;
		vertical-align: top;
		line-height: 1;
		letter-spacing: 0.03vw;
		}
		#news p.more a::after {
			content: "";
			position: absolute;
			top: 0.2vw; bottom: 0; right: -3vw;
			margin: auto;
			vertical-align: middle;
			width: 1vw;
			height: 1vw;
			border-top: 2px solid #000000;
			border-left: 2px solid #000000;
			-webkit-transform: rotate(135deg);
			transform: rotate(135deg);
			-webkit-transition: all 0.3s ease;
			transition: all 0.3s ease;
		}


}