/*=================================================
 * CSS for PC
 * ================================================= */

main{
}

nav+h2{
	font-size: 0;
	line-height: 0;
}

.toppage_box{	padding:5px 0px 5px 0px;}
.toppage_box > div{
	width: 1060px;
	margin: 0 auto;
}

/** img_up **/

#img_bg{
	width: 1060px;
	margin: 0 auto;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

#imgup{
}

/** slider **/

#slider{
	position: relative;
	font-size: 0;
	line-height: 0;
	text-align: center;
	margin: 0 0 20px 0;
}



/** info_top **/

#info_top{
	display: table;
	width: 100%;
	font-size: 0;
	line-height: 0;
	table-layout: fixed;
	margin: 0 0 80px 0;
}

#info_top_l,
#info_top_r{
	display: table-cell;
	vertical-align: top;
	padding: 40px 0;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

#info_top_l{
	background: #4c090b;
}

#info_top_r{
	background: #3b0507;
}


/** cover **/

#cover{
	position: relative;
	width: 480px;
	height: 640px;
	margin: 0 50px 0 auto;
}

#cover > div{
	width: 200px;
	height: 200px;
	text-align: center;
	padding: 55px 0 0 0;
	background: -webkit-linear-gradient(135deg, #3b0507 0%, #4c090b 49%, #3b0507 100%);
	background: -moz-linear-gradient(135deg, #3b0507 0%, #4c090b 49%, #3b0507 100%);
	background: -o-linear-gradient(135deg, #3b0507 0%, #4c090b 49%, #3b0507 100%);
	background: -ms-linear-gradient(135deg, #3b0507 0%, #4c090b 49%, #3b0507 100%);
	background: linear-gradient(-45deg, #3b0507 0%, #4c090b 49%, #3b0507 100%);
	position: absolute;
	z-index: 2;
	bottom: 10px;
	left: 10px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

#cover > div h3{
	position: relative;
	font-family: "FontA";
	font-size: 26px;
	line-height: 30px;
	color: #b18600;
	text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.7);
	letter-spacing: 0;
	z-index: 3;
}
#cover > div h3:before{
	width: 200px;
	position:absolute;
	top:0;
	left:0;
	display:block;
	content:attr(title);
	color:#ffe9a5;
	-webkit-mask-image:-webkit-linear-gradient(top, rgba(255,233,165,0) 20%, rgba(255,233,165,1) 40%, rgba(255,233,165,0) 80%);
	z-index: 3;
}

#cover > div .name{
	font-family: "Sawarabi Mincho";
	font-size: 20px;
	line-height: 20px;
	padding: 8px 0 5px 0;
}
#cover > div .name a{	color: #fff;}

#cover > div .prof{
	font-size: 12px;
	line-height: 18px;
}
#cover > div .prof span{	color: #ffdf49;}


/** news **/

#topnews{
	width: 480px;
	height: 640px;
	border: 1px solid #650c10;
	margin: 0 auto 0 50px;
	text-align: left;
	overflow-y		: auto;
	overflow-scrolling: touch;
	-webkit-overflow-scrolling: touch;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

#topnews h3{
	font-family: "Sawarabi Mincho";
	font-size: 14px;
	line-height: 30px;
	text-align: left;
	margin: 20px 20px 0 20px;
	padding: 0 0 4px 0;
	border-bottom: 1px solid #b28702;
}

#topnews h3 em{
	font-family: "FontA";
	font-size: 28px;
	line-height: 30px;
	color: #ffdf49;
}

#news_box .news_li{
	line-height	: 20px;
	margin: 0 20px;
	padding: 20px 0;
	border-bottom: 1px dotted #631b1d;
}
#news_box .news_li:last-of-type{	border-bottom: none;}

#news_box .news_li .news_title{
	font-family: "Sawarabi Mincho";
	font-size: 18px;
	font-weight: normal;
	line-height: 22px;
	color: #ffdf49;
}

#news_box .news_li .news_day{
	font-size: 12px;
	line-height: 18px;
	color: #ff7e83;
}

#news_box .news_li .text{
	font-size: 14px;
	line-height: 24px;
	padding: 15px 0 0 0;
}


/** newface **/

#newface{
	text-align: center;
	padding: 0 0 50px 0;
}

#newface h3{	margin-bottom: 60px;}

#newface ul{
	font-size: 0;
	line-height: 0;
	padding: 0 15px;
}

#newface li{
	position: relative;
	display: inline-block;
	vertical-align: top;
	margin: 0 12px 25px 12px;
}

figure{
	position: relative;
	display: inline-block;
	width: 276px;
	margin: 0;
	padding: 3px;
	cursor: pointer;
	box-shadow: none !important;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
figure > img{
	width: 270px;
	vertical-align: top;
	-webkit-transition	: 0.4s ease-in-out;
	-moz-transition	: 0.4s ease-in-out;
	-o-transition	: 0.4s ease-in-out;
	transition		: 0.4s ease-in-out;
}

figure:hover > img{
	opacity: 0.7;
	filter: alpha(opacity=70);
}

figure .border{
	position: absolute;
	opacity: 0.45;
}
figure .border:before,
figure .border:after,
figure .border div:before,
figure .border div:after{
	background-color: #b28702; /** LINE COLOR !!!!!! **/
	position: absolute;
	content: "";
	display: block;
	-webkit-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
}
figure .border:before,
figure .border:after{
	width: 0;
	height: 1px;
}
figure .border div:before,
figure .border div:after{
	width: 1px;
	height: 0;
}
figure .border.one{
	left: 0;
	top: 0;
	right: 5px;
	bottom: 5px;
}
figure .border.one:before,
figure .border.one div:before{
	left: 0;
	top: 0;
}
figure .border.one:after,
figure .border.one div:after{
	bottom: 0;
	right: 0;
}
figure .border.two{
	left: 5px;
	top: 5px;
	right: 0;
	bottom: 0;
}
figure .border.two:before,
figure .border.two div:before{
	right: 0;
	top: 0;
}
figure .border.two:after,
figure .border.two div:after{
	bottom: 0;
	left: 0;
}

figure:hover .border:before,
figure.hover .border:before,
figure:hover .border:after,
figure.hover .border:after{
	width: 100%;
}
figure:hover .border div:before,
figure.hover .border div:before,
figure:hover .border div:after,
figure.hover .border div:after{
	height: 100%;
}

#newface .name{
	font-size: 18px;
	line-height: 20px;
	text-align: left;
	padding: 8px 5px 2px 5px;
}
#newface .name a{	color: #fff;}

#newface .prof{
	font-size: 11px;
	line-height: 20px;
	text-align: left;
	padding: 0 5px;
}
#newface .prof span{
	color: #ffdf49;
	font-size: 10px;
	letter-spacing: -0.4px;
}
#newface .prof br{	display: none;}
#newface .prof i{	font-style: normal;}

#newface .icon{
	font-size: 12px;
	line-height: 14px;
	text-align: right;
	position: absolute;
	bottom: -24px;
	right: 5px;
}


/** btm bnr **/

#btm_etc_link_no {
	width: 1125px;
	text-align: left;
	margin: 40px auto -10px auto;
}

#btm_etc_link{
	width: 1125px;
	font-size		: 0;
	line-height		: 0;
	text-align: left;
	margin: 40px auto -10px auto;
}

#btm_etc_link a{
	width			: 217px;
	height			: 57px;
	display			: inline-block;
	vertical-align	: top;
	margin			: 0 5px 10px 5px;
}

#btm_etc_link .bg_k1{
	width			: 217px;
	height			: 57px;
	display			: inline-block;
	vertical-align	: top;
	margin			: 0 5px 10px 5px;
	padding: 0;
	text-align: center;
	-webkit-transition	: 0.2s ease-in-out;
	-moz-transition	: 0.2s ease-in-out;
	-o-transition	: 0.2s ease-in-out;
	transition		: 0.2s ease-in-out;
}

#btm_etc_link .bg_k1 span{
	font-size: 15px;
	font-weight: bold;
	line-height: 57px;
	border-radius		: 0;
  	-moz-border-radius	: 0;
   	-webkit-border-radius	: 0;
}

#btm_etc_link .bg_k1 span em{
	border-radius		: 0;
  	-moz-border-radius	: 0;
   	-webkit-border-radius	: 0;
}

#btm_etc_link .bg_k1:hover{
	text-decoration: none;
	opacity: 0.8;
	filter: alpha(opacity=80);
}

#btm_etc_link div.no{
	width			: 217px;
	height			: 57px;
	display			: inline-block;
	vertical-align	: top;
	margin			: 0 5px 10px 5px;
	border-width	: 1px;
	border-style	: solid;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

#btm_etc_link a:first-child,
#btm_etc_link div.no:first-child,
#btm_etc_link a:nth-child(6n),
#btm_etc_link div.no:nth-child(6n){
	margin-left: 0;
}

#btm_etc_link a:last-child,
#btm_etc_link div.no:last-child,
#btm_etc_link a:nth-child(5n),
#btm_etc_link div.no:nth-child(5n){
	margin-right: 0;
}

#top_link_sp{
	display: none;
}

/** outlink **/

.outlink{
	width: 1120px;
	margin: 0 auto;
}

#fgo{	padding-bottom: 40px;}
#fgo2{	padding-bottom: 40px;}
.fgo{
	width: 1060px;
	display: table;
	font-size: 0;
	line-height: 0;
	table-layout: fixed;
	margin: 0 auto 10px auto;
}
.fgo_in{
	display: table-cell;
	vertical-align: top;
}
.fgo_in table{	margin: 0 auto;}

.link_list{
	font-size:10;
	line-height:1.2;
	padding: 0 0 10px 0;
}

.link_list a{
	display: inline-block;
	vertical-align: top;
	margin: 10px 5px 10px 5px;
}

.fgo_pc{	display: block;}
.fgo_sp{	display: none;}

/** schedule **/

#schedule{
	text-align: center;
	padding: 0 0 50px 0;
}

#schedule h3{ margin-bottom: 60px;}

#schedule ul{
	padding-left: 35px;
}

#schedule .s_title{
	margin: 0 0 16px 0;
}

#schedule li{	margin: 0 20px 20px 0;}

#schedule li:after{	display: none;}

#schedule .time{
	font-size: 12px;
	font-weight: bold;
	line-height: 22px;
	text-align: center;
	border-width: 1px;
	border-style: solid;
	border-radius: 0;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

/** com **/

.com{
	text-align: left;
}

.com ul{
	font-size: 0;
	line-height: 0;
}

.com li{
	position: relative;
	display: inline-block;
	vertical-align: top;
	width: 212px;
}

.com .photo{
	border: 1px solid #f4b445;
}

.com .prof{
	font-size: 12px;
	font-color: #f4b445;
	line-height: 22px;
	text-align: center;
	padding: 3px 0;
}

.com .prof .sp{	display: none;}

.com .icon{
	position: absolute;
	top: 244px;
	left: 174px;
}

.com .icon img{
	width: 35px;
	height: auto;
}


/*=================================================
 * CSS for SP
 * ================================================= */

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

	/** slider **/
	#slider{
		width: auto;
		margin: 0 0 10px 0;
		padding: 0;
	}
	#slider img{
		width: 100%;
		height: auto;
	}
	.bx-wrapper .bx-pager {
		padding: 5px 0 0 0;
	}
	.bx-wrapper .bx-pager.bx-default-pager a{
		width: 10px;
		height: 10px;
		margin: 0 2.5px;
	}
	
	.toppage_box{	padding: 0;}
	.toppage_box > div{
		width: auto;
		margin: 0 0 10px 0;
	}


	/** img_up **/
	.toppage_box > div#img_bg{
		width: 100%;
		margin: 10px 0 10px 0;
	}
	.toppage_box > div#img_bg .bx-wrapper .bx-pager.bx-default-pager{	padding: 5px 0;}
	#imgup{
		width: auto;
	}
	#imgup > div{	text-align: center;}
	#imgup img{
		width: 100%;
		max-width: 1060px
	}
	#sp_slide .bx-wrapper{	position: static;}
	#sp_slide .bx-wrapper .bx-pager{	position: static;}
	
	/** info_top **/
	#info_top,
	#info_top_l,
	#info_top_r{
		display: block;
		width: auto;
		margin: 0;
		padding: 0;
	}
	#info_top_l{
		background: none;
	}
	#info_top_r{
		background: #3b0507;
	}


	/** cover **/
	#cover{
		display: table;
		width: 100%;
		height: auto;
		font-size: 0;
		line-height: 0;
		table-layout: fixed;
		margin: 0 0 10px 0;
	}
	#cover > a,
	#cover > div{
		width: auto;
		height: auto;
		display: table-cell;
		vertical-align: middle;
	}
	#cover > a img,
	#cover > img{
		width: 100%;
		height: auto;
	}
	#cover > div{
		height: auto;
		padding: 0;
		position: static;
	}
	#cover > div h3{
		font-size: 20px;
	}
	#cover > div h3:before{
		width: 100%;
	}
	#cover > div .name{
		font-size: 18px;
		line-height: 20px;
		padding: 8px 0 5px 0;
	}

	/** news **/
	#info_top_r{
		margin: 0 0 15px 0;
		padding: 10px;
	}
	#news{
		width: auto;
		margin: 0 0 10px 0;
		padding: 0 10px;
	}
	#topnews{
		width: auto;
		height: 320px;
		margin: 0;
		padding: 10px;
	}
	#topnews h3{
		font-size: 11px;
		line-height: 30px;
		margin: 0;
		padding: 0 0 4px 0;
	}
	#topnews h3 em{
		font-size: 20px;
		line-height: 30px;
	}
	#news_box .news_li{
		margin: 0 0 10px 0;
		padding: 0 0 10px 0;
	}
	#news_box .news_li .news_title{
		font-size	: 13px;
		line-height	: 22px;
	}
	#news_box .news_li .text{
		padding: 10px 0 0 0;
	}

	/** newface **/
	#newface{
		text-align: center;
		padding: 0 2.5px 0 2.5px;
	}
	#newface h3{
		margin: 0 10px 10px 10px;
	}
	#newface ul{	padding: 0;}
	#newface li{
		width: calc(100% / 3 - 5px);
		height: auto;
		margin: 0 2.5px 10px 2.5px;
	}
	#newface li:after{	display: none;}
	#newface li:nth-of-type(4n){	margin-right: 1.5px;}
	#newface .photo{
	}
	#newface .photo img{
		width: 100%;
		height: auto;
	}
	figure{
		width: 100%;
		margin: 0;
		padding: 0;
	}
	figure > img{
		width: 100%;
		height: auto;
	}
	figure .border{	display: none;}
	#newface .name{
		font-size: 12px;
		line-height: 12px;
		text-align: center;
		padding: 3px 0 2px 0;
	}
	#newface .prof{
		font-size: 10px;
		line-height: 12px;
		text-align: center;
		padding: 0;
		letter-spacing: -0.4px;
	}
	#newface .prof span{	color: #ffdf49;}
	#newface .prof br{	display: inline;}
	#newface .prof i{	display: none;}
	#newface .icon{
		width: 100%;
		font-size: 10px;
		line-height: 12px;
		text-align: center;
		background: rgba(59, 5, 7, 0.9);
		position: absolute;
		top: auto;
		bottom: 0;
		right: 0;
	}

	/** rss **/
	#rss{
		display: block;
		width: auto;
		margin: 0 0 10px 0;
		padding: 10px;
	}
	#rss h3{	margin-bottom: 10px;}
	#rss_r{
		display: block;
		width: auto;
		padding: 5px 10px 10px 10px;
		border-top: none;
		border-right: none;
		border-left: none;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
	}
	#rss_r a{
		display: block;
		width: 100%;
		line-height: 20px;
		margin-left: 0;
		padding: 5px 0;
	}
	#rss_r a em{
		display: inline-block;
		vertical-align: top;
		width: 120px;
		font-size: 10px;
	}
	#rss_r a span{
		display: inline-block;
		vertical-align: top;
		width: calc(100% - 120px);
		font-size: 11px;
	}

	#list, #list_title{	display: none;}

/** schedule **/
	#schedule{
		text-align: left;
		margin-top: 10px;
	}
	#schedule .s_title{	margin-bottom: 5px;}
	#schedule .time{
		font-size: 11px;
		line-height: 16px;
	}
	#schedule ul{
		padding: 0 1.5px 0 1.5px;
	}
	#schedule li{
		width: calc(100% / 3 - 3px);
		height: auto;
		margin: 0 1.5px 10px 1.5px;
	}
	#schedule li:after{	display: none;}
	#schedule li:nth-of-type(4n){	margin-right: 1.5px;}
	#schedule .photo{
	}
	#schedule .photo img{
		width: 100%;
		height: auto;
	}
	
	#schedule .icon{
		position: absolute;
		top: auto;
		left: auto;
		bottom: 52px;
		right: 2px;
	}
	#schedule .icon img{
		width: 25px;
		height: auto;
	}

	/** com **/
	.com ul{	padding: 0;}
	.com li{
		width: auto;
		height: auto;
		border: none;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
	}
	.com .photo{
		font-size: 0;
		line-height: 0;
	}
	.com .photo img{
		width: 100px;
		height: 133px;
		padding: 0;
	}
	.com .prof{
		font-size: 11px;
		line-height: 14px;
		padding: 2px 0;
	}
	.com .prof a{	font-size: 12px;}
	.com .prof .sp{	display: inline;}
	.com .prof .pc{	display: none;}
	.com .icon{
		position: absolute;
		top: 107px;
		left: 74px;
	}
	.com .icon img{
		width: 25px;
		height: auto;
	}
/** btm bnr **/
	#btm_etc_link_no{
		width: auto;
		text-align: center;
		margin: 0;
		padding: 0;
	}
	#btm_etc_link{
		width: auto;
		text-align: center;
		margin: 0;
		padding: 0;
	}
	#btm_etc_link a{
		width: 145px;
		height: 38px;
	}
	#btm_etc_link .bg_k1{
		width: 145px;
		height: 38px;
	}
	#btm_etc_link a > img{	width: 145px; height: 38px;}
	#btm_etc_link .bg_k1 span{
		font-size: 13px;
		font-weight: bold;
		line-height: 38px;
	}
	#btm_etc_link div.no{
		width: 145px;
		height: 38px;
		display: none;
	}
	#btm_etc_link a:first-child,
	#btm_etc_link div.no:first-child,
	#btm_etc_link a:nth-child(6n),
	#btm_etc_link div.no:nth-child(6n){
		margin-left: 5px;
	}
	#btm_etc_link a:last-child,
	#btm_etc_link div.no:last-child,
	#btm_etc_link a:nth-child(5n),
	#btm_etc_link div.no:nth-child(5n){
		margin-right: 5px;
	}
	#top_link_sp{
		display: block;
		margin: 10px 0;
		text-align: center;
	}
	
	/** outlink **/
	.outlink{
		width: auto;
		margin: 0;
		padding: 0 0 0 0;
	}
	#fgo{	padding-bottom: 10px;}
	#fgo2{padding:0 0 10px 0;}
	.fgo{
		width: auto;
		display: block;
		margin: 0;
	}
	.fgo_in{
		display: block;
		margin: 0 0 5px 0;
	}
	.link_list{
		padding: 0 0 5px 0;
		text-align: center;
	}
	.link_list:last-child{
		padding: 0 0 5px 0;
	}
	.link_list a{
		margin: 0 2px 5px 2px;
	}
	.fgo_pc{	display: none;}
	.fgo_sp{	display: block;}
	.bnr46860 img{	width: 300px; height: auto;}
	#bnr468 img{	width: 300px; height: auto;}
}




