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

/*------------------------------------------------------------------------------------------------
	全体
------------------------------------------------------------------------------------------------*/
#topWrap h2																																																			{ text-align:center; }
#topWrap h2 span																																															{ display:block; color:#0085cc; font-weight:normal; margin-bottom:5px; font-size:257%; font-family: 'Roboto', sans-serif; line-height:1em; }
#topWrap h3																																																			{ text-align:center; font-size:114%; }
#topWrap h3 span																																															{ display:block; color:#0085cc; font-weight:normal; font-size:163%; font-family: 'Roboto', sans-serif; line-height:1em; }

/*------------------------------------------------------------------------------------------------
	MV
------------------------------------------------------------------------------------------------*/
#topWrap #mainVisual																																												{ width:100%; overflow:hidden; position:relative; }
#topWrap #mainVisual .crosscover-item a																														{ display:block; width:100%; height:100%; position:absolute; left:0; top:0; }
#topWrap #mainVisual .crosscover-item																															{ transform:scale(1.2,1.2); }

/* オリジナル */

@keyframes flashIn {
	from {
			-webkit-filter: brightness(25);
							filter: brightness(25);
		}
	
	100% {
			-webkit-filter: brightness(1);
							filter: brightness(1);
	}
}

.flashIn {
  animation-name: flashIn;
}

#topWrap #mainVisual .crosscover-item	{ background-repeat:no-repeat; background-size:cover; }
#topWrap #mainVisual .crosscover-item.is-active { transition:transform, 9s, ease, 9s; transform:scale(1,1) rotate(0.001deg); z-index:10; }
#topWrap #mainVisual .crosscover-player	{ display:none; }
#topWrap #mainVisual .crosscover-controller	{ top:54%; bottom:auto; }
#topWrap #mainVisual .crosscover-dots	{ z-index:20; }
[class^="crosscover-dots-nav-"]		{ padding:10px; }
[class^="crosscover-dots-nav-"] button	{ width:15px; height:15px; }
.crosscover-controller														{ z-index:20; }
.crosscover-icon-next::after, .crosscover-icon-prev::after	{ border-top:solid 4px #ffffff; border-right:solid 4px #ffffff; }

/*------------------------------------------------------------------------------------------------
	PICK UP
------------------------------------------------------------------------------------------------*/
#topWrap #pickupSection																																										{ padding:50px 0 65px; }
#topWrap #pickupSection h2																																							{ opacity:0; filter:alpha(opacity=0); top:10px; position:relative; }
#topWrap #pickupSection ul																																								{ opacity:0; filter:alpha(opacity=0); top:10px; position:relative; margin:35px auto 0; width:1226px; }
#topWrap #pickupSection ul li																																							{ width:280px; float:left; margin:0 13px; cursor:pointer; }
#topWrap #pickupSection ul li .hoverOuter																													{ width:280px; height:160px; display:block; overflow:hidden; }
#topWrap #pickupSection ul li img																																			{ width:100%; transition:transform, 1s, ease, 1s; }
#topWrap #pickupSection ul li:hover img																															{ opacity:0.7; filter:alpha(opacity=70); transform:scale(1.1,1.1); }
#topWrap #pickupSection ul li a																																					{ display:block; margin-top:15px; font-size:86%; line-height:1.6em; color:#000000; }
#topWrap #pickupSection ul li a:hover																																	{ color:#000000; }
#topWrap #pickupSection ul li:hover a																																	{ color:#0098d6; }
#topWrap #pickupSection ul li em																																				{ display:block; font-style:normal; margin-bottom:5px; font-weight:bold; font-size:117%; }

/* slickList */
#topWrap #pickupSection ul#slickList																																	{ position:relative; }
#topWrap #pickupSection ul#slickList button.slick-arrow																			{ position:absolute; top:50px;width:46px; height:46px; text-indent:-9999px; }
#topWrap #pickupSection ul#slickList button.slick-prev																				{ left:-50px; background:url(/en/images/slider_arrow_prev_pc.png) no-repeat left top; }
#topWrap #pickupSection ul#slickList button.slick-next																				{ right:-55px; background:url(/en/images/slider_arrow_next_pc.png) no-repeat left top; }

/*------------------------------------------------------------------------------------------------
	ABOUT US
------------------------------------------------------------------------------------------------*/
#topWrap #aboutSection																																											{ background:url(/en/images/about_bg_pc.gif) no-repeat center top; background-size: cover; border-top:solid 1px #e5e5e5; }
#topWrap #aboutSection h2																																								{ opacity:0; filter:alpha(opacity=0); top:10px; position:relative; }
#topWrap #aboutSection ul																																									{ margin-top:30px; }
#topWrap #aboutSection ul li																																							{ opacity:0; filter:alpha(opacity=0); top:10px; position:relative; border-right:solid 1px #e5e5e5; float:left; }
#topWrap #aboutSection ul li:first-child																																{ border-left:solid 1px #e5e5e5; }
#topWrap #aboutSection ul li a																																						{ padding:10px 44px 50px; display:block; color:#000000; width: 210px; }
#topWrap #aboutSection ul li img																																				{ width:210px; }
#topWrap #aboutSection ul li span																																			{ display:block; font-size:129%; font-weight:bold; text-align:center; margin-top:20px; }
#topWrap #aboutSection p																																									{ opacity:0; filter:alpha(opacity=0); margin-top:45px; top:10px; position:relative; }

/*------------------------------------------------------------------------------------------------
	WORKS
------------------------------------------------------------------------------------------------*/
#topWrap #worksSection																																										{ border-top:solid 1px #e5e5e5; }
#topWrap #worksSection h2																																								{ opacity:0; filter:alpha(opacity=0); top:10px; position:relative; }
#topWrap #worksSection p																																									{ opacity:0; filter:alpha(opacity=0); margin-top:50px; top:10px; position:relative; }

/*------------------------------------------------------------------------------------------------
	TECHNOLOGY
------------------------------------------------------------------------------------------------*/
#topWrap #technologySection																																							{ position:relative; background:#333333; }
#topWrap #technologySection h2																																				{ position:absolute; opacity:0; filter:alpha(opacity=0); z-index:1; top:10px; left:0; right:0; background:url(/en/images/technology_bg01.jpg) no-repeat center top; background-size:cover; color:#ffffff; height:270px; padding-top:60px; }
#topWrap #technologySection h2 span																																{ color:#ffffff; }
#topWrap #technologySection ul																																					{ position:relative; z-index:2; padding-top:190px; left:0; right:0; }
#topWrap #technologySection ul li																																				{ opacity:0; filter:alpha(opacity=0); top:10px; position:relative; height:500px; }
#topWrap #technologySection ul li .contentOuter																									{ margin:0 auto; padding:45px 0 0; overflow:hidden; }
#topWrap #technologySection ul li .contentOuter div																						{ opacity:0; filter:alpha(opacity=0); top:10px; position:relative; background:#ffffff; width:340px; padding:40px 50px; }
#topWrap #technologySection ul li .contentOuter div h3																				{ text-align:left; }
#topWrap #technologySection ul li .contentOuter div h3 span																{ line-height:1.3em; margin-bottom:10px; }
#topWrap #technologySection ul li .contentOuter div p																					{ margin-top:20px; }

/* リスト個別 */
#topWrap #technologySection ul li#civilEngineering																							{ background:url(/en/images/technology_bg02_pc.png) no-repeat center top; }
#topWrap #technologySection ul li#civilEngineering .contentOuter div										{ padding:30px 50px 50px; }
#topWrap #technologySection ul li#civilEngineering .contentOuter div,
#topWrap #technologySection ul li#environmentalTechnology .contentOuter div			{ float:right; }
#topWrap #technologySection ul li#buildingTechnology																				{ background:#0085cc url(/en/images/technology_bg03_pc.png) no-repeat center top; }
#topWrap #technologySection ul li#environmentalTechnology																{ background:#70bbe3 url(/en/images/technology_bg04_pc.png) no-repeat center top; }

/*------------------------------------------------------------------------------------------------
	CSR/SOCIETY & ENVIRONMENT
------------------------------------------------------------------------------------------------*/
#topWrap #csrSection																																													{ background:url(/en/images/csr_bg.gif) repeat left top; }
#topWrap #csrSection h2																																										{ opacity:0; filter:alpha(opacity=0); top:10px; position:relative; }
#topWrap #csrSection .contentOuter > p																															{ opacity:0; filter:alpha(opacity=0); margin-top:50px; top:10px; position:relative; }
#topWrap #csrSection .contentOuter p a.linkBtn																										{ width:236px; }

/* csrList */
#topWrap #csrSection ul#csrList																																					{ margin-top:30px; }
#topWrap #csrSection ul#csrList li																																				{ opacity:0; filter:alpha(opacity=0); margin-top:20px; top:10px; position:relative; float:left; width:585px; background:#ffffff; }
#topWrap #csrSection ul#csrList li div																																	{ padding:0 30px 20px 30px; border:solid 1px #e5e5e5; }
#topWrap #csrSection ul#csrList li div h3																															{ color:#0085cc; font-size:143%; text-align:left; margin-top:25px; }
#topWrap #csrSection ul#csrList li div p																																{ margin-top:15px; }
#topWrap #csrSection ul#csrList li div p.csrLink a																									{ font-weight:bold; background:url(/en/common/images/icon_arrow05.png) no-repeat right 0.35em; padding-right:20px; display:inline-block; color:#000000; }

/* csrList個別 */
#topWrap #csrSection ul#csrList li:first-child																												{ margin-top:20px; float:none; overflow:hidden; width:1200px; }
#topWrap #csrSection ul#csrList li:first-child p.csrImg																					{ float:left; }
#topWrap #csrSection ul#csrList li:first-child div																									{ float:right; width:418px; height:318px; padding:0 35px; }
#topWrap #csrSection ul#csrList li:first-child h3																										{ margin-top:40px; }
#topWrap #csrSection ul#csrList li:first-child div p																								{ margin-top:20px; }
#topWrap #csrSection ul#csrList li.lastChild																													{ float:right; }

/* csrBtnList */
#topWrap #csrSection ul#csrBtnList																																			{ margin-top:20px; }
#topWrap #csrSection ul#csrBtnList li																																	{ opacity:0; filter:alpha(opacity=0); top:10px; position:relative; width:585px; text-align:center; float:right; }
#topWrap #csrSection ul#csrBtnList li:first-child																										{ float:left; }
#topWrap #csrSection ul#csrBtnList li a																																{ display:block; padding:39px 0; border:solid 1px #e5e5e5; font-size:129%; color:#0085cc; background:#ffffff; }

/*------------------------------------------------------------------------------------------------
	バナー
------------------------------------------------------------------------------------------------*/
#topWrap #bnSection																																													{ background:#eaf8ff; border-top:solid 1px #cbe5f2;  }
#topWrap #bnSection ul li																																										{ opacity:0; filter:alpha(opacity=0); top:10px; position:relative; float:right; width:585px; }
#topWrap #bnSection ul li:first-child																																		{ float:left; }
#topWrap #bnSection ul li a																																								{ color:#000000; }
#topWrap #bnSection ul li .bnTxt																																				{ font-size:129%; display:inline-block; margin-top:20px; font-weight:bold; background:url(/en/common/images/icon_arrow04.png) no-repeat right 0.25em; padding-right:20px; }
#topWrap #bnSection ul li .hoverOuter																																	{ width:585px; height:300px; overflow:hidden; display:block; }
#topWrap #bnSection ul li .hoverOuter img																													{ transition:transform, 1s, ease, 1s; }
#topWrap #bnSection ul li:hover .hoverOuter img																									{ transform:scale(1.1,1.1); }

/*------------------------------------------------------------------------------------------------
	INFORMATION
------------------------------------------------------------------------------------------------*/
#topWrap #infoSection																																												{ background:#f5f5f5; border-top:solid 1px #e5e5e5; }
#topWrap #infoSection h2																																										{ opacity:0; filter:alpha(opacity=0); top:10px; position:relative; }
#topWrap #infoSection ul#infoTabList																																	{ margin-top:35px; }
#topWrap #infoSection ul#infoTabList li																																{ opacity:0; filter:alpha(opacity=0); position:relative; width:288px; margin-left:13px; }
#topWrap #infoSection ul#infoTabList li:first-child																								{ margin-left:0; }
#topWrap #infoSection .infoContentsList																															{ display: block; opacity:0; filter:alpha(opacity=0); margin-top:20px; top:10px; position:relative; }
#topWrap #infoSection .infoContentsList li a																												{ background-position:1185px center; }
#topWrap #infoSection .infoContentsList li a:hover																								{ text-decoration:none; }
#topWrap #infoSection .infoContentsList li .infoTxt																							{ width:950px; margin-left:10px; }
#topWrap #infoSection .infoContentsList li .infoDate																						 	{ width:200px; }
#topWrap #infoSection .infoContentsList li a:hover	.infoTxt																		{ text-decoration:underline; }

#topWrap #infoSection .infoContentsList > p																												{ opacity:0; filter:alpha(opacity=0); margin-top:30px; top:10px; position:relative; }
#topWrap #infoSection .infoContentsList > p a.linkBtn																					{ width:236px; }
