.img-logo-hd {
  width: 34.1rem;
}

@media screen and (max-width: 1600px) {
  .img-logo-hd {
    width: 30rem;
  }
}

@media screen and (max-width: 1400px) {
  .img-logo-hd {
    width: 27rem;
  }
}

.header-right-ul {
  color: #242424;
  font-size: 1.8rem;
  font-weight: 500;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 6rem;
  column-gap: 6rem;
}

@media screen and (max-width: 1700px) {
  .header-right-ul {
    -moz-column-gap: 4rem;
    column-gap: 4rem;
  }
}

@media screen and (max-width: 1600px) {
  .header-right-ul {
    -moz-column-gap: 3rem;
    column-gap: 3rem;
  }
}

@media screen and (max-width: 1400px) {
  .header-right-ul {
    -moz-column-gap: 2rem;
    column-gap: 2rem;
  }
}

@media screen and (max-width: 767px) {
  .header-right-ul {
    display: block;
    color: #fff;
  }
}

.header-right-ul li:first-child .header-right-ul-link {
  border-top: 0;
}

.header-right-ul .header-right-ul-link {
  display: inline-block;
  position: relative;
}

@media screen and (max-width: 767px) {
  .header-right-ul .header-right-ul-link {
    display: block;
    text-align: center;
    padding: 1.3rem 0;
    border-top: 0.1rem solid #fff;
  }
}

.header-right-ul .header-right-ul-link:hover:before,
.header-right-ul .header-right-ul-link.is-active:before {
  opacity: 1;
}

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

  .header-right-ul .header-right-ul-link:hover,
  .header-right-ul .header-right-ul-link.is-active {
    background-color: #fff;
    color: #100025;
  }
}

.header-right-ul .header-right-ul-link:before {
  content: "";
  position: absolute;
  width: max(0.4rem, 2px);
  height: max(0.4rem, 2px);
  background-color: #120123;
  border-radius: 100rem;
  bottom: -0.8rem;
  left: 50%;
  transform: translateX(-50%);
  opacity: 0;
  transition: all 0.3s ease-in-out;
}

@media screen and (max-width: 1400px) {
  .header-right-ul .header-right-ul-link:before {
    bottom: -0.4rem;
  }
}

@media screen and (max-width: 767px) {
  .header-right-ul .header-right-ul-link:before {
    content: none;
  }
}

.btn-contact-hd {
  font-size: 1.6rem;
  font-weight: 700;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 2.5rem;
  width: 19.3rem;
  height: 5rem;
  background-color: #100025;
  color: #fff;
  border: max(1px, 0.1rem) solid #100025 !important;
  transition: all 0.3s ease-in-out;
}

@media screen and (max-width: 1400px) {
  .btn-contact-hd {
    width: 15rem;
    height: 4.3rem;
  }
}

.btn-contact-hd:hover,
.btn-contact-hd.is-active {
  background-color: #fff;
  color: #100025;
}

.header-right {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 4rem;
  column-gap: 4rem;
  border: max(1px, 0.1rem) solid #100025;
  display: inline-flex;
  border-radius: 4rem;
  padding-left: 7.3rem;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  padding-right: 1.2rem;
  background-color: #fff;
  box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.2);
}

@media screen and (max-width: 1600px) {
  .header-right {
    -moz-column-gap: 2rem;
    column-gap: 2rem;
    padding-left: 5rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}

@media screen and (max-width: 1400px) {
  .header-right {
    padding-left: 4rem;
  }
}

@media screen and (max-width: 767px) {
  .header-right {
    box-shadow: none;
    border: 0;
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    padding: 0;
    background-color: #100025;
    border-radius: 0;
    border-top: 0.1rem solid #100025;
    border-bottom: 0.1rem solid #100025;
  }
}

.header {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  max-width: 182rem;
  width: calc(100% - 3rem);
  margin-left: auto;
  margin-right: auto;
  padding-top: 2rem;
}

@media screen and (max-width: 1600px) {
  .header {
    padding-top: 1rem;
  }
}

@media screen and (max-width: 767px) {
  .header {
    padding-top: 1.6rem;
    padding-bottom: 1.6rem;
  }
}

header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
}

@media screen and (max-width: 767px) {
  header {
    background-color: #fff;
  }
}

.img-sec1-top {
  width: 100%;
}

.sec1-top-icon-item {
  position: absolute;
  width: 5.7%;
  opacity: 0;
  animation: fadeIn_subicon 2s ease forwards, vertical 1s ease-in-out infinite alternate;
}

@media screen and (max-width: 767px) {
  .sec1-top-icon-item {
    width: 15%;
  }
}

.sec1-top-icon-item1 {
  right: 33.5%;
  top: 25%;
}

@media screen and (max-width: 767px) {
  .sec1-top-icon-item1 {
    right: 47.5%;
    top: 15%;
  }
}

.sec1-top-icon-item2 {
  right: 41.9%;
  top: 49.6%;
}

@media screen and (max-width: 767px) {
  .sec1-top-icon-item2 {
    right: 58.9%;
    top: 42.6%;
  }
}

.sec1-top-icon-item3 {
  right: 19%;
  top: 46%;
}

@media screen and (max-width: 767px) {
  .sec1-top-icon-item3 {
    top: 38%;
    right: 21%;
  }
}

.sec1-top-icon-item4 {
  right: 32%;
  top: 56%;
}

@media screen and (max-width: 767px) {
  .sec1-top-icon-item4 {
    right: 40%;
    top: 48%;
  }
}

.sec1-top-icon-item5 {
  right: 9.2%;
  top: 56.5%;
}

@media screen and (max-width: 767px) {
  .sec1-top-icon-item5 {
    right: 3.2%;
    top: 46.5%;
  }
}

.sec1-top-gr-icon {
  position: relative;
}

@media screen and (max-width: 767px) {
  .sec1-top-gr-icon {
    margin-top: -5rem;
  }
}

@keyframes vertical {
  0% {
    transform: translateY(-10px);
  }

  100% {
    transform: translateY(0);
  }
}

@keyframes fadeIn_subicon {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.sec1-top {
  position: relative;
}

@media screen and (max-width: 767px) {
  .sec1-top {
    margin-top: 10rem;
  }
}

.sec1-top .sec1-top-content {
  position: absolute;
  top: 24%;
  left: 0;
  right: 0;
  z-index: 10;
}

@media screen and (max-width: 767px) {
  .sec1-top .sec1-top-content {
    position: static;
  }
}

.sec1-top .sec1-top-cont {
  max-width: 160rem;
  width: calc(100% - 3rem);
  margin-left: auto;
  margin-right: auto;
}

.sec1-top .sec1-top-tlt {
  color: #100025;
  font-weight: 700;
  font-size: 8.9rem;
  line-height: 1.2;
}

@media screen and (max-width: 1500px) {
  .sec1-top .sec1-top-tlt {
    font-size: 7.5rem;
  }
}

@media screen and (max-width: 767px) {
  .sec1-top .sec1-top-tlt {
    font-size: 3.6rem;
  }
}

.sec1-top .sec1-top-tlt span {
  display: block;
}

.sec1-top-tlt-sub {
  color: #171923;
  font-size: 2.5rem;
  line-height: 1.5;
  padding-top: 2rem;
}

@media screen and (max-width: 767px) {
  .sec1-top-tlt-sub {
    font-size: 2rem;
  }
}

.sec1-top-tlt span,
.sec1-top-tlt-sub {
  opacity: 0;
  animation: fadeInUp_style1 0.8s ease forwards;
}

.sec1-top-tlt span:nth-child(1) {
  animation-delay: 0s;
}

.sec1-top-tlt span:nth-child(2) {
  animation-delay: 0.5s;
}

.sec1-top-tlt span:nth-child(3) {
  animation-delay: 1s;
}

.sec1-top-tlt-sub {
  animation-delay: 1.5s;
}

@keyframes fadeInUp_style1 {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.cont-1400 {
  max-width: 140rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 3rem);
}

.title-style1 .eng {
  font-size: 7rem;
  color: #100025;
  line-height: 1.2;
  display: inline-block;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .title-style1 .eng {
    font-size: 4rem;
  }
}

.title-style1 .jpn {
  font-size: 2.2rem;
  font-weight: 500;
  color: #767676;
  display: inline-block;
}

@media screen and (max-width: 767px) {
  .title-style1 .jpn {
    font-size: 2rem;
    padding-left: 0;
    transform: none;
    display: block;
  }
}

.title-style1-mgl1 {
  padding-left: 6.5rem;
  transform: translateY(-0.5rem);
}

.title-style1-mgl2 {
  padding-left: 1.5rem;
  transform: translateY(-0.2rem);
}

.txt-fs41 {
  font-size: 4.1rem;
}

@media screen and (max-width: 1400px) {
  .txt-fs41 {
    font-size: 3.8rem;
  }
}

@media screen and (max-width: 767px) {
  .txt-fs41 {
    font-size: 2.4rem;
  }
}

.sec2-top-content41 {
  font-weight: 700;
  line-height: 1.7;
  color: #343434;
  margin-top: 3.3rem;
  margin-bottom: 2.8rem;
}

@media screen and (max-width: 767px) {
  .sec2-top-content41 {
    margin-top: 2.5rem;
    margin-bottom: 2rem;
  }
}

.sec3-top-content41 {
  font-weight: 700;
  line-height: 1.7;
  color: #343434;
  margin-top: 4.3rem;
  margin-bottom: 3.8rem;
}

@media screen and (max-width: 767px) {
  .sec3-top-content41 {
    margin-top: 2.5rem;
    margin-bottom: 2rem;
  }
}

.txt-fs17 {
  font-size: 1.7rem;
}

@media screen and (max-width: 767px) {
  .txt-fs17 {
    font-size: 1.6rem;
  }
}

.sec2-top-slider {
  position: relative;
}

@media screen and (max-width: 1700px) {
  .sec2-top-slider {
    padding-top: 13rem;
  }
}

@media screen and (max-width: 1500px) {
  .sec2-top-slider {
    padding-top: 25rem;
  }
}

@media screen and (max-width: 767px) {
  .sec2-top-slider {
    padding-top: 0;
    padding-bottom: 3rem;
  }
}

.sec2-top-slider-main {
  width: 100%;
  height: 28.5rem;
  background-image: url(../img/top/image03.png);
  background-repeat: repeat-x;
  background-size: auto 100%;
  animation: anime1 50s linear infinite;
  position: absolute;
  top: -21.8rem;
  left: 0;
  right: 0;
  z-index: 3;
}

@media screen and (max-width: 1700px) {
  .sec2-top-slider-main {
    top: -10rem;
  }
}

@media screen and (max-width: 1500px) {
  .sec2-top-slider-main {
    top: -6rem;
  }
}

@media screen and (max-width: 767px) {
  .sec2-top-slider-main {
    position: static;
    height: 15rem;
  }
}

.sec2-top-map {
  position: relative;
}

.sec2-top-map:after {
  content: "";
  position: absolute;
  background-image: url(../img/top/image04.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: top right;
  width: 89.1rem;
  height: 98rem;
  top: -8rem;
  right: -4.9rem;
  z-index: 2;
}

@media screen and (max-width: 1400px) {
  .sec2-top-map:after {
    right: 0;
  }
}

@media screen and (min-width: 768px) {
  @keyframes anime1 {
    0% {
      background-position: 278rem 0;
    }

    100% {
      background-position: -278rem 0;
    }
  }
}

@media screen and (max-width: 767px) {
  @keyframes anime1 {
    0% {
      background-position: 146.2rem 0;
    }

    100% {
      background-position: -146.2rem 0;
    }
  }
}

.sec2-top-content {
  position: relative;
  z-index: 4;
  margin-top: -0.7rem;
}

.link-style-power {
  display: flex;
  width: -moz-max-content;
  width: max-content;
  position: relative;
  transition: all 0.3s ease-in-out;
}

.link-style-power:hover {
  transform: translateY(0.4rem);
}

.link-style-power:before {
  content: "";
  position: absolute;
  top: 0.4rem;
  left: 0;
  right: 0;
  bottom: -0.4rem;
  background-color: #fff;
  border-radius: 3rem;
  border: max(1px, 0.1rem) solid #000033;
  transition: all 0.3s ease-in-out;
}

.link-style-power .link-style-power-txt {
  position: relative;
  display: flex;
  font-size: 1.7rem;
  font-weight: 500;
  color: #fff;
  width: 25rem;
  height: 6rem;
  background-color: #100025;
  border-radius: 3rem;
  border: max(1px, 0.1rem) solid #100025;
  align-items: center;
  padding-left: 2.4rem;
  transition: all 0.3s ease-in-out;
}

.link-style-power .icon-right {
  position: absolute;
  width: max(3rem, 23px);
  height: max(3rem, 23px);
  right: 1.5rem;
  top: 50%;
  transform: translateY(-50%);
}

.link-style-power .icon-right.icon-right--link-blank:before,
.link-style-power .icon-right.icon-right--link-blank:after {
  content: none;
}

.link-style-power .icon-right .icon-right--link-blankm {
  position: absolute;
  top: 0;
  left: -1rem;
  right: 1rem;
  bottom: 0;
  background-image: url(../img/service/image33.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center center;
  transition: all 0.3s ease-in-out;
}

.link-style-power .icon-right:before {
  content: "";
  position: absolute;
  background-image: url(../img/common/icon1.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center center;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transition: all 0.3s ease-in-out;
}

.link-style-power .icon-right:after {
  content: "";
  position: absolute;
  background-image: url(../img/common/icon2.png);
  background-size: max(1.2rem, 9px) auto;
  background-repeat: no-repeat;
  background-position: center center;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transition: all 0.3s ease-in-out;
}

.link-style-power:hover .link-style-power-txt {
  background-color: #fff;
  border-color: #000033;
  color: #100025;
}

.link-style-power:hover:before {
  opacity: 0;
}

.link-style-power:hover .icon-right:after {
  background-image: url(../img/common/icon3.png);
}

.link-style-power:hover .icon-right:before {
  background-image: url(../img/common/icon4.png);
  transform: rotate(90deg);
}

.link-style-power:hover .icon-right .icon-right--link-blankm {
  background-image: url(../img/service/image34.png);
}

.link-style-power.link-style-power--white .link-style-power-txt {
  background-color: #fff;
  border-color: #000033;
  color: #100025;
}

.link-style-power.link-style-power--white .icon-right:after {
  background-image: url(../img/common/icon3.png);
}

.link-style-power.link-style-power--white .icon-right:before {
  background-image: url(../img/common/icon4.png);
}

.link-style-power.link-style-power--white:hover .link-style-power-txt {
  background-color: #100025;
  border-color: #100025;
  color: #fff;
}

.link-style-power.link-style-power--white:hover .icon-right:after {
  background-image: url(../img/common/icon2.png);
}

.link-style-power.link-style-power--white:hover .icon-right:before {
  background-image: url(../img/common/icon1.png);
}

.sec2-top-content-link {
  margin-top: 3.5rem;
}

.sec2-top-content-link .link-style-power {
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 767px) {
  .sec2-top {
    background-image: url(../img/top/image04.png);
    background-size: cover;
    background-position: left center;
    padding-bottom: 5rem;
    margin-top: -4rem;
  }
}

.cont-1300 {
  max-width: 130rem;
  width: calc(100% - 3rem);
  margin-left: auto;
  margin-right: auto;
}

.sec3-top-main {
  display: grid;
  grid-template-columns: 46% 1fr;
  -moz-column-gap: 3rem;
  column-gap: 3rem;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .sec3-top-main {
    display: block;
  }
}

.sec3-top {
  padding-top: 16rem;
}

@media screen and (max-width: 767px) {
  .sec3-top {
    padding-top: 0;
  }
}

.sec3-top-content-link {
  margin-top: 8rem;
}

@media screen and (max-width: 767px) {
  .sec3-top-content-link {
    margin-top: 0;
  }

  .sec3-top-content-link .link-style-power {
    margin-left: auto;
    margin-right: auto;
  }
}

.sec3-top-img {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.sec3-top .bg-all-left-to-right:before {
  top: 12rem;
}

.bg-all-left-to-right {
  position: relative;
}

.bg-all-left-to-right:before {
  content: "";
  position: absolute;
  z-index: -1;
  background-color: #EFF3F6;
  top: 0;
  left: 0;
  right: 0;
  height: 91.15vw;
  clip-path: polygon(0 0, 100% 62%, 100% 100%, 0 38%);
}

@media screen and (max-width: 767px) {
  .bg-all-left-to-right {
    display: none;
  }
}

.sec3-top-bottom-title {
  display: grid;
  grid-template-columns: 7.5rem 1fr;
  align-items: center;
  font-size: 3.5rem;
  font-weight: 500;
  line-height: 1.7;
  -moz-column-gap: 2.3rem;
  column-gap: 2.3rem;
  position: relative;
  z-index: 3;
  margin-bottom: 2rem;
  min-height: 9.1rem;
  line-height: 1.3;
}

@media screen and (max-width: 767px) {
  .sec3-top-bottom-title {
    font-size: 2.3rem;
    -moz-column-gap: 1.5rem;
    column-gap: 1.5rem;
    grid-template-columns: 5rem 1fr;
    min-height: auto;
  }
}

.sec3-top-bottom-content-img {
  position: relative;
  margin-bottom: 2rem;
}

.sec3-top-bottom-content-img .sec3-top-bottom-content-icon {
  position: absolute;
}

@media screen and (max-width: 767px) {
  .sec3-top-bottom-content-img .sec3-top-bottom-content-icon {
    left: 50% !important;
    transform: translateX(-50%) translateY(-98%) !important;
    top: 0 !important;
  }
}

.sec3-top-bottom-content-img .sec3-top-bottom-content-icon1 {
  left: 20rem;
  top: -9.2rem;
}

.sec3-top-bottom-content-img .sec3-top-bottom-content-icon1 img {
  width: 13rem;
}

.sec3-top-bottom-content-img .sec3-top-bottom-content-icon2 {
  left: 14rem;
  top: -9.2rem;
}

.sec3-top-bottom-content-img .sec3-top-bottom-content-icon2 img {
  width: 11rem;
}

.sec3-top-bottom-content-img .sec3-top-bottom-content-icon3 {
  left: 14rem;
  transform: translateY(-98%);
}

.sec3-top-bottom-content-img .sec3-top-bottom-content-icon3 img {
  width: 10.8rem;
}

.sec3-top-bottom-content-img .sec3-top-bottom-content-icon4 {
  left: 18rem;
  transform: translateY(-98%);
}

.sec3-top-bottom-content-img .sec3-top-bottom-content-icon4 img {
  width: 19.7rem;
}

.sec3-top-bottom-content-img .sec3-top-bottom-content-icon5 {
  left: 11.7rem;
  transform: translateY(-97%);
}

.sec3-top-bottom-content-img .sec3-top-bottom-content-icon5 img {
  width: 13.3rem;
}

.sec3-top-bottom-content-img img {
  border-radius: 1rem;
}

.sec3-top-bottom-content-img .sec3-top-bottom-content-img-main {
  position: relative;
  z-index: 2;
}

.link-style-power-nobg {
  font-size: 1.7rem;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  transition: all 0.3s ease-in-out;
  -moz-column-gap: 4rem;
  column-gap: 4rem;
  color: #767676;
}

@media screen and (max-width: 767px) {
  .link-style-power-nobg {
    -moz-column-gap: 2rem;
    column-gap: 2rem;
  }
}

.link-style-power-nobg .link-style-power-nobg-arrow {
  width: max(40px, 6rem);
  height: max(40px, 6rem);
  display: block;
  position: relative;
}

.link-style-power-nobg .link-style-power-nobg-arrow:before,
.link-style-power-nobg .link-style-power-nobg-arrow:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.link-style-power-nobg .link-style-power-nobg-arrow:before {
  background-image: url(../img/common/icon5.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% auto;
  transition: all 0.3s ease-in-out;
}

.link-style-power-nobg .link-style-power-nobg-arrow:after {
  background-image: url(../img/common/icon6.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 2.1rem auto;
}

.link-style-power-nobg:hover,
.link-style-power-nobg.is-active {
  color: #100025;
}

.link-style-power-nobg:hover .link-style-power-nobg-arrow:before,
.link-style-power-nobg.is-active .link-style-power-nobg-arrow:before {
  transform: rotate(90deg);
}

.sec3-top-bottom-content-link-big {
  margin-top: -5rem;
  margin-left: auto;
  width: -moz-max-content;
  width: max-content;
}

@media screen and (max-width: 767px) {
  .sec3-top-bottom-content-link-big {
    margin-top: 3rem;
    width: -moz-max-content;
    width: max-content;
    margin-left: auto;
    margin-right: auto;
  }
}

.sec3-top-bottom {
  padding-top: 11rem;
}

@media screen and (max-width: 767px) {
  .sec3-top-bottom {
    padding-top: 7rem;
  }
}

.sec3-top-bottom-ul {
  padding-top: 13rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 6.9%;
  column-gap: 6.9%;
  row-gap: 8rem;
}

.sec3-top-bottom-ul li {
  height: 100%;
  display: flex;
  flex-direction: column;
}

@media screen and (max-width: 1400px) {
  .sec3-top-bottom-ul {
    -moz-column-gap: 5%;
    column-gap: 5%;
  }
}

@media screen and (max-width: 767px) {
  .sec3-top-bottom-ul {
    display: block;
    padding-top: 6rem;
  }

  .sec3-top-bottom-ul li+li {
    padding-top: 5rem;
  }
}

.sec3-top-bottom-content-link-ul {
  padding-top: 7rem;
  width: -moz-max-content;
  width: max-content;
  margin-left: auto;
  margin-top: auto;
}

@media screen and (max-width: 767px) {
  .sec3-top-bottom-content-link-ul {
    padding-top: 2rem;
    width: -moz-max-content;
    width: max-content;
    margin-left: auto;
    margin-right: auto;
  }
}

.sec4-top {
  background-color: #EFF3F5;
  border-top-left-radius: 20rem;
  padding-top: 10rem;
  margin-top: 16rem;
  padding-bottom: 10rem;
}

@media screen and (max-width: 767px) {
  .sec4-top {
    padding-top: 5rem;
    margin-top: 5rem;
    padding-bottom: 5rem;
    border-top-left-radius: 5rem;
  }
}

.sec4-top-cont {
  max-width: 166rem;
  margin-left: auto;
  width: calc(100% - 1.5rem);
}

@media screen and (max-width: 767px) {
  .sec4-top-cont {
    width: 100%;
  }
}

.sec4-top-img-tlt img {
  width: 5rem;
}

.sec4-top-main-item-post-img {
  width: 100%;
  height: 47rem;
  border-radius: 2rem;
  overflow: hidden;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  padding-bottom: 6.4rem;
  cursor: pointer;
}

@media screen and (max-width: 1700px) {
  .sec4-top-main-item-post-img {
    height: 27.65vw;
    padding-bottom: 3.76vw;
  }
}

@media screen and (max-width: 1400px) {
  .sec4-top-main-item-post-img {
    height: 35vw;
  }
}

@media screen and (max-width: 767px) {
  .sec4-top-main-item-post-img {
    height: 30rem;
    padding-bottom: 3rem;
  }
}

.sec4-top-main-item-post-img:hover .sec4-top-main-item-post-img-bg {
  transform: scale(1.1);
}

.sec4-top-main-item-post-img:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #343434;
  opacity: 0.3;
  z-index: 2;
}

.sec4-top-main-item-post-img .sec4-top-main-item-post-img-bg {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transition: all 0.3s ease-in-out;
}

.sec4-top-main-item-post-img .sec4-top-main-item-post-text {
  position: relative;
  z-index: 3;
  color: #fff;
}

.sec4-top-main-item-post-img .sec4-top-main-item-post-text .txt-fs20 {
  font-weight: 500;
  margin-top: 1.5rem;
}

@media screen and (max-width: 767px) {
  .sec4-top-main-item-post-img .sec4-top-main-item-post-text .txt-fs20 {
    margin-top: 0;
  }
}

.sec4-top-main-item-post-img .sec4-top-main-item-post-text .sec4-top-main-item-post-text-top {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  row-gap: 0.5rem;
  -moz-column-gap: 1.2rem;
  column-gap: 1.2rem;
}

.sec4-top-main-item-post-img .sec4-top-main-item-post-text .sec4-top-main-item-post-cate {
  font-size: 1.4rem;
  font-weight: 500;
  border: max(1px, 0.1rem) solid #fff;
  display: inline-block;
  border-radius: 1.5rem;
  padding: 0.1rem 0.9rem;
}

.sec4-top-main-item-post-img .sec4-top-main-item-post-text .sec4-top-main-item-post-date {
  font-size: 1.5rem;
  font-weight: 700;
  display: inline-block;
}

.txt-fs20 {
  font-size: 2rem;
}

@media screen and (max-width: 767px) {
  .txt-fs20 {
    font-size: 1.7rem;
  }
}

.sec4-top-main {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
}

.sec4-top-main-left {
  width: 24rem;
}

@media screen and (max-width: 767px) {
  .sec4-top-main-left {
    width: 100%;
  }
}

.sec4-top-main-right {
  width: calc(100% - 24rem);
}

@media screen and (max-width: 1500px) {
  .sec4-top-main-right {
    width: calc(100% - 20rem);
  }
}

@media screen and (max-width: 767px) {
  .sec4-top-main-right {
    width: 100%;
    padding-left: 1.5rem;
    padding-top: 3.5rem;
  }
}

.sec4-top-gr-number-next-pre {
  font-size: 1.7rem;
  font-weight: 700;
  color: #fff;
  width: 100%;
  height: 3.7rem;
  border-radius: 3rem;
  background-color: #100025;
  overflow: hidden;
  display: grid;
  grid-template-columns: 3.5rem 1fr 3.5rem;
  align-items: center;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .sec4-top-gr-number-next-pre {
    max-width: 15rem;
    margin-top: 3rem;
  }
}

.sec4-top-gr-number-next-pre button {
  height: 3.7rem;
  width: 100%;
  border: 0;
  outline: 0;
  background-color: transparent;
  cursor: pointer;
  background-repeat: no-repeat;
  background-size: 0.7rem auto;
  background-position: center center;
}

.sec4-top-main-left {
  display: flex;
  flex-direction: column;
  max-width: 15.8rem;
  align-items: center;
  padding-left: 0.8rem;
  padding-right: 3rem;
  row-gap: 3.6rem;
}

@media screen and (max-width: 767px) {
  .sec4-top-main-left {
    max-width: 100%;
    padding-right: 1.5rem;
    padding-left: 1.5rem;
    display: block;
  }
}

.sec4-top-cont1530 {
  max-width: 153rem;
  margin-left: auto;
  width: calc(100% - 1.5rem);
  display: grid;
  grid-template-columns: 68rem max-content;
  align-items: flex-start;
  -moz-column-gap: 15rem;
  column-gap: 15rem;
  padding-top: 5rem;
}

@media screen and (max-width: 767px) {
  .sec4-top-cont1530 {
    display: block;
    width: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 4rem;
  }

  .sec4-top-cont1530 .sec4-top-cont1530-btn {
    padding-top: 2.5rem;
    width: -moz-max-content;
    width: max-content;
    margin-left: auto;
    margin-right: auto;
  }
}

.sec5-top {
  max-width: 156rem;
  width: calc(100% - 1.5rem);
}

@media screen and (max-width: 767px) {
  .sec5-top {
    width: calc(100% - 3rem);
    margin-left: auto;
    margin-right: auto;
  }
}

@media screen and (min-width: 768px) {
  .title-style1-block {
    display: block !important;
    line-height: 1;
  }
}

.sec5-top-list {
  display: grid;
  grid-template-columns: 1fr 39rem;
  -moz-column-gap: 8.6rem;
  column-gap: 8.6rem;
  align-items: center;
  row-gap: 5rem;
}

@media screen and (max-width: 1400px) {
  .sec5-top-list {
    -moz-column-gap: 5rem;
    column-gap: 5rem;
    grid-template-columns: 1fr 38rem;
  }
}

@media screen and (max-width: 767px) {
  .sec5-top-list {
    display: block;
  }
}

.sec5-top-list .sec5-top-right a {
  margin-top: 7rem;
}

@media screen and (max-width: 1400px) {
  .sec5-top-list .sec5-top-right a {
    margin-top: 3rem;
  }
}

@media screen and (max-width: 767px) {
  .sec5-top-list .sec5-top-right a {
    margin-top: 1.5rem;
  }
}

.sec5-top-list .sec5-top-left img {
  border-top-right-radius: 1rem;
  border-bottom-right-radius: 1rem;
}

.sec5-top-bg {
  padding-top: 22rem;
  padding-bottom: 22rem;
  position: relative;
  overflow: hidden;
}

@media screen and (max-width: 767px) {
  .sec5-top-bg {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.bg-all-right-to-left {
  position: relative;
}

.bg-all-right-to-left:before {
  content: "";
  position: absolute;
  z-index: -1;
  background-color: #EFF3F6;
  top: 0;
  left: 0;
  right: 0;
  height: 91.15vw;
  clip-path: polygon(100% 0, 100% 38%, 0 100%, 0 62%);
}

@media screen and (max-width: 767px) {
  .bg-all-right-to-left:before {
    content: none;
  }
}

.link-banner-height-page {
  position: relative;
  width: 100%;
  height: 37rem;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  padding-left: 5rem;
  border-radius: 1rem;
  overflow: hidden;
  cursor: pointer;
}

@media screen and (max-width: 767px) {
  .link-banner-height-page {
    height: 23rem;
    padding-left: 1.5rem;
  }
}

.link-banner-height-page:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #343434;
  opacity: 0.3;
  transition: all 0.3s ease-in-out;
}

.link-banner-height-page .eng,
.link-banner-height-page .jpn {
  color: #fff !important;
}

.link-banner-height-page .title-style1 {
  position: relative;
  z-index: 5;
}

.link-banner-height-page .link-banner-height-page-icon {
  position: absolute;
  z-index: 4;
  width: max(40px, 6rem);
  height: max(40px, 6rem);
  right: 5rem;
  top: 50%;
  transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
  .link-banner-height-page .link-banner-height-page-icon {
    right: 1.5rem;
  }
}

.link-banner-height-page .link-banner-height-page-icon:before,
.link-banner-height-page .link-banner-height-page-icon:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.link-banner-height-page .link-banner-height-page-icon:before {
  background-image: url(../img/common/icon7.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% auto;
  transition: all 0.3s ease-in-out;
}

.link-banner-height-page .link-banner-height-page-icon:after {
  background-image: url(../img/common/icon8.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 2.1rem auto;
}

.link-banner-height-page:hover .link-banner-height-page-icon:before {
  transform: rotate(90deg);
}

.link-banner-height-page:hover:before {
  opacity: 0.6;
}

.sec5-top-list2 .link-banner-height-page+.link-banner-height-page {
  margin-top: 3.5rem;
}

.sec6-top-main {
  position: relative;
  z-index: 5;
}

.cont-1200 {
  max-width: 120rem;
  width: calc(100% - 3rem);
  margin-left: auto;
  margin-right: auto;
}

.sec6-top {
  position: relative;
  padding-top: 8rem;
}

@media screen and (max-width: 767px) {
  .sec6-top {
    padding-top: 5rem;
  }
}

.sec6-top:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  max-width: 176rem;
  width: 100%;
  border-top-right-radius: 11rem;
  border-bottom-right-radius: 11rem;
  background-color: #EFF3F6;
}

@media screen and (max-width: 767px) {
  .sec6-top:before {
    border-top-right-radius: 5rem;
    border-bottom-right-radius: 5rem;
  }
}

.block-center {
  text-align: center;
}

.sec6-top-sub-title {
  position: relative;
  margin-top: 8.3rem;
  padding-top: 16.3rem;
  padding-bottom: 7rem;
}

@media screen and (max-width: 767px) {
  .sec6-top-sub-title {
    margin-top: 4rem;
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.sec6-top-sub-title:before {
  background-color: #fff;
  z-index: 1;
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.sec6-top-sub-title:after {
  background-color: #000;
  z-index: 10;
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0.7;
}

.sec6-top-bg-animetion {
  position: relative;
}

@media screen and (max-width: 767px) {
  .sec6-top-bg-animetion {
    padding-bottom: 13rem;
  }
}

.sec6-top-bg-animetion .sec6-top-bg-animetion-recruit {
  width: 100%;
  height: 13.7rem;
  background-image: url(../img/top/zindex05.png);
  background-repeat: repeat-x;
  background-size: auto 100%;
  animation: anime2 50s linear infinite;
  position: absolute;
  left: 0;
  z-index: 5;
  bottom: 23rem;
}

@media screen and (max-width: 767px) {
  .sec6-top-bg-animetion .sec6-top-bg-animetion-recruit {
    position: relative;
    bottom: auto;
    height: 7rem;
    margin-top: 3rem;
  }
}

.sec6-top-bg-animetion .sec6-top-bg-animetion1600 {
  max-width: 160rem;
  position: relative;
  width: calc(100% - 3rem);
  margin-left: auto;
  margin-right: auto;
}

.sec6-top-bg-animetion .sec6-top-bg-bong {
  position: relative;
  z-index: 3;
}

.sec6-top-bg-animetion .sec6-top-bg-bong .sec6-top-bg-bong-img {
  width: 155rem;
  animation: vertical2 2s ease-in-out infinite alternate;
}

.sec6-top-bg-animetion .sec6-top-bg-vio {
  position: relative;
  max-width: 147rem;
  margin-left: auto;
  margin-right: auto;
}

.sec6-top-bg-animetion .sec6-top-bg-vio .sec6-top-bg-vio-main {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 2;
}

.sec6-top-bg-animetion .sec6-top-bg-vio .sec6-top-bg-vio-img {
  width: 80.3rem;
}

@media screen and (max-width: 1600px) {
  .sec6-top-bg-animetion .sec6-top-bg-vio .sec6-top-bg-vio-img {
    width: 50.19vw;
  }
}

@media screen and (max-width: 767px) {
  .sec6-top-bg-animetion .sec6-top-bg-vio .sec6-top-bg-vio-img {
    width: 82.19vw;
  }
}

.sec6-top-bg-animetion .sec6-top-bg-hugo {
  width: 77rem;
  position: absolute;
  top: 0;
  right: 0;
}

@media screen and (max-width: 1600px) {
  .sec6-top-bg-animetion .sec6-top-bg-hugo {
    width: 48.13vw;
  }
}

@media screen and (max-width: 767px) {
  .sec6-top-bg-animetion .sec6-top-bg-hugo {
    width: 100%;
    top: 25vw;
  }
}

.sec6-top-bg-animetion .sec6-top-bg-hugo .sec6-top-bg-hugo1 {
  position: absolute;
  top: 4rem;
  left: -8%;
  z-index: 4;
}

@media screen and (max-width: 767px) {
  .sec6-top-bg-animetion .sec6-top-bg-hugo .sec6-top-bg-hugo1 {
    left: 0;
  }
}

.sec6-top-bg-animetion .sec6-top-bg-hugo .sec6-top-bg-hugo1 img {
  width: 28.2rem;
  animation: vertical2 2s ease-in-out infinite alternate;
  animation-delay: 0.25s;
}

@media screen and (max-width: 1600px) {
  .sec6-top-bg-animetion .sec6-top-bg-hugo .sec6-top-bg-hugo1 img {
    width: 17.63vw;
  }
}

@media screen and (max-width: 767px) {
  .sec6-top-bg-animetion .sec6-top-bg-hugo .sec6-top-bg-hugo1 img {
    width: 30.63vw;
  }
}

.sec6-top-bg-animetion .sec6-top-bg-hugo .sec6-top-bg-hugo2 {
  position: absolute;
  top: 0;
  right: 36%;
  z-index: 4;
}

@media screen and (max-width: 767px) {
  .sec6-top-bg-animetion .sec6-top-bg-hugo .sec6-top-bg-hugo2 {
    right: 27%;
    top: -16vw;
  }
}

.sec6-top-bg-animetion .sec6-top-bg-hugo .sec6-top-bg-hugo2 img {
  width: 26.7rem;
  animation: vertical2 2s ease-in-out infinite alternate;
  animation-delay: 0.3s;
}

@media screen and (max-width: 1600px) {
  .sec6-top-bg-animetion .sec6-top-bg-hugo .sec6-top-bg-hugo2 img {
    width: 16.69vw;
  }
}

@media screen and (max-width: 767px) {
  .sec6-top-bg-animetion .sec6-top-bg-hugo .sec6-top-bg-hugo2 img {
    width: 31.69vw;
  }
}

.sec6-top-bg-animetion .sec6-top-bg-hugo .sec6-top-bg-hugo3 {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 6;
  transform: translateY(39%) translateX(-27%);
}

@media screen and (max-width: 767px) {
  .sec6-top-bg-animetion .sec6-top-bg-hugo .sec6-top-bg-hugo3 {
    transform: none;
    top: 27vw;
    right: 8%;
  }
}

.sec6-top-bg-animetion .sec6-top-bg-hugo .sec6-top-bg-hugo3 img {
  width: 28.6rem;
  animation: vertical2 2s ease-in-out infinite alternate;
  animation-delay: 0.7s;
}

@media screen and (max-width: 1600px) {
  .sec6-top-bg-animetion .sec6-top-bg-hugo .sec6-top-bg-hugo3 img {
    width: 17.88vw;
  }
}

@media screen and (max-width: 767px) {
  .sec6-top-bg-animetion .sec6-top-bg-hugo .sec6-top-bg-hugo3 img {
    width: 38.88vw;
  }
}

.sec6-top-sub-content {
  position: absolute;
  top: 15.5%;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 12;
  color: #fff;
}

@media screen and (max-width: 1400px) {
  .sec6-top-sub-content {
    top: 8%;
  }
}

@media screen and (max-width: 767px) {
  .sec6-top-sub-content {
    position: relative;
    top: 0;
    left: auto;
    right: auto;
    bottom: auto;
  }
}

.sec6-top-sub-content .link-style-power--white {
  margin-top: 7rem;
}

@media screen and (max-width: 1400px) {
  .sec6-top-sub-content .link-style-power--white {
    margin-top: 4rem;
  }
}

@media screen and (max-width: 767px) {
  .sec6-top-sub-content .link-style-power--white {
    margin-left: auto;
    margin-right: auto;
  }
}

.sec6-top-sub-content-tlt {
  font-size: 5rem;
  font-weight: 700;
  line-height: 1.4;
}

@media screen and (max-width: 767px) {
  .sec6-top-sub-content-tlt {
    font-size: 3.5rem;
  }
}

.sec6-top-sub-content-tlt25 {
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.7;
  margin-top: 0.7rem;
  margin-bottom: 6rem;
}

@media screen and (max-width: 767px) {
  .sec6-top-sub-content-tlt25 {
    font-size: 2rem;
    margin-top: 1rem;
    margin-bottom: 3rem;
  }
}

@media screen and (min-width: 768px) {
  @keyframes anime2 {
    0% {
      background-position: 252.3rem 0;
    }

    100% {
      background-position: -252.3rem 0;
    }
  }
}

@media screen and (max-width: 767px) {
  @keyframes anime2 {
    0% {
      background-position: 128.9rem 0;
    }

    100% {
      background-position: -128.9rem 0;
    }
  }
}

.txt-fs16 {
  font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
  .txt-fs16 {
    font-size: 1.5rem;
  }
}

@keyframes vertical2 {
  0% {
    transform: translateY(-25px);
  }

  100% {
    transform: translateY(0);
  }
}

.sec6-top-interview {
  padding-top: 15rem;
  padding-bottom: 14rem;
}

@media screen and (max-width: 767px) {
  .sec6-top-interview {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.sec6-top-interview .link-style-power280 {
  margin-left: auto;
  margin-right: auto;
}

.top-interview-avarta {
  display: grid;
  grid-template-columns: max-content max-content max-content;
  justify-content: space-between;
  align-items: flex-start;
}

@media screen and (min-width: 768px) {
  .top-interview-avarta .top-interview-avarta-item:nth-child(2n) {
    margin-top: 3rem;
  }
}

@media screen and (max-width: 767px) {
  .top-interview-avarta {
    display: block;
  }

  .top-interview-avarta .top-interview-avarta-item+.top-interview-avarta-item {
    margin-top: 5rem;
  }
}

.top-interview-avarta-item-avarta {
  transition: all 0.3s ease-in-out;
}

.top-interview-avarta-item-avarta12 {
  width: 34.3rem;
  height: 40.9rem;
  background-repeat: no-repeat;
  background-size: auto 100%;
  background-position: bottom center;
}

@media screen and (max-width: 767px) {
  .top-interview-avarta-item-avarta12 {
    width: 100%;
    height: 41.1rem;
  }
}

.top-interview-avarta-item-avarta1 {
  background-image: url(../img/top/image31.png);
}

.top-interview-avarta-item-avarta2 {
  background-image: url(../img/top/image32.png);
}

.top-interview-avarta-item-avarta3 {
  background-image: url(../img/top/image33.png);
}

.top-interview-avarta-item {
  cursor: pointer;
}

.top-interview-avarta-item .interview-avarta-link {
  width: -moz-max-content;
  width: max-content;
  margin-left: auto;
  margin-right: auto;
}

.top-interview-avarta-item .txt-fs17 {
  color: #242424;
  text-align: center;
  line-height: 1.5;
  padding-top: 2rem;
  padding-bottom: 3rem;
}

.top-interview-avarta-item .txt-fs17 span {
  font-weight: 500;
  font-size: 2rem;
}

.top-interview-avarta-item.is-active .top-interview-avarta-item-avarta1 {
  background-image: url(../img/top/image31-hv.png);
}

.top-interview-avarta-item.is-active .top-interview-avarta-item-avarta2 {
  background-image: url(../img/top/image32-hv.png);
}

.top-interview-avarta-item.is-active .top-interview-avarta-item-avarta3 {
  background-image: url(../img/top/image33-hv.png);
}

.top-interview-avarta--sec6-top {
  padding-top: 6rem;
  padding-bottom: 5rem;
}

@media screen and (max-width: 767px) {
  .top-interview-avarta--sec6-top {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}

.link-style-power280 .link-style-power-txt {
  width: 28rem;
}

.sec7-top {
  padding-top: 17rem;
  padding-bottom: 20rem;
}

@media screen and (max-width: 767px) {
  .sec7-top {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.category-item-news {
  font-size: 1.4rem;
  color: #fff;
  display: inline-block;
  background-color: #120123;
  font-weight: 500;
  padding: 0.2rem 2.2rem;
  border-radius: 10rem;
  border: max(1px, 0.1rem) solid #120123 !important;
  transition: all 0.3s ease-in-out;
}

.news-post-item-tlt {
  font-size: 2rem;
  font-weight: 500;
  margin-top: 2rem;
}

@media screen and (max-width: 767px) {
  .news-post-item-tlt {
    display: block;
    font-size: 1.8rem;
    margin-top: 1.5rem;
    margin-bottom: 2rem;
  }
}

.sec7-top-main {
  display: grid;
  grid-template-columns: 32.6rem 1fr;
  align-items: flex-start;
  padding-top: 7rem;
}

@media screen and (max-width: 1400px) {
  .sec7-top-main {
    grid-template-columns: 28rem 1fr;
  }
}

@media screen and (max-width: 767px) {
  .sec7-top-main {
    display: block;
    padding-top: 3.5rem;
  }
}

.list-news-post-item {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}

@media screen and (max-width: 767px) {
  .list-news-post-item {
    display: block;
    padding-bottom: 3rem;
  }
}

.list-news-post-item:before {
  content: "";
  position: absolute;
  bottom: 1rem;
  left: 0;
  right: 0;
  height: max(0.1rem, 1px);
  background-color: #343434;
}

@media screen and (max-width: 767px) {
  .list-news-post-item:before {
    bottom: 0;
  }
}

.list-news-post-item .list-news-post-item-img {
  width: 25rem;
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 767px) {
  .list-news-post-item .list-news-post-item-img {
    width: 100%;
  }
}

.list-news-post-item .list-news-post-item-img img {
  border-radius: 1rem;
}

.list-news-post-item .list-news-post-item-right {
  width: calc(100% - 25rem);
  padding-left: 5rem;
  padding-top: 1rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding-right: 13rem;
  position: relative;
}

@media screen and (max-width: 767px) {
  .list-news-post-item .list-news-post-item-right {
    padding-left: 0;
    padding-top: 2.3rem;
    padding-right: 0;
    width: 100%;
    display: block;
  }
}

.list-news-post-item .news-post-item-date {
  font-size: 1.4rem;
  font-weight: 700;
  margin-top: auto;
  padding-top: 0.5rem;
  padding-bottom: 1rem;
  position: relative;
}

@media screen and (max-width: 767px) {
  .list-news-post-item .news-post-item-date {
    display: inline-block;
    padding-right: 2rem;
  }
}

.list-news-post-item .news-post-item-icon {
  width: max(40px, 6rem);
  height: max(40px, 6rem);
  position: absolute;
  bottom: 4.2rem;
  right: 4.7rem;
  cursor: pointer;
}

@media screen and (max-width: 767px) {
  .list-news-post-item .news-post-item-icon {
    position: relative;
    bottom: auto;
    right: auto;
    margin-left: auto;
    margin-right: auto;
  }
}

.list-news-post-item .news-post-item-icon:before,
.list-news-post-item .news-post-item-icon:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.list-news-post-item .news-post-item-icon:before {
  background-image: url(../img/common/icon5.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% auto;
  transition: all 0.3s ease-in-out;
}

.list-news-post-item .news-post-item-icon:after {
  background-image: url(../img/common/icon6.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 2.1rem auto;
}

.list-news-post-item .news-post-item-icon:hover:before,
.list-news-post-item .news-post-item-icon.is-active:before {
  transform: rotate(90deg);
}

.sec7-top-main-left {
  padding-top: 1rem;
}

@media screen and (max-width: 767px) {
  .sec7-top-main-left {
    padding-top: 0;
    padding-bottom: 4rem;
  }
}

.list-news-post li+li {
  margin-top: 3rem;
}

.footer1 {
  background-image: url(../img/common/image1.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  position: relative;
  height: 50rem;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .footer1 {
    display: block;
    height: auto;
    padding: 7rem 0;
    background-image: url(../img/common/image3.jpg);
  }
}

.footer1:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.7);
}

.footer1-main {
  position: relative;
  z-index: 2;
  max-width: 134rem;
  color: #fff;
  display: grid;
  grid-template-columns: 33.5% 35.8% 1fr;
}

.footer1-main .footer1-main-item {
  padding-top: 6.7rem;
  padding-bottom: 3.7rem;
}

@media screen and (max-width: 767px) {
  .footer1-main .footer1-main-item {
    padding: 0 !important;
  }
}

@media screen and (max-width: 1400px) {
  .footer1-main {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

@media screen and (max-width: 767px) {
  .footer1-main {
    display: block;
  }
}

.footer1-main .footer1-main-item:first-child {
  padding-right: 6rem;
}

@media screen and (max-width: 1400px) {
  .footer1-main .footer1-main-item:first-child {
    padding-right: 3rem;
  }
}

.footer1-main .footer1-main-item+.footer1-main-item {
  padding-left: 5rem;
  border-left: max(1px, 0.1rem) solid #fff;
}

@media screen and (max-width: 1400px) {
  .footer1-main .footer1-main-item+.footer1-main-item {
    padding-left: 3rem;
  }
}

@media screen and (max-width: 767px) {
  .footer1-main .footer1-main-item+.footer1-main-item {
    padding-top: 4rem !important;
    margin-top: 4rem;
    border-top: max(1px, 0.1rem) solid #fff;
    border-left: 0;
  }
}

.footer1-tlt-eng50 {
  color: #fff;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .footer1-tlt-eng50 {
    text-align: center;
  }
}

.footer1-tlt-eng50 .eng {
  font-size: 5rem;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .footer1-tlt-eng50 .eng {
    font-size: 3.2rem;
  }
}

.footer1-tlt-eng50 .jpn {
  font-size: 2rem;
  font-weight: 500;
  padding-top: 1rem;
}

@media screen and (max-width: 767px) {
  .footer1-tlt-eng50 .jpn {
    font-size: 1.8rem;
  }
}

.footer1-tlt-eng50 span {
  display: block;
}

.footer1-tlt-eng30 {
  color: #fff;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .footer1-tlt-eng30 {
    text-align: center;
  }
}

.footer1-tlt-eng30 .eng {
  font-size: 3rem;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .footer1-tlt-eng30 .eng {
    font-size: 2.5rem;
  }
}

.footer1-tlt-eng30 .jpn {
  font-size: 1.6rem;
  font-weight: 500;
  padding-top: 1rem;
}

.footer1-tlt-eng30 span {
  display: block;
}

.footer1-main-item-txt-contact {
  padding-top: 2.5rem;
}

@media screen and (max-width: 767px) {
  .footer1-main-item-txt-contact {
    text-align: center;
  }
}

.footer1-main-item-link {
  width: max(40px, 6rem);
  height: max(40px, 6rem);
  position: relative;
  display: flex;
}

@media screen and (max-width: 767px) {
  .footer1-main-item-link {
    position: relative;
    bottom: auto;
    right: auto;
    margin-left: auto;
    margin-right: auto;
  }
}

.footer1-main-item-link:before,
.footer1-main-item-link:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.footer1-main-item-link:before {
  background-image: url(../img/common/icon7.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% auto;
  transition: all 0.3s ease-in-out;
}

.footer1-main-item-link:after {
  background-image: url(../img/common/icon8.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 2.1rem auto;
}

.footer1-main-item-link:hover:before {
  transform: rotate(90deg);
}

.footer1-main-item-link--ft {
  margin-top: 4rem;
}

.footer1-main-item-tel {
  padding-top: 3.5rem;
}

.footer1-main-item-tel img {
  width: 34.7rem;
}

.footer1-main-item-tel .txt-fs16 {
  font-weight: 500;
  padding-top: 0.3rem;
}

@media screen and (max-width: 767px) {
  .footer1-main-item-tel .txt-fs16 {
    text-align: center;
    padding-top: 1rem;
    padding-right: 2.5rem;
  }
}

.footer2-logo-img {
  width: 34rem;
}

.footer2-logo .txt-fs17 {
  color: #242424;
}

.footer2-logo-imap {
  font-size: 1.6rem;
  color: #100025;
  font-weight: 500;
  display: inline-flex;
  width: 13rem;
  height: 3rem;
  border: max(1px, 0.1rem) solid #2C2C2C !important;
  border-radius: 1.5rem;
  justify-content: center;
  align-items: center;
  line-height: 1;
  transition: all 0.3s ease-in-out;
  margin-top: 3.5rem;
}

.footer2-logo-imap:hover {
  background-color: #100025;
  color: #fff;
}

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

  .footer2-logo-imap {
    margin-top: 0;
  }

  .footer2-logo-address {
    width: 100%;
  }

  .footer2-logo-address .txt-fs17 {
    font-size: 1.5rem;
    width: 100%;
  }
}

.footer2-logo-address {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  -moz-column-gap: 1.8rem;
  column-gap: 1.8rem;
  padding-top: 2rem;
  padding-bottom: 0.8rem;
  row-gap: 1rem;
}

@media screen and (max-width: 767px) {
  .footer2-logo-address {
    justify-content: center;
  }
}

.footer2-logo-ins {
  width: 5rem;
}

.footer2-menu-tlt {
  font-size: 2rem;
  color: #242424;
  font-weight: 700;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .footer2-menu-tlt {
    text-align: center;
  }
}

.footer2-menu-ul {
  font-size: 2rem;
  font-weight: 500;
  color: #242424;
  line-height: 1;
  padding-top: 4rem;
  display: grid;
  grid-template-columns: 23rem 21rem max-content;
}

@media screen and (max-width: 767px) {
  .footer2-menu-ul {
    display: flex;
    flex-wrap: wrap;
    font-size: 1.8rem;
    justify-content: space-between;
    row-gap: 2rem;
    padding-top: 2rem;
  }
}

.footer2-menu-ul a {
  display: inline-block;
}

.footer2-menu-ul .txt-fs17 {
  padding-top: 0.8rem;
  padding-left: 2rem;
}

@media screen and (max-width: 767px) {
  .footer2-menu-ul .txt-fs17 {
    padding-left: 1.5rem;
    padding-top: 1rem;
  }
}

.footer2-logo-menu {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
}

.footer2-menu-mgt {
  margin-top: 3rem;
}

@media screen and (max-width: 767px) {
  .footer2-menu-mgt {
    margin-top: 2rem;
  }
}

.footer2-menu-mgt2 {
  margin-top: 5.5rem;
}

@media screen and (max-width: 767px) {
  .footer2-menu-mgt2 {
    margin-top: 3rem;
  }
}

.footer2-menu {
  padding-top: 3.5rem;
}

.footer2 {
  padding-top: 12rem;
}

@media screen and (max-width: 767px) {
  .footer2 {
    padding-top: 5rem;
  }
}

@media screen and (max-width: 767px) {
  .instagram-logo-ft {
    display: block;
    width: -moz-max-content;
    width: max-content;
    margin-left: auto;
    margin-right: auto;
    margin-top: 1.5rem;
  }
}

.footer3-tlt-line {
  font-size: 2rem;
  font-weight: 500;
  color: #242424;
  border-bottom: max(1px, 0.1rem) solid #5a3c98;
  padding-bottom: 0.7rem;
  padding-left: 1.2rem;
}

@media screen and (max-width: 767px) {
  .footer3-tlt-line {
    font-size: 1.8rem;
  }
}

.footer3-link-privacy {
  color: #242424;
  line-height: 1;
  position: relative;
  top: -12rem;
}

@media screen and (max-width: 767px) {
  .footer3-link-privacy {
    text-align: right;
    padding-bottom: 2.5rem;
    top: 0;
  }
}

.footer3-link-privacy a {
  position: absolute;
  bottom: -1.2rem;
  right: 0;
  font-size: 1.6rem;
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  .footer3-link-privacy a {
    position: static;
  }
}

.footer3 {
  padding-top: 9rem;
}

@media screen and (max-width: 767px) {
  .footer3 {
    padding-top: 4rem;
  }
}

.footer3-list-logo {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  padding-top: 2.4rem;
  row-gap: 4.5rem;
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 767px) {
  .footer3-list-logo {
    display: block;
  }

  .footer3-list-logo li+li {
    padding-top: 2.5rem;
  }
}

.footer3-list-logo img {
  height: 4.3rem;
}

@media screen and (max-width: 767px) {
  .footer3-list-logo img {
    height: 3.5rem;
  }
}

.footer4-anime-tion {
  width: 100%;
  height: 15.9rem;
  background-image: url(../img/common/image4.png);
  background-repeat: repeat-x;
  background-size: auto 100%;
  animation: anime3 50s linear infinite;
  position: relative;
  z-index: -1;
}

@media screen and (max-width: 767px) {
  .footer4-anime-tion {
    height: 8rem;
  }
}

.footer4 {
  margin-top: -3rem;
  position: relative;
  padding-bottom: 3rem;
}

@media screen and (max-width: 767px) {
  .footer4 {
    margin-top: -1rem;
    padding-bottom: 1.5rem;
  }
}

.footer4:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 5rem;
  background-color: #100025;
}

@media screen and (max-width: 767px) {
  .footer4:before {
    height: 2.5rem;
  }
}

@media screen and (min-width: 768px) {
  @keyframes anime3 {
    0% {
      background-position: 328rem 0;
    }

    100% {
      background-position: -328rem 0;
    }
  }
}

@media screen and (max-width: 767px) {
  @keyframes anime3 {
    0% {
      background-position: 165rem 0;
    }

    100% {
      background-position: -165rem 0;
    }
  }
}

.scrolltop {
  position: fixed;
  z-index: 20;
  width: 7rem;
  height: 7rem;
  border: 0;
  background-color: #100025;
  bottom: 5rem;
  right: 3rem;
  padding: 1.5rem;
  border: max(1px, 0.1rem) solid #fff;
  cursor: pointer;
}

.scrolltop img {
  transform: rotate(-90deg);
}

@media screen and (max-width: 767px) {
  .scrolltop {
    right: 1.5rem;
    width: 5rem;
    height: 5rem;
    padding: 1rem;
  }
}

.cont-1600 {
  max-width: 160rem;
  width: calc(100% - 3rem);
  margin-left: auto;
  margin-right: auto;
}

.banner-page-child {
  padding-top: 31rem;
}

@media screen and (max-width: 767px) {
  .banner-page-child {
    padding-top: 10rem;
  }
}

.banner-page-child-h2 {
  line-height: 1;
}

.banner-page-child-h2 span {
  display: block;
}

.banner-page-child-h2 .eng {
  color: #100025;
  font-weight: 700;
  font-size: 9rem;
}

@media screen and (max-width: 767px) {
  .banner-page-child-h2 .eng {
    font-size: 4rem;
  }
}

.banner-page-child-h2 .jpn {
  font-size: 2rem;
  font-weight: 500;
  color: #767676;
  padding-top: 1rem;
}

@media screen and (max-width: 767px) {
  .banner-page-child-h2 .jpn {
    font-size: 1.8rem;
  }
}

.banner-page-breccum {
  font-size: max(1.6rem, 14px);
  line-height: 1;
  color: #767676;
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
  padding-top: 10.3rem;
}

@media screen and (max-width: 767px) {
  .banner-page-breccum {
    padding-top: 5rem;
  }
}

.banner-page-breccum img {
  width: max(1rem, 10px);
}

.banner-page-breccum .breccum-icon-arow {
  background-image: url(../img/about/icon1.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: center center;
  width: max(1rem, 10px);
}

.banner-page-breccum a {
  transition: all 0.3s ease-in-out;
}

.banner-page-breccum a:hover {
  color: #100025;
}

.banner-page-image {
  padding-top: 7.7rem;
}

@media screen and (max-width: 767px) {
  .banner-page-image {
    padding-top: 3rem;
  }
}

.banner-page-image-img {
  box-shadow: 0 0 0.5rem rgba(142, 142, 142, 0.2);
  border-radius: 2rem;
}

.banner-page-image-img img {
  border-radius: 2rem;
}

@media screen and (max-width: 767px) {
  .banner-page-image-img {
    border-radius: 1rem;
  }

  .banner-page-image-img img {
    border-radius: 1rem;
    min-height: 25rem;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
  }
}

.sec1-about {
  background-color: #F0F3F6;
  padding-top: 10.7rem;
  padding-bottom: 27rem;
  border-bottom-left-radius: 10rem;
  border-bottom-right-radius: 10rem;
  position: relative;
}

@media screen and (max-width: 767px) {
  .sec1-about {
    padding: 5rem 0;
    margin-top: -10rem;
    border-radius: 5rem;
    background-image: url(../img/about/image02.png);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    padding-top: 16rem;
  }
}

.sec1-about .sec1-about-map {
  position: relative;
  max-width: 140rem;
  width: calc(100% - 3rem);
  margin-left: auto;
  margin-right: auto;
}

.sec1-about .sec1-about-map:before {
  content: "";
  width: 89.2rem;
  height: 81rem;
  position: absolute;
  background-image: url(../img/about/image02.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: bottom left;
  top: -11rem;
  right: 0;
}

.sec1-about-bg-top {
  position: relative;
}

.sec1-about-bg-top:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 34rem;
  background-color: #F0F3F6;
  border-top-left-radius: 10rem;
  border-top-right-radius: 10rem;
  z-index: -1;
}

.sec1-about .txt-fs41 {
  font-weight: 700;
  line-height: 1.7;
  padding-bottom: 2.4rem;
  position: relative;
  z-index: 2;
}

.sec1-about .txt-fs17 {
  line-height: 1.9;
  position: relative;
  z-index: 2;
}

.sec2-about {
  padding-top: 10.5rem;
}

@media screen and (max-width: 767px) {
  .sec2-about {
    padding-top: 5rem;
  }
}

.sec2-about-list-img {
  overflow: hidden;
  border-radius: 0.5rem;
  box-shadow: 0 0 0.5rem rgba(142, 142, 142, 0.2);
}

.sec2-about-list-img img {
  width: 100%;
}

.txt-fs30 {
  font-size: 3rem;
}

@media screen and (max-width: 767px) {
  .txt-fs30 {
    font-size: 2rem;
  }
}

.sec2-about-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 10rem;
  column-gap: 10rem;
  row-gap: 8rem;
  padding-top: 8rem;
}

@media screen and (max-width: 767px) {
  .sec2-about-list {
    display: block;
    padding-top: 4rem;
  }

  .sec2-about-list li+li {
    padding-top: 3rem;
  }
}

.sec2-about-list .txt-fs30 {
  line-height: 1.5;
  font-weight: 500;
  margin-top: 4rem;
}

@media screen and (max-width: 767px) {
  .sec2-about-list .txt-fs30 {
    margin-top: 2rem;
  }
}

.sec2-about-list .txt-fs17 {
  line-height: 1.9;
  margin-top: 3.5rem;
}

@media screen and (max-width: 767px) {
  .sec2-about-list .txt-fs17 {
    margin-top: 1rem;
  }
}

.sec3-about {
  padding-top: 17rem;
  padding-bottom: 13.3rem;
}

@media screen and (max-width: 767px) {
  .sec3-about {
    padding: 5rem 0;
  }
}

.sec3-about iframe {
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: 2rem;
}

.sec4-about {
  width: 100%;
  height: 36.4rem;
  background-image: url(../img/about/image07.png);
  background-repeat: repeat-x;
  background-size: auto 100%;
  animation: anime4 50s linear infinite;
}

@media screen and (max-width: 767px) {
  .sec4-about {
    height: 20rem;
  }
}

@media screen and (min-width: 768px) {
  @keyframes anime4 {
    0% {
      background-position: 384rem 0;
    }

    100% {
      background-position: -384rem 0;
    }
  }
}

@media screen and (max-width: 767px) {
  @keyframes anime4 {
    0% {
      background-position: 211rem 0;
    }

    100% {
      background-position: -211rem 0;
    }
  }
}

.sec5-about {
  padding-top: 13.5rem;
}

@media screen and (max-width: 767px) {
  .sec5-about {
    padding-top: 5rem;
  }
}

.sec5-about-list {
  max-width: 130rem;
  padding-top: 17rem;
}

@media screen and (max-width: 767px) {
  .sec5-about-list {
    padding-top: 5rem;
  }
}

.sec5-about-list li+li {
  margin-top: 23rem;
}

@media screen and (max-width: 767px) {
  .sec5-about-list li+li {
    margin-top: 5rem;
  }
}

.sec5-about-list-img {
  box-shadow: 0 0 0.5rem rgba(142, 142, 142, 0.2);
  overflow: hidden;
  border-radius: 2rem;
}

.sec5-about-list-img img {
  width: 100%;
}

.sec5-about-list-main {
  display: grid;
  grid-template-columns: 48.8% 1fr;
  -moz-column-gap: 7.6%;
  column-gap: 7.6%;
  align-items: center;
}

@media screen and (max-width: 1400px) {
  .sec5-about-list-main {
    -moz-column-gap: 4%;
    column-gap: 4%;
  }
}

@media screen and (max-width: 767px) {
  .sec5-about-list-main {
    display: flex;
    flex-direction: column-reverse;
  }
}

@media screen and (min-width: 768px) {
  .sec5-about-list-main .sec3-top-bottom-title {
    grid-template-columns: 8.5rem 1fr;
  }
}

.sec5-about-list-main .sec5-about-list-content {
  position: relative;
  height: 100%;
  padding-top: 6rem;
}

@media screen and (min-width: 768px) {
  .sec5-about-list-main .sec5-about-list-content .link-style-power-sec5-about {
    position: absolute;
    bottom: 4.4rem;
    left: 0;
  }
}

@media screen and (max-width: 767px) {
  .sec5-about-list-main .sec5-about-list-content {
    padding-top: 0;
  }

  .sec5-about-list-main .sec5-about-list-content .link-style-power-sec5-about {
    margin-top: 1.5rem;
    margin-left: auto;
    margin-right: auto;
    width: -moz-max-content;
    width: max-content;
    margin-bottom: 2.5rem;
  }
}

.sec5-about-list-main .sec5-about-list-content .txt-fs30 {
  font-weight: 700;
  line-height: 1.5;
  position: relative;
}

.sec5-about-list-main .sec5-about-list-content .txt-fs17 {
  margin-top: 3.5rem;
}

@media screen and (max-width: 767px) {
  .sec5-about-list-main .sec5-about-list-content .txt-fs17 {
    margin-top: 2rem;
  }
}

.sec5-about-list-icon {
  position: relative;
  max-width: 48rem;
}

.sec5-about-list-icon .sec5-about-list-icon-img1 {
  width: 13rem;
  top: -1rem;
}

.sec5-about-list-icon .sec5-about-list-icon-img2 {
  width: 10.9rem;
  top: -1rem;
}

@media screen and (min-width: 768px) {
  .sec5-about-list-icon .sec5-about-list-icon-img2 {
    transform: translateX(-70%) !important;
  }
}

.sec5-about-list-icon .sec5-about-list-icon-img3 {
  width: 13rem;
  top: -4.5rem;
}

.sec5-about-list-icon .sec5-about-list-icon-img4 {
  width: 19.7rem;
  top: -2rem;
}

.sec5-about-list-icon .sec5-about-list-icon-img5 {
  width: 14.6rem;
  top: -1rem;
  transform: translateX(-35%) !important;
}

.sec5-about-list-icon .sec5-about-list-icon-img {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (max-width: 767px) {
  .sec5-about-list-icon .sec5-about-list-icon-img {
    top: 0;
  }
}

.lh19 {
  line-height: 1.9;
}

.sec5-about-list-main-skin {
  position: relative;
}

.sec5-about-list-main-skin:before {
  content: "";
  position: absolute;
  top: -8rem;
  bottom: -8rem;
  background-color: #F0F3F6;
  right: 21rem;
  width: 100vw;
  z-index: -1;
  border-top-right-radius: 3.6rem;
  border-bottom-right-radius: 3.6rem;
}

@media screen and (max-width: 767px) {
  .sec5-about-list-main-skin:before {
    content: none;
  }
}

.cont-1500 {
  max-width: 150rem;
  width: calc(100% - 3rem);
  margin-left: auto;
  margin-right: auto;
}

.sec6-about-main {
  background-color: #F0F3F6;
  border-radius: 9rem;
  padding-top: 10.5rem;
}

@media screen and (max-width: 767px) {
  .sec6-about-main {
    border-radius: 5rem;
    padding-top: 5rem;
    width: 100%;
  }
}

.sec6-about {
  padding-top: 22.5rem;
  padding-bottom: 25rem;
}

@media screen and (max-width: 767px) {
  .sec6-about {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.sec6-about-item-number {
  font-size: 3rem;
  font-weight: 700;
  color: #100025;
  line-height: 1;
  position: absolute;
  top: -1.3rem;
  left: 0;
}

@media screen and (max-width: 767px) {
  .sec6-about-item-number {
    font-size: 2.5rem;
  }
}

.txt-fs25 {
  font-size: 2.5rem;
}

@media screen and (max-width: 767px) {
  .txt-fs25 {
    font-size: 1.9rem;
  }
}

.sec6-about-item {
  position: relative;
}

@media screen and (min-width: 768px) {
  .sec6-about-item.sec6-about-item-icon:before {
    content: "";
    width: 5.4rem;
    height: 2.7rem;
    background-image: url(../img/about/image23.png);
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: right center;
    position: absolute;
    left: calc(100% + 2.8rem);
    top: 9rem;
  }
}

@media screen and (min-width: 768px) and (max-width: 1400px) {
  .sec6-about-item.sec6-about-item-icon:before {
    left: calc(100% + 1.5rem);
  }
}

.sec6-about-item .txt-fs25 {
  font-weight: 500;
  line-height: 1.7;
  margin-top: 3rem;
  margin-bottom: 0.8rem;
}

@media screen and (max-width: 767px) {
  .sec6-about-item .txt-fs25 {
    margin-top: 1.5rem;
  }
}

.sec6-about-item .txt-fs17 {
  line-height: 1.9;
}

.sec6-about-ul {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  -moz-column-gap: 11.5rem;
  column-gap: 11.5rem;
  row-gap: 13rem;
  padding-top: 8.7rem;
  padding-bottom: 15rem;
}

@media screen and (max-width: 1400px) {
  .sec6-about-ul {
    -moz-column-gap: 8rem;
    column-gap: 8rem;
  }
}

@media screen and (max-width: 767px) {
  .sec6-about-ul {
    display: block;
    padding-top: 4rem;
    padding-bottom: 5rem;
  }

  .sec6-about-ul li:before {
    content: "";
    width: 5.4rem;
    height: 2.7rem;
    background-image: url(../img/about/image23.png);
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: right center;
    position: absolute;
    top: calc(100% + 2rem);
    left: 50%;
    transform: translateX(-50%) rotate(90deg) scale(0.8);
  }

  .sec6-about-ul li:last-child:before {
    content: none;
  }

  .sec6-about-ul li+li {
    margin-top: 8rem;
  }
}

.txt-fs35 {
  font-size: 3.5rem;
}

@media screen and (max-width: 767px) {
  .txt-fs35 {
    font-size: 2.2rem;
  }
}

.sec1-service-top {
  text-align: center;
  max-width: 62rem;
  margin-left: auto;
  margin-right: auto;
  padding-top: 11.5rem;
}

@media screen and (max-width: 767px) {
  .sec1-service-top {
    padding-top: 5rem;
  }
}

.sec1-service-top .txt-fs35 {
  line-height: 1.7;
  font-weight: 700;
  margin-bottom: 2.5rem;
}

.sec1-service-list-link {
  display: inline-block;
  position: relative;
}

.sec1-service-list-link:before {
  content: "";
  width: 2.5rem;
  height: 4rem;
  background-image: url(../img/service/image02.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: bottom center;
  top: 93%;
  left: 50%;
  transform: translateX(-50%);
  position: absolute;
  transition: all 0.3s ease-in-out;
}

@media screen and (max-width: 767px) {
  .sec1-service-list-link:before {
    width: 2rem;
    height: 3.2rem;
  }
}

.sec1-service-list-link:hover:before {
  top: 97%;
}

.sec1-service-list {
  display: grid;
  grid-template-columns: 21rem 21rem 21rem 21rem 21rem;
  align-items: flex-start;
  justify-content: space-between;
  padding-top: 7.8rem;
}

@media screen and (max-width: 767px) {
  .sec1-service-list {
    display: flex;
    flex-wrap: wrap;
    -moz-column-gap: 4%;
    column-gap: 4%;
    justify-content: center;
    row-gap: 5rem;
    padding-top: 5rem;
  }

  .sec1-service-list li {
    width: 48%;
  }
}

.sec1-service {
  padding-bottom: 33rem;
}

@media screen and (max-width: 767px) {
  .sec1-service {
    padding-bottom: 5rem;
  }
}

@media screen and (min-width: 768px) {
  .sec2-service-style1-left .sec3-top-bottom-title {
    grid-template-columns: 8.3rem 1fr;
    margin-bottom: 3.8rem;
  }
}

.sec2-service-style1-left .sec2-service-style1-left-img {
  overflow: hidden;
  border-radius: 2rem;
  box-shadow: 0 0 0.5rem rgba(142, 142, 142, 0.2);
}

.sec2-service-style1-left .sec2-service-style1-left-img img {
  width: 100%;
}

.sec2-service-style1-left .sec2-service-style1-left-icon {
  position: relative;
}

.sec2-service-style1-left .sec2-service-style1-left-icon .sec2-service-style1-left-icon-main {
  position: absolute;
  bottom: 100%;
}

.sec2-service-style1-left .sec2-service-style1-left-icon .sec2-service-style1-left-icon-main.sec2-service-style1-left-icon-main1 {
  width: 24.7rem;
  right: 6rem;
}

@media screen and (max-width: 767px) {
  .sec2-service-style1-left .sec2-service-style1-left-icon .sec2-service-style1-left-icon-main.sec2-service-style1-left-icon-main1 {
    width: 15rem;
    right: 3rem;
  }
}

.sec2-service-style1-left .sec2-service-style1-left-icon .sec2-service-style1-left-icon-main.sec2-service-style1-left-icon-main2 {
  width: 20rem;
  right: 10.7rem;
}

@media screen and (max-width: 767px) {
  .sec2-service-style1-left .sec2-service-style1-left-icon .sec2-service-style1-left-icon-main.sec2-service-style1-left-icon-main2 {
    width: 15rem;
    right: 3rem;
  }
}

.sec2-service-style1-left .sec2-service-style1-left-icon .sec2-service-style1-left-icon-main.sec2-service-style1-left-icon-main3 {
  width: 20.6rem;
  right: 13.5rem;
}

@media screen and (max-width: 767px) {
  .sec2-service-style1-left .sec2-service-style1-left-icon .sec2-service-style1-left-icon-main.sec2-service-style1-left-icon-main3 {
    width: 15rem;
    right: 3rem;
  }
}

.sec2-service-style1-left .sec2-service-style1-left-icon .sec2-service-style1-left-icon-main.sec2-service-style1-left-icon-main4 {
  width: 31rem;
  right: 1.5rem;
}

@media screen and (max-width: 767px) {
  .sec2-service-style1-left .sec2-service-style1-left-icon .sec2-service-style1-left-icon-main.sec2-service-style1-left-icon-main4 {
    width: 20rem;
    right: 3rem;
  }
}

.sec2-service-style1-left .sec2-service-style1-left-icon .sec2-service-style1-left-icon-main.sec2-service-style1-left-icon-main5 {
  width: 20rem;
  right: 14rem;
}

@media screen and (max-width: 767px) {
  .sec2-service-style1-left .sec2-service-style1-left-icon .sec2-service-style1-left-icon-main.sec2-service-style1-left-icon-main5 {
    width: 15rem;
    right: 3rem;
  }
}

.sec2-service-style1 {
  display: grid;
  max-width: 130rem;
  grid-template-columns: 47% 1fr;
  -moz-column-gap: 8.8rem;
  column-gap: 8.8rem;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 1400px) {
  .sec2-service-style1 {
    -moz-column-gap: 5rem;
    column-gap: 5rem;
  }
}

@media screen and (max-width: 767px) {
  .sec2-service-style1 {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .sec2-service-style1 .sec3-top-bottom-title {
    padding-left: 10rem;
  }
}

.sec2-service-style1-right {
  padding-top: 17.5rem;
}

@media screen and (max-width: 767px) {
  .sec2-service-style1-right {
    padding-top: 3rem;
  }
}

.sec2-service-style1-right .txt-fs30 {
  line-height: 1.5;
  font-weight: 700;
  padding-bottom: 3.5rem;
}

@media screen and (max-width: 767px) {
  .sec2-service-style1-right .txt-fs30 {
    padding-bottom: 1.5rem;
  }
}

@media screen and (max-width: 767px) {
  .sec2-service {
    padding-top: 8rem;
  }
}

.sec2-service-list-info {
  border-radius: 1rem;
  background-color: #F0F3F6;
  padding-top: 7rem;
  margin-top: 11.5rem;
  padding-bottom: 9rem;
}

@media screen and (max-width: 767px) {
  .sec2-service-list-info {
    margin-top: 5rem;
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.sec2-service-list-info-tlt {
  text-align: center;
  font-weight: 500;
}

.sec2-service-list-info-ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  -moz-column-gap: 5%;
  column-gap: 5%;
  row-gap: 7rem;
  padding-top: 8.5rem;
}

@media screen and (max-width: 1400px) {
  .sec2-service-list-info-ul {
    -moz-column-gap: 2%;
    column-gap: 2%;
  }
}

@media screen and (max-width: 767px) {
  .sec2-service-list-info-ul {
    display: block;
    padding-top: 5.5rem;
  }

  .sec2-service-list-info-ul li+li {
    margin-top: 5rem;
  }
}

.sec2-service-list-info-ul li {
  width: 30%;
  border-radius: 1rem;
  position: relative;
  background-color: #fff;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  padding-bottom: 3rem;
}

@media screen and (max-width: 1400px) {
  .sec2-service-list-info-ul li {
    width: 32%;
  }
}

@media screen and (max-width: 767px) {
  .sec2-service-list-info-ul li {
    width: 100%;
  }
}

.sec2-service-list-info-ul li .sec2-service-list-info-number {
  font-size: 4rem;
  font-weight: 700;
  line-height: 1;
  color: #100025;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}

.sec2-service-list-info-ul li .txt-fs25 {
  font-weight: 500;
  text-align: center;
}

.sec2-service-list-info-ul li .sec2-service-list-info-img {
  text-align: center;
  height: 19rem;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 4.5rem;
}

.title-style3 {
  font-size: 3.5rem;
  font-weight: 500;
  border-bottom: max(0.2rem, 1px) solid #343434;
  padding-bottom: 2.6rem;
}

@media screen and (max-width: 767px) {
  .title-style3 {
    font-size: 2.5rem;
    padding-bottom: 1.5rem;
  }
}

.sec2-service-list-table {
  padding-top: 10rem;
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 767px) {
  .sec2-service-list-table {
    padding-top: 5rem;
  }
}

.sec2-service-list-table .ul-service-list-table {
  display: grid;
  grid-template-columns: 55rem 55rem;
  justify-content: space-between;
  row-gap: 9rem;
}

@media screen and (max-width: 767px) {
  .sec2-service-list-table .ul-service-list-table {
    display: block;
  }

  .sec2-service-list-table .ul-service-list-table li+li {
    margin-top: 3rem;
  }
}

.sec2-service-list-table .ul-service-list-table li .txt-fs28 {
  margin-top: 3.2rem;
  font-weight: 500;
  margin-bottom: 0.5rem;
}

@media screen and (max-width: 767px) {
  .sec2-service-list-table .ul-service-list-table li .txt-fs28 {
    margin-top: 1.5rem;
  }
}

.sec2-service-list-table .ul-service-list-table li img {
  border-radius: 1rem;
  box-shadow: 0 0 0.5rem rgba(142, 142, 142, 0.2);
}

.txt-fs28 {
  font-size: 2.8rem;
}

@media screen and (max-width: 767px) {
  .txt-fs28 {
    font-size: 2rem;
  }
}

.title-style3--table {
  margin-bottom: 5.5rem;
}

@media screen and (max-width: 767px) {
  .title-style3--table {
    margin-bottom: 3rem;
  }
}

.sec3-service {
  background-color: #F0F3F6;
  border-radius: 10rem;
  padding-top: 12rem;
  padding-bottom: 17rem;
}

.sec3-service.sec3-service1 {
  margin-top: 16rem;
}

@media screen and (max-width: 767px) {
  .sec3-service.sec3-service1 {
    margin-top: 5rem;
  }
}

@media screen and (max-width: 767px) {
  .sec3-service {
    padding: 5rem 0;
    border-radius: 5rem;
    padding-top: 8rem;
  }
}

@media screen and (min-width: 1401px) {
  .sec2-service-style12 {
    -moz-column-gap: 14rem;
    column-gap: 14rem;
  }
}

@media screen and (min-width: 1401px) {
  .sec2-service-style1--col130 {
    -moz-column-gap: 14rem;
    column-gap: 14rem;
  }
}

@media screen and (min-width: 768px) {
  .sec2-service-list-table2 {
    padding-top: 8rem !important;
    margin-right: 0;
  }
}

@media screen and (min-width: 768px) {
  .sec3-top-bottom-title-longer {
    position: absolute;
    left: 20.4rem;
    top: 50%;
    transform: translateY(-50%);
    width: -moz-max-content;
    width: max-content;
  }
}

.sec4-service {
  padding-top: 17.4rem;
}

@media screen and (max-width: 767px) {
  .sec4-service {
    padding-top: 8rem;
  }
}

@media screen and (min-width: 768px) {
  .sec2-service-list-table3 {
    padding-top: 8rem;
  }
}

@media screen and (min-width: 768px) {
  .sec2-service-style1-right-linka {
    padding-top: 13rem !important;
  }

  .sec2-service-style1-right-linka a {
    margin-top: 5rem;
  }

  .sec2-service-style1-right-linka a .link-style-power-txt {
    width: 28.5rem !important;
  }
}

@media screen and (max-width: 767px) {
  .sec2-service-style1-right-linka a {
    margin-top: 3rem;
    margin-left: auto;
    margin-right: auto;
  }
}

.list-product-servicesec4 {
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
  padding-top: 8rem;
}

.list-product-servicesec4 .list-product-servicesec4-item+.list-product-servicesec4-item {
  padding-top: 13.5rem;
}

@media screen and (max-width: 767px) {
  .list-product-servicesec4 .list-product-servicesec4-item+.list-product-servicesec4-item {
    padding-top: 5rem;
  }
}

@media screen and (max-width: 767px) {
  .list-product-servicesec4 {
    padding-top: 5rem;
  }
}

.txt-fs18 {
  font-size: 1.8rem;
}

@media screen and (max-width: 767px) {
  .txt-fs18 {
    font-size: 1.6rem;
  }
}

.ul-product-servicesec4 {
  font-weight: 500;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  -moz-column-gap: 4.5rem;
  column-gap: 4.5rem;
  padding-top: 1rem;
}

@media screen and (max-width: 767px) {
  .ul-product-servicesec4 {
    display: block;
    padding-top: 0;
  }

  .ul-product-servicesec4 li+li {
    padding-top: 3rem;
  }
}

.ul-product-servicesec4 img {
  border-radius: 1rem;
}

.ul-product-servicesec4 .txt-fs18 {
  margin-top: 1.2rem;
}

@media screen and (min-width: 768px) {
  .sec4-top--service {
    margin-top: 24rem !important;
    padding-top: 22.2rem !important;
    padding-bottom: 27rem !important;
  }
}

.link-parent-page {
  position: relative;
}

.link-parent-page .link-child-page {
  position: absolute;
  top: -12rem;
  left: 0;
}

.list-category-works {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  -moz-column-gap: 2.3rem;
  column-gap: 2.3rem;
  row-gap: 4rem;
  align-items: center;
  padding-bottom: 9.5rem;
}

@media screen and (max-width: 767px) {
  .list-category-works {
    grid-template-columns: 1fr 1fr;
    -moz-column-gap: 1rem;
    column-gap: 1rem;
    padding-bottom: 3rem;
    row-gap: 2rem;
  }
}

.category-works-normal {
  position: relative;
  display: block;
}

.category-works-normal:hover span,
.category-works-normal.is-active span {
  transform: translateY(1rem);
}

.category-works-normal:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 10rem;
  background-color: #fff;
  border: max(1px, 0.1rem) solid #100025;
  transform: translateY(1rem);
}

.category-works-normal span {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.9rem;
  font-weight: 500;
  color: #fff;
  border-radius: 10rem;
  background-color: #100025;
  height: 7rem;
  transition: all 0.3s ease-in-out;
}

@media screen and (max-width: 767px) {
  .category-works-normal span {
    font-size: 1.6rem;
    height: 6rem;
  }
}

.sec1-works {
  padding-top: 17.5rem;
}

@media screen and (max-width: 767px) {
  .sec1-works {
    padding-top: 5rem;
  }
}

.list-post-works-index {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  -moz-column-gap: 4rem;
  column-gap: 4rem;
  row-gap: 8rem;
}

@media screen and (max-width: 767px) {
  .list-post-works-index {
    display: block;
  }

  .list-post-works-index li+li {
    margin-top: 4rem;
  }
}

.list-post-works-index img {
  border-radius: 1.6rem;
}

.category-post-works {
  display: inline-block;
  font-size: 1.4rem;
  color: #fff;
  background-color: #100025;
  font-weight: 500;
  padding: 0.2rem 1.5rem;
  border-radius: 10rem;
}

.date-post-works {
  font-size: 1.4rem;
  font-weight: 700;
}

.list-post-works-cate-date {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 1.8rem;
  column-gap: 1.8rem;
  row-gap: 0.5rem;
}

.post-works-index-content {
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 3rem;
}

.post-works-index-content .txt-fs20 {
  color: #100025;
  font-weight: 500;
  margin-top: 1.6rem;
  display: inline-block;
}

.sec1-detail-works {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-top: 17.5rem;
}

@media screen and (max-width: 767px) {
  .sec1-detail-works {
    display: block;
    padding-top: 5rem;
  }
}

.sec1-detail-works .sec1-detail-works-left {
  width: 50%;
}

@media screen and (max-width: 767px) {
  .sec1-detail-works .sec1-detail-works-left {
    width: 100%;
  }
}

.sec1-detail-works .sec1-detail-works-left img {
  border-radius: 1rem;
}

.sec1-detail-works .sec1-detail-works-right {
  width: 50%;
  max-width: 47rem;
  padding-top: 7rem;
}

@media screen and (max-width: 767px) {
  .sec1-detail-works .sec1-detail-works-right {
    width: 100%;
    max-width: 100%;
    padding-bottom: 0;
    padding-top: 3rem;
  }
}

.sec1-detail-works .sec1-detail-works-right .txt-fs30 {
  color: #100025;
  font-weight: 500;
  line-height: 1.5;
  margin-top: 1.5rem;
  margin-bottom: 7.3rem;
}

@media screen and (max-width: 767px) {
  .sec1-detail-works .sec1-detail-works-right .txt-fs30 {
    margin-bottom: 2rem;
  }
}

.gr-btn-arrow-slider-works-toggle {
  width: 5rem;
  height: 5rem;
  position: relative;
  cursor: pointer;
}

.gr-btn-arrow-slider-works-toggle:before,
.gr-btn-arrow-slider-works-toggle:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.gr-btn-arrow-slider-works-toggle:before {
  background-image: url(../img/common/icon5.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center center;
  transition: all 0.3s ease-in-out;
}

.gr-btn-arrow-slider-works-toggle:after {
  background-size: 2rem auto;
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url(../img/common/icon6.png);
}

.gr-btn-arrow-slider-works-toggle.gr-btn-arrow-slider-works-toggle1:after {
  transform: rotate(180deg);
}

.gr-btn-arrow-slider-works-toggle.gr-btn-arrow-slider-works-toggle1:hover:before {
  transform: rotate(-90deg);
}

.gr-btn-arrow-slider-works-toggle.gr-btn-arrow-slider-works-toggle2:hover:before {
  transform: rotate(90deg);
}

.gr-btn-arrow-slider-works-item-number {
  font-size: 1.8rem;
  font-weight: 700;
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  background-color: #100025;
  border-radius: 2.5rem;
  width: 16rem;
  height: 5rem;
}

.gr-btn-arrow-slider-works {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 1.7rem;
  column-gap: 1.7rem;
  padding-top: 4rem;
}

.sec1-detail-works-link-pre {
  width: -moz-max-content;
  width: max-content;
  margin-left: auto;
  margin-right: auto;
  padding-top: 18rem;
  padding-bottom: 6.5rem;
}

@media screen and (max-width: 767px) {
  .sec1-detail-works-link-pre {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.sec1-company {
  padding-top: 16.4rem;
}

@media screen and (max-width: 767px) {
  .sec1-company {
    padding-top: 5rem;
  }
}

.sec1-layout1-content {
  max-width: 107.8rem;
  margin-left: auto;
}

.sec1-layout1-content .txt-fs17 {
  max-width: 96rem;
}

.sec1-layout2-content {
  max-width: 63rem;
  margin-left: auto;
}

.sec1-company-ck {
  text-align: right;
  padding-top: 3.8rem;
}

.sec1-company-ck img {
  width: 29.2rem;
}

.sec1-company-content-12 {
  padding-top: 6.5rem;
}

@media screen and (max-width: 767px) {
  .sec1-company-content-12 {
    padding-top: 3rem;
  }
}

.sec1-layout2-flex {
  display: grid;
  grid-template-columns: 1fr 43rem;
  -moz-column-gap: 8.3rem;
  column-gap: 8.3rem;
}

@media screen and (max-width: 767px) {
  .sec1-layout2-flex {
    display: block;
  }
}

.sec1-layout2-right {
  padding-top: 1rem;
}

@media screen and (max-width: 767px) {
  .sec1-layout2-right {
    padding-top: 3rem;
  }
}

.sec1-layout2-right img {
  border-radius: 1rem;
  box-shadow: 0 0 0.5rem rgba(142, 142, 142, 0.2);
}

.sec2-company {
  padding-top: 14rem;
  padding-bottom: 18.5rem;
}

@media screen and (max-width: 767px) {
  .sec2-company {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.sec2-company-main {
  display: grid;
  grid-template-columns: 36.4rem 70rem;
  justify-content: space-between;
  align-items: center;
  padding-top: 5.6rem;
}

@media screen and (max-width: 767px) {
  .sec2-company-main {
    padding-top: 3rem;
    display: block;
  }
}

@media screen and (max-width: 767px) {
  .sec2-company-right {
    padding-top: 3rem;
  }
}

.sec2-company-right .txt-fs30 {
  font-weight: 700;
  line-height: 1.7;
  margin-bottom: 1.2rem;
}

.sec3-company img {
  width: 100%;
  min-height: 18rem;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
}

.sec4-company {
  padding-top: 14rem;
  padding-bottom: 13.5rem;
}

@media screen and (max-width: 767px) {
  .sec4-company {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.table-default {
  width: 100%;
}

.table-default tr td:first-child {
  width: 20.5rem;
  padding-left: 5rem;
}

@media screen and (max-width: 767px) {
  .table-default tr td:first-child {
    color: #fff;
    background-color: #100025;
  }
}

.table-default tr td:last-child {
  width: calc(100% - 20.5rem);
}

.table-default tr td {
  border-bottom: max(1px, 0.1rem) solid #343434;
  padding-top: 3.3rem;
  padding-bottom: 3.3rem;
}

@media screen and (max-width: 767px) {
  .table-default tr td {
    width: 100% !important;
    float: left;
    padding: 1.5rem !important;
    border: 0 !important;
  }
}

.table-default tr:first-child td {
  border-top: max(1px, 0.1rem) solid #343434;
}

.table-history {
  width: 100%;
}

.table-history tr td:first-child {
  width: 30rem;
  font-weight: 700;
  font-size: 2rem;
  padding-left: 5rem;
}

@media screen and (max-width: 767px) {
  .table-history tr td:first-child {
    padding-left: 0;
    font-size: 1.7rem;
    width: 12rem;
  }
}

.table-history tr td:first-child .eng {
  font-size: 6rem;
  display: inline-block;
  padding-right: 2.4rem;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .table-history tr td:first-child .eng {
    font-size: 3rem;
    padding-right: 1rem;
  }
}

.table-history tr td:nth-child(2) {
  width: 9rem;
}

@media screen and (max-width: 767px) {
  .table-history tr td:nth-child(2) {
    width: 4rem;
  }
}

.table-history tr td:last-child {
  width: calc(100% - 39rem);
}

@media screen and (max-width: 767px) {
  .table-history tr td:last-child {
    width: calc(100% - 16rem);
  }
}

.table-history tr td {
  vertical-align: middle;
  border-bottom: max(1px, 0.1rem) solid #343434;
  padding-top: 1.9rem;
  padding-bottom: 1.9rem;
}

@media screen and (max-width: 767px) {
  .table-history tr td {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
}

.table-history tr:first-child td {
  border-top: max(1px, 0.1rem) solid #343434;
}

.sec4-company-table {
  padding-top: 6.7rem;
}

@media screen and (max-width: 767px) {
  .sec4-company-table {
    padding-top: 3rem;
  }
}

.sec5-company-table {
  padding-top: 7rem;
}

@media screen and (max-width: 767px) {
  .sec5-company-table {
    padding-top: 3rem;
  }
}

.sec6-company {
  padding-top: 13.8rem;
}

@media screen and (max-width: 767px) {
  .sec6-company {
    padding-top: 5rem;
  }
}

.sec6-company-main {
  max-width: 115rem;
  margin-left: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding-top: 7rem;
  padding-bottom: 5rem;
}

@media screen and (max-width: 767px) {
  .sec6-company-main {
    display: block;
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}

.sec6-company-main-left .txt-fs25 {
  font-weight: 500;
  padding-bottom: 2rem;
  transform: translateX(-1.3rem);
}

@media screen and (max-width: 767px) {
  .sec6-company-main-left .txt-fs25 {
    padding-bottom: 1rem;
  }
}

.sec6-company-main-right {
  width: 60rem;
}

@media screen and (max-width: 767px) {
  .sec6-company-main-right {
    width: 100%;
    padding-top: 3rem;
  }
}

.sec6-company-main-right img {
  border-radius: 1rem;
  box-shadow: 0 0 0.5rem rgba(142, 142, 142, 0.2);
}

.company-google-map iframe {
  width: 100%;
  height: 36rem;
  border-radius: 1rem;
}

@media screen and (max-width: 767px) {
  .company-google-map iframe {
    height: 25rem;
  }
}

.sec7-company-googlemap iframe {
  width: 100%;
  height: 36rem;
  border-radius: 1rem;
}

@media screen and (max-width: 767px) {
  .sec7-company-googlemap iframe {
    height: 25rem;
  }
}

.sec7-company-main {
  max-width: 115rem;
  margin-left: auto;
  padding-bottom: 4rem;
}

@media screen and (max-width: 767px) {
  .sec7-company-main {
    padding-bottom: 3rem;
  }
}

.sec7-company-main .txt-fs25 {
  font-weight: 500;
  padding-bottom: 2rem;
  transform: translateX(-1.3rem);
}

@media screen and (max-width: 767px) {
  .sec7-company-main .txt-fs25 {
    padding-bottom: 1rem;
  }
}

.sec7-company {
  padding-top: 9.7rem;
}

@media screen and (max-width: 767px) {
  .sec7-company {
    padding-top: 4rem;
  }
}

.cont-960 {
  max-width: 96rem;
  width: calc(100% - 3rem);
  margin-left: auto;
  margin-right: auto;
}

.sec8-company {
  padding-top: 19rem;
  padding-bottom: 25rem;
}

@media screen and (max-width: 767px) {
  .sec8-company {
    padding: 5rem 0;
  }
}

.sec1-group-img img {
  border-radius: 1rem;
  box-shadow: 0 0 0.5rem rgba(142, 142, 142, 0.2);
}

.sec1-group-img-logo {
  display: grid;
  grid-template-columns: 50% 1fr;
  -moz-column-gap: 9.6rem;
  column-gap: 9.6rem;
  align-items: center;
}

.sec1-group-img-logo.sec1-group-img-logo--flexstart {
  align-items: flex-start;
}

@media screen and (max-width: 767px) {
  .sec1-group-img-logo {
    display: block;
  }
}

.sec1-group-logo .txt-fs17 {
  margin-top: 3rem;
}

.gr-btn-arrow-slider-works--index {
  padding-top: 10rem;
  padding-bottom: 25.3rem;
}

.gr-btn-arrow-slider-works--index .gr-btn-arrow-slider-works-toggle {
  display: block;
}

.gr-btn-arrow-slider-works--index .gr-btn-arrow-slider-works-toggle[data-cursor=nolink] {
  display: none;
}

@media screen and (max-width: 767px) {
  .gr-btn-arrow-slider-works--index {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

@media screen and (min-width: 768px) {
  .gr-btn-arrow-slider-works--index {
    -moz-column-gap: 3rem;
    column-gap: 3rem;
  }

  .gr-btn-arrow-slider-works--index .gr-btn-arrow-slider-works-toggle {
    width: 5.8rem;
    height: 5.8rem;
  }
}

.works-no-pagelenght {
  padding-top: 10rem;
}

@media screen and (max-width: 767px) {
  .works-no-pagelenght {
    padding-top: 5rem;
  }
}

.link-style-power-txt335 {
  width: 33.5rem !important;
}

@media screen and (max-width: 767px) {
  .link-style-power-txt335 {
    width: 32rem !important;
  }
}

.link-style-power-txt450 {
  width: 45rem !important;
}

@media screen and (max-width: 767px) {
  .link-style-power-txt450 {
    width: 30rem !important;
    line-height: 1.5;
  }
}

.link-style-power-txt290 {
  width: 29rem !important;
}

@media screen and (max-width: 767px) {
  .link-style-power-txt290 {
    width: 27rem !important;
  }
}

.sec1-group-item {
  border-bottom: max(0.1rem, 1px) solid #343434;
}

@media screen and (min-width: 768px) {
  .sec1-group-item1-link {
    margin-top: 4rem;
  }
}

@media screen and (min-width: 768px) {
  .sec1-group-item2-link {
    margin-top: 2.7rem;
  }
}

.sec1-group {
  margin-top: 17.7rem;
}

@media screen and (max-width: 767px) {
  .sec1-group {
    margin-top: 5rem;
  }
}

.sec1-group-address-item {
  background-color: #F7F9FB;
  border-radius: 1rem;
  padding-left: 3.8rem;
  padding-right: 3.8rem;
  padding-top: 3rem;
  padding-bottom: 3.5rem;
}

@media screen and (max-width: 767px) {
  .sec1-group-address-item {
    padding: 2rem 1.5rem;
  }
}

.sec1-group-address-item .txt-fs20 {
  font-weight: 500;
  transform: translateX(-1rem);
}

.sec1-group-address-item .href-under-line {
  border-bottom: max(1px, 0.1rem) solid #343434 !important;
}

.sec1-group-address {
  display: grid;
  grid-template-columns: 56rem 56rem;
  justify-content: space-between;
  padding-top: 6rem;
  padding-bottom: 5rem;
}

@media screen and (max-width: 767px) {
  .sec1-group-address {
    display: block;
    padding-top: 5rem;
    padding-bottom: 5rem;
  }

  .sec1-group-address .sec1-group-address-item+.sec1-group-address-item {
    margin-top: 2rem;
  }
}

.sec1-group-address-item-dots {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
}

@media screen and (max-width: 767px) {
  .sec1-group-logo {
    padding-top: 3rem;
  }

  .sec1-group-logo .link-style-power {
    margin-left: auto;
    margin-right: auto;
    margin-top: 2.5rem;
  }
}

.sec1-group-main .sec1-group-item+.sec1-group-item {
  margin-top: 15rem;
}

@media screen and (max-width: 767px) {
  .sec1-group-main .sec1-group-item+.sec1-group-item {
    margin-top: 5rem;
  }
}

.sec2-group {
  padding-top: 25rem;
  padding-bottom: 25rem;
}

@media screen and (max-width: 767px) {
  .sec2-group {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.header-right-item-drop {
  position: relative;
}

.header-right-item-drop .header-right-item-drop-iconsp {
  position: absolute;
  top: 1.3rem;
  right: 1.5rem;
  width: 4rem;
  height: 4rem;
  background-color: #fff;
  z-index: 2;
}

.header-right-item-drop .header-right-item-drop-iconsp:before,
.header-right-item-drop .header-right-item-drop-iconsp:after {
  content: "";
  width: 60%;
  height: max(2px, 0.2rem);
  background-color: #100025;
  left: 20%;
  top: 50%;
  position: absolute;
  transition: all 0.3s ease-in-out;
}

.header-right-item-drop .header-right-item-drop-iconsp.is-active:after {
  opacity: 0;
}

.header-right-item-drop .header-right-item-drop-iconsp:after {
  transform: rotate(90deg);
}

.header-right-item-drop .header-right-ul-link {
  position: relative;
  z-index: 2;
}

.header-right-item-drop .header-right-ul-link:hover~.dropmenu-hd {
  display: block;
}

.header-right-item-drop .dropmenu-hd {
  position: absolute;
  top: 0;
  left: -6rem;
  width: -moz-max-content;
  width: max-content;
  padding-top: 7.5rem;
  display: none;
}

@media screen and (max-width: 1400px) {
  .header-right-item-drop .dropmenu-hd {
    left: -4rem;
    padding-top: 6.5rem;
  }
}

@media screen and (max-width: 767px) {
  .header-right-item-drop .dropmenu-hd {
    position: static;
    width: 100%;
    padding-top: 0;
    background-color: #fff;
  }
}

.header-right-item-drop .dropmenu-hd:hover {
  display: block;
}

.header-right-item-drop .dropmenu-hd .dropmenu-hd-link {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #100025;
  font-size: 1.8rem;
  font-weight: 500;
  width: 19.3rem;
  height: 5rem;
  border-radius: 10rem;
  border: max(0.1rem, 1px) solid #100025 !important;
  background-color: #fff;
  transition: all 0.3s ease-in-out;
}

@media screen and (max-width: 1400px) {
  .header-right-item-drop .dropmenu-hd .dropmenu-hd-link {
    width: 15rem;
  }
}

@media screen and (max-width: 767px) {
  .header-right-item-drop .dropmenu-hd .dropmenu-hd-link {
    width: auto;
    border: 0 !important;
    border-radius: 0;
    height: auto;
    margin-top: 1rem;
    margin-bottom: 1rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    font-size: 1.5rem;
    display: inline-block;
  }
}

.header-right-item-drop .dropmenu-hd .dropmenu-hd-link:hover,
.header-right-item-drop .dropmenu-hd .dropmenu-hd-link.is-active {
  background-color: #100025;
  color: #fff;
}

@media screen and (max-width: 767px) {
  .dropmenu-hd-main {
    text-align: center;
  }
}

.sec1-recruit-1320 {
  max-width: 132rem;
  width: calc(100% - 3rem);
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 767px) {
  .sec1-recruit-1320 {
    display: flex;
    flex-direction: column-reverse;
    row-gap: 5rem;
  }
}

.sec1-recruit-tlt {
  position: relative;
  z-index: 10;
}

.sec1-recruit-tlt .sec1-recruit-tltm {
  font-size: 6.5rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.4;
}

@media screen and (max-width: 767px) {
  .sec1-recruit-tlt .sec1-recruit-tltm {
    font-size: 3.5rem;
    text-align: left;
  }
}

.sec1-recruit-tlt .sec1-recruit-tlt2 {
  font-size: 3.3rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.7;
  margin-top: 1.6rem;
  margin-bottom: 4.6rem;
}

@media screen and (max-width: 767px) {
  .sec1-recruit-tlt .sec1-recruit-tlt2 {
    font-size: 2.2rem;
    margin-bottom: 2rem;
    text-align: left;
  }
}

.sec1-recruit-tlt .txt-fs16 {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .sec1-recruit-tlt .txt-fs16 {
    text-align: left;
    font-size: 1.6rem;
  }
}

.sec1-recruit {
  margin-top: -12rem;
}

@media screen and (max-width: 767px) {
  .sec1-recruit {
    margin-top: 5rem;
  }
}

.sec1-recruit-gr-animation {
  position: relative;
}

.sec1-recruit-gr-animation .sec1-recruit-gr-animation-bongbong {
  position: absolute;
  top: 2rem;
  left: 0;
  right: 0;
  z-index: 3;
}

@media screen and (max-width: 767px) {
  .sec1-recruit-gr-animation .sec1-recruit-gr-animation-bongbong {
    position: relative;
    top: 0;
  }
}

.sec1-recruit-gr-animation .sec1-recruit-gr-animation-bongbong img {
  width: 115rem;
  animation: vertical2 2s ease-in-out infinite alternate;
}

@media screen and (max-width: 767px) {
  .sec1-recruit-gr-animation .sec1-recruit-gr-animation-bongbong img {
    width: 100%;
  }
}

.sec1-recruit-gr-animation .sec1-recruit-gr-animation-hugo {
  position: absolute;
  top: 12rem;
  left: 0;
  right: 0;
}

@media screen and (max-width: 767px) {
  .sec1-recruit-gr-animation .sec1-recruit-gr-animation-hugo {
    top: 0;
  }
}

.sec1-recruit-gr-animation .sec1-recruit-gr-animation-hugo .sec1-recruit-gr-animation-hugo-main {
  max-width: 118rem;
  margin-left: auto;
  margin-right: auto;
  height: 74.2rem;
  position: relative;
}

@media screen and (max-width: 767px) {
  .sec1-recruit-gr-animation .sec1-recruit-gr-animation-hugo .sec1-recruit-gr-animation-hugo-main {
    height: 44.2rem;
  }
}

.sec1-recruit-gr-animation .sec1-recruit-gr-animation-hugo .sec1-recruit-gr-animation-hugo-main .sec1-recruit-gr-animation-hugo-main1 {
  position: absolute;
  z-index: 5;
  left: 0;
  top: 12rem;
  width: 28.2rem;
}

@media screen and (max-width: 767px) {
  .sec1-recruit-gr-animation .sec1-recruit-gr-animation-hugo .sec1-recruit-gr-animation-hugo-main .sec1-recruit-gr-animation-hugo-main1 {
    top: 6rem;
    width: 15.2rem;
  }
}

.sec1-recruit-gr-animation .sec1-recruit-gr-animation-hugo .sec1-recruit-gr-animation-hugo-main .sec1-recruit-gr-animation-hugo-main1 img {
  animation: vertical2 2s ease-in-out infinite alternate;
}

.sec1-recruit-gr-animation .sec1-recruit-gr-animation-hugo .sec1-recruit-gr-animation-hugo-main .sec1-recruit-gr-animation-hugo-main2 {
  position: absolute;
  z-index: 2;
  top: 1.4rem;
  right: -1rem;
  width: 22rem;
}

@media screen and (max-width: 1400px) {
  .sec1-recruit-gr-animation .sec1-recruit-gr-animation-hugo .sec1-recruit-gr-animation-hugo-main .sec1-recruit-gr-animation-hugo-main2 {
    right: 0;
  }
}

@media screen and (max-width: 767px) {
  .sec1-recruit-gr-animation .sec1-recruit-gr-animation-hugo .sec1-recruit-gr-animation-hugo-main .sec1-recruit-gr-animation-hugo-main2 {
    top: 0;
    width: 16rem;
    right: 10%;
  }
}

.sec1-recruit-gr-animation .sec1-recruit-gr-animation-hugo .sec1-recruit-gr-animation-hugo-main .sec1-recruit-gr-animation-hugo-main2 img {
  animation: vertical2 3s ease-in-out infinite alternate;
}

.sec1-recruit-gr-animation .sec1-recruit-gr-animation-hugo .sec1-recruit-gr-animation-hugo-main .sec1-recruit-gr-animation-hugo-main3 {
  position: absolute;
  z-index: 4;
  bottom: 0;
  right: 2rem;
  width: 23.8rem;
}

@media screen and (max-width: 767px) {
  .sec1-recruit-gr-animation .sec1-recruit-gr-animation-hugo .sec1-recruit-gr-animation-hugo-main .sec1-recruit-gr-animation-hugo-main3 {
    width: 12.8rem;
  }
}

.sec1-recruit-gr-animation .sec1-recruit-gr-animation-hugo .sec1-recruit-gr-animation-hugo-main .sec1-recruit-gr-animation-hugo-main3 img {
  animation: vertical2 3.5s ease-in-out infinite alternate;
}

.sec2-recruit {
  width: 100%;
  height: 18.4rem;
  background-image: url(../img/recruit/imagezindex1.png);
  background-repeat: repeat-x;
  background-size: auto 100%;
  animation: anime5 50s linear infinite;
  bottom: 23rem;
  margin-top: 19rem;
}

@media screen and (max-width: 767px) {
  .sec2-recruit {
    height: 7rem;
    margin-top: 10rem;
  }
}

@media screen and (min-width: 768px) {
  @keyframes anime5 {
    0% {
      background-position: 341.6rem 0;
    }

    100% {
      background-position: -341.6rem 0;
    }
  }
}

@media screen and (max-width: 767px) {
  @keyframes anime5 {
    0% {
      background-position: 129.9rem 0;
    }

    100% {
      background-position: -129.9rem 0;
    }
  }
}

@media screen and (min-width: 768px) {
  .banner-page-breccum--recruit {
    position: relative;
    z-index: 11;
  }
}

.sec3-recruit {
  position: relative;
  padding-top: 11.5rem;
  margin-top: 26.7rem;
  padding-bottom: 11rem;
}

@media screen and (max-width: 767px) {
  .sec3-recruit {
    margin-top: 5rem;
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.sec3-recruit:before {
  content: "";
  position: absolute;
  z-index: -1;
  background-color: #F0F3F6;
  top: 0;
  left: 0;
  bottom: 0;
  background-color: #F0F3F6;
  border-top-right-radius: 11.5rem;
  border-bottom-right-radius: 11.5rem;
  width: 100%;
  max-width: 176rem;
}

@media screen and (max-width: 767px) {
  .sec3-recruit:before {
    border-top-right-radius: 5rem;
    border-bottom-right-radius: 5rem;
  }
}

.sec3-recruit-content {
  padding-top: 6.5rem;
}

.sec3-recruit-content .sec3-recruit-content-item+.sec3-recruit-content-item {
  margin-top: 2rem;
}

@media screen and (max-width: 767px) {
  .sec3-recruit-content .sec3-recruit-content-item+.sec3-recruit-content-item {
    margin-top: 4rem;
  }
}

.sec3-recruit-content-item {
  display: grid;
  grid-template-columns: 30.7rem 1fr;
  align-items: center;
  margin-left: -0.8rem;
  -moz-column-gap: 5.1rem;
  column-gap: 5.1rem;
}

@media screen and (max-width: 1400px) {
  .sec3-recruit-content-item {
    margin-left: 0;
  }
}

@media screen and (max-width: 767px) {
  .sec3-recruit-content-item {
    display: block;
  }
}

.sec3-recruit-content-item .txt-fs30 {
  font-weight: 500;
  line-height: 1.5;
  margin-bottom: 2.6rem;
}

@media screen and (max-width: 767px) {
  .sec3-recruit-content-item .txt-fs30 {
    margin-bottom: 1.5rem;
  }
}

@media screen and (max-width: 767px) {
  .sec3-recruit-content-item-right {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 2rem;
  }
}

.sec4-recruit {
  padding-top: 14.5rem;
}

@media screen and (max-width: 767px) {
  .sec4-recruit {
    padding-top: 5rem;
  }
}

.sec4-recruit-list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  -moz-column-gap: 3rem;
  column-gap: 3rem;
  padding-top: 8.6rem;
}

@media screen and (max-width: 767px) {
  .sec4-recruit-list {
    display: block;
    padding-top: 3rem;
  }

  .sec4-recruit-list li+li {
    margin-top: 3rem;
  }
}

.sec4-recruit-list img {
  box-shadow: 0 0 0.5rem rgba(142, 142, 142, 0.2);
  border-radius: 1rem;
}

.sec4-recruit-list .txt-fs30 {
  font-weight: 500;
  line-height: 1.5;
  margin-top: 1.7rem;
  margin-bottom: 2rem;
  min-height: 9rem;
  display: flex;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .sec4-recruit-list .txt-fs30 {
    display: block;
    min-height: auto;
    margin-bottom: 1rem;
    margin-top: 1rem;
  }
}

.sec5-recruit {
  background-color: #F0F3F6;
  border-top-left-radius: 20rem;
  padding-top: 10rem;
  margin-top: 19.5rem;
  padding-bottom: 11.4rem;
}

@media screen and (max-width: 767px) {
  .sec5-recruit {
    border-top-left-radius: 5rem;
    padding: 5rem 0;
    margin-top: 5rem;
  }
}

.sec5-recruit .link-style-power280 {
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 1400px) {
  .sec5-recruit .sec5-recruit-tlt {
    padding-left: 3rem;
  }
}

@media screen and (max-width: 767px) {
  .sec5-recruit .sec5-recruit-tlt {
    padding-left: 0;
  }
}

.sec6-recruit-tlt-right {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 2.4rem;
  column-gap: 2.4rem;
  padding-top: 1.7rem;
}

.sec6-recruit-tlt-right .category-works-normal {
  width: 22rem;
}

@media screen and (max-width: 767px) {
  .sec6-recruit-tlt-right .category-works-normal {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .sec6-recruit-tlt-right {
    display: grid;
    grid-template-columns: 1fr 1fr;
    -moz-column-gap: 1rem;
    column-gap: 1rem;
  }
}

.sec6-recruit-tlt {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .sec6-recruit-tlt {
    display: block;
  }
}

.sec6-recruit {
  padding-top: 19rem;
}

@media screen and (max-width: 767px) {
  .sec6-recruit {
    padding-top: 5rem;
  }
}

.sec6-recruit-content-item {
  display: none;
}

.sec6-recruit-content-item.is-active {
  display: block;
}

.sec6-recruit-content-item .txt-fs35 {
  font-weight: 500;
  padding-left: 5rem;
  padding-bottom: 4rem;
}

@media screen and (max-width: 767px) {
  .sec6-recruit-content-item .txt-fs35 {
    padding-left: 0;
    padding-bottom: 1rem;
    font-size: 2.8rem;
  }
}

.sec6-recruit-content {
  padding-top: 5.5rem;
  padding-bottom: 15rem;
}

@media screen and (max-width: 767px) {
  .sec6-recruit-content {
    padding-top: 4rem;
    padding-bottom: 5rem;
  }
}

.sec7-recruit {
  background-color: #F0F3F6;
  border-radius: 2rem;
  padding-top: 7.3rem;
  padding-bottom: 8rem;
  margin-bottom: 25rem;
}

@media screen and (max-width: 767px) {
  .sec7-recruit {
    padding-top: 5rem;
    padding-bottom: 5rem;
    margin-bottom: 5rem;
  }
}

.sec7-recruit .sec7-recruit-content {
  max-width: 117.5rem;
  width: calc(100% - 3rem);
  margin-left: auto;
  margin-right: auto;
}

.sec7-recruit .sec7-recruit-content .link-style-power280 {
  margin-left: auto;
  margin-right: auto;
}

.sec7-recruit-flow {
  display: grid;
  grid-template-columns: max-content max-content max-content max-content;
  justify-content: space-between;
  padding-top: 9.5rem;
}

@media screen and (max-width: 767px) {
  .sec7-recruit-flow {
    display: block;
    padding-top: 3rem;
  }
}

.sec7-recruit-flow li {
  width: 23rem;
  height: 23rem;
  background-color: #fff;
  border-radius: 100rem;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-bottom: 3.4rem;
}

@media screen and (max-width: 767px) {
  .sec7-recruit-flow li {
    width: 28rem;
    height: 28rem;
    margin-left: auto;
    margin-right: auto;
  }

  .sec7-recruit-flow li img {
    transform: scale(1.5);
  }
}

.sec7-recruit-flow li .sec7-recruit-flow-number {
  font-size: 3rem;
  color: #100025;
  font-weight: 700;
  position: absolute;
  top: -1rem;
  left: 0;
  right: 0;
  text-align: center;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .sec7-recruit-flow li .sec7-recruit-flow-number {
    font-size: 2.8rem;
    top: -0.5rem;
  }
}

.sec7-recruit-flow li .txt-fs30 {
  font-weight: 500;
  line-height: 1;
  position: absolute;
  bottom: 4.5rem;
  left: 0;
  right: 0;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .sec7-recruit-flow li .txt-fs30 {
    font-size: 3rem;
  }
}

.sec7-recruit-flow li+li:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -6rem;
  background-image: url(../img/recruit/image11.png);
  width: 4rem;
  height: 2rem;
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center center;
  transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
  .sec7-recruit-flow li+li:before {
    top: -5rem;
    left: 50%;
    transform: translateX(-50%) rotate(90deg);
  }
}

@media screen and (max-width: 767px) {
  .sec7-recruit-flow li+li {
    margin-top: 8rem;
  }
}

.sec7-recruit-txtsub {
  text-align: center;
  margin-top: 6.5rem;
  margin-bottom: 2rem;
}

@media screen and (max-width: 767px) {
  .sec7-recruit-txtsub {
    margin-top: 3rem;
  }
}

.sec1-interview-item-main {
  background-color: rgba(240, 243, 246, 0.8);
  border-radius: 3rem;
  padding-top: 8rem;
  padding-bottom: 11rem;
}

@media screen and (max-width: 767px) {
  .sec1-interview-item-main {
    padding: 5rem 0;
    background-color: #F0F3F6;
  }
}

.sec1-interview-avarta {
  max-width: 99.6rem;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 34.6rem 1fr;
  align-items: flex-end;
}

@media screen and (max-width: 767px) {
  .sec1-interview-avarta {
    display: block;
  }
}

.sec1-interview-avarta .sec1-interview-avarta-left {
  position: relative;
  z-index: 2;
}

.sec1-interview-avarta .sec1-interview-avarta-right {
  position: relative;
  padding-left: 9rem;
  padding-bottom: 4rem;
}

@media screen and (max-width: 767px) {
  .sec1-interview-avarta .sec1-interview-avarta-right {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-bottom: 2rem;
    background-color: #fff;
    border-radius: 1rem;
    z-index: 2;
    margin-top: 4rem;
  }
}

.sec1-interview-avarta .sec1-interview-avarta-right:before {
  content: "";
  position: absolute;
  top: 0;
  left: -2.2rem;
  right: 0;
  bottom: 0;
  background-color: #fff;
  border-radius: 1rem;
}

@media screen and (max-width: 767px) {
  .sec1-interview-avarta .sec1-interview-avarta-right:before {
    content: none;
  }
}

.sec1-interview-avarta .sec1-interview-avarta-right .sec1-interview-avarta-right-tlt {
  font-size: 7rem;
  color: #100025;
  position: relative;
  z-index: 2;
  line-height: 1;
  transform: translateY(-3.5rem);
}

@media screen and (max-width: 767px) {
  .sec1-interview-avarta .sec1-interview-avarta-right .sec1-interview-avarta-right-tlt {
    font-size: 4rem;
    transform: translateY(-2rem);
  }
}

.sec1-interview-avarta .sec1-interview-avarta-right .sec1-interview-avarta-right-info {
  position: relative;
  z-index: 2;
  margin-top: -0.7rem;
}

.sec1-interview-avarta .sec1-interview-avarta-right .sec1-interview-avarta-right-info .sec1-interview181 {
  color: #242424;
}

.sec1-interview-avarta .sec1-interview-avarta-right .sec1-interview-avarta-right-info .sec1-interview181 span {
  display: inline-block;
  padding-left: 3rem;
}

.sec1-interview-avarta .sec1-interview-avarta-right .sec1-interview-avarta-right-info .sec1-interview-avarta-right-name {
  color: #242424;
  line-height: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  -moz-column-gap: 1.8rem;
  column-gap: 1.8rem;
  margin-top: 2rem;
  margin-bottom: 2rem;
}

@media screen and (max-width: 767px) {
  .sec1-interview-avarta .sec1-interview-avarta-right .sec1-interview-avarta-right-info .sec1-interview-avarta-right-name {
    display: block;
  }
}

.sec1-interview-avarta .sec1-interview-avarta-right .sec1-interview-avarta-right-info .sec1-interview-avarta-right-name1 {
  font-size: 4rem;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .sec1-interview-avarta .sec1-interview-avarta-right .sec1-interview-avarta-right-info .sec1-interview-avarta-right-name1 {
    font-size: 3rem;
  }
}

.sec1-interview-avarta .sec1-interview-avarta-right .sec1-interview-avarta-right-info .sec1-interview-avarta-right-name2 {
  font-size: 1.9rem;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .sec1-interview-avarta .sec1-interview-avarta-right .sec1-interview-avarta-right-info .sec1-interview-avarta-right-name2 {
    font-size: 1.7rem;
    margin-top: 1rem;
  }
}

.sec1-interview {
  padding-top: 14rem;
}

@media screen and (max-width: 767px) {
  .sec1-interview {
    padding-top: 5rem;
  }
}

.sec1-interview-qa {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 13.5rem;
  padding-top: 8rem;
}

@media screen and (max-width: 767px) {
  .sec1-interview-qa {
    row-gap: 5rem;
    padding-top: 5rem;
  }
}

.sec1-interview-qa .sec1-interview-qa-item {
  background-color: #fff;
  border-radius: 2rem;
  padding-left: 5rem;
  padding-right: 5rem;
  padding-bottom: 6.3rem;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .sec1-interview-qa .sec1-interview-qa-item {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-bottom: 3rem;
  }
}

.sec1-interview-qa .sec1-interview-qa-item.sec1-interview-qa-item50 {
  width: 56rem;
}

@media screen and (max-width: 767px) {
  .sec1-interview-qa .sec1-interview-qa-item.sec1-interview-qa-item50 {
    width: 100%;
  }
}

.sec1-interview-qa .sec1-interview-qa-item .sec1-interview-qa-item-request {
  font-size: 7rem;
  color: #100025;
  line-height: 1;
  transform: translateY(-2.5rem);
}

@media screen and (max-width: 767px) {
  .sec1-interview-qa .sec1-interview-qa-item .sec1-interview-qa-item-request {
    font-size: 4rem;
    transform: translateY(-2rem);
  }
}

.sec1-interview-qa .sec1-interview-qa-item .txt-fs25 {
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 2.8rem;
}

@media screen and (max-width: 767px) {
  .sec1-interview-qa .sec1-interview-qa-item .txt-fs25 {
    margin-bottom: 1.5rem;
  }
}

.sec1-interview-list .sec1-interview-item+.sec1-interview-item {
  margin-top: 12rem;
}

@media screen and (max-width: 767px) {
  .sec1-interview-list .sec1-interview-item+.sec1-interview-item {
    margin-top: 5rem;
  }
}

.sec2-interview {
  padding-top: 9rem;
  padding-bottom: 20rem;
}

@media screen and (max-width: 767px) {
  .sec2-interview {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}

.sec1-contact {
  padding-top: 16.7rem;
}

@media screen and (max-width: 767px) {
  .sec1-contact {
    padding-top: 5rem;
  }
}

.sec1-contact-box {
  max-width: 73rem;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  height: 20rem;
  background-color: #100025;
  border-radius: 8.2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 4.3rem;
}

@media screen and (max-width: 767px) {
  .sec1-contact-box {
    height: auto;
    margin-top: 2.5rem;
    border-radius: 1rem;
    padding: 5rem 2rem;
    padding-bottom: 3rem;
  }
}

.sec1-contact-box-main {
  text-align: center;
}

.sec1-contact-box-main a {
  display: inline-block;
}

.sec1-contact-box-main a img {
  width: 34.7rem;
}

.sec1-contact-box-main .txt-fs16 {
  color: #fff;
  font-weight: 500;
  padding-right: 4rem;
  padding-top: 2rem;
}

@media screen and (max-width: 767px) {
  .sec1-contact-box-main .txt-fs16 {
    padding-right: 0;
  }
}

.sec2-contact {
  padding-top: 14rem;
  padding-bottom: 28.7rem;
}

@media screen and (max-width: 767px) {
  .sec2-contact {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.sec2-contact-txt-top--contact {
  max-width: 110rem;
  margin-left: auto;
  margin-right: auto;
}

.sec2-contact-txt-top {
  padding-top: 3.5rem;
  padding-bottom: 5rem;
}

@media screen and (max-width: 767px) {
  .sec2-contact-txt-top {
    padding-top: 2rem;
    padding-bottom: 3rem;
  }
}

.default-form-table {
  width: 100%;
}

.default-form-table tr td:first-child {
  width: 30.6rem;
  padding-left: 5rem;
}

@media screen and (max-width: 767px) {
  .default-form-table tr td:first-child {
    color: #fff;
    background-color: #100025;
  }
}

.default-form-table tr td:last-child {
  width: calc(100% - 30.6rem);
}

.default-form-table tr td {
  padding-top: 2rem;
  padding-bottom: 2rem;
  border-bottom: max(1px, 0.1rem) solid #343434;
  vertical-align: middle;
}

@media screen and (max-width: 767px) {
  .default-form-table tr td {
    width: 100% !important;
    float: left;
    padding: 1.5rem !important;
    border: 0 !important;
  }
}

.default-form-table tr:first-child td {
  border-top: max(1px, 0.1rem) solid #343434;
}

.default-form-table .tr-alight-top td {
  vertical-align: top;
}

.form-control {
  width: 100%;
  max-width: 50rem;
  height: 6rem;
  background-color: #f7f8f8;
  border-radius: 0.5rem;
  padding: 0 1.5rem;
  outline: 0;
  border: 0;
  scroll-margin-top: 15rem;
}

@media screen and (max-width: 767px) {
  .form-control {
    background-color: #F0F3F6;
  }
}

.form-area {
  width: 100%;
  max-width: 50rem;
  background-color: #f7f8f8;
  border-radius: 0.5rem;
  padding: 1.5rem 1.5rem;
  outline: 0;
  border: 0;
  height: 18rem;
  resize: none;
  scroll-margin-top: 15rem;
}

@media screen and (max-width: 767px) {
  .form-area {
    background-color: #F0F3F6;
  }
}

.contact-txt-sub-privacy {
  max-width: 116rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 4rem;
}

@media screen and (max-width: 767px) {
  .contact-txt-sub-privacy {
    margin-top: 2.5rem;
  }
}

.contact-txt-sub-privacy a {
  border-bottom: max(1px, 0.1rem) solid #343434 !important;
}

.form-check-privacy-lb {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  width: -moz-max-content;
  width: max-content;
  position: relative;
  cursor: pointer;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
}

@media screen and (max-width: 767px) {
  .form-check-privacy-lb {
    -moz-column-gap: 0;
    column-gap: 0;
    justify-content: space-between;
    width: 100%;
  }
}

.form-check-privacy-lb input {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  z-index: -100;
}

.form-check-privacy-lb input:checked~.form-check-skin:before {
  opacity: 1;
}

.form-check-privacy-lb .form-check-skin {
  position: relative;
  background-color: #f7f8f8;
  width: 4rem;
  height: 4rem;
  border-radius: 100rem;
}

@media screen and (max-width: 767px) {
  .form-check-privacy-lb .form-check-skin {
    background-color: #F0F3F6;
  }
}

.form-check-privacy-lb .form-check-skin:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #000033;
  border-radius: 100rem;
  transform: scale(0.5);
  opacity: 0;
  transition: all 0.3s ease-in-out;
}

.form-check-privacy {
  padding-top: 5rem;
}

@media screen and (max-width: 767px) {
  .form-check-privacy {
    padding-top: 3rem;
  }
}

.form-btn-submit .link-style-power {
  background-color: transparent;
  border: 0;
  cursor: pointer;
}

.form-btn-submit {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 3rem;
  column-gap: 3rem;
  row-gap: 1.5rem;
  padding-top: 5rem;
}

.sec1-privacy-list-child {
  max-width: 110rem;
  margin-left: auto;
  margin-right: auto;
  padding-top: 2.5rem;
}

@media screen and (max-width: 767px) {
  .sec1-privacy-list-child {
    padding-top: 1.5rem;
  }
}

.sec1-privacy-list-child .link-style-power {
  margin-top: 1.6rem;
}

.sec1-privacy-list-child .txt-fs17 {
  font-weight: 700;
}

.sec1-privacy {
  padding-top: 16.5rem;
  padding-bottom: 26rem;
}

@media screen and (max-width: 767px) {
  .sec1-privacy {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.sec1-privacy-list li+li {
  padding-top: 8rem;
}

@media screen and (max-width: 767px) {
  .sec1-privacy-list li+li {
    padding-top: 4rem;
  }
}

.letter-ktdb {
  margin-left: -0.6rem;
}

.list-post-news-index {
  padding-top: 2.5rem;
}

@media screen and (min-width: 768px) {
  .list-post-news-index .list-news-post-item .list-news-post-item-img {
    width: 30rem;
  }

  .list-post-news-index .list-news-post-item .list-news-post-item-right {
    width: calc(100% - 30rem);
  }

  .list-post-news-index .list-news-post li+li {
    margin-top: 4.5rem;
  }
}

.tranduration {
  transition-duration: 2s !important;
}

.list-post-works-index-item-hover {
  display: inline-block;
  border-radius: 1.6rem;
  overflow: hidden;
}

.list-post-works-index-item-hover img {
  transition: all 0.3s ease-in-out;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .list-post-works-index-item-hover img {
    height: 30.3rem;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
  }
}

.list-post-works-index-item-hover:hover img {
  transform: scale(1.1);
}

@media screen and (max-width: 767px) {
  .banner-page-image-img--about {
    position: relative;
    z-index: 2;
  }
}

.image-slider-abous-img-item img {
  border-radius: 2rem;
}

@media screen and (max-width: 767px) {
  .image-slider-abous-img-item img {
    border-radius: 1rem;
  }
}

.slider-image-aboutus {
  box-shadow: 0 0 0.5rem rgba(142, 142, 142, 0.2);
  border-radius: 2rem;
}

@media screen and (max-width: 767px) {
  .slider-image-aboutus {
    position: relative;
    z-index: 2;
    border-radius: 1rem;
  }
}

@media screen and (min-width: 768px) {
  .sec2-service-style1-right--center2 {
    padding-top: 22.5rem;
  }

  .lt-spacin {
    letter-spacing: -0.05rem;
  }
}

.sec3-top-main-1300 {
  max-width: 130rem;
  margin-left: auto;
}

.erro-form-name {
  color: #ED1C24;
}

.footer2-excel .txt-fs20 {
  font-weight: 700;
}

.footer2-excel .txt-fs15 {
  font-size: 1.5rem;
}

.footer2-excel .footer2-excel-btn {
  font-size: max(1.4rem, 10px);
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 29.7rem;
  height: 5.2rem;
  background-color: #100025;
  border-radius: 100rem;
  font-weight: 500;
  margin-top: 1rem;
  border: max(1px, 0.1rem) solid #100025 !important;
  transition: all 0.3s ease-in-out;
}

.footer2-excel .footer2-excel-btn:hover {
  background-color: #fff;
  color: #100025;
}

@media screen and (max-width: 767px) {
  .footer2-excel .footer2-excel-btn {
    margin-left: auto;
    margin-right: auto;
  }
}

.footer2-excel {
  padding-top: 5rem;
}

@media screen and (max-width: 767px) {
  .footer2-excel {
    text-align: center;
    padding-top: 2.5rem;
  }
}

.instagram-logo-ft-privacy {
  display: inline-block;
  right: 37% !important;
  bottom: -2.8rem !important;
}

@media screen and (max-width: 767px) {
  .instagram-logo-ft-privacy {
    position: absolute !important;
    left: 0 !important;
    bottom: 1rem !important;
    right: auto !important;
  }
}

.gr-inputtype-radio {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 3rem;
  column-gap: 3rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

@media screen and (max-width: 767px) {
  .gr-inputtype-radio {
    flex-direction: column;
    row-gap: 1.5rem;
    align-items: flex-start;
  }
}

.gr-inputtype-radio label {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  position: relative;
  -moz-column-gap: 1.5rem;
  column-gap: 1.5rem;
  cursor: pointer;
}

.gr-inputtype-radio label input {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}

.gr-inputtype-radio label input:checked~.skin-radiobutton:before {
  opacity: 1;
}

.gr-inputtype-radio label .skin-radiobutton {
  width: 3rem;
  height: 3rem;
  display: block;
  border-radius: 100rem;
  background-color: #f7f8f8;
  position: relative;
}

.gr-inputtype-radio label .skin-radiobutton:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 100rem;
  transform: scale(0.5);
  background-color: #000033;
  opacity: 0;
  transition: all 0.3s ease-in-out;
}

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

.splide__slide--center-img img {
  display: inline-block;
}