@charset "utf-8";

.faSol_mainImage {
	margin-bottom: 20px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}
.faSol_mainImage2 {
	background-repeat: no-repeat;
	background-size: cover;
}


.faSol_mainImage .nesting {
	padding: 45px 0;
	background: rgba(255,255,255,0.2);	
}
.faSol_mainImage2 .nesting {
	height: 355px;
	padding: 0 0 45px;
	background: rgba(255,255,255,0.4);	
}


/* ===== renewal =====*/
.fa_panel {
	width: 1114px;
	margin: 0 auto;
	padding: 20px;
	background-color: rgba(255,255,255,0.85);	
}
.faSol_mainImage2+.fa_panel {
	margin-top: -205px;
}

.fa_panel_inner {
	padding: 10px 20px 0;
	border-left: 6px solid #c30000;
	background-position: 30px 10px;
	background-repeat: no-repeat;
}
.fa_panel_title {
	display: table;
	height: 60px;
}
.fa_panel_title span {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}
.fa_panel_title span.txt {
	font-size: 2.5rem;
	line-height: 60px;
	font-weight: bold;
}


.fa_panel_leadcopy {
	margin-top: 1em;
	font-size: 1.4375rem;
}

.fa_panel_title.noIcon,
.fa_panel_leadcopy.noIcon { padding-left: 0; }

.fa_panel_txt {
	margin-top: 2em;
}


.faSol_voice {
	display: table;
	margin: 20px auto;
	border-spacing: 20px;
}
.faSol_voice02 {
	display: block;
	margin: 30px auto 20px;
	padding-left: 30px;
}

.faSol_box01 {
	display: table-cell;
	width: 489px;
	height: 262px;
	margin: 20px 15px 0;
	padding: 20px 30px;
	border: 4px solid #ddd;	
}
div.faSol_box01 { height: auto; }

.faSol_box01 dt {
	width: 264px;
	height: 59px;
	margin: auto;
	text-align: center;
	font-size: 1.3125rem;
	line-height: 50px;
	font-weight: bold;
	color: #fff;
	background-position: top;
	background-repeat: no-repeat;
}
.faSol_box01 dt.manage { background-image: url(../img/voice_balloon01.png); }
.faSol_box01 dt.charge { background-image: url(../img/voice_balloon02.png); }

.faSol_box01 ul {
	margin-top: 20px;
}
.faSol_box01 ul li,
.faSol_box02 ul li {
	margin-bottom: 15px;
	padding-left: 45px;
	font-size: 1.125rem;
	background-image: url(../img/checkmark.png);
	background-repeat: no-repeat;
}


/* ========== ソリューション一覧 ========== */
h2.faSol_list_group {
	margin-top: 40px;
	padding-bottom: 5px;
	font-size: 1.375rem;
	font-weight: bold;
}
h2.faSol_list_group1, div.faSol_list_group1 ul.faSol_list li h3 span { color:#005d90; }
h2.faSol_list_group2, div.faSol_list_group2 ul.faSol_list li h3 span { color:#c57915; }
h2.faSol_list_group3, div.faSol_list_group3 ul.faSol_list li h3 span { color:#00693e; }

div.faSol_list_group1 ul.faSol_list li h3 span.small { font-size: 90%; }

div.faSol_list_group { margin-bottom: 30px; }
div.faSol_list_group1 { background-color:#dbe8f2; }
div.faSol_list_group2 { background-color:#f7e7d4; }
div.faSol_list_group3 { background-color:#e9f2de; }

h2.faSol_list_group3 small.gray {
	font-size: 80%;
	color: #666;
}

ul.faSol_list {
	margin: auto;
	padding-top: 35px;
	padding-right: 20px;
	padding-left: 20px;
}

ul.faSol_list * { box-sizing: border-box; }
ul.faSol_list li {
	position: relative;
	float: left;
	width: 370px;
	margin: 0 10px 35px 0;
	padding: 0;
}
ul.faSol_list li:nth-child(3n) { margin-right: 0; }

ul.faSol_list li a {
	box-sizing: border-box;
	display: block;
	position: relative;
	height: 140px;
	text-decoration: none;
}

ul.faSol_list li h3 { padding-top: 15px; }
ul.faSol_list li h3 span {
	display: block;
	position: relative;
	z-index: 3;
	margin: auto auto auto 152px;
	font-size: 1rem;
	line-height: 125%;
	font-weight: bold;
	color: #c30000;
}

ul.faSol_list li p.descr {
	margin-top: 10px;
	margin-right: 5px;
	margin-bottom: 15px;
	margin-left: 152px;
	font-size: 0.875rem;
	line-height: 165%;
	font-weight: bold;
	color: #000;
}

ul.faSol_list li a:hover { background-color: rgba(255,255,255,0.5); }
ul.faSol_list li a:hover .sideImage { opacity: 0.8; }

ul.faSol_list li .sideImage {
	position: absolute;
	left: 0;
	top: 0;
	width: 140px;
	height: 140px;
	text-align: center;
	background-color: #eee;
	overflow: hidden;
	background-position: center;
	background-size: cover;
}
ul.faSol_list li .sideImage img {
	display: block;
	margin: 21px auto auto;
}

/* ===== energy_saving ===== */
ul.fa_fig_snapshot {
	padding-top: 15px;
	padding-bottom: 30px;
}
ul.fa_fig_snapshot li {
	float: left;
	width: 40%;
	height: 373px;
	margin: 0 5% 30px;
	padding: 0;
	text-align: center;
	overflow: hidden;
}

ul.fa_fig_snapshot li div.wrap {
	display: table-cell;
	width: 498px;
	height: 348px;
	text-align: center;
	vertical-align: middle;
	background-color: #f4f4f4;
}
ul.fa_fig_snapshot li div.wrap img {
	max-width: 418px;
	max-height: 328px;
	box-shadow: 1px 2px 8px 0 rgba(0,0,0,0.3);
}

ul.fa_fig_snapshot li p {
	margin-top: 5px;
	text-align: center;
	font-size: 1.25rem;
	line-height: 125%;
	font-weight: bold;
}

.energy_saving_logo_wrap {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}

.energy_saving_logo {
	max-width: 220px;
	max-height: 90px;
	margin: 0 30px;
	vertical-align: middle;
}

.energy_saving_fig_e1w .fa_explain p {
	padding-top: 15px;
	padding-left: 15px;
	font-size: 1.125rem;
	line-height: 32px;
}

img.energy_saving_fig_e1w_01 {
	width: 914px;
	max-width: 80%;
	margin-top: 20px;
	margin-bottom: 20px;
}

img.energy_saving_fig_e1w_02 {
	width: 858px;
	max-width: 75%;
	margin-top: 50px;
	margin-bottom: 20px;
}


ul.fa_linkList01 li.ColWithFig1 {
	width: 645px;
}

ul.fa_linkList01 li.ColWithFig1 a dl {
	position: relative;
	height: 175px;
}

ul.fa_linkList01 li.ColWithFig1 a dl dt {
	width: 400px;
	margin-left: 180px;
}

ul.fa_linkList01 li.ColWithFig2 {
	width: 580px;
}

ul.fa_linkList01 li.ColWithFig2 a dl {
	position: relative;
	height: 225px;
}

ul.fa_linkList01 li.ColWithFig2 a dl dt {
	/* width: 360px; */
	width: auto;
	margin-left: 180px;
}


.energy_saving_fig {
	position: absolute;
	left: 0;
	top: 0;
	height: 209px;
	margin-right: 15px;
	padding-top: 15px;
}
.energy_saving_fig img {
	height: 200px;
	border: none;
}
a:hover .energy_saving_fig img {}

.energy_saving_fig_pamph {
	position: absolute;
	left: 0;
	top: 0;
	height: 224px;
	margin-right: 15px;
}
.energy_saving_fig_pamph img {
	height: 220px;
	border: 2px solid #E8EAEC;
}
a:hover .energy_saving_fig_pamph img { border-color: #ccc; }

ul.fa_linkList01 li.ColWithFig2 a dl dt.energy_saving_fig_dt {
	width: 305px;
	margin-left: 200px;
}

.energy_saving_fig_dd { margin-top: 2em; }
.energy_saving_fig_dd p {
	width: 300px;
	margin-left: 200px;	
}

.energy_saving_fig_pamph_dd { margin-top: 2em; }
.energy_saving_fig_pamph_dd p {
	width: 360px;
	margin-left: 180px;
}


li.ColWithFig1 a span.energy_saving_fig_dlBtn,
li.ColWithFig1 a span.energy_saving_fig_pamph_dlBtn {
	position: absolute;
	right: 0;
	bottom: 0;
	padding-left: 25px;
	background-size: auto;
}

li.ColWithFig2 a span.energy_saving_fig_dlBtn,
li.ColWithFig2 a span.energy_saving_fig_pamph_dlBtn {
	position: absolute;
	right: 0;
	bottom: 0;
	padding-left: 25px;
	background-size: auto;
}


.withFig_fig {
	display: table-cell;
	position: absolute;
	left: 0;
	top: 0;
	height: 175px;
	margin-right: 15px;
	vertical-align: middle;
}
.withFig_fig img {
	max-width: 235px;
	max-height: 220px;
	margin-top: 28px;
	border: none;
}


ul.fa_linkList01 li.ColWithFig1 a dl dt.withFig_dt {
	width: 350px;
	margin-left: 250px;
}

.withFig_dd { margin-top: 15px; }
.withFig_dd p {
	width: 350px;
	margin-left: 250px;
}

li.ColWithFig1 a span.withFig_dlBtn,
li.ColWithFig2 a span.withFig_dlBtn {
	position: absolute;
	right: 0;
	bottom: 0;
	padding-left: 25px;
	background-size: auto;
}


/* ===== utilizing_cad_data ===== */
.fa_cadarvr {
	display: table;
	margin: 30px auto 0;
}
.fa_cadarvr figure {
	display: table-cell;
	margin: 0;
	padding: 0 0 0;
	vertical-align: middle;
}
.fa_cadarvr figure img {
	display: block;
	width: 90%;
}
.fa_cadarvr figure figcaption {
	box-sizing: border-box;
	margin: 5px auto auto;
}

.fa_cadarvr figure.utilizing_cad_data_fig01_01 {
	width: 515px;
	padding-right: 40px;
}
.fa_cadarvr figure.utilizing_cad_data_fig01_01 img { 
	width: auto;
	height: 330px;
}
.fa_cadarvr figure.utilizing_cad_data_fig01_02 img {
	width: auto;
	height: 330px;
}

.fa_cadarvr figure.utilizing_cad_data_fig03_01 {
	width: 515px;
	padding-right: 40px;
}
.fa_cadarvr figure.utilizing_cad_data_fig03_01 img { width: 515px; }
.fa_cadarvr figure.utilizing_cad_data_fig03_02 { width: 515px;}
.fa_cadarvr figure.utilizing_cad_data_fig03_02 img { width: 515px;}

.fa_cadarvr figure.utilizing_cad_data_fig04 {
	width: 515px;
	padding-right: 40px;
}
.fa_cadarvr figure.utilizing_cad_data_fig04 img { 
	width: 515px;
	height: 190px;
	margin: 18px 0 17px;
}
.fa_cadarvr figure.utilizing_cad_data_fig05 { width: 515px; }
.fa_cadarvr figure.utilizing_cad_data_fig05 img {
	width: 515px;
	height: 225px;
}


/* ===== maintenance ===== */
.mainte_block {
	width: 95%;
	margin: 20px auto 35px;
	border: 4px solid #f0f0f0;
}

.mainte_block .fa_sctn_heading02 {
	border-bottom: none;
	background-color: #f0f0f0;
}

.mainte_block .fa_sctn_heading03 {
	margin-top: 20px;
	margin-right: 20px;
	margin-bottom: 30px;
	margin-left: 20px;
	padding-left: 20px;
	border-bottom: 1px dashed #c30000;
	border-left: none;
	color: #c30000;
	background-color: none;
}

.mainte_row {
	display: table;
	margin: auto;
	
}
.mainte_row span {
	display: table-cell;
	vertical-align: middle;
}

.mainte_single {
	text-align: center;
}

.mainte_fig04_btm {
	margin-bottom: 30px; 
}

.mainte_fig05_btm {
	margin-top: 45px;
	margin-bottom: 90px;
}

.mainte_suppl {
	margin: 30px auto;
	padding: 0 30px;
	font-size: 1rem;
}
.mainte_suppl strong { font-size: 120%; }


/* ===== mutiaxis_control ===== */
.multiaxis_control_fig02 { width: 90%; }


@media only screen and (max-width: 767px) {

	.faSol_mainImage {
		/* height: 280px;
		margin-bottom: 240px; */
	}
	.faSol_mainImage2 {
		height: 280px;
	}
	.faSol_mainImage .nesting {
		padding-bottom: 0;	
	}
	.faSol_mainImage2 .nesting {
		padding-top: 0;
	}
	
	.fa_panel {
		width: auto;
		margin: 0 10px;
		padding-top: 10px;
		padding-right: 10px;
		padding-bottom: 10px;
		padding-left: 10px;
		border: 1px solid rgba(0,0,0,0.1);
		/* -webkit-box-shadow: 1px 2px 5px 0px rgba(0,0,0,0.1);
		-moz-box-shadow: 1px 2px 5px 0px rgba(0,0,0,0.1);
		box-shadow: 1px 2px 5px 0px rgba(0,0,0,0.1); */
	}

	.fa_panel_inner {
		padding-right: 0;
		padding-left: 10px;
		padding-bottom: 10px;
		background-position: 15px 10px;
		background-size: 35px;
	}

	.fa_panel_title {
		width: 100%;
	}
	
	.fa_panel_title span {
	}
	.fa_panel_title span.icon {
		width: 70px;
		text-align: center;
		vertical-align: middle;
	}
	.fa_panel_title span.icon img { width: 70%; }
	.fa_panel_title span.txt {
		padding-left: 5px;
		text-align: left;
		font-size: 1.875rem;
		line-height: 36px;
	}
	
	.fa_panel_leadcopy {
		padding-left: 0;
		margin-top: 1em;
		font-size: 1rem;
		line-height: 150%;
	}

	
	.faSol_voice {
		display: block;
		margin: 0 auto;
	}

	.faSol_box01 {
		display: block;
		float: none;
		width: auto;
		height: auto;
		margin: 10px 10px 0;
		padding: 15px 20px;
		border: 4px solid #ddd;	
	}
	.faSol_box01 dt { width: auto; }

	.faSol_box01 dd ul li {
		font-size: 1rem;
	}
	

	/* ========== ソリューション一覧 ========== */
	h2.faSol_list_group {
		margin-top: 1.25em;
		text-indent: 0;
	}
	
	h2.faSol_list_group1 > em {
		display: inline-block;
		float: left;
	}

	h2.faSol_list_group1 > span,
	h2.faSol_list_group2 > span,
	h2.faSol_list_group3 > span {
		display: inline-block;
		float: left;
		width: 90%;
		margin-bottom: 5px; 
	}
	h2.faSol_list_group1 small,
	h2.faSol_list_group2 small,
	h2.faSol_list_group3 small {
		display: inline-block;
		float: left;
		width: auto;
		margin-bottom: 5px; 
		text-indent: 1.5em;
	}
	
	.faSol_list_group {
		margin-right: 5px;
		margin-left: 5px;
	}

	ul.faSol_list {
		padding-top: 0;
		padding-right: 0;
		padding-bottom: 10px;
		padding-left: 0;
	}
	
	ul.faSol_list li {
		float: none;
		width: 95%;
		height: auto;
		min-height: 150px;
		margin: 0 auto;
		padding-top: 10px;
		padding-bottom: 10px;
		border-bottom: 1px solid rgba(0,0,0,0.2);
	}
	ul.faSol_list li:nth-child(3n) { margin-right: auto; }
	ul.faSol_list li:last-child {
		padding-bottom: 0;
		border-bottom: none;
	}
	
	ul.faSol_list li h3 {
		padding-top: 0;
	}

	ul.faSol_list li h3 span {
		margin-left: 38%;
		font-size: 4.5vw;
		line-height: 120%;
	}
	
	ul.faSol_list li .fa_link02 {
		display: inline-block;
		margin-top: 5px;
		margin-right: 5px;
		margin-left: 38%;
		padding-top: 4px;
		padding-right: 11px;
		padding-bottom: 3px;
		padding-left: 21px;
		font-size: 0.6875rem;
		background-position: 12px center;
		background-size: 6%;
		background-color: transparent;
	}
	
	ul.faSol_list li p.descr {
		margin-top: 7px;
		margin-right: 0;
		margin-left: 38%;
		font-size: 0.8125rem;
		line-height: 125%;
	}

	ul.faSol_list li .sideImage {
		width: 35%;
	}

	
	/* ===== energy_saving ===== */
	ul.fa_fig_snapshot li {
		width: 46%;
		height: auto;
		margin-right: 2%;
		margin-bottom: 15px;
		margin-left: 2%;
	}
	ul.fa_fig_snapshot li div.wrap {
		height: 10em;
		padding-right: 5%;
		padding-left: 5%;
	}
	
	ul.fa_fig_snapshot li p {
		font-size: 0.875rem;
	}
	ul.fa_fig_snapshot .fa_explain_fig { margin-top: 0; }

	.energy_saving_logo_wrap {
		display: block;
	}

	.energy_saving_logo {
		display: block;
		max-width: 180px;
		max-height: 70px;
		margin: 15px auto;
		vertical-align: middle;
	}
	
	.energy_saving_fig_e1w .fa_explain p {
		padding: 10px 5px 0;
		font-size: 1rem;
		line-height: 20px;
	}

	img.energy_saving_fig_e1w_01 {
		width: auto;
		max-width: 90%;
		margin-bottom: 0;
	}

	img.energy_saving_fig_e1w_02 {
		width: auto;
		max-width: 90%;
		margin-top: 30px;
		margin-bottom: 10px;
	}

		
	ul.fa_linkList01 li.ColWithFig1,
	ul.fa_linkList01 li.ColWithFig2 { width: auto; }
	
	ul.fa_linkList01 li.ColWithFig2:nth-child(2) { padding-top: 20px; }

	ul.fa_linkList01 li.ColWithFig1 a dl,
	ul.fa_linkList01 li.ColWithFig2 a dl { height: auto; }
	
	ul.fa_linkList01 li.ColWithFig2 a dl dt,
	ul.fa_linkList01 li.ColWithFig1 a dl dt {
		width: auto;
		margin-left: 0;
	}
	
	ul.fa_linkList01 li.ColWithFig2 a dl dt.energy_saving_fig_dt {
		width: auto;
		margin-left: auto;
	}
	
	.energy_saving_fig { padding-top: 0; }
		
	.energy_saving_fig_dd p,
	.energy_saving_fig_pamph_dd p {
		width: auto;
		margin-left: 0;
	}
	
	.energy_saving_fig,
	.energy_saving_fig_pamph {
		position: static;
		clear: both;
		float: none;
		width: auto;
		height: auto;
		margin-right: auto;
		margin-left: auto;
		text-align: center;
	}
	.energy_saving_fig img {
		width: 80%;
		max-width: 280px;
		height: auto;
	}
	.energy_saving_fig_pamph img {
		width: calc(100% - 4px);
		max-width: 300px;
		height: auto;
	}
	
	.energy_saving_fig_dd,
	.energy_saving_fig_pamph_dd { margin-top: 1em; }

	ul.fa_linkList01 li.ColWithFig1 a dl { height: auto; }

	li.ColWithFig1 a span.energy_saving_fig_dlBtn,
	li.ColWithFig2 a span.energy_saving_fig_dlBtn,
	li.ColWithFig1 a span.energy_saving_fig_pamph_dlBtn,
	li.ColWithFig2 a span.energy_saving_fig_pamph_dlBtn {
		margin-top: 1px;
		margin-bottom: 15px;
		padding-left: 25px;
		background-size: auto;
	}

	li.ColWithFig2 a span.energy_saving_fig_dlBtn, li.ColWithFig2 a span.energy_saving_fig_pamph_dlBtn {
		position: static;
	}
	
	
	li.ColWithFig1 a span.withFig_dlBtn,
	li.ColWithFig2 a span.withFig_dlBtn {
		position: static;
		margin-bottom: 15px;
	}
	
	ul.fa_linkList01 li.ColWithFig1 a dl dt.withFig_dt {
		width: auto;
		margin-left: auto;
	}
	
	.withFig_dd { margin-top: 0; }
	
	.withFig_fig {
		display: block;
		position: static;
		clear: both;
		height: auto;
		margin-top: 10px;
		margin-right: auto;
		text-align: center;
	}
	
		
	.withFig_fig img {
		max-width: 70%;
		margin-top: 0;
	}

	ul.fa_linkList01 li a dl .withFig_dd p {
		width: auto;
		margin-top: 15px;
		margin-left: auto;
	}
	
	
	/* ===== utilizing_cad_data ===== */
	.fa_cadarvr {
		display: block;
		margin: 15px auto 0;
	}
	.fa_cadarvr figure {
		display: block;
		margin: auto;
		padding: 0 0 0;
		vertical-align: middle;
	}
	.fa_cadarvr figure img {
		display: block;
		width: 95%;
	}
	.fa_cadarvr figure figcaption {
		box-sizing: border-box;
		width: 100%;
		margin: 5px auto auto;
	}

	.fa_cadarvr figure.utilizing_cad_data_fig01_01 {
		width: 95%;
		padding-right: 0;
	}
	.fa_cadarvr figure.utilizing_cad_data_fig01_01 img { 
		width: 100%;
		height: auto;
	}
	
	.fa_cadarvr figure.utilizing_cad_data_fig01_02 {
		width: 95%;
		margin-top: 30px;
		margin-bottom: 30px;
	}
	.fa_cadarvr figure.utilizing_cad_data_fig01_02 img {
		width: 100%;
		height: auto;
	}

	.fa_cadarvr figure.utilizing_cad_data_fig03_01 {
		width: 95%;
		margin-bottom: 30px;
		padding-right: 0;
	}
	.fa_cadarvr figure.utilizing_cad_data_fig03_01 img { width: 100%; }
	.fa_cadarvr figure.utilizing_cad_data_fig03_02 {
		width: 95%;
		margin-bottom: 30px;
	}
	.fa_cadarvr figure.utilizing_cad_data_fig03_02 img { width: 100%;}

	.fa_cadarvr figure.utilizing_cad_data_fig04 {
		width: 95%;
		margin-bottom: 30px;
		padding-right: 0;
	}
	.fa_cadarvr figure.utilizing_cad_data_fig04 img { 
		width: 100%;
		height: auto;
		margin: 0;
	}
	.fa_cadarvr figure.utilizing_cad_data_fig05 {
		width: 95%;
		margin-bottom: 30px;
	}
	.fa_cadarvr figure.utilizing_cad_data_fig05 img {
		width: 100%;
		height: auto;
	}
	
	
	/* ===== maintenance ===== */
	.mainte_block {
		margin: 20px auto 35px;
		border: 4px solid #f0f0f0;
	}

	.mainte_block .fa_sctn_heading02 {
		border-bottom: 4px solid #f0f0f0;
	}

	.mainte_block .fa_sctn_heading03 {
		margin-top: 10px;
		padding-right: 0;
		padding-left: 0;
		text-align: center;
	}
	
	.mainte_row {
		display: table;
		margin: auto;
	}
	.mainte_row span {
		display: table;
		margin: auto;
		text-align: center;
		vertical-align: middle;
	}
	.mainte_row img {
		max-width: 90%;
	}
	
	img.maint_row_ttl02 {
		margin-top: 0;
		margin-bottom: 20px;
	}
		
	.mainte_single img {
		max-width: 90%;
	}

	.mainte_fig05_btm {
		margin-top: 30px;
		margin-bottom: 60px;
	}
	
	.mainte_suppl {
		margin: 0 auto 20px;
		padding: 0 15px;
		font-size: 0.875rem;
		text-align: center;
	}
	
}

@media (orientation: landscape) and (max-width: 767px){
 
	ul.fa_fig_snapshot li {
		height: 20em;
	}
 	ul.fa_fig_snapshot li div.wrap {
		height: 16em;
	}

}
