/* default settings */
/* =================================================================== */
.l-navigationTop {
  z-index: 101;
}
@media (max-width: 899px) {
  .l-navigationTop {
    z-index: 10;
  }
}

.l-footer {
  margin-top: 80px;
}

@font-face {
  font-family: "Gotham";
  src: url("../fonts/GothamMedium.woff2") format("woff2"), url("../fonts/GothamMedium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Gotham Book";
  src: url("../fonts/GothamBook.woff2") format("woff2"), url("../fonts/GothamBook.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "HiraKakuProN-W5";
  src: url("../fonts/HiraKakuProN-W5-AlphaNum.woff2") format("woff2"), url("../fonts/HiraKakuProN-W5-AlphaNum.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
.page-top {
  margin: 0;
}
@media (max-width: 899px) {
  .page-top {
    height: calc(60px + 40.8653846154vw);
  }
}
.page-top .main {
  padding: 0;
  margin: 0;
}
.page-top .main a,
.page-top .main abbr,
.page-top .main address,
.page-top .main article,
.page-top .main aside,
.page-top .main audio,
.page-top .main blockquote,
.page-top .main body,
.page-top .main canvas,
.page-top .main caption,
.page-top .main cite,
.page-top .main code,
.page-top .main dd,
.page-top .main details,
.page-top .main dfn,
.page-top .main div,
.page-top .main dl,
.page-top .main dt,
.page-top .main em,
.page-top .main embed,
.page-top .main fieldset,
.page-top .main figcaption,
.page-top .main figure,
.page-top .main footer,
.page-top .main form,
.page-top .main h1,
.page-top .main h2,
.page-top .main h3,
.page-top .main h4,
.page-top .main h5,
.page-top .main h6,
.page-top .main header,
.page-top .main hgroup,
.page-top .main html,
.page-top .main iframe,
.page-top .main img,
.page-top .main ins,
.page-top .main label,
.page-top .main legend,
.page-top .main li,
.page-top .main mark,
.page-top .main menu,
.page-top .main nav,
.page-top .main object,
.page-top .main ol,
.page-top .main output,
.page-top .main p,
.page-top .main pre,
.page-top .main q,
.page-top .main ruby,
.page-top .main section,
.page-top .main small,
.page-top .main span,
.page-top .main strong,
.page-top .main sub,
.page-top .main summary,
.page-top .main sup,
.page-top .main table,
.page-top .main tbody,
.page-top .main td,
.page-top .main tfoot,
.page-top .main th,
.page-top .main thead,
.page-top .main time,
.page-top .main tr,
.page-top .main ul,
.page-top .main video {
  border: 0;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}
.page-top .main article,
.page-top .main aside,
.page-top .main details,
.page-top .main figcaption,
.page-top .main figure,
.page-top .main footer,
.page-top .main header,
.page-top .main hgroup,
.page-top .main main,
.page-top .main menu,
.page-top .main nav,
.page-top .main section {
  display: block;
}
.page-top .main address,
.page-top .main caption,
.page-top .main cite,
.page-top .main code,
.page-top .main dfn,
.page-top .main em,
.page-top .main strong,
.page-top .main th,
.page-top .main var {
  font-style: normal;
}
.page-top .main table {
  border-collapse: collapse;
  border-spacing: 0;
}
.page-top .main caption,
.page-top .main td,
.page-top .main th {
  text-align: left;
}
.page-top .main q:after,
.page-top .main q:before {
  content: "";
}
.page-top .main embed,
.page-top .main object {
  vertical-align: top;
}
.page-top .main abbr,
.page-top .main acronym,
.page-top .main fieldset,
.page-top .main img {
  border: 0;
}
.page-top .main button,
.page-top .main input,
.page-top .main select,
.page-top .main textarea {
  font: inherit;
}
.page-top .main ol[class] > li,
.page-top .main ul[class] > li {
  list-style-type: none;
}
.page-top .main a,
.page-top .main button,
.page-top .main label {
  cursor: pointer;
}
.page-top .main button {
  background: none;
  border: none;
  margin: 0;
  padding: 0;
}
.page-top .main button-moz-focus-inner,
.page-top .main input-moz-focus-inner {
  border: 0;
  padding: 0;
}
.page-top .main .modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(51, 51, 51, 0.9);
  z-index: 999;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  justify-content: center;
}
.page-top .main .modal.is-active {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.page-top .main .modal-content {
  position: relative;
  width: min(1024px, 71.1111111111vw);
  aspect-ratio: 16/9;
  background: #000;
  color: #fff;
}
@media (max-width: 899px) {
  .page-top .main .modal-content {
    width: 92.3076923077vw;
  }
}
.page-top .main .modal-content iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-top .main .modal-close {
  position: absolute;
  top: max(-50px, -3.4722222222vw);
  right: max(-50px, -3.4722222222vw);
  color: #fff;
  border: none;
  cursor: pointer;
  width: min(44px, 3.0555555556vw);
  height: min(44px, 3.0555555556vw);
}
@media (max-width: 899px) {
  .page-top .main .modal-close {
    width: 9.2307692308vw;
    height: 9.2307692308vw;
    top: -11.2820512821vw;
    right: 0;
  }
}
.page-top .main .modal-close:before, .page-top .main .modal-close:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(44px, 3.0555555556vw);
  height: 2px;
  background-color: #fff;
}
@media (max-width: 899px) {
  .page-top .main .modal-close:before, .page-top .main .modal-close:after {
    width: 11.2820512821vw;
  }
}
.page-top .main .modal-close:before {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}
.page-top .main .modal-close:after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}
.page-top .main .js-fadeIn {
  opacity: 0;
  -webkit-transform: translate3d(0, 100px, 0);
          transform: translate3d(0, 100px, 0);
  -webkit-transition: opacity 1s ease-in-out, -webkit-transform 1s ease-in-out;
  transition: opacity 1s ease-in-out, -webkit-transform 1s ease-in-out;
  transition: opacity 1s ease-in-out, transform 1s ease-in-out;
  transition: opacity 1s ease-in-out, transform 1s ease-in-out, -webkit-transform 1s ease-in-out;
  will-change: transform, opacity;
}
.page-top .main .js-fadeIn.is-animated {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
.page-top .main .js-fadeIn .is-delay-1s {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}
.page-top .main .js-fadeIn .is-delay-2s {
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}
@media (min-width: 900px) {
  .page-top .main {
    overflow: hidden;
  }
}
.page-top .main * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-family: "HiraKakuProN-W5";
  font-weight: 500;
  font-style: normal;
  -webkit-tap-highlight-color: transparent;
}
.page-top .main img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
.page-top .main a {
  display: block;
  -webkit-text-decoration: none;
  text-decoration: none;
  width: 100%;
}
.page-top .main li {
  list-style: none;
}
@media (min-width: 900px) {
  .page-top .main .only-sp {
    display: none;
  }
}
@media (max-width: 899px) {
  .page-top .main .only-pc {
    display: none;
  }
}
@media (min-width: 900px) {
  .page-top .main .inner {
    width: min(1200px, 83.3333333333vw);
    margin-left: auto;
    margin-right: auto;
    position: relative;
  }
}
.page-top .main .kv {
  width: 100%;
  height: calc(100svh - min(126px, 8.75vw));
  position: relative;
  z-index: 10;
  overflow: hidden;
}
@media (max-width: 899px) {
  .page-top .main .kv {
    height: 40.8653846154vw;
  }
}
.page-top .main .kv__content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: rgba(255, 255, 255, 0.33);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.75s ease-in-out, visibility 0.75s ease-in-out;
  transition: opacity 0.75s ease-in-out, visibility 0.75s ease-in-out;
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}
.page-top .main .kv__content.is-active {
  opacity: 1;
  visibility: visible;
}
.page-top .main .kv__ttl {
  width: min(1075px, 74.6527777778vw);
  height: min(595px, 41.3194444444vw);
  margin-left: min(31px, 2.1527777778vw);
  position: relative;
  z-index: 3;
}
@media screen and (min-width: 900px) and (max-width: 1600px) {
  .page-top .main .kv__ttl {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
  }
}
@media (max-width: 899px) {
  .page-top .main .kv__ttl {
    width: 65.3846153846vw;
    height: 36.1896243292vw;
    margin-left: -5.1282051282vw;
  }
}
.page-top .main .kv__ttl img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-top .main .kv__video {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.page-top .main .kv__video-bg {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.page-top .main .kv__video-bg video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  -webkit-transform: scale(1.01);
          transform: scale(1.01);
}
.page-top .main .kv__video-open {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 3;
}
.page-top .main .kv__video-open-inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 200%;
  height: 100%;
  -webkit-transform: translate(-50%);
          transform: translate(-50%);
  -webkit-transition: -webkit-transform 1s linear;
  transition: -webkit-transform 1s linear;
  transition: transform 1s linear;
  transition: transform 1s linear, -webkit-transform 1s linear;
}
.page-top .main .kv__video-open-inner:before, .page-top .main .kv__video-open-inner:after {
  content: "";
  position: absolute;
  top: 0;
  display: block;
  width: 50%;
  height: 100%;
}
.page-top .main .kv__video-open-inner::before {
  left: 0;
  background-color: rgba(255, 0, 0, 0.2);
  background: linear-gradient(275deg, #D3EDFB 0%, rgba(211, 237, 251, 0.7) 25.52%, rgba(211, 237, 251, 0) 69.39%);
}
.page-top .main .kv__video-open-inner:after {
  right: 0;
  background-color: rgba(0, 0, 255, 0.2);
  background-color: #d3edfb;
}
.page-top .main .kv__shadow {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("/company/special-contents/assets/images/kv_shadow.png") center repeat;
  background-size: min(48px, 3.3333333333vw);
  z-index: 2;
}
@media (max-width: 899px) {
  .page-top .main .kv__shadow {
    background: url("/company/special-contents/assets/images/kv_shadow_sp.png") center repeat;
    background-size: 12.3076923077vw;
  }
}
.page-top .main .kv.is-active .kv__video-open-inner {
  -webkit-transform: translate(100%);
          transform: translate(100%);
}
.page-top .main .kv .float__btn {
  position: absolute;
  width: min(141px, 9.7916666667vw);
  height: min(141px, 9.7916666667vw);
  right: min(55px, 3.8194444444vw);
  bottom: min(45px, 3.125vw);
  z-index: 100;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
@media (max-width: 899px) {
  .page-top .main .kv .float__btn {
    width: 19.4871794872vw;
    height: 19.4871794872vw;
    right: 3.0769230769vw;
    bottom: 3.0769230769vw;
  }
}
@media screen and (min-width: 1025px) {
  .page-top .main .kv .float__btn:hover {
    opacity: 0.8;
  }
}
.page-top .main .kv:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("/company/special-contents/assets/images/kv_bgd_end.jpg") center no-repeat;
  background-size: cover;
  z-index: -1;
  opacity: 0;
  -webkit-transition: opacity 0.75s ease-in-out;
  transition: opacity 0.75s ease-in-out;
}
.page-top .main .kv.is-end:after {
  -webkit-transition: opacity 0.75s ease-in-out;
  transition: opacity 0.75s ease-in-out;
  opacity: 1;
  z-index: 5;
}
.page-top .main .pin-spacer {
  pointer-events: none;
}
@media (min-width: 900px) {
  .page-top .main .about-wrapper {
    position: relative;
    height: auto;
  }
}
@media (max-width: 899px) {
  .page-top .main .about-wrapper {
    position: sticky;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100vh;
    z-index: 9;
    pointer-events: none;
    will-change: top;
  }
}
@media (max-width: 899px) {
  .page-top .main .pin-section {
    position: relative;
  }
}
@media (min-width: 900px) {
  .page-top .main .energy.gas {
    padding-top: 50vh;
    height: 150vh;
  }
}
@media (max-width: 899px) {
  .page-top .main .energy.gas {
    margin-top: calc(-100lvh + 44.8717948718vw);
  }
}
@media (min-width: 900px) {
  .page-top .main .energy.gas .energy__inner {
    height: 150lvh;
  }
}
.page-top .main .about {
  overflow: hidden;
  position: relative;
  z-index: 99;
  will-change: height, transform;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: min(350px, 24.3055555556vw);
  background: transparent;
}
@media (max-width: 899px) {
  .page-top .main .about {
    height: 44.8717948718vw;
  }
}
.page-top .main .about picture {
  display: inline-block;
  vertical-align: middle;
}
.page-top .main .about__bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  background: url("/company/special-contents/assets/images/about_bg.jpg") center center no-repeat;
  background-size: cover;
}
.page-top .main .about__bg:before {
  background: url("/company/special-contents/assets/images/about_bg_sp.jpg") center no-repeat;
  background-size: cover;
}
.page-top .main .about__ttl {
  width: min(412px, 28.6111111111vw);
  margin: 0 auto max(-10px, -0.6944444444vw);
  will-change: transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-transform-origin: center center;
          transform-origin: center center;
  position: relative;
}
@media (min-width: 900px) {
  .page-top .main .about__ttl {
    left: max(-140px, -9.7222222222vw);
  }
}
@media (max-width: 899px) {
  .page-top .main .about__ttl {
    width: 52.8205128205vw;
    margin-bottom: -2.5641025641vw;
  }
}
@media (max-width: 899px) {
  .page-top .main .about__ttl img {
    margin-left: -14.8717948718vw;
  }
}
.page-top .main .about__img {
  width: min(275px, 19.0972222222vw);
  position: absolute;
  bottom: 0;
  left: calc(50% + min(67px, 4.6527777778vw));
  will-change: transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-transform-origin: center bottom;
          transform-origin: center bottom;
}
@media (max-width: 899px) {
  .page-top .main .about__img {
    width: 35.3846153846vw;
    left: calc(50% + 10.2564102564vw);
  }
}
.page-top .main .energy {
  width: 100%;
  height: 100vh;
  position: relative;
  overflow: hidden;
}
.page-top .main .energy__inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100lvh;
  clip: rect(0, auto, auto, 0);
}
.page-top .main .energy .bg__parallax {
  position: fixed;
  display: block;
  top: 200px;
  left: 0;
  width: 100%;
  height: calc(100lvh - 200px);
  background-size: cover;
  background-position: center bottom;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  will-change: transform;
}
@media (max-width: 899px) {
  .page-top .main .energy .bg__parallax {
    top: 0;
    height: 100lvh;
  }
}
.page-top .main .energy .bg__parallax.is-move {
  position: absolute;
}
.page-top .main .energy.gas .bg__parallax {
  background: url("/company/special-contents/assets/images/energy_bg01.jpg") center top no-repeat;
  background-size: cover;
  z-index: 1;
}
@media (max-width: 899px) {
  .page-top .main .energy.gas .bg__parallax {
    background: url("/company/special-contents/assets/images/energy_bg01_sp.jpg") center top no-repeat;
    background-size: cover;
  }
}
.page-top .main .energy.oil .bg__parallax {
  background: url("/company/special-contents/assets/images/energy_bg02.jpg") center top no-repeat;
  background-size: cover;
  z-index: 2;
}
@media (max-width: 899px) {
  .page-top .main .energy.oil .bg__parallax {
    background: url("/company/special-contents/assets/images/energy_bg02_sp.jpg") center bottom no-repeat;
    background-size: cover;
  }
}
.page-top .main .energy.hydrogen .bg__parallax {
  background: url("/company/special-contents/assets/images/energy_bg03.jpg") center no-repeat;
  background-size: cover;
  z-index: 3;
}
@media (max-width: 899px) {
  .page-top .main .energy.hydrogen .bg__parallax {
    background: url("/company/special-contents/assets/images/energy_bg03_sp.jpg") center no-repeat;
    background-size: cover;
  }
}
.page-top .main .energy.renewable .bg__parallax {
  background: url("/company/special-contents/assets/images/energy_bg04.jpg") center top no-repeat;
  background-size: cover;
  z-index: 4;
}
@media (max-width: 899px) {
  .page-top .main .energy.renewable .bg__parallax {
    background: url("/company/special-contents/assets/images/energy_bg04_sp.jpg") center top no-repeat;
    background-size: cover;
  }
}
@media (min-width: 900px) {
  .page-top .main .energy.renewable .energy__ttl {
    height: min(97px, 6.7361111111vw);
  }
}
.page-top .main .energy.ccs .bg__parallax {
  background: url("/company/special-contents/assets/images/energy_bg05.jpg") center bottom no-repeat;
  background-size: cover;
  z-index: 5;
}
@media (max-width: 899px) {
  .page-top .main .energy.ccs .bg__parallax {
    background: url("/company/special-contents/assets/images/energy_bg05_sp.jpg") center bottom no-repeat;
    background-size: cover;
  }
}
.page-top .main .energy.ccs .energy__ttl {
  height: min(156px, 10.8333333333vw);
}
@media (max-width: 899px) {
  .page-top .main .energy.ccs .energy__ttl {
    height: 23.0769230769vw;
  }
}
.page-top .main .energy__content {
  z-index: 8;
  position: relative;
  height: 100%;
  padding-bottom: min(18px, 1.25vw);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (min-width: 900px) {
  .page-top .main .energy__content {
    padding-left: calc(min(600px, 41.6666666667vw) + min(63px, 4.375vw));
  }
}
.page-top .main .energy__ttl {
  height: min(98px, 6.8055555556vw);
}
@media (max-width: 899px) {
  .page-top .main .energy__ttl {
    height: 15.8974358974vw;
    margin: 0 auto;
    text-align: center;
  }
}
.page-top .main .energy__ttl img {
  height: 100%;
  width: auto;
}
.page-top .main .energy__txt {
  font-size: min(17px, 1.1805555556vw);
  line-height: 1.7647058824;
  font-weight: 500;
  color: #fff;
  font-family: "Gotham";
  margin-top: min(23px, 1.5972222222vw);
  white-space: nowrap;
}
@media (max-width: 899px) {
  .page-top .main .energy__txt {
    font-size: 3.5897435897vw;
    line-height: 1.6428571429;
    margin-right: -1.2820512821vw;
    margin-top: 5.641025641vw;
    padding-inline: 8.9743589744vw;
    white-space: normal;
  }
}
.page-top .main .energy__btn {
  margin-top: min(23px, 1.5972222222vw);
}
@media (max-width: 899px) {
  .page-top .main .energy__btn {
    margin-top: 3.5897435897vw;
  }
}
.page-top .main .energy__btn .btn__main {
  width: min(139px, 9.6527777778vw);
  height: min(44px, 3.0555555556vw);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: min(14px, 0.9722222222vw);
  font-family: "Gotham Book";
  color: #fff;
  border: 1px solid #fff;
  position: relative;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  will-change: transform;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: min(3px, 0.2083333333vw);
}
@media (max-width: 899px) {
  .page-top .main .energy__btn .btn__main {
    width: 35.641025641vw;
    height: 11.2820512821vw;
    font-size: 3.5897435897vw;
    margin: 0 auto;
    padding-top: 0.7692307692vw;
  }
}
.page-top .main .energy__btn .btn__main:before {
  content: "";
  position: absolute;
  top: 50%;
  right: min(12px, 0.8333333333vw);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: min(12px, 0.8333333333vw);
  height: min(10px, 0.6944444444vw);
  background: url("/company/special-contents/assets/images/icon_arrow-right.svg") center right no-repeat;
  background-size: contain;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
@media (max-width: 899px) {
  .page-top .main .energy__btn .btn__main:before {
    right: 3.0769230769vw;
    width: 3.0769230769vw;
    height: 2.5641025641vw;
  }
}
@media screen and (min-width: 1025px) {
  .page-top .main .energy__btn .btn__main:hover {
    opacity: 0.8;
  }
  .page-top .main .energy__btn .btn__main:hover:before {
    right: min(6px, 0.4166666667vw);
  }
}
@media (min-width: 900px) {
  .page-top .main .energy-revert .energy__content .energy__ttl {
    text-align: left;
  }
}
@media (min-width: 900px) {
  .page-top .main .energy-revert .energy__content {
    padding-left: min(60px, 4.1666666667vw);
  }
}
.page-top .main .video {
  padding: min(105px, 7.2916666667vw) 0 min(114px, 7.9166666667vw);
  position: relative;
  overflow: hidden;
}
@media (max-width: 899px) {
  .page-top .main .video {
    padding: 30.2564102564vw 0 12.8205128205vw;
  }
}
.page-top .main .video #video {
  position: absolute;
  top: min(140px, 9.7222222222vw);
  left: 0;
  right: 0;
  height: 1px;
  background: transparent;
}
@media (max-width: 899px) {
  .page-top .main .video #video {
    top: 35.8974358974vw;
  }
}
@media (min-width: 900px) {
  .page-top .main .video .inner {
    padding-inline: min(120px, 8.3333333333vw);
  }
}
.page-top .main .video__ttl {
  width: min(505px, 35.0694444444vw);
  margin: 0 auto max(-117px, -8.125vw);
}
@media (max-width: 899px) {
  .page-top .main .video__ttl {
    width: 85.8974358974vw;
    margin: 0 auto 2.8205128205vw;
  }
}
@media (min-width: 900px) {
  .page-top .main .video__ttl img {
    margin-left: min(48px, 3.3333333333vw);
  }
}
.page-top .main .video__snum {
  width: auto;
  height: min(145px, 10.0694444444vw);
  position: absolute;
  top: min(153px, 10.625vw);
  left: min(90px, 6.25vw);
}
@media (max-width: 899px) {
  .page-top .main .video__snum {
    display: none;
  }
}
.page-top .main .video__tab-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: min(103px, 7.1527777778vw);
}
@media (max-width: 899px) {
  .page-top .main .video__tab-list {
    margin-bottom: 4.1025641026vw;
    margin-left: 0;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: absolute;
    top: 12.3076923077vw;
    left: 0;
    right: 0;
  }
}
.page-top .main .video__tab-item {
  width: min(134px, 9.3055555556vw);
  height: min(44px, 3.0555555556vw);
  position: relative;
  cursor: pointer;
}
@media (max-width: 899px) {
  .page-top .main .video__tab-item {
    width: 28.2051282051vw;
    height: 9.2307692308vw;
  }
}
.page-top .main .video__tab-item picture {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.page-top .main .video__tab-item picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
}
.page-top .main .video__tab-item .tab-img-hover img {
  opacity: 0;
  visibility: hidden;
}
.page-top .main .video__tab-item .tab-img-default img {
  opacity: 1;
  visibility: visible;
}
.page-top .main .video__tab-item:hover .tab-img-hover img, .page-top .main .video__tab-item.is-active .tab-img-hover img {
  opacity: 1;
  visibility: visible;
}
.page-top .main .video__tab-item:hover .tab-img-default img, .page-top .main .video__tab-item.is-active .tab-img-default img {
  opacity: 0;
  visibility: hidden;
}
.page-top .main .video__tab-pane {
  display: none;
}
.page-top .main .video__tab-pane.is-active {
  display: block;
}
.page-top .main .video__tab-pane .video__thumb {
  width: min(960px, 66.6666666667vw);
  height: min(540px, 37.5vw);
  position: relative;
  margin: 0 auto;
  overflow: hidden;
  cursor: pointer;
}
@media (max-width: 899px) {
  .page-top .main .video__tab-pane .video__thumb {
    width: 85.641025641vw;
    height: 48.2051282051vw;
  }
}
.page-top .main .video__tab-pane .video__thumb img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.page-top .main .video__tab-pane .video__thumb-icon {
  width: min(117px, 8.125vw);
  height: min(117px, 8.125vw);
  position: absolute;
  top: 49%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: url("/company/special-contents/assets/images/icon_play.png") center no-repeat;
  background-size: cover;
  border-radius: 50%;
}
@media (max-width: 899px) {
  .page-top .main .video__tab-pane .video__thumb-icon {
    width: 15.3846153846vw;
    height: 15.3846153846vw;
  }
}
@media screen and (min-width: 1025px) {
  .page-top .main .video__tab-pane .video__thumb:hover img {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
}
.page-top .main .video__tab-pane .video__txt {
  display: block;
  text-align: center;
  font-size: min(20px, 1.3888888889vw);
  line-height: 1.8;
  font-weight: bold;
  color: #444088;
  margin-top: min(18px, 1.25vw);
}
@media (max-width: 899px) {
  .page-top .main .video__tab-pane .video__txt {
    font-size: 7.1794871795vw;
    line-height: 1.7142857143;
    margin-top: 4.1025641026vw;
  }
}
.page-top .main .video__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-top: min(96px, 6.6666666667vw);
}
@media (max-width: 899px) {
  .page-top .main .video__content {
    display: block;
    padding: 19.4871794872vw 8.2051282051vw 2.5641025641vw;
  }
}
.page-top .main .video__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-top: min(43px, 2.9861111111vw);
}
@media (max-width: 899px) {
  .page-top .main .video__items {
    display: block;
    padding-top: 6.9230769231vw;
  }
}
.page-top .main .video__item {
  width: min(436px, 30.2777777778vw);
  position: relative;
}
@media (max-width: 899px) {
  .page-top .main .video__item {
    width: 85.8974358974vw;
    margin: 0 auto;
  }
}
@media (max-width: 899px) {
  .page-top .main .video__item:nth-child(2) {
    margin-top: 6.9230769231vw;
  }
}
@media (min-width: 900px) {
  .page-top .main .video__item:nth-child(2) .video__item-thumb:after {
    top: min(16px, 1.1111111111vw);
    left: min(70px, 4.8611111111vw);
    right: min(70px, 4.8611111111vw);
    bottom: min(16px, 1.1111111111vw);
  }
}
@media (max-width: 899px) {
  .page-top .main .video__item:nth-child(2) .video__item-thumb:after {
    top: 3.0769230769vw;
    left: 14.1025641026vw;
    right: 14.1025641026vw;
    bottom: 3.0769230769vw;
  }
}
.page-top .main .video__item:nth-child(2) .video__item-img {
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
}
@media (min-width: 900px) {
  .page-top .main .video__item:nth-child(2) .video__item-img {
    width: min(260px, 18.0555555556vw);
  }
}
@media (max-width: 899px) {
  .page-top .main .video__item:nth-child(2) .video__item-img {
    width: 51.2820512821vw;
  }
}
.page-top .main .video__item-num {
  width: min(15px, 1.0416666667vw);
  height: min(9px, 0.625vw);
  position: absolute;
  top: min(107px, 7.4305555556vw);
  left: max(-7px, -0.4861111111vw);
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
@media (max-width: 899px) {
  .page-top .main .video__item-num {
    display: none;
  }
}
.page-top .main .video__item-num img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-top .main .video__item-thumb {
  width: min(436px, 30.2777777778vw);
  height: min(273px, 18.9583333333vw);
  position: relative;
  padding: min(32px, 2.2222222222vw);
  -webkit-clip-path: polygon(min(16px, 1.1111111111vw) 0, 100% 0, 100% calc(100% - min(16px, 1.1111111111vw)), calc(100% - min(16px, 1.1111111111vw)) 100%, 0 100%, 0 min(16px, 1.1111111111vw));
          clip-path: polygon(min(16px, 1.1111111111vw) 0, 100% 0, 100% calc(100% - min(16px, 1.1111111111vw)), calc(100% - min(16px, 1.1111111111vw)) 100%, 0 100%, 0 min(16px, 1.1111111111vw));
}
@media (max-width: 899px) {
  .page-top .main .video__item-thumb {
    width: 85.8974358974vw;
    height: 53.8461538462vw;
    padding: 6.1538461538vw;
    -webkit-clip-path: polygon(3.0769230769vw 0, 100% 0, 100% calc(100% - 3.0769230769vw), calc(100% - 3.0769230769vw) 100%, 0 100%, 0 3.0769230769vw);
            clip-path: polygon(3.0769230769vw 0, 100% 0, 100% calc(100% - 3.0769230769vw), calc(100% - 3.0769230769vw) 100%, 0 100%, 0 3.0769230769vw);
    margin: 0 auto;
  }
}
.page-top .main .video__item-thumb:before, .page-top .main .video__item-thumb:after {
  content: "";
  position: absolute;
  pointer-events: none;
}
.page-top .main .video__item-thumb:before {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #BFDEE0;
  z-index: 1;
}
.page-top .main .video__item-thumb:after {
  top: min(16px, 1.1111111111vw);
  left: min(16px, 1.1111111111vw);
  right: min(16px, 1.1111111111vw);
  bottom: min(16px, 1.1111111111vw);
  background: #fff;
  z-index: 2;
}
@media (max-width: 899px) {
  .page-top .main .video__item-thumb:after {
    top: 3.0769230769vw;
    left: 3.0769230769vw;
    right: 3.0769230769vw;
    bottom: 3.0769230769vw;
  }
}
.page-top .main .video__item-img {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 3;
  overflow: hidden;
  cursor: pointer;
}
.page-top .main .video__item-img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  z-index: 3;
}
@media screen and (min-width: 1025px) {
  .page-top .main .video__item-img:hover img {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
}
.page-top .main .video__item-icon {
  width: min(80px, 5.5555555556vw);
  height: min(80px, 5.5555555556vw);
  position: absolute;
  top: 49%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: url("/company/special-contents/assets/images/icon_play.png") center no-repeat;
  background-size: cover;
  border-radius: 50%;
  z-index: 4;
}
@media (max-width: 899px) {
  .page-top .main .video__item-icon {
    width: 15.3846153846vw;
    height: 15.3846153846vw;
  }
}
.page-top .main .video__item-ttl {
  text-align: center;
  margin-bottom: min(22px, 1.5277777778vw);
}
@media (min-width: 900px) {
  .page-top .main .video__item-ttl {
    height: min(90px, 6.25vw);
  }
}
@media (max-width: 899px) {
  .page-top .main .video__item-ttl {
    width: 85.8974358974vw;
    margin-bottom: 4.1025641026vw;
  }
}
@media (min-width: 900px) {
  .page-top .main .video__item-ttl img {
    width: auto;
    height: 100%;
  }
}
.page-top .main .video__item-ttl.js-fadeIn.is-animated img {
  -webkit-animation: jump-shaking;
          animation: jump-shaking;
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
}
.page-top .main .video__item-desc {
  font-size: min(14px, 0.9722222222vw);
  line-height: 1.7142857143;
  letter-spacing: 0;
  font-family: "HiraKakuProN-W5";
  font-weight: 500;
  color: #434187;
  margin-top: min(23px, 1.5972222222vw);
}
@media (max-width: 899px) {
  .page-top .main .video__item-desc {
    font-size: 3.5897435897vw;
    line-height: 1.7142857143;
    margin-top: 4.1025641026vw;
  }
}

@-webkit-keyframes jump-shaking {
  0% {
    -webkit-transform: translateX(0) rotate(0);
            transform: translateX(0) rotate(0);
  }
  25% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(-1px) rotate(-8deg);
            transform: translateY(-1px) rotate(-8deg);
  }
  75% {
    -webkit-transform: translateY(-2px) rotate(8deg);
            transform: translateY(-2px) rotate(8deg);
  }
  98% {
    -webkit-transform: translateY(-3px) rotate(-8deg);
            transform: translateY(-3px) rotate(-8deg);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
}

@keyframes jump-shaking {
  0% {
    -webkit-transform: translateX(0) rotate(0);
            transform: translateX(0) rotate(0);
  }
  25% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(-1px) rotate(-8deg);
            transform: translateY(-1px) rotate(-8deg);
  }
  75% {
    -webkit-transform: translateY(-2px) rotate(8deg);
            transform: translateY(-2px) rotate(8deg);
  }
  98% {
    -webkit-transform: translateY(-3px) rotate(-8deg);
            transform: translateY(-3px) rotate(-8deg);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
}