@charset "UTF-8";
body {
  font-family: "Noto Sans JP", sans-serif;
  color: #34414E;
  font-feature-settings: "palt";
  letter-spacing: 0.03em;
  line-height: 1.75;
  background-color: #FBFBFB;
  overflow-x: hidden;
}

a[href^="tel:"] {
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  a[href^="tel:"] {
    pointer-events: auto;
  }
}

.u-pc {
  display: block;
}
@media screen and (max-width: 768px) {
  .u-pc {
    display: none;
  }
}

.u-sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .u-sp {
    display: block;
  }
}

html {
  font-size: 16px;
}
@media (max-width: 1280px) {
  html {
    font-size: 1.25vw;
  }
}
@media screen and (max-width: 768px) {
  html {
    font-size: 16px;
  }
}
@media (max-width: 375px) {
  html {
    font-size: 4.2666666667vw;
  }
}

.top-wrap {
  position: relative;
  z-index: 1;
}

.top-wrap::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  display: block;
  height: 100%;
  margin: auto;
  width: min(90rem, 89vw);
  border-left: 1px solid rgba(115, 137, 159, 0.2);
  border-right: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .top-wrap::before {
    width: calc(335 / 375 * 100vw);
  }
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

ul,
ol {
  padding: 0;
}

body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

html {
  scroll-behavior: smooth;
}

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
}

ul,
ol {
  list-style: none;
}

a:not([class]) {
  text-decoration-skip-ink: auto;
}

a {
  text-decoration: none;
}

img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
}

input,
button,
textarea,
select {
  font: inherit;
}

img:not([alt]) {
  filter: blur(10px);
}

input,
button,
select,
textarea {
  font: inherit;
  border: none;
  border-radius: 0;
  outline: none;
  background: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

textarea {
  resize: none;
}

input[type=checkbox],
input[type=radio] {
  display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

.header {
  position: fixed;
  z-index: 100;
  top: 0;
  right: 0;
  left: 0;
  height: max(90px, 110 / 1440 * 100vw);
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  background-color: #FBFBFB;
}
@media screen and (max-width: 768px) {
  .header {
    height: calc(60 / 375 * 100vw);
  }
}

.header__inner {
  padding: 0 calc(40 / 1440 * 100vw);
  height: inherit;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .header__inner {
    padding: 0 calc(20 / 375 * 100vw);
    align-items: center;
  }
}

.header__logo {
  max-width: calc(91 / 1440 * 100vw);
  width: 100%;
  height: inherit;
}
@media screen and (max-width: 768px) {
  .header__logo {
    max-width: calc(65 / 375 * 100vw);
  }
}

.header__logo a {
  height: inherit;
  display: flex;
  align-items: center;
}

.header__logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.header__nav {
  height: inherit;
  padding: calc(20 / 1440 * 100vw) 0;
}
@media screen and (max-width: 768px) {
  .header__nav {
    display: none;
  }
}

.header__nav-list {
  display: flex;
  align-items: baseline;
  justify-content: end;
}

.header__nav-list:nth-child(1) {
  height: 45%;
}

.header__nav-list:nth-child(2) {
  height: 50%;
}

.header__nav-item {
  height: 100%;
}

.header__nav-item a {
  padding: 0 calc(12 / 1440 * 100vw);
  height: 100%;
  display: flex;
  align-items: center;
  font-weight: 500;
  line-height: 1.75;
  color: #34414E;
  position: relative;
}

/* 採用ページ専用のヘッダー */
.header--recruit .header__nav-item a {
  color: #fff;
}

.header__nav-item a::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 1px;
  background-color: #E7352C;
  transition: width 0.3s ease;
}

.header__nav-item a:hover::after {
  width: 80%;
}

.header__nav-gtranslate a:hover::after,
.header__nav-item--contact a:hover::after {
  width: 0%;
}

.header__nav-list:nth-child(1) .header__nav-item a {
  font-size: 0.8125rem;
}

.header__nav-list:nth-child(2) .header__nav-item a {
  font-size: 0.9375rem;
}

/* 現在のページのリンクに適用するスタイル */
.header__nav-item a.active::after {
  width: 80%;
}

.header__nav-flex {
  display: flex;
  align-items: center;
  gap: calc(4 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .header__nav-flex {
    gap: calc(4 / 375 * 100vw);
  }
}

.header__nav-circle--pink,
.header__nav-circle--blue,
.header__nav-circle--green {
  width: calc(10 / 1440 * 100vw);
  height: calc(10 / 1440 * 100vw);
  border-radius: 50%;
}
@media screen and (max-width: 768px) {
  .header__nav-circle--pink,
  .header__nav-circle--blue,
  .header__nav-circle--green {
    display: block;
    width: calc(10 / 375 * 100vw);
    height: calc(10 / 375 * 100vw);
  }
}

.header__nav-circle--pink {
  background-color: #ff7e77;
}

.header__nav-circle--green {
  background-color: #79c5a8;
}

.header__nav-circle--blue {
  background-color: #5a9ad7;
}

.header__nav-new-tab {
  width: max(14px, 16 / 1440 * 100vw);
  height: max(14px, 16 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .header__nav-new-tab {
    width: calc(16 / 375 * 100vw);
    height: calc(16 / 375 * 100vw);
  }
}

.header__nav-item.header__nav-item--contact a {
  padding: calc(16 / 1440 * 100vw) calc(22 / 1440 * 100vw) calc(16 / 1440 * 100vw) calc(46 / 1440 * 100vw);
  position: relative;
  height: initial;
  color: #fff;
  background-color: #E7352C;
  border-radius: 999px;
  border: 1px solid #E7352C;
  line-height: 1;
  margin-left: calc(12 / 1440 * 100vw);
  transition: background-color 0.3s, color 0.3s;
}

.header__nav-item.header__nav-item--contact a:hover {
  background-color: #fff;
  color: #E7352C;
}

.header__nav-item.header__nav-item--contact a:hover::before {
  background-image: url(./../images/header_mail-red.svg);
}

.header__nav-item.header__nav-item--contact a::before {
  content: "";
  position: absolute;
  left: calc(22 / 1440 * 100vw);
  width: calc(16 / 1440 * 100vw);
  height: calc(16 / 1440 * 100vw);
  display: inline-block;
  background-image: url(./../images/header_mail.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transition: background-image 0.3s;
}

.header__hamburger {
  display: none;
}
@media screen and (max-width: 768px) {
  .header__hamburger {
    display: block;
    margin: 0;
    padding: 0;
    outline: none;
    border: none;
    position: relative;
    z-index: 999;
    width: calc(40 / 375 * 100vw);
    height: calc(40 / 375 * 100vw);
    background-color: #34414E;
    cursor: pointer;
    transition: 0.3s;
  }
}

.header__hamburger.is-open {
  background-color: transparent;
}

.header__hamburger span {
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  width: calc(20 / 375 * 100vw);
  height: 1px;
  background-color: #fff;
  transition: 0.5s;
}

.header__hamburger span:nth-of-type(1) {
  top: calc(-4 / 375 * 100vw);
}

.header__hamburger span:nth-of-type(2) {
  top: calc(4 / 375 * 100vw);
}

.header__hamburger.is-open span:nth-of-type(1) {
  top: 0;
  transform: translateX(-50%) rotate(45deg);
}

.header__hamburger.is-open span:nth-of-type(2) {
  top: calc(-1 / 375 * 100vw);
  transform: translateX(-50%) rotate(-45deg);
}

.header__drawer {
  padding: calc(40 / 375 * 100vw) 0 calc(100 / 375 * 100vw);
  display: none;
  position: absolute;
  z-index: 100;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100dvh;
  background-color: #34414E;
  overflow-y: scroll;
  scrollbar-width: none;
}

.header__drawer::-webkit-scrollbar {
  display: none;
}

.header__drawer-gtranslate {
  margin-left: auto;
  padding-right: calc(20 / 375 * 100vw);
  display: none;
}
@media screen and (max-width: 768px) {
  .header__drawer-gtranslate {
    display: block;
  }
}

.header__drawer-gtranslate a {
  color: #34414E;
  font-size: calc(15 / 375 * 100vw);
}

.header__drawer-nav {
  margin: auto;
  width: 100%;
  padding-inline: calc(40 / 375 * 100vw);
}

.header__drawer-item a,
.header__drawer-column a {
  display: block;
  font-size: calc(15 / 375 * 100vw);
  font-weight: 500;
  line-height: 1.75;
  color: #fff;
}

.header__drawer-item a {
  padding: calc(20 / 375 * 100vw) 0;
  border-bottom: 1px solid #fff;
}

.header__drawer-list {
  margin-top: calc(25 / 375 * 100vw);
}

.header__drawer-column a {
  display: flex;
  align-items: center;
  gap: calc(4 / 375 * 100vw);
  padding: calc(15 / 375 * 100vw) 0;
}

.header__drawer-contact {
  margin-top: calc(25 / 375 * 100vw);
}

.header__drawer-contact a {
  color: #34414E;
  line-height: 1;
  font-size: calc(15 / 375 * 100vw);
  font-weight: 500;
  width: 100%;
  max-width: 100%;
  padding: calc(16 / 375 * 100vw);
  display: block;
  background-color: #fff;
  text-align: center;
  position: relative;
}

.header__drawer-contact a::before {
  content: "";
  position: absolute;
  left: calc(80 / 375 * 100vw);
  width: calc(16 / 375 * 100vw);
  height: calc(16 / 375 * 100vw);
  display: inline-block;
  background-image: url(./../images/header_mail-black.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.gtranslate_wrapper {
  display: flex;
  margin-left: calc(28 / 1440 * 100vw);
  flex-direction: row-reverse;
}

.gtranslate_wrapper a.glink:nth-child(2) {
  padding: 0 calc(20 / 1440 * 100vw) 0 0;
}

.gtranslate_wrapper a.glink:nth-child(1) {
  padding: 0 0 0 calc(20 / 1440 * 100vw);
  border-left: 1px solid rgba(115, 137, 159, 0.2);
}

.gtranslate_wrapper a.glink img {
  display: none;
}

.gtranslate_wrapper a:nth-child(1).glink {
  margin-right: calc(20 / 1440 * 100vw);
}

.header-recruit {
  position: fixed;
  z-index: 100;
  top: 0;
  right: 0;
  left: 0;
  height: 6.25rem;
  background: linear-gradient(180deg, rgba(52, 65, 78, 0.6) 0%, rgba(52, 65, 78, 0) 76.5%);
}
@media screen and (max-width: 768px) {
  .header-recruit {
    height: 3.75rem;
  }
}

.header-recruit.is-under {
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(10px);
}

.header-recruit__inner {
  height: inherit;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .header-recruit__inner {
    align-items: center;
    padding-right: 1rem;
  }
}

.header-recruit__logo {
  height: inherit;
  width: 16.5625rem;
  height: 8.75rem;
  background-color: #fff;
  border-radius: 0 0 3.125rem 0;
  padding-left: 1.875rem;
}
@media screen and (max-width: 768px) {
  .header-recruit__logo {
    padding-left: 0.9375rem;
    padding-block: 0.625rem;
    width: 11.25rem;
    height: 6.25rem;
    border-radius: 0 0 1.875rem 0;
  }
}

.header-recruit__logo a {
  width: 100%;
  max-width: 12.5rem;
  height: inherit;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .header-recruit__logo a {
    max-width: 8.75rem;
  }
}

.header-recruit__logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.header-recruit__nav {
  height: inherit;
}
@media screen and (max-width: 768px) {
  .header-recruit__nav {
    display: none;
  }
}

.header-recruit__nav-list {
  display: flex;
  align-items: baseline;
  justify-content: end;
}

.header-recruit__nav-item {
  height: 100%;
}

.header-recruit__nav-item a {
  padding: 0 1.125rem;
  height: 100%;
  display: flex;
  align-items: center;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  position: relative;
  font-size: 1rem;
  transition: color 0.3s;
}

.header-recruit__nav-item a:hover {
  color: #E7352C;
}

.header-recruit.is-under .header-recruit__nav-item a {
  color: #34414E;
}

.header-recruit__nav-item.header-recruit__nav-item--contact {
  display: flex;
}

.header-recruit__nav-item.header-recruit__nav-item--contact a {
  padding: 1.625rem;
  position: relative;
  height: 6.25rem;
  color: #fff;
  line-height: 1;
  transition: background-color 0.3s, color 0.3s;
  width: 7.5rem;
}

.header-recruit.is-under .header-recruit__nav-item.header-recruit__nav-item--contact a {
  color: #fff;
}

.header-recruit__nav-item.header-recruit__nav-item--contact a:nth-child(1) {
  background-color: #E7352C;
  border-radius: 0 0 0 0.5rem;
  margin-left: 3.5rem;
}

.header-recruit__nav-item.header-recruit__nav-item--contact a:nth-child(2) {
  background-color: #34414E;
}

.header-recruit__nav-item.header-recruit__nav-item--contact a:nth-child(1):hover {
  background-color: #e90b00;
}

.header-recruit__nav-item.header-recruit__nav-item--contact a:nth-child(2):hover {
  background-color: #274665;
}

.header-recruit__hamburger {
  display: none;
}
@media screen and (max-width: 768px) {
  .header-recruit__hamburger {
    display: block;
    margin: 0;
    padding: 0;
    outline: none;
    border: none;
    position: relative;
    z-index: 999;
    width: 3.75rem;
    height: 2.5rem;
    border-radius: 0.25rem;
    background-color: #fff;
    cursor: pointer;
    transition: 0.3s;
  }
}

.header-recruit__hamburger.is-open {
  background-color: transparent;
}

.header-recruit__hamburger span {
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  width: 2.5rem;
  height: 0.125rem;
  background-color: #34414E;
  transition: 0.5s;
}

.header-recruit__hamburger.is-open span {
  background-color: #fff;
}

.header-recruit__hamburger span:nth-of-type(1) {
  top: -0.25rem;
}

.header-recruit__hamburger span:nth-of-type(2) {
  top: 0.25rem;
}

.header-recruit__hamburger.is-open span:nth-of-type(1) {
  top: 0;
  transform: translateX(-50%) rotate(45deg);
}

.header-recruit__hamburger.is-open span:nth-of-type(2) {
  top: -0.0625rem;
  transform: translateX(-50%) rotate(-45deg);
}

.header-recruit__drawer {
  padding: 2.5rem 0 6.25rem;
  display: none;
  position: absolute;
  z-index: 100;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100dvh;
  background-color: #526170;
  overflow-y: scroll;
  scrollbar-width: none;
}

.header-recruit__drawer::-webkit-scrollbar {
  display: none;
}

.header-recruit__drawer-nav {
  margin: auto;
  width: 100%;
  padding-inline: 2.5rem;
}

.header-recruit__drawer-item a {
  display: block;
  font-size: 0.9375rem;
  font-weight: 500;
  line-height: 1.75;
  color: #fff;
}

.header-recruit__drawer-item a {
  padding: 1.25rem 0;
  border-bottom: 1px solid #fff;
}

.header-recruit__drawer-list {
  margin-top: 1.5625rem;
}

.header-recruit__drawer-item--contact {
  margin-top: 1.75rem;
}

.header-recruit__drawer-item--contact a {
  color: #fff;
  line-height: 1;
  font-size: 1rem;
  font-weight: 500;
  width: 100%;
  max-width: 100%;
  padding: 1.25rem;
  display: block;
  text-align: center;
  border-radius: 0.5rem;
}

.header-recruit__drawer-item--contact a + a {
  margin-top: 1.25rem;
}

.header-recruit__drawer-item--contact a:nth-child(1) {
  background-color: #E7352C;
}

.header-recruit__drawer-item--contact a:nth-child(2) {
  background-color: #34414E;
}

.footer {
  padding: calc(100 / 1440 * 100vw) 0 calc(80 / 1440 * 100vw);
  background-color: #34414E;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .footer {
    padding: calc(60 / 375 * 100vw) 0 calc(30 / 375 * 100vw);
  }
}

.footer__top {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-bottom: calc(80 / 1440 * 100vw);
  position: relative;
}
@media screen and (max-width: 768px) {
  .footer__top {
    padding-bottom: calc(50 / 375 * 100vw);
  }
}

.footer__top::after {
  content: "";
  position: absolute;
  display: block;
  width: 100vw;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.2);
  bottom: 0;
  left: 0;
  margin-left: calc(50% - 50vw);
}

.footer__logo {
  max-width: calc(216 / 1440 * 100vw);
  width: 100%;
  aspect-ratio: 216/28;
  height: auto;
  margin-inline: auto;
  display: block;
}
@media screen and (max-width: 768px) {
  .footer__logo {
    max-width: calc(216 / 375 * 100vw);
  }
}

.footer__logo img {
  object-fit: cover;
}

.footer__nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .footer__nav {
    flex-direction: column;
    gap: calc(30 / 375 * 100vw);
    align-items: baseline;
  }
}

.footer__nav + .footer__nav {
  margin-top: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .footer__nav + .footer__nav {
    margin-top: 0;
  }
}

@media screen and (max-width: 768px) {
  .footer__nav:nth-child(1) {
    margin-top: calc(40 / 375 * 100vw);
  }
}

@media screen and (max-width: 768px) {
  .footer__nav:nth-child(3) {
    margin-top: calc(30 / 375 * 100vw);
  }
}

@media screen and (max-width: 768px) {
  .footer__nav:nth-child(2) {
    order: -1;
  }
}

.footer__nav-list a {
  color: #fff;
  font-size: 1.125rem;
  font-weight: 500;
  transition: color 0.3s;
}
@media screen and (max-width: 768px) {
  .footer__nav-list a {
    font-size: calc(16 / 375 * 100vw);
  }
}

@media (hover: hover) {
  .footer__nav-list a:hover {
    color: #E7352C;
  }
}
.footer__under {
  margin-top: calc(30 / 1440 * 100vw);
  display: flex;
  align-items: center;
  justify-content: space-around;
}
@media screen and (max-width: 768px) {
  .footer__under {
    margin-top: calc(30 / 375 * 100vw);
    flex-direction: column;
    gap: calc(20 / 375 * 100vw);
  }
}

.footer__policy {
  display: flex;
  gap: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .footer__policy {
    flex-wrap: wrap;
    row-gap: calc(20 / 375 * 100vw);
    column-gap: calc(60 / 375 * 100vw);
  }
}

.footer__policy-list a,
.footer__copy {
  color: #fff;
  font-weight: 500;
}

@media (hover: hover) {
  .footer__policy-list a:hover {
    color: #E7352C;
  }
}
.footer__policy-list a {
  font-size: 0.875rem;
  transition: color 0.3s;
}
@media screen and (max-width: 768px) {
  .footer__policy-list a {
    font-size: calc(14 / 375 * 100vw);
  }
}

.footer__copy {
  font-size: 0.75rem;
  display: block;
}
@media screen and (max-width: 768px) {
  .footer__copy {
    font-size: calc(12 / 375 * 100vw);
    margin-top: calc(20 / 375 * 100vw);
  }
}

.footer__sns {
  display: flex;
  gap: calc(12 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .footer__sns {
    gap: calc(12 / 375 * 100vw);
    margin-inline: auto;
  }
}

.footer__sns-link {
  max-width: max(30px, 40 / 1440 * 100vw);
  width: 100%;
  height: auto;
  aspect-ratio: 40/40;
  transition: opacity 0.3s;
}
@media screen and (max-width: 768px) {
  .footer__sns-link {
    max-width: calc(40 / 375 * 100vw);
  }
}

@media (hover: hover) {
  .footer__sns-link:hover {
    opacity: 0.7;
  }
}
.footer__sns-link img {
  object-fit: cover;
}

.footer-recruit {
  background-color: #34414E;
}

.footer-recruit__inner {
  padding: 5rem 0 6.25rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .footer-recruit__inner {
    flex-direction: column;
    padding: 3.125rem 0 3.75rem;
  }
}

.footer-recruit__logo {
  max-width: 19.5rem;
  width: 100%;
  height: auto;
  aspect-ratio: 312/28;
}

.footer-recruit__logo img {
  object-fit: contain;
}

.footer-recruit__btn {
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .footer-recruit__btn {
    margin-top: 1rem;
  }
}

.footer-recruit__right {
  display: flex;
  flex-wrap: wrap;
  gap: 5rem;
}
@media screen and (max-width: 768px) {
  .footer-recruit__right {
    margin-top: 2.5rem;
    gap: 2.5rem;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(9.125rem, 1fr));
    width: inherit;
  }
}

.footer-recruit__list:nth-child(2) {
  margin-top: 0.75rem;
}

.footer-recruit__list:nth-child(n+3) {
  margin-top: 0.5rem;
}

.footer-recruit__link {
  color: #fff;
  line-height: 1.5;
  font-size: 1rem;
  font-weight: 400;
  transition: color 0.3s;
}

.footer-recruit__link:hover {
  color: #E7352C;
}

.footer-recruit__link-top {
  font-size: 1.125rem;
  font-weight: 700;
}

.footer-recruit__copy {
  background: linear-gradient(0deg, rgba(242, 248, 255, 0.47) 0%, rgba(242, 248, 255, 0.47) 100%), url(./../images/recruit-texture.webp) lightgray 0% 0%/50px 50px repeat;
  width: 100%;
  height: 100%;
  font-size: 0.75rem;
  font-family: "Outfit", sans-serif;
  line-height: 1.5;
  text-align: center;
  padding: 0.625rem;
  display: block;
}

.inner {
  padding-inline: calc(80 / 1440 * 100vw);
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  max-width: 100rem;
}
@media screen and (max-width: 768px) {
  .inner {
    padding-right: calc(24 / 375 * 100vw);
    padding-left: calc(24 / 375 * 100vw);
  }
}

.recruit-inner {
  max-width: 1440px;
  padding-right: 80px;
  padding-left: 80px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  .recruit-inner {
    padding-right: 20px;
    padding-left: 20px;
  }
}

.section-title {
  display: flex;
  flex-direction: column;
  gap: calc(12 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .section-title {
    gap: calc(12 / 375 * 100vw);
  }
}

.section-title--jp {
  font-weight: 700;
  font-size: 1rem;
  line-height: 1;
  color: #E7352C;
}
@media screen and (max-width: 768px) {
  .section-title--jp {
    font-size: calc(16 / 375 * 100vw);
  }
}

.section-title--en {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  line-height: 1;
}

.section-title--en::first-letter {
  text-transform: capitalize;
}

.section-title--en span:first-child {
  text-transform: capitalize;
}

.section-title--en.section-title--en-small {
  font-size: 3.125rem;
}
@media screen and (max-width: 768px) {
  .section-title--en.section-title--en-small {
    font-size: calc(44 / 375 * 100vw);
  }
}

.section-title--en.section-title--en-small2 {
  font-size: 2.5rem;
}
@media screen and (max-width: 768px) {
  .section-title--en.section-title--en-small2 {
    font-size: calc(32 / 375 * 100vw);
  }
}

.section-title--en {
  font-size: 5rem;
}
@media screen and (max-width: 768px) {
  .section-title--en {
    font-size: calc(50 / 375 * 100vw);
  }
}

.section-title--all {
  text-transform: uppercase;
}

.section-title--en-white {
  color: #fff;
}

.section-title--jp-white {
  color: #fff;
}

.section-btn,
.section-btn-new {
  padding: calc(18 / 1440 * 100vw) calc(80 / 1440 * 100vw) calc(18 / 1440 * 100vw) calc(56 / 1440 * 100vw);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  color: #34414E;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  border: 1px solid #34414E;
  border-radius: calc(30 / 1440 * 100vw);
  position: relative;
  transition: background-color 0.3s, color 0.3s, padding 0.3s;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .section-btn,
  .section-btn-new {
    padding: calc(18 / 375 * 100vw) calc(78 / 375 * 100vw) calc(18 / 375 * 100vw) calc(56 / 375 * 100vw);
    font-size: calc(16 / 375 * 100vw);
    border-radius: calc(30 / 375 * 100vw);
  }
}

.section-btn {
  max-width: max(180px, 230 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .section-btn {
    max-width: calc(230 / 375 * 100vw);
  }
}

.section-btn::before,
.section-btn::after {
  content: "";
  position: absolute;
  width: max(16px, 18 / 1440 * 100vw);
  height: max(16px, 18 / 1440 * 100vw);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transition: transform 0.3s ease, opacity 0.3s ease;
}
@media screen and (max-width: 768px) {
  .section-btn::before,
  .section-btn::after {
    width: calc(18 / 375 * 100vw);
    height: calc(18 / 375 * 100vw);
  }
}

.section-btn::before {
  background-image: url(./../images/arrow_white.svg);
  left: calc(20 / 1440 * 100vw);
  opacity: 0;
}

.section-btn::after {
  background-image: url(./../images/arrow.svg);
  right: calc(30 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .section-btn::after {
    right: calc(30 / 375 * 100vw);
  }
}

@media (hover: hover) {
  .section-btn:hover,
  .section-btn-new:hover {
    background-color: #34414E;
    color: #fff;
  }
  .section-btn:hover {
    padding: calc(18 / 1440 * 100vw) calc(56 / 1440 * 100vw) calc(18 / 1440 * 100vw) calc(80 / 1440 * 100vw);
  }
  .section-btn:hover::after {
    transform: translateX(calc(10 / 1440 * 100vw));
  }
  .section-btn:hover::before {
    transform: translateX(calc(10 / 1440 * 100vw));
    opacity: 1;
  }
  .section-btn-new:hover::before {
    background-image: url(./../images/new_tab_white.svg);
  }
  .top-company__btn.section-btn:hover {
    background-color: #34414E;
  }
  .sustainability-materiality__btn.section-btn:hover {
    background-color: #34414E;
  }
}
.section-btn-new {
  max-width: max(280px, 300 / 1440 * 100vw);
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .section-btn-new {
    max-width: calc(294 / 375 * 100vw);
  }
}

.section-btn-new::before {
  content: "";
  display: block;
  position: absolute;
  width: max(14px, 16 / 1440 * 100vw);
  height: max(14px, 16 / 1440 * 100vw);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transition: transform 0.3s ease;
  background-image: url(./../images/new_tab.svg);
  right: calc(54 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .section-btn-new::before {
    width: calc(16 / 375 * 100vw);
    height: calc(16 / 375 * 100vw);
    right: calc(54 / 375 * 100vw);
  }
}

@media screen and (max-width: 768px) {
  .top-business__btn.u-pc,
  .top-company__btn.u-pc,
  .top-group__btn.u-pc,
  .ir-presentations__btn.u-pc,
  .ir-news__btn.u-pc {
    display: none;
  }
}

.top-business__btn.u-sp,
.top-company__btn.u-sp,
.top-group__btn.u-sp,
.ir-presentations__btn.u-sp,
.ir-news__btn.u-sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .top-business__btn.u-sp,
  .top-company__btn.u-sp,
  .top-group__btn.u-sp,
  .ir-presentations__btn.u-sp,
  .ir-news__btn.u-sp {
    display: block;
  }
}

.top-company__btn.section-btn {
  background-color: #fff;
}

.sustainability-materiality__btn.section-btn {
  background-color: #fff;
  margin-inline: auto;
  max-width: calc(354 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .sustainability-materiality__btn.section-btn {
    max-width: calc(330 / 375 * 100vw);
  }
}

.top-company__btn {
  margin-top: calc(80 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .top-company__btn {
    margin-top: calc(12 / 375 * 100vw);
    margin-inline: auto;
  }
}

@media screen and (max-width: 768px) {
  .top-group__btn {
    margin-top: calc(40 / 375 * 100vw);
    margin-inline: auto;
  }
}

.breadcrumb {
  padding-top: max(110px, 130 / 1440 * 100vw);
  font-size: 0.75rem;
  font-weight: 400;
  padding-bottom: calc(20 / 1440 * 100vw);
  background-color: #FBFBFB;
}
@media screen and (max-width: 768px) {
  .breadcrumb {
    padding-top: calc(80 / 375 * 100vw);
    font-size: calc(12 / 375 * 100vw);
    padding-bottom: calc(16 / 375 * 100vw);
  }
}

.breadcrumb .home {
  margin-right: calc(8 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .breadcrumb .home {
    margin-right: calc(8 / 375 * 100vw);
  }
}

.breadcrumb span + span {
  margin-left: calc(8 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .breadcrumb span + span {
    margin-left: calc(8 / 375 * 100vw);
  }
}

.breadcrumb a {
  color: #34414E;
}

.breadcrumb span:last-child span {
  font-weight: 500;
}

.common-under {
  padding: calc(60 / 1440 * 100vw) 0;
  border-top: 1px solid rgba(115, 137, 159, 0.2);
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  background-color: #FBFBFB;
}
@media screen and (max-width: 768px) {
  .common-under {
    padding: calc(40 / 375 * 100vw) 0;
  }
}

.common-under__title-jp {
  font-weight: 700;
  font-size: 1rem;
  line-height: 1;
  color: #E7352C;
}
@media screen and (max-width: 768px) {
  .common-under__title-jp {
    font-size: calc(16 / 375 * 100vw);
  }
}

.common-under__title-en {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 5rem;
  margin-top: calc(12 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .common-under__title-en {
    font-size: calc(50 / 375 * 100vw);
    margin-top: calc(12 / 375 * 100vw);
  }
}

.common-under__title-en span:first-child {
  text-transform: capitalize;
}

.common-under__img {
  width: 100%;
  height: auto;
  aspect-ratio: 1280/450;
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .common-under__img {
    margin-top: calc(32 / 375 * 100vw);
    aspect-ratio: 335/200;
  }
}

.common-under__img img {
  object-fit: cover;
  object-position: 50% 85%;
}
@media screen and (max-width: 768px) {
  .common-under__img img {
    object-position: 33% 50%;
  }
}

@media screen and (max-width: 768px) {
  .sidebar {
    margin-top: calc(40 / 375 * 100vw);
  }
}

.sidebar__link {
  padding: calc(28 / 1440 * 100vw) calc(16 / 1440 * 100vw);
  width: clamp(180px, 260 / 1440 * 100vw, 60%);
  color: #34414E;
  font-size: 1rem;
  line-height: 1;
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  display: block;
  position: relative;
}
@media screen and (max-width: 768px) {
  .sidebar__link {
    padding: calc(20 / 375 * 100vw) calc(10 / 375 * 100vw);
    width: calc(260 / 375 * 100vw);
    font-size: calc(14 / 375 * 100vw);
  }
}

.sidebar__list:first-child .sidebar__link {
  font-weight: 500;
  font-size: 1.25rem;
}
@media screen and (max-width: 768px) {
  .sidebar__list:first-child .sidebar__link {
    font-size: calc(18 / 375 * 100vw);
  }
}

.sidebar_circle {
  width: calc(10 / 1440 * 100vw);
  height: calc(10 / 1440 * 100vw);
  border-radius: 50%;
  background-color: #E7352C;
  display: block;
}
@media screen and (max-width: 768px) {
  .sidebar_circle {
    width: calc(10 / 375 * 100vw);
    height: calc(10 / 375 * 100vw);
  }
}

.accordion-content {
  display: none;
}

/* 矢印 */
.accordion-title {
  position: relative;
  display: flex;
  align-items: center;
  gap: calc(10 / 1440 * 100vw);
  font-weight: 500;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .accordion-title {
    gap: calc(10 / 375 * 100vw);
  }
}

.accordion-title::before {
  border-right: solid 1px #34414E;
  border-top: solid 1px #34414E;
  content: "";
  display: block;
  width: calc(8 / 1440 * 100vw);
  height: calc(8 / 1440 * 100vw);
  position: absolute;
  right: calc(16 / 1440 * 100vw);
  top: 38%;
  transform: rotate(135deg);
  transition: transform 0.3s ease-in-out, top 0.3s ease-in-out;
}
@media screen and (max-width: 768px) {
  .accordion-title::before {
    width: calc(8 / 375 * 100vw);
    height: calc(8 / 375 * 100vw);
    right: calc(16 / 375 * 100vw);
  }
}

.accordion-title.open::before {
  top: 45%;
  transform: rotate(-45deg);
}

/* 現在のページのリンクに適用するスタイル */
.sidebar__link::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background-color: #E7352C;
  transition: width 0.3s ease;
}

.sidebar__link.active::after {
  width: 100%;
}

.sidebar__year {
  padding: calc(28 / 1440 * 100vw) calc(16 / 1440 * 100vw);
  width: max(180px, 260 / 1440 * 100vw);
  color: #34414E;
  font-size: 1rem;
  line-height: 1;
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  display: block;
  position: relative;
}
@media screen and (max-width: 768px) {
  .sidebar__year {
    padding: calc(20 / 375 * 100vw) calc(10 / 375 * 100vw);
    width: calc(260 / 375 * 100vw);
    font-size: calc(14 / 375 * 100vw);
  }
}

.under-btn {
  display: flex;
  align-items: center;
  gap: calc(28 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .under-btn {
    gap: calc(28 / 375 * 100vw);
  }
}

.under-btn span {
  color: #34414E;
  font-size: 1rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .under-btn span {
    font-size: calc(16 / 375 * 100vw);
  }
}

.under-btn-circle {
  width: calc(30 / 1440 * 100vw);
  height: calc(30 / 1440 * 100vw);
  border-radius: 50%;
  background-color: #34414E;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s;
}
@media screen and (max-width: 768px) {
  .under-btn-circle {
    width: calc(30 / 375 * 100vw);
    height: calc(30 / 375 * 100vw);
  }
}

.under-btn-circle--red {
  background-color: #E7352C;
}

.under-btn-circle--white {
  background-color: #fff;
  width: calc(60 / 1440 * 100vw);
  height: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .under-btn-circle--white {
    width: calc(40 / 375 * 100vw);
    height: calc(40 / 375 * 100vw);
  }
}

.under-btn-circle.under-btn-circle--white img {
  width: calc(24 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .under-btn-circle.under-btn-circle--white img {
    width: calc(20 / 375 * 100vw);
  }
}

@media (hover: hover) {
  .under-btn:hover .under-btn-circle {
    transform: translateX(10px);
  }
}
.under-btn-circle img {
  aspect-ratio: 12/12;
  width: calc(12 / 1440 * 100vw);
  height: auto;
  object-fit: cover;
}
@media screen and (max-width: 768px) {
  .under-btn-circle img {
    width: calc(12 / 375 * 100vw);
  }
}

.under-section {
  padding: calc(80 / 1440 * 100vw) 0 calc(80 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .under-section {
    padding: calc(24 / 375 * 100vw) 0 calc(40 / 375 * 100vw);
  }
}

.under-section__flex {
  display: grid;
  grid-template-columns: 1fr clamp(400px, 823 / 1440 * 100vw, 65%);
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .under-section__flex {
    display: flex;
    flex-direction: column-reverse;
  }
}

.under-section__body {
  padding-right: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .under-section__body {
    padding-inline: calc(10 / 375 * 100vw);
  }
}

.under-h2 {
  font-size: 2.5rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .under-h2 {
    font-size: calc(28 / 375 * 100vw);
  }
}

.under-h3 {
  font-size: 1.75rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .under-h3 {
    font-size: calc(22 / 375 * 100vw);
  }
}

.under-text,
.under-text p {
  font-size: 1rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .under-text,
  .under-text p {
    font-size: calc(16 / 375 * 100vw);
  }
}

.under-text p + p {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .under-text p + p {
    margin-top: calc(16 / 375 * 100vw);
  }
}

.under-head {
  position: relative;
  padding-bottom: calc(10 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .under-head {
    padding-bottom: calc(10 / 375 * 100vw);
  }
}

.under-head::after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  left: 0;
  bottom: 0;
  background: linear-gradient(to right, #e7352c 0%, #e7352c 100px, rgba(85, 94, 117, 0.2) 100px, rgba(85, 94, 117, 0.2) 100%);
}
@media screen and (max-width: 768px) {
  .under-head::after {
    background: linear-gradient(to right, #e7352c 0%, #e7352c 60px, rgba(85, 94, 117, 0.2) 60px, rgba(85, 94, 117, 0.2) 100%);
  }
}

.under-head__flex {
  display: flex;
  align-items: center;
  gap: calc(10 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .under-head__flex {
    gap: calc(10 / 375 * 100vw);
  }
}

.under-head--en {
  text-transform: capitalize;
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  font-size: 1.75rem;
}
@media screen and (max-width: 768px) {
  .under-head--en {
    font-size: calc(24 / 375 * 100vw);
  }
}

.under-head--kana {
  font-size: 0.75rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .under-head--kana {
    font-size: calc(12 / 375 * 100vw);
  }
}

.under-head__text {
  margin-top: calc(20 / 1440 * 100vw);
  font-size: 1rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .under-head__text {
    margin-top: calc(20 / 375 * 100vw);
    font-size: calc(16 / 375 * 100vw);
  }
}

.under-head__text-dot {
  padding-left: calc(10 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .under-head__text-dot {
    padding-left: calc(10 / 375 * 100vw);
  }
}

.under-head__text span {
  position: relative;
}

.under-head__text span::before {
  content: "";
  position: absolute;
  width: calc(4 / 1440 * 100vw);
  height: calc(4 / 1440 * 100vw);
  border-radius: 50%;
  background-color: #34414E;
  display: block;
  top: 50%;
  transform: translateY(-50%);
  left: calc(-10 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .under-head__text span::before {
    width: calc(4 / 375 * 100vw);
    height: calc(4 / 375 * 100vw);
    left: calc(-10 / 375 * 100vw);
  }
}

.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .pagination {
    row-gap: 0.9375rem;
    flex-wrap: wrap;
    gap: 1.5rem;
  }
}

.pagination .page-link,
.pagination .current-page {
  color: #34414E;
  font-size: 1rem;
  font-weight: 700;
  padding-inline: 1.25rem;
}
@media screen and (max-width: 768px) {
  .pagination .page-link,
  .pagination .current-page {
    padding-inline: 0.75rem;
  }
}

.pagination .page-link {
  opacity: 0.5;
}

.pagination .dots {
  color: #E7352C;
  font-size: 2.125rem;
}
@media screen and (max-width: 768px) {
  .pagination .dots {
    font-size: 1.25rem;
  }
}

.page-arrow {
  display: flex;
  align-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background-color: #e2ebf5;
  position: relative;
}
@media screen and (max-width: 768px) {
  .page-arrow {
    width: 1.75rem;
    height: 1.75rem;
  }
}

.page-arrow::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(./../images/recruit-arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 0.875rem;
  height: 0.875rem;
  right: 0.5625rem;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .page-arrow::after {
    width: 0.75rem;
    height: 0.75rem;
  }
}

.page-arrow.next {
  margin-left: 1.25rem;
}
@media screen and (max-width: 768px) {
  .page-arrow.next {
    margin-left: 0.75rem;
  }
}

.page-arrow.prev {
  transform: rotate(180deg);
  margin-right: 1.25rem;
}
@media screen and (max-width: 768px) {
  .page-arrow.prev {
    margin-right: 0.75rem;
  }
}

.top-fv {
  padding-top: max(100px, 160 / 1440 * 100vw);
  background-color: #FBFBFB;
}
@media screen and (max-width: 768px) {
  .top-fv {
    padding-top: calc(100 / 375 * 100vw);
  }
}

.top-fv__title {
  padding-left: calc(140 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .top-fv__title {
    padding-left: calc(20 / 375 * 100vw);
  }
}

.top-fv__title--en {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  font-size: 6rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .top-fv__title--en {
    font-size: calc(50 / 375 * 100vw);
  }
}

/* 初期設定 */
.animated-title span {
  display: inline-block;
  opacity: 0; /* 初期状態で透明 */
  transform: translateY(5px); /* 下から表示 */
  animation: fadeToBlack 0.8s ease forwards, fadeToRed 0.8s ease 0.8s forwards, backToBlack 3.5s ease 1.6s forwards;
  animation-play-state: paused; /* 初期状態で停止 */
  animation-delay: 0s; /* 遅延はJSで設定 */
}

.animated-title p {
  display: inline-block;
  opacity: 0; /* 初期状態で透明 */
  transform: translateY(5px); /* 下から表示 */
  animation: fadeToBlack 0.8s ease forwards, fadeToRed 0.8s ease 0.8s forwards, backToBlack 3.5s ease 1.6s forwards;
  animation-play-state: paused; /* 初期状態で停止 */
  animation-delay: 0s; /* 遅延はJSで設定 */
}

/* 下からフェードインして黒に変化 */
@keyframes fadeToBlack {
  0% {
    opacity: 0;
    transform: translateY(10px);
    color: transparent;
  }
  100% {
    opacity: 1;
    transform: translateY(0); /* 元の位置に */
    color: #34414e; /* 黒色 */
  }
}
/* 赤から白に変化 */
@keyframes backToWhite {
  0% {
    color: #e7352c; /* 赤色 */
  }
  100% {
    color: #fff; /* 白色 */
  }
}
/* 黒から赤に変化 */
@keyframes fadeToRed {
  0% {
    color: #34414e; /* 黒色 */
  }
  100% {
    color: #e7352c; /* 赤色 */
  }
}
/* 赤から黒に戻る */
@keyframes backToBlack {
  0% {
    color: #e7352c; /* 赤色 */
  }
  100% {
    color: #34414e; /* 黒色 */
  }
}
.top-fv__title--jp {
  font-weight: 700;
  font-size: 2rem;
  margin-top: calc(12 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .top-fv__title--jp {
    font-size: calc(16 / 375 * 100vw);
    margin-top: calc(6 / 375 * 100vw);
  }
}

.top-fv__video {
  margin-top: calc(20 / 1440 * 100vw);
  width: 100%;
  max-width: 100%;
  height: auto;
  overflow: hidden;
  position: relative;
  aspect-ratio: 1440/750;
}
@media screen and (max-width: 768px) {
  .top-fv__video {
    margin-top: calc(28 / 375 * 100vw);
    aspect-ratio: 375/210;
  }
}

.top-fv__video::before {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(46, 52, 66, 0.3);
  mix-blend-mode: multiply;
}

.top-fv__video video {
  width: 100%;
  height: auto;
}

.top-fv__video img {
  object-fit: cover;
}

.top-pick-up {
  padding-top: calc(80 / 1440 * 100vw);
  padding-bottom: calc(100 / 1440 * 100vw);
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .top-pick-up {
    padding-top: calc(48 / 375 * 100vw);
    padding-bottom: calc(32 / 375 * 100vw);
  }
}

.top-pick-up__inner {
  position: relative;
}

.top-pick-up__container {
  margin-top: calc(48 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .top-pick-up__container {
    margin-top: calc(28 / 375 * 100vw);
  }
}

.top-pick-up__image {
  overflow: hidden;
  border-radius: calc(8 / 1440 * 100vw) calc(8 / 1440 * 100vw) 0 0;
  transition: border-radius 0.3s;
}
@media screen and (max-width: 768px) {
  .top-pick-up__image {
    border-radius: calc(8 / 375 * 100vw) calc(8 / 375 * 100vw) 0 0;
  }
}

.top-pick-up-swiper .swiper-slide img {
  object-fit: cover;
  transition: transform 0.3s;
}

.top-pick-up .swiper-button-prev,
.top-pick-up .swiper-button-next {
  color: #34414E;
  width: calc(60 / 1440 * 100vw);
  height: calc(60 / 1440 * 100vw);
  border-radius: 50%;
  border: 1px solid #34414E;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  top: calc(32 / 1440 * 100vw);
  transition: background-color 0.3s;
}
@media screen and (max-width: 768px) {
  .top-pick-up .swiper-button-prev,
  .top-pick-up .swiper-button-next {
    width: calc(50 / 375 * 100vw);
    height: calc(50 / 375 * 100vw);
    top: min(5rem, 12vw);
  }
}

@media (hover: hover) {
  .top-pick-up .swiper-button-prev:hover,
  .top-pick-up .swiper-button-next:hover {
    background-color: #34414E;
  }
  .top-pick-up .swiper-button-prev:hover::before,
  .top-pick-up .swiper-button-next:hover::before {
    background-image: url(./../images/arrow_white.svg);
  }
}
.top-pick-up .swiper-button-prev::before,
.top-pick-up .swiper-button-next::before {
  content: "";
  position: absolute;
  width: max(16px, 18 / 1440 * 100vw);
  height: max(16px, 18 / 1440 * 100vw);
  background-image: url(./../images/arrow.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transition: background-image 0.3s;
}
@media screen and (max-width: 768px) {
  .top-pick-up .swiper-button-prev::before,
  .top-pick-up .swiper-button-next::before {
    width: calc(16 / 375 * 100vw);
    height: calc(16 / 375 * 100vw);
  }
}

.top-pick-up .swiper-button-prev::before {
  transform: rotate(-180deg);
}

.top-pick-up .swiper-button-prev {
  left: initial;
  right: calc(180 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .top-pick-up .swiper-button-prev {
    right: calc(84 / 375 * 100vw);
  }
}

.top-pick-up .swiper-button-next {
  right: calc(80 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .top-pick-up .swiper-button-next {
    right: calc(24 / 375 * 100vw);
  }
}

.top-pick-up__head {
  padding: calc(20 / 1440 * 100vw);
  color: #34414E;
  font-weight: 500;
  font-size: 1rem;
  background-color: #fff;
  border-radius: 0 0 calc(8 / 1440 * 100vw) calc(8 / 1440 * 100vw);
  position: relative;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .top-pick-up__head {
    font-size: calc(16 / 375 * 100vw);
    padding: calc(10 / 375 * 100vw) calc(20 / 375 * 100vw);
    border-radius: 0 0 calc(8 / 375 * 100vw) calc(8 / 375 * 100vw);
  }
}

@media (hover: hover) {
  .top-pick-up__link:hover .top-pick-up__image img {
    transform: scale(1.1);
  }
  .top-pick-up__link:hover .top-pick-up__image {
    border-radius: calc(8 / 1440 * 100vw) calc(8 / 1440 * 100vw) 0 0;
  }
}
.top-news-wrap {
  padding: calc(80 / 1440 * 100vw) 0;
}
@media screen and (max-width: 768px) {
  .top-news-wrap {
    padding: calc(48 / 375 * 100vw) 0;
  }
}

.top-news-wrap__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: calc(100 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .top-news-wrap__inner {
    grid-template-columns: 1fr;
    gap: calc(60 / 375 * 100vw);
  }
}

.top-news__btn {
  margin-inline: auto;
  margin-top: calc(48 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .top-news__btn {
    margin-top: calc(40 / 375 * 100vw);
  }
}

.top-news,
.top-ir-news {
  display: flex;
  flex-direction: column;
}

.information__contents {
  margin-top: calc(32 / 1440 * 100vw);
  flex-grow: 1;
}
@media screen and (max-width: 768px) {
  .information__contents {
    margin-top: calc(28 / 375 * 100vw);
  }
}

.information__content a {
  padding: calc(20 / 1440 * 100vw) calc(32 / 1440 * 100vw) calc(20 / 1440 * 100vw) calc(10 / 1440 * 100vw);
  display: block;
  color: #34414E;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .information__content a {
    padding: calc(24 / 375 * 100vw) calc(10 / 375 * 100vw);
  }
}

.information__content a::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 1px;
  background-color: #E7352C;
  transition: width 0.3s ease;
}

@media (hover: hover) {
  .information__content a:hover::before {
    width: 100%;
  }
}
.information__content a .information__flex {
  display: grid;
  grid-template-columns: max(70px, 85 / 1440 * 100vw) 1fr;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .information__content a .information__flex {
    grid-template-columns: calc(85 / 375 * 100vw) 1fr;
  }
}

.information__flex .data {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 0.875rem;
}
@media screen and (max-width: 768px) {
  .information__flex .data {
    font-size: calc(14 / 375 * 100vw);
  }
}

.information__flex .category {
  padding: calc(4 / 1440 * 100vw) calc(8 / 1440 * 100vw);
  border: 1px solid #E7352C;
  border-radius: calc(20 / 1440 * 100vw);
  width: max(80px, 105 / 1440 * 100vw);
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1;
  color: #E7352C;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .information__flex .category {
    padding: calc(4 / 375 * 100vw) calc(12 / 375 * 100vw);
    border-radius: calc(20 / 375 * 100vw);
    width: calc(105 / 375 * 100vw);
    font-size: calc(12 / 375 * 100vw);
  }
}

.information__content .title {
  margin-top: calc(10 / 1440 * 100vw);
  font-size: 1rem;
  font-weight: 500;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}
@media screen and (max-width: 768px) {
  .information__content .title {
    margin-top: calc(10 / 375 * 100vw);
    font-size: calc(16 / 375 * 100vw);
    display: block;
    overflow: visible;
    -webkit-box-orient: initial;
    -webkit-line-clamp: initial;
  }
}

.post-list {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .post-list {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.category-tabs .tab-nav {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: calc(20 / 1440 * 100vw);
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .category-tabs .tab-nav {
    gap: calc(20 / 375 * 100vw);
    grid-template-columns: repeat(2, 1fr);
  }
}

.category-tabs .tab-nav a {
  display: block;
  padding: calc(10 / 1440 * 100vw) calc(15 / 1440 * 100vw);
  color: #34414E;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .category-tabs .tab-nav a {
    padding: calc(10 / 375 * 100vw) calc(15 / 375 * 100vw);
  }
}

.category-tabs .tab-nav li.active a {
  border-bottom: 1px solid #34414E;
}

.category-tabs .tab-pane {
  display: none;
}

.category-tabs .tab-pane.active {
  display: block;
}

.post-item a {
  padding: calc(32 / 1440 * 100vw) calc(40 / 1440 * 100vw) calc(32 / 1440 * 100vw) calc(10 / 1440 * 100vw);
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  position: relative;
  display: grid;
  grid-template-columns: max(70px, 85 / 1440 * 100vw) calc(105 / 1440 * 100vw) 1fr;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .post-item a {
    padding: calc(20 / 375 * 100vw) calc(10 / 375 * 100vw);
    grid-template-columns: calc(70 / 375 * 100vw) 1fr;
    gap: calc(10 / 375 * 100vw);
  }
}

.post-item a::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 1px;
  background-color: #E7352C;
  transition: width 0.3s ease;
}

@media (hover: hover) {
  .post-item a:hover::before {
    width: 100%;
  }
}
.post-title {
  font-size: 1rem;
  font-weight: 400;
  padding-left: calc(40 / 1440 * 100vw);
  color: #34414E;
}
@media screen and (max-width: 768px) {
  .post-title {
    font-size: calc(16 / 375 * 100vw);
    padding-left: 0;
    grid-column: 1/-1;
    grid-row: 2;
  }
}

.post-date {
  font-size: 0.875rem;
  color: #34414E;
  font-family: "Outfit", sans-serif;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  .post-date {
    font-size: calc(14 / 375 * 100vw);
  }
}

.post-category {
  padding: calc(4 / 1440 * 100vw) calc(8 / 1440 * 100vw);
  border: 1px solid #E7352C;
  border-radius: calc(20 / 1440 * 100vw);
  width: max(80px, 105 / 1440 * 100vw);
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1;
  color: #E7352C;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .post-category {
    padding: calc(4 / 375 * 100vw) calc(12 / 375 * 100vw);
    border-radius: calc(20 / 375 * 100vw);
    width: calc(105 / 375 * 100vw);
    font-size: calc(12 / 375 * 100vw);
  }
}

.information-detail__flex {
  display: flex;
  align-items: center;
  gap: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .information-detail__flex {
    gap: calc(20 / 375 * 100vw);
  }
}

.information-detail__contents time {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .information-detail__contents time {
    font-size: calc(14 / 375 * 100vw);
  }
}

.information-detail__categories {
  font-size: 0.75rem;
  font-weight: 500;
  color: #E7352C;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .information-detail__categories {
    font-size: calc(12 / 375 * 100vw);
  }
}

.information-detail__title {
  font-size: 2.5rem;
  font-weight: 500;
  margin-top: calc(10 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .information-detail__title {
    font-size: calc(24 / 375 * 100vw);
    margin-top: calc(10 / 375 * 100vw);
  }
}

.information-detail__content h2 {
  font-size: 2rem;
  margin-top: calc(32 / 1440 * 100vw);
  padding: calc(8 / 1440 * 100vw) calc(16 / 1440 * 100vw);
  color: #fff;
  background-color: #64778A;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .information-detail__content h2 {
    font-size: calc(20 / 375 * 100vw);
    margin-top: calc(20 / 375 * 100vw);
    padding: calc(8 / 375 * 100vw) calc(16 / 375 * 100vw);
  }
}

.information-detail__content h3 {
  font-size: 1.5rem;
  margin-top: calc(32 / 1440 * 100vw);
  padding: 0 calc(16 / 1440 * 100vw) calc(8 / 1440 * 100vw);
  border-bottom: 1px solid #64778A;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .information-detail__content h3 {
    font-size: calc(18 / 375 * 100vw);
    margin-top: calc(20 / 375 * 100vw);
    padding: 0 calc(10 / 375 * 100vw) calc(8 / 375 * 100vw);
  }
}

.information-detail__content img {
  object-fit: cover;
  margin-top: calc(32 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .information-detail__content img {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.information-detail__content p {
  margin-top: calc(20 / 1440 * 100vw);
  font-size: 1rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .information-detail__content p {
    margin-top: calc(20 / 375 * 100vw);
    font-size: calc(16 / 375 * 100vw);
  }
}

.information-detail__content p + p {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .information-detail__content p + p {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.information-detail__content a {
  display: block;
  text-decoration: underline;
  color: #34414E;
  margin-top: calc(10 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .information-detail__content a {
    margin-top: calc(10 / 375 * 100vw);
  }
}

.information-detail__content ul {
  margin-top: calc(24 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .information-detail__content ul {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.information-detail__content li {
  position: relative;
  padding-left: calc(16 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .information-detail__content li {
    padding-left: calc(16 / 375 * 100vw);
  }
}

.information-detail__content li::before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: calc(8 / 1440 * 100vw);
  height: calc(8 / 1440 * 100vw);
  content: "";
  display: block;
  border-radius: 50%;
  background-color: #34414E;
}
@media screen and (max-width: 768px) {
  .information-detail__content li::before {
    width: calc(8 / 375 * 100vw);
    height: calc(8 / 375 * 100vw);
  }
}

.information-detail__content li + li {
  margin-top: calc(4 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .information-detail__content li + li {
    margin-top: calc(4 / 375 * 100vw);
  }
}

.information-detail__other {
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .information-detail__other {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.information-detail__link a {
  color: #34414E;
  font-size: 1rem;
  font-weight: 400;
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  .information-detail__link a {
    font-size: calc(16 / 375 * 100vw);
  }
}

.information-detail__link + .information-detail__link {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .information-detail__link + .information-detail__link {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.top-business {
  padding: calc(80 / 1440 * 100vw) 0 calc(80 / 1440 * 100vw);
  border-top: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .top-business {
    padding: calc(48 / 375 * 100vw) 0;
  }
}

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

.top-business__column {
  margin-top: calc(48 / 1440 * 100vw);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 768px) {
  .top-business__column {
    grid-template-columns: 1fr;
    margin-top: calc(28 / 375 * 100vw);
    gap: calc(30 / 375 * 100vw);
  }
}

.top-business__body {
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
}

.top-business__body:nth-child(1) .top-business__content,
.top-business__body:nth-child(2) .top-business__content {
  border-right: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .top-business__body:nth-child(1) .top-business__content,
  .top-business__body:nth-child(2) .top-business__content {
    border-right: none;
  }
}

.top-business__head {
  padding: calc(40 / 1440 * 100vw) 0 calc(200 / 1440 * 100vw) calc(20 / 1440 * 100vw);
  color: #fff;
  display: block;
  position: relative;
}
@media screen and (max-width: 768px) {
  .top-business__head {
    padding: calc(40 / 375 * 100vw) calc(20 / 375 * 100vw) calc(200 / 375 * 100vw) calc(20 / 375 * 100vw);
  }
}

@media (hover: hover) {
  .top-business__head:hover .top-business__head--jp::before,
  .top-business__head:hover .top-business__head--jp::after {
    transform: translateX(calc(10 / 1440 * 100vw));
  }
  .top-business__head:hover::after {
    background: linear-gradient(180deg, rgba(46, 52, 66, 0.8) 0%, rgba(46, 52, 66, 0) 100%);
  }
}
.top-business__head::before,
.top-business__head::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
}

.top-business__head::before {
  background-repeat: no-repeat;
  background-position: right;
  background-size: cover;
}

.top-business__head01::before {
  background-image: url(./../images/business_img02.jpg);
}

.top-business__head02::before {
  background-image: url(./../images/top-business_img01.jpg);
}

.top-business__head03::before {
  background-image: url(./../images/top-business_img03.jpg);
}

.top-business__head::after {
  background-color: rgba(46, 52, 66, 0.8);
  transition: background-color 0.6s;
}

.top-business__head--en {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: min(1.9vw, 1.75rem);
}
@media screen and (max-width: 768px) {
  .top-business__head--en {
    font-size: calc(24 / 375 * 100vw);
    line-height: 1.3;
  }
}

.top-business__head--jp {
  margin-top: calc(17 / 1440 * 100vw);
  line-height: 1;
  font-weight: 500;
  font-size: 1rem;
  position: relative;
  display: inline-flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .top-business__head--jp {
    margin-top: calc(8 / 375 * 100vw);
    font-size: calc(16 / 375 * 100vw);
  }
}

.top-business__head--jp::before,
.top-business__head--jp::after {
  content: "";
  position: absolute;
  display: block;
  transition: transform 0.6s;
}

.top-business__head--jp::before {
  width: max(16px, 18 / 1440 * 100vw);
  height: max(16px, 18 / 1440 * 100vw);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url(./../images/arrow.svg);
  z-index: 1;
  right: min(-3vw, -36 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .top-business__head--jp::before {
    width: calc(18 / 375 * 100vw);
    height: calc(18 / 375 * 100vw);
    right: calc(-36 / 375 * 100vw);
  }
}

.top-business__head--jp::after {
  width: max(24px, 30 / 1440 * 100vw);
  height: max(24px, 30 / 1440 * 100vw);
  border-radius: 50%;
  background-color: #fff;
  right: min(-3.5vw, -42 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .top-business__head--jp::after {
    width: calc(30 / 375 * 100vw);
    height: calc(30 / 375 * 100vw);
    right: calc(-42 / 375 * 100vw);
  }
}

.top-business__content {
  display: grid;
  grid-template-columns: clamp(100px, 220 / 1440 * 100vw, 36%) 1fr;
  align-items: center;
  padding-block: calc(10 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .top-business__content {
    padding: calc(20 / 375 * 100vw);
    grid-template-columns: 1fr;
  }
}

.top-business__hear {
  padding: 1.25rem 1rem;
  font-size: 0.875rem;
  font-weight: 500;
  border-right: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .top-business__hear {
    padding: 0 0 calc(12 / 375 * 100vw) 0;
    font-size: calc(18 / 375 * 100vw);
    border-right: none;
    border-bottom: 1px solid rgba(115, 137, 159, 0.2);
    text-align: center;
  }
}

.top-business__right {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .top-business__right {
    padding-top: calc(20 / 375 * 100vw);
  }
}

@media screen and (max-width: 768px) {
  .top-business__btn {
    margin-top: calc(40 / 375 * 100vw);
    margin-inline: auto;
  }
}

.top-business__btn-new.section-btn-new {
  padding: 1.125rem 1.125rem 1.125rem 0.625rem;
  max-width: 15rem;
}
@media screen and (max-width: 768px) {
  .top-business__btn-new.section-btn-new {
    padding: calc(18 / 375 * 100vw);
    max-width: calc(240 / 375 * 100vw);
  }
}

.top-business__btn-new.section-btn-new::before {
  right: 0.9375rem;
}
@media screen and (max-width: 768px) {
  .top-business__btn-new.section-btn-new::before {
    right: calc(15 / 375 * 100vw);
  }
}

.top-company {
  padding: calc(100 / 1440 * 100vw) calc(80 / 1440 * 100vw);
  position: relative;
}
@media screen and (max-width: 768px) {
  .top-company {
    padding: calc(60 / 375 * 100vw) calc(20 / 375 * 100vw);
  }
}

.top-company::before,
.top-company::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.top-company::before {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-image: url(./../images/top_company_bg.jpg);
}
@media screen and (max-width: 768px) {
  .top-company::before {
    background-position: 68%;
  }
}

.top-company::after {
  background-color: rgba(46, 52, 66, 0.9);
}

.top-company__inner {
  display: grid;
  grid-template-columns: 1fr calc(750 / 1440 * 100vw);
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .top-company__inner {
    grid-template-columns: 1fr;
    gap: calc(28 / 375 * 100vw);
  }
}

.top-company__lists {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 768px) {
  .top-company__lists {
    grid-template-columns: repeat(2, 1fr);
  }
}

.top-company__link {
  font-size: 1.125rem;
  font-weight: 500;
  color: #fff;
  width: calc(250 / 1440 * 100vw);
  height: calc(150 / 1440 * 100vw);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  transition: color 0.3s;
}
@media screen and (max-width: 768px) {
  .top-company__link {
    font-size: calc(16 / 375 * 100vw);
    width: calc(166 / 375 * 100vw);
    height: calc(150 / 375 * 100vw);
  }
}

@media (hover: hover) {
  .top-company__link:hover {
    color: #E7352C;
  }
}
.top-company__list {
  border-bottom: 1px solid #64778A;
  border-right: 1px solid #64778A;
}
@media screen and (max-width: 768px) {
  .top-company__list {
    border: none;
  }
}

.top-company__list:nth-child(3n) {
  border-right: none;
}

.top-company__list:last-child {
  border-bottom: none;
}

@media screen and (max-width: 768px) {
  .top-company__list:nth-child(odd) {
    border-bottom: 1px solid #64778A;
    border-right: 1px solid #64778A;
  }
}

.top-company__list:nth-last-child(2) {
  border-bottom: none;
}
@media screen and (max-width: 768px) {
  .top-company__list:nth-last-child(2) {
    border-bottom: none;
  }
}

@media screen and (max-width: 768px) {
  .top-company__list:nth-child(even) {
    border-bottom: 1px solid #64778A;
  }
}

@media screen and (max-width: 768px) {
  .top-company__list:last-child {
    border-bottom: none;
  }
}

.top-3lists {
  padding: calc(100 / 1440 * 100vw) 0;
}
@media screen and (max-width: 768px) {
  .top-3lists {
    padding: calc(60 / 375 * 100vw) 0;
  }
}

.top-3lists__lists {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 768px) {
  .top-3lists__lists {
    grid-template-columns: 1fr;
    gap: calc(40 / 375 * 100vw);
  }
}

.top-3lists__list:nth-child(1) {
  border: 1px solid rgba(115, 137, 159, 0.2);
  border-top: none;
}

.top-3lists__list:nth-child(2) {
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  border-right: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .top-3lists__list:nth-child(2) {
    border-left: 1px solid rgba(115, 137, 159, 0.2);
  }
}

.top-3lists__list:nth-child(3) {
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  border-right: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .top-3lists__list:nth-child(3) {
    border-left: 1px solid rgba(115, 137, 159, 0.2);
  }
}

.top-3lists__link {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.top-3lists__img {
  aspect-ratio: 426/280;
  max-width: calc(426 / 1440 * 100vw);
  width: 100%;
  height: auto;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .top-3lists__img {
    max-width: 100%;
  }
}

@media (hover: hover) {
  .top-3lists__link:hover .top-3lists__img img {
    transform: scale(1.1);
  }
}
.top-3lists__img::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(46, 52, 66, 0.3);
}

.top-3lists__img img {
  object-fit: cover;
  transition: transform 0.3s;
}

.top-3lists__title {
  padding: calc(60 / 1440 * 100vw) calc(40 / 1440 * 100vw);
  background-color: #fff;
  color: #34414E;
  flex-grow: 1;
}
@media screen and (max-width: 768px) {
  .top-3lists__title {
    padding: calc(40 / 375 * 100vw) calc(20 / 375 * 100vw);
  }
}

.top-group {
  padding: calc(100 / 1440 * 100vw) 0;
  border-top: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .top-group {
    padding: calc(48 / 375 * 100vw) 0;
  }
}

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

.top-group__lists {
  grid-template-columns: repeat(4, 1fr);
  display: grid;
  margin-top: calc(48 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .top-group__lists {
    grid-template-columns: 1fr;
    margin-top: calc(28 / 375 * 100vw);
  }
}

.top-group__list {
  border-top: 1px solid rgba(115, 137, 159, 0.2);
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  position: relative;
}
@media screen and (max-width: 768px) {
  .top-group__list {
    border-top: none;
  }
}

@media screen and (max-width: 768px) {
  .top-group__list:first-child {
    border-top: 1px solid rgba(115, 137, 159, 0.2);
  }
}

.top-group__list:not(:last-child) {
  border-right: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .top-group__list:not(:last-child) {
    border-right: none;
  }
}

.top-group__link {
  max-width: calc(320 / 1440 * 100vw);
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: calc(16 / 1440 * 100vw);
  padding: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .top-group__link {
    max-width: calc(335 / 375 * 100vw);
    gap: calc(16 / 375 * 100vw);
    padding: calc(20 / 375 * 100vw);
  }
}

@media (hover: hover) {
  .top-group__link:hover .top-group__logo {
    opacity: 0.7;
  }
}
.top-group__logo {
  max-width: calc(265 / 1440 * 100vw);
  width: 100%;
  height: auto;
  aspect-ratio: 265/185;
  transition: opacity 0.3s;
}
@media screen and (max-width: 768px) {
  .top-group__logo {
    max-width: calc(265 / 375 * 100vw);
  }
}

.top-group__logo img {
  object-fit: cover;
}

.top-group__head {
  display: flex;
  align-items: center;
  gap: calc(8 / 1440 * 100vw);
  justify-content: center;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .top-group__head {
    gap: calc(8 / 375 * 100vw);
  }
}

.top-group__text {
  color: #34414E;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .top-group__text {
    font-size: calc(16 / 375 * 100vw);
  }
}

.top-group__new-tab {
  max-width: max(14px, 16 / 1440 * 100vw);
  width: 100%;
  height: auto;
  aspect-ratio: 16/16;
}
@media screen and (max-width: 768px) {
  .top-group__new-tab {
    max-width: calc(16 / 375 * 100vw);
  }
}

.top-group__new-tab img {
  object-fit: cover;
}

.site-policy__read {
  font-size: 1rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .site-policy__read {
    font-size: calc(16 / 375 * 100vw);
  }
}

.policy-text {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .policy-text {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.policy-wrap {
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .policy-wrap {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.policy-read,
.policy-wrap,
.cookie-policy__small {
  padding-inline: calc(30 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .policy-read,
  .policy-wrap,
  .cookie-policy__small {
    padding-inline: calc(10 / 375 * 100vw);
  }
}

.cookie-policy__small {
  margin-top: calc(40 / 1440 * 100vw);
  font-size: 1rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .cookie-policy__small {
    margin-top: calc(30 / 375 * 100vw);
    font-size: calc(14 / 375 * 100vw);
  }
}

.cookie-policy__link {
  color: #34414E;
  font-weight: 400;
  font-size: 1rem;
  text-decoration: underline;
  display: block;
}
@media screen and (max-width: 768px) {
  .cookie-policy__link {
    font-size: calc(16 / 375 * 100vw);
  }
}

.cookie-policy__wrap.policy-wrap,
.security-action__wrap.policy-wrap {
  margin-top: 0;
}

.cookie-policy__wrap + .cookie-policy__wrap,
.security-action__wrap + .security-action__wrap {
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .cookie-policy__wrap + .cookie-policy__wrap,
  .security-action__wrap + .security-action__wrap {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.security-action__img {
  aspect-ratio: 219/219;
  max-width: calc(219 / 1440 * 100vw);
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .security-action__img {
    max-width: 100%;
  }
}

.security-action__img img {
  object-fit: cover;
}

.security-action__number + .security-action__number {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .security-action__number + .security-action__number {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.security-action__number {
  display: block;
}

.security-action__text .security-action__name {
  display: flex;
  justify-content: end;
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .security-action__text .security-action__name {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.ir-ma__wrap {
  padding-inline: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-ma__wrap {
    padding-inline: calc(10 / 375 * 100vw);
  }
}

.ir-ma__strategy {
  margin-bottom: calc(80 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-ma__strategy {
    margin-bottom: calc(40 / 375 * 100vw);
  }
}

.ir-ma__strategy-text,
.ir-ma__vision-text,
.ir-ma__target-text,
.ir-ma__achievements-text,
.ir-ma__contact-text {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-ma__strategy-text,
  .ir-ma__vision-text,
  .ir-ma__target-text,
  .ir-ma__achievements-text,
  .ir-ma__contact-text {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.ir-ma__strategy-img {
  margin-top: calc(40 / 1440 * 100vw);
  width: 100%;
  aspect-ratio: 1240/580;
}
@media screen and (max-width: 768px) {
  .ir-ma__strategy-img {
    margin-top: calc(28 / 375 * 100vw);
  }
}

.ir-ma__strategy-img img {
  object-fit: cover;
}

.ir-ma__vision {
  margin-top: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-ma__vision {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.ir-ma__vision-mission {
  margin-top: calc(40 / 1440 * 100vw);
  background-color: rgba(115, 137, 159, 0.2);
  max-width: calc(950 / 1440 * 100vw);
  width: 100%;
  border-radius: 50px;
  margin-inline: auto;
  position: relative;
  padding: calc(10 / 1440 * 100vw);
  text-align: center;
}
@media screen and (max-width: 768px) {
  .ir-ma__vision-mission {
    margin-top: calc(20 / 375 * 100vw);
    max-width: 100%;
    padding: calc(10 / 375 * 100vw);
    border-radius: 20px;
  }
}

.ir-ma__vision-mission::after {
  content: "";
  position: absolute;
  bottom: -16px;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 16px solid transparent;
  border-left: 16px solid transparent;
  border-top: 16px solid rgba(115, 137, 159, 0.2);
  border-bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

.ir-ma__vision-title {
  color: #E7352C;
  border-bottom: 1px solid #E7352C;
  font-size: 1rem;
  font-weight: 500;
  display: inline-block;
}
@media screen and (max-width: 768px) {
  .ir-ma__vision-title {
    font-size: calc(16 / 375 * 100vw);
  }
}

.ir-ma__vision-subtext {
  font-size: 1rem;
  font-weight: 500;
  margin-top: calc(4 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-ma__vision-subtext {
    margin-top: calc(4 / 375 * 100vw);
    font-size: calc(16 / 375 * 100vw);
  }
}

.ir-ma__vision-img {
  margin-top: calc(40 / 1440 * 100vw);
  width: 100%;
  aspect-ratio: 1240/500;
}
@media screen and (max-width: 768px) {
  .ir-ma__vision-img {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.ir-ma__vision-img img {
  object-fit: cover;
}

.ir-ma__vision-read {
  margin-top: calc(40 / 1440 * 100vw);
  padding: calc(30 / 1440 * 100vw);
  text-align: center;
  color: #fff;
  font-size: 1rem;
  font-weight: 500;
  border-radius: calc(20 / 1440 * 100vw);
  background-color: #64778A;
  width: fit-content;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .ir-ma__vision-read {
    margin-top: calc(20 / 375 * 100vw);
    padding: calc(16 / 375 * 100vw);
    border-radius: calc(20 / 375 * 100vw);
    font-size: calc(14 / 375 * 100vw);
    text-align: left;
  }
}

.ir-ma__target {
  margin-top: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-ma__target {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.js-scrollable {
  white-space: nowrap; /* 子要素を横並びに */
  width: 100%; /* 親要素の幅に合わせる */
  max-width: 65.625rem;
  margin-inline: auto;
}

.ir-ma__target-table {
  display: inline-block; /* 横スクロールを発生させるための設定 */
  width: 100%;
  border-collapse: collapse;
  margin-top: calc(50 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-ma__target-table {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.ir-ma__target-table thead th {
  border: 1px solid #fff;
}

.ir-ma__target-table tbody th,
.ir-ma__target-table td {
  border: 1px solid rgba(115, 137, 159, 0.2);
  padding: calc(12 / 1440 * 100vw);
  vertical-align: middle;
}
@media screen and (max-width: 768px) {
  .ir-ma__target-table tbody th,
  .ir-ma__target-table td {
    padding: calc(10 / 375 * 100vw);
  }
}

.ir-ma__target-table thead th {
  background-color: #d5d7db;
  text-align: center;
  font-weight: 500;
  font-size: 1rem;
}
@media screen and (max-width: 768px) {
  .ir-ma__target-table thead th {
    font-size: calc(16 / 375 * 100vw);
  }
}

.ir-ma__target-table .highlight-red,
.ir-ma__target-table .highlight-blue,
.ir-ma__target-table .highlight-green {
  font-weight: 500;
  color: #fff;
  font-size: 1rem;
}
@media screen and (max-width: 768px) {
  .ir-ma__target-table .highlight-red,
  .ir-ma__target-table .highlight-blue,
  .ir-ma__target-table .highlight-green {
    font-size: calc(16 / 375 * 100vw);
  }
}

.ir-ma__target-table .highlight-red {
  background-color: #ff7e77;
}

.ir-ma__target-table .highlight-blue {
  background-color: #5a9ad7;
}

.ir-ma__target-table .highlight-green {
  background-color: #72c196;
}

.ir-ma__target-table .highlight-transparent {
  background-color: transparent;
  border: none;
}

.ir-ma__target-table ul li {
  position: relative;
  padding-left: calc(10 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-ma__target-table ul li {
    padding-left: calc(10 / 375 * 100vw);
  }
}

.ir-ma__target-table ul li::before {
  content: "";
  position: absolute;
  display: block;
  width: calc(4 / 1440 * 100vw);
  height: calc(4 / 1440 * 100vw);
  border-radius: 50%;
  background-color: #34414E;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}
@media screen and (max-width: 768px) {
  .ir-ma__target-table ul li::before {
    width: calc(4 / 375 * 100vw);
    height: calc(4 / 375 * 100vw);
  }
}

.ir-ma__target-table ol {
  list-style-type: decimal;
  padding-left: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-ma__target-table ol {
    padding-left: calc(20 / 375 * 100vw);
  }
}

.ir-ma__target-table ol li {
  margin-bottom: calc(8 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-ma__target-table ol li {
    margin-bottom: calc(4 / 375 * 100vw);
  }
}

.ir-ma__target-table .emphasis-red {
  color: #ff7e77;
}

.ir-ma__target-table .emphasis-green {
  color: #72c196;
}

.ir-ma__target-table .emphasis-blue {
  color: #5a9ad7;
}

.ir-ma__target-arrow {
  width: calc(73.5 / 1440 * 100vw);
  height: calc(80 / 1440 * 100vw);
  background: #cfcfcf;
  clip-path: polygon(0 54%, 31% 54%, 31% 0, 69% 0, 69% 54%, 100% 54%, 50% 100%);
  margin-inline: auto;
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-ma__target-arrow {
    width: calc(56.5 / 375 * 100vw);
    height: calc(50 / 375 * 100vw);
    margin-top: calc(20 / 375 * 100vw);
    clip-path: polygon(0 43.4%, 32.3% 43.4%, 32.3% 0, 67.7% 0, 67.7% 43.4%, 100% 43.4%, 50% 100%);
  }
}

.ir-ma__target-read {
  margin-top: calc(20 / 1440 * 100vw);
  padding: calc(30 / 1440 * 100vw);
  text-align: center;
  color: #fff;
  font-size: 1.5rem;
  font-weight: 500;
  border-radius: calc(10 / 1440 * 100vw);
  background-color: #64778A;
  width: fit-content;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .ir-ma__target-read {
    margin-top: calc(20 / 375 * 100vw);
    padding: calc(10 / 375 * 100vw);
    border-radius: calc(20 / 375 * 100vw);
    font-size: calc(20 / 375 * 100vw);
    text-align: left;
  }
}

.ir-ma__policy {
  margin-top: calc(80 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-ma__policy {
    margin-top: calc(40 / 375 * 100vw);
  }
}

.ir-ma__policy-title {
  margin-top: calc(40 / 1440 * 100vw);
  font-size: 1.75rem;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .ir-ma__policy-title {
    margin-top: calc(20 / 375 * 100vw);
    font-size: calc(20 / 375 * 100vw);
  }
}

.ir-ma__policy-lists {
  margin-top: calc(40 / 1440 * 100vw);
  max-width: 56.25rem;
  width: 100%;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .ir-ma__policy-lists {
    margin-top: calc(20 / 375 * 100vw);
    max-width: 100%;
  }
}

.ir-ma__policy-list {
  display: grid;
  grid-template-columns: calc(100 / 1440 * 100vw) 1fr;
  gap: calc(60 / 1440 * 100vw);
  align-items: center;
}
@media screen and (max-width: 768px) {
  .ir-ma__policy-list {
    grid-template-columns: 1fr;
    gap: calc(8 / 375 * 100vw);
  }
}

.ir-ma__policy-list + .ir-ma__policy-list {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-ma__policy-list + .ir-ma__policy-list {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.ir-ma__policy-icon {
  width: calc(120 / 1440 * 100vw);
  height: calc(120 / 1440 * 100vw);
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 100/100;
  border: 1px solid #34414E;
  border-radius: 50%;
  padding: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-ma__policy-icon {
    width: calc(120 / 375 * 100vw);
    height: calc(120 / 375 * 100vw);
    margin-inline: auto;
    padding: calc(20 / 375 * 100vw);
  }
}

.ir-ma__policy-icon img {
  width: calc(100 / 1440 * 100vw);
  object-fit: cover;
}
@media screen and (max-width: 768px) {
  .ir-ma__policy-icon img {
    width: calc(100 / 375 * 100vw);
  }
}

.ir-ma__policy-subtitle {
  font-size: 1.25rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .ir-ma__policy-subtitle {
    font-size: calc(20 / 375 * 100vw);
    text-align: center;
  }
}

.ir-ma__policy-text {
  margin-top: calc(8 / 1440 * 100vw);
  font-size: 1rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .ir-ma__policy-text {
    margin-top: calc(8 / 375 * 100vw);
    font-size: calc(16 / 375 * 100vw);
  }
}

.ir-ma__achievements {
  margin-top: calc(100 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-ma__achievements {
    margin-top: calc(50 / 375 * 100vw);
  }
}

.ir-ma__achievements-lists {
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-ma__achievements-lists {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.ir-ma__achievements-list {
  display: grid;
  grid-template-columns: max(90px, 120 / 1440 * 100vw) 1fr;
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  align-items: center;
}
@media screen and (max-width: 768px) {
  .ir-ma__achievements-list {
    grid-template-columns: calc(70 / 375 * 100vw) 1fr;
  }
}

.ir-ma__achievements-date {
  font-size: 1rem;
  font-weight: 600;
  font-family: "Outfit", sans-serif;
  border-right: 1px solid rgba(115, 137, 159, 0.2);
  position: relative;
  display: flex;
  align-items: center;
  padding: calc(24 / 1440 * 100vw) 0;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .ir-ma__achievements-date {
    font-size: calc(14 / 375 * 100vw);
    padding: calc(16 / 375 * 100vw) calc(4 / 375 * 100vw);
  }
}

.ir-ma__achievements-date::after {
  position: absolute;
  content: "";
  display: block;
  width: max(6px, 10 / 1440 * 100vw);
  height: max(6px, 10 / 1440 * 100vw);
  border-radius: 50%;
  right: calc(-5 / 1440 * 100vw);
  background-color: #E7352C;
}
@media screen and (max-width: 768px) {
  .ir-ma__achievements-date::after {
    width: calc(8 / 375 * 100vw);
    height: calc(8 / 375 * 100vw);
    right: calc(-4 / 375 * 100vw);
  }
}

.ir-ma__achievements-wrap {
  display: flex;
  align-items: center;
  gap: calc(30 / 1440 * 100vw);
  padding: calc(24 / 1440 * 100vw) calc(20 / 1440 * 100vw) calc(24 / 1440 * 100vw) calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-ma__achievements-wrap {
    padding: calc(16 / 375 * 100vw) calc(10 / 375 * 100vw) calc(16 / 375 * 100vw) calc(16 / 375 * 100vw);
    flex-direction: column;
  }
}

.ir-ma__achievements-logo {
  max-width: calc(200 / 1440 * 100vw);
  width: 100%;
  height: auto;
  aspect-ratio: 200/80;
}
@media screen and (max-width: 768px) {
  .ir-ma__achievements-logo {
    max-width: 100%;
  }
}

.ir-ma__achievements-logo img {
  object-fit: cover;
}

.ir-ma__achievements-list:nth-child(5) .ir-ma__achievements-logo,
.ir-ma__achievements-list:nth-child(6) .ir-ma__achievements-logo,
.ir-ma__achievements-list:nth-child(7) .ir-ma__achievements-logo,
.ir-ma__achievements-list:nth-child(9) .ir-ma__achievements-logo {
  aspect-ratio: 200/110;
}

.ir-ma__achievements-explanation {
  font-size: 1rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .ir-ma__achievements-explanation {
    font-size: calc(16 / 375 * 100vw);
  }
}

.ir-ma__exterior {
  margin-top: calc(100 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-ma__exterior {
    margin-top: calc(50 / 375 * 100vw);
  }
}

.ir-ma__exterior-img {
  margin-top: calc(40 / 1440 * 100vw);
  width: 100%;
  aspect-ratio: 1240/400;
}
@media screen and (max-width: 768px) {
  .ir-ma__exterior-img {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.ir-ma__exterior-img img {
  object-fit: cover;
}

.ir-ma__contact {
  margin-top: calc(100 / 1440 * 100vw);
  margin-bottom: calc(80 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-ma__contact {
    margin-top: calc(50 / 375 * 100vw);
    margin-bottom: calc(40 / 375 * 100vw);
  }
}

.ir-ma__contact-btn {
  margin-top: calc(40 / 1440 * 100vw);
  position: relative;
  display: inline-block;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1;
  padding: calc(18 / 1440 * 100vw) calc(80 / 1440 * 100vw) calc(18 / 1440 * 100vw) calc(40 / 1440 * 100vw);
  border-radius: calc(30 / 1440 * 100vw);
  background-color: #fff;
  color: #34414E;
  transition: background-color 0.3s, color 0.3s;
  border: 1px solid #34414E;
}
@media screen and (max-width: 768px) {
  .ir-ma__contact-btn {
    margin-top: calc(20 / 375 * 100vw);
    font-size: calc(18 / 375 * 100vw);
    padding: calc(16 / 375 * 100vw) calc(60 / 375 * 100vw) calc(16 / 375 * 100vw) calc(40 / 375 * 100vw);
    border-radius: calc(30 / 375 * 100vw);
  }
}

.ir-ma__contact-btn::before {
  position: absolute;
  content: "";
  display: block;
  background-image: url(./../images/new_tab.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: calc(16 / 1440 * 100vw);
  height: calc(16 / 1440 * 100vw);
  right: calc(50 / 1440 * 100vw);
  top: 50%;
  transform: translateY(-50%);
  transition: background-image 0.3s;
}
@media screen and (max-width: 768px) {
  .ir-ma__contact-btn::before {
    width: calc(16 / 375 * 100vw);
    height: calc(16 / 375 * 100vw);
    right: calc(30 / 375 * 100vw);
  }
}

@media (hover: hover) {
  .ir-ma__contact-btn:hover {
    background-color: #34414E;
    color: #fff;
  }
  .ir-ma__contact-btn:hover::before {
    background-image: url(./../images/new_tab_white.svg);
  }
}
.company {
  padding-bottom: calc(100 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company {
    padding-bottom: calc(48 / 375 * 100vw);
  }
}

.company-top__lists {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  margin-top: calc(100 / 1440 * 100vw);
  margin-bottom: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-top__lists {
    grid-template-columns: 1fr;
    gap: calc(20 / 375 * 100vw);
  }
}

.company-top__list:nth-child(1) {
  border-right: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .company-top__list:nth-child(1) {
    border-right: none;
    border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  }
}

.company-top__img {
  width: 100%;
  height: auto;
  aspect-ratio: 600/330;
}
@media screen and (max-width: 768px) {
  .company-top__img {
    max-width: 100%;
  }
}

.company-top__img img {
  object-fit: cover;
}

.company-top__btn {
  padding: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-top__btn {
    padding: calc(20 / 375 * 100vw);
  }
}

.company-top__btn span {
  color: #34414E;
  font-size: 1.125rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .company-top__btn span {
    font-size: calc(18 / 375 * 100vw);
  }
}

.company-bottom {
  padding: calc(40 / 1440 * 100vw) 0 calc(60 / 1440 * 100vw);
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .company-bottom {
    padding: calc(30 / 375 * 100vw) 0;
  }
}

.company-bottom__lists {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-bottom__lists {
    grid-template-columns: 1fr;
    gap: calc(40 / 375 * 100vw);
  }
}

.company-bottom__img img {
  object-fit: cover;
}

.company-bottom__link {
  padding: calc(20 / 1440 * 100vw);
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .company-bottom__link {
    padding: calc(10 / 375 * 100vw);
  }
}

@media (hover: hover) {
  .company-bottom__link:hover .under-btn-circle {
    transform: translateX(10px);
  }
}
.company-bottom__link span {
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1;
  color: #34414E;
}
@media screen and (max-width: 768px) {
  .company-bottom__link span {
    font-size: calc(18 / 375 * 100vw);
  }
}

.company-message__img {
  width: 100%;
  height: auto;
  aspect-ratio: 823/494;
}

.company-message__img img {
  object-fit: cover;
}

.company-message__title {
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-message__title {
    margin-top: calc(16 / 375 * 100vw);
  }
}

.company-message__text {
  margin-top: calc(32 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-message__text {
    margin-top: calc(16 / 375 * 100vw);
  }
}

.company-message__sign {
  margin-top: calc(32 / 1440 * 100vw);
  font-size: 1rem;
  font-weight: 400;
  text-align: end;
}
@media screen and (max-width: 768px) {
  .company-message__sign {
    margin-top: calc(20 / 375 * 100vw);
    font-size: calc(16 / 375 * 100vw);
  }
}

.company-message__sign-img {
  margin-left: auto;
  margin-top: calc(8 / 1440 * 100vw);
  max-width: max(100px, 150 / 1440 * 100vw);
  width: 100%;
  height: auto;
  aspect-ratio: 250/59;
}
@media screen and (max-width: 768px) {
  .company-message__sign-img {
    margin-top: calc(8 / 375 * 100vw);
    max-width: calc(150 / 375 * 100vw);
  }
}

.company-message__sign-img img {
  object-fit: cover;
}

.company-philosophy__wrap + .company-philosophy__wrap {
  margin-top: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-philosophy__wrap + .company-philosophy__wrap {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.company-philosophy__text {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-philosophy__text {
    margin-top: calc(16 / 375 * 100vw);
  }
}

.company-philosophy__text-small p + p {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-philosophy__text-small p + p {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.company-philosophy__img {
  width: 100%;
  height: auto;
  margin-top: calc(32 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-philosophy__img {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.company-philosophy__img img {
  object-fit: cover;
}

.company-philosophy__img01 {
  aspect-ratio: 730/568;
}

.company-philosophy__img02 {
  aspect-ratio: 730/361;
  max-width: calc(500 / 1440 * 100vw);
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .company-philosophy__img02 {
    max-width: 100%;
  }
}

.company-philosophy__img03 {
  max-width: calc(400 / 1440 * 100vw);
  aspect-ratio: 730/95;
  margin-inline: auto;
  margin-top: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-philosophy__img03 {
    max-width: 100%;
    margin-top: calc(30 / 375 * 100vw);
  }
}

.company-philosophy__text {
  font-size: 1.75rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .company-philosophy__text {
    font-size: calc(18 / 375 * 100vw);
  }
}

.company-philosophy__text-small {
  margin-top: calc(50 / 1440 * 100vw);
  font-size: 1rem;
  font-weight: 400;
  max-width: 37.5rem;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .company-philosophy__text-small {
    font-size: calc(16 / 375 * 100vw);
    margin-top: calc(24 / 375 * 100vw);
    max-width: 100%;
    margin-inline: 0;
  }
}

.company-philosophy__text-center {
  text-align: center;
}

.company-philosophy__lists {
  margin-top: calc(20 / 1440 * 100vw);
  display: flex;
  gap: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-philosophy__lists {
    margin-top: calc(20 / 375 * 100vw);
    flex-direction: column;
    gap: calc(12 / 375 * 100vw);
  }
}

.company-philosophy__list {
  border: 1px solid #34414E;
  padding: calc(20 / 1440 * 100vw);
  text-align: center;
}
@media screen and (max-width: 768px) {
  .company-philosophy__list {
    padding: calc(12 / 375 * 100vw);
  }
}

.company-philosophy__subhead {
  font-size: 1.125rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .company-philosophy__subhead {
    font-size: calc(18 / 375 * 100vw);
  }
}

.company-philosophy__subtext {
  font-size: 0.875rem;
  font-weight: 400;
  margin-top: calc(12 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-philosophy__subtext {
    font-size: calc(14 / 375 * 100vw);
    margin-top: calc(8 / 375 * 100vw);
  }
}

.company-philosophy__text-medium {
  font-size: 1.25rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .company-philosophy__text-medium {
    font-size: calc(16 / 375 * 100vw);
  }
}

.company-philosophy__content {
  display: grid;
  grid-template-columns: calc(70 / 1440 * 100vw) 1fr;
  gap: calc(40 / 1440 * 100vw);
  margin-top: calc(20 / 1440 * 100vw);
  align-items: center;
}
@media screen and (max-width: 768px) {
  .company-philosophy__content {
    margin-top: calc(16 / 375 * 100vw);
    grid-template-columns: calc(40 / 375 * 100vw) 1fr;
    gap: calc(10 / 375 * 100vw);
    align-items: baseline;
  }
}

.company-philosophy__content + .company-philosophy__content {
  margin-top: calc(10 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-philosophy__content + .company-philosophy__content {
    margin-top: calc(10 / 375 * 100vw);
  }
}

.company-philosophy__flex .company-philosophy__text {
  margin-top: 0;
}

.company-outline__list {
  display: grid;
  grid-template-columns: 11.25rem 1fr;
  gap: calc(16 / 1440 * 100vw);
  padding: calc(24 / 1440 * 100vw) 0;
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .company-outline__list {
    grid-template-columns: calc(80 / 375 * 100vw) 1fr;
    gap: calc(16 / 375 * 100vw);
    padding: calc(20 / 375 * 100vw) 0;
  }
}

.company-outline__title {
  font-size: 1rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .company-outline__title {
    font-size: calc(16 / 375 * 100vw);
  }
}

.company-outline__jump {
  color: #34414E;
  font-weight: 500;
  font-size: 1rem;
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  .company-outline__jump {
    font-size: calc(16 / 375 * 100vw);
  }
}

.company-outline__grid {
  display: grid;
  grid-template-columns: 12.5rem 1fr;
  gap: calc(22 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-outline__grid {
    grid-template-columns: 1fr;
    gap: 0;
  }
}

@media screen and (max-width: 768px) {
  .company-outline__grid + .company-outline__grid {
    margin-top: calc(10 / 375 * 100vw);
  }
}

.company-outline__link {
  display: flex;
  align-items: center;
  gap: calc(10 / 1440 * 100vw);
  transition: opacity 0.3s;
}
@media screen and (max-width: 768px) {
  .company-outline__link {
    gap: calc(10 / 375 * 100vw);
  }
}

@media (hover: hover) {
  .company-outline__link:hover {
    opacity: 0.7;
  }
}
.company-outline__link p {
  color: #34414E;
}

.company-outline__new-tab {
  width: max(14px, 16 / 1440 * 100vw);
  height: max(14px, 16 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-outline__new-tab {
    width: calc(16 / 375 * 100vw);
    height: calc(16 / 375 * 100vw);
  }
}

.company-outline__new-tab img {
  object-fit: cover;
}

.company-outline__head:nth-of-type(2) {
  margin-top: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-outline__head:nth-of-type(2) {
    margin-top: calc(48 / 375 * 100vw);
  }
}

.company-outline__address {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-outline__address {
    margin-top: calc(16 / 375 * 100vw);
  }
}

.company-outline__map {
  width: 100%;
  aspect-ratio: 823/500;
  height: auto;
  margin-top: calc(32 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-outline__map {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.company-outline__map iframe {
  width: 100%;
  height: 100%;
}

.company-history__body.under-section__body {
  padding-right: 0;
}
@media screen and (max-width: 768px) {
  .company-history__body.under-section__body {
    padding-inline: 0;
  }
}

.company-history__list {
  display: grid;
  grid-template-columns: max(90px, 120 / 1440 * 100vw) 1fr;
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  align-items: center;
}
@media screen and (max-width: 768px) {
  .company-history__list {
    grid-template-columns: calc(90 / 375 * 100vw) 1fr;
  }
}

.company-history__title {
  font-size: 1rem;
  font-weight: 500;
  border-right: 1px solid rgba(115, 137, 159, 0.2);
  position: relative;
  display: flex;
  align-items: center;
  padding: calc(24 / 1440 * 100vw) 0;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .company-history__title {
    font-size: calc(14 / 375 * 100vw);
    padding: calc(16 / 375 * 100vw) calc(4 / 375 * 100vw);
  }
}

.company-history__title::after {
  position: absolute;
  content: "";
  display: block;
  width: max(6px, 10 / 1440 * 100vw);
  height: max(6px, 10 / 1440 * 100vw);
  border-radius: 50%;
  right: calc(-5 / 1440 * 100vw);
  background-color: #E7352C;
}
@media screen and (max-width: 768px) {
  .company-history__title::after {
    width: calc(8 / 375 * 100vw);
    height: calc(8 / 375 * 100vw);
    right: calc(-4 / 375 * 100vw);
  }
}

.company-history__text {
  padding: calc(24 / 1440 * 100vw) calc(20 / 1440 * 100vw) calc(24 / 1440 * 100vw) calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-history__text {
    padding: calc(16 / 375 * 100vw) calc(10 / 375 * 100vw) calc(16 / 375 * 100vw) calc(16 / 375 * 100vw);
  }
}

.company-executive__lists {
  display: flex;
  flex-wrap: wrap;
  column-gap: calc(40 / 1440 * 100vw);
  row-gap: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-executive__lists {
    gap: calc(20 / 375 * 100vw);
    flex-wrap: wrap;
  }
}

.company-executive__link {
  color: #34414E;
  font-size: 1rem;
  font-weight: 500;
  width: max(105px, 180 / 1440 * 100vw);
  position: relative;
  padding-bottom: calc(10 / 1440 * 100vw);
  border-bottom: 1px solid #34414E;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .company-executive__link {
    font-size: calc(14 / 375 * 100vw);
    width: calc(160 / 375 * 100vw);
    padding-bottom: calc(10 / 375 * 100vw);
  }
}

.company-executive__link span {
  position: absolute;
  display: block;
  border-right: solid 1px #34414E;
  border-top: solid 1px #34414E;
  width: calc(8 / 1440 * 100vw);
  height: calc(8 / 1440 * 100vw);
  right: calc(8 / 1440 * 100vw);
  transform: rotate(135deg);
}
@media screen and (max-width: 768px) {
  .company-executive__link span {
    width: calc(8 / 375 * 100vw);
    height: calc(8 / 375 * 100vw);
    right: calc(8 / 375 * 100vw);
  }
}

.company-executive__subtext {
  font-size: 0.875rem;
  font-weight: 400;
  margin-left: auto;
  display: block;
  width: fit-content;
}
@media screen and (max-width: 768px) {
  .company-executive__subtext {
    font-size: calc(14 / 375 * 100vw);
  }
}

.company-executive__wrap {
  padding-top: calc(80 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-executive__wrap {
    padding-top: calc(40 / 375 * 100vw);
  }
}

.company-executive__contents {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-executive__contents {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.company-executive__content {
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  padding: calc(40 / 1440 * 100vw) 0;
}
@media screen and (max-width: 768px) {
  .company-executive__content {
    padding: calc(20 / 375 * 100vw) 0;
  }
}

.company-executive__content:not:first-child {
  border-top: 1px solid rgba(115, 137, 159, 0.2);
}

.company-executive__header {
  display: flex;
  align-items: center;
  gap: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-executive__header {
    flex-direction: column;
    gap: calc(20 / 375 * 100vw);
  }
}

.company-executive__img {
  max-width: calc(200 / 1440 * 100vw);
  width: 100%;
  height: auto;
  aspect-ratio: 200/200;
}
@media screen and (max-width: 768px) {
  .company-executive__img {
    max-width: 100%;
  }
}

.company-executive__img img {
  object-fit: cover;
}

.company-executive__column {
  flex: 1;
}
@media screen and (max-width: 768px) {
  .company-executive__column {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
  }
}

.company-executive__post {
  font-size: 0.875rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .company-executive__post {
    font-size: calc(14 / 375 * 100vw);
  }
}

.company-executive__name {
  font-size: 1.25rem;
  font-weight: 500;
  margin-top: calc(4 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-executive__name {
    font-size: calc(20 / 375 * 100vw);
    margin-top: calc(4 / 375 * 100vw);
  }
}

.company-executive__toggle-btn {
  cursor: pointer;
  font-size: 1rem;
  font-weight: 400;
  border-top: 1px solid rgba(115, 137, 159, 0.2);
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  padding: calc(10 / 1440 * 100vw) 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-top: calc(40 / 1440 * 100vw);
  color: #34414E;
}
@media screen and (max-width: 768px) {
  .company-executive__toggle-btn {
    font-size: calc(16 / 375 * 100vw);
    padding: calc(10 / 375 * 100vw) 0;
    margin-top: calc(28 / 375 * 100vw);
    width: calc(300 / 375 * 100vw);
  }
}

/* 略歴のスタイル */
.company-executive__biographies {
  display: none; /* 初期状態で非表示 */
  margin-top: calc(16 / 1440 * 100vw);
  padding-left: calc(16 / 1440 * 100vw);
  border-left: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .company-executive__biographies {
    margin-top: calc(12 / 375 * 100vw);
    padding-left: calc(12 / 375 * 100vw);
  }
}

.company-executive__biography {
  margin-bottom: calc(8 / 1440 * 100vw);
  display: grid;
  grid-template-columns: max(90px, 100 / 1440 * 100vw) 1fr;
  gap: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-executive__biography {
    margin-bottom: calc(8 / 375 * 100vw);
    grid-template-columns: 1fr;
    gap: 0;
  }
}

.company-executive__year {
  font-weight: 400;
  margin-bottom: calc(4 / 1440 * 100vw);
  font-size: 1rem;
}
@media screen and (max-width: 768px) {
  .company-executive__year {
    margin-bottom: calc(4 / 375 * 100vw);
    font-size: calc(16 / 375 * 100vw);
  }
}

.company-executive__exp {
  font-size: 1rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .company-executive__exp {
    font-size: calc(16 / 375 * 100vw);
  }
}

/* アコーディオンが展開された場合 */
.company-executive__content.active .company-executive__biographies {
  display: block;
}

.company-office__lists {
  display: flex;
  gap: calc(30 / 1440 * 100vw);
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .company-office__lists {
    gap: calc(20 / 375 * 100vw);
  }
}

.company-office__link {
  color: #34414E;
  font-size: 1rem;
  font-weight: 500;
  position: relative;
  padding-bottom: calc(10 / 1440 * 100vw);
  border-bottom: 1px solid #34414E;
  display: flex;
  align-items: center;
  padding-right: calc(34 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-office__link {
    font-size: calc(14 / 375 * 100vw);
    padding-bottom: calc(10 / 375 * 100vw);
    padding-right: calc(34 / 375 * 100vw);
  }
}

.company-office__link span {
  position: absolute;
  display: block;
  border-right: solid 1px #34414E;
  border-top: solid 1px #34414E;
  width: calc(8 / 1440 * 100vw);
  height: calc(8 / 1440 * 100vw);
  right: calc(8 / 1440 * 100vw);
  transform: rotate(135deg);
}
@media screen and (max-width: 768px) {
  .company-office__link span {
    width: calc(8 / 375 * 100vw);
    height: calc(8 / 375 * 100vw);
    right: calc(8 / 375 * 100vw);
  }
}

.company-office__wrap {
  padding-top: calc(80 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-office__wrap {
    padding-top: calc(40 / 375 * 100vw);
  }
}

.company-office__contents {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-office__contents {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.company-office__content {
  padding: calc(20 / 1440 * 100vw) 0;
  display: grid;
  align-items: center;
  grid-template-columns: calc(200 / 1440 * 100vw) 1fr;
  gap: calc(20 / 1440 * 100vw);
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .company-office__content {
    padding: calc(20 / 375 * 100vw) 0;
    grid-template-columns: 1fr;
    gap: calc(8 / 375 * 100vw);
  }
}

.company-office__title {
  font-size: 1.125rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .company-office__title {
    font-size: calc(16 / 375 * 100vw);
  }
}

.company-office__map,
.company-office__movie {
  display: flex;
  align-items: center;
  gap: calc(4 / 1440 * 100vw);
  margin-top: calc(4 / 1440 * 100vw);
  transition: opacity 0.3s;
}
@media screen and (max-width: 768px) {
  .company-office__map,
  .company-office__movie {
    gap: calc(4 / 375 * 100vw);
    margin-top: calc(4 / 375 * 100vw);
  }
}

@media (hover: hover) {
  .company-office__map:hover,
  .company-office__movie:hover {
    opacity: 0.7;
  }
}
.company-office__map-text {
  color: #E7352C;
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 1rem;
}
@media screen and (max-width: 768px) {
  .company-office__map-text {
    font-size: calc(16 / 375 * 100vw);
  }
}

.company-office__new-tab {
  width: max(14px, 16 / 1440 * 100vw);
  height: auto;
  aspect-ratio: 16/16;
}
@media screen and (max-width: 768px) {
  .company-office__new-tab {
    width: calc(16 / 375 * 100vw);
  }
}

.company-office__new-tab img {
  object-fit: cover;
}

.company-office__text .company-office__movie-text {
  color: #34414E;
  font-size: 0.875rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .company-office__text .company-office__movie-text {
    font-size: calc(14 / 375 * 100vw);
  }
}

.company-group__content {
  width: 100%;
}

.company-group__wrap {
  display: flex;
  align-items: center;
  gap: calc(40 / 1440 * 100vw);
  padding: calc(40 / 1440 * 100vw) 0;
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .company-group__wrap {
    gap: calc(20 / 375 * 100vw);
    flex-direction: column;
    padding: calc(20 / 375 * 100vw) 0;
  }
}

.company-group__logo {
  max-width: calc(265 / 1440 * 100vw);
  width: 100%;
  height: auto;
  aspect-ratio: 265/185;
}
@media screen and (max-width: 768px) {
  .company-group__logo {
    max-width: 100%;
    aspect-ratio: 265/158;
  }
}

.company-group__logo img {
  object-fit: cover;
}

.company-group__title {
  font-size: 1.125rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .company-group__title {
    font-size: calc(18 / 375 * 100vw);
  }
}

.company-group__text {
  margin-top: calc(4 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-group__text {
    margin-top: calc(4 / 375 * 100vw);
  }
}

.company-group__link {
  display: flex;
  align-items: center;
  gap: calc(4 / 1440 * 100vw);
  margin-top: calc(4 / 1440 * 100vw);
  transition: opacity 0.3s;
}
@media screen and (max-width: 768px) {
  .company-group__link {
    gap: calc(4 / 375 * 100vw);
    margin-top: calc(4 / 375 * 100vw);
  }
}

@media (hover: hover) {
  .company-group__link:hover {
    opacity: 0.7;
  }
}
.company-group__link-text {
  color: #34414E;
  font-size: 1rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .company-group__link-text {
    font-size: calc(16 / 375 * 100vw);
  }
}

.company-group__new-tab {
  width: max(14px, 16 / 1440 * 100vw);
  height: auto;
  aspect-ratio: 16/16;
}
@media screen and (max-width: 768px) {
  .company-group__new-tab {
    width: calc(16 / 375 * 100vw);
  }
}

.company-group__new-tab img {
  object-fit: cover;
}

.company-health-management__wrap + .company-health-management__wrap {
  margin-top: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-health-management__wrap + .company-health-management__wrap {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.company-health-management__text {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-health-management__text {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.company-health-management__number {
  font-size: 1.25rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .company-health-management__number {
    font-size: calc(20 / 375 * 100vw);
  }
}

.company-health-management__img {
  width: 100%;
  height: auto;
  margin-top: calc(32 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-health-management__img {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.company-health-management__img img {
  object-fit: cover;
}

.company-health-management__img-box {
  display: flex;
  gap: 2.5rem;
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-health-management__img-box {
    margin-top: calc(20 / 375 * 100vw);
    flex-direction: column;
    gap: 0;
  }
}

.company-health-management__img-left {
  max-width: calc(300 / 1440 * 100vw);
  width: 100%;
  height: auto;
  aspect-ratio: 300/424;
}
@media screen and (max-width: 768px) {
  .company-health-management__img-left {
    max-width: 100%;
  }
}

.company-health-management__img-right {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  max-width: calc(460 / 1440 * 100vw);
  width: 100%;
}
@media screen and (max-width: 768px) {
  .company-health-management__img-right {
    max-width: 100%;
  }
}

.company-health-management__img-top {
  aspect-ratio: 460/163;
}

.company-health-management__img-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .company-health-management__img-text {
    font-size: calc(16 / 375 * 100vw);
  }
}

.company-health-management__link {
  padding-bottom: calc(20 / 1440 * 100vw);
  display: flex;
  align-items: center;
  gap: 1.25rem;
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-health-management__link {
    padding-bottom: calc(10 / 375 * 100vw);
    margin-top: calc(40 / 375 * 100vw);
  }
}

@media (hover: hover) {
  .company-health-management__link:hover .under-btn-circle {
    transform: translateX(10px);
  }
}
.company-health-management__link span {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  color: #34414E;
}
@media screen and (max-width: 768px) {
  .company-health-management__link span {
    font-size: calc(16 / 375 * 100vw);
    flex: 1;
  }
}

.company-health-management__remarks {
  font-size: 0.875rem;
  text-align: end;
  margin-top: calc(8 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-health-management__remarks {
    margin-top: calc(4 / 375 * 100vw);
    font-size: calc(14 / 375 * 100vw);
  }
}

.company-health-management__btn-new {
  margin-top: calc(40 / 1440 * 100vw);
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .company-health-management__btn-new {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.company-health-management__lists {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-health-management__lists {
    margin-top: calc(20 / 375 * 100vw);
    grid-template-columns: 1fr;
  }
}

.company-health-management__list:not(:last-child) {
  border-right: 1px solid #e5e5e5;
}
@media screen and (max-width: 768px) {
  .company-health-management__list:not(:last-child) {
    border-right: none;
    border-bottom: 1px solid #e5e5e5;
  }
}

.company-health-management__list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
  text-align: center;
  justify-content: end;
  padding-inline: 0.625rem;
}
@media screen and (max-width: 768px) {
  .company-health-management__list {
    padding-block: 1.25rem;
  }
}

.company-health-management__list-text {
  font-size: 0.875rem;
  line-height: 1.3;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .company-health-management__list-text {
    font-size: calc(14 / 375 * 100vw);
  }
}

.company-health-management__list-img {
  max-width: 12.5rem;
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
}

.company-health-management__list-bigtext {
  font-size: 1.5rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .company-health-management__list-bigtext {
    font-size: calc(24 / 375 * 100vw);
  }
}

.company-health-management__list-smalltext {
  font-size: 0.75rem;
  font-weight: 400;
  display: block;
}
@media screen and (max-width: 768px) {
  .company-health-management__list-smalltext {
    font-size: calc(12 / 375 * 100vw);
  }
}

.company-health-management__6lists {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(20 / 1440 * 100vw);
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .company-health-management__6lists {
    margin-top: calc(20 / 375 * 100vw);
    grid-template-columns: 1fr;
    gap: calc(20 / 375 * 100vw);
  }
}

.company-health-management__6list {
  background-color: #fff;
  padding: calc(20 / 1440 * 100vw);
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .company-health-management__6list {
    padding: calc(20 / 375 * 100vw);
  }
}

.company-health-management__6list-title {
  font-size: 1.25rem;
  font-weight: 500;
  letter-spacing: -0.01em;
}

.company-health-management__6list-img {
  max-width: 8.75rem;
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
}

.company-health-management__6list-subtitle {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
}

.company-health-management__6list-text {
  font-size: 0.75rem;
}

.business {
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  margin-bottom: calc(100 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business {
    margin-bottom: calc(48 / 375 * 100vw);
  }
}

.business__wrap {
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  padding: calc(80 / 1440 * 100vw) 0;
}
@media screen and (max-width: 768px) {
  .business__wrap {
    padding: calc(48 / 375 * 100vw) 0;
  }
}

.business__message {
  font-size: 2rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .business__message {
    font-size: calc(26 / 375 * 100vw);
  }
}

.business__read {
  margin-top: calc(48 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business__read {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.business__lists {
  padding: calc(40 / 1440 * 100vw) 0;
}
@media screen and (max-width: 768px) {
  .business__lists {
    padding: calc(20 / 375 * 100vw);
  }
}

.business__list {
  padding: calc(40 / 1440 * 100vw) 0;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-items: center;
  gap: calc(80 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business__list {
    padding: calc(20 / 375 * 100vw) 0 calc(30 / 375 * 100vw);
    gap: calc(20 / 375 * 100vw);
    grid-template-columns: 1fr;
  }
}

.business__list:not(:last-child) {
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
}

.business__img {
  max-width: calc(600 / 1440 * 100vw);
  width: 100%;
  height: auto;
  aspect-ratio: 600/330;
}
@media screen and (max-width: 768px) {
  .business__img {
    max-width: 100%;
  }
}

.business__list:nth-child(1) .business__img img {
  object-position: right;
}

.business__img img {
  object-fit: cover;
}

.business__body {
  padding-inline: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business__body {
    padding-inline: 0;
  }
}

.business__title {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .business__title {
    font-size: calc(24 / 375 * 100vw);
  }
}

.business__text {
  font-size: 1rem;
  margin-top: calc(24 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business__text {
    font-size: calc(16px / 375 * 100vw);
    margin-top: calc(20 / 375 * 100vw);
  }
}

.business__btn {
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business__btn {
    margin-top: calc(32 / 375 * 100vw);
  }
}

.business-conveyor__wrap {
  padding-inline: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-conveyor__wrap {
    padding-inline: calc(10 / 375 * 100vw);
  }
}

.business-conveyor__wrap + .business-conveyor__wrap {
  margin-top: calc(80 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-conveyor__wrap + .business-conveyor__wrap {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.business-conveyor__text {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-conveyor__text {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.business-conveyor__img {
  margin-top: calc(40 / 1440 * 100vw);
  aspect-ratio: 1240/460;
}
@media screen and (max-width: 768px) {
  .business-conveyor__img {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.business-conveyor__img img {
  object-fit: cover;
}

.business-conveyor__text p {
  padding-left: 1em;
  position: relative;
}

.business-conveyor__text span {
  position: absolute;
  left: 0;
  width: max(4px, 4 / 1440 * 100vw);
  height: max(4px, 4 / 1440 * 100vw);
  border-radius: 50%;
  background-color: #34414E;
  top: max(10px, 13 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-conveyor__text span {
    width: calc(4 / 375 * 100vw);
    height: calc(4 / 375 * 100vw);
    top: calc(13 / 375 * 100vw);
  }
}

.business-conveyor__contents {
  margin-top: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-conveyor__contents {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.business-conveyor__contents + .business-conveyor__contents {
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-conveyor__contents + .business-conveyor__contents {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.business-conveyor__merchandise {
  padding-left: 1em;
  position: relative;
  display: flex;
  align-items: center;
  font-size: 1.25rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .business-conveyor__merchandise {
    font-size: calc(18 / 375 * 100vw);
  }
}

.business-conveyor__merchandise::before {
  content: "";
  position: absolute;
  display: block;
  width: max(4px, 10 / 1440 * 100vw);
  height: max(4px, 10 / 1440 * 100vw);
  border-radius: 50%;
  background-color: #E7352C;
  left: 0;
}
@media screen and (max-width: 768px) {
  .business-conveyor__merchandise::before {
    width: calc(4 / 375 * 100vw);
    height: calc(4 / 375 * 100vw);
  }
}

.business-conveyor__lists {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(50 / 1440 * 100vw);
  margin-top: calc(24 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-conveyor__lists {
    grid-template-columns: 1fr;
    gap: calc(20 / 375 * 100vw);
    margin-top: calc(20 / 375 * 100vw);
  }
}

.business-conveyor__name {
  font-size: 1.125rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .business-conveyor__name {
    font-size: calc(16 / 375 * 100vw);
  }
}

.business-conveyor__lists + .business-conveyor__lists {
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-conveyor__lists + .business-conveyor__lists {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.business-conveyor__link {
  margin-top: calc(10 / 1440 * 100vw);
  display: block;
  aspect-ratio: 380/226;
}
@media screen and (max-width: 768px) {
  .business-conveyor__link {
    margin-top: calc(10 / 375 * 100vw);
  }
}

.business-conveyor__link img {
  object-fit: cover;
}

.business-conveyor__bg {
  aspect-ratio: 1240/1146;
}

.business-conveyor__bg img {
  object-fit: cover;
}

.business-conveyor__btn-new {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-conveyor__btn-new {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.business-robot-si__wrap {
  padding-inline: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-robot-si__wrap {
    padding-inline: calc(10 / 375 * 100vw);
  }
}

.business-robot-si__wrap + .business-robot-si__wrap {
  margin-top: calc(80 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-robot-si__wrap + .business-robot-si__wrap {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.business-robot-si__text {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-robot-si__text {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.business-robot-si__img {
  margin-top: calc(40 / 1440 * 100vw);
  aspect-ratio: 1240/505;
}
@media screen and (max-width: 768px) {
  .business-robot-si__img {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.business-robot-si__img img {
  object-fit: cover;
}

.business-robot-si__text p {
  padding-left: 1em;
  position: relative;
}

.business-robot-si__text span {
  position: absolute;
  left: 0;
  width: max(4px, 4 / 1440 * 100vw);
  height: max(4px, 4 / 1440 * 100vw);
  border-radius: 50%;
  background-color: #34414E;
  top: max(10px, 13 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-robot-si__text span {
    width: calc(4 / 375 * 100vw);
    height: calc(4 / 375 * 100vw);
    top: calc(13 / 375 * 100vw);
  }
}

.business-robot-si__column {
  display: flex;
  align-items: center;
  gap: calc(40 / 1440 * 100vw);
  margin-top: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-robot-si__column {
    flex-direction: column;
    gap: calc(24 / 375 * 100vw);
    margin-top: calc(40 / 375 * 100vw);
  }
}

.business-robot-si__service {
  max-width: calc(600 / 1440 * 100vw);
  width: 100%;
  height: auto;
  aspect-ratio: 600/330;
}
@media screen and (max-width: 768px) {
  .business-robot-si__service {
    max-width: 100%;
  }
}

.business-robot-si__service img {
  object-fit: cover;
}

.business-robot-si__sab-head-small {
  color: #34414E;
  font-size: 1rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .business-robot-si__sab-head-small {
    font-size: calc(14 / 375 * 100vw);
  }
}

.business-robot-si__sab-head-big {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .business-robot-si__sab-head-big {
    font-size: calc(28 / 375 * 100vw);
  }
}

.business-robot-si__text01:nth-of-type(1) {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-robot-si__text01:nth-of-type(1) {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.business-robot-si__text01:nth-of-type(2) {
  margin-top: calc(10 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-robot-si__text01:nth-of-type(2) {
    margin-top: calc(10 / 375 * 100vw);
  }
}

.business-robot-si__lists {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: calc(50 / 1440 * 100vw);
  row-gap: calc(60 / 1440 * 100vw);
  margin-top: calc(80 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-robot-si__lists {
    grid-template-columns: 1fr;
    gap: calc(20 / 375 * 100vw);
    margin-top: calc(40 / 375 * 100vw);
  }
}

.business-robot-si__picture {
  aspect-ratio: 380/226;
  width: 100%;
  height: auto;
}

.business-robot-si__picture img {
  object-fit: cover;
}

.business-robot-si__content {
  margin-top: calc(28 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-robot-si__content {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.business-robot-si__blue {
  color: #34414E;
  font-size: 1.25rem;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .business-robot-si__blue {
    font-size: calc(20 / 375 * 100vw);
  }
}

.business-robot-si__text02 {
  margin-top: calc(12 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-robot-si__text02 {
    margin-top: calc(12 / 375 * 100vw);
  }
}

.business-robot-si__btn {
  margin-top: calc(40 / 1440 * 100vw);
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .business-robot-si__btn {
    margin-top: calc(28 / 375 * 100vw);
  }
}

.business-robot-si__double {
  margin-top: calc(80 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-robot-si__double {
    margin-top: calc(60 / 375 * 100vw);
  }
}

.business-robot-si__wrapper {
  display: flex;
  align-items: center;
  gap: calc(60 / 1440 * 100vw);
  padding: calc(40 / 1440 * 100vw) 0;
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .business-robot-si__wrapper {
    flex-direction: column;
    gap: calc(20 / 375 * 100vw);
    padding: calc(40 / 375 * 100vw) 0;
  }
}

.business-robot-si__robot {
  aspect-ratio: 600/330;
  width: 100%;
  max-width: calc(600 / 1440 * 100vw);
  height: auto;
}
@media screen and (max-width: 768px) {
  .business-robot-si__robot {
    max-width: 100%;
  }
}

.business-robot-si__robot img {
  object-fit: cover;
}

.business-robot-si__hear {
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-robot-si__hear {
    margin-top: calc(28 / 375 * 100vw);
  }
}

.business-robot-si__btn-new {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-robot-si__btn-new {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.business-plant__wrap {
  padding-inline: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-plant__wrap {
    padding-inline: calc(10 / 375 * 100vw);
  }
}

.business-plant__wrap + .business-plant__wrap {
  margin-top: calc(80 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-plant__wrap + .business-plant__wrap {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.business-plant__text {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-plant__text {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.business-plant__text p {
  padding-left: 1em;
  position: relative;
}

.business-plant__text span {
  position: absolute;
  left: 0;
  width: max(4px, 4 / 1440 * 100vw);
  height: max(4px, 4 / 1440 * 100vw);
  border-radius: 50%;
  background-color: #34414E;
  top: max(10px, 13 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-plant__text span {
    width: calc(4 / 375 * 100vw);
    height: calc(4 / 375 * 100vw);
    top: calc(13 / 375 * 100vw);
  }
}

.business-plant__subhead {
  font-size: 1.25rem;
  font-weight: 500;
  text-align: center;
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-plant__subhead {
    font-size: calc(18 / 375 * 100vw);
    margin-top: calc(24 / 375 * 100vw);
  }
}

.business-plant__3lists {
  margin-top: calc(28 / 1440 * 100vw);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(50 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-plant__3lists {
    margin-top: calc(16 / 375 * 100vw);
    grid-template-columns: 1fr;
    gap: calc(20 / 375 * 100vw);
  }
}

.business-plant__3list-img {
  aspect-ratio: 380/380;
}
@media screen and (max-width: 768px) {
  .business-plant__3list-img {
    max-width: calc(260 / 375 * 100vw);
    width: 100%;
    margin-inline: auto;
  }
}

.business-plant__3list-img img {
  object-fit: cover;
}

.business-plant__3list-head {
  margin-top: calc(20 / 1440 * 100vw);
  color: #79c5a8;
  font-size: 1.25rem;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .business-plant__3list-head {
    margin-top: calc(8 / 375 * 100vw);
    font-size: calc(16 / 375 * 100vw);
  }
}

.business-plant__3list-text {
  margin-top: calc(12 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-plant__3list-text {
    margin-top: calc(4 / 375 * 100vw);
  }
}

.business-plant__contents {
  margin-top: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-plant__contents {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.business-plant__contents + .business-plant__contents {
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-plant__contents + .business-plant__contents {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.business-plant__merchandise {
  padding-left: 1em;
  position: relative;
  display: flex;
  align-items: center;
  font-size: 1.25rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .business-plant__merchandise {
    font-size: calc(18 / 375 * 100vw);
  }
}

.business-plant__merchandise::before {
  content: "";
  position: absolute;
  display: block;
  width: max(4px, 10 / 1440 * 100vw);
  height: max(4px, 10 / 1440 * 100vw);
  border-radius: 50%;
  background-color: #E7352C;
  left: 0;
}
@media screen and (max-width: 768px) {
  .business-plant__merchandise::before {
    width: calc(4 / 375 * 100vw);
    height: calc(4 / 375 * 100vw);
  }
}

.business-plant__lists {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(50 / 1440 * 100vw);
  margin-top: calc(24 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-plant__lists {
    grid-template-columns: 1fr;
    gap: calc(20 / 375 * 100vw);
    margin-top: calc(20 / 375 * 100vw);
  }
}

.business-plant__lists--4list {
  grid-template-columns: repeat(4, 1fr);
  gap: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-plant__lists--4list {
    grid-template-columns: 1fr;
    gap: calc(20 / 375 * 100vw);
  }
}

.business-plant__name {
  font-size: 1.125rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .business-plant__name {
    font-size: calc(16 / 375 * 100vw);
  }
}

.business-plant__lists + .business-plant__lists {
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-plant__lists + .business-plant__lists {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.business-plant__link {
  margin-top: calc(10 / 1440 * 100vw);
  display: block;
  aspect-ratio: 380/226;
}
@media screen and (max-width: 768px) {
  .business-plant__link {
    margin-top: calc(10 / 375 * 100vw);
  }
}

.business-plant__lists--4list .business-plant__link {
  aspect-ratio: 270/218;
}

.business-plant__link img {
  object-fit: cover;
}

.business-plant__btn-new {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .business-plant__btn-new {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.contact__wrapper + .contact__wrapper {
  margin-top: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .contact__wrapper + .contact__wrapper {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.contact__contents {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(20 / 1440 * 100vw);
  padding-inline: calc(20 / 1440 * 100vw);
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .contact__contents {
    grid-template-columns: 1fr;
    gap: calc(40 / 375 * 100vw);
    padding-inline: 0;
    margin-top: calc(30 / 375 * 100vw);
  }
}

.contact__contents--other {
  grid-template-columns: repeat(2, 1fr);
  gap: calc(80 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .contact__contents--other {
    grid-template-columns: 1fr;
    gap: calc(40 / 375 * 100vw);
  }
}

.contact__content {
  max-width: calc(580 / 1440 * 100vw);
  width: 100%;
  text-align: center;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 768px) {
  .contact__content {
    max-width: 100%;
  }
}

.contact__flex {
  padding: calc(16 / 1440 * 100vw);
  background-color: #34414E;
  border-radius: calc(20 / 1440 * 100vw) calc(20 / 1440 * 100vw) 0 0;
  display: flex;
  align-items: center;
  gap: calc(16 / 1440 * 100vw);
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .contact__flex {
    padding: calc(20 / 375 * 100vw);
    border-radius: calc(20 / 375 * 100vw) calc(20 / 375 * 100vw) 0 0;
    gap: calc(10 / 375 * 100vw);
  }
}

.contact__icon {
  max-width: 4.1875rem;
  width: 100%;
  height: auto;
  aspect-ratio: 67/67;
}
@media screen and (max-width: 768px) {
  .contact__icon {
    max-width: calc(50 / 375 * 100vw);
  }
}

.contact__icon img {
  object-fit: cover;
}

.contact__title {
  font-size: 1.5rem;
  font-weight: 500;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .contact__title {
    font-size: calc(20 / 375 * 100vw);
    text-align: left;
  }
}

.contact__body {
  padding: calc(20 / 1440 * 100vw) calc(28 / 1440 * 100vw);
  border: 1px solid #34414E;
  border-radius: 0 0 calc(20 / 1440 * 100vw) calc(20 / 1440 * 100vw);
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  background-color: #eaebee;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .contact__body {
    padding: calc(20 / 375 * 100vw);
    border-radius: 0 0 calc(20 / 375 * 100vw) calc(20 / 375 * 100vw);
  }
}

.contact__mail {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1;
  padding: calc(18 / 1440 * 100vw) calc(60 / 1440 * 100vw) calc(18 / 1440 * 100vw) calc(40 / 1440 * 100vw);
  border-radius: calc(30 / 1440 * 100vw);
  background-color: #fff;
  color: #34414E;
  margin-inline: auto;
  margin-bottom: calc(24 / 1440 * 100vw);
  transition: background-color 0.3s, color 0.3s;
}
@media screen and (max-width: 768px) {
  .contact__mail {
    font-size: calc(18 / 375 * 100vw);
    padding: calc(16 / 375 * 100vw) calc(60 / 375 * 100vw) calc(16 / 375 * 100vw) calc(40 / 375 * 100vw);
    border-radius: calc(30 / 375 * 100vw);
    margin-bottom: calc(20 / 375 * 100vw);
  }
}

.contact__mail::before {
  position: absolute;
  content: "";
  display: block;
  background-image: url(./../images/new_tab.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: calc(16 / 1440 * 100vw);
  height: calc(16 / 1440 * 100vw);
  right: calc(36 / 1440 * 100vw);
  transition: background-image 0.3s;
}
@media screen and (max-width: 768px) {
  .contact__mail::before {
    width: calc(16 / 375 * 100vw);
    height: calc(16 / 375 * 100vw);
    right: calc(30 / 375 * 100vw);
  }
}

@media (hover: hover) {
  .contact__mail:hover {
    background-color: #34414E;
    color: #fff;
  }
  .contact__mail:hover::before {
    background-image: url(./../images/new_tab_white.svg);
  }
}
.contact__text {
  font-size: 1.25rem;
  font-weight: 500;
  flex-grow: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: calc(12 / 1440 * 100vw);
  border-top: 1px solid #34414E;
}
@media screen and (max-width: 768px) {
  .contact__text {
    font-size: calc(16 / 375 * 100vw);
    padding-top: calc(8 / 375 * 100vw);
  }
}

.contact__text-link {
  position: relative;
  color: #34414E;
}

.contact__text-link::after {
  content: "";
  display: block;
  position: absolute;
  width: calc(14 / 1440 * 100vw);
  height: calc(14 / 1440 * 100vw);
  background-image: url(./../images/arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  right: clamp(60px, 80 / 1440 * 100vw, 20%);
  transition: transform 0.3s;
}
@media screen and (max-width: 768px) {
  .contact__text-link::after {
    width: calc(14 / 375 * 100vw);
    height: calc(14 / 375 * 100vw);
    right: calc(40 / 375 * 100vw);
  }
}

@media (hover: hover) {
  .contact__text-link:hover::after {
    transform: translateX(10px);
  }
}
.contact__text-small {
  font-size: 0.875rem;
  font-weight: 400;
  flex-grow: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: calc(12 / 1440 * 100vw);
  border-top: 1px solid #34414E;
}
@media screen and (max-width: 768px) {
  .contact__text-small {
    font-size: calc(14 / 375 * 100vw);
    padding-top: calc(8 / 375 * 100vw);
  }
}

.contact__wrap {
  display: flex;
  align-items: center;
  gap: calc(5 / 1440 * 100vw);
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .contact__wrap {
    margin-top: calc(8 / 375 * 100vw);
    row-gap: calc(5 / 375 * 100vw);
  }
}

.contact__call {
  max-width: calc(50 / 1440 * 100vw);
  width: 100%;
  height: auto;
  aspect-ratio: 50/50;
}
@media screen and (max-width: 768px) {
  .contact__call {
    max-width: calc(30 / 375 * 100vw);
  }
}

.contact__call img {
  object-fit: cover;
}

.contact__number {
  font-family: "Outfit", sans-serif;
  line-height: 1;
  font-weight: 600;
  font-size: 2.25rem;
}
@media screen and (max-width: 768px) {
  .contact__number {
    font-size: calc(28 / 375 * 100vw);
  }
}

.contact__small {
  margin-top: calc(4 / 1440 * 100vw);
  font-size: 1.125rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .contact__small {
    margin-top: calc(4 / 375 * 100vw);
    font-size: calc(16 / 375 * 100vw);
  }
}

body.recruit-body {
  background-color: #fff;
}

.recruit {
  letter-spacing: 0.1em;
}

/* ボタン */
.recruit-btn a {
  max-width: 19.5rem;
  height: 4.125rem;
  width: 100%;
  padding-inline: 1.5rem;
  position: relative;
  display: flex;
  align-items: center;
  background-color: #526170;
  color: #fff;
  border-radius: 0.5rem;
  transition: background-color 0.3s;
}
@media screen and (max-width: 768px) {
  .recruit-btn a {
    max-width: 17.5rem;
    height: 3.5rem;
  }
}

.recruit-btn a::before,
.recruit-btn a::after {
  content: "";
  position: absolute;
  transition: right 0.3s;
}

.recruit-btn a::before {
  background-image: url(./../images/recruit-arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 0.875rem;
  height: 0.875rem;
  right: 2.0625rem;
  z-index: 1;
}

.recruit-btn a::after {
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background-color: #f2f8ff;
  right: 1.5rem;
}

.recruit-btn a:hover {
  background-color: #274665;
}

.recruit-btn a:hover::before {
  right: 1.75rem;
}

.recruit-btn a:hover::after {
  right: 1.1875rem;
}

/* タイトル */
.recruit-title__wrap {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.recruit-title__circle {
  width: 0.625rem;
  height: 0.625rem;
  border-radius: 50%;
  background-color: #E7352C;
}

.recruit-title__entitle {
  font-family: "Outfit", sans-serif;
  font-weight: 700;
  font-size: 1.25rem;
  line-height: 1;
}

.recruit-title__jptitle {
  font-size: 2.5rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.6;
  margin-top: 0.5rem;
  position: relative;
  display: flex;
  align-items: center;
  padding-right: 4.5rem;
  width: fit-content;
  color: #34414E;
}
@media screen and (max-width: 768px) {
  .recruit-title__jptitle {
    font-size: 2rem;
    margin-top: 0.25rem;
    padding-right: 3rem;
  }
}

.recruit-title__jptitle span {
  color: #E7352C;
}

.recruit-title__jptitle::before,
.recruit-title__jptitle::after {
  content: "";
  position: absolute;
  display: block;
  transition: right 0.3s;
}

.recruit-title__jptitle::before {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background-color: #E7352C;
  right: 0;
}
@media screen and (max-width: 768px) {
  .recruit-title__jptitle::before {
    width: 2rem;
    height: 2rem;
  }
}

.recruit-title__jptitle::after {
  background-image: url(./../images/recruit-arrow-white.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 1.3125rem;
  height: 1.3125rem;
  right: 0.875rem;
}
@media screen and (max-width: 768px) {
  .recruit-title__jptitle::after {
    width: 1rem;
    height: 1rem;
    right: 0.5rem;
  }
}

.recruit-title__jptitle:hover::after {
  right: 0.625rem;
}

.recruit-title__jptitle:hover::before {
  right: -0.25rem;
}

.recruit-under-title__jptitle::before,
.recruit-under-title__jptitle::after {
  display: none;
}

/* リード文 */
.recruit-read {
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.8;
}

.recruit-read-big {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.8;
  max-width: 53.125rem;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .recruit-read-big {
    font-size: 1.125rem;
  }
}

/* CTA */
.recruit-footer-contact {
  max-width: 90rem;
  margin-block: 6.25rem;
  width: 96%;
  margin-inline: auto;
  border-radius: 1.25rem;
  background: linear-gradient(0deg, rgba(242, 248, 255, 0.47) 0%, rgba(242, 248, 255, 0.47) 100%), url(./../images/recruit-texture.webp) lightgray 0% 0%/50px 50px repeat;
}
@media screen and (max-width: 768px) {
  .recruit-footer-contact {
    margin-block: 3.75rem;
  }
}

.recruit-footer-contact__inner {
  padding: 2.5rem 3.75rem 0;
}
@media screen and (max-width: 768px) {
  .recruit-footer-contact__inner {
    padding: 2.5rem 1rem 0;
  }
}

.recruit-footer-contact__img {
  width: 100%;
  height: auto;
  aspect-ratio: 1280/555;
}
@media screen and (max-width: 768px) {
  .recruit-footer-contact__img {
    aspect-ratio: 5/2;
  }
}

.recruit-footer-contact__img img {
  object-fit: cover;
  object-position: top;
  border-radius: 1.25rem;
}

.recruit-footer-contact__title {
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-footer-contact__title {
    margin-top: 1.5rem;
  }
}

.recruit-footer-contact__title p {
  font-size: 4rem;
  letter-spacing: -0.03em;
  font-weight: 700;
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  .recruit-footer-contact__title p {
    font-size: 2.25rem;
  }
}

.recruit-footer-contact__title p:nth-child(1) {
  margin-left: 10.3125rem;
}
@media screen and (max-width: 768px) {
  .recruit-footer-contact__title p:nth-child(1) {
    margin-left: 0;
  }
}

.recruit-footer-contact__title p:nth-child(2) {
  margin-left: 31.375rem;
}
@media screen and (max-width: 768px) {
  .recruit-footer-contact__title p:nth-child(2) {
    margin-left: 0;
  }
}

.recruit-footer-contact__title ruby {
  color: #E7352C;
}

.recruit-footer-contact__title rt {
  font-size: 1.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-footer-contact__title rt {
    font-size: 0.875rem;
  }
}

.recruit-footer-contact__btn {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  justify-content: space-between;
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .recruit-footer-contact__btn {
    margin-top: 2rem;
  }
}

.recruit-footer-contact__link {
  padding: 1.75rem;
  color: #fff;
  text-align: center;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  transition: background-color 0.3s;
}
@media screen and (max-width: 768px) {
  .recruit-footer-contact__link {
    padding: 1.25rem;
    font-size: 1.125rem;
  }
}

.recruit-footer-contact__link:nth-child(1) {
  background-color: #E7352C;
  border-radius: 0 0 0 1.25rem;
}

.recruit-footer-contact__link:nth-child(1):hover {
  background-color: #e90b00;
}

.recruit-footer-contact__link:nth-child(2) {
  background-color: #34414E;
  border-radius: 0 0 1.25rem 0;
}

.recruit-footer-contact__link:nth-child(2):hover {
  background-color: #274665;
}

/* サイドバー（下） */
.recruit-sidebar {
  padding-top: 6.25rem;
  border-top: 1px solid #888;
}
@media screen and (max-width: 768px) {
  .recruit-sidebar {
    padding-top: 3.75rem;
  }
}

.recruit-sidebar__flex {
  display: grid;
  grid-template-columns: 17.5rem 1fr;
  justify-content: space-between;
  gap: 3.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-sidebar__flex {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}

.recruit-sidebar__lists {
  display: flex;
  flex-wrap: wrap;
  gap: 2.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-sidebar__lists {
    gap: 1.5rem;
    justify-content: center;
  }
}

.recruit-sidebar__link:hover .recruit-sidebar__img img {
  transform: scale(1.05);
}

.recruit-sidebar__img {
  max-width: 17.5rem;
  width: 100%;
  height: auto;
  aspect-ratio: 280/186;
  overflow: hidden;
  border-radius: 1.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-sidebar__img {
    max-width: 20rem;
  }
}

.recruit-sidebar__img img {
  object-fit: cover;
  transition: transform 0.3s;
}

.recruit-sidebar__box {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .recruit-sidebar__box {
    margin-top: 0.25rem;
  }
}

.recruit-sidebar__circle {
  width: 0.625rem;
  height: 0.625rem;
  border-radius: 50%;
  background-color: #E7352C;
}

.recruit-sidebar__title {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.8;
  color: #34414E;
}
@media screen and (max-width: 768px) {
  .recruit-sidebar__title {
    font-size: 1.125rem;
  }
}

.recruit-sidebar__arrow {
  display: flex;
  align-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background-color: #e2ebf5;
  position: relative;
}
@media screen and (max-width: 768px) {
  .recruit-sidebar__arrow {
    width: 1.5rem;
    height: 1.5rem;
  }
}

.recruit-sidebar__arrow::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(./../images/recruit-arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 0.875rem;
  height: 0.875rem;
  right: 0.5625rem;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .recruit-sidebar__arrow::after {
    width: 0.75rem;
    height: 0.75rem;
  }
}

.recruit-fv {
  position: relative;
}
@media screen and (max-width: 768px) {
  .recruit-fv {
    margin-bottom: 10.9375rem;
  }
}

.recruit-fv-swiper .swiper-slide {
  width: 100%;
  height: 100vh;
  position: relative;
}

.recruit-fv-swiper .swiper-slide img {
  object-fit: cover;
  border-radius: 0 0 0 6.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-fv-swiper .swiper-slide img {
    border-radius: 0 0 0 3.125rem;
    object-position: 62%;
  }
}

.recruit-fv__title {
  position: absolute;
  font-size: 5rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  color: #fff;
  bottom: 8rem;
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  .recruit-fv__title {
    font-size: 2.5rem;
    bottom: 3.75rem;
  }
}

.recruit-fv__title p:nth-of-type(1) {
  margin-left: 6.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-fv__title p:nth-of-type(1) {
    margin-left: 0.9375rem;
  }
}

.recruit-fv__title p:nth-of-type(2) {
  margin-left: 29.625rem;
}
@media screen and (max-width: 768px) {
  .recruit-fv__title p:nth-of-type(2) {
    margin-left: 0.9375rem;
  }
}

.recruit-fv__title ruby {
  color: #E7352C;
}

.recruit-fv__title rt {
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .recruit-fv__title rt {
    font-size: 1rem;
  }
}

.recruit-news {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .recruit-news {
    bottom: unset;
    right: unset;
    top: 100%;
    left: 6%;
    width: 88%;
    max-width: 1232px;
    border-bottom: 1px solid #e8e8e8;
  }
}

.recruit-news-list__item a {
  padding: 1.25rem 2.25rem 0.875rem 2rem;
  background-color: #fff;
  display: block;
  border-radius: 1.875rem 0 0 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-news-list__item a {
    padding: 1.25rem;
  }
}

.recruit-news-list__item-date {
  font-family: "Outfit", sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: #888888;
  line-height: 1;
}

.recruit-news-list__item-title {
  width: 21.875rem;
  margin-top: 0.5rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.8;
  color: #34414E;
}
@media screen and (max-width: 768px) {
  .recruit-news-list__item-title {
    width: 100%;
  }
}

.recruit-news-list__item-arrow {
  display: flex;
  align-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background-color: #e2ebf5;
  position: relative;
}
@media screen and (max-width: 768px) {
  .recruit-news-list__item-arrow {
    width: 1.5rem;
    height: 1.5rem;
  }
}

.recruit-news-list__item-arrow::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(./../images/recruit-arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 0.875rem;
  height: 0.875rem;
  right: 0.5625rem;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .recruit-news-list__item-arrow::after {
    width: 0.75rem;
    height: 0.75rem;
    right: 0.375rem;
  }
}

.recruit-message {
  margin-top: 6.25rem;
  margin-bottom: 5rem;
  width: 96%;
  margin-inline: auto;
  border-radius: 3.125rem;
  background: linear-gradient(0deg, rgba(242, 248, 255, 0.47) 0%, rgba(242, 248, 255, 0.47) 100%), url(./../images/recruit-texture.webp) lightgray 0% 0%/50px 50px repeat;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .recruit-message {
    margin-top: 3.75rem;
    margin-bottom: 2.5rem;
  }
}

.recruit-message__inner {
  display: flex;
  gap: 3.75rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .recruit-message__inner {
    flex-direction: column;
    gap: 2.5rem;
    padding-bottom: 5rem;
  }
}

/* スライド */
.recruit-message__left {
  display: flex;
  gap: 1.25rem;
  width: 50%;
}
@media screen and (max-width: 768px) {
  .recruit-message__left {
    width: 100%;
    justify-content: center;
  }
}

.recruit-message__slide-wrapper {
  overflow: hidden;
  display: flex;
  flex-direction: column;
  height: 54.125rem;
}
@media screen and (max-width: 768px) {
  .recruit-message__slide-wrapper {
    height: 50vh;
  }
}

.recruit-message__slider {
  display: flex;
  flex-direction: column;
}

.slider-scroll-top {
  animation: scroll-top 60s infinite linear 0.5s both;
}

.slider-scroll-under {
  animation: scroll-under 60s infinite linear 0.5s both;
}

.recruit-message__slide {
  position: relative;
  margin-bottom: 1.25rem;
}

.recruit-message__slide::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(52, 65, 78, 0.07);
  border-radius: 0.625rem;
}

.recruit-message__slide img {
  display: block;
  width: 15.625rem;
  height: 18.75rem;
  border-radius: 0.625rem;
  object-fit: cover;
}

/* CSSアニメーション */
@keyframes scroll-top {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-100%);
  }
}
/* CSSアニメーション */
@keyframes scroll-under {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0);
  }
}
/*　テキスト　*/
.recruit-message__right {
  margin-top: 8.75rem;
  width: 40%;
}
@media screen and (max-width: 768px) {
  .recruit-message__right {
    width: 100%;
    margin-top: 0;
  }
}

.recruit-message__title {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .recruit-message__title {
    font-size: 1.5rem;
  }
}

.recruit-message__title span {
  color: #E7352C;
}

.recruit-message__text-wrap {
  margin-top: 2rem;
  font-size: 1.25rem;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .recruit-message__text-wrap {
    font-size: 1.125rem;
    margin-top: 1.25rem;
  }
}

.recruit-message__text-wrap p + p {
  margin-top: 1.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-message__text-wrap p + p {
    margin-top: 0.75rem;
  }
}

.recruit-message__btn {
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-message__btn {
    margin-top: 2rem;
  }
}

.recruit-message__deco {
  position: absolute;
  bottom: 0;
  right: 0;
  -webkit-text-stroke: 2px #e2ebf5;
  text-stroke: 2px #e2ebf5;
  paint-order: stroke;
  color: transparent;
  font-family: "Poppins", sans-serif;
  font-size: 9rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
}
@media screen and (max-width: 768px) {
  .recruit-message__deco {
    font-size: 4.5rem;
    -webkit-text-stroke: 1px #e2ebf5;
    text-stroke: 1px #e2ebf5;
  }
}

.recruit-about {
  padding-block: 3.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-about {
    padding-block: 2rem;
  }
}

.recruit-about__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .recruit-about__top {
    flex-direction: column;
    align-items: start;
  }
}

@media screen and (max-width: 768px) {
  .recruit-about__right {
    margin-top: 1.25rem;
  }
}

.recruit-about__under {
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .recruit-about__under {
    margin-top: 1.5rem;
  }
}

.recruit-about__lists {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-about__lists {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
}

.recruit-about__link {
  height: 14.5625rem;
  display: flex;
}
@media screen and (max-width: 768px) {
  .recruit-about__link {
    height: 100%;
    justify-content: center;
  }
}

.recruit-about__content {
  border-radius: 1.25rem 0 0 1.25rem;
  background: linear-gradient(0deg, rgba(242, 248, 255, 0.47) 0%, rgba(242, 248, 255, 0.47) 100%), url(./../images/recruit-texture.webp) lightgray 0% 0%/50px 50px repeat;
  padding-left: 1.25rem;
  width: 45%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .recruit-about__content {
    padding-left: 1rem;
    border-radius: 0.625rem 0 0 0.625rem;
  }
}

.recruit-about__text {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.8;
  color: #34414E;
}
@media screen and (max-width: 768px) {
  .recruit-about__text {
    font-size: 1rem;
  }
}

.recruit-about__arrow {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background-color: #e2ebf5;
  margin-top: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.recruit-about__arrow::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(./../images/recruit-arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 0.875rem;
  height: 0.875rem;
  left: 0.75rem;
  z-index: 1;
}

.recruit-about__link:hover .recruit-about__img img {
  transform: scale(1.1);
}

.recruit-about__img {
  aspect-ratio: 350/233;
  width: 100%;
  max-width: 21.875rem;
  overflow: hidden;
  border-radius: 0 1.25rem 1.25rem 0;
}
@media screen and (max-width: 768px) {
  .recruit-about__img {
    max-width: 11.5rem;
  }
}

.recruit-about__img img {
  object-fit: cover;
  transition: transform 0.3s;
}
@media screen and (max-width: 768px) {
  .recruit-about__img img {
    border-radius: 0 0.625rem 0.625rem 0;
  }
}

.recruit-people {
  margin-top: 5rem;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .recruit-people {
    margin-top: 2.5rem;
  }
}

.recruit-people__inner {
  position: relative;
}

.recruit-people__read {
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .recruit-people__read {
    margin-top: 1.25rem;
  }
}

.recruit-people__container {
  margin-top: 5rem;
  margin-right: calc(50% - 50vw);
}
@media screen and (max-width: 768px) {
  .recruit-people__container {
    margin-top: 2.5rem;
  }
}

.recruit-people__link {
  position: relative;
  display: block;
}

.recruit-people__link:hover .recruit-people__img img {
  transform: scale(1.05);
}

.recruit-people__img {
  position: relative;
  aspect-ratio: 430/626;
  overflow: hidden;
}

.recruit-people__img::after {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 1.25rem;
  background: linear-gradient(180deg, rgba(52, 65, 78, 0) 53.62%, #34414e 100%);
}

.recruit-people__img img {
  object-fit: cover;
  transition: transform 0.3s;
}

.recruit-people__head {
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.5;
}

.recruit-people__textbox {
  position: absolute;
  bottom: 0;
  padding: 0 0.625rem 2.25rem 1.25rem;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .recruit-people__textbox {
    padding: 0 0.75rem 1rem;
  }
}

.recruit-people__name {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.8;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .recruit-people__name {
    font-size: 1.25rem;
  }
}

.recruit-people__business {
  position: absolute;
  top: 0;
  right: 0;
  color: #34414E;
  background-color: #f2f8ff;
  padding: 0.5rem 0.25rem;
  border-radius: 0.25rem 1.25rem 0 0.25rem;
}

.recruit-people__job,
.recruit-people__name {
  margin-top: 0.5rem;
}

.recruit-people__business,
.recruit-people__job {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
}

.recruit-people .swiper-button-prev,
.recruit-people .swiper-button-next {
  color: #34414E;
  width: 6.25rem;
  height: 6.25rem;
  border-radius: 50%;
  background-color: #f2f8ff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.3s;
  top: 6.25rem;
  transform: opacity 0.3s;
}
@media screen and (max-width: 768px) {
  .recruit-people .swiper-button-prev,
  .recruit-people .swiper-button-next {
    display: none;
  }
}

.recruit-people .swiper-button-next:hover,
.recruit-people .swiper-button-prev:hover {
  opacity: 0.8;
}

.recruit-people .swiper-button-prev {
  right: 12.5rem;
  left: initial;
}

.recruit-people .swiper-button-next {
  right: 3.75rem;
}

.recruit-people .swiper-button-prev::before,
.recruit-people .swiper-button-next::before {
  content: "";
  position: absolute;
  width: 2.75rem;
  height: 2.75rem;
  background-image: url(./../images/arrow.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transition: background-image 0.3s;
}
.recruit-people .swiper-button-prev::before {
  transform: rotate(-180deg);
}

.recruit-environment {
  margin-top: 6.25rem;
  padding-block: 6.25rem;
  width: 96%;
  margin-inline: auto;
  border-radius: 3.125rem;
  background: linear-gradient(0deg, rgba(242, 248, 255, 0.47) 0%, rgba(242, 248, 255, 0.47) 100%), url(./../images/recruit-texture.webp) lightgray 0% 0%/50px 50px repeat;
}
@media screen and (max-width: 768px) {
  .recruit-environment {
    margin-top: 3.75rem;
    padding-block: 3.75rem;
  }
}

.recruit-environment__contents {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 6.25rem;
  align-items: end;
}
@media screen and (max-width: 768px) {
  .recruit-environment__contents {
    grid-template-columns: 1fr;
    gap: 2.5rem;
  }
}

.recruit-environment__read {
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .recruit-environment__read {
    margin-top: 1.25rem;
  }
}

.recruit-environment__lists {
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-environment__lists {
    margin-top: 1.5rem;
  }
}

.recruit-environment__link {
  max-width: 31.5625rem;
  width: 100%;
  height: 5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-left: 0.75rem;
  padding-right: 1.25rem;
  border-bottom: 2px solid #e2ebf5;
  color: #34414E;
}
@media screen and (max-width: 768px) {
  .recruit-environment__link {
    max-width: 100%;
    height: 3.5rem;
  }
}

.recruit-environment__link:hover .recruit-environment__arrow {
  background-color: #E7352C;
}

.recruit-environment__link:hover .recruit-environment__arrow::after {
  background-image: url(./../images/recruit-arrow-white.svg);
}

.recruit-environment__arrow {
  display: flex;
  align-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background-color: #e2ebf5;
  position: relative;
  transition: background-color 0.3s;
}
@media screen and (max-width: 768px) {
  .recruit-environment__arrow {
    width: 1.5rem;
    height: 1.5rem;
  }
}

.recruit-environment__arrow::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(./../images/recruit-arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 0.875rem;
  height: 0.875rem;
  right: 0.5625rem;
  z-index: 1;
  transition: background-image 0.3s;
}
@media screen and (max-width: 768px) {
  .recruit-environment__arrow::after {
    width: 0.75rem;
    height: 0.75rem;
  }
}

/* swiper */
.recruit-environment-swiper .swiper-slide img {
  object-fit: cover;
  aspect-ratio: 645/645;
  border-radius: 1.25rem;
}

.recruit-environment__swiper {
  position: relative;
  max-width: 40.3125rem;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .recruit-environment__swiper {
    max-width: 18.75rem;
    margin-inline: auto;
  }
}

.recruit-environment__swiper .swiper-pagination {
  bottom: -1.75rem;
}

.recruit-environment__swiper .swiper-pagination .swiper-pagination-bullet {
  background: rgba(52, 65, 78, 0.56);
}

.recruit-environment__swiper .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 0.75rem;
  width: 0.625rem;
  height: 0.625rem;
}
@media screen and (max-width: 768px) {
  .recruit-environment__swiper .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
  .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 0.375rem;
    width: 0.5rem;
    height: 0.5rem;
  }
}

.recruit-jobs {
  margin-block: 6.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-jobs {
    margin-block: 3.75rem;
  }
}

.recruit-jobs__lists {
  margin-top: 2rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .recruit-jobs__lists {
    grid-template-columns: 1fr;
    margin-top: 1.5rem;
    gap: 2.5rem;
  }
}

.recruit-jobs__link {
  color: #34414E;
}

.recruit-jobs__link:hover .recruit-jobs__img img {
  transform: scale(1.05);
}

.recruit-jobs__img {
  max-width: 39.375rem;
  width: 100%;
  height: auto;
  aspect-ratio: 630/315;
  overflow: hidden;
  border-radius: 1.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-jobs__img {
    max-width: 100%;
  }
}

.recruit-jobs__img img {
  object-fit: cover;
  transition: transform 0.3s;
}

.recruit-jobs__content {
  margin-top: 1rem;
  display: flex;
  width: 11rem;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .recruit-jobs__content {
    margin-top: 0.5rem;
    gap: 1rem;
    justify-content: flex-start;
  }
}

.recruit-jobs__head {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .recruit-jobs__head {
    font-size: 1.125rem;
  }
}

.recruit-jobs__arrow {
  display: flex;
  align-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background-color: #e2ebf5;
  position: relative;
}
@media screen and (max-width: 768px) {
  .recruit-jobs__arrow {
    width: 1.5rem;
    height: 1.5rem;
  }
}

.recruit-jobs__arrow::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(./../images/recruit-arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 0.875rem;
  height: 0.875rem;
  right: 0.5625rem;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .recruit-jobs__arrow::after {
    width: 0.75rem;
    height: 0.75rem;
    right: 0.375rem;
  }
}

.recruit-jobs__text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.8;
  margin-top: 0.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-jobs__text {
    margin-top: 0.25rem;
  }
}

.recruit-jobs__slide-wrapper {
  margin-top: 3.75rem;
  display: flex;
  gap: 2rem;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .recruit-jobs__slide-wrapper {
    margin-top: 2rem;
    gap: 1.25rem;
  }
}

.slider-scroll-left {
  animation: scroll-left 40s infinite linear 0.5s both;
}

.recruit-jobs__slider {
  display: flex;
}

.recruit-jobs__slide + .recruit-jobs__slide {
  margin-left: 2rem;
}
@media screen and (max-width: 768px) {
  .recruit-jobs__slide + .recruit-jobs__slide {
    margin-left: 1.25rem;
  }
}

.recruit-jobs__slide {
  width: 20vw;
}
@media screen and (max-width: 768px) {
  .recruit-jobs__slide {
    width: 50vw;
  }
}

.recruit-jobs__slide img {
  object-fit: cover;
  border-radius: 1.25rem;
  aspect-ratio: 240/320;
}

/* CSSアニメーション */
@keyframes scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
.recruit-under-jobs__read {
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-jobs__read {
    margin-top: 2rem;
  }
}

.recruit-under-jobs .recruit-jobs__lists {
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-jobs .recruit-jobs__lists {
    margin-top: 2.5rem;
  }
}

.recruit-under {
  margin-top: 9.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-under {
    margin-top: 6.25rem;
  }
}

.recruit-under__breadcrumb {
  margin-top: 3rem;
  display: flex;
  align-items: center;
  gap: 1.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-under__breadcrumb {
    margin-top: 1.5rem;
    gap: 1.25rem;
    flex-wrap: wrap;
  }
}

.recruit-under__breadcrumb a {
  color: #34414E;
  font-weight: 400;
}

.recruit-under__breadcrumb li {
  position: relative;
  font-size: 0.75rem;
  line-height: 1;
}

.recruit-under__breadcrumb li:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -1.125rem;
  transform: translateY(-50%);
  width: 0.375rem;
  height: 0.375rem;
  border-right: 0.0625rem solid #34414E;
  border-bottom: 0.0625rem solid #34414E;
  transform: rotate(-45deg) translateY(-50%);
}
@media screen and (max-width: 768px) {
  .recruit-under__breadcrumb li:not(:last-child)::after {
    right: -0.875rem;
  }
}

.recruit-under__breadcrumb li:last-child {
  font-weight: 700;
}

.recruit-about__title {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

.recruit-about__circle {
  width: 0.875rem;
  height: 0.875rem;
  border-radius: 50%;
  background-color: #E7352C;
}
@media screen and (max-width: 768px) {
  .recruit-about__circle {
    width: 0.625rem;
    height: 0.625rem;
  }
}

.recruit-about__head {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .recruit-about__head {
    font-size: 1.5rem;
  }
}

.recruit-7spirit {
  margin-top: 5rem;
  padding-bottom: 6.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-7spirit {
    margin-top: 2.5rem;
    padding-bottom: 0;
  }
}

.recruit-7spirit__inner.recruit-inner {
  max-width: 81.25rem;
}

.recruit-7spirit__flex {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-7spirit__flex {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}

.recruit-7spirit__read {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.8;
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .recruit-7spirit__read {
    font-size: 1.125rem;
    margin-top: 1.25rem;
  }
}

.recruit-7spirit__btn {
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-7spirit__btn {
    margin-top: 2rem;
  }
}

.recruit-7spirit__btn.recruit-btn a {
  background-color: #f2f8ff;
  color: #34414E;
}
@media screen and (max-width: 768px) {
  .recruit-7spirit__btn.recruit-btn a {
    margin-inline: auto;
  }
}

.recruit-7spirit__btn.recruit-btn a::after {
  background-color: #fff;
}

.recruit-7spirit__btn.recruit-btn a:hover {
  background-color: #dde6f2;
}

.recruit-7spirit__btn.recruit-btn a:hover::before {
  right: 1.75rem;
}

.recruit-7spirit__btn.recruit-btn a:hover::after {
  right: 1.1875rem;
}

/* タブ切り替え */
.recruit-7spirit__right {
  margin-inline: auto;
}

@media screen and (max-width: 768px) {
  .recruit-7spirit-tab {
    display: none;
  }
}

.recruit-7spirit-tab__menu {
  position: relative;
}

.recruit-7spirit-tab__menu-item {
  cursor: pointer;
  width: 9.375rem;
  height: 9.375rem;
  border-radius: 50%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff; /* 内側の背景 */
}

.recruit-7spirit-tab__menu-item::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  padding: 2px; /* 枠の太さ */
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}

.recruit-7spirit-tab__menu-item.is-active {
  color: #fff;
}

.recruit-7spirit-tab__menu-item:nth-child(1),
.recruit-7spirit-tab__menu-item:nth-child(2),
.recruit-7spirit-tab__menu-item:nth-child(3),
.recruit-7spirit-tab__menu-item:nth-child(4),
.recruit-7spirit-tab__menu-item:nth-child(5),
.recruit-7spirit-tab__menu-item:nth-child(6),
.recruit-7spirit-tab__menu-item:nth-child(7) {
  position: absolute;
}

.recruit-7spirit-tab__menu-item:nth-child(1) {
  top: -6.25rem;
  left: 50%;
  transform: translateX(-50%);
}

.recruit-7spirit-tab__menu-item:nth-child(2) {
  right: -6.25rem;
  top: -1.875rem;
}

.recruit-7spirit-tab__menu-item:nth-child(3) {
  top: 7.8125rem;
  right: -8.125rem;
}

.recruit-7spirit-tab__menu-item:nth-child(4) {
  top: 15.625rem;
  right: -1.875rem;
}

.recruit-7spirit-tab__menu-item:nth-child(5) {
  top: 15.625rem;
  left: -1.875rem;
}

.recruit-7spirit-tab__menu-item:nth-child(6) {
  top: 7.8125rem;
  left: -8.125rem;
}

.recruit-7spirit-tab__menu-item:nth-child(7) {
  left: -4.8125rem;
  top: -1.875rem;
}

.recruit-7spirit-tab__menu-item:nth-child(1)::before {
  background: linear-gradient(to bottom, #ffaf54, #de0003);
}

.recruit-7spirit-tab__menu-item:nth-child(1).is-active {
  background: linear-gradient(180deg, #ffaf54 0%, #de0003 100%);
}

.recruit-7spirit-tab__menu-item:nth-child(2)::before {
  background: linear-gradient(to bottom, #fce103, #e49000);
}

.recruit-7spirit-tab__menu-item:nth-child(2).is-active {
  background: linear-gradient(180deg, #fce103 0%, #e49000 100%);
}

.recruit-7spirit-tab__menu-item:nth-child(3)::before {
  background: linear-gradient(to bottom, #6fc2e5, #006493);
}

.recruit-7spirit-tab__menu-item:nth-child(3).is-active {
  background: linear-gradient(180deg, #6fc2e5 0%, #006493 100%);
}

.recruit-7spirit-tab__menu-item:nth-child(4)::before {
  background: linear-gradient(to bottom, #f0b8b3, #f16379);
}

.recruit-7spirit-tab__menu-item:nth-child(4).is-active {
  background: linear-gradient(180deg, #f0b8b3 0%, #f16379 100%);
}

.recruit-7spirit-tab__menu-item:nth-child(5)::before {
  background: linear-gradient(to bottom, #c75e9c, #7abc98);
}

.recruit-7spirit-tab__menu-item:nth-child(5).is-active {
  background: linear-gradient(180deg, #c75e9c 0%, #7abc98 100%);
}

.recruit-7spirit-tab__menu-item:nth-child(6)::before {
  background: linear-gradient(to bottom, #fbe0cb, #32bbd3);
}

.recruit-7spirit-tab__menu-item:nth-child(6).is-active {
  background: linear-gradient(180deg, #fbe0cb 0%, #32bbd3 100%);
}

.recruit-7spirit-tab__menu-item:nth-child(7)::before {
  background: linear-gradient(to bottom, #b8d08a, #72bb8a);
}

.recruit-7spirit-tab__menu-item:nth-child(7).is-active {
  background: linear-gradient(180deg, #b8d08a 0%, #72bb8a 100%);
}

.recruit-7spirit-tab__content-item {
  display: none;
  width: 18.75rem;
  height: 18.75rem;
  border-radius: 50%;
  text-align: center;
  z-index: -1;
  position: relative;
  transition: 0.3s;
}

.recruit-7spirit-tab__content-item.is-active {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  animation: fade 0.3s;
}

@keyframes fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.recruit-7spirit-tab__content-item:nth-child(1).is-active {
  box-shadow: 0 -10px 100px 0 rgba(255, 175, 84, 0.5), 0 10px 100px 0 rgba(222, 0, 3, 0.5);
}

.recruit-7spirit-tab__content-item:nth-child(2).is-active {
  box-shadow: 0 -10px 100px 0 rgba(252, 225, 3, 0.5), 0 10px 100px 0 rgba(228, 144, 0, 0.5);
}

.recruit-7spirit-tab__content-item:nth-child(3).is-active {
  box-shadow: 0 -10px 100px 0 rgba(143, 208, 235, 0.5), 0 10px 100px 0 rgba(0, 83, 122, 0.5);
}

.recruit-7spirit-tab__content-item:nth-child(4).is-active {
  box-shadow: 0 -10px 100px 0 rgba(240, 184, 179, 0.5), 0 10px 100px 0 rgba(231, 64, 90, 0.5);
}

.recruit-7spirit-tab__content-item:nth-child(5).is-active {
  box-shadow: 0 -10px 100px 0 rgba(199, 95, 160, 0.5), 0 10px 100px 0 rgba(136, 197, 169, 0.5);
}

.recruit-7spirit-tab__content-item:nth-child(6).is-active {
  box-shadow: 0 -10px 100px 0 rgba(250, 229, 213, 0.5), 0 10px 100px 0 rgba(62, 188, 204, 0.5);
}

.recruit-7spirit-tab__content-item:nth-child(7).is-active {
  box-shadow: 0 -10px 100px 0 rgba(207, 220, 132, 0.5), 0 10px 100px 0 rgba(128, 191, 162, 0.5);
}

.recruit-7spirit-tab__content-title {
  font-size: 1.75rem;
  font-weight: 500;
  line-height: 1.8;
}

.recruit-7spirit-tab__content-text {
  font-size: 1rem;
  line-height: 1.8;
  font-weight: 500;
}

.recruit-7spirit__img-sp img {
  object-fit: cover;
}

/*　swiper　*/
.recruit-7spirit__swiper-area {
  display: none;
}
@media screen and (max-width: 768px) {
  .recruit-7spirit__swiper-area {
    max-width: 18.75rem;
    display: block;
    position: relative;
  }
}

.recruit-7spirit__swiper-circle {
  width: 18.75rem;
  height: 18.75rem;
  border-radius: 50%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff; /* 内側の背景 */
}

.recruit-7spirit__swiper-circle::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  padding: 2px; /* 枠の太さ */
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}

.recruit-7spirit__swiper-circle--red::before {
  background: linear-gradient(to bottom, #ffaf54, #de0003);
}

.recruit-7spirit__swiper-circle--red .recruit-7spirit__swiper-title {
  color: #de0003;
}

.recruit-7spirit__swiper-circle--yellow::before {
  background: linear-gradient(to bottom, #fce103, #e49000);
}

.recruit-7spirit__swiper-circle--yellow .recruit-7spirit__swiper-title {
  color: #e49000;
}

.recruit-7spirit__swiper-circle--blue::before {
  background: linear-gradient(to bottom, #6fc2e5, #006493);
}

.recruit-7spirit__swiper-circle--blue .recruit-7spirit__swiper-title {
  color: #00537a;
}

.recruit-7spirit__swiper-circle--pink::before {
  background: linear-gradient(to bottom, #f0b8b3, #f16379);
}

.recruit-7spirit__swiper-circle--pink .recruit-7spirit__swiper-title {
  color: #e7405a;
}

.recruit-7spirit__swiper-circle--purple::before {
  background: linear-gradient(to bottom, #c75e9c, #7abc98);
}

.recruit-7spirit__swiper-circle--purple .recruit-7spirit__swiper-title {
  color: #c75fa0;
}

.recruit-7spirit__swiper-circle--lightblue::before {
  background: linear-gradient(to bottom, #fbe0cb, #32bbd3);
}

.recruit-7spirit__swiper-circle--lightblue .recruit-7spirit__swiper-title {
  color: #3ebccc;
}

.recruit-7spirit__swiper-circle--green::before {
  background: linear-gradient(to bottom, #b8d08a, #72bb8a);
}

.recruit-7spirit__swiper-circle--green .recruit-7spirit__swiper-title {
  color: #80bfa2;
}

.recruit-7spirit__swiper__body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-top: -1.25rem;
}

.recruit-7spirit__swiper-title {
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1;
}

.recruit-7spirit__swiper-subtitle {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  margin-top: 0.75rem;
}

.recruit-7spirit__swiper-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  margin-top: 0.5rem;
}

.recruit-7spirit__swiper-area .swiper-button-next,
.recruit-7spirit__swiper-area .swiper-button-prev {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background-color: #34414E;
  position: absolute;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

.recruit-7spirit__swiper-area .swiper-button-next {
  right: -6%;
}

.recruit-7spirit__swiper-area .swiper-button-next::after {
  content: "";
  display: block;
  position: absolute;
  background-image: url(./../images/recruit-arrow-white.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 1rem;
  height: 1rem;
  right: 0.75rem;
}

.recruit-7spirit__swiper-area .swiper-button-prev {
  left: -6%;
}

.recruit-7spirit__swiper-area .swiper-button-prev::after {
  content: "";
  display: block;
  position: absolute;
  background-image: url(./../images/recruit-arrow-white.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transform: rotate(180deg);
  width: 1rem;
  height: 1rem;
  right: 0.75rem;
}

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

.recruit-business__inner.recruit-inner {
  max-width: 81.25rem;
}

.recruit-business__lists {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 2rem;
  gap: 2.8125rem;
}
@media screen and (max-width: 768px) {
  .recruit-business__lists {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}

.recruit-business__img {
  aspect-ratio: 350/280;
  max-width: 21.875rem;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .recruit-business__img {
    margin-inline: auto;
  }
}

.recruit-business__img img {
  border-radius: 1.25rem;
  object-fit: cover;
}

.recruit-business__head {
  margin-top: 1.25rem;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.6;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .recruit-business__head {
    font-size: 1.25rem;
    margin-top: 1rem;
  }
}

.recruit-business__text {
  margin-top: 1rem;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .recruit-business__text {
    margin-top: 0.5rem;
  }
}

.recruit-business__btn {
  margin-top: 3.75rem;
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .recruit-business__btn {
    margin-top: 2rem;
  }
}

.recruit-business__btn.recruit-btn a {
  background-color: #f2f8ff;
  color: #34414E;
}

.recruit-business__btn.recruit-btn a::after {
  background-color: #fff;
}

.recruit-business__btn.recruit-btn a:hover {
  background-color: #dde6f2;
}

.recruit-about-message {
  margin-top: 6.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-about-message {
    margin-top: 3.75rem;
  }
}

.recruit-about-message__flex {
  padding: 6.25rem 4.375rem;
  margin-inline: auto;
  border-radius: 3.125rem;
  background: linear-gradient(0deg, rgba(242, 248, 255, 0.47) 0%, rgba(242, 248, 255, 0.47) 100%), url(./../images/recruit-texture.webp) lightgray 0% 0%/50px 50px repeat;
  display: flex;
  gap: 4rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .recruit-about-message__flex {
    flex-direction: column;
    padding: 2.5rem 1.25rem;
    gap: 2rem;
    border-radius: 1.25rem;
  }
}

.recruit-about-message__left {
  max-width: 25.3125rem;
  width: 100%;
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-about-message__left {
    max-width: 100%;
    margin-top: 0;
  }
}

.recruit-about-message__post {
  margin-top: 2rem;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .recruit-about-message__post {
    margin-top: 1.25rem;
  }
}

.recruit-about-message__name {
  margin-top: 0.25rem;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .recruit-about-message__name {
    font-size: 1.25rem;
  }
}

.recruit-about-message__text {
  margin-top: 1.25rem;
  font-weight: 400;
  line-height: 1.6;
  font-size: 1rem;
}
@media screen and (max-width: 768px) {
  .recruit-about-message__text {
    margin-top: 1rem;
  }
}

.recruit-about-message__right {
  max-width: 41.875rem;
  width: 100%;
  height: auto;
  aspect-ratio: 670/440;
  position: relative;
}
@media screen and (max-width: 768px) {
  .recruit-about-message__right {
    max-width: 100%;
  }
}

.recruit-about-message__right::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 1.25rem;
  background: linear-gradient(180deg, rgba(52, 65, 78, 0) 0%, rgba(52, 65, 78, 0.2) 100%);
  z-index: 1;
}

.recruit-about-message__right img {
  object-fit: cover;
  border-radius: 1.25rem;
}

.recruit-about-message__btn {
  margin-top: 1.5rem;
  position: absolute;
  top: calc(50% + 5rem);
  left: 4.375rem;
  width: 100%;
  max-width: 19.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-about-message__btn {
    position: static;
    margin-top: 0.75rem;
    margin-inline: auto;
    max-width: 17.5rem;
  }
}

.recruit-2lists {
  margin-top: 6.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-2lists {
    margin-top: 3.75rem;
  }
}

.recruit-2lists__inner.recruit-inner {
  max-width: 81.25rem;
}

.recruit-2lists__lists {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  justify-content: space-between;
  gap: 6.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-2lists__lists {
    grid-template-columns: 1fr;
    gap: 2.5rem;
  }
}

.recruit-2lists__link:hover .recruit-2lists__img img {
  transform: scale(1.05);
}

.recruit-2lists__img {
  max-width: 31.875rem;
  width: 100%;
  height: auto;
  aspect-ratio: 510/340;
  overflow: hidden;
  border-radius: 1.25rem;
}

.recruit-2lists__img img {
  object-fit: cover;
  transition: transform 0.3s;
}

.recruit-2lists__title {
  margin-top: 1rem;
  color: #34414E;
}
@media screen and (max-width: 768px) {
  .recruit-2lists__title {
    margin-top: 0.75rem;
  }
}

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

.recruit-company__inner.recruit-inner {
  max-width: 81.25rem;
}

.recruit-company__contents {
  display: flex;
  gap: 7.5rem;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .recruit-company__contents {
    flex-direction: column-reverse;
    gap: 1.25rem;
  }
}

.recruit-company__content {
  flex: 1;
}

.recruit-company__content:nth-child(2) {
  position: relative;
}
@media screen and (max-width: 768px) {
  .recruit-company__content:nth-child(2) {
    display: none;
  }
}

.recruit-company__lists {
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .recruit-company__lists {
    margin-top: 0.5rem;
  }
}

.recruit-company__link {
  max-width: 31.5625rem;
  width: 100%;
  height: 5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-left: 0.75rem;
  padding-right: 1.25rem;
  border-bottom: 2px solid #e2ebf5;
  color: #34414E;
}
@media screen and (max-width: 768px) {
  .recruit-company__link {
    max-width: 100%;
    height: 3.5rem;
  }
}

.recruit-company__link:hover .recruit-company__arrow {
  background-color: #E7352C;
}

.recruit-company__link:hover .recruit-company__arrow::after {
  background-image: url(./../images/recruit-arrow-white.svg);
}

.recruit-company__arrow {
  display: flex;
  align-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background-color: #e2ebf5;
  position: relative;
  transition: background-color 0.3s;
}
@media screen and (max-width: 768px) {
  .recruit-company__arrow {
    width: 1.5rem;
    height: 1.5rem;
  }
}

.recruit-company__arrow::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(./../images/recruit-arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 0.875rem;
  height: 0.875rem;
  right: 0.5625rem;
  z-index: 1;
  transition: background-image 0.3s;
}
@media screen and (max-width: 768px) {
  .recruit-company__arrow::after {
    width: 0.75rem;
    height: 0.75rem;
  }
}

.recruit-company__img {
  height: auto;
  width: 100%;
}

.recruit-company__img img {
  border-radius: 1.25rem;
  object-fit: cover;
}

.recruit-company__img01 {
  max-width: 22.5rem;
  aspect-ratio: 360/450;
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  .recruit-company__img01 {
    aspect-ratio: 4/3;
  }
}

.recruit-company__img02 {
  position: absolute;
  bottom: 0;
  left: 0;
  max-width: 18.4375rem;
  aspect-ratio: 295/197;
}
@media screen and (max-width: 768px) {
  .recruit-company__img02 {
    position: static;
    margin-top: 1.25rem;
    aspect-ratio: 4/3;
    max-width: 100%;
  }
}

.recruit-under-7spirits-contents {
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-7spirits-contents {
    margin-top: 2rem;
    margin-bottom: 3.75rem;
  }
}

.recruit-under-7spirits-contents__read {
  text-align: center;
  margin-inline: auto;
}

.recruit-under-7spirits-tab {
  max-width: 43.75rem;
  width: 100%;
  margin-block: 20.5rem;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .recruit-under-7spirits-tab {
    display: none;
  }
}

.recruit-under-7spirits-tab__menu {
  position: relative;
}

.recruit-under-7spirits-tab__menu-item {
  cursor: pointer;
  width: 18.75rem;
  height: 18.75rem;
  border-radius: 50%;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: #fff; /* 内側の背景 */
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.2;
}

/* 通常時 */
.icon-gradient stop[offset="1"] {
  stop-color: #de0003; /* 赤 */
  transition: stop-color 0.3s;
}

/* ホバー時に白へ */
.recruit-under-7spirits-tab__menu-item:hover .icon-gradient stop[offset="1"],
.recruit-under-7spirits-tab__menu-item.is-active .icon-gradient stop[offset="1"] {
  stop-color: #fff;
}

/* 通常時 */
.icon-gradient-2 stop[offset="0"],
.icon-gradient-2 stop[offset="1"] {
  stop-color: #fce103; /* 通常の色 */
  transition: stop-color 0.3s;
}

/* ホバー時は両方とも白に */
.recruit-under-7spirits-tab__menu-item:hover .icon-gradient-2 stop[offset="0"],
.recruit-under-7spirits-tab__menu-item.is-active .icon-gradient-2 stop[offset="0"],
.recruit-under-7spirits-tab__menu-item:hover .icon-gradient-2 stop[offset="1"],
.recruit-under-7spirits-tab__menu-item.is-active .icon-gradient-2 stop[offset="1"] {
  stop-color: #fff;
}

/* ホバー前は通常 */
.grad-blue stop[offset="1"] {
  stop-color: #00537a;
  transition: stop-color 0.3s;
}

/* ホバー時に白に変更 */
.recruit-under-7spirits-tab__menu-item:hover .grad-blue stop[offset="1"],
.recruit-under-7spirits-tab__menu-item.is-active .grad-blue stop[offset="1"] {
  stop-color: #fff;
}

/* デフォルトは #E7405A */
.icon-altruism stop[offset="1"] {
  stop-color: #e7405a;
  transition: stop-color 0.3s;
}

/* ホバー時に白へ変更 */
.recruit-under-7spirits-tab__menu-item:hover .icon-altruism stop[offset="1"],
.recruit-under-7spirits-tab__menu-item.is-active .icon-altruism stop[offset="1"] {
  stop-color: #fff;
}

/* 通常色 */
.icon-inquiry stop[offset="0"] {
  stop-color: #c75fa0;
  transition: stop-color 0.3s;
}

.icon-inquiry stop[offset="1"] {
  stop-color: #88c5a9;
  transition: stop-color 0.3s;
}

/* ホバー時に色を変える */
.recruit-under-7spirits-tab__menu-item:hover .icon-inquiry stop[offset="0"],
.recruit-under-7spirits-tab__menu-item.is-active .icon-inquiry stop[offset="0"] {
  stop-color: #ffe3f5; /* ピンクを薄く */
}

.recruit-under-7spirits-tab__menu-item:hover .icon-inquiry stop[offset="1"],
.recruit-under-7spirits-tab__menu-item.is-active .icon-inquiry stop[offset="1"] {
  stop-color: #e1fff1; /* グリーンを薄く */
}

/* 通常状態 */
.icon-creativity stop[offset="1"] {
  stop-color: #3ebccc;
  transition: stop-color 0.3s;
}

/* hover または is-active時 */
.recruit-under-7spirits-tab__menu-item:hover .icon-creativity stop[offset="1"],
.recruit-under-7spirits-tab__menu-item.is-active .icon-creativity stop[offset="1"] {
  stop-color: #e7fcff;
}

/* 通常 */
.icon-growth stop[offset="0"] {
  stop-color: #cfdc84;
  transition: stop-color 0.3s;
}

.icon-growth stop[offset="1"] {
  stop-color: #80bfa2;
  transition: stop-color 0.3s;
}

/* hover または is-active のとき */
.recruit-under-7spirits-tab__menu-item:hover .icon-growth stop[offset="0"],
.recruit-under-7spirits-tab__menu-item.is-active .icon-growth stop[offset="0"] {
  stop-color: #fdffef;
}

.recruit-under-7spirits-tab__menu-item:hover .icon-growth stop[offset="1"],
.recruit-under-7spirits-tab__menu-item.is-active .icon-growth stop[offset="1"] {
  stop-color: #dcffef;
}

.recruit-under-7spirits-tab__menu-item::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  padding: 2px; /* 枠の太さ */
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}

.recruit-under-7spirits-tab__menu-item.is-active {
  color: #fff;
}

.recruit-under-7spirits-tab__menu-item:nth-child(1),
.recruit-under-7spirits-tab__menu-item:nth-child(2),
.recruit-under-7spirits-tab__menu-item:nth-child(3),
.recruit-under-7spirits-tab__menu-item:nth-child(4),
.recruit-under-7spirits-tab__menu-item:nth-child(5),
.recruit-under-7spirits-tab__menu-item:nth-child(6),
.recruit-under-7spirits-tab__menu-item:nth-child(7) {
  position: absolute;
}

.recruit-under-7spirits-tab__menu-item:nth-child(1) {
  top: -15.5rem;
  left: 50%;
  transform: translateX(-50%);
}

.recruit-under-7spirits-tab__menu-item:nth-child(2) {
  right: -9.375rem;
  top: -4.5625rem;
}

.recruit-under-7spirits-tab__menu-item:nth-child(3) {
  top: 17.125rem;
  right: -16.125rem;
}

.recruit-under-7spirits-tab__menu-item:nth-child(4) {
  top: 37.625rem;
  right: -2.5rem;
}

.recruit-under-7spirits-tab__menu-item:nth-child(5) {
  top: 37.625rem;
  left: -2.5rem;
}

.recruit-under-7spirits-tab__menu-item:nth-child(6) {
  top: 17.125rem;
  left: -16.125rem;
}

.recruit-under-7spirits-tab__menu-item:nth-child(7) {
  left: -9.375rem;
  top: -4.5625rem;
}

.recruit-under-7spirits-tab__menu-item:nth-child(1)::before {
  background: linear-gradient(to bottom, #ffaf54, #de0003);
}

.recruit-under-7spirits-tab__menu-item:nth-child(1).is-active {
  background: linear-gradient(180deg, #ffaf54 0%, #de0003 100%);
}

.recruit-under-7spirits-tab__menu-item:nth-child(2)::before {
  background: linear-gradient(to bottom, #fce103, #e49000);
}

.recruit-under-7spirits-tab__menu-item:nth-child(2).is-active {
  background: linear-gradient(180deg, #fce103 0%, #e49000 100%);
}

.recruit-under-7spirits-tab__menu-item:nth-child(3)::before {
  background: linear-gradient(to bottom, #6fc2e5, #006493);
}

.recruit-under-7spirits-tab__menu-item:nth-child(3).is-active {
  background: linear-gradient(180deg, #6fc2e5 0%, #006493 100%);
}

.recruit-under-7spirits-tab__menu-item:nth-child(4)::before {
  background: linear-gradient(to bottom, #f0b8b3, #f16379);
}

.recruit-under-7spirits-tab__menu-item:nth-child(4).is-active {
  background: linear-gradient(180deg, #f0b8b3 0%, #f16379 100%);
}

.recruit-under-7spirits-tab__menu-item:nth-child(5)::before {
  background: linear-gradient(to bottom, #c75e9c, #7abc98);
}

.recruit-under-7spirits-tab__menu-item:nth-child(5).is-active {
  background: linear-gradient(180deg, #c75e9c 0%, #7abc98 100%);
}

.recruit-under-7spirits-tab__menu-item:nth-child(6)::before {
  background: linear-gradient(to bottom, #fbe0cb, #32bbd3);
}

.recruit-under-7spirits-tab__menu-item:nth-child(6).is-active {
  background: linear-gradient(180deg, #fbe0cb 0%, #32bbd3 100%);
}

.recruit-under-7spirits-tab__menu-item:nth-child(7)::before {
  background: linear-gradient(to bottom, #b8d08a, #72bb8a);
}

.recruit-under-7spirits-tab__menu-item:nth-child(7).is-active {
  background: linear-gradient(180deg, #b8d08a 0%, #72bb8a 100%);
}

.recruit-under-7spirits-tab__menu-img {
  max-width: 6.25rem;
  width: 100%;
  height: auto;
  aspect-ratio: 100/100;
  margin-bottom: 0.5rem;
}

.recruit-under-7spirits-tab__menu-img img {
  object-fit: cover;
}

.recruit-under-7spirits-tab__content-item {
  display: none;
  width: 43.75rem;
  height: 43.75rem;
  border-radius: 50%;
  text-align: center;
  z-index: -1;
  position: relative;
  transition: 0.3s;
}

.recruit-under-7spirits-tab__content-item.is-active {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  animation: fade 0.3s;
}

@keyframes fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.recruit-under-7spirits-tab__content-item:nth-child(1).is-active {
  box-shadow: 0 -10px 100px 0 rgba(255, 175, 84, 0.5), 0 10px 100px 0 rgba(222, 0, 3, 0.5);
}

.recruit-under-7spirits-tab__content-item:nth-child(2).is-active {
  box-shadow: 0 -10px 100px 0 rgba(252, 225, 3, 0.5), 0 10px 100px 0 rgba(228, 144, 0, 0.5);
}

.recruit-under-7spirits-tab__content-item:nth-child(3).is-active {
  box-shadow: 0 -10px 100px 0 rgba(143, 208, 235, 0.5), 0 10px 100px 0 rgba(0, 83, 122, 0.5);
}

.recruit-under-7spirits-tab__content-item:nth-child(4).is-active {
  box-shadow: 0 -10px 100px 0 rgba(240, 184, 179, 0.5), 0 10px 100px 0 rgba(231, 64, 90, 0.5);
}

.recruit-under-7spirits-tab__content-item:nth-child(5).is-active {
  box-shadow: 0 -10px 100px 0 rgba(199, 95, 160, 0.5), 0 10px 100px 0 rgba(136, 197, 169, 0.5);
}

.recruit-under-7spirits-tab__content-item:nth-child(6).is-active {
  box-shadow: 0 -10px 100px 0 rgba(250, 229, 213, 0.5), 0 10px 100px 0 rgba(62, 188, 204, 0.5);
}

.recruit-under-7spirits-tab__content-item:nth-child(7).is-active {
  box-shadow: 0 -10px 100px 0 rgba(207, 220, 132, 0.5), 0 10px 100px 0 rgba(128, 191, 162, 0.5);
}

.recruit-under-7spirits-tab__content-title {
  font-size: 4.5rem;
  font-weight: 500;
  line-height: 1;
}

.recruit-under-7spirits-tab__content-item:nth-child(1) .recruit-under-7spirits-tab__content-title {
  color: #de0003;
}

.recruit-under-7spirits-tab__content-item:nth-child(2) .recruit-under-7spirits-tab__content-title {
  color: #e49000;
}

.recruit-under-7spirits-tab__content-item:nth-child(3) .recruit-under-7spirits-tab__content-title {
  color: #00537a;
}

.recruit-under-7spirits-tab__content-item:nth-child(4) .recruit-under-7spirits-tab__content-title {
  color: #e7405a;
}

.recruit-under-7spirits-tab__content-item:nth-child(5) .recruit-under-7spirits-tab__content-title {
  color: #c75fa0;
}

.recruit-under-7spirits-tab__content-item:nth-child(6) .recruit-under-7spirits-tab__content-title {
  color: #3ebccc;
}

.recruit-under-7spirits-tab__content-item:nth-child(7) .recruit-under-7spirits-tab__content-title {
  color: #80bfa2;
}

.recruit-under-7spirits-tab__content-text {
  font-size: 2.5rem;
  line-height: 1.6;
  font-weight: 500;
  margin-top: 2.5rem;
}

.recruit-under-7spirits-tab__content-list {
  margin-top: 1.25rem;
  font-weight: 400;
  font-size: 1.25rem;
  line-height: 1.6;
}

/*　swiper　*/
.recruit-under-7spirits__swiper-area {
  display: none;
}
@media screen and (max-width: 768px) {
  .recruit-under-7spirits__swiper-area {
    max-width: 18.75rem;
    display: block;
    position: relative;
    margin-inline: auto;
    margin-top: 1.875rem;
  }
}

.recruit-under-7spirits__swiper-circle {
  width: 18.75rem;
  height: 18.75rem;
  border-radius: 50%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff; /* 内側の背景 */
}

.recruit-under-7spirits__swiper-circle::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  padding: 2px; /* 枠の太さ */
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}

.recruit-under-7spirits__swiper-circle--red::before {
  background: linear-gradient(to bottom, #ffaf54, #de0003);
}

.recruit-under-7spirits__swiper-circle--red .recruit-under-7spirits__swiper-title {
  color: #de0003;
}

.recruit-under-7spirits__swiper-circle--yellow::before {
  background: linear-gradient(to bottom, #fce103, #e49000);
}

.recruit-under-7spirits__swiper-circle--yellow .recruit-under-7spirits__swiper-title {
  color: #e49000;
}

.recruit-under-7spirits__swiper-circle--blue::before {
  background: linear-gradient(to bottom, #6fc2e5, #006493);
}

.recruit-under-7spirits__swiper-circle--blue .recruit-under-7spirits__swiper-title {
  color: #00537a;
}

.recruit-under-7spirits__swiper-circle--pink::before {
  background: linear-gradient(to bottom, #f0b8b3, #f16379);
}

.recruit-under-7spirits__swiper-circle--pink .recruit-under-7spirits__swiper-title {
  color: #e7405a;
}

.recruit-under-7spirits__swiper-circle--purple::before {
  background: linear-gradient(to bottom, #c75e9c, #7abc98);
}

.recruit-under-7spirits__swiper-circle--purple .recruit-under-7spirits__swiper-title {
  color: #c75fa0;
}

.recruit-under-7spirits__swiper-circle--lightblue::before {
  background: linear-gradient(to bottom, #fbe0cb, #32bbd3);
}

.recruit-under-7spirits__swiper-circle--lightblue .recruit-under-7spirits__swiper-title {
  color: #3ebccc;
}

.recruit-under-7spirits__swiper-circle--green::before {
  background: linear-gradient(to bottom, #b8d08a, #72bb8a);
}

.recruit-under-7spirits__swiper-circle--green .recruit-under-7spirits__swiper-title {
  color: #80bfa2;
}

.recruit-under-7spirits__swiper__body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-top: -1.25rem;
}

.recruit-under-7spirits__swiper-title {
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1;
}

.recruit-under-7spirits__swiper-subtitle {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  margin-top: 0.75rem;
}

.recruit-under-7spirits__swiper-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  margin-top: 0.5rem;
}

.recruit-under-7spirits__swiper-area .swiper-button-next,
.recruit-under-7spirits__swiper-area .swiper-button-prev {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background-color: #34414E;
  position: absolute;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

.recruit-under-7spirits__swiper-area .swiper-button-next {
  right: -6%;
}

.recruit-under-7spirits__swiper-area .swiper-button-next::after {
  content: "";
  display: block;
  position: absolute;
  background-image: url(./../images/recruit-arrow-white.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 1rem;
  height: 1rem;
  right: 0.75rem;
}

.recruit-under-7spirits__swiper-area .swiper-button-prev {
  left: -6%;
}

.recruit-under-7spirits__swiper-area .swiper-button-prev::after {
  content: "";
  display: block;
  position: absolute;
  background-image: url(./../images/recruit-arrow-white.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transform: rotate(180deg);
  width: 1rem;
  height: 1rem;
  right: 0.75rem;
}

.recruit-under-message__flex {
  margin-top: 6.25rem;
  border-radius: 1.25rem;
  background: linear-gradient(0deg, rgba(242, 248, 255, 0.47) 0%, rgba(242, 248, 255, 0.47) 100%), url(./../images/recruit-texture.webp) lightgray 0% 0%/50px 50px repeat;
  display: flex;
  gap: 3.75rem;
  padding-inline: 5rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-message__flex {
    margin-top: 3.75rem;
    flex-direction: column-reverse;
    padding-inline: 1.25rem;
    gap: 1.5rem;
  }
}

.recruit-under-message__img {
  max-width: 23.75rem;
  width: 100%;
  height: auto;
  aspect-ratio: 380/506;
}

.recruit-under-message__img img {
  object-fit: cover;
}

.recruit-under-message__contents {
  padding-top: 5rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-message__contents {
    padding-top: 2.5rem;
  }
}

.recruit-under-message__title {
  font-size: 3.5rem;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .recruit-under-message__title {
    font-size: 1.75rem;
  }
}

.recruit-under-message__title span {
  color: #E7352C;
}

.recruit-under-message__namebox {
  display: flex;
  align-items: center;
  justify-content: end;
  margin-top: 2.5rem;
  gap: 0.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-message__namebox {
    margin-top: 1.25rem;
  }
}

.recruit-under-message__post,
.recruit-under-message__name {
  font-weight: 700;
  line-height: 1.6;
}

.recruit-under-message__post {
  font-size: 1rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-message__post {
    font-size: 0.875rem;
  }
}

.recruit-under-message__name {
  font-size: 1.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-message__name {
    font-size: 1.25rem;
  }
}

.recruit-under-message-body {
  margin-block: 6.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-message-body {
    margin-block: 3.75rem;
  }
}

.recruit-under-message-body__list + .recruit-under-message-body__list {
  margin-top: 7.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-message-body__list + .recruit-under-message-body__list {
    margin-top: 3.75rem;
  }
}

.recruit-under-message-body__list {
  display: flex;
  gap: 5rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-message-body__list {
    flex-direction: column;
    gap: 2.5rem;
  }
}

.recruit-under-message-body__list--big {
  flex-direction: column;
  gap: 0;
  max-width: 71.25rem;
  margin-inline: auto;
}

.recruit-under-message-body__list--complicated {
  flex-direction: column;
  gap: 0;
}

.recruit-under-message-body__list--complicated .recruit-under-message-body__title {
  text-align: center;
}

.recruit-under-message-body__list--reverse {
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .recruit-under-message-body__list--reverse {
    flex-direction: column;
  }
}

.recruit-under-message-body__contents {
  margin-top: 2.5rem;
  flex: 1;
}
@media screen and (max-width: 768px) {
  .recruit-under-message-body__contents {
    margin-top: 1.25rem;
  }
}

.recruit-under-message-body__title {
  color: #E7352C;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .recruit-under-message-body__title {
    font-size: 1.5rem;
  }
}

.recruit-under-message-body__textbox {
  margin-top: 3.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-message-body__textbox {
    margin-top: 1.75rem;
  }
}

.recruit-under-message-body__textbox p {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.8;
}

.recruit-under-message-body__textbox p + p {
  margin-top: 1.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-message-body__textbox p + p {
    margin-top: 1rem;
  }
}

.recruit-under-message-body__img {
  max-width: 29.6875rem;
  width: 100%;
  height: auto;
}

.recruit-under-message-body__list:nth-child(3) .recruit-under-message-body__img {
  max-width: 28.625rem;
  aspect-ratio: 458/525;
}

.recruit-under-message-body__list:nth-child(3) .recruit-under-message-body__img img {
  object-fit: contain;
}

.recruit-under-message-body__img img {
  object-fit: cover;
  border-radius: 1.25rem;
}

.recruit-under-message-body__img--big {
  max-width: 21rem;
}

.recruit-under-message-body__wrap {
  display: flex;
  gap: 3.75rem;
  justify-content: space-between;
  margin-top: 3.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-message-body__wrap {
    flex-direction: column;
    gap: 2.5rem;
    margin-top: 1.75rem;
  }
}

.recruit-under-message-body__wrap .recruit-under-message-body__img {
  max-width: 46.875rem;
}

.recruit-under-message-body__content + .recruit-under-message-body__content {
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-message-body__content + .recruit-under-message-body__content {
    margin-top: 2.5rem;
  }
}

@media screen and (max-width: 768px) {
  .recruit-under-message-body__list:last-child {
    flex-direction: column-reverse;
  }
}

.recruit-under-people {
  margin-top: 3.75rem;
  margin-bottom: 6.25rem;
}

.recruit-people__items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4.375rem;
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-people__items {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 2.5rem;
  }
}

.recruit-people__img {
  border-radius: 1.25rem;
}

.recruit-under-people .recruit-people__head {
  margin-top: -1.5rem;
}

.recruit-under-people__navi {
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-people__navi {
    margin-top: 2.5rem;
  }
}

.recruit-people-single {
  margin-top: 5rem;
  margin-bottom: 8.125rem;
}
@media screen and (max-width: 768px) {
  .recruit-people-single {
    margin-top: 2.5rem;
    margin-bottom: 5rem;
  }
}

.recruit-people-single__fv {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .recruit-people-single__fv {
    flex-direction: column-reverse;
  }
}

.recruit-people-single__fv-text {
  flex: 1;
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .recruit-people-single__fv-text {
    margin-top: 1.25rem;
  }
}

.recruit-people-single__fv-img {
  max-width: 40.625rem;
  width: 100%;
  height: auto;
  aspect-ratio: 650/750;
}

.recruit-people-single__fv-img img {
  object-fit: cover;
  border-radius: 1.25rem;
}

.recruit-people-single__catch {
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.5;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .recruit-people-single__catch {
    font-size: 1.5rem;
    margin-top: 0.25rem;
  }
}

.recruit-people-single__business,
.recruit-people-single__job {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .recruit-people-single__business,
  .recruit-people-single__job {
    font-size: 0.875rem;
  }
}

.recruit-people-single__business {
  color: #E7352C;
}

.recruit-people-single__job {
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-people-single__job {
    margin-top: 2rem;
  }
}

.recruit-people-single__name {
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 1.5;
  margin-top: 0.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-people-single__name {
    font-size: 1.5rem;
  }
}

/* サイドバー */
.recruit-people-single__lists {
  position: sticky;
  top: 10rem;
  left: 0;
}

.recruit-people-single__list a {
  display: flex;
  align-items: center;
  color: #34414E;
  gap: 0.75rem;
  transition: color 0.3s;
}

.recruit-people-single__list-number::before {
  content: "";
  display: inline-block;
  width: 0.625rem;
  height: 0.625rem;
  border-radius: 50%;
  background: transparent;
  margin-right: 0.75rem;
}

.recruit-people-single__list.active a {
  color: #E7352C;
}

.recruit-people-single__list.active .recruit-people-single__list-number::before {
  background: #E7352C;
}

/* コンテンツ */
.recruit-people-single__flex {
  display: flex;
  justify-content: space-between;
  gap: 3.75rem;
  margin-top: 8.125rem;
}
@media screen and (max-width: 768px) {
  .recruit-people-single__flex {
    margin-top: 3.75rem;
    flex-direction: column;
    gap: 0;
  }
}

@media screen and (max-width: 768px) {
  .recruit-people-single__lists {
    display: none;
  }
}

.recruit-people-single__block + .recruit-people-single__block {
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .recruit-people-single__block + .recruit-people-single__block {
    margin-top: 3.5rem;
  }
}

.recruit-people-single__content {
  max-width: 51.875rem;
}

/* 01 所属部署と役割 */
.recruit-people-single__title-box {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.recruit-people-single__title-number,
.recruit-people-single__title {
  color: #E7352C;
  line-height: 1;
  font-weight: 500;
  font-size: 1.125rem;
}
@media screen and (max-width: 768px) {
  .recruit-people-single__title-number,
  .recruit-people-single__title {
    font-size: 1rem;
  }
}

.recruit-people-single__title-number {
  font-family: "Outfit", sans-serif;
}

.recruit-people-single__subtitle {
  margin-top: 0.5rem;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .recruit-people-single__subtitle {
    font-size: 1.25rem;
  }
}

.recruit-people-single__text {
  margin-top: 1.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .recruit-people-single__text {
    font-size: 0.875rem;
    margin-top: 1rem;
  }
}

.recruit-people-single__img {
  margin-top: 5rem;
  aspect-ratio: 830/498;
  max-width: 51.875rem;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .recruit-people-single__img {
    margin-top: 2.5rem;
  }
}

.recruit-people-single__img img {
  object-fit: cover;
  border-radius: 1.25rem;
}

/* 06 今後の目標 */
.recruit-people-single__block--blue {
  background-color: #f2f8ff;
  border-radius: 1.25rem;
  padding: 2.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-people-single__block--blue {
    padding: 1.25rem;
  }
}

.recruit-people-single__wrapper {
  display: flex;
  align-items: center;
  gap: 2.5rem;
}

.recruit-people-single__img--circle {
  max-width: 7.875rem;
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
  background-color: #fff;
  border-radius: 50%;
  overflow: hidden;
}

.timeline {
  margin-top: 1rem;
}

.timeline__item {
  padding-block: 1rem;
  border-bottom: 1px solid #fff;
}

.timeline__date,
.timeline__desc {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .timeline__date,
  .timeline__desc {
    display: block;
  }
}

.timeline__desc {
  margin-left: 1.75rem;
}
@media screen and (max-width: 768px) {
  .timeline__desc {
    margin-left: 0;
  }
}

.recruit-people-single__goal {
  margin-top: 1rem;
  position: relative;
  padding-left: 1rem;
  display: flex;
  align-items: center;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.8;
}

.recruit-people-single__goal::before {
  content: "";
  position: absolute;
  left: 0;
  width: 0.625rem;
  height: 0.625rem;
  background-color: #E7352C;
  border-radius: 50%;
}

.recruit-people-single__subtext {
  margin-top: 0.25rem;
  line-height: 1.8;
  font-size: 1rem;
  font-weight: 400;
}

/* 07 ある⼀⽇の流れ */
.schedule {
  margin-top: 1.75rem;
}

.schedule__item + .schedule__item {
  margin-top: 2.5rem;
}

.schedule__item {
  display: flex;
  gap: 0.5rem;
  position: relative;
  padding-left: 2.5rem;
}
@media screen and (max-width: 768px) {
  .schedule__item {
    padding-left: 1.5rem;
  }
}

.schedule__item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.25rem; /* 丸の縦位置調整 */
  width: 0.625rem;
  height: 0.625rem;
  background: #E7352C;
  border-radius: 50%;
  z-index: 1;
}

.schedule__item::after {
  content: "";
  position: absolute;
  left: 0.25rem;
  top: 0.5rem;
  width: 0.0625rem;
  height: calc(100% + 2.5rem);
  background: #888;
}

.schedule__item:last-child::after {
  display: none;
}

.schedule__time,
.schedule__title {
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1;
}

.schedule__time {
  font-family: "Outfit", sans-serif;
}

.schedule__text {
  font-size: 1rem;
  line-height: 1.6;
  font-weight: 400;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .schedule__text {
    font-size: 0.875rem;
  }
}

/* 08 休日の過ごし方 */
.recruit-people-single__block--bg {
  background-color: #f5f5f5;
  padding: 2.5rem;
  border-radius: 1.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-people-single__block--bg {
    padding: 2rem 1.25rem;
  }
}

.recruit-people-single__holiday {
  display: grid;
  grid-template-columns: 18.75rem 1fr;
  gap: 2.5rem;
  margin-top: 1.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-people-single__holiday {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }
}

.recruit-people-single__holiday-img {
  max-width: 18.75rem;
  width: 100%;
  height: auto;
  aspect-ratio: 300/225;
}

.recruit-people-single__holiday-img img {
  border-radius: 1.25rem;
}

.recruit-people-single__holiday-left,
.recruit-people-single__holiday-right {
  flex: 1;
}

.recruit-people-single__holiday-right .recruit-people-single__text {
  margin-top: 0.25rem;
}

.recruit-people-single .recruit-people .swiper-button-prev,
.recruit-people-single .recruit-people .swiper-button-next {
  top: 1.875rem;
  width: 5rem;
  height: 5rem;
}

.recruit-new-graduates {
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-new-graduates {
    margin-top: 2rem;
  }
}

.recruit-new-graduates__inner.recruit-inner {
  max-width: 81.25rem;
}

.recruit-new-graduates__read.recruit-read-big {
  max-width: 100%;
  width: 100%;
  text-align: center;
}

.recruit-new-graduates__entry {
  margin-top: 2.5rem;
  padding: 3.75rem;
  background-color: #f2f8ff;
  border-radius: 1.25rem;
  max-width: 28.125rem;
  width: 100%;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .recruit-new-graduates__entry {
    margin-top: 2rem;
    padding: 1.25rem;
  }
}

.recruit-new-graduates__img {
  max-width: 19.5rem;
  width: 100%;
  height: auto;
  aspect-ratio: 850/106;
}

.recruit-new-graduates__img img {
  object-fit: cover;
}

.recruit-new-graduates__btn {
  margin-top: 1.75rem;
}

.recruit-new-graduates__btn.recruit-btn a {
  background-color: #E7352C;
}

.recruit-new-graduates__btn.recruit-btn a:hover {
  background-color: #e90b00;
}

.recruit-new-graduates__btn.recruit-btn a::after {
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background-color: #fff;
  right: 1.5rem;
}

.recruit-new-graduates__btn.recruit-btn a:hover::after {
  right: 1.1875rem;
}

.recruit-new-graduates__flow {
  margin-top: 6.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-new-graduates__flow {
    margin-top: 3.75rem;
  }
}

.recruit-new-graduates__lists {
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-new-graduates__lists {
    margin-top: 2rem;
  }
}

.recruit-new-graduates__list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3.75rem;
  background-color: #f2f8ff;
  border-radius: 1.25rem;
  padding: 3.75rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .recruit-new-graduates__list {
    flex-direction: column;
    gap: 1.25rem;
    padding: 2rem 1.25rem;
  }
}

.recruit-new-graduates__list + .recruit-new-graduates__list {
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .recruit-new-graduates__list + .recruit-new-graduates__list {
    margin-top: 2.5rem;
  }
}

.recruit-new-graduates__list:not(:last-child):after {
  content: "";
  display: block;
  position: absolute;
  height: 1.875rem;
  width: 3.75rem;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  background-color: #526170;
  bottom: -3.75rem;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .recruit-new-graduates__list:not(:last-child):after {
    height: 0.9375rem;
    width: 1.875rem;
    bottom: -1.875rem;
  }
}

.recruit-new-graduates__icon {
  max-width: 13.75rem;
  width: 100%;
  height: auto;
  aspect-ratio: 220/196;
}
@media screen and (max-width: 768px) {
  .recruit-new-graduates__icon {
    max-width: 100%;
  }
}

.recruit-new-graduates__icon img {
  object-fit: cover;
}

.recruit-new-graduates__flex {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-new-graduates__flex {
    gap: 0.5rem;
  }
}

.recruit-new-graduates__number,
.recruit-new-graduates__head {
  color: #E7352C;
  line-height: 1;
}

.recruit-new-graduates__number {
  font-family: "Outfit", sans-serif;
  font-size: 2rem;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  .recruit-new-graduates__number {
    font-size: 1.5rem;
  }
}

.recruit-new-graduates__head {
  font-size: 1.75rem;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .recruit-new-graduates__head {
    font-size: 1.25rem;
  }
}

.recruit-new-graduates__text {
  margin-top: 1.25rem;
  font-size: 1rem;
  line-height: 1.6;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .recruit-new-graduates__text {
    font-size: 0.875rem;
    margin-top: 0.75rem;
  }
}

.recruit-new-graduates__remark {
  margin-top: 0.75rem;
  font-size: 0.875rem;
  line-height: 1.6;
  font-weight: 400;
}

.recruit-career-archive {
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-archive {
    margin-top: 2.5rem;
  }
}

.recruit-career-archive__inner {
  display: grid;
  grid-template-columns: 18.75rem 1fr;
  gap: 5rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-archive__inner {
    grid-template-columns: 1fr;
    gap: 2.5rem;
  }
}

.recruit-career-archive__sidebar {
  position: sticky;
  top: 9.375rem;
  left: 0;
}
@media screen and (max-width: 768px) {
  .recruit-career-archive__sidebar {
    position: static;
    top: auto;
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 1.25rem;
  }
}

.recruit-career-archive__sidebar-content + .recruit-career-archive__sidebar-content {
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-archive__sidebar-content + .recruit-career-archive__sidebar-content {
    margin-top: 1.25rem;
  }
}

.recruit-career-archive__sidebar-title {
  padding-left: 1.125rem;
  position: relative;
  display: flex;
  align-items: center;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .recruit-career-archive__sidebar-title {
    font-size: 1rem;
  }
}

.recruit-career-archive__sidebar-title::before {
  content: "";
  position: absolute;
  display: block;
  width: 0.625rem;
  height: 0.625rem;
  background-color: #E7352C;
  border-radius: 50%;
  left: 0;
}

.recruit-career-archive__sidebar-lists {
  margin-top: 1.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-archive__sidebar-lists {
    margin-top: 0.75rem;
  }
}

.recruit-career-archive__sidebar-lists li + li {
  margin-top: 1.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-archive__sidebar-lists li + li {
    margin-top: 0.25rem;
  }
}

.recruit-career-archive__sidebar-lists a {
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1;
  color: #34414E;
}
@media screen and (max-width: 768px) {
  .recruit-career-archive__sidebar-lists a {
    font-size: 0.875rem;
  }
}

.recruit-career-archive__list + .recruit-career-archive__list {
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-archive__list + .recruit-career-archive__list {
    margin-top: 1.25rem;
  }
}

.recruit-career-archive__list a {
  padding: 2.5rem;
  border-radius: 1.25rem;
  color: #34414E;
  background-color: #f2f8ff;
  display: block;
}
@media screen and (max-width: 768px) {
  .recruit-career-archive__list a {
    padding: 2rem 1.25rem;
    border-radius: 0.625rem;
  }
}

.recruit-career-archive__title {
  color: #E7352C;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .recruit-career-archive__title {
    font-size: 1.25rem;
  }
}

.recruit-career-archive__desc {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
  margin-top: 1.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-archive__desc {
    margin-top: 0.75rem;
  }
}

.recruit-career-archive__taxonomies {
  margin-top: 1.5rem;
  display: flex;
  gap: 1.25rem;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .recruit-career-archive__taxonomies {
    margin-top: 1rem;
    gap: 0.5rem;
  }
}

.recruit-career-archive__taxonomy {
  padding: 0.5rem 1rem;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1;
  background-color: #e2ebf5;
  border-radius: 0.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-career-archive__taxonomy {
    font-size: 0.875rem;
    padding: 0.25rem 0.5rem;
  }
}

.career-single {
  margin-top: 3.75rem;
  margin-bottom: 7.5rem;
}
@media screen and (max-width: 768px) {
  .career-single {
    margin-top: 2rem;
    margin-bottom: 3.75rem;
  }
}

.career-single__inner.recruit-inner {
  max-width: 81.25rem;
}

.career-single__title {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1;
  color: #E7352C;
}
@media screen and (max-width: 768px) {
  .career-single__title {
    font-size: 1.5rem;
  }
}

.career-single__taxonomies {
  margin-top: 1.25rem;
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem;
}
@media screen and (max-width: 768px) {
  .career-single__taxonomies {
    margin-top: 0.75rem;
    gap: 0.5rem;
  }
}

.career-single__taxonomies li {
  padding: 0.5rem 1rem;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1;
  background-color: #e2ebf5;
  border-radius: 0.25rem;
}
@media screen and (max-width: 768px) {
  .career-single__taxonomies li {
    font-size: 0.875rem;
    padding: 0.25rem 0.5rem;
  }
}

.career-single__contents {
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .career-single__contents {
    margin-top: 2rem;
  }
}

.career-single__content {
  display: grid;
  grid-template-columns: 18.75rem 1fr;
}
@media screen and (max-width: 768px) {
  .career-single__content {
    grid-template-columns: 1fr;
  }
}

.career-single__content + .career-single__content {
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .career-single__content + .career-single__content {
    margin-top: 2rem;
  }
}

.career-single__head {
  background-color: #f2f8ff;
  border-radius: 0.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18.75rem;
}
@media screen and (max-width: 768px) {
  .career-single__head {
    width: 100%;
    border-radius: 0.25rem;
    padding: 1.25rem;
  }
}

.career-single__content-body {
  padding: 2.5rem;
}
@media screen and (max-width: 768px) {
  .career-single__content-body {
    padding: 1.25rem;
  }
}

.career-single__content p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .career-single__content p {
    font-size: 1rem;
  }
}

.career-single__content a {
  color: #E7352C;
}

.career-single__location-map {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

.career-single__location-map img {
  width: 1rem;
  height: 1rem;
  object-fit: cover;
}

.career-single__location-item + .career-single__location-item {
  margin-top: 0.25rem;
}

.career-single__btn {
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .career-single__btn {
    margin-top: 2.5rem;
  }
}

.career-single__btn.recruit-btn a {
  background-color: #E7352C;
  margin-inline: auto;
}

.career-single__btn.recruit-btn a:hover {
  background-color: #e90b00;
}

.career-single__btn.recruit-btn a::after {
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background-color: #fff;
  right: 1.5rem;
}

.career-single__btn.recruit-btn a:hover::after {
  right: 1.1875rem;
}

.recruit-future {
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-future {
    margin-top: 2rem;
  }
}

.recruit-future__img {
  max-width: 80rem;
  width: 100%;
  height: auto;
  aspect-ratio: 1280/500;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .recruit-future__img {
    max-width: 100%;
  }
}

.recruit-future__img img {
  object-fit: cover;
  border-radius: 1.25rem;
}

.recruit-future__contents {
  background-color: #f2f8ff;
  margin-top: -3rem;
  padding: 7.5rem 0 6.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-future__contents {
    margin-top: -1.5rem;
    padding: 3.75rem 0 3.125rem;
  }
}

.recruit-title__title {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .recruit-title__title {
    font-size: 1.5rem;
  }
}

.recruit-title__title,
.recruit-future__read {
  text-align: center;
}

.recruit-future__read {
  margin-top: 1.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-future__read {
    margin-top: 1rem;
  }
}

.recruit-future-tab {
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .recruit-future-tab {
    margin-top: 2.5rem;
  }
}

.recruit-future-tab__menu {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  justify-content: center;
  gap: 2.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-future-tab__menu {
    gap: 0;
  }
}

.recruit-future-tab__menu-item {
  padding: 1.375rem;
  max-width: 38.75rem;
  width: 100%;
  font-size: 1.25rem;
  line-height: 1.6;
  font-weight: 700;
  color: #fff;
  background-color: #888;
  text-align: center;
  border-radius: 1.25rem 1.25rem 0 0;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .recruit-future-tab__menu-item {
    font-size: 1rem;
    padding: 1rem;
    max-width: 100%;
  }
}

.recruit-future-tab__menu-item.is-active {
  background-color: #E7352C;
}

.recruit-future-tab__content {
  background-color: #fff;
  padding: 5rem 2.5rem;
  border-radius: 0 0 3.125rem 3.125rem;
}
@media screen and (max-width: 768px) {
  .recruit-future-tab__content {
    padding: 2.5rem 1.25rem;
    border-radius: 0 0 1.25rem 1.25rem;
  }
}

.recruit-future-tab__content-item {
  display: none;
}

.recruit-future-tab__content-item.is-active {
  display: block;
  animation: fade 0.3s;
}

@keyframes fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.future-tab__head-group {
  padding-left: 1.25rem;
  border-left: 0.1875rem solid #E7352C;
}
@media screen and (max-width: 768px) {
  .future-tab__head-group {
    padding-left: 0.625rem;
    border-left: 0.125rem solid #E7352C;
  }
}

.future-tab__head {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .future-tab__head {
    font-size: 1.25rem;
  }
}

.future-tab__subhead {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .future-tab__subhead {
    margin-top: 0.5rem;
    font-size: 0.875rem;
  }
}

.future-tab__img {
  max-width: 71.25rem;
  width: 100%;
  height: auto;
  aspect-ratio: 1140/533;
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .future-tab__img {
    max-width: 100%;
  }
}

.future-tab__img img {
  object-fit: cover;
}

/* 左 */
.future-tab__lists {
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .future-tab__lists {
    margin-top: 2rem;
  }
}

.future-tab__list {
  padding: 3.75rem;
  display: grid;
  grid-template-columns: 1fr 25rem;
  gap: 3.75rem;
  border-radius: 1.25rem;
}
@media screen and (max-width: 768px) {
  .future-tab__list {
    grid-template-columns: 1fr;
    gap: 1.25rem;
    padding: 2rem 1.25rem;
  }
}

.future-tab__list:nth-child(1) {
  background: rgba(210, 98, 101, 0.2);
}

.future-tab__list:nth-child(2) {
  background: rgba(242, 170, 132, 0.2);
}

.future-tab__list:nth-child(3) {
  background: rgba(121, 197, 168, 0.2);
}

.future-tab__list:nth-child(4) {
  background: rgba(91, 155, 213, 0.2);
}

.future-tab__list:nth-child(5) {
  background: rgba(229, 158, 221, 0.2);
}

.future-tab__list + .future-tab__list {
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .future-tab__list + .future-tab__list {
    margin-top: 1.5rem;
  }
}

.future-tab__list-title {
  display: flex;
  align-items: center;
  gap: 1rem;
}
@media screen and (max-width: 768px) {
  .future-tab__list-title {
    gap: 0.5rem;
  }
}

.future-tab__number {
  font-family: "Outfit", sans-serif;
  font-size: 2.5rem;
}
@media screen and (max-width: 768px) {
  .future-tab__number {
    font-size: 1.75rem;
  }
}

.future-tab__number,
.future-tab__list-title p {
  font-weight: 700;
  line-height: 1;
  color: #E7352C;
}

.future-tab__list-title p {
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .future-tab__list-title p {
    font-size: 1.25rem;
  }
}

.future-tab__list-subtitle {
  font-size: 1.25rem;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .future-tab__list-subtitle {
    font-size: 1rem;
  }
}

.future-tab__list-subtitle,
.future-tab__list-text {
  margin-top: 1.5rem;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .future-tab__list-subtitle,
  .future-tab__list-text {
    margin-top: 1rem;
  }
}

.future-tab__list-text {
  font-size: 1rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .future-tab__list-text {
    font-size: 0.875rem;
  }
}

.future-tab__right {
  max-width: 25rem;
  width: 100%;
  height: auto;
  aspect-ratio: 400/300;
}

.future-tab__right2 {
  max-width: 15.625rem;
  width: 100%;
  height: auto;
  aspect-ratio: 300/300;
}
@media screen and (max-width: 768px) {
  .future-tab__right2 {
    max-width: 9.375rem;
    margin-inline: auto;
  }
}

.future-tab__right img {
  object-fit: cover;
  border-radius: 1.25rem;
}

.future-tab__right2 img {
  object-fit: cover;
}

/* 右 */
.future-tab-left__lists {
  padding: 5rem 4.375rem;
  border-radius: 3.125rem;
  background-color: #fcfcfc;
}
@media screen and (max-width: 768px) {
  .future-tab-left__lists {
    padding: 2.5rem 1.25rem;
    border-radius: 1.25rem;
  }
}

.future-tab-left__list {
  display: grid;
  grid-template-columns: 1fr 25rem;
  gap: 2.5rem;
  padding-bottom: 3.75rem;
  border-bottom: 2px solid #f5f5f5;
}
@media screen and (max-width: 768px) {
  .future-tab-left__list {
    grid-template-columns: 1fr;
    gap: 1.25rem;
    padding-bottom: 1.25rem;
  }
}

.future-tab-left__lists .future-tab-left__list {
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .future-tab-left__lists .future-tab-left__list {
    flex-direction: column;
  }
}

.future-tab-left__list:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.future-tab-left__list + .future-tab-left__list {
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .future-tab-left__list + .future-tab-left__list {
    margin-top: 2rem;
  }
}

.future-tab-left__list-title {
  font-family: "Outfit", sans-serif;
  font-size: 3.75rem;
  font-weight: 700;
  line-height: 1;
  color: #E7352C;
}
@media screen and (max-width: 768px) {
  .future-tab-left__list-title {
    font-size: 1.75rem;
  }
}

.future-tab-left__list-subtitle {
  margin-top: 1.5rem;
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .future-tab-left__list-subtitle {
    font-size: 1.25rem;
    margin-top: 1rem;
  }
}

.recruit-under-environment {
  margin-top: 5rem;
  margin-bottom: 8.125rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-environment {
    margin-top: 0;
    margin-bottom: 5rem;
  }
}

.recruit-under-environment__lists {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  justify-content: space-between;
  gap: 1.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-environment__lists {
    display: none;
  }
}

.recruit-under-environment__list {
  max-width: 17.5rem;
  width: 100%;
}

.recruit-under-environment__link {
  padding-block: 0.625rem;
  border-bottom: 1px solid #34414E;
  position: relative;
  display: flex;
  align-items: center;
  color: #34414E;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
}

.recruit-under-environment__link::before {
  content: "";
  position: absolute;
  display: block;
  vertical-align: middle;
  color: #34414E;
  line-height: 1;
  width: 0.625rem;
  height: 0.625rem;
  border: 0.0625rem solid currentColor;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  transform: translateY(-25%) rotate(135deg);
  right: 1.25rem;
}

.recruit-under-environment__content {
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-environment__content {
    margin-top: 3.75rem;
  }
}

.recruit-under-environment__icon {
  max-width: 9.375rem;
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
  margin-inline: auto;
}

.recruit-under-environment__icon img {
  object-fit: cover;
}

.recruit-under-environment__title {
  margin-top: 0.5rem;
  text-align: center;
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .recruit-under-environment__title {
    font-size: 1.5rem;
  }
}

.recruit-under-environment__wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem;
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-environment__wrapper {
    grid-template-columns: 1fr;
    gap: 1.25rem;
    margin-top: 1.5rem;
  }
}

.recruit-under-environment__wrap {
  max-width: 25rem;
  width: 100%;
  padding: 1.25rem;
  border: 2px solid #f2f8ff;
  border-radius: 0.625rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.recruit-under-environment__head {
  padding-left: 1.25rem;
  position: relative;
  display: flex;
  align-items: center;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .recruit-under-environment__head {
    font-size: 1.125rem;
  }
}

.recruit-under-environment__head::before {
  content: "";
  position: absolute;
  display: block;
  width: 0.625rem;
  height: 0.625rem;
  background-color: #E7352C;
  border-radius: 50%;
  left: 0;
}

.recruit-under-environment__text {
  font-size: 1rem;
  line-height: 1.6;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .recruit-under-environment__text {
    font-size: 0.875rem;
  }
}

.recruit-under-environment__flex {
  display: grid;
  grid-template-columns: 26.25rem 1fr;
  gap: 7.5rem;
  align-items: center;
  margin-top: 2.5rem;
  max-width: 71.25rem;
  width: 100%;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .recruit-under-environment__flex {
    grid-template-columns: 1fr;
    gap: 2.5rem;
    margin-top: 1.5rem;
  }
}

.recruit-under-environment__img {
  max-width: 26.25rem;
  width: 100%;
  height: auto;
  aspect-ratio: 420/594;
}

.recruit-under-environment__img img {
  object-fit: cover;
}

.recruit-under-environment__body-head {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .recruit-under-environment__body-head {
    font-size: 1.5rem;
  }
}

.recruit-under-environment__body-text {
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-environment__body-text {
    margin-top: 1.5rem;
  }
}

.recruit-under-environment__body-text p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .recruit-under-environment__body-text p {
    font-size: 0.875rem;
  }
}

.recruit-under-environment__body-text p + p {
  margin-top: 1.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-environment__body-text p + p {
    margin-top: 1rem;
  }
}

.recruit-under-environment__body-head-btn {
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-environment__body-head-btn {
    margin-top: 2rem;
  }
}

.recruit-under-environment__body-head-btn.recruit-btn a {
  background-color: #f2f8ff;
  color: #34414E;
  max-width: 25rem;
}

.recruit-under-environment__body-head-btn.recruit-btn a::after {
  background-color: #fff;
}

.recruit-under-environment__body-head-btn.recruit-btn a:hover {
  background-color: #dde6f2;
}

.recruit-under-business {
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-business {
    margin-top: 2rem;
  }
}

.recruit-under-business__title {
  font-size: 2rem;
  line-height: 1.6;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__title {
    font-size: 1.5rem;
  }
}

.recruit-under-business__title,
.recruit-under-business__read {
  text-align: center;
}

.recruit-under-business__read {
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__read {
    margin-top: 1.25rem;
    font-size: 1rem;
  }
}

.recruit-under-business__lists {
  margin-top: 6.25rem;
  width: fit-content;
  margin-inline: auto;
  padding-bottom: 6.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__lists {
    margin-top: 3.75rem;
    padding-bottom: 3.75rem;
  }
}

.recruit-under-business__list + .recruit-under-business__list {
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__list + .recruit-under-business__list {
    margin-top: 2rem;
  }
}

.recruit-under-business__list {
  display: grid;
  grid-template-columns: 17.5rem 1fr;
  gap: 3.75rem;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__list {
    grid-template-columns: 1fr;
    gap: 0.625rem;
  }
}

.recruit-under-business__link {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding-bottom: 0.625rem;
  border-bottom: 1px solid #34414E;
  position: relative;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__link {
    padding-bottom: 0.25rem;
  }
}

.recruit-under-business__link::after {
  content: "";
  position: absolute;
  display: block;
  vertical-align: middle;
  color: #34414E;
  line-height: 1;
  width: 0.625rem;
  height: 0.625rem;
  border: 0.0625rem solid currentColor;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  transform: translateY(-25%) rotate(135deg);
  right: 1.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__link::after {
    right: 0.625rem;
    width: 0.5rem;
    height: 0.5rem;
  }
}

.recruit-under-business__list-icon {
  max-width: 2rem;
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__list-icon {
    max-width: 1.5rem;
  }
}

.recruit-under-business__list-icon img {
  object-fit: cover;
}

.recruit-under-business__list-title {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.6;
  color: #34414E;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__list-title {
    font-size: 1rem;
  }
}

.recruit-under-business__list-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__list-text {
    font-size: 0.875rem;
  }
}

.recruit-under-business__contents {
  border-top: 1px solid #888;
  padding-block: 6.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__contents {
    padding-block: 3.75rem;
  }
}

.recruit-under-business__content {
  max-width: 71.25rem;
  width: 100%;
  margin-inline: auto;
}

.recruit-under-business__flex {
  display: grid;
  grid-template-columns: 1fr 37.5rem;
  gap: 3.125rem;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__flex {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}

.recruit-under-business__left-top {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__left-top {
    gap: 0.5rem;
  }
}

.recruit-under-business__left-icon {
  max-width: 5rem;
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__left-icon {
    max-width: 3.75rem;
  }
}

.recruit-under-business__left-icon img {
  object-fit: cover;
}

.recruit-under-business__contents:nth-of-type(1) .recruit-under-business__left-title {
  color: #ff7c82;
}

.recruit-under-business__contents:nth-of-type(2) .recruit-under-business__left-title {
  color: #78c4a6;
}

.recruit-under-business__contents:nth-of-type(3) .recruit-under-business__left-title {
  color: #5b9cd4;
}

.recruit-under-business__left-entitle {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1;
  font-family: "Outfit", sans-serif;
  display: block;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__left-entitle {
    font-size: 1rem;
  }
}

.recruit-under-business__left-jptitle {
  margin-top: 0.25rem;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__left-jptitle {
    font-size: 1.5rem;
  }
}

.recruit-under-business__left-bottom {
  margin-top: 1.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__left-bottom {
    margin-top: 1rem;
  }
}

.recruit-under-business__left-head {
  font-size: 1.25rem;
  line-height: 1.6;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__left-head {
    font-size: 1.125rem;
  }
}

.recruit-under-business__left-text {
  margin-top: 0.75rem;
  padding: 2rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
  border-radius: 0.625rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__left-text {
    font-size: 0.875rem;
    padding: 1.5rem;
  }
}

.recruit-under-business__contents:nth-of-type(1) .recruit-under-business__left-text {
  background-color: #ffebec;
}

.recruit-under-business__contents:nth-of-type(2) .recruit-under-business__left-text {
  background-color: #e5f6f0;
}

.recruit-under-business__contents:nth-of-type(3) .recruit-under-business__left-text {
  background-color: #e6edf5;
}

.recruit-under-business__left-remark {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  margin-top: 0.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__left-remark {
    font-size: 0.75rem;
    margin-top: 0.5rem;
  }
}

.recruit-under-business__right {
  max-width: 37.5rem;
  width: 100%;
  height: auto;
  aspect-ratio: 600/338;
}

.recruit-under-business__right img {
  object-fit: cover;
  border-radius: 1.25rem;
}

.recruit-under-features {
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-features {
    margin-top: 3.75rem;
  }
}

.recruit-under-business__title {
  text-align: center;
}

.recruit-under-business__entitle {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1;
  font-family: "Outfit", sans-serif;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__entitle {
    font-size: 1rem;
  }
}

.recruit-under-business__contents:nth-of-type(1) .recruit-under-business__entitle {
  color: #ff7c82;
}

.recruit-under-business__contents:nth-of-type(2) .recruit-under-business__entitle {
  color: #78c4a6;
}

.recruit-under-business__contents:nth-of-type(3) .recruit-under-business__entitle {
  color: #5b9cd4;
}

.recruit-under-business__jptitle {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__jptitle {
    font-size: 1.5rem;
  }
}

.recruit-under-features__lists {
  margin-top: 2rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.8125rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-features__lists {
    grid-template-columns: 1fr;
    gap: 2.5rem;
    margin-top: 1.25rem;
  }
}

.recruit-under-feature__circle {
  background-color: #fff;
  border-radius: 50%;
  width: min(24vw, 21.875rem);
  height: min(24vw, 21.875rem);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .recruit-under-feature__circle {
    width: 17.5rem;
    height: 17.5rem;
    margin-inline: auto;
  }
}

.recruit-under-business__contents:nth-of-type(1) .recruit-under-feature__circle {
  border: 0.625rem solid #ff7c82;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__contents:nth-of-type(1) .recruit-under-feature__circle {
    border: 0.375rem solid #ff7c82;
  }
}

.recruit-under-business__contents:nth-of-type(2) .recruit-under-feature__circle {
  border: 0.625rem solid #78c4a6;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__contents:nth-of-type(2) .recruit-under-feature__circle {
    border: 0.375rem solid #78c4a6;
  }
}

.recruit-under-business__contents:nth-of-type(3) .recruit-under-feature__circle {
  border: 0.625rem solid #5b9cd4;
}
@media screen and (max-width: 768px) {
  .recruit-under-business__contents:nth-of-type(3) .recruit-under-feature__circle {
    border: 0.375rem solid #5b9cd4;
  }
}

.recruit-under-feature__circle-title {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .recruit-under-feature__circle-title {
    font-size: 1.25rem;
  }
}

.recruit-under-feature__circle-img {
  max-width: 10rem;
  width: 100%;
  height: auto;
  aspect-ratio: 160/160;
}
@media screen and (max-width: 768px) {
  .recruit-under-feature__circle-img {
    max-width: 7.5rem;
  }
}

.recruit-under-feature__circle-img img {
  object-fit: cover;
}

.recruit-under-feature__list-title {
  margin-top: 1.5rem;
  font-size: min(1.4vw, 1.25rem);
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .recruit-under-feature__list-title {
    font-size: 1.125rem;
    margin-top: 1rem;
  }
}

.recruit-under-feature__list-title,
.recruit-under-feature__list-text {
  width: 100%;
  margin-inline: auto;
}

.recruit-under-feature__list-text {
  max-width: 20rem;
  margin-top: 1rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .recruit-under-feature__list-text {
    font-size: 0.875rem;
    margin-top: 0.75rem;
  }
}

.recruit-under-product {
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-product {
    margin-top: 3.75rem;
  }
}

.recruit-under-product__lists {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: 1rem;
  row-gap: 2.5rem;
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-product__lists {
    grid-template-columns: 1fr 1fr;
    gap: 1.25rem;
  }
}

.recruit-under-product__img {
  max-width: 16.875rem;
  width: 100%;
  height: auto;
  aspect-ratio: 270/187;
}
@media screen and (max-width: 768px) {
  .recruit-under-product__img {
    max-width: 100%;
  }
}

.recruit-under-product__img img {
  object-fit: cover;
  border-radius: 1.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-product__img img {
    border-radius: 0.625rem;
  }
}

.recruit-under-product__name {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.6;
  color: #34414E;
  text-align: center;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-product__name {
    font-size: 1rem;
    margin-top: 0.5rem;
  }
}

.recruit-under-future {
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .recruit-under-future {
    margin-top: 3.75rem;
  }
}

.recruit-under-future__content {
  margin-top: 2rem;
  padding: 2.5rem 5rem;
  border-radius: 1.25rem;
  max-width: 60rem;
  width: 100%;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .recruit-under-future__content {
    padding: 1.5rem 1.25rem;
    border-radius: 0.625rem;
    margin-top: 1.25rem;
  }
}

.recruit-under-business__contents:nth-of-type(1) .recruit-under-future__content {
  background-color: #ffebec;
}

.recruit-under-business__contents:nth-of-type(2) .recruit-under-future__content {
  background-color: #e5f6f0;
}

.recruit-under-business__contents:nth-of-type(3) .recruit-under-future__content {
  background-color: #e6edf5;
}

.recruit-under-future__subtitle {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .recruit-under-future__subtitle {
    font-size: 1.125rem;
  }
}

.recruit-under-future__text {
  margin-top: 1.5rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .recruit-under-future__text {
    font-size: 0.875rem;
    margin-top: 1rem;
  }
}

.recruit-numbers {
  margin-top: 3.75rem;
  letter-spacing: normal;
  margin-bottom: 7.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-numbers {
    margin-top: 2rem;
    margin-bottom: 3.75rem;
  }
}

.recruit-numbers__contents {
  padding: 6.25rem 3.75rem;
  max-width: 87.5rem;
  width: 100%;
  margin-inline: auto;
  position: relative;
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-numbers__contents {
    padding: 2.5rem 1.25rem;
    margin-top: 2.5rem;
  }
}

.recruit-numbers__contents::before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  background-image: url("../images/recruit-numbers-bg.webp");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  left: 0;
  top: 0;
  z-index: -1;
  border-radius: 3.125rem;
}
@media screen and (max-width: 768px) {
  .recruit-numbers__contents::before {
    border-radius: 1.25rem;
  }
}

.recruit-numbers__title-wrap {
  position: relative;
  text-align: center;
  margin-top: 9.375rem;
}
@media screen and (max-width: 768px) {
  .recruit-numbers__title-wrap {
    margin-top: 5rem;
  }
}

.recruit-numbers__title {
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .recruit-numbers__title {
    font-size: 2rem;
  }
}

.recruit-numbers__note {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1rem;
  color: #fff;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .recruit-numbers__note {
    margin-top: 0.625rem;
    font-size: 0.875rem;
    position: static;
  }
}

.recruit-numbers__3lists {
  margin-top: 2rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5625rem;
}
@media screen and (max-width: 768px) {
  .recruit-numbers__3lists {
    margin-top: 1.5rem;
    grid-template-columns: 1fr;
  }
}

.recruit-numbers__bg {
  border-radius: 1.25rem;
  background-color: #fff;
  padding: 1.5rem;
}

.recruit-numbers__head {
  padding-left: 1.375rem;
  position: relative;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.6;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .recruit-numbers__head {
    padding-left: 1rem;
    font-size: 1rem;
  }
}

.recruit-numbers__head::before {
  content: "";
  position: absolute;
  display: block;
  width: 0.875rem;
  height: 0.875rem;
  border-radius: 50%;
  background-color: #E7352C;
  left: 0;
}
@media screen and (max-width: 768px) {
  .recruit-numbers__head::before {
    width: 0.625rem;
    height: 0.625rem;
  }
}

.recruit-numbers__2wrap {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  justify-content: center;
}

.recruit-numbers__icon {
  max-width: 6.25rem;
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 768px) {
  .recruit-numbers__icon {
    max-width: 5rem;
  }
}

.recruit-numbers__icon img {
  object-fit: cover;
}

.recruit-numbers__2wrapper {
  display: flex;
  gap: 0.25rem;
  align-items: center;
  margin-top: 1rem;
  justify-content: center;
}

.recruit-text {
  color: #E7352C;
  font-weight: 700;
  line-height: 1;
}

.recruit-text--20 {
  font-size: 1.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-text--20 {
    font-size: 1.125rem;
  }
}

.recruit-text--40 {
  font-size: 2.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-text--40 {
    font-size: 2rem;
  }
}

.recruit-text--60 {
  font-size: 3.75rem;
}
@media screen and (max-width: 768px) {
  .recruit-text--60 {
    font-size: 2.5rem;
  }
}

.recruit-text--88 {
  font-size: 5.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-text--88 {
    font-size: 3.75rem;
  }
}

.recruit-text--100 {
  font-size: min(7vw, 6.25rem);
}
@media screen and (max-width: 768px) {
  .recruit-text--100 {
    font-size: 3.75rem;
  }
}

.recruit-text--120 {
  font-size: 7.5rem;
}
@media screen and (max-width: 768px) {
  .recruit-text--120 {
    font-size: 3.75rem;
  }
}

.recruit-numbers__count {
  font-family: "Outfit", sans-serif;
}

.recruit-numbers__remark {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.6;
  text-align: end;
  justify-content: space-between;
}

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

.recruit-numbers__2lists {
  display: grid;
  grid-template-columns: 25.625rem 1fr;
  gap: 1.5625rem;
  margin-top: 1.5625rem;
}
@media screen and (max-width: 768px) {
  .recruit-numbers__2lists {
    grid-template-columns: 1fr;
  }
}

.recruit-numbers__number {
  max-width: 13.5rem;
  width: 100%;
  height: auto;
  aspect-ratio: 216/150;
}
@media screen and (max-width: 768px) {
  .recruit-numbers__number {
    max-width: 11.25rem;
  }
}

.recruit-numbers__number img {
  object-fit: contain;
}

.recruit-numbers__vertical {
  display: flex;
  flex-direction: column;
  gap: 1.875rem;
  align-items: center;
  margin-top: 1rem;
}

.recruit-numbers__flex {
  border-top: 1px solid #E7352C;
  padding-top: 1.875rem;
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

.recruit-numbers__column + .recruit-numbers__column {
  margin-top: 1.5625rem;
}

.recruit-numbers__columns {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.recruit-numbers__column {
  height: 100%;
}

@media screen and (max-width: 768px) {
  .recruit-numbers__column .recruit-numbers__2wrapper {
    flex-wrap: wrap;
    gap: 0.75rem;
  }
}

.recruit-numbers__2wrapper + .recruit-numbers__2wrapper {
  margin-top: 2.5rem;
}

.recruit-numbers__remark--mt20 {
  margin-top: 1.25rem;
}

.recruit-numbers__2columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5625rem;
}
@media screen and (max-width: 768px) {
  .recruit-numbers__2columns {
    grid-template-columns: 1fr;
  }
}

.recruit-numbers__2column .recruit-numbers__remark {
  margin-top: 0;
}

.recruit-numbers__2columns + .recruit-numbers__2columns {
  margin-top: 1.5625rem;
}

.recruit-numbers__2grid {
  display: grid;
  grid-template-columns: 1fr 25.625rem;
  gap: 1.5625rem;
  margin-top: 1.5625rem;
}
@media screen and (max-width: 768px) {
  .recruit-numbers__2grid {
    grid-template-columns: 1fr;
  }
}

.recruit-numbers__grid-flexbox {
  display: flex;
  justify-content: end;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .recruit-numbers__grid-flexbox {
    justify-content: center;
  }
}

.recruit-numbers__grid-flex {
  display: flex;
  gap: 0.25rem;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .recruit-numbers__grid-flex {
    flex-direction: column;
  }
}

.recruit-numbers__grid-flex:nth-of-type(1) {
  padding-right: 1.25rem;
}

.recruit-numbers__grid-flex:nth-of-type(2) {
  border-left: 1px solid #E7352C;
  padding-left: 1.25rem;
}

.recruit-numbers__grid-imgbox {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.recruit-numbers__grid-text {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}

.ir-top__inner.inner {
  max-width: 81.25rem;
  width: 100%;
  display: grid;
  grid-template-columns: 43.75rem 18.75rem;
  gap: calc(40 / 1440 * 100vw);
  justify-content: center;
  padding-inline: calc(25 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-top__inner.inner {
    grid-template-columns: 1fr;
    gap: calc(20 / 375 * 100vw);
    padding-inline: calc(24 / 375 * 100vw);
  }
}

.ir-top__link {
  display: flex;
  justify-content: space-between;
  align-items: end;
  padding: calc(266 / 1440 * 100vw) calc(60 / 1440 * 100vw) calc(40 / 1440 * 100vw);
  position: relative;
  height: auto;
  min-height: 25rem;
}
@media screen and (max-width: 768px) {
  .ir-top__link {
    padding: calc(150 / 375 * 100vw) calc(20 / 375 * 100vw) calc(40 / 375 * 100vw);
    min-height: 28.125rem;
  }
}

.ir-top__link::before,
.ir-top__link::after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
}

.ir-top__link::before {
  background-image: url(./../images/ir_top.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  will-change: transform;
  transform: translateZ(0);
}

.ir-top__link::after {
  background: linear-gradient(180deg, rgba(46, 52, 66, 0) 50%, rgba(46, 52, 66, 0.8) 100%);
}

.ir-top__title {
  font-size: 1rem;
  font-weight: 500;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .ir-top__title {
    font-size: calc(16 / 375 * 100vw);
  }
}

.ir-top__stock-price {
  width: 18.75rem;
  display: block;
  padding: calc(20 / 1440 * 100vw);
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .ir-top__stock-price {
    width: 80%;
    padding: calc(20 / 375 * 100vw);
    margin-inline: auto;
  }
}

.ir-top__stock-link {
  padding: calc(8 / 1440 * 100vw);
  margin-top: calc(12 / 1440 * 100vw);
  border: 1px solid #E7352C;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  color: #E7352C;
  font-size: 1rem;
  font-weight: 500;
  transition: opacity 0.3s;
}
@media screen and (max-width: 768px) {
  .ir-top__stock-link {
    padding: calc(8 / 375 * 100vw);
    margin-top: calc(12 / 375 * 100vw);
    font-size: calc(16 / 375 * 100vw);
    margin-inline: auto;
  }
}

.ir-top__stock-link::after {
  content: "";
  position: absolute;
  right: clamp(10px, 18 / 1440 * 100vw, 6%);
  width: calc(20 / 1440 * 100vw);
  height: calc(20 / 1440 * 100vw);
  bottom: 0.625rem;
  background-image: url(../images/new_tab_red.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  .ir-top__stock-link::after {
    right: calc(18 / 375 * 100vw);
    width: calc(20 / 375 * 100vw);
    height: calc(20 / 375 * 100vw);
    bottom: min(25px, 12 / 375 * 100vw);
  }
}

@media (hover: hover) {
  .ir-top__stock-link:hover {
    opacity: 0.7;
  }
}
.presentations-main .under-section__body {
  padding-right: 0;
}

.ir-presentations {
  padding: calc(80 / 1440 * 100vw) 0;
  border-top: 1px solid rgba(115, 137, 159, 0.2);
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .ir-presentations {
    padding: calc(40 / 375 * 100vw) 0;
  }
}

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

.ir-presentation-list {
  margin-top: calc(48 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-presentation-list {
    margin-top: calc(12 / 375 * 100vw);
  }
}

.presentations-main__body .ir-presentation-list {
  margin-top: 0;
}

.ir-presentation-item {
  padding: calc(32 / 1440 * 100vw) calc(20 / 1440 * 100vw);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .ir-presentation-item {
    flex-direction: column;
    gap: calc(20 / 375 * 100vw);
    padding: calc(10 / 375 * 100vw) 0;
    align-items: baseline;
  }
}

.presentations-main__body .ir-presentation-item {
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .presentations-main__body .ir-presentation-item {
    padding: calc(20 / 375 * 100vw) 0;
  }
}

.ir-presentation-item__date {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 0.875rem;
}
@media screen and (max-width: 768px) {
  .ir-presentation-item__date {
    font-size: calc(12 / 375 * 100vw);
  }
}

.ir-presentation-item__title {
  margin-top: calc(8 / 1440 * 100vw);
  font-size: 1rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .ir-presentation-item__title {
    font-size: calc(14 / 375 * 100vw);
  }
}

.ir-presentation-item__right {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-presentation-item__right {
    grid-template-columns: repeat(2, 1fr);
    column-gap: calc(30 / 375 * 100vw);
    row-gap: calc(20 / 375 * 100vw);
  }
}

.presentations-main .ir-presentation-item__right {
  grid-template-columns: repeat(2, 1fr);
}

.presentations-main .ir-presentation-item {
  gap: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .presentations-main .ir-presentation-item {
    column-gap: calc(30 / 375 * 100vw);
    row-gap: calc(20 / 375 * 100vw);
  }
}

.ir-presentation-item__button {
  width: 12.5rem;
  padding: calc(16 / 1440 * 100vw);
  color: #34414E;
  font-size: 1rem;
  font-weight: 500;
  background-color: rgba(115, 137, 159, 0.2);
  text-align: center;
  display: block;
  border-radius: calc(30 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-presentation-item__button {
    width: calc(150 / 375 * 100vw);
    padding: calc(16 / 375 * 100vw);
    font-size: calc(16 / 375 * 100vw);
    border-radius: calc(30 / 375 * 100vw);
  }
}

.presentations-main__body .ir-presentation-item__button {
  width: calc(140 / 1440 * 100vw);
  padding: calc(10 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .presentations-main__body .ir-presentation-item__button {
    width: calc(140 / 375 * 100vw);
    padding: calc(16 / 375 * 100vw);
  }
}

.ir-presentation-item__button--border {
  background-color: transparent;
  border: 1px solid rgba(115, 137, 159, 0.2);
}

@media screen and (max-width: 768px) {
  .ir-presentations__btn {
    margin-inline: auto;
    margin-top: calc(20 / 375 * 100vw);
  }
}

.top-ir-news #xj-mainlist.xj-list {
  margin-top: calc(32 / 1440 * 100vw) !important;
}
@media screen and (max-width: 768px) {
  .top-ir-news #xj-mainlist.xj-list {
    margin-top: calc(28 / 375 * 100vw);
  }
}

.ir .ir-news {
  padding: calc(80 / 1440 * 100vw) 0;
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .ir .ir-news {
    padding: calc(48 / 375 * 100vw) 0;
  }
}

.ir-news__wrap {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .ir-news__wrap {
    flex-direction: column;
  }
}

.ir-news__right {
  max-width: calc(794 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-news__right {
    max-width: 100%;
  }
}

.ir-news__btn {
  margin-top: calc(64 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-news__btn {
    margin-top: calc(40 / 375 * 100vw);
    margin-inline: auto;
  }
}

.xj-category a {
  color: #34414E;
}

.xj-select-category_s .xj-category a::before {
  background: #E7352C;
}

#xj-mainlist .xj-list-item {
  display: grid;
  grid-template-columns: max(70px, 85 / 1440 * 100vw) 1fr; /* 日付とカテゴリを横並びに配置 */
  grid-template-rows: auto auto; /* タイトルを下段に配置 */
  align-items: center; /* 縦方向の位置を中央揃え */
  padding: calc(20 / 1440 * 100vw) calc(32 / 1440 * 100vw) calc(20 / 1440 * 100vw) calc(10 / 1440 * 100vw);
  margin-bottom: 0;
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  position: relative;
}
@media screen and (max-width: 768px) {
  #xj-mainlist .xj-list-item {
    grid-template-columns: calc(85 / 375 * 100vw) 1fr;
    padding: calc(24 / 375 * 100vw) calc(10 / 375 * 100vw);
  }
}

#xj-mainlist .xj-list-item::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 1px;
  background-color: #E7352C;
  transition: width 0.3s ease;
}

@media (hover: hover) {
  #xj-mainlist .xj-list-item:hover::before {
    width: 100%;
  }
}
/* 日付 */
.xj-list-item .xj-list-date {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  grid-column: 1; /* 日付を1列目に配置 */
  grid-row: 1; /* 上段に配置 */
  font-size: 0.875rem;
}
@media screen and (max-width: 768px) {
  .xj-list-item .xj-list-date {
    font-size: calc(14 / 375 * 100vw);
  }
}

/* カテゴリ */
.xj-list-item .xj-list-label {
  padding: calc(4 / 1440 * 100vw) calc(8 / 1440 * 100vw);
  width: max(80px, 105 / 1440 * 100vw);
  grid-column: 2; /* カテゴリを2列目に配置 */
  grid-row: 1; /* 上段に配置 */
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1;
  min-width: fit-content;
  background-color: transparent;
  border: 1px solid #E7352C;
  color: #E7352C;
  border-radius: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .xj-list-item .xj-list-label {
    padding: calc(4 / 375 * 100vw) calc(12 / 375 * 100vw);
    border-radius: calc(20 / 375 * 100vw);
    width: calc(105 / 375 * 100vw);
    font-size: calc(12 / 375 * 100vw);
    text-align: center;
  }
}

/* タイトル */
.xj-list-item .xj-list-ttl {
  grid-column: 1/span 2; /* タイトルを横幅いっぱいに配置 */
  grid-row: 2; /* 下段に配置 */
  grid-column: 1/-1;
  margin-top: calc(10 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .xj-list-item .xj-list-ttl {
    margin-top: calc(10 / 375 * 100vw);
  }
}

.xj-list-item .xj-list-ttl a {
  font-size: 1rem;
  font-weight: 500;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  line-height: 1.75;
  color: #34414E;
}
@media screen and (max-width: 768px) {
  .xj-list-item .xj-list-ttl a {
    font-size: calc(16 / 375 * 100vw);
    display: block; /* SPでは制限を解除 */
    overflow: visible;
    -webkit-box-orient: initial;
    -webkit-line-clamp: initial;
  }
}

.ir-contents {
  padding: calc(80 / 1440 * 100vw) 0 calc(100 / 1440 * 100vw);
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .ir-contents {
    padding: calc(40 / 375 * 100vw) 0;
  }
}

.ir-contents__lists {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-contents__lists {
    grid-template-columns: 1fr;
    gap: calc(30 / 375 * 100vw);
  }
}

.ir-contents__list {
  display: flex;
  flex-direction: column;
}

.ir-contents__img {
  position: relative;
}

.ir-contents__img::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(46, 52, 66, 0.5);
}

.ir-contents__img img {
  object-fit: cover;
}

.ir-contents__body {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  padding: calc(20 / 1440 * 100vw) calc(20 / 1440 * 100vw) calc(40 / 1440 * 100vw);
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  border-left: 1px solid rgba(115, 137, 159, 0.2);
  border-right: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .ir-contents__body {
    padding: 0;
    border: none;
  }
}

.ir-contents__title a {
  display: flex;
  align-items: center;
  position: relative;
  color: #34414E;
  font-size: 1.25rem;
  font-weight: 500;
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  padding: calc(20 / 1440 * 100vw);
  width: 100%;
}
@media screen and (max-width: 768px) {
  .ir-contents__title a {
    font-size: calc(18 / 375 * 100vw);
    padding: calc(16 / 375 * 100vw) calc(10 / 375 * 100vw);
  }
}

.ir-contents__title a::before {
  content: "";
  display: block;
  position: absolute;
  width: calc(30 / 1440 * 100vw);
  height: calc(30 / 1440 * 100vw);
  background-color: #34414E;
  border-radius: 50%;
  right: calc(20 / 1440 * 100vw);
  transition: transform 0.3s ease;
}
@media screen and (max-width: 768px) {
  .ir-contents__title a::before {
    width: calc(30 / 375 * 100vw);
    height: calc(30 / 375 * 100vw);
    right: calc(10 / 375 * 100vw);
  }
}

.ir-contents__title a::after {
  content: "";
  display: block;
  position: absolute;
  width: calc(12 / 1440 * 100vw);
  height: calc(12 / 1440 * 100vw);
  background-image: url(./../images/arrow_white.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  right: calc(30 / 1440 * 100vw);
  transition: transform 0.3s ease;
}
@media screen and (max-width: 768px) {
  .ir-contents__title a::after {
    width: calc(12 / 375 * 100vw);
    height: calc(12 / 375 * 100vw);
    right: calc(19 / 375 * 100vw);
  }
}

@media (hover: hover) {
  .ir-contents__title a:hover::after {
    transform: translateX(10px);
  }
  .ir-contents__title a:hover::before {
    transform: translateX(10px);
  }
}
.ir-contents__wrapper {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (max-width: 768px) {
  .ir-contents__wrapper {
    grid-template-columns: 1fr;
  }
}

.ir-contents__wrap {
  padding: calc(20 / 1440 * 100vw);
  font-size: 1rem;
  font-weight: 400;
  color: #34414E;
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  width: 100%;
  position: relative;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .ir-contents__wrap {
    padding: calc(10 / 375 * 100vw);
    font-size: calc(14 / 375 * 100vw);
  }
}

.ir-contents__wrap::after {
  content: "";
  display: block;
  position: absolute;
  width: calc(14 / 1440 * 100vw);
  height: calc(14 / 1440 * 100vw);
  background-image: url(./../images/arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  right: calc(30 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-contents__wrap::after {
    width: calc(14 / 375 * 100vw);
    height: calc(14 / 375 * 100vw);
    right: calc(10 / 375 * 100vw);
  }
}

.ir-contents__wrap::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 1px;
  background-color: #E7352C;
  transition: width 0.3s ease;
}

@media (hover: hover) {
  .ir-contents__wrap:hover::before {
    width: 100%;
  }
}
.ir-calendar {
  padding: calc(80 / 1440 * 100vw) 0;
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .ir-calendar {
    padding: calc(40 / 375 * 100vw) 0;
  }
}

.ir-calendar__img {
  margin-top: calc(48 / 1440 * 100vw);
  width: 100%;
  height: auto;
  aspect-ratio: 1280/248;
  display: block;
  transition: opacity 0.3s;
}
@media screen and (max-width: 768px) {
  .ir-calendar__img {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.ir-calendar__img img {
  object-fit: cover;
}

@media (hover: hover) {
  .ir-calendar__img:hover {
    opacity: 0.7;
  }
}
.ir-other {
  padding: calc(60 / 1440 * 100vw) 0;
}
@media screen and (max-width: 768px) {
  .ir-other {
    padding: calc(30 / 375 * 100vw) 0;
  }
}

.ir-other__lists {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
@media screen and (max-width: 768px) {
  .ir-other__lists {
    grid-template-columns: 1fr;
  }
}

.ir-other__list:not(:last-child) {
  border-right: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .ir-other__list:not(:last-child) {
    border-right: none;
  }
}

.ir-other__link {
  padding: calc(20 / 1440 * 100vw);
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  border-top: 1px solid rgba(115, 137, 159, 0.2);
  display: flex;
  align-items: center;
  position: relative;
  color: #34414E;
  font-size: 1rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .ir-other__link {
    padding: calc(16 / 375 * 100vw) calc(10 / 375 * 100vw);
    font-size: calc(14 / 375 * 100vw);
    border-bottom: none;
  }
}

@media screen and (max-width: 768px) {
  .ir-other__list:last-child .ir-other__link {
    border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  }
}

.ir-other__link::after {
  content: "";
  display: block;
  position: absolute;
  width: calc(14 / 1440 * 100vw);
  height: calc(14 / 1440 * 100vw);
  background-image: url(./../images/arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  right: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-other__link::after {
    width: calc(14 / 375 * 100vw);
    height: calc(14 / 375 * 100vw);
    right: calc(10 / 375 * 100vw);
  }
}

.ir-other__link::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 1px;
  background-color: #E7352C;
  transition: width 0.3s ease;
}

@media (hover: hover) {
  .ir-other__link:hover::before {
    width: 100%;
  }
}
.ir-management__section {
  padding: calc(80 / 1440 * 100vw) 0;
}
@media screen and (max-width: 768px) {
  .ir-management__section {
    padding: calc(40 / 375 * 100vw) 0;
  }
}

.ir-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(100 / 1440 * 100vw);
  padding-inline: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-grid {
    grid-template-columns: 1fr;
    padding-inline: calc(10 / 375 * 100vw);
    gap: calc(30 / 375 * 100vw);
  }
}

.ir-grid__link {
  padding: calc(20 / 1440 * 100vw) 0;
  color: #34414E;
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  display: block;
  position: relative;
}
@media screen and (max-width: 768px) {
  .ir-grid__link {
    padding: calc(12 / 375 * 100vw) 0;
  }
}

.ir-grid__link::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 1px;
  background-color: #E7352C;
  transition: width 0.3s ease;
}

@media (hover: hover) {
  .ir-grid__link:hover::before {
    width: 100%;
  }
}
.ir-grid__wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.ir-grid__title {
  font-size: 1.25rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .ir-grid__title {
    font-size: calc(18 / 375 * 100vw);
  }
}

.ir-grid__arrow {
  width: calc(24 / 1440 * 100vw);
  height: auto;
  aspect-ratio: 24/24;
}
@media screen and (max-width: 768px) {
  .ir-grid__arrow {
    width: calc(20 / 375 * 100vw);
  }
}

.ir-grid__arrow img {
  object-fit: cover;
}

.ir-grid__text {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-grid__text {
    margin-top: calc(16 / 375 * 100vw);
  }
}

.ir-message__img {
  width: 100%;
  height: auto;
  aspect-ratio: 823/494;
}

.ir-message__img img {
  object-fit: cover;
}

.ir-message__text {
  margin-top: calc(32 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-message__text {
    margin-top: calc(16 / 375 * 100vw);
  }
}

.ir-message__sign {
  margin-top: calc(32 / 1440 * 100vw);
  font-size: 1rem;
  font-weight: 400;
  text-align: end;
}
@media screen and (max-width: 768px) {
  .ir-message__sign {
    margin-top: calc(20 / 375 * 100vw);
    font-size: calc(16 / 375 * 100vw);
  }
}

.ir-message__sign-img {
  margin-left: auto;
  margin-top: calc(8 / 1440 * 100vw);
  max-width: max(100px, 150 / 1440 * 100vw);
  width: 100%;
  height: auto;
  aspect-ratio: 250/59;
}
@media screen and (max-width: 768px) {
  .ir-message__sign-img {
    margin-top: calc(8 / 375 * 100vw);
    max-width: calc(150 / 375 * 100vw);
  }
}

.ir-message__sign-img img {
  object-fit: cover;
}

.ir-governance__wrap + .ir-governance__wrap {
  margin-top: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-governance__wrap + .ir-governance__wrap {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.ir-governance__text {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-governance__text {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.ir-governance__img {
  max-width: calc(760 / 1440 * 100vw);
  width: 100%;
  height: auto;
  aspect-ratio: 760/440;
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-governance__img {
    max-width: 100%;
    margin-top: calc(20 / 375 * 100vw);
  }
}

.ir-governance__img img {
  object-fit: cover;
}

.ir-governance__pdf.ir-governance__text {
  color: #34414E;
  display: block;
  text-decoration: underline;
}

.ir-finance__section {
  padding: calc(80 / 1440 * 100vw) 0;
}
@media screen and (max-width: 768px) {
  .ir-finance__section {
    padding: calc(40 / 375 * 100vw) 0;
  }
}

.ir-library__section {
  padding: calc(80 / 1440 * 100vw) 0;
}
@media screen and (max-width: 768px) {
  .ir-library__section {
    padding: calc(40 / 375 * 100vw) 0;
  }
}

.xj-year select#xj-select-year_s {
  font-size: 1rem;
  color: #34414E;
}
@media screen and (max-width: 768px) {
  .xj-year select#xj-select-year_s {
    font-size: calc(16 / 375 * 100vw);
  }
}

@media screen and (max-width: 768px) {
  .xj-list-item {
    gap: calc(10 / 375 * 100vw);
  }
}

.xj-list-item .xj-list-ttl {
  max-width: 100%;
}
@media screen and (max-width: 768px) {
  .xj-list-item .xj-list-ttl {
    margin-top: 0;
    padding-top: 0;
  }
}

.xj-list-item .xj-list-date {
  font-size: 0.875rem;
}
@media screen and (max-width: 768px) {
  .xj-list-item .xj-list-date {
    font-size: calc(12 / 375 * 100vw);
  }
}

.xj-list-ttl a {
  color: #34414E;
  font-size: 1rem;
}
@media screen and (max-width: 768px) {
  .xj-list-ttl a {
    font-size: calc(16 / 375 * 100vw);
  }
}

.adobe {
  margin-top: 3em;
}

.adobe a {
  display: flex;
  align-items: center;
  text-align: left;
  color: #34414E;
  background: #f6f6f6;
  padding: 0.5em 1em;
}
@media screen and (max-width: 768px) {
  .adobe a {
    flex-direction: column;
  }
}

.adobe p {
  margin-left: 1em;
  font-size: 0.875rem;
}
@media screen and (max-width: 768px) {
  .adobe p {
    font-size: calc(12 / 375 * 100vw);
    margin-left: 0;
  }
}

@media screen and (max-width: 768px) {
  td.xj_chart_header,
  td.xj_chart_header_first {
    font-size: calc(12 / 375 * 100vw);
  }
}

.ir-stock__section {
  padding: calc(80 / 1440 * 100vw) 0;
}
@media screen and (max-width: 768px) {
  .ir-stock__section {
    padding: calc(40 / 375 * 100vw) 0;
  }
}

.ir-information__lists {
  margin-top: calc(16 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-information__lists {
    margin-top: calc(10 / 375 * 100vw);
  }
}

.ir-information__list {
  display: grid;
  grid-template-columns: max(120px, 180 / 1440 * 100vw) 1fr;
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  align-items: center;
  padding: calc(24 / 1440 * 100vw) 0;
  gap: calc(16 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-information__list {
    grid-template-columns: calc(120 / 375 * 100vw) 1fr;
    gap: calc(8 / 375 * 100vw);
    padding: calc(16 / 375 * 100vw) 0;
  }
}

.ir-information__title {
  font-size: 1rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .ir-information__title {
    font-size: calc(16 / 375 * 100vw);
  }
}

.ir-dividend__head:nth-of-type(2) {
  margin-top: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-dividend__head:nth-of-type(2) {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.ir-dividend__text {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-dividend__text {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.ir-dividend__red {
  color: #E7352C;
}

.ir-dividend__items {
  margin-top: calc(60 / 1440 * 100vw);
  width: 100%;
}
@media screen and (max-width: 768px) {
  .ir-dividend__items {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.ir-dividend__item thead {
  width: 100%;
}

.ir-dividend__item {
  border-collapse: collapse;
  border-spacing: 0;
  max-width: 100%;
  width: 100%;
}

.ir-dividend__item thead th {
  width: calc(300 / 1440 * 100vw);
  max-width: 100%;
  height: calc(70 / 1440 * 100vw);
  font-weight: 500;
  background-color: #64778A;
  font-size: 1rem;
  color: #fff;
  text-align: center;
  vertical-align: middle;
}
@media screen and (max-width: 768px) {
  .ir-dividend__item thead th {
    width: calc(88 / 375 * 100vw);
    height: calc(70 / 375 * 100vw);
    padding: calc(8 / 375 * 100vw);
    font-size: calc(14 / 375 * 100vw);
  }
}

.ir-dividend__item thead .th-title {
  background: none;
}

.ir-dividend__item thead th:last-child {
  background-color: #E7352C;
}

.ir-dividend__item tbody .th-title {
  background-color: #64778A;
  color: #fff;
  text-align: center;
  vertical-align: middle;
  font-size: 1rem;
  padding: calc(26 / 1440 * 100vw) 0;
}
@media screen and (max-width: 768px) {
  .ir-dividend__item tbody .th-title {
    padding: calc(20 / 375 * 100vw) 0;
    font-size: calc(14 / 375 * 100vw);
  }
}

.ir-dividend__item tbody td {
  background-color: #FBFBFB;
  vertical-align: middle;
  font-size: 1rem;
  text-align: center;
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  border-right: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .ir-dividend__item tbody td {
    font-size: calc(14 / 375 * 100vw);
  }
}

.ir-dividend__item tbody td.no-border {
  border-right: none;
}

.ir-dividend__item tbody td:last-child {
  border-left: 1px solid #E7352C;
  border-right: 1px solid #E7352C;
  border-bottom: 1px solid #E7352C;
}

.ir-price__text {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-price__text {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.ir-price__link {
  color: #34414E;
  text-decoration: underline;
}

.ir-price__wrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(40 / 1440 * 100vw);
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-price__wrap {
    grid-template-columns: 1fr;
    gap: calc(20 / 375 * 100vw);
    margin-top: calc(20 / 375 * 100vw);
  }
}

.ir-price__subtext {
  margin-top: calc(20 / 1440 * 100vw);
  font-size: 0.875rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .ir-price__subtext {
    margin-top: calc(20 / 375 * 100vw);
    font-size: calc(12 / 375 * 100vw);
  }
}

.ir-faq__item {
  width: 100%;
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
}

.ir-faq__item + .ir-faq__item {
  margin-top: calc(32 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-faq__item + .ir-faq__item {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.ir-faq__title {
  cursor: pointer;
  padding: calc(20 / 1440 * 100vw) calc(24 / 1440 * 100vw);
  position: relative;
}
@media screen and (max-width: 768px) {
  .ir-faq__title {
    padding: calc(12 / 375 * 100vw) calc(20 / 375 * 100vw) calc(12 / 375 * 100vw) 0;
  }
}

/* 縦線 */
/* 縦線 */
.ir-faq__title::before,
.ir-faq__title::after {
  background-color: #34414E;
  content: "";
  position: absolute;
  height: 2px;
  right: calc(24 / 1440 * 100vw);
  top: 50%;
  transition: transform 0.3s ease-in-out;
  width: calc(16 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-faq__title::before,
  .ir-faq__title::after {
    right: calc(10 / 375 * 100vw);
    width: calc(12 / 375 * 100vw);
  }
}

/* 縦線 */
.ir-faq__title::before {
  transform: rotate(90deg);
}

/* 縦線(クリック後) */
.ir-faq__title.open::before {
  transform: rotate(180deg);
}

/* 横線(クリック後) */
.ir-faq__title.open::after {
  opacity: 0;
}

.ir-faq__title,
.ir-faq__content {
  width: 100%;
}

.ir-faq__wrap {
  display: grid;
  grid-template-columns: calc(36 / 1440 * 100vw) 1fr;
  align-items: center;
  gap: calc(24 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-faq__wrap {
    gap: calc(12 / 375 * 100vw);
    grid-template-columns: calc(24 / 375 * 100vw) 1fr;
  }
}

.ir-faq__q,
.ir-faq__a {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1;
  color: #fff;
  width: calc(36 / 1440 * 100vw);
  height: calc(36 / 1440 * 100vw);
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .ir-faq__q,
  .ir-faq__a {
    font-size: calc(16 / 375 * 100vw);
    width: calc(24 / 375 * 100vw);
    height: calc(24 / 375 * 100vw);
  }
}

.ir-faq__q {
  background-color: #34414E;
}

.ir-faq__a {
  background-color: #E7352C;
}

.ir-faq__question {
  font-size: 1.125rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .ir-faq__question {
    font-size: calc(18 / 375 * 100vw);
  }
}

.ir-faq__content {
  display: none;
  padding: calc(24 / 1440 * 100vw) calc(24 / 1440 * 100vw) calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-faq__content {
    padding: calc(10 / 375 * 100vw) 0 calc(16 / 375 * 100vw);
  }
}

.ir-faq__link {
  color: #34414E;
  text-decoration: underline;
}

.ir-calendar-main__img {
  width: 100%;
  height: auto;
  aspect-ratio: 780/159;
}

.ir-calendar-main__img img {
  object-fit: cover;
}

.ir-calendar-main__year {
  margin-top: calc(60 / 1440 * 100vw);
  font-size: 1.25rem;
  font-weight: 500;
  color: #E7352C;
}
@media screen and (max-width: 768px) {
  .ir-calendar-main__year {
    font-size: calc(18 / 375 * 100vw);
    margin-top: calc(30 / 375 * 100vw);
  }
}

.ir-calendar-main__list {
  display: grid;
  grid-template-columns: max(100px, 150 / 1440 * 100vw) 1fr;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .ir-calendar-main__list {
    grid-template-columns: calc(80 / 375 * 100vw) 1fr;
  }
}

.ir-calendar-main__date,
.ir-calendar-main__content {
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  padding-top: calc(24 / 1440 * 100vw);
  padding-bottom: calc(24 / 1440 * 100vw);
  font-size: 1rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .ir-calendar-main__date,
  .ir-calendar-main__content {
    padding-top: calc(16 / 375 * 100vw) 0;
    padding-bottom: calc(16 / 375 * 100vw) 0;
    font-size: calc(14 / 375 * 100vw);
  }
}

.ir-calendar-main__date {
  padding-left: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-calendar-main__date {
    padding-left: 0;
  }
}

.ir-calendar-main__content {
  padding-right: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-calendar-main__content {
    padding-right: 0;
  }
}

.ir-calendar-main__title {
  font-size: 1rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .ir-calendar-main__title {
    font-size: calc(16 / 375 * 100vw);
  }
}

.ir-calendar-main__note {
  margin-top: calc(32 / 1440 * 100vw);
  font-size: 0.875rem;
  font-weight: 400;
  text-align: end;
}
@media screen and (max-width: 768px) {
  .ir-calendar-main__note {
    font-size: calc(14 / 375 * 100vw);
    text-align: justify;
  }
}

.ir-notice__text {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-notice__text {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.ir-notice__text {
  font-size: 1rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .ir-notice__text {
    font-size: calc(16 / 375 * 100vw);
  }
}

.ir-notice__text a {
  color: #34414E;
}

.ir-disclosure-policy__wrap + .ir-disclosure-policy__wrap {
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-disclosure-policy__wrap + .ir-disclosure-policy__wrap {
    margin-top: calc(24 / 375 * 100vw);
  }
}

.ir-disclosure-policy__text {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-disclosure-policy__text {
    margin-top: calc(10 / 375 * 100vw);
  }
}

.ir-disclaimer__wrap + .ir-disclaimer__wrap {
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-disclaimer__wrap + .ir-disclaimer__wrap {
    margin-top: calc(24 / 375 * 100vw);
  }
}

.ir-disclaimer__text {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .ir-disclaimer__text {
    margin-top: calc(10 / 375 * 100vw);
  }
}

.sustainability-message {
  text-align: center;
  padding-bottom: calc(80 / 1440 * 100vw);
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .sustainability-message {
    padding-bottom: calc(40 / 375 * 100vw);
  }
}

.sustainability-message__read {
  display: inline-block;
  width: fit-content;
  border-top: 1px solid #34414E;
  border-bottom: 1px solid #34414E;
  padding: calc(4 / 1440 * 100vw) calc(10 / 1440 * 100vw);
  font-size: 1.25rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .sustainability-message__read {
    font-size: calc(18 / 375 * 100vw);
    padding: calc(2 / 375 * 100vw) calc(4 / 375 * 100vw);
  }
}

.sustainability-message__title {
  margin-top: calc(10 / 1440 * 100vw);
  font-size: 2rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .sustainability-message__title {
    margin-top: calc(10 / 375 * 100vw);
    font-size: calc(24 / 375 * 100vw);
  }
}

.sustainability-message__entitle {
  margin-top: calc(4 / 1440 * 100vw);
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 1rem;
}
@media screen and (max-width: 768px) {
  .sustainability-message__entitle {
    margin-top: calc(4 / 375 * 100vw);
    font-size: calc(13 / 375 * 100vw);
  }
}

.sustainability-message__text {
  margin-top: calc(20 / 1440 * 100vw);
  font-size: 1rem;
}
@media screen and (max-width: 768px) {
  .sustainability-message__text {
    margin-top: calc(20 / 375 * 100vw);
    font-size: calc(13 / 375 * 100vw);
  }
}

.sustainability-2column {
  margin: calc(80 / 1440 * 100vw) 0;
}

.sustainability-2column__lists {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  border-bottom: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .sustainability-2column__lists {
    grid-template-columns: 1fr;
    gap: calc(20 / 375 * 100vw);
  }
}

.sustainability-2column__list:nth-child(1) {
  border-right: 1px solid rgba(115, 137, 159, 0.2);
}
@media screen and (max-width: 768px) {
  .sustainability-2column__list:nth-child(1) {
    border-right: none;
    border-bottom: 1px solid rgba(115, 137, 159, 0.2);
  }
}

.sustainability-2column__img {
  width: 100%;
  height: auto;
  aspect-ratio: 640/380;
}

.sustainability-2column__img img {
  object-fit: cover;
}

.sustainability-2column__link {
  padding: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .sustainability-2column__link {
    padding: calc(20 / 375 * 100vw);
  }
}

.sustainability-2column__link span {
  color: #34414E;
  font-size: 1.125rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .sustainability-2column__link span {
    font-size: calc(18 / 375 * 100vw);
  }
}

.sustainability-materiality {
  padding: calc(80 / 1440 * 100vw) calc(80 / 1440 * 100vw);
  position: relative;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .sustainability-materiality {
    padding: calc(60 / 375 * 100vw) calc(20 / 375 * 100vw);
  }
}

.sustainability-materiality::before,
.sustainability-materiality::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.sustainability-materiality::before {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-image: url(./../images/sustainability_materiality_img.jpg);
}

.sustainability-materiality::after {
  background-color: rgba(46, 52, 66, 0.7);
}

.sustainability-materiality__read {
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .sustainability-materiality__read {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.sustainability-materiality__wrap {
  margin-top: calc(60 / 1440 * 100vw);
  display: flex;
  justify-content: center;
  gap: calc(80 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .sustainability-materiality__wrap {
    margin-top: calc(30 / 375 * 100vw);
    flex-direction: column;
  }
}

.sustainability-materiality__list {
  display: grid;
  grid-template-columns: calc(38 / 1440 * 100vw) 1fr;
  align-items: center;
  gap: calc(30 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .sustainability-materiality__list {
    grid-template-columns: calc(38 / 375 * 100vw) 1fr;
    gap: calc(20 / 375 * 100vw);
  }
}

.sustainability-materiality__list + .sustainability-materiality__list {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .sustainability-materiality__list + .sustainability-materiality__list {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.sustainability-materiality__number {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: calc(10 / 1440 * 100vw);
  border-radius: 50%;
  border: 1px solid #fff;
  font-family: "Outfit", sans-serif;
  width: calc(38 / 1440 * 100vw);
  height: calc(38 / 1440 * 100vw);
  font-weight: 600;
  font-size: 1rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .sustainability-materiality__number {
    font-size: calc(16 / 375 * 100vw);
    padding: calc(10 / 375 * 100vw);
    width: calc(38 / 375 * 100vw);
    height: calc(38 / 375 * 100vw);
  }
}

.sustainability-materiality__text {
  font-size: 1.25rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .sustainability-materiality__text {
    font-size: calc(16 / 375 * 100vw);
  }
}

.sustainability-materiality__btn {
  margin-top: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .sustainability-materiality__btn {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.commitment__img {
  width: 100%;
  height: auto;
  aspect-ratio: 823/494;
}

.commitment__img img {
  object-fit: cover;
}

.commitment__title {
  margin-top: calc(40 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .commitment__title {
    margin-top: calc(16 / 375 * 100vw);
  }
}

.commitment__text {
  margin-top: calc(32 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .commitment__text {
    margin-top: calc(16 / 375 * 100vw);
  }
}

.commitment__sign {
  margin-top: calc(32 / 1440 * 100vw);
  font-size: 1rem;
  font-weight: 400;
  text-align: end;
}
@media screen and (max-width: 768px) {
  .commitment__sign {
    margin-top: calc(20 / 375 * 100vw);
    font-size: calc(16 / 375 * 100vw);
  }
}

.commitment__sign-img {
  margin-left: auto;
  margin-top: calc(8 / 1440 * 100vw);
  max-width: max(100px, 150 / 1440 * 100vw);
  width: 100%;
  height: auto;
  aspect-ratio: 250/59;
}
@media screen and (max-width: 768px) {
  .commitment__sign-img {
    margin-top: calc(8 / 375 * 100vw);
    max-width: calc(150 / 375 * 100vw);
  }
}

.commitment__sign-img img {
  object-fit: cover;
}

.sustainability-policy__wrap + .sustainability-policy__wrap {
  margin-top: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .sustainability-policy__wrap + .sustainability-policy__wrap {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.sustainability-policy__img {
  margin-top: calc(20 / 1440 * 100vw);
  width: 100%;
  height: auto;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .sustainability-policy__img {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.sustainability-policy__img img {
  object-fit: cover;
}

.sustainability-policy__img01 {
  aspect-ratio: 780/589;
}

.sustainability-policy__img02 {
  max-width: calc(500 / 1440 * 100vw);
  aspect-ratio: 743/1198;
}
@media screen and (max-width: 768px) {
  .sustainability-policy__img02 {
    max-width: 100%;
  }
}

.sustainability-policy__text {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .sustainability-policy__text {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.sustainability-policy__declaration {
  text-align: center;
  margin: calc(40 / 1440 * 100vw) 0;
}
@media screen and (max-width: 768px) {
  .sustainability-policy__declaration {
    margin: calc(30 / 375 * 100vw) 0;
  }
}

.materiality__wrap + .materiality__wrap {
  margin-top: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .materiality__wrap + .materiality__wrap {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.materiality__img {
  margin-top: calc(20 / 1440 * 100vw);
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .materiality__img {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.materiality__img img {
  object-fit: cover;
}

.materiality__img01 {
  aspect-ratio: 780/589;
}

.materiality__text {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .materiality__text {
    margin-top: calc(20 / 375 * 100vw);
  }
}

.materiality__text--red {
  color: #E7352C;
}

.materiality__lists {
  margin-top: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .materiality__lists {
    margin-top: calc(40 / 375 * 100vw);
  }
}

.materiality__list {
  display: flex;
  gap: calc(40 / 1440 * 100vw);
  padding-left: calc(40 / 1440 * 100vw);
  position: relative;
}
@media screen and (max-width: 768px) {
  .materiality__list {
    flex-direction: column;
    gap: calc(20 / 375 * 100vw);
    padding-left: 0;
  }
}

.materiality__list:not(:last-child) {
  padding-bottom: calc(60 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .materiality__list:not(:last-child) {
    padding-bottom: calc(30 / 375 * 100vw);
  }
}

.materiality__list::before,
.materiality__list::after {
  content: "";
  position: absolute;
  display: block;
}
@media screen and (max-width: 768px) {
  .materiality__list::before,
  .materiality__list::after {
    content: none;
  }
}

.materiality__list::before {
  width: calc(20 / 1440 * 100vw);
  height: calc(20 / 1440 * 100vw);
  border-radius: 50%;
  background-color: #E7352C;
  top: 0;
  left: 0;
}

.materiality__list::after {
  width: 1px;
  height: calc(100% - 20 / 1440 * 100vw);
  background-color: #34414E;
  top: calc(20 / 1440 * 100vw);
  left: calc(10 / 1440 * 100vw);
}

.materiality__number {
  font-size: 1.25rem;
  font-family: "Outfit", sans-serif;
  line-height: 1;
  font-weight: 600;
  color: #E7352C;
}

.materiality__subhead {
  font-size: 1.25rem;
  font-weight: 500;
}

.materiality__subtext {
  margin-top: calc(20 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .materiality__subtext {
    margin-top: calc(8 / 375 * 100vw);
  }
}

.materiality__points {
  margin-top: calc(10 / 1440 * 100vw);
}
@media screen and (max-width: 768px) {
  .materiality__points {
    margin-top: calc(8 / 375 * 100vw);
  }
}

.materiality__points-text {
  padding-left: 1em;
  text-indent: -1em;
  display: inline-block;
  font-feature-settings: normal;
}

.materiality__right {
  max-width: 20.8125rem;
  width: 100%;
  height: auto;
  aspect-ratio: 333/250;
  flex: 0 0 auto;
}
@media screen and (max-width: 768px) {
  .materiality__right {
    max-width: 100%;
  }
}

.materiality__right img {
  object-fit: cover;
  height: auto;
}