.web_font, .ttl_style_en {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal; }
  
  .web_font2 {
    font-family: "EB Garamond", serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: italic;
    letter-spacing: 0.05em; }
    #wrapper a {
        color: #395F9D !important;
        text-decoration: none;
    }
    #Energy_supply_footer a {
      color: #fff !important; }
    
    a:hover {
        text-decoration: underline !important;
    }
	.white_bb{
	border-bottom: 1px solid #fff;
	}
		.white_bt{
	border-top: 1px solid #fff;
	}
	.mL1em{
		margin-left:1em;
	}
		.mL1_5em{
		margin-left:1.5em;
	}
		.mL2em{
		margin-left:2em;
	}
			.mL2_5em{
		margin-left:2.5em;
	}
		.mL3em{
		margin-left:3em;
	}
		.mL3_5em{
		margin-left:3.5em;
	}
		.mL4em{
		margin-left:4em;
	}
		.mL4_5em{
		margin-left:4.5em;
	}
	.taCim{
text-align:center!important;
	}
	
    
    
  
/*テーブルパターン1*/
.tablePattern01 table, .tablePattern01 th, .tablePattern01 td{
	border-collapse:collapse;
	border-spacing:0;
	border: solid 1px #5e99e3;
	text-align:center;
	vertical-align:middle;
	color:#333;
	font-weight:normal;
}
  .ttl_style_big, #Article_area .ttl_style h2 {
    font-size: 1.6875rem;
    font-weight: 700;
    line-height: 1.5; }
    .tablePattern01 table td.sub{
        background:#FAF0E6;
    }
    .tablePattern01 table th{
        background:#cbd3dd;
    }
    td{
        background:#f8f8f8;
    }
    .tablePattern01 table th span{
        font-size:84%;
    }
    .tablePattern01 table th.sub{
        background:#F2CBBF;
    }
    
  
  @media screen and (max-width: 768px) {
    .ttl_style_big, #Article_area .ttl_style h2 {
      font-size: 4.358974359vw;
      line-height: 1.58; } }
  .ttl_style_small {
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 2; }
  
  @media screen and (max-width: 768px) {
    .ttl_style_small {
      font-size: 3.5897435897vw;
      line-height: 1.57; } }
  .ttl_style_en {
    font-size: 1.375rem;
    line-height: 1.36; }
  
  @media screen and (max-width: 768px) {
    .ttl_style_en {
      font-size: 3.3333333333vw;
      line-height: 1.36; } }
  .btn_style1 {
    width: 22.5rem;
    height: 2.5rem;
    border: 1px solid #64696E;
    border-radius: 100px;
    font-size: 0.8125rem;
    position: relative; }
    .btn_style1:before {
      display: block;
      content: '';
      width: 0.5625rem;
      height: 0.6875rem;
      background: url("/energy_supply/energy/newenergy/images/icon_arrow.png") left top no-repeat;
      background-size: 0.5625rem 0.6875rem;
      position: absolute;
      top: 50%;
      right: 1.25rem;
      transform: translate3d(0, -50%, 0); }
    .btn_style1 a, .btn_style1 span {
      display: flex;
      width: 100%;
      height: 100%;
      box-sizing: border-box;
      padding-left: 1.25rem;
      align-items: center; }
    .btn_style1.left {
      margin-left: auto; }
    .btn_style1.mini {
      width: 15rem; }
    .btn_style1.window:before {
      width: 0.75rem;
      height: 0.75rem;
      background: url("/energy_supply/energy/newenergy/images/icon_arrow.png") left top no-repeat;
      background-size: 0.75rem 0.75rem; }
    .btn_style1.white {
      border-color: #fff; }
      .btn_style1.white:before {
        background: url("/energy_supply/energy/newenergy/images/icon_arrow_w.png") left top no-repeat;
        background-size: 0.5625rem 0.6875rem; }
      .btn_style1.white a, .btn_style1.white span {
        color: #fff !important; }
  
  @media screen and (max-width: 768px) {
    .btn_style1 {
      width: 76.9230769231vw;
      height: 7.6923076923vw;
      font-size: 2.8205128205vw; }
      .btn_style1:before {
        width: 2.4358974359vw;
        height: 2.8205128205vw;
        background: url("/energy_supply/energy/newenergy/images/icon_arrow.png") left top no-repeat;
        background-size: 2.4358974359vw 2.8205128205vw;
        right: 3.8461538462vw; }
      .btn_style1 a, .btn_style1 span {
        padding-left: 3.8461538462vw; }
      .btn_style1.mini {
        width: 30.7692307692vw;
        width: 76.9230769231vw; }
      .btn_style1.window:before {
        width: 2.5641025641vw;
        height: 2.5641025641vw;
        background: url("/energy_supply/energy/newenergy/images/icon_arrow.png") left top no-repeat;
        background-size: 2.5641025641vw 2.5641025641vw; }
      .btn_style1.white:before {
        background: url("/energy_supply/energy/newenergy/images/icon_arrow_w.png") left top no-repeat;
        background-size: 2.4358974359vw 2.8205128205vw; }
      .btn_style1.white.window:before {
        background: url("../images/icon_window_w.png") left top no-repeat;
        background-size: 2.5641025641vw 2.5641025641vw; } }
  .btn_style2 {
    width: 100%;
    height: 2.5rem;
    border: 1px solid #64696E;
    border-radius: 100px;
    font-size: 1.125rem;
    position: relative; }
    .btn_style2:before {
      display: block;
      content: '';
      width: 0.5625rem;
      height: 0.6875rem;
      background: url("/energy_supply/energy/newenergy/images/icon_arrow.png") left top no-repeat;
      background-size: 0.5625rem 0.6875rem;
      position: absolute;
      top: 50%;
      right: 1.25rem;
      transform: translate3d(0, -50%, 0); }
    .btn_style2 a {
      display: flex;
      width: 100%;
      height: 100%;
      box-sizing: border-box;
      align-items: center;
      justify-content: center; }
    .btn_style2.window:before {
      width: 0.75rem;
      height: 0.75rem;
      background: url("/energy_supply/energy/newenergy/images/icon_arrow.png") left top no-repeat;
      background-size: 0.75rem 0.75rem; }
    .btn_style2.white {
      border-color: #fff; }
      .btn_style2.white:before {
        background: url("/energy_supply/energy/newenergy/images/icon_arrow_w.png") left top no-repeat;
        background-size: 0.5625rem 0.6875rem; }
      .btn_style2.white a {
        color: #fff !important; }
      .btn_style2.white.window:before {
        width: 0.75rem;
        height: 0.75rem;
        background: url("../images/icon_window_w.png") left top no-repeat;
        background-size: 0.75rem 0.75rem; }
  
  @media screen and (max-width: 768px) {
    .btn_style2 {
      height: 10.2564102564vw;
      font-size: 3.5897435897vw; }
      .btn_style2:before {
        width: 2.4358974359vw;
        height: 2.8205128205vw;
        background: url("/energy_supply/energy/newenergy/images/icon_arrow.png") left top no-repeat;
        background-size: 2.4358974359vw 2.8205128205vw;
        right: 2.5641025641vw; }
      .btn_style2.window:before {
        width: 2.5641025641vw;
        height: 2.5641025641vw;
        background: url("/energy_supply/energy/newenergy/images/icon_window.png") left top no-repeat;
        background-size: 2.5641025641vw 2.5641025641vw; }
      .btn_style2.white:before {
        background: url("/energy_supply/energy/newenergy/images/icon_arrow_w.png") left top no-repeat;
        background-size: 2.4358974359vw 2.8205128205vw; }
      .btn_style2.white.window:before {
        width: 2.5641025641vw;
        height: 2.5641025641vw;
        background: url("/energy_supply/energy/newenergy/images/icon_arrow_w.png") left top no-repeat;
        background-size: 2.5641025641vw 2.5641025641vw; } }
  @keyframes floating-y {
    0% {
      transform: translateY(-10%); }
    100% {
      transform: translateY(10%); } }
  @keyframes floating-y2 {
    0% {
      transform: translateY(-5%); }
    100% {
      transform: translateY(5%); } }
  @keyframes rotation {
    0% {
      transform: rotate(0deg); }
    100% {
      transform: rotate(360deg); } }
  img {
    width: 100%;
    height: auto; }

  
  /*------------------------------------------------------------
  #Article_area
  ------------------------------------------------------------*/
  #Article_area .btn_prev_area {
    margin-top: 3.125rem;
    width: 8.0625rem; }
  #Article_area .ttl_style {
    display: flex;
    justify-content: space-between;
    margin-bottom: 2.6875rem;
    position: relative;
    margin-top: 3.125rem;
    padding-top: 1.875rem;
    }
    #Article_area .ttl_style:before {
      display: block;
      content: '';
      width: calc(100% + 100vw);
      height: 1px;
      background: #64696E;
      position: absolute;
      top: 0;
      left: 0; }
    #Article_area .ttl_style .left_area {
      width: 35.625rem; }
    #Article_area .ttl_style .right_area {
      width: 35.625rem; }
    #Article_area .ttl_style h3 {
      margin-bottom: 1.5625rem;
      font-size: 1.125rem; }
  #Article_area .ttl {
    font-size: 1.125rem; }
    #Article_area .ttl.blue {
      color: #036EB7; }
  #Article_area .mb10 {
    margin-bottom: 0.625rem; }
  #Article_area .mb20 {
    margin-bottom: 1.25rem; }
  #Article_area .mb30 {
    margin-bottom: 1.875rem; }
  #Article_area .mb40 {
    margin-bottom: 2.5rem; }
  #Article_area .mb50 {
    margin-bottom: 3.125rem; }
  #Article_area .mb60 {
    margin-bottom: 3.75rem; }
  #Article_area .mb70 {
    margin-bottom: 4.375rem; }
  #Article_area .mb80 {
    margin-bottom: 5rem; }
  #Article_area .mb90 {
    margin-bottom: 5.625rem; }
  #Article_area .mb100 {
    margin-bottom: 6.25rem; }
  
  @media screen and (max-width: 768px) {
    #Article_area .btn_prev_area {
      margin-top: 6.4102564103vw;
      width: 25.641025641vw; }
      #Article_area .btn_prev_area.bottom {
        margin-top: 25.641025641vw; }
    #Article_area .ttl_style {
      display: block;
      margin-bottom: 11.5384615385vw;
      margin-top: 6.4102564103vw;
      padding-top: 3.8461538462vw; }
      #Article_area .ttl_style:before {
        width: calc(100%); }
      #Article_area .ttl_style .left_area {
        width: 73.0769230769vw; }
      #Article_area .ttl_style .right_area {
        width: 73.0769230769vw; }
      #Article_area .ttl_style h2 {
        font-size: 5.1282051282vw;
        line-height: 1.1;
        margin-bottom: 7.6923076923vw; }
      #Article_area .ttl_style h3 {
        margin-bottom: 1.9230769231vw;
        font-size: 3.8461538462vw; }
    #Article_area .ttl {
      font-size: 3.8461538462vw; }
      #Article_area .ttl.sp_mini {
        font-size: 3.3333333333vw; }
    #Article_area .sp_mb10 {
      margin-bottom: 1.2820512821vw !important; }
    #Article_area .sp_mb20 {
      margin-bottom: 2.5641025641vw !important; }
    #Article_area .sp_mb30 {
      margin-bottom: 3.8461538462vw !important; }
    #Article_area .sp_mb40 {
      margin-bottom: 5.1282051282vw !important; }
    #Article_area .sp_mb50 {
      margin-bottom: 6.4102564103vw !important; }
    #Article_area .sp_mb60 {
      margin-bottom: 7.6923076923vw !important; }
    #Article_area .sp_mb70 {
      margin-bottom: 8.9743589744vw !important; }
    #Article_area .sp_mb80 {
      margin-bottom: 10.2564102564vw !important; }
    #Article_area .sp_mb90 {
      margin-bottom: 11.5384615385vw !important; }
    #Article_area .sp_mb100 {
      margin-bottom: 12.8205128205vw !important; } }
  /*------------------------------------------------------------
  .deco_area
  ------------------------------------------------------------*/
  .deco_area .pc .deco00 {
    top: -37.5rem;
    left: 6.25rem; }
    .deco_area .pc .deco00 p {
      animation: floating-y2 5.8s ease-in-out infinite alternate-reverse; }
  .deco_area .sp .deco00 {
    top: 38.4615384615vw;
    left: 12.8205128205vw; }
    .deco_area .sp .deco00 p {
      animation: floating-y2 5.8s ease-in-out infinite alternate-reverse; }
      .web_font, .ttl_style_en {
        font-family: "Montserrat", sans-serif;
        font-optical-sizing: auto;
        font-weight: 500;
        font-style: normal; }
      
      .web_font2 {
        font-family: "EB Garamond", serif;
        font-optical-sizing: auto;
        font-weight: 400;
        font-style: italic;
        letter-spacing: 0.05em; }
      
      .ttl_style_big {
        font-size: 1.6875rem;
        font-weight: 700;
        line-height: 1.5; }
      
      @media screen and (max-width: 768px) {
        .ttl_style_big {
          font-size: 4.358974359vw;
          line-height: 1.58; } }
      .ttl_style_small {
        font-size: 1.375rem;
        font-weight: 700;
        line-height: 2; }
      
      @media screen and (max-width: 768px) {
        .ttl_style_small {
          font-size: 3.5897435897vw;
          line-height: 1.57; } }
      .ttl_style_en {
        font-size: 1.375rem;
        line-height: 1.36; }
      
      @media screen and (max-width: 768px) {
        .ttl_style_en {
          font-size: 3.3333333333vw;
          line-height: 1.36; } }
      .btn_style1 {
        width: 22.5rem;
        height: 2.5rem;
        border: 1px solid #64696E;
        border-radius: 100px;
        font-size: 0.8125rem;
        position: relative; }
        .btn_style1:before {
          display: block;
          content: '';
          width: 0.5625rem;
          height: 0.6875rem;
          background: url("/energy_supply/energy/newenergy/images/icon_arrow.png") left top no-repeat;
          background-size: 0.5625rem 0.6875rem;
          position: absolute;
          top: 50%;
          right: 1.25rem;
          transform: translate3d(0, -50%, 0); }
        .btn_style1 a, .btn_style1 span {
          display: flex;
          width: 100%;
          height: 100%;
          box-sizing: border-box;
          padding-left: 1.25rem;
          align-items: center; }
        .btn_style1.left {
          margin-left: auto; }
        .btn_style1.mini {
          width: 15rem; }
        .btn_style1.window:before {
          width: 0.75rem;
          height: 0.75rem;
          background: url("/energy_supply/energy/newenergy/images/icon_arrow.png") left top no-repeat;
          background-size: 0.75rem 0.75rem; }
        .btn_style1.white {
          border-color: #fff; }
          .btn_style1.white:before {
            background: url("/energy_supply/energy/newenergy/images/icon_arrow_w.png") left top no-repeat;
            background-size: 0.5625rem 0.6875rem; }
          .btn_style1.white a, .btn_style1.white span {
            color: #fff !important; }
      
      @media screen and (max-width: 768px) {
        .btn_style1 {
          width: 76.9230769231vw;
          height: 7.6923076923vw;
          font-size: 2.8205128205vw; }
          .btn_style1:before {
            width: 2.4358974359vw;
            height: 2.8205128205vw;
            background: url("/energy_supply/energy/newenergy/images/icon_arrow.png") left top no-repeat;
            background-size: 2.4358974359vw 2.8205128205vw;
            right: 3.8461538462vw; }
          .btn_style1 a, .btn_style1 span {
            padding-left: 3.8461538462vw; }
          .btn_style1.mini {
            width: 30.7692307692vw;
            width: 76.9230769231vw; }
          .btn_style1.window:before {
            width: 2.5641025641vw;
            height: 2.5641025641vw;
            background: url("/energy_supply/energy/newenergy/images/icon_arrow.png") left top no-repeat;
            background-size: 2.5641025641vw 2.5641025641vw; }
          .btn_style1.white:before {
            background: url("/energy_supply/energy/newenergy/images/icon_arrow_w.png") left top no-repeat;
            background-size: 2.4358974359vw 2.8205128205vw; }
          .btn_style1.white.window:before {
            background: url("../images/icon_window_w.png") left top no-repeat;
            background-size: 2.5641025641vw 2.5641025641vw; } }
      .btn_style2 {
        width: 100%;
        height: 2.5rem;
        border: 1px solid #64696E;
        border-radius: 100px;
        font-size: 1.125rem;
        position: relative; }
        .btn_style2:before {
          display: block;
          content: '';
          width: 0.5625rem;
          height: 0.6875rem;
          background: url("/energy_supply/energy/newenergy/images/icon_arrow.png") left top no-repeat;
          background-size: 0.5625rem 0.6875rem;
          position: absolute;
          top: 50%;
          right: 1.25rem;
          transform: translate3d(0, -50%, 0); }
        .btn_style2 a {
          display: flex;
          width: 100%;
          height: 100%;
          box-sizing: border-box;
          align-items: center;
          justify-content: center; }
        .btn_style2.window:before {
          width: 0.75rem;
          height: 0.75rem;
          background: url("/energy_supply/energy/newenergy/images/icon_arrow.png") left top no-repeat;
          background-size: 0.75rem 0.75rem; }
        .btn_style2.white {
          border-color: #fff; }
          .btn_style2.white:before {
            background: url("/energy_supply/energy/newenergy/images/icon_arrow_w.png") left top no-repeat;
            background-size: 0.5625rem 0.6875rem; }
          .btn_style2.white a {
            color: #fff !important; }
          .btn_style2.white.window:before {
            width: 0.75rem;
            height: 0.75rem;
            background: url("../images/icon_window_w.png") left top no-repeat;
            background-size: 0.75rem 0.75rem; }
      
      @media screen and (max-width: 768px) {
        .btn_style2 {
          height: 10.2564102564vw;
          font-size: 3.5897435897vw; }
          .btn_style2:before {
            width: 2.4358974359vw;
            height: 2.8205128205vw;
            background: url("/energy_supply/energy/newenergy/images/icon_arrow.png") left top no-repeat;
            background-size: 2.4358974359vw 2.8205128205vw;
            right: 2.5641025641vw; }
          .btn_style2.window:before {
            width: 2.5641025641vw;
            height: 2.5641025641vw;
            background: url("/energy_supply/energy/newenergy/images/icon_window.png") left top no-repeat;
            background-size: 2.5641025641vw 2.5641025641vw; }
          .btn_style2.white:before {
            background: url("/energy_supply/energy/newenergy/images/icon_arrow_w.png") left top no-repeat;
            background-size: 2.4358974359vw 2.8205128205vw; }
          .btn_style2.white.window:before {
            width: 2.5641025641vw;
            height: 2.5641025641vw;
            background: url("/energy_supply/energy/newenergy/images/icon_arrow_w.png") left top no-repeat;
            background-size: 2.5641025641vw 2.5641025641vw; } }
      @keyframes floating-y {
        0% {
          transform: translateY(-10%); }
        100% {
          transform: translateY(10%); } }
      @keyframes floating-y2 {
        0% {
          transform: translateY(-5%); }
        100% {
          transform: translateY(5%); } }
      @keyframes rotation {
        0% {
          transform: rotate(0deg); }
        100% {
          transform: rotate(360deg); } }
      /*------------------------------------------------------------
      .section
      ------------------------------------------------------------*/
      .section01,.section02,.section03,.section04,.section05,.section06,.section07 {
        border-bottom: 1px solid #64696E;
        padding-bottom: 3.25rem;
        }
        .bb_none{
            border-bottom: none !important;  
        }
        .section01 .left_area h2 {
          margin-bottom: 3.125rem; }
          .section01 .left_area h2 .mini {
            display: block;
            font-size: 1.125rem;
            font-weight: 400; }
        .section01 .left_area p {
          border-bottom: 1px solid #fff;
          padding-bottom: 3.125rem;
          margin-bottom: 3.125rem; }
          .section01 .left_area p:last-child {
            border-bottom: none;
            padding-bottom: 0;
            margin-bottom: 0; }
        .section01 .right_area p {
          width: 27rem;
          margin-left: auto;
          line-height: 1;
          margin-bottom: 1.25rem; }
      
          .section01,.section02,.section03,.section04,.section05,.section06,.section07 {
        margin-bottom: 3rem; }
        .section02 h3, .section03 h3 {
          margin-bottom: 2.5rem; }
      
      .section04_2 {
        background: #D9D9D9;
        padding: 2.5rem 2rem; }
        .section04_2 dl {
          display: flex;
          justify-content: space-between; }
          .section04_2 dl dt {
            width: 11.4375rem; }
            .section04_2 dl dd {
            width: 58rem; }
            .section04_2 dl dd h3 {
              margin-bottom: 0.625rem; }
      
      @media screen and (max-width: 768px) {
        .section01 {
          border-bottom: none;
          padding-bottom: 3.8461538462vw; }
          .section01 .left_area {
            width: 100% !important; }
            .section01 .left_area h2 {
              margin-bottom: 6.4102564103vw; }
              .section01 .left_area h2 .mini {
                display: block;
                font-size: 2.8205128205vw;
                font-weight: 400;
                margin-top: 2.5641025641vw; }
            .section01 .left_area p {
              border-bottom: none;
              padding-bottom: 6.4102564103vw;
              margin-bottom: 6.4102564103vw; }
              .section01 .left_area p:last-child {
                border-bottom: none;
                padding-bottom: 7.6923076923vw;
                margin-bottom: 0; }
          .section01 .right_area {
            width: 100% !important; }
            .section01 .right_area p {
              width: 100%;
              margin-left: auto;
              line-height: 1;
              margin-bottom: 5.1282051282vw; }
      
        .section02, .section03 {
          margin-bottom: 5rem; }
          .section02 h3, .section03 h3 {
            margin-bottom: 1.25rem;
            font-size: 3.8461538462vw; }
      
            .section04_2 {
          padding: 5.1282051282vw 4.1025641026vw; }
          .section04_2 dl {
            display: block; }
            .section04_2 dl dt {
              width: 100%; }
              .section04_2 dl dd {
              width: 100%; }
              .section04_2 dl dd h3 {
                margin-bottom: 0.625rem;
                display: flex;
                justify-content: space-between;
                align-items: center;
                font-size: 3.5897435897vw;
                line-height: 1.57; }
                .section04_2 dl dd h3 .img {
                  width: 23.4615384615vw; }
                  .section04_2 dl dd h3 .txt {
                  display: block;
                  width: 50.2564102564vw; } }