@charset "UTF-8";

/*================================================================
	=01 color
================================================================*/
.pcnone{display: none !important;}
img{max-width: 100%;height: auto;}
.colA{color:#d51717;}
a img{opacity: 1}
a:hover img{opacity: .8}

/*================================================================
	=02 head
================================================================*/
.newsArea .more,
.newsArea .ttl,
.newsArea li a .btnTypeA,
#localNav li,
.tabList li,
#content [class*=h3ttl],
#content [class*=h2ttl],
#content [class*=h1ttl]{
	font-family:"ヒラギノ明朝 ProN","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","MS PMincho","MS 明朝",serif;
}
#content .h1ttlA{
	background-color:#000;
	padding:35px 0;
	font-size:50px;
	font-weight: normal;
	line-height:1;
}
#content .h2ttlA{
	padding:35px 0;
	font-size:46px;
	font-weight: normal;
	line-height:1;
	text-align: center;
}
#content .h2ttlB{
	padding-bottom: 15px;
	margin-bottom: 50px;
	border-bottom: 4px solid #d81918;
	font-size:33px;
	font-weight: normal;
	line-height:1;
	text-align: center;
}
#content .h2ttlC{
	padding: 10px 0;
	font-size:40px;
	font-weight: normal;
	line-height:1;
	text-align: center;
	color: #fff;
	background-color: #d81918;
}
#content .h3ttlA{
	text-align:center;
	font-size:30px;
	font-weight: normal;
	color:#fff;
	background-color:#d51717;
	margin-bottom:40px;
	line-height: 1.4;
}
#content .h3ttlB{
	text-align:center;
	font-size:30px;
	font-weight: normal;
	color:#fff;
	margin-bottom:40px;
	line-height: 1.4;
}
#content .h3ttlC{
	position: relative;
	font-size:30px;
	font-weight: normal;
	color:#fff;
	margin-bottom:20px;
	padding-left: 30px;
	line-height: 1.4;
}
#content .h3ttlC:before{
	content: "";
	width: 9px;
	height: 1.4em;
	position: absolute;
	top: .2em;
	left:0;
	background-color: #d51717;
}
#content .h4ttlA{
	font-size:18px;
	font-weight: normal;
	color:#fff;
	margin-bottom:10px;
	line-height: 1.4;
}

/*================================================================
	=03 text
================================================================*/
/* note */
#content .noteC,
#content .noteB,
#content .noteA{
	display:inline-block;
	padding:5px 10px;
	background:#d51717;
	font-size:24px;
	color:#fff;
}
#content .noteB{
	font-size:30px;
}
#content .noteC{
	margin-bottom:30px;
}

/*================================================================
	=04 list
================================================================*/
#content .itemListA{
	text-align:center;
	margin-bottom:50px;
}
#content .itemListA ul{
	display:table;
	max-width:760px;
	margin:-40px auto 0;
	text-align:left;
	-webkit-transform:translate(-20px,0);
	    -ms-transform:translate(-20px,0);
	        transform:translate(-20px,0);
}
#content .itemListA ul li{
	display:inline-block;
	width:340px;
	margin:40px 0 0 40px;
	font-size:12px;
	vertical-align:top;
}
#content .itemListA ul li > a{
	display:block;
}
#content .itemListA ul li > a > *{
	margin-bottom:10px;
}
#content .itemListA ul li > a > .img{
	min-height: 340px;
}
#content .itemListA ul li .ttl{
	font-size:14px;
	font-weight:bold;
}
#content .itemListA ul li > a:hover img{
	opacity:0.8;
}

/*================================================================
	=06 block
================================================================*/
#content .blockO{
	overflow:hidden;
}
#content .blockA{
	width: 900px;
	margin: 0 auto;
}
#content .block2A{
	margin: 0 auto 55px;
}
#content .block2A:after{
	content: "";
	clear: both;
	display: block;
}
#content .block2A .blockL{
	float: left;
	margin-right: 35px;
}
#content .block2A .blockR{
	float: right;
	margin-left: 35px;
}

/*================================================================
	=07 box
================================================================*/
#content .h1ttlB + .contentInner,
#content .h1ttlA + .contentInner{
	padding-top:40px;
}
#content .h1ttlA + .contentInner [class*="h2ttl"]{
	margin-bottom:85px;
}
#content .contentInner{
	display:block;
	width:960px;
	margin:0 auto;
	text-align: left;
}
#content .noteBoxA{
	width: 860px;
	margin: 0 auto;
	padding: 25px 30px;
	background-color: #333;
}
#content .noteBoxA li,
#content .noteBoxA p{
	color: #5f5f5f;
}
#content .noteBoxA .list li{
	padding-left: 1em;
	text-indent: -1em;
}

/*================================================================
	=08 btn
================================================================*/
#content .btnTypeB,
#content .btnTypeA{
	display:block;
	position:relative;
	text-align:center;
	font-size:16px;
	background-color:#222;
	padding:3px 15px;
	color:#fff;
	overflow:hidden;
}
#content .btnTypeB{
	display:inline-block;
	min-width: 260px;
}
#content .btnTypeB:after,
#content .btnTypeA:after{
	content:"";
	position:absolute;
	bottom:-15px;
	right:-15px;
	width:25px;
	height:25px;
	background-color:#d51717;
	-webkit-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg);
}
#content a:hover .btnTypeB,
#content .btnTypeB:hover,
#content a:hover .btnTypeA,
#content .btnTypeA:hover{
	background-color:#d51717;
}
#content a:hover .btnTypeB:after,
#content .btnTypeB:hover:after,
#content a:hover .btnTypeA:after,
#content .btnTypeA:hover:after{
	background-color:#222;
}
#content .btnTypeC{
	display:inline-block;
	position:relative;
	text-align:center;
	font-size:21px;
	font-weight: normal;
	background-color:#222;
	padding:15px 30px;
	color:#fff;
	overflow:hidden;
}
#content .btnTypeC:after{
	content:"";
	position:absolute;
	bottom:-15px;
	right:-15px;
	width:25px;
	height:25px;
	background-color:#d51717;
	-webkit-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg);
}
#content a:hover .btnTypeC,
#content .btnTypeC:hover{
	background-color:#d51717;
}
#content a:hover .btnTypeC:after,
#content .btnTypeC:hover:after{
	background-color:#222;
}

/*================================================================
	=09 modal
================================================================*/
#colorbox .modalA{
	background-color:#fff;
	padding-bottom:58px;
	text-align:center;
	color:#000;
	font-size:13px;
}
#colorbox .modalA .img{
	padding:40px;
}
#colorbox .modalA .sub,
#colorbox .modalA .ttl{
	font-size:16px;
	font-weight:bold;
	color:#fff;
	padding:3px;
}
#colorbox .modalA .ttl{
	background-color:#d51717;
}
#colorbox .modalA .sub{
	background-color:#000;
}
#colorbox .modalA .inner{
	padding:35px 64px 0;
	text-align:left;
}
#colorbox .modalA .inner p+p{
	margin-top:25px;
}
.modalA .btnTypeB {
	text-align: center;
}
.modalA .btnTypeB a {
	display: inline-block;
	min-width: 160px;
	background-color: #d51717;
	padding: 12px 40px;
}

/*================================================================
	=99 other
================================================================*/
#content .disnone{display:none !important;}
#localNav{
	position:fixed;
	right:0;
	top:50%;
	z-index:100;
}
#localNav li{
	position:relative;
	background-color:#222222;
	min-width:118px;
	overflow:hidden;
}
#localNav li~li{
	margin-top:3px;
}
#localNav li a{
	display:block;
	position:relative;
	text-align:right;
	padding:5px 5px 5px 23px;
	color:#5c5c5c;
}
#localNav li a:before{
	content:"";
	position:absolute;
	bottom:-15px;
	left:-15px;
	width:25px;
	height:25px;
	background-color:#000;
	-webkit-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg);
}

#localNav li a.current{
	color:#fff;
}
#localNav li a.current:before{
	background-color:#b41919;
}

.tabList{
	margin: -15px 0 65px -15px;
	text-align: center;
}
.tabList li{
	display: inline-block;
	margin: 15px 0 0 15px;
}
.tabList li a{
	display: block;;
	min-width: 230px;
	position: relative;
	font-size: 18px;
	padding: 10px;
	line-height: 1.2;
	background-color: #fff;
	color: #d51717;
}
.tabList li a.on{
	background-color: #d51717;
	color: #fff;
}
.tabList li a.on:after{
	content: "";
	position: absolute;
	bottom: -14px;
	left: 50%;
	border: 8px solid transparent;
	border-bottom: 0;
	border-top: 14px solid #d51717;
	-webkit-transform: translate(-50%,0);
	    -ms-transform: translate(-50%,0);
	        transform: translate(-50%,0);
}

.tableA{
	border-top: 1px solid #2d2d2d;
	border-left: 1px solid #2d2d2d;
}
.tableA tr > *{
	border-bottom: 1px solid #2d2d2d;
	border-right: 1px solid #2d2d2d;
	background-color: rgba(0,0,0,.5);
	padding: 10px;
}
.tableA tr > th{
	text-align: center;
	font-weight: normal;
}

.dlTypeA{
	display: table;
	margin: 15px 0 30px;
}
.dlTypeA > *{
	display: table-cell;
	vertical-align: middle;
	font-size: 13px;
	padding: 0 1em;
	min-width: 4em;
}
.dlTypeA dt{
	background-color: #fff;
	text-align: center;;
	color: #000;
	border: 1px solid #fff;
	border-right: 0;
}
.dlTypeA dd{
	border: 1px solid #fff;
	color: #fff;
}

.ancList{
	margin: -15px 0 80px -14px;
	font-size: 0;
}
.ancList li{
	display: inline-block;
	vertical-align: top;
	background-color: #000;
	text-align: center;
	margin: 15px 0 0 14px;
}
.ancList li a{
	display: block;
	min-width: 147px;
}
.ancList li img{
	max-width: 147px;
	max-height: 85px;
}

.tag{
	float: right;
	font-size: 0;
}
.tag li{
	display: inline-block;
	margin-left: 10px;
}

.layer{
	width: 100%;
}

#error p{
	text-align: center;
}

.newsArea{
	background-color: rgba(0,0,0,.5);
	margin:40px 0 30px;
}
.newsArea .ttl{
	font-size: 30px;
	margin-bottom: 20px;
	padding-top: 5px;
}
.newsArea ul{
	margin: -29px 0 0 -29px;
	font-size: 0;
}
.newsArea li{
	display: inline-block;
	vertical-align: top;
	margin: 29px 0 0 29px;
	font-size: 13px;
	width: 203px;
	text-align: left;
	line-height: 1.5;
}
.newsArea li a{
	display: block;
	text-decoration: none;
	color: #fff;
}
.newsArea li a .img{
	margin-bottom: 15px;
	width: 203px;
	height: 148px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.newsArea li a p{
	margin-bottom: 5px;
}
.newsArea li a p span{
	display: block;
}
#content .newsArea li a .btnTypeA{
	font-size: 13px;
}
.newsArea .more{
	font-size: 13px;
	padding: 22px 0 30px;
}
.newsArea .more a{
	display: inline-block;
	min-width: 203px;
	padding:8px 5px;
	line-height: 1.2;
	box-sizing: border-box;
	background-color: #d51717;
	font-weight: normal;
}
.newsArea .more a:hover{
	background-color: #222;
}
