.web_font, .ttl_style_en, #Main_ttl_area h1 .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, #Page_out_nav {
  font-size: 1.6875rem;
  font-weight: 700;
  line-height: 1.5; }

@media screen and (max-width: 768px) {
  .ttl_style_big, #Page_out_nav {
    font-size: 4.358974359vw;
    line-height: 1.58; } }
.ttl_style_small, #Page_in_nav {
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 2; }

@media screen and (max-width: 768px) {
  .ttl_style_small, #Page_in_nav {
    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); } }
a i {
  display: none !important; }

a[href$=".pdf"], a.outpdf, span.outpdf {
  padding-right: 0;
  background: none; }

/*------------------------------------------------------------
#Main_ttl_area
------------------------------------------------------------*/
#Main_ttl_area {
  position: relative;
  height: 21.875rem;
  margin-top: 3.125vw;
  margin-bottom: 2.0833333333vw;
  z-index: 10; }
  #Main_ttl_area .ttl_area {
    width: 100%;
    max-width: 87.5rem;
    margin: 0 auto;
    height: 100%;
    display: flex;
    align-items: center;
    position: relative;
    z-index: 5; }
  #Main_ttl_area h1 {
    padding-left: 8.3333333333vw;
    color: #fff;
    line-height: 1;
    border: none;
    text-align: left;
    display: flex;
    flex-direction: column-reverse; }
    #Main_ttl_area h1 .en {
      display: block;
      font-size: 2.125rem; }
    #Main_ttl_area h1 .jp {
      font-size: 2.8125rem;
      font-weight: 500;
      margin-bottom: 2.5rem; }
  #Main_ttl_area .img_area {
    width: 100%;
    height: 21.875rem;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate3d(-50%, 0, 0); }
    #Main_ttl_area .img_area img {
      width: 89.5833333333vw;
      height: 100%;
      object-fit: cover;
      position: absolute;
      top: 0;
      right: 0;
      border-radius: 4.1666666667vw 0 0 4.1666666667vw; }

@media screen and (max-width: 768px) {
  #Main_ttl_area {
    height: 101.2820512821vw;
    margin-top: 6.4102564103vw;
    margin-bottom: 6.4102564103vw;
    margin-left: 3.8461538462vw;
    box-sizing: border-box; }
    #Main_ttl_area .ttl_area {
      max-width: 100%; }
    #Main_ttl_area h1 {
      padding-left: 11.5384615385vw; }
      #Main_ttl_area h1 .en {
        font-size: 4.1025641026vw;
        line-height: 1.25; }
        #Main_ttl_area h1 .en br {
          display: none; }
      #Main_ttl_area h1 .jp {
        font-size: 5.1282051282vw;
        margin-bottom: 3.8461538462vw; }
    #Main_ttl_area .img_area {
      max-width: none;
      width: 100%;
      height: 101.2820512821vw; }
      #Main_ttl_area .img_area img {
        width: 100%;
        border-radius: 10.2564102564vw 0 0 10.2564102564vw; } }
/*------------------------------------------------------------
#Page_out_nav
------------------------------------------------------------*/
#Page_out_nav {
  margin-bottom: 5.625rem; }
  #Page_out_nav ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }
    #Page_out_nav ul li {
      width: 17.5rem;
      text-align: center;
      border-bottom: 2px solid #5B5245;
      padding-bottom: 0.9375rem;
      opacity: 0.4;
      letter-spacing: 0; }
      #Page_out_nav ul li a {
        color: #4B5055; }
      #Page_out_nav ul li.current {
        border-bottom: 2px solid #036EB7;
        opacity: 1; }
        #Page_out_nav ul li.current a {
          color: #036EB7;
          pointer-events: none; }

@media screen and (max-width: 768px) {
  #Page_out_nav {
    margin-bottom: 8.9743589744vw;
    font-size: 3.0769230769vw;
    padding: 0 7.6923076923vw; }
    #Page_out_nav ul li {
      width: 35.8974358974vw;
      border-width: 1px;
      padding-bottom: 0.7692307692vw;
      margin-bottom: 3.8461538462vw; }
      #Page_out_nav ul li.current {
        border-width: 1px; } }
/*------------------------------------------------------------
#Page_in_nav
------------------------------------------------------------*/
#Page_in_nav {
  padding-top: 0.625rem;
  margin-bottom: 1.875rem; }
  #Page_in_nav.menu_full ul {
    justify-content: space-between; }
    #Page_in_nav.menu_full ul li {
      margin: 0; }
  #Page_in_nav ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap; }
    #Page_in_nav ul li {
      border: 1px solid #E6E6E6;
      width: 17.5rem;
      height: 2.8125rem;
      margin: 0 0.9375rem;
      border-radius: 100px;
      display: flex;
      align-items: center;
      justify-content: center;
      line-height: 1; }
      #Page_in_nav ul li a {
        color: #E6E6E6;
        line-height: 1;
        padding-bottom: 0.1875rem;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
        border-radius: 100px; }
      #Page_in_nav ul li.current {
        background: #E6E6E6; }
        #Page_in_nav ul li.current a {
          color: #4B5055;
          pointer-events: none; }

@media screen and (max-width: 768px) {
  #Page_in_nav {
    margin-bottom: 0.9375rem;
    font-size: 2.3076923077vw;
    padding: 0.625rem 7.6923076923vw 0; }
    #Page_in_nav.menu_full ul li {
      margin: 0 0 2.5641025641vw; }
    #Page_in_nav ul {
      justify-content: space-between; }
      #Page_in_nav ul li {
        width: 35.8974358974vw;
        height: 5.7692307692vw;
        margin: 0 0 2.5641025641vw; }
        #Page_in_nav ul li a {
          padding-bottom: 0.3846153846vw; } }
/*------------------------------------------------------------
#Contents_area
------------------------------------------------------------*/
#Contents_area .waku_bg {
  max-width: 75rem;
  margin: 0 auto;
  position: relative; }
  #Contents_area .waku_bg:before {
    display: block;
    content: '';
    width: calc(100% + 7.5rem);
    height: calc(100% + 6.25rem);
    background: #5B5245;
    position: absolute;
    top: -3.125rem;
    left: -3.75rem;
    border-radius: 5rem;
    opacity: 0.4;
    z-index: 2; }
#Contents_area .in_box {
  background: #E6E6E6;
  border-radius: 2.5rem;
  position: relative;
  z-index: 15;
  padding: 2.5rem 6.25rem 0.625rem; }
#Contents_area .deco_area {
  overflow: hidden; }
  #Contents_area .deco_area div.pc .deco00 {
    top: -48.4375rem;
    right: -23.75rem; }
    #Contents_area .deco_area div.pc .deco00 > p {
      animation: floating-y2 10.2s ease-in-out infinite alternate-reverse;
      z-index: -1; }
  #Contents_area .deco_area div.pc .deco01, #Contents_area .deco_area div.pc .deco07, #Contents_area .deco_area div.pc .deco13 {
    top: 0; }
    #Contents_area .deco_area div.pc .deco01 > p, #Contents_area .deco_area div.pc .deco07 > p, #Contents_area .deco_area div.pc .deco13 > p {
      animation: floating-y 2.2s ease-in-out infinite alternate-reverse; }
  #Contents_area .deco_area div.pc .deco02, #Contents_area .deco_area div.pc .deco08, #Contents_area .deco_area div.pc .deco14 {
    left: -6.25rem;
    top: 2.5rem; }
  #Contents_area .deco_area div.pc .deco03, #Contents_area .deco_area div.pc .deco09, #Contents_area .deco_area div.pc .deco15 {
    top: 125rem; }
  #Contents_area .deco_area div.pc .deco04, #Contents_area .deco_area div.pc .deco10, #Contents_area .deco_area div.pc .deco16 {
    top: 343.75rem; }
  #Contents_area .deco_area div.pc .deco05, #Contents_area .deco_area div.pc .deco11, #Contents_area .deco_area div.pc .deco17 {
    top: 350rem; }
  #Contents_area .deco_area div.pc .deco06, #Contents_area .deco_area div.pc .deco12, #Contents_area .deco_area div.pc .deco18 {
    top: 468.75rem;
    left: -18.75rem; }
  #Contents_area .deco_area div.pc .deco07 {
    top: 793.75rem; }
  #Contents_area .deco_area div.pc .deco08 {
    top: calc(793.75rem + 2.5rem); }
  #Contents_area .deco_area div.pc .deco09 {
    top: calc(793.75rem + 125rem); }
  #Contents_area .deco_area div.pc .deco10 {
    top: calc(793.75rem + 343.75rem); }
  #Contents_area .deco_area div.pc .deco11 {
    top: calc(793.75rem + 350rem); }
  #Contents_area .deco_area div.pc .deco12 {
    top: calc(793.75rem + 468.75rem); }
  #Contents_area .deco_area div.pc .deco13 {
    top: 1587.5rem; }
  #Contents_area .deco_area div.pc .deco14 {
    top: calc(1587.5rem + 2.5rem); }
  #Contents_area .deco_area div.pc .deco15 {
    top: calc(1587.5rem + 125rem); }
  #Contents_area .deco_area div.pc .deco16 {
    top: calc(1587.5rem + 343.75rem); }
  #Contents_area .deco_area div.pc .deco17 {
    top: calc(1587.5rem + 350rem); }
  #Contents_area .deco_area div.pc .deco18 {
    top: calc(1587.5rem + 468.75rem); }

@media screen and (max-width: 768px) {
  #Contents_area .waku_bg:before {
    width: calc(100% - 7.6923076923vw);
    height: calc(100% + 7.6923076923vw);
    top: -4.4871794872vw;
    left: 3.8461538462vw;
    border-radius: 6.4102564103vw; }
  #Contents_area .in_box {
    border-radius: 3.8461538462vw;
    padding: 6.4102564103vw 3.8461538462vw 1.2820512821vw; }
  #Contents_area .deco_area {
    top: -76.9230769231vw; }
    #Contents_area .deco_area div.sp .deco01 {
      top: 153.8461538462vw; }
    #Contents_area .deco_area div.sp .deco02 {
      top: 217.9487179487vw; }
    #Contents_area .deco_area div.sp .deco03 {
      top: 487.1794871795vw; }
    #Contents_area .deco_area div.sp .deco04 {
      top: 794.8717948718vw; }
    #Contents_area .deco_area div.sp .deco05 {
      top: 897.4358974359vw; }
    #Contents_area .deco_area div.sp .deco06 {
      top: 1025.641025641vw; }
    #Contents_area .deco_area div.sp .deco07 {
      top: 1282.0512820513vw; }
    #Contents_area .deco_area div.sp .deco08 {
      top: 1410.2564102564vw; }
    #Contents_area .deco_area div.sp .deco09 {
      top: 1666.6666666667vw; }
    #Contents_area .deco_area div.sp .deco10 {
      top: 1794.8717948718vw; }
    #Contents_area .deco_area div.sp .deco11 {
      top: 1987.1794871795vw; }
    #Contents_area .deco_area div.sp .deco12 {
      top: 2243.5897435897vw; }
    #Contents_area .deco_area div.sp .deco13 {
      top: 2564.1025641026vw; }
    #Contents_area .deco_area div.sp .deco14 {
      top: 2692.3076923077vw; }
    #Contents_area .deco_area div.sp .deco15 {
      top: 2884.6153846154vw; }
    #Contents_area .deco_area div.sp .deco16 {
      top: 3012.8205128205vw; }
    #Contents_area .deco_area div.sp .deco17 {
      top: 3205.1282051282vw; }
    #Contents_area .deco_area div.sp .deco18 {
      top: 3269.2307692308vw; }
    #Contents_area .deco_area div.sp .deco19 {
      top: 3525.641025641vw; }
    #Contents_area .deco_area div.sp .deco20 {
      top: 3910.2564102564vw; }
    #Contents_area .deco_area div.sp .deco21 {
      top: 3974.358974359vw; }
    #Contents_area .deco_area div.sp .deco22 {
      top: 4102.5641025641vw; }
    #Contents_area .deco_area div.sp .deco23 {
      top: 4320.5128205128vw; } }
