@charset "UTF-8";
/* CSS Document */


/********************************
PC・SP 共通
********************************/

header{
	width:100%;
	position:absolute;
	background-color:transparent;
	left:0;
	top:0;
}

article{
	width:100%;
	max-width:100%;
}

#top_main{
	width:100%;
	max-width:100%;
	min-width:980px;
	height:850px;
	margin:0 auto;
	position:relative;
	overflow:hidden;
}

#top_main h1{
	width:100%;
	padding-top:300px;
	font-size:60px;
	font-weight:normal;
	line-height:1.4;
	text-align:center;
	background:none;
	color:#333333;
	z-index:100;
	position:relative;
	text-shadow: 3px 3px 5px rgba(255,255,255,1),
				-3px -3px 5px rgba(255,255,255,1),
				3px -3px 5px rgba(255,255,255,1),
				-3px 3px 5px rgba(255,255,255,1);
}

#slideImg,
#slideTxt{
    width:100%;
    height:100%;
	margin:0;
	padding:0;
    position:absolute;
    left:0;
    top:0;
}

#slideImg li,
#slideTxt li{
    width:100%;
    height:100%;
    background-repeat:no-repeat;
    background-size:cover;
    position:absolute;
}

#slideImg li{
    filter: alpha(opacity=0);
    -ms-filter: "alpha(opacity=0)";
    opacity:0;
}

#slideTxt li{
    display:none;
}

#slideImg li.top_mainSection_img01{background-image:url(../jpg/top_bg_slide01.jpg); background-position:center center;}
#slideImg li.top_mainSection_img02{background-image:url(../jpg/top_bg_slide02.jpg); background-position:center center;}
#slideImg li.top_mainSection_img03{background-image:url(../jpg/top_bg_slide03.jpg); background-position:center center;}
#slideImg li.top_mainSection_img04{background-image:url(../jpg/top_bg_slide04.jpg); background-position:center center;}

.top_menuBack{
	width:100%;
	height:90px;
	position:absolute;
	top:0;
	left:0;
	z-index:5000;
	display:none;
	background: -moz-linear-gradient(top,  rgba(255,255,255,0.7) 0%, rgba(255,255,255,0.4) 70%, rgba(255,255,255,0) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(255,255,255,0.7) 0%,rgba(255,255,255,0.4) 70%,rgba(255,255,255,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(255,255,255,0.7) 0%,rgba(255,255,255,0.4) 70%,rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#99ffffff', endColorstr='#00ffffff',GradientType=0 ); /* IE6-9 */
}

#top_news{
	width:960px;
	margin:0 auto;
	padding:50px 10px;
}

.top_newsIn{
	width:100%;
	display:table;
	table-layout:fixed;
}

.top_newsTitle{
	width:12em;
	display:table-cell;
	vertical-align:top;
}

.top_newsTitle a{
	display:inline-block;
	line-height:1;
}

.top_newsTitle a img{
	width:85px;
	height:auto;
}

.top_newsTitle a:hover{
	background-color:#E6E6E6;
}


#top_news h2{
	margin:0 0 5px;
	padding:0;
	font-size:20px;
	font-weight:normal;
	color:#333;
	background:none;
}

#top_news ul{
	display:table-cell;
	list-style:none;
}

#top_news ul li{
	margin:6px 0;
}

#top_news ul li dl{
	width:100%;
	margin-bottom:0;
	display:table;
	table-layout:fixed;
}

#top_news ul li dl dt,
#top_news ul li dl dd{
	display:table-cell;
	vertical-align:top;
}

#top_news ul li dl dt{
	width:15em;
	padding-right: 1em;
}

#top_news ul li dl dt span{
	width:9em;
	text-align:center;
	color:#FFFFFF;
	display:inline-block;
	vertical-align:top;
	float: right;
}

#top_news ul li dl dd a{
	padding-left:15px;
	display:inline-block;
	background-image:url(../png/cmn_icon_link02.png);
	background-repeat:no-repeat;
	background-position:left 5px;
	background-size:8px 10px;
	text-decoration:none;
}

#top_news ul li dl dd a:hover{
	text-decoration:underline;
}

#top_tech{
	width:100%;
	max-width:1600px;
	min-width:980px;
	margin:0 auto;
	padding:60px 0;
	background-image:url(../jpg/top_bg_tech.jpg);
	background-size:cover;
	background-position:center top;
	text-align:center;
}

#top_tech h2{
	margin:0 0 50px;
	font-size:34px;
	font-weight:normal;
	color:#333333;
	background:none;
}

#top_tech ul{
	width:980px;
	margin:0 auto;
	font-size:0;
}

#top_tech li{
	width:25%;
	margin-bottom:40px;
	text-align:left;
	display:inline-block;
	font-size:16px;
	vertical-align:top;
	text-align:center;
	line-height:1.4;
}

#top_tech li a img{
	width:203px;
	height:203px;
	margin-bottom:5px;
	overflow:hidden;
	background-color:#FFF;
}

#top_tech li a span{
	width:185px;
	margin:0 auto;
	padding-left:12px;
	display:block;
	background-image:url(../png/cmn_icon_link02.png);
	background-repeat:no-repeat;
	background-position:left 6px;
	background-size:8px 10px;
	text-decoration:none;
	text-align:left;
}

#top_pickup{
	min-width:960px;
	padding:60px 10px;
	text-align:center;
}

#top_pickup h2{
	margin:0 0 50px;
	font-size:34px;
	font-weight:normal;
	color:#333333;
	background:none;
}

#top_pickup ul{
	width:960px;
	margin:0 auto 40px;
	padding:0;
	display:table;
	font-size:16px;
}

#top_pickup li{
	width:33.33333% ; /* 未対応ブラウザ用フォールバック */
	width:-webkit-calc((100% / 3) -0.1px) ;
	width:calc((100% / 3) -0.1px) ;
	margin-bottom:40px;
	display:table-cell;
	vertical-align:top;
	line-height:1.2;
}

#top_pickup li img{
	margin-bottom:5px;
}

#top_pickup li a span{
	width:212px;
	margin:0 auto;
	padding-left:14px;
	display:block;
	background-image:url(../png/cmn_icon_link02.png);
	background-repeat:no-repeat;
	background-position:left 4px;
	background-size:8px 10px;
	text-decoration:none;
	text-align:left;
}

#top_pickup li a span.top_pickup_blank{
	padding-left:18px;
	background-image:url(../png/cmn_icon_blank02.png);
	background-position:left 2px;
	background-size:14px 14px;
}

#top_pickup p a{
	display:inline-block;
	text-align:left;
	font-size:16px;
}

#top_pickup p a span{
	width:342px;
	margin:0 auto;
	padding-left:14px;
	display:inline-block;
	background-image:url(../png/cmn_icon_link02.png);
	background-repeat:no-repeat;
	background-position:left 4px;
	background-size:8px 10px;
	text-decoration:none;
	text-align:left;
}

#top_pickup p a span.top_pickup_blank{
	padding-left:18px;
	background-image:url(../png/cmn_icon_blank02.png);
	background-position:left 4px;
	background-size:14px 14px;
}

#top_tech li a:hover img,
#top_pickup li a:hover img,
#top_pickup p a:hover img{
	opacity:0.7;
}

#top_tech li a,
#top_pickup li a,
#top_pickup p a{
	text-decoration:none;
	color:#333;
}

#top_tech li a:hover,
#top_pickup li a:hover,
#top_pickup p a:hover{
	color:#E50011;
}





/********************************
PC
********************************/

@media print, screen and (min-width: 768px) {

	.top_tech_toSite a{
		min-height:19px;
		padding:15px 15px 15px 40px;
		font-size:20px;
		color:#333;
		text-decoration:none;
		display:inline-block;
		border:#CCC solid 1px;
		line-height:1;
		background-image:url(../png/cmn_icon_link02.png);
		background-size:8px 10px;
		background-position:15px center;
		background-repeat:no-repeat;
		background-color:#FFF;
	}
}

/********************************
Tablet
********************************/

@media screen and (min-width: 768px) and (max-width: 980px) {

	#top_main{
		min-width:100%;
		height:600px;
	}

	#top_main h1{
		padding-top:250px;
		font-size:40px;
	}

	#top_main h1 img{
		width:600px;
		height:auto;
	}

	.top_mainLink{
		display:inline-block;
		position:absolute;
		bottom:0px;
		list-style:none;
	}

	.top_mainLink li{
		margin-bottom:10px;
	}

	.top_mainLink li img{
		width:200px;
		height:auto;
	}

	.top_mainLink li a{
		display:inline-block;
	}

	.top_mainLink li a:hover{
		background-color:rgba(229,0,17,0.5);
	}

	.top_rikochallenge2017{
		left:15px;
		bottom:15px;
	}

	.top_rikochallenge2017 a img{
		width: 300px;
		height: auto;
	}

	#top_news{
		width:auto;
		min-width:auto;
		padding:30px 10px;
	}


	#top_news h2{
		font-size:20px;
	}

	.top_newsTitle{
		width:100px;
		display:table-cell;
	}

	.top_newsIn{
		padding:0;
	}

	#top_news ul li dl{
		font-size:12px;
	}

	#top_tech{
		min-width:100%;
	}

	#top_tech ul{
		width:90%;
		text-align:left;
	}

	#top_tech li{
		width:33.33333% ; /* 未対応ブラウザ用フォールバック */
		width:-webkit-calc((100% / 3) -0.1px) ;
		width:calc((100% / 3) -0.1px) ;
		text-align:center;
	}

	#top_pickup{
		width:auto;
		min-width:100%;
		padding:60px 0;
		text-align:center;
	}

	#top_pickup ul{
		padding:0;
		width:auto;
	}

	#top_pickup li{
		padding:0 10px;
	}

}

/********************************************************************************************************************************
SP
********************************************************************************************************************************/

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

	header{
		width:100%;
		position:relative;
		background-color:transparent;
	}

	#top_main{
		min-width:100%;
		height:250px;
		margin:-90px auto 0;
		position:relative;
		overflow:hidden;
	}

	#top_main h1{
		width:100%;
		padding-top:90px;
	}

	#top_main h1 img{
		width: 80%;
		height: auto;
	}

	#slideImg,
	#slideTxt{
	    height:250px;
	}

	#top_news{
		width:100%;
		margin:0 auto;
		padding:40px 10px;
		box-sizing: border-box;
	}

	.top_newsIn{
		width:100%;
		display:block;
	}

	.top_newsTitle{
		width:100%;
		margin-bottom: 10px;
		display:block;
	}

	.top_newsTitle h2,
	.top_newsTitle p{
		display:block;
	}

	.top_newsTitle p{
		display: none;
	}

	#top_news h2{
		font-size:21px;
	}

	#top_news ul{
		margin: auto;
		padding: 0;
		display:block;
	}

	#top_news ul li{
		margin:1.5em 0 0;
	}

	#top_news ul li:nth-child(n+4){
		display: none;
	}

	#top_news ul li dl dt,
	#top_news ul li dl dd{
		display:block;
		vertical-align:top;
	}

	#top_news ul li dl dt{
		margin-bottom: 5px;
		padding-right: 0;
	}

	.top_news_toList{
		margin-top: 30px;
		text-align: center;
	}

	#top_tech{
		width:100%;
		max-width: inherit;
		min-width: inherit;
		margin:0 auto;
		padding:30px 0 0;
		background-image:url(../jpg/top_bg_tech.jpg);
		background-size:cover;
		background-position:center top;
		text-align:center;
	}

	#top_tech h2{
		margin:0 0 20px;
		font-size:21px;
		font-weight:normal;
		color:#333333;
		background:none;
	}

	#top_tech ul{
		width:100%;
		margin-bottom: 30px;
		padding: 0 10px;
		box-sizing: border-box;
	}

	#top_tech li{
		width:50%;
		padding: 0 10px;
		box-sizing: border-box;
		margin-bottom:20px;
		font-size:12px;
	}

	#top_tech li a img{
		width:100%;
		height:auto;
		background-color:#FFF;
	}

	#top_tech li a span{
		width:100%;
		margin:0 auto;
		padding-left:10px;
		background-position:left 3px;
		background-size:7px auto;
		box-sizing: border-box;
	}

	.top_tech_toSite a{
		width: 100%;
		height: 80px;
		padding-top: 45px;
		background-color: rgba(0, 0, 0, 0.8);
		color: #FFF;
		display: block;
		text-decoration: none;
		box-sizing: border-box;
		background-image: url(../top_icon_techservice.html);
		background-repeat: no-repeat;
		background-position: center 20px;
		-webkit-background-size: 25px auto;
		background-size: 20px auto;
	}

	.top_tech_toSite a:hover{
		background-color:rgba(255,153,51,0.8);
	}

	#top_pickup{
		display: none;
	}


}
