@charset "UTF-8";
/* CSS Document */
.spmask {
  display: inline-block;
}

.spmask-inline {
  display: inline;
}

.sponly {
  display: none;
}

@media (max-width: 767px) {
  .spmask {
    display: none;
  }
  .spmask-inline {
    display: none;
  }
  .sponly {
    display: block;
  }
}
/*------------------------------*/
/*------------------------------*/
.top_mv {
  height: 100dvh;
  width: 100%;
  position: fixed;
  overflow: clip;
}
.top_mv .top-copy {
  position: absolute;
  z-index: 3;
  width: 32.5vw;
  left: 3.75vw;
  top: 50%;
  translate: 0 -50%;
  filter: drop-shadow(0 0 0.625vw rgba(0, 0, 0, 0.2509803922));
}
@media screen and (max-width: 767px) {
  .top_mv .top-copy {
    width: 72vw;
    top: auto;
    bottom: 3rem;
    translate: 0 0;
  }
}
.top_mv .mv-person,
.top_mv .mv-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .top_mv .mv-person,
.top_mv .mv-bg {
    width: calc(100% + 20vw);
    translate: -20vw 0;
  }
}
.top_mv .mv-person #lottie,
.top_mv .mv-bg #lottie {
  position: absolute;
  z-index: 3;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  aspect-ratio: 1600/900;
}
.top_mv .mv-person #lottie .lottie-track,
.top_mv .mv-bg #lottie .lottie-track {
  display: flex;
  width: 100%;
  height: 100%;
  will-change: transform;
}
.top_mv .mv-person #lottie .lottie-panel,
.top_mv .mv-bg #lottie .lottie-panel {
  position: relative;
  flex: 0 0 100%;
  width: 100%;
  height: 100%;
  will-change: transform;
}
.top_mv .mv-person .track,
.top_mv .mv-bg .track {
  position: absolute;
  inset: 0;
  display: flex;
  width: 100%;
  height: 100%;
  will-change: transform;
}
.top_mv .mv-person .track .track-wrap,
.top_mv .mv-bg .track .track-wrap {
  position: relative;
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.top_mv .mv-person .track .track-wrap picture,
.top_mv .mv-bg .track .track-wrap picture {
  width: 100%;
  height: 100%;
}
.top_mv .mv-person .track img,
.top_mv .mv-bg .track img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  flex: 0 0 100%;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  pointer-events: none;
}
.top_mv .mv-person {
  z-index: 2;
}
.top_mv canvas {
  z-index: 1;
}
.top_mv .mv-bg {
  z-index: 0;
}

.top_message {
  position: relative;
}
.top_message #ribbon-top-message {
  height: 100dvh;
  width: 100%;
  position: relative;
}
.top_message .message-wrap {
  position: relative;
  min-height: 200dvh;
}
.top_message .message-wrap #bg-top-message {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
}
.top_message .message-wrap .message-container {
  display: grid;
  place-content: center;
  position: -webkit-sticky;
  position: sticky;
  padding-block: 6rem 8rem;
  min-height: 100dvh;
  z-index: 3;
  top: 0;
}
@media screen and (max-width: 767px) {
  .top_message .message-wrap .message-container {
    padding-block: 3rem 4rem;
  }
}
.top_message .message-wrap .message-container .message-bg-wrapper {
  position: absolute;
  bottom: 0;
  display: flex;
  width: 100%;
  overflow: hidden;
}
.top_message .message-wrap .message-container .message-bg-wrapper .loop_text {
  flex: 0 0 auto;
  white-space: nowrap;
  font-size: 8vw;
  line-height: 0.75;
  font-weight: 700;
  overflow: hidden;
  color: #fff;
  opacity: 0.3;
}
.top_message .message-wrap .message-container .message-bg-wrapper .loop_text:nth-child(1) {
  -webkit-animation: loop 60s -30s linear infinite;
          animation: loop 60s -30s linear infinite;
}
.top_message .message-wrap .message-container .message-bg-wrapper .loop_text:nth-child(2) {
  -webkit-animation: loop2 60s linear infinite;
          animation: loop2 60s linear infinite;
}
@media screen and (max-width: 767px) {
  .top_message .message-wrap .message-container .message-bg-wrapper .loop_text {
    font-size: 20.5128205128vw;
  }
}
@-webkit-keyframes loop {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes loop {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}
@-webkit-keyframes loop2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}
@keyframes loop2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}
.top_message .message-wrap .message-container .inner {
  max-width: 78rem;
}
@media screen and (max-width: 767px) {
  .top_message .message-wrap .message-container .inner {
    padding-inline: 2rem;
  }
}
.top_message .message-wrap .message-container .inner p {
  color: transparent;
  font-family: "Zen Kaku Gothic New";
  font-size: max(1.8rem, 16px);
  font-weight: 500;
  line-height: 2.2;
  opacity: 0;
  transition: opacity 0.5s var(--delay);
}
@media screen and (max-height: 600px) {
  .top_message .message-wrap .message-container .inner p {
    font-size: 2.6666666667vh;
  }
}
@media screen and (max-width: 767px) {
  .top_message .message-wrap .message-container .inner p {
    font-size: 1.3rem;
  }
}
.top_message .message-wrap .message-container .inner p:nth-child(1) {
  --delay: 0ms;
}
.top_message .message-wrap .message-container .inner p:nth-child(2) {
  --delay: 600ms;
}
.top_message .message-wrap .message-container .inner p:nth-child(3) {
  --delay: 1200ms;
}
.top_message .message-wrap .message-container .inner p:nth-child(4) {
  --delay: 1800ms;
}
.top_message .message-wrap .message-container .inner p + p {
  margin-top: 1lh;
}
.top_message .message-wrap .message-container .inner p span {
  display: inline-block;
  background-image: linear-gradient(to right, #ffffff 0% var(--percentage), rgba(255, 255, 255, 0.3764705882) var(--percentage) 100%);
  -webkit-background-clip: text;
          background-clip: text;
}
.top_message .message-wrap .message-container .inner p span:nth-of-type(1) {
  --span-delay: 0ms;
}
.top_message .message-wrap .message-container .inner p span:nth-of-type(2) {
  --span-delay: 150ms;
}
.top_message .message-wrap .message-container .inner p span:nth-of-type(3) {
  --span-delay: 300ms;
}
.top_message .message-wrap .message-container.inview p {
  opacity: 1;
}
.top_message .message-wrap .message-container.inview p span {
  -webkit-animation: percentageTo 1.6s cubic-bezier(0.5, 0.5, 0, 1) calc(var(--delay) + var(--span-delay)) both;
          animation: percentageTo 1.6s cubic-bezier(0.5, 0.5, 0, 1) calc(var(--delay) + var(--span-delay)) both;
}

@property --percentage {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 0%;
}
@-webkit-keyframes percentageTo {
  0% {
    --percentage: 0%;
  }
  100% {
    --percentage: 100%;
  }
}
@keyframes percentageTo {
  0% {
    --percentage: 0%;
  }
  100% {
    --percentage: 100%;
  }
}
.top-bg-gray {
  position: relative;
  z-index: 1;
  background-color: #ececec;
  padding-block: 12rem 15rem;
}
@media screen and (max-width: 767px) {
  .top-bg-gray {
    padding-block: 5rem;
  }
}
.top-bg-gray .section-hd {
  display: flex;
  -moz-column-gap: 7rem;
       column-gap: 7rem;
}
@media screen and (max-width: 767px) {
  .top-bg-gray .section-hd {
    flex-direction: column;
  }
}
.top-bg-gray .section-hd .hd-wrap p.ja {
  font-size: 1.4rem;
  font-weight: 500;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .top-bg-gray .section-hd .hd-wrap p.ja {
    font-size: 1rem;
  }
}
.top-bg-gray .section-hd .hd-wrap p.ja::before {
  content: "■";
  font-size: 0.8em;
  margin-right: 0.3rem;
  display: inline-block;
}
.top-bg-gray .section-hd .hd-wrap p.en {
  font-size: 10rem;
  font-weight: 700;
  letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
  .top-bg-gray .section-hd .hd-wrap p.en {
    font-size: 5rem;
  }
}
.top-bg-gray .section-hd .hd-wrap p.en::first-letter {
  color: var(--main);
}
.top-bg-gray .section-hd p.readText {
  margin-block: 2.5rem 1rem;
  display: flex;
  align-items: flex-end;
}
@media screen and (max-width: 767px) {
  .top-bg-gray .section-hd p.readText {
    margin-top: 1.5rem;
    margin-bottom: 0;
  }
}
.top-bg-gray .image {
  overflow: hidden;
}
.top-bg-gray .image img {
  transition: 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.top-bg-gray .btn {
  color: #fff;
  font-size: 1.4rem;
  background-color: #252525;
  padding-inline: 2rem 1.6rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 5.4rem;
  border: #252525 0.1rem solid;
  transition: 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.top-bg-gray .btn::after {
  content: "▶︎";
  font-size: 0.8em;
  transition: 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
@media screen and (max-width: 767px) {
  .top-bg-gray .btn {
    font-size: 1rem;
    padding: 1.6rem 1rem;
    height: 3.6rem;
  }
}
@media (any-hover: hover) {
  .top-bg-gray a:hover .btn {
    color: #252525;
    background-color: #fff;
  }
  .top-bg-gray a:hover .image img {
    scale: 1.03;
  }
}

.top-about {
  position: relative;
  z-index: 1;
}
.top-about .message-link {
  display: block;
  margin-top: 5rem;
  position: relative;
  background-color: var(--main);
  padding-top: 4rem;
}
@media screen and (max-width: 767px) {
  .top-about .message-link {
    margin-top: 3rem;
    padding: 0 0 2rem 2rem;
  }
}
.top-about .message-link .image {
  width: 66.8181818182%;
  margin-inline: auto 0;
}
@media screen and (max-width: 767px) {
  .top-about .message-link .image {
    width: 100%;
  }
}
.top-about .message-link .title {
  position: absolute;
  z-index: 1;
  left: 3.5rem;
  top: 4rem;
}
@media screen and (max-width: 767px) {
  .top-about .message-link .title {
    position: static;
    margin-top: 2rem;
  }
}
.top-about .message-link .title p.ja {
  font-size: 1.4rem;
  display: inline-block;
  background-color: #252525;
  padding: 1rem 2rem;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .top-about .message-link .title p.ja {
    font-size: 1rem;
    padding: 0.6rem 0.8rem;
  }
}
.top-about .message-link .title p.ja::before {
  content: "■";
  font-size: 0.8em;
  display: inline-block;
  margin-right: 0.3rem;
}
.top-about .message-link .title p.en {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.top-about .message-link .title p.en span {
  display: inline-block;
  font-size: 7rem;
  font-weight: 700;
  padding: 1.8rem 2rem;
  line-height: 0.8;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .top-about .message-link .title p.en span {
    font-size: 4rem;
    padding: 0.8rem 1rem;
  }
}
.top-about .message-link .title p.en span:first-of-type {
  padding-bottom: 0;
}
.top-about .message-link .title p.en span + span {
  margin-top: -1px;
}
.top-about .message-link p.readText {
  position: absolute;
  z-index: 1;
  bottom: 3.5rem;
  left: 3.5rem;
  color: #fff;
  width: calc(33.1818181818% - 7rem);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4; /* 4行まで表示、それ以上は... */
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .top-about .message-link p.readText {
    position: static;
    width: calc(100% - 2rem);
    margin-top: 2rem;
  }
}
.top-about .message-link .btn {
  position: absolute;
  z-index: 1;
  bottom: 0;
  right: 0;
  width: 20rem;
}
@media screen and (max-width: 767px) {
  .top-about .message-link .btn {
    position: static;
    margin-inline: auto 2rem;
    width: 16rem;
    margin-top: 2rem;
  }
}
.top-about .about-wrap {
  margin-top: 5rem;
  display: grid;
  -moz-column-gap: 5rem;
       column-gap: 5rem;
  grid-template-columns: 1fr 1fr;
}
@media screen and (max-width: 767px) {
  .top-about .about-wrap {
    grid-template-columns: 1fr;
    row-gap: 3rem;
    margin-top: 3rem;
  }
}
.top-about .about-wrap a {
  position: relative;
  display: block;
}
.top-about .about-wrap a .title {
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
}
.top-about .about-wrap a .title p.ja {
  font-size: 1.4rem;
  display: inline-block;
  background-color: #ececec;
  padding: 1rem 2rem;
}
@media screen and (max-width: 767px) {
  .top-about .about-wrap a .title p.ja {
    padding: 0.6rem 0.8rem;
    font-size: 1rem;
  }
}
.top-about .about-wrap a .title p.ja::before {
  content: "■";
  font-size: 0.8em;
  display: inline-block;
  margin-right: 0.3rem;
}
.top-about .about-wrap a .title p.en {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.top-about .about-wrap a .title p.en span {
  display: inline-block;
  font-size: 4.4rem;
  font-weight: 700;
  padding: 1.3rem 1.5rem;
  line-height: 0.8;
  background-color: var(--main);
}
@media screen and (max-width: 767px) {
  .top-about .about-wrap a .title p.en span {
    font-size: 3.2rem;
    padding: 0.8rem 1rem;
  }
}
.top-about .about-wrap a .title p.en span:nth-of-type(2) {
  padding-top: 0;
}
.top-about .about-wrap a .title p.en span + span {
  margin-top: -1px;
}
.top-about .about-wrap a .btn {
  position: absolute;
  z-index: 1;
  bottom: 0;
  right: 0;
  width: 20rem;
}
@media screen and (max-width: 767px) {
  .top-about .about-wrap a .btn {
    width: 16rem;
  }
}

.top-work {
  margin-top: 14rem;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .top-work {
    margin-top: 6rem;
  }
}
.top-work .voice-link {
  display: block;
  margin-top: 5rem;
  position: relative;
  background-color: var(--main);
  padding-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .top-work .voice-link {
    margin-top: 3rem;
    padding: 0 0 2rem 2rem;
  }
}
.top-work .voice-link .image {
  width: 66.8181818182%;
  margin-inline: 0 auto;
}
@media screen and (max-width: 767px) {
  .top-work .voice-link .image {
    width: 100%;
  }
}
.top-work .voice-link .title {
  position: absolute;
  z-index: 1;
  right: 3.5rem;
  top: 4rem;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
@media screen and (max-width: 767px) {
  .top-work .voice-link .title {
    position: static;
    margin-top: 2rem;
    padding-right: 2rem;
    align-items: flex-start;
  }
}
.top-work .voice-link .title p.ja {
  font-size: 1.4rem;
  display: inline-block;
  background-color: #252525;
  padding: 1rem 2rem;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .top-work .voice-link .title p.ja {
    font-size: 1rem;
    padding: 0.6rem 0.8rem;
  }
}
.top-work .voice-link .title p.ja::before {
  content: "■";
  font-size: 0.8em;
  display: inline-block;
  margin-right: 0.3rem;
}
.top-work .voice-link .title p.en {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
@media screen and (max-width: 767px) {
  .top-work .voice-link .title p.en {
    align-items: flex-start;
  }
}
.top-work .voice-link .title p.en span {
  display: inline-block;
  font-size: 7rem;
  font-weight: 700;
  padding: 1.8rem 2rem;
  line-height: 0.8;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .top-work .voice-link .title p.en span {
    font-size: 4rem;
    padding: 0.8rem 1rem;
  }
}
.top-work .voice-link .title p.en span:last-of-type {
  padding-top: 0;
}
.top-work .voice-link .title p.en span + span {
  margin-top: -1px;
}
.top-work .voice-link .text-wrap {
  position: absolute;
  z-index: 1;
  bottom: 4rem;
  right: 3.5rem;
  width: calc(33.1818181818% - 7rem);
}
@media screen and (max-width: 767px) {
  .top-work .voice-link .text-wrap {
    position: static;
    padding-right: 2rem;
    width: 100%;
    margin-top: 2rem;
  }
}
.top-work .voice-link .text-wrap p.readText {
  color: #fff;
}
.top-work .voice-link .text-wrap .btn {
  width: 100%;
  margin-top: 3.5rem;
}
@media screen and (max-width: 767px) {
  .top-work .voice-link .text-wrap .btn {
    width: 16rem;
    margin-top: 2rem;
    margin-inline: auto 0;
  }
}

.top-interview {
  background-color: #fff;
  z-index: 1;
  position: relative;
  width: 100%;
  margin-inline: auto;
  padding-bottom: 14rem;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .top-interview {
    padding-bottom: 6rem;
    display: block;
  }
}
.top-interview .top-section-item-hd {
  width: 31.6176470588%;
  height: 100%;
  position: -webkit-sticky;
  position: sticky;
  z-index: 1;
  height: 100lvh;
  padding-left: 11rem;
}
@media screen and (max-width: 767px) {
  .top-interview .top-section-item-hd {
    position: relative;
    padding-left: 0;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    width: 100%;
  }
}
.top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-hd-wrap {
  top: 0;
  padding-top: 14rem;
}
@media screen and (max-width: 767px) {
  .top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-hd-wrap {
    padding-top: 6rem;
  }
}
.top-interview .top-section-item-hd {
  height: 100%;
  inset: 0;
}
.top-interview .top-section-item-hd .top-section-hd-inner {
  position: -webkit-sticky;
  position: sticky;
  left: 0;
  top: 0;
}
@media screen and (max-width: 767px) {
  .top-interview .top-section-item-hd .top-section-hd-inner {
    position: relative;
    padding-inline: 2rem;
    max-width: calc(1100px + 4rem);
    margin-inline: auto;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .top-interview .top-section-item-hd .top-section-hd-inner {
    width: 100%;
  }
}
.top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-hd-ja {
  font-size: 1.4rem;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-hd-ja {
    font-size: 1rem;
    white-space: nowrap;
  }
}
.top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-hd-ja::before {
  content: "■";
  width: 1rem;
  margin-right: 0.6rem;
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  .top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-hd-ja::before {
    margin-right: 0.4rem;
    font-size: 1rem;
  }
}
.top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-hd-en {
  font-size: min(8rem, 5vw);
  font-weight: 700;
  margin-block: 1rem 3rem;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-hd-en {
    font-size: 4rem;
    margin-block: 0.8rem 1rem;
  }
}
.top-interview .top-section-item-hd .top-section-hd-inner .readText {
  width: min(43rem, 26.875vw);
}
@media screen and (max-width: 767px) {
  .top-interview .top-section-item-hd .top-section-hd-inner .readText {
    width: 100%;
  }
}
.top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-link {
  width: min(28rem, 17.5vw);
  margin-top: 4.5rem;
  display: block;
}
@media (any-hover: hover) {
  .top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-link:hover .top-section-item-btn {
    background-color: #fff;
    border: solid var(--black) 0.1rem;
  }
  .top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-link:hover .top-section-item-btn .top-section-item-btn-text {
    color: var(--black);
  }
  .top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-link:hover .top-section-item-btn .top-section-item-btn-jump {
    color: var(--black);
  }
}
@media screen and (max-width: 767px) {
  .top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-link {
    margin-block: 2rem 0;
    margin-inline: auto 0;
    width: 16rem;
  }
}
.top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-link .top-section-item-btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: var(--black);
  padding-inline: 2rem;
  transition: 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
  border: solid var(--black) 0.1rem;
  height: 5.4rem;
}
@media screen and (max-width: 767px) {
  .top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-link .top-section-item-btn {
    margin-top: 0;
    padding-inline: 1.6rem 1rem;
    width: 100%;
    height: 3.6rem;
  }
}
.top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-link .top-section-item-btn .top-section-item-btn-text {
  color: #fff;
  text-align: center;
  font-size: 1.4rem;
  transition: 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
@media screen and (max-width: 767px) {
  .top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-link .top-section-item-btn .top-section-item-btn-text {
    font-size: 1rem;
  }
}
.top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-link .top-section-item-btn .top-section-item-btn-jump {
  transform: scaleX(0.9) rotate(270deg);
  transition: 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
  color: #fff;
}
.top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-link .top-section-item-btn .top-section-item-btn-jump::after {
  content: "▼";
  color: currentColor;
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  .top-interview .top-section-item-hd .top-section-hd-inner .top-section-item-link .top-section-item-btn .top-section-item-btn-jump::after {
    font-size: 1rem;
  }
}
.top-interview .top-split-item-wrap {
  padding-top: 14rem;
  width: 57.3529411765%;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .top-interview .top-split-item-wrap {
    padding-top: 4rem;
    width: 100%;
  }
}
.top-interview .top-split-item-wrap .top-split_inner {
  padding-right: 11rem;
  margin-left: auto;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .top-interview .top-split-item-wrap .top-split_inner {
    padding-inline: 2rem;
    max-width: calc(1100px + 4rem);
    margin-inline: auto;
  }
}
.top-interview .top-split-item-wrap .top-split_inner .top-split-item-link {
  position: relative;
  width: 100%;
  height: 100%;
}
@media (any-hover: hover) {
  .top-interview .top-split-item-wrap .top-split_inner .top-split-item-link:hover .top-split-item-img img {
    transform: scale(1.05);
  }
  .top-interview .top-split-item-wrap .top-split_inner .top-split-item-link:hover .top-split-item-img .top-split-item-btn::after {
    color: var(--black);
    background-color: #fff;
    border: solid var(--black) 0.1rem;
  }
}
.top-interview .top-split-item-wrap .top-split_inner .top-split-item-link .top-split-item-img {
  width: 100%;
  position: relative;
  overflow: hidden;
}
.top-interview .top-split-item-wrap .top-split_inner .top-split-item-link .top-split-item-img img {
  transition: 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.top-interview .top-split-item-wrap .top-split_inner .top-split-item-link .top-split-item-img .top-split-item-btn {
  position: absolute;
  right: 2rem;
  bottom: 0;
  background-color: var(--black);
  border: solid var(--black) 0.1rem;
}
@media screen and (max-width: 767px) {
  .top-interview .top-split-item-wrap .top-split_inner .top-split-item-link .top-split-item-img .top-split-item-btn {
    right: 1rem;
    bottom: 1rem;
  }
}
.top-interview .top-split-item-wrap .top-split_inner .top-split-item-link .top-split-item-img .top-split-item-btn::after {
  content: "▼";
  color: #fff;
  background-color: var(--black);
  position: absolute;
  right: 2rem;
  bottom: 2rem;
  transform: rotate(-90deg);
  aspect-ratio: 55/60;
  width: 5.5rem;
  display: grid;
  place-content: center;
  font-size: 1.4rem;
  transition: 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
@media screen and (max-width: 767px) {
  .top-interview .top-split-item-wrap .top-split_inner .top-split-item-link .top-split-item-img .top-split-item-btn::after {
    width: 3rem;
    right: 0;
    bottom: 0;
    font-size: 1rem;
  }
}
.top-interview .top-split-item-wrap .top-split_inner .top-split-item-link .top-split-item-text {
  position: absolute;
  z-index: 100;
  top: 50%;
  left: 4.3rem;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .top-interview .top-split-item-wrap .top-split_inner .top-split-item-link .top-split-item-text {
    left: 1rem;
    display: flex;
    flex-direction: column;
  }
}
.top-interview .top-split-item-wrap .top-split_inner .top-split-item-link .top-split-item-text .top-split-item-text-red {
  font-size: 2.1rem;
  font-weight: 600;
  color: #fff;
  background-color: var(--main);
  padding: 0.8rem 1.3rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: min(1.5rem, 0.9375vw);
}
@media screen and (max-width: 767px) {
  .top-interview .top-split-item-wrap .top-split_inner .top-split-item-link .top-split-item-text .top-split-item-text-red {
    font-size: 1rem;
    padding: 0.4rem 0.6rem;
    margin-bottom: 0.5rem;
  }
}
.top-interview .top-split-item-wrap .top-split_inner .top-split-item-link .top-split-item-text .top-split-item-text-white {
  font-size: min(3.5rem, 2.1875vw);
  font-weight: 900;
  line-height: 1.6;
  color: var(--black);
  font-family: "Zen Kaku Gothic New";
  font-feature-settings: "palt";
  letter-spacing: 0.03em;
  padding: min(0.3rem, 0.1875vw) min(1.5rem, 0.9375vw);
  background-color: #fff;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: block;
}
.top-interview .top-split-item-wrap .top-split_inner .top-split-item-link .top-split-item-text .top-split-item-text-white + .top-split-item-text-white {
  margin-top: -0.5px;
}
@media screen and (max-width: 767px) {
  .top-interview .top-split-item-wrap .top-split_inner .top-split-item-link .top-split-item-text .top-split-item-text-white {
    font-size: 1.6rem;
    padding: 0.1rem 0.3rem 0.1rem 0.5rem;
  }
}
.top-interview .top-split-item-wrap .top-split_inner .top-split-item-link .top-split-item-text .top-split-item-text-profile {
  font-size: 1.4rem;
  font-weight: 600;
  background-color: #fff;
  color: var(--black);
  margin-top: min(2rem, 1.25vw);
  padding: 0.5rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .top-interview .top-split-item-wrap .top-split_inner .top-split-item-link .top-split-item-text .top-split-item-text-profile {
    font-size: 1rem;
    margin-top: 0.5rem;
  }
}
.top-interview .top-split-item-wrap .top-split_inner .top-split-item-link .top-split-item-text .top-split-item-text-profile span {
  color: var(--main);
  margin-right: 0.6rem;
}
@media screen and (max-width: 767px) {
  .top-interview .top-split-item-wrap .top-split_inner .top-split-item-link .top-split-item-text .top-split-item-text-profile span {
    margin-right: 0.4rem;
  }
}

/*------------------------------*/
/*------------------------------*/
.message_mv {
  display: grid;
  place-content: center;
  min-height: 500px;
  max-height: 700px;
  padding-block: 18rem 10rem;
}
@media screen and (max-width: 767px) {
  .message_mv {
    min-height: auto;
    max-height: none;
    height: auto;
    padding-block: 10rem 4rem;
  }
}
.message_mv > .inner {
  position: relative;
  z-index: 1;
}
.message_mv .message_mv_en {
  font-size: min(2.8rem, 1.75vw);
  font-weight: 700;
  color: var(--main);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .message_mv .message_mv_en {
    font-size: 1.5rem;
  }
}
.message_mv .message_mv_copy {
  font-family: "Zen Kaku Gothic New";
  margin-top: min(3rem, 1.875vw);
  font-size: min(5.8rem, 3.625vw);
  font-weight: 900;
  line-height: 1.5;
  text-align: center;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .message_mv .message_mv_copy {
    font-size: 2.5rem;
    margin-top: 1.5rem;
    white-space: wrap;
  }
}
.message_mv .message_mv_profile-wrap {
  margin-top: 8rem;
}
@media screen and (max-width: 767px) {
  .message_mv .message_mv_profile-wrap {
    margin-top: 3rem;
  }
}
.message_mv .message_mv_profile-wrap .message_mv_profile {
  font-size: 1.4rem;
  line-height: 2.3;
  font-weight: 500;
  text-align: center;
  color: var(--black);
}
@media screen and (max-width: 767px) {
  .message_mv .message_mv_profile-wrap .message_mv_profile {
    font-size: 1.1rem;
    line-height: 1.8;
  }
}
.message_mv .message_mv_profile-wrap .message_mv_name_ja {
  font-size: 2.1rem;
  line-height: 1.6;
  font-weight: 500;
  text-align: center;
  color: var(--black);
}
@media screen and (max-width: 767px) {
  .message_mv .message_mv_profile-wrap .message_mv_name_ja {
    font-size: 1.8rem;
  }
}
.message_mv .message_mv_profile-wrap .message_mv_name_en {
  font-size: 1.4rem;
  line-height: 2;
  font-weight: 500;
  text-align: center;
  color: var(--black);
  letter-spacing: 0.15em;
}
@media screen and (max-width: 767px) {
  .message_mv .message_mv_profile-wrap .message_mv_name_en {
    font-size: 1rem;
    line-height: 1.4;
  }
}
.message_mv .message_mv_profile-wrap .message_mv_name_en span {
  display: inline-block;
}
.message_mv .message_mv_profile-wrap .message_mv_name_en span::first-letter {
  color: var(--main);
  font-weight: 700;
}

.message_main {
  padding-block: 0 10rem;
  overflow-x: clip;
}
@media screen and (max-width: 767px) {
  .message_main {
    padding-block: 0 6rem;
  }
}
.message_main canvas {
  z-index: 1;
}
.message_main > .inner {
  position: relative;
  z-index: 2;
}
.message_main .bg-wrap {
  position: relative;
}
.message_main .bg-wrap .bg {
  --topBlank: min(calc((100vw - 4rem) * (550 / 1100) / 2), calc(1100px * (550 / 1100) / 2));
  --bottomBlank: min(calc((100vw - 2rem) * (500 / 1350) / 2),calc((1100px + ((100vw - 1100px) / 2) ) * (500 / 1350) / 2));
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: linear-gradient(to bottom, transparent 0% var(--topBlank), #ececec var(--topBlank) calc(100% - var(--bottomBlank)), transparent calc(100% - var(--bottomBlank)) 100%);
}
.message_main .bg-wrap > .inner {
  position: relative;
  z-index: 2;
}
.message_main .text-wrap {
  display: flex;
  justify-content: space-between;
  margin-top: 8rem;
}
@media screen and (max-width: 767px) {
  .message_main .text-wrap {
    flex-direction: column;
    margin-top: 3.5rem;
  }
}
.message_main .text-wrap.row-reverse {
  flex-direction: row-reverse;
}
@media screen and (max-width: 767px) {
  .message_main .text-wrap.row-reverse {
    flex-direction: column;
  }
}
.message_main .text-wrap.row-reverse .copy {
  text-align: right;
}
@media screen and (max-width: 767px) {
  .message_main .text-wrap.row-reverse .copy {
    text-align: left;
  }
}
.message_main .text-wrap .copy {
  font-size: 3.1rem;
  font-family: "Zen Kaku Gothic New";
  font-weight: 700;
  line-height: 1.85;
  letter-spacing: -0.02em;
  white-space: nowrap;
  margin-top: calc((1em - 1lh) / 2);
}
@media screen and (max-width: 767px) {
  .message_main .text-wrap .copy {
    font-size: 2.1rem;
    line-height: 1.4;
  }
}
.message_main .text-wrap .readText {
  margin-top: calc((1em - 1lh) / 2);
  width: 50%;
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .message_main .text-wrap .readText {
    width: 100%;
    margin-top: 2.5rem;
  }
}
.message_main .image {
  margin-top: 10rem;
}
@media screen and (max-width: 767px) {
  .message_main .image {
    margin-top: 4rem;
  }
}
.message_main .image.left {
  margin-left: calc(50% - 50vw);
}
.message_main .image.right {
  margin-right: calc(50% - 50vw);
}

/*------------------------------*/
/*------------------------------*/
.interview_index_mv {
  margin-top: 9rem;
  height: 40rem;
  display: grid;
  place-content: center;
  position: relative;
}
@media screen and (max-width: 767px) {
  .interview_index_mv {
    margin-top: 7rem;
    height: 16rem;
  }
}
.interview_index_mv canvas {
  height: 250%;
}
.interview_index_mv > .inner {
  position: relative;
  z-index: 1;
}
.interview_index_mv .interview_index_title-wrap p {
  font-size: 4.8rem;
  font-weight: 700;
  color: var(--main);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .interview_index_mv .interview_index_title-wrap p {
    font-size: 2.8rem;
  }
}
.interview_index_mv .interview_index_title-wrap h2 {
  margin-top: 1.5rem;
  font-size: 1.6rem;
  font-family: "Zen Kaku Gothic New";
  font-weight: 900;
  color: var(--black);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .interview_index_mv .interview_index_title-wrap h2 {
    font-size: 1.2rem;
    margin-top: 0.8rem;
  }
}

.interview_index-list {
  margin-bottom: 10rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .interview_index-list {
    margin-bottom: 6rem;
  }
}
.interview_index-list > .inner {
  position: relative;
  z-index: 1;
}
.interview_index-list .interview_index_grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 6rem;
}
@media screen and (max-width: 767px) {
  .interview_index-list .interview_index_grid {
    grid-template-columns: repeat(1, 1fr);
    gap: 4rem;
  }
}
.interview_index-list .interview_index_grid .interview_index_item .interview_index-wrap {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media (any-hover: hover) {
  .interview_index-list .interview_index_grid .interview_index_item .interview_index-wrap:hover .interview_index_img-wrap img {
    scale: 1.05;
  }
  .interview_index-list .interview_index_grid .interview_index_item .interview_index-wrap:hover .interview_index_img-wrap .jump {
    background-color: #fff;
    border: solid var(--black) 0.1rem;
  }
  .interview_index-list .interview_index_grid .interview_index_item .interview_index-wrap:hover .interview_index_img-wrap .jump::after {
    color: var(--black);
  }
}
.interview_index-list .interview_index_grid .interview_index_item .interview_index-wrap .interview_index_img-wrap {
  position: relative;
  overflow: hidden;
}
.interview_index-list .interview_index_grid .interview_index_item .interview_index-wrap .interview_index_img-wrap img {
  transition: 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.interview_index-list .interview_index_grid .interview_index_item .interview_index-wrap .interview_index_img-wrap .jump {
  position: absolute;
  bottom: 0;
  right: 0;
  place-content: center;
  background-color: var(--black);
  place-content: center;
  width: 6rem;
  aspect-ratio: 60/54;
  display: grid;
  place-content: center;
  transition: 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
  border: solid var(--black) 0.1rem;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .interview_index-list .interview_index_grid .interview_index_item .interview_index-wrap .interview_index_img-wrap .jump {
    width: 4rem;
  }
}
.interview_index-list .interview_index_grid .interview_index_item .interview_index-wrap .interview_index_img-wrap .jump::after {
  content: "▶︎";
  color: currentColor;
  transform: scaleX(0.9);
}
@media screen and (max-width: 767px) {
  .interview_index-list .interview_index_grid .interview_index_item .interview_index-wrap .interview_index_img-wrap .jump::after {
    font-size: 1.1rem;
  }
}
.interview_index-list .interview_index_grid .interview_index_item .interview_index-wrap .interview_index_copy {
  font-size: 3.8rem;
  font-family: "Zen Kaku Gothic New";
  font-weight: 900;
  line-height: 1.55;
  color: var(--black);
  margin-block: 2.5rem;
}
@media screen and (max-width: 767px) {
  .interview_index-list .interview_index_grid .interview_index_item .interview_index-wrap .interview_index_copy {
    font-size: 2.1rem;
    margin-block: 1.5rem;
  }
}
.interview_index-list .interview_index_grid .interview_index_item .interview_index-wrap .interview_index_profile-wrap {
  display: flex;
  align-items: center;
}
.interview_index-list .interview_index_grid .interview_index_item .interview_index-wrap .interview_index_profile-wrap .interview_index_role {
  font-size: 1.4rem;
  font-weight: 700;
  background-color: var(--main);
  color: #fff;
  padding: 0.5rem 1.2rem;
  margin-right: 1.5rem;
}
@media screen and (max-width: 767px) {
  .interview_index-list .interview_index_grid .interview_index_item .interview_index-wrap .interview_index_profile-wrap .interview_index_role {
    margin-right: 1rem;
    padding: 0.4rem 0.8rem;
    font-size: 1.1rem;
  }
}
.interview_index-list .interview_index_grid .interview_index_item .interview_index-wrap .interview_index_profile-wrap .interview_index_profile {
  font-size: 1.6rem;
  font-weight: 600;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .interview_index-list .interview_index_grid .interview_index_item .interview_index-wrap .interview_index_profile-wrap .interview_index_profile {
    font-size: 1.2rem;
  }
}
.interview_index-list .interview_index_grid .interview_index_item .interview_index-wrap .interview_index_profile-wrap .interview_index_profile span {
  padding-inline: 1rem;
}

/*------------------------------*/
/*------------------------------*/
main.interview .canvas-wrap {
  position: relative;
}

.interview_mv {
  margin-block: 13rem 6rem;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .interview_mv {
    margin-block: 9rem 3rem;
  }
}
.interview_mv .interview_mv-wrap {
  width: calc(100% - 10rem);
  border-radius: 2.6rem;
  aspect-ratio: 1600/900;
  overflow: hidden;
  margin-inline: auto;
  position: relative;
}
@media screen and (max-width: 767px) {
  .interview_mv .interview_mv-wrap {
    width: calc(100% - 4rem);
    border-radius: 1rem;
  }
}
.interview_mv .interview_mv-wrap #lottie,
.interview_mv .interview_mv-wrap picture,
.interview_mv .interview_mv-wrap .mv-bg {
  position: absolute;
  inset: 0;
  aspect-ratio: 1600/900;
}
.interview_mv .interview_mv-wrap #lottie {
  z-index: 3;
}
.interview_mv .interview_mv-wrap picture {
  z-index: 2;
}
.interview_mv .interview_mv-wrap .mv-bg {
  z-index: 1;
}

.interview_profile {
  position: relative;
  z-index: 1;
  padding-inline: 5rem;
  margin-block: 6rem 7rem;
}
@media screen and (max-width: 767px) {
  .interview_profile {
    padding-inline: 2rem;
    margin-block: 4rem 3rem;
  }
}
.interview_profile .interview_title-red {
  font-size: 2.8rem;
  font-weight: 700;
  color: var(--main);
}
@media screen and (max-width: 767px) {
  .interview_profile .interview_title-red {
    font-size: 1.5rem;
  }
}
.interview_profile .interview_title-black {
  font-size: 5.8rem;
  font-weight: 900;
  line-height: 1.6;
  color: var(--black);
  font-family: "Zen Kaku Gothic New";
  font-feature-settings: "palt";
  letter-spacing: -0.01em;
  margin-block: 2rem 4rem;
}
@media screen and (max-width: 767px) {
  .interview_profile .interview_title-black {
    font-size: 2.6rem;
    margin-block: 1rem 2rem;
    line-height: 1.4;
  }
}
.interview_profile .interview_profile-wrap {
  display: flex;
  -moz-column-gap: 1.2rem;
       column-gap: 1.2rem;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .interview_profile .interview_profile-wrap {
    -moz-column-gap: 0.8rem;
         column-gap: 0.8rem;
  }
}
.interview_profile .interview_profile-wrap .interview_profile-red {
  font-size: 1.4rem;
  font-weight: 500;
  font-family: "Zen Kaku Gothic New";
  background-color: var(--main);
  color: #fff;
  padding: 0.3rem 1rem;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .interview_profile .interview_profile-wrap .interview_profile-red {
    font-size: 1rem;
    padding: 0.3rem 0.5rem;
  }
}
.interview_profile .interview_profile-wrap .interview_profile-black {
  font-size: 2.1rem;
  font-weight: 600;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
  color: var(--black);
}
@media screen and (max-width: 767px) {
  .interview_profile .interview_profile-wrap .interview_profile-black {
    font-size: 1.3rem;
  }
}
.interview_profile .interview_profile-history {
  font-size: 1.4rem;
  line-height: 2;
  margin-top: 3rem;
  padding-bottom: 4rem;
  border-bottom: 0.1rem #7c7c7c solid;
}
@media screen and (max-width: 767px) {
  .interview_profile .interview_profile-history {
    font-size: 1.1rem;
    padding-bottom: 3rem;
    margin-top: 2.5rem;
  }
}

.interview_split {
  padding-inline: 5rem;
  position: relative;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .interview_split {
    padding-inline: 2rem;
  }
}
.interview_split .interview_split-box {
  width: 50%;
  margin-left: 50%;
  margin-bottom: 8rem;
}
@media screen and (max-width: 767px) {
  .interview_split .interview_split-box {
    width: 100%;
    margin-left: 0;
    margin: 0 auto 4rem;
  }
}
.interview_split .interview_split-box .interview_split-wrap .interview_split-section .interviewsplit-section-text .interview_split-section-hd {
  font-size: 3.1rem;
  font-weight: 900;
  line-height: 1.6;
  font-family: "Zen Kaku Gothic New";
  color: var(--black);
  margin-bottom: 2.5rem;
  font-feature-settings: "palt";
  letter-spacing: -0.05em;
}
@media screen and (max-width: 767px) {
  .interview_split .interview_split-box .interview_split-wrap .interview_split-section .interviewsplit-section-text .interview_split-section-hd {
    font-size: 2rem;
    line-height: 1.5;
    margin-bottom: 1.5rem;
  }
}
.interview_split .interview_split-box .interview_split-wrap .interview_split-section .interviewsplit-section-img {
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .interview_split .interview_split-box .interview_split-wrap .interview_split-section .interviewsplit-section-img {
    margin-top: 3rem;
  }
}
.interview_split .interview_split-box .interview_split-wrap .interview_split-section + .interview_split-section {
  margin-top: 8rem;
}
@media screen and (max-width: 767px) {
  .interview_split .interview_split-box .interview_split-wrap .interview_split-section + .interview_split-section {
    margin-top: 4rem;
  }
}
.interview_split .interview_split-box .interview_split-img-wrap {
  position: absolute;
  width: 100%;
  inset: 0;
  pointer-events: none;
}
.interview_split .interview_split-box .interview_split-img-wrap .interview_split-img-box {
  position: -webkit-sticky;
  position: sticky;
  width: calc(50% - 7rem);
  min-height: 100dvh;
  left: 0;
  top: 0;
  z-index: 3;
}
@media screen and (max-width: 767px) {
  .interview_split .interview_split-box .interview_split-img-wrap .interview_split-img-box {
    display: none;
  }
}
.interview_split .interview_split-box .interview_split-img-wrap .interview_split-img-box img {
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  inset: 0;
  height: 100%;
}

.interview_off-time {
  margin-bottom: 8rem;
  padding-inline: 5rem;
}
@media screen and (max-width: 767px) {
  .interview_off-time {
    margin-bottom: 3rem;
    padding-inline: 2rem;
  }
}
.interview_off-time .interview_off-time-wrap {
  display: flex;
  -moz-column-gap: 5.2rem;
       column-gap: 5.2rem;
  border-block: 0.1rem solid #7c7c7c;
  padding-block: 8rem;
}
@media screen and (max-width: 767px) {
  .interview_off-time .interview_off-time-wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding-block: 3rem;
  }
}
.interview_off-time .interview_off-time-wrap .interview_off-time-img {
  width: 23.3333333333%;
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .interview_off-time .interview_off-time-wrap .interview_off-time-img {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .interview_off-time .interview_off-time-wrap .interview_off-time-text {
    display: contents;
  }
}
.interview_off-time .interview_off-time-wrap .interview_off-time-text .interview_off-time-hd {
  display: flex;
  -moz-column-gap: 1.8rem;
       column-gap: 1.8rem;
  align-items: center;
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 767px) {
  .interview_off-time .interview_off-time-wrap .interview_off-time-text .interview_off-time-hd {
    grid-column: 1/2;
    grid-row: 1/2;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    row-gap: 0.8rem;
    margin-block: 2rem 0;
  }
}
.interview_off-time .interview_off-time-wrap .interview_off-time-text .interview_off-time-hd .interview_off-time-hd-red {
  font-size: 5.8rem;
  font-weight: 700;
  color: var(--main);
  line-height: 1;
  margin-top: calc((1em - 1lh) / 2);
}
@media screen and (max-width: 767px) {
  .interview_off-time .interview_off-time-wrap .interview_off-time-text .interview_off-time-hd .interview_off-time-hd-red {
    font-size: 3rem;
  }
}
.interview_off-time .interview_off-time-wrap .interview_off-time-text .interview_off-time-hd .interview_off-time-hd-black {
  font-size: 2.1rem;
  font-weight: 900;
  font-family: "Zen Kaku Gothic New";
  color: var(--black);
}
@media screen and (max-width: 767px) {
  .interview_off-time .interview_off-time-wrap .interview_off-time-text .interview_off-time-hd .interview_off-time-hd-black {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 767px) {
  .interview_off-time .interview_off-time-wrap .interview_off-time-text .readText {
    grid-column: span 2;
    margin-top: 2rem;
  }
}

.interview_img-wrap {
  width: 100%;
}

.interview_back {
  aspect-ratio: 1600/400;
}
@media screen and (max-width: 767px) {
  .interview_back {
    aspect-ratio: 1500/400;
  }
}
.interview_back .interview_back-link {
  background-color: var(--main);
  width: 100%;
  height: 100%;
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  row-gap: 1.5rem;
  transition: 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
  border: solid var(--main) 0.1rem;
}
@media screen and (max-width: 767px) {
  .interview_back .interview_back-link {
    row-gap: 0.4rem;
  }
}
@media (any-hover: hover) {
  .interview_back .interview_back-link:hover {
    background-color: #fff;
  }
  .interview_back .interview_back-link:hover .interview_back-en, .interview_back .interview_back-link:hover .interview_back-ja {
    color: var(--main);
  }
}
.interview_back .interview_back-link .interview_back-en {
  font-size: 5.8rem;
  font-weight: 700;
  color: currentColor;
  transition: 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
@media screen and (max-width: 767px) {
  .interview_back .interview_back-link .interview_back-en {
    font-size: 2rem;
  }
}
.interview_back .interview_back-link .interview_back-ja {
  font-size: 2.1rem;
  font-weight: 700;
  color: currentColor;
  transition: 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
@media screen and (max-width: 767px) {
  .interview_back .interview_back-link .interview_back-ja {
    font-size: 0.9rem;
  }
}

/*------------------------------*/
/*------------------------------*/
.map_mv {
  padding-block: 28rem 16rem;
}
@media screen and (max-width: 767px) {
  .map_mv {
    padding-block: 10rem 6rem;
  }
}
.map_mv .map_mv-wrapper {
  position: relative;
  z-index: 1;
  display: flex;
  width: 100%;
  overflow: hidden;
  margin-bottom: 9rem;
}
@media screen and (max-width: 767px) {
  .map_mv .map_mv-wrapper {
    margin-bottom: 3rem;
  }
}
.map_mv .map_mv-wrapper .map_mv_loop_text {
  flex: 0 0 auto;
  white-space: nowrap;
  font-size: 10.9375vw;
  font-weight: 700;
  overflow: hidden;
  padding-left: 20px;
  color: var(--black);
}
@media screen and (max-width: 767px) {
  .map_mv .map_mv-wrapper .map_mv_loop_text {
    font-size: 10rem;
  }
}
.map_mv .map_mv-wrapper .map_mv_loop_text:nth-child(odd) {
  -webkit-animation: loop 50s -25s linear infinite;
          animation: loop 50s -25s linear infinite;
}
.map_mv .map_mv-wrapper .map_mv_loop_text:nth-child(even) {
  -webkit-animation: loop2 50s linear infinite;
          animation: loop2 50s linear infinite;
}
@keyframes loop {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes loop2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}
.map_mv .map_mv_title-wrap {
  margin-inline: 4rem;
}
@media screen and (max-width: 1120px) {
  .map_mv .map_mv_title-wrap {
    margin-inline: 2rem;
  }
}
.map_mv .map_mv_title-wrap .map_mv_title-hd {
  font-size: 3.1rem;
  font-weight: 900;
  font-family: "Zen Kaku Gothic New";
  background-color: var(--main);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: #fff;
  padding: 1rem 1.4rem 1rem 1.3rem;
  margin-bottom: 2rem;
  letter-spacing: -0.05em;
}
@media screen and (max-width: 767px) {
  .map_mv .map_mv_title-wrap .map_mv_title-hd {
    font-size: 2.4rem;
    margin-bottom: 1.5rem;
    padding: 0.6rem 0.8rem 0.6rem 1rem;
  }
}
.map_mv .map_mv_title-wrap .map_mv_title-text {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 2.2;
  color: var(--black);
}
@media screen and (max-width: 767px) {
  .map_mv .map_mv_title-wrap .map_mv_title-text {
    line-height: 2;
    font-size: 1.3rem;
  }
}

.map_main .map_hd-wrap {
  display: block;
}
.map_main .map_hd-red {
  font-family: "Oswald";
  font-size: 4rem;
  font-weight: 500;
  color: var(--main);
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .map_main .map_hd-red {
    font-size: 1.8rem;
  }
}
.map_main .map_hd {
  font-size: 5.8rem;
  font-weight: 900;
  line-height: 1.55;
  font-family: "Zen Kaku Gothic New";
  color: var(--black);
  margin-block: 1rem 2rem;
  letter-spacing: -0.02em;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .map_main .map_hd {
    font-size: 2.5rem;
    white-space: wrap;
    margin-block: 0.8rem 1rem;
  }
}
.map_main .map_hd .quotation-first {
  margin-left: -0.5em;
}
.map_main .map_hd .quotation-last {
  letter-spacing: -0.7em;
}
.map_main .readText {
  white-space: wrap;
}
.map_main .map_section {
  overflow-x: clip;
}
.map_main .map_section + .map_section {
  margin-top: 10rem;
}
@media screen and (max-width: 767px) {
  .map_main .map_section + .map_section {
    margin-top: 5rem;
  }
}
.map_main .map_section:first-of-type .map_section-wrap .map_item-wrap {
  display: flex;
  margin-top: 6rem;
}
@media screen and (max-width: 767px) {
  .map_main .map_section:first-of-type .map_section-wrap .map_item-wrap {
    flex-direction: column;
    margin-top: 3rem;
    width: 100%;
  }
}
.map_main .map_section:first-of-type .map_section-wrap .map_item-wrap .map_item {
  flex-shrink: 0;
  width: 65rem;
}
@media screen and (max-width: 767px) {
  .map_main .map_section:first-of-type .map_section-wrap .map_item-wrap .map_item {
    width: 100%;
  }
}
.map_main .map_section:first-of-type .map_section-wrap .map_item-wrap .map_item .readText {
  margin-top: calc((1em - 1lh) / 2);
  margin-bottom: 12rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .map_main .map_section:first-of-type .map_section-wrap .map_item-wrap .map_item .readText {
    margin-bottom: 3rem;
  }
}
.map_main .map_section:first-of-type .map_section-wrap .map_item-wrap .map_item .map_img-wrap {
  aspect-ratio: 650/410;
}
@media screen and (max-width: 767px) {
  .map_main .map_section:first-of-type .map_section-wrap .map_item-wrap .map_item .map_img-wrap {
    width: 80%;
  }
}
.map_main .map_section:first-of-type .map_section-wrap .map_item-wrap .map-movie-wrap {
  aspect-ratio: 470/480;
  margin-inline: 14.375vw calc(50% - 50vw);
  width: 100%;
  overflow: hidden;
}
@media (any-hover: hover) {
  .map_main .map_section:first-of-type .map_section-wrap .map_item-wrap .map-movie-wrap:hover > img {
    filter: blur(0px);
    scale: 1.04;
  }
}
@media screen and (max-width: 767px) {
  .map_main .map_section:first-of-type .map_section-wrap .map_item-wrap .map-movie-wrap {
    width: 60%;
    margin-top: -2rem;
    margin-inline: auto -2rem;
  }
}
.map_main .map_section:first-of-type .map_section-wrap .map_item-wrap .map-movie-wrap img {
  transition: 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.map_main .map_section:nth-of-type(2) .readText {
  margin-top: 6rem;
  margin-bottom: 8rem;
  width: 65rem;
}
@media screen and (max-width: 767px) {
  .map_main .map_section:nth-of-type(2) .readText {
    margin-top: 3rem;
    margin-bottom: 3rem;
    width: 100%;
  }
}
.map_main .map_section:nth-of-type(3) .map_section-wrap .map_hd-red, .map_main .map_section:nth-of-type(3) .map_section-wrap .map_hd {
  text-align: end;
}
@media screen and (max-width: 767px) {
  .map_main .map_section:nth-of-type(3) .map_section-wrap .map_hd-red, .map_main .map_section:nth-of-type(3) .map_section-wrap .map_hd {
    text-align: start;
  }
}
.map_main .map_section:nth-of-type(3) .map_section-wrap .map_item-wrap {
  display: flex;
  justify-content: space-between;
  margin-top: 6rem;
}
@media screen and (max-width: 767px) {
  .map_main .map_section:nth-of-type(3) .map_section-wrap .map_item-wrap {
    flex-direction: column-reverse;
    margin-top: 3rem;
  }
}
.map_main .map_section:nth-of-type(3) .map_section-wrap .map_item-wrap .map-movie-wrap {
  aspect-ratio: 680/380;
  margin-inline: calc(50% - 50vw) 7.5vw;
  width: 100%;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .map_main .map_section:nth-of-type(3) .map_section-wrap .map_item-wrap .map-movie-wrap {
    margin-inline: calc(50% - 50vw) 0;
  }
}
@media (any-hover: hover) {
  .map_main .map_section:nth-of-type(3) .map_section-wrap .map_item-wrap .map-movie-wrap:hover > img {
    filter: blur(0px);
    scale: 1.04;
  }
}
.map_main .map_section:nth-of-type(3) .map_section-wrap .map_item-wrap .map-movie-wrap img {
  transition: 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.map_main .map_section:nth-of-type(3) .map_section-wrap .map_item-wrap .readText {
  width: 65rem;
  flex-shrink: 0;
  margin-top: calc((1em - 1lh) / 2);
}
@media screen and (max-width: 767px) {
  .map_main .map_section:nth-of-type(3) .map_section-wrap .map_item-wrap .readText {
    width: 100%;
    margin-bottom: 3rem;
  }
}
.map_main .map_section:nth-of-type(4) .map_section-wrap {
  display: flex;
  flex-direction: column;
}
.map_main .map_section:nth-of-type(4) .map_section-wrap .map_item-wrap {
  display: flex;
  flex-direction: column;
}
.map_main .map_section:nth-of-type(4) .map_section-wrap .map_item-wrap .map_hd-wrap {
  white-space: nowrap;
  display: flex;
  justify-content: space-between;
  margin-top: 3rem 6.5rem 0 0;
  gap: 7rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .map_main .map_section:nth-of-type(4) .map_section-wrap .map_item-wrap .map_hd-wrap {
    white-space: wrap;
    flex-direction: column;
    margin-right: 0;
    gap: 0;
  }
}
.map_main .map_section:nth-of-type(4) .map_section-wrap .map_item-wrap .map_hd-wrap .map_hd {
  margin-bottom: 0;
}
.map_main .map_section:nth-of-type(4) .map_section-wrap .map_item-wrap .map_hd-wrap .readText {
  margin-top: 2.25rem;
  width: 65rem;
}
@media screen and (max-width: 767px) {
  .map_main .map_section:nth-of-type(4) .map_section-wrap .map_item-wrap .map_hd-wrap .readText {
    margin-top: 3rem;
    width: 100%;
  }
}
.map_main .map_section:nth-of-type(4) .map_section-wrap .map-item {
  margin-top: 10rem;
}
@media screen and (max-width: 767px) {
  .map_main .map_section:nth-of-type(4) .map_section-wrap .map-item {
    margin-top: 3rem;
  }
}
.map_main .map_section:nth-of-type(5) {
  padding-bottom: 10rem;
}
@media screen and (max-width: 767px) {
  .map_main .map_section:nth-of-type(5) {
    padding-bottom: 5rem;
  }
}
.map_main .map_section:nth-of-type(5) .map_hd {
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .map_main .map_section:nth-of-type(5) .map_hd {
    margin-block: 0.8rem 0;
  }
}
.map_main .map_section:nth-of-type(5) .map_item-wrap {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .map_main .map_section:nth-of-type(5) .map_item-wrap {
    flex-direction: column;
  }
}
.map_main .map_section:nth-of-type(5) .map_item-wrap .readText {
  width: 50%;
  margin-top: calc((1em - 1lh) / 2);
}
@media screen and (max-width: 767px) {
  .map_main .map_section:nth-of-type(5) .map_item-wrap .readText {
    width: 100%;
    margin-top: 3rem;
    margin-bottom: 3rem;
  }
}
.map_main .map_section:nth-of-type(5) .map_item-wrap .map-img-wrap {
  aspect-ratio: 680/380;
  margin-right: calc(50% - 50vw + 4rem);
  padding-left: 11rem;
}
@media screen and (max-width: 767px) {
  .map_main .map_section:nth-of-type(5) .map_item-wrap .map-img-wrap {
    width: 100%;
    padding-left: 0;
    margin-inline: auto;
  }
}

main.map {
  position: relative;
  overflow: hidden;
}
main.map > *:not(.map_bg) {
  z-index: 1;
  position: relative;
}
main.map .map_bg {
  position: absolute;
  z-index: 0;
  top: 0;
  width: 100%;
}

/*------------------------------*/
/*------------------------------*/
body:has(.voice_mask.appear) {
  overflow: hidden;
}

.voice_mv {
  padding-block: 18rem 0;
  position: relative;
}
.voice_mv #ribbon-voice-mv {
  height: 200%;
}
@media screen and (max-width: 767px) {
  .voice_mv #ribbon-voice-mv {
    height: 150%;
  }
}
@media screen and (max-width: 767px) {
  .voice_mv {
    padding-block: 10rem 0;
  }
}
.voice_mv .voice_mv_en {
  position: relative;
  z-index: 1;
  font-size: 6rem;
  font-weight: 700;
  line-height: 1.15;
  color: var(--main);
}
@media screen and (max-width: 767px) {
  .voice_mv .voice_mv_en {
    font-size: 4rem;
  }
}
.voice_mv .voice_mv_ja {
  position: relative;
  z-index: 1;
  font-size: 2.1rem;
  font-weight: 900;
  color: var(--black);
  font-family: "Zen Kaku Gothic New";
  margin-top: 1rem;
}
@media screen and (max-width: 767px) {
  .voice_mv .voice_mv_ja {
    font-size: 1.4rem;
    margin-top: 0.7rem;
  }
}
.voice_mv .readText {
  position: relative;
  z-index: 1;
  width: 50%;
  margin-top: 3rem;
}
@media screen and (max-width: 767px) {
  .voice_mv .readText {
    width: 100%;
    margin-top: 2.5rem;
  }
}

.voice_main {
  padding-block: 20rem 16rem;
}
@media screen and (max-width: 767px) {
  .voice_main {
    padding-block: 5rem;
  }
  .voice_main #ribbon-voice-main {
    display: none;
  }
}
.voice_main .voice-wrap {
  width: 81.25vw;
  margin-inline: auto 0;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap {
    width: 100%;
  }
}
.voice_main .voice-wrap .voice_section .voice_button {
  position: relative;
  display: block;
  overflow: hidden;
  width: 100%;
}
@media (any-hover: hover) {
  .voice_main .voice-wrap .voice_section .voice_button:hover .voice-black {
    background-color: #fff;
    color: var(--black);
    border: solid var(--black) 0.1rem;
  }
  .voice_main .voice-wrap .voice_section .voice_button:hover > img {
    filter: blur(0px);
    scale: 1.04;
  }
}
.voice_main .voice-wrap .voice_section .voice_button img {
  filter: blur(4px);
  scale: 1.02;
  transition: all 0.6s ease;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_button img {
    filter: blur(0px);
    scale: 1;
  }
}
.voice_main .voice-wrap .voice_section .voice_button .voice_text-wrap {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  position: absolute;
  inset: 0;
}
.voice_main .voice-wrap .voice_section .voice_button .voice-red {
  color: #fff;
  display: flex;
  flex-direction: column;
  padding-left: 4rem;
  padding-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_button .voice-red {
    padding-left: 1rem;
    padding-bottom: 1rem;
  }
}
.voice_main .voice-wrap .voice_section .voice_button .voice-red .voice_company {
  font-size: 1.8rem;
  font-size: min(1.8rem, 1.3846153846vw);
  font-weight: 600;
  font-family: "Zen Kaku Gothic New";
  color: currentColor;
  background-color: var(--main);
  padding: 1rem 1.5rem 1rem 0.9rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_button .voice-red .voice_company {
    font-size: 1rem;
    padding: 0.4rem 0.5rem;
  }
}
.voice_main .voice-wrap .voice_section .voice_button .voice-red .voice_copy {
  font-size: 4rem;
  font-size: min(4rem, 3.0769230769vw);
  font-weight: 600;
  line-height: 1.1;
  font-family: "Zen Kaku Gothic New";
  color: currentColor;
  background-color: var(--main);
  padding: 1.4rem 1.2rem 1.4rem 1.1rem;
  letter-spacing: -0.01em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_button .voice-red .voice_copy {
    font-size: 1.5rem;
    padding: 0.4rem 0.5rem;
  }
}
.voice_main .voice-wrap .voice_section .voice_button .voice-black {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-right: 2rem;
  margin-bottom: 2rem;
  padding: 2rem;
  background-color: var(--black);
  color: #fff;
  transition: all 0.2s ease;
  border: solid transparent 0.1rem;
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_button .voice-black {
    margin-right: 1dvh;
    margin-bottom: 1rem;
    padding: 0.7rem;
    width: 12rem;
    font-size: 0.8rem;
  }
}
.voice_main .voice-wrap .voice_section .voice_button .voice-black .voice-black-text {
  margin-right: 15.5rem;
  font-size: 1em;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_button .voice-black .voice-black-text {
    margin-right: 1.5rem;
  }
}
.voice_main .voice-wrap .voice_section .voice_button .voice-black::after {
  content: "▶︎";
  display: inline-block;
  scale: 0.8 1;
  font-size: 0.8em;
}
.voice_main .voice-wrap .voice_section .voice_mask {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  z-index: 1900000;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  -webkit-backdrop-filter: blur(5px);
          backdrop-filter: blur(5px);
}
.voice_main .voice-wrap .voice_section .voice_mask.appear {
  opacity: 1;
  visibility: visible;
}
.voice_main .voice-wrap .voice_section .voice_modal {
  position: fixed;
  inset: 0;
  top: 2dvh;
  background: transparent;
  z-index: 2000000;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  overflow: auto;
  scrollbar-width: none;
  overscroll-behavior: contain;
  width: 120rem;
  max-width: 90vw;
  height: 96dvh;
  margin-inline: auto;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_modal {
    top: 2vw;
    max-width: none;
    width: 96vw;
    height: calc(100dvh - 4vw);
  }
}
.voice_main .voice-wrap .voice_section .voice_modal.appear {
  opacity: 1;
  visibility: visible;
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents {
  position: relative;
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-mv {
  width: 100%;
  position: relative;
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-mv .voice_content-mv-text {
  position: absolute;
  inset: 0;
  display: grid;
  place-content: center;
  color: #fff;
  font-family: "Zen Kaku Gothic New";
  text-align: center;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-mv .voice_content-mv-text {
    padding-top: 3rem;
  }
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-mv .voice_content-mv-text .voice_content-company {
  font-size: 2.8rem;
  font-weight: 600;
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-mv .voice_content-mv-text .voice_content-company {
    margin-bottom: 1rem;
    font-size: 1.6rem;
  }
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-mv .voice_content-mv-text .voice_content_who {
  font-size: 1.6rem;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-mv .voice_content-mv-text .voice_content_who {
    font-size: 1.2rem;
  }
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap {
  padding-block: 8rem 10rem;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap {
    padding-block: 4rem;
  }
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner {
  padding-inline: 4rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner {
    padding-inline: 2rem;
  }
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-copy-wrap {
  margin-bottom: 8rem;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-copy-wrap {
    margin-bottom: 4rem;
  }
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-copy-wrap .voice_content-copy {
  font-size: 4.2rem;
  font-family: "Zen Kaku Gothic New";
  font-weight: 600;
  line-height: 1.1;
  background-color: var(--main);
  color: #fff;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 1rem 1.5rem;
  letter-spacing: -0.01em;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-copy-wrap .voice_content-copy {
    font-size: 2rem;
    padding: 0.6rem 1rem;
  }
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section {
  display: flex;
  justify-content: space-between;
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section .voice_content-text-wrap {
  width: 50%;
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section .voice_content-text-wrap {
    width: 100%;
    margin-bottom: 2.5rem;
  }
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section .voice_content-text-wrap .voice_content-hd {
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1.5;
  font-family: "Zen Kaku Gothic New";
  margin-bottom: 2.5rem;
  padding-bottom: 1.4rem;
  border-bottom: var(--black) 0.1rem solid;
  margin-top: calc((1em - 1lh) / 2);
  letter-spacing: -0.02em;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section .voice_content-text-wrap .voice_content-hd {
    font-size: 1.8rem;
    padding-bottom: 1rem;
    margin-bottom: 1.5rem;
  }
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section:nth-of-type(1) .voice_content-text-wrap, .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section:nth-of-type(3) .voice_content-text-wrap {
  margin-right: 6rem;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section:nth-of-type(1) .voice_content-text-wrap, .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section:nth-of-type(3) .voice_content-text-wrap {
    margin-right: 0;
  }
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section:nth-of-type(1) .voice_content-img-wrap, .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section:nth-of-type(3) .voice_content-img-wrap {
  margin-right: -4rem;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section:nth-of-type(1) .voice_content-img-wrap, .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section:nth-of-type(3) .voice_content-img-wrap {
    margin-right: 0;
  }
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section:nth-of-type(1), .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section:nth-of-type(3) {
    flex-direction: column;
  }
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section:nth-of-type(2) {
  flex-direction: row-reverse;
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section:nth-of-type(2) .voice_content-text-wrap {
  margin-left: 6rem;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section:nth-of-type(2) .voice_content-text-wrap {
    margin-left: 0;
  }
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section:nth-of-type(2) .voice_content-img-wrap {
  margin-left: -4rem;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section:nth-of-type(2) .voice_content-img-wrap {
    margin-left: 0;
  }
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section:nth-of-type(2) {
    flex-direction: column;
  }
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section + .voice_content-section {
  margin-top: 8rem;
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_content-wrap .voice_content-inner .voice_content-main .voice_content-section + .voice_content-section {
    margin-top: 4rem;
  }
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_close-btn-container {
  position: -webkit-sticky;
  position: sticky;
  bottom: 0;
  width: 100%;
  padding-block: 2.2rem 1.5rem;
  background-color: var(--main);
  color: #fff;
  font-size: 2.1rem;
  text-align: center;
  font-weight: 700;
  cursor: pointer;
  border: 0.1rem solid var(--main);
  transition: 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition-property: background-color, color;
}
.voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_close-btn-container::after {
  content: "×";
  display: block;
  transition: 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition-property: color;
}
@media (any-hover: hover) {
  .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_close-btn-container:hover {
    background-color: #fff;
    color: var(--main);
  }
}
@media screen and (max-width: 767px) {
  .voice_main .voice-wrap .voice_section .voice_modal .voice_contents .voice_close-btn-container {
    font-size: 1.6rem;
    padding-block: 1.5rem 1rem;
  }
}

/*------------------------------*/
/*------------------------------*/
.data .data-mv {
  position: relative;
  padding-block: 14rem 10rem;
  padding-inline: 4rem;
}
@media screen and (max-width: 767px) {
  .data .data-mv {
    padding-inline: 2rem;
    padding-block: 10rem 4rem;
  }
}
.data .data-mv .en {
  font-size: 16rem;
  font-family: "Lato";
  font-weight: 700;
  position: relative;
  z-index: 2;
  line-height: 1.05;
}
@media screen and (max-width: 767px) {
  .data .data-mv .en {
    font-size: 5rem;
  }
}
.data .data-mv h2 {
  font-size: 3.1rem;
  font-weight: 900;
  font-family: "Zen Kaku Gothic New";
  background-color: var(--main);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: #fff;
  padding: 0.8rem 1.2rem;
  letter-spacing: -0.05em;
  margin-top: 2rem;
}
@media screen and (max-width: 767px) {
  .data .data-mv h2 {
    font-size: 1.8rem;
    padding: 0.6rem 0.8rem;
    margin-top: 1.5rem;
  }
}
.data .data-mv .text {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 2.2;
  margin-top: 2rem;
}
@media screen and (max-width: 767px) {
  .data .data-mv .text {
    line-height: 2;
    font-size: 1.3rem;
    margin-top: 1.5rem;
  }
}
.data .data-main {
  padding-bottom: 10rem;
}
@media screen and (max-width: 767px) {
  .data .data-main {
    padding-bottom: 4rem;
  }
}
.data .data-main .data-inner {
  padding-inline: 4rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .data .data-main .data-inner {
    padding-inline: 2rem;
  }
}
.data .data-main .data-row {
  display: grid;
  font-size: 0.625vw;
}
@media screen and (max-width: 767px) {
  .data .data-main .data-row {
    font-size: 1.3333333333vw;
  }
}
.data .data-main .data-row img {
  font-size: 0.625vw;
}
@media screen and (max-width: 767px) {
  .data .data-main .data-row img {
    font-size: 1.3333333333vw;
  }
}
.data .data-main .data-row.column4 {
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: 32em;
  gap: 2.6666666667em;
}
@media screen and (max-width: 767px) {
  .data .data-main .data-row.column4 {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: 32em 32em;
  }
}
.data .data-main .data-row.grid {
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: 29em 35em 32em;
  gap: 3em 2.6666666667em;
}
@media screen and (max-width: 767px) {
  .data .data-main .data-row.grid {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: 67em 29em 70em auto;
  }
}
.data .data-main .data-row + .data-row {
  margin-top: 3em;
}
.data .data-main .item {
  position: relative;
  background-color: #fff;
  box-shadow: 0 0 0.8em rgba(155, 155, 155, 0.2509803922);
}
.data .data-main .item .item-title {
  position: absolute;
  left: 0;
  top: 0;
  background-color: var(--main);
  padding: 1.1em 1.5em;
  color: #fff;
  line-height: 1;
  font-weight: 600;
}
.data .data-main .item .item-title span {
  font-size: 1.8em;
}
.data .data-main .item .image {
  width: calc(var(--iw) * 0.1em);
}
.data .data-main .item .num {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 0.5em;
}
.data .data-main .item .num span {
  display: inline-block;
}
.data .data-main .item .num .countUp {
  font-size: 8.8em;
  font-weight: 700;
  font-family: "Lato";
  line-height: 0.8;
  color: var(--main);
}
.data .data-main .item .num .unit {
  font-size: 3em;
  font-weight: 600;
}
.data .data-main .item .sub {
  background-color: var(--black);
  color: #fff;
  border-radius: 100vmax;
  font-weight: 600;
  padding: 0.8em 2.5em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
.data .data-main .item .sub span {
  font-size: 1.6em;
  white-space: nowrap;
}
.data .data-main .item.item01, .data .data-main .item.item04 {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  gap: 2em;
  padding-bottom: 2em;
}
.data .data-main .item.item02, .data .data-main .item.item05, .data .data-main .item.item06 {
  padding-bottom: 4em;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.data .data-main .item.item02 .column-wrap, .data .data-main .item.item05 .column-wrap, .data .data-main .item.item06 .column-wrap {
  width: 15em;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  gap: 3em;
}
.data .data-main .item.item02 .column-wrap.dot, .data .data-main .item.item05 .column-wrap.dot, .data .data-main .item.item06 .column-wrap.dot {
  position: relative;
}
.data .data-main .item.item02 .column-wrap.dot::after, .data .data-main .item.item05 .column-wrap.dot::after, .data .data-main .item.item06 .column-wrap.dot::after {
  content: ":";
  color: var(--black);
  position: absolute;
  left: 100%;
  bottom: 0;
  font-weight: 600;
  font-size: 6em;
  translate: -50% -10%;
}
.data .data-main .item.item03 {
  padding-bottom: 4em;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  gap: 3em;
}
.data .data-main .item.item07 {
  grid-column: span 2;
  padding-top: 5em;
}
.data .data-main .item.item07 .graph {
  position: relative;
  margin-inline: auto;
  width: 23.6em;
  aspect-ratio: 1;
  display: grid;
  place-content: center;
  border-radius: 50%;
  background-image: conic-gradient(#f9ac12 0% var(--graph01), transparent var(--graph01) 30%, #efe925 30% var(--graph02), transparent var(--graph02) 62.5%, #ed1b34 62.5% var(--graph03), transparent var(--graph03) 100%);
}
.data .data-main .item.item07 .graph.is-shown {
  -webkit-animation: graph 1.2s cubic-bezier(0.63, 0.11, 0.11, 0.94) 0.5s forwards;
          animation: graph 1.2s cubic-bezier(0.63, 0.11, 0.11, 0.94) 0.5s forwards;
}
.data .data-main .item.item07 .graph::after {
  content: "";
  background-color: #fff;
  border-radius: 50%;
  width: 17em;
  aspect-ratio: 1;
  position: absolute;
  z-index: 0;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
}
.data .data-main .item.item07 .graph .image {
  position: relative;
  z-index: 1;
}
.data .data-main .item.item07 .graph .line {
  position: absolute;
  z-index: 0;
  width: 1em;
  height: 50%;
  background-color: #fff;
  left: calc(50% - 0.5em);
  transform-origin: bottom center;
}
.data .data-main .item.item07 .graph .line.line02 {
  rotate: 108deg;
}
.data .data-main .item.item07 .graph .line.line03 {
  rotate: 225deg;
}
.data .data-main .item.item07 .graph p {
  position: absolute;
  font-size: 2.1em;
  line-height: 1.6;
  font-weight: 600;
  white-space: nowrap;
  font-feature-settings: "palt";
}
.data .data-main .item.item07 .graph p::after {
  content: "";
  display: block;
  height: 0;
  position: absolute;
  border-bottom: 1px solid var(--black);
}
.data .data-main .item.item07 .graph p.text01 {
  text-align: right;
  left: 90%;
}
.data .data-main .item.item07 .graph p.text01::after {
  width: 6em;
  transform-origin: right;
  right: 4.5em;
  bottom: 0.25em;
  rotate: -10deg;
}
.data .data-main .item.item07 .graph p.text02 {
  left: 130%;
  bottom: 0;
}
.data .data-main .item.item07 .graph p.text02::after {
  width: 5em;
  transform-origin: right;
  right: 110%;
  bottom: 0.7em;
  rotate: 15deg;
}
.data .data-main .item.item07 .graph p.text03 {
  right: 130%;
  top: 35%;
}
.data .data-main .item.item07 .graph p.text03::after {
  width: 3.5em;
  left: 110%;
  bottom: 1.4em;
}
.data .data-main .item.item08 {
  grid-column: span 2;
  grid-row: span 2;
  padding: 9em 4em 5em;
}
@media screen and (max-width: 767px) {
  .data .data-main .item.item08 {
    padding-inline: 1rem;
    grid-row: span 1;
  }
}
.data .data-main .item.item08 ul {
  position: relative;
  width: 100%;
  height: 100%;
}
.data .data-main .item.item08 ul li {
  position: absolute;
  background-color: var(--bgColor);
  color: #fff;
  padding: 1.8em 2em;
  border-radius: 0.8em;
}
.data .data-main .item.item08 ul li.red {
  --bgColor: var(--main);
}
.data .data-main .item.item08 ul li.yellow {
  --bgColor: #ffce00;
}
.data .data-main .item.item08 ul li.orange {
  --bgColor: #f9ac12;
}
.data .data-main .item.item08 ul li.small p {
  font-size: 2.1em;
}
.data .data-main .item.item08 ul li.mid p {
  font-size: 2.8em;
  font-weight: 500;
  line-height: 1.2;
}
.data .data-main .item.item08 ul li.large p {
  font-size: 4em;
  font-weight: 600;
  line-height: 1.2;
}
.data .data-main .item.item08 ul li p {
  line-height: 1.5;
}
.data .data-main .item.item08 ul li::after {
  content: "";
  font-size: 0.625vw;
  width: 3em;
  height: 1.6em;
  display: block;
  position: absolute;
  top: 99%;
  background-color: var(--bgColor);
}
.data .data-main .item.item08 ul li.right::after {
  -webkit-clip-path: polygon(0 0, 80% 0, 100% 100%);
          clip-path: polygon(0 0, 80% 0, 100% 100%);
}
.data .data-main .item.item08 ul li.left::after {
  -webkit-clip-path: polygon(20% 0, 100% 0, 0 100%);
          clip-path: polygon(20% 0, 100% 0, 0 100%);
}
.data .data-main .item.item08 ul li.serif01 {
  left: 15%;
}
.data .data-main .item.item08 ul li.serif01::after {
  left: 42%;
}
.data .data-main .item.item08 ul li.serif02 {
  right: 18%;
  z-index: 2;
  top: 6%;
}
.data .data-main .item.item08 ul li.serif02::after {
  left: 12%;
}
.data .data-main .item.item08 ul li.serif03 {
  left: 10%;
  top: 24%;
}
.data .data-main .item.item08 ul li.serif03::after {
  right: 10%;
}
.data .data-main .item.item08 ul li.serif04 {
  right: 5%;
  top: 20%;
  text-align: right;
}
.data .data-main .item.item08 ul li.serif04::after {
  left: 15%;
}
.data .data-main .item.item08 ul li.serif05 {
  left: 7%;
  top: 42%;
}
.data .data-main .item.item08 ul li.serif05::after {
  left: 20%;
}
.data .data-main .item.item08 ul li.serif06 {
  right: 2%;
  top: 52%;
  z-index: 2;
}
.data .data-main .item.item08 ul li.serif06::after {
  left: 60%;
}
.data .data-main .item.item08 ul li.serif07 {
  left: 4%;
  top: 69%;
}
.data .data-main .item.item08 ul li.serif07::after {
  left: 42%;
}
.data .data-main .item.item08 ul li.serif08 {
  left: 15%;
  bottom: 8%;
  z-index: 2;
}
.data .data-main .item.item08 ul li.serif08::after {
  left: 60%;
}
@media screen and (max-width: 767px) {
  .data .data-main .item.item08 ul li.serif08 {
    left: 12%;
  }
}
.data .data-main .item.item08 ul li.serif09 {
  right: 2%;
  bottom: 2%;
}
.data .data-main .item.item08 ul li.serif09::after {
  left: 10%;
}
.data .data-main .item.item09 {
  padding: 8em 4em 4em;
  grid-column: span 2;
}
.data .data-main .item.item09 .wrap {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 1.8em;
}
.data .data-main .item.item09 p {
  font-size: 2.1em;
  color: var(--main);
  font-weight: 600;
  border: var(--main) solid 2px;
  border-radius: 100vmax;
  padding: 0.45em 1.2em 0.4em;
  display: inline-block;
}
.data .data-main .item.item10 {
  grid-row: span 2;
  padding: 6em 4em 4em;
}
@media screen and (max-width: 767px) {
  .data .data-main .item.item10 {
    padding: 7em 2.5em 4em;
    grid-row: span 1;
  }
}
.data .data-main .item.item11 {
  grid-row: span 2;
  padding: 6em 4em 4em;
}
@media screen and (max-width: 767px) {
  .data .data-main .item.item11 {
    grid-row: span 1;
  }
}
.data .data-main .item.item11 ul li {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.data .data-main .item.item11 ul li p {
  font-size: 2.8em;
  font-weight: 600;
  display: flex;
  justify-content: space-between;
  width: 65%;
}
.data .data-main .item.item11 ul li p::after {
  content: "…";
  font-family: "Noto Sans JP";
}
.data .data-main .item.item11 ul li .num .countUp {
  font-size: 4.8em;
}
.data .data-main .item.item11 ul li .num .unit {
  font-size: 2.4em;
}
.data .data-main .item.item11 ul li + li {
  margin-top: 1.5em;
}
.data .data-main .item.item11 .image {
  margin-inline: auto;
  margin-top: 3em;
}
.data .data-main .item.item12 {
  padding: 7em 3em 4em;
}
.data .data-main .item.item12 .wrap {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 1.2em 1em;
}
.data .data-main .item.item12 p {
  font-size: 1.6em;
  color: var(--main);
  font-weight: 600;
  border: var(--main) solid 2px;
  border-radius: 100vmax;
  padding: 0.4em 0.6em 0.35em;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .data .data-main .item.item12 p {
    border-width: 1px;
  }
}
.data .data-main .item.item13 {
  padding: 7em 3em 4em;
}
.data .data-main .item.item13 ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.5em 3em;
}
.data .data-main .item.item13 ul li {
  display: flex;
  align-items: center;
  background-image: linear-gradient(to top, #f6ff00 0% 50%, transparent 50% 100%);
}
.data .data-main .item.item13 ul li img {
  width: 1.4em;
  margin-right: 0.2em;
}
.data .data-main .item.item13 ul li p {
  font-weight: 700;
  font-size: 1.6em;
  white-space: nowrap;
  letter-spacing: -0.1em;
  line-height: 1.2;
}

@property --graph01 {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --graph02 {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 30%;
}
@property --graph03 {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 62.5%;
}
@-webkit-keyframes graph {
  from {
    --graph01: 0%;
    --graph02: 30%;
    --graph03: 62.5%;
  }
  to {
    --graph01: 30%;
    --graph02: 62.5%;
    --graph03: 100%;
  }
}
@keyframes graph {
  from {
    --graph01: 0%;
    --graph02: 30%;
    --graph03: 62.5%;
  }
  to {
    --graph01: 30%;
    --graph02: 62.5%;
    --graph03: 100%;
  }
}
/*------------------------------*/
/*------------------------------*/
.entry-page {
  margin-top: 9rem;
  padding-block: 6rem;
  display: grid;
  place-content: center;
  position: relative;
}
@media screen and (max-width: 767px) {
  .entry-page {
    margin-top: 7rem;
    height: auto;
    padding-block: 3rem;
  }
}
.entry-page canvas {
  height: 100%;
}
.entry-page > .inner {
  position: relative;
  z-index: 1;
}
.entry-page .entry_title-wrap p {
  font-size: 4.8rem;
  font-weight: 700;
  color: var(--main);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .entry-page .entry_title-wrap p {
    font-size: 2.8rem;
  }
}
.entry-page .entry_title-wrap h2 {
  margin-top: 1.5rem;
  font-size: 1.6rem;
  font-family: "Zen Kaku Gothic New";
  font-weight: 900;
  color: var(--black);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .entry-page .entry_title-wrap h2 {
    font-size: 1.2rem;
    margin-top: 0.8rem;
  }
}
.entry-page p.readText {
  margin-top: 4rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .entry-page p.readText {
    margin-top: 2.5rem;
    text-align: left;
  }
}
.entry-page p.caption {
  font-size: 1.4rem;
  line-height: 2.2;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .entry-page p.caption {
    font-size: 1.1rem;
    text-align: left;
  }
}
.entry-page p.caption span {
  color: #d70000;
  display: inline-block;
  margin-right: 0.25em;
}

/*------------------------------*/
.state .wrap {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr;
  grid-template-rows: 6rem;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .state .wrap {
    -moz-column-gap: 0.6rem;
         column-gap: 0.6rem;
  }
}
.state .wrap .step {
  display: grid;
  place-content: center;
  font-size: 1.4rem;
  font-weight: 600;
  color: #fff;
  background-color: #9c9c9c;
  width: 100%;
  height: 100%;
}
.state .wrap .step.current {
  background-color: var(--main);
  color: #fff;
}
.state .wrap .tri {
  display: inline-block;
  width: 1rem;
  height: 1.2rem;
  background-color: #d70000;
  -webkit-clip-path: polygon(0 0, 100% 50%, 0 100%);
          clip-path: polygon(0 0, 100% 50%, 0 100%);
}

/*------------------------------*/
.form {
  padding-block: 8rem 10rem;
}
@media screen and (max-width: 767px) {
  .form {
    padding-block: 4rem 6rem;
  }
}
.form .form-group {
  display: flex;
  padding-block: 4rem 3rem;
  border-bottom: #c4cbd2 1px solid;
}
@media screen and (max-width: 767px) {
  .form .form-group {
    display: block;
    padding-block: 3.5rem 3rem;
  }
}
.form .form-group label,
.form .form-group p.title {
  display: block;
  width: 22rem;
  flex-shrink: 0;
  font-size: 1.6rem;
  font-weight: 700;
  font-feature-settings: "palt";
  padding-top: 0.9rem;
}
@media screen and (max-width: 767px) {
  .form .form-group label,
.form .form-group p.title {
    margin-bottom: 1.6rem;
  }
}
.form .form-group input,
.form .form-group select,
.form .form-group textarea {
  width: 100%;
  padding: 1rem 0.8rem;
  font-size: 1.4rem;
  border: 1px solid #c4cbd2;
  border-radius: 2px;
}
@media screen and (max-width: 767px) {
  .form .form-group input,
.form .form-group select,
.form .form-group textarea {
    padding: 1.4rem 0.8rem;
  }
}
.form .form-group input:focus,
.form .form-group select:focus,
.form .form-group textarea:focus {
  border-color: var(--main);
  outline: none;
}
.form .form-group input#job, .form .form-group input#phone,
.form .form-group select#job,
.form .form-group select#phone,
.form .form-group textarea#job,
.form .form-group textarea#phone {
  width: 20em;
}
.form .form-group input#fullname, .form .form-group input#furigana, .form .form-group input#email, .form .form-group input#emailConfirm,
.form .form-group select#fullname,
.form .form-group select#furigana,
.form .form-group select#email,
.form .form-group select#emailConfirm,
.form .form-group textarea#fullname,
.form .form-group textarea#furigana,
.form .form-group textarea#email,
.form .form-group textarea#emailConfirm {
  width: 40em;
}
@media screen and (max-width: 767px) {
  .form .form-group input#fullname, .form .form-group input#furigana, .form .form-group input#email, .form .form-group input#emailConfirm,
.form .form-group select#fullname,
.form .form-group select#furigana,
.form .form-group select#email,
.form .form-group select#emailConfirm,
.form .form-group textarea#fullname,
.form .form-group textarea#furigana,
.form .form-group textarea#email,
.form .form-group textarea#emailConfirm {
    width: 100%;
  }
}
.form .form-group p.text {
  padding: 1rem 0;
  font-size: 1.4rem;
}
.form .form-group.required label::after, .form .form-group.required p.title::after {
  content: " *";
  color: #d70000;
}
.form .form-group .address_wrap {
  width: 100%;
}
.form .form-group .address_wrap .postcode_wrap {
  display: flex;
  margin-bottom: 1.6rem;
}
@media screen and (max-width: 767px) {
  .form .form-group .address_wrap .postcode_wrap {
    margin-bottom: 1rem;
  }
}
.form .form-group .address_wrap .postcode_wrap label {
  width: auto;
  margin-right: 1rem;
}
.form .form-group .address_wrap .postcode_wrap label::after {
  display: none;
}
.form .form-group .address_wrap .postcode_wrap span.post {
  padding: 1rem 0.6rem 1rem 0;
  font-size: 1.4rem;
}
.form .form-group .address_wrap .postcode_wrap input {
  width: 8em;
}
.form .form-group .address_wrap .postcode_wrap + p.text {
  padding-top: 0;
}
@media screen and (max-width: 767px) {
  .form .form-group .address_wrap .postcode_wrap + p.text {
    margin-top: -1rem;
  }
}
.form .form-group .resume_wrap > p {
  margin-top: 1em;
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  .form .form-group .resume_wrap > p {
    margin-top: 0.6em;
  }
}
.form .form-btn-area {
  margin-top: 6rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .form .form-btn-area {
    margin-top: 4rem;
  }
}
.form .form-btn-area .confirm-btn,
.form .form-btn-area .send-btn {
  background-color: var(--main);
  margin-inline: auto;
  color: #fff;
  font-size: 2.1rem;
  font-weight: 600;
  border: 1px solid var(--main);
  cursor: pointer;
  padding: 3rem 12rem;
  display: grid;
  place-content: center;
  transition: background-color 0.1s, color 0.1s;
}
@media (hover: hover) and (pointer: fine) {
  .form .form-btn-area .confirm-btn:hover,
.form .form-btn-area .send-btn:hover {
    background-color: #fff;
    color: var(--main);
  }
}
@media screen and (max-width: 767px) {
  .form .form-btn-area .confirm-btn,
.form .form-btn-area .send-btn {
    font-size: 1.8rem;
    width: 100%;
    padding-inline: 0;
  }
}
.form .form-btn-area .back-btn {
  background-color: #c4cbd2;
  margin-inline: auto;
  color: #fff;
  font-size: 2.1rem;
  font-weight: 600;
  border: 1px solid #c4cbd2;
  cursor: pointer;
  padding: 3rem 12rem;
  display: grid;
  place-content: center;
  transition: background-color 0.1s, color 0.1s;
}
@media (hover: hover) and (pointer: fine) {
  .form .form-btn-area .back-btn:hover {
    background-color: #fff;
    color: #c4cbd2;
  }
}
@media screen and (max-width: 767px) {
  .form .form-btn-area .back-btn {
    font-size: 1.8rem;
    width: 100%;
    padding-inline: 0;
    margin-top: 2rem;
  }
}
.form .form-btn-area.confirm-area {
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .form .form-btn-area.confirm-area {
    flex-direction: column-reverse;
  }
}
.form .form-btn-area.confirm-area .send-btn,
.form .form-btn-area.confirm-area .back-btn {
  margin-inline: 1.5rem;
}
@media screen and (max-width: 767px) {
  .form .form-btn-area.confirm-area .send-btn,
.form .form-btn-area.confirm-area .back-btn {
    margin-inline: 0;
  }
}
.form.confirm .form-group {
  padding-block: 3rem;
}
.form.confirm .form-group label {
  padding-top: 0;
}

/*------------------------------*/
/*------------------------------*/
.notfound-page {
  background-color: #fff;
}
.notfound-page .notfound-section {
  margin-top: 9rem;
  padding-block: 8rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .notfound-page .notfound-section {
    margin-top: 7rem;
    padding-block: 6rem;
  }
}
.notfound-page .notfound-eyebrow {
  font-size: 1.3rem;
  color: #9aa0a6;
  text-transform: uppercase;
}
.notfound-page .notfound-title {
  margin-top: 2rem;
  font-size: clamp(2.6rem, 5vw, 3.4rem);
  font-weight: 700;
  color: var(--black);
  line-height: 1.4;
}
.notfound-page .notfound-text {
  margin-top: 1.8rem;
  color: #5f6368;
  max-width: 640px;
  margin-inline: auto;
  text-align: center;
}
.notfound-page .notfound-btn {
  margin-top: 3rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1.2rem 3.2rem;
  font-size: 1.5rem;
  font-weight: 600;
  border-radius: 999px;
  background-color: var(--main);
  color: #fff;
  border: 1px solid var(--main);
  transition: background-color 0.2s, color 0.2s;
}
@media (hover: hover) and (pointer: fine) {
  .notfound-page .notfound-btn:hover {
    background-color: #fff;
    color: var(--main);
  }
}

/*------------------------------*/
.toTop {
  padding-block: 2rem 10rem;
}
@media screen and (max-width: 767px) {
  .toTop {
    padding-block: 2rem 6rem;
  }
}
.toTop .toTop-btn {
  background-color: var(--main);
  margin-inline: auto;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 600;
  border: 1px solid var(--main);
  cursor: pointer;
  width: 28rem;
  height: 6rem;
  display: grid;
  place-content: center;
  transition: background-color 0.1s, color 0.1s;
}
@media (hover: hover) and (pointer: fine) {
  .toTop .toTop-btn:hover {
    background-color: #fff;
    color: var(--main);
  }
}

/*------------------------------*/
.thanks {
  margin-block: 6rem;
}

/*------------------------------*/
body:has(.entry-page) .footer-recruitment {
  display: none;
}
body:has(.entry-page) .footer {
  border-top: 0.1rem solid #c4cbd2;
}
/*# sourceMappingURL=style.css.map */