/* トータルエネルギーソリューション用 */
.solution-top-mainvisual {
  padding: 0 !important;
  margin: 0 !important;
}
.solution-top-mainvisual__lead {
  position: absolute;
  top: 12%;
  text-align: center;
  width: 100%;
  font-size: 42px;
  font-weight: bold;
}
.solution-top-mainvisual__lead strong {
  font-size: 36px;
  color: #333;
}
.solution-top-mainvisual__item01 {
  top: 49% !important;
}
.solution-top-mainvisual__item02 {
  top: 46% !important;
}
.solution-top-mainvisual__item03 {
  top: 56% !important;
}
.solution-top-mainvisual__item04 {
  top: 60% !important;
}
.solution-top-mainvisual__item05 {
  top: 48.5% !important;
}
.solution-top-catchcopy {
  background: #F5F5F5;
  padding: 60px 0 14px;
}
.solution-top-catchcopy-wrap {
  width: 1110px;
  margin: 0 auto;
}
.no-border {
  border: none !important;
}
.fz-11 {
  font-size: 11px !important;
}
.fz-18 {
  font-size: 18px !important;
}
.fz-20 {
  font-size: 20px !important;
}
.fz-22 {
  font-size: 22px !important;
}
.fz-28 {
  font-size: 28px !important;
}

.s-width-6-3 .column-L {
  width: 605px !important;
}
.s-width-6-3 .column-R {
  width: 415px !important;
}
.s-width-6-4 .column-L {
  width: 605px !important;
}
.s-width-6-4 .column-R {
  width: 445px !important;
}
.s-width-6-3 .tbl-data-01 th,
.s-width-6-3 .tbl-data-01 td,
.s-width-6-4 .tbl-data-01 th,
.s-width-6-4 .tbl-data-01 td {
  font-size: 16px;
  padding: 20px;
  line-height: 1.1;
}

@media screen and (max-width: 660px){
  .solution-top-mainvisual {
    padding: 120px 0 0 !important;
    background: #bae3f0;
    margin: 0 !important;
  }
  .solution-top-mainvisual__lead {
    top: 14%;
    font-size: 24px;
  }
  .solution-top-mainvisual__lead strong {
    font-size: 18px;
  }
  .solution-top-mainvisual__item01 {
    top: 70% !important;
  }
  .solution-top-mainvisual__item02 {
    top: 68% !important;
  }
  .solution-top-mainvisual__item03 {
    top: 76% !important;
  }
  .solution-top-mainvisual__item04 {
    top: 77% !important;
  }
  .solution-top-mainvisual__item05 {
    top: 69.5% !important;
  }
  .solution-top-catchcopy {
    background: #F5F5F5;
    padding: 50px 15px 14px;
  }
  .solution-top-catchcopy-wrap {
    width: 100%;
    margin: 0 auto;
  }
  .fz-11 {
    font-size: 10px !important;
  }
  .fz-18 {
    font-size: 14px !important;
  }
  .fz-20 {
    font-size: 16px !important;
  }
  .fz-22 {
    font-size: 18px !important;
  }
  .fz-28 {
    font-size: 24px !important;
  }
  .s-width-6-3 .column-L,
  .s-width-6-4 .column-L {
    width: auto !important;
  }
  .s-width-6-3 .column-R,
  .s-width-6-4 .column-R {
    width: auto !important;
  }
  .s-width-6-3 .tbl-data-01 th,
  .s-width-6-3 .tbl-data-01 td,
  .s-width-6-4 .tbl-data-01 th,
  .s-width-6-4 .tbl-data-01 td {
    font-size: 12px;
    padding: 10px;
  }
}

/* お問い合わせ用 */
.box-solution-contact {
  padding: 70px 0 50px;
}
.box-solution-contact .solution-container {
  width: 730px;
  padding: 0 0 11px;
}
.box-solution-contact .hdg-level1-01-container {
  margin-bottom: 30px;
}
.box-solution-contact .list-btn-link-01.btn-col3 li {
  width: 47%;
}
.box-solution-contact .list-btn-link-01.btn-col3 li a {
  font-size: 20px;
}

@media screen and (max-width: 660px){

  .box-solution-contact {
    padding: 35px 0 25px;
  }
  .box-solution-contact .solution-container {
    width: auto;
    padding: 0 20px 11px;
  }
  .box-solution-contact .hdg-level1-01-container {
    margin-bottom: 30px;
  }
  .box-solution-contact .list-btn-link-01.btn-col3 li {
    width: 80%;
  }
  .box-solution-contact .list-btn-link-01.btn-col3 li a {
    font-size: 13px;
  }

}

/* 選ばれる理由用 */
.strength-box-01 .has-layer.is-dark .box-background__image::before {
  background-color: rgba(0,0,0,0.1);
}
.strength-box-01 .box-background__contents {
  padding: 50px 50px 90px;
}
.strength-box-01 .hdg-level2-01 {
  text-align: center;
  border-bottom: none;
  font-size: 243%;
}
.strength-box-01 .strength-icon-list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
}
.strength-box-01 .strength-icon-list ul li {
  text-align: center;
  margin: 0 9px;
}
.strength-box-01 .strength-icon-list ul li > p {
  font-size: 129%;
  color: #dc1e37;
}
.strength-box-04 .has-layer.is-dark .box-background__image::before {
  background-color: rgba(0,0,0,0.1);
}
.strength-box-04 .box-background__contents {
  padding: 50px 50px 25px;
}
.strength-box-04 .hdg-level2-01 {
  text-align: center;
  border-bottom: none;
  font-size: 243%;
}
.strength-box-05 .box-content-01 .hdg-level3-01 {
  text-align: center;
  border-bottom: none;
}
@media screen and (max-width: 660px){
  .strength-box-01 .box-background__contents {
    padding: 20px 20px 20px;
  }
  .strength-box-01 .hdg-level2-01 {
    font-size: 158%;
  }
  .strength-box-01 .strength-icon-list ul li {
    text-align: center;
    margin: 0;
    padding: 0 10px 20px;
    box-sizing: border-box;
    width: 50%;
  }
  .strength-box-01 .strength-icon-list ul li img {
    width: 100%;
  }
  .strength-box-01 .strength-icon-list ul li > p {
    font-size: 90%;
    color: #dc1e37;
  }
  .strength-box-04 .box-background__contents {
    padding: 20px 20px 70px;
  }
  .strength-box-04 .hdg-level2-01 {
    font-size: 158%;
  }
}

/* サービス用 */
.list-solution-num .column .hdg-level3-01 {
  background: url(/jp/energy/solution/img/num1.png) left center no-repeat;
  padding-left: 30px;
}
.list-solution-num .column:nth-child(2) .hdg-level3-01,
.list-solution-num .column.num02 .hdg-level3-01 {
  background: url(/jp/energy/solution/img/num2.png) left center no-repeat;
  padding-left: 30px;
}
.list-solution-num .column:nth-child(3) .hdg-level3-01,
.list-solution-num .column.num03 .hdg-level3-01 {
  background: url(/jp/energy/solution/img/num3.png) left center no-repeat;
  padding-left: 30px;
}
.list-solution-num .column:nth-child(4) .hdg-level3-01,
.list-solution-num .column.num04 .hdg-level3-01 {
  background: url(/jp/energy/solution/img/num4.png) left center no-repeat;
  padding-left: 30px;
}
.list-solution-num .column:nth-child(5) .hdg-level3-01,
.list-solution-num .column.num05 .hdg-level3-01 {
  background: url(/jp/energy/solution/img/num5.png) left center no-repeat;
  padding-left: 30px;
}
.solution-price-box {
  background: #FFD8DD;
  padding: 20px 30px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
}
.solution-price-box p {
  line-height: 1.4;
  color: #DC1E37;
}
.solution-price-box > div {
  text-align: left;
}
.solution-price-wrap {
  background: #FFD8DD;
  padding: 0 0 20px;
  color: #DC1E37;
}
.solution-price-wrap .solution-price-box {
  padding: 20px 25px 10px;
}
.solution-cost-box {
  background: #ffeff1;
  padding: 20px;
}
.solution-cost-box p {
  line-height: 1.4;
}
.sp-price {
  font-size: 28px;
  font-weight: bold;
}
.sp-price-note {
  font-size: 18px;
  font-weight: bold;
}
.solution-flow-list {
  position: relative;
  padding: 60px 0 0 0;
}
.solution-flow-bubble {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 16px;
  padding: 10px 20px;
  border-radius: 50px;
  line-height: 1.1;
  background: #DAF1F8;
}
.solution-flow-bubble:after {
  content: "";
  display: block;
  width: 19px;
  height: 17px;
  background: url(/jp/energy/solution/img/flowbubble_arw.png) left center no-repeat;
  position: absolute;
  top: 33px;
  left: 65px;
}
.solution-flow-bubble.sfb7 {
  left: auto;
  right: 0;
}
.solution-flow-bubble.sfb7:after {
  left: auto;
  right: 65px;
}
.solution-flow-list ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start;
}
.solution-flow-list ul li {
  width: 148px;
  height: 210px;
  box-sizing: border-box;
  padding: 20px 18px;
  background: #F5F5F5;
}
.solution-flow-step > div:nth-child(1) {
  font-size: 12px;
  text-align: center;
  color: #999;
  line-height: 1.1;
}
.solution-flow-step > div:nth-child(2) {
  font-size: 24px;
  text-align: center;
  color: #666;
}
.solution-flow-step > div:nth-child(3) {
  padding: 15px 0 0;
  font-size: 16px;
  color: #000;
  line-height: 1.6;
}
.solution-flow-step.sfsred > div:nth-child(1),
.solution-flow-step.sfsred > div:nth-child(2),
.solution-flow-step.sfsred > div:nth-child(3) {
  color: #DC1E37;
}
.solution-flow-note {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-start;
}
.solution-flow-note {
  margin: 20px 0 0;
}
.solution-flow-note > div {
  line-height: 1.1;
  font-size: 16px;
  padding: 6px;
  margin: 0 12px 0 0;
  text-align: center;
  background: url(/jp/energy/solution/img/flownote_arw_pc.png) right center no-repeat #FFD8DD;
  width: 308px;
  box-sizing: border-box;
}
.energy_farm-box-00 .box-background__contents {
  text-align: center;
  padding: 80px 30px;
}
.solution-energy-box {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  background: #F5F5F5;
}
.solution-energy-box > div {
  box-sizing: border-box;
  padding: 20px;
}
.solution-energy-box > div:nth-child(1) {
  width: 40%;
  background: #DC1E37;
  color: #fff;
}
.solution-energy-box > div:nth-child(2) {
  width: 60%;
  background: #F5F5F5;
  padding-left: 30px;
}
.solution-energy-box .se-title {
  font-size: 13.8px;
  line-height: 1.1;
}
.solution-energy-box .se-data {
  line-height: 1.1;
  font-weight: bold;
  font-size: 28px;
  margin: 6px 0 0;
}
.solution-energy-box .se-data span {
  font-size: 18px;
}
.solution-energy-text {
  margin: 15px 0 0;
}

@media screen and (max-width: 660px){
  .solution-price-box {
    padding: 20px;
  }
  .solution-cost-box {
    padding: 20px;
  }
  .sp-price {
    font-size: 20px;
    font-weight: bold;
  }
  .sp-price-note {
    font-size: 10px;
    font-weight: bold;
  }
  .biogas-box-03 .list-btn-link-01.btn-col3 li {
    width: 80%;
  }
  .solution-flow-box {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-start;
  }
  .solution-flow-box > div:nth-child(1) {
    width: 100%;
  }
  .solution-flow-list {
    position: static;
    padding: 0 0 0 0;
  }
  .solution-flow-list li {
    position: relative;
    margin: 0 0 20px;
  }
  .solution-flow-list li:nth-child(1) {
    margin-top: 52px;
  }
  .solution-flow-list li:nth-child(7) {
    margin: 72px 0 0;
  }
  .solution-flow-list.del07 li:nth-child(7) {
    margin: 0;
  }
  .solution-flow-bubble {
    position: absolute;
    top: -50px;
    left: 0;
    width: 100%;
    box-sizing: border-box;
    font-size: 14px;
    padding: 10px;
    text-align: center;
  }
  .solution-flow-bubble:after {
    top: 28px;
    left: 50%;
    margin-left: -10px;
  }
  .solution-flow-bubble.sfb7:after {
    top: 28px;
    left: 50%;
    margin-left: -10px;
  }
  .solution-flow-list ul {
    display: block;
  }
  .solution-flow-list ul li {
    width: 100%;
    height: auto;
  }
  .solution-flow-step {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
  }
  .solution-flow-step > div:nth-child(1) {
    width: 12%;
  }
  .solution-flow-step > div:nth-child(2) {
    width: 12%;
  }
  .solution-flow-step > div:nth-child(3) {
    padding: 0;
    width: 76%;
  }
  .solution-flow-note {
    display: block;
  }
  .solution-flow-note {
    margin: 52px 0 0;
  }
  .solution-flow-note > div {
    font-size: 14px;
    padding: 6px;
    margin: 0 0 20px 20px;
    text-align: center;
    background: url(/jp/energy/solution/img/flownote_arw_sp.png) center bottom no-repeat #FFD8DD;
    width: 30px;
  }
  .solution-flow-note > div:nth-child(1) {
    padding: 37px 6px;
  }
  .solution-flow-note > div.line1:nth-child(1) {
    padding: 33px 6px;
  }
  .solution-flow-note > div:nth-child(2) {
    padding: 33px 6px;
  }
  .solution-flow-note > div:nth-child(3) {
    padding: 33px 6px;
  }
  .energy_farm-box-00 .box-background__contents {
    text-align: center;
    padding: 50px 30px;
  }
  .energy_farm-box-00 .box-background__contents .image img {
    width: 100%;
  }
  .solution-energy-box .se-title {
    font-size: 14px;
  }
  .solution-energy-box .se-data {
    font-size: 20px;
  }
  .solution-energy-box .se-data span {
    font-size: 14px;
  }
}

/* 導入試算例 */
.cost-list-01 {
  text-align: center;
  background: #DBF0FF;
  padding: 10px;
  position: relative;
}
.cost-list-01:after {
  content: "";
  display: block;
  width: 33px;
  height: 20px;
  background: url(/jp/energy/solution/img/icon_cost.png) 00 no-repeat;
  position: absolute;
  bottom: -35px;
  left: 50%;
  margin: 0 0 0 -17px;
}
.cost-list-02 {
  background: #FFD8DD;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: flex-start;
  padding: 20px 0;
}
.cost-list-02 > div {
  padding: 0 20px 0;
}
.cost-list-02 > div > span {
  display: block;
  line-height: 1.4;
  color: #DC1E37;
}
.cost-list-03 {
  background: #ffeff1;
  padding: 10px 0 20px;
}
.cost-list-03 > div:nth-child(1) {
  text-align: center;
}
.cost-list-03 > div:nth-child(2) {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: flex-start;
}
.cost-list-03 > div:nth-child(2) > div {
  padding: 0 15px 0;
}
.tc-link-box .link-button-01 {
  background-image: none;
  padding: 10px;
}
.tc-link-box .link-button-01 img {
  width: auto;
  margin: 0;
}
.tc-link-box .link-button-01 b {
  width: 45%;
}

@media screen and (max-width: 660px){
  .cost-list-01:after {
    bottom: -23px;
  }
  .tc-link-box .link-button-01 {
    background-image: none;
    padding: 10px;
  }
  .tc-link-box .link-button-01 img {
    width: 100%;
  }
  .tc-link-box .link-button-01 b {
    margin: 0;
  }
  .tc-link-box .column {
    background: #000;
    padding-bottom: 0;
  }
}


.button-list-01 {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
}
.button-list-01 > li {
  position: relative;
}
.button-list-01 > li a {
  padding-left: 2em;
}
.button-list-01 > li i {
  position: absolute;
  top: 50%;
  left: 10px;
  margin-top: -8px;
}
@media screen and (max-width: 660px){
  .button-list-01 {
    display: block;
  }
  .button-list-01 > li {
    margin-top: 10px;
  }
  .button-list-01 > li a {
    width: 100%;
  }
}
