@charset "UTF-8";
/*----------------
フォント読み込み 
----------------*/
/*-----------------
基本設定
------------------*/
html {
  scroll-behavior: smooth;
}

img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

body {
  font-size: 16px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #151515;
  line-height: 2;
  font-feature-settings: "palt";
  letter-spacing: 0.1em;
}

.textCenter {
  text-align: center;
}

.only-pc {
  display: block;
}

.pc-tab1280 {
  display: block;
}

.pc-tab1024 {
  display: block;
}

.tab1280 {
  display: none;
}

.tab1280-tab1024 {
  display: none;
}

.tab1280-sp {
  display: none;
}

.tab1024 {
  display: none;
}

.tab1024-sp {
  display: none;
}

.only-sp {
  display: none;
}

@media screen and (max-width: 1280px) {
  .only-pc {
    display: none;
  }
  .pc-tab1280 {
    display: block;
  }
  .pc-tab1024 {
    display: block;
  }
  .tab1280 {
    display: block;
  }
  .tab1280-tab1024 {
    display: block;
  }
  .tab1280-sp {
    display: block;
  }
  .tab1024 {
    display: none;
  }
  .tab1024-sp {
    display: none;
  }
  .only-sp {
    display: none;
  }
  .inner {
    width: 89.333%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 1024px) {
  .only-pc {
    display: none;
  }
  .pc-tab1280 {
    display: none;
  }
  .pc-tab1024 {
    display: block;
  }
  .only-tab1280 {
    display: none;
  }
  .tab1280-tab1024 {
    display: block;
  }
  .tab1280-sp {
    display: block;
  }
  .only-tab1024 {
    display: block;
  }
  .tab1024-sp {
    display: block;
  }
  .only-sp {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .only-pc {
    display: none;
  }
  .pc-tab1280 {
    display: none;
  }
  .pc-tab1024 {
    display: none;
  }
  .only-tab1280 {
    display: none;
  }
  .tab1280-tab1024 {
    display: none;
  }
  .tab1280-sp {
    display: block;
  }
  .only-tab1024 {
    display: none;
  }
  .tab1024-sp {
    display: block;
  }
  .only-sp {
    display: block;
  }
  body {
    font-size: 14px;
    font-weight: 500;
  }
}
/*==================================
ふわっ
===================================*/
.fadeUp {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.fadeUp.is-show {
  opacity: 1;
  transform: translateY(0);
}

.l-center {
  margin-right: auto;
  margin-left: auto;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

.l-left {
  margin-left: 0;
  margin-right: auto;
}

.l-right {
  margin-right: 0;
  margin-left: auto;
}

.bl-btn {
  width: 214px;
  height: 51px;
}
.bl-btn a {
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  overflow: hidden;
  position: relative;
  border-radius: 26px;
}
@media screen and (max-width: 768px) {
  .bl-btn a {
    font-size: 16px;
  }
}
.bl-btn a span {
  line-height: 1;
  font-weight: 500;
}
.bl-btn a span:first-of-type {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 1;
  transition: all 0.5s;
}
.bl-btn a span:last-of-type {
  position: absolute;
  top: 90%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: all 0.5s;
}
@media screen and (max-width: 1024px) {
  .bl-btn a span:last-of-type {
    top: 50%;
    opacity: 1;
  }
}
@media screen and (min-width: 1023.9px) {
  .bl-btn a:hover span:first-of-type {
    top: 10%;
    opacity: 0;
    transition: all 0.5s;
  }
  .bl-btn a:hover span:last-of-type {
    top: 50%;
    opacity: 1;
    transition: all 0.5s;
  }
}

.bl-btn--navy a {
  background-color: #001F5F;
}
.bl-btn--navy a span {
  color: #FFFFFF;
}

.bl-btn--wh a {
  background-color: #FFFFFF;
}
.bl-btn--wh a span {
  color: #001F5F;
}

.bl-btn--size-l {
  width: 251px;
}

.bl-flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.bl-flex__rowCenter {
  justify-content: center;
}

.bl-flex__leftAlignment {
  justify-content: flex-start;
}

.bl-flex__rightAlignment {
  justify-content: flex-end;
}

.bl-flex__topAlignment {
  align-items: flex-start;
}

.bl-flex__bottomAlignment {
  align-items: flex-start;
}

.bl-ttl {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

.bl-ttl__ja {
  font-size: 18px;
  padding-left: 15px;
  position: relative;
  line-height: 1;
  letter-spacing: 0;
  color: #001F5F;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .bl-ttl__ja {
    font-size: 16px;
  }
}
.bl-ttl__ja::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 7px;
  height: 7px;
  background-color: #2967E6;
  border-radius: 50%;
}

.bl-ttl__en {
  font-size: 78px;
  line-height: 1;
  margin-top: 10px;
  letter-spacing: 0;
  font-weight: 600;
  color: #001F5F;
}
@media screen and (max-width: 1280px) {
  .bl-ttl__en {
    font-size: 50px;
  }
}
@media screen and (max-width: 1024px) {
  .bl-ttl__en {
    margin-top: 5px;
  }
}
@media screen and (max-width: 768px) {
  .bl-ttl__en {
    font-size: 40px;
  }
}

.bl-ttl__ja--wh {
  color: #FFFFFF;
}

.bl-ttl__en--wh {
  color: #FFFFFF;
}

/*=========================
ページ共通
=========================*/
.bg-wh {
  background-color: #FFFFFF;
}

.bl-nav {
  width: 250px;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  border-right: 1px solid #FFFFFF;
  z-index: 99;
  transition: all 0.5s;
  background-color: unset;
  opacity: 1;
  pointer-events: all;
  transition: all 0.5s;
}
@media screen and (max-width: 1024px) {
  .bl-nav {
    width: 100%;
    height: auto;
    border-right: unset;
  }
}
.bl-nav.is-navy {
  background-color: rgba(255, 255, 255, 0.8);
  transition: all 0.5s;
  border-right: 1px solid #001F5F;
}

.bl-rightContent {
  width: calc(100% - 250px);
  margin-right: 0;
  margin-left: auto;
}
@media screen and (max-width: 1024px) {
  .bl-rightContent {
    width: 100%;
  }
}

.inner {
  padding-right: 8.4%;
  padding-left: 7.56%;
}
@media screen and (max-width: 1280px) {
  .inner {
    padding-right: 4.4%;
    padding-left: 3.56%;
  }
}
@media screen and (max-width: 1024px) {
  .inner {
    width: 87.69%;
    margin: 0 auto;
    padding-right: 0;
    padding-left: 0;
  }
}

.maxWidth-inner {
  width: 79.16%;
  margin: 0 auto;
}
@media screen and (max-width: 1024px) {
  .maxWidth-inner {
    width: 87.69%;
  }
}

/*========= 無限ループスライダー ==========*/
.loop-slider {
  overflow: hidden;
  position: relative;
  width: 100%;
  white-space: nowrap;
}

.loop-slider__track {
  display: flex;
  -webkit-animation: scroll linear infinite;
          animation: scroll linear infinite;
}

.loop-slider__item {
  flex: 0 0 auto;
  padding: 0 2rem;
  font-size: 1.5rem;
  white-space: nowrap;
}

@-webkit-keyframes scroll {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}

@keyframes scroll {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}
/*========================
下層FV
=========================*/
.underFv {
  position: relative;
  width: 100%;
  height: auto;
}

.bl-rightContent--underFv {
  position: relative;
}

.underFv-img {
  position: relative;
  width: 100%;
  height: auto;
}
.underFv-img::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #001643;
  opacity: 0.52;
}

.page-ttl__ja {
  position: absolute;
  top: 39%;
  left: 4.2%;
  font-size: 21px;
  color: #FFFFFF;
  font-weight: 700;
  letter-spacing: 0.044em;
  line-height: 1;
  padding-left: 160px;
}
@media screen and (max-width: 1024px) {
  .page-ttl__ja {
    top: 55%;
    left: 6.1%;
  }
}
@media screen and (max-width: 768px) {
  .page-ttl__ja {
    font-size: 14px;
    padding-left: 96px;
  }
}
.page-ttl__ja::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 142px;
  height: 1px;
  background-color: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .page-ttl__ja::before {
    width: 80px;
  }
}

.page-ttl__en {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 100%;
  height: auto;
}

.page-ttl__size-l {
  width: 77.1%;
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translateX(-150px);
  -webkit-animation-name: underFvTtlAnime;
          animation-name: underFvTtlAnime;
  -webkit-animation-duration: 1.5s;
          animation-duration: 1.5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: ease-in;
          animation-timing-function: ease-in;
  opacity: 0;
}
@media screen and (max-width: 1024px) {
  .page-ttl__size-l {
    width: 81%;
  }
}

.page-ttl__size-s {
  font-size: 7.56vw;
  color: #FFFFFF;
  font-weight: 600;
  position: absolute;
  bottom: 0;
  right: 0;
  line-height: 0.85;
  -webkit-animation-name: underFvSmallTtlAnime;
          animation-name: underFvSmallTtlAnime;
  -webkit-animation-duration: 1.5s;
          animation-duration: 1.5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: ease-in;
          animation-timing-function: ease-in;
  opacity: 0;
}
@media screen and (max-width: 768px) {
  .page-ttl__size-s {
    font-size: 42px;
    transform: translateX(calc(-180px - 6%));
  }
}
.page-ttl__size-s.page-ttl__size-s--rightMargin {
  margin-right: 6.25vw;
}

@-webkit-keyframes underFvTtlAnime {
  0% {
    transform: translateX(-150px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes underFvTtlAnime {
  0% {
    transform: translateX(-150px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@-webkit-keyframes underFvSmallTtlAnime {
  0% {
    transform: translateX(-180px);
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes underFvSmallTtlAnime {
  0% {
    transform: translateX(-180px);
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@media screen and (max-width: 768px) {
  @-webkit-keyframes underFvSmallTtlAnime {
    0% {
      transform: translateX(calc(-180px - 6%));
      opacity: 0;
    }
    50% {
      opacity: 0;
    }
    100% {
      transform: translateX(-6%);
      opacity: 1;
    }
  }
  @keyframes underFvSmallTtlAnime {
    0% {
      transform: translateX(calc(-180px - 6%));
      opacity: 0;
    }
    50% {
      opacity: 0;
    }
    100% {
      transform: translateX(-6%);
      opacity: 1;
    }
  }
}
.underFv-bottom__txt {
  margin: 116px auto 131px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
@media screen and (max-width: 1024px) {
  .underFv-bottom__txt {
    margin: 79px auto 75px;
  }
}
.underFv-bottom__txt span {
  display: block;
  text-align: center;
  font-size: 34px;
  font-weight: 600;
  color: #2967E6;
  line-height: 2;
  -webkit-animation-name: underFvBottomTxtAnime;
          animation-name: underFvBottomTxtAnime;
  -webkit-animation-duration: 1.8s;
          animation-duration: 1.8s;
  -webkit-animation-delay: 1.5s;
          animation-delay: 1.5s;
  opacity: 0;
  position: relative;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  bottom: -10px;
}
@media screen and (max-width: 768px) {
  .underFv-bottom__txt span {
    font-size: 20px;
  }
}
.underFv-bottom__txt span:last-of-type {
  -webkit-animation-delay: 1.7s;
          animation-delay: 1.7s;
}

@-webkit-keyframes underFvBottomTxtAnime {
  0% {
    bottom: -10px;
    opacity: 0;
  }
  100% {
    bottom: 0;
    opacity: 1;
  }
}

@keyframes underFvBottomTxtAnime {
  0% {
    bottom: -10px;
    opacity: 0;
  }
  100% {
    bottom: 0;
    opacity: 1;
  }
}
.section-overviewTxt {
  font-size: 28px;
  font-weight: 600;
  letter-spacing: 0.056em;
  line-height: 1.42;
}

/*===== firstSection =====*/
.firstSection {
  margin-top: 131px;
}
@media screen and (max-width: 768px) {
  .firstSection {
    margin-top: 75px;
  }
}

.inner--firstSection {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12%;
}
@media screen and (max-width: 1280px) {
  .inner--firstSection {
    gap: 8%;
  }
}
@media screen and (max-width: 1024px) {
  .inner--firstSection {
    display: block;
  }
}

.firstSection__side-l {
  width: 497px;
}
@media screen and (max-width: 1280px) {
  .firstSection__side-l {
    width: 50%;
  }
}
@media screen and (max-width: 1024px) {
  .firstSection__side-l {
    width: 100%;
  }
}

.section-overviewTxt--firstSection {
  margin-top: 52px;
}
@media screen and (max-width: 1280px) {
  .section-overviewTxt--firstSection {
    font-size: 25px;
  }
}
@media screen and (max-width: 768px) {
  .section-overviewTxt--firstSection {
    font-size: 18px;
    margin-top: 28px;
  }
}

.normalDocs--firstSection {
  margin-top: 38px;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .normalDocs--firstSection {
    margin-top: 28px;
  }
}

.firstSection__side-r {
  width: calc(88% - 497px);
  margin-top: 66px;
}
@media screen and (max-width: 1280px) {
  .firstSection__side-r {
    width: 42%;
  }
}
@media screen and (max-width: 1024px) {
  .firstSection__side-r {
    width: 100%;
    margin-top: 18.6px;
  }
}

/*======== 特徴 ========*/
.featureExplain-list {
  margin-top: 51px;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 30px;
}
@media screen and (max-width: 768px) {
  .featureExplain-list {
    margin-top: 32px;
    flex-direction: column;
    gap: 15px;
  }
}

.featureExplain-item {
  width: calc(50% - 15px);
  padding: 25px;
  background-color: #FFFFFF;
  border: 1px solid #2967E6;
  border-radius: 5px;
}
@media screen and (max-width: 768px) {
  .featureExplain-item {
    width: 100%;
    padding: 23px 25px;
  }
}

.featureExplain-icon {
  width: 13%;
  min-width: 50px;
  max-width: 70px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .featureExplain-icon {
    width: 66px;
  }
}

.featureExplain-ttl {
  margin-top: 24px;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.036em;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .featureExplain-ttl {
    font-size: 16px;
    margin-top: 16px;
  }
}

.featureExplain-txt {
  margin-top: 12px;
  text-align: center;
  line-height: 1.7;
}

/*====== 表 =====*/
.commonTable {
  margin-top: 54px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .commonTable {
    margin-top: 30px;
  }
}

.commonTable__body {
  width: 100%;
}

.commonTable__row {
  border-bottom: 1px solid rgba(41, 103, 230, 0.5);
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}
@media screen and (max-width: 768px) {
  .commonTable__row {
    display: block;
  }
}

.commonTable__head {
  display: block;
  width: 34%;
  font-size: 18px;
  font-weight: 600;
  text-align: center;
  color: #001F5F;
  padding: 25px 0;
}
@media screen and (max-width: 768px) {
  .commonTable__head {
    width: 100%;
    font-size: 16px;
    padding: 15px 0 0;
    text-align: left;
  }
}

.commonTable__data {
  display: block;
  width: 66%;
  padding: 25px 13px;
  font-size: 16px;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .commonTable__data {
    width: 100%;
    padding: 5px 0 15px;
  }
}

/*==========================
ヘッダー
==========================*/
.head.blackBorder {
  border-right: 1px solid #000;
}
@media screen and (max-width: 1024px) {
  .head.blackBorder {
    border-right: unset;
  }
}
.head.whiteBorder {
  border-right: 1px solid #fff;
}
@media screen and (max-width: 1024px) {
  .head.whiteBorder {
    border-right: unset;
  }
}

.head__logo {
  width: 171px;
  margin: 4.8vh auto 0;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .head__logo {
    width: 39%;
    max-width: 200px;
    margin: 23px 0 0 6.1%;
    position: relative;
  }
}
.head__logo img {
  width: 100%;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
}
.head__logo img.logo-wh {
  opacity: 1;
  transition: all 0.5s;
}
.head__logo img.logo-bk {
  opacity: 0;
  transition: all 0.5s;
}

.head__nav {
  padding-left: 100px;
  margin-top: 27vh;
}

.headNav-list .headNav-list__item:not(:first-of-type) {
  margin-top: 3vh;
}
.headNav-list .headNav-list__item.headNav-list__item--subNav {
  margin-top: 1.5vh;
  position: relative;
  padding-left: 33px;
}
.headNav-list .headNav-list__item.headNav-list__item--subNav a {
  font-size: 14px;
}
.headNav-list .headNav-list__item.headNav-list__item--subNav::before {
  content: "";
  position: absolute;
  width: 19px;
  height: 1px;
  background-color: #FFFFFF;
  transition: all 0.5s;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.headNav-list__item a {
  color: #FFFFFF;
  line-height: 1;
  transition: all 0.5s;
}
.headNav-list__item a:hover {
  opacity: 0.8;
  transition: all 0.5s;
}

.headNav-tiktokIcon {
  width: 45px;
  height: 45px;
  position: relative;
  margin-top: 14vh;
  margin-left: 100px;
  transition: all 0.5s;
}
.headNav-tiktokIcon:hover {
  opacity: 0.8;
  transition: all 0.5s;
}
.headNav-tiktokIcon img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 1024px) {
  .headNav-tiktokIcon {
    display: none;
  }
}

.tiktokIcon__wh {
  opacity: 1;
}

.tiktokIcon__blue {
  opacity: 0;
}

.bl-nav.is-navy {
  background-color: rgba(255, 255, 255, 0.8);
}
@media screen and (max-width: 1024px) {
  .bl-nav.is-navy {
    background-color: unset;
  }
}
.bl-nav.is-navy .headNav-list__item a {
  color: #001F5F;
  transition: all 0.5s;
}
.bl-nav.is-navy .headNav-list__item.headNav-list__item--subNav::before {
  background-color: #001F5F;
  transition: all 0.5s;
}
.bl-nav.is-navy .tiktokIcon__wh {
  opacity: 0;
}
.bl-nav.is-navy .tiktokIcon__blue {
  opacity: 1;
}
.bl-nav.is-navy .head__logo img.logo-wh {
  opacity: 0;
  transition: all 0.5s;
}
.bl-nav.is-navy .head__logo img.logo-bk {
  opacity: 1;
  transition: all 0.5s;
}
.bl-nav.is-disappear {
  opacity: 0;
  pointer-events: none;
  transition: all 0.5s;
}

/*========== ハンバーガーメニュー =========*/
.burger-bg {
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9;
  pointer-events: none;
  background-color: rgba(255, 255, 255, 0.6);
  opacity: 0;
  transition: all 0.3s;
}
.burger-bg.appear {
  opacity: 1;
  transition: all 0.3s;
}

.burger-nav {
  position: fixed;
  z-index: -1;
  opacity: 0;
  top: 0;
  right: 0;
  width: 74.4%;
  height: 100vh;
  background: #001F5F;
  transition: all 0.3s;
  pointer-events: none;
  box-shadow: -10px 0 7px rgba(0, 0, 0, 0.16);
}

.burger-nav.panelactive {
  opacity: 1;
  z-index: 999;
  pointer-events: all;
}

.burger-nav.panelactive .burger-nav__listWrap {
  /*ナビの数が増えた場合縦スクロール*/
  position: fixed;
  z-index: 999;
  width: 100%;
  height: 100vh; /*表示する高さ*/
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
.burger-nav .burger-nav__list {
  display: none;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
  position: absolute;
  z-index: 999;
  top: 50%;
  left: 20%;
  transform: translate(0, -50%);
}

.burger-nav.panelactive .burger-nav__list {
  display: block;
}

/*リストのレイアウト設定*/
.burger-nav .burger-nav__item:not(:first-of-type) {
  margin-top: 4.8vh;
}

.burger-nav .burger-nav__item a {
  color: #FFFFFF;
  font-size: 14px;
  display: block;
  letter-spacing: 0.028em;
}

.burger-nav .burger-nav__list .burger-nav__item.burger-nav__item--subNav {
  margin-top: 18px;
  position: relative;
  padding-left: 33px;
}
.burger-nav .burger-nav__list .burger-nav__item.burger-nav__item--subNav a {
  font-size: 12px;
}
.burger-nav .burger-nav__list .burger-nav__item.burger-nav__item--subNav::before {
  content: "";
  position: absolute;
  width: 19px;
  height: 1px;
  background-color: #FFFFFF;
  transition: all 0.5s;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.burger-nav .burger-nav__list .burger-nav__item.burger-nav__item--tiktok {
  width: 45px;
  margin-top: 8.9vh;
}

/*========= ボタンのためのCSS ===============*/
.openbtn1 {
  position: fixed;
  z-index: 9999; /*ボタンを最前面に*/
  top: 15px;
  right: 14px;
  cursor: pointer;
  width: 39px;
  height: 20px;
}

/*×に変化*/
.openbtn1 span {
  display: inline-block;
  transition: all 0.4s;
  position: absolute;
  left: 0;
  height: 3px;
  background-color: #FFFFFF;
  width: 100%;
}

.openbtn1 span:nth-of-type(1) {
  top: 0;
}

.openbtn1 span:nth-of-type(2) {
  top: 50%;
  transform: translateY(-50%);
}

.openbtn1 span:nth-of-type(3) {
  bottom: 0;
}

.openbtn1.active span:nth-of-type(1) {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
  width: 100%;
}

.openbtn1.active span:nth-of-type(2) {
  opacity: 0;
}

.openbtn1.active span:nth-of-type(3) {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 100%;
}

.bl-nav.is-navy .openbtn1 span {
  background-color: #001F5F;
  transition: all 0.5s;
}
.bl-nav.is-navy .openbtn1.active span {
  background-color: #FFFFFF;
  transition: all 0.5s;
}

/*==========================
フッター
==========================*/
.foot {
  padding: 75px 0 16px;
  background-color: #2967E6;
}
@media screen and (max-width: 768px) {
  .foot {
    padding: 50px 0 5px;
  }
}

.maxWidth-inner--foot {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  .maxWidth-inner--foot {
    display: block;
  }
}

.foot__side-l {
  width: 20%;
}
@media screen and (max-width: 1024px) {
  .foot__side-l {
    width: 100%;
  }
}

.foot__logo {
  width: 100%;
}
@media screen and (max-width: 1024px) {
  .foot__logo {
    width: 180px;
  }
}
@media screen and (max-width: 768px) {
  .foot__logo {
    width: 49.4%;
    max-width: 200px;
  }
}

.foot__address {
  margin-top: 50px;
  color: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .foot__address {
    margin-top: 29px;
  }
}

.foot__tiktok {
  margin-top: 22px;
  width: 45px;
}
@media screen and (max-width: 768px) {
  .foot__tiktok {
    margin: 45px auto 0;
  }
}

.foot__side-r {
  margin-top: 20px;
  width: 75%;
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  gap: 10%;
}
@media screen and (max-width: 1024px) {
  .foot__side-r {
    width: 100%;
    justify-content: flex-start;
    margin-top: 50px;
  }
}
@media screen and (max-width: 768px) {
  .foot__side-r {
    margin-top: 60px;
    display: block;
  }
}

.foot__nav {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
@media screen and (max-width: 768px) {
  .foot__nav {
    width: 100vw;
    margin-left: -6.155vw;
  }
}
.foot__nav .foot__nav-item:not(:first-of-type) {
  margin-top: 30px;
}
@media screen and (max-width: 768px) {
  .foot__nav .foot__nav-item:not(:first-of-type) {
    margin-top: 0;
  }
}
.foot__nav .foot__nav-item.foot__nav-item--subNav {
  margin-top: 14px;
}
@media screen and (max-width: 768px) {
  .foot__nav .foot__nav-item.foot__nav-item--subNav {
    margin-top: 15px;
  }
}

@media screen and (max-width: 768px) {
  .foot__side-r .foot__nav:last-of-type .foot__nav-item:last-of-type::before {
    content: "";
    position: absolute;
    width: 100vw;
    height: 1px;
    background-color: #FFFFFF;
    opacity: 0.5;
    bottom: 0;
    left: 0;
  }
}

@media screen and (max-width: 768px) {
  .foot__nav-item {
    position: relative;
  }
}
.foot__nav-item a {
  color: #FFFFFF;
  line-height: 1;
  transition: all 0.5s;
}
@media screen and (max-width: 768px) {
  .foot__nav-item a {
    padding: 25px 6.155vw;
    display: block;
    position: relative;
  }
  .foot__nav-item a::after {
    content: "";
    position: absolute;
    width: 100vw;
    height: 1px;
    background-color: #FFFFFF;
    opacity: 0.5;
    top: 0;
    left: 0;
  }
}
@media screen and (min-width: 767.9px) {
  .foot__nav-item a:hover {
    opacity: 0.8;
    transition: all 0.5s;
  }
}

.foot__nav-item--subNav a {
  padding-left: 35.5px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .foot__nav-item--subNav a {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: calc(6.155vw + 35.5px);
  }
  .foot__nav-item--subNav a::after {
    display: none;
  }
}
.foot__nav-item--subNav a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background-color: #FFFFFF;
  width: 19px;
  height: 1px;
}
@media screen and (max-width: 768px) {
  .foot__nav-item--subNav a::before {
    left: 6.155vw;
  }
}

.foot__copyRight {
  color: #FFFFFF;
  margin-top: 16px;
  font-size: 10px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .foot__copyRight {
    margin-top: 20px;
  }
}

@media screen and (max-width: 768px) {
  .foot__subNav {
    display: none;
  }
  .foot__subNav a {
    font-size: 12px;
  }
  .foot__subNav .foot__nav-item--subNav:first-of-type {
    margin-top: 0;
  }
  .foot__subNav .foot__nav-item--subNav:last-of-type {
    padding-bottom: 25px;
  }
  .foot__nav-item--open .foot__subNav {
    display: block;
  }
  .foot__nav-expand {
    position: absolute;
    width: 20px;
    height: 20px;
    border: none;
    background: none;
    cursor: pointer;
    top: 25px;
    right: 6.5vw;
  }
  .foot__nav-expand::before,
.foot__nav-expand::after {
    content: "";
    position: absolute;
    background-color: #FFFFFF;
    transition: all 0.2s ease;
  }
  .foot__nav-expand::before {
    top: 50%;
    left: 0;
    right: 0;
    height: 2px;
    transform: translateY(-50%);
  }
  .foot__nav-expand::after {
    left: 50%;
    top: 0;
    bottom: 0;
    width: 2px;
    transform: translateX(-50%);
  }
  /* マイナス（−）アイコン：縦線を非表示 */
  .foot__nav-item--open .foot__nav-expand::after {
    opacity: 0;
  }
}
/*=========================
TOPページ
=========================*/
/*========= ローディング =========*/
#splash {
  position: fixed;
  z-index: 999;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  overflow: hidden;
}

/* 背景部分 */
.splash-bg {
  background: #001F5F;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  transition: transform 0.8s ease, opacity 0.8s ease;
}

/* テキストとバー */
#splash_text {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  width: 100%;
  transform: translate(-50%, -50%);
  color: #fff;
}

#splash_text svg {
  height: 2px;
}

/* 背景を右に引くアニメーション */
.splash-bg.slide-out {
  transform: translateX(100%);
  opacity: 0;
}

/*========= FV =========*/
.fv {
  position: relative;
  width: 100%;
  height: 100vh;
}

.fv-img {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
}
.fv-img::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: #001950;
  opacity: 0.2;
}
.fv-img video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.bl-rightContent--fv {
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
}

.inner--fv {
  height: 100%;
}

.fv-txt {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 1024px) {
  .fv-txt {
    width: 87.6%;
  }
}

.fv-txt__en {
  width: 63.4vw;
  /*
  font-size: 12vw;
  font-weight: 700;
  letter-spacing: 0.032em;
  line-height: 1;
  -webkit-text-stroke: 2px s.$white;
  text-stroke: 2px s.$white;
  color: transparent;
  paint-order: stroke;
  text-align: center;*/
}
@media screen and (max-width: 1024px) {
  .fv-txt__en {
    width: 100%;
  }
}

.fv-txt__ja {
  font-size: max(1.8vw, 18px);
  color: #FFFFFF;
  line-height: 1;
  letter-spacing: 0.14em;
  margin-top: 30px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .fv-txt__ja {
    font-size: max(3.58vw, 14px);
  }
}

.scroll-announce {
  position: absolute;
  right: 9.7vw;
  bottom: 6.3vh;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 10px;
}
@media screen and (max-width: 768px) {
  .scroll-announce {
    right: unset;
    left: 50%;
    bottom: 6.22vh;
    transform: translateX(-50%);
  }
}

.scroll-announce__txt {
  display: block;
  writing-mode: vertical-lr;
  color: #FFFFFF;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1;
}

.scroll-announce__bar {
  display: block;
  width: 1px;
  height: 17.11vh;
  position: relative;
}
@media screen and (max-width: 768px) {
  .scroll-announce__bar {
    height: 15.6vh;
  }
}
.scroll-announce__bar::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: scale(1, 0);
  transform-origin: top;
  background-color: #FFFFFF;
  -webkit-animation-name: scrollBarAnime;
          animation-name: scrollBarAnime;
  -webkit-animation-delay: 2s;
          animation-delay: 2s;
  -webkit-animation-duration: 2.6s;
          animation-duration: 2.6s;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-timing-function: ease-in;
          animation-timing-function: ease-in;
}

@-webkit-keyframes scrollBarAnime {
  0% {
    transform: scale(1, 0);
    transform-origin: top;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: top;
  }
  51% {
    transform: scale(1, 1);
    transform-origin: bottom;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: bottom;
  }
}

@keyframes scrollBarAnime {
  0% {
    transform: scale(1, 0);
    transform-origin: top;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: top;
  }
  51% {
    transform: scale(1, 1);
    transform-origin: bottom;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: bottom;
  }
}
/*========= お知らせ =========*/
.top-news {
  padding: 100px 0 0;
}
@media screen and (max-width: 768px) {
  .top-news {
    padding: 66px 0 0;
  }
}

.inner--news {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
@media screen and (max-width: 1280px) {
  .inner--news {
    display: block;
  }
}

.top-news__side-l {
  width: 210px;
}
@media screen and (max-width: 1280px) {
  .top-news__side-l {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }
}

.top-news__side-r {
  width: 62.67%;
  margin-top: 30px;
}
@media screen and (max-width: 1280px) {
  .top-news__side-r {
    width: 100%;
    margin-top: 50px;
  }
}
@media screen and (max-width: 768px) {
  .top-news__side-r {
    margin-top: 10px;
  }
}

.bl-btn--top-news {
  margin-top: 45px;
}
@media screen and (max-width: 1024px) {
  .bl-btn--top-news {
    margin: 60px auto 0;
  }
}

.news__item a {
  padding: 20px 50px 20px 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  border-bottom: 1px solid rgba(0, 31, 95, 0.3);
}
@media screen and (max-width: 768px) {
  .news__item a {
    padding: 25px 37px 25px 0;
    flex-wrap: wrap;
  }
}
.news__item a::before {
  content: "";
  position: absolute;
  width: 19px;
  height: 1px;
  background-color: #001F5F;
  top: 50%;
  right: 5px;
  transform: translateY(-50%);
  transition: all 0.5s;
}
@media screen and (max-width: 768px) {
  .news__item a::before {
    top: unset;
    transform: translateY(0);
    bottom: 25px;
  }
}
.news__item a::after {
  content: "";
  position: absolute;
  width: 5px;
  height: 1px;
  background-color: #001F5F;
  top: 47%;
  right: 5px;
  transform: translateY(-50%) rotate(45deg);
  transition: all 0.5s;
}
@media screen and (max-width: 768px) {
  .news__item a::after {
    top: unset;
    transform: translateY(0) rotate(45deg);
    bottom: 27px;
  }
}
@media screen and (min-width: 1023.9px) {
  .news__item a:hover::before {
    right: -5px;
    transition: all 0.5s;
  }
  .news__item a:hover::after {
    right: -5px;
    transition: all 0.5s;
  }
  .news__item a:hover .news-date {
    left: 10px;
    transition: all 0.5s;
  }
  .news__item a:hover .news-category {
    left: 10px;
    transition: all 0.5s;
  }
  .news__item a:hover .news-ttl {
    left: 10px;
    transition: all 0.5s;
  }
}

.news-date {
  font-size: 14px;
  font-weight: 500;
  color: #001F5F;
  line-height: 1;
  letter-spacing: 0.028em;
  margin-right: 23px;
  position: relative;
  left: 0;
  transition: all 0.5s;
}

.news-category {
  font-size: 14px;
  letter-spacing: 0.028em;
  line-height: 1;
  padding: 5px 10px;
  color: #001F5F;
  border: 1px solid #001F5F;
  border-radius: 21px;
  margin-right: 13%;
  position: relative;
  left: 0;
  transition: all 0.5s;
}

.news-ttl {
  font-weight: 500;
  position: relative;
  line-height: 1;
  left: 0;
  transition: all 0.5s;
}
@media screen and (max-width: 768px) {
  .news-ttl {
    width: 100%;
    margin-top: 10px;
    font-size: 16px;
  }
}

/*========= お知らせ下画像と無限ループテキスト =========*/
.top-underNews {
  margin-top: 195px;
  position: relative;
  padding-bottom: 157px;
}
@media screen and (max-width: 1024px) {
  .top-underNews {
    margin-top: 85px;
    padding-bottom: 100px;
  }
}

.top-underNews__images {
  position: relative;
  width: 100%;
  aspect-ratio: 1/0.61;
}
@media screen and (max-width: 768px) {
  .top-underNews__images {
    aspect-ratio: 1/1.056;
  }
}
.top-underNews__images .top-underNews__item {
  transition: all 1s;
}
.top-underNews__images .top-underNews__item:first-of-type {
  width: 24.8%;
  left: 8%;
  bottom: 7.45%;
}
@media screen and (max-width: 768px) {
  .top-underNews__images .top-underNews__item:first-of-type {
    width: 30.1%;
    bottom: 25.8%;
  }
}
.top-underNews__images .top-underNews__item:nth-of-type(2) {
  width: 18.39%;
  top: 10%;
  left: 29.98%;
}
@media screen and (max-width: 768px) {
  .top-underNews__images .top-underNews__item:nth-of-type(2) {
    width: 27.8%;
    left: 22.98%;
  }
}
.top-underNews__images .top-underNews__item:nth-of-type(3) {
  width: 25.75%;
  bottom: -10%;
  left: 39.49%;
}
@media screen and (max-width: 768px) {
  .top-underNews__images .top-underNews__item:nth-of-type(3) {
    width: 30.5%;
    left: 34.74%;
  }
}
.top-underNews__images .top-underNews__item:nth-of-type(4) {
  width: 24.18%;
  top: 10%;
  right: 25.2%;
}
@media screen and (max-width: 768px) {
  .top-underNews__images .top-underNews__item:nth-of-type(4) {
    width: 38.7%;
    top: 19.4%;
    right: 13.2%;
  }
}
.top-underNews__images .top-underNews__item:last-of-type {
  width: 22.43%;
  bottom: 5.49%;
  right: 8%;
}
@media screen and (max-width: 768px) {
  .top-underNews__images .top-underNews__item:last-of-type {
    width: 29.66%;
  }
}

.top-underNews__images.is-move .top-underNews__item {
  transition: all 1s;
}
.top-underNews__images.is-move .top-underNews__item:first-of-type {
  left: 0;
  bottom: 17.45%;
}
@media screen and (max-width: 768px) {
  .top-underNews__images.is-move .top-underNews__item:first-of-type {
    left: 0;
    bottom: 25.8%;
  }
}
.top-underNews__images.is-move .top-underNews__item:nth-of-type(2) {
  top: 0;
  left: 21.98%;
}
@media screen and (max-width: 768px) {
  .top-underNews__images.is-move .top-underNews__item:nth-of-type(2) {
    left: 15%;
  }
}
.top-underNews__images.is-move .top-underNews__item:nth-of-type(3) {
  bottom: 0;
  left: 39.49%;
}
@media screen and (max-width: 768px) {
  .top-underNews__images.is-move .top-underNews__item:nth-of-type(3) {
    left: 34.74%;
  }
}
.top-underNews__images.is-move .top-underNews__item:nth-of-type(4) {
  top: 0;
  right: 17.2%;
}
@media screen and (max-width: 768px) {
  .top-underNews__images.is-move .top-underNews__item:nth-of-type(4) {
    top: 9.4%;
    right: 5.12%;
  }
}
.top-underNews__images.is-move .top-underNews__item:last-of-type {
  bottom: 15.49%;
  right: 0;
}
@media screen and (max-width: 768px) {
  .top-underNews__images.is-move .top-underNews__item:last-of-type {
    bottom: 25.77%;
  }
}

.top-underNews__item {
  position: absolute;
  height: auto;
  z-index: 2;
}

.loop-slider--top-underNew {
  position: absolute;
  top: 20.6%;
  left: 0;
  z-index: 1;
}
@media screen and (max-width: 1280px) {
  .loop-slider--top-underNew {
    top: 29.6%;
  }
}
@media screen and (max-width: 768px) {
  .loop-slider--top-underNew {
    top: 28.6%;
  }
}

.loop-slider__item--top-underNews {
  font-size: 9.375vw;
  color: #001F5F;
  font-weight: 600;
  opacity: 0.2;
}
@media screen and (max-width: 768px) {
  .loop-slider__item--top-underNews {
    font-size: 10.375vw;
  }
}

/*========= 私たちについて =========*/
.top-about {
  padding: 100px 0 90px;
  background-image: linear-gradient(185deg, rgb(0, 22, 67), rgb(4, 44, 124) 93%, rgb(0, 50, 152));
  position: relative;
}
@media screen and (max-width: 1024px) {
  .top-about {
    padding: 85px 0 95px;
  }
}
.top-about::after {
  content: "";
  position: absolute;
  width: 14.3%;
  height: 100%;
  top: 0;
  right: 0;
  background-color: #FFFFFF;
  z-index: 1;
}
@media screen and (max-width: 1024px) {
  .top-about::after {
    display: none;
  }
}

.top-about__subTtl {
  margin-top: 50px;
  font-size: 29px;
  color: #FFFFFF;
  font-weight: 600;
  letter-spacing: 0.056em;
  line-height: 1;
}
@media screen and (max-width: 1280px) {
  .top-about__subTtl {
    font-size: 23px;
  }
}
@media screen and (max-width: 1024px) {
  .top-about__subTtl {
    margin-top: 30px;
  }
}
@media screen and (max-width: 768px) {
  .top-about__subTtl {
    font-size: 18px;
  }
}

.normalDocs--top-about {
  color: #FFFFFF;
  line-height: 2;
  margin-top: 50px;
  width: 500px;
}
@media screen and (max-width: 1280px) {
  .normalDocs--top-about {
    width: 370px;
  }
}
@media screen and (max-width: 1024px) {
  .normalDocs--top-about {
    margin-top: 35px;
    width: 100%;
  }
}

.bl-btn--top-about {
  margin-top: 52px;
}
@media screen and (max-width: 1024px) {
  .bl-btn--top-about {
    margin: 28px auto 0;
  }
}

.top-about__img {
  width: calc(87.78% - 750px);
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  z-index: 2;
  overflow: hidden;
}
@media screen and (max-width: 1280px) {
  .top-about__img {
    width: calc(87.78% - 620px);
  }
}
@media screen and (max-width: 1024px) {
  .top-about__img {
    position: relative;
    width: 100%;
    top: 0;
    transform: unset;
    margin-top: 30px;
  }
}
.top-about__img img {
  position: relative;
  transform: scale(1.2);
  transform-origin: center;
  transition: all 1s;
}
.top-about__img.is-sizeDown img {
  transform: scale(1);
  transition: all 1s;
}

/*========= 事業案内 =========*/
.top-business {
  padding: 137px 0 218px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .top-business {
    padding: 90px 0 120px;
  }
}
.top-business::after {
  content: "";
  position: absolute;
  width: 30.5%;
  height: 100%;
  background-color: #EAF0FD;
  top: 0;
  right: 17.9%;
}
@media screen and (max-width: 768px) {
  .top-business::after {
    width: 44.8%;
    right: 5.12%;
  }
}

.bl-ttl--top-business {
  position: relative;
  z-index: 1;
}

.normalDocs--top-business {
  margin-top: 30px;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .normalDocs--top-business {
    margin-top: 20px;
  }
}

.bl-btn--top-business {
  margin-top: 35px;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .bl-btn--top-business {
    margin-top: 40px;
  }
}

.top-business-link {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  margin-top: 60px;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .top-business-link {
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 30px;
  }
}

.top-business-link__item {
  width: 45.6%;
  aspect-ratio: 1/0.743;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .top-business-link__item {
    width: 100%;
    aspect-ratio: 1/0.56;
  }
}
.top-business-link__item a {
  display: block;
  width: 100%;
  height: 100%;
}
.top-business-link__item:hover .top-business-link__img {
  transform: translate(-50%, -50%) scale(1.2);
  transition: all 0.5s;
}
.top-business-link__item::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: #001F5F;
  opacity: 0.4;
  z-index: 2;
  pointer-events: none;
}

.top-business-linkTxt {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

.top-business-linkTxt__size-l {
  font-size: 24px;
  color: #FFFFFF;
  text-align: center;
  font-weight: 600;
  line-height: 1;
}
@media screen and (max-width: 1024px) {
  .top-business-linkTxt__size-l {
    font-size: 21px;
  }
}

.top-business-linkTxt__size-s {
  font-size: 14px;
  color: #FFFFFF;
  text-align: center;
  font-weight: 600;
  line-height: 1;
  margin-top: 15px;
}
@media screen and (max-width: 768px) {
  .top-business-linkTxt__size-s {
    font-size: 12px;
  }
}

.top-business-link__img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(1);
  transform-origin: center;
  transition: all 0.5s;
  z-index: 1;
}

@media screen and (max-width: 768px) {
  .bl-btn--top-business {
    margin: 40px auto 0;
  }
}
/*========= 採用情報 =========*/
.top-recruit {
  position: relative;
  padding: 120px 0 105px;
  background-color: rgba(0, 31, 95, 0.8);
}
@media screen and (max-width: 768px) {
  .top-recruit {
    padding: 70px 0 85px;
  }
}

.inner--top-recruit {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.top-recruit__side-l {
  width: 380px;
}
@media screen and (max-width: 768px) {
  .top-recruit__side-l {
    width: 100%;
  }
}

.normalDocs--top-recruit {
  margin-top: 54px;
  color: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .normalDocs--top-recruit {
    margin-top: 30px;
  }
}

.bl-btn--top-recruit {
  margin-top: 100px;
}
@media screen and (max-width: 768px) {
  .bl-btn--top-recruit {
    margin: 40px auto;
  }
}

.top-recruit__side-r {
  width: 59.8%;
}
@media screen and (max-width: 768px) {
  .top-recruit__side-r {
    width: 100%;
  }
}

.top-recruit__images {
  width: 100%;
  aspect-ratio: 1/1.125;
  position: relative;
}
@media screen and (max-width: 768px) {
  .top-recruit__images {
    margin-top: 15px;
  }
}
.top-recruit__images .top-recruit__image-item:first-of-type {
  top: 8.17%;
  left: 0;
}
.top-recruit__images .top-recruit__image-item:nth-child(2) {
  bottom: 0;
  left: 27.4%;
}
.top-recruit__images .top-recruit__image-item:last-of-type {
  top: 0;
  right: 0;
}

.top-recruit__image-item {
  width: 38.79%;
  position: absolute;
}

/*========= 会社概要 =========*/
.top-company {
  padding: 137px 0 160px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .top-company {
    padding: 90px 0 100px;
  }
}

.top-company__bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.top-company-link {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  margin-top: 60px;
}
@media screen and (max-width: 768px) {
  .top-company-link {
    flex-direction: column;
    gap: 15px;
  }
}

.top-company-link__item {
  width: 47.4%;
  aspect-ratio: 1/1.19;
  position: relative;
  top: 0;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.16);
  border-radius: 26px;
  transition: all 0.5s;
}
@media screen and (max-width: 768px) {
  .top-company-link__item {
    width: 100%;
    aspect-ratio: 1/0.713;
    border-radius: 20px;
    overflow: hidden;
  }
}
@media screen and (min-width: 1023.9px) {
  .top-company-link__item:hover {
    top: -20px;
    transition: all 0.5s;
  }
}
.top-company-link__item a {
  display: block;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .top-company-link__item a {
    width: 100%;
    aspect-ratio: 1/0.713;
  }
}

.top-company-link__img {
  width: 100%;
  height: 100%;
}

.top-company-link__btn {
  position: absolute;
  width: 71%;
  left: 0;
  bottom: 9.55%;
  background-color: #2967E6;
  padding: 21px 0 21px 53px;
}
@media screen and (max-width: 1280px) {
  .top-company-link__btn {
    padding: 21px 0 21px 21px;
  }
}
@media screen and (max-width: 768px) {
  .top-company-link__btn {
    padding: 13px 0 13px 30px;
    width: 69.5%;
  }
}
.top-company-link__btn::before {
  content: "";
  position: absolute;
  bottom: 28px;
  right: 8.8%;
  width: 26px;
  height: 1px;
  background-color: #FFFFFF;
}
.top-company-link__btn::after {
  content: "";
  position: absolute;
  bottom: 31px;
  right: 8.8%;
  width: 7px;
  height: 1px;
  background-color: #FFFFFF;
  transform: rotate(45deg);
}

.top-company-link__ja {
  color: #FFFFFF;
  font-size: 20px;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1;
}
@media screen and (max-width: 1280px) {
  .top-company-link__ja {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  .top-company-link__ja {
    font-size: 18px;
  }
}

.top-company-link__en {
  color: #FFFFFF;
  font-size: 14px;
  letter-spacing: 0;
  line-height: 1;
  margin-top: 10px;
  font-family: "Roboto Condensed", sans-serif;
}

/*======== 地域貢献とSDGsへの取り組み ========*/
.contribution-sdgs {
  padding: 127px 0 210px;
}
@media screen and (max-width: 768px) {
  .contribution-sdgs {
    padding: 100px 0 95px;
  }
}

.contribution-sdgs__box {
  width: 100%;
  padding: 40px 0;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.16);
  border-radius: 10px;
}
@media screen and (max-width: 768px) {
  .contribution-sdgs__box {
    padding: 25px 0 45px;
  }
}

.contribution-sdgs__ttl {
  display: flex;
  align-items: center;
  justify-content: center;
}

.contribution-sdgs__ttlDot {
  width: 21px;
  margin-right: 12px;
}
@media screen and (max-width: 768px) {
  .contribution-sdgs__ttlDot {
    margin-right: 20px;
  }
}

.contribution-sdgs__ttlTxt {
  font-size: 26px;
  font-weight: 700;
  line-height: 1;
  color: #001F5F;
  letter-spacing: 0.052em;
}
@media screen and (max-width: 768px) {
  .contribution-sdgs__ttlTxt {
    font-size: 20px;
    line-height: 1.45;
  }
}

.chibajets {
  margin-top: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .chibajets {
    margin-top: 40px;
    display: block;
  }
}

.chibajets__img {
  width: 14.57%;
  margin-right: 7.4%;
}
@media screen and (max-width: 768px) {
  .chibajets__img {
    width: 27%;
    margin: 0 auto;
  }
}

@media screen and (max-width: 768px) {
  .chibajets__txt {
    margin: 0 auto;
  }
}

.chibajets__ttl {
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0.048em;
  line-height: 1;
  color: #C8191E;
}
@media screen and (max-width: 768px) {
  .chibajets__ttl {
    font-size: 18px;
    margin: 35px auto 0;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }
}

.chibajets__detail {
  color: #C8191E;
  font-size: 18px;
  line-height: 1.44;
  letter-spacing: 0.036em;
  margin-top: 25px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .chibajets__detail {
    font-size: 16px;
    margin: 5px auto 0;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }
}

.chibajets__explain {
  padding: 15px 0;
  margin-top: 38px;
  background-color: #001F5F;
  color: #FFFFFF;
  text-align: center;
  font-weight: 600;
  font-size: 20px;
  line-height: 1.45;
}
@media screen and (max-width: 768px) {
  .chibajets__explain {
    padding: 18px 0;
    margin-top: 25px;
    font-size: 12px;
  }
}

.chibajets__link {
  margin: 24px auto 0;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
@media screen and (max-width: 768px) {
  .chibajets__link {
    margin-top: 30px;
  }
}
.chibajets__link a {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  padding-bottom: 5px;
  border-bottom: 1px solid #151515;
  transition: all 0.5s;
  opacity: 1;
  padding-left: 5px;
}
@media screen and (max-width: 768px) {
  .chibajets__link a {
    padding-left: 5px;
  }
}
.chibajets__link a img {
  display: block;
  width: 14px;
  margin-left: 8px;
}
@media screen and (max-width: 768px) {
  .chibajets__link a img {
    margin-left: 32px;
  }
}
.chibajets__link a:hover {
  transition: all 0.5s;
  opacity: 0.8;
}

.sdgs {
  margin-top: 42px;
}
@media screen and (max-width: 768px) {
  .sdgs {
    margin-top: 30px;
  }
}

.sdgs-content {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 48px;
}
@media screen and (max-width: 768px) {
  .sdgs-content {
    display: block;
    margin-top: 30px;
  }
}

.sdgs__img {
  width: 48.2%;
  margin-right: 2.8%;
}
@media screen and (max-width: 768px) {
  .sdgs__img {
    width: 91.5%;
    margin: 0 auto;
  }
}

.sdgs-explain {
  width: 41.7%;
}
@media screen and (max-width: 768px) {
  .sdgs-explain {
    width: 91.5%;
    margin: 30px auto 0;
  }
}

.normalDocs--sdgs {
  font-size: 18px;
  line-height: 1.44;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .normalDocs--sdgs {
    font-size: 14px;
    font-weight: 600;
  }
}

.bl-btn--sdgs {
  margin-top: 43px;
}
@media screen and (max-width: 768px) {
  .bl-btn--sdgs {
    margin: 43px auto 0;
  }
}

/*========= 下部お問い合わせ ==========*/
.common-contact {
  padding: 72px 0 142px;
  background-color: #001950;
}
@media screen and (max-width: 768px) {
  .common-contact {
    padding: 50px 0 85px;
  }
}

.common-contact__upper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 5.2% 52px 0;
  border-bottom: 1px solid #FFFFFF;
}
@media screen and (max-width: 768px) {
  .common-contact__upper {
    display: block;
    padding: 0 0 60px 0;
  }
}

.common-contact__overview {
  width: 470px;
}
@media screen and (max-width: 1024px) {
  .common-contact__overview {
    width: 48%;
  }
}
@media screen and (max-width: 768px) {
  .common-contact__overview {
    width: 100%;
  }
}

.common-contact__explain {
  line-height: 2;
  color: #FFFFFF;
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .common-contact__explain {
    margin-top: 30px;
  }
}

.common-contact__formLink {
  width: 424px;
  position: relative;
  height: 336px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 27px;
  border-radius: 15px;
  background-color: #FFFFFF;
}
@media screen and (max-width: 1024px) {
  .common-contact__formLink {
    width: 48%;
  }
}
@media screen and (max-width: 768px) {
  .common-contact__formLink {
    width: 100%;
    height: auto;
    aspect-ratio: 1/0.66;
    margin-top: 50px;
    gap: 10px;
  }
}

.common-contact__form-bg {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transform: scale(1);
  transition: all 0.5s;
}
@media screen and (min-width: 1023.9px) {
  .common-contact__form-bg.is-scale-up {
    transform: scale(1.2);
    transition: all 0.5s;
  }
}

.common-contact__form-icon {
  width: 18.8%;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .common-contact__form-icon {
    width: 19.59%;
  }
}

.common-contact__form-txt {
  color: #001F5F;
  font-size: 22px;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .common-contact__form-txt {
    font-size: 16px;
  }
}

.common-contact__bottom {
  margin-top: 52px;
}
@media screen and (max-width: 768px) {
  .common-contact__bottom {
    margin-top: 60px;
  }
}

.contactMethod {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .contactMethod {
    flex-direction: column;
    gap: 20px;
  }
}

.contactMethod__item {
  width: 47.8%;
  background-color: #FFFFFF;
  border-radius: 80px;
  transition: all 0.5s;
}
@media screen and (max-width: 768px) {
  .contactMethod__item {
    width: 100%;
  }
}
.contactMethod__item a {
  padding: 20px 0;
  display: block;
}
@media screen and (min-width: 1023.9px) {
  .contactMethod__item:hover {
    opacity: 0.8;
    transition: all 0.5s;
  }
}

.contactMethod__item--fax {
  padding: 20px 0;
}


.contactMethod__item--fax:hover{
	opacity: 1;
}
.contactMethod-name {
  line-height: 1;
  text-align: center;
  color: #151515;
}
@media screen and (max-width: 768px) {
  .contactMethod-name {
    font-size: 16px;
  }
}

.contactMethod-numWrap {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 10px;
}

.contactMethod-icon--tel {
  margin-right: 7px;
  width: min(2.5vw, 36px);
}
@media screen and (max-width: 768px) {
  .contactMethod-icon--tel {
    width: 26px;
    margin-right: 12px;
  }
}

.contactMethod-icon--fax {
  margin-right: 14px;
  width: min(2.7vw, 40px);
}
@media screen and (max-width: 768px) {
  .contactMethod-icon--fax {
    width: 30px;
    margin-right: 12px;
  }
}

.contactMethod-num {
  font-size: clamp(25px, 2.7vw, 39px);
  line-height: 1;
  color: #001F5F;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .contactMethod-num {
    font-size: 30px;
  }
}

.contact-time {
  line-height: 1;
  padding: 4px 30px;
  background-color: #2967E6;
  border-radius: 16px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin: 10px auto 0;
  color: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .contact-time {
    padding: 7px 35px;
  }
}

/*---------------------------
ABOUTページ
---------------------------*/
/*===== 私たちの約束 =====*/
.promise {
  margin-top: 220px;
  position: relative;
  padding-bottom: 270px;
}
@media screen and (max-width: 768px) {
  .promise {
    margin-top: 81px;
    padding-bottom: 0;
  }
}

.promise-images {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 768px) {
  .promise-images {
    position: relative;
    top: unset;
    left: unset;
    margin-top: 51px;
    width: 100%;
    height: unset;
    aspect-ratio: 1/0.725;
  }
}
.promise-images .promise-image__item:first-of-type {
  width: 15%;
  top: 0;
  left: 23.6%;
  transform: translateY(-33%);
}
@media screen and (max-width: 768px) {
  .promise-images .promise-image__item:first-of-type {
    width: 26.6%;
    top: 0;
    left: 6.15%;
    transform: unset;
  }
}
.promise-images .promise-image__item:nth-of-type(2) {
  width: 21.3%;
  top: 0;
  right: 2.6%;
}
@media screen and (max-width: 768px) {
  .promise-images .promise-image__item:nth-of-type(2) {
    width: 31.7%;
    top: 10.6;
    left: 50%;
    right: unset;
  }
}
.promise-images .promise-image__item:nth-of-type(3) {
  width: 23.4%;
  left: 8.4%;
  bottom: 27.9%;
}
@media screen and (max-width: 768px) {
  .promise-images .promise-image__item:nth-of-type(3) {
    width: 29.78%;
    left: 0;
    bottom: 2.8%;
  }
}
.promise-images .promise-image__item:nth-of-type(4) {
  width: 15.5%;
  bottom: 0;
  left: 37.22%;
}
@media screen and (max-width: 768px) {
  .promise-images .promise-image__item:nth-of-type(4) {
    width: 22.4%;
    left: 39.9%;
    bottom: 22.6%;
  }
}
.promise-images .promise-image__item:last-of-type {
  width: 14.5%;
  bottom: 5.58%;
  right: 7.5%;
}
@media screen and (max-width: 768px) {
  .promise-images .promise-image__item:last-of-type {
    width: 27.32%;
    bottom: 0;
    right: 0;
  }
}

.promise-image__item {
  position: absolute;
}

.loop-slider--promise {
  top: 30%;
  position: absolute;
  opacity: 0.3;
}
@media screen and (max-width: 768px) {
  .loop-slider--promise {
    top: 20%;
  }
}

.promisettl {
  font-size: 32px;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
  color: #001F5F;
}
@media screen and (max-width: 768px) {
  .promisettl {
    font-size: 20px;
  }
}

.promise__list {
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .promise__list {
    margin-top: 27px;
  }
}
.promise__list .promise__item:not(:first-of-type) {
  margin-top: 30px;
}
@media screen and (max-width: 768px) {
  .promise__list .promise__item:not(:first-of-type) {
    margin-top: 27px;
  }
}

.promise-num {
  font-size: 26px;
  line-height: 1;
  color: #2967E6;
  text-align: center;
  font-family: "Oswald", sans-serif;
}
@media screen and (max-width: 768px) {
  .promise-num {
    font-size: 18px;
  }
}

.promise-list__ttl {
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  margin-top: 15px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .promise-list__ttl {
    font-size: 16px;
    margin-top: 8px;
  }
}

.normalDocs--promise {
  margin-top: 15px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .normalDocs--promise {
    font-size: 12px;
  }
}

/*===== 代表挨拶 =====*/
.message {
  margin-top: 124px;
  padding: 76px 0 112px;
  background-color: #EAEFFD;
}
@media screen and (max-width: 768px) {
  .message {
    margin-top: 85px;
    padding: 58px 0;
  }
}

.message-content {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 4.9%;
  margin-top: 44px;
}
@media screen and (max-width: 768px) {
  .message-content {
    display: block;
    margin-top: 27px;
  }
}

.message__side-l {
  width: min(40%, 95.1% - 500px);
}
@media screen and (max-width: 1280px) {
  .message__side-l {
    width: calc(95.1% - 390px);
  }
}
@media screen and (max-width: 1024px) {
  .message__side-l {
    width: 45.1%;
  }
}
@media screen and (max-width: 768px) {
  .message__side-l {
    width: 100%;
  }
}

.message__side-r {
  /*width: 500px;
  margin-right: 5.2%;*/
	width: 100%;
}
@media screen and (max-width: 1280px) {
  .message__side-r {
    width: 390px;
  }
}
@media screen and (max-width: 1024px) {
  .message__side-r {
    width: 50%;
  }
}
@media screen and (max-width: 768px) {
  .message__side-r {
    width: 100%;
    margin-top: 25px;
    margin-right: 0;
  }
}

.message-sign {
  margin-top: 30px;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .message-sign {
    margin-top: 15px;
  }
}

.normalDocs--message {
  line-height: 2;
}

/*===== SDGs =====*/
.sdgs {
  margin-top: 141px;
}
@media screen and (max-width: 768px) {
  .sdgs {
    margin-top: 51px;
  }
}

.sdgs-upper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2.5%;
}
@media screen and (max-width: 768px) {
  .sdgs-upper {
    flex-direction: column-reverse;
    gap: 25px;
  }
}

.sdgs__side-l {
  width: 530px;
}
@media screen and (max-width: 1280px) {
  .sdgs__side-l {
    width: 400px;
  }
}
@media screen and (max-width: 768px) {
  .sdgs__side-l {
    width: 100%;
  }
}

.sdgs__side-r {
  width: calc(97.5% - 530px);
}
@media screen and (max-width: 1280px) {
  .sdgs__side-r {
    width: calc(97.5% - 400px);
  }
}
@media screen and (max-width: 768px) {
  .sdgs__side-r {
    width: 100%;
  }
}

.section-overviewTxt--sdgs {
  margin-top: 35px;
}
@media screen and (max-width: 1280px) {
  .section-overviewTxt--sdgs {
    font-size: 22px;
  }
}
@media screen and (max-width: 768px) {
  .section-overviewTxt--sdgs {
    font-size: 18px;
  }
}

.normalDocs--about-sdgs {
  margin-top: 42px;
}
@media screen and (max-width: 768px) {
  .normalDocs--about-sdgs {
    margin-top: 27px;
  }
}

.contribution-sdgs__ttl--about-sdgs {
  margin: 0 auto;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

.about-sdgs-explain {
  margin-top: 115px;
}
@media screen and (max-width: 768px) {
  .about-sdgs-explain {
    margin-top: 70px;
  }
}
.about-sdgs-explain .sdgs-explain__item:not(:first-of-type) {
  margin-top: 100px;
}
@media screen and (max-width: 768px) {
  .about-sdgs-explain .sdgs-explain__item:not(:first-of-type) {
    margin-top: 75px;
  }
}

.sdgs-explain__list {
  margin-top: 50px;
}
@media screen and (max-width: 768px) {
  .sdgs-explain__list {
    margin-top: 30px;
  }
}
.sdgs-explain__list .sdgs-explain__list-item:not(:first-of-type) {
  margin-top: 25px;
}
@media screen and (max-width: 768px) {
  .sdgs-explain__list .sdgs-explain__list-item:not(:first-of-type) {
    margin-top: 20px;
  }
}

.sdgs-explain__list-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 7%;
  padding: 42px 5%;
  background-color: #F8FBFF;
  border: 1px solid #2967E6;
  position: relative;
}
@media screen and (max-width: 768px) {
  .sdgs-explain__list-item {
    display: block;
    padding: 36px 4.38% 31px;
  }
}

.sdgs-explain-num {
  position: absolute;
  top: 10px;
  left: 10px;
  font-size: 46px;
  font-family: "Oswald", sans-serif;
  color: #2967E6;
  line-height: 1;
  opacity: 0.17;
}
@media screen and (max-width: 768px) {
  .sdgs-explain-num {
    top: 5px;
    left: 5px;
  }
}

.sdgs-explain__side-l {
  width: calc(93% - 252px);
}
@media screen and (max-width: 768px) {
  .sdgs-explain__side-l {
    width: 100%;
  }
}

.sdgs-explain-ttl {
  font-size: 18px;
  font-weight: 600;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .sdgs-explain-ttl {
    font-size: 16px;
    text-align: center;
  }
}

.normalDocs--sdgs-explain {
  margin-top: 26px;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .normalDocs--sdgs-explain {
    margin-top: 18px;
  }
}

.sdgs-explain__side-r {
  width: 252px;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .sdgs-explain__side-r {
    width: 100%;
    justify-content: flex-start;
    margin-top: 18px;
    gap: 13px;
  }
}

.sdgs-explain__icon {
  width: 114px;
  height: 114px;
}
@media screen and (max-width: 768px) {
  .sdgs-explain__icon {
    width: 57px;
    height: 57px;
  }
}

.sdgs-utilization__ttl {
  color: #2967E6;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .sdgs-utilization__ttl {
    font-size: 16px;
  }
}

.normalDocs--sdgs-utilization {
  margin-top: 25px;
}
@media screen and (max-width: 768px) {
  .normalDocs--sdgs-utilization {
    margin-top: 20px;
  }
}

/*===== 会社紹介動画 =====*/
.movie {
  margin-top: 155px;
  margin-bottom: 272px;
}
@media screen and (max-width: 768px) {
  .movie {
    margin-top: 82px;
    margin-bottom: 135px;
  }
}

.introduction__youtube {
  width: 100%;
  margin-top: 50px;
  aspect-ratio: 16/9;
}
@media screen and (max-width: 768px) {
  .introduction__youtube {
    margin-top: 30px;
  }
}
.introduction__youtube iframe {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/*=========================
BUSINESSページ
=========================*/
.page-ttl__size-l--business {
  width: 89.7%;
}

/*===== 当社の強み =====*/
.strength {
  margin-top: 130px;
}
@media screen and (max-width: 768px) {
  .strength {
    margin-top: 65px;
  }
}

.bl-rightContent--strength {
  padding: 61px 0 120px;
  background-image: linear-gradient(180deg, rgb(0, 22, 67) 74%, rgb(0, 50, 152));
}
@media screen and (max-width: 768px) {
  .bl-rightContent--strength {
    padding: 72px 0 62px;
  }
}

.strength__list {
  margin-top: 54px;
}
@media screen and (max-width: 768px) {
  .strength__list {
    margin-top: 28px;
  }
}
.strength__list .strength__item {
  padding-top: 62px;
  padding-bottom: 65px;
  border-bottom: 1px solid #707070;
}
@media screen and (max-width: 768px) {
  .strength__list .strength__item {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
.strength__list .strength__item.first-of-type {
  padding-top: 0;
}
.strength__list .strength__item:nth-of-type(even) {
  flex-direction: row-reverse;
}
.strength__list .strength__item:nth-of-type(even) .strength__content {
  margin-left: 54px;
}
@media screen and (max-width: 768px) {
  .strength__list .strength__item:nth-of-type(even) .strength__content {
    margin-left: 0;
  }
}

.strength__item {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .strength__item {
    display: block;
  }
}

.strength-img {
  width: 35%;
}
@media screen and (max-width: 768px) {
  .strength-img {
    width: 100%;
  }
}

.strength__content {
  width: 54%;
  position: relative;
  padding-top: 4.7%;
}
@media screen and (max-width: 768px) {
  .strength__content {
    width: 100%;
    padding-top: 52px;
    padding-left: 3%;
  }
}

.strength-num {
  position: absolute;
  font-size: 87px;
  line-height: 1;
  color: rgba(255, 255, 255, 0.35);
  top: 0;
  left: 0;
  transform: translateX(-55%);
  font-family: "Oswald", sans-serif;
}
@media screen and (max-width: 768px) {
  .strength-num {
    font-size: 50px;
    top: 15px;
    left: 8.1%;
  }
}

.strength-ttl {
  font-size: 28px;
  font-weight: 700;
  line-height: 1.44;
  color: #FFFFFF;
}
@media screen and (max-width: 1024px) {
  .strength-ttl {
    font-size: 18px;
  }
}

.normalDocs--strength {
  color: #FFFFFF;
  margin-top: 24px;
}

/*===== 主な事業 =====*/
.mainService {
  margin-top: 112px;
  margin-bottom: 191px;
}
@media screen and (max-width: 1024px) {
  .mainService {
    margin-top: 63px;
    margin-bottom: 123px;
  }
}

.mainService-content {
  display: flex;
  margin-top: 53px;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 6%;
}
@media screen and (max-width: 1024px) {
  .mainService-content {
    display: block;
    margin-top: 30px;
  }
}

.mainService__side-l {
  height: calc(100vh - 160px);
  aspect-ratio: 1/1.41;
  position: -webkit-sticky;
  position: sticky;
  top: 80px;
  left: 0;
}
.mainService__side-l img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.mainService__side-r {
  width: 490px;
}
@media screen and (max-width: 1024px) {
  .mainService__side-r {
    width: 100%;
  }
}
.mainService__side-r .mainService-detailContent:not(:first-of-type) {
  margin-top: 240px;
  padding-bottom: 30%;
}
@media screen and (max-width: 1024px) {
  .mainService__side-r .mainService-detailContent:not(:first-of-type) {
    margin-top: 70px;
    padding-bottom: 0;
  }
}

.mainService-name {
  margin-top: 80px;
}
@media screen and (max-width: 1024px) {
  .mainService-name {
    margin-top: 0;
  }
}
.mainService-name .mainService-name__ja {
  font-size: 34px;
  font-weight: 700;
  line-height: 1;
  color: #001F5F;
}
@media screen and (max-width: 768px) {
  .mainService-name .mainService-name__ja {
    font-size: 20px;
  }
}
.mainService-name .mainService-name__en {
  font-size: 20px;
  color: #2967E6;
  line-height: 1;
  margin-top: 8px;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  .mainService-name .mainService-name__en {
    margin-top: 3px;
    font-size: 14px;
  }
}

.mainService-overview {
  margin-top: 47px;
  font-size: 24px;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  .mainService-overview {
    margin-top: 22px;
    font-size: 18px;
  }
}

.normalDocs--mainService {
  margin-top: 36px;
}
@media screen and (max-width: 768px) {
  .normalDocs--mainService {
    margin-top: 15px;
  }
}

.bl-btn--mainService {
  margin-top: 35px;
}

.mainService__side-l .mainService-img {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 0.6s ease;
}

.mainService__side-l .mainService-img.is-active {
  opacity: 1;
}

.mainService-detailContent {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

.mainService-detailContent.is-visible {
  opacity: 1;
  transform: translateY(0);
}

@media screen and (max-width: 1024px) {
  .mainService-img {
    margin-top: 20px;
  }

.bl-btn--mainService {
  margin: 35px auto;
}

}
/*=========================
管土木工事事業ページ
=========================*/
.firstSection__side-r--businessDetail {
  margin-top: 0;
}
@media screen and (max-width: 1024px) {
  .firstSection__side-r--businessDetail {
    margin-top: 20px;
  }
}

.inner--businessDetail {
  align-items: center;
}

.businessDetai-ttl {
  font-size: 47px;
  letter-spacing: 0.068em;
  line-height: 1;
  font-weight: 700;
  color: #001F5F;
}
@media screen and (max-width: 1280px) {
  .businessDetai-ttl {
    font-size: 35px;
  }
}
@media screen and (max-width: 768px) {
  .businessDetai-ttl {
    font-size: 20px;
  }
}

.businessDetai-ttl__ja {
  font-size: 47px;
  letter-spacing: 0.068em;
  line-height: 1;
  font-weight: 700;
  color: #001F5F;
}
@media screen and (max-width: 1280px) {
  .businessDetai-ttl__ja {
    font-size: 35px;
  }
}
@media screen and (max-width: 768px) {
  .businessDetai-ttl__ja {
    font-size: 20px;
  }
}

.businessDetai-ttl__en {
  font-size: 20px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.068em;
  margin-top: 10px;
  color: #2967E6;
}
@media screen and (max-width: 1280px) {
  .businessDetai-ttl__en {
    font-size: 18px;
  }
}
@media screen and (max-width: 1280px) {
  .businessDetai-ttl__en {
    font-size: 14px;
    margin-top: 5px;
  }
}

.bg-paleBlue {
  background-color: #EAEFFD;
}

.bl-rightContent--businesDetail {
  padding: 83px 0 178px;
}
@media screen and (max-width: 1024px) {
  .bl-rightContent--businesDetail {
    padding-left: 7.4%;
  }
}
@media screen and (max-width: 768px) {
  .bl-rightContent--businesDetail {
    padding: 63px 6.1% 57px;
  }
}

.cityGas {
  margin-top: 140px;
}
@media screen and (max-width: 768px) {
  .cityGas {
    margin-top: 67px;
  }
}

.inner--businessDetail-rightAlignment {
  margin-right: 0;
  width: 100%;
  padding-right: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 5.3%;
}
@media screen and (max-width: 768px) {
  .inner--businessDetail-rightAlignment {
    flex-direction: column-reverse;
    gap: 22px;
  }
}

.businessDetail-rightAlignment__side-l {
  width: 497px;
}
@media screen and (max-width: 768px) {
  .businessDetail-rightAlignment__side-l {
    width: 100%;
  }
}

.businessDetail-subTtl {
  font-size: 34px;
  font-weight: 700;
  letter-spacing: 0.068em;
  line-height: 1.44;
  color: #001F5F;
}
@media screen and (max-width: 768px) {
  .businessDetail-subTtl {
    font-size: 18px;
  }
}

.normalDocs--underSubttl {
  margin-top: 30px;
  width: 450px;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .normalDocs--underSubttl {
    width: 100%;
    margin-top: 15px;
  }
}

.pointBox {
  padding: 38px 35px 38px 45px;
  background-color: #FFFFFF;
  margin-top: 57px;
}
@media screen and (max-width: 768px) {
  .pointBox {
    padding: 12px 20px 17px 18px;
    margin-top: 22px;
  }
}

.pointTtl {
  font-size: 39px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #2967E6;
}
@media screen and (max-width: 768px) {
  .pointTtl {
    font-size: 20px;
  }
}

.point-list {
  margin-top: 27px;
}
.point-list .point-item:not(:first-of-type) {
  margin-top: 4px;
}

.point-item {
  position: relative;
  padding-left: 20px;
  letter-spacing: 0.032em;
}
@media screen and (max-width: 768px) {
  .point-item {
    padding-left: 15.5px;
  }
}
.point-item::before {
  content: "";
  position: absolute;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background-color: #2967E6;
  top: 10px;
  left: 0;
}
@media screen and (max-width: 768px) {
  .point-item::before {
    top: 6px;
  }
}

.inner--businessDetail-feature {
  margin-top: 108px;
}
@media screen and (max-width: 768px) {
  .inner--businessDetail-feature {
    margin-top: 60px;
    width: 100%;
  }
}

.feature-barTtl {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin: 0 auto;
  position: relative;
  padding: 0 22px;
  font-size: 31px;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1;
  color: #001F5F;
}
@media screen and (max-width: 768px) {
  .feature-barTtl {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    font-size: 18px;
    text-align: center;
  }
}
.feature-barTtl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 96px;
  height: 2px;
  background-color: #2967E6;
  transform: translate(-100%, -50%);
}
@media screen and (max-width: 768px) {
  .feature-barTtl::before {
    width: 40px;
    transform: translate(0, -50%);
  }
}
.feature-barTtl::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 96px;
  height: 2px;
  background-color: #2967E6;
  transform: translate(100%, -50%);
}
@media screen and (max-width: 768px) {
  .feature-barTtl::after {
    width: 40px;
    transform: translate(0, -50%);
  }
}

.featureImg-list {
  margin-top: 66px;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 24px;
}
@media screen and (max-width: 768px) {
  .featureImg-list {
    margin-top: 48px;
    flex-direction: column;
    gap: 15px;
  }
}

.featureImg-item {
  width: calc(50% - 12px);
}
@media screen and (max-width: 768px) {
  .featureImg-item {
    width: 100%;
  }
}

.waterSewage {
  margin-top: 80px;
}

.fullSupport {
  margin-top: 208px;
}
@media screen and (max-width: 768px) {
  .fullSupport {
    margin-top: 90px;
  }
}

.normalDocs--fullSupport {
  margin-top: 30px;
  padding-right: 3.6%;
}
@media screen and (max-width: 768px) {
  .normalDocs--fullSupport {
    margin-top: 35px;
    padding-right: 0;
  }
}

.fullSupport__list {
  margin-top: 64px;
  padding-right: 3.6%;
  margin-bottom: 206px;
}
@media screen and (max-width: 768px) {
  .fullSupport__list {
    margin-top: 60px;
    padding-right: 0;
    margin-bottom: 100px;
  }
}
.fullSupport__list .fullSupport__item:not(:first-of-type) {
  margin-top: 22px;
}
@media screen and (max-width: 768px) {
  .fullSupport__list .fullSupport__item:not(:first-of-type) {
    margin-top: 15px;
  }
}

.fullSupport__item {
  padding: 28px 25px;
  background-color: #F9FBFF;
  border: 1px solid #2967E6;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 6.7%;
}
@media screen and (max-width: 768px) {
  .fullSupport__item {
    padding: 20px 20px 33px;
    flex-direction: column;
    gap: 15px;
  }
}

.fullSupport-img {
  width: 27%;
}
@media screen and (max-width: 768px) {
  .fullSupport-img {
    width: 100%;
  }
}

.fullSupport-txt-wrap {
  width: 66.3%;
}
@media screen and (max-width: 768px) {
  .fullSupport-txt-wrap {
    position: relative;
	  width: 100%;
  }
}

.fullSupport-num {
  position: absolute;
  font-size: 87px;
  font-weight: 400;
  font-family: "Oswald", sans-serif;
  line-height: 1;
  letter-spacing: 0.032em;
  right: 14px;
  top: 0;
  opacity: 0.17;
  color: #2967E6;
}
@media screen and (max-width: 768px) {
  .fullSupport-num {
    font-size: 49px;
    right: -16px;
    top: -15px;
  }
}

.fullSupport-ttl {
  font-size: 20px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #2967E6;
}
@media screen and (max-width: 768px) {
  .fullSupport-ttl {
    font-size: 18px;
    margin-top: 15px;
  }
}

.fullSupport-explain {
  margin-top: 15px;
}
@media screen and (max-width: 768px) {
  .fullSupport-explain {
    margin-top: 10px;
  }
}

/*=========================
天然ガス事業ページ
=========================*/
.gasDeposits {
  margin-top: 166px;
}
@media screen and (max-width: 768px) {
  .gasDeposits {
    margin-top: 55px;
  }
}

.bl-rightContent--iodine {
  padding-top: 0;
  padding-bottom: 0;
}
@media screen and (max-width: 1024px) {
  .bl-rightContent--iodine {
    padding-left: 0;
    padding-right: 6.1%;
  }
}
@media screen and (max-width: 768px) {
  .bl-rightContent--iodine {
    padding-right: 0;
  }
}

.bl-rightContent--gasDeposits {
  padding-top: 0;
  padding-bottom: 0;
}

.businessDetail-subTtl--size-s {
  font-size: 32px;
}
@media screen and (max-width: 1280px) {
  .businessDetail-subTtl--size-s {
    font-size: 25px;
  }
}

@media screen and (max-width: 1280px) {
  .businessDetail-subTtl--gasDeposits {
    font-size: 25px;
  }
  .businessDetail-subTtl--iodine {
    font-size: 25px;
  }
}
@media screen and (max-width: 768px) {
  .businessDetail-subTtl--gasDeposits {
    font-size: 18px;
  }
  .businessDetail-subTtl--iodine {
    font-size: 18px;
    width: 87.8%;
    margin-left: auto;
    margin-right: auto;
  }
}
.businessDetail-rightAlignment__side-l--gasDeposit {
  width: 500px;
}
@media screen and (max-width: 1280px) {
  .businessDetail-rightAlignment__side-l--gasDeposit {
    width: 380px;
    padding: 50px 0;
  }
}
@media screen and (max-width: 768px) {
  .businessDetail-rightAlignment__side-l--gasDeposit {
    width: 100%;
    padding: 8px 0 40px;
  }
}

.businessDetail-rightAlignment__side-r--gasDeposits {
  width: calc(94.8% - 500px);
}
@media screen and (max-width: 1280px) {
  .businessDetail-rightAlignment__side-r--gasDeposits {
    width: calc(94.8% - 380px);
  }
}
@media screen and (max-width: 768px) {
  .businessDetail-rightAlignment__side-r--gasDeposits {
    width: 100vw;
  }
}

@media screen and (max-width: 1280px) {
  .normalDocs--underSubttl--gasDeposits {
    width: 380px;
  }
}
@media screen and (max-width: 768px) {
  .normalDocs--underSubttl--gasDeposits {
    width: 100%;
  }
}
@media screen and (max-width: 1280px) {
  .normalDocs--underSubttl.normalDocs--underSubttl--iodine {
    width: 330px;
  }
}
@media screen and (max-width: 768px) {
  .normalDocs--underSubttl.normalDocs--underSubttl--iodine {
    width: 87.8%;
    margin: 15px auto 0;
  }
}
@media screen and (max-width: 1280px) {
  .businessDetail-rightAlignment__side-r--iodine {
    padding: 50px 0;
  }
}
.iodine {
  margin-top: 80px;
}
@media screen and (max-width: 768px) {
  .iodine {
    margin-top: 50px;
  }
}

.inner--iodine {
  padding-left: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 5.8%;
}
@media screen and (max-width: 1024px) {
  .inner--iodine {
    width: 93.79%;
    margin-left: 0;
    margin-right: auto;
  }
}
@media screen and (max-width: 768px) {
  .inner--iodine {
    flex-direction: column;
    width: 100%;
  }
}

.businessDetail-iodine__side-l {
  width: calc(94.2% - 450px);
}
@media screen and (max-width: 1280px) {
  .businessDetail-iodine__side-l {
    width: calc(94.2% - 340px);
  }
}
@media screen and (max-width: 768px) {
  .businessDetail-iodine__side-l {
    width: 100%;
  }
}

.iodine__list {
  width: 100%;
  position: relative;
  aspect-ratio: 1/1.17;
}
@media screen and (max-width: 768px) {
  .iodine__list {
    aspect-ratio: 1/0.6;
  }
}
.iodine__list .iodine__item:first-of-type {
  top: 0;
  left: 0;
}
.iodine__list .iodine__item:nth-of-type(2) {
  top: 0;
  left: 33.33%;
}
.iodine__list .iodine__item:nth-of-type(3) {
  top: 0;
  left: 66.66%;
}
.iodine__list .iodine__item:nth-of-type(4) {
  top: 33.33%;
  left: 0;
}
.iodine__list .iodine__item:nth-of-type(5) {
  top: 33.33%;
  left: 33.33%;
}
.iodine__list .iodine__item:nth-of-type(6) {
  top: 33.33%;
  left: 66.66%;
}
.iodine__list .iodine__item:nth-of-type(7) {
  top: 66.66%;
  left: 0;
}
.iodine__list .iodine__item:nth-of-type(8) {
  top: 66.66%;
  left: 33.33%;
}
.iodine__list .iodine__item:last-of-type {
  top: 66.66%;
  left: 66.66%;
}

.iodine__item {
  position: absolute;
  width: 33.33%;
  height: 33.33%;
}
.iodine__item::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: #001F5F;
  opacity: 0.4;
}

.iodine-name {
  position: absolute;
  color: #FFFFFF;
  font-weight: 700;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  width: 100%;
  text-align: center;
}
@media screen and (max-width: 1280px) {
  .iodine-name {
    font-size: 12px;
  }
}

.plant,
.buried {
  margin-top: 115px;
}
@media screen and (max-width: 768px) {
  .plant,
.buried {
    margin-top: 75px;
  }
}

.buried {
  margin-bottom: 180px;
}
@media screen and (max-width: 768px) {
  .buried {
    margin-bottom: 150px;
  }
}

/*==========================
採用情報ページ
==========================*/
.page-ttl__size-l--recruit {
  width: 62.4%;
}

/*======= スライダー =======*/
.worksSlider-wrap {
  width: 100%;
  overflow: hidden;
  margin-top: 90px;
}
@media screen and (max-width: 768px) {
  .worksSlider-wrap {
    margin-top: 63px;
  }
}

.worksSlider {
  width: 252%;
  aspect-ratio: 1/0.1145;
  position: relative;
}
@media screen and (max-width: 768px) {
  .worksSlider {
    width: 452%;
  }
}

@media screen and (max-width: 1024px) {
  .worksSlider {
    width: 735.96%;
  }
}
.worksSlider .worksSlider__block {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  height: 100%;
}

.worksSlider .worksSlider__block .worksSlider__list {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  -webkit-animation: infinity-scroll-left 40s infinite linear 0.5s both;
  animation: infinity-scroll-left 40s infinite linear 0.5s both;
  height: 100%;
  width: 50%;
  display: block;
  position: relative;
}

@media screen and (max-width: 1024px) {
  .worksSlider .worksSlider__block .worksSlider__list {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    -webkit-animation: infinity-scroll-left 30s infinite linear 0.5s both 0.001s;
    animation: infinity-scroll-left 30s infinite linear 0.5s both 0.001s;
  }
}
.worksSlider .worksSlider__block .worksSlider__list .worksSlider__item {
  height: auto;
  position: absolute;
}

.worksSlider .worksSlider__block .worksSlider__list .worksSlider__item:first-of-type {
  width: 18.58% !important;
  top: 14px;
  left: 0.7%;
}

.worksSlider .worksSlider__block .worksSlider__list .worksSlider__item:nth-of-type(2) {
  width: 13.4% !important;
  bottom: 0;
  left: 20.3%;
}

.worksSlider .worksSlider__block .worksSlider__list .worksSlider__item:nth-of-type(3) {
  width: 12.9% !important;
  top: 0;
  left: 37.38%;
}

.worksSlider .worksSlider__block .worksSlider__list .worksSlider__item:nth-of-type(4) {
  width: 15.85% !important;
  bottom: 0;
  left: 53.87%;
}

.worksSlider .worksSlider__block .worksSlider__list .worksSlider__item:nth-of-type(5) {
  width: 9.7% !important;
  top: 0;
  left: 71.3%;
}

.worksSlider .worksSlider__block .worksSlider__list .worksSlider__item:nth-of-type(6) {
  width: 13.2% !important;
  bottom: 3.3%;
  left: 86.8%;
}

.worksSlider .worksSlider__block .worksSlider__list .worksSlider__item img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.16);
}

@-webkit-keyframes infinity-scroll-left {
  from {
    transform: translateX(0%);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0%);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
/*========== 白石管工事の特徴 =========*/
.features {
  margin-top: 133px;
}
@media screen and (max-width: 768px) {
  .features {
    margin-top: 94px;
  }
}

.bl-rightContent--features {
  padding: 75px 0 80px;
}

.interview-faq {
  display: none;
}

.interview-faq.is-open {
  display: block;
}

.featureExplain-item--pageRecruit {
  padding: 41px 0 35px;
}
@media screen and (max-width: 768px) {
  .featureExplain-item--pageRecruit {
    padding: 20px;
  }
}

.featureExplain-txt {
  max-width: 398px;
  margin-left: auto;
  margin-right: auto;
}

/*========== 先輩職員の声 =========*/
.interview {
  margin-top: 117px;
}
@media screen and (max-width: 768px) {
  .interview {
    margin-top: 80px;
  }
}

.interview__list {
  margin-top: 62px;
}
@media screen and (max-width: 768px) {
  .interview__list {
    margin-top: 30px;
  }
}
.interview__list .interview__item {
  padding: 32px 32px 35px;
  background-color: #FFFFFF;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.16);
}
@media screen and (max-width: 768px) {
  .interview__list .interview__item {
    padding: 12px;
  }
}
.interview__list .interview__item:not(:first-of-type) {
  margin-top: 50px;
}
@media screen and (max-width: 768px) {
  .interview__list .interview__item:not(:first-of-type) {
    margin-top: 30px;
  }
}
.interview__list .interview__item:nth-of-type(even) .interview-parsonalLabel {
  position: absolute;
  top: 50%;
  right: unset;
  left: 0;
}
.interview__list .interview__item:nth-of-type(even) .interview-num {
  left: unset;
  right: 0;
}

.interview-parsonalInfo {
  width: 100%;
  position: relative;
}

.interview-img {
  width: 100%;
}

.interview-num {
  font-size: 78px;
  line-height: 1;
  color: #FFFFFF;
  position: absolute;
  bottom: -5px;
  left: 0;
}
@media screen and (max-width: 768px) {
  .interview-num {
    font-size: 39px;
  }
}

.interview-parsonalLabel {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-45%);
  padding: 20px 0 20px 43px;
  background-color: #2967E6;
  width: 312px;
}
@media screen and (max-width: 768px) {
  .interview-parsonalLabel {
    transform: unset;
    padding: 10px 30px;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }
}

.interview-parsonalLabel__upper {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  gap: 17px;
}
@media screen and (max-width: 768px) {
  .interview-parsonalLabel__upper {
    gap: 7px;
  }
}

.interview-parsonalDepartment {
  font-size: 26px;
  letter-spacing: 0.032em;
  color: #FFFFFF;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .interview-parsonalDepartment {
    font-size: 14px;
  }
}

.interview-parsonalJoin {
  font-size: 14px;
  line-height: 1;
  color: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .interview-parsonalJoin {
    font-size: 10px;
  }
}

.interview-parsonalName {
  font-size: 18px;
  letter-spacing: 0.032em;
  line-height: 1;
  margin-top: 10px;
  color: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .interview-parsonalName {
    font-size: 14px;
    margin-top: 7px;
  }
}

.interview-faq {
  margin-top: 50px;
}
.interview-faq .interview-faq__item:not(:first-of-type) {
  margin-top: 35px;
}

.interview-question {
  font-size: 18px;
  color: #2967E6;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .interview-question {
    font-size: 16px;
  }
}

.interview-answer {
  margin-top: 20px;
  line-height: 1.7;
}
@media screen and (max-width: 768px) {
  .interview-answer {
    margin-top: 15px;
  }
}

.accordion-open {
  margin-top: 30px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin: 30px auto;
  font-size: 20px;
  font-weight: 600;
  color: #001F5F;
  line-height: 1;
  cursor: pointer;
  position: relative;
}
@media screen and (max-width: 768px) {
  .accordion-open {
    font-size: 16px;  
	  padding: 0 0 0 39px;
  }
}
.accordion-open::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -14px;
  transform: translate(-100%, -50%);
  width: 30px;
  height: 30px;
  border: 1px solid #001F5F;
}
@media screen and (max-width: 768px) {
  .accordion-open::before {
    width: 25px;
    height: 25px; 
	  left: 0;
    transform: translate(7%, -47%);
  }
}
.accordion-open::after {
  content: "+";
  position: absolute;
  font-size: 30px;
  color: #001F5F;
  line-height: 1;
  top: 50%;
	    left: -19px;
    transform: translate(-100%, -57%);
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .accordion-open::after {
    font-size: 24px;
	  left: 0;
    transform: translate(55%, -50%);
  }
}
.accordion-open.is-open::after {
  content: "−";
  position: absolute;
  font-size: 30px;
  color: #001F5F;
  line-height: 1;
  top: 50%;
  left: -19px;
  transform: translate(-100%, -53%);
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .accordion-open.is-open::after {
    font-size: 24px;
    left: 23px;
  }
}

.contribution-sdgs__ttl--interview {
  margin-top: 142px;
}
@media screen and (max-width: 768px) {
  .contribution-sdgs__ttl--interview {
    margin-top: 93px;
  }
}

.interviewMovie {
  margin-top: 30px;
  width: 100%;
  aspect-ratio: 16/9;
  position: relative;
}
.interviewMovie iframe {
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .interviewMovie {
    margin-top: 43px;
  }
}

.loop-slider--recruit {
  margin-top: 122px;
}
@media screen and (max-width: 768px) {
  .loop-slider--recruit {
    margin-top: 43px;
  }
}

.loop-slider__item--recruit {
  font-size: 9.375vw;
  color: #001F5F;
  font-weight: 600;
  opacity: 0.05;
}
@media screen and (max-width: 768px) {
  .loop-slider__item--recruit {
    font-size: 10.375vw;
  }
}

/*===== 募集要項 =====*/
.recruitment {
  margin-top: 106px;
  margin-bottom: 200px;
}
@media screen and (max-width: 768px) {
  .recruitment {
    margin-top: 70px;
    margin-bottom: 115px;
  }
}

.recruitment__content {
  padding: 60px 8.66% 90px;
  border: 1px solid rgba(41, 103, 230, 0.5);
}
@media screen and (max-width: 768px) {
  .recruitment__content {
    padding: 31px 7%;
  }
}

.recruitment-ttl {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin: 0 auto;
}

.recruitment__ttl__ja {
  font-size: 34px;
  font-weight: 600;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .recruitment__ttl__ja {
    font-size: 20px;
  }
}

.recruitment__ttl__en {
  font-size: 20px;
  font-weight: 600;
  line-height: 1;
  color: #2967E6;
  margin-top: 10px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .recruitment__ttl__en {
    font-size: 14px;
    margin-top: 5px;
  }
}

/*


            <!-- 募集要項 -->
            <section class="">
                <table class="">
                    <tbody class="commonTable__body">
                        <tr class="commonTable__row">
                            <th class="commonTable__head">募集職種</th>
                            <td class="commonTable__data">配管・土木作業（上下水道配管・ガス配管工事）</td>
                        </tr>
                        <tr class="commonTable__row">
                            <th class="commonTable__head">仕事内容</th>
                            <td class="commonTable__data">
                                ガス及び水道等の配管を施工するお仕事です。工事現場で現場監督のもと、計画通りに安全第一で工事を進めていきます。
                            </td>
                        </tr>
                        <tr class="commonTable__row">
                            <th class="commonTable__head">雇用形態</th>
                            <td class="commonTable__data">正社員　※3ヶ月間の試用期間あり</td>
                        </tr>
                        <tr class="commonTable__row">
                            <th class="commonTable__head">応募資格・条件</th>
                            <td class="commonTable__data">
                                〇 既卒・第二新卒歓迎
                                〇 未経験OK
                                〇 学歴不問

                                ・普通運転免許（AT限定可）
                                ・基本PCスキル（エクセル、ワードの基本操作）

                                ＜下記経歴、資格をお持ちの方は優遇＞
                                ・1級土木施工管理技士、2級土木施工管理技士
                                ・現場監督の経験がある方
                                ・AutoCADの操作ができる方
                                ・建設業のお仕事経験がある方
                            </td>
                        </tr>
                        <tr class="commonTable__row">
                            <th class="commonTable__head">勤務地</th>
                            <td class="commonTable__data">千葉県長生郡一宮町8802</td>
                        </tr>
                        <tr class="commonTable__row">
                            <th class="commonTable__head">勤務時間</th>
                            <td class="commonTable__data">8:00～17:30（休憩時間90分）</td>
                        </tr>
                        <tr class="commonTable__row">
                            <th class="commonTable__head">給与</th>
                            <td class="commonTable__data">基本給216,000円～259,200円 　※能力に応じて決定</td>
                        </tr>
                        <tr class="commonTable__row">
                            <th class="commonTable__head">待遇等</th>
                            <td class="commonTable__data">賞与（年2回）、昇給有り、 社会保険完備（雇用・健康・労災・厚生年金）、 通勤手当</td>
                        </tr>
                        <tr class="commonTable__row">
                            <th class="commonTable__head">休日等</th>
                            <td class="commonTable__data
                            */
.page-ttl__size-l--company {
  width: 81%;
}

/*========== 沿革 ==========*/
.history {
  margin-top: 100px;
}
@media screen and (max-width: 768px) {
  .history {
    margin-top: 75px;
  }
}

.history__list {
  margin: 75px auto 0;
  width: 85%;
  position: relative;
}
@media screen and (max-width: 768px) {
  .history__list {
    width: 100%;
    margin-top: 32px;
  }
}
.history__list::before {
  content: "";
  position: absolute;
  width: 1px;
  height: 100%;
  background-color: #2967E6;
  left: 126.5px;
  top: 13px;
}
@media screen and (max-width: 768px) {
  .history__list::before {
    left: 82px;
  }
}
.history__list .history__item:not(:first-of-type) {
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .history__list .history__item:not(:first-of-type) {
    margin-top: 25px;
  }
}

.history__item {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 8%;
}
@media screen and (max-width: 768px) {
  .history__item {
    gap: 7.3%;
  }
}

.history-year {
  font-size: 30px;
  color: #001F5F;
  font-weight: 700;
  font-family: "Roboto", sans-serif;
  padding-right: 60px;
  position: relative;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .history-year {
    font-size: 20px;
    padding-right: 38px;
    width: 89px;
  }
}
.history-year::before {
  content: "";
  position: absolute;
  width: 16px;
  height: 16px;
  background-color: #2967E6;
  border-radius: 50%;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .history-year::before {
    width: 13px;
    height: 13px;
  }
}

.history-detail {
  color: #001F5F;
}

.history__accordion-btn {
  width: 209px;
  padding: 13px 50px;
  color: #001F5F;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1;
  margin: 70px auto 0 10%;
  border-radius: 92px;
  border: 1px solid #001F5F;
  font-family: "Noto Serif JP", serif;
  position: relative;
}
.history__accordion-btn::before {
  content: "";
  position: absolute;
  width: 13px;
  height: 1.5px;
  background-color: #001F5F;
  border-radius: 3px;
  top: 50%;
  right: 23.5px;
  transform: translateY(-50%);
}
.history__accordion-btn::after {
  content: "";
  position: absolute;
  width: 1.5px;
  height: 13px;
  background-color: #001F5F;
  border-radius: 3px;
  top: 50%;
  right: 29.5px;
  transform: translateY(-50%);
}
.history__accordion-btn.is-open::after {
  height: 0;
}

/*====== 会社概要 ======*/
.overview {
  margin-top: 145px;
}
@media screen and (max-width: 768px) {
  .overview {
    margin-top: 92px;
  }
}

.overview__content {
  padding: 0 8.66% 90px;
  margin-top: 50px;
  border: 1px solid rgba(41, 103, 230, 0.5);
}
@media screen and (max-width: 768px) {
  .overview__content {
    padding: 15px 7% 50px;
  }
}

@media screen and (max-width: 768px) {
  .commonTable--overview {
    margin-top: 0;
  }
}
.access {
  margin-top: 113px;
  margin-bottom: 223px;
}
@media screen and (max-width: 768px) {
  .access {
    margin-top: 75px;
    margin-bottom: 96px;
  }
}

.accessMap {
  margin-top: 36px;
  width: 100%;
  aspect-ratio: 1/0.49;
}
@media screen and (max-width: 768px) {
  .accessMap {
    margin-top: 24px;
    aspect-ratio: 1/1.28;
  }
}
.accessMap iframe {
  width: 100%;
  height: 100%;
}

/*==========================
お知らせページ
==========================*/
.page-ttl__size-l--news {
  width: 46.1%;
}

.inner--newsPage {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8.8%;
}
@media screen and (max-width: 1280px) {
  .inner--newsPage {
    gap: 5%;
    padding-right: 0;
  }
}
@media screen and (max-width: 1024px) {
  .inner--newsPage {
    display: block;
  }
}

.news-page__side-l {
  width: 237px;
  padding: 23px 30px 49px;
  background-color: #EAF0FD;
  position: -webkit-sticky;
  position: sticky;
  top: 150px;
  left: 0;
}
@media screen and (max-width: 1024px) {
  .news-page__side-l {
    position: relative;
    top: unset;
    left: unset;
    width: 100%;
    background-color: unset;
    padding: unset;
  }
}

.newsCategory-select {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  padding: 13px 21px;
  border: 1px solid #001F5F;
  border-radius: 50px;
  text-align: center;
  min-width: 154px;
  color: #001F5F;
}

.newsCategory-wrap {
  position: relative;
  margin-top: 15px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
.newsCategory-wrap::after {
  content: "";
  position: absolute;
  border-right: 6px solid transparent;
  border-left: 6px solid transparent;
  border-top: 9px solid #002060;
  border-bottom: 0;
  top: 50%;
  right: 14px;
  transform: translateY(-50%);
  pointer-events: none;
}

.news-page-wrap {
  margin-top: 76px;
  padding-bottom: 250px;
}
@media screen and (max-width: 1024px) {
  .news-page-wrap {
    margin-top: 50px;
    padding-bottom: 150px;
  }
}

.news-page__side-r {
  width: calc(89% - 237px);
}
@media screen and (max-width: 1280px) {
  .news-page__side-r {
    width: calc(95% - 237px);
  }
}
@media screen and (max-width: 1024px) {
  .news-page__side-r {
    width: 100%;
    margin-top: 77px;
  }
}

@media screen and (max-width: 1024px) {
  .news__list {
    width: 100%;
  }
}
.category-ttl {
  font-size: 23px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1;
  color: #001F5F;
}
@media screen and (max-width: 1024px) {
  .category-ttl {
    font-size: 18px;
  }
}

.categoryList {
  width: 100%;
  margin: 30px auto 0;
}
.categoryList .newsCategory__item:not(:first-of-type) {
  margin-top: 18px;
}

.newsCategory__item a {
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.028em;
  padding-left: 21px;
  position: relative;
  display: block;
  color: #001F5F;
}
.newsCategory__item a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 7px;
  height: 7px;
  background-color: #2967E6;
  border-radius: 50%;
  opacity: 0;
}
.newsCategory__item.currentCategory a::before {
  opacity: 1;
}

.news__item.news__item--pageNews a {
  padding: 30px 7.27% 30px 0;
}

.pageNation {
  margin-top: 78px;
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 21px;
}

.pageNation__item--prev {
  position: relative;
  width: 32px;
  height: 32px;
  border: 1px solid #001F5F;
}

.pageNation__item--prev a{
	display: block;
	width: 100%;
	height: 100%;
}

.pageNation__item--next a{
	display: block;
	width: 100%;
	height: 100%;
}
@media screen and (max-width: 768px) {
  .pageNation__item--prev {
    width: 41px;
    height: 41px;
  }
}
.pageNation__item--prev::before {
  content: "";
  position: absolute;
  width: 7.5px;
  height: 7.5px;
  border-bottom: 1px solid #001F5F;
  border-left: 1px solid #001F5F;
  top: 50%;
  left: 54%;
  transform: translate(-50%, -50%) rotate(45deg);
}

.pageNation__item--num {
  width: 32px;
  height: 32px;
  font-weight: 500;
  text-align: center;
  color: #001F5F;
  background-color: #FFFFFF;
  border: 1px solid #001F5F;
  line-height: 29px;
}
@media screen and (max-width: 768px) {
  .pageNation__item--num {
    width: 41px;
    height: 41px;
    font-size: 18px;
    line-height: 37px;
  }
}
.pageNation__item--num.pageNation__item--current {
  color: #FFFFFF;
  background-color: #001F5F;
}
.pageNation__item--num.pageNation__item--current a {
  pointer-events: none;
}

.pageNation__item--next {
  position: relative;
  width: 32px;
  height: 32px;
  border: 1px solid #001F5F;
}
@media screen and (max-width: 768px) {
  .pageNation__item--next {
    width: 41px;
    height: 41px;
  }
}
.pageNation__item--next::before {
  content: "";
  position: absolute;
  width: 7.5px;
  height: 7.5px;
  border-bottom: 1px solid #001F5F;
  border-right: 1px solid #001F5F;
  top: 50%;
  right: 54%;
  transform: translate(50%, -50%) rotate(-45deg);
}

/*==========================
お知らせ詳細ページ
==========================*/
.article {
  margin-top: 100px;
  margin-bottom: 120px;
}
@media screen and (max-width: 768px) {
  .article {
    margin-top: 83px;
    margin-bottom: 135px;
  }
}

.article-upper {
  padding-bottom: 21px;
  border-bottom: 1px solid rgba(0, 31, 95, 0.3);
}
@media screen and (max-width: 768px) {
  .article-upper {
    padding-bottom: 19px;
  }
}
.article-upper .news-ttl {
  margin-top: 10px;
}
@media screen and (max-width: 768px) {
  .article-upper .news-ttl {
    margin-top: 11px;
  }
}

.article-upper__categoryWrap {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 23px;
}
@media screen and (max-width: 768px) {
  .article-upper__categoryWrap {
    gap: 11px;
  }
}
.article-upper__categoryWrap .news-category {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

.articleContent {
  margin-top: 32px;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .articleContent {
    margin-top: 20px;
  }
}

.bl-btn--article {
  margin: 95px auto 0;
}
@media screen and (max-width: 768px) {
  .bl-btn--article {
    margin-top: 85px;
  }
}

/*=========================
CONTACTページ
=========================*/
.page-ttl__size-l--contact {
  width: 66.9%;
}

.contact {
  margin-top: 86px;
}
@media screen and (max-width: 768px) {
  .contact {
    margin-top: 48px;
  }
}

.contact-overview {
  text-align: center;
  line-height: 1.6;
}

.contactForm {
  margin: 92px auto 130px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .contactForm {
    margin: 90px auto 100px;
  }
}

.formDl {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 2.7%;
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .formDl {
    display: block;
  }
}
.formDl.formDl-flexStart {
  align-items: flex-start;
}
@media screen and (max-width: 768px) {
  .formDl.formDl-flexStart {
    display: block;
  }
}

.formDt {
  width: 260px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
@media screen and (max-width: 768px) {
  .formDt {
    width: 100%;
    justify-content: flex-start;
  }
}

.formTtl {
  margin-right: 15px;
  font-weight: 500;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .formTtl {
    margin-right: 5px;
    font-size: 14px;
  }
}

.formRequired {
  font-size: 12px;
  padding: 5px 10px;
  line-height: 1;
  color: #FFFFFF;
  border-radius: 30px;
  background-color: #2967E6;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .formRequired {
    font-size: 10px;
  }
}

.noRequired {
  font-size: 12px;
  padding: 5px 10px;
  line-height: 1;
  color: #FFFFFF;
  border-radius: 30px;
  background-color: #ACACAC;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .noRequired {
    font-size: 10px;
  }
}

.formDd {
  width: calc(97.3% - 260px);
}
@media screen and (max-width: 768px) {
  .formDd {
    width: 100%;
    margin-top: 10px;
  }
}

input[type=text],
input[type=email],
textarea {
  padding: 10px 21px;
  background-color: #EBEBEB;
  color: #151515;
  width: 100%;
}
@media screen and (max-width: 768px) {
  input[type=text],
input[type=email],
textarea {
    padding: 10px 13px;
  }
}

textarea {
  height: 217px;
}
@media screen and (max-width: 768px) {
  textarea {
    height: 132px;
  }
}

::-moz-placeholder {
  color: #AFAFAF;
}

::placeholder {
  color: #AFAFAF;
}
@media screen and (max-width: 768px) {
  ::-moz-placeholder {
    font-size: 16px;
  }
  ::placeholder {
    font-size: 16px;
  }
}

.formAdress__upper {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
@media screen and (max-width: 768px) {
  .formAdress__upper {
    gap: 17px;
    justify-content: space-between;
  }
}

input[type=text].postCode {
  width: 199px;
  margin-right: 18px;
}
@media screen and (max-width: 1024px) {
  input[type=text].postCode {
    width: 170px;
  }
}
@media screen and (max-width: 768px) {
  input[type=text].postCode {
    width: calc(50% - 8.5px);
    margin-right: 0;
  }
}

input[type=text].prefectures {
  width: 199px;
}
@media screen and (max-width: 1024px) {
  input[type=text].prefectures {
    width: 170px;
  }
}
@media screen and (max-width: 768px) {
  input[type=text].prefectures {
    width: calc(50% - 8.5px);
  }
}

.restAddress {
  margin-top: 12px;
}
@media screen and (max-width: 768px) {
  .restAddress {
    margin-top: 10px;
  }
}

.formDl--addressWrap {
  align-items: flex-start;
}
.formDl--addressWrap .formTtl {
  margin-top: 15px;
}

input[type=checkbox] {
  position: relative;
  width: 20px;
  height: 20px;
  border: 1px solid #001F5F;
  /*
  vertical-align: -2px;
  -webkit-appearance: none;
  -moz-appearance: none;
          appearance: none;*/
}
@media screen and (max-width: 768px) {
  input[type=checkbox] {
    width: 30px;
    height: 30px;
    margin-right: 16px;
  }
}

input[type=checkbox]:checked:before {
  position: absolute;
  top: 0px;
  left: 5px;
  transform: rotate(50deg);
  width: 6px;
  height: 15px;
  border-right: 2px solid #001F5F;
  border-bottom: 2px solid #001F5F;
  content: "";
}
@media screen and (max-width: 768px) {
  input[type=checkbox]:checked:before {
    left: 9px;
    transform: rotate(50deg);
    width: 11px;
    height: 22px;
  }
}

.privacy-wrap {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 50px auto 65px;
  color: #151515;
}

.form--policyLink {
  text-decoration: underline;
}

.submit {
  position: relative;
  width: 214px;
  height: 51px;
  margin: 0 auto;
}
.submit .submitBtn {
  width: 100%;
  height: 100%;
  border: none;
  border-radius: 26px;
  background: #001F5F;
  color: transparent;
  cursor: pointer;
}
.submit::before, .submit::after {
  content: "確認";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  color: #FFFFFF;
  font-weight: 500;
  transition: all 0.5s;
  pointer-events: none;
	font-size: 20px;
}


.submit--return {
  position: relative;
  width: 214px;
  height: 51px;
  margin: 0 auto;
}
.submit--return .submitBtn {
  width: 100%;
  height: 100%;
  border: none;
  border-radius: 26px;
  background: #001F5F;
  color: #fff;
	text-align: center;
  cursor: pointer;
	font-size: 20px;
}
/*
.submit--return::before, .submit--return::after {
  content: "戻る";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  color: #FFFFFF;
  font-weight: 500;
  transition: all 0.5s;
  pointer-events: none;
}

.submit--send::before, .submit--send::after {
  content: "送信";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  color: #FFFFFF;
  font-weight: 500;
  transition: all 0.5s;
  pointer-events: none;
}
*/
.submit--send {
  position: relative;
  width: 214px;
  height: 51px;
  margin: 0 auto;
}
.submit--send .submitBtn {
  width: 100%;
  height: 100%;
  border: none;
  border-radius: 26px;
  background: #001F5F;
  color: #fff;
	text-align: center;
  cursor: pointer;
	font-size: 20px;
}
.submit--return::before {
  top: 50%;
  transform: translate(-50%, -50%);
  opacity: 1;
}
.submit--return::after {
  top: 90%;
  transform: translate(-50%, -50%);
  opacity: 0;
}
.submit--return:hover::before {
  top: 10%;
  opacity: 0;
}
.submit--return:hover::after {
  top: 50%;
  opacity: 1;
}


.submit--send::before {
  top: 50%;
  transform: translate(-50%, -50%);
  opacity: 1;
}
.submit--send::after {
  top: 90%;
  transform: translate(-50%, -50%);
  opacity: 0;
}
.submit--send:hover::before {
  top: 10%;
  opacity: 0;
}
.submit--send:hover::after {
  top: 50%;
  opacity: 1;
}


.submit::before {
  top: 50%;
  transform: translate(-50%, -50%);
  opacity: 1;
}
.submit::after {
  top: 90%;
  transform: translate(-50%, -50%);
  opacity: 0;
}
.submit:hover::before {
  top: 10%;
  opacity: 0;
}
.submit:hover::after {
  top: 50%;
  opacity: 1;
}
.submit-wrap{
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 80px;
}

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

.submit-wrap{
	flex-direction: column;
	gap: 15px;
	margin-top: 50px;
}
}
.contact--thanks {
  margin-bottom: 140px;
}
@media screen and (max-width: 768px) {
  .contact--thanks {
    margin-bottom: 115px;
  }
}

.contact-overview--thanks {
  line-height: 2;
}

.bl-btn--thanks {
  margin: 100px auto 0;
}
@media screen and (max-width: 768px) {
  .bl-btn--thanks {
    margin-top: 77px;
  }
	
.submit::before, .submit::after {
	font-size: 18px;
	}
	
.submit--return .submitBtn {
	font-size: 18px;
}
.submit--send .submitBtn {
	font-size: 18px;
}
}

/*=========================
プラポリページ
=========================*/
.page-ttl__size-l--policy {
  width: 85.6%;
}

.policy {
  margin: 106px 0 187px;
}
@media screen and (max-width: 768px) {
  .policy {
    margin: 64px 0 96px;
  }
}

.policy-content {
  font-size: 14px;
  letter-spacing: 0;
  line-height: 1.5;
}
.newsList__date-wrap{
	width: 258px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}