@charset "utf-8";

/*html自体*/
html * {
	box-sizing: border-box;
}
/*ボディ*/
body {
	margin: 0 auto;
	font-family: Yu Mincho;
	font-size: 16px;
}
/* ヘッダー */
header {
	background: #0040FF;
	padding: 0% 0% 1% 0%;
}

.header-container {
	//padding: 5% 2% 1% 3%;
	background: #0040FF;
	padding: 5% 2% 0% 3%;
	clear: both;
	position: relative;
}
.header-logo {
	margin: 0;
	width: 150px;
	height: 30px;
	background: url(../images/soresuta_logo.png) no-repeat;
	background-size: 150px 30px;
	text-indent: -9999px;
	position: absolute;
	bottom: 5px;
}

/* フッター */
footer { 
	background: #1e90ff;
}
.footer-container {
	padding: 15px;
}
.copyright {
	margin: 0;
	font-size: 0.9rem;
	color: #ffffff;
}
/* メインコンテンツレイアウト部分 */
main { }
.main-container {
	padding: 0 0 0 0;
	background: #ffffff;
}
.keyvisual {
	font-size: 0;
}
.keyvisual img {
	width: 100%;
}

/*メインコンテンツ*/

/* <<<<<<<<<<<スマートメディア対応>>>>>>>>>>>> */
.corp-work-h1 {
	margin: 0 auto;
	padding: 0px 10px 0px 10px;
	text-align: center;
	font-size: 1.2rem;
	font-weight: bold;
}
.corp-work-h2 {
	margin: 0 auto;
	padding: 10px 20px 0px 20px;
	text-align: left;
	font-size: 0.7rem;
	width:	90%;
}

/* <<<<<<<<<<<スマートメディア以外対応>>>>>>>>>>>> */
@media screen and (min-width: 768px){

	.header-logo {
		margin: 0;
		width: 400px;
		height: 95px;
		background: url(../images/soresuta_logo.png) no-repeat;
		background-size: 400px 95px;
		text-indent: -9999px;
	}

	.corp-work-h1 {
		margin: 0 auto;
		padding: 0px 20px 0px 20px;
		text-align: center;
		font-size: 1.5rem;
		font-weight: bold;
	}
	.corp-work-h2 {
		margin: 0 auto;
		padding: 10px 20px 0px 20px;
		text-align: center;
		font-size: 1.2rem;
		width:	80%;
	}
}

/* サービスナビゲーション */
.service-container_main {
	padding: 0 0 0 0;
	margin: 0 auto;
	max-width: 90%;
	float:left;
}
.servicenav_main {
	overflow: hidden;
	list-style: none;
}

.servicenav_main li {
	margin: 0 0 1% 0;
	width: 100%;
//	transition: all 0.5s linear;
//	position: relative;
//	overflow: hidden;
}

.main_nav_box {
	position:	relative;
//	margin: 0 0 1% 0;
	width: 100%;
	transition: all 0.5s linear;
	position: relative;
	overflow: hidden;
	border-radius: 5px 5px 5px 5px;
	box-shadow: 2px 2px 4px gray;
}

.main_nav_title_box {
	position:	relative;
	
//	margin: 0 0 1% 0;
	width: 100%;
	transition: all 0.5s linear;
	position: relative;
	overflow: hidden;
}

.service_title {
	padding: 6% 3% 0% 3%;
	border-radius: 5px 0px 0px 5px;
	background: #0040FF;
	color: #ffffff;
	font-size: 1.2rem;
	text-align:center;
	transition: all 0.5s linear;
	float: left;
	width: 50%;
	height: 70px;
}

.service_picture {
	border-radius: 5px 5px 0px 0px;
    border: 0.5px solid #dcdcdc;
	transition: all 0.5s linear;
	float: left;
	width: 100%;
	//width: 100%;
	height: 140px;
	position:	relative;
}

.service_picture img{
	width: 100%;
	transition: all 0.5s linear;
	padding: 1px 0 0 0;
}

.service_manual_title {
//	padding: 3% 3% 0% 3%;
	padding: 2% 0% 0% 0%;
	border-radius: 0px 0px 5px 5px;
	background: #04B45F;
	color: #ffffff;
	font-size: 1.0rem;
	text-align:center;
	transition: all 0.5s linear;
	float: left;
	width: 100%;
	height: 40px;
}

.caption {
	padding: 0 5% 0 5%;
	position: absolute;
	left: 0;
	top: 2px;
	text-align: left;
	color: #ffffff;
	opacity: 0;
	font-size: 0.8rem;
}

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

	.service-container_main {
		padding: 0% 5% 0 5%;
		margin: 0 auto;
		max-width: 100%;
		overflow:hidden;
	}
	.servicenav_main li {
		margin: 0 1% 0 0;
		width: 30%;
		float: left;
//		transition: all 0.5s linear;
//		position: relative;
	}
	
	.main_nav_box {
//		position:	relative;
//		
//		margin: 0 1% 0 0;
		width: 100%;
//		float: left;
		transition: all 0.5s linear;
		position: relative;
		border-radius: 5px 5px 5px 5px;
		box-shadow: 2px 2px 4px gray;
	}
	
	.service_title {
		padding: 3% 5% 5% 0%;
		border-radius: 5px 5px 0px 0px;
		background: #0000ff;
		color: #ffffff;
		font-size: 2rem;
		text-align:center;
		transition: all 0.5s linear;
		width: 100%;
	}

	.service_picture {
		border-radius: 5px 5px 0px 0px;
		//transition: all 0.5s linear;
		width: 100%;
		height: 100%;
	}

	.service_picture img{
		width: 100%;
		transition: all 0.5s linear;
		padding: 5px 0 0 0;
	}


.service_manual_title {
	padding: 3% 3% 3% 3%;
	border-radius: 0px 0px 5px 5px;
	background: #04B45F;
	color: #ffffff;
	font-size: 1.5rem;
	text-align:center;
	transition: all 0.5s linear;
	float: left;
	width: 100%;
	height: 70px;
}

	.caption {
		padding: 0 5% 0 5%;
		position: absolute;
		left: 0;
		top: 10px;
		text-align: left;
		color: #ffffff;
		opacity: 0;
		font-size: 1.4rem;
	}
}
/* サービスナビゲーション */


/* ご要望関連のボタンについて */
#question_request {
	margin: 0 auto;
	padding: 15px 20px 15px 20px;
	text-align: center;
	background: #40e0d0;
	border-radius: 5px 5px 5px 5px;
	width: 40%;
	font-size: 1rem;
	font-weight: bold;
}


#soresuta_lang_link {
		margin: 0px 0px 0px 160px;
		padding: 5px 5px 5px 5px;
		text-align: center;
		background: #ffffff;
		color: #000000;
		border-radius: 5px 5px 5px 5px;
		width: 20%;
		font-size: 0.8rem;
		font-weight: bold;
}

a {
	text-decoration: none;
}


@media screen and (min-width: 768px){
	#question_request {
		margin: 0 auto;
		padding: 15px 20px 15px 20px;
		text-align: center;
		background: #40e0d0;
		border-radius: 5px 5px 5px 5px;
		width: 40%;
		font-size: 1.2rem;
		font-weight: bold;
	}
	
	#soresuta_lang_link {
		margin: 30px 0px 0px 450px;
		padding: 15px 15px 15px 15px;
		text-align: center;
		background: #ffffff;
		color: #000000;
		border-radius: 5px 5px 5px 5px;
		width: 25%;
		font-size: 1.2rem;
		font-weight: bold;
	}
}


/* コントロール間のスペースについて */
#space_box {
	padding: 20px 0px 0px 0px;
}

@media screen and (min-width: 768px){
	#space_box {
		padding: 30px 0px 0px 0px;
	}
}


/*ナビゲーションの上にマウスをホバーした場合の処理*/

.main_nav_box:hover
 .service_title{
 	background: rgba(39, 182, 150, 0.8);
 	color: rgba(39, 182, 150, 0.8);
 	border-radius: 5px 5px 0px 0px;
 }
.main_nav_box:hover
{
	border-radius: 5px 5px 5px 5px;
	background: rgba(39, 182, 150, 0.8);		//#40e0d0;
	border: 1px solid rgba(39, 182, 150, 0.8);	//#40e0d0;
}
.main_nav_box:hover
 .service_picture{border: 2px solid rgba(39, 182, 150, 0.8);}
 
.main_nav_box:hover
 .service_picture img{opacity: 0.1;}
 
.main_nav_box:hover
 .caption {
	opacity: 1;
	font-weight: bold;
	text-shadow: 2px 2px 2px rgba(0, 0, 0, 1);
 }
 
