/* CSS Document */
img {
  vertical-align: middle;
  max-width: 100%;
  width: auto;
  height: auto;
}

body {
  font-family: 'Noto Sans JP', sans-serif;
  color: #000000;
  -webkit-text-size-adjust: 100%;
  line-height: 1.5em;
  width: 100%;
  height: 100%;
}

.wrapper {
  max-width: 990px;
  padding: 0 20px;
  box-sizing: border-box;
  margin: 0 auto;
}

.wrapper_inner {
  padding: 1.5rem;
}

a {
  color: #00a9b0;
  text-decoration: none;
}

a:hover {
  opacity: 0.5;
  transition: 0.5s;
}

/* 上付き文字 */
sup {
  font-size: 0.6em;
  vertical-align: top;
}

/* ラインマーカー風 */
.yellow {
  background: linear-gradient(transparent 70%, #fc3 30%);
  font-weight: 500;
  font-size: 1.2em;
}

/*文字*/
.gold {
  color: #cc9933;
  font-weight: 500;
}

.under_line {
  text-decoration: underline;
}

@media screen and (max-width: 1000px) {
  .wrapper {
    padding: 0 0.5rem;
  }
  
  .wrapper_inner {
    padding: 1rem;
  }
  
  .yellow {
    font-size: 1em;
  }
}

/***************************
 ** flexible boxと子要素の関係
 */
.flex_row {
  /* flexible boxの使用宣言（box,flexbox,flex） */
  display: -webkit-box; /*--- Androidブラウザ用 ---*/
  display: -ms-flexbox; /*--- ie10 ---*/
  display: -webkit-flex; /*--- mac old safari ---*/
  display: flex;
  /* flexアイテムの横方向の位置揃え */
  -webkit-box-pack: justify; /*--- Androidブラウザ ---*/
  -ms-flex-pack: justify; /*--- ie10 ---*/
  -webkit-justify-content: space-between; /*--- mac old safari ---*/
  justify-content: space-between;
  /* flexアイテムの縦方向の整列 */
  -webkit-box-align: stretch; /*--- Androidブラウザ ---*/
  -ms-flex-align: stretch; /*--- ie10 ---*/
  -webkit-align-items: stretch; /*--- mac old safari ---*/
  align-items: stretch;
  /* flexアイテムの並び方向 */
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal; /*--- Androidブラウザ 2つに分かれている ---*/
  -ms-flex-direction: row; /*--- ie10 ---*/
  -webkit-flex-direction: row; /*--- mac old safari ---*/
  flex-direction: row;
  /* flexアイテムを複数行にするかどうか */
  /* box仕様のbox-linesに当たるが、androidブラウザは未対応 */
  /* wrapさせたい場合はandroid4DefaultBrowser.cssにて対応すること */
  -ms-flex-wrap: nowrap; /*--- ie10 ---*/
  -webkit-flex-wrap: nowrap; /*--- mac old safari ---*/
  flex-wrap: nowrap;
}

.flex_row > * {
  /**** flexible box関連指定 ****/
  /* flexアイテムの伸縮、アイテム幅の指定 */
  -webkit-box-flex: 0.1; /*--- Androidブラウザ 要素がはみ出す場合があることへの対処 ---*/
  -ms-flex: 1 1; /*--- ie10 ---*/
  -webkit-flex: 1 1 auto; /* mac old safari */
  /* ie11で、flex-basisを記述すると正しく動作しないので記載しないように変更 */
  flex: 1 1; /*--- flex-grow,flex-shrink,flex-basis ---*/
  /* 並び順の指定 */
  -webkit-box-ordinal-group: 1; /*--- Androidブラウザ ---*/
  -ms-flex-order: 0; /*--- ie10 ---*/
  -webkit-order: 0; /*--- mac old safari ---*/
  order: 0;
}

@media screen and (max-width: 736px) {
  .sp_flex_col {
    /* flexアイテムの並び方向 */
    -webkit-box-orient: vertical; /*--- Androidブラウザ 2つに分かれている ---*/
    -ms-flex-direction: column; /*--- ie10 ---*/
    -webkit-flex-direction: column; /*--- mac old safari ---*/
    flex-direction: column;
  }
  .sp_flex_col > * {
    width: 100%;
  }
}

/***************************
 ** PC・PS 表示非表示
 */
.pc_only {
  display: block;
}

.sp_only {
  display: none;
}
.sp_break {
  display: none;
}
@media screen and (max-width: 736px) {
  .pc_only {
    display: none;
  }
  
  .sp_only {
    display: block;
  }
  
  .sp_break {
    display: inline;
  }
  
  .pc_break {
    display: none;
  }
}

/***************************
 ** シャープヘッダー調整用
 */
.header_wrapper {
  max-width: 990px;
  margin: 0 auto;
}

.header_wrapper .header-top {
  border: none;
}

#container .footer-content {
  max-width: 1148px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .header_wrapper .menu-bar {
    top: auto;
  }
}

/***************************
 ** fv
 */
#fv {
  text-align: center;
  background: #eff8f7;
  background-size: auto 100%;
}

@media screen and (max-width: 736px) {
  #fv {
    text-align: center;
    margin-bottom: 2rem;
    background: none;
  }
}

/***************************
 ** #main
 */
main {
  display: block;
}

/***************************
 ** section 共通
 */
/* 緑色・太字の見出し */
.sec_ttl {
  color: #00a9b0;
  font-weight: 500;
  text-align: center;
  line-height: 1.4;
}

/* 注釈 */
.note {
  font-size: 0.75rem;
  text-align: left;
  line-height: 1.6;
}


/***************************
 ** 相談ページリンクブロック
 */
.consultation {
  border: 1px solid #ccc;
  margin: 2rem 0 4rem;
  background: #fff;
}

.consultation_ttl {
  background: #f6f6f6;
  display: table;
  width: 100%;
}

.consultation_ttl_img {
  display: table-cell;
  padding: 0.5rem 0.5rem 0 1.5rem;
}

.consultation_ttl_text {
  display: table-cell;
  font-size: 1.75rem;
  font-weight: 500;
  vertical-align: middle;
  padding: 0.5rem;
  line-height: 1.4;
}

.consultation_ttl_sub {
  display: inline-block;
  color: #e6000d;
  font-size: 1.375rem;
  padding: 0.3rem 0.8rem;
  border-radius: 2rem;
  background: #fff;
  border: 1px solid #e6000d;
  vertical-align: middle;
  margin-bottom: 0.5rem;
}

.consultation_detail {
  padding: 1.5rem;
}

.consultation_detail_ttl {
  font-size: 1.5rem;
  font-weight: 500;
  text-align: center;
  margin-bottom: 0.8rem;
}

.consultation_list {
  margin-bottom: 1.5rem;
}

.consultation_list li {
  flex-basis: 32%;
  box-sizing: border-box;
  background: #f6f6f6;
  border: 1px solid #ccc;
  border-radius: 10px;
  padding: 1rem 1.5rem;
}

.consultation_list li:nth-child(2) {
  margin: 0 2%;
}

.consultation_list_ttl {
  text-align: center;
  font-size: 1.125rem;
  font-weight: 500;
  margin-bottom: 0.3rem;
}

.consultation_list li p {
  font-size: 0.875rem;
}

.consultation_list li p:first-of-type {
  text-align: center;
  margin-bottom: 0.5rem;
}

.consultation_btn {
  display: block;
  text-align: center;
  background: #e6000d;
  color: #fff;
  font-size: 1.875rem;
  font-weight: 500;
  padding: 1rem 1.5rem;
  line-height: 1.4;
  box-shadow: 0 0 5px rgba( 0, 0, 0, 0.5);
}

.consultation_btn::after {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  border-right: 3px solid #fff;
  border-bottom: 3px solid #fff;
  transform: rotate(-45deg);
  margin-left: 0.5em;
}

@media screen and (max-width: 736px) {
  .consultation {
    margin: 1rem 0;
  }

  .consultation_ttl {
    display: block;
  }

  .consultation_ttl_img {
    display: block;
    padding: 0.5rem 0.5rem 0 0.5rem;
    text-align: center;
  }
  
  .consultation_ttl_img img {
    width: 30%;
  }

  .consultation_ttl_text {
    display: block;
    font-size: 1.25rem;
    padding: 0.8rem;
  }

  .consultation_ttl_sub {
    display: block;
    font-size: 0.875rem;
    margin-bottom: 0.5rem;
    text-align: center;
  }
  
  .consultation_ttl_text br {
    display: none;
  }

  .consultation_detail {
    padding: 1rem;
  }

  .consultation_detail_ttl {
    font-size: 1.125rem;
  }
  
  .consultation_list {
    margin-bottom: 1rem;
  }

  .consultation_list li {
    flex-basis: auto;
    padding: 0.8rem;
  }
  
  .consultation_list li:not(:last-child) {
    margin-bottom: 0.8rem;
  }

  .consultation_list li:nth-child(2) {
    margin: 0 0 0.8rem;
  }

  .consultation_list_ttl {
    font-size: 1rem;
  }

  .consultation_btn {
    font-size: 1.15rem;
    font-weight: 500;
    padding: 1rem;
  }

  .consultation_btn::after {
    width: 10px;
    height: 10px;
  }
}


/***************************
 ** オンラインセミナー申込
 */
#mini_cv {
  background: #f0f0f0;
  margin-bottom: 3rem;
  padding: 1rem 0;
}

#mini_cv .yvideo {
  max-width: 950px;
  margin: 0 auto;
  padding: 1rem;
  /* background: #fff;
    border: 3px solid #e6000d;*/
  box-sizing: border-box;
  text-align: center;
}

#mini_cv h2 {
  color: #000;
  font-size: 1.4rem;
  font-weight: bold;
  margin: 0.5rem auto;
  display: block;
  line-height: 3rem;
}

#mini_cv h2 span {
  color: #fff;
  font-weight: bold;
  background: #e6000d;
  padding: 0 0.4rem;
  margin: 0 0.2rem;
  font-size: 1.2rem
}

#mini_cv p span {
  font-size: 120%;
  font-weight: bold;
}

#mini_cv .yvideo_box {
  margin: 1rem 0;
}

#mini_cv .yvideo_02 .yvideo_box::before {
  content: "";
  background: url(../img/img_minicv_fukidashi.png) no-repeat;
  width: 140px;
  height: 156px;
  display: block;
  background-size: contain;
  left: 7rem;
  bottom: 19.5rem;
  position: absolute;
}

.red_btn {
  display: inline-block;
  font-size: 1.25rem;
  padding: 1em 1.5em;
  background: #e6000d;
  color: #fff;
  font-weight: 500;
  border-radius: 0.3em;
}

.red_btn::after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-right: 3px solid #fff;
  border-bottom: 3px solid #fff;
  transform: rotate(-45deg);
  margin-left: 0.5em;
}

@media screen and (max-width: 736px) {
  #mini_cv {
    margin-bottom: 1rem;
  }
  
  #mini_cv h2 {
    font-size: 1.1rem;
    line-height: 1.8rem;
    margin: 0 auto 0.5rem;
  }
  
  #mini_cv h2 span {
    font-size: 0.8rem;
  }
  
  #mini_cv .yvideo {
    width: 94%;
    padding: 0.5rem;
  }
  
  #mini_cv .yvideo_02 .yvideo_box::before {
    width: 28vw;
    height: 42vw;
    left: -0.5rem;
    bottom: 5.5rem;
    z-index: 2;
  }
  
  #mini_cv p {
    box-sizing: border-box;
    text-align: left;
    font-size: 90%;
    line-height: 150%;
  }
  
  #mini_cv .yvideo_02 p {
    width: 62%;
    margin-left: 38%;
  }
  
  .yvideo_box {
    padding-top: 56.25%;
    position: relative;
  }
  
  .yvideo_box iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
  }
  
  .red_btn {
    width: 100%;
    box-sizing: border-box;
    font-size: 1.0625rem;
    padding: 0.5em 1.5em;
    position: relative
  }
  
  .red_btn::after {
    position: absolute;
    right: 2rem;
    top: 50%;
    margin-top: -6px;
  }
}

/***************************
 ** youtube 埋め込み
 */
.yvideo {
  text-align: center;
  margin: 2rem 0 6rem;
  position: relative;
  width: 100%;
}
.yvideo_ttl {
  margin-bottom: 1.5rem;
}
.yvideo .note {
  text-align: center;
  font-size: 80%;
  line-height: 1.53;
}
@media screen and (max-width: 736px) {
  .yvideo_box {
    padding-top: 56.25%;
    position: relative;
  }
  .yvideo_box iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
  }
  .yvideo {
    margin: 2rem 0 4rem;
  }
}

/***************************
 ** 太陽光発電導入のメリット
 */
/* メリット説明エリア共通 */
#solar_merit {
  margin-bottom: 5rem;
}

.solar_merit_ttl {
  font-size: 1.8rem;
  color: #00a9b0;
  font-weight: 500;
  text-align: center;
  padding: 1rem;
  border-radius: 10px;
  line-height: 1.5;
  margin-bottom: 1.2rem;
}

.solar_merit_subttl {
  text-align: center;
  font-weight: 500;
  font-size: 1.4rem;
  margin-bottom: 1.5rem
}

.solar_merit_subttl span {
  color: #00a9b0;
}

.solar_merit_text {
  margin-bottom: 2rem;
}

@media all and (-ms-high-contrast:none) {
  *::-ms-backdrop, .solar_merit_ttl {
    padding-top: 1.5rem;
  } /* IE11 */
}

/*メリットの枠*/
.solar_merit_detail {
  border: 4px solid #00a9b0;
  border-radius: 10px;
  margin-bottom: 1.5rem;
}

/*メリット123　緑丸*/
.solar_merit_number {
  line-height: 1.1;
  width: 2.5em;
  height: 2.5em;
  padding: 6px;
  background: #00a9b0;
  color: #fff;
  border-radius: 50%;
  text-align: center;
  margin: 10px;
  font-weight: 500;
}

.solar_merit_number span {
  display: block;
}

.solar_merit_number_txt01 {
  margin-top: 0.5rem;
  font-size: 0.8rem;
}

.solar_merit_number_txt02 {
  font-size: 1.8rem;
}

/*メリット123　タイトル*/
.solar_merit_detail_ttl {
  font-size: 1.5rem;
  font-weight: 500;
  padding: 1rem;
  border-top-left-radius: 7px;
  border-top-right-radius: 7px;
  flex-basis: 84%;
}

.solar_merit_detail_ttl span {
  color: #00a9b0;
  font-size: 1.8rem;
}

.solar_merit_detail_inner {
  padding: 2rem;
}

.solar_merit_detail_inner > p {
  margin-bottom: 1rem;
}

.solar_merit_detail_inner .img {
  text-align: center;
}

/*メリットの内容　flexboxを使用*/
.merit_left, .merit_right {
  flex-basis: 48%;
}

.merit_left {
  margin-right: 4%;
}

.merit_right p, .merit_left p {
  line-height: 2;
  margin-bottom: 1em;
}

/* メリット2.3つの経済メリット */
/*123色分け*/
.merit2_number {
  margin-bottom: 1.5rem;
}

.merit2_number01, .merit2_number02, .merit2_number03 {
  font-size: 1.2rem;
  font-weight: 500;
  margin-bottom: 0.5rem;
}

.merit2_number01 > span {
  display: inline-block;
  color: #fff;
  font-weight: normal;
  font-size: 1.1875rem;
  line-height: 2;
  text-align: center;
  margin-right: 0.5rem;
  background-color: #485db5;
  width: 2em;
  height: 2em;
  border-radius: 5px;
}

.merit2_number02 > span {
  display: inline-block;
  color: #fff;
  font-weight: normal;
  font-size: 1.1875rem;
  line-height: 2;
  text-align: center;
  margin-right: 0.5rem;
  background-color: #009900;
  width: 2em;
  height: 2em;
  border-radius: 5px;
}

.merit2_number03 > span {
  display: inline-block;
  color: #fff;
  font-weight: normal;
  font-size: 1.1875rem;
  line-height: 2;
  text-align: center;
  margin-right: 0.5rem;
  background-color: #e2006c;
  width: 2em;
  height: 2em;
  border-radius: 5px;
}

.merit2_number01 span span, .merit2_number02 span span, .merit2_number03 span span {
  font-size: 3.5rem;
}

/* メリット3.非常用電源 */
/*メリット3の上部　flexboxを使用（幅別）*/
.merit_left01 {
  flex-basis: 36%;
  margin-right: 4%;
}

.merit_right01 {
  flex-basis: 60%;
  margin-bottom: 2rem;
}

.merit_left01 p, .merit_right01 p {
  line-height: 2;
  margin-bottom: 1em;
}

.merit_left01 h4 {
  font-size: 1.2rem;
  font-weight: 500;
  margin-bottom: 1rem;
}

/* メリットの中の緑枠 */
.merit3_reference {
  padding: 1.5rem;
  border-radius: 10px;
  border: 1px solid #00a9b0;
}

.merit3_reference .sec_ttl {
  margin-bottom: 1rem;
  font-size: 1.125rem;
}

.merit3_reference .sec_ttl span {
  font-size: 1rem;
  color: #000;
}

@media screen and (max-width: 736px) {
  /* メリット説明エリア共通 */
  #solar_merit {
    margin-bottom: 3rem;
  }
  
  .solar_merit_ttl {
    font-size: 1.4rem;
    padding: 0.5rem 0;
    margin-bottom: 1rem;
    line-height: 1.6;
  }
  
  .solar_merit_subttl {
    font-size: 1.125rem;
    margin-bottom: 1.5rem
  }
  
  .solar_merit_text {
    margin-bottom: 2rem;
    font-size: 0.8125rem;
  }
  
  .solar_merit_ttl01 {
    font-size: 1rem;
  }
  
  .solar_merit_detail {
    margin-bottom: 1rem;
  }
  
  .solar_merit_detail_inner {
    padding: 0.8rem 0.8rem 0;
  }
  
  /*メリット123　緑丸*/
  .solar_merit_number {
    line-height: 1.1;
    width: 2.5em;
    height: 2.5em;
    padding: 0.2rem;
    background: #00a9b0;
    color: #fff;
    border-radius: 50%;
    text-align: center;
    margin: 0.2rem;
    font-weight: 500;
  }
  
  .solar_merit_number span {
    display: block;
  }
  
  .solar_merit_number_txt01 {
    margin-top: 0.1rem;
    font-size: 0.5rem;
  }
  
  .solar_merit_number_txt02 {
    font-size: 1.5rem;
  }
  
  /*メリット123　タイトル*/
  .solar_merit_detail_ttl {
    font-size: 1rem;
    font-weight: 500;
    padding: 0.2rem;
    border-top-left-radius: 7px;
    border-top-right-radius: 7px;
    flex-basis: 84%;
  }
  
  .solar_merit_detail_ttl span {
    color: #00a9b0;
    font-size: 1.2rem;
  }
  
  .merit_left, .merit_right {
    flex-basis: auto;
  }
  
  .merit_left {
    margin-right: 0;
    margin-bottom: 1rem;
  }
  
  .merit_left p, .merit_right p {
    font-size: 0.8125rem;
    line-height: 1.6;
  }
  
  .merit_left01 p {
    font-size: 0.8125rem;
    line-height: 1.6;
  }
  
  .merit_right01 {
    flex-basis: 60%;
    margin-bottom: 2rem;
  }
  
  .merit_left01 p, .merit_right01 p {
    line-height: 2;
    margin-bottom: 1em;
  }
  
  .merit_left01 h4 {
    font-size: 1rem;
    font-weight: 500;
    margin-bottom: 1rem;
  }
  
  /* メリット2.3つの経済メリット */
  /*123色分け*/
  .merit2_number {
    margin-bottom: 1.5rem;
  }
  
  .merit2_number01, .merit2_number02, .merit2_number03 {
    font-size: 1rem;
    font-weight: 500;
    margin-bottom: 0.5rem;
  }
  
  .merit2_number01 > span {
    display: inline-block;
    color: #fff;
    font-weight: normal;
    font-size: 1rem;
    line-height: 2;
    text-align: center;
    margin-right: 0.5rem;
    background-color: #485db5;
    width: 2em;
    height: 2em;
    border-radius: 5px;
  }
  
  .merit2_number02 > span {
    display: inline-block;
    color: #fff;
    font-weight: normal;
    font-size: 1rem;
    line-height: 2;
    text-align: center;
    margin-right: 0.5rem;
    background-color: #009900;
    width: 2em;
    height: 2em;
    border-radius: 5px;
  }
  
  .merit2_number03 > span {
    display: inline-block;
    color: #fff;
    font-weight: normal;
    font-size: 1rem;
    line-height: 2;
    text-align: center;
    margin-right: 0.5rem;
    background-color: #e2006c;
    width: 2em;
    height: 2em;
    border-radius: 5px;
  }
  
  .merit2_number01 span span, .merit2_number02 span span, .merit2_number03 span span {
    font-size: 3.5rem;
  }
  
  /* メリットの中の緑枠 */
  .merit3_reference {
    padding: 1rem;
    border-radius: 10px;
    border: 1px solid #00a9b0;
    margin-bottom: 1rem;
  }
  
  .merit3_reference .sec_ttl {
    margin-bottom: 1rem;
    font-size: 1rem;
  }
  
  .merit3_reference .sec_ttl span {
    font-size: 0.8rem;
    color: #000;
  }
}

/***************************
 ** メリットのアコーディオン開閉（QAを利用）
 */
.qa_block {
  background-color: #fff;
  border-radius: 10px;
}

/*メリット123のアコーディオン*/
.panel-head {
  position: relative;
  font-size: 1.4rem;
  line-height: 1.6;
  cursor: pointer;
}

/*メリット123の下矢印↓*/
.panel-head:after {
  content: "";
  position: absolute;
  border-right: 4px solid #00a9b0;
  border-bottom: 4px solid #00a9b0;
  width: 13px;
  top: 38%;
  right: 20px;
  height: 13px;
  transform: rotate(45deg);
}

/*メリット123の上矢印↑*/
.panel-head.ac:after {
  content: "";
  position: absolute;
  border-left: 4px solid #00a9b0;
  border-top: 4px solid #00a9b0;
  border-right: 0;
  border-bottom: 0;
  width: 13px;
  top: 30px;
  right: 20px;
  height: 13px;
  transform: rotate(45deg);
}

.qa-answer {
  display: none;
  text-align: left;
  border-top: 1px solid #00a9b0;
}

@media screen and (max-width: 736px) {
  .panel-head {
    font-size: 1rem;
    line-height: 1.6;
  }
  
  /*メリット123の下矢印↓*/
  .panel-head:after {
    width: 9px;
    top: 33%;
    right: 14px;
    height: 9px;
  }
  
  /*メリット123の上矢印↑*/
  .panel-head.ac:after {
    width: 9px;
    top: 40%;
    right: 14px;
    height: 9px;
  }
}

/***************************
 ** 不安と疑問
 */
#anxiety {
  background: #78969e;
  background: linear-gradient(to bottom, #78969e 0%, #78969e 50%, #f0f0f0 80%);
  padding-bottom: 3rem;
}

.anxiety_ttl {
  text-align: center;
  margin-bottom: 2rem;
}

/*疑問　枠*/
.anxiety_detail {
  border: 1px solid #000;
  border-radius: 10px;
  margin-bottom: 1.5rem;
}

.anxiety_detail_inner {
  padding: 2rem;
}

.anxiety_detail_inner > p {
  margin-bottom: 1rem;
}
.anxiety_detail_inner .img {
  text-align: center;
}

/*疑問の内容　flexboxを使用*/
.anxiety_left, .anxiety_right {
  flex-basis: 48%;
}

.anxiety_left {
  margin-right: 4%;
}

.anxiety_right p, .anxiety_left p {
  line-height: 2;
  margin-bottom: 1em;
}

/*　flexboxを使用（幅別）*/
.anxiety_left01 {
  flex-basis: 26%;
  margin-right: 4%;
}

.anxiety_right01 {
  flex-basis: 70%;
}

.anxiety_left01 p, .anxiety_right01 p {
  line-height: 2;
  margin-bottom: 1em;
}

.anxiety_left01 h4 {
  font-size: 1.2rem;
  font-weight: 500;
  margin-bottom: 1rem;
}

/*疑問1234　黒丸*/
.anxiety_number {
  line-height: 1.1;
  width: 2.5em;
  height: 2.5em;
  padding: 6px;
  background: #535353;
  color: #fff;
  border-radius: 50%;
  text-align: center;
  margin: 10px;
  font-weight: 500;
}

.anxiety_number span {
  display: block;
}

.anxiety_number_txt01 {
  margin-top: 0.5rem;
  font-size: 0.8rem;
}

.anxiety_number_txt02 {
  font-size: 1.8rem;
}

.anxiety_detail_ttl {
  font-size: 1.5rem;
  font-weight: 500;
  padding: 1.5rem 1rem 1rem 1rem;
  border-top-left-radius: 7px;
  border-top-right-radius: 7px;
  flex-basis: 84%;
}

.anxiety_detail_ttl span {
  color: #00a9b0;
  font-size: 1.8rem;
}

/*疑問1234のアコーディオン*/
.anxiety_panel_head {
  position: relative;
  font-size: 1.4rem;
  line-height: 1.6;
  cursor: pointer;
}

/*疑問1234の下矢印↓*/
.anxiety_panel_head:after {
  content: "";
  position: absolute;
  border-right: 4px solid #535353;
  border-bottom: 4px solid #535353;
  width: 13px;
  top: 38%;
  right: 20px;
  height: 13px;
  transform: rotate(45deg);
}

/*疑問1234の上矢印↑*/
.anxiety_panel_head.ac:after {
  content: "";
  position: absolute;
  border-left: 4px solid #535353;
  border-top: 4px solid #535353;
  border-right: 0;
  border-bottom: 0;
  width: 13px;
  top: 30px;
  right: 20px;
  height: 13px;
  transform: rotate(45deg);
}

.anxiety_answer {
  display: none;
  text-align: left;
  border-top: 1px solid #535353;
}

/* 疑問の中の緑枠(提案)*/
.anxiety_suggestion {
  padding: 1.5rem;
  border-radius: 10px;
  border: 2px solid #00a9b0;
}

.anxiety_suggestion .sec_ttl {
  margin-bottom: 1rem;
  font-size: 1.2rem;
  text-align: left;
}

.anxiety_suggestion .sec_ttl span {
  font-size: 1rem;
  color: #000;
}

@media screen and (max-width: 736px) {
  /*疑問1234　黒丸*/
  .anxiety_number {
    line-height: 1.1;
    width: 2.5em;
    height: 2.5em;
    padding: 0.2rem;
    background: #535353;
    color: #fff;
    border-radius: 50%;
    text-align: center;
    margin: 0.2rem;
    font-weight: 500;
  }
  
  .anxiety_number span {
    display: block;
  }
  
  .anxiety_number_txt01 {
    margin-top: 0.1rem;
    font-size: 0.6rem;
  }
  
  .anxiety_number_txt02 {
    font-size: 1.5rem;
  }
  
  .anxiety_detail_ttl {
    font-size: 1.1rem;
    font-weight: 500;
    padding: 0.2rem;
    border-top-left-radius: 7px;
    border-top-right-radius: 7px;
    flex-basis: 84%;
  }
  
  .anxiety_detail_ttl span {
    color: #00a9b0;
    font-size: 1.2rem;
  }
  
  .anxiety_detail {
    border: 1px solid #000;
    border-radius: 10px;
    margin-bottom: 1rem;
  }
  
  .anxiety_detail_inner {
    padding: 1rem;
  }
  
  .anxiety_detail_inner > p {
    margin-bottom: 1rem;
  }
  
  .anxiety_detail_inner .img {
    text-align: center;
  }
  
  .anxiety_left, .anxiety_right {
    flex-basis: auto;
  }
  
  .anxiety_left {
    margin-right: 0;
    margin-bottom: 1rem;
  }
  
  .anxiety_right {
    text-align: center;
  }
  
  .anxiety_left p, .anxiety_right p {
    font-size: 0.8125rem;
    line-height: 1.6;
  }
  
  .anxiety_left img, .anxiety_right img {
    width: 80%;
  }
  
  /*　flexboxを使用（幅別）*/
  .anxiety_left01 {
    flex-basis: 26%;
    margin-right: 0;
    margin-bottom: 1rem;
    text-align: center;
  }
  
  .anxiety_right01 {
    flex-basis: 70%;
    margin-bottom: 0;
  }
  
  .anxiety_left01 p, .anxiety_right01 p {
    line-height: 2;
    margin-bottom: 1em;
    font-size: 0.8125rem;
  }
  
  .anxiety_left01 img, .anxiety_right01 img {
    width: 70%;
  }
  
  .anxiety_left01 h4 {
    font-size: 1.2rem;
    font-weight: 500;
    margin-bottom: 1rem;
  }
  
  .anxiety_left01 p {
    font-size: 0.8125rem;
    line-height: 1.6;
  }
  
  /*疑問1234のアコーディオン*/
  .anxiety_panel_head {
    font-size: 1rem;
    line-height: 1.6;
  }
  
  /*疑問1234下矢印↓*/
  .anxiety_panel_head:after {
    width: 9px;
    top: 33%;
    right: 14px;
    height: 9px;
  }
  
  /*疑問1234上矢印↑*/
  .anxiety_panel_head.ac:after {
    width: 9px;
    top: 40%;
    right: 14px;
    height: 9px;
  }
  
  /* 疑問の中の緑枠(提案)*/
  .anxiety_suggestion {
    padding: 0.8rem;
    border-radius: 10px;
    border: 2px solid #00a9b0;
  }
  
  .anxiety_suggestion .sec_ttl {
    margin-bottom: 1rem;
    font-size: 1.125rem;
    text-align: left;
  }
  
  .anxiety_suggestion .sec_ttl span {
    font-size: 1rem;
    color: #000;
  }
}

/***************************
 ** シャープなら
 */
#sunvista {
  margin-bottom: 5rem;
}

.sunvista_img {
  text-align: center;
}

.sunvista_lastimg {
  text-align: center;
}

.sunvista_ttl {
  font-size: 1.8rem;
  color: #00a9b0;
  font-weight: 500;
  text-align: center;
  padding: 1rem;
  line-height: 1.5;
  margin-bottom: 1.2rem;
}

.sunvista_block {
  margin-bottom: 2rem;
}

.sunvista_member {
  border: #cccccc 1px solid;
  border-radius: 10px;
  margin-bottom: 2rem;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1);
  background: url("../img/img_sunvista_02.png") no-repeat;
  background-position: top;
}

.sunvista_member .sec_ttl {
  color: #000;
  font-size: 1.6rem;
  padding: 2rem 0;
}

.sunvista_member .sec_ttl span {
  font-size: 1.2rem;
}

/*疑問の内容　flexboxを使用*/
.sunvista_left, .sunvista_right {
  flex-basis: 48%;
}

.sunvista_left {
  margin-right: 4%;
}

.sunvista_right p, .sunvista_left p {
  line-height: 2;
  margin-bottom: 1em;
}

/*黄色枠　バインダー*/
.sunvista_check {
  background-image: url("../img/img_sunvista_04.png");
  background-position: top;
  background-repeat: no-repeat;
  padding: 6rem 3rem 3rem 3rem;
  line-height: 2;
  border: 20px solid #ffcc33;
  border-radius: 10px;
}

.sunvista_check ul {
  list-style-image: url("../img/pc/check.png");
  list-style-position: inside;
}

.sunvista_check li {
  font-size: 1.78rem;
  font-weight: 500;
  padding-left: 1rem;
  text-indent: -1.8rem;
}

.sunvista_check li img {
  margin-right: 0.5rem;
}

.sunvista_detail {
  line-height: 1.5;
  margin-left: 2rem;
}

.check_line {
  border-bottom: 2px dashed #ffcc33;
  padding: 0.5rem 0 0.8rem 0;
}

/* 黄色枠　バインダー内　文字色変更 */
.green_text {
  color: #00a9b0;
  text-decoration: underline;
  font-weight: 500;
}
.green_text02 {
  color: #00a9b0;
  font-weight: 500;
}
.red_text {
  color: #e9363e;
  font-weight: 500;
}
.sunvista_note {
  text-align: right;
  margin-top: 0.5rem;
}
.sunvista_note a {
  text-align: right;
  text-decoration: underline;
  color: #000000;
}
@media screen and (max-width: 736px) {
  #sunvista {
    margin-bottom: 2rem;
  }
  
  .sunvista_img {
    text-align: center;
    margin: 0 auto;
    width: 40%;
  }
  
  .sunvista_ttl {
    font-size: 1.4rem;
    color: #00a9b0;
    font-weight: 500;
    text-align: center;
    padding: 0 1rem;
    line-height: 1.5;
    margin-bottom: 1.2rem;
  }
  
  .sunvista_member .sec_ttl {
    color: #000;
    font-size: 1.2rem;
    padding: 1rem 1rem 0 1rem;
  }
  
  .sunvista_member .sec_ttl span {
    font-size: 1rem;
  }
  
  .sunvista_left {
    margin-right: 0;
    margin-bottom: 1rem;
  }
  
  .sunvista_block {
    margin-bottom: 1rem;
  }
  
  .sunvista_right p, .sunvista_left p {
    line-height: 1.6;
    margin-bottom: 1em;
  }
  
  /*黄色枠　バインダー*/
  .sunvista_check {
    background-image: url("../img/img_sunvista_04.png");
    background-position: top;
    background-repeat: no-repeat;
    padding: 2rem 0.5rem 1rem 0.5rem;
    line-height: 2;
    border: 8px solid #fc3;
    border-radius: 10px;
    background-size: 150px auto;
  }
  
  .sunvista_check ul {
    list-style-image: url("../img/sp/check.png");
    list-style-position: inside;
    margin-bottom: 0.5rem;
    margin-left: 0.5rem;
  }
  
  .sunvista_check li {
    font-size: 1.2rem;
    line-height: 1.5;
    padding-left: 1.5rem;
    text-indent: -1.5rem;
  }
  
  .sunvista_check li img {
    margin-right: 0.5rem;
  }
  
  .sunvista_detail {
    line-height: 1.5;
    margin-left: 0;
    font-size: 0.8125rem;
  }
  
  .sunvista_note {
    text-align: right;
    text-decoration: underline;
    font-size: 0.75rem;
    line-height: 1.5;
    margin-top: 0.5rem;
  }
}


/***************************
 ** 相談ページリンク_小
 */
.consultation_mini {
  background: #f0f0f0;
  margin-bottom: 5rem;
  padding: 3rem 0;
}

.consultation_mini_inner {
  display: table;
  width: 100%;
  border: 1px solid #e6000d;
  box-shadow: 0 0 5px rgba( 0, 0, 0, 0.5);
  background: #fff;
}

.consultation_mini_ttl,
.consultation_mini_inner p {
  display: table-cell;
  padding: 1rem;
  vertical-align: middle;
}

.consultation_mini_ttl {
  white-space: nowrap;
  background: #e6000d;
  color: #fff;
  font-weight: 500;
}

.consultation_mini_ttl br {
  display: none;
}

.consultation_mini_inner p {
  font-size: 1.5rem;
  color: #000;
  font-weight: 500;
  padding-right: 2.5rem;
  position: relative;
}

.consultation_mini_inner p::after {
  content: "";
  position: absolute;
  border-right: 4px solid #e6000d;
  border-bottom: 4px solid #e6000d;
  width: 13px;
  height: 13px;
  top: 38%;
  right: 20px;
  transform: rotate(-45deg);
}

@media screen and (max-width: 736px) {
  .consultation_mini {
    margin-bottom: 2rem;
    padding: 2rem 0;
  }

  .consultation_mini_ttl,
  .consultation_mini_inner p {
    padding: 0.81rem;
  }

  .consultation_mini_ttl {
    font-size: 0.875rem;
  }

  .consultation_mini_ttl br {
    display: inline;
  }

  .consultation_mini_inner p {
    font-size: 1.125rem;
    padding-right: 2rem;
  }

  .consultation_mini_inner p::after {
    border-right: 3px solid #e6000d;
    border-bottom: 3px solid #e6000d;
    width: 11px;
    height: 11px;
    right: 1rem;
  }
}


/***************************
 ** 太陽光発電・蓄電池システムはここが違う
 */
#point {
  margin-bottom: 0;
  padding-bottom: 2rem;
}

.point_ttl {
  font-size: 2rem;
  font-weight: 500;
  color: #fff;
  background: #00a9b0;
  padding: 1.5rem;
  text-align: center;
}

.link_area {
  background: #f0f0f0;
  padding: 1.5rem 0;
  text-align: center;
}

.link_btn p:nth-child(2) {
  margin: 0 2%;
}

/*ここが違うの内容*/
#reason {
  margin-bottom: 3rem;
}

#reason01, #reason02, #reason03 {
  padding-top: 80px;
  margin-top: -80px;
  margin-bottom: 3rem;
}

/*ここが違う理由の枠*/
.reason_frame {
  border: #00a9b0 2px solid;
  border-radius: 10px;
  margin-bottom: 2rem;
}

.reason_block {
  margin-bottom: 2rem;
}

.reason_block p {
  margin-bottom: 1.5rem;
  line-height: 1.8;
}

.reason_ttl {
  background-color: #e8f7f8;
  padding: 1rem 1rem 1rem 3rem;
  margin-bottom: 1rem;
  border-radius: 10px 10px 0 0;
  font-size: 1.4rem;
  font-weight: 500;
  background-image: url(../img/img_reason_icon.png);
  background-repeat: no-repeat;
  background-position: 0.5rem 0.5rem;
}

.reason_ttl img {
  margin-right: 0.8rem;
}

.reason_ttl span {
  color: #00a9b0;
}

.reason_ttl .note {
  text-align: right;
  font-weight: 100;
}

.reason_subttl {
  font-size: 1.2rem;
  font-weight: 500;
  margin-bottom: 1rem;
}

.reason_left, .reason_right {
  flex-basis: 48%;
  line-height: 1.8;
}

.reason_left {
  margin-right: 4%;
}

.reason_left p, .reason_right p {
  margin-bottom: 1rem;
}

.reason_text {
  text-align: center;
}

.reason_solar {
  color: #00a9b0;
  background-image: url("../img/img_reason_02.png");
  font-weight: 500;
  background-repeat: no-repeat;
  padding-left: 7rem;
  font-size: 1.4rem;
  line-height: 1.5;
  margin-bottom: 2rem;
}

.reason_chikuden {
  color: #00a9b0;
  background-image: url("../img/img_reason_05.png");
  font-weight: 500;
  background-repeat: no-repeat;
  padding-left: 7rem;
  font-size: 1.4rem;
  line-height: 1.5;
  margin-bottom: 2rem;
}

.reason_teiden {
  color: #00a9b0;
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1.5;
  margin-bottom: 2rem;
  text-align: center;
}

.reason_aittl {
  border-left: solid 6px #00a9b0;
  margin-bottom: 1.5rem;
  line-height: 1.5;
  padding: 0.1rem 0.5rem;
  font-size: 1.2rem;
  font-weight: 500;
}

@media screen and (max-width: 736px) {
  .point_ttl {
    font-size: 1.1875rem;
    padding: 0.5rem;
  }
  
  .link_area {
    background: #f0f0f0;
    padding: 1.5rem;
    text-align: center;
  }
  
  .link_btn p:nth-child(2) {
    margin: 1rem 0;
  }
  
  #reason01, #reason02, #reason03 {
    padding-top: 100px;
    margin-top: -100px;
    margin-bottom: 1rem;
  }
  
  #reason_ttl {
    padding: 1rem 0.5rem;
    margin-bottom: 0;
  }
  
  .reason {
    margin-bottom: 1rem;
  }
  
  .reason_block {
    margin-bottom: 1rem;
  }
  
  .reason_ttl {
    background-color: #e8f7f8;
    padding: 0.5rem 0.5rem 0.5rem 3rem;
    margin-bottom: 0;
    border-radius: 10px 10px 0 0;
    font-size: 1.2rem;
    font-weight: 500;
    background-image: url(../img/img_reason_icon.png);
    background-repeat: no-repeat;
    background-position: 0.5rem 0.5rem;
    background-size: 30px;
  }
  
  .reason_subttl {
    font-size: 1rem;
    font-weight: 500;
    margin-bottom: 0.5rem;
  }
  
  .reason_solar {
    color: #00a9b0;
    background-image: url("../img/img_reason_02.png");
    font-weight: 500;
    background-repeat: no-repeat;
    padding-left: 6rem;
    font-size: 1.2rem;
    line-height: 1.5;
    margin-bottom: 2rem;
    background-size: 5rem 5rem;
  }
  
  .reason_chikuden {
    color: #00a9b0;
    background-image: url("../img/img_reason_05.png");
    font-weight: 500;
    background-repeat: no-repeat;
    padding-left: 6rem;
    font-size: 1.2rem;
    line-height: 1.5;
    margin-bottom: 2rem;
    background-size: 5rem 5rem;
  }
  
  .reason_teiden {
    color: #00a9b0;
    font-weight: 500;
    font-size: 1.2rem;
    line-height: 1.5;
    margin-bottom: 2rem;
    text-align: center;
  }
}

/***************************
 ** シャープではじめませんか？
 */
#start {
  text-align: center;
  margin-bottom: 3rem;
}

.start_ttl {
  font-size: 2rem;
  font-weight: 500;
  line-height: 2;
  margin-bottom: 1.5rem;
}

.start_text {
  color: #e6000d;
  font-weight: 500;
  margin-bottom: 4rem;
  font-size: 3.5rem;
}

@media screen and (max-width: 736px) {
  .start_ttl {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 2;
    margin-bottom: 1.5rem;
  }
  
  .start_text {
    color: #e6000d;
    font-weight: 500;
    margin-bottom: 2rem;
    font-size: 2rem;
    line-height: 1.6;
  }
}

/***************************
 ** オンラインセミナー
 */
#online {
  margin-bottom: 0;
  padding-bottom: 2rem;
}

.online_ttl {
  font-size: 2rem;
  font-weight: 500;
  color: #fff;
  background: #00a9b0;
  padding: 1.5rem;
  text-align: center;
  margin-bottom: 1.5rem;
}

@media all and (-ms-high-contrast:none) {
  *::-ms-backdrop, .online_ttl {
    padding-top: 2rem;
  } /* IE11 */
}

.online_block {
  border: #ccc solid 1px;
  background: #fff;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1);
  margin-bottom: 1rem;
  padding: 2rem;
}

.online_date {
  margin-bottom: 2rem;
}

.online_date > div {
  flex-basis: 48%;
}

.left_area {
  margin-right: 4%;
}

.online_ttl_s {
  border-left: solid 6px #00a9b0;
  margin-bottom: 1.5rem;
  line-height: 1.5;
  padding: 0.1rem 0.5rem;
  font-size: 1.2rem;
  font-weight: 500;
  color: #00a9b0;
}

.online_txt {
  margin-bottom: 1rem;
}

.online_btn, .online_btn a {
  text-align: center;
}

.online_btn a br {
  display: none;
}

@media screen and (max-width: 736px) {
  #online {
    padding-bottom: 2rem;
  }
  
  .online_ttl {
    font-size: 1.1875rem;
    padding: 0.5rem;
    margin-bottom: 1rem;
  }
  
  .online_block {
    padding: 0.8rem;
  }
  .online_date > div {
    flex-basis: auto;
  }
  
  .left_area {
    margin-right: 0;
  }
  
  .online_ttl_s {
    font-size: 1.125rem;
    margin-top: 1rem;
  }
  
  .online_txt {
    font-size: 0.8125rem;
  }
  
  .schedule_table {
    font-size: 0.8125rem;
  }
  .online_btn a br {
    display: inline;
  }
}

/***************************
 ** cvを常に固定
 */
#cv_fix {
  position: fixed;
  right: 0;
  top: 0;
  width: 30%;
  height: 80px;
  line-height: 65px;
  text-align: center;
  z-index: 999;
  margin-bottom: 2rem;
  /*padding-bottom: 140px;*/
}

@media all and (-ms-high-contrast:none) {
  *::-ms-backdrop, #cv_fix {
    right: 20%;
  } /* IE11 */
}

.cv_block {}
.cv_list {
  display: flex;
  justify-content: flex-end;
}

.cv_list li:first-child img {
  max-width: 160px;
  margin: 0 0.2rem;
}

.cv_list li img {
  max-width: 104px;
  margin: 0 0.2rem;
}

@media screen and (max-width: 736px) {
  #cv_fix {
    width: 100%;
    height: auto;
    line-height: 1.2;
    right: 0;
  }
  
  .cv_list {
    flex-wrap: wrap;
  }
  
  .cv_list li {
    position: relative;
  }
  
  .cv_list li::after {
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    border-width: 3px 6px;
    border-style: solid;
    border-color: transparent transparent transparent #fff;
    right: -2px;
    top: 45%;
  }
  
  .cv_list li a {
    display: block;
    padding: 1rem 0.3rem;
    color: #fff;
    font-size: 0.75rem;
    font-weight: 500;
    text-align: center;
  }
  
  .cv_list li a span {
    display: block;
    text-align: center;
  }
  
  .cv_list li a span img {
    display: none;
  }
  
  .cv_list li:nth-child(1) {
    flex-basis: 100%;
    background: #e6000d;
  }
  
  .cv_list li:nth-child(1) a {
    padding: 1rem;
    text-align: center;
  }

  .cv_list li:nth-child(1) a span::after {
    content: "シャープに相談する(Zoom・電話・メール)";
    font-size: 1rem;
  }
  
  .cv_list li:nth-child(2) {
    flex-basis: 100%;
    background: #fee100;
  }
  
  .cv_list li:nth-child(2) a span::after {
    content: "よくあるご質問";
  }
  
  .cv_list li:nth-child(2) a {
    color: #000;
  }
 
   
  .cv_list li:nth-child(3) {
    display: none;
  }
  
  /*.cv_list li:nth-child(4) {
    flex-basis: 33.333%;
    background: #fee100;
  }
  
  .cv_list li:nth-child(4) a {
    color: #000;
  }
  
  .cv_list li:nth-child(4) a span::after {
    content: "よくあるご質問";
  }*/
}
@media screen and (max-width: 375px) {
  .cv_list li a {
    font-size: 0.625rem;
  }
}
/*@media screen and (max-width: 320px) {
  .cv_list li a {
    letter-spacing: 0;
  }
}*/

/***************************
 ** 関連コンテンツ
 */
.related_contents {
  background: #f0f0f0;
  padding: 2rem 0;
}

.related_contents_ttl {
  font-weight: 500;
  font-size: 1.125rem;
  margin-bottom: 0.5rem;
}

.related_contents_list li {
  display: inline-block;
  margin-right: 1.2rem;
}

.related_contents_list li img {
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
}

@media screen and (max-width: 736px) {
  .related_contents {
    padding: 1rem 0;
  }
  
  .related_contents_ttl {
    font-size: 1rem;
    text-align: center;
  }
  
  .related_contents_list li {
    display: block;
    margin-right: 0;
    text-align: center;
  }
  
  .related_contents_list li:not(:last-child) {
    margin-bottom: 1rem;
  }
}

/***************************
 ** #rev_top
 */
.rev_top {
  position: fixed;
  width: 7%;
  max-width: 60px;
  bottom: 20px;
  left: 20px;
  text-decoration: none;
  -ms-filter: "alpha(opacity=80)";
  -moz-opacity: 0.8;
  -khtml-opacity: 0.8;
  opacity: 0.8;
  z-index: 120;
}