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

/*
==============================================================
Messageページ
==============================================================
*/

/* keyvisual
----------------------------------*/
#keyvisual{
	background-image: url(/img/message/bg_kv.jpg);
}
#keyvisual #pageTitle{
	background-image: url(/img/message/kv_message.png);
}



/* content_body
----------------------------------*/
#content_body .catch{
	text-align: center;
	font-size: 30px;
	margin-top: 60px;
	margin-bottom: 80px;
}
#content_body .catch br.message{
	display: none;
}

/*概要*/
.compIndex {

}
.catch{
	text-align: center;	
	margin-top: 70px;
	margin-bottom: 10px;
}
.catchMsg{
	text-align: center;
	margin-bottom: 70px;
}
.compIndex .shadowBox{
	margin-top: 115px;
}
.compIndex .shadowBox:first-child{
	margin-top: 0;
}

.compIndex .titleOverview{
	width: 500px;
	font-weight: bold;
	font-size: 16px;
	padding-top: 30px;
	margin-bottom: 25px;
	text-align: center;
	position: relative;
}
.compIndex .shadowBoxLeft .titleOverview:before,
.compIndex .shadowBoxRight .titleOverview:before{
	content: "";
	background-repeat: no-repeat;
	position: absolute;
	width: 40px;
	height: 40px;
	display: block;
}
.compIndex .shadowBoxLeft .titleOverview:before{
	background-image: url(/img/index/icon_shadowbox_left.png);
	left: 5px;
	top: 5px;
}
.compIndex .shadowBoxRight .titleOverview:before{
	background-image: url(/img/index/icon_shadowbox_right.png);
	right: 5px;
	top: 5px;
}
.compIndex .shadowBox .textBox p{
	width: 500px;
	box-sizing: border-box;
	padding-left: 45px;
	padding-right: 45px;
}
.titleOverview .idealSituation,
.titleOverview .betterWay,
.titleOverview .grandDesign{

	display: block;
	margin: 0 auto 20px auto;
}
.compIndex .darkBtn{
	margin:90px auto 0 auto; 
}

/* our message */
.our_message{
	background-image: url(/img/message/Our_message.png);
	background-repeat: no-repeat;
	width: 161px;
	height: 18px;
	display: block;
	margin: 0 auto;
	text-indent: -9999px;
	margin-bottom: 35px;
}

.compMessage .columnThree{
	min-height: 520px;
	padding-bottom: 30px;
}
.compMessage .missionTitle{
	text-align: center;
	margin-top: 30px;
	margin-bottom: 25px;
	font-size: 24px;
}
.compMessage .contList{
	margin-right: 30px;
	margin-left: 40px;
}
#content_body .compMessage .contList li{
	margin-top: 8px;
	position: relative;
	line-height: 1.8em;
}
.contentText.compMessage .contList li:before{
	content: url(/img/common/icon_list.png);
	position: absolute;
	font-size: inherit;
	left: -20px;
	top: 1px;
}
.compMessage .contList li:first-child{
	margin-top: 0;
}



/* Smartphone layout
==============================================================*/
@media screen and (max-width: 768px) {

	/* KV */
	#keyvisual #pageTitle {
    	background-image: url("/img/company/kv_company_sp.png");	
	}

	/* キャッチ */

	#content_body .catch {
		margin-top: 40px;
	    font-size: 16px;
	    margin-bottom: 30px;
	    font-weight: bold;
	}

	.our_message {
		background-image: url(/img/message/Our_mission.png);
	    background-size: contain;
	    margin: 0 auto 5px;
	    width: 120px;
	}

	#content_body .catch br.messsage{
		display: block;
	}

	/* our meddage */
	.compMessage .columnThree {
	    min-height: auto;
	    min-height: initial;
	}

	.compMessage .messageTitle {
	    font-size: 20px;
	    margin-bottom: 13px;
	    margin-top: 20px;
	}

	.contentText.compMessage .contList li:before{
		content:"";
		background-image: url(/img/common/icon_list_sp.png);
		background-size: contain;
		background-repeat: no-repeat;
		display: block;
		width: 14px;
		height: 14px;
		top: 5px;
	}

	/* キャッチ */
	.compIndex{
		position: relative;
	}
	.catch {
	    margin-bottom: 10px;
	    margin-top: 30px;
	    width: 100%;
	    display: block;
	    left: 0;
	}
	.catchMsg {
	    margin-bottom: 30px;
	    width: 100%;
	    display: block;
	    left: 0;
	}

	.compIndex .shadowBox {
	    margin-top: 25px;
	    min-height: 389px;
	}

	/* 事業概要 */
	.compIndex .titleOverview {
	    font-size: 14px;
	    margin-bottom: 15px;
	    padding-top: 25px;
	    padding-left: 90px;
	    padding-right: 20px;
	    box-sizing: border-box;
	    position: relative;
	    text-align: left;
	    width: 100%;
	}

	.compIndex .shadowBox .textBox p {
	    padding-left: 20px;
	    padding-right: 20px;
	    padding-bottom: 20px;
	    width: 100%;
	}

	.compIndex .shadowBoxLeft,
	.compIndex .shadowBoxRight {
	    background-position: bottom center;
	    background-size: contain;
	}

	.compIndex .shadowBoxLeft .titleOverview:before,
	.compIndex .shadowBoxRight .titleOverview:before{
		background-image: url(/img/index/icon_shadowbox_left.png);
		background-size: 75%;
		left: 8px;
		top: 8px;
	}

	.compIndex .shadowBoxRight .titleOverview,
	.compIndex .shadowBoxRight p{
		position: relative;
		left: 0;
	}

	.titleOverview .idealSituation,
	.titleOverview .betterWay,
	.titleOverview .grandDesign {
	    background-size: contain;
	    background-position: left top;
	    background-repeat: no-repeat;
	    height: 20px;
	    width: auto;
	    display: block;
	    margin: 0 auto 10px;
	    text-indent: -9999px;
	    position: relative;  
	}

	.titleOverview .idealSituation {
	    background-image: url("/img/index/tit_ideal_situation_sp.png");      
	}

	.titleOverview .betterWay {
	    background-image: url("/img/index/tit_better_way_sp.png");      
	}

	.titleOverview .grandDesign {
	    background-image: url("/img/index/tit_grand_design_sp.png");      
	}

	.titleOverview .idealSituation:before,
	.titleOverview .betterWay:before,
	.titleOverview .grandDesign:before {
		content: "";
		background-size: contain;
	    background-position: left top;
	    background-repeat: no-repeat;
	    height: 50px;
	    width: 50px;
	    display: block;
	    position: absolute;
	    left: -65px;
	    top: 10px;
	}

	.titleOverview .idealSituation:before{
		background-image: url("/img/index/icon_ideal_situation.png");
	}
	.titleOverview .betterWay:before{
		background-image: url("/img/index/icon_better_way.png");
	}
	.titleOverview .grandDesign:before{
		background-image: url("/img/index/icon_grand_design.png");
	}

	.compIndex .darkBtn {
	    margin: 40px auto 0;
	}

	/* table */

	#content_body  .tableBasic th{			
	    border-bottom: 0 none;
	    border-top: 0 none;
	    display: block;
	    float: left;
	    font-weight: bold;
	    line-height: 1.2em;
	    margin-bottom: 5px;
	    padding: 15px 0 5px 0;
	    width: 100%;
	}

	#content_body .tableBasic tr:first-child th{			
	    border-top: 1px solid #dfe3e9;
	}

	#content_body  .tableBasic td {
		border-top: 0 none;
	    display: block;
	    padding: 0 0 10px 0;
	    width: 100%;
	}