﻿@charset "UTF-8";

:root {
  --cl-sega-bl: #0082ca;
  --cl-sega-bl-50: #f0f9ff;
  --cl-sega-bl-500: #0ca2eb;
  --cl-sega-gr: #79bd36;
  --cl-bk: #22292f;
  --cl-gy: #859bab;
  --cl-gy-200: #d5dde2;
  --cl-gy-300: #b0bfc9;
  --cl-gy-400: var(--cl-gy);
  --cl-gy-700: #425462;
  --cl-gy-900: #333e47;
  --cl-lgy1: #f3f5f7;
  --cl-lgy2: #eceff2;
  --cl-rd: #e04852;
  --cl-bdr: #dbdfe6;
  --sdw-300: 0px 8px 16px -6px #18274b14, 0px 6px 8px -6px #18274b1f;
  --sdw-600: 0px 12px 42px -4px #18274b1f, 0px 8px 18px -6px #18274b1f;
  --ff-en: "Work Sans", sans-serif;
}

html {
  font-size: 62.5%;
}

body {
  background-color: #f9fafb;
  color: var(--cl-bk);
  font-size: 1.6rem;
  font-weight: 400;
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif;
  line-height: 1.5;
  letter-spacing: 0.05em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.body-fixed {
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
}

@media (min-width: 769px) {
  #wrapper {
    position: relative;
    max-width: 1920px;
    margin: 0 auto;
  }
}

@media (max-width: 768px) {
}

a {
  color: var(--cl-bk);
  text-decoration: none;
  transition:
    color 0.3s,
    opacity 0.3s;
}

a:hover {
  text-decoration: underline;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="password"],
textarea,
select {
  height: 56px;
  padding: 0 17px;
  border: 1px solid var(--cl-bdr);
  border-radius: 10px;
  background-color: #ffffff;

  &::placeholder {
    color: var(--cl-gy-300);
  }
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="password"] {
  &::placeholder {
    color: var(--cl-gy-300);
  }
}

textarea {
  width: 100%;
  padding: 21px 17px;
  height: 200px;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0 48px 0 17px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEzLjUgNi43NSA5IDIuMjVsLTQuNSA0LjV6bTAgNC41TDkgMTUuNzVsLTQuNS00LjV6IiBmaWxsPSIjODU5YmFiIi8+PC9zdmc+");
  background-position: center right 15px;
  background-repeat: no-repeat;
  background-size: 18px;
}

input[type="radio"],
input[type="checkbox"] {
  display: none;

  + label {
    display: block;
    position: relative;
    min-height: 24px;
    padding-left: 34px;

    &::before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 24px;
      height: 24px;
      background-position: center;
      background-repeat: no-repeat;
      background-size: contain;
    }
  }
}

input[type="radio"] {
  & + label {
    &::before {
      background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iMTEuNSIgZmlsbD0iI2YzZjVmNyIgc3Ryb2tlPSIjZGJkZmU2Ii8+PC9zdmc+");
    }
  }

  &:checked {
    & + label {
      &::before {
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iMTIiIGZpbGw9IiMwMDgyY2EiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSI1IiBmaWxsPSIjZmZmIi8+PC9zdmc+");
      }
    }
  }
}

input[type="checkbox"] {
  & + label {
    &::before {
      background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHJlY3QgeD0iLjUiIHk9Ii41IiB3aWR0aD0iMjMiIGhlaWdodD0iMjMiIHJ4PSIzLjUiIGZpbGw9IiNmM2Y1ZjciIHN0cm9rZT0iI2RiZGZlNiIvPjwvc3ZnPg==");
    }
  }

  &:checked {
    & + label {
      &::before {
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHJlY3Qgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiByeD0iNCIgZmlsbD0iIzAwODJjYSIvPjxwYXRoIGQ9Im01IDEyIDUuMjUgNUwxOSA4LjY2NiAxNy4yNSA3bC03IDYuNjY3LTMuNS0zLjMzNHoiIGZpbGw9IiNmZmYiLz48L3N2Zz4=");
      }
    }
  }
}

@media (max-width: 768px) {
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="number"],
  input[type="password"],
  select {
    height: 48px;
  }
}

@media (min-width: 769px) {
  .sp-only {
    display: none !important;
  }

  .container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 40px;
  }

  .lower-container {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 40px;
  }
}

@media (max-width: 768px) {
  .pc-only {
    display: none !important;
  }

  .container,
  .lower-container {
    padding: 0 16px;
  }
}

.ff-en {
  font-family: var(--ff-en);
}

/*** ボタン・リンク ***/

.btn {
  display: flex;
  align-items: center;
  position: relative;
  padding: 10px 24px;
  border-radius: 20px;
  font-size: 2rem;
  font-weight: 700;
  box-sizing: border-box;

  &.has-icon {
    &::before {
      content: "";
      display: inline-block;
      position: relative;
      width: 64px;
      height: 64px;
      margin-right: 24px;
      border-radius: 64px;
      background-color: var(--cl-lgy1);
      background-position: center;
      background-repeat: no-repeat;
      background-size: 32px;
    }

    &.icon-form {
      &::before {
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTQuMDAxIDRoMjRhMS4zMzMgMS4zMzMgMCAwIDEgMS4zMzQgMS4zMzN2MjEuMzM0QTEuMzMzIDEuMzMzIDAgMCAxIDI4IDI4aC0yNGExLjMzNCAxLjMzNCAwIDAgMS0xLjMzMy0xLjMzM1Y1LjMzM0ExLjMzMyAxLjMzMyAwIDAgMSA0LjAwMSA0bTEyLjA4IDExLjU3Ny04LjU0OS03LjI2LTEuNzI3IDIuMDMyTDE2LjEgMTkuMDlsMTAuMTA4LTguNzQ2LTEuNzQ0LTIuMDE4eiIgZmlsbD0iIzAwODJjYSIvPjwvc3ZnPg==");
      }
    }

    &.icon-tel {
      &::before {
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTI4IDIxLjg5M3Y0LjcxNWExLjMzMyAxLjMzMyAwIDAgMS0xLjI0IDEuMzNxLS44NzMuMDYzLTEuNDI3LjA2MkMxMy41NTEgMjggNCAxOC40NSA0IDYuNjY3cTAtLjU1Mi4wNjEtMS40MjdBMS4zMzMgMS4zMzMgMCAwIDEgNS4zOTIgNGg0LjcxNWEuNjY3LjY2NyAwIDAgMSAuNjY0LjZxLjA0NS40NTkuMDg1LjczNmMuMjY1IDEuODUuODA4IDMuNjQ4IDEuNjEgNS4zMzVhLjYxLjYxIDAgMCAxLS4xOTUuNzU2bC0yLjg3OCAyLjA1NmExNy40IDE3LjQgMCAwIDAgOS4xMjYgOS4xMjVsMi4wNTMtMi44NzJhLjYxLjYxIDAgMCAxIC43NjQtLjE5OSAxOC41IDE4LjUgMCAwIDAgNS4zMzMgMS42MDdxLjI3OC4wNC43MzQuMDg1YS42NjcuNjY3IDAgMCAxIC41OTcuNjY0IiBmaWxsPSIjMDA4MmNhIi8+PC9zdmc+");
      }
    }

    &.icon-recruit {
      &::before {
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE1Ljk5OSAxOC42NjZ2MTAuNjY3SDUuMzMyYTEwLjY2NyAxMC42NjcgMCAwIDEgMTAuNjY3LTEwLjY2N204IDEwLTMuOTE5IDIuMDYuNzQ4LTQuMzY0LTMuMTctMy4wODkgNC4zODItLjYzNiAxLjk1OS0zLjk3IDEuOTYgMy45NjkgNC4zOC42MzctMy4xNyAzLjA5Ljc0NyA0LjM2M3ptLTgtMTEuMzMzYy00LjQyIDAtOC0zLjU4LTgtOHMzLjU4LTggOC04IDggMy41OCA4IDgtMy41OCA4LTggOCIgZmlsbD0iIzAwODJjYSIvPjwvc3ZnPg==");
      }
    }

    &.icon-midcareer {
      &::before {
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE0LjY2NSAxOC43NDl2Ny45MTdoMi42NjdWMTguNzVjNS4yNjEuNjU2IDkuMzMzIDUuMTQ0IDkuMzMzIDEwLjU4NEg1LjMzMmExMC42NjYgMTAuNjY2IDAgMCAxIDkuMzMzLTEwLjU4NE0xNiAxNy4zMzNjLTQuNDIgMC04LTMuNTgtOC04czMuNTgtOCA4LTggOCAzLjU4IDggOC0zLjU4IDgtOCA4IiBmaWxsPSIjMDA4MmNhIi8+PC9zdmc+");
      }
    }

    &.icon-pickup {
      &::before {
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE2LjAwMSAyOS4zMzRjLTcuMzY0IDAtMTMuMzMzLTUuOTctMTMuMzMzLTEzLjMzNFM4LjYzOCAyLjY2NyAxNi4wMDEgMi42NjcgMjkuMzM1IDguNjM3IDI5LjMzNSAxNiAyMy4zNjUgMjkuMzM0IDE2IDI5LjMzNG0tMS4zMzMtMTQuNjY3djhoMi42Njd2LTh6bTAtNS4zMzNWMTJoMi42NjdWOS4zMzR6IiBmaWxsPSIjNzliZDM2Ii8+PC9zdmc+");
      }
    }
  }

  .has-img {
    text-align: center;
  }

  &:hover {
    text-decoration: none;

    &.icon-form {
      &::before {
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTQuMDAxIDRoMjRhMS4zMzMgMS4zMzMgMCAwIDEgMS4zMzQgMS4zMzN2MjEuMzM0QTEuMzMzIDEuMzMzIDAgMCAxIDI4IDI4aC0yNGExLjMzNCAxLjMzNCAwIDAgMS0xLjMzMy0xLjMzM1Y1LjMzM0ExLjMzMyAxLjMzMyAwIDAgMSA0LjAwMSA0bTEyLjA4IDExLjU3Ny04LjU0OS03LjI2LTEuNzI3IDIuMDMyTDE2LjEgMTkuMDlsMTAuMTA4LTguNzQ2LTEuNzQ0LTIuMDE4eiIgZmlsbD0iIzBjYTJlYiIvPjwvc3ZnPg==");
      }
    }

    &.icon-tel {
      &::before {
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTI4IDIxLjg5M3Y0LjcxNWExLjMzMyAxLjMzMyAwIDAgMS0xLjI0IDEuMzNxLS44NzMuMDYzLTEuNDI3LjA2MkMxMy41NTEgMjggNCAxOC40NSA0IDYuNjY3cTAtLjU1Mi4wNjEtMS40MjdBMS4zMzMgMS4zMzMgMCAwIDEgNS4zOTIgNGg0LjcxNWEuNjY3LjY2NyAwIDAgMSAuNjY0LjZxLjA0NS40NTkuMDg1LjczNmMuMjY1IDEuODUuODA4IDMuNjQ4IDEuNjEgNS4zMzVhLjYxLjYxIDAgMCAxLS4xOTUuNzU2bC0yLjg3OCAyLjA1NmExNy40IDE3LjQgMCAwIDAgOS4xMjYgOS4xMjVsMi4wNTMtMi44NzJhLjYxLjYxIDAgMCAxIC43NjQtLjE5OSAxOC41IDE4LjUgMCAwIDAgNS4zMzMgMS42MDdxLjI3OC4wNC43MzQuMDg1YS42NjcuNjY3IDAgMCAxIC41OTcuNjY0IiBmaWxsPSIjMENBMkVCIi8+PC9zdmc+");
      }
    }
  }

  .txt-s {
    font-size: 80%;
  }
}

.btn-wt {
  background-color: #ffffff;
  transition:
    background 0.3s,
    color 0.3s;

  &:not(:disabled) {
    &:hover {
      background-color: var(--cl-sega-bl);
      color: #ffffff;
    }
  }

  &:disabled {
    position: relative;

    &::after {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      border-radius: 10px;
      background-color: rgba(255, 255, 255, 0.5);
    }
  }
}

.btn-bl {
  background-color: var(--cl-sega-bl);
  color: #ffffff;
  transition:
    background 0.3s,
    color 0.3s;

  &:not(:disabled) {
    &:hover {
      background-color: #ffffff;
      color: var(--cl-bk);
    }
  }

  &:disabled {
    background-color: var(--cl-gy-200);
    color: var(--cl-gy-300);
  }
}

.btn-sdw {
  box-shadow: var(--sdw-600);
}

.btn-c_arw,
.btn-ext {
  padding-right: 90px;

  &.btn {
    &::after {
      right: 40px;
    }
  }

  &:hover {
    &::after {
      background-color: #ffffff;
      background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuMzMyIDguNjY1VjcuMzMyaDkuMDU3di0zLjYxTDE0LjY2NSA4bC00LjI3NiA0LjI3NnYtMy42MXoiIGZpbGw9IiMwY2EyZWIiLz48L3N2Zz4=");
    }
  }
}

.btn-c_arw {
  .arw {
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    width: 40px;
    height: 40px;
    margin-top: -20px;
    border-radius: 40px;
    background-color: var(--cl-sega-bl);
    overflow: hidden;
    transition: background 0.3s;

    &::before,
    &::after {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgNi41di0xaDYuNzkzVjIuNzkzTDExIDYgNy43OTMgOS4yMDdWNi41eiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg==");
      background-position: center;
      background-repeat: no-repeat;
      background-size: 16px;
      transition:
        left 0.3s,
        background 0.3s;
    }

    &::after {
      left: -180%;
    }
  }

  &.btn {
    .arw {
      right: 40px;
    }
  }

  &:hover {
    .arw {
      background-color: #ffffff;

      &::before,
      &::after {
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuMzMyIDguNjY1VjcuMzMyaDkuMDU3di0zLjYxTDE0LjY2NSA4bC00LjI3NiA0LjI3NnYtMy42MXoiIGZpbGw9IiMwMDgyY2EiLz48L3N2Zz4=");
      }

      &::before {
        left: 180%;
      }

      &::after {
        left: 0;
      }
    }
  }

  &.btn-bl {
    .arw {
      background-color: #ffffff;

      &::before,
      &::after {
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuMzMyIDguNjY1VjcuMzMyaDkuMDU3di0zLjYxTDE0LjY2NSA4bC00LjI3NiA0LjI3NnYtMy42MXoiIGZpbGw9IiMwMDgyY2EiLz48L3N2Zz4=");
      }
    }

    &:hover {
      .arw {
        background-color: var(--cl-sega-bl);

        &::before,
        &::after {
          background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgNi41di0xaDYuNzkzVjIuNzkzTDExIDYgNy43OTMgOS4yMDdWNi41eiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg==");
        }
      }
    }

    &:disabled {
      .arw {
        opacity: 0.4;

        &::before,
        &::after {
          transition: none;
        }
      }

      &:hover {
        .arw {
          background-color: #ffffff;

          &::before,
          &::after {
            background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuMzMyIDguNjY1VjcuMzMyaDkuMDU3di0zLjYxTDE0LjY2NSA4bC00LjI3NiA0LjI3NnYtMy42MXoiIGZpbGw9IiMwMDgyY2EiLz48L3N2Zz4=");
          }
        }
      }
    }
  }
}

.btn-c_arw-reverse {
  padding-left: 90px;
  .arw {
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 40px;
    height: 40px;
    margin-top: -20px;
    border-radius: 40px;
    background-color: var(--cl-sega-bl);
    overflow: hidden;
    transition: background 0.3s;

    &::before,
    &::after {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      right: 0;
      width: 100%;
      height: 100%;
      background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgNi41di0xaDYuNzkzVjIuNzkzTDExIDYgNy43OTMgOS4yMDdWNi41eiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg==");
      background-position: center;
      background-repeat: no-repeat;
      background-size: 16px;
      transition:
        right 0.3s,
        background 0.3s;
      transform: rotate(180deg);
    }

    &::after {
      right: -180%;
    }
  }

  &.btn {
    .arw {
      left: 40px;
    }
  }

  &:hover {
    .arw {
      background-color: #ffffff;

      &::before,
      &::after {
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuMzMyIDguNjY1VjcuMzMyaDkuMDU3di0zLjYxTDE0LjY2NSA4bC00LjI3NiA0LjI3NnYtMy42MXoiIGZpbGw9IiMwMDgyY2EiLz48L3N2Zz4=");
      }

      &::before {
        right: 180%;
      }

      &::after {
        right: 0;
      }
    }
  }

  &.btn-bl {
    .arw {
      background-color: #ffffff;

      &::before,
      &::after {
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuMzMyIDguNjY1VjcuMzMyaDkuMDU3di0zLjYxTDE0LjY2NSA4bC00LjI3NiA0LjI3NnYtMy42MXoiIGZpbGw9IiMwMDgyY2EiLz48L3N2Zz4=");
      }
    }

    &:hover {
      .arw {
        background-color: var(--cl-sega-bl);

        &::before,
        &::after {
          background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgNi41di0xaDYuNzkzVjIuNzkzTDExIDYgNy43OTMgOS4yMDdWNi41eiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg==");
        }
      }
    }

    &:disabled {
      .arw {
        opacity: 0.4;

        &::before,
        &::after {
          transition: none;
        }
      }

      &:hover {
        .arw {
          background-color: #ffffff;

          &::before,
          &::after {
            background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuMzMyIDguNjY1VjcuMzMyaDkuMDU3di0zLjYxTDE0LjY2NSA4bC00LjI3NiA0LjI3NnYtMy42MXoiIGZpbGw9IiMwMDgyY2EiLz48L3N2Zz4=");
          }
        }
      }
    }
  }
}

.btn-ext {
  &::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    width: 40px;
    height: 40px;
    margin-top: -20px;
    border-radius: 40px;
    background-color: var(--cl-sega-bl);
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTYuNjY3IDJ2MS4zMzNIMy4zMzN2OS4zMzRoOS4zMzRWOS4zMzNIMTR2NGEuNjY2LjY2NiAwIDAgMS0uNjY3LjY2N0gyLjY2N0EuNjY2LjY2NiAwIDAgMSAyIDEzLjMzM1YyLjY2N0EuNjY3LjY2NyAwIDAgMSAyLjY2NyAyem01LjEzOCAzLjEzOEw4IDguOTQzIDcuMDU3IDhsMy44MDUtMy44MDVMOC42NjcgMkgxNHY1LjMzM3oiIGZpbGw9IiNmZmYiLz48L3N2Zz4=");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 16px;
    transition: background 0.3s;
  }

  &:hover {
    &::after {
      background-color: #ffffff;
      background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTYuNjY3IDJ2MS4zMzNIMy4zMzN2OS4zMzRoOS4zMzRWOS4zMzNIMTR2NGEuNjY2LjY2NiAwIDAgMS0uNjY3LjY2N0gyLjY2N0EuNjY2LjY2NiAwIDAgMSAyIDEzLjMzM1YyLjY2N0EuNjY3LjY2NyAwIDAgMSAyLjY2NyAyem01LjEzOCAzLjEzOEw4IDguOTQzIDcuMDU3IDhsMy44MDUtMy44MDVMOC42NjcgMkgxNHY1LjMzM3oiIGZpbGw9IiMwQ0EyRUIiLz48L3N2Zz4=");
    }
  }
}

@media (min-width: 769px) {
  .btn {
    .has-img {
      img {
        margin-bottom: 10px;
      }
    }
  }

  .btn-ext {
    padding: 10px 80px 10px 24px;
  }
}

@media (max-width: 768px) {
  .btn {
    padding: 10px 16px;
    font-size: 1.6rem;

    &.has-icon {
      &::before {
        width: 48px;
        height: 48px;
        margin-right: 16px;
        border-radius: 48px;
        background-size: 24px;
      }
    }
  }

  .btn-c_arw,
  .btn-ext {
    padding-right: 56px;

    .arw,
    &::after {
      width: 32px;
      height: 32px;
      margin-top: -16px;
      border-radius: 32px;
      background-size: 12px;
    }

    .arw {
      &::before,
      &::after {
        background-size: 12px;
      }
    }

    &.btn {
      &::after {
        right: 16px;
      }
    }
  }
}

.link,
.link-back {
  text-decoration: underline;
}

.link-arw,
.link-back {
  display: flex;
  align-items: center;
  height: 40px;
  position: relative;
  font-size: 1.6rem;

  span {
    display: block;
    position: relative;
    width: 40px;
    height: 40px;
    margin-right: 16px;
    border-radius: 40px;
    background-color: var(--cl-sega-bl);
    overflow: hidden;

    &::before,
    &::after {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgNi41di0xaDYuNzkzVjIuNzkzTDExIDYgNy43OTMgOS4yMDdWNi41eiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg==");
      background-position: center;
      background-repeat: no-repeat;
      background-size: 16px;
      transition: left 0.3s;
    }

    &::after {
      left: -180%;
    }
  }

  &:hover {
    span {
      &::before {
        left: 180%;
      }

      &::after {
        left: 0;
      }
    }
  }
}

.link-back {
  span {
    &::before,
    &::after {
      right: 0;
      left: auto;
      transform: rotate(180deg);
      transition: right 0.3s;
    }

    &::after {
      right: -180%;
    }
  }

  &:hover {
    span {
      &::before {
        left: auto;
        right: 180%;
      }

      &::after {
        left: auto;
        right: 0;
      }
    }
  }
}

@media (max-width: 768px) {
  .link-arw,
  .link-back {
    height: 32px;

    span {
      width: 32px;
      height: 32px;
      border-radius: 32px;

      &::before,
      &::after {
        background-size: 12px;
      }
    }
  }
}

/*** タイトル ***/

.ttl-h2 {
  span {
    display: block;
  }

  .ff-en {
    color: var(--cl-sega-bl);
    font-size: 6.4rem;
    font-weight: 800;
    line-height: 0.85;
  }

  .ff-ja {
    margin-top: 16px;
    font-size: 1.6rem;
    font-weight: 700;
  }
}

@media (max-width: 768px) {
  .ttl-h2 {
    .ff-en {
      font-size: 4.8rem;
    }

    .ff-ja {
      font-size: 1.4rem;
    }
  }
}

/*** ページャー ***/

.total_num {
  margin-bottom: 64px;
  font-size: 1.4rem;
  font-weight: 700;
  text-align: center;

  b {
    margin: 0 3px;
    font-size: 2.4rem;
    font-family: var(--ff-en);
    font-weight: 700;
  }
}

.pager {
  margin-top: 64px;

  > ul {
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--ff-en);

    li {
      margin: 0 5px;

      a,
      span {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 40px;
        height: 40px;
        border-radius: 40px;
        font-size: 1.4rem;
      }

      a {
        transition:
          background-color 0.3s,
          color 0.3s;

        &:hover {
          color: #ffffff;
          background-color: var(--cl-sega-bl);
          text-decoration: none;
        }
      }

      span {
        background-color: var(--cl-sega-bl);
        color: #ffffff;
      }

      &[class^="pager-"] {
        a {
          width: 24px;
          height: 24px;
          border-radius: 0;
          background-position: center;
          background-repeat: no-repeat;
          background-size: contain;
          text-indent: -999999px;

          &:hover {
            background-color: transparent;
          }
        }
      }

      &.pager-first,
      &.pager-last {
        a {
          background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0ibTQuODM2IDEyIDYuMjA3IDYuMjA3IDEuNDE0LTEuNDE0TDcuNjY0IDEybDQuNzkzLTQuNzkzLTEuNDE0LTEuNDE0em01LjY1IDAgNi4yMDcgNi4yMDcgMS40MTQtMS40MTRMMTMuMzE0IDEybDQuNzkzLTQuNzkzLTEuNDE0LTEuNDE0eiIgZmlsbD0iIzAwODJjYSIvPjwvc3ZnPg==");
        }
      }

      &.pager-prev,
      &.pager-next {
        a {
          background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0ibTEwLjgyOCAxMiA0Ljk1IDQuOTUtMS40MTQgMS40MTVMOCAxMmw2LjM2NC02LjM2NCAxLjQxNCAxLjQxNHoiIGZpbGw9IiMwMDgyY2EiLz48L3N2Zz4=");
        }
      }

      &.pager-last,
      &.pager-next {
        a {
          transform: rotate(180deg);
        }
      }

      &.pager-prev {
        margin: 0 35px 0 19px;
      }

      &.pager-next {
        margin: 0 19px 0 35px;
      }
    }
  }
}

@media (min-width: 769px) {
}

@media (max-width: 768px) {
  .total_num {
    margin-bottom: 32px;
  }
}

/*** ヘッダー ***/

@media (min-width: 1081px) {
  .header-subnav {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9;

    .container {
      display: flex;
      justify-content: flex-end;
    }

    ul {
      display: flex;
      align-items: center;
      height: 40px;
      padding: 0 24px;
      border-bottom-right-radius: 10px;
      border-bottom-left-radius: 10px;
      background-color: var(--cl-lgy2);

      li {
        font-size: 1.2rem;
        font-weight: 700;

        & + li {
          position: relative;
          margin-left: 33px;

          &::before {
            content: "";
            display: block;
            position: absolute;
            top: 50%;
            left: -16px;
            width: 1px;
            height: 12px;
            margin-top: -6px;
            background-color: var(--cl-bdr);
          }
        }
      }
    }
  }
}

.header {
  position: fixed;
  left: 0;
  width: 100%;
  z-index: 9999;

  .container,
  .header-main,
  .header-contact {
    display: flex;
    align-items: center;
  }

  .container {
    position: relative;
  }
}

.header-logo {
  margin: 0;
  padding: 0;

  a,
  img {
    height: auto;
  }
}

.header-language {
  position: relative;
  width: 120px;
  margin-left: 64px;
  font-family: var(--ff-en);
  font-size: 1.4rem;
}

.header-language-display {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
  height: 40px;
  padding: 0 23px;
  border: 1px solid var(--cl-bdr);
  border-radius: 40px;
  background-color: #f9fafb;
  cursor: pointer;
  z-index: 9;

  &::before {
    content: "";
    display: inline-block;
    position: relative;
    width: 16px;
    height: 16px;
    margin-right: 5px;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTcuOTk5IDEuMzM0YTYuNjY3IDYuNjY3IDAgMSAxIDAgMTMuMzMzIDYuNjY3IDYuNjY3IDAgMCAxIDAtMTMuMzMzbTIuNjY5IDcuMjUyYy0uMjMtLjM1LS4zOTYtLjYwMi0xLjAyOC0uNTAyLTEuMTkzLjE5LTEuMzI2LjM5OC0xLjM4My43NDJsLS4wMTYuMTA0LS4wMTYuMTFjLS4wNjUuNDU2LS4wNjMuNjI4LjE0Ni44NDcuODQ0Ljg4NiAxLjM0OSAxLjUyNCAxLjUwMiAxLjg5Ny4wNzUuMTgyLjI2Ny43MzMuMTM1IDEuMjc5YTUuNSA1LjUgMCAwIDAgMi4xLTEuNDkyYy4wNzQtLjI0OS4xMjctLjU2LjEyNy0uOTM2di0uMDdjMC0uNjE0IDAtLjg5NS0uNDM0LTEuMTQ0YTUgNSAwIDAgMC0uNDMtLjIxNmMtLjI0NS0uMTEyLS40MDctLjE4NC0uNjI2LS41MDR6bS0yLjY3LTYuMDNhNS40MyA1LjQzIDAgMCAwLTMuOTMgMS42NzdjLjExOC4wODIuMjIuMTk4LjI5MS4zNTYuMTM2LjMwNS4xMzYuNjE5LjEzNi44OTcgMCAuMjE5IDAgLjQyNy4wNy41NzcuMDk2LjIwNS41MTEuMjkzLjg3Ny4zNjkuMTMxLjAyOC4yNjYuMDU2LjM4OS4wOS4zMzcuMDkzLjU5OC4zOTcuODA3LjY0LjA4Ny4xLjIxNS4yNS4yOC4yODdhLjcuNyAwIDAgMCAuMTkzLS4zMzJjLjA0Mi0uMTQ3LjAzLS4yNzYtLjAzLS4zNDctLjM3My0uNDQtLjM1Mi0xLjI4Ny0uMjM3LTEuNi4xODEtLjQ5Mi43NDgtLjQ1NSAxLjE2My0uNDI5LjE1NC4wMS4zLjAyLjQwOS4wMDYuNDE1LS4wNTIuNTQzLS42ODMuNjMzLS44MDYuMTk0LS4yNjcuNzktLjY2OSAxLjE2LS45MTdhNS40IDUuNCAwIDAgMC0yLjIxLS40NjgiIGZpbGw9IiMyMjI5MmYiLz48L3N2Zz4=");
  }

  &::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 15px;
    width: 18px;
    height: 18px;
    margin-top: -9px;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEzLjUgNi43NSA5IDIuMjVsLTQuNSA0LjV6bTAgNC41TDkgMTUuNzVsLTQuNS00LjV6IiBmaWxsPSIjODU5YmFiIi8+PC9zdmc+");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
  }
}

.header-language-list {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 50px 16px 16px;
  border-top-right-radius: 21px;
  border-top-left-radius: 21px;
  border-bottom-right-radius: 20px;
  border-bottom-left-radius: 20px;
  background-color: var(--cl-gy);

  li {
    & + li {
      margin-top: 4px;
    }
  }

  a,
  button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 20px;
    border-radius: 20px;
    color: #ffffff;
    transition: background-color 0.3s;

    &:hover {
      background-color: #657d8f;
      text-decoration: none;
    }
  }
}

@media (min-width: 1081px) {
  .header-sp_menu-wrapper {
    display: none !important;
  }

  .header {
    top: 56px;
    transition: top 0.16s;

    .container {
      align-items: flex-start;
    }
  }

  .header-main,
  .header-contact {
    height: 72px;
    border-radius: 40px;
    box-shadow: var(--sdw-600);
  }

  .header-main {
    position: relative;
    width: calc(100% - 244px);
    padding: 0 40px;
    background-color: #ffffff;
  }

  .header-nav {
    margin-left: auto;
  }

  .haeder-nav-list {
    display: flex;
    align-items: center;
  }

  .haeder-nav-list-item {
    & + .haeder-nav-list-item {
      margin-left: 40px;
    }

    > a {
      display: flex;
      align-items: center;
      height: 72px;
      font-size: 1.4rem;
      font-weight: 700;
    }

    &:hover {
      > a {
        color: var(--cl-sega-bl);
        text-decoration: none;
      }
    }
  }

  .header-nav-sub_menu {
    display: none;
    position: absolute;
    top: 72px;
    left: 0;
    width: 100%;
  }

  .header-nav-sub_menu-body {
    padding: 40px;

    .ttl {
      .ff-en {
        color: var(--cl-sega-bl);
        font-size: 4rem;
        font-weight: 700;
        letter-spacing: 0;
        line-height: 1;
      }

      .ff-ja {
        margin-top: 16px;
        font-size: 1.4rem;
        font-weight: 700;
        line-height: 1.2;
      }
    }
  }

  .link-list {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 40px;

    li {
      width: calc((100% - 24px) / 3);

      &.full {
        margin-right: calc((100% - 24px) / 3 * 2);
      }
    }

    a {
      display: flex;
      align-items: center;
      position: relative;
      width: 100%;
      height: 56px;
      padding: 0 30px 0 16px;
      border-radius: 10px;
      background-color: var(--cl-lgy1);
      font-size: 1.4rem;
      transition:
        background 0.3s,
        color 0.3s;

      &::after {
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        right: 10px;
        width: 17px;
        height: 16px;
        margin-top: -8px;
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTciIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuMzg3IDguNjY3VjcuMzM0aDkuNDJ2LTMuNjFsNC40NDYgNC4yNzctNC40NDcgNC4yNzZ2LTMuNjF6IiBmaWxsPSIjMDA4MmNhIi8+PC9zdmc+");
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain;
        transition: background 0.3s;
      }

      &:hover {
        background-color: var(--cl-sega-bl-500);
        color: #ffffff;
        text-decoration: none;

        &::after {
          background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTciIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuMzg3IDguNjY3VjcuMzM0aDkuNDJ2LTMuNjFsNC40NDYgNC4yNzctNC40NDcgNC4yNzZ2LTMuNjF6IiBmaWxsPSIjZmZmIi8+PC9zdmc+");
        }
      }
    }
  }

  .header-contact {
    width: 220px;
    margin-left: auto;

    a {
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
      width: 100%;
      height: 100%;
      border-radius: 72px;
      padding-left: 32px;
      background-color: #ffffff;
      font-size: 1.4rem;
      font-weight: 700;
      transition:
        background 0.3s,
        color 0.3s;

      &::before {
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        left: 16px;
        width: 48px;
        height: 48px;
        margin-top: -24px;
        border-radius: 48px;
        background-color: var(--cl-lgy1);
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTMgM2gxOGExIDEgMCAwIDEgMSAxdjE2YTEgMSAwIDAgMS0xIDFIM2ExIDEgMCAwIDEtMS0xVjRhMSAxIDAgMCAxIDEtMW05LjA2IDguNjgzTDUuNjQ4IDYuMjM4IDQuMzUzIDcuNzYybDcuNzIgNi41NTUgNy41ODEtNi41Ni0xLjMwOC0xLjUxM3oiIGZpbGw9IiMwMDgyY2EiLz48L3N2Zz4=");
        background-position: center;
        background-repeat: no-repeat;
        background-size: 24px;
      }

      &:hover {
        background-color: var(--cl-sega-bl);
        color: #ffffff;
        text-decoration: none;
      }
    }
  }
}

@media (max-width: 1080px) {
  .header {
    top: 10px;
    padding: 0 10px;

    .container {
      height: 48px;
      padding: 0 10px 0 20px;
      border-radius: 48px;
      background-color: #ffffff;
      box-shadow: var(--sdw-600);
    }
  }

  .header-main {
    width: calc(100% - 74px);
  }

  .header-logo {
    width: 70px;

    img {
      width: 100%;
    }
  }

  .header-nav,
  .header-subnav {
    display: none;
  }

  .header-language {
    width: 70px;
    margin-left: auto;
    font-size: 1.2rem;
  }

  .header-language-display {
    height: 28px;
    padding: 0 8px;
    border-radius: 28px;

    &::before {
      width: 14px;
      height: 14px;
      margin-right: 4px;
    }

    &::after {
      right: 5px;
      width: 16px;
      height: 16px;
      margin-top: -8px;
    }
  }

  .header-language-list {
    padding: 34px 8px 8px;
    border-top-right-radius: 15px;
    border-top-left-radius: 15px;
    border-bottom-right-radius: 14px;
    border-bottom-left-radius: 14px;

    li {
      & + li {
        margin-top: 2px;
      }
    }

    button {
      height: 20px;
      border-radius: 20px;
    }
  }

  .header-contact {
    margin-left: 10px;

    a {
      display: block;
      width: 32px;
      height: 32px;
      border-radius: 32px;
      background-color: var(--cl-lgy1);
      background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTMgM2gxOGExIDEgMCAwIDEgMSAxdjE2YTEgMSAwIDAgMS0xIDFIM2ExIDEgMCAwIDEtMS0xVjRhMSAxIDAgMCAxIDEtMW05LjA2IDguNjgzTDUuNjQ4IDYuMjM4IDQuMzUzIDcuNzYybDcuNzIgNi41NTUgNy41ODEtNi41Ni0xLjMwOC0xLjUxM3oiIGZpbGw9IiMwMDgyY2EiLz48L3N2Zz4=");
      background-position: center;
      background-repeat: no-repeat;
      background-size: 16px;
      text-indent: -999999px;
    }
  }

  .header-sp_menu-btn {
    position: relative;
    margin-left: 5px;
    width: 32px;
    height: 32px;
    border-radius: 32px;
    background-color: var(--cl-sega-bl);
    cursor: pointer;

    > span {
      display: block;
      position: absolute;
      width: 12px;
      height: 1px;
      left: 10px;
      background-color: #ffffff;
      transition:
        opacity 0.1s,
        transform 0.15s;

      &:nth-child(1) {
        top: 11px;
      }

      &:nth-child(2) {
        bottom: 10px;
      }

      &:nth-child(3) {
        top: 16px;
      }
    }

    &.is-open {
      > span {
        width: 16px;
        left: 8px;

        &:nth-child(1) {
          top: 16px;
          transform: rotate(45deg);
        }

        &:nth-child(2) {
          bottom: 15px;
          transform: rotate(-45deg);
        }

        &:nth-child(3) {
          opacity: 0;
        }
      }
    }
  }

  .header-sp_menu-wrapper {
    display: none;
    position: fixed;
    width: 100vw;
    height: 100vh;
    height: 100dvh;
    top: 0;
    left: 0;
    padding: 82px 10px 40px;
    background-color: #f9fafb;
    overflow: auto;
    z-index: 999;
  }

  .header-sp_menu-body {
    border-radius: 20px;
    background-color: #ffffff;
    box-shadow: var(--sdw-600);
  }

  .header-sp_menu-nav {
    padding: 40px 10px;
  }

  .header-sp_menu-nav-item {
    & + .header-sp_menu-nav-item {
      margin-top: 40px;
    }

    .ttl {
      display: block;
      position: relative;
      padding: 0 14px;

      .ff-en {
        color: var(--cl-sega-bl);
        font-size: 3.2rem;
        font-weight: 700;
        letter-spacing: 0;
        line-height: 1;
      }

      .ff-ja {
        margin-top: 10px;
        font-size: 1.4rem;
        font-weight: 700;
        line-height: 1.2;
      }

      &:hover {
        text-decoration: none;

        .arw {
          background-color: var(--cl-sega-bl);

          &::before,
          &::after {
            background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgNi41di0xaDYuNzkzVjIuNzkzTDExIDYgNy43OTMgOS4yMDdWNi41eiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg==");
          }
        }
      }
    }

    .list-items {
      margin-top: 24px;

      li {
        & + li {
          margin-top: 10px;
        }

        a {
          display: flex;
          align-items: center;
          position: relative;
          height: 56px;
          border-radius: 10px;
          background-color: var(--cl-lgy1);
          padding: 0 40px 0 16px;
          font-size: 1.4rem;
          transition:
            background 0.3s,
            color 0.3s;

          &::after {
            content: "";
            display: block;
            position: absolute;
            top: 50%;
            right: 20px;
            width: 16px;
            height: 16px;
            margin-top: -8px;
            background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuMzMyIDguNjY3VjcuMzM0aDkuMDU3di0zLjYxbDQuMjc2IDQuMjc3LTQuMjc2IDQuMjc2di0zLjYxeiIgZmlsbD0iIzAwODJjYSIvPjwvc3ZnPg==");
            background-position: center;
            background-repeat: no-repeat;
            background-size: contain;
            transition: background 0.3s;
          }

          &:hover {
            background-color: var(--cl-sega-bl);
            color: #ffffff;
            text-decoration: none;

            &::after {
              background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTciIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuMzg3IDguNjY3VjcuMzM0aDkuNDJ2LTMuNjFsNC40NDYgNC4yNzctNC40NDcgNC4yNzZ2LTMuNjF6IiBmaWxsPSIjZmZmIi8+PC9zdmc+");
            }
          }
        }
      }
    }
  }

  .header-sp_menu-contact {
    padding: 40px 10px;
    background-color: var(--cl-sega-bl);
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;

    li {
      & + li {
        margin-top: 16px;
      }

      .btn {
        width: 100%;
        height: 88px;
      }
    }
  }
}

/*** フッター ***/

.footer {
  position: relative;
  border-top-right-radius: 40px;
  border-top-left-radius: 40px;
  background-color: var(--cl-sega-bl);

  .container {
    padding: 0 120px;
  }
}

.footer-contact {
  padding: 80px 0;

  .container {
    padding-top: 80px;
    position: relative;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAxMSIgaGVpZ2h0PSIxMDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggb3BhY2l0eT0iLjEiIGQ9Ik0xMDAuNDc4IDc1Ljg0cS0yLjg4IDExLjY4LTkuNzYgMTkuMDQtNi43MiA3LjM2LTE2LjQ4IDEwLjcyLTkuNiAzLjItMjEuMjggMy4yLTE2LjMyIDAtMjguMzItNi40LTExLjg0LTYuNTYtMTguMjQtMTguNzJ0LTYuNC0yOS4yOCA2LjQtMjkuMjggMTguMjQtMTguNTZRMzYuNjM4IDAgNTIuNzk4IDBxMTEuNTIgMCAyMS4xMiAzLjIgOS43NiAzLjIgMTYuNDggOS45MnQ5LjEyIDE3LjQ0bC0yOC4zMiAxMS4zNnEtMS43Ni0xMC4yNC02LjI0LTEzLjYtNC4zMi0zLjM2LTExLjItMy4zNi02LjM5OSAwLTExLjA0IDMuMzYtNC40OCAzLjItNi44OCA5Ljc2LTIuMjQgNi40LTIuMjQgMTYuMzIgMCA5Ljc2IDIuMDggMTYuMzIgMi4yNDEgNi41NiA2LjcyIDkuOTIgNC42NDEgMy4yIDEyIDMuMiA2LjU2MSAwIDExLjA0LTMuODQgNC40OC0zLjg0IDUuOTItMTJ6TTE2MS41NTIgMHExNi40OCAwIDI4LjE2IDYuNTYgMTEuODQgNi40IDE4LjA4IDE4LjU2IDYuNCAxMi4xNiA2LjQgMjkuMjh0LTYuNCAyOS4yOHEtNi4yNCAxMi4xNi0xOC4wOCAxOC43Mi0xMS42OCA2LjQtMjguMTYgNi40LTE2LjMyIDAtMjguMzItNi40LTExLjg0LTYuNTYtMTguMjQtMTguNzJ0LTYuNC0yOS4yOCA2LjQtMjkuMjggMTguMjQtMTguNTZxMTItNi41NiAyOC4zMi02LjU2bTAgMjQuOTZxLTYuNTYgMC0xMC44OCAzLjM2LTQuMTYgMy4yLTYuNCA5LjYtMi4wOCA2LjQtMi4wOCAxNi40OCAwIDkuOTIgMi4wOCAxNi40OCAyLjI0IDYuNCA2LjQgOS43NiA0LjMyIDMuMiAxMC44OCAzLjIgNi40IDAgMTAuNzItMy4yIDQuMzItMy4zNiA2LjQtOS43NiAyLjA4LTYuNTYgMi4wOC0xNi40OCAwLTEwLjA4LTIuMDgtMTYuNDh0LTYuNC05LjZxLTQuMzItMy4zNi0xMC43Mi0zLjM2TTMyOS40NTYgMS42djEwNS42aC0zNS44NGwtMjguOC01Mi4zMi02LjcyLTE0LjI0aC0uMzJsLjY0IDIwLjh2NDUuNzZoLTI4LjQ4VjEuNmgzNS42OGwyOC44IDUyLjMyIDYuODggMTQuMjRoLjE2bC0uNjQtMjAuOFYxLjZ6bTExMy40NjIgMHYyNC40OGgtMzMuNnY4MS4xMmgtMzIuNjRWMjYuMDhoLTMzLjkyVjEuNnpNNTQzLjY5IDEwNy4yaC0zMy42bC01LjkyLTIxLjkyaC0zMi4xNmwtNi4wOCAyMS45MmgtMzIuNjRMNDY4LjgxIDEuNmgzOS4yem0tNjYuMjQtNDMuMDRoMjEuNDRMNDg4LjE3IDI0Ljh6bTE2Ny44NzIgMTEuNjhxLTIuODggMTEuNjgtOS43NiAxOS4wNC02LjcyIDcuMzYtMTYuNDggMTAuNzItOS42IDMuMi0yMS4yOCAzLjItMTYuMzIgMC0yOC4zMi02LjQtMTEuODQtNi41Ni0xOC4yNC0xOC43MnQtNi40LTI5LjI4IDYuNC0yOS4yOCAxOC4yNC0xOC41NnExMi02LjU2IDI4LjE2LTYuNTYgMTEuNTIgMCAyMS4xMiAzLjIgOS43NiAzLjIgMTYuNDggOS45MnQ5LjEyIDE3LjQ0bC0yOC4zMiAxMS4zNnEtMS43Ni0xMC4yNC02LjI0LTEzLjYtNC4zMi0zLjM2LTExLjItMy4zNi02LjQgMC0xMS4wNCAzLjM2LTQuNDggMy4yLTYuODggOS43Ni0yLjI0IDYuNC0yLjI0IDE2LjMyIDAgOS43NiAyLjA4IDE2LjMyIDIuMjQgNi41NiA2LjcyIDkuOTIgNC42NCAzLjIgMTIgMy4yIDYuNTYgMCAxMS4wNC0zLjg0dDUuOTItMTJ6TTc1MS4zNTYgMS42djI0LjQ4aC0zMy42djgxLjEyaC0zMi42NFYyNi4wOGgtMzMuOTJWMS42em0xNTAuMjEyIDB2NjEuMjhxMCAyMy4wNC0xMi4zMiAzNC41Ni0xMi4zMiAxMS4zNi0zNi44IDExLjM2LTI0LjYzOSAwLTM2Ljk2LTExLjM2LTEyLjMyLTExLjUyLTEyLjMyLTM0LjU2VjEuNmgzMi44djYzLjA0cTAgOS42IDQuMTYgMTQuNHQxMi4zMiA0LjggMTIuMzItNC44IDQuMTYtMTQuNFYxLjZ6bTYxLjI3LTEuNnExNS4wNCAwIDI2LjcyIDQuMTYgMTEuNjc5IDQgMjAuNDgyIDEyLjMybC0xNC4yNDIgMjAuOTZxLTcuMi02LjA4LTE1LjM2LTkuNDQtOC0zLjUyLTE3Ljc2LTMuNTItNC45NiAwLTggLjk2dC00LjQ4IDIuNzJxLTEuMjggMS42LTEuMjggMy42OCAwIDIuNTYgMy4wNCA0LjE2IDMuMiAxLjYgOC44IDIuODhsMTYgMy42OHExNiAzLjY4IDIzLjg0MiAxMC44OGM1LjIyIDQuNjk0IDcuODQgMTEuMTQ3IDcuODQgMTkuMzYgMCA4LTIuMDMgMTQuNjY3LTYuMDggMjBxLTUuOTIyIDguMDAxLTE2LjMyMiAxMnQtMjMuNTIgNHEtMTAuNCAwLTIwLjMyLTIuMDgtOS43Ni0yLjA4LTE3LjkyLTUuOTItOC4xNi00LTE0LjA4LTkuNDRsMTQuMDgtMjEuNnE0LjMyIDQuMTYgMTAuNTYgNy41MiA2LjI0IDMuMiAxMy4yOCA1LjEydDEzLjYgMS45MnE0LjY0IDAgNy41Mi0uOCAzLjA0LS45NiA0LjMyLTIuNTYgMS4yOC0xLjU5OSAxLjI4LTMuODQgMC0yLjcyLTIuMDgtNC4zMi0yLjA4LTEuNzYtNy44NC0zLjA0bC0xNy42LTRxLTguNjQtMS45Mi0xNi01LjI4dC0xMS44NC05LjI4cS00LjMyLTYuMDgtNC4zMi0xNS44NCAwLTEwLjQgNS42LTE4LjQgNS42MDEtOCAxNi4zMi0xMi40OFQ5NjIuODM4IDAiIGZpbGw9IiNmZmYiLz48L3N2Zz4=");
    background-position: center top;
    background-repeat: no-repeat;
  }

  .ttl {
    color: #ffffff;
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
  }
}

.footer-contact-btn {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 24px;
  margin-top: 40px;

  .btn {
    width: 500px;
    height: 120px;

    &:hover {
      background-color: var(--cl-sega-bl-500);

      .arw {
        &::before,
        &::after {
          background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuMzMyIDguNjY1VjcuMzMyaDkuMDU3di0zLjYxTDE0LjY2NSA4bC00LjI3NiA0LjI3NnYtMy42MXoiIGZpbGw9IiMwQ0EyRUIiLz48L3N2Zz4=");
        }
      }
    }
  }
}

@media (max-width: 768px) {
  .footer {
    .container {
      padding: 0 16px;
    }
  }

  .footer-contact {
    padding: 65px 0 70px;

    .container {
      padding-top: 45px;
      background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzU3IiBoZWlnaHQ9IjExMyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBvcGFjaXR5PSIuMSIgZD0iTTQ3LjcyOCAzNi4wMjRxLTEuMzY4IDUuNTQ4LTQuNjM2IDkuMDQ0LTMuMTkyIDMuNDk2LTcuODI4IDUuMDkyLTQuNTYgMS41Mi0xMC4xMDggMS41Mi03Ljc1MiAwLTEzLjQ1Mi0zLjA0LTUuNjI1LTMuMTE2LTguNjY0LTguODkyUTAgMzMuOTcyIDAgMjUuODR0My4wNC0xMy45MDggOC42NjQtOC44MTZRMTcuNDA0IDAgMjUuMDggMHE1LjQ3MiAwIDEwLjAzMiAxLjUyIDQuNjM2IDEuNTIgNy44MjggNC43MTJ0NC4zMzIgOC4yODRMMzMuODIgMTkuOTEycS0uODM3LTQuODY0LTIuOTY0LTYuNDYtMi4wNTMtMS41OTYtNS4zMi0xLjU5Ni0zLjA0IDAtNS4yNDQgMS41OTYtMi4xMjggMS41Mi0zLjI2OCA0LjYzNi0xLjA2NCAzLjA0LTEuMDY0IDcuNzUyIDAgNC42MzYuOTg4IDcuNzUyIDEuMDY0IDMuMTE2IDMuMTkyIDQuNzEyIDIuMjA0IDEuNTIgNS43IDEuNTIgMy4xMTYgMCA1LjI0NC0xLjgyNHQyLjgxMi01Ljd6TTc2LjczOCAwcTcuODI3IDAgMTMuMzc2IDMuMTE2IDUuNjI0IDMuMDQgOC41ODggOC44MTYgMy4wNCA1Ljc3NiAzLjA0IDEzLjkwOHQtMy4wNCAxMy45MDhxLTIuOTY0IDUuNzc2LTguNTg4IDguODkyLTUuNTQ5IDMuMDQtMTMuMzc2IDMuMDQtNy43NTIgMC0xMy40NTItMy4wNC01LjYyNS0zLjExNi04LjY2NC04Ljg5Mi0zLjA0LTUuNzc2LTMuMDQtMTMuOTA4dDMuMDQtMTMuOTA4IDguNjY0LTguODE2UTY4Ljk4NiAwIDc2LjczOCAwbTAgMTEuODU2cS0zLjExNyAwLTUuMTY4IDEuNTk2LTEuOTc3IDEuNTItMy4wNCA0LjU2LS45ODggMy4wNC0uOTg4IDcuODI4IDAgNC43MTEuOTg4IDcuODI4IDEuMDYzIDMuMDQgMy4wNCA0LjYzNiAyLjA1MSAxLjUyIDUuMTY4IDEuNTIgMy4wNCAwIDUuMDkyLTEuNTIgMi4wNTItMS41OTYgMy4wNC00LjYzNi45ODctMy4xMTYuOTg4LTcuODI4IDAtNC43ODgtLjk4OC03LjgyOHQtMy4wNC00LjU2cS0yLjA1Mi0xLjU5Ni01LjA5Mi0xLjU5Nk0xNTYuNDkyLjc2djUwLjE2aC0xNy4wMjRsLTEzLjY4LTI0Ljg1Mi0zLjE5Mi02Ljc2NGgtLjE1MmwuMzA0IDkuODhWNTAuOTJIMTA5LjIyVi43NmgxNi45NDhsMTMuNjggMjQuODUyIDMuMjY4IDYuNzY0aC4wNzZsLS4zMDQtOS44OFYuNzZ6bTUzLjg5NSAwdjExLjYyOGgtMTUuOTZWNTAuOTJoLTE1LjUwNFYxMi4zODhoLTE2LjExMlYuNzZ6bTQ3Ljg2NiA1MC4xNmgtMTUuOTZsLTIuODEyLTEwLjQxMmgtMTUuMjc2bC0yLjg4OCAxMC40MTJoLTE1LjUwNEwyMjIuNjg1Ljc2aDE4LjYyem0tMzEuNDY0LTIwLjQ0NGgxMC4xODRsLTUuMDkyLTE4LjY5NnptNzkuNzM5IDUuNTQ4cS0xLjM2OCA1LjU0OC00LjYzNiA5LjA0NC0zLjE5MiAzLjQ5Ni03LjgyOCA1LjA5Mi00LjU2IDEuNTItMTAuMTA4IDEuNTItNy43NTIgMC0xMy40NTItMy4wNC01LjYyNC0zLjExNi04LjY2NC04Ljg5MlQyNTguOCAyNS44NHEwLTguMTMxIDMuMDQtMTMuOTA4dDguNjY0LTguODE2UTI3Ni4yMDQgMCAyODMuODggMHE1LjQ3MiAwIDEwLjAzMiAxLjUyIDQuNjM2IDEuNTIgNy44MjggNC43MTJ0NC4zMzIgOC4yODRsLTEzLjQ1MiA1LjM5NnEtLjgzNi00Ljg2NC0yLjk2NC02LjQ2LTIuMDUyLTEuNTk2LTUuMzItMS41OTYtMy4wMzkgMC01LjI0NCAxLjU5Ni0yLjEyOCAxLjUyLTMuMjY4IDQuNjM2LTEuMDY0IDMuMDQtMS4wNjQgNy43NTIgMCA0LjYzNi45ODggNy43NTIgMS4wNjUgMy4xMTYgMy4xOTIgNC43MTIgMi4yMDUgMS41MiA1LjcgMS41MiAzLjExNyAwIDUuMjQ0LTEuODI0IDIuMTI4LTEuODI0IDIuODEyLTUuN3pNMzU2Ljg5NC43NnYxMS42MjhoLTE1Ljk2VjUwLjkySDMyNS40M1YxMi4zODhoLTE2LjExMlYuNzZ6bS0xODAuNjk1IDYxdjI5LjEwOHEwIDEwLjk0NC01Ljg1MiAxNi40MTYtNS44NTIgNS4zOTYtMTcuNDggNS4zOTYtMTEuNzA0IDAtMTcuNTU2LTUuMzk2LTUuODUyLTUuNDcyLTUuODUyLTE2LjQxNlY2MS43NmgxNS41OHYyOS45NDRxMCA0LjU2IDEuOTc2IDYuODR0NS44NTIgMi4yOCA1Ljg1Mi0yLjI4IDEuOTc2LTYuODRWNjEuNzZ6bTI5LjEwMy0uNzZxNy4xNDMgMCAxMi42OTIgMS45NzYgNS41NDcgMS45IDkuNzI4IDUuODUybC02Ljc2NCA5Ljk1NnEtMy40Mi0yLjg4OC03LjI5Ni00LjQ4NC0zLjgwMS0xLjY3Mi04LjQzNi0xLjY3Mi0yLjM1NyAwLTMuOC40NTYtMS40NDQuNDU2LTIuMTI4IDEuMjkyYTIuNzIgMi43MiAwIDAgMC0uNjA4IDEuNzQ4cTAgMS4yMTYgMS40NDQgMS45NzYgMS41Mi43NiA0LjE4IDEuMzY4bDcuNiAxLjc0OHE3LjYgMS43NDggMTEuMzI0IDUuMTY4IDMuNzI0IDMuMzQ1IDMuNzI0IDkuMTk2IDAgNS43LTIuODg4IDkuNS0yLjgxMiAzLjgtNy43NTIgNS43LTQuOTQxIDEuOS0xMS4xNzIgMS45LTQuOTQgMC05LjY1Mi0uOTg4LTQuNjM2LS45ODgtOC41MTItMi44MTItMy44NzctMS45LTYuNjg4LTQuNDg0bDYuNjg4LTEwLjI2cTIuMDUyIDEuOTc2IDUuMDE2IDMuNTcyYTMyLjUgMzIuNSAwIDAgMCA2LjMwOCAyLjQzMnEzLjM0My45MTIgNi40Ni45MTIgMi4yMDQgMCAzLjU3Mi0uMzggMS40NDMtLjQ1NyAyLjA1Mi0xLjIxNi42MDgtLjc2LjYwOC0xLjgyNCAwLTEuMjkyLS45ODgtMi4wNTItLjk4OC0uODM2LTMuNzI0LTEuNDQ0bC04LjM2LTEuOXEtNC4xMDQtLjkxMi03LjYtMi41MDgtMy40OTctMS41OTYtNS42MjQtNC40MDgtMi4wNTItMi44ODgtMi4wNTItNy41MjQgMC00Ljk0IDIuNjYtOC43NHQ3Ljc1Mi01LjkyOFExOTguMTU3IDYxIDIwNS4zMDIgNjEiIGZpbGw9IiNmZmYiLz48L3N2Zz4=");
      background-size: calc(100% - 32px) auto;
    }

    .ttl {
      font-size: 1.6rem;
    }
  }

  .footer-contact-btn {
    gap: 16px;

    li {
      width: 100%;
    }

    .btn {
      width: 100%;
      height: 88px;

      .arw {
        right: 16px;
      }
    }
  }
}

.footer-main {
  padding: 64px 0;
  border-top-right-radius: 40px;
  border-top-left-radius: 40px;
  background-color: var(--cl-gy-900);
}

.footer-nav {
  ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 24px;
  }

  li {
    width: calc((100% - 72px) / 4);
    min-width: 240px;
  }

  .btn {
    width: 100%;
    height: 100px;
    font-size: 1.4rem;

    &::after {
      right: 24px;
    }
  }
}

.footer-bot-nav a,
.footer-copyright {
  color: var(--cl-gy-400);
}

.footer-bot {
  margin-top: 40px;
}

.footer-bot-nav {
  font-size: 1.2rem;
}

.footer-copyright {
  font-size: 1rem;
  font-family: var(--ff-en);
  line-height: 1;
  letter-spacing: 0;
}

.footer-bot-right {
  display: flex;
  align-items: center;
}

@media (min-width: 769px) {
  .footer-bot {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 40px;
  }

  .footer-bot-nav {
    display: flex;
    align-items: center;

    li {
      & + li {
        position: relative;
        margin-left: 49px;

        &::before {
          content: "";
          display: block;
          position: absolute;
          top: 50%;
          left: -24px;
          width: 1px;
          height: 12px;
          margin-top: -6px;
          background-color: var(--cl-gy-700);
        }
      }
    }
  }

  .footer-bot-right {
    margin-left: auto;
  }

  .footer-logo {
    margin-left: 36px;
  }
}

@media (max-width: 768px) {
  .footer-main {
    padding: 80px 0 40px;
  }

  .footer-nav {
    ul {
      gap: 10px;
    }

    li {
      width: 100%;
      min-width: 0;
    }

    .btn {
      width: 100%;
      height: 56px;
      border-radius: 10px;
      font-size: 1.4rem;

      &::after {
        right: 16px;
      }

      .has-img {
        display: flex;
        align-items: center;

        img {
          width: 100px;
          height: auto;
        }
      }
    }
  }

  .footer-bot-nav {
    li {
      & + li {
        margin-top: 16px;
      }
    }
  }

  .footer-bot-right {
    margin-top: 40px;
  }

  .footer-copyright {
    padding-right: 16px;
  }

  .footer-logo {
    flex-shrink: 0;
    margin-left: auto;
  }
}

/*** メインコンテンツ ***/

#wrapper {
  overflow: hidden;
}

@media (min-width: 769px) {
  .main {
    padding-bottom: 100px;
  }
}

@media (max-width: 1080px) {
  .main {
    padding-bottom: 80px;
  }
}

/*** トップページ ***/

.toppage-loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--cl-sega-bl);
  z-index: 99999;
  transition: opacity 0.3s;

  img {
    display: none;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

.toppage-mv {
  position: relative;

  .content-list {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    li {
      position: absolute;

      &:nth-child(1) {
        top: 20%;
        left: 10%;
      }

      a {
        display: block;
        position: relative;

        .pin {
          background-image: url(../img/top/pin.png);
          background-position: center;
          background-repeat: no-repeat;
          background-size: contain;
        }

        .txt {
          position: absolute;
          width: 0;
          transition: width 0.3s;

          .txt-inner {
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
            width: 0;
            height: 44px;
            border-radius: 44px;
            background-color: #c6325d;
            color: #ffffff;
            font-size: 1.2rem;
            font-weight: 700;
            transition: width 0.2s;

            p {
              position: relative;
              width: 0;
              padding: 0 54px 0 24px;
              opacity: 0;
              visibility: hidden;
              white-space: nowrap;

              .arw {
                display: block;
                position: absolute;
                top: 50%;
                right: 8px;
                width: 28px;
                height: 28px;
                margin-top: -14px;
                border-radius: 28px;
                background-color: #b21a3d;
                overflow: hidden;
                transition: background 0.3s;

                &::before,
                &::after {
                  content: "";
                  display: block;
                  position: absolute;
                  top: 0;
                  left: 0;
                  width: 100%;
                  height: 100%;
                  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgNi41di0xaDYuNzkzVjIuNzkzTDExIDYgNy43OTMgOS4yMDdWNi41eiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg==");
                  background-position: center;
                  background-repeat: no-repeat;
                  background-size: 12px;
                  transition:
                    left 0.3s,
                    background 0.3s;
                }

                &::after {
                  left: -180%;
                }
              }
            }
          }

          &:hover {
            .arw {
              &::before {
                left: 180%;
              }

              &::after {
                left: 0;
              }
            }
          }
        }

        &:hover {
          text-decoration: none;
          z-index: 9;

          .txt {
            width: auto;

            .txt-inner {
              width: auto;

              p {
                width: auto;
                visibility: visible;
                opacity: 1;
                transition: opacity 0.2s;
                transition-delay: 0.32s;
              }
            }
          }
        }
      }
    }
  }
}

.toppage-mv-video {
  position: relative;

  video {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
  }
}

.toppage-mv-copyright {
  position: absolute;
  right: 24px;
  bottom: 57px;
  color: #ffffff;
}

@media (min-width: 769px) {
  .toppage-mv-video {
    aspect-ratio: 192 / 105;
    overflow: hidden;

    .video-sp {
      display: none;
    }

    video {
      position: absolute;
      bottom: 0;
      left: 0;
      aspect-ratio: 192 / 115;
    }
  }

  .toppage-mv {
    .content-list {
      li {
        a {
          .pin {
            width: 50px;
            height: 60px;
          }

          .txt {
            top: 0;
            left: 50px;
          }
        }

        &:nth-child(1) {
          top: 47.8%;
          left: 50.8%;
        }

        &:nth-child(2) {
          top: 75.9%;
          left: 60.6%;
        }

        &:nth-child(3) {
          top: 67.3%;
          left: 73.6%;
        }

        &:nth-child(4) {
          top: 27.2%;
          left: 68.2%;
        }

        &:nth-child(5) {
          top: 68.9%;
          left: 40.2%;
        }

        &:nth-child(6) {
          top: 41.7%;
          left: 19.6%;
        }

        &:nth-child(7) {
          top: 25.4%;
          left: 31.5%;
        }

        &:nth-child(8) {
          top: 17.2%;
          left: 45.4%;
        }

        &:nth-child(9) {
          top: 57.4%;
          left: 30.6%;
        }

        &:nth-child(10) {
          top: 19.2%;
          left: 84.8%;
        }
      }
    }
  }
}

@media (max-width: 1400px) {
  .toppage-mv {
    .content-list {
      li {
        &:nth-child(8) {
          top: 22.2%;
          left: 45.4%;
        }

        &:nth-child(10) {
          top: 24.2%;
          left: 84.8%;
        }
      }
    }
  }
}

@media (max-width: 768px) {
  .toppage-mv-video {
    .video-pc {
      display: none;
    }

    video {
      aspect-ratio: 75 / 60;
    }
  }

  .toppage-mv {
    .content-list {
      li {
        a {
          .pin {
            width: 22px;
            height: 28px;
          }

          .txt {
            left: 50%;
            transform: translate(-50%, 0);

            .txt-inner {
              height: 30px;
              border-radius: 30px;
              font-size: 1.1rem;

              p {
                padding: 0 36px 0 16px;

                .arw {
                  right: 4px;
                  width: 22px;
                  height: 22px;
                  border-radius: 22px;
                  margin-top: -11px;

                  &::before,
                  &::after {
                    background-size: 10px;
                  }
                }
              }
            }
          }
        }

        &:nth-child(1) {
          top: 39.8%;
          left: 49.8%;
        }

        &:nth-child(2) {
          top: 63.1%;
          left: 60.7%;
        }

        &:nth-child(3) {
          top: 55.7%;
          left: 75.6%;
        }

        &:nth-child(4) {
          top: 26.2%;
          left: 70.5%;
        }

        &:nth-child(5) {
          top: 22.6%;
          left: 27.5%;
        }

        &:nth-child(6) {
          top: 34.4%;
          left: 13.9%;
        }

        &:nth-child(7) {
          top: 58.9%;
          left: 42.2%;
        }

        &:nth-child(8) {
          top: 20.8%;
          left: 43.7%;
        }

        &:nth-child(9) {
          top: 47.5%;
          left: 26.5%;
        }

        &:nth-child(10) {
          top: 21%;
          left: 88.6%;

          a {
            .txt {
              right: -10px;
              left: auto;
              transform: translate(0, 0);
            }
          }
        }
      }
    }
  }
}

.toppage-mv-news {
  position: relative;
}

.toppage-mv-news-container {
  width: 580px;
  height: 80px;
  margin: 0;
  border-radius: 80px;
  background-color: #ffffff;
  box-shadow: var(--sdw-600);

  a {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    height: 80px;
    padding: 0 80px 0 40px;

    .date {
      font-size: 1.6rem;
      font-family: var(--ff-en);
      font-weight: 700;
      line-height: 1;
      letter-spacing: 0;
    }

    .icon-news {
      margin-left: 10px;
    }

    .ttl {
      width: 100%;
      margin-top: -22px;
      font-size: 1.4rem;
      line-height: 1;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .arw {
      position: absolute;
      top: 50%;
      right: 20px;
      width: 40px;
      height: 40px;
      margin-top: -20px;
      border-radius: 40px;
      background-color: var(--cl-sega-bl);
      overflow: hidden;

      &::before,
      &::after {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgNi41di0xaDYuNzkzVjIuNzkzTDExIDYgNy43OTMgOS4yMDdWNi41eiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg==");
        background-position: center;
        background-repeat: no-repeat;
        background-size: 16px;
        transition: left 0.3s;
      }

      &::after {
        left: -180%;
      }
    }

    &:hover {
      text-decoration: none;

      span {
        &::before {
          left: 180%;
        }

        &::after {
          left: 0;
        }
      }
    }
  }
}

@media (min-width: 769px) {
  .toppage-mv-news {
    position: absolute;
    bottom: 80px;
    left: 0;
    width: 100%;
  }

  .toppage-mv-news-wrapper {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 40px;
  }
}

@media (max-width: 768px) {
  .toppage-mv-news {
    margin-top: 16px;
    padding: 0 16px;
  }

  .toppage-mv-news-container {
    width: 100%;
    height: 48px;
    border-radius: 48px;

    a {
      height: 48px;
      padding: 0 52px 0 24px;

      .date {
        font-size: 1.2rem;
      }

      .icon-news {
        display: none;
      }

      .ttl {
        margin-top: -16px;
        font-size: 1.3rem;
      }

      .arw {
        position: absolute;
        right: 10px;
        width: 32px;
        height: 32px;
        margin-top: -16px;
        border-radius: 32px;

        &::before,
        &::after {
          background-size: 12px;
        }
      }
    }
  }
}

.toppage-slider {
  position: relative;
  margin-top: -40px;
  padding: 40px;
  border-radius: 40px;
  background-color: var(--cl-lgy1);
}

.toppage-slider-items {
  border-radius: 40px;

  .list-item {
    position: relative;
    border-radius: 40px;
    aspect-ratio: 12 / 5;
    overflow: hidden;

    img {
      width: 100%;
      height: auto;
      border-radius: 40px;
      aspect-ratio: 12 / 5;
      transform: scale(0.84);
    }

    .txt {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      justify-content: flex-end;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      padding: 56px 80px;
      color: #ffffff;
      opacity: 0;
      transition: left 0.2s;
    }

    &.swiper-slide-active {
      img {
        animation-name: slideImgAnim;
        animation-duration: 4.5s;
        animation-timing-function: ease-in-out;
        animation-fill-mode: forwards;
      }

      .txt {
        opacity: 1;
        animation-name: slideTxtAnim;
        animation-duration: 6s;
        animation-timing-function: ease-in-out;
        animation-fill-mode: forwards;
      }
    }

    .ttl {
      display: flex;
      flex-direction: column;

      .ff-en {
        font-size: 10rem;
        font-weight: 800;
        line-height: 0.8;
        letter-spacing: 0;
      }

      .ff-ja {
        margin-top: 24px;
        font-size: 2rem;
        font-weight: 700;
      }
    }

    .comment {
      display: -webkit-box;
      margin-top: 40px;
      font-size: 16px;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 1;
      overflow: hidden;
    }
  }
}

@keyframes slideImgAnim {
  0% {
    transform: scale(0.84);
  }

  11% {
    transform: scale(0.84);
  }

  18% {
    transform: scale(1);
  }

  94% {
    transform: scale(1);
  }

  100% {
    transform: scale(0.84);
  }
}

@keyframes slideTxtAnim {
  0% {
    left: 0;
    opacity: 0;
  }

  4% {
    left: 4800px;
    opacity: 1;
  }

  14% {
    left: 0;
    opacity: 1;
  }

  80% {
    left: 0;
    opacity: 1;
  }

  90% {
    opacity: 0;
  }

  100% {
    left: -4800px;
    opacity: 0;
  }
}

.toppage-slider-body.is-paused {
  .swiper-slide-active {
    img {
      animation-play-state: paused !important;
    }

    .txt {
      animation-play-state: paused !important;
    }
  }

  .swiper-pagination-bullet-active::before {
    animation-play-state: paused !important;
  }
}

.toppage-slider-controls {
  display: flex;
  align-items: center;
  position: relative;
  max-width: 1200px;
  height: 24px;
  margin: 40px auto 0;

  .swiper-pagination {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    width: calc(100% - 78px);
    margin-left: auto;

    .swiper-pagination-bullet {
      position: relative;
      width: calc(100% / 9);
      height: 2px;
      margin: 0;
      border-radius: 0;
      background-color: var(--cl-gy-200);
      opacity: 1;

      &::after {
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        left: 0;
        width: 16px;
        height: 16px;
        margin: -8px 0 0 -8px;
        border-radius: 16px;
        background-color: var(--cl-gy-200);
        transform: scale(0.625);
        transition: transform 0.2s;
      }

      &::before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 0;
        height: 2px;
        background-color: var(--cl-sega-bl);
      }

      &.swiper-pagination-bullet-active {
        &::after {
          background-color: var(--cl-sega-bl);
          transform: scale(1);
        }

        &::before {
          animation-name: slideDotAnim;
          animation-duration: 4.5s;
          animation-timing-function: linear;
          animation-fill-mode: forwards;
        }
      }
    }
  }
}

@keyframes slideDotAnim {
  0% {
    width: 0;
  }

  100% {
    width: 100%;
  }
}

.toppage-slider-toggle_switch {
  width: 24px;
  height: 24px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyIDIyQzYuNDc3IDIyIDIgMTcuNTIzIDIgMTJTNi40NzcgMiAxMiAyczEwIDQuNDc3IDEwIDEwLTQuNDc3IDEwLTEwIDEwbTAtMmE4IDggMCAxIDAgMC0xNi4wMDFBOCA4IDAgMCAwIDEyIDIwTTkgOWgydjZIOXptNCAwaDJ2NmgtMnoiIGZpbGw9IiMwMDgyY2EiLz48L3N2Zz4=");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  cursor: pointer;
}

.toppage-slider-body.is-paused {
  .toppage-slider-toggle_switch {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyIDIyQzYuNDc3IDIyIDIgMTcuNTIzIDIgMTJTNi40NzcgMiAxMiAyczEwIDQuNDc3IDEwIDEwLTQuNDc3IDEwLTEwIDEwbTAtMmE4IDggMCAxIDAgMC0xNi4wMDFBOCA4IDAgMCAwIDEyIDIwIiBmaWxsPSIjMDA4MmNhIi8+PHBhdGggZD0ibTE2IDEyLTYgMy40NjRWOC41MzZ6IiBmaWxsPSIjMDA4MmNhIi8+PC9zdmc+");
  }
}

@media (min-width: 769px) {
}

@media (max-width: 768px) {
  .toppage-slider {
    margin-top: 24px;
    padding: 20px;
    border-radius: 20px;
  }

  .toppage-slider-items {
    border-radius: 20px;

    .list-item {
      border-radius: 20px;
      aspect-ratio: 1 / 1;

      img {
        border-radius: 20px;
        aspect-ratio: 1 / 1;
      }

      .txt {
        padding: 24px;
      }

      .ttl {
        .ff-en {
          font-size: 5.7rem;
          line-height: 0.9;
        }

        .ff-ja {
          margin-top: 16px;
          font-size: 1.6rem;
        }
      }

      .comment {
        margin-top: 32px;
        font-size: 14px;
        -webkit-line-clamp: 3;
      }
    }
  }
}

/* トップページ 新着情報 */

.toppage-news {
  margin-top: 100px;
}

.news-list {
  li {
    border-bottom: 1px solid var(--cl-bdr);

    a,
    .list-item {
      display: flex;
      align-items: center;
      position: relative;
      padding: 28px 40px 28px 0;

      .date {
        width: 114px;
        font-size: 1.6rem;
        font-family: var(--ff-en);
        font-weight: 700;
        letter-spacing: 0;
      }

      .icon-news {
        width: 130px;
      }

      .ttl {
        width: calc(100% - 244px);
        font-size: 1.4rem;
      }

      &:not(.list-item) {
        &::after {
          content: "";
          display: block;
          position: absolute;
          top: 50%;
          right: 0;
          width: 16px;
          height: 16px;
          margin-top: -8px;
          background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuMzMyIDguNjY1VjcuMzMyaDkuMDU3di0zLjYxTDE0LjY2NSA4bC00LjI3NiA0LjI3NnYtMy42MXoiIGZpbGw9IiMwMDgyY2EiLz48L3N2Zz4=");
          background-position: center;
          background-repeat: no-repeat;
          background-size: contain;
        }

        &:hover {
          text-decoration: none;

          .ttl {
            text-decoration: underline;
          }
        }
      }
    }
  }
}

.icon-news {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;

  span {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 24px;
    padding: 0 7px;
    border-radius: 4px;
    background-color: #ffffff;
    font-size: 1rem;
    font-weight: 700;

    &.new {
      border: 1px solid var(--cl-sega-bl);
      color: var(--cl-sega-bl);
      font-size: 1.2rem;
      font-family: var(--ff-en);
    }

    &.notice {
      border: 1px solid var(--cl-sega-gr);
      color: var(--cl-sega-gr);
    }
  }
}

@media (min-width: 1381px) {
  .toppage-news {
    .container {
      display: flex;
    }
  }

  .toppage-news-ttl {
    width: calc(100% - 1086px);
  }

  .toppage-news-ttl-link {
    margin-top: 64px;
    padding: 4px;
  }

  .toppage-news-content {
    width: 1086px;
  }
}

@media (max-width: 1380px) {
  .toppage-news-ttl {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
  }

  .toppage-news-content {
    margin-top: 32px;
  }
}

@media (min-width: 769px) {
  .news-top-list {
    .news-list {
      li {
        a {
          &::after {
            right: 10px;
          }
        }
      }
    }
  }
}

@media (max-width: 768px) {
  .news-list {
    li {
      a,
      .list-item {
        flex-wrap: wrap;
        padding: 16px 28px 16px 0;

        .date {
          width: 100px;
        }

        .icon-news {
          width: calc(100% - 100px);
        }

        .ttl {
          width: 100%;
          margin-top: 10px;
        }
      }
    }
  }
}

/* トップページ 関連サービス */

.toppage-related {
  position: relative;
  margin-top: 140px;

  .container {
    position: relative;

    &::before {
      content: "";
      display: block;
      position: absolute;
      top: -82px;
      left: 290px;
      width: 1270px;
      height: 1058px;
      background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTI3MCIgaGVpZ2h0PSIxMDU4IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTIyOC41MSA1MTcuMDVjLTcuNTQtMjguMDItMjAuMjQtNTQuNy0zNy41My03Ny43NC00Ni45LTYyLjUwNy0xMjQuOTktMTAwLjI1My0yMjMuMjQyLTczLjk0bC4wNzEuMjY4LTMyLjg1MiA4LjgwMi0uMDg5LS4yNzctNjg1LjY0NiAxODMuNzM2Yy0zMi41NjEgOC43MjUtNTcuMzE3LTIuMzAxLTcxLjQyNy0yMS4xMTEtNi40MzMtOC41NzMtMTEuMTgzLTE4LjUwMS0xMy45NjEtMjguODgxbC4yNjQtLjA3MWMtMi44OTctMTAuODExLTMuODM3LTIxLjc0OS0yLjYyMy0zMS45MjYgMi44MDktMjMuMzI2IDE4Ljc0NS00NS4yNTkgNTEuMzI2LTUzLjk5MkwxMjY5LjcyIDEzOC43MzVjLTE2Ljk2LTE3LjQ3NS0yOS44My0zOS4zNzItMzYuNTctNjQuNTU1LTYuNzUtMjUuMTk0LTYuNTYtNTAuNTc1LS41OS03NC4xOEwxNzUuNjM1IDI4My4yMDJDNzcuMzg1IDMwOS41MTQgMjguNjM5IDM4MS4yNTYgMTkuMjUgNDU4Ljg3MWMtMy40OTUgMjkuMDY1LTEuMjcyIDU4LjUyMyA2LjEwOCA4Ni4xNjJsLjI3OC0uMDg5YzcuNTM3IDI4LjAyIDIwLjIzOCA1NC43MDMgMzcuNTMgNzcuNzQzIDQ2Ljg5OSA2Mi41MDcgMTI0Ljk3OSAxMDAuMjY2IDIyMy4yMjEgNzMuOTI4bDY4NS42ODEtMTgzLjcxNC0uMDg5LS4yNzcgMzIuODcxLTguNzg5LjA3LjI2NWMzMi41NS04LjcwOSA1Ny4zIDIuMjkzIDcxLjQzIDIxLjExIDYuNDMgOC41NyAxMS4xOCAxOC40OTggMTMuOTQgMjguODcxbC0uMjYuMDcxYzIuOSAxMC44MzggMy44NCAyMS43NzYgMi42MyAzMS45MzMtMi44MyAyMy4zMzYtMTguNzYgNDUuMjY0LTUxLjMyIDUzLjk5MkwtLjAwMiA5MTkuMDg5YzE2Ljc1NSAxNy41OTkgMjkuNDc2IDM5LjU1IDM2LjIwNiA2NC42NjYgNi43MyAyNS4xMTUgNi42NzggNTAuNDY1Ljk0IDc0LjA4NUwxMDc4LjUgNzc4LjgwOWM5OC4yNC0yNi4zMzUgMTQ2Ljk5LTk4LjA1IDE1Ni4zOC0xNzUuNjY4IDMuNTEtMjkuMDc5IDEuMjctNTguNTIzLTYuMTEtODYuMTYxbC0uMjcuMDcxeiIgZmlsbD0iI2VjZWZmMiIvPjwvc3ZnPg==");
      background-position: center;
      background-repeat: no-repeat;
      background-size: contain;
    }

    > * {
      position: relative;
    }
  }
}

.toppage-related-list {
  margin-top: 48px;

  .list-items {
    display: flex;
    gap: 40px;
  }

  .list-item {
    width: calc((100% - 40px) / 2);

    a {
      display: flex;
      align-items: center;
      position: relative;
      height: 320px;
      padding: 40px;
      background-color: #ffffff;
      border-radius: 20px;
      box-shadow: var(--sdw-300);
      transition: background-color 0.3s;

      &:hover {
        background-color: var(--cl-sega-bl-50);
        text-decoration: none;
      }

      &::after {
        content: "";
        display: block;
        position: absolute;
        bottom: 40px;
        right: 40px;
        width: 40px;
        height: 40px;
        border-radius: 40px;
        background-color: var(--cl-sega-bl);
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTYuNjY3IDJ2MS4zMzNIMy4zMzN2OS4zMzRoOS4zMzRWOS4zMzNIMTR2NGEuNjY2LjY2NiAwIDAgMS0uNjY3LjY2N0gyLjY2N0EuNjY2LjY2NiAwIDAgMSAyIDEzLjMzM1YyLjY2N0EuNjY3LjY2NyAwIDAgMSAyLjY2NyAyem01LjEzOCAzLjEzOEw4IDguOTQzIDcuMDU3IDhsMy44MDUtMy44MDVMOC42NjcgMkgxNHY1LjMzM3oiIGZpbGw9IiNmZmYiLz48L3N2Zz4=");
        background-position: center;
        background-repeat: no-repeat;
        background-size: 16px;
      }
    }

    .item-img {
      width: 240px;

      img {
        width: 100%;
        height: auto;
      }
    }

    .item-detail {
      width: 300px;
      margin: 0 0 0 auto;
    }

    .item-name {
      font-size: 2.2rem;
      font-weight: 700;
    }

    .item-comment {
      margin-top: 24px;
      font-size: 1.4rem;
    }
  }
}

@media (min-width: 769px) {
}

@media (max-width: 768px) {
  .toppage-related {
    margin-top: 80px;

    .container {
      &::before {
        content: "";
        top: -70px;
        left: auto;
        right: 0;
        width: 346px;
        height: 460px;
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzQ2IiBoZWlnaHQ9IjQ2MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTUzMy43NjUgMjI0LjY0OWMtMy4yNzUtMTIuMTc0LTguNzkxLTIzLjc2Ni0xNi4zMDQtMzMuNzc3LTIwLjM3Ny0yNy4xNTgtNTQuMzA2LTQzLjU1OC05Ni45OTYtMzIuMTI2bC4wMzIuMTE3LTE0LjI3NCAzLjgyNC0uMDM5LS4xMi0yOTcuOTAxIDc5LjgzYy0xNC4xNDggMy43OTEtMjQuOTA0LTEtMzEuMDM0LTkuMTcyLTIuNzk1LTMuNzI1LTQuODYtOC4wMzgtNi4wNjYtMTIuNTQ5bC4xMTUtLjAzYy0xLjI1OS00LjY5OC0xLjY2OC05LjQ1LTEuMTQtMTMuODcyIDEuMjItMTAuMTM0IDguMTQ0LTE5LjY2NCAyMi4zLTIzLjQ1OEw1NTEuNjcyIDYwLjI3N2MtNy4zNzEtNy41OTItMTIuOTYyLTE3LjEwNi0xNS44ODgtMjguMDQ4LTIuOTMzLTEwLjk0Ni0yLjg1MS0yMS45NzMtLjI1OS0zMi4yM0w3Ni4zMTEgMTIzLjA0N2MtNDIuNjg5IDExLjQzMi02My44NjggNDIuNjAzLTY3Ljk0OCA3Ni4zMjVhOTkuNiA5OS42IDAgMCAwIDIuNjU1IDM3LjQzNmwuMTItLjAzOWMzLjI3NSAxMi4xNzUgOC43OTMgMjMuNzY4IDE2LjMwNiAzMy43NzggMjAuMzc3IDI3LjE1OSA1NC4zMDIgNDMuNTY0IDk2Ljk4NiAzMi4xMjFsMjk3LjkxNy03OS44MjEtLjAzOS0uMTIgMTQuMjgxLTMuODE5LjAzLjExNWMxNC4xNDUtMy43ODQgMjQuODk4Ljk5NyAzMS4wMzYgOS4xNzIgMi43OTMgMy43MjQgNC44NTcgOC4wMzcgNi4wNTggMTIuNTQ0bC0uMTE1LjAzMWMxLjI2MiA0LjcwOSAxLjY3MSA5LjQ2MSAxLjE0NiAxMy44NzUtMS4yMzEgMTAuMTM4LTguMTUzIDE5LjY2Ni0yMi4zIDIzLjQ1OEwtLjAwMSAzOTkuMzI4YzcuMjggNy42NDcgMTIuODA3IDE3LjE4NCAxNS43MzEgMjguMDk2IDIuOTI0IDEwLjkxMyAyLjkwMSAyMS45MjUuNDA4IDMyLjE4OWw0NTIuNDUtMTIxLjIzNGM0Mi42ODYtMTEuNDQyIDYzLjg2OC00Mi42MDEgNjcuOTQ2LTc2LjMyNSAxLjUyNS0xMi42MzQuNTUyLTI1LjQyNy0yLjY1NC0zNy40MzZsLS4xMTcuMDMxeiIgZmlsbD0iI2VjZWZmMiIvPjwvc3ZnPg==");
      }
    }
  }

  .toppage-related-list {
    margin-top: 32px;

    .list-items {
      flex-direction: column;
      gap: 24px;
    }

    .list-item {
      width: 100%;

      a {
        flex-direction: column;
        height: auto;
        padding: 16px 24px 64px;

        &::after {
          bottom: 16px;
          right: 24px;
          width: 32px;
          height: 32px;
          border-radius: 32px;
          background-size: 12px;
        }
      }

      .item-img {
        width: 230px;
      }

      .item-detail {
        width: 100%;
        margin: 34px 0 0;
      }

      .item-name {
        font-size: 2rem;
      }

      .item-comment {
        margin-top: 16px;
        font-size: 1.3rem;
      }
    }
  }
}

/* トップページ 採用情報 */

.toppage-recruit {
  position: relative;
  margin-top: 140px;
  border-radius: 40px;
  background-color: var(--cl-lgy2);
  overflow: hidden;

  .container {
    position: relative;
    padding-top: 80px;
    padding-bottom: 80px;
  }
}

.toppage-recruit-message {
  margin-top: 38px;
  width: 100%;
  font-size: 3.2rem;
  font-weight: 700;

  p:nth-child(2) {
    text-align: right;
  }
}

.toppage-recruit-btn {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-top: 48px;

  .btn {
    width: 100%;
    height: 120px;
  }
}

@media (min-width: 1201px) {
  .toppage-recruit-ttl {
    width: 500px;
  }

  .toppage-recruit-img_flow {
    display: flex;
    gap: 40px;
    position: absolute;
    top: 0;
    right: 0;

    .img_flow-1 {
      ul {
        animation: scroll-down 50s infinite linear 0.5s both;
      }
    }

    .img_flow-2 {
      ul {
        animation: scroll-up 50s infinite linear 0.5s both;
      }
    }

    li {
      width: 288px;
      margin-bottom: 16px;

      img {
        width: 100%;
        height: auto;
        border-radius: 20px;
      }
    }
  }
}

@media (max-width: 1200px) {
  .toppage-recruit {
    margin-top: 80px;

    .container {
      padding-bottom: 40px;
    }
  }

  .toppage-recruit-message {
    max-width: 500px;
    margin: 32px auto 0;
    font-size: 2.4rem;
  }

  .toppage-recruit-btn {
    gap: 16px;
    max-width: 500px;
    margin: 32px auto 0;

    .btn {
      height: 88px;
    }
  }

  .toppage-recruit-img_flow {
    margin: 40px -16px 0;

    .img_flow-1,
    .img_flow-2 {
      display: flex;

      ul {
        display: flex;
      }

      li {
        width: 140px;
        margin-right: 16px;

        img {
          width: 100%;
          height: auto;
          border-radius: 20px;
        }
      }
    }

    .img_flow-1 {
      ul {
        animation: scroll-right 25s infinite linear 0.5s both;
      }
    }

    .img_flow-2 {
      margin-top: 10px;

      ul {
        animation: scroll-left 25s infinite linear 0.5s both;
      }
    }
  }
}

@keyframes scroll-down {
  from {
    transform: translateY(-100%);
  }
  to {
    transform: translateY(0);
  }
}

@keyframes scroll-up {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-100%);
  }
}

@keyframes scroll-right {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}

@keyframes scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

/* トップページ ピックアップ情報 */

.toppage-pickup {
  margin-top: 140px;
}

@media (max-width: 768px) {
  .toppage-pickup {
    margin-top: 80px;
  }
}

.toppage-pickup-slider {
  margin-top: 48px;
  overflow: visible;

  .list-item {
    width: 384px;
    padding-right: 24px;

    a {
      .item-img {
        transition: opacity 0.3s;

        img {
          width: 100%;
          height: auto;
          border-radius: 10px;
        }
      }

      .item-detail {
        margin-top: 24px;
      }

      .item-comment {
        margin-top: 16px;
        font-size: 1.4rem;

        p {
          display: -webkit-box;
          -webkit-box-orient: vertical;
          overflow: hidden;
          text-overflow: ellipsis;
          line-clamp: 2;
          -webkit-line-clamp: 2;
        }
      }

      .item-date {
        margin-top: 16px;
        font-size: 1rem;
        font-family: var(--ff-en);
        font-weight: 700;
        text-align: right;
      }

      &:hover {
        text-decoration: none;

        .item-img {
          opacity: 0.7;
        }

        .item-comment {
          text-decoration: underline;
        }
      }
    }
  }
}

@media (max-width: 768px) {
  .toppage-pickup-slider {
    margin-top: 32px;

    .list-item {
      width: 176px;
      padding-right: 16px;

      a {
        .item-detail {
          margin-top: 16px;
        }

        .item-comment {
          p {
            line-clamp: 3;
            -webkit-line-clamp: 3;
          }
        }
      }
    }
  }
}

.toppage-pickup-content {
  max-width: 1200px;
  margin: 48px auto 0;

  a {
    display: flex;
    align-items: center;

    .item-img {
      width: 360px;
      transition: opacity 0.3s;

      img {
        width: 100%;
        height: auto;
      }
    }

    .item-detail {
      width: calc(100% - 424px);
      margin-left: auto;
    }

    .item-ttl {
      margin-top: 24px;
      font-size: 2.4rem;
      font-weight: 700;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .item-comment {
      margin-top: 24px;
      font-size: 1.4rem;
    }

    .item-date {
      margin-top: 24px;
      font-size: 1.2rem;
      font-family: var(--ff-en);
      font-weight: 700;
    }

    &:hover {
      text-decoration: none;

      .item-img {
        opacity: 0.7;
      }

      .item-comment {
        text-decoration: underline;
      }
    }
  }
}

@media (max-width: 768px) {
  .toppage-pickup-content {
    width: 100%;
    margin-top: 32px;

    a {
      display: flex;
      flex-direction: column;

      .item-img {
        width: 100%;
      }

      .item-detail {
        width: 100%;
        margin: 16px 0 0;
      }

      .item-ttl {
        margin-top: 24px;
        font-size: 2.4rem;
        font-weight: 700;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
      }

      .item-comment {
        margin-top: 16px;

        p {
          display: -webkit-box;
          -webkit-box-orient: vertical;
          overflow: hidden;
          text-overflow: ellipsis;
          line-clamp: 2;
          -webkit-line-clamp: 2;
        }
      }

      .item-date {
        margin-top: 16px;
        font-size: 1rem;
      }
    }
  }
}

.toppage-pickup-box {
  border-radius: 40px;
  background-color: var(--cl-sega-gr);
  overflow: hidden;

  .item-img {
    img {
      width: 100%;
      height: auto;
    }
  }

  .ttl-h2 {
    .ff-en,
    .ff-ja {
      color: #ffffff;
    }
  }

  .btn-c_arw {
    height: 120px;

    .arw {
      background-color: var(--cl-sega-gr);
    }

    &:hover {
      background-color: #ffffff;
      color: var(--cl-bk);

      .arw {
        &::before,
        &::after {
          background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgNi41di0xaDYuNzkzVjIuNzkzTDExIDYgNy43OTMgOS4yMDdWNi41eiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg==");
        }
      }
    }
  }
}

@media (min-width: 1201px) {
  .toppage-pickup-box {
    display: flex;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;

    .item-img {
      width: calc(100% - 660px);
    }

    .item-detail {
      width: 660px;
      padding: 0 80px;
    }

    .item-btn {
      margin-top: 48px;
    }
  }
}

@media (max-width: 1200px) {
  .toppage-pickup-box {
    .item-detail {
      padding: 32px 16px;
    }

    .item-btn {
      margin-top: 32px;

      .btn-c_arw {
        height: 88px;
      }
    }
  }
}

/*** 下層ページ共通 ***/

/* H1タイトル */

.lower-h1 {
  border-bottom-right-radius: 40px;
  border-bottom-left-radius: 40px;
  background-color: var(--cl-lgy1);

  .container {
    height: 500px;
    padding-top: 260px;
    position: relative;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTI3MCIgaGVpZ2h0PSIxMDU4IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTIyOC41MSA1MTcuMDVjLTcuNTQtMjguMDItMjAuMjQtNTQuNy0zNy41My03Ny43NC00Ni45LTYyLjUwNy0xMjQuOTktMTAwLjI1My0yMjMuMjQyLTczLjk0bC4wNzEuMjY4LTMyLjg1MiA4LjgwMi0uMDg5LS4yNzctNjg1LjY0NiAxODMuNzM2Yy0zMi41NjEgOC43MjUtNTcuMzE3LTIuMzAxLTcxLjQyNy0yMS4xMTEtNi40MzMtOC41NzMtMTEuMTgzLTE4LjUwMS0xMy45NjEtMjguODgxbC4yNjQtLjA3MWMtMi44OTctMTAuODExLTMuODM3LTIxLjc0OS0yLjYyMy0zMS45MjYgMi44MDktMjMuMzI2IDE4Ljc0NS00NS4yNTkgNTEuMzI2LTUzLjk5MkwxMjY5LjcyIDEzOC43MzVjLTE2Ljk2LTE3LjQ3NS0yOS44My0zOS4zNzItMzYuNTctNjQuNTU1LTYuNzUtMjUuMTk0LTYuNTYtNTAuNTc1LS41OS03NC4xOEwxNzUuNjM1IDI4My4yMDJDNzcuMzg1IDMwOS41MTQgMjguNjM5IDM4MS4yNTYgMTkuMjUgNDU4Ljg3MWMtMy40OTUgMjkuMDY1LTEuMjcyIDU4LjUyMyA2LjEwOCA4Ni4xNjJsLjI3OC0uMDg5YzcuNTM3IDI4LjAyIDIwLjIzOCA1NC43MDMgMzcuNTMgNzcuNzQzIDQ2Ljg5OSA2Mi41MDcgMTI0Ljk3OSAxMDAuMjY2IDIyMy4yMjEgNzMuOTI4bDY4NS42ODEtMTgzLjcxNC0uMDg5LS4yNzcgMzIuODcxLTguNzg5LjA3LjI2NWMzMi41NS04LjcwOSA1Ny4zIDIuMjkzIDcxLjQzIDIxLjExIDYuNDMgOC41NyAxMS4xOCAxOC40OTggMTMuOTQgMjguODcxbC0uMjYuMDcxYzIuOSAxMC44MzggMy44NCAyMS43NzYgMi42MyAzMS45MzMtMi44MyAyMy4zMzYtMTguNzYgNDUuMjY0LTUxLjMyIDUzLjk5MkwtLjAwMiA5MTkuMDg5YzE2Ljc1NSAxNy41OTkgMjkuNDc2IDM5LjU1IDM2LjIwNiA2NC42NjYgNi43MyAyNS4xMTUgNi42NzggNTAuNDY1Ljk0IDc0LjA4NUwxMDc4LjUgNzc4LjgwOWM5OC4yNC0yNi4zMzUgMTQ2Ljk5LTk4LjA1IDE1Ni4zOC0xNzUuNjY4IDMuNTEtMjkuMDc5IDEuMjctNTguNTIzLTYuMTEtODYuMTYxbC0uMjcuMDcxeiIgZmlsbD0iI2VjZWZmMiIvPjwvc3ZnPg==");
    background-position: center left 40px;
    background-repeat: no-repeat;
    background-size: 1270px 1058px;
  }

  h1 {
    span {
      display: block;
    }

    .ff-en {
      color: var(--cl-sega-bl);
      font-size: 8rem;
      font-weight: 800;
      line-height: 0.8;
      letter-spacing: 0;
    }

    .ff-ja {
      margin-top: 32px;
      font-size: 2.4rem;
      font-weight: 700;
    }
  }
}

@media (max-width: 768px) {
  .lower-h1 {
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;

    .container {
      display: flex;
      flex-direction: column;
      justify-content: center;
      height: 260px;
      padding-top: 58px;
      position: relative;
      background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzQzIiBoZWlnaHQ9IjI2MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTQ0NS41ODcgMTM5LjQ2NWMtMi43MzQtMTAuMTY0LTcuMzM5LTE5Ljg0MS0xMy42MTEtMjguMTk3LTE3LjAxLTIyLjY3Mi00NS4zMzQtMzYuMzYzLTgwLjk3MS0yNi44MTlsLjAyNi4wOTctMTEuOTE2IDMuMTkzLS4wMzItLjFMOTAuMzk0IDE1NC4yOGMtMTEuODEgMy4xNjQtMjAuNzg5LS44MzUtMjUuOTA3LTcuNjU4LTIuMzMzLTMuMTA5LTQuMDU2LTYuNzEtNS4wNjMtMTAuNDc1bC4wOTUtLjAyNmMtMS4wNS0zLjkyMS0xLjM5MS03Ljg4OC0uOTUtMTEuNTc5IDEuMDE4LTguNDYxIDYuNzk4LTE2LjQxNiAxOC42MTUtMTkuNTg0TDQ2MC41MzYgMi4yNDdhNTMuMjMgNTMuMjMgMCAwIDEtMTMuMjYzLTIzLjQxNGMtMi40NDktOS4xMzgtMi4zOC0xOC4zNDQtLjIxNi0yNi45MDZMNjMuNzA0IDU0LjY0N0MyOC4wNjggNjQuMTkgMTAuMzg4IDkwLjIxIDYuOTgyIDExOC4zNjJhODMuMSA4My4xIDAgMCAwIDIuMjE2IDMxLjI1MWwuMS0uMDMyYzIuNzM0IDEwLjE2MyA3LjM0IDE5Ljg0MSAxMy42MTIgMjguMTk4IDE3LjAxMSAyMi42NzEgNDUuMzMxIDM2LjM2NyA4MC45NjUgMjYuODE0bDI0OC43LTY2LjYzNC0uMDMyLS4xMDEgMTEuOTIxLTMuMTg4LjAyNi4wOTZjMTEuODA4LTMuMTU4IDIwLjc4NS44MzIgMjUuOTA4IDcuNjU3IDIuMzMyIDMuMTA5IDQuMDU1IDYuNzA5IDUuMDU4IDEwLjQ3MmwtLjA5Ni4wMjZjMS4wNTMgMy45MzEgMS4zOTUgNy44OTguOTU2IDExLjU4Mi0xLjAyNyA4LjQ2NC02LjgwNiAxNi40MTgtMTguNjE2IDE5LjU4M0wwIDI4NS4yODdjNi4wNzcgNi4zODMgMTAuNjkgMTQuMzQ1IDEzLjEzMiAyMy40NTQgMi40NCA5LjExIDIuNDIyIDE4LjMwMy4zNCAyNi44NzFsMzc3LjcwNi0xMDEuMjA2YzM1LjYzMy05LjU1MiA1My4zMTYtMzUuNTYzIDU2LjcyMS02My43MTZhODMgODMgMCAwIDAtMi4yMTYtMzEuMjUxeiIgZmlsbD0iI2VjZWZmMiIvPjwvc3ZnPg==");
      background-position: top right;
      background-size: auto 100%;
    }

    h1 {
      .ff-en {
        font-size: 4.8rem;
      }

      .ff-ja {
        margin-top: 16px;
        font-size: 1.6rem;
      }
    }
  }
}

/* H1なしヘッダー */

.lower-no_h1-header {
  background-color: var(--cl-lgy1);

  .container {
    height: 184px;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTI3MCIgaGVpZ2h0PSIxMDU4IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTIyOC41MSA1MTcuMDVjLTcuNTQtMjguMDItMjAuMjQtNTQuNy0zNy41My03Ny43NC00Ni45LTYyLjUwNy0xMjQuOTktMTAwLjI1My0yMjMuMjQyLTczLjk0bC4wNzEuMjY4LTMyLjg1MiA4LjgwMi0uMDg5LS4yNzctNjg1LjY0NiAxODMuNzM2Yy0zMi41NjEgOC43MjUtNTcuMzE3LTIuMzAxLTcxLjQyNy0yMS4xMTEtNi40MzMtOC41NzMtMTEuMTgzLTE4LjUwMS0xMy45NjEtMjguODgxbC4yNjQtLjA3MWMtMi44OTctMTAuODExLTMuODM3LTIxLjc0OS0yLjYyMy0zMS45MjYgMi44MDktMjMuMzI2IDE4Ljc0NS00NS4yNTkgNTEuMzI2LTUzLjk5MkwxMjY5LjcyIDEzOC43MzVjLTE2Ljk2LTE3LjQ3NS0yOS44My0zOS4zNzItMzYuNTctNjQuNTU1LTYuNzUtMjUuMTk0LTYuNTYtNTAuNTc1LS41OS03NC4xOEwxNzUuNjM1IDI4My4yMDJDNzcuMzg1IDMwOS41MTQgMjguNjM5IDM4MS4yNTYgMTkuMjUgNDU4Ljg3MWMtMy40OTUgMjkuMDY1LTEuMjcyIDU4LjUyMyA2LjEwOCA4Ni4xNjJsLjI3OC0uMDg5YzcuNTM3IDI4LjAyIDIwLjIzOCA1NC43MDMgMzcuNTMgNzcuNzQzIDQ2Ljg5OSA2Mi41MDcgMTI0Ljk3OSAxMDAuMjY2IDIyMy4yMjEgNzMuOTI4bDY4NS42ODEtMTgzLjcxNC0uMDg5LS4yNzcgMzIuODcxLTguNzg5LjA3LjI2NWMzMi41NS04LjcwOSA1Ny4zIDIuMjkzIDcxLjQzIDIxLjExIDYuNDMgOC41NyAxMS4xOCAxOC40OTggMTMuOTQgMjguODcxbC0uMjYuMDcxYzIuOSAxMC44MzggMy44NCAyMS43NzYgMi42MyAzMS45MzMtMi44MyAyMy4zMzYtMTguNzYgNDUuMjY0LTUxLjMyIDUzLjk5MkwtLjAwMiA5MTkuMDg5YzE2Ljc1NSAxNy41OTkgMjkuNDc2IDM5LjU1IDM2LjIwNiA2NC42NjYgNi43MyAyNS4xMTUgNi42NzggNTAuNDY1Ljk0IDc0LjA4NUwxMDc4LjUgNzc4LjgwOWM5OC4yNC0yNi4zMzUgMTQ2Ljk5LTk4LjA1IDE1Ni4zOC0xNzUuNjY4IDMuNTEtMjkuMDc5IDEuMjctNTguNTIzLTYuMTEtODYuMTYxbC0uMjcuMDcxeiIgZmlsbD0iI2VjZWZmMiIvPjwvc3ZnPg==");
    background-position: top -264px left 51px;
    background-repeat: no-repeat;
    background-size: 1270px 1058px;
  }
}

@media (max-width: 768px) {
  .lower-no_h1-header {
    .container {
      height: 68px;
      position: relative;
      background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzQzIiBoZWlnaHQ9IjI2MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTQ0NS41ODcgMTM5LjQ2NWMtMi43MzQtMTAuMTY0LTcuMzM5LTE5Ljg0MS0xMy42MTEtMjguMTk3LTE3LjAxLTIyLjY3Mi00NS4zMzQtMzYuMzYzLTgwLjk3MS0yNi44MTlsLjAyNi4wOTctMTEuOTE2IDMuMTkzLS4wMzItLjFMOTAuMzk0IDE1NC4yOGMtMTEuODEgMy4xNjQtMjAuNzg5LS44MzUtMjUuOTA3LTcuNjU4LTIuMzMzLTMuMTA5LTQuMDU2LTYuNzEtNS4wNjMtMTAuNDc1bC4wOTUtLjAyNmMtMS4wNS0zLjkyMS0xLjM5MS03Ljg4OC0uOTUtMTEuNTc5IDEuMDE4LTguNDYxIDYuNzk4LTE2LjQxNiAxOC42MTUtMTkuNTg0TDQ2MC41MzYgMi4yNDdhNTMuMjMgNTMuMjMgMCAwIDEtMTMuMjYzLTIzLjQxNGMtMi40NDktOS4xMzgtMi4zOC0xOC4zNDQtLjIxNi0yNi45MDZMNjMuNzA0IDU0LjY0N0MyOC4wNjggNjQuMTkgMTAuMzg4IDkwLjIxIDYuOTgyIDExOC4zNjJhODMuMSA4My4xIDAgMCAwIDIuMjE2IDMxLjI1MWwuMS0uMDMyYzIuNzM0IDEwLjE2MyA3LjM0IDE5Ljg0MSAxMy42MTIgMjguMTk4IDE3LjAxMSAyMi42NzEgNDUuMzMxIDM2LjM2NyA4MC45NjUgMjYuODE0bDI0OC43LTY2LjYzNC0uMDMyLS4xMDEgMTEuOTIxLTMuMTg4LjAyNi4wOTZjMTEuODA4LTMuMTU4IDIwLjc4NS44MzIgMjUuOTA4IDcuNjU3IDIuMzMyIDMuMTA5IDQuMDU1IDYuNzA5IDUuMDU4IDEwLjQ3MmwtLjA5Ni4wMjZjMS4wNTMgMy45MzEgMS4zOTUgNy44OTguOTU2IDExLjU4Mi0xLjAyNyA4LjQ2NC02LjgwNiAxNi40MTgtMTguNjE2IDE5LjU4M0wwIDI4NS4yODdjNi4wNzcgNi4zODMgMTAuNjkgMTQuMzQ1IDEzLjEzMiAyMy40NTQgMi40NCA5LjExIDIuNDIyIDE4LjMwMy4zNCAyNi44NzFsMzc3LjcwNi0xMDEuMjA2YzM1LjYzMy05LjU1MiA1My4zMTYtMzUuNTYzIDU2LjcyMS02My43MTZhODMgODMgMCAwIDAtMi4yMTYtMzEuMjUxeiIgZmlsbD0iI2VjZWZmMiIvPjwvc3ZnPg==");
      background-position: top right;
      background-size: 343px 260px;
    }
  }
}

/* パンくず */

.breadcrumb-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.breadcrumb {
  margin: 40px 0 80px;
  font-size: 1.1rem;

  > li {
    display: inline;

    & + li {
      position: relative;

      &::before {
        content: "";
        display: inline-block;
        position: relative;
        top: -3px;
        width: 7px;
        height: 1px;
        margin: 0 5px 0 1px;
        background-color: var(--cl-bdr);
      }
    }

    a {
      color: var(--cl-gy);
    }
  }
}

@media (min-width: 769px) {
}

@media (max-width: 768px) {
  .breadcrumb {
    margin: 24px 0 64px;
  }
}

/* テーブル */

.lower-tbl {
  border-top: 1px solid var(--cl-bdr);

  .row {
    padding: 40px 0;
    border-bottom: 1px solid var(--cl-bdr);
    font-size: 1.6rem;

    &.no-bdr {
      padding-bottom: 0;
      border-bottom: none;
    }

    > dt {
      font-weight: 700;
    }

    address {
      display: flex;
      align-items: center;
      font-style: normal;

      .gmap {
        flex-shrink: 0;
        margin-left: 24px;
      }
    }
  }

  a {
    text-decoration: underline;

    &:hover {
      text-decoration: none;
    }
  }
}

.board-member-tbl {
  th {
    width: 264px;
    font-weight: 400;
    text-align: left;
  }

  td {
    width: calc(100% - 264px);
  }

  tr:not(:first-child) {
    th,
    td {
      padding-top: 16px;
    }
  }
}

.list-dot {
  li {
    position: relative;
    padding-left: 18px;

    & + li {
      margin-top: 10px;
    }

    &::before {
      content: "•";
      position: absolute;
      top: 0;
      left: 2px;
      font-family: var(--ff-en);
    }
  }
}

@media (min-width: 769px) {
  .lower-tbl {
    .row {
      display: flex;
      align-items: center;

      > dt {
        width: 360px;
      }

      dd {
        width: calc(100% - 360px);
      }
    }
  }
}

@media (max-width: 768px) {
  .lower-tbl {
    .row {
      padding: 24px 0;

      > dd {
        margin-top: 16px;
      }

      address {
        display: flex;
        align-items: center;
        font-style: normal;

        .gmap {
          flex-shrink: 0;
          margin-left: 24px;
        }
      }
    }
  }
}

/* ボックス */

.bg_gy-box,
.bg_dgy-box {
  padding: 40px 0;
  border-radius: 20px;
  background-color: var(--cl-lgy1);
  font-size: 1.6rem;

  &.bg_dgy-box {
    background-color: var(--cl-gy);
    color: #ffffff;
  }

  .ttl {
    font-weight: 700;
  }

  .detail {
    p + p {
      margin-top: 16px;
    }
    a {
      text-decoration: underline;

      &:hover {
        text-decoration: none;
      }
    }
  }
}

@media (min-width: 769px) {
  .bg_gy-box {
    display: flex;
    align-items: center;

    .ttl,
    .detail {
      display: flex;
      min-height: 100px;
    }

    .ttl {
      align-items: center;
      justify-content: center;
      width: 340px;
      text-align: center;
    }

    .detail {
      position: relative;
      flex-direction: column;
      justify-content: center;
      padding: 0 80px;
      border-left: 1px solid var(--cl-bdr);
    }
  }
}

@media (max-width: 768px) {
  .bg_gy-box {
    padding: 24px;

    .detail {
      margin-top: 24px;
      padding-top: 24px;
      border-top: 1px solid var(--cl-bdr);
    }
  }
}

/*** 会社概要 ***/

.about-governance {
  margin-top: 100px;
}

@media (min-width: 769px) {
}

@media (max-width: 768px) {
  .about-governance {
    margin-top: 80px;
  }
}

/*** 事業内容 ***/

.service-info-list {
  position: relative;
  margin-top: 80px;

  a {
    .ttl {
      display: flex;
      align-items: center;
      position: relative;
      width: 100%;
      min-height: 55px;
      padding: 16px;
      border-radius: 10px;
      background-color: var(--cl-lgy2);
      color: var(--cl-sega-bl);
      font-size: 2rem;
      font-weight: 700;
      letter-spacing: 0;
      transition:
        background-color 0.3s,
        color 0.3s;
    }

    .comment {
      margin-top: 16px;
      font-size: 1.4rem;
    }

    &:hover {
      text-decoration: none;

      .ttl {
        background-color: var(--cl-sega-bl);
        color: #ffffff;
      }

      .comment {
        text-decoration: underline;
      }
    }
  }
}

@media (min-width: 1281px) {
  .service-info-list-icons {
    display: none;
  }

  .service-info-list {
    height: 870px;
    margin-bottom: 150px;
    background-image: url(../img/service/logo.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 233px 100px;

    a {
      .icon {
        position: absolute;
        width: 110px;
        height: 110px;
        border-radius: 110px;
        background-color: #ffffff;
        background-position: center;
        background-repeat: no-repeat;
        box-shadow: var(--sdw-600);
        transition: background 0.3s;

        &.icon-logistics {
          top: 182px;
          left: 578px;
          background-image: url(../img/service/icon_logistics.png);
          background-size: 65px 36px;
        }

        &.icon-overseas {
          top: 233px;
          left: 441px;
          background-image: url(../img/service/icon_overseas.png);
          background-size: 69px 54px;
        }

        &.icon-trade {
          top: 351px;
          left: 377px;
          background-image: url(../img/service/icon_trade.png);
          background-size: 66px 36px;
        }

        &.icon-driving {
          top: 483px;
          left: 393px;
          background-image: url(../img/service/icon_driving.png);
          background-size: 66px 36px;
        }

        &.icon-re-amuse {
          top: 233px;
          left: 715px;
          background-image: url(../img/service/icon_re-amuse.png);
          background-size: 59px 54px;
        }

        &.icon-parts {
          top: 351px;
          left: 793px;
          background-image: url(../img/service/icon_parts.png);
          background-size: 65px 40px;
        }

        &.icon-maintenance {
          top: 483px;
          left: 760px;
          background-image: url(../img/service/icon_maintenance.png);
          background-size: 52px 52px;
        }

        &.icon-e-site {
          top: 578px;
          left: 505px;
          background-image: url(../img/service/icon_e-site.png);
          background-size: 54px 54px;
        }

        &.icon-repair {
          top: 578px;
          left: 654px;
          background-image: url(../img/service/icon_repair.png);
          background-size: 67px 52px;
        }
      }

      .detail {
        position: absolute;
        width: 300px;

        &.detail-logistics {
          top: 0;
          left: 496px;
        }

        &.detail-overseas {
          top: 110px;
          left: 100px;
        }

        &.detail-trade {
          top: 320px;
          left: 40px;
        }

        &.detail-driving {
          top: 530px;
          left: 70px;
        }

        &.detail-re-amuse {
          top: 90px;
          right: 100px;
        }

        &.detail-parts {
          top: 303px;
          right: 40px;
        }

        &.detail-maintenance {
          top: 540px;
          right: 80px;
        }

        &.detail-e-site {
          top: 740px;
          left: 310px;
        }

        &.detail-repair {
          top: 740px;
          right: 310px;
        }
      }

      &:hover {
        .icon {
          background-color: var(--cl-sega-bl);

          &.icon-logistics {
            background-image: url(../img/service/icon_logistics_on.png);
          }

          &.icon-overseas {
            background-image: url(../img/service/icon_overseas_on.png);
          }

          &.icon-trade {
            background-image: url(../img/service/icon_trade_on.png);
          }

          &.icon-driving {
            background-image: url(../img/service/icon_driving_on.png);
          }

          &.icon-re-amuse {
            background-image: url(../img/service/icon_re-amuse_on.png);
          }

          &.icon-parts {
            background-image: url(../img/service/icon_parts_on.png);
          }

          &.icon-maintenance {
            background-image: url(../img/service/icon_maintenance_on.png);
          }

          &.icon-e-site {
            background-image: url(../img/service/icon_e-site_on.png);
          }

          &.icon-repair {
            background-image: url(../img/service/icon_repair_on.png);
          }
        }
      }
    }
  }
}

@media (max-width: 1280px) {
  .service-info-list-icons {
    background-image: url(../img/service/sp/logo.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 159px 66px;

    img {
      width: 100%;
      filter: drop-shadow(0px 5px 12px rgba(24, 39, 75, 0.12));
    }
  }

  .service-info-list {
    margin-top: 64px;

    .list-items {
      margin-top: 64px;

      > li {
        & + li {
          margin-top: 24px;
        }
      }

      .ttl {
        &::after {
          content: "";
          display: block;
          position: absolute;
          top: 50%;
          right: 16px;
          width: 16px;
          height: 16px;
          margin-top: -8px;
          background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuMzMyIDguNjY3VjcuMzM0aDkuMDU3di0zLjYxbDQuMjc2IDQuMjc3LTQuMjc2IDQuMjc2di0zLjYxeiIgZmlsbD0iIzAwODJjYSIvPjwvc3ZnPg==");
          background-position: center;
          background-repeat: no-repeat;
          background-size: contain;
        }
      }
    }
  }
}

.service-map {
  margin-top: 100px;
  background-color: var(--cl-sega-bl);
}

#wrapper:has(.service-map) footer {
  border-radius: 0;
}

@media (min-width: 769px) {
  .service-map {
    margin-bottom: -100px;
  }
}

@media (max-width: 768px) {
  .service-map {
    margin-bottom: -80px;
  }
}

/*** 事業内容下層 ***/

@media (min-width: 769px) {
  .service-lower-mv {
    &.img-logistics {
      background-image: url(../img/service/logistics/img_ttl.jpg);
    }

    &.img-overseas {
      background-image: url(../img/service/overseas/img_ttl.jpg);
    }

    &.img-trade {
      background-image: url(../img/service/trade/img_ttl.jpg);
    }

    &.img-driving {
      background-image: url(../img/service/driving/img_ttl.jpg);
    }

    &.img-re-amuse {
      background-image: url(../img/service/re-amuse/img_ttl.jpg);
    }

    &.img-parts {
      background-image: url(../img/service/parts/img_ttl.jpg);
    }

    &.img-maintenance {
      background-image: url(../img/service/maintenance/img_ttl.jpg);
    }

    &.img-e-site {
      background-image: url(../img/service/e-site/img_ttl.jpg);
    }

    &.img-repair {
      background-image: url(../img/service/repair/img_ttl.jpg);
    }
  }
}

@media (max-width: 768px) {
  .service-lower-mv {
    &.img-logistics {
      background-image: url(../img/service/logistics/sp/img_ttl.jpg);
    }

    &.img-overseas {
      background-image: url(../img/service/overseas/sp/img_ttl.jpg);
    }

    &.img-trade {
      background-image: url(../img/service/trade/sp/img_ttl.jpg);
    }

    &.img-driving {
      background-image: url(../img/service/driving/sp/img_ttl.jpg);
    }

    &.img-re-amuse {
      background-image: url(../img/service/re-amuse/sp/img_ttl.jpg);
    }

    &.img-parts {
      background-image: url(../img/service/parts/sp/img_ttl.jpg);
    }

    &.img-maintenance {
      background-image: url(../img/service/maintenance/sp/img_ttl.jpg);
    }

    &.img-e-site {
      background-image: url(../img/service/e-site/sp/img_ttl.jpg);
    }

    &.img-repair {
      background-image: url(../img/service/repair/sp/img_ttl.jpg);
    }
  }
}

.service-lower-mv {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 100%;
  height: 500px;
  padding: 64px;
  border-radius: 20px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #ffffff;

  .ff-en {
    span {
      display: block;
      font-size: 10rem;
      font-weight: 800;
      line-height: 0.8;
      letter-spacing: 0;
    }
  }

  .ff-ja {
    margin-top: 24px;
    font-size: 2rem;
    font-weight: 700;
  }
}

.service-lower-main {
  h3 {
    margin-top: 80px;
    font-size: 3.2rem;
    font-weight: 700;
  }
}

.service-lower-comment {
  margin-top: 40px;
  font-size: 1.8rem;
}

.service-lower-btn {
  margin-top: 64px;

  .btn {
    justify-content: center;
    width: 500px;
    height: 100px;
    padding: 10px 24px 10px 0;
    margin: 0 auto;

    .arw {
      right: 24px;
    }
  }
}

@media (min-width: 769px) {
  .service-lower-domestics-list {
    margin-top: 80px;

    h4 {
      margin-bottom: 24px;
      font-size: 2rem;
      font-weight: 700;
    }

    .bg_gy-box {
      .domestics-list {
        display: flex;
        padding: 0 40px;

        li {
          font-size: 1.4rem;

          & + li {
            position: relative;
            margin-left: 49px;

            &::before {
              content: "";
              display: block;
              position: absolute;
              top: 50%;
              left: -25px;
              width: 1px;
              height: 14px;
              margin-top: -7px;
              background-color: var(--cl-bdr);
            }
          }
        }
      }
    }
  }
}

@media (max-width: 768px) {
  .service-lower-mv {
    height: auto;
    padding: 24px;
    aspect-ratio: 1 / 1;

    .ff-en {
      span {
        font-size: 5.7rem;
        line-height: 0.9;
      }
    }

    .ff-ja {
      margin-top: 16px;
      font-size: 1.6rem;
    }
  }

  .service-lower-main {
    h3 {
      font-size: 2.8rem;
    }
  }

  .service-lower-comment {
    margin-top: 24px;
    font-size: 1.6rem;
  }

  .service-lower-domestics-list {
    margin-top: 64px;

    h4 {
      margin-bottom: 24px;
      font-size: 1.8rem;
      font-weight: 700;
    }

    .bg_gy-box {
      .domestics-list {
        li {
          font-size: 1.4rem;

          & + li {
            margin-top: 16px;
          }
        }
      }
    }
  }

  .service-lower-btn {
    margin-top: 40px;

    .btn {
      width: 100%;
      height: 80px;

      .arw {
        right: 16px;
      }
    }
  }
}

.service-lower-contact {
  margin-top: 100px;
  padding: 40px 40px 40px 100px;
  border-radius: 40px;
  background-color: var(--cl-gy);

  h2 {
    .ff-en,
    .ff-ja {
      color: #ffffff;
    }
  }
}

.service-lower-contact-btn {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  gap: 16px;

  .btn {
    width: 500px;
    height: 100px;

    .arw {
      right: 24px;
    }
  }
}

@media (min-width: 769px) {
  .service-lower-contact {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
}

@media (max-width: 768px) {
  .service-lower-contact {
    margin-top: 80px;
    padding: 40px 16px;
  }

  .service-lower-contact-btn {
    margin-top: 32px;

    .btn {
      width: 100%;
      height: 80px;
      font-size: 1.6rem;
      letter-spacing: 0;

      &::before {
        margin-right: 8px;
      }

      .arw {
        right: 16px;
      }
    }
  }
}

@media (min-width: 769px) {
  .service-common-links {
    margin-top: 100px;

    .list-items {
      display: flex;
      flex-wrap: wrap;
      gap: 24px;

      li {
        width: calc((100% - 48px) / 3);

        .btn {
          height: 100px;
          font-size: 1.8rem;
        }
      }
    }
  }
}

@media (max-width: 768px) {
  .service-common-links {
    margin-top: 80px;

    .list-items {
      display: flex;
      flex-wrap: wrap;
      gap: 16px;

      li {
        width: 100%;

        .btn {
          height: 80px;
        }
      }
    }
  }
}

/*** 事業所一覧 ***/

.gmap {
  a {
    display: block;
    width: 40px;
    height: 40px;
    border-radius: 40px;
    background-color: var(--cl-lgy2);
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyLjI0MyAxMS41NzYgOCAxNS44MThsLTQuMjQzLTQuMjQyYTYgNiAwIDEgMSA4LjQ4NiAwTTggOC42NjZBMS4zMzMgMS4zMzMgMCAxIDAgOCA2YTEuMzMzIDEuMzMzIDAgMCAwIDAgMi42NjYiIGZpbGw9IiMwMDgyY2EiLz48L3N2Zz4=");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 16px;
    transition: background 0.3s;

    &:hover {
      background-color: var(--cl-sega-bl);
      background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyLjI0MyAxMS41NzYgOCAxNS44MThsLTQuMjQzLTQuMjQyYTYgNiAwIDEgMSA4LjQ4NiAwTTggOC42NjZBMS4zMzMgMS4zMzMgMCAxIDAgOCA2YTEuMzMzIDEuMzMzIDAgMCAwIDAgMi42NjYiIGZpbGw9IiNmZmYiLz48L3N2Zz4=");
    }
  }
}

.office-list-item {
  & + .office-list-item {
    margin-top: 100px;
  }

  .address {
    img {
      width: 100%;
      border-radius: 20px;
    }

    .name {
      margin-top: 40px;
      font-size: 2.4rem;
      font-weight: 700;
    }

    address {
      position: relative;
      margin-top: 16px;
      padding-right: 50px;
      font-size: 1.6rem;
      font-style: normal;

      .gmap {
        position: absolute;
        right: 0;
      }
    }
  }

  .department-list {
    h2 {
      font-size: 2.8rem;
      font-weight: 700;

      &:not(:first-child) {
        margin-top: 80px;
      }
    }

    ul {
      margin-top: 40px;
      border-top: 1px solid var(--cl-bdr);

      li {
        padding: 24px 0;
        border-bottom: 1px solid var(--cl-bdr);
        font-size: 1.6rem;
        font-weight: 700;
      }
    }
  }
}

@media (min-width: 769px) {
  .office-list-item {
    display: flex;
    gap: 80px;

    .address {
      width: 480px;

      .gmap {
        top: 50%;
        margin-top: -20px;
      }
    }

    .department-list {
      width: calc(100% - 560px);
    }
  }
}

@media (max-width: 768px) {
  .office-list-item {
    & + .office-list-item {
      margin-top: 80px;
    }

    .address {
      .name {
        font-size: 2.2rem;
      }

      .gmap {
        bottom: 0;
      }
    }

    .department-list {
      margin-top: 64px;

      h2 {
        font-size: 2.4rem;

        &:not(:first-child) {
          margin-top: 80px;
        }
      }

      ul {
        margin-top: 32px;
      }
    }
  }
}

/*** お知らせ詳細 ***/

.news_detail-ttl {
  margin-top: 24px;
  font-size: 3.2rem;
  font-weight: 700;
}

.news_detail-date {
  margin-top: 24px;
  font-size: 1.6rem;
  font-family: var(--ff-en);
  font-weight: 700;
}

.news_detail-mv {
  margin-top: 80px;

  img {
    height: auto;
    border-radius: 20px;
  }
}

@media (min-width: 769px) {
}

@media (max-width: 768px) {
  .news_detail-ttl {
    font-size: 2rem;
  }

  .news_detail-mv {
    margin: 40px -16px 0;

    img {
      border-radius: 0;
    }
  }
}

.news_detail-content {
  h3 {
    margin: 0 0 40px;
    font-size: 2.8rem;
    font-weight: 700;
  }
}

.news_detail-img-article {
  > ul {
    display: flex;
    flex-wrap: wrap;
  }

  img {
    height: auto;
    border-radius: 20px;
  }

  figcaption {
    margin-top: 16px;
    color: var(--cl-gy);
    font-size: 1.2rem;
  }

  .ttl {
    margin-top: 40px;
    font-size: 1.8rem;
    font-weight: 700;
  }

  .comment {
    margin-top: 24px;
    font-size: 1.6rem;

    p + p {
      margin-top: 1.5em;
    }
  }

  .vert-1 {
    gap: 80px 0;

    > li {
      display: flex;
      justify-content: space-between;
      gap: 64px;

      figure {
        width: 340px;
      }

      .ttl {
        margin-top: 0;
      }

      .detail {
        width: calc(100% - 340px);
      }
    }
  }
}

@media (min-width: 769px) {
  .news_detail-content {
    width: 1000px;
    margin: 100px auto 0;
  }

  .news_detail-img-article {
    > ul {
      &.col-1 {
        > li {
          gap: 80px 0;
          width: 100%;
        }
      }

      &.col-2 {
        gap: 80px 40px;

        > li {
          width: calc((100% - 40px) / 2);
        }
      }

      &.col-3 {
        gap: 80px 32px;

        > li {
          width: calc((100% - 64px) / 3);
        }
      }

      &.col-4 {
        gap: 80px 24px;

        > li {
          width: calc((100% - 72px) / 4);
        }
      }

      &.col-3,
      &.col-4 {
        .ttl {
          font-size: 1.6rem;
        }

        .comment {
          font-size: 1.4rem;
        }
      }
    }
  }
}

@media (max-width: 768px) {
  .news_detail-content {
    margin-top: 80px;

    h3 {
      margin: 0 0 32px;
      font-size: 2.4rem;
    }
  }

  .news_detail-img-article {
    > ul {
      &.col-1 {
        > li {
          gap: 64px 0;
        }
      }

      &.col-2,
      &.col-3,
      &.col-4 {
        gap: 40px 16px;

        > li {
          width: calc((100% - 16px) / 2);
        }

        img {
          border-radius: 10px;
        }

        .ttl {
          margin-top: 16px;
          font-size: 1.6rem;
        }

        .comment {
          font-size: 1.4rem;
        }
      }
    }

    .vert-1 {
      gap: 56px 0;

      > li {
        display: flex;
        justify-content: space-between;
        gap: 24px;

        figure {
          width: 140px;
        }

        img {
          border-radius: 10px;
        }

        .detail {
          width: calc(100% - 140px);
        }

        .comment {
          margin-top: 16px;
          font-size: 1.4rem;
        }
      }
    }
  }
}

.news_detail-note {
  font-size: 1.4rem;

  p {
    position: relative;
    padding-left: 1em;

    &::before {
      content: "※";
      position: absolute;
      top: 0;
      left: 0;
    }
  }
}

.news_detail-tbl-1,
.news_detail-tbl-2,
.news_detail-tbl-3 {
  table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
  }

  th,
  dt {
    background-color: var(--cl-lgy1);
    font-weight: 700;
  }

  dl {
    width: 100%;
  }
}

@media (min-width: 769px) {
  .news_detail-tbl-1,
  .news_detail-tbl-2,
  .news_detail-tbl-3 {
    th,
    td {
      height: 64px;
      padding: 14px 16px;
      border-top: 1px solid var(--cl-bdr);
      border-bottom: 1px solid var(--cl-bdr);
      font-size: 1.6rem;
    }
  }

  .news_detail-tbl-1 {
    th {
      width: 240px;
      text-align: left;
    }

    td {
      width: calc(100% - 240px);
    }
  }

  .news_detail-tbl-2 {
    th {
      width: 180px;
      text-align: left;
    }

    td {
      width: calc((100% - 360px) / 2);
    }
  }

  .news_detail-tbl-3 {
    dl {
      display: flex;
      border-top: 1px solid var(--cl-bdr);

      > div {
        width: 50%;

        &:last-child {
          border-left: 1px solid var(--cl-bdr);
        }
      }

      dt,
      dd {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 64px;
        padding: 14px 16px;
        border-bottom: 1px solid var(--cl-bdr);
        text-align: center;
      }
    }
  }
}

@media (max-width: 768px) {
  .news_detail-note {
    font-size: 1.2rem;
  }

  .news_detail-tbl-1,
  .news_detail-tbl-2,
  .news_detail-tbl-3 {
    th,
    td {
      font-size: 1.6rem;
    }
  }

  .news_detail-tbl-1 {
    th,
    td {
      height: 64px;
      padding: 14px 16px;
      border-top: 1px solid var(--cl-bdr);
      border-bottom: 1px solid var(--cl-bdr);
      text-align: left;
    }

    th {
      width: 120px;
    }

    td {
      width: calc(100% - 120px);
    }
  }

  .news_detail-tbl-2 {
    table,
    tbody {
      display: block;
    }

    table {
      border-top: 1px solid var(--cl-bdr);
    }

    tr {
      display: flex;
      flex-wrap: wrap;
      border-bottom: 1px solid var(--cl-bdr);
    }

    th,
    td {
      display: block;
      min-height: 64px;
      padding: 14px 10px;

      > div {
        display: flex;
        align-items: center;
        width: 100%;
        height: 100%;
        text-align: left;
      }
    }

    th {
      width: 120px;

      &:not(:first-child) {
        border-top: 1px solid var(--cl-bdr);
      }
    }

    td {
      width: calc(100% - 120px);

      &:not(:nth-child(2)) {
        border-top: 1px solid var(--cl-bdr);
      }
    }
  }

  .news_detail-tbl-3 {
    dl {
      border-top: 1px solid var(--cl-bdr);

      dt,
      dd {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 64px;
        padding: 14px 10px;
        border-bottom: 1px solid var(--cl-bdr);
        text-align: center;
      }
    }
  }
}

/*** 採用情報 ***/

.recruit-top_message {
  font-size: 1.6rem;

  p + p {
    margin-top: 1.2em;
  }
}

.recruit-content {
  margin-top: 100px;

  h2 {
    margin-bottom: 64px;
    font-size: 3.2rem;
    font-weight: 700;
  }
}

@media (min-width: 769px) {
  .recruit-content-btn {
    margin-top: 64px;

    .btn {
      justify-content: center;
      width: 500px;
      height: 88px;
      margin: 0 auto;
      padding: 10px 24px;

      .arw {
        right: 24px;
      }
    }
  }
}

@media (max-width: 768px) {
  .recruit-top_message {
    margin-top: -24px;
  }

  .recruit-content {
    margin-top: 80px;

    h2 {
      margin-bottom: 40px;
      font-size: 2.8rem;
    }
  }

  .recruit-content-btn {
    margin-top: 40px;

    .btn {
      justify-content: center;
      height: 72px;
      padding: 10px 24px;

      .arw {
        right: 16px;
      }
    }
  }
}

/* 社長挨拶 */

.service-detail-lead {
  max-width: 1000px;
  margin: 0 auto 60px;
}

.service-detail-lead h3 {
  font-size: 2.8rem;
  font-weight: 700;
  margin-bottom: 40px;
  line-height: 1.5;
}

.service-detail-lead p {
  font-size: 1.6rem;
  line-height: 1.8;
}

.service-detail-lead h4 {
  font-size: 1.8rem;
  font-weight: 700;
  margin-top: 40px;
  margin-bottom: 15px;
}

.message-slogan {
  margin-top: 80px;
  font-family: var(--ff-en);
  font-weight: 900;
  font-size: 6.4rem;
  line-height: 1;
  color: var(--cl-sega-bl);
  margin-bottom: 20px;
}

.message-signature {
  margin-top: 64px;
  text-align: right;
  font-weight: bold;
}

.message-signature .name {
  font-size: 1.8rem;
  margin-bottom: 5px;
}

.message-signature .en {
  font-family: "Work Sans", sans-serif;
  font-size: 1.2rem;
  color: #666;
}

@media (max-width: 768px) {
  .message-slogan {
    margin-top: 40px;
    font-size: 6.4rem;
  }
}

/* 電子公告 */

.ir_block {
  margin-bottom: 60px;
}

.ib01_table {
  width: 100%;
  border-collapse: collapse;
  border-top: 2px solid #0089cf;
}

.ib01_table th,
.ib01_table td {
  padding: 20px;
  border-bottom: 1px solid #e0e0e0;
  vertical-align: top;
  font-size: 1.4rem;
}

.ib01_table th {
  width: 200px;
  background-color: #f5f5f5;
  font-weight: bold;
  color: #333;
  text-align: left;
}

.ib01_pdf {
  display: inline-flex;
  align-items: center;
  color: #0089cf;
  text-decoration: none;
  font-weight: bold;
  margin-bottom: 5px;
}

.ib01_pdf:hover {
  text-decoration: underline;
  opacity: 0.8;
}

.ib01_pdf::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23e53935'%3E%3Cpath d='M20 2H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-8.5 7.5c0 .83-.67 1.5-1.5 1.5H9v2H7.5V7H10c.83 0 1.5.67 1.5 1.5v1zm5 2c0 .83-.67 1.5-1.5 1.5h-2.5V7H15c.83 0 1.5.67 1.5 1.5v3zm4-3H19v1h1.5V11H19v2h-1.5V7h3v1.5zM9 9.5h1v-1H9v1zM4 6H2v14c0 1.1.9 2 2 2h14v-2H4V6zm10 5.5h1v-3h-1v3z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  margin-right: 8px;
}

.ib01_banner {
  display: inline-block;
  margin-bottom: 10px;
}

.ib01_text {
  font-size: 1.2rem;
  color: #666;
}

/* 沿革 */

.outline_block {
  margin-bottom: 60px;
}

.ob01_table {
  width: 100%;
  border-collapse: collapse;
  border-top: 2px solid #0089cf;
  line-height: 1.6;
}

.ob01_table tr {
  border-bottom: 1px solid #e0e0e0;
}

.ob01_table td {
  padding: 20px;
  vertical-align: top;
  font-size: 1.4rem;
}

.ob01_table td:nth-child(1) {
  width: 10%;
  white-space: nowrap;
}

.ob01_table td:nth-child(2) {
  width: 6%;
  white-space: nowrap;
}

.ob01_table td:nth-child(3) {
  width: 84%;
}

@media screen and (max-width: 768px) {
  .ob01_table td {
    display: block;
    width: 100% !important;
    padding: 5px 15px;
    border: none;
  }

  .ob01_table td:nth-child(1) {
    padding-top: 15px;
    font-size: 1.6rem;
  }

  .ob01_table td:nth-child(2) {
    display: inline-block;
    width: auto !important;
    padding-right: 0;
  }

  .ob01_table td:nth-child(3) {
    display: inline-block;
    width: auto !important;
    padding-left: 5px;
    padding-bottom: 15px;
    border-bottom: 1px solid #e0e0e0;
  }
}

/* 個人情報保護方針 */

.privacy-content h3 {
  font-size: 1.8rem;
  font-weight: 700;
  margin-top: 40px;
  margin-bottom: 20px;
  border-left: 4px solid #0082ca;
  padding-left: 10px;
}

.privacy-content p {
  margin-bottom: 20px;
  line-height: 1.8;
}

.privacy-content ul {
  list-style-type: none;
  margin-bottom: 20px;
  padding-left: 20px;
}

.privacy-content li {
  margin-bottom: 10px;
  line-height: 1.8;
  text-indent: -1em;
  padding-left: 1em;
}

.privacy-signature {
  margin-top: 40px;
  text-align: right;
}

.privacy-date {
  margin-top: 40px;
  border-top: 1px solid #ddd;
  padding-top: 20px;
  font-size: 0.9em;
}

.privacy-text-indent {
  padding-left: 1.5em;
}

.privacy-contact-header {
  background: #f5f5f5;
  padding: 10px 20px;
  font-weight: 700;
  border-bottom: 2px solid #0082ca;
  margin-bottom: 0;
}

.company-profile-table {
  dl {
    margin-top: 24px;

    dd {
      margin-top: 8px;
      padding-left: 1em;
    }
  }
}

/*** 海外専用サービス ***/

.en-top-content {
  li {
    overflow: hidden;
  }

  a {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    position: relative;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #ffffff;
    font-family: var(--ff-en);
    transition: color 0.3s;

    &:hover {
      color: rgba(255, 255, 255, 0.7);
      text-decoration: none;
    }
  }

  h2 {
    font-size: 7.2rem;
    font-weight: 900;
    line-height: 0.8;
    letter-spacing: 0;
  }

  .message {
    margin-top: 40px;
    font-size: 1.6rem;
    line-height: 1.2;
    letter-spacing: 0;
  }

  .cover {
    position: absolute;
    top: -80px;
    left: 50%;
    width: calc(100% + 180px);
    height: calc(100% + 140px);
    background-color: var(--cl-sega-bl);
    transform: translate(-50%, 0) rotate(10deg);
    transition: height 1s ease-in-out;

    &.is-load {
      height: 0;
    }
  }

  li:nth-child(1) {
    .cover {
      transition-delay: 0.4s;
    }
  }

  li:nth-child(2) {
    .cover {
      transition-delay: 0.8s;
    }
  }

  li:nth-child(3) {
    .cover {
      transition-delay: 1.2s;
    }
  }
}

@media (min-width: 981px) {
  .en-top-content {
    margin-bottom: -140px;

    ul {
      display: flex;

      li {
        width: calc(100% / 3);

        a {
          width: 100%;
          height: 1024px;
          padding: 120px 40px;
          transition:
            color 0.3s,
            transform 0.5s;

          &:hover {
            transform: scale(1.02);
          }
        }

        &.company a {
          background-image: url(../img/en/company.jpg);
        }

        &.overseas a {
          background-image: url(../img/en/overseas.jpg);
        }

        &.trade a {
          background-image: url(../img/en/trade.jpg);
        }
      }
    }
  }
}

@media (max-width: 1380px) {
  .en-top-content {
    ul {
      li {
        a {
          padding: 120px 24px;
        }
      }
    }

    h2 {
      font-size: 6rem;
    }
  }
}

@media (max-width: 1200px) {
  .en-top-content {
    ul {
      li {
        a {
          padding: 120px 16px;
        }
      }
    }

    h2 {
      font-size: 5.7rem;
    }
  }
}

@media (max-width: 980px) {
  .en-top-content {
    margin-bottom: -120px;

    ul {
      li {
        width: 100%;

        a {
          width: 100%;
          height: 260px;
          padding: 40px 30px;
        }

        &.company a {
          background-image: url(../img/en/sp/company.jpg);
        }

        &.overseas a {
          background-image: url(../img/en/sp/overseas.jpg);
        }

        &.trade a {
          height: 300px;
          padding-bottom: 70px;
          background-image: url(../img/en/sp/trade.jpg);
        }
      }
    }

    h2 {
      font-size: 5.7rem;
      line-height: 0.9;
    }

    .message {
      display: none;
    }
  }
}

/*** xxx ***/

.secondhand-message {
  margin-bottom: 64px;
}

@media (max-width: 768px) {
  .secondhand-message {
    margin-bottom: 40px;
  }
}

/*** お問い合わせ ***/

.tbl-contact {
  .row {
    padding: 24px 0;

    dt {
      display: flex;

      .required {
        color: var(--cl-rd);
        font-size: 1.4rem;
      }

      .desc_ {
        display: none;
      }
    }

    dd {
      .radio-list,
      .checkbox-list {
        display: flex;
        flex-wrap: wrap;
      }
    }
  }
}

.contact-privacy {
  display: flex;
  justify-content: center;
  margin-top: 64px;

  a {
    text-decoration: underline;
  }
}

.error_ {
  margin-top: 8px;
  color: var(--cl-rd);
  font-size: 1.4rem;
}

.contact-complete {
  .message {
    font-size: 1.6rem;
    line-height: 2;
  }

  .back-btn {
    margin-top: 80px;
  }
}

@media (min-width: 769px) {
  .tbl-contact {
    .row {
      padding-right: 40px;

      dt {
        flex-direction: column;

        .required {
          margin-top: 16px;
        }
      }

      dd {
        input[type="text"],
        input[type="email"],
        input[type="tel"],
        input[type="number"],
        input[type="password"] {
          width: 100%;
          max-width: 392px;
        }

        select {
          width: 440px;
        }

        .custname {
          display: flex;
          align-items: center;
          justify-content: space-between;
          gap: 16px;
          max-width: 800px;

          span {
            flex-shrink: 0;
            width: 1em;
          }
        }

        .radio-list,
        .checkbox-list {
          gap: 16px 40px;
        }
      }
    }
  }

  .contact-submit {
    display: flex;
    justify-content: center;
    margin-top: 64px;
    gap: 40px;

    .btn {
      justify-content: center;
      padding: 16px 0;
      width: 500px;
      height: 88px;
      font-size: 2rem;
    }

    input[type="submit"] {
      display: none;
    }

    label[for="s_back"] {
      width: 360px;
    }
  }

  .contact-privacy + .contact-submit {
    margin-top: 40px;
  }
}

@media (max-width: 768px) {
  .tbl-contact {
    .row {
      dt {
        justify-content: space-between;
      }

      dd {
        input[type="text"],
        input[type="email"],
        input[type="tel"],
        input[type="number"],
        input[type="password"],
        select {
          width: 440px;
        }

        .custname {
          display: flex;
          flex-direction: column;
          gap: 10px;
        }

        .radio-list,
        .checkbox-list {
          flex-direction: column;
          align-items: flex-start;
          gap: 10px;
        }
      }
    }
  }

  .contact-privacy {
    margin-top: 40px;
  }

  .contact-submit {
    display: flex;
    flex-direction: column-reverse;
    gap: 16px;
    margin-top: 40px;

    .btn {
      justify-content: center;
      padding: 16px 0;
      width: 100%;
      height: 72px;
      font-size: 1.8rem;
    }

    input[type="submit"] {
      display: none;
    }
  }

  .contact-privacy + .contact-submit {
    margin-top: 16px;
  }

  .contact-complete {
    .back-btn {
      margin-top: 40px;
    }
  }
}

/*** お問い合わせ ***/

.reference-content {
  margin-top: 64px;
}

.reference-content-item {
  & + .reference-content-item {
    margin-top: 64px;
    padding-top: 64px;
    border-top: 1px solid var(--cl-bdr);
  }

  .reference-content-h2 {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 32px;

    a {
      text-decoration: underline;
    }
  }

  h2 {
    font-size: 3.2rem;
    font-weight: 700;
  }

  .reference-desc {
    padding: 0 40px;
  }

  .reference-content-name {
    margin-bottom: 24px;
    font-size: 1.8rem;
    font-weight: 700;
  }

  .reference-content-info {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0 40px;

    .tel {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 64px;
      font-family: var(--ff-en);

      > div {
        display: flex;
        align-items: baseline;

        & + div {
          position: relative;

          &::before {
            content: "/";
            position: absolute;
            left: -36px;
            font-size: 32px;
          }
        }
      }

      dt {
        width: 60px;
        font-size: 20px;
        font-weight: 700;
      }

      dd {
        width: calc(100% - 60px);
        font-size: 30px;
        font-weight: 700;
        letter-spacing: 0;
        white-space: nowrap;
      }
    }

    .hour {
      margin-left: 64px;
    }
  }

  .reference-content-tbl {
    margin-top: 24px;

    table {
      width: 100%;
      border-collapse: collapse;
      border-spacing: 0;
    }

    th,
    td {
      height: 64px;
      padding: 14px 16px;
      border: 1px solid var(--cl-bdr);
    }

    th {
      background-color: var(--cl-lgy2);
      font-weight: 700;
    }

    tbody {
      th {
        text-align: left;
      }
    }

    .tbl-ttl {
      p:not(.tbl-ttl-ttl) {
        padding-left: 1em;
      }
    }

    .tbl-hour {
      .note {
        display: block;
        margin-top: 4px;
        font-size: 13px;
      }
    }
  }

  .reference-content-address {
    address {
      font-size: 18px;
      font-style: normal;
      line-height: 1.8;
    }
  }

  .bg_gy-box {
    & + .bg_gy-box {
      margin-top: 40px;
    }
  }

  .reference-content-btn-note {
    display: flex;
    align-items: center;
    justify-content: space-between;

    .reference-content-btn {
      flex-shrink: 0;
    }
  }

  .reference-content-note {
    margin-top: 32px;
    color: var(--cl-gy);
    font-size: 14px;
  }

  .reference-content-comment {
    margin-top: 32px;

    .note {
      margin-top: 10px;
      color: var(--cl-gy);
      font-size: 14px;

      a {
        color: var(--cl-gy);
        text-decoration: underline;
      }
    }
  }

  .reference-content-gy-inner {
    width: 100%;
    padding: 0 40px;
  }
}

.reference-content-btn {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 24px;
  margin-top: 32px;

  .btn {
    width: 500px;
    height: 88px;
  }
}

.reference-bot-message {
  margin-top: 80px;
  padding-top: 64px;
  border-top: 1px solid var(--cl-bdr);
  font-size: 20px;
  text-align: center;

  a {
    text-decoration: underline;
  }
}

@media (min-width: 769px) {
  .reference-content {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
  }

  .reference-content-item {
    &.item-full {
      width: 100%;
    }

    &.item-half {
      width: calc((100% - 40px) / 2);
    }
  }

  .reference-content-tel {
    .tel {
      display: table;

      > div {
        display: table-row;
      }

      dt {
        display: table-cell;
        font-size: 18px;
        font-weight: 700;
      }

      dd {
        display: table-cell;
        padding-left: 40px;
        font-size: 42px;
        font-family: var(--ff-en);
        font-weight: 700;
        letter-spacing: 0;

        .txt-s {
          font-size: 20px;
        }
      }
    }

    .note {
      margin-top: 10px;
      color: var(--cl-gy);
      font-size: 14px;

      a {
        color: var(--cl-gy);
        text-decoration: underline;
      }
    }
  }
}

@media (max-width: 768px) {
  .reference-content {
    margin: 40px auto 0;
  }

  .reference-content-item {
    & + .reference-content-item {
      margin-top: 40px;
      padding-top: 40px;
    }

    .reference-content-h2 {
      flex-direction: column;
      margin-bottom: 24px;

      .link {
        width: 100%;
        margin-top: 8px;
        text-align: right;
      }
    }

    h2 {
      font-size: 2.8rem;
    }

    .reference-desc,
    .reference-content-info {
      padding: 0;
    }

    .reference-content-info {
      flex-direction: column;
      text-align: center;
    }

    .reference-content-name {
      margin-bottom: 16px;
      font-size: 1.8rem;
    }

    .reference-content-info {
      .tel {
        flex-direction: column;
        gap: 0;

        > div {
          width: 100%;
          max-width: 100%;
          justify-content: center;

          & + div {
            margin-top: 2px;

            &::before {
              content: none;
            }
          }

          dd {
            width: auto;
          }
        }
      }

      .hour {
        margin: 10px 0 0;
        padding-top: 10px;
        font-size: 14px;
      }
    }

    .bg_gy-box {
      & + .bg_gy-box {
        margin-top: 24px;
      }
    }

    .reference-content-gy-inner {
      padding: 0;
    }

    .bg_gy-box {
      .reference-content-tbl {
        margin-top: 16px;
        padding-bottom: 10px;
        font-size: 14px;
        overflow: auto;

        table {
          width: 640px;
          border-collapse: collapse;
          border-spacing: 0;
        }

        th,
        td {
          height: 44px;
          padding: 12px 16px;
        }

        th {
          font-size: 13px;
        }

        .tbl-hour {
          .note {
            font-size: 11px;
          }
        }
      }

      .reference-content-address {
        address {
          font-size: 16px;
        }
      }
    }

    .reference-content-tel {
      .tel {
        > div {
          & + div {
            margin-top: 8px;
          }
        }

        dt {
          font-size: 16px;
          font-weight: 700;
        }

        dd {
          font-size: 40px;
          font-family: var(--ff-en);
          font-weight: 700;
          letter-spacing: 0;
        }
      }

      .note {
        margin-top: 8px;
        color: var(--cl-gy);
        font-size: 12px;

        a {
          color: var(--cl-gy);
          text-decoration: underline;
        }
      }
    }

    .reference-content-btn-note {
      display: flex;
      flex-direction: column;
    }
  }

  .reference-content-btn {
    justify-content: center;
    gap: 16px;
    width: 100%;
    margin-top: 24px;

    li {
      width: 100%;
    }

    .btn {
      width: 100%;
      height: 88px;
    }
  }

  .reference-bot-message {
    margin-top: 64px;
    padding-top: 40px;
    font-size: 18px;
  }
}

/*** サイトマップ ***/

.sitemap-list {
  .ttl-1st,
  .ttl-2nd {
    font-size: 3.2rem;
    font-weight: 700;
  }

  .ttl-2nd {
    font-size: 2.8rem;

    &:not(:first-child) {
      margin-top: 16px;
    }
  }

  .layer-2nd {
    display: flex;
    gap: 60px;
    margin-top: 40px;
    padding-left: 16px;

    .layer-2nd-item {
      width: calc((100% - 120px) / 3);
    }
  }

  .layer-3rd {
    margin-top: 16px;
    padding-left: 16px;

    .layer-3rd-item {
      & + .layer-3rd-item {
        margin-top: 16px;
      }
    }
  }
}

@media (max-width: 768px) {
  .sitemap-list {
    .ttl-1st {
      font-size: 2.8rem;
    }

    .ttl-2nd {
      font-size: 2.4rem;
    }

    .layer-2nd {
      flex-direction: column;
      gap: 24px;
      margin-top: 24px;

      .layer-2nd-item {
        width: 100%;
      }
    }
  }
}

/*** xxx ***/

@media (min-width: 769px) {
}

@media (max-width: 768px) {
}

@media (min-width: 769px) {
}

@media (max-width: 768px) {
}

/*** マージン ***/

@media (min-width: 769px) {
  .mt-10 {
    margin-top: 10px !important;
  }
  .mt-16 {
    margin-top: 16px !important;
  }
  .mt-20 {
    margin-top: 20px !important;
  }
  .mt-24 {
    margin-top: 24px !important;
  }
  .mt-32 {
    margin-top: 32px !important;
  }
  .mt-40 {
    margin-top: 40px !important;
  }
  .mt-48 {
    margin-top: 48px !important;
  }
  .mt-64 {
    margin-top: 64px !important;
  }
  .mt-80 {
    margin-top: 80px !important;
  }
  .mt-100 {
    margin-top: 100px !important;
  }
  .mt-120 {
    margin-top: 120px !important;
  }
  .mt-140 {
    margin-top: 140px !important;
  }
}

@media (max-width: 768px) {
  .mts-10 {
    margin-top: 10px !important;
  }
  .mts-16 {
    margin-top: 16px !important;
  }
  .mts-20 {
    margin-top: 20px !important;
  }
  .mts-24 {
    margin-top: 24px !important;
  }
  .mts-32 {
    margin-top: 32px !important;
  }
  .mts-40 {
    margin-top: 40px !important;
  }
  .mts-48 {
    margin-top: 48px !important;
  }
  .mts-64 {
    margin-top: 64px !important;
  }
  .mts-80 {
    margin-top: 80px !important;
  }
  .mts-100 {
    margin-top: 100px !important;
  }
  .mts-120 {
    margin-top: 120px !important;
  }
  .mts-140 {
    margin-top: 140px !important;
  }
}

.fadeIn,
.lower-h1 h1 {
  opacity: 0;

  &.animated {
    animation: fadeIn 0.3s linear 0.5s both;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}
