@charset "utf-8";
/* CSS Document */
.contents-head {
  width: 100%;
  padding: 100px 10px 0 5px;
}
h1.contents-h {
  display: inline-block;
  font-size: 2.8rem;
  font-weight: 600;
  text-align: left;
  line-height: 0.9;
}

h1.contents-h > span {
  font-size: 1.9rem;
  font-weight: 400;
  margin: 0px 0px 0px 6px;
}
h1.contents-h-job {
  display: inline-block;
  font-size: 2.8rem;
  font-weight: 600;
  text-align: left;
  line-height: 0.9;
}

h1.contents-h-job > span {
  font-size: 1.9rem;
  font-weight: 400;
  margin: 0px 0px 0px 6px;
}
.contents-head > .image {
	margin: 20px 0 0px 0;
	}
/* 各パーツ
-------------------------------------------- */
h2.page-top {
	display: block;
	margin: 40px 0 40px 0;
	font-size: 2.4rem;
	line-height: 1.3;
}
h3.business-h3 {
  text-align: left;
  font-size: 3.0rem;
  margin: 30px 0 0px 0;
	padding:0 0 20px 0; 
  position: relative;
	border: 0px solid #ccc;
	font-weight: 800;
	color: #999;
}


/*お問い合わせフォーム*/
.inquiry-box {
  text-align: center;
  margin: 30px 0 30px 0;
  font-size: 1.6rem;
}
.inquiry-box > h3 {
  font-weight: 600;
  font-size: 2.2rem;
  color: #f25b27;
}
.inpuiry-bnr {
  display: inline-block;
  margin: 10px 8px 0 8px;
  padding: 8px 18px 8px 18px;
  border-radius: 20px;
  background: #f5ee43;
}
.inpuiry-bnr a {
  display: block;
}

.wide-map {
  width: 100%;
  height: 300px;
  padding: 0;
  margin: 0;
}
/*お知らせ*/
div.blog-wrap {}
div.blog-body {
  width: 95%;
  float: none;
}
article.entry {
  margin-bottom: 20px;
}
div.entry-header h2 {
  font-size: 1.8rem;
  border-bottom: 1px dotted;
}
div.entry-header h2 a {
  color: #c43401;
}
div.entry-meta {}
p.date {
  font-weight: 600;
}
div.entry-summary, div.entry-content {
  font-size: 1.6rem;
}
div.entry-summary a, div.entry-content a {
  color: #c43401;
}
a.more-link {
  display: block;
  text-align: right;
  font-size: 1.6rem;
  color: #cc3300;
}
div.blog-side {
  width: 95%;
  float: none;
}
div.side-navi {
  margin-bottom: 20px;
}
div.side-navi h2 {
  background: #cfdc29;
  padding: 10px;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 600;
}
div.side-navi ul {
  font-size: 1.5rem;
  list-style-type: disc;
  list-style-position: inside;
}
.paging, .paging-navigation {
  text-align: center;
  font-size: 1.6rem;
  margin-bottom: 15px;
}
.indent-l {
  padding: 0 0px 0 0px;
}
/*　flexbox　写真２枚横並び用　*/
.photo2, .photo1, .photo3,.photo-text {
  width: 95%;
  margin: 5px auto 5px auto;
text-align: center;
}
.photo2 > img, .photo1 > img, .photo3 > img {
  border-radius: 4px;
}
.photo2 > p, .photo1 > p, .photo3 > p,.photo-text > p {
	text-align: center;
}

/*沿革*/
.history-btn {
	margin: 0 0 30px; 0;
}
.history-btn div.history a{
	padding: 20px ;
	background: #ecf5fc;
	border-radius: 50%;
	margin: 1px;
	font-size: 1.6rem;
	font-weight: 600;
}
.history-btn div.yajirusi {
	display: none;
	}
/*dl.history dt {
  margin: 20px 0 0 0;
  padding: 10px 0 0 0;
  border-top: 3px solid #ccc;
  font-weight: 500;
}
dl.history dd {
  margin: 0 0 0 1.0em;
}*/
div.history-photo{
	margin: 0px 8px 0px 8px;
	display: block;
	padding: 0px 0 15px 0;
	width:95%;
	text-align:center;
	border-left:none;
}
p.history-period {
	font-weight: 700;
	font-size:1.9rem;
	animation: blinking 1s ease-in-out infinite alternate;
}
/* 点滅 */
@keyframes blinking {
   0% {
   opacity: 0.2;
   }
   100% {
   opacity: 1;
   }
}

.history-period-bg{
  display:block;
  width:10px;
  height:100px;
  background:#192f60;
  animation:2s ease-in 1s infinite alternate forwards running expansion;
color: #fff;
}
@keyframes expansion{
  0%{
    width:2em;
  }
  100%{
    width:7em;
    background:#000;
  }
}


div.history-photo img{
	width:100%;
	border-radius: 4px;
}
.history-jump a{
	color: #000;
	mix-blend-mode: difference;
	margin-right: 8px;
}
.history-jump a::before{
	content: "▼";
	font-size: 1.0rem;
}
/*挨拶*/
.greeting, .outline {}
.greeting-text, .outline-text {
  width: 100%;
	padding-bottom: 20px;
}
.greeting-text > h3, .outline-text > h3{
	font-size: 2.2rem;
	line-height: 1.4;
	margin: 10px 0 10px 0;
}
.greeting-img, .outline-img {
  width: 95%;
  margin: 15px auto 15px auto;
}
span.yakuin {
	display: inline-block;
	width: 10em;
}
div.preface-cont {
  width: 90%;
  margin: 0px auto 70px auto;
  padding: 30px 0 0 0;
  background: url("../../images/bg-preface.png") no-repeat top center;
  background-size: contain;
}
div.preface-cont > h2 {
  font-size: 2.4rem;
  text-align: center;
  margin: 0 0 10px 0;
}
div.preface-cont > h3 {
  font-size: 1.7rem;
  text-align: center;
  margin: 0 0 10px 0;
  color: #666;
}
div.preface-cont > p {
  font-size: 1.5rem;
  text-align: center;
}

div.overview {
	width: 100%;
	margin: 0;
	padding: 10px 0 10px 0;
	background: #fbfee9;
}

/*===*/
@media print, screen and (min-width : 768px) {

.contents-head-wrap-w {
	position: relative;
    width: 100%;
    margin: 0 auto 0 auto;
    padding: 0 0 0 0;
	z-index: 1;
	background: #fff url("../../images/common/circle01.svg") no-repeat;
  }
.contents-head-wrap-c {
	position: relative;
    width: 100%;
    margin: 0 auto 0 auto;
    padding: 0 0 0 0;
	z-index: 1;
	background: #fff url("../../images/common/circle02.svg") no-repeat;
  }
.contents-head-wrap-bo {
	position: relative;
    width: 100%;
    margin: 0 auto 0 auto;
    padding: 0 0 0 0;
	z-index: 1;
	background-image: url("../../images/common/circle01.svg"),url("../../images/common/circle02.svg");
	background-repeat: no-repeat, no-repeat;
	background-position: top 0 left -40px, top 0 right -40px;
  }
.contents-head-wrap-c {
	position: relative;
    width: 100%;
    margin: 0 auto 0 auto;
    padding: 0 0 0 0;
	z-index: 1;
	background: #fff url("../../images/common/circle02.svg") no-repeat;
  }
@keyframes rotation {
    0% {
      transform: rotate(0);
    }
    100% {
      transform: rotate(360deg);
    }
  }
  .contents-head {
	position: relative;
    width: 1200px;
    height: auto;
    margin: 0 auto 0 auto;
    padding: 170px 0 0 0;
	z-index: 10;
  }
  h1.contents-h {
    display: inline-block;
    font-size: 4.0rem;
    font-weight: 600;
    text-align: left;
	line-height: 1.2;
	  width: 410px;
	  
  }
  h1.contents-h > span {
    font-size: 2.2rem;
    font-weight: 400;
    margin: 0px 0px 0px 10px;
    float: none;
  }
	
  h1.contents-h-job {
    display: inline-block;
    font-size: 4.0rem;
    font-weight: 600;
    text-align: left;
	line-height: 1.2;
	  
  }
  h1.contents-h-job > span {
    font-size: 2.6rem;
    font-weight: 500;
    margin: 0px 0px 0px 30px;
    float: none;
  }
	
.contents-head > .image {
	margin: 0 0 0 0;
	}
.contents-head > .image > img {
	border-radius: 10px;
	}

/* 各パーツ
-------------------------------------------- */
h2.page-top {
	display: block;
	margin: 60px 0 80px 0;
	font-size: 3.0rem;
}
h3.business-h3 {
  text-align: left;
  font-size: 3.0rem;
  margin: 30px 0 0px 0;
	padding:0 0 20px 0; 
  position: relative;
	border: 0px solid #ccc;
	font-weight: 800;
	color: #999;
}
  /*営業案内ページ等のページトップ部分*/
  .contents-top {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
  }
  .contents-top-img {
    position: relative;
    width: 70%;
    z-index: 50;
  }
  div.contents-list {
    position: absolute;
    left: -300px;
    top: 100px;
    z-index: 60;
    width: 350px;
  }
  ul.contents-list {
    border: 1px solid #ccc;
  }
  ul.contents-list li {
    height: 70px;
    padding: 18px 0 0 25px;
    background: #ededed;
    border-top: 1px solid #ccc;
    border-collapse: collapse;
    border-spacing: 0;
  }
  ul.contents-list li.head {
    background: linear-gradient(#039874, #006e54);
    text-align: center;
    color: #fff;
  }
	.business-box {
		margin: 30px 0 80px 0;
	}
	.business-title {
		width:25%;
		
	}
	.business-box-text {
		width: 72%;
		padding: 0 0 40px 50px;
		border-left: 2px solid #ddd;
		border-bottom: 2px solid #ddd;
	}
	
	
	
  /* 各パーツ
-------------------------------------------- */
  /*アクセスマップ*/
  section.accessmap {
    width: 100%;
  }
  div.accessmap {
    width: 100%;
    padding: 30px 0 50px 0;
    margin: 0 0 30px 0;
    border-bottom: 1px solid #999;
  }
  div.am-adress {
    float: left;
    width: 37%;
    margin: auto;
  }
  div.am-map {
    float: right;
    width: 58%;
    height: 350px;
    margin: auto;
  }
  /*お問い合わせフォーム*/
  .inquiry-box {
    text-align: center;
    margin: 30px 0 80px 0;
    font-size: 2.2rem;
  }
  .inquiry-box > h3 {
    font-weight: 600;
    font-size: 2.2rem;
    color: #f25b27;
  }
  .inpuiry-bnr {
    display: inline-block;
    margin: 20px 10px 0 10px;
    padding: 8px 30px 8px 30px;
    border-radius: 20px;
    background: #f5ee43;
  }
  /*お知らせ*/
  div.blog-wrap {}
  div.blog-body {
    width: 65%;
    float: right;
  }
  article.entry {
    margin-bottom: 80px;
  }
  div.entry-header h2 {
    font-size: 130%;
    border-bottom: 1px dotted;
  }
  div.entry-header h2 a {
    color: #c43401;
  }
  div.entry-meta {}
  p.date {
    font-weight: 600;
  }
  div.entry-summary {
    font-size: 1.8rem;
  }
  a.more-link {
    display: block;
    text-align: right;
    font-size: 90%;
    color: #cc3300;
  }
  div.blog-side {
    width: 30%;
    float: left;
  }
  div.side-navi {
    margin-bottom: 25px;
  }
  div.side-navi h2 {
    background: #cfdc29;
    padding: 10px;
    text-align: center;
    font-size: 110%;
    font-weight: 600;
  }
  div.side-navi ul {
    font-size: 1.8rem;
  }
  .paging {
    text-align: center;
  }

  /*　flexbox　写真２枚横並び用　*/
  .photo2 {
    width: 45%;
    margin: 20px 20px 20px 20px;
  }
  .photo1 {
    width: 99%;
    margin: 20px auto 20px auto;
  }
  .photo3 {
    width: 30%;
    margin: 20px auto 20px auto;
  }
	.photo-text {
		width:45%; 
	}
  /*挨拶*/
  .greeting, .outline {
	  margin: 20px 0 0 0;
	}
  .greeting-text {
    width: 65%;
  }
	.greeting-text > h3{
	font-size: 2.7rem;
		line-height: 1.5;
		margin: 20px 0 20px 0;
}
  .greeting-img {
    width: 30%;
    margin: 0 0 0 0;
  }
.outline-text {
    width: 55%;
  }
	.outline-text > h3{
	font-size: 2.7rem;
		line-height: 1.5;
		margin: 20px 0 20px 0;
}
  .outline-img {
    width: 40%;
    margin: 0 0 0 0;
  }
/*沿革*/
.history-btn {
		margin: 100px 0 0 0;
	}
.history-btn div.history a{
	padding: 70px ;
	background: #ecf5fc;
	border-radius: 50%;
	margin: -5px;
	font-size: 2.6rem;
}
	.history-btn div.yajirusi {
		display: block;
		padding: 70px ;
		margin: -80px;
		font-size: 3.6rem;
		z-index: 100;
		color: #326bb1;
	}
div.history-photo{
	margin: 0px 25px 0px 0px;
	display: block;
	padding: 0px 0 15px 0;
	width:360px;
	text-align:center;
}
	p.history-period {
	font-weight: 700;
	font-size:2.9rem;
}
div.preface-cont {
    width: 60%;
    margin: 0px auto 0 auto;
    padding: 50px 0px 0px 0px;
  }
  div.preface-cont > h2 {
    font-size: 3.2rem;
    text-align: center;
    margin: 0px auto 40px auto;
    line-height: 1.3;
  }
  div.preface-cont > h3 {
    font-size: 2.6rem;
    text-align: center;
  }
  div.preface-cont > p {
    font-size: 2.0rem;
    text-align: left;
    line-height: 1.8;
    margin: 0px auto 10px auto;
  }
div.overview {
	width: 100%;
	margin: 0;
	padding: 30px 0 30px 0;
	background: #fbfee9;
}
	div.overview-diagram {
		width: 50%;
		min-width: 800px;
		margin: 0 auto 0 auto;
	}

.btn-cont-2{
	margin: 50px 0px 50px 0px ;
}
	.btn-cont-2 > div {
		display: block;
		margin: 5px;
}
	
	.lime-field .lime-field-block {
		width: 45%;
		margin: 20px;
		padding: 40px;
		background: #fbfee9;
		border-radius: 10px;
	}

	.solar-info {
		margin: 30px 0 0 0;
		padding: 50px 0 0 0;
		border-top: 1px solid #999;
	}
	.solartext {
		width: 750px;
		margin: 0 0 0 40px;
	}
.interviewee {
	width: 370px;
	margin: 0px 0 30px 0;
	}
	span.interviewee-name {
		display: block;
		font-size: 2.0rem;
		font-weight: 600;
		font-family: 'Noto Sans JP', sans-serif;
		color: #13325e;
	}
}
@media print, screen and (min-width : 1200px) {
  /* メイン
-------------------------------------------- */
  .contents-head {
    margin: 0 auto 0 auto;
  }
  .contents-head h1 {
    font-size: 3.8rem;
  }
}
@media print, screen and (min-width : 1600px) {}