@charset "utf-8";

/*******************************************************

　共通コンテンツ

*******************************************************/

img {
	max-width: 100%;
	max-height: 100%;
	height: initial;
	vertical-align: bottom;
}
a {
	color: #F08A0F;
}
a:hover {
	color: #FF0000;
}
p {
	margin: 0 0 25px 0;
	padding: 0;
}
span.red{
	color:red;
}

/* リスト
----------------------------------------------------*/

ol {
	margin: 0px 0px 25px 30px;
	padding: 0px;
}
.list {
	list-style-type: none;
	margin: 0px 0px 25px 0px;
	padding: 0px;
}
.list li:before {
	font-family: Material Icons;
	content: "play_arrow";
	position: relative;
	top: 2px;
	color: #F08A0F;
	margin-right: 5px;
}
.topics_list li {
	border-bottom: 1px dashed #BEBBB5;
	padding-bottom: 10px;
	margin-bottom: 10px;
}

/* テーブル
----------------------------------------------------*/

.table {
	margin: 0px 0px 25px 0px;
	border-collapse: collapse;
	border-spacing: 0px;
	border-bottom: 1px solid #BEBBB5;
	border-right: 1px solid #BEBBB5;
}
.table thead th {
	color: #FFFFFF;
	background: #F08A0F;
	border-top: 1px solid #BEBBB5;
	border-left: 1px solid #BEBBB5;
}
.table th {
	padding: 8px 10px;
	text-align: left;
	background: #F6F6F2;
	vertical-align: top;
	font-weight: normal;
	border-top: 1px solid #BEBBB5;
	border-left: 1px solid #BEBBB5;
}
.table td {
	padding: 8px 10px;
	vertical-align: top;
	background: #FFFFFF;
	border-top: 1px solid #BEBBB5;
	border-left: 1px solid #BEBBB5;
}
.table td ol, .table td ul, .table td p {
	margin-bottom: 10px !important;
}

/* ページネーション
----------------------------------------------------*/

.page_navi, .btn  {
	font-size: 13px;
	width: 100%;
	margin: 20px 0px;
	padding: 0px 0px 0px 0px;
	clear: both;
}
.page_navi  {
	display: flex;
	justify-content: space-between;
	width: 100%;
	list-style: none;
}
.page_navi li {
}
.page_navi li.next {
	text-align: right;
}
.page_navi li.prev {
	text-align: left;
}
.page_navi li a, .btn a {
	display: inline-block;
	text-decoration: none;
	border: 1px solid #F08A0F;
	padding: 0px 10px 0px 15px;
	border-radius: 15px;
}
.page_navi li a:hover, .btn a:hover {
	background: #F08A0F;
	color: #FFF;
}
.page_navi li.next a:after, .page_navi li.prev a:before, .btn a:after {
	font-family: Material Icons;
	position: relative;
	top: 2px;
	color: #FFF;
	background: #F08A0F;
	border-radius: 100%;
}
.page_navi li.next a:after, .btn a:after {	content: "navigate_next";margin-left: 5px;}
.page_navi li.prev a:before {	content: "navigate_before";margin-right: 5px;}
.page_navi li.next a:hover:after, .page_navi li.prev a:hover:before, .btn a:hover:after {
	background: #FFF;
	color: #F08A0F;
}

/*******************************************************

　見出し

*******************************************************/

/* ページタイトル
----------------------------------------------------*/

#title {
	background: #F6F6F2;
	padding: 150px 0px 50px 0px;
	background: url(../images/common/page_title_cover.png) repeat center center, url(../images/common/page_title.jpg) no-repeat center center;
	background-size: auto, cover;
		background-attachment: scroll, fixed;
}
#title h2 {
	padding: 0px 0px 0px 0px;
	font-size: 38px;
	font-weight: normal;
	color: #FFF;
	text-shadow: 2px 2px 3px #000;
	line-height: 150%;
}

/* 見出し
----------------------------------------------------*/

#content h3 {
	font-weight: normal;
	font-size: 22px;
	margin: 20px 0px 20px 0px;
	padding: 8px 20px;
	border-bottom: 5px solid #BEBBB5;
	background: #F08A0F;
	color: #FFF;
	line-height: 150%;
}
#content h3:nth-of-type(1) {
	margin-top: 0px;
}
#content h4 {
	font-weight: normal;
	font-size: 20px;
	margin: 0px 0px 10px 0px;
	padding: 0px 0px 0px 15px;
	border-left: 5px solid #F08A0F;
	line-height: 150%;
}
#content h5 {
	font-size: 17px;
	margin: 0px 0px 10px 0px;
	padding: 3px 0px;
	color: #F08A0F;
	border-bottom: 1px solid #BEBBB5;
}
#contents h6 {
	font-size: 14px;
	margin: 0px 0px 3px 0px;
	padding: 0px;
}

/*******************************************************

　固定ページ

*******************************************************/

/* トップページ
----------------------------------------------------*/

/* メイン画像 */

#main_image {
	text-align: center;
}
#main_image img {
	width: 100%;
}

/* キャッチ */

#catch_section {
	display: table;
	table-layout: fixed;
	width: 100%;
}
#catch_section>div {
	display: table-cell;
	padding: 40px 60px;
	position: relative;
}
#catch_section .catch_section_business {
	background: url(../images/home/catch_business_cover.png) repeat center center, url(../images/home/catch_business_bg.jpg) no-repeat center center;
	background-size: auto, cover;
	background-attachment: scroll, fixed;
	text-align: right;
}
#catch_section .catch_section_csr {
	background: url(../images/home/catch_csr_cover.png) repeat center center, url(../images/home/catch_csr_bg.jpg) no-repeat center center;
	background-size: auto, cover;
	background-attachment: scroll, fixed;
}
#catch_section .catch_section_csr:after {
	content: url(../images/home/catch_cross.png);
	position: absolute;
	top: 45%;
	left: -25px;
}

#service_section {
	background: url(../images/home/catch_service_cover.png) center top;
	padding: 40px 0px;
	position: relative;
}
#service_section:before {
	content: url(../images/home/catch_service_arrow.png);
	position: absolute;
	top: -35px;
	left: 50%;
	margin-left: -36px;
}
#service_section ul {
	list-style: none;
	margin: 0 auto;
	padding: 0;
	display: flex;
	justify-content: space-around;
}
#service_section li {
	margin: 10px;
	min-width: 30%;
}

/* 施工事例 */

#case_section {
	background: url(../images/home/case_bg.jpg) no-repeat center center;
	background-size: cover;
	background-attachment: fixed;
	padding: 35px 0px 20px 0px;
}
#case_section h2 {
	text-align: center;
	font-family: "Sawarabi Mincho";
	font-size: 40px;
	line-height: 120%;
	font-weight: normal;
	margin: 0px 0px 20px 0px;
	padding: 0;
}
#case_section h2 span {
	color:	#F08A0F;
	font-family: "Sawarabi Mincho";
}
#case_section h2:after {
	content: 'CASE';
	font-family: "Sawarabi Mincho";
	color: #FFF;
	background:	#F08A0F;
	padding: 0px 10px;
	font-size: 14px;
	line-height: 100%;
	position: relative;
	top: -5px;
	margin-left: 20px;
}
#case_section p {
	text-align: center;
	font-family: "Sawarabi Mincho";
	font-size: 16px;
}
#case_section .btn {	text-align: center;}
#case_section .btn a {	
	color: #FFF;
	background:#F08A0F;
	border-radius: 5px;
	padding: 8px 25px;
}
#case_section .btn a:after {	color: #F08A0F; background: #FFF;}

#case_section .case_list {
	justify-content: space-around !important;
}
#case_section .case_list:after {
	display: none !important;
}

/* 最新情報 */

#news_section {
	background: url(../images/home/news_bg.jpg) no-repeat center center;
	background-size: cover;
	background-attachment: fixed;
	padding: 45px 0px 5px 0px;
}
#news_section h2 {
	text-align: center;
	font-family: "Sawarabi Mincho";
	font-size: 30px;
	line-height: 120%;
	font-weight: normal;
	margin: 0px 0px 20px 0px;
	padding: 0;
	background: url(../images/home/news_title.png) no-repeat center 16px;
}
#news_section h2:after {
	content: 'News';
	color: #0059B2;
	font-size: 14px;
	display: block;
}
#news_section .container {
	display: flex;
}
#news_section .info_index {
	list-style: none;
	margin: 0px 30px 0px 0px;
	padding: 0px;
}
#news_section .info_index span, #news_section .info_index a {
	width: 180px;
	display: block;
	text-align: center;
	color: #BEBBB5;
	text-decoration: none;
	border: 1px solid #BEBBB5;
	background: #FFF;
	margin: 1px 0px;
	padding: 5px;
	cursor: pointer;
}
#news_section .info_index li:nth-of-type(1) span, #news_section .info_index span:hover,
#news_section .info_index li:nth-of-type(1) a, #news_section .info_index a:hover {
	color: #FFF;
	background: #0059B2;
	border-color: #0059B2;
	position: relative;
}
#news_section .info_index li:nth-of-type(1) span:after, #news_section .info_index span:hover:after, 
#news_section .info_index li:nth-of-type(1) a:after, #news_section .info_index span:a:after {
	left: 100%;
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-left-color: #0059B2;
	border-width: 8px;
	margin-top: -8px;
}
#news_section .info_list.ChangeElem_Panel{  display: none;}

#news_section .btn {	text-align: center;}
#news_section .btn a {	border: none; color: #FFF;	background: #0059B2;}
#news_section .btn a:after {	color: #0059B2; background: #FFF;}

/* CSR活動 */

#csr_section {
	background: url(../images/home/csr_bg.jpg) no-repeat center center;
	background-size: cover;
	background-attachment: fixed;
	display: flex;
	justify-content: space-between;
}
#csr_section .container {
	display: table;
}
#csr_section .csr_title, #csr_section .csr_list {
	display: table-cell;
	vertical-align: middle;
}
#csr_section .csr_title {
	width: 260px;
	padding: 20px 25px;
	color: #FFF;
	background: #229922;
	text-align: center;
}
#csr_section .csr_title h2 {
	font-family: "Sawarabi Mincho";
	font-size: 34px;
	line-height: 120%;
	font-weight: normal;
	margin: 0px 0px 30px 0px;
	padding: 0;
}
#csr_section .csr_title p {
	font-family: "Sawarabi Mincho";
}
#csr_section .csr_title .btn {	text-align: center;}
#csr_section .csr_title .btn a {	color: #FFF;	border-color: #FFF; background: #229922;}
#csr_section .csr_title .btn a:after {	color: #229922; background: #FFF;}

#csr_section .csr_list {
	padding: 40px 0px 40px 20px;
}
#csr_section .csr_list dl {
	background: url(../images/home/csr_content_bg.png) !important;
	border: 1px solid #FFF;
}
#csr_section .csr_list a {
	width: 360px;
	float: left;
	margin: 10px 0px 10px 20px !important
}

/* CSRウィジェット */

#csr_widget {
	background: #EEEEE5;
	padding: 50px 0px 20px 0px;
}
#csr_widget .container {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#csr_widget .csr_widget {
	min-width: 500px;
	margin-bottom: 30px;
}

/* 動画・写真 */

#sns_section {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 40px 0px 0px 0px;
	text-align: center;
}
#sns_section .sns_section {
	margin: 0px auto 40px auto;
	width: 480px;
}

#sns_section h2 {
	font-family: "Sawarabi Mincho";
	font-size: 30px;
	line-height: 120%;
	font-weight: normal;
	margin: 0px 0px 20px 0px;
	padding: 0;
	background: no-repeat center 16px;
}
#sns_section h2:after {
	font-size: 14px;
	display: block;
}
#sns_section .sns_section.youtube h2 { background-image: url(../images/home/sns_title_youtube.png);}
#sns_section .sns_section.instagram h2 { background-image: url(../images/home/sns_title_instagram.png);}
#sns_section .sns_section.youtube h2:after { content: 'Youtube Channel'; color: #E22;}
#sns_section .sns_section.instagram h2:after { content: 'Instagram'; color: #54B;}

#sns_section .sns_section .btn a {	border: none; color: #FFF;}
#sns_section .sns_section .btn a:after { background: #FFF;}
#sns_section .sns_section.youtube .btn a {	background: #E22;}
#sns_section .sns_section.youtube .btn a:after {	color: #E22;}
#sns_section .sns_section.instagram .btn a {	background: #54B;}
#sns_section .sns_section.instagram .btn a:after {	color: #54B;}

/* インスタグラム */
ul#instafeed{
		max-width: 100%;
		 display: flex;
        flex-wrap: wrap;
		justify-content:space-between;
        list-style: none;
		padding: 0px;
	}
ul#instafeed li {
    width: 32%;
	height: 150px;
    margin-bottom: 3%;
    word-wrap: break-word;
    text-align: center;
	 list-style-type: none;
	overflow: hidden;
}
ul#instafeed li img.object-fit {
   width: 150px;
    height: 150px;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: 0;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
	}
	ul#instafeed li video {
	width: 100%;
    height:150px;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: 0;
}
	img, video {
    border-top-style: none;
    border-right-style: none;
    border-bottom-style: none;
    border-left-style: none;
    vertical-align: top;
}



/* 最新情報
----------------------------------------------------*/

.info_list {
	margin-bottom: 20px;
    width: 100%;
}
.info_list dl, .info_list dt, .info_list dd {
	margin: 0px;
	padding: 0px;
}
.info_list dl {
	display: flex;
	align-items: baseline;
	margin: 0px 0px 30px 0px;
}
.info_list dl dt.date {
	width: 130px;
}
.info_list dl dd.category {
	width: 80px;
	margin-right: 15px;
	font-size: 10px;
	text-align: center;
	background: #555;
	color: #FFF;
}
.info_list dl dd.title {
	flex-shrink: 10000;
}
.info_list dl dd a {
	color: #000;
	text-decoration: none;
}
.info_list dl dd a:hover {
	color: #F08A0F;
}

/* 会社概要
----------------------------------------------------*/

/* 企業理念 */

.rinen{
	font-weight: bold;
	font-size: 25px;
}

/* スタッフ紹介 */ 

.staff_box {
	background: beige;
	padding: 20px 35px;
	margin: 10px 0px;
	overflow: hidden;
}
.staff_box p.name {
	font-weight:bold;
	font-size: 17px;
	margin: 0px 0px 10px 0px;
	padding: 3px 0px;
	color: #F08A0F;
	border-bottom: 2px dotted #BEBBB5;
}
.staff_box p.pic {
	float: right;
	width: 150px;
	margin-left: 15px;
}
.staff_box .pic img  {
	width: 100%;
	height: 100%;
}

/* 相互リンク */

.sougo_link {
	padding: 20px 35px;
	margin: 50px 0px;
}

/* 事業紹介
----------------------------------------------------*/

/* 太陽光発電 */

.hatsuden_box{
	overflow:hidden;
	background: beige;
	padding: 20px 35px;
	margin: 10px 0px;
}
.hatsuden_box>h5{
	font-weight:bold;
	font-size: 17px;
	margin: 0px 0px 10px 0px;
	padding: 3px 0px;
	color: #F08A0F;
	border-bottom: 2px dotted #BEBBB5;
}

/* ルートハウス */

.roothouse_box{
	font-size: 16px;
    font-weight: bold;
    overflow: hidden;
    margin: 20px;
    padding: 20px;
    box-sizing: border-box;
    border: solid #ffc000 4px;
    border-radius: 10px;
    /* border: rebeccapurple; */
    background-color: #faeab7;
	}
.roothouse_box img{
	padding-top:20px;
}

/*--solar_progect------------------------*/
 
#solar_progect .h3_solar{
background: initial;
	border-bottom:none;
	text-align:center;
}
	
#solar_progect .h4_solar{
	background:none;
	border-left:none;
	padding:5px 10px;
	font-weight:bold;
	font-size:20px;
	text-align:center;
	
}
#solar_progect .btn {	
	text-align: center;
	font-size: 16px;
}
#solar_progect .btn a {	
	color: #FFF;
	background:#F08A0F;
	border-radius: 5px;
	padding: 8px 25px;
}
#solar_progect .btn a:after {
	color: #F08A0F;
	background: #FFF;
}

/* 事例紹介
----------------------------------------------------*/

/* 一覧 */

.case_list {
	margin: auto;
	margin-bottom: 20px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.case_list a {
	max-width: 250px;
	width: 100%;
	text-decoration: none;
	margin: 0px 0px 15px 0px;
	color: #000;
	background: #F1F1EB;
}
.case_list a:hover {	opacity: 0.8;}
.case_list:after {
	content: '';
	display: block;
	max-width: 250px;
	width: 100%;
}
.case_list dl, .case_list dt, .case_list dd {
	margin: 0;
	padding: 0;
}
.case_list dl {
	padding: 15px;
}
.case_list dt.pic {
	text-align: center;
	display: block;
    vertical-align: middle;
    background: #BEBBB5;
	margin-bottom: 10px;
}
.case_list dt.pic img {
	width: 100%;
	height: 100%;
}
.case_list dd.number {
	float: left;
	text-align: center;
	width: 40px;
	height: 40px;
	background: #F08A0F;
	color: #FFF;
	font-size: 11px;
	line-height: 120%;
	margin-bottom: 10px;
}
.case_list dd.number span {
	display: block;
	font-size: 20px;
	line-height: 120%;
}
.case_list dd.category {
	float: right;
	display: inline-block;
	font-size: 10px;
	background: #555;
	color: #FFF;
	padding: 0px 5px;
	margin-top: 12px;
}
.case_list dd.title {
	clear: both;
	margin-top: 10px;
}

/* 詳細 */

.case_photo{
	display: flex;
    flex-direction: row;
    flex-wrap: wrap;
	justify-content: center ;
	width: 100%;
	background: beige;
	margin: 20px 0px;
}
.photo img{
	margin: 20px 20px;
}
.photo p{
	margin:10px 0px;
	padding:0px;
	text-align: center;
	font-size: 14pt;
}

.case_photo_s{
	  display: inline-flex;
      flex-direction: row;
      flex-wrap: wrap;
		width: 100%;
	margin-bottom:20px;
}
.case_photo_s img{
	width:120px;
	height:120px;
	margin: 10px 0px 10px 10px;
}

/* 地域活動
----------------------------------------------------*/

.csr_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.csr_list a {
	max-width: 382px;
	width: 100%;
	display: block;
	color: #000;
	text-decoration: none;
	margin: 0px 0px 15px 0px;
}
.csr_list a:hover {
	opacity: 0.8;
}
.csr_list dl, .csr_list dt, .csr_list dd {
	margin: 0px;
	padding: 0px;
}
.csr_list dl {
	padding: 10px;
	overflow: hidden;
	background: #F1F1EB;
}
.csr_list dl dt.pic {
	display: block;
	width: 120px;
	height: 120px;
	vertical-align: middle;
	background: #BEBBB5;
	float: left;
	margin-right: 10px;
}
.csr_list dl dt.pic img {
	width: 100%;
	height: 100%;
}
.csr_list dl dd.category {
	display: inline-block;
	margin-right: 15px;
	font-size: 10px;
	background: #555;
	color: #FFF;
	padding: 0px 5px;
	margin-bottom: 5px;
}
.csr_list dl dd.date {
	color: #888;
	margin-bottom: 5px;
}
/* モジュールマキシマイザー
----------------------------------------------------*/
.tigo_box{
	overflow: hidden;
}
.tigo_img{
	width: 210px; 
	float: left;
}
.tigo_text{
	width: 70%;
	float: right;
	padding-bottom:50px;
}

