@charset "UTF-8";
/* ================================================================================
変数定義
================================================================================ */
/* ================================================================================
mixin定義
================================================================================ */
/* ================================================================================
全体で使用する変数・関数定義
================================================================================ */ /* ================================================================================
リセット
================================================================================ */
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font: inherit;
  background: transparent;
  vertical-align: baseline;
}

html {
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
}

body {
  color: #1A1411;
  font-size: 62.5%;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
}

html,
body {
  height: 100%;
  line-height: 1.6;
  width: 100%;
  height: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
  display: block;
}

li {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before, blockquote:after {
  content: "";
  content: none;
}

q:before, q:after {
  content: "";
  content: none;
}

legend {
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

fieldset {
  margin: 0 2px;
  border: 1px solid #1A1411;
  padding: 0.35em 0.625em 0.75em;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  outline: none;
  background: transparent;
  text-decoration: none;
  vertical-align: baseline;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
a:hover {
  text-decoration: none;
  outline: none;
}
a:focus {
  text-decoration: none;
}

ins {
  color: #000;
  background: #ff9;
  text-decoration: none;
}

mark {
  color: #000;
  background-color: #ff9;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted inherit;
  cursor: help;
}

table {
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse;
}
table th,
table td {
  border-collapse: collapse;
  border-spacing: 0;
}

caption,
th {
  text-align: left;
}

hr {
  height: 1px;
  margin: 1em 0;
  padding: 0;
  border: 0;
  display: block;
  overflow: visible;
  border-top: 1px solid #1A1411;
}

img {
  max-width: 100%;
  font-size: 0;
  line-height: 0;
  height: auto;
  vertical-align: bottom;
}

input,
select {
  vertical-align: middle;
}

button,
select {
  text-transform: none;
}

select {
  -moz-appearance: none;
  text-indent: 0.01px;
  text-overflow: "";
}

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

button {
  margin: 0;
  padding: 0;
  border: none;
  background: initial;
}

input[type=button],
input[type=submit],
input[type=search],
input[type=reset],
button {
  -webkit-appearance: none;
}

label {
  font-weight: normal;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

input {
  padding: 0;
}
input::-ms-clear, input::-ms-reveal {
  visibility: hidden;
}

[type=checkbox],
[type=radio] {
  padding: 0;
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

::-webkit-search-cancel-button,
::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-input-placeholder {
  color: #ccc;
  opacity: 1;
}

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

::-moz-placeholder {
  color: #ccc;
  opacity: 1;
}

:-ms-input-placeholder {
  color: #ccc;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

[aria-busy=true] {
  cursor: progress;
}

[aria-controls] {
  cursor: pointer;
}

[aria-disabled] {
  cursor: default;
}

a,
area,
button,
input,
label,
select,
textarea,
[tabindex] {
  margin: 0;
  padding: 0;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
}

input,
textarea,
select {
  font-size: inherit;
  font-weight: inherit;
}

[hidden][aria-hidden=false] {
  clip: rect(0, 0, 0, 0);
  display: inherit;
  position: absolute;
}

[hidden][aria-hidden=false]:focus {
  clip: auto;
}

strong {
  font-weight: bold;
}

/* =====================================================
Swiper関連
===================================================== */
.p-home .swiper-switch {
  width: 100%;
  height: 100vh;
  overflow: hidden;
}
.p-home .swiper-wrapper {
  height: 100%;
}
.p-home .swiper-slide {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100vh;
  overflow: hidden;
}
.p-home .swiper-slide__inner {
  height: 100%;
  overflow-y: auto;
  width: 100%;
  max-height: 100vh;
  scrollbar-width: thin;
  scrollbar-color: rgba(255, 255, 255, 0.3) transparent;
}

/* ================================================================================
汎用クラス
================================================================================ */
.u-container {
  max-width: 1000px;
  padding: 0 10px;
  margin: 0 auto;
}

a {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
a:hover {
  opacity: 0.7;
}

/* =====================================================
アニメーション関連
===================================================== */
.js-fade-00 {
  display: block;
}

.js-fade-01 {
  opacity: 0;
}
.js-fade-01.fade-01-animation {
  opacity: 1;
  background-image: linear-gradient(60deg, rgba(211, 209, 209, 0.3) 45%, #FFFFFF 50%, rgba(211, 209, 209, 0) 55%);
  background-size: 500% 100%;
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-animation: shine 5s forwards;
          animation: shine 5s forwards;
}

@-webkit-keyframes shine {
  0% {
    background-position: 100% 50%;
  }
  80% {
    background-position: 0% 50%;
  }
  100% {
    color: #FFFFFF;
  }
}

@keyframes shine {
  0% {
    background-position: 100% 50%;
  }
  80% {
    background-position: 0% 50%;
  }
  100% {
    color: #FFFFFF;
  }
}
.js-fade-02, .js-fade-03 {
  opacity: 0;
}
.js-fade-02.is-fade-in, .js-fade-03.is-fade-in {
  opacity: 1;
}

.js-fade-02 span, .js-fade-03 span {
  opacity: 0;
  -webkit-transition: opacity 1s;
  transition: opacity 1s;
}
.js-fade-02 span.is-active, .js-fade-03 span.is-active {
  opacity: 1;
}

.js-fade-04 {
  opacity: 0;
}
.js-fade-04 span {
  position: relative;
  display: inline-block;
}
.js-fade-04 span::after {
  opacity: 0;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #FFF;
  display: inline-block;
  opacity: 0;
  -webkit-transition: all 0.6s cubic-bezier(0.56, 0.02, 0.33, 1);
  transition: all 0.6s cubic-bezier(0.56, 0.02, 0.33, 1);
}
.js-fade-04.is-fade-in {
  opacity: 1;
}
.js-fade-04.is-fade-in span::after {
  width: 0;
  left: 101%;
  opacity: 1;
}

.js-fade-04-2 {
  opacity: 0;
}
.js-fade-04-2 span {
  opacity: 0;
  -webkit-transition: opacity 1s ease-out;
  transition: opacity 1s ease-out;
}
.js-fade-04-2.is-fade-in {
  opacity: 1;
}
.js-fade-04-2.is-fade-in span {
  opacity: 1;
  background: linear-gradient(60deg, rgba(211, 209, 209, 0.3) 45%, #FFFFFF 50%, rgba(211, 209, 209, 0) 55%);
  background-size: 500% 100%;
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-animation: shine02 5s forwards;
          animation: shine02 5s forwards;
}

@-webkit-keyframes shine02 {
  0% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

@keyframes shine02 {
  0% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
.js-fade-04-bg {
  background-color: transparent;
  -webkit-transition: background-color 0.6s;
  transition: background-color 0.6s;
}
.js-fade-04-bg.is-fade-in {
  background-color: #FFFFFF;
}

.js-fade-05 .js-fade-hidden {
  display: inline-block;
  overflow: hidden;
}
.js-fade-05 .js-fade-text {
  display: inline-block;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  -webkit-transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
  transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
  transition: opacity 0.8s ease-out, transform 0.8s ease-out;
  transition: opacity 0.8s ease-out, transform 0.8s ease-out, -webkit-transform 0.8s ease-out;
}
.js-fade-05.is-fade-in .js-fade-text {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}

.js-fade-05-bg {
  background-color: transparent;
  -webkit-transition: background-color 0.6s;
  transition: background-color 0.6s;
}
.js-fade-05-bg.is-fade-in {
  background-color: #FFFFFF;
}

.js-fade-06 {
  opacity: 0;
}
.js-fade-06 span {
  position: relative;
  display: inline-block;
}
.js-fade-06 span::after {
  opacity: 0;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #FFF;
  display: inline-block;
  opacity: 0;
  -webkit-transition: all 0.6s cubic-bezier(0.56, 0.02, 0.33, 1);
  transition: all 0.6s cubic-bezier(0.56, 0.02, 0.33, 1);
  z-index: 1;
}
.js-fade-06.is-fade-in {
  opacity: 1;
}
.js-fade-06.is-fade-in span::after {
  width: 0;
  left: 101%;
  opacity: 1;
}

/* ================================================================================
ボタン装飾
================================================================================ */
button {
  outline: none;
}

.c-more-btn {
  position: absolute;
  font-family: "halcom", sans-serif;
  font-size: 0.6944444444vw;
  font-weight: 900;
  right: 0.5208333333vw;
  bottom: 0.6944444444vw;
  display: inline-block;
  border-bottom: 0.1041666667vw solid #1A1411;
  margin-right: 0.9722222222vw;
  line-height: 1;
}
.c-more-btn::before {
  -webkit-transition: 0.5s;
  transition: 0.5s;
  position: absolute;
  content: "";
  width: 0.6944444444vw;
  height: 0.8333333333vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: -0.9722222222vw;
  background: url(../img/top/news_arrow.svg) center center/contain no-repeat;
}

/* ================================================================================
カードレイアウト
================================================================================ */
/* ================================================================================
見出し装飾
================================================================================ */
/* ================================================================================
ページトップボタン
================================================================================ */
.c-pagetop {
  position: fixed;
  right: min(4.8611111111vw, 70px);
  bottom: min(5.4166666667vw, 78px);
  width: min(1.6666666667vw, 24px);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: min(0.4166666667vw, 6px);
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  cursor: pointer;
  opacity: 0;
  color: #1A1411;
  visibility: hidden;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease, color 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease, color 0.3s ease;
  opacity: 1;
  visibility: visible;
  z-index: 1000;
}

.c-pagetop.is-visible {
  opacity: 1;
  visibility: visible;
}

.c-pagetop.is-footer {
  color: #FFFFFF;
}

.c-pagetop__arrow {
  display: block;
  width: min(0.1388888889vw, 2px);
  height: min(8.3333333333vw, 120px);
  background-color: #1A1411;
  margin-bottom: 0.5rem;
  -webkit-transition: background-color 0.3s ease, height 0.3s ease;
  transition: background-color 0.3s ease, height 0.3s ease;
  position: relative;
}
.c-pagetop__arrow:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: min(0.1388888889vw, 2px);
  height: min(1.3888888889vw, 20px);
  background-color: #1A1411;
  -webkit-transform: rotate(30deg);
          transform: rotate(30deg);
  -webkit-transform-origin: top left;
          transform-origin: top left;
}

.c-pagetop__text {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  font-family: "Roboto", sans-serif;
  font-size: min(0.9027777778vw, 13px);
  font-weight: 400;
  letter-spacing: 0.14em;
  color: #1A1411;
  margin-bottom: min(0.5555555556vw, 8px);
}

.c-pagetop.is-footer .c-pagetop__arrow {
  background-color: #FFFFFF;
}

.c-pagetop.is-footer .c-pagetop__text {
  color: #FFFFFF;
}

.c-pagetop.is-footer .c-pagetop__arrow:before {
  background-color: #FFFFFF;
}

.c-pagetop:hover .c-pagetop__arrow {
  height: min(9.7222222222vw, 140px);
}

/* ================================================================================
下層ページヘッダー
================================================================================ */
.c-page-head {
  padding-top: min(1.3888888889vw, 20px);
  height: min(9.7222222222vw, 140px);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.scrolled {
  background: rgba(255, 255, 255, 0.4);
}

.c-page-head__inner {
  padding-left: min(1.7361111111vw, 25px);
  padding-right: min(1.7361111111vw, 25px);
  max-width: min(87.3611111111vw, 1258px);
  -webkit-transform: translateX(max(-1.8055555556vw, -26px));
          transform: translateX(max(-1.8055555556vw, -26px));
  margin-inline: auto;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  gap: min(3.125vw, 45px);
}

.c-page-head__left {
  text-align: center;
}

.c-page-head__subtitle--top {
  font-family: "Noto Serif JP", serif;
  font-size: min(1.3888888889vw, 20px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.05em;
  border-bottom: 1px solid #1A1411;
  padding: 0 min(0vw, 0px) min(0.2777777778vw, 4px) min(0vw, 0px);
  white-space: nowrap;
  display: block;
}

.c-page-head__subtitle--bottom {
  font-family: "Noto Serif JP", serif;
  font-size: min(2.0833333333vw, 30px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.05em;
  margin-top: min(0.625vw, 9px);
  white-space: nowrap;
}

.c-page-head__title-img {
  width: 100%;
  margin-inline: auto;
}

.c-page-head__title-img picture {
  display: block;
  width: 100%;
}

.c-page-head__title-img.c-page-head__title-img--new-graduate {
  max-width: min(50.3472222222vw, 725px);
  aspect-ratio: 725/106;
}

.c-page-head__title-img img {
  display: block;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

/* ================================================================================
下層ページキュッチコピー
================================================================================ */
.c-page-catchcopy {
  padding-top: min(9.7222222222vw, 140px);
  padding-bottom: min(4.3055555556vw, 62px);
  position: relative;
}

.c-page-catchcopy__inner {
  position: relative;
}

.c-page-catchcopy__inner::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100vw;
  height: 100%;
  background: url(../img/new-graduate/catchcopy-bg.webp) center top/cover no-repeat;
  z-index: -1;
  display: none;
}

.c-page-catchcopy__flex::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/new-graduate/catchcopy-bg.webp) center top/cover no-repeat;
  z-index: -1;
}

.c-page-catchcopy__flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.c-page-catchcopy__text {
  margin-top: min(2.7777777778vw, 40px);
  max-width: min(63.6111111111vw, 916px);
  white-space: nowrap;
  width: 100%;
  font-family: "Noto Serif JP", serif;
  font-size: min(5.5555555556vw, 80px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.05em;
  text-align: left;
  -webkit-transform: translateX(min(2.7777777778vw, 40px));
          transform: translateX(min(2.7777777778vw, 40px));
  padding-block: min(1.0416666667vw, 15px);
}

.c-page-catchcopy__loop-area {
  overflow: hidden;
  position: absolute;
  top: min(20.8333333333vw, 300px);
  left: 0;
  width: 100vw;
  z-index: -1;
}

.c-page-catchcopy__loop-imgs--new-graduate {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
}

.c-page-catchcopy__loop-imgs--new-graduate img {
  width: min(294.1666666667vw, 4236px);
  aspect-ratio: 4236.96/171.09;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  max-width: initial;
}

.c-page-catchcopy__loop-imgs img:first-child {
  -webkit-animation: loop-slide-1 80s -40s linear infinite;
          animation: loop-slide-1 80s -40s linear infinite;
}

.c-page-catchcopy__loop-imgs img:last-child {
  -webkit-animation: loop-slide-2 80s linear infinite;
          animation: loop-slide-2 80s linear infinite;
}

@-webkit-keyframes loop-slide-1 {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
  100% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}

@keyframes loop-slide-1 {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
  100% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@-webkit-keyframes loop-slide-2 {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
}
@keyframes loop-slide-2 {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
}
body:has(.c-page-catchcopy) {
  overflow-x: hidden !important;
  overflow-y: scroll !important;
}

.c-page-catchcopy__img-area {
  max-width: min(38.1944444444vw, 550px);
  width: 100%;
  position: relative;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}

.c-page-catchcopy__img-area--new-graduate::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: min(2.7777777778vw, 40px);
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(#C39B42), color-stop(20%, #D8C576), color-stop(40%, #EBE9A3), to(#FBE68A));
  background: linear-gradient(180deg, #C39B42 0%, #D8C576 20%, #EBE9A3 40%, #FBE68A 100%);
}

.c-page-catchcopy__img-area--carrier::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: min(2.7777777778vw, 40px);
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(#C39B42), color-stop(20%, #D8C576), color-stop(40%, #EBE9A3), to(#FBE68A));
  background: linear-gradient(180deg, #C39B42 0%, #D8C576 20%, #EBE9A3 40%, #FBE68A 100%);
}

.c-page-catchcopy__img-area img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 540/550;
}

/* ================================================================================
下層ページアンカーリンク
================================================================================ */
.c-page-anchor-link {
  margin-top: min(10.4166666667vw, 150px);
}

.c-page-anchor-link__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0 min(4.5833333333vw, 66px);
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-right: min(2.2222222222vw, 32px);
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.c-page-anchor-link__item a {
  font-family: "Noto Serif JP", serif;
  font-size: min(2.5vw, 36px);
  font-weight: 900;
  line-height: 1.4166666667;
  letter-spacing: 0;
  position: relative;
  display: inline-block;
  height: 100%;
  width: 100%;
}
.c-page-anchor-link__item a:before {
  content: "";
  width: min(9.0277777778vw, 130px);
  height: min(5.2083333333vw, 75px);
  background: url(../img/common/anchor-link-arrow.webp) center top/contain no-repeat;
  position: absolute;
  left: max(-2.0833333333vw, -30px);
  top: min(2.0833333333vw, 30px);
  z-index: -1;
}

.c-page-anchor-link__item a span {
  font-size: min(1.25vw, 18px);
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0;
  display: block;
}

html:has(.c-page-anchor-link) {
  scroll-behavior: smooth;
  scroll-padding-top: min(2.7777777778vw, 40px);
}

/* ================================================================================
パンくず
================================================================================ */

.c-breadcrumb__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(0.2777777778vw, 4px);
}

.c-breadcrumb__item {
  font-size: min(0.9722222222vw, 14px);
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.04em;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.c-breadcrumb__item.active:after {
  display: block;
  content: "";
  width: min(0.6944444444vw, 10px);
  height: min(0.6944444444vw, 10px);
  border-right: 1px solid #1A1411;
  border-bottom: 1px solid #1A1411;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.c-breadcrumb__item.active a {
  color: #CCB67C;
  display: block;
}

.c-breadcrumb__item:not(.active) {
  white-space: nowrap;
}

.c-loop-title {
  overflow-x: clip;
  position: relative;
  width: 100vw;
  margin-inline: calc(50% - 50vw);
}

.c-loop-title__imgs {
  position: absolute;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
}

.c-loop-title--creation .c-loop-title__imgs {
  top: min(2.2222222222vw, 32px);
}

.c-loop-title__imgs img {
  width: 294.1666666667vw;
  aspect-ratio: 4236.96/171.09;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  max-width: initial;
}

.c-loop-title--creation .c-loop-title__imgs img {
  aspect-ratio: 5744/125;
  width: min(398.8888888889vw, 5744px);
}

.c-loop-title--work .c-loop-title__imgs img {
  aspect-ratio: 3626/170;
  width: 251.8055555556vw;
}

.c-loop-title--person .c-loop-title__imgs img {
  aspect-ratio: 2387/157;
  width: 165.7638888889vw;
}

.c-loop-title__imgs img:first-child {
  -webkit-animation: loop-slide-1 80s -40s linear infinite;
          animation: loop-slide-1 80s -40s linear infinite;
}

.c-loop-title__imgs img:last-child {
  -webkit-animation: loop-slide-2 80s linear infinite;
          animation: loop-slide-2 80s linear infinite;
}

@keyframes loop-slide-1 {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
  100% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@keyframes loop-slide-2 {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
}
body:has(.c-loop-title) {
  overflow-x: hidden;
}

.c-loop-title__title {
  z-index: 1;
  position: relative;
  white-space: nowrap;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  font-family: "Noto Serif JP", serif;
  font-size: 5.5555555556vw;
  font-weight: 700;
  line-height: 1.4375;
  letter-spacing: -0.05em;
  text-align: center;
}

.c-loop-title--creation .c-loop-title__title {
  font-size: min(5.5555555556vw, 80px);
}

/* ★FAQ 共通差分（アニメ対象を picture に/隙間をつける 等） */
.c-loop-title--faq,
.c-loop-title--faq-sec {
  /* 見出しの書体（必要なら） */
}
.c-loop-title--faq .c-loop-title__imgs,
.c-loop-title--faq-sec .c-loop-title__imgs {
  position: absolute;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: var(--loop-gap, 2.2222222222vw);
  /* 2枚を時間差で右→左に流す（ベースが img なら picture に合わせて変更） */
}
.c-loop-title--faq .c-loop-title__imgs > *:first-child,
.c-loop-title--faq-sec .c-loop-title__imgs > *:first-child {
  -webkit-animation: loop-slide-1 80s -40s linear infinite;
          animation: loop-slide-1 80s -40s linear infinite;
}
.c-loop-title--faq .c-loop-title__imgs > *:last-child,
.c-loop-title--faq-sec .c-loop-title__imgs > *:last-child {
  -webkit-animation: loop-slide-2 80s linear infinite;
          animation: loop-slide-2 80s linear infinite;
}
.c-loop-title--faq .c-loop-title__title,
.c-loop-title--faq-sec .c-loop-title__title {
  line-height: 1;
}

/* ★セクション別サイズだけ上書き（例） */
.c-loop-title--faq-sec.faq-sec--recruit .c-loop-title__imgs img {
  width: 65.2777777778vw;
  aspect-ratio: 940/125;
}

.c-loop-title--faq-sec.faq-sec--company .c-loop-title__imgs img {
  width: 76.3888888889vw;
  aspect-ratio: 1100/125;
}

.c-loop-title--faq-sec.faq-sec--benefits .c-loop-title__imgs img {
  width: 88.8888888889vw;
  aspect-ratio: 1280/125;
}

/* ★MV 用（必要ならサイズ違い） */
.c-loop-title--faq .c-loop-title__imgs img {
  /* 例：MVだけ帯を少し高く見せたいなら高さベースもOK */
  width: 208.3333333333vw;
  aspect-ratio: 3000/125;
}

/* ================================================================================
FV下のリンクパーツ
================================================================================ */
.c-link-part {
  position: relative;
  display: inline-block;
  padding-left: min(2.7777777778vw, 40px);
  padding-bottom: min(3.6111111111vw, 52px);
  min-width: min(22.2916666667vw, 321px);
}
.c-link-part:before {
  content: "";
  width: min(12.0833333333vw, 174px);
  height: min(7.0138888889vw, 101px);
  background: url(../img/common/anchor-link-arrow.webp) center top/cover no-repeat;
  position: absolute;
  left: 0;
  top: min(1.6666666667vw, 24px);
  z-index: -1;
}

.c-link-part__title {
  font-family: "Noto Serif JP", serif;
  font-size: min(2.5vw, 36px);
  font-weight: 900;
  line-height: 1.4166666667;
  letter-spacing: 0;
}

.c-link-part__text {
  font-family: "Noto Serif JP", serif;
  font-size: min(1.5277777778vw, 22px);
  font-weight: 900;
  line-height: 1.2727272727;
  letter-spacing: 0;
  display: block;
}

html:has(.c-link-part) {
  scroll-behavior: smooth;
  scroll-padding-top: min(0vw, 0px);
}

/* ================================================================================
職種紹介リンク
================================================================================ */
.c-work-link {
  position: relative;
}

.c-work-link:nth-child(1),
.c-work-link:nth-child(4) {
  width: min(22.4305555556vw, 323px);
}

.c-work-link:nth-child(2),
.c-work-link:nth-child(5) {
  width: min(19.4444444444vw, 280px);
}

.c-work-link:nth-child(3),
.c-work-link:nth-child(6) {
  width: min(24.4444444444vw, 352px);
}

.c-work-link::before {
  content: "";
  position: absolute;
  top: min(2.7777777778vw, 40px);
  left: 0;
  width: min(16.25vw, 234px);
  height: min(5.3472222222vw, 77px);
  z-index: -1;
  background: url(../img/work/work-link.webp) center top/cover no-repeat;
}

.c-work-link__title {
  padding-left: min(2.7083333333vw, 39px);
  font-family: "Noto Serif JP", serif;
  font-size: min(3.3333333333vw, 48px);
  font-weight: 900;
  line-height: 1.4375;
  letter-spacing: 0;
}

.c-work-link__items {
  margin-top: min(0.6944444444vw, 10px);
}

.c-work-link__item a {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(0.5555555556vw, 8px);
  position: relative;
  padding-left: min(0.2777777778vw, 4px);
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}
.c-work-link__item a:hover {
  opacity: 0.7;
}

.c-work-link__item a::before {
  content: "";
  -webkit-transform: translateY(max(-0.1388888889vw, -2px));
          transform: translateY(max(-0.1388888889vw, -2px));
  display: inline-block;
  width: min(3.8541666667vw, 55.5px);
  height: min(0.5902777778vw, 8.5px);
  background: url(../img/work/work-link-arrow.webp) center center/contain no-repeat;
  -webkit-transition: -webkit-transform 0.3s ease-in-out;
  transition: -webkit-transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}

.c-work-link__item a:hover::before {
  -webkit-transform: translateY(max(-0.1388888889vw, -2px)) translateX(min(0.3472222222vw, 5px));
          transform: translateY(max(-0.1388888889vw, -2px)) translateX(min(0.3472222222vw, 5px));
}

.c-work-link__item-title {
  font-family: "Noto Serif JP", serif;
  font-size: min(1.3888888889vw, 20px);
  font-weight: 900;
  line-height: 1.45;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: min(0.5555555556vw, 8px);
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.c-work-link__item-title::before {
  content: "";
  display: inline-block;
  width: min(1.1111111111vw, 16px);
  height: min(1.1111111111vw, 16px);
  background-color: initial;
}

.c-work-link__item--sales .c-work-link__item-title::before {
  background-color: #E22F2F;
}

.c-work-link__item--sales-support .c-work-link__item-title::before {
  background-color: #2ED8F7;
}

.c-work-link__item--dev-purchase .c-work-link__item-title::before {
  background-color: #2AAA04;
}

.c-work-link__item--dev-build .c-work-link__item-title::before {
  background-color: #FEDA3D;
}

.c-work-link__item--house-studio .c-work-link__item-title::before {
  background-color: #427EDC;
}

.c-work-link__item--lease-sales .c-work-link__item-title::before {
  background-color: #F49A21;
}

.c-work-link__item--property-management .c-work-link__item-title::before {
  background-color: #CA79E6;
}

.c-work-link__item--building-management .c-work-link__item-title::before {
  background-color: #88C550;
}

.c-work-link__item--contract-management .c-work-link__item-title::before {
  background-color: #B99A81;
}

.c-work-link__item--hr-pr .c-work-link__item-title::before {
  background-color: #D594BE;
}

.c-work-link__item--accounting-finance .c-work-link__item-title::before {
  background-color: #8FC3DC;
}

.c-work-link__item--systems .c-work-link__item-title::before {
  background-color: #9D84D3;
}

/* ================================================================================
ワークセクション追従リスト
================================================================================ */
.c-flow-list {
  position: -webkit-sticky;
  position: sticky;
  top: min(12.5vw, 180px);
  right: 0;
  width: min(20.5555555556vw, 296px);
  padding: min(2.0833333333vw, 30px) min(1.7361111111vw, 25px) min(1.6666666667vw, 24px) min(3.3333333333vw, 48px);
  background: url(../img/work/flow-list-bg.webp) center center/cover no-repeat;
}

.c-flow-list__title {
  font-family: "Noto Serif JP", serif;
  font-weight: 900;
  line-height: 1.4583333333;
  letter-spacing: -0.05em;
  font-size: min(1.6666666667vw, 24px);
}
.c-flow-list__title-en {
  font-weight: 900;
  line-height: 1.2222222222;
  letter-spacing: -0.05em;
  font-size: min(2.5vw, 36px);
}

.c-flow-list__items {
  position: relative;
  margin-top: min(0.6944444444vw, 10px);
  padding-top: min(0.5555555556vw, 8px);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: min(0.5555555556vw, 8px);
}

.c-flow-list__items::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: min(0.0694444444vw, 1px);
  background: #1A1411;
}

.c-flow-list__item {
  width: 100%;
  height: auto;
}

.c-flow-list__item:has(a) {
  font-size: min(0.9722222222vw, 14px);
  font-weight: 700;
  line-height: 1.4285714286;
}

.c-flow-list__item a {
  color: #707070;
  font-size: min(0.9722222222vw, 14px);
  font-weight: 700;
  line-height: 1.4285714286;
  -webkit-transition: color 0.3s ease-in-out;
  transition: color 0.3s ease-in-out;
  position: relative;
}

.c-flow-list__item.is-active a {
  color: #1A1411;
}

.c-flow-list__item a::before {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #1A1411;
  -webkit-transform-origin: left center;
          transform-origin: left center;
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transition: -webkit-transform 0.3s ease-in-out;
  transition: -webkit-transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}

.c-flow-list__item.is-active a::before {
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
}

/* ================================================================================
ハンバーガーメニュー
================================================================================ */
.l-header__nav-wrap:has(.l-header-menu) {
  display: block;
}

.l-header-menu__overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgb(0, 0, 0);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s, visibility 0.3s;
  transition: opacity 0.3s, visibility 0.3s;
  z-index: 998;
}
.l-header-menu__overlay.is-active {
  opacity: 1;
  visibility: visible;
}

.l-header-menu__container {
  position: fixed;
  top: 0;
  right: -100%;
  width: 100%;
  height: 100%;
  background-color: #EFEFEF;
  overflow-y: auto;
  -webkit-transition: right 0.4s ease-in-out;
  transition: right 0.4s ease-in-out;
  z-index: 999;
}
.l-header-menu__container.is-active {
  right: 0;
}

.l-header-menu__content {
  max-width: min(102.7777777778vw, 1480px);
  width: 100%;
  padding: min(3.4722222222vw, 50px) min(1.3888888889vw, 20px) min(5.5555555556vw, 80px);
  margin-inline: auto;
}

.l-header-menu__nav {
  margin-top: min(2.0833333333vw, 30px);
}

.l-header-menu__sections {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr min(2.0833333333vw, 30px) 1fr min(2.0833333333vw, 30px) 1fr min(2.0833333333vw, 30px) 1fr;
  grid-template-columns: repeat(4, 1fr);
  gap: min(2.0833333333vw, 30px);
}

.l-header-menu__section {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

.l-header-menu__section-header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(0.6944444444vw, 10px);
}

.l-header-menu__section-icon {
  display: block;
  width: min(3.4722222222vw, 50px);
  height: min(4.7916666667vw, 69px);
  background: url(../img/top/header_title_icon.png) center top/cover no-repeat;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}

.l-header-menu__section-title-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

.l-header-menu__section-title {
  width: 100%;
  max-width: min(9.7916666667vw, 141px);
}

.l-header-menu__section-subtitle {
  margin-top: min(0.1388888889vw, 2px);
  font-size: min(0.9722222222vw, 14px);
  line-height: 1;
  font-family: "halcom", sans-serif;
  font-weight: 700;
  letter-spacing: 0.03em;
}

.l-header-menu__links {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: min(0.9722222222vw, 14px);
  padding-left: min(1.6666666667vw, 24px);
}

.l-header-menu__link {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: min(0.5555555556vw, 8px) 0;
  text-decoration: none;
  color: #333;
  font-size: min(1.1111111111vw, 16px);
  line-height: 1.375;
  font-family: "halcom", sans-serif;
  font-weight: 700;
  letter-spacing: 0.03em;
}
.l-header-menu__link:hover {
  opacity: 1;
}

.l-header-menu__link-text {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: block;
}

.l-header-menu__link-text::after {
  content: "";
  position: absolute;
  bottom: max(-0.1388888889vw, -2px);
  left: 0;
  width: 100%;
  height: min(0.1388888889vw, 2px);
  background-color: #1A1411;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transition: -webkit-transform 0.3s ease-in-out;
  transition: -webkit-transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}

.l-header-menu__link:hover .l-header-menu__link-text::after {
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.l-header-menu__link-arrow {
  width: min(0.8333333333vw, 12px);
  height: min(0.8333333333vw, 12px);
  position: relative;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
.l-header-menu__link-arrow::after {
  content: "";
  background: url(../img/common/header-arrow.png) center top/cover no-repeat;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: min(0.6944444444vw, 10px);
  height: min(0.8333333333vw, 12px);
}

.l-header-menu__recruitment {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
  margin-top: min(2.7777777778vw, 40px);
  place-items: center;
}

.l-header-menu__recruitment-btn {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  min-width: min(25vw, 360px);
  background: -webkit-gradient(linear, left top, left bottom, from(#666), to(#333));
  background: linear-gradient(to bottom, #666, #333);
  color: #CCB67C;
  font-size: min(1.6666666667vw, 24px);
  line-height: 3.6666666667;
  font-weight: 900;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
  text-align: center;
}

.l-header-menu__recruitment-text {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.l-header-menu__recruitment-arrow {
  width: min(1.6666666667vw, 24px);
  height: min(1.6666666667vw, 24px);
  position: absolute;
  right: min(2.7777777778vw, 40px);
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.l-header-menu__recruitment-arrow::after {
  content: "▶";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: min(1.1111111111vw, 16px);
  color: currentColor;
}

.l-header-menu__footer {
  margin-top: min(4.1666666667vw, 60px);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: min(1.6666666667vw, 24px);
  padding-left: min(1.25vw, 18px);
}

.l-header-menu__social {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: min(0.9722222222vw, 14px);
}

.l-header-menu__social-link {
  display: block;
  width: min(2.5vw, 36px);
  height: min(2.5vw, 36px);
  border-radius: 50%;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}
.l-header-menu__social-link:hover {
  opacity: 0.7;
}

.l-header-menu__social-icon {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.l-header-menu__social-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.l-header-menu__social-icon--facebook::after {
  background: url(../img/common/head-facebook.svg) center top/cover no-repeat;
}
.l-header-menu__social-icon--instagram::after {
  background: url(../img/common/head-instagram.svg) center top/cover no-repeat;
}

.l-header-menu__logo {
  width: 100%;
  max-width: min(9.7222222222vw, 140px);
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}
.l-header-menu__logo:hover {
  opacity: 0.7;
}
.l-header-menu__logo img {
  display: block;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 140/36;
}

body.menu-open {
  overflow: hidden;
}

.l-header__toggle-button--close span {
  background-color: #EFEFEF !important;
}

/* ================================================================================
細分化された汎用パーツ
================================================================================ */ /* ================================================================================
基本設定
================================================================================ */
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  font-weight: normal;
  color: #1A1411;
}

a {
  color: #1A1411;
}

/* ================================================================================
トップページ用ヘッダー
================================================================================ */
/* -------------------------------------------------
.l-header
---------------------------------------------------- */
.l-header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 1.1111111111vw 2.6388888889vw 0.9027777778vw 3.1944444444vw;
  border: solid 0.1388888889vw #1A1411;
  /*
  ナビ
  ---------------------------------------------------- */
  /*
  メニュー開閉ボタン
  ---------------------------------------------------- */
}
.l-header__img {
  display: block;
  width: 82%;
}
.l-header__time {
  width: 16.5%;
  font-family: "Roboto", sans-serif;
  margin-bottom: 0.4166666667vw;
}
.l-header__time__year {
  font-size: 1.875vw;
  line-height: 1.1111111111;
  font-weight: 500;
  letter-spacing: -0.05em;
  text-align: center;
}
.l-header__time__year-ja {
  font-size: 1.25vw;
  list-style: 1.7222222222;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  margin-left: 0.5555555556vw;
}
.l-header__time__day {
  font-size: 4.9305555556vw;
  line-height: 0.8;
  font-weight: 500;
  letter-spacing: -0.05em;
  text-align: center;
}
.l-header__time__day-ja {
  font-size: 1.875vw;
  line-height: 1.7037037037;
  font-weight: 600;
  font-family: "Noto Sans JP", sans-serif;
  margin-left: 0.4166666667vw;
}
.l-header__time__week {
  font-size: 1.25vw;
  line-height: 1.3333333333;
  font-weight: 700;
  font-family: "halcom", sans-serif;
  border: solid 0.0694444444vw #707070;
  text-align: center;
  padding: 0 0;
}
.l-header__nav {
  background-color: #1A1411;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.5s, visibility 0s 0.5s;
  transition: opacity 0.5s, visibility 0s 0.5s;
}
.l-header__nav--open {
  opacity: 0.9;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
  visibility: visible;
}
.l-header__nav-wrap {
  display: none;
}
.l-header__nav-list {
  margin-bottom: 20px;
}
.l-header__nav-list-wrap {
  position: relative;
  top: 45%;
  -webkit-transform: translateY(-45%);
          transform: translateY(-45%);
}
.l-header__nav-list a {
  display: block;
  color: #FFFFFF;
  text-align: center;
}
.l-header__toggle-button {
  overflow: hidden;
  position: fixed;
  top: min(1.5277777778vw, 22px);
  right: min(1.5277777778vw, 22px);
  width: min(4.5833333333vw, 66px);
  height: min(4.5833333333vw, 66px);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-indent: 100%;
  white-space: nowrap;
  z-index: 99999;
}
.l-header__toggle-button:before, .l-header__toggle-button:after {
  border-radius: 50%;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.l-header__toggle-button:before {
  border: solid min(0.0694444444vw, 1px) #1A1411;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.l-header__toggle-button:after {
  -webkit-transform: scale(0);
          transform: scale(0);
  -webkit-transition-duration: 0s;
          transition-duration: 0s;
}
.l-header__toggle-button span {
  background-color: #1A1411;
  bottom: auto;
  display: inline-block;
  width: min(2.0833333333vw, 30px);
  height: min(0.0694444444vw, 1px);
  left: 57%;
  position: absolute;
  right: auto;
  top: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  z-index: 10;
}
.l-header__toggle-button span:before, .l-header__toggle-button span:after {
  background-color: #1A1411;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  content: "";
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
  width: min(2.7777777778vw, 40px);
}
.l-header__toggle-button span:before {
  -webkit-transform: translateY(max(-0.5555555556vw, -8px)) rotate(0deg);
          transform: translateY(max(-0.5555555556vw, -8px)) rotate(0deg);
}
.l-header__toggle-button span:after {
  -webkit-transform: translateY(min(0.5555555556vw, 8px)) rotate(0deg);
          transform: translateY(min(0.5555555556vw, 8px)) rotate(0deg);
}
.l-header__toggle-button--close:after {
  -webkit-transform: scale(1);
          transform: scale(1);
}
.l-header__toggle-button--close span {
  background-color: #FFFFFF;
}
.l-header__toggle-button--close span:before, .l-header__toggle-button--close span:after {
  background-color: #1A1411;
}
.l-header__toggle-button--close span:before {
  -webkit-transform: translateY(0) rotate(-45deg);
          transform: translateY(0) rotate(-45deg);
}
.l-header__toggle-button--close span:after {
  -webkit-transform: translateY(0) rotate(45deg);
          transform: translateY(0) rotate(45deg);
}

/* ================================================================================
フッター
================================================================================ */
/* -------------------------------------------------
.l-footer
---------------------------------------------------- */
.l-footer {
  position: relative;
}

.l-footer__inner {
  position: relative;
  width: 100%;
  max-width: min(100vw, 1440px);
  margin-inline: auto;
  background-color: #1A1411;
  padding: min(5.5555555556vw, 80px) min(4.8611111111vw, 70px) min(2.2222222222vw, 32px);
}

.l-footer__inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100vw;
  height: 100%;
  background-color: #1A1411;
  z-index: -1;
}

.l-footer__body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.l-footer__logo {
  display: block;
  width: min(17.1527777778vw, 247px);
  height: 100%;
  aspect-ratio: 247/63.28;
  cursor: pointer;
}

.l-footer__logo img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.l-footer__nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: min(6.25vw, 90px);
}

.l-footer__nav-group-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: min(3.125vw, 45px);
}

.l-footer__nav-group {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: min(1.3888888889vw, 20px);
}

.l-footer__nav-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

.l-footer__nav-title--en {
  font-family: "Roboto", sans-serif;
  font-size: min(1.8055555556vw, 26px);
  font-weight: 700;
  line-height: 1.3076923077;
  letter-spacing: 0.03em;
  color: #CCB67C;
  text-transform: uppercase;
}

.l-footer__nav-title--ja {
  font-size: min(0.9722222222vw, 14px);
  font-weight: 700;
  line-height: 1.4285714286;
  letter-spacing: 0.03em;
  color: #FFFFFF;
  opacity: 0.4;
}

.l-footer__nav-items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: min(0.5555555556vw, 8px);
}

.l-footer__nav-item a {
  font-size: min(1.1111111111vw, 16px);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.03em;
  color: #FFFFFF;
  position: relative;
}
.l-footer__nav-item a:after {
  display: block;
  content: "";
  width: 100%;
  height: min(0.1388888889vw, 2px);
  background-color: #FFFFFF;
  position: absolute;
  bottom: max(-0.1388888889vw, -2px);
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.l-footer__nav-item a:hover {
  opacity: 1;
}
.l-footer__nav-item a:hover:after {
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.l-footer__bottom {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: min(0.9027777778vw, 13px);
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.l-footer__links {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: min(1.1805555556vw, 17px);
}

a.l-footer__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(0.4166666667vw, 6px);
  font-size: min(1.1111111111vw, 16px);
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.03em;
  color: #FFFFFF;
}
a.l-footer__link:after {
  display: block;
  content: "";
  width: min(1.25vw, 18px);
  aspect-ratio: 18/13.5;
  background: url(../img/common/link-icon.svg) center top/cover no-repeat;
}

.l-footer__sns-items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: min(0.8333333333vw, 12px);
}

.l-footer__sns-item a {
  display: block;
  width: min(2.0833333333vw, 30px);
  aspect-ratio: 1/1;
}

.l-footer__sns-item a img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.l-footer__copy {
  font-size: min(0.8333333333vw, 12px);
  font-weight: 500;
  line-height: 2.6666666667;
  letter-spacing: 0.03em;
  color: #FFFFFF;
  font-family: "Roboto", sans-serif;
}

/* -------------------------------------------------
ENTRYセクション
---------------------------------------------------- */
.l-footer__entry {
  position: relative;
}

.l-footer__entry::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/common/entry_bg.webp) no-repeat center center/cover;
  z-index: -1;
}

.l-footer__entry-inner {
  max-width: min(84.0277777778vw, 1210px);
  width: 100%;
  margin-inline: auto;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-top: min(6.1111111111vw, 88px);
  padding-bottom: min(2.6388888889vw, 38px);
  position: relative;
  z-index: 1;
}

.l-footer__entry-title {
  font-size: min(4.5833333333vw, 66px);
  font-weight: 900;
  line-height: 1.6515151515;
  letter-spacing: 0.025em;
  color: #FFFFFF;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  color: #1A1411;
}

.l-footer__entry-title span {
  font-size: min(1.25vw, 18px);
  line-height: 1;
  letter-spacing: 0;
  -webkit-transform: translateY(max(-0.4166666667vw, -6px));
          transform: translateY(max(-0.4166666667vw, -6px));
}

.l-footer__entry-items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr min(2.7777777778vw, 40px) 1fr min(2.7777777778vw, 40px) 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: min(2.7777777778vw, 40px);
  margin-top: min(1.0416666667vw, 15px);
  width: 100%;
  max-width: min(80.5555555556vw, 1160px);
  margin-inline: auto;
}

.l-footer__entry-item a {
  background: -webkit-gradient(linear, left top, left bottom, from(#666), to(#333));
  background: linear-gradient(to bottom, #666 0%, #333 100%);
  display: block;
  width: 100%;
  max-width: min(25vw, 360px);
  line-height: 3.4;
  font-size: min(1.6666666667vw, 24px);
  font-weight: 900;
  letter-spacing: 0;
  color: #CCB67C;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  text-align: center;
  position: relative;
}
.l-footer__entry-item a:before {
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: min(0.6944444444vw, 10px) 0 min(0.6944444444vw, 10px) min(1.0416666667vw, 15px);
  border-color: transparent transparent transparent #CCB67C;
  position: absolute;
  top: 50%;
  right: min(2.7777777778vw, 40px);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.l-footer__entry-item a:hover {
  opacity: 0.7;
}

/* -------------------------------------------------
フッターループアニメーション
---------------------------------------------------- */
.l-footer__entry-loop-area {
  overflow: hidden;
  position: absolute;
  top: min(1.9444444444vw, 28px);
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.l-footer__entry-loop-area img {
  width: min(180.5555555556vw, 2600px);
  aspect-ratio: 3020/136;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  max-width: initial;
}

.l-footer__entry-loop-area img:first-child {
  -webkit-animation: loop-slide-1 80s -40s linear infinite;
          animation: loop-slide-1 80s -40s linear infinite;
}

.l-footer__entry-loop-area img:last-child {
  -webkit-animation: loop-slide-2 80s linear infinite;
          animation: loop-slide-2 80s linear infinite;
}

@keyframes loop-slide-1 {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
  100% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@keyframes loop-slide-2 {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
}
/* ================================================================================
レイアウト用パーツ
================================================================================ */
/* ================================================================================
共通パーツ
================================================================================ */ /* ================================================================================
トップページ
================================================================================ */

.p-home .l-header__toggle-button {
  top: 0.6944444444vw;
  right: 1.25vw;
}

.p-home__title {
  margin: 2.0833333333vw 0;
  font-size: 2.5rem;
}

.p-home__inner {
  position: relative;
  margin: 0 2.6041666667vw;
  overflow: hidden;
}

.p-home__inner__02 {
  position: relative;
  margin: 0 5.9722222222vw 0 2.6041666667vw;
}

.p-home__02__button__box {
  position: relative;
}

.p-home__02__button {
  position: absolute;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  width: 3.6805555556vw;
  height: 6.3194444444vw;
  top: 13.8888888889vw;
  right: -5.3472222222vw;
  cursor: pointer;
  z-index: 10;
  padding-left: 1.25vw;
}
.p-home__02__button img {
  width: 100%;
  height: 100%;
}

.p-home__02__button__box__list {
  position: absolute;
  top: 13.8888888889vw;
  right: -5.3472222222vw;
  background-color: #FFFFFF;
  border: solid 0.1041666667vw #1A1411;
  border-radius: 0.2777777778vw;
  width: 13.0555555556vw;
  height: 10vw;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  z-index: 5;
  padding: 1.5972222222vw 1.6666666667vw;
  margin-right: 5.1388888889vw;
}

.p-home__02__button__box:hover .p-home__02__button__box__list {
  opacity: 1;
  visibility: visible;
}

.p-home__02__button__box__item {
  margin-bottom: 0.6944444444vw;
}
.p-home__02__button__box__item:last-child {
  margin-bottom: 0;
}

.p-home__02__button__box__link {
  display: block;
  color: #1A1411;
  text-decoration: none;
  font-size: 1.1111111111vw;
  line-height: 1;
  font-weight: 700;
  margin-bottom: 1.3888888889vw;
  font-family: "halcom", sans-serif;
  position: relative;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-home__02__button__box__link:hover {
  opacity: 0.7;
}
.p-home__02__button__box__link::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 0;
  width: 0.6944444444vw;
  height: 0.8333333333vw;
  background: url(../img/top/news_arrow.svg) center center/contain no-repeat;
}

.p-home__video-bg {
  position: absolute;
  top: 0.0694444444vw;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  overflow: hidden;
}
.p-home__video-bg iframe {
  width: 100%;
  height: 128%;
  display: block;
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.p-home__video-bg::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 2;
  pointer-events: none;
}

.p-home__content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: relative;
  z-index: 2;
  height: auto;
  color: #fff;
  padding: 1.1805555556vw 1.1805555556vw 0.4861111111vw;
  font-family: "Noto Serif JP", serif;
}
.p-home__content .text-bold {
  font-weight: 700;
}
.p-home__content .leading-1 {
  line-height: 1;
}
.p-home__content .leading-13 {
  line-height: 1.3;
}
.p-home__content .leading-14 {
  line-height: 1.4;
}
.p-home__content .leading-16 {
  line-height: 1.6;
}
.p-home__content .tracking-06 {
  letter-spacing: 0.06em;
}
.p-home__content .tracking-02 {
  letter-spacing: 0.02em;
}
.p-home__content .tracking-04 {
  letter-spacing: 0.04em;
}
.p-home__content .tracking-0 {
  letter-spacing: 0;
}
.p-home__content .vertical-rl {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
}

.p-home__content__title {
  font-size: 10.4861111111vw;
  line-height: 1.059602649;
  letter-spacing: -0.04em;
  font-weight: 700;
  margin-bottom: 1.3888888889vw;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  min-height: 90.2777777778vw;
  position: absolute;
  top: 0;
  right: 0;
}

/* -------------------------------------------------
FV左コンテンツ
---------------------------------------------------- */
.p-home__content__left {
  width: 46.5%;
}

/* -------------------------------------------------
FV右コンテンツ
---------------------------------------------------- */

/* -------------------------------------------------
FV左上コンテンツ
---------------------------------------------------- */
.p-home__content__left__top {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 29.1666666667vw;
  gap: 4.8611111111vw;
}
.p-home__content__left__top__box01 {
  width: 35.8333333333vw;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.p-home__content__left__top__box01.u-sp-only {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.p-home__content__left__top__box01__head {
  background: url(../img/top/fv_bg.jpg);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 3.1944444444vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 600;
  text-align: center;
  padding-bottom: 0.8333333333vw;
}

.p-home__content__left__top__box01__wrap02 {
  margin-top: 0.5555555556vw;
}

.p-home__content__left__top__box01__text02 {
  margin-top: 0.6944444444vw;
}

.p-home__content__left__top__box02 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.p-home__content__left__top__box02__text {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  margin-bottom: 0.6944444444vw;
  line-height: 1;
}
.p-home__content__left__top__box02__text--sm {
  font-size: 1.4583333333vw;
  margin-bottom: 1.0416666667vw;
  border-left: solid 0.0694444444vw #FFFFFF;
}
.p-home__content__left__top__box02__text--lg {
  font-size: 2.7777777778vw;
  font-weight: 700;
}
.p-home__content__left__top__box02__hidden {
  overflow: hidden;
}

/* -------------------------------------------------
FV左下コンテンツ
---------------------------------------------------- */
.p-home__content__left__bottom {
  height: 28.4722222222vw;
  margin-top: 1.0416666667vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0.6944444444vw;
}

.p-home__content__left__bottom__box {
  width: 15.2777777778vw;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  gap: 0.5555555556vw;
}
.p-home__content__left__bottom__box .js-fade-05 span {
  display: block !important;
}
.p-home__content__left__bottom__box__bg {
  height: 98%;
  width: 2.4305555556vw;
}
.p-home__content__left__bottom__box__bg__text .js-fade-text {
  background: url(../img/top/fv_bg.jpg);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  font-size: 1.8055555556vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 400;
  padding: 0.6944444444vw 0.3472222222vw;
}
.p-home__content__left__bottom__box__bg__text span {
  display: block !important;
}

.p-home__content__left__bottom__box02 {
  width: 33.3333333333vw;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}

.p-home__left__bottom__text {
  line-height: 1.2 !important;
  letter-spacing: -0.03em;
  margin-top: 0vw;
}

.p-home__left__bottom__text02 {
  line-height: 1.46 !important;
  margin-top: 0.3472222222vw;
}

.p-home__left__bottom__text03 {
  line-height: 1.1 !important;
  margin-top: 0.3472222222vw;
  margin-bottom: 0.2777777778vw;
}

.p-home__left__bottom__text04 {
  line-height: 1.06 !important;
}

.p-home__left__bottom__text05 {
  line-height: 1.25 !important;
  margin-top: 0.3472222222vw;
}

/* -------------------------------------------------
FV右下コンテンツ
---------------------------------------------------- */
.p-home__content__right__bottom {
  width: 47.2222222222vw;
  height: 28.4722222222vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.p-home__content__right__bottom__box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  margin-right: auto;
}
.p-home__content__right__bottom__box__name {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  margin-bottom: 0.6944444444vw;
  line-height: 1;
  -webkit-align-self: flex-end;
      -ms-flex-item-align: end;
          align-self: flex-end;
  margin-right: 0.6944444444vw;
}
.p-home__content__right__bottom__box__name--sm {
  font-size: 1.1805555556vw;
  margin-bottom: 0.3472222222vw;
  border-left: solid 0.0694444444vw #FFFFFF;
}
.p-home__content__right__bottom__box__name--lg {
  font-size: 2.5vw;
  font-weight: 700;
}

.p-home__content__right__bottom__box__text {
  margin-left: 0.625vw;
  height: 103%;
}

.p-home__content__right__bottom__box01 {
  width: 5.5555555556vw;
}

.p-home__content__right__bottom__box02 {
  width: 13.8888888889vw;
  margin-top: 0;
  margin-left: 1.3888888889vw;
}

.p-home__content__right__bottom__box02__bg {
  background-color: #FFFFFF;
}

.p-home__content__right__bottom__box02__head {
  background: url(../img/top/fv_bg.jpg);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  font-size: 4.0277777778vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 500;
  text-align: center;
  padding: 0.6944444444vw 0;
  text-align: center;
  position: relative;
  left: 1.3888888889vw;
}

.p-home__content__right__bottom__box02__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 1.0416666667vw;
  gap: 0.4166666667vw;
}

.p-home__content__right__bottom__box02__text {
  font-size: 1.1111111111vw;
  line-height: 1.35;
}

.p-home__content__right__bottom__box02__text02 {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  font-size: 1.6666666667vw;
  font-weight: 700;
}

.p-home__content__text {
  font-size: 1.1805555556vw;
  line-height: 1.2941176471;
  letter-spacing: 0.08em;
  font-weight: 500;
  vertical-align: middle;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-home__content__text--14 {
  font-size: 0.9722222222vw;
  line-height: 1.7;
  letter-spacing: -0.05em;
  font-weight: 500;
  vertical-align: middle;
}
.p-home__content__text--15 {
  font-size: 1.0416666667vw;
  line-height: 1.7;
  letter-spacing: -0.05em;
  font-weight: 500;
  vertical-align: middle;
}
.p-home__content__text--17 {
  font-size: 1.1805555556vw;
  line-height: 1.7;
  letter-spacing: -0.05em;
  font-weight: 500;
  vertical-align: middle;
}
.p-home__content__text--18 {
  font-size: 1.25vw;
  line-height: 1.7;
  letter-spacing: -0.05em;
  font-weight: 500;
  vertical-align: middle;
}
.p-home__content__text--19 {
  font-size: 1.3194444444vw;
  line-height: 1.27;
  letter-spacing: -0.05em;
  font-weight: 500;
  vertical-align: middle;
}
.p-home__content__text--20 {
  font-size: 1.3888888889vw;
  line-height: 1.27;
  letter-spacing: -0.05em;
  font-weight: 500;
  vertical-align: middle;
}
.p-home__content__text--22 {
  font-size: 1.5277777778vw;
  line-height: 1.7;
  letter-spacing: -0.05em;
  font-weight: 500;
  vertical-align: middle;
}
.p-home__content__text--23 {
  font-size: 1.5972222222vw;
  line-height: 1.7;
  letter-spacing: -0.01em;
  font-weight: 500;
  vertical-align: middle;
}
.p-home__content__text--25 {
  font-size: 1.6666666667vw;
  line-height: 1.7;
  letter-spacing: -0.05em;
  font-weight: 500;
  vertical-align: middle;
}
.p-home__content__text--28 {
  font-size: 1.9444444444vw;
  line-height: 1.4;
  letter-spacing: -0.05em;
  font-weight: 700;
  vertical-align: middle;
}
.p-home__content__text--30 {
  font-size: 2.0833333333vw;
  line-height: 1.7;
  letter-spacing: -0.04em;
  font-weight: 700;
  vertical-align: middle;
}
.p-home__content__text--33 {
  font-size: 2.2916666667vw;
  line-height: 1.7;
  letter-spacing: -0.04em;
  font-weight: 700;
  vertical-align: middle;
}
.p-home__content__text--34 {
  font-size: 2.3611111111vw;
  line-height: 1.7;
  letter-spacing: -0.04em;
  font-weight: 700;
  vertical-align: middle;
}
.p-home__content__text--36 {
  font-size: 2.5vw;
  line-height: 1.7;
  letter-spacing: -0.05em;
  font-weight: 700;
  vertical-align: middle;
}
.p-home__content__text--40 {
  font-size: 2.7777777778vw;
  line-height: 1.7;
  letter-spacing: -0.05em;
  font-weight: 700;
  vertical-align: middle;
}
.p-home__content__text--42 {
  font-size: 2.9166666667vw;
  line-height: 1.2;
  letter-spacing: -0.05em;
  font-weight: 700;
  vertical-align: middle;
}
.p-home__content__text--44 {
  font-size: 3.0555555556vw;
  line-height: 1.2;
  letter-spacing: -0.05em;
  font-weight: 700;
  vertical-align: middle;
}
.p-home__content__text--48 {
  font-size: 3.3333333333vw;
  line-height: 1.7;
  letter-spacing: -0.05em;
  font-weight: 700;
  vertical-align: middle;
}
.p-home__content__text--50 {
  display: inline-block;
  font-size: 3.4722222222vw;
  line-height: 1;
  letter-spacing: -0.05em;
  font-weight: 700;
  vertical-align: middle;
}
.p-home__content__text--55 {
  display: inline-block;
  font-size: 3.8194444444vw;
  line-height: 1.05;
  letter-spacing: -0.05em;
  font-weight: 700;
  vertical-align: middle;
}
.p-home__content__text--66 {
  font-size: 4.5833333333vw;
  line-height: 1.7;
  letter-spacing: -0.05em;
  font-weight: 700;
  vertical-align: middle;
}
.p-home__content__text--mt20-pc {
  margin-top: 1.3888888889vw;
}
.p-home__content__text--mt5-sp {
  margin-top: 0;
}

/* -------------------------------------------------
FV下コンテンツ
---------------------------------------------------- */
.p-home__bottom {
  padding: 0 1.1805555556vw 0.6944444444vw;
  font-family: "Noto Serif JP", serif;
  color: #FFFFFF;
  position: relative;
  z-index: 2;
}

.p-home__bottom__list {
  display: none;
}

.p-home__bottom__item {
  width: 33.1%;
  background: -webkit-gradient(linear, left top, left bottom, from(#666666), to(#333333));
  background: linear-gradient(to bottom, #666666, #333333);
}

.p-home__bottom__item__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #CCB67C;
  font-size: 3.4666666667vw;
  font-weight: 900;
  font-family: "Noto Sans JP", sans-serif;
  padding: 4vw 0;
}

.p-home__bottom__content {
  border-top: solid 0.0694444444vw #FFFFFF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.p-home__bottom__content__head {
  font-size: 5.625vw;
  line-height: 1.1;
  font-weight: 700;
  width: 32%;
}

.p-home__bottom__content__box {
  width: 55%;
}

.p-home__bottom__content__text {
  color: #FFFFFF;
  letter-spacing: -0.08em;
  line-height: 1.5;
  font-size: 1.1111111111vw;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.p-home__bottom__content__arrow {
  width: 3.6111111111vw;
  margin-left: auto;
  display: block;
  margin-top: auto;
}

.p-home__bottom__content__img {
  width: 41%;
  height: 11.3194444444vw;
}
.p-home__bottom__content__img span {
  display: block;
  width: 100%;
  height: 100%;
}
.p-home__bottom__content__img .news-swiper {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.p-home__bottom__content__img .news-swiper .swiper-wrapper {
  position: relative;
}
.p-home__bottom__content__img .news-swiper .swiper-slide {
  width: 100%;
  height: 100%;
}

.p-home__bottom__content__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 68%;
  margin-top: 0.6944444444vw;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-home__bottom__content__link:hover {
  opacity: 0.7;
}

/* -------------------------------------------------
NEWSセクション
---------------------------------------------------- */
.p-home__news {
  background-color: #EDEDED;
  margin-top: 1.6666666667vw;
  padding: 1.0416666667vw 4.1666666667vw 1.25vw 2.6041666667vw;
}

.p-home__news__head {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.25vw;
  font-weight: 900;
  letter-spacing: -0.03em;
}

.p-home__news__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.p-home__news__list__item {
  width: 33.333%;
  border-right: solid 0.0694444444vw #707070;
  padding-right: 2.0833333333vw;
}
.p-home__news__list__item:nth-of-type(2), .p-home__news__list__item:nth-of-type(3) {
  padding-left: 3.8888888889vw;
}
.p-home__news__list__item:nth-of-type(3) {
  border-right: 0;
}

.p-home__news__list__item__link {
  font-weight: 700;
  font-family: "Noto Sans JP", sans-serif;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  display: inline-block;
}
.p-home__news__list__item__link:hover .p-home__news__list__item__title::before {
  right: -1.3194444444vw;
}
.p-home__news__list__item__link:hover {
  opacity: 0.7;
}

.p-home__news__list__item__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5555555556vw;
}

.p-home__news__list__item__time {
  font-size: 0.9027777778vw;
}

.p-home__news__list__item__category {
  font-size: 0.9027777778vw;
  line-height: 1.2;
}

.p-home__news__list__item__title {
  font-size: 1.1111111111vw;
  position: relative;
}
.p-home__news__list__item__title::before {
  -webkit-transition: 0.5s;
  transition: 0.5s;
  position: absolute;
  content: "";
  width: 0.6944444444vw;
  height: 0.8333333333vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: -1.1111111111vw;
  background: url(../img/top/news_arrow.svg) center center/contain no-repeat;
}

/* -------------------------------------------------
2つ目のセクション
---------------------------------------------------- */
.p-home__content__02 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 2.7777777778vw;
}

.p-home__content__02__left {
  width: 58.125vw;
  margin-bottom: 2.2569444444vw;
}

.p-home__content__02__right {
  width: 30.6944444444vw;
  background-image: url(../img/top/right_bg_02.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom;
}
.p-home__content__02__right__head {
  padding-top: 2.2222222222vw;
}
.p-home__content__02__right__head__year {
  font-size: 2.2916666667vw;
  line-height: 1.2121212121;
  letter-spacing: -0.05em;
  font-weight: 500;
  text-align: center;
  font-family: "Roboto", sans-serif;
}
.p-home__content__02__right__head__year-ja {
  font-size: 1.3888888889vw;
  line-height: 1.7;
  letter-spacing: 0em;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  margin-left: 0.2777777778vw;
}
.p-home__content__02__right__head__day {
  font-size: 5.1388888889vw;
  line-height: 1;
  letter-spacing: -0.05em;
  font-weight: 500;
  text-align: center;
  font-family: "Roboto", sans-serif;
}
.p-home__content__02__right__head__day-ja {
  font-size: 1.9444444444vw;
  line-height: 1.6428571429;
  letter-spacing: 0em;
  font-weight: 600;
  font-family: "Noto Sans JP", sans-serif;
  margin-left: 0.4166666667vw;
}
.p-home__content__02__right__head__week {
  width: 13.0555555556vw;
  margin: 0.6944444444vw auto 0;
  font-size: 1.3888888889vw;
  line-height: 1.35;
  letter-spacing: 0em;
  font-weight: 900;
  font-family: "Noto Sans JP", sans-serif;
  border: solid 0.0694444444vw #707070;
  text-align: center;
  padding: 0 0;
}
.p-home__content__02__right__head__time {
  font-size: 1.25vw;
  line-height: 1;
  letter-spacing: -0.02em;
  font-weight: 700;
  font-family: "Roboto", sans-serif;
  text-align: center;
  margin-top: 0.6944444444vw;
}
.p-home__content__02__right__body__text {
  font-size: 1.0416666667vw;
  line-height: 2;
  letter-spacing: 0em;
  font-weight: 700;
  padding: 1.6666666667vw 1.5277777778vw 2.4305555556vw;
}
.p-home__content__02__right__body__sns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.625vw;
}
.p-home__content__02__right__body__sns__link {
  display: block;
  width: 1.5277777778vw;
}
.p-home__content__02__right__body__sns__icon {
  width: 100%;
}
.p-home__content__02__right__body__bnr {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0.625vw;
  padding: 1.3194444444vw 3.6111111111vw 1.0416666667vw 2.6388888889vw;
}
.p-home__content__02__right__body__bnr__link {
  display: block;
  width: 7.2916666667vw;
  position: relative;
  overflow: hidden;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
.p-home__content__02__right__body__bnr__link:nth-of-type(1)::before {
  background-image: url("../img/top/bnr_01_hover.jpg");
}
.p-home__content__02__right__body__bnr__link:nth-of-type(2)::before {
  background-image: url("../img/top/bnr_02_hover.jpg");
}
.p-home__content__02__right__body__bnr__link:nth-of-type(3)::before {
  background-image: url("../img/top/bnr_03_hover.jpg");
}
.p-home__content__02__right__body__bnr__link::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  z-index: 2;
}
.p-home__content__02__right__body__bnr__link:hover {
  cursor: pointer;
  opacity: 1;
}
.p-home__content__02__right__body__bnr__link:hover::before {
  opacity: 1;
}
.p-home__content__02__right__body__bnr__img {
  width: 100%;
}
.p-home__content__02__right__body__bnr__logo {
  padding: 0 3.6111111111vw 0.8333333333vw 2.6388888889vw;
}
.p-home__content__02__right__body__bnr__logo__link {
  width: 100%;
}

.p-home__content__02__left__link {
  position: relative;
  display: block;
}
.p-home__content__02__left__link__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.p-home__content__02__left__link:hover .c-more-btn::before {
  right: -1.1805555556vw;
}
.p-home__content__02__left__link__04 .c-more-btn {
  color: rgba(255, 255, 255, 0.8);
  border-bottom: 0.1041666667vw solid rgba(255, 255, 255, 0.8);
  bottom: 9.0277777778vw;
  z-index: 10;
}
.p-home__content__02__left__link__04 .c-more-btn::before {
  background-image: url(../img/top/white_arrow.svg);
}
.p-home__content__02__left__link__08 {
  position: relative;
}
.p-home__content__02__left__link__08::before {
  -webkit-transition: 0.5s;
  transition: 0.5s;
  position: absolute;
  content: "";
  width: 0.5555555556vw;
  height: 0.6944444444vw;
  top: 61%;
  right: 0.7638888889vw;
  background: url(../img/top/news_arrow.svg) center center/contain no-repeat;
}
.p-home__content__02__left__link__08:hover::before {
  right: 0.5555555556vw;
}
.p-home__content__02__left__link__10 .c-more-btn {
  right: 3.125vw;
  bottom: 0.2777777778vw;
}
.p-home__content__02__left__link__11 {
  position: relative;
}
.p-home__content__02__left__link__11::before {
  -webkit-transition: 0.5s;
  transition: 0.5s;
  position: absolute;
  content: "";
  width: 0.4166666667vw;
  height: 0.5555555556vw;
  bottom: 1.9444444444vw;
  right: 10.4166666667vw;
  background: url(../img/top/white_arrow.svg) center center/contain no-repeat;
  z-index: 10;
}
.p-home__content__02__left__link__11:hover::before {
  right: 10.2083333333vw;
}

.p-home__content__02__left__top {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 18.75vw;
}

.p-home__content__02__left__middle {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 2.0833333333vw;
}

.p-home__content__02__left__bottom {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.p-home__content__02__left__bottom__wrap {
  width: 27.3611111111vw;
}

.p-home__content__02__left__bottom__wrap02 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 0.9722222222vw;
}

.p-home__content__02__left__img__01 {
  display: inline-block;
  width: 13.6805555556vw;
}
.p-home__content__02__left__img__02 {
  display: inline-block;
  width: 13.6805555556vw;
}
.p-home__content__02__left__img__03 {
  display: inline-block;
  width: 26.8055555556vw;
  height: 100%;
  position: relative;
  overflow: hidden;
}
.p-home__content__02__left__img__03::before {
  position: absolute;
  content: "";
  display: block;
  width: 1.8055555556vw;
  height: 100%;
  top: 0;
  right: 0;
  background: url(../img/top/img_03_deco.jpg) center center/cover no-repeat;
}
.p-home__content__02__left__img__03 img,
.p-home__content__02__left__img__03 video {
  display: block;
  width: 107%;
}
.p-home__content__02__left__img__03 source {
  -o-object-fit: cover;
     object-fit: cover;
}
.p-home__content__02__left__img__04 {
  width: 18.0555555556vw;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: relative;
}
.p-home__content__02__left__img__04::after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 11.5972222222vw;
  top: 0;
  left: 0;
  background: url(../img/top/img_04.jpg) center center/contain no-repeat;
}
.p-home__content__02__left__img__04 img,
.p-home__content__02__left__img__04 video {
  width: 100%;
}
.p-home__content__02__left__img__04 source {
  -o-object-fit: cover;
     object-fit: cover;
}
.p-home__content__02__left__img__05 {
  display: inline-block;
  width: 18.0555555556vw;
}
.p-home__content__02__left__img__06 {
  display: inline-block;
  width: 17.8472222222vw;
}
.p-home__content__02__left__img__07 {
  display: inline-block;
  width: 17.8472222222vw;
}
.p-home__content__02__left__img__08 {
  display: inline-block;
  width: 27.3611111111vw;
  margin-top: 0.9722222222vw;
}
.p-home__content__02__left__img__09 {
  display: inline-block;
  width: 16.6666666667vw;
}
.p-home__content__02__left__img__10 {
  display: inline-block;
  width: 9.6180555556vw;
}
.p-home__content__02__left__img__11 {
  display: inline-block;
  width: 28.6458333333vw;
  height: 9.8611111111vw;
  margin-top: 2.0833333333vw;
  position: relative;
  overflow: hidden;
}
.p-home__content__02__left__img__11::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: url(../img/top/img_11.png) right center/contain no-repeat;
}
.p-home__content__02__left__img__11 img,
.p-home__content__02__left__img__11 video {
  width: 100%;
}
.p-home__content__02__left__img__11 source {
  -o-object-fit: cover;
     object-fit: cover;
}
.p-home__content__02__left__img img {
  width: 100%;
}

/* ================================================================================
新卒採用ページ
================================================================================ */
body:has(.p-new-graduate-requirements) {
  overflow-x: hidden;
  overflow-y: scroll;
}

.p-new-graduate__inner {
  width: 100%;
  max-width: 105.5555555556vw;
  padding: 0 2.7777777778vw;
  margin-inline: auto;
}

.p-new-graduate__sec-title {
  font-family: "Noto Serif JP", serif;
  font-size: 3.3333333333vw;
  font-weight: 900;
  line-height: 1.4375;
  letter-spacing: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.6666666667vw;
}
.p-new-graduate__sec-title:before {
  display: block;
  content: "";
  width: 6.25vw;
  aspect-ratio: 90/45;
  background: url(../img/new-graduate/sec-title-icon.webp) center top/cover no-repeat;
}

.p-new-graduate-requirements {
  margin-top: 3.1944444444vw;
}

.p-new-graduate-requirements__items {
  width: 100%;
  background-color: #f7f7f7;
  padding: 1.1111111111vw 2.7777777778vw 2.7777777778vw;
  margin-top: 2.7777777778vw;
}

.p-new-graduate-requirements__items--modal {
  background-color: #FFFFFF;
  margin-top: initial;
  padding: 1.3888888889vw;
  width: 100%;
  gap: 2.0833333333vw;
}

.p-new-graduate-requirements__item {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 1.6666666667vw 0vw 1.6666666667vw 1.1111111111vw;
  border-bottom: 1px solid #707070;
  gap: 0vw;
}

.p-new-graduate-requirements__items--modal .p-new-graduate-requirements__item:last-child {
  border-bottom: none;
}

.p-new-graduate-requirements__item--column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  border-bottom: none;
  padding-bottom: 0;
}

.p-new-graduate-requirements__term {
  width: 19%;
  font-size: 1.9444444444vw;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
}

.p-new-graduate-requirements__term--modal {
  width: 27.2727272727%;
}

.p-new-graduate-requirements__item--column .p-new-graduate-requirements__term {
  width: 100%;
  max-width: 10vw;
  margin-left: 2.6388888889vw;
}

.p-new-graduate-requirements__desc {
  width: 74.921630094%;
  font-size: 1.1111111111vw;
  font-weight: 400;
  line-height: 1.625;
  letter-spacing: 0;
}

.p-new-graduate-requirements__desc--modal {
  width: 65.1515151515%;
}

.p-new-graduate-requirements__item--column .p-new-graduate-requirements__desc {
  width: 100%;
}

.p-new-graduate-requirements__desc-item {
  text-indent: -1em;
  padding-left: 1em;
  font-size: 1.1111111111vw;
  line-height: 1.625;
  margin-top: 0.1388888889vw;
}

.p-new-graduate-requirements__desc-item--indent {
  text-indent: 0;
  padding-left: 0;
}

.p-new-graduate-requirements__cards {
  margin-top: 1.6666666667vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 2.7777777778vw;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 80.5555555556vw;
  width: 100%;
  margin-inline: auto;
}

.p-new-graduate-requirements__card {
  width: 100%;
  max-width: 25vw;
  height: 13.8888888889vw;
  padding: 1.6666666667vw 0.6944444444vw 1.1111111111vw;
  background-color: #FFFFFF;
  border: 0.1388888889vw solid #1A1411;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
}

.p-new-graduate-requirements__card-ttl {
  font-size: 1.6666666667vw;
  font-weight: 600;
  line-height: 1.3333333333;
  letter-spacing: 0;
}

.p-new-graduate-requirements__card-text {
  font-size: 1.1111111111vw;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0;
  margin-top: 1.1111111111vw;
}

.p-new-graduate-requirements__card-text--small {
  margin-top: 0.8333333333vw;
}

.p-new-graduate-requirements__card-more {
  font-family: "halcom", sans-serif;
  font-size: 0.9027777778vw;
  font-weight: 700;
  line-height: 1.1538461538;
  letter-spacing: 0.05em;
  margin-top: auto;
  margin-left: auto;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4861111111vw;
}
.p-new-graduate-requirements__card-more:before {
  display: block;
  content: "";
  width: 2.8472222222vw;
  height: 0.1041666667vw;
  background-color: #1A1411;
  position: absolute;
  bottom: -1.5px;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.p-new-graduate-requirements__card-more:after {
  display: block;
  content: "";
  -webkit-transform: translateY(2px);
          transform: translateY(2px);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.3472222222vw 0 0.3472222222vw 0.3472222222vw;
  border-color: transparent transparent transparent #1A1411;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}

.p-new-graduate-requirements__card:hover .p-new-graduate-requirements__card-more:after {
  -webkit-transform: translateX(0.2777777778vw) translateY(2px);
          transform: translateX(0.2777777778vw) translateY(2px);
}

.p-new-graduate-requirements__modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.2s, visibility 0.2s;
  transition: opacity 0.2s, visibility 0.2s;
}
.p-new-graduate-requirements__modal.is-open {
  opacity: 1;
  visibility: visible;
}

.p-new-graduate-requirements__modal-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(26, 20, 17, 0.3);
  z-index: -1;
}

.p-new-graduate-requirements__modal-container {
  width: 48.6111111111vw;
  background-color: #FFFFFF;
  position: relative;
}

.p-new-graduate-requirements__modal-close {
  position: absolute;
  top: 1.1111111111vw;
  right: 1.1111111111vw;
  width: 2.7777777778vw;
  aspect-ratio: 1/1;
  cursor: pointer;
}

.p-new-graduate-requirements__modal-close img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-new-graduate-process {
  margin-top: 5.5555555556vw;
}

.p-new-graduate-process__container {
  max-width: 84.0277777778vw;
  width: 100%;
  margin-inline: auto;
  padding: 0 1.7361111111vw;
}

.p-new-graduate-process__text {
  font-size: 1.5277777778vw;
  font-weight: 700;
  line-height: 1.4545454545;
  letter-spacing: 0;
  width: 100%;
  padding: 1.1111111111vw 0;
  border: 1px solid #1A1411;
  text-align: center;
  margin-top: 2.7777777778vw;
}

.p-new-graduate-process__text--mt {
  margin-top: 0.5555555556vw;
}

.p-new-graduate-process__arrow-image {
  width: 3.4722222222vw;
  aspect-ratio: 50/60;
  margin-inline: auto;
  margin-top: 0.5555555556vw;
}

.p-new-graduate-process__arrow-image img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-new-graduate-process__steps {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 2.5vw;
}

.p-new-graduate-process__step {
  width: 15.2777777778vw;
  height: 13.4722222222vw;
  aspect-ratio: 1/1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  background: url(../img/new-graduate/step-bg.webp) center top/cover no-repeat;
}

.p-new-graduate-process__step-number {
  font-family: "Noto Serif JP", serif;
  font-size: 2.7777777778vw;
  font-weight: 700;
  line-height: 1.425;
  letter-spacing: 0;
  color: #CCB67C;
  margin-left: 1.1111111111vw;
  margin-top: -1.9444444444vw;
}

.p-new-graduate-process__step-title {
  font-size: 1.3888888889vw;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0;
  text-align: center;
  margin-top: 0.5555555556vw;
}

.p-new-graduate-process__step-detail {
  font-size: 1.1111111111vw;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0;
  margin-top: 1.1111111111vw;
  text-align: center;
}

.p-new-graduate-process__step-detail--mt {
  margin-top: 2.5vw;
}

.p-new-graduate-process__arrow {
  position: relative;
  display: block;
  width: 2.0138888889vw;
  aspect-ratio: 29/35;
}

.p-new-graduate-process__arrow::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 2.0138888889vw;
  aspect-ratio: 29/35;
  background: url(../img/new-graduate/arrow-right.png) center top/cover no-repeat;
}

.p-new-graduate-process__comment {
  width: 100%;
  max-width: 69.4444444444vw;
  margin-inline: auto;
  font-size: 0.9722222222vw;
  font-weight: 400;
  line-height: 2.2857142857;
  letter-spacing: 0;
  text-align: right;
  margin-top: 0.5555555556vw;
}

.p-new-graduate-entry {
  margin-top: 5.5555555556vw;
}

.p-new-graduate-entry__btns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2.7777777778vw;
  margin-top: 2.7777777778vw;
}

a.p-new-graduate-entry__btn {
  display: block;
  min-width: 25vw;
  line-height: 3.6666666667;
  text-align: center;
  font-size: 1.6666666667vw;
  font-weight: 900;
  color: #CCB67C;
  background: -webkit-gradient(linear, left top, left bottom, from(#666), to(#333));
  background: linear-gradient(to bottom, #666 0%, #333 100%);
  position: relative;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
a.p-new-graduate-entry__btn:before {
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.6944444444vw 0 0.6944444444vw 1.0416666667vw;
  border-color: transparent transparent transparent #CCB67C;
  position: absolute;
  top: 50%;
  right: 2.7777777778vw;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.p-new-graduate-entry__btn:hover {
  opacity: 0.7;
}

.c-page-catchcopy__loop-area:has(.c-page-catchcopy__loop-imgs--new-graduate) {
  top: 15vw;
  display: none;
}

.c-page-catchcopy__loop-area.u-desktop:has(.c-page-catchcopy__loop-imgs--new-graduate) {
  display: block;
}

/* ================================================================================
FUDEAL×職種紹介ページ
================================================================================ */
html:has(.p-page-work) {
  scroll-behavior: smooth;
  scroll-padding-top: min(0vw, 0px);
}

body:has(.p-page-work) {
  overflow-x: hidden;
  overflow-y: scroll;
}

.c-page-head__inner:has(.c-page-head__title-img--work) .c-breadcrumb {
  margin-left: min(4.1666666667vw, 60px);
}

.c-page-head__title-img.c-page-head__title-img--work {
  aspect-ratio: 283/102;
  max-width: min(19.6527777778vw, 283px);
}

.p-page-work {
  padding-top: min(9.7222222222vw, 140px);
  position: relative;
}

.p-page-work::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: url(../img/office/office-tour_bg.webp) no-repeat center center/cover;
  z-index: -1;
}

.p-page-work__inner {
  margin-inline: auto;
  max-width: min(100vw, 1440px);
}

.p-page-work__items {
  margin-top: min(3.8888888889vw, 56px);
  gap: min(1.5972222222vw, 23px) min(4.1666666667vw, 60px);
  max-width: min(74.7222222222vw, 1076px);
  margin-inline: auto;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-bottom: min(10.4166666667vw, 150px);
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr min(4.1666666667vw, 60px) 1fr min(4.1666666667vw, 60px) 1fr;
  grid-template-columns: repeat(3, 1fr);
}

.p-page-work__contents {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  position: relative;
  padding-top: min(5.5555555556vw, 80px);
  gap: min(4.375vw, 63px);
  z-index: 1;
  background-color: #FFFFFF;
}

.p-page-work__content {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}

.p-job-type {
  position: relative;
  padding-bottom: min(2.7777777778vw, 40px);
  width: min(66.6666666667vw, 960px);
  margin-left: auto;
}

.p-job-type:nth-child(1n+2) {
  padding-top: min(2.7777777778vw, 40px);
}

.p-job-type:nth-child(2n) {
  padding-top: min(2.7777777778vw, 40px);
  margin-top: min(0vw, 0px);
}

.p-job-type#it-systems {
  padding-bottom: min(8.3333333333vw, 120px);
}

.p-job-type:nth-child(2n)::after {
  content: "";
  position: absolute;
  top: 0;
  left: calc(50% - 50vw);
  width: 150vw;
  height: 100%;
  background-color: #F8F8F8;
  z-index: -2;
}

.p-job-type__head {
  position: relative;
  text-align: center;
}

.p-job-type__head {
  position: relative;
}

.p-job-type__head::before {
  content: "";
  position: absolute;
  top: min(2.0833333333vw, 30px);
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: min(28.6805555556vw, 413px);
  height: min(9.0972222222vw, 131px);
  background: url(../img/work/job-type-title-bg.webp) center center/cover no-repeat;
  z-index: -1;
}

.p-job-type:nth-child(2n)::before {
  top: min(7.7083333333vw, 111px);
}

#sales-support .p-job-type__head::before {
  width: min(74.7916666667vw, 1077px);
  height: min(11.3888888889vw, 164px);
  background: url(../img/work/sales-support-title-bg.webp) center center/cover no-repeat;
}

#dev-purchase .p-job-type__head::before {
  width: min(80.5555555556vw, 1160px);
  height: min(9.0972222222vw, 131px);
  background: url(../img/work/dev-purchase-title-bg.webp) center center/cover no-repeat;
}

#dev-build .p-job-type__head::before {
  width: min(59.9305555556vw, 863px);
  height: min(9.0972222222vw, 131px);
  background: url(../img/work/dev-build-title-bg.webp) center center/cover no-repeat;
}

#house-studio .p-job-type__head::before {
  width: min(71.0416666667vw, 1023px);
  height: min(9.0972222222vw, 131px);
  background: url(../img/work/house-studio-title-bg.webp) center center/cover no-repeat;
}

#lease-sales .p-job-type__head::before {
  width: min(73.4027777778vw, 1057px);
  height: min(11.4583333333vw, 165px);
  background: url(../img/work/leasing-sales-title-bg.webp) center center/cover no-repeat;
}

#property-management .p-job-type__head::before {
  width: min(81.9444444444vw, 1180px);
  height: min(7.5694444444vw, 109px);
  background: url(../img/work/property-management-title-bg.webp) center center/cover no-repeat;
}

#building-management .p-job-type__head::before {
  width: min(81.9444444444vw, 1180px);
  height: min(8.0555555556vw, 116px);
  background: url(../img/work/building-management-title-bg.webp) center center/cover no-repeat;
}

#contract-management .p-job-type__head::before {
  top: min(4.8611111111vw, 70px);
  width: min(81.9444444444vw, 1180px);
  height: min(6.7361111111vw, 97px);
  background: url(../img/work/contract-management-title-bg.webp) center center/cover no-repeat;
}

#hr-pr .p-job-type__head::before {
  width: min(47.9861111111vw, 691px);
  height: min(8.6805555556vw, 125px);
  background: url(../img/work/hr-pc-title-bg.webp) center center/cover no-repeat;
}

#accounting-finance .p-job-type__head::before {
  margin-top: min(0.3472222222vw, 5px);
  width: min(81.9444444444vw, 1180px);
  height: min(8.75vw, 126px);
  background: url(../img/work/accounting-finance-title-bg.webp) center center/cover no-repeat;
}

#it-systems .p-job-type__head::before {
  width: min(45.625vw, 657px);
  height: min(11.1805555556vw, 161px);
  background: url(../img/work/systems-title-bg.webp) center center/cover no-repeat;
}

.p-job-type__sub-title {
  font-size: min(1.6666666667vw, 24px);
  font-weight: 700;
  line-height: 1;
  color: #CCB67C;
}

.p-job-type__title {
  margin-top: max(-0.7638888889vw, -11px);
  font-family: "Noto Serif JP", serif;
  font-size: min(5.5555555556vw, 80px);
  font-weight: 900;
  line-height: 1.4375;
}

#dev-purchase .p-job-type__title {
  -webkit-transform: translateX(max(-2.7777777778vw, -40px));
          transform: translateX(max(-2.7777777778vw, -40px));
  white-space: nowrap;
}

.p-job-type__body {
  margin-top: min(3.8888888889vw, 56px);
}

.p-job-type__body-title {
  font-family: "Noto Serif JP", serif;
  font-size: min(1.6666666667vw, 24px);
  font-weight: 700;
  text-align: center;
  line-height: 1.8333333333;
}

#dev-purchase .p-job-type__body-title {
  -webkit-transform: translateX(max(-0.8333333333vw, -12px));
          transform: translateX(max(-0.8333333333vw, -12px));
  white-space: nowrap;
}

.p-job-type__body-title span {
  position: relative;
}

.p-job-type__body-title span::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 101%;
  height: 40%;
  background: -webkit-gradient(linear, left top, right bottom, from(#E81E1E), to(#C94E31));
  background: linear-gradient(to bottom right, #E81E1E, #C94E31);
  opacity: 0.6;
  z-index: -1;
}

.p-job-type__body-title span.u-desktop::before {
  display: block;
}

.p-job-type__body-title span.u-mobile::before {
  display: none;
}

#sales-support .p-job-type__body-title span::before {
  background: -webkit-gradient(linear, left top, right top, from(#24D7F7), to(#3956D0));
  background: linear-gradient(to right, #24D7F7, #3956D0);
}

#dev-purchase .p-job-type__body-title span::before {
  background: -webkit-gradient(linear, left top, right top, from(#2BAA05), to(#A7E222));
  background: linear-gradient(to right, #2BAA05, #A7E222);
}

#dev-build .p-job-type__body-title span::before {
  background: -webkit-gradient(linear, left top, right top, from(#F49A21), to(#F8C800));
  background: linear-gradient(to right, #F49A21, #F8C800);
}

#house-studio .p-job-type__body-title span::before {
  background: -webkit-gradient(linear, left top, right top, from(#437EDB), to(#70BAD5));
  background: linear-gradient(to right, #437EDB, #70BAD5);
}

#lease-sales .p-job-type__body-title span::before {
  background: -webkit-gradient(linear, left top, right top, from(#F49A21), to(#E3511A));
  background: linear-gradient(to right, #F49A21, #E3511A);
}

#property-management .p-job-type__body-title span::before {
  background: -webkit-gradient(linear, left top, right top, from(#9D84D3), to(#CA77E7));
  background: linear-gradient(to right, #9D84D3, #CA77E7);
}

#building-management .p-job-type__body-title span::before {
  background: -webkit-gradient(linear, left top, right top, from(#A7E222), to(#67D01B));
  background: linear-gradient(to right, #A7E222, #67D01B);
}

#contract-management .p-job-type__body-title span::before {
  background: -webkit-gradient(linear, left top, right top, from(#B99A81), to(#CCB67C));
  background: linear-gradient(to right, #B99A81, #CCB67C);
}

#hr-pr .p-job-type__body-title span::before {
  background: -webkit-gradient(linear, left top, right top, from(#D594BE), to(#E23074));
  background: linear-gradient(to right, #D594BE, #E23074);
}

#accounting-finance .p-job-type__body-title span::before {
  background: -webkit-gradient(linear, left top, right top, from(#8FC4DB), to(#0683B9));
  background: linear-gradient(to right, #8FC4DB, #0683B9);
}

#it-systems .p-job-type__body-title span::before {
  background: -webkit-gradient(linear, left top, right top, from(#9D84D3), to(#D594BE));
  background: linear-gradient(to right, #9D84D3, #D594BE);
}

.p-job-type__body-text {
  margin-top: min(1.1111111111vw, 16px);
  font-size: min(1.1111111111vw, 16px);
  letter-spacing: 0;
  line-height: 1.625;
  max-width: min(66.6666666667vw, 960px);
  margin-inline: auto;
}

.p-job-type__img {
  margin-top: min(1.3888888889vw, 20px);
  width: 100%;
  max-width: min(66.6666666667vw, 960px);
  margin-inline: auto;
}

.p-job-type__img img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 960/237;
}

#dev-build .p-job-type__img img,
#house-studio .p-job-type__img img,
#hr-pr .p-job-type__img img {
  aspect-ratio: 960/237;
}

#property-management .p-job-type__img img {
  aspect-ratio: 960/237;
}

.p-job-type__body2 {
  margin-top: min(2.2222222222vw, 32px);
  padding: min(2.2222222222vw, 32px) min(1.3888888889vw, 20px);
  background: url(../img/work/job-type-bg.webp) no-repeat center center/cover;
  border-radius: 8px;
  max-width: min(66.6666666667vw, 960px);
  margin-inline: auto;
}

.p-job-type__body2-title {
  font-family: "Noto Serif JP", serif;
  font-size: min(1.6666666667vw, 24px);
  font-weight: 900;
  line-height: 1.4583333333;
  text-align: center;
}

.p-job-type__body2-items {
  margin-top: min(1.1111111111vw, 16px);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: min(1.1111111111vw, 16px);
}

.p-job-type__body2-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: min(0.5555555556vw, 8px);
}

.p-job-type__body2-item::before {
  content: attr(data-number);
  display: inline-block;
  font-size: min(2.3611111111vw, 34px);
  font-weight: 500;
  line-height: 1.4117647059;
  letter-spacing: -0.05em;
}

.p-job-type__body2-item-title {
  width: min(22.2222222222vw, 320px);
  font-family: "Noto Serif JP", serif;
  font-size: min(1.3888888889vw, 20px);
  font-weight: 700;
  line-height: 1.3;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  position: relative;
  z-index: 2;
}

.p-job-type__body2-item-title span {
  position: relative;
}

.p-job-type__body2-item-title span::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 102%;
  height: 28.5714285714%;
  background: -webkit-gradient(linear, left top, right bottom, from(#E81E1E), to(#C94E31));
  background: linear-gradient(to bottom right, #E81E1E, #C94E31);
  opacity: 0.6;
  z-index: -1;
}

#sales-support .p-job-type__body2-item-title span::before {
  background: #31D8F5;
}

#dev-purchase .p-job-type__body2-item-title span::before {
  background: #33AB0E;
}

#dev-build .p-job-type__body2-item-title span::before {
  background: #FED838;
}

#house-studio .p-job-type__body2-item-title span::before {
  background: #427EDC;
}

#lease-sales .p-job-type__body2-item-title span::before {
  background: #F59C25;
}

#property-management .p-job-type__body2-item-title span::before {
  background: #CB7AE7;
}

#building-management .p-job-type__body2-item-title span::before {
  background: #A9E329;
}

#contract-management .p-job-type__body2-item-title span::before {
  background: #B99B82;
}

#hr-pr .p-job-type__body2-item-title span::before {
  background: #D496BF;
}

#accounting-finance .p-job-type__body2-item-title span::before {
  background: #BAD8E5;
}

#it-systems .p-job-type__body2-item-title span::before {
  background: #9D84D3;
}

.p-job-type__body2-item-text {
  font-size: min(1.1111111111vw, 16px);
  line-height: 1.5625;
  width: min(36.8055555556vw, 530px);
}

.p-job-type__body3 {
  margin-top: min(2.2222222222vw, 32px);
  padding-inline: min(1.8055555556vw, 26px);
  max-width: min(66.6666666667vw, 960px);
  margin-inline: auto;
}

.p-job-type__body3-title {
  font-family: "Noto Serif JP", serif;
  font-size: min(1.9444444444vw, 28px);
  font-weight: 900;
  line-height: 1.4285714286;
}

.p-job-type__body3-items {
  -ms-grid-columns: 1fr min(1.3888888889vw, 20px) 1fr min(1.3888888889vw, 20px) 1fr min(1.3888888889vw, 20px) 1fr;
  grid-template-columns: repeat(4, 1fr);
  display: -ms-grid;
  display: grid;
  gap: min(1.3888888889vw, 20px);
}

.p-job-type__body3-item-img {
  width: 100%;
  height: auto;
}

.p-job-type__body3-item-img img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 211/290;
  background-color: #eee;
}

/* ================================================================================
オフィスツアーページ
================================================================================ */
body:has(.p-page-office) {
  overflow-x: hidden;
  overflow-y: scroll;
}

.c-page-head__inner:has(.c-page-head__title-img--office) {
  gap: min(5.2083333333vw, 75px);
}

.c-page-head__inner:has(.c-page-head__title-img--office) .c-breadcrumb {
  margin-left: min(4.1666666667vw, 60px);
}

.c-page-head__title-img.c-page-head__title-img--office {
  aspect-ratio: 616/102;
  max-width: min(42.7777777778vw, 616px);
}

.p-page-office {
  padding-top: min(9.7222222222vw, 140px);
  padding-bottom: min(4.8611111111vw, 70px);
  position: relative;
}

.p-page-office::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 102%;
  background: url(../img/office/office-tour_bg.webp) no-repeat center center/cover;
  z-index: -1;
}

.p-page-office__inner {
  margin-inline: auto;
  max-width: min(100vw, 1440px);
}

.p-page-office__content {
  margin-top: min(4.4444444444vw, 64px);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(5.8333333333vw, 84px);
}

.p-page-office__content-text {
  font-weight: 500;
  font-size: min(1.1111111111vw, 16px);
  line-height: 1.625;
  letter-spacing: 0;
  -webkit-transform: translateX(max(-4.0277777778vw, -58px));
          transform: translateX(max(-4.0277777778vw, -58px));
}

.p-page-office__content-text::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: max(-1.3888888889vw, -20px);
  width: min(0.0694444444vw, 1px);
  height: min(7.5vw, 108px);
  background-color: #1A1411;
}

.p-page-office__body {
  margin-top: min(2.7777777778vw, 40px);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: min(3.4027777778vw, 49px);
  margin-left: min(7.9861111111vw, 115px);
}

.p-page-office__body-items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-left: min(2.7777777778vw, 40px);
}

.p-page-office__body-item {
  width: 100%;
}

.p-page-office__body-img {
  width: 100%;
  aspect-ratio: 840/310;
  max-width: min(58.3333333333vw, 840px);
  margin-left: auto;
  position: relative;
}

.p-page-office__body-img::before {
  content: "";
  position: absolute;
  bottom: max(-1.7361111111vw, -25px);
  left: max(-1.7361111111vw, -25px);
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(#FBE68A), color-stop(20%, #EBE9A3), color-stop(60%, #D8C576), to(#C39B42));
  background: linear-gradient(90deg, #FBE68A 0%, #EBE9A3 20%, #D8C576 60%, #C39B42 100%);
  z-index: -1;
}

.p-page-office__body-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.c-loop-title--creation .c-loop-title__imgs {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.c-loop-title--creation .c-loop-title__imgs img {
  -webkit-animation: none;
          animation: none;
  aspect-ratio: 1219/94;
  width: min(84.6527777778vw, 1219px);
}
.c-loop-title--creation .c-loop-title__imgs img:nth-child(2) {
  display: none;
}

.p-office-creation--community .c-loop-title__imgs img {
  -webkit-animation: none;
          animation: none;
  aspect-ratio: 1385/94;
  width: min(96.1805555556vw, 1385px);
}

.p-office-creation {
  margin-top: min(8.3333333333vw, 120px);
}

.p-office-creation#office-tour-22f {
  padding-top: min(5.8333333333vw, 84px);
  padding-bottom: min(8.3333333333vw, 120px);
  background-color: #F4F4F4;
}

.p-office-creation__inner {
  margin-inline: auto;
  max-width: min(82.6388888889vw, 1190px);
  width: 100%;
  padding: 0 min(1.7361111111vw, 25px);
}

.p-office-creation__items {
  margin-top: min(7.3611111111vw, 106px);
}

.p-office-creation__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.p-office-creation__item__box {
  display: contents;
}

.p-office-creation__item:nth-child(2) {
  margin-top: min(2.2222222222vw, 32px);
}

.p-office-creation__item-left {
  -webkit-transform: translateX(max(-2.5694444444vw, -37px));
          transform: translateX(max(-2.5694444444vw, -37px));
  font-family: "Noto Serif JP", serif;
  font-size: min(4.0277777778vw, 58px);
  font-weight: 500;
  line-height: 1.3620689655;
  letter-spacing: -0.02em;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: min(0.625vw, 9px);
  position: relative;
}

.p-office-creation__item-left::before {
  content: "";
  position: absolute;
  top: min(5.625vw, 81px);
  left: 40%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: min(3.6111111111vw, 52px);
  height: min(41.1111111111vw, 592px);
  background: url(../img/office/time-border.webp) no-repeat center top/cover;
}

.p-office-creation__item-left span {
  font-weight: 500;
  margin-top: min(1.3888888889vw, 20px);
  letter-spacing: 0.05em;
  font-size: min(1.1111111111vw, 16px);
  line-height: 1.25;
}

.p-office-creation__item-right {
  width: min(66.6666666667vw, 960px);
  margin-top: min(1.1111111111vw, 16px);
}

.p-office-creation__item-head {
  position: relative;
  padding-bottom: min(0.5555555556vw, 8px);
  padding-left: min(0.6944444444vw, 10px);
}

.p-office-creation__item-head::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: min(0.0694444444vw, 1px);
  background: #1A1411;
}

.p-office-creation__item-title {
  font-size: min(2.7777777778vw, 40px);
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
}

.p-office-creation__item-sub-title {
  font-size: min(1.1111111111vw, 16px);
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: 0.05em;
}

.p-office-creation__item-bg-title {
  position: absolute;
  bottom: max(-0.2777777778vw, -4px);
  right: min(0.5555555556vw, 8px);
  font-family: "Noto Serif JP", serif;
  font-size: min(3.4722222222vw, 50px);
  font-weight: 900;
  line-height: 1.44;
  letter-spacing: 0;
  color: #CECECE;
  opacity: 0.4;
}

.p-office-creation__item-body {
  margin-top: min(0.8333333333vw, 12px);
  padding-left: min(0.6944444444vw, 10px);
}

.p-office-creation__item-text {
  font-size: min(1.1111111111vw, 16px);
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0;
}

.p-office-creation__item-img {
  margin-top: min(2.7777777778vw, 40px);
  width: 100%;
}

.p-office-creation__item-btns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: min(0.9722222222vw, 14px);
  margin-top: min(1.1111111111vw, 16px);
  margin-bottom: min(0.5555555556vw, 8px);
  margin-right: min(1.1111111111vw, 16px);
}

.p-office-creation__item-btns .swiper-button-prev,
.p-office-creation__item-btns .swiper-button-next {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  gap: min(0.9722222222vw, 14px);
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
}

.p-office-creation__item-btns .swiper-button-next {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
}

[data-swiper=creation] img {
  width: 100%;
  height: auto;
  aspect-ratio: 960/420;
  -o-object-fit: cover;
     object-fit: cover;
}

[data-swiper=creation] .swiper-button-prev::after,
[data-swiper=creation] .swiper-button-next::after {
  content: "";
  display: block;
  width: min(0.8333333333vw, 12px);
  height: min(0.8333333333vw, 12px);
  background: url(../img/common/swiper-arrow.svg) no-repeat center center/contain;
  cursor: pointer;
  position: relative;
  top: min(0.1388888889vw, 2px);
}

[data-swiper=creation] .swiper-button-next::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.p-office-creation__item-num {
  font-family: "Noto Serif JP", serif;
  font-size: min(1.5277777778vw, 22px);
  font-weight: 500;
  line-height: 1.4090909091;
  letter-spacing: 0;
  -webkit-transition: color 0.3s ease-in-out;
  transition: color 0.3s ease-in-out;
}

.p-office-creation__item-num.current {
  color: #CCB67C;
}

.p-office-creation__item-border {
  position: relative;
  width: 40px;
  height: 1px;
  background-color: #1A1411;
  overflow: hidden;
}
.p-office-creation__item-border::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #CCB67C;
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transform-origin: left;
          transform-origin: left;
  -webkit-transition: -webkit-transform 1.5s cubic-bezier(0.16, 1, 0.3, 1);
  transition: -webkit-transform 1.5s cubic-bezier(0.16, 1, 0.3, 1);
  transition: transform 1.5s cubic-bezier(0.16, 1, 0.3, 1);
  transition: transform 1.5s cubic-bezier(0.16, 1, 0.3, 1), -webkit-transform 1.5s cubic-bezier(0.16, 1, 0.3, 1);
}
.p-office-creation__item-border.is-active::before {
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
}

/* ================================================================================
人事総務部長メッセージページ
================================================================================ */
/* スクロール制限解除 */
body:has(.p-page-message) {
  overflow-x: hidden;
  overflow-y: scroll;
}

/* Message: レイアウト余白（MV開始位置） */
.p-page-message {
  padding-top: min(8.7777777778vw, 126.4px);
}
.p-page-message__mv img {
  display: block;
  width: 100%;
  height: 37vw;
  -o-object-fit: cover;
     object-fit: cover;
  max-width: 1920px;
  max-height: 655px;
  margin: 0 auto;
}

/* Message: スクロール着地点の当たり（固定ヘッダー対策） */
html:has(.p-page-message) {
  scroll-behavior: smooth;
  scroll-padding-top: 8.3333333333vw;
}

/* Message: ヘッダー内の微調整（タイトル画像/パンくず） */

.c-page-head__inner:has(.c-page-head__title-img--message) .c-breadcrumb {
  margin-left: 4.1666666667vw;
}

/* Message: ヘッダー画像のサイズ個別指定*/
.c-page-head__title-img.c-page-head__title-img--message {
  aspect-ratio: 434/102;
  max-width: min(19.6527777778vw, 283px);
}

.c-page-head--message .c-page-head__subtitle--bottom {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.c-page-head--message .c-page-head__subtitle--bottom span {
  font-size: 1.6666666667vw;
  line-height: 1.25;
  letter-spacing: -0.05em;
  font-weight: 700;
}

/* 本文ブロック */
.p-msg {
  text-align: center;
  color: #1A1411;
  margin: 5.5555555556vw auto 4vw;
  font-family: "Noto Serif JP", serif;
  /* 1セクション（見出し＋補足）の塊間余白 */
  /* 本文（PC:16px / SP:14px） */
  /* 強調の一文（少し大きめ） */
  /* ハイライト（ゴールド着色） */
  /* セクション間の“短い横棒” */
  /* SPのみ改行 */
  /* 署名 */
  /* （任意）アンカー着地の当たり調整：固定ヘッダー対策 */
}
.p-msg__block {
  margin: 3.0555555556vw auto;
}
.p-msg__lead {
  font-size: 1.1111111111vw;
  letter-spacing: 0;
  max-width: 66.6666666667vw;
  margin-inline: auto;
  letter-spacing: 0.02em;
}
.p-msg .p-msg__leadMgn {
  margin-top: 1.5972222222vw;
}
.p-msg__catch {
  margin-top: 0.5555555556vw;
  font-size: 1.6666666667vw;
  letter-spacing: 0.02em;
  color: #CCB67C;
  font-weight: bold;
}
.p-msg__lh {
  line-height: 1.2;
}
.p-msg__gld {
  color: #CCB67C;
  font-size: 1.1111111111vw;
  font-weight: bold;
}
.p-msg__bl {
  font-weight: bold;
}
.p-msg__rule {
  display: -ms-grid;
  display: grid;
  place-items: center;
  margin: 3.3333333333vw auto;
}
.p-msg__rule::before {
  content: "";
  width: 5.5555555556vw;
  height: 0.2777777778vw;
  background: #707070;
  border-radius: 2px;
}
.p-msg .u-sp-only {
  display: none;
}
.p-msg__sign {
  margin: 2.7777777778vw auto 0;
  text-align: center;
}
.p-msg__sign figcaption {
  font-size: 1.1111111111vw;
  margin-bottom: 0.8333333333vw;
  font-weight: bold;
}
.p-msg__sign img {
  display: inline-block;
  width: 13.8888888889vw;
  height: auto;
}
.p-msg html:has(.p-page-message) {
  scroll-behavior: smooth;
  scroll-padding-top: 8.3333333333vw;
  /* ヘッダー高に合わせて微調整 */
}

/* ================================================================================
トップメッセージページ
================================================================================ */
/* スクロール制限解除 */
body:has(.p-page-president) {
  overflow-x: hidden;
  overflow-y: scroll;
}

/* President: レイアウト余白（MV開始位置） */
.p-page-president {
  padding-top: min(9.5833333333vw, 138px);
}
.p-page-president__mv img {
  display: block;
  width: 100%;
  height: 37vw;
  -o-object-fit: cover;
     object-fit: cover;
  max-width: 1920px;
  max-height: 655px;
  margin: 0 auto;
}

/* President: スクロール着地点の当たり（固定ヘッダー対策） */
html:has(.p-page-president) {
  scroll-behavior: smooth;
  scroll-padding-top: 12.7777777778vw;
}

/* President: ヘッダー内の微調整（タイトル画像/パンくず） */

.c-page-head__inner:has(.c-page-head__title-img--president) .c-breadcrumb {
  margin-left: 4.1666666667vw;
}

/* President: ヘッダー画像のサイズ個別指定*/
.c-page-head__title-img.c-page-head__title-img--president {
  aspect-ratio: 634/108;
  max-width: min(44.0277777778vw, 634px);
}

/* 本文ブロック */
.p-psd {
  text-align: center;
  color: #1A1411;
  margin: 8.4027777778vw auto 4vw;
  font-family: "Noto Serif JP", serif;
  /* 1セクション（見出し＋補足）の塊間余白 */
  /* 本文（PC:16px / SP:14px） */
  /* 強調の一文（少し大きめ） */
  /* セクション間の“短い横棒” */
  /* 署名 */
  /* （任意）アンカー着地の当たり調整：固定ヘッダー対策 */
}
.p-psd__block {
  margin: 3.0555555556vw auto;
}
.p-psd__lead {
  font-size: 1.1111111111vw;
  letter-spacing: 0;
  line-height: 1.6;
  max-width: 66.6666666667vw;
  margin-inline: auto;
  letter-spacing: 0.02em;
}
.p-psd .p-psd__mg {
  margin-top: 0.2777777778vw;
}
.p-psd .p-psd__leadMgn {
  margin-top: 1.1111111111vw;
}
.p-psd__catch {
  margin-top: 0.5555555556vw;
  font-size: 1.9444444444vw;
  letter-spacing: 0.02em;
  background-color: rgba(204, 182, 124, 0.8);
  font-weight: bold;
}
.p-psd__lh {
  line-height: 1.1428571429;
}
.p-psd__rule {
  display: -ms-grid;
  display: grid;
  place-items: center;
  margin: 3.3333333333vw auto;
}
.p-psd__rule::before {
  content: "";
  width: 5.5555555556vw;
  height: 0.2777777778vw;
  background: #707070;
  border-radius: 2px;
}
.p-psd__sign {
  margin: 2.7777777778vw auto 0;
  text-align: center;
}
.p-psd__sign figcaption {
  font-size: 1.1111111111vw;
  margin-bottom: 0.2083333333vw;
  font-weight: bold;
}
.p-psd__sign img {
  display: inline-block;
  width: 21.25vw;
  height: auto;
}
.p-psd html:has(.p-page-message) {
  scroll-behavior: smooth;
  scroll-padding-top: 8.3333333333vw;
  /* ヘッダー高に合わせて微調整 */
}

/* ================================================================================
トップメッセージページ
================================================================================ */
/* スクロール制限解除 */
body:has(.p-page-faq) {
  overflow-x: hidden;
  overflow-y: scroll;
}

/* ページ全体のスクロール調整（固定ヘッダー分） */
html:has(.p-page-faq) {
  scroll-behavior: smooth;
  /* PC: 1440想定でヘッダーが約184pxなら get-pc-under(184) */
  scroll-padding-top: 0 !important;
}

/* faq: レイアウト余白（MV開始位置） */

/* faq: ヘッダー内の微調整（タイトル画像/パンくず） */

.c-page-head__inner:has(.c-page-head__title-img--faq) .c-breadcrumb {
  margin-left: 4.1666666667vw;
}

/* faq: ヘッダー画像のサイズ個別指定*/
.c-page-head__title-img.c-page-head__title-img--faq {
  aspect-ratio: 300/102;
  max-width: min(20.8333333333vw, 300px);
}

/* ===== MV ===== */
.p-page-faq__mv {
  padding-top: 9.1vw;
  padding-bottom: 6.5vw;
  background: url("../img/faq/bg-faq_nav.png") no-repeat center center/cover;
}

.p-faq-visual__loop {
  margin-top: max(-4.1666666667vw, -60px);
  margin-bottom: 1.6vw;
}

.p-faq__anchor {
  position: relative;
  z-index: 2;
  margin-top: min(4.5763888889vw, 65.9px);
}

.p-faq__anchor-items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: min(4.1666666667vw, 60px);
}

.p-faq__anchor-items li:last-child {
  margin-left: min(4.1666666667vw, 60px);
}

.p-faq__anchor-link {
  position: relative;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  padding: 0 0 min(5.5555555556vw, 80px) min(2.7777777778vw, 40px);
  color: #1A1411;
  text-decoration: none;
  /* --- SPだけ縦書き --- */
}
.p-faq__anchor-link span {
  position: relative;
  z-index: 2;
  line-height: 1;
  font-family: "Noto Serif JP", serif;
  font-weight: 900;
  font-size: min(3.3333333333vw, 48px);
}
.p-faq__anchor-link::before {
  /* ドット柄の短冊 */
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 1;
  pointer-events: none;
  width: min(16.25vw, 234px);
  height: min(7.0138888889vw, 101px);
  background: url("../img/faq/bg-faq_anchor.png") center/cover no-repeat;
}

/* セクション共通 */
.p-faq-sec {
  position: relative;
  padding: 4.9305555556vw 0;
  overflow: hidden;
  /* 背景のアニメをセクション内に切る */
}
.p-faq-sec__head {
  margin-bottom: 2.7777777778vw;
}
.p-faq-sec__title {
  font-size: 5.5555555556vw;
  font-family: "Noto Serif JP", serif;
  font-weight: bold;
  text-align: center;
}
.p-faq-sec__image {
  margin: -6.9444444444vw auto 0;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 8.6597222222vw;
}
.p-faq-sec__image img {
  height: 100%;
}
.p-faq-sec .l-container {
  position: relative;
}
.is-benefits .p-faq-sec__image {
  height: 10.9513888889vw;
}

/* Q&A レイアウト */
.p-faq-grid {
  display: -ms-grid;
  display: grid;
  margin: 5.5555555556vw 8.3333333333vw 0;
  -ms-grid-columns: 1fr 2.5vw 1fr;
  grid-template-columns: 1fr 1fr;
  gap: 1.9444444444vw 2.5vw;
}

.p-faq-q {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 1.6666666667vw 1fr;
  grid-template-columns: auto 1fr;
  -webkit-box-align: start;
  -webkit-align-items: start;
      -ms-flex-align: start;
          align-items: start;
  -webkit-column-gap: 1.6666666667vw;
     -moz-column-gap: 1.6666666667vw;
          column-gap: 1.6666666667vw;
  font-size: 1.3888888889vw;
  font-family: "Noto Serif JP", serif;
  font-weight: bold;
}
.p-faq-q__icon {
  width: 5.5555555556vw;
  height: 2.2222222222vw;
}

.p-faq-a {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 1.6666666667vw 1fr;
  grid-template-columns: auto 1fr;
  -webkit-box-align: start;
  -webkit-align-items: start;
      -ms-flex-align: start;
          align-items: start;
  -webkit-column-gap: 1.6666666667vw;
     -moz-column-gap: 1.6666666667vw;
          column-gap: 1.6666666667vw;
  margin-top: 0.6944444444vw;
  font-size: 1.1111111111vw;
  font-weight: 500;
}
.p-faq-a__icon {
  width: 5.5555555556vw;
  height: 2.2222222222vw;
}

.is-company {
  background-color: #F8F8F8;
  padding: 4.9305555556vw 0 7.2222222222vw;
}

.is-benefits {
  padding: 4.9305555556vw 0 5.75vw;
}

/* ================================================================================
クロストークページ
================================================================================ */
/* スクロール制限解除 */
body:has(.p-page-cross-talk) {
  overflow-x: hidden;
  overflow-y: scroll;
}

/* ページ全体のスクロール調整（固定ヘッダー分） */
html:has(.p-page-cross-talk) {
  scroll-behavior: smooth;
  /* PC: 1440想定でヘッダーが約184pxなら get-pc-under(184) */
  scroll-padding-top: 0 !important;
}

/* cross-talk: レイアウト余白（MV開始位置） */
.p-page-cross-talk {
  padding-top: 12.0416666667vw;
}

/* cross-talk: ヘッダー内の微調整（タイトル画像/パンくず） */

.c-page-head__inner:has(.c-page-head__title-img--cross-talk) .c-breadcrumb {
  margin-left: 4.1666666667vw;
}

/* cross-talk: ヘッダー画像のサイズ個別指定*/
.c-page-head__title-img.c-page-head__title-img--cross-talk {
  aspect-ratio: 486/120;
  max-width: 33.75vw;
}

.c-loop-title--cross-talk .c-loop-title__head .c-loop-title__title {
  line-height: 1;
}

.c-loop-title--cross-talk .c-loop-title__imgs {
  top: 0.6944444444vw;
}

.c-loop-title--cross-talk .c-loop-title__imgs img {
  /* 例：MVだけ帯を少し高く見せたいなら高さベースもOK */
  width: 166.5972222222vw;
  aspect-ratio: 2399/159;
}

/* アンカーリンク */
.p-crosstalk__anchor {
  margin: 7.5555555556vw auto 12.5vw;
}
.p-crosstalk__anchor-items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 3.1666666667vw;
}
.p-crosstalk__anchor-item {
  width: 22vw;
  height: auto;
}
.p-crosstalk__anchor picture {
  width: 100%;
}

.p-crosstalk__sec {
  text-align: center;
  font-weight: 700;
  font-family: "Noto Serif JP", serif;
}
.p-crosstalk__sec .p-crosstalk__title-image {
  width: 10.2777777778vw;
  height: auto;
}
.p-crosstalk__sec .p-crosstalk__title-text {
  font-size: 2.5vw;
}
.p-crosstalk__sec p {
  font-size: 1.1111111111vw;
}
.p-crosstalk__sec picture img {
  margin: 1.4583333333vw 0 8.3333333333vw;
  width: 100%;
  height: 40.63vw;
  -o-object-fit: cover;
     object-fit: cover;
  max-width: 1920px;
  max-height: 820px;
}

.crosstalk-vol1 {
  background-color: #F7F7F7;
  padding-top: 5vw;
  margin-bottom: 8.3333333333vw;
}

.anchor-sentinel {
  display: block;
  height: 0;
  margin: 0;
  padding: 0;
}

/* ================================================================================
働くママインタビューページ
================================================================================ */
/* スクロール制限解除 */
body:has(.p-page-women) {
  overflow-x: hidden;
  overflow-y: scroll;
}

/* ページ全体のスクロール調整（固定ヘッダー分） */
html:has(.p-page-women) {
  scroll-behavior: smooth;
  /* PC: 1440想定でヘッダーが約184pxなら get-pc-under(184) */
  scroll-padding-top: 0 !important;
}

/* women: レイアウト余白（MV開始位置） */
.p-page-women {
  padding-top: 12.0416666667vw;
}
.p-page-women .u-sp-only {
  display: none;
}

/* women: ヘッダー内の微調整（タイトル画像/パンくず） */

.c-page-head__inner:has(.c-page-head__title-img--women) .c-breadcrumb {
  margin-left: 4.1666666667vw;
}

/* women: ヘッダー画像のサイズ個別指定*/
.c-page-head__title-img.c-page-head__title-img--women {
  aspect-ratio: 734/120;
  max-width: 50.9722222222vw;
}

.c-loop-title--women .c-loop-title__head .c-loop-title__title {
  line-height: 1;
}

.c-loop-title--women .c-loop-title__imgs {
  top: 0.6944444444vw;
}

.c-loop-title--women .c-loop-title__imgs img {
  /* 例：MVだけ帯を少し高く見せたいなら高さベースもOK */
  width: 339.3055555556vw;
  aspect-ratio: 4886/155;
}

/* アンカーリンク */
.p-women__anchor {
  margin: 7.5555555556vw auto 7.8472222222vw;
}
.p-women__anchor-items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 3.1666666667vw;
}
.p-women__anchor-item {
  width: 22vw;
  height: auto;
}
.p-women__anchor picture {
  width: 100%;
}

.p-women__sec {
  text-align: center;
  font-weight: 700;
  font-family: "Noto Serif JP", serif;
}
.p-women__sec .p-women__title-image {
  width: 10.2777777778vw;
  height: auto;
}
.p-women__sec .p-women__title-text {
  font-size: 2.5vw;
}
.p-women__sec p {
  font-size: 1.3888888889vw;
}
.p-women__sec picture img {
  margin: 1.4583333333vw 0 8.3333333333vw;
  width: 100%;
  height: 44vw;
  -o-object-fit: cover;
     object-fit: cover;
  max-width: 1920px;
  max-height: 820px;
}

.women-vol1 {
  background-color: #F7F7F7;
  padding-top: 5vw;
  margin-bottom: 8.3333333333vw;
}

.anchor-sentinel {
  display: block;
  height: 0;
  margin: 0;
  padding: 0;
}

/* ================================================================================
carrierページ
================================================================================ */
html:has(.p-page-carrier) {
  scroll-behavior: smooth;
  scroll-padding-top: 0;
}

.c-page-head__title-img {
  aspect-ratio: 380/102;
  max-width: 26.3888888889vw;
}

.c-page-catchcopy__flex--carrier {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  overflow: hidden;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.c-page-catchcopy__flex--carrier .c-page-catchcopy__text {
  -webkit-transform: translateX(max(-2.7777777778vw, -40px));
          transform: translateX(max(-2.7777777778vw, -40px));
  position: relative;
  z-index: 1;
  margin-top: min(1.6666666667vw, 24px);
  padding-top: 0;
  font-size: min(4.7222222222vw, 68px);
}

.c-page-catchcopy__inner--carrier::before {
  background: url(../img/carrier/catchcopy-bg.webp) center top/cover no-repeat;
  height: 100%;
  width: 100vw;
  left: initial;
  right: 50%;
  -webkit-transform: translateX(50%);
          transform: translateX(50%);
  z-index: -1;
}

.c-page-catchcopy__loop-area.c-page-catchcopy__loop-area--carrier {
  top: min(6.9444444444vw, 100px);
}

.c-page-head__inner:has(.c-page-head__title-img--carrier) .c-breadcrumb {
  margin-left: min(4.1666666667vw, 60px);
}

.c-page-head__title-img.c-page-head__title-img--carrier {
  aspect-ratio: 350/102;
  max-width: min(24.3055555556vw, 350px);
}

.c-page-anchor-link--carrier {
  margin-top: min(4.3055555556vw, 62px);
  width: 89%;
}

.c-page-anchor-link--carrier .c-page-anchor-link__items {
  position: relative;
  z-index: 10;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-right: 0;
  max-width: min(55.9722222222vw, 806px);
  margin-left: min(3.8888888889vw, 56px);
  gap: min(2.9166666667vw, 42px) min(4.5833333333vw, 66px);
}

.c-page-anchor-link--carrier .c-page-anchor-link__item {
  height: min(6.1111111111vw, 88px);
}

.c-page-anchor-link--carrier .c-page-anchor-link__item a {
  font-size: min(1.5972222222vw, 23px);
  line-height: 1.5652173913;
}

.c-page-anchor-link--carrier .c-page-anchor-link__item--lh a {
  line-height: 1;
}

.c-page-anchor-link__item a:before {
  width: min(8.3333333333vw, 120px);
  height: min(4.7916666667vw, 69px);
  top: min(1.1111111111vw, 16px);
  left: max(-1.9444444444vw, -28px);
}

.p-page-carrier {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  gap: 1.9444444444vw;
  position: relative;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  background-color: #FFFFFF;
  padding-inline: 2.0833333333vw;
}

.p-page-carrier__cards {
  margin-top: 4.8611111111vw;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 0.8333333333vw 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.8333333333vw;
  max-width: 38.8888888889vw;
  height: 55.5555555556vw;
  padding-bottom: 6.9444444444vw;
  position: -webkit-sticky;
  position: sticky;
  top: 5.5555555556vw;
  right: 0;
  overflow: auto;
}
.p-page-carrier__card {
  overflow: hidden;
  height: 12.1527777778vw;
}

.p-page-carrier__card-body {
  display: block;
  padding: 0.8333333333vw 0.8333333333vw;
  background: url(../img/carrier/card-bg.webp) center center/contain no-repeat;
  height: 100%;
}

.p-page-carrier__card-title {
  font-family: "Noto Serif JP", serif;
  font-size: 1.1111111111vw;
  font-weight: 900;
  line-height: 1.4375;
  letter-spacing: -0.05em;
}

.p-page-carrier__card-salary {
  font-size: 0.9027777778vw;
  font-weight: 900;
  line-height: 1.4615384615;
}

.p-page-carrier__card-salary-icon {
  display: inline-block;
  margin-right: 0.2777777778vw;
  color: #CCB67C;
  font-size: 1.1111111111vw;
}

.p-page-carrier__card-divider {
  margin-top: 0.1388888889vw;
  border-top: 2px solid #1A1411;
  position: relative;
}
.p-page-carrier__card-divider::after {
  content: "";
  display: block;
  border-top: 2px solid #1A1411;
  margin-top: 0.1388888889vw;
}

.p-page-carrier__card-details {
  margin-top: 0.1388888889vw;
}

.p-page-carrier__card-detail-title {
  font-size: 0.9027777778vw;
  font-weight: 700;
  line-height: 1.5384615385;
}

.p-page-carrier__card-detail-desc {
  font-size: 0.9027777778vw;
  font-weight: 500;
  line-height: 1.5384615385;
}

.p-page-carrier__card-summary {
  margin-top: 0.5555555556vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 1.3888888889vw;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.p-page-carrier__card-summary-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4166666667vw;
}

.p-page-carrier__card-summary-label {
  font-size: 0.8333333333vw;
  font-weight: 700;
  color: #1A1411;
}

.p-page-carrier__card-summary-text {
  font-size: 0.8333333333vw;
  font-weight: 500;
  color: #1A1411;
}

.p-page-carrier::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 66.6666666667vw;
  background: url(../img/office/office-tour_bg.webp) no-repeat center center/cover;
  z-index: -1;
}

.p-page-carrier__inner {
  margin-inline: auto;
  max-width: 100vw;
}

.p-page-carrier__items {
  margin-top: 9.4444444444vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 1.5972222222vw 4.1666666667vw;
  max-width: 74.7222222222vw;
  margin-inline: auto;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-bottom: 10.4166666667vw;
}

.p-page-carrier__contents {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  position: relative;
  margin-top: 5.5555555556vw;
  gap: 4.375vw;
}

.p-page-carrier__content {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}

.p-new-graduate-requirements--carrier .p-new-graduate-requirements__items {
  padding: 1.1111111111vw 1.6666666667vw 1.1111111111vw;
  max-width: 54.4444444444vw;
}

.p-new-graduate-requirements--carrier .p-new-graduate-requirements__item:last-child {
  border-bottom: none;
}

.p-new-graduate-requirements--carrier .p-new-graduate-requirements__term {
  width: 13.8888888889vw;
  font-size: 1.6666666667vw;
  font-weight: 700;
  line-height: 1.4583333333;
  letter-spacing: 0;
}

.p-new-graduate-requirements--carrier .p-new-graduate-requirements__desc {
  width: 35vw;
  font-size: 1.1111111111vw;
  font-weight: 400;
  line-height: 1.625;
  letter-spacing: 0;
}

.p-new-graduate-requirements--carrier .p-new-graduate-requirements__dlist {
  margin-top: 0.1388888889vw;
}

.p-new-graduate-requirements--carrier .p-new-graduate-requirements__item-title {
  font-family: "Noto Serif JP", serif;
  font-size: 2.6388888889vw;
  font-weight: 900;
  line-height: 1.4473684211;
  letter-spacing: 0;
  padding-bottom: 0.9722222222vw;
  border-bottom: 1px solid #707070;
  position: relative;
}
.p-new-graduate-requirements--carrier .p-new-graduate-requirements__item-title::after {
  content: "";
  position: absolute;
  bottom: -0.2777777778vw;
  left: 0;
  width: 100%;
  border-bottom: 1px solid #707070;
}

.p-new-graduate-requirements__item-category {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6944444444vw;
  padding: 1.6666666667vw 0.5555555556vw;
  border-bottom: 1px solid #1A1411;
}

.p-new-graduate-requirements__item-category-item {
  font-size: 1.1111111111vw;
  font-weight: 700;
  line-height: 1.5;
  color: #1A1411;
  gap: 0.2777777778vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-new-graduate-requirements__item-category-item::before {
  content: "";
  display: block;
  width: 1.1111111111vw;
  height: 1.1111111111vw;
  display: block;
  -webkit-transform: translateY(0.1388888889vw);
          transform: translateY(0.1388888889vw);
  background: url(../img/common/human.svg) no-repeat center center/contain;
}

.p-new-graduate-requirements__item-category-item:nth-child(2)::before {
  content: "";
  background: url(../img/common/cash.svg) no-repeat center center/contain;
}

.p-new-graduate-requirements__item-category-item:nth-child(3)::before {
  content: "";
  background: url(../img/common/time.svg) no-repeat center center/contain;
}

.p-new-graduate-requirements__btn--carrier {
  margin-top: 1.6666666667vw;
}

.p-new-graduate-requirements__btn--carrier .p-new-graduate-entry__btn {
  max-width: 22.2222222222vw;
  margin-inline: auto;
  min-width: initial;
  line-height: 3;
}

.p-new-graduate-requirements__btn--carrier .p-new-graduate-entry__btn::before {
  right: 1.1111111111vw;
}

/* ================================================================================
404ページ
================================================================================ */
.c-page-head--notfound .c-page-head__subtitle--bottom {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.c-page-head--notfound .c-page-head__subtitle--bottom span {
  font-size: 1.6666666667vw;
  line-height: 1.25;
  letter-spacing: -0.05em;
  font-weight: 700;
}

.c-page-head__title-img.c-page-head__title-img--notfound {
  aspect-ratio: 204/102;
  max-width: 14.1666666667vw;
}

.p-page-404 {
  padding-top: 14.1666666667vw;
  padding-bottom: 8.3333333333vw;
  background-color: #f8f6f2;
}

.p-page-404__inner {
  max-width: 66.6666666667vw;
  margin-inline: auto;
  padding: 0 2.7777777778vw;
}

.p-page-404__message {
  text-align: center;
  margin-top: 6.6666666667vw;
}

.p-page-404__headline {
  font-family: "Noto Serif JP", serif;
  font-size: 3.3333333333vw;
  font-weight: 700;
  line-height: 1.4166666667;
  letter-spacing: -0.02em;
  margin-bottom: 2.2222222222vw;
}

.p-page-404__lead,
.p-page-404__description {
  font-size: 1.1111111111vw;
  line-height: 1.75;
  letter-spacing: 0.02em;
  margin-inline: auto;
  max-width: 47.2222222222vw;
}

.p-page-404__description {
  margin-top: 1.1111111111vw;
}

.p-page-404__actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.6666666667vw;
  margin-top: 3.8888888889vw;
}

.p-page-404__btn {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  min-width: 18.0555555556vw;
  padding: 1.25vw 2.7777777778vw;
  border: 1px solid #1A1411;
  font-weight: 600;
  font-size: 1.1111111111vw;
  letter-spacing: 0.08em;
  text-align: center;
  background-color: transparent;
  -webkit-transition: background-color 0.3s ease, color 0.3s ease;
  transition: background-color 0.3s ease, color 0.3s ease;
}
.p-page-404__btn:hover {
  background-color: #1A1411;
  color: #FFFFFF;
}

a.p-page-404__btn--primary {
  background-color: #1A1411;
  color: #FFFFFF;
}
a.p-page-404__btn--primary:hover {
  background-color: transparent;
  color: #1A1411;
}

.p-page-404__suggest {
  margin-top: 6.6666666667vw;
  text-align: center;
}

.p-page-404__suggest-title {
  font-size: 1.3888888889vw;
  letter-spacing: 0.15em;
  font-weight: 700;
  margin-bottom: 2.2222222222vw;
}

.p-page-404__links {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2.7777777778vw;
}

.p-page-404__link-item a {
  position: relative;
  font-family: "Noto Serif JP", serif;
  font-size: 1.3888888889vw;
  letter-spacing: 0.1em;
  font-weight: 600;
  padding-bottom: 0.5555555556vw;
}
.p-page-404__link-item a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 0.0694444444vw;
  background-color: #1A1411;
  -webkit-transition: -webkit-transform 0.3s ease-in-out;
  transition: -webkit-transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transform-origin: left;
          transform-origin: left;
}
.p-page-404__link-item a:hover::after {
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
}

.c-loop-title--notfound .c-loop-title__title {
  letter-spacing: 0.15em;
}

.c-loop-title--notfound .c-loop-title__imgs img {
  -webkit-filter: grayscale(1);
          filter: grayscale(1);
  opacity: 0.5;
}

body:has(.p-page-404) {
  background-color: #f8f6f2;
  overflow-x: hidden;
  overflow-y: scroll;
}

/* ================================================================================
 先輩社員の志望動機
================================================================================ */
body:has(.p-page-reason) {
  overflow-x: hidden;
  overflow-y: scroll;
}

.c-page-head__title-img.c-page-head__title-img--reason {
  aspect-ratio: 594/102;
  max-width: 41.25vw;
}

.c-loop-title--reason .c-loop-title__imgs img {
  width: 228.7708333333vw;
  aspect-ratio: 3294.3/157.68;
}

.p-page-reason {
  padding-top: 10.9027777778vw;
  position: relative;
}

.p-page-reason__inner {
  margin-inline: auto;
  max-width: 100vw;
}
.p-reason-anchor {
  margin: 6.25vw auto 15.9722222222vw;
  width: 94.4444444444vw;
}

.p-reason-anchor__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.p-reason-anchor__item {
  width: 21.1805555556vw;
}
.p-reason-anchor__item a {
  position: relative;
  display: block;
}
.p-reason-anchor__item a img {
  width: 100%;
}
.p-reason-anchor__item a::after {
  content: "";
  display: block;
  position: absolute;
  left: 1.5277777778vw;
  bottom: -1.5277777778vw;
  width: 0.5555555556vw;
  height: 4.3055555556vw;
  background: url("../img/reason/anchor-arrow.png") 0 0/100% 100% no-repeat;
  -webkit-transition: -webkit-transform 0.2s ease-out;
  transition: -webkit-transform 0.2s ease-out;
  transition: transform 0.2s ease-out;
  transition: transform 0.2s ease-out, -webkit-transform 0.2s ease-out;
}
.p-reason-anchor__item a:hover::after {
  -webkit-transform: translateY(5px);
          transform: translateY(5px);
}

.p-reason-type {
  background-color: #F2F2F2;
}
.p-reason-type::after {
  content: "";
  display: block;
  width: 100%;
  height: 13.8888888889vw;
  background: url("../img/reason/type-arrow.png") center center/1.8055555556vw 8.3333333333vw no-repeat black;
}
.p-reason-type#TYPE04::after {
  content: none;
}

.p-reason-type__images {
  position: relative;
}
.p-reason-type__images picture {
  display: block;
  width: 100%;
  opacity: 0;
  -webkit-transition: opacity 1s ease-out;
  transition: opacity 1s ease-out;
}
.p-reason-type__images picture img {
  width: 100%;
}
.p-reason-type__images picture:nth-of-type(2) {
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}
.p-reason-type__images picture:nth-of-type(3) {
  -webkit-transition-delay: 1.6s;
          transition-delay: 1.6s;
}
.p-reason-type__images picture:nth-of-type(n + 2) {
  position: absolute;
  top: 0;
  left: 0;
}
.p-reason-type__images.-show picture {
  opacity: 1;
}
.p-reason-type__persons {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 2px;
  background-color: black;
  padding: 2px;
  overflow: hidden;
}
.p-reason-type__persons > * {
  opacity: 0;
  -webkit-transition: opacity 0.5s ease-out;
  transition: opacity 0.5s ease-out;
  pointer-events: none;
}
.p-reason-type__persons > *:nth-of-type(2) {
  -webkit-transition-delay: 0.1s;
          transition-delay: 0.1s;
}
.p-reason-type__persons > *:nth-of-type(3) {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
.p-reason-type__persons > *:nth-of-type(4) {
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}
.p-reason-type__persons.-show > * {
  opacity: 1;
  pointer-events: auto;
}

.p-reason-type__person {
  display: block;
  position: relative;
  width: 100%;
  font-weight: 500;
  line-height: 0;
  background-color: white;
}
.p-reason-type__person picture {
  display: block;
  background-color: black;
}
.p-reason-type__person picture img {
  position: relative;
  display: block;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
.p-reason-type__person .e-year {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  width: 5.2777777778vw;
  height: 4.0277777778vw;
  font-size: 0.9722222222vw;
  text-align: center;
  line-height: 1.32;
  color: white;
}
.p-reason-type__person .e-department {
  position: absolute;
  z-index: 1;
  left: 1.3888888889vw;
  bottom: 1.25vw;
  font-size: 0.9027777778vw;
  color: white;
}
.p-reason-type__person:hover img {
  opacity: 0.7;
}

.p-reason-modal {
  display: none;
  visibility: hidden;
  opacity: 0;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.p-reason-modal__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
}

.p-reason-modal__close {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  z-index: 10;
  top: 1.0416666667vw;
  right: 1.0416666667vw;
  border: solid 1px black;
  border-radius: 50%;
  width: 2.7777777778vw;
  height: 2.7777777778vw;
  cursor: pointer;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.p-reason-modal__close::before, .p-reason-modal__close::after {
  content: "";
  display: block;
  position: absolute;
  width: 50%;
  height: 3px;
  margin: auto;
  background-color: black;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.p-reason-modal__close::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.p-reason-modal__close:hover {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.p-reason-modal__content {
  position: relative;
  margin: auto;
  width: 34.7222222222vw;
  height: auto;
  background: url("../img/reason/modal_bg.png") center center/cover no-repeat;
}
.p-reason-modal__content .content-container {
  width: 100%;
  height: 100%;
}
.p-reason-modal__content .type-person {
  display: none;
  position: relative;
}
.p-reason-modal__content .type-person .e-year {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 5.2777777778vw;
  height: 4.0277777778vw;
  font-size: 0.9722222222vw;
  text-align: center;
  line-height: 1.32;
  color: white;
  background-color: #CCB67C;
}
.p-reason-modal__content .type-person .e-text {
  padding: 4.8611111111vw 14.5833333333vw 4.8611111111vw 3.8194444444vw;
}
.p-reason-modal__content .type-person .e-text dt {
  margin-bottom: 0.4861111111vw;
  font-size: 1.25vw;
  font-weight: 700;
  white-space: nowrap;
  line-height: 1.5;
}
.p-reason-modal__content .type-person .e-text dd {
  font-size: 0.9722222222vw;
  text-align: justify;
}
.p-reason-modal__content .type-person .e-person {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
}
.p-reason-modal__content .type-person .e-person picture {
  display: block;
  width: 100%;
}
.p-reason-modal__content .type-person .e-person picture img {
  display: block;
  vertical-align: top;
  width: 100%;
}

/* ================================================================================
FUDEALのDNA
================================================================================ */
body:has(.p-page-dna) {
  overflow-x: hidden;
  overflow-y: scroll;
}

main img {
  max-width: none;
  width: 100%;
}

.c-page-head__inner:has(.c-page-head__title-img--work) .c-breadcrumb {
  margin-left: 4.1666666667vw;
}

.c-page-head__title-img.c-page-head__title-img--dna {
  aspect-ratio: 235/102;
  max-width: 16.3194444444vw;
}

.p-page-work__inner {
  margin-inline: auto;
  max-width: 100vw;
}

.p-dna-visual {
  height: 100vh;
  overflow: hidden;
  background: url(../img/dna/dna_bg.webp) no-repeat center center/cover;
}
.p-dna-visual__bg {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 12.8472222222vw);
  background-color: #2E2E2E;
}
.p-dna-visual__bg span {
  display: block;
  width: 100%;
  height: 100%;
  background: url(../img/dna/visual-bg.webp) no-repeat center center/cover #2E2E2E;
  opacity: 0;
}

.p-dna-visual__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 12.8472222222vw);
}
.p-dna-visual__title picture {
  display: block;
  position: absolute;
  margin: auto;
  overflow: hidden;
  width: 0;
  height: 9.3055555556vw;
  -webkit-transition: 1.2s ease-in-out;
  transition: 1.2s ease-in-out;
  -webkit-transition-property: width, height;
  transition-property: width, height;
}
.p-dna-visual__title picture img {
  width: 84.0277777778vw;
  height: 100%;
}
.p-dna-visual__title.-show picture {
  width: 84.0277777778vw;
}

.p-dna-philosophy {
  position: relative;
  margin-top: 5.5555555556vw;
  margin-bottom: 8.3333333333vw;
}

.p-dna-philosophy__head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-flow: row-reverse;
      -ms-flex-flow: row-reverse;
          flex-flow: row-reverse;
  position: absolute;
  top: 0.6944444444vw;
  right: 6.9444444444vw;
}
.p-dna-philosophy__head > * {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
}
.p-dna-philosophy__head .e-en {
  font-size: 0.9027777778vw;
}
.p-dna-philosophy__head .e-title {
  position: relative;
  margin-right: 0.4166666667vw;
}
.p-dna-philosophy__head .e-title::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  top: 0;
  left: 50%;
  width: 1px;
  height: 100%;
  background-color: black;
}
.p-dna-philosophy__head .e-title span {
  position: relative;
  display: inline-block;
  padding: 0.8em 0;
  background-color: white;
  font-size: 1.6666666667vw;
}
.p-dna-philosophy__head .e-copy {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  padding-top: 2.7777777778vw;
  margin-right: 1.3888888889vw;
}
.p-dna-philosophy__head .e-copy span {
  font-size: 5.5555555556vw;
  line-height: 1.06;
  white-space: nowrap;
}

.p-dna-philosophy__body-image p {
  margin-top: 0.5555555556vw;
  text-align: right;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  font-size: 0.9722222222vw;
}

.p-dna-philosophy__body-summary {
  position: relative;
  font-family: "Noto Serif JP", serif;
}
.p-dna-philosophy__body-summary::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: 2.2916666667vw;
  left: 1.3888888889vw;
  width: 4.5833333333vw;
  height: 10.3472222222vw;
  background: url("../img/dna/philosophy-summary-dot.webp") 0 0/contain no-repeat;
}
.p-dna-philosophy__body-summary .e-num {
  display: block;
  font-weight: 500;
  font-size: 2.7777777778vw;
}
.p-dna-philosophy__body-summary .e-title {
  margin-left: 2.7777777778vw;
  margin-bottom: 1.1111111111vw;
  font-weight: 700;
  font-size: 3.3333333333vw;
  line-height: 1;
  white-space: nowrap;
}
.p-dna-philosophy__body-summary .e-en {
  margin-left: 6.9444444444vw;
  margin-bottom: 0.5555555556vw;
  font-weight: 500;
  font-size: 0.8333333333vw;
  white-space: nowrap;
}
.p-dna-philosophy__body-summary .e-text {
  padding: 0.3472222222vw 0.8333333333vw;
  margin-left: 6.9444444444vw;
  border-left: solid 1px black;
  font-size: 1.1111111111vw;
}

.p-dna-philosophy__body#philosophy-01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 0.6944444444vw;
  width: 58.3333333333vw;
  margin-bottom: 9.0277777778vw;
}
.p-dna-philosophy__body#philosophy-01 .p-dna-philosophy__body-image {
  width: 100%;
}

.p-dna-philosophy__body#philosophy-02 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 88.8888888889vw;
  margin-bottom: 5.5555555556vw;
}
.p-dna-philosophy__body#philosophy-02 .p-dna-philosophy__body-summary {
  width: 51.7361111111vw;
  margin-top: 12vw;
}
.p-dna-philosophy__body#philosophy-02 .p-dna-philosophy__body-image {
  width: 32.2916666667vw;
  margin-top: 2.2916666667vw;
}

.p-dna-philosophy__body#philosophy-03 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-flow: row-reverse;
      -ms-flex-flow: row-reverse;
          flex-flow: row-reverse;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.p-dna-philosophy__body#philosophy-03 .p-dna-philosophy__body-summary {
  margin-left: 7.2916666667vw;
}
.p-dna-philosophy__body#philosophy-03 .p-dna-philosophy__body-image {
  width: 35.4166666667vw;
  margin-top: 12vw;
}

/* ================================================================================
データで見る
企業と社員の成長力
================================================================================ */
body:has(.p-page-data) {
  overflow-x: hidden;
  overflow-y: scroll;
}

.c-page-head--data .c-page-head__inner {
  gap: 2.0138888889vw;
}

.c-page-head__title-img.c-page-head__title-img--data {
  aspect-ratio: 707/102;
  max-width: 49.0972222222vw;
}

.c-page-head--data .c-breadcrumb__item {
  line-height: 1.4285714286;
  text-align: center;
}
.c-page-head--data .c-page-head__subtitle--bottom {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.c-page-head--data .c-page-head__subtitle--bottom span {
  font-size: 1.6666666667vw;
  line-height: 1.25;
  letter-spacing: -0.05em;
  font-weight: 700;
}

.c-loop-title--data .c-loop-title__imgs {
  top: 0;
}
.c-loop-title--data .c-loop-title__imgs img {
  width: 106.2722222222vw;
  aspect-ratio: 1530.32/123.77;
}

.p-page-data {
  position: relative;
}

.p-page-data__inner {
  margin-inline: auto;
  max-width: 100vw;
}
.p-data-visual {
  padding-top: 9.1vw;
  padding-bottom: 6.5vw;
  background: url(../img/data/data-visual_bg.webp) no-repeat center center/cover;
}
.p-data-visual__loop {
  margin-top: -4.1666666667vw;
  margin-bottom: 1.6vw;
}

.p-data-visual__anchor {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: min(4.1666666667vw, 60px);
}
.p-data-visual__anchor a {
  display: block !important;
  position: relative;
  padding-bottom: min(3.1944444444vw, 46px);
  padding-left: min(2.7777777778vw, 40px);
}
.p-data-visual__anchor a::before {
  content: "";
  display: block;
  position: absolute;
  top: min(2.7777777778vw, 40px);
  left: 0;
  width: min(12.0833333333vw, 174px);
  height: min(5.3472222222vw, 77px);
  background: url("../img/data/anchor-dot.png") 0 0/cover no-repeat;
}
.p-data-visual__anchor a::after {
  content: "";
  display: block;
  position: absolute;
  top: min(4.1666666667vw, 60px);
  left: min(1.1111111111vw, 16px);
  width: min(0.6944444444vw, 10px);
  height: min(5.5555555556vw, 80px);
  background: url("../img/data/anchor-arrow.png") 0 0/cover no-repeat;
  -webkit-transition: -webkit-transform 0.2s ease-out;
  transition: -webkit-transform 0.2s ease-out;
  transition: transform 0.2s ease-out;
  transition: transform 0.2s ease-out, -webkit-transform 0.2s ease-out;
}
.p-data-visual__anchor a span {
  position: relative;
  display: block;
  font-family: "Noto Serif JP", serif;
  font-weight: 900;
  font-size: min(3.3333333333vw, 48px);
}
.p-data-visual__anchor a:hover::after {
  -webkit-transform: translateY(8px);
          transform: translateY(8px);
}

.p-data-section {
  overflow: hidden;
  padding-top: 3.4722222222vw;
  padding-bottom: 5.5555555556vw;
}

.p-data-section__head {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 4.1666666667vw;
}

.p-data-section__head-title {
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  font-size: 5.5555555556vw;
}

.p-data-section__head-image {
  position: absolute;
  top: 2.0833333333vw;
  height: 8.3333333333vw;
  margin: 0 auto;
}
.p-data-section__head-image img {
  position: relative;
  display: block;
  width: auto;
  height: 100%;
  margin: 0 auto;
}

.p-data-section__content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 80.5555555556vw;
  margin: 0 auto;
  padding: 1.6666666667vw;
  background: #E5E5E5;
}

.p-data-section__content .data-column {
  position: relative;
  background-color: white;
  overflow: hidden;
}

.p-data-section__content .data-column .column-title {
  font-weight: 800;
  font-size: 1.6666666667vw;
  text-align: center;
}

.p-data-section__content .data-column .chart-title {
  position: absolute;
  top: 2.0833333333vw;
  left: 2.0833333333vw;
}
.p-data-section__content .data-column .chart-title h3 {
  margin-bottom: 0.3em;
  font-weight: 700;
  font-size: 1.6666666667vw;
}
.p-data-section__content .data-column .chart-title .number {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  font-weight: 800;
}
.p-data-section__content .data-column .chart-title .number .number-counter {
  font-size: 5vw;
}
.p-data-section__content .data-column .chart-title .number .number-counter span {
  font-size: 1em !important;
}
.p-data-section__content .data-column .chart-title .number .unit {
  margin-left: 0.2em;
  line-height: 1.2;
  font-size: 2.2222222222vw;
}
.p-data-section__content .data-column .chart-title > span {
  display: block;
  margin-top: 0.8em;
  font-size: 1.1111111111vw;
}

.p-data-section__content .data-column .chart-canvas {
  width: 37.7777777778vw;
  height: 38.1944444444vw;
  padding: 2.0833333333vw 0.6944444444vw 0;
}
.p-data-section__content .data-column .chart-canvas canvas {
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.p-data-section__content .data-column .chart-text {
  position: absolute;
  left: 0;
  bottom: 1.3888888889vw;
  width: 100%;
  font-size: 0.9722222222vw;
  text-align: center;
}

.p-data-section__content .data-column .number-counter {
  font-family: "Roboto", sans-serif;
  font-weight: 800;
  letter-spacing: -0.05em;
  line-height: 0.75;
  text-align: right;
}
.p-data-section__content .data-column .number-counter > span {
  font-size: 0.8em;
}

.p-data-section__content .data-column .chart-pie svg {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
}
.p-data-section__content .data-column .chart-pie svg circle {
  fill: none;
  stroke: white;
  stroke-width: 100px;
  stroke-dasharray: 314, 314;
  stroke-dashoffset: 0;
}

.p-data-modal {
  display: none;
  visibility: hidden;
  opacity: 0;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.p-data-modal__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
}

.p-data-modal__close {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  z-index: 10;
  top: 1.0416666667vw;
  right: 1.0416666667vw;
  border: solid 1px black;
  border-radius: 50%;
  width: 2.7777777778vw;
  height: 2.7777777778vw;
  cursor: pointer;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.p-data-modal__close::before, .p-data-modal__close::after {
  content: "";
  display: block;
  position: absolute;
  width: 50%;
  height: 3px;
  margin: auto;
  background-color: black;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.p-data-modal__close::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.p-data-modal__close:hover {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.p-data-modal__content {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 51.3888888889vw;
  height: 86%;
  padding: 4.1666666667vw 4.1666666667vw;
  background-color: white;
}
.p-data-modal__content .content-container {
  width: 100%;
  height: 100%;
  overflow-y: scroll;
}
.p-data-modal__content .content-container::-webkit-scrollbar {
  width: 6px;
}
.p-data-modal__content .content-container::-webkit-scrollbar-track {
  margin: 0 2px;
  background: #CECECE;
  border-radius: 0;
}
.p-data-modal__content .content-container::-webkit-scrollbar-thumb {
  border-radius: 0;
  background: #676767;
}

.p-data-result-list .only-pc-modal-br,
.p-data-result-list .only-sp-modal-br {
  display: none;
}
.p-data-result-list .date {
  margin-bottom: 0.3em;
  font-size: 1.3888888889vw;
  font-weight: 700;
}
.p-data-result-list .date span {
  font-size: 0.9027777778vw;
  font-weight: 400;
}
.p-data-result-list .item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 0.2777777778vw;
  font-size: 1.1111111111vw;
  font-weight: 700;
}
.p-data-result-list .item-date {
  padding: 0.1em;
  width: 7.6388888889vw;
  line-height: 1;
  white-space: nowrap;
}
.p-data-result-list .item-name {
  white-space: nowrap;
}
.p-data-result-list .item-label {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: white;
  line-height: 1;
}
.p-data-result-list .item-label span {
  display: block;
  padding: 0 0.1em;
  margin-left: 0.7em;
  line-height: 1.1;
  text-align: center;
}
.p-data-result-list .item-label span.label-zeh {
  background-color: #589779;
}
.p-data-result-list .item-label span.label-series {
  background-color: #CCB67C;
}

#Member {
  background-color: #F4F4F4;
}

#Content1 {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  row-gap: 1.6666666667vw;
  margin-bottom: 5.5555555556vw;
}
#Content1 .data-column {
  width: 37.7777777778vw;
  height: 38.8888888889vw;
}

#Content2 {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  row-gap: 1.6666666667vw;
  margin-bottom: 2.0833333333vw;
}

#Content4 {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  row-gap: 1.6666666667vw;
  background-color: #C3C3C3;
}
#Content4 .data-group-1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  height: 28.1944444444vw;
}
#Content4 .data-group-2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  row-gap: 1.6666666667vw;
  width: 23.1944444444vw;
}
#Content4 .data-group-3 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  row-gap: 1.6666666667vw;
  width: 52.3611111111vw;
}

#Content5 {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  row-gap: 1.6666666667vw;
}
#Content5 .data-group-1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  row-gap: 1.6666666667vw;
  width: 39.5833333333vw;
}
#Content5 .data-group-2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  row-gap: 1.6666666667vw;
  width: 35.9722222222vw;
}
#Content5 .data-group-3 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
}

#Data1 .number {
  color: #D63D3C;
}

#Data2 .number {
  color: #5277B4;
}

#Data3 .number {
  color: #D1D159;
}

#Data4 .number {
  color: #44A73C;
}
#Data4 .chart-canvas {
  padding-top: 11.1111111111vw;
}

#Data5 {
  width: 33.6111111111vw;
  height: 28.8194444444vw;
}
#Data5 .e-reluxia-text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #E5E5E5;
  font-weight: 900;
  line-height: 1.277;
  font-size: 2.5vw;
  height: 12.0138888889vw;
}
#Data5 .e-data {
  height: 16.8055555556vw;
  background: url("../img/data/data5-pic.png") center 4.3055555556vw no-repeat;
  background-size: 82.8%;
}
#Data5 .e-data h3 {
  padding-top: 1.5277777778vw;
  font-size: 1.6666666667vw;
  font-weight: 800;
  text-align: center;
}
#Data5 .e-data .number {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 0.2777777778vw;
  margin-top: 1.6666666667vw;
  margin-left: 2.7777777778vw;
}
#Data5 .e-data .number .number-counter {
  width: 11.8055555556vw;
  font-size: 7.9166666667vw;
  color: #C39B42;
}
#Data5 .e-data .number span {
  display: block;
  font-weight: 800;
  font-size: 2.2222222222vw;
}

#Data6 {
  width: 41.9444444444vw;
  height: 28.8194444444vw;
}
#Data6 .e-chart {
  position: absolute;
  top: 0;
  right: 0;
  width: 27.7777777778vw;
  height: 100px;
}
#Data6 .e-chart .chart-text {
  display: block;
  position: absolute;
  top: 1.6666666667vw;
  left: 0;
  width: 26.1111111111vw;
}
#Data6 .e-chart .chart-text picture {
  display: block;
  position: relative;
}
#Data6 .e-chart .chart-pie {
  position: absolute;
  top: 3.4722222222vw;
  right: 7.1527777778vw;
  width: 13.6111111111vw;
  height: 13.6111111111vw;
  overflow: hidden;
}
#Data6 .e-map {
  position: absolute;
  bottom: 0;
  left: 1.6666666667vw;
  width: 21.9444444444vw;
  height: 24.0277777778vw;
  background: url("../img/data/data6-map.png") 0 0/100% no-repeat;
}
#Data6 .e-map .number {
  position: absolute;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  font-weight: 800;
}
#Data6 .e-map span {
  padding-bottom: 0.2em;
  font-size: 2.2222222222vw;
  line-height: 0.75;
}
#Data6 .e-map .number-1 {
  top: 2.6388888889vw;
  color: #D73C3C;
}
#Data6 .e-map .number-1 .number-counter {
  width: 7.3611111111vw;
  font-size: 5vw;
}
#Data6 .e-map .number-2 {
  right: 0.2083333333vw;
  bottom: 1.0416666667vw;
  color: #CCB67C;
}
#Data6 .e-map .number-2 .number-counter {
  font-size: 5vw;
}

#Data7 {
  width: 100%;
  height: 25.2777777778vw;
  padding-top: 0.8333333333vw;
}
#Data7 .e-title {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  height: 5.0694444444vw;
  margin: 0 auto 1.6666666667vw;
  padding: 1.1111111111vw 7.5vw 0;
  background: url("../img/data/data7-crown.png") 0 center/contain no-repeat;
}
#Data7 .e-title h3 {
  border-top: solid 1px black;
  border-bottom: solid 1px black;
  font-weight: 800;
  font-size: 1.9444444444vw;
}
#Data7 .e-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 7.6388888889vw;
}
#Data7 .e-list .item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
}
#Data7 .e-list .item h4 {
  margin-bottom: 0.8333333333vw;
  font-weight: 600;
  font-size: 1.25vw;
}
#Data7 .e-list .item picture {
  position: relative;
  display: block;
  height: 7.2222222222vw;
}
#Data7 .e-list .item picture img {
  width: 100%;
  height: auto;
}
#Data7 .e-list .item .number {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  font-weight: 800;
}
#Data7 .e-list .item .number .number-counter {
  margin-right: 0.05em;
  font-size: 4.4444444444vw;
  color: var(--my-color);
}
#Data7 .e-list .item .number span {
  font-size: 1.6666666667vw;
  line-height: 1.2;
}
#Data7 .e-list .item .number strong {
  display: inline-block;
  margin-right: 0.2em;
  color: var(--my-color);
}
#Data7 .e-list .item .reluxia {
  margin-top: 0.5em;
  padding: 0.2em 0.4em;
  border-radius: 0.2777777778vw;
  background-color: #EFEFEF;
  font-size: 0.9722222222vw;
  font-weight: 700;
}
#Data7 .e-list .item .note {
  margin-top: 0.75em;
  font-size: 0.8333333333vw;
}
#Data7 .e-list .item-1 {
  --my-color: #D73C3C;
}
#Data7 .e-list .item-1 picture {
  width: 6.1111111111vw;
}
#Data7 .e-list .item-2 {
  --my-color: #5277B6;
}
#Data7 .e-list .item-2 picture {
  width: 8.8194444444vw;
}
#Data7 .e-list .item-3 {
  --my-color: #44A73C;
}
#Data7 .e-list .item-3 picture {
  width: 7.4305555556vw;
}
#Data7 .e-list .item-4 {
  --my-color: #E3E35D;
}
#Data7 .e-list .item-4 picture {
  width: 4.5833333333vw;
}

#Data8 {
  width: 36.25vw;
}

#Data9 {
  width: 39.3055555556vw;
  padding: 1.6666666667vw;
}
#Data9 .e-text {
  margin-bottom: 1.3888888889vw;
  text-align: justify;
  font-size: 1.1111111111vw;
}
#Data9 .e-result {
  overflow: hidden;
  height: 27.0833333333vw;
  margin-bottom: 0.6944444444vw;
}
#Data9 .e-more {
  position: relative;
  margin-bottom: 0.6944444444vw;
}
#Data9 .e-more a {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 4.1666666667vw;
  font-weight: 900;
  font-size: 1.25vw;
  color: #CCB67C;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#666666), to(#333333));
  background-image: linear-gradient(to bottom, #666666, #333333);
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
#Data9 .e-more a span {
  display: block;
  position: absolute;
  right: 2.6388888889vw;
  margin: auto;
  font-size: 0.6944444444vw;
}
#Data9 .e-more a:hover {
  opacity: 0.8;
}
#Data9 .e-message {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.2777777778vw;
}
#Data9 .e-message span {
  display: block;
  padding: 0.2em 0.25em 0.25em;
  background-color: black;
  font-weight: 900;
  font-size: 2.7777777778vw;
  color: #CCB67C;
  line-height: 1;
}

#Data10 {
  width: 23.1944444444vw;
  padding-top: 1.6666666667vw;
}
#Data10 .column-title {
  margin-bottom: 2.0833333333vw;
}
#Data10 .e-chart {
  position: relative;
  width: 13.4722222222vw;
  margin: 0 auto 0.4166666667vw;
}
#Data10 .e-data {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2.4305555556vw;
  font-weight: 800;
}
#Data10 .e-data .data {
  font-size: 1.6666666667vw;
}
#Data10 .e-data .data .label {
  margin-bottom: 0.2em;
}
#Data10 .e-data .data-1 {
  color: #707070;
}
#Data10 .e-data .data-2 {
  color: #CCB67C;
}
#Data10 .e-data .number {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
#Data10 .e-data .number .number-counter {
  font-size: 3.4722222222vw;
}
#Data10 .e-data .number > span {
  margin-left: 0.2em;
  line-height: 0.95;
}

#Data11 {
  width: 21.6666666667vw;
  padding-top: 1.6666666667vw;
  padding-left: 1.6666666667vw;
}
#Data11 .column-title {
  margin-bottom: 2.7777777778vw;
}
#Data11 .e-data {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  font-weight: 800;
  margin-bottom: 3.4722222222vw;
}
#Data11 .e-data .data {
  font-size: 1.6666666667vw;
}
#Data11 .e-data .data .label {
  margin-bottom: 0.2em;
}
#Data11 .e-data .data-1 {
  color: #707070;
}
#Data11 .e-data .data-2 {
  color: #CCB67C;
}
#Data11 .e-data .number {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
#Data11 .e-data .number .number-counter {
  font-size: 4.1666666667vw;
}
#Data11 .e-data .number > span {
  margin-left: 0.2em;
  line-height: 0.95;
}
#Data11 .e-data .pic-1 {
  width: 7.0833333333vw;
  margin-left: 2.2916666667vw;
}
#Data11 .e-data .pic-2 {
  width: 5vw;
}

#Data12 {
  width: 29.0277777778vw;
  padding-top: 1.6666666667vw;
}
#Data12 .column-title {
  margin-bottom: 2.4305555556vw;
}
#Data12 .e-chart {
  margin-left: 1.25vw;
}
#Data12 .e-chart .chart-bar {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  height: 3.75vw;
  margin-bottom: 1.3888888889vw;
  font-weight: 800;
}
#Data12 .e-chart .chart-bar .label {
  width: 4.8611111111vw;
  font-size: 1.875vw;
}
#Data12 .e-chart .chart-bar .bar {
  width: 14.9305555556vw;
  height: 100%;
}
#Data12 .e-chart .chart-bar .bar span {
  display: block;
  width: 100%;
  height: 100%;
  background-color: var(--my-color);
}
#Data12 .e-chart .chart-bar .number {
  padding-right: 1em;
  margin-left: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  color: var(--my-color);
}
#Data12 .e-chart .chart-bar .number .number-counter {
  font-size: 2.5694444444vw;
}
#Data12 .e-chart .chart-bar .number > span {
  margin-left: 0.2em;
  line-height: 0.95;
  font-size: 1.3888888889vw;
}
#Data12 .e-chart .chart-bar-1 {
  --my-color: #CE6666;
}
#Data12 .e-chart .chart-bar-2 {
  --my-color: #6D90C6;
}
#Data12 .e-chart .chart-bar-3 {
  --my-color: #707070;
}
#Data12 .e-chart .chart-bar-4 {
  --my-color: #CCB67C;
}

#Data13 {
  height: 34.6527777778vw;
  padding-top: 1.3888888889vw;
}
#Data13 .column-title {
  margin-bottom: 1.3888888889vw;
}
#Data13 .e-chart {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1.3888888889vw;
}
#Data13 .e-chart .pic {
  width: 14.4444444444vw;
  margin-bottom: 0.3472222222vw;
}
#Data13 .e-chart .chart-ratio {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6944444444vw;
  font-weight: 800;
}
#Data13 .e-chart .chart-ratio .data {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
#Data13 .e-chart .chart-ratio .data .label {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 1.1111111111vw;
  letter-spacing: 0.2em;
}
#Data13 .e-chart .chart-ratio .data .number {
  font-size: 3.8888888889vw;
}
#Data13 .e-chart .chart-ratio .data-men {
  color: #5F86C8;
}
#Data13 .e-chart .chart-ratio .data-women {
  color: #D65959;
}
#Data13 .e-chart .chart-ratio .colon {
  font-size: 2.2222222222vw;
}

#Data14 {
  height: 31.9444444444vw;
  padding-top: 1.3888888889vw;
}
#Data14 .column-title {
  margin-bottom: 1.3888888889vw;
}
#Data14 .e-chart {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 0.6944444444vw;
  margin-bottom: 2.0833333333vw;
  font-weight: 800;
}
#Data14 .e-chart .data {
  font-size: 0.8333333333vw;
}
#Data14 .e-chart .data .label {
  margin-bottom: 0.2em;
}
#Data14 .e-chart .data-1 {
  color: #917F51;
}
#Data14 .e-chart .data-2 {
  color: #CCB67C;
}
#Data14 .e-chart .data-3 {
  color: #B7B7B7;
}
#Data14 .e-chart .data-4 {
  color: #707070;
}
#Data14 .e-chart .number {
  position: relative;
  z-index: 2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
#Data14 .e-chart .number .number-counter {
  padding-left: 0.3em;
  font-size: 2.6388888889vw;
}
#Data14 .e-chart .number > span {
  margin-left: 0.2em;
  line-height: 0.95;
}
#Data14 .e-chart .chart {
  position: relative;
  z-index: 0;
  width: 17.5vw;
  margin: -1.3888888889vw auto 0;
  overflow: hidden;
}
#Data14 .e-chart .chart svg {
  top: auto;
  -webkit-transform: translateY(50%) rotate(-180deg);
          transform: translateY(50%) rotate(-180deg);
}

#Data15 {
  height: 28.3333333333vw;
  padding-top: 2.5vw;
  padding-bottom: 4.2666666667vw;
}
#Data15 .column-title {
  margin-bottom: 1.3888888889vw;
}
#Data15 .e-chart {
  position: relative;
  width: 40.4861111111vw;
  margin: 0 auto;
}
#Data15 .e-chart .text {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
#Data15 .e-data {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 3.125vw;
  margin-top: -4.8611111111vw;
  font-weight: 800;
}
#Data15 .e-data .data {
  font-size: 0.8333333333vw;
}
#Data15 .e-data .data .label {
  margin-bottom: 0.6944444444vw;
  font-size: 1.1111111111vw;
}
#Data15 .e-data .data-1 {
  color: #707070;
}
#Data15 .e-data .data-2 {
  color: #CCB67C;
}
#Data15 .e-data .number {
  position: relative;
  z-index: 2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
#Data15 .e-data .number .number-counter {
  padding-left: 0.3em;
  font-size: 4.1666666667vw;
}
#Data15 .e-data .number > span {
  margin-left: 0.2em;
  line-height: 0.95;
  font-size: 1.6666666667vw;
}

#Data16 {
  height: 38.2638888889vw;
  padding-top: 1.6666666667vw;
}
#Data16 .column-title {
  margin-bottom: 1.3888888889vw;
}
#Data16 .e-map {
  position: absolute;
  right: 5.4166666667vw;
  bottom: 2.7777777778vw;
  width: 29.0277777778vw;
}
#Data16 .e-map .data {
  position: absolute;
  font-weight: 800;
}
#Data16 .e-map .data-1 {
  top: 2.6388888889vw;
  left: 13.8888888889vw;
  color: #8C8C8C;
}
#Data16 .e-map .data-2 {
  top: 18.75vw;
  left: 26.9444444444vw;
  color: #AF985D;
}
#Data16 .e-map .data-3 {
  top: 11.5972222222vw;
  left: 14.3055555556vw;
  color: #D6C497;
}
#Data16 .e-map .data-4 {
  top: 24.5138888889vw;
  left: 17.2916666667vw;
  color: #CCB67C;
}
#Data16 .e-map .data-5 {
  top: 15.5555555556vw;
  left: 7.8472222222vw;
  color: #B2B2B2;
}
#Data16 .e-map .data-6 {
  top: 16.3888888889vw;
  left: 0;
  color: #707070;
}
#Data16 .e-map .number {
  position: relative;
  z-index: 2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
#Data16 .e-map .number .number-counter {
  font-size: 2.2222222222vw;
}
#Data16 .e-map .number > span {
  margin-left: 0.2em;
  line-height: 0.95;
  font-size: 1.1111111111vw;
}
#Data16 .e-graduate {
  margin-left: 1.8055555556vw;
}
#Data16 .e-graduate .title {
  font-weight: 700;
  font-size: 1.3888888889vw;
}
#Data16 .e-graduate .list {
  font-weight: 700;
  font-size: 0.9722222222vw;
  line-height: 2;
}
#Data16 .e-graduate .note {
  margin-top: 0.3em;
  font-size: 0.9722222222vw;
}

#Data17 {
  width: 18.9583333333vw;
  height: 16.3194444444vw;
  padding-top: 1.9444444444vw;
}
#Data17 .column-title {
  margin-bottom: 1.9444444444vw;
}
#Data17 .e-data {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.6944444444vw;
  font-weight: 800;
  color: #707070;
}
#Data17 .e-data .data .label {
  margin-top: -0.2777777778vw;
  margin-bottom: 0.2777777778vw;
  font-size: 1.1111111111vw;
}
#Data17 .e-data .number {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
#Data17 .e-data .number .number-counter {
  font-size: 6.6666666667vw;
  padding-top: 1px;
  background-image: linear-gradient(120deg, #CCB67C 45%, #fff 50%, #CCB67C 55%);
  background-size: 500% 100%;
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-animation: text-shine 2s infinite;
          animation: text-shine 2s infinite;
}
#Data17 .e-data .number .number-counter span {
  margin-left: 0.05em;
  letter-spacing: -0.025em;
  font-size: 4.7222222222vw;
}
#Data17 .e-data .number > span {
  margin-left: 0.1em;
  line-height: 0.95;
  font-size: 2.3611111111vw;
  color: #CCB67C;
}
#Data17 .e-data .pic {
  width: 5.9722222222vw;
}
#Data17 .e-data .pic p {
  margin-top: 0.4166666667vw;
  font-size: 0.9027777778vw;
  text-align: center;
}

#Data18 {
  width: 18.9583333333vw;
  height: 16.3194444444vw;
  padding-top: 1.9444444444vw;
}
#Data18 .column-title {
  margin-bottom: 1.9444444444vw;
}
#Data18 .e-data {
  position: relative;
  padding: 0 1.0416666667vw;
  font-weight: 800;
  color: #707070;
}
#Data18 .e-data .data .label {
  margin-top: -0.2777777778vw;
  margin-bottom: 0.8333333333vw;
  font-size: 1.1111111111vw;
}
#Data18 .e-data .number {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
#Data18 .e-data .number .number-counter {
  font-size: 5.5555555556vw;
  padding-top: 1px;
  background-image: linear-gradient(120deg, #CCB67C 45%, #fff 50%, #CCB67C 55%);
  background-size: 500% 100%;
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-animation: text-shine 2s infinite;
          animation: text-shine 2s infinite;
}
#Data18 .e-data .number .number-counter span {
  padding-left: 0.06em;
  letter-spacing: 0;
  font-size: 0.75em;
}
#Data18 .e-data .number > span {
  padding-bottom: 0.1em;
  margin-left: 0.1em;
  line-height: 0.95;
  font-size: 1.6666666667vw;
  color: #CCB67C;
}
#Data18 .e-data .pic {
  position: absolute;
  top: -0.3472222222vw;
  right: 1.0416666667vw;
  width: 5.2777777778vw;
}
#Data18 .e-data .note {
  margin-top: 0.5555555556vw;
  text-align: right;
  font-size: 0.9027777778vw;
  font-weight: 500;
}

#Data19 {
  width: 100%;
  height: 27.6388888889vw;
  padding-top: 2.3611111111vw;
}
#Data19 .column-title {
  margin-bottom: 1.7361111111vw;
}
#Data19 .e-chart {
  margin-left: 2.0833333333vw;
}
#Data19 .e-chart .chart-bar {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  height: 3.3333333333vw;
  margin-bottom: 1.6666666667vw;
}
#Data19 .e-chart .chart-bar .label {
  width: 5.5555555556vw;
  padding-right: 1em;
  font-size: 1.1805555556vw;
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
}
#Data19 .e-chart .chart-bar .bar {
  width: 23.0555555556vw;
  height: 100%;
}
#Data19 .e-chart .chart-bar .bar span {
  display: block;
  width: 100%;
  height: 100%;
  background-color: var(--my-color);
}
#Data19 .e-chart .chart-bar .number {
  padding-right: 1em;
  margin-left: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  color: var(--my-color);
}
#Data19 .e-chart .chart-bar .number .number-counter {
  font-size: 2.5694444444vw;
}
#Data19 .e-chart .chart-bar .number > span {
  margin-left: 0.2em;
  line-height: 0.95;
  font-size: 1.3888888889vw;
}
#Data19 .e-chart .chart-bar-1 {
  --my-color: #D6C497;
}
#Data19 .e-chart .chart-bar-2 {
  --my-color: #CCB67C;
}
#Data19 .e-chart .chart-bar-3 {
  --my-color: #AF985D;
}
#Data19 .e-chart .chart-bar-4 {
  --my-color: #917F51;
}

#Data20 {
  width: 17.1527777778vw;
  height: 11.8055555556vw;
  padding-top: 1.9444444444vw;
}
#Data20 .e-data {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0.6944444444vw;
  padding: 0 0.8333333333vw;
  font-weight: 800;
}
#Data20 .e-data .data .label {
  margin-bottom: 0.9722222222vw;
  font-size: 1.6666666667vw;
}
#Data20 .e-data .number {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
#Data20 .e-data .number .number-counter {
  font-size: 4.4444444444vw;
  padding-top: 1px;
  background-image: linear-gradient(120deg, #CCB67C 45%, #fff 50%, #CCB67C 55%);
  background-size: 500% 100%;
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-animation: text-shine 2s infinite;
          animation: text-shine 2s infinite;
}
#Data20 .e-data .number > span {
  margin-left: 0.1em;
  line-height: 0.95;
  font-size: 2.3611111111vw;
  color: #CCB67C;
}
#Data20 .e-data .pic {
  width: 4.7222222222vw;
  padding-top: 0.5555555556vw;
}
#Data20 .e-data .pic p {
  margin-top: 0.1388888889vw;
  font-size: 1.1111111111vw;
  text-align: center;
  color: #707070;
}

#Data21 {
  width: 17.1527777778vw;
  height: 11.8055555556vw;
  padding-top: 1.9444444444vw;
}
#Data21 .e-data {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0.6944444444vw;
  padding: 0 0.8333333333vw;
  font-weight: 800;
}
#Data21 .e-data .data .label {
  margin-bottom: 0.9722222222vw;
  font-size: 1.6666666667vw;
}
#Data21 .e-data .number {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  color: #707070;
}
#Data21 .e-data .number .number-counter {
  font-size: 4.4444444444vw;
  padding-top: 1px;
}
#Data21 .e-data .number > span {
  margin-left: 0.1em;
  line-height: 0.95;
  font-size: 2.3611111111vw;
}
#Data21 .e-data .pic {
  padding-top: 0.5555555556vw;
  margin-right: 0.5555555556vw;
}
#Data21 .e-data .pic picture {
  display: block;
  width: 2.0833333333vw;
  margin: auto;
}
#Data21 .e-data .pic p {
  margin-top: 0.1388888889vw;
  font-size: 1.1111111111vw;
  text-align: center;
  color: #707070;
}

#Data22 {
  width: 35.9722222222vw;
  height: 32.0833333333vw;
  padding-top: 1.7361111111vw;
}
#Data22 .column-title {
  margin-bottom: 1.25vw;
}
#Data22 .e-chart {
  padding-left: 1.3888888889vw;
}
#Data22 .e-chart .chart-pie {
  position: relative;
  width: 26.1111111111vw;
  margin: 0 auto;
}
#Data22 .e-chart .chart-pie svg {
  margin-left: 0.3472222222vw;
}
#Data22 .e-chart .chart-center {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  top: 15vw;
  left: 13.1944444444vw;
  width: 10.4166666667vw;
  font-weight: 800;
  text-align: center;
}
#Data22 .e-chart .chart-center .label {
  margin-bottom: 0.1388888889vw;
  font-size: 1.1111111111vw;
}
#Data22 .e-chart .chart-center .number .number-counter {
  font-size: 4.7222222222vw;
}
#Data22 .e-chart .chart-center .number > span {
  padding-bottom: 0.1388888889vw;
  padding-left: 0.3472222222vw;
  line-height: 1.1;
  font-size: 1.25vw;
}
#Data22 .e-chart .data {
  position: absolute;
  font-size: 0.9722222222vw;
  font-weight: 800;
}
#Data22 .e-chart .data .label {
  margin-bottom: 0.3em;
}
#Data22 .e-chart .data-1 {
  top: 13.3333333333vw;
  left: 24.3055555556vw;
  color: white;
}
#Data22 .e-chart .data-1 .number .number-counter {
  font-size: 3.2638888889vw;
}
#Data22 .e-chart .data-2 {
  top: 23.8888888889vw;
  left: 2.7777777778vw;
}
#Data22 .e-chart .data-2 .number {
  color: #707070;
}
#Data22 .e-chart .data-2 .number .number-counter {
  font-size: 4.1666666667vw;
}
#Data22 .e-chart .data-3 {
  top: 11.8055555556vw;
  left: 1.8055555556vw;
}
#Data22 .e-chart .data-3 .number {
  color: #AAA5A5;
}
#Data22 .e-chart .data-3 .number .number-counter {
  font-size: 2.9166666667vw;
}
#Data22 .e-chart .data-4 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5em;
  top: 7.6388888889vw;
  left: 4.4444444444vw;
}
#Data22 .e-chart .data-4 .number {
  color: #B2B2B2;
}
#Data22 .e-chart .data-4 .number .number-counter {
  font-size: 2.2222222222vw;
}
#Data22 .e-chart .number {
  position: relative;
  z-index: 2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
#Data22 .e-chart .number .number-counter {
  font-size: 2.6388888889vw;
}
#Data22 .e-chart .number > span {
  margin-left: 0.2em;
  line-height: 0.95;
}
#Data22 .e-note {
  position: absolute;
  right: 1.3888888889vw;
  color: #707070;
  font-size: 0.9027777778vw;
  font-weight: 700;
}

#Data23 {
  width: 52.3611111111vw;
  height: 16.6666666667vw;
  padding-top: 1.7361111111vw;
}
#Data23 .column-title {
  margin-bottom: 3.8194444444vw;
}
#Data23 .e-chart {
  position: relative;
  width: 47.7777777778vw;
  margin: 0 auto;
}
#Data23 .e-chart .age-20 {
  --my-color: #3B9F1D;
}
#Data23 .e-chart .age-30 {
  --my-color: #7DC467;
}
#Data23 .e-chart .age-40 {
  --my-color: #707070;
}
#Data23 .e-chart .age-50 {
  --my-color: #AAA5A5;
}
#Data23 .e-chart .chart-bar {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 3.4722222222vw;
}
#Data23 .e-chart .chart-bar .bar {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  width: 25%;
  background-color: var(--my-color);
}
#Data23 .e-chart .chart-bar .bar span {
  display: block;
  position: absolute;
  left: 0;
  width: 100%;
  font-weight: 800;
  color: white;
  white-space: nowrap;
  text-align: center;
}
#Data23 .e-chart .chart-bar .mask {
  display: block;
  position: absolute;
  top: -3%;
  left: -1%;
  width: 102%;
  height: 106%;
  background-color: white;
}
#Data23 .e-chart .data {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  font-weight: 800;
}
#Data23 .e-chart .data .number {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.25em;
  color: var(--my-color);
}
#Data23 .e-chart .data .number .number-counter {
  font-size: 2.6388888889vw;
}
#Data23 .e-chart .data .number > span {
  font-size: 1.3888888889vw;
}
#Data23 .e-chart .data > span {
  font-size: 1.1111111111vw;
}
#Data23 .e-chart .data-1 {
  top: 4.4444444444vw;
  left: 1.9444444444vw;
}
#Data23 .e-chart .data-2 {
  bottom: 4.4444444444vw;
  left: 5.1388888889vw;
}
#Data23 .e-chart .data-3 {
  top: 4.4444444444vw;
  left: 26.3888888889vw;
}
#Data23 .e-chart .data-4 {
  bottom: 4.4444444444vw;
  left: 40.9722222222vw;
}

#Data24 {
  width: 23.1944444444vw;
  height: 16.6666666667vw;
  padding-top: 1.0416666667vw;
}
#Data24 .column-title {
  margin-left: 1.7361111111vw;
  margin-bottom: 0.9722222222vw;
  font-size: 1.6666666667vw;
  line-height: 2.4305555556vw;
  text-align: left;
}
#Data24 .e-data {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0.6944444444vw;
  padding: 0 1.8055555556vw;
  font-weight: 800;
}
#Data24 .e-data .number {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
#Data24 .e-data .number .number-counter {
  font-size: 10.5555555556vw;
  padding-top: 1px;
  padding-right: 1px;
  background-image: linear-gradient(120deg, #CCB67C 45%, #fff 50%, #CCB67C 55%);
  background-size: 500% 100%;
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-animation: text-shine 2s infinite;
          animation: text-shine 2s infinite;
}
#Data24 .e-data .number > span {
  margin-left: 0.15em;
  line-height: 1.2;
  font-size: 3.8194444444vw;
  padding-top: 1px;
  background-image: linear-gradient(120deg, #CCB67C 45%, #fff 50%, #CCB67C 55%);
  background-size: 500% 100%;
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-animation: text-shine 2s infinite;
          animation: text-shine 2s infinite;
}
#Data24 .e-data .pic {
  width: 8.5416666667vw;
  padding-bottom: 0.2777777778vw;
}

@-webkit-keyframes text-shine {
  0% {
    background-position: 100% 50%;
  }
  80% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

@keyframes text-shine {
  0% {
    background-position: 100% 50%;
  }
  80% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
/* ================================================================================
personページ
================================================================================ */

.c-page-head__inner:has(.c-page-head__title-img--person) .c-breadcrumb {
  margin-left: min(4.1666666667vw, 60px);
}

.c-page-head__title-img.c-page-head__title-img--person {
  aspect-ratio: 477/102;
  max-width: min(33.125vw, 477px);
}

.p-page-person {
  padding-top: min(9.7222222222vw, 140px);
  position: relative;
}

.p-page-person__inner {
  margin-inline: auto;
  max-width: min(100vw, 1440px);
}

.p-page-person__bg {
  background: url(../img/person/person_bg.webp) no-repeat center center/cover;
}

.p-page-person__lead {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-inline: auto;
  margin-top: min(2.7777777778vw, 40px);
  max-width: min(69.4444444444vw, 1000px);
  font-size: min(1.3888888889vw, 20px);
  line-height: 2;
  font-weight: 500;
}

.p-page-person__lead__left {
  width: 54%;
  padding: min(0.6944444444vw, 10px) min(1.3888888889vw, 20px);
  border-left: solid 1px #1A1411;
}

.p-page-person__lead__text {
  font-size: min(1.3888888889vw, 20px);
  line-height: 1.8;
}

.p-page-person__lead__right {
  width: 46%;
  padding: min(0.6944444444vw, 10px) min(1.3888888889vw, 20px);
  border-left: solid 1px #1A1411;
}

.p-page-person__categories {
  max-width: min(76.3888888889vw, 1100px);
  margin-inline: auto;
  margin-top: min(2.7777777778vw, 40px);
  margin-bottom: min(10vw, 144px);
}

.p-page-person__categories__head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-bottom: solid 1px #1A1411;
  padding: 0 min(3.4722222222vw, 50px) min(0.2083333333vw, 3px) min(1.3888888889vw, 20px);
}

.p-page-person__categories__title {
  font-size: min(2.0833333333vw, 30px);
  line-height: 1.5;
  font-weight: 500;
  font-family: "Roboto", sans-serif;
}

.p-page-person__categories__text {
  font-size: min(1.3888888889vw, 20px);
  line-height: 2;
  font-weight: 500;
  position: relative;
}
.p-page-person__categories__text::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: max(-1.3888888889vw, -20px);
  width: min(0.6944444444vw, 10px);
  height: min(0.6944444444vw, 10px);
  background-color: #1A1411;
}

.p-page-person__categories__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-column-gap: min(2.2222222222vw, 32px);
     -moz-column-gap: min(2.2222222222vw, 32px);
          column-gap: min(2.2222222222vw, 32px);
  row-gap: 0;
  padding: min(1.1111111111vw, 16px) min(2.0833333333vw, 30px) 0 min(3.4722222222vw, 50px);
}

.p-page-person__categories__link {
  opacity: 0.5;
  display: inline-block;
  font-size: min(1.3888888889vw, 20px);
  line-height: 2;
  font-weight: 500;
  text-align: center;
  position: relative;
  padding-left: min(1.1111111111vw, 16px);
}
.p-page-person__categories__link::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  width: min(0.6944444444vw, 10px);
  height: min(0.6944444444vw, 10px);
  background-color: #E23130;
}
.p-page-person__categories__link:hover {
  opacity: 1;
}
.p-page-person__categories__link.is-current {
  opacity: 1;
}
.p-page-person__categories__link.sales::before {
  background-color: #E23130;
}
.p-page-person__categories__link.sales-support::before {
  background-color: #24D7F7;
}
.p-page-person__categories__link.dev-purchase::before {
  background-color: #2BAA05;
}
.p-page-person__categories__link.dev-build::before {
  background-color: #EFC825;
}
.p-page-person__categories__link.house-studio::before {
  background-color: #437EDB;
}
.p-page-person__categories__link.lease-sales::before {
  background-color: #F49A21;
}
.p-page-person__categories__link.property-management::before {
  background-color: #CA77E7;
}
.p-page-person__categories__link.building-management::before {
  background-color: #A7E222;
}
.p-page-person__categories__link.contract-management::before {
  background-color: #B99A81;
}
.p-page-person__categories__link.hr-pr::before {
  background-color: #D594BE;
}
.p-page-person__categories__link.accounting-finance::before {
  background-color: #BAD8E5;
}
.p-page-person__categories__link.it-systems::before {
  background-color: #A890DE;
}
.p-page-person__categories__link.career::before {
  background-color: #707070;
}
.p-page-person__categories__link.new-graduate::before {
  background-color: #CCB67C;
}

.p-page-person__body {
  max-width: min(79.1666666667vw, 1140px);
  margin-inline: auto;
  padding-bottom: min(5.5555555556vw, 80px);
}

.p-page-person__body__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: min(1.1111111111vw, 16px);
}

.p-page-person__body__item {
  width: min(16.8055555556vw, 242px);
  position: relative;
}

.p-page-person__body__cat {
  position: absolute;
  width: min(3.8888888889vw, 56px);
  height: min(3.8888888889vw, 56px);
  background-color: #CCB67C;
  color: #FFFFFF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  justify-content: center;
  font-size: min(0.9722222222vw, 14px);
  line-height: 1.2857142857;
  font-weight: 500;
  text-align: center;
  z-index: 2;
}
.p-page-person__body__cat:hover {
  opacity: 1;
}
.p-page-person__body__cat.career {
  background-color: #707070;
  font-size: min(0.9027777778vw, 13px);
}
.p-page-person__body__cat.new-graduate {
  background-color: #CCB67C;
  padding: 0 min(0.6944444444vw, 10px);
}

.p-page-person__body__link {
  display: block;
  width: 100%;
  height: auto;
}

.p-page-person__recommend {
  margin-inline: auto;
  max-width: min(100vw, 1440px);
  padding: min(4.4444444444vw, 64px) min(2.7777777778vw, 40px) min(2.2222222222vw, 32px);
}

.p-page-person__recommend__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-page-person__recommend__item {
  width: 40.5%;
  height: min(19.0972222222vw, 275px);
}
.p-page-person__recommend__item img {
  height: 100%;
}

.p-page-person__recommend__link {
  display: block;
  position: relative;
  height: 100%;
}
.p-page-person__recommend__link::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(26, 20, 17, 0.5);
  opacity: 1;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  pointer-events: none;
}
.p-page-person__recommend__link::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: min(2.0833333333vw, 30px);
  background: -webkit-gradient(linear, left top, right top, from(#FBE68A), color-stop(60%, #EBE9A3), to(#C39B42));
  background: linear-gradient(to right, #FBE68A 0%, #EBE9A3 60%, #C39B42 100%);
  -webkit-transition: width 0.3s ease;
  transition: width 0.3s ease;
  z-index: 2;
}
.p-page-person__recommend__link:hover {
  opacity: 1;
}
.p-page-person__recommend__link:hover::after {
  opacity: 0;
}
.p-page-person__recommend__link:hover::before {
  width: 100%;
}

.p-page-person__recommend__title {
  font-size: min(2.7777777778vw, 40px);
  line-height: 1.6666666667;
  font-weight: 700;
  letter-spacing: -0.05em;
  text-align: center;
  margin-bottom: min(0.8333333333vw, 12px);
}

.p-page-person__recommend__link__text {
  position: absolute;
  bottom: min(5.5555555556vw, 80px);
  left: min(5.1388888889vw, 74px);
  color: #ffffff;
  z-index: 1;
}
.p-page-person__recommend__link__text-lg {
  font-size: min(2.7777777778vw, 40px);
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1.375;
}
.p-page-person__recommend__link__text-sm {
  font-size: min(1.8055555556vw, 26px);
  line-height: 1.5384615385;
  letter-spacing: 0.05em;
  font-weight: 700;
  font-family: "halcom", sans-serif;
  border-bottom: solid 1px #ffffff;
  display: inline-block;
  position: relative;
}
.p-page-person__recommend__link__text-sm:before {
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: min(0.6944444444vw, 10px) 0 min(0.6944444444vw, 10px) min(1.0416666667vw, 15px);
  border-color: transparent transparent transparent #ffffff;
  position: absolute;
  top: 60%;
  right: max(-2.0833333333vw, -30px);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

/* ================================================================================
personページ
================================================================================ */

.p-page-person-detail__fv {
  position: relative;
  min-height: 63.8888888889vw;
  background: url(../img/person-detail/fv_bg.webp) no-repeat center center/cover;
}

.p-page-person-detail__fv__left {
  padding-top: 13.8888888889vw;
}

.p-page-person-detail__fv__cat {
  display: inline-block;
  font-size: 1.0416666667vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 500;
  background-color: #FFFFFF;
  padding: 0.6944444444vw 3.125vw;
}

.p-page-person-detail__fv__box {
  margin-left: 6.1111111111vw;
  margin-top: 2.2916666667vw;
  width: 47.2222222222vw;
}

.p-page-person-detail__fv__title {
  font-size: 4.4444444444vw;
  line-height: 1.03125;
  letter-spacing: -0.05em;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
}
.p-page-person-detail__fv__title strong {
  font-weight: 900;
}

.p-page-person-detail__fv__sub {
  font-size: 2.1527777778vw;
  line-height: 1.2;
  letter-spacing: -0.05em;
  font-weight: 700;
  font-family: "Noto Serif JP", serif;
  margin-top: 1.0069444444vw;
}

.p-page-person-detail__fv__wrap {
  margin-top: 5.5555555556vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.1111111111vw;
}

.p-page-person-detail__fv__wrap__body {
  gap: 1.1111111111vw;
}

.p-page-person-detail__fv__head {
  width: 6.25vw;
  height: 6.25vw;
  background-color: #CCB67C;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #FFFFFF;
  font-size: 1.6666666667vw;
  line-height: 1.2083333333;
  letter-spacing: 0em;
  font-weight: 500;
  text-align: center;
}
.p-page-person-detail__fv__head.career {
  background-color: #707070;
  font-size: 1.5277777778vw;
  line-height: 1.3181818182;
  letter-spacing: 0em;
  font-weight: 500;
}
.p-page-person-detail__fv__head.new-graduate {
  background-color: #CCB67C;
  padding: 0 0.6944444444vw;
}

.p-page-person-detail__fv__wrap__text-sm {
  font-size: 1.1111111111vw;
  line-height: 1.8125;
  letter-spacing: 0em;
  font-weight: 500;
}

.p-page-person-detail__fv__wrap__text-md {
  font-size: 1.25vw;
  line-height: 1.2;
  letter-spacing: 0em;
  font-weight: 500;
}

.p-page-person-detail__fv__wrap__text-lg {
  font-size: 3.3333333333vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 600;
}

.p-page-person-detail__fv__wrap__body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.p-page-person-detail__fv__arrow {
  display: block;
  padding-left: 17.3611111111vw;
  padding-top: 6.25vw;
}
.p-page-person-detail__fv__arrow img {
  display: block;
  width: 0.6944444444vw;
}

.p-page-person-detail__fv__img {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 63.6111111111vw;
  height: 100%;
}
.p-page-person-detail__fv__img picture {
  display: block;
  width: 100%;
}

.p-page-person-detail__contents {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  position: relative;
  margin-top: 5.5555555556vw;
  gap: 5.5555555556vw;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.p-page-person-detail__contents .c-flow-list__title {
  font-family: "Noto Sans JP", sans-serif;
}
.p-page-person-detail__contents .c-flow-list__item {
  font-size: 0.9722222222vw;
  font-weight: 500;
  line-height: 1.4285714286;
}

.p-page-person-detail__content__right {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  row-gap: 5.5555555556vw;
  width: 68.0555555556vw;
}

.p-page-person-detail__content__head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-page-person-detail__content__head::before {
  position: absolute;
  content: "";
  width: 4.5833333333vw;
  height: 4.5833333333vw;
  top: 0;
  right: 0;
  background: url(../img/person-detail/head-bg.webp) no-repeat center center/cover;
  z-index: -1;
}

.p-page-person-detail__content {
  padding: 1.9444444444vw;
  position: relative;
  height: 43.5416666667vw;
}
.p-page-person-detail__content:nth-child(even) .p-page-person-detail__content__body__text-en {
  margin: 0;
}

.p-page-person-detail__content__box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  height: 100%;
}

.p-page-person-detail__content__head__wrap {
  color: #1A1411;
  text-align: center;
  margin-bottom: 0.5555555556vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-page-person-detail__content__head__num {
  font-size: 2.7777777778vw;
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
}

.p-page-person-detail__content__head__text {
  font-size: 0.9027777778vw;
  line-height: 1.8461538462;
  letter-spacing: 0em;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
}

.p-page-person-detail__content__head__title {
  font-size: 1.9444444444vw;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 600;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  font-family: "Noto Serif JP", serif;
}

.p-page-person-detail__content__body__img {
  display: block;
  width: 28.6111111111vw;
  margin-left: auto;
  margin-top: 1.6666666667vw;
}

.p-page-person-detail__content__body {
  margin-top: 5.5555555556vw;
  margin-right: 1.0416666667vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

.p-page-person-detail__content__body__text {
  font-family: "Noto Serif JP", serif;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  font-size: 1.25vw;
  line-height: 1.8;
  letter-spacing: 0em;
  font-weight: 500;
}
.p-page-person-detail__content__body__text--02 {
  height: 16.6666666667vw;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}

.p-page-person-detail__content__body__text-en {
  text-align: right;
  font-family: "Noto Serif JP", serif;
  font-size: 0.8333333333vw;
  line-height: 2;
  letter-spacing: 0em;
  font-weight: 500;
}

.p-page-person-detail__time {
  background-image: url(../img/person-detail/time_bg.webp);
  background-size: 100%;
  background-repeat: no-repeat;
  margin-top: 5.5555555556vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.p-page-person-detail__time__left {
  width: 42%;
  position: relative;
}

.p-page-person-detail__time__title {
  font-size: 6.9444444444vw;
  line-height: 1.03;
  letter-spacing: -0.05em;
  font-weight: 900;
  -webkit-transform: rotate(-6deg);
          transform: rotate(-6deg);
  color: #FFFFFF;
  font-family: "Noto Serif JP", serif;
  margin-top: 2.7777777778vw;
  margin-left: 1.3888888889vw;
}

.p-page-person-detail__time__right {
  width: 58%;
  position: relative;
}
.p-page-person-detail__time__right img {
  -o-object-fit: cover;
     object-fit: cover;
}

.p-page-person-detail__time__right__text {
  font-size: 5.9722222222vw;
  line-height: 1;
  letter-spacing: -0.08em;
  font-weight: 700;
  color: #FFFFFF;
  position: absolute;
  bottom: -0.5555555556vw;
  right: 1.3888888889vw;
  font-family: "halcom", sans-serif;
}

.p-page-person-detail__time__box__wrap {
  position: absolute;
  top: 20.8333333333vw;
  left: 7.5vw;
  width: 200%;
}

.p-page-person-detail__time__box {
  background-image: url(../img/person-detail/time_box_bg.webp);
  background-size: 100%;
  background-repeat: no-repeat;
  position: relative;
  padding: 7.4305555556vw 1.3888888889vw 2.0833333333vw;
  position: relative;
  top: -6.25vw;
  left: 0.9027777778vw;
  width: 36.3888888889vw;
  z-index: 1;
}

.p-page-person-detail__time__box__head {
  font-size: 3.9583333333vw;
  line-height: 1.5;
  letter-spacing: -0.05em;
  font-weight: 900;
  background-color: #CCB67C;
  font-family: "Noto Serif JP", serif;
  color: #FFFFFF;
  position: relative;
  top: 0;
  left: 0;
  width: 106%;
  display: inline;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  padding: 0 0.6944444444vw;
  z-index: 2;
}

.p-page-person-detail__time__box__text {
  font-size: 1.1111111111vw;
  line-height: 1.75;
  letter-spacing: 0em;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
}

/* ================================================================================
各ページごとのスタイル
================================================================================ */
/* ================================================================================
fudealcreation-wp-template
================================================================================ */
@media screen and (min-width : 768px) {
  .u-container {
    padding: 0;
  }
  .u-sp-only {
    display: none !important;
  }
  .l-header__nav-list {
    text-align: center;
    margin-bottom: 0;
    width: 20%;
  }
  .l-header__nav-list-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    position: static;
  }
  .l-header__nav-list a {
    color: #1A1411;
  }
  .u-sp-only {
    display: none !important;
  }
  .p-page-faq .c-loop-title__title {
    font-size: min(5.5555555556vw, 80px);
  }
  .p-faq-visual__image {
    width: 100%;
    height: min(21.9444444444vw, 316px);
    max-height: 418px;
  }
  .p-faq-visual__image picture {
    display: block;
    width: 100%;
    height: 100%;
  }
  .p-faq-visual__image picture img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .p-faq-visual__loop .c-loop-title__title {
    font-size: min(5.5555555556vw, 80px);
  }
  .p-data-visual__image {
    width: 100%;
    height: 22vw;
    max-height: 418px;
  }
  .p-data-visual__image picture {
    display: block;
    width: 100%;
    height: 100%;
  }
  .p-data-visual__image picture img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .p-data-visual__loop .c-loop-title__title {
    font-size: min(5.5555555556vw, 80px);
  }
  .p-page-person-detail__contents .c-flow-list {
    width: 27.0833333333vw;
    top: 6.25vw;
    overflow-y: auto;
  }
}
@media screen and (max-width : 767px) {
  .u-pc-only {
    display: none !important;
  }
  .c-more-btn {
    font-size: 2.9333333333vw;
    border-bottom: 0.4vw solid #1A1411;
    right: 4.8vw;
    bottom: 4.5333333333vw;
  }
  .c-more-btn::before {
    width: 2.1333333333vw;
    height: 2.6666666667vw;
    right: -2.6666666667vw;
  }
  .c-pagetop {
    right: 3.2vw;
    bottom: 17.0666666667vw;
    width: 4.2666666667vw;
  }
  .c-pagetop__arrow {
    width: 0.2666666667vw;
    height: 21.3333333333vw;
  }
  .c-pagetop__arrow:before {
    width: 0.2666666667vw;
    height: 3.4666666667vw;
  }
  .c-pagetop__text {
    font-size: 2.6666666667vw;
    margin-bottom: 2.1333333333vw;
  }
  .c-pagetop:hover .c-pagetop__arrow {
    height: 21.3333333333vw;
  }
  .c-page-head {
    padding-top: 2.6666666667vw;
    height: 24vw;
  }
  .c-page-head__inner {
    padding-left: 2.6666666667vw;
    gap: 6vw;
    padding-right: 2.6666666667vw;
    max-width: initial;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .c-page-head__subtitle--top {
    font-size: 3.2vw;
    padding: 0 1.6vw 1.0666666667vw;
  }
  .c-page-head__subtitle--bottom {
    font-size: 3.2vw;
  }
  .c-page-head__title-img {
    margin-inline: initial;
  }
  .c-page-head__title-img.c-page-head__title-img--new-graduate {
    max-width: 55.7333333333vw;
    aspect-ratio: 210/36;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
  }
  .c-page-head__toggle-button {
    top: 2.6666666667vw;
  }
  .c-page-catchcopy {
    padding-top: 24vw;
    padding-bottom: 21.3333333333vw;
    overflow: hidden;
  }
  .c-page-catchcopy__inner::before {
    width: 153.3333333333vw;
    height: 72vw;
    background: url(../img/new-graduate/catchcopy-bg_sp.webp) center top/cover no-repeat;
    top: 31.4666666667vw;
    left: calc(50% + 16vw);
    display: block;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .c-page-catchcopy__flex::before {
    display: none;
  }
  .c-page-catchcopy__text {
    margin-top: 0;
    font-size: 8.5333333333vw;
    -webkit-transform: translateX(4.2666666667vw);
            transform: translateX(4.2666666667vw);
    max-width: 49.0666666667vw;
    line-height: 1.125;
    position: relative;
    padding-top: 16vw;
    padding-bottom: 0;
    z-index: 1;
  }
  .c-page-catchcopy__loop-area {
    top: 80vw;
  }
  .c-page-catchcopy__loop-imgs--new-graduate img {
    width: 569.3333333333vw;
    aspect-ratio: 2135/86;
  }
  .c-page-catchcopy__img-area {
    max-width: 60.2666666667vw;
    position: absolute;
    top: 0;
    right: 0;
  }
  .c-page-catchcopy__img-area--new-graduate::before {
    width: 4vw;
  }
  .c-page-catchcopy__img-area--carrier::before {
    width: 4vw;
  }
  .c-page-catchcopy__img-area img {
    aspect-ratio: 226/206;
  }
  .c-page-catchcopy__img-area--new-graduate img {
    aspect-ratio: 226/306;
  }
  .c-page-anchor-link {
    margin-top: 61.6vw;
  }
  .c-page-anchor-link__items {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-right: 0;
    gap: 11.2vw;
  }
  .c-page-anchor-link__items--new-graduate {
    margin-left: 11.2vw;
  }
  .c-page-anchor-link__item {
    height: 14.4vw;
  }
  .c-page-anchor-link__item a {
    font-size: 4.2666666667vw;
    line-height: 1.4375;
  }
  .c-page-anchor-link__item a:before {
    width: 19.7333333333vw;
    height: 11.4666666667vw;
    left: -4.5333333333vw;
    top: 3.2vw;
  }
  .c-page-anchor-link__item--lh a {
    line-height: 1.125;
  }
  .c-page-anchor-link__item a span {
    font-size: 2.4vw;
  }
  html:has(.c-page-anchor-link) {
    scroll-padding-top: 10.6666666667vw;
  }
  .c-breadcrumb {
    position: absolute;
    top: 14.9333333333vw;
    right: 2.6666666667vw;
  }
  .c-breadcrumb__items {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 2.1333333333vw;
  }
  .c-breadcrumb__item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    font-size: 2.9333333333vw;
    gap: 2.1333333333vw;
    line-height: 1.4545454545;
    -webkit-box-align: baseline;
    -webkit-align-items: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
  }
  .c-breadcrumb__item.active:after {
    width: 2.1333333333vw;
    height: 2.1333333333vw;
    -webkit-transform: translateY(-0.2666666667vw) rotate(-45deg);
            transform: translateY(-0.2666666667vw) rotate(-45deg);
  }
  .c-loop-title--creation .c-loop-title__imgs {
    top: 2.1333333333vw;
  }
  .c-loop-title__imgs img {
    width: 569.3333333333vw;
    aspect-ratio: 2135/86;
  }
  .c-loop-title--creation .c-loop-title__imgs img {
    width: 661.6vw;
    aspect-ratio: 2481/54;
  }
  .c-loop-title--work .c-loop-title__imgs img {
    aspect-ratio: 1500/65;
    width: 400vw;
  }
  .c-loop-title--person .c-loop-title__imgs img {
    aspect-ratio: 1050/70;
    width: 280vw;
  }
  .c-loop-title__title {
    font-size: 8.5333333333vw;
    line-height: 1.4375;
    position: relative;
    -webkit-transform: translateX(2.6666666667vw);
            transform: translateX(2.6666666667vw);
  }
  .c-loop-title--creation .c-loop-title__title {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    font-size: 8.5333333333vw;
    letter-spacing: -0.15em;
  }
  .c-loop-title--faq .c-loop-title__imgs,
.c-loop-title--faq-sec .c-loop-title__imgs {
    --loop-gap: 4.2666666667vw;
  }
  .c-loop-title--faq-sec.faq-sec--recruit .c-loop-title__imgs img {
    width: 163.7333333333vw;
    aspect-ratio: 614/53;
  }
  .c-loop-title--faq-sec.faq-sec--company .c-loop-title__imgs img {
    width: 163.2vw;
    aspect-ratio: 612/40;
  }
  .c-loop-title--faq-sec.faq-sec--benefits .c-loop-title__imgs img {
    width: 164vw;
    aspect-ratio: 615/51;
  }
  .c-loop-title--faq .c-loop-title__imgs img {
    width: 296vw;
    aspect-ratio: 1110/75.5;
  }
  .c-link-part {
    min-width: 42.9333333333vw;
    padding-left: 4.5333333333vw;
    padding-bottom: 4.8vw;
  }
  .c-link-part:before {
    width: 19.7333333333vw;
    height: 11.4666666667vw;
    background: url(../img/common/anchor-link-arrow_sp.webp) center top/cover no-repeat;
    top: 3.2vw;
  }
  .c-link-part__title {
    font-size: 4.2666666667vw;
    letter-spacing: -0.06em;
    line-height: 1.25;
  }
  .c-page-anchor-link__item--lh a {
    line-height: 1.125;
  }
  .c-link-part__text {
    letter-spacing: -0.06em;
    font-size: 3.4666666667vw;
    line-height: 1.2307692308;
    white-space: nowrap;
  }
  html:has(.c-link-part) {
    scroll-padding-top: 0vw;
  }
  .c-work-link {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .c-work-link:nth-child(1) {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
  }
  .c-work-link:nth-child(2) {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .c-work-link:nth-child(3) {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
  .c-work-link:nth-child(4) {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6;
  }
  .c-work-link:nth-child(5) {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5;
  }
  .c-work-link:nth-child(6) {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4;
  }
  .c-work-link:nth-child(1),
.c-work-link:nth-child(4) {
    width: initial;
  }
  .c-work-link:nth-child(2),
.c-work-link:nth-child(5) {
    width: initial;
  }
  .c-work-link:nth-child(3),
.c-work-link:nth-child(6) {
    width: initial;
  }
  .c-work-link::before {
    background: url(../img/work/work-link_sp.webp) center top/cover no-repeat;
    width: 11.2vw;
    height: 25.3333333333vw;
    top: 28.5333333333vw;
    right: 6.1333333333vw;
    left: initial;
  }
  .c-work-link:nth-child(4)::before,
.c-work-link:nth-child(5)::before,
.c-work-link:nth-child(6)::before {
    top: 19.2vw;
  }
  .c-work-link__title {
    font-size: 7.4666666667vw;
    padding-left: 0;
    line-height: 1;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    text-orientation: upright;
  }
  .c-work-link__items {
    margin-top: 0vw;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .c-work-link__item a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    padding-left: 0;
    gap: 1.0666666667vw;
  }
  .c-work-link__item a::before {
    position: absolute;
    bottom: -6.9333333333vw;
    right: -2.1333333333vw;
    rotate: 90deg;
    width: 8vw;
    height: 1.6vw;
  }
  .c-work-link__item a:hover::before {
    -webkit-transform: translateY(5) translateX(0);
            transform: translateY(5) translateX(0);
  }
  .c-work-link__item-title {
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    text-orientation: upright;
    font-size: 3.4666666667vw;
    line-height: 1;
    width: 4.8vw;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .c-work-link__item-title::before {
    -webkit-transform: translateX(-0.1333333333vw);
            transform: translateX(-0.1333333333vw);
    width: 2.1333333333vw;
    height: 2.1333333333vw;
  }
  .c-flow-list {
    display: none;
    padding: 9.3333333333vw 10.6666666667vw 10.6666666667vw;
  }
  .c-flow-list__title-en {
    font-size: 9.6vw;
    line-height: 1.2222222222;
  }
  .c-flow-list__items {
    margin-top: 2.1333333333vw;
    padding-top: 2.1333333333vw;
    gap: 4.2666666667vw;
  }
  .l-header-menu__content {
    max-width: 92.8vw;
    margin-inline: 0;
    padding: 2.9333333333vw 0vw 10.6666666667vw;
  }
  .l-header-menu__nav {
    margin-top: 0vw;
  }
  .l-header-menu__sections {
    -ms-grid-columns: 1fr;
    grid-template-columns: repeat(1, 1fr);
    gap: 8vw;
  }
  .l-header-menu__section-header {
    gap: 2.6666666667vw;
  }
  .l-header-menu__title {
    padding-left: 4.2666666667vw;
  }
  .l-header-menu__section-icon {
    width: 13.3333333333vw;
    height: 18.4vw;
  }
  .l-header-menu__section-title {
    max-width: 37.6vw;
  }
  .l-header-menu__section-subtitle {
    font-size: 3.7333333333vw;
    margin-top: 0.5333333333vw;
  }
  .l-header-menu__links {
    margin-top: 3.7333333333vw;
    padding-left: 6.4vw;
  }
  .l-header-menu__link {
    font-size: 4.2666666667vw;
    padding: 2.6666666667vw 0;
  }
  .l-header-menu__link-text::after {
    height: 0.5333333333vw;
  }
  .l-header-menu__link-arrow {
    width: 3.2vw;
    height: 3.2vw;
  }
  .l-header-menu__link-arrow::after {
    width: 2.6666666667vw;
    height: 3.2vw;
  }
  .l-header-menu__recruitment {
    -ms-grid-columns: 1fr;
    grid-template-columns: repeat(1, 1fr);
    margin-top: 8vw;
    width: 100vw;
    margin-inline: calc(50% - 46.4vw);
    gap: 4.2666666667vw;
  }
  .l-header-menu__recruitment-btn {
    font-size: 6.4vw;
    max-width: 91.7333333333vw;
    width: 100%;
    height: 23.4666666667vw;
  }
  .l-header-menu__recruitment-arrow {
    width: 6.4vw;
    height: 6.4vw;
    right: 8.5333333333vw;
  }
  .l-header-menu__recruitment-arrow::after {
    font-size: 4.2666666667vw;
  }
  .l-header-menu__footer {
    margin-top: 4.2666666667vw;
    padding-top: 0vw;
    padding-left: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 6.4vw;
    width: 100vw;
    margin-inline: calc(50% - 46.4vw);
  }
  .l-header-menu__social {
    gap: 3.7333333333vw;
  }
  .l-header-menu__social-link {
    width: 9.6vw;
    height: 9.6vw;
  }
  .l-header-menu__logo {
    max-width: 37.3333333333vw;
  }
  .l-header {
    padding: 1.7466666667vw 2.6666666667vw 1.7466666667vw;
    border: solid 0.2666666667vw #1A1411;
  }
  .l-header__img {
    width: 100%;
  }
  .l-header__img img {
    width: 100%;
    height: auto;
  }
  .l-header__time {
    position: absolute;
    width: 18%;
  }
  .l-header__time__year {
    display: none;
  }
  .l-header__time__day {
    font-size: 5.8666666667vw;
  }
  .l-header__time__day-ja {
    font-size: 2.4vw;
    margin-left: 0vw;
  }
  .l-header__time__week {
    font-size: 2.1333333333vw;
    border: solid 0.2666666667vw #707070;
  }
  .l-header__toggle-button {
    width: 10.6666666667vw;
    height: 10.6666666667vw;
    top: 2.6666666667vw;
    right: 2.6666666667vw;
  }
  .l-header__toggle-button:before {
    border: solid 0.2666666667vw #1A1411;
  }
  .l-header__toggle-button span {
    width: 4.2666666667vw;
    height: 0.2666666667vw;
    left: 62%;
  }
  .l-header__toggle-button span:before, .l-header__toggle-button span:after {
    width: 6.9333333333vw;
  }
  .l-header__toggle-button span:before {
    -webkit-transform: translateY(-1.6vw) rotate(0deg);
            transform: translateY(-1.6vw) rotate(0deg);
  }
  .l-header__toggle-button span:after {
    -webkit-transform: translateY(1.6vw) rotate(0deg);
            transform: translateY(1.6vw) rotate(0deg);
  }
  .l-header__toggle-button--close span {
    height: 0.8vw;
  }
  .l-header__toggle-button--close span:before {
    -webkit-transform: translateY(0) rotate(-45deg);
            transform: translateY(0) rotate(-45deg);
  }
  .l-header__toggle-button--close span:after {
    -webkit-transform: translateY(0) rotate(45deg);
            transform: translateY(0) rotate(45deg);
  }
  .l-footer__inner {
    padding: 10.6666666667vw 5.8666666667vw 5.3333333333vw;
  }
  .l-footer__body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: left;
    -webkit-justify-content: left;
        -ms-flex-pack: left;
            justify-content: left;
    gap: 5.3333333333vw;
    padding-inline: 4.8vw;
  }
  .l-footer__logo {
    width: 39.4666666667vw;
    aspect-ratio: 148/38;
  }
  .l-footer__nav {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 10.6666666667vw;
  }
  .l-footer__nav-group-wrap {
    gap: 10.6666666667vw;
  }
  .l-footer__nav-group {
    gap: 4.2666666667vw;
  }
  .l-footer__nav-title--en {
    font-size: 6.9333333333vw;
  }
  .l-footer__nav-title--ja {
    font-size: 3.7333333333vw;
  }
  .l-footer__nav-items {
    gap: 2.1333333333vw;
  }
  .l-footer__nav-item a {
    font-size: 4.2666666667vw;
  }
  .l-footer__nav-item a:after {
    height: 0.5333333333vw;
    bottom: -0.5333333333vw;
  }
  .l-footer__bottom {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 21.3333333333vw;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 10.1333333333vw;
  }
  .l-footer__links {
    gap: 4.2666666667vw;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  a.l-footer__link {
    gap: 1.6vw;
    font-size: 4.2666666667vw;
  }
  a.l-footer__link:after {
    width: 4.8vw;
  }
  .l-footer__sns-items {
    gap: 3.2vw;
  }
  .l-footer__sns-item a {
    width: 8vw;
  }
  .l-footer__copy {
    font-size: 3.2vw;
    white-space: nowrap;
  }
  .l-footer__entry-inner {
    padding-top: 9.3333333333vw;
    padding-bottom: 10.6666666667vw;
    width: 100%;
    max-width: initial;
    padding-inline: 0vw;
  }
  .l-footer__entry-title {
    font-size: 8.5333333333vw;
    line-height: 1.34375;
  }
  .l-footer__entry-title span {
    font-size: 3.7333333333vw;
  }
  .l-footer__entry-items {
    -ms-grid-columns: 1fr;
    grid-template-columns: repeat(1, 1fr);
    gap: 4.2666666667vw;
    margin-top: 3.7333333333vw;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .l-footer__entry-item a {
    font-size: 5.3333333333vw;
    line-height: 3.6;
    max-width: 91.7333333333vw;
    margin-inline: auto;
  }
  .l-footer__entry-item a:before {
    border-width: 1.8666666667vw 0 1.8666666667vw 3.2vw;
    right: 8.5333333333vw;
  }
  .l-footer__entry-loop-area {
    top: 4.8vw;
  }
  .u-pc-only {
    display: none !important;
  }
  .p-home .l-header__toggle-button {
    top: 2.6666666667vw;
    right: 2.6666666667vw;
  }
  .p-home__title {
    margin: 8vw 0;
  }
  .p-home__inner {
    margin: 0;
    background-color: #1A1411;
  }
  .p-home__inner__02 {
    margin: 0;
  }
  .p-home__02__button {
    display: none;
  }
  .p-home__video-bg iframe {
    width: 200%;
    height: 100%;
    top: -29.3333333333vw;
  }
  .p-home__content {
    padding: 4.2666666667vw 2.1333333333vw 9.3333333333vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .p-home__content .tracking-09-sp {
    letter-spacing: 0.09em;
  }
  .p-home__content .horizontal-tb-sp {
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
  }
  .p-home__content__title {
    font-size: 22.4vw;
    line-height: 1.07;
    margin-bottom: 4vw;
    min-height: 130.6666666667vw;
  }
  .p-home__content__left {
    width: 100%;
  }
  .p-home__content__right {
    width: 46.9333333333vw;
    position: absolute;
    bottom: 56vw;
  }
  .p-home__content__left__top {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 25.3333333333vw;
    height: 121.0666666667vw;
    gap: 0;
  }
  .p-home__content__left__top__box01 {
    width: 100%;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .p-home__content__left__top__box01__wrap-sp__left {
    width: 43.2vw;
  }
  .p-home__content__left__top__box01__wrap-sp__right {
    width: 46.6666666667vw;
  }
  .p-home__content__left__top__box01__head {
    font-size: 3.7333333333vw;
    padding-bottom: 1.0666666667vw;
  }
  .p-home__content__left__top__box01__text02 {
    margin-top: 0;
  }
  .p-home__content__left__top__box02__text {
    line-height: 0.8;
  }
  .p-home__content__left__top__box02__text--sm {
    border-left: solid 0.2666666667vw #FFFFFF;
    font-size: 2.1333333333vw;
  }
  .p-home__content__left__top__box02__text--lg {
    font-size: 3.7333333333vw;
  }
  .p-home__content__left__top__box02-sp__text {
    height: 58.6666666667vw;
    font-size: 2.1333333333vw;
  }
  .p-home__content__left__bottom {
    height: 44.2666666667vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 0;
    gap: 0;
  }
  .p-home__content__left__bottom__box {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0;
  }
  .p-home__content__left__bottom__box__bg {
    width: 100%;
    height: auto;
    margin-right: 0;
    text-align: center;
    margin-top: 2.6666666667vw;
  }
  .p-home__content__left__bottom__box__bg__text .js-fade-text {
    font-size: 4.8vw;
  }
  .p-home__content__left__bottom__box02 {
    width: 25.3333333333vw;
    height: 59.2vw;
  }
  .p-home__left__bottom__text {
    margin-top: 1.3333333333vw;
  }
  .p-home__left__bottom__text02 {
    margin-top: 1.3333333333vw;
  }
  .p-home__left__bottom__text03 {
    margin-top: 1.3333333333vw;
    letter-spacing: -0.05em;
  }
  .p-home__left__bottom__text04 {
    margin-top: 1.3333333333vw;
  }
  .p-home__left__bottom__text05 {
    margin-top: 1.3333333333vw;
  }
  .p-home__content__right__bottom {
    width: 100%;
    height: 55.2vw;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .p-home__content__right__bottom__box {
    height: 100%;
    margin-right: 0;
  }
  .p-home__content__right__bottom__box__name--sm {
    font-size: 2.1333333333vw;
    border-left: solid 0.2666666667vw #FFFFFF;
  }
  .p-home__content__right__bottom__box__name--lg {
    font-size: 3.7333333333vw;
  }
  .p-home__content__right__bottom__box__text {
    font-size: 2.9333333333vw;
    height: 106%;
    position: relative;
    bottom: 1.3333333333vw;
  }
  .p-home__content__right__bottom__box01 {
    width: 100%;
  }
  .p-home__content__right__bottom__box02 {
    width: 22.1333333333vw;
    margin-top: 0vw;
  }
  .p-home__content__right__bottom__box02__head {
    font-size: 6.9333333333vw;
    left: 2.6666666667vw;
  }
  .p-home__content__right__bottom__box02__wrap {
    gap: 0;
  }
  .p-home__content__right__bottom__box02__text {
    font-size: 2.1333333333vw;
  }
  .p-home__content__right__bottom__box02__text02 {
    font-size: 2.9333333333vw;
  }
  .order-sp_01 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
  .order-sp_02 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .order-sp_03 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
  }
  .p-home__content__text {
    font-size: 1.25vw;
    line-height: 0.0777777778;
    letter-spacing: 0em;
    font-weight: 400;
  }
  .p-home__content__text--6-sp {
    font-size: 1.6vw;
  }
  .p-home__content__text--7-sp {
    font-size: 1.8666666667vw;
    line-height: 1.28;
  }
  .p-home__content__text--8-sp {
    font-size: 2.1333333333vw;
    line-height: 1.28;
  }
  .p-home__content__text--9-sp {
    font-size: 2.4vw;
    line-height: 1.28;
  }
  .p-home__content__text--10-sp {
    font-size: 2.6666666667vw;
  }
  .p-home__content__text--12-sp {
    font-size: 3.2vw;
  }
  .p-home__content__text--13-sp {
    font-size: 3.4666666667vw;
  }
  .p-home__content__text--14-sp {
    font-size: 3.7333333333vw;
  }
  .p-home__content__text--16-sp {
    font-size: 4.2666666667vw;
  }
  .p-home__content__text--18-sp {
    font-size: 4.8vw;
  }
  .p-home__content__text--21-sp {
    font-size: 5.6vw;
  }
  .p-home__content__text--28-sp {
    font-size: 7.4666666667vw;
  }
  .p-home__content__text--mt20-pc {
    margin-top: 0;
  }
  .p-home__content__text--mt5-sp {
    margin-top: 1.3333333333vw;
  }
  .p-home__bottom {
    background-color: #1A1411;
  }
  .p-home__bottom.u-sp-only {
    display: block !important;
  }
  .p-home__bottom__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    position: fixed;
    z-index: 999;
    bottom: 0;
    width: 100%;
    background-color: #1A1411;
  }
  .p-home__bottom__content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin: 0 3.2vw 5.3333333333vw;
  }
  .p-home__bottom__content__head {
    font-size: 9.6vw;
    width: 100%;
    letter-spacing: -0.05em;
    margin-top: 2.1333333333vw;
  }
  .p-home__bottom__content__box {
    width: 52%;
  }
  .p-home__bottom__content__text {
    font-size: 1.8666666667vw;
  }
  .p-home__bottom__content__arrow {
    width: 7.4666666667vw;
  }
  .p-home__bottom__content__img {
    width: 43%;
    height: 100%;
  }
  .p-home__bottom__content__link {
    width: 100%;
  }
  .p-home__news {
    margin: 3.2vw 4.2666666667vw 0vw;
    padding: 4.2666666667vw 4vw 4.2666666667vw 4.2666666667vw;
  }
  .p-home__news__head {
    font-size: 4.5333333333vw;
    letter-spacing: 0.025em;
  }
  .p-home__news__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.0666666667vw;
  }
  .p-home__news__list__item {
    width: 100%;
    border-right: none;
    margin-bottom: 2.1333333333vw;
    line-height: 1.2;
  }
  .p-home__news__list__item:nth-of-type(2), .p-home__news__list__item:nth-of-type(3) {
    padding-left: 0;
  }
  .p-home__news__list__item__link:hover .p-home__news__list__item__title::before {
    right: -4.2666666667vw;
  }
  .p-home__news__list__item__time {
    font-size: 3.2vw;
  }
  .p-home__news__list__item__category {
    font-size: 3.2vw;
  }
  .p-home__news__list__item__title::before {
    width: 2.1333333333vw;
    height: 2.6666666667vw;
    top: initial;
    bottom: 0.8vw;
    right: -3.2vw;
  }
  .p-home__news__list__item__title {
    font-size: 3.7333333333vw;
  }
  .p-home__content__02 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .p-home__content__02__left {
    width: 100%;
    padding: 0 3.7333333333vw;
    margin-bottom: 10.6666666667vw;
  }
  .p-home__content__02__left__04 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .p-home__content__02__left__05 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
  .p-home__content__02__left__06 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
    width: 100%;
  }
  .p-home__content__02__right {
    width: 100%;
    background-image: url(../img/top/right_bg_02_sp.jpg);
    background-position: top;
  }
  .p-home__content__02__right__head {
    margin-top: 13.8666666667vw;
  }
  .p-home__content__02__right__head__year {
    font-size: 7.4666666667vw;
  }
  .p-home__content__02__right__head__year-ja {
    font-size: 4.5333333333vw;
  }
  .p-home__content__02__right__head__day {
    font-size: 16.8vw;
  }
  .p-home__content__02__right__head__day-ja {
    font-size: 6.4vw;
    margin-left: 1.0666666667vw;
  }
  .p-home__content__02__right__head__week {
    width: 42.6666666667vw;
    font-size: 4.5333333333vw;
    border: solid 0.2666666667vw #707070;
  }
  .p-home__content__02__right__head__time {
    font-size: 4vw;
  }
  .p-home__content__02__right__body__text {
    font-size: 3.4666666667vw;
    line-height: 1.84;
    padding: 8.2666666667vw 2.9333333333vw 12.5333333333vw 5.3333333333vw;
  }
  .p-home__content__02__right__body__sns {
    gap: 3.7333333333vw;
  }
  .p-home__content__02__right__body__sns__link {
    width: 8.8vw;
  }
  .p-home__content__02__right__body__bnr {
    padding: 4.2666666667vw 12.2666666667vw 3.4666666667vw;
  }
  .p-home__content__02__right__body__bnr__link {
    width: 22.4vw;
  }
  .p-home__content__02__right__body__bnr__link::before {
    display: none;
  }
  .p-home__content__02__right__body__bnr__link:hover {
    -webkit-transform: none;
            transform: none;
  }
  .p-home__content__02__right__body__bnr__img img {
    width: 100%;
    height: auto;
  }
  .p-home__content__02__right__body__bnr__logo {
    padding: 0 12.2666666667vw 21.3333333333vw;
  }
  .p-home__content__02__left__link img {
    width: 100%;
    height: auto;
  }
  .p-home__content__02__left__link:hover .c-more-btn::before {
    right: -3.4666666667vw;
  }
  .p-home__content__02__left__link__04 .c-more-btn {
    right: 2.6666666667vw;
    bottom: 24.5333333333vw;
    border-bottom: 0.4vw solid rgba(255, 255, 255, 0.8);
  }
  .p-home__content__02__left__link__05 .c-more-btn {
    right: 2.4vw;
    bottom: 1.3333333333vw;
  }
  .p-home__content__02__left__link__07 .c-more-btn {
    font-size: 3.7333333333vw;
    right: 8.8vw;
    bottom: 5.8666666667vw;
  }
  .p-home__content__02__left__link__08::before {
    width: 2.6666666667vw;
    height: 3.2vw;
    top: 56%;
    right: 3.7333333333vw;
  }
  .p-home__content__02__left__link__08:hover::before {
    right: 2.9333333333vw;
  }
  .p-home__content__02__left__link__09 .c-more-btn {
    right: 2.1333333333vw;
    bottom: 2.9333333333vw;
  }
  .p-home__content__02__left__link__10 .c-more-btn {
    right: 2.6666666667vw;
    bottom: 3.7333333333vw;
  }
  .p-home__content__02__left__link__11::before {
    width: 2.6666666667vw;
    height: 3.2vw;
    bottom: 7.7333333333vw;
    right: 20.2666666667vw;
  }
  .p-home__content__02__left__link__11:hover::before {
    right: 19.4666666667vw;
  }
  .p-home__content__02__left__top {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    height: auto;
  }
  .p-home__content__02__left__middle {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-top: 4.2666666667vw;
  }
  .p-home__content__02__left__bottom {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .p-home__content__02__left__bottom__wrap {
    width: 100%;
  }
  .p-home__content__02__left__bottom__wrap02 {
    margin-top: 4.2666666667vw;
  }
  .p-home__content__02__left__img__01 {
    width: 39.2vw;
  }
  .p-home__content__02__left__img__01 img {
    width: 100%;
    height: auto;
  }
  .p-home__content__02__left__img__02 {
    width: 48vw;
  }
  .p-home__content__02__left__img__03::before {
    width: 6.1333333333vw;
    background-size: cover;
  }
  .p-home__content__02__left__img__03 img,
.p-home__content__02__left__img__03 video {
    width: 100%;
  }
  .p-home__content__02__left__img__03 {
    width: 100%;
    height: 50.6666666667vw;
    margin-top: 4.2666666667vw;
  }
  .p-home__content__02__left__img__04::after {
    height: 33.3333333333vw;
    background: url(../img/top/img_04_sp.jpg) center center/contain no-repeat;
  }
  .p-home__content__02__left__img__04 {
    width: 48vw;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .p-home__content__02__left__img__05 {
    width: 39.2vw;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
  .p-home__content__02__left__img__06 {
    width: 100%;
    margin-top: 4.2666666667vw;
  }
  .p-home__content__02__left__img__06 img {
    width: 100%;
    height: auto;
  }
  .p-home__content__02__left__img__07 {
    width: 100%;
    margin-top: 3.4666666667vw;
  }
  .p-home__content__02__left__img__07 img {
    width: 100%;
    height: auto;
  }
  .p-home__content__02__left__img__08 {
    width: 100%;
  }
  .p-home__content__02__left__img__09 {
    width: 43.7333333333vw;
  }
  .p-home__content__02__left__img__10 {
    width: 43.7333333333vw;
  }
  .p-home__content__02__left__img__11::before {
    background: url(../img/top/img_11_sp.png) right center/contain no-repeat;
  }
  .p-home__content__02__left__img__11 {
    width: 100%;
    height: 37.8666666667vw;
    margin-top: 4.2666666667vw;
  }
  .p-new-graduate__inner {
    max-width: 100vw;
    padding: 0 2.1333333333vw;
  }
  .p-new-graduate__sec-title {
    font-size: 5.3333333333vw;
    line-height: 1.45;
    gap: 3.4666666667vw;
    -webkit-transform: translateX(-2.1333333333vw);
            transform: translateX(-2.1333333333vw);
  }
  .p-new-graduate__sec-title:before {
    width: 12.8vw;
    aspect-ratio: 48/25;
  }
  .p-new-graduate-requirements {
    margin-top: 26.6666666667vw;
  }
  .p-new-graduate-requirements__items {
    padding: 5.3333333333vw 2.1333333333vw 2.1333333333vw;
    margin-top: 6.4vw;
  }
  .p-new-graduate-requirements__items--modal {
    gap: 8vw;
    padding: 5.3333333333vw 2.1333333333vw 2.1333333333vw;
    height: 128.5333333333vw;
    overflow: auto;
  }
  .p-new-graduate-requirements__item {
    padding: 4.2666666667vw 1.6vw 4.2666666667vw 1.6vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2.1333333333vw;
  }
  .p-new-graduate-requirements__term {
    font-size: 4.8vw;
    line-height: 1.2777777778;
    width: 100%;
  }
  .p-new-graduate-requirements__item--column .p-new-graduate-requirements__term {
    max-width: initial;
    margin-left: 0;
  }
  .p-new-graduate-requirements__desc {
    font-size: 3.4666666667vw;
    line-height: 1.4615384615;
    width: 100%;
  }
  .p-new-graduate-requirements__desc-item {
    font-size: 3.4666666667vw;
    white-space: initial;
    line-height: 1.4615384615;
    margin-top: 0;
  }
  .p-new-graduate-requirements__cards {
    margin-top: 4.2666666667vw;
    gap: 4.2666666667vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .p-new-graduate-requirements__card {
    max-width: 78.4vw;
    height: initial;
    padding: 4.2666666667vw 0;
    border: 0.5333333333vw solid #1A1411;
  }
  .p-new-graduate-requirements__card-ttl {
    font-size: 4.8vw;
    line-height: 1.4444444444;
  }
  .p-new-graduate-requirements__card-text {
    font-size: 3.7333333333vw;
    line-height: 1.4285714286;
    margin-top: 2.1333333333vw;
  }
  .p-new-graduate-requirements__card-text--small {
    font-size: 3.7333333333vw;
    line-height: 1.7142857143;
    margin-top: 2.1333333333vw;
  }
  .p-new-graduate-requirements__card-more {
    gap: 1.0666666667vw;
    font-size: 2.9333333333vw;
    line-height: 1.1818181818;
    margin-right: 4.5333333333vw;
    margin-top: 4.2666666667vw;
  }
  .p-new-graduate-requirements__card-more:before {
    width: 9.3333333333vw;
    height: 0.4vw;
  }
  .p-new-graduate-requirements__card-more:after {
    border-width: 1.3333333333vw 0 1.3333333333vw 1.3333333333vw;
  }
  .p-new-graduate-requirements__modal-container {
    width: 84%;
  }
  .p-new-graduate-requirements__modal-close {
    top: 2.1333333333vw;
    right: 2.1333333333vw;
    width: 10.9333333333vw;
  }
  .p-new-graduate-process {
    margin-top: 16vw;
  }
  .p-new-graduate-process__container {
    padding: 0 2.1333333333vw;
    max-width: initial;
  }
  .p-new-graduate-process__text {
    font-size: 4.2666666667vw;
    line-height: 1.5;
    margin-top: 6.4vw;
    width: 100%;
    padding-block: 0.5333333333vw;
    padding-inline: 0;
  }
  .p-new-graduate-process__text--mt {
    margin-top: 2.1333333333vw;
  }
  .p-new-graduate-process__arrow-image {
    width: 6.4vw;
    aspect-ratio: 25/32;
    margin-top: 2.1333333333vw;
  }
  .p-new-graduate-process__steps {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 5.3333333333vw;
  }
  .p-new-graduate-process__step {
    width: 100%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    background: url(../img/new-graduate/step-bg_sp.webp) center top/cover no-repeat;
    position: relative;
  }
  .p-new-graduate-process__step-number {
    position: absolute;
    margin: 0;
    top: -3.4666666667vw;
    left: 4.2666666667vw;
    line-height: 1.4444444444;
    font-size: 4.8vw;
  }
  .p-new-graduate-process__step-title {
    font-size: 4.2666666667vw;
    line-height: 1.5;
    margin-left: 6.4vw;
    width: 33.6vw;
    text-align: initial;
    margin-top: 0;
  }
  .p-new-graduate-process__step-detail {
    font-size: 3.4666666667vw;
    line-height: 1.4615384615;
    margin-top: 0;
    text-align: initial;
  }
  .p-new-graduate-process__arrow {
    width: 3.2vw;
    aspect-ratio: 12/16;
    margin-block: 3.2vw 5.3333333333vw;
  }
  .p-new-graduate-process__arrow::before {
    width: 3.2vw;
    aspect-ratio: 12/16;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    background: url(../img/new-graduate/arrow-under.png) center top/cover no-repeat;
  }
  .p-new-graduate-process__comment {
    font-size: 3.2vw;
    line-height: 1.3333333333;
    max-width: initial;
    text-align: initial;
    margin-top: 2.1333333333vw;
    text-indent: -1em;
    padding-left: 1em;
  }
  .p-new-graduate-entry {
    margin-top: 16vw;
  }
  .p-new-graduate-entry__btns {
    gap: 2.1333333333vw;
    margin-top: 6.4vw;
  }
  a.p-new-graduate-entry__btn {
    min-width: 29.0666666667vw;
    line-height: 3.0769230769;
    font-size: 3.4666666667vw;
  }
  a.p-new-graduate-entry__btn:before {
    border-width: 1.3333333333vw 0 1.3333333333vw 1.8666666667vw;
    right: 2.1333333333vw;
  }
  .p-new-graduate-entry__btn:last-child {
    text-align: left;
    padding-left: 2.1333333333vw;
  }
  .c-page-catchcopy__loop-area:has(.c-page-catchcopy__loop-imgs--new-graduate) {
    display: block;
    top: 80vw;
  }
  .c-page-catchcopy__loop-area.u-desktop:has(.c-page-catchcopy__loop-imgs--new-graduate) {
    display: none;
  }
  .c-page-head__inner:has(.c-page-head__title-img--work) {
    gap: 4.5333333333vw;
  }
  .c-page-head__inner:has(.c-page-head__title-img--work) .c-breadcrumb {
    margin-left: 0;
  }
  .c-page-head__title-img.c-page-head__title-img--work {
    aspect-ratio: 82/36;
    max-width: 21.8666666667vw;
  }
  .p-page-work {
    padding-top: 29.3333333333vw;
    overflow-x: hidden;
  }
  .p-page-work::before {
    height: 168.5333333333vw;
  }
  .p-page-work__inner {
    max-width: initial;
    padding: 0 4.2666666667vw;
  }
  .p-page-work__items {
    padding-bottom: 29.8666666667vw;
    gap: 20.2666666667vw 5.3333333333vw;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    max-width: 74.6666666667vw;
  }
  .p-page-work__contents {
    display: block;
  }
  .p-job-type {
    padding-bottom: 21.3333333333vw;
    width: initial;
  }
  .p-job-type:nth-child(1n+2) {
    padding-top: 21.3333333333vw;
  }
  .p-job-type:nth-child(2n) {
    padding-top: 21.3333333333vw;
    margin-top: 0vw;
  }
  .p-job-type#it-systems {
    padding-bottom: 21.3333333333vw;
  }
  .p-job-type:nth-child(2n)::after {
    left: calc(50% - 50vw);
  }
  .p-job-type__head::before {
    margin-top: 4.2666666667vw;
    width: 46.4vw;
    height: 14.6666666667vw;
  }
  .p-job-type:nth-child(2n)::before {
    top: 22.4vw;
  }
  #sales-support .p-job-type__head::before {
    margin-top: 1.3333333333vw;
    width: 64.5333333333vw;
    height: 16.8vw;
    background: url(../img/work/sales-support-title-bg_sp.webp) center center/cover no-repeat;
  }
  #dev-purchase .p-job-type__head::before {
    top: 1.0666666667vw;
    width: 130.1333333333vw;
    height: 14.6666666667vw;
  }
  #dev-build .p-job-type__head::before {
    margin-top: 1.3333333333vw;
    width: 96.8vw;
    height: 14.6666666667vw;
  }
  #house-studio .p-job-type__head::before {
    margin-top: 1.3333333333vw;
    width: 114.6666666667vw;
    height: 14.6666666667vw;
  }
  #lease-sales .p-job-type__head::before {
    margin-top: 1.3333333333vw;
    width: 111.2vw;
    height: 17.3333333333vw;
  }
  #property-management .p-job-type__head::before {
    margin-top: 1.3333333333vw;
    width: 233.8666666667vw;
    background: url(../img/work/property-management-title-bg_sp.webp) center center/cover no-repeat;
    height: 17.3333333333vw;
  }
  #building-management .p-job-type__head::before {
    margin-top: 1.3333333333vw;
    width: 176.8vw;
    height: 17.3333333333vw;
  }
  #contract-management .p-job-type__head::before {
    margin-top: 1.3333333333vw;
    width: 210.6666666667vw;
    height: 17.3333333333vw;
  }
  #hr-pr .p-job-type__head::before {
    margin-top: 1.3333333333vw;
    width: 81.0666666667vw;
    height: 14.6666666667vw;
  }
  #accounting-finance .p-job-type__head::before {
    margin-top: 1.3333333333vw;
    width: 160.8vw;
    height: 17.3333333333vw;
  }
  #it-systems .p-job-type__head::before {
    margin-top: 1.3333333333vw;
    width: 68.8vw;
    height: 16.8vw;
  }
  .p-job-type__sub-title {
    font-size: 4.2666666667vw;
  }
  .p-job-type__title {
    margin-top: 1.3333333333vw;
    font-size: 8vw;
    letter-spacing: -0.05em;
  }
  .p-job-type__body {
    margin-top: 8.5333333333vw;
  }
  .p-job-type__body-title {
    font-size: 4.2666666667vw;
    line-height: 1.8125;
  }
  .p-job-type__body-title.u-sp-only {
    display: block !important;
  }
  .p-job-type__body-title span::before {
    width: 103%;
  }
  .p-job-type__body-title span.u-desktop::before {
    display: none;
  }
  .p-job-type__body-title span.u-mobile::before {
    display: block;
  }
  .p-job-type__body-text {
    max-width: initial;
    margin-top: 6.4vw;
    font-size: 3.7333333333vw;
    line-height: 1.5714285714;
  }
  .p-job-type__img {
    position: relative;
    margin-top: 6.4vw;
    max-width: 113.0666666667vw;
    height: 40.8vw;
    aspect-ratio: 424/153;
  }
  .p-job-type__img img {
    aspect-ratio: 424/153;
    width: 113.0666666667vw;
    max-width: initial;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  #dev-build .p-job-type__img,
#house-studio .p-job-type__img,
#lease-sales .p-job-type__img,
#building-management .p-job-type__img,
#dev-purchase .p-job-type__img,
#hr-pr .p-job-type__img,
#accounting-finance .p-job-type__img,
#it-systems .p-job-type__img {
    height: auto;
    aspect-ratio: initial;
  }
  #dev-build .p-job-type__img img,
#house-studio .p-job-type__img img,
#hr-pr .p-job-type__img img {
    aspect-ratio: 343/84;
    max-width: 91.4666666667vw;
    position: static;
    width: 100%;
    -webkit-transform: none;
            transform: none;
  }
  #dev-purchase .p-job-type__img img,
#lease-sales .p-job-type__img img,
#building-management .p-job-type__img img,
#accounting-finance .p-job-type__img img,
#it-systems .p-job-type__img img {
    aspect-ratio: 343/124;
    max-width: 91.4666666667vw;
    position: static;
    width: 100%;
    -webkit-transform: none;
            transform: none;
  }
  #property-management .p-job-type__img {
    aspect-ratio: 416/151;
  }
  #property-management .p-job-type__img img {
    aspect-ratio: 416/151;
    width: 110.9333333333vw;
  }
  .p-job-type__body2 {
    padding: 6.4vw 4.2666666667vw;
    margin-top: 6.4vw;
    max-width: initial;
    background: url(../img/work/job-type-bg_sp.webp) no-repeat center center/cover;
  }
  .p-job-type__body2-title {
    font-size: 4.8vw;
    line-height: 1.4444444444;
  }
  .p-job-type__body2-items {
    margin-top: 6.4vw;
    gap: 6.4vw;
  }
  .p-job-type__body2-item {
    gap: 1.0666666667vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    position: relative;
    padding-left: 9.0666666667vw;
  }
  .p-job-type__body2-item::before {
    font-size: 6.4vw;
    line-height: 1.375;
    position: absolute;
    top: 0;
    left: 0;
  }
  .p-job-type__body2-item-title {
    width: initial;
    font-size: 4.8vw;
    line-height: 1.3888888889;
    white-space: nowrap;
  }
  .p-job-type__body2-item-text {
    width: initial;
    font-size: 3.7333333333vw;
    line-height: 1.5714285714;
  }
  .p-job-type__body3 {
    margin-top: 6.4vw;
    padding-inline: 0vw;
    max-width: initial;
  }
  .p-job-type__body3-title {
    font-size: 4.8vw;
    line-height: 1.4444444444;
  }
  .p-job-type__body3-items {
    -ms-grid-columns: 1fr 2vw 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 2vw;
  }
  .c-page-head__inner:has(.c-page-head__title-img--office) {
    gap: 4.5333333333vw;
  }
  .c-page-head__inner:has(.c-page-head__title-img--office) .c-breadcrumb {
    margin-left: 0;
  }
  .c-page-head__title-img.c-page-head__title-img--office {
    aspect-ratio: 190/36;
    max-width: 50.6666666667vw;
    margin-left: 0;
  }
  .p-page-office {
    padding-top: 24vw;
    padding-bottom: 21.3333333333vw;
  }
  .p-page-office::before {
    height: 100%;
    bottom: 0;
    top: initial;
  }
  .p-page-office__inner {
    max-width: initial;
    padding: 0 4.2666666667vw;
  }
  .p-page-office__content {
    margin-top: 10.6666666667vw;
  }
  .p-page-office__content-text {
    position: relative;
    font-size: 3.7333333333vw;
    line-height: 1.5714285714;
    padding-left: 4.2666666667vw;
    -webkit-transform: initial;
            transform: initial;
  }
  .p-page-office__content-text.u-sp-only::before {
    content: "";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 0;
    width: 0.2666666667vw;
    height: 100%;
    background-color: #1A1411;
  }
  .p-page-office__content-text::before {
    display: none;
  }
  .p-page-office__body {
    margin-top: 10.6666666667vw;
    margin-left: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 4.2666666667vw;
  }
  .p-page-office__body-items {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 2.1333333333vw;
    width: 100%;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-left: 0;
  }
  .p-page-office__body-img {
    aspect-ratio: 375/185;
    width: 100vw;
    margin-inline: calc(50% - 50vw);
    max-width: initial;
  }
  .p-page-office__body-img::before {
    display: none;
  }
  .c-loop-title--creation .c-loop-title__imgs img {
    aspect-ratio: 635/55;
    width: 169.3333333333vw;
  }
  .p-office-creation--community .c-loop-title__imgs img {
    aspect-ratio: 452/55;
    width: 120.5333333333vw;
  }
  .p-office-creation {
    margin-top: 0;
  }
  .p-office-creation#office-tour-22f {
    padding-top: 23.4666666667vw;
    padding-bottom: 21.3333333333vw;
    margin-top: 21.3333333333vw;
  }
  .p-office-creation__inner {
    max-width: initial;
    padding: 0 4.2666666667vw;
  }
  .p-office-creation__items {
    margin-top: 10.6666666667vw;
  }
  .p-office-creation__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .p-office-creation__item__box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .p-office-creation__item:nth-child(2) {
    margin-top: 12.2666666667vw;
  }
  .p-office-creation__item-left {
    font-size: 5.3333333333vw;
    line-height: 1.35;
    -webkit-transform: translateX(0vw);
            transform: translateX(0vw);
    gap: 1.0666666667vw;
  }
  .p-office-creation__item-left::before {
    top: 9.3333333333vw;
    left: 6.4vw;
    width: 13.3333333333vw;
    background: url(../img/office/time-border_sp.webp) no-repeat center center/cover;
    height: 89.5%;
  }
  .p-office-creation__item-left span {
    font-size: 2.6666666667vw;
    line-height: 1.4;
    margin-top: 0vw;
  }
  .p-office-creation__item-right {
    width: 79.7333333333vw;
    margin-top: 10.6666666667vw;
    -webkit-transform: translateX(-7.7333333333vw);
            transform: translateX(-7.7333333333vw);
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
  }
  .p-office-creation__item-head {
    padding-bottom: 1.0666666667vw;
    padding-left: 2.1333333333vw;
  }
  .p-office-creation__item-head::before {
    height: 0.2666666667vw;
  }
  .p-office-creation__item-title {
    font-size: 4.8vw;
    line-height: 1.4444444444;
  }
  .p-office-creation__item-sub-title {
    font-size: 2.6666666667vw;
    line-height: 1.4;
  }
  .p-office-creation__item-bg-title {
    font-size: 8vw;
    line-height: 1.4666666667;
    bottom: initial;
    right: 0vw;
    top: -8vw;
  }
  #office-tour-22f .p-office-creation__item-bg-title {
    top: -10.6666666667vw;
    font-size: 6.4vw;
    line-height: 1.4583333333;
  }
  .p-office-creation__item-body {
    margin-top: 1.0666666667vw;
    padding-inline: 2.1333333333vw;
  }
  .p-office-creation__item-text {
    font-size: 3.7333333333vw;
    line-height: 1.5714285714;
  }
  .p-office-creation__item-img {
    margin-top: 8.5333333333vw;
  }
  .p-office-creation__item-btns {
    margin-top: 0vw;
    margin-bottom: 0vw;
    gap: 1.8666666667vw;
  }
  .p-office-creation__item-btns .swiper-button-prev,
.p-office-creation__item-btns .swiper-button-next {
    gap: 1.8666666667vw;
  }
  [data-swiper=creation] img {
    aspect-ratio: 343/172;
  }
  [data-swiper=creation] .swiper-button-prev::after,
[data-swiper=creation] .swiper-button-next::after {
    width: 2.1333333333vw;
    height: 2.1333333333vw;
    top: 0.5333333333vw;
  }
  .p-office-creation__item-num {
    font-size: 3.7333333333vw;
    line-height: 1.4285714286;
  }
  .p-office-creation__item-border {
    width: 6.4vw;
    height: 0.2666666667vw;
  }
  .p-page-message {
    padding-top: 24vw;
  }
  .p-page-message__mv img {
    display: block;
    width: 100%;
    height: auto;
    max-height: none;
  }
  html:has(.p-page-message) {
    scroll-padding-top: 24vw;
  }
  .c-page-head__inner:has(.c-page-head__title-img--message) {
    gap: 3.2vw;
  }
  .c-page-head__inner:has(.c-page-head__title-img--message) .c-breadcrumb {
    margin-left: 0;
  }
  .c-page-head__title-img.c-page-head__title-img--message {
    aspect-ratio: 131.52/32.06;
    max-width: 35.072vw;
    margin-left: 0;
  }
  .c-page-head--message .c-page-head__subtitle--bottom span {
    font-size: 2.6666666667vw;
    line-height: 1.3;
  }
  .p-msg {
    margin: 10.6666666667vw auto 21.3333333333vw;
  }
  .p-msg__block {
    margin: 10.6666666667vw auto;
  }
  .p-msg__lead {
    max-width: initial;
    margin-top: 4.2666666667vw;
    font-size: 3.7333333333vw;
    font-weight: 500;
  }
  .p-msg__catch {
    font-size: 4.8vw;
  }
  .p-msg__gld {
    font-size: 3.7333333333vw;
  }
  .p-msg .p-msg__gld.sp-only {
    color: #CCB67C;
  }
  .p-msg__bl {
    font-weight: normal;
  }
  .p-msg__rule {
    margin: 10.6666666667vw auto;
  }
  .p-msg__rule::before {
    width: 10.6666666667vw;
    height: 0.8vw;
  }
  .p-msg .u-sp-only {
    display: inline;
  }
  .p-msg__sign figcaption {
    font-size: 4.8vw;
    margin-bottom: 2.6666666667vw;
  }
  .p-msg__sign img {
    width: 42.6666666667vw;
  }
  .p-msg html:has(.p-page-message) {
    scroll-padding-top: 21.3333333333vw;
  }
  .p-page-president {
    padding-top: 24vw;
  }
  .p-page-president__mv img {
    display: block;
    width: 100%;
    height: auto;
    max-height: none;
  }
  html:has(.p-page-president) {
    scroll-padding-top: 25.3333333333vw;
  }
  .c-page-head__inner:has(.c-page-head__title-img--president) {
    gap: 1.2vw;
  }
  .c-page-head__inner:has(.c-page-head__title-img--president) .c-breadcrumb {
    margin-left: 0;
  }
  .c-page-head__title-img.c-page-head__title-img--president {
    aspect-ratio: 184/36;
    max-width: 49.0666666667vw;
    margin-left: 0;
  }
  .p-psd {
    margin: 10.6666666667vw auto 21.3333333333vw;
  }
  .p-psd__block {
    margin: 10.6666666667vw auto;
  }
  .p-psd__lead {
    max-width: initial;
    font-size: 3.7333333333vw;
    line-height: 1.8571428571;
    font-weight: 500;
  }
  .p-psd .p-psd__mg {
    margin-top: 0vw;
  }
  .p-psd .p-psd__leadMgn {
    margin-top: 5.8666666667vw;
  }
  .p-psd__catch {
    font-size: 5.3333333333vw;
  }
  .p-psd__rule {
    margin: 10.6666666667vw auto;
  }
  .p-psd__rule::before {
    width: 10.6666666667vw;
    height: 0.8vw;
  }
  .p-psd__sign figcaption {
    font-size: 4.8vw;
    margin-bottom: 2.1333333333vw;
  }
  .p-psd__sign img {
    width: 52.2666666667vw;
  }
  .p-psd html:has(.p-page-message) {
    scroll-padding-top: 21.3333333333vw;
  }
  .c-page-head__inner:has(.c-page-head__title-img--faq) {
    gap: 4.5333333333vw;
  }
  .c-page-head__inner:has(.c-page-head__title-img--faq) .c-breadcrumb {
    margin-left: 0;
  }
  .c-page-head__title-img.c-page-head__title-img--faq {
    aspect-ratio: 120/36;
    max-width: 32vw;
  }
  .p-faq-visual__loop {
    margin-top: -8vw;
    margin-bottom: 8vw;
  }
  .p-faq__anchor {
    margin-top: 11.9466666667vw;
  }
  .p-faq__anchor-items {
    gap: 10.6666666667vw;
    -webkit-box-align: start;
    -webkit-align-items: start;
        -ms-flex-align: start;
            align-items: start;
  }
  .p-faq__anchor-item {
    letter-spacing: 0.2em;
  }
  .p-faq__anchor-item:first-child {
    letter-spacing: -0.05em;
  }
  .p-faq__anchor-link {
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    /* ←縦書きにする本命 */
    text-orientation: mixed;
    /* 英数字は横倒ししない */
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    /* 上揃え */
    padding: 0 0 0 5.3333333333vw;
    /* 短冊・矢印を右下に置くので下パディング不要 */
  }
  .p-faq__anchor-link span {
    font-size: 7.2vw;
  }
  .p-faq__anchor-link::before {
    background: url("../img/faq/bg-faq_anchor-sp.png") center/cover no-repeat;
    width: 11.1466666667vw;
    height: 25.1733333333vw;
    top: 14.6666666667vw;
  }
  .p-faq-sec {
    padding: 21.3333333333vw 0;
  }
  .p-faq-sec__head {
    margin-bottom: 6.4vw;
  }
  .p-faq-sec__title {
    font-size: 8.5333333333vw;
  }
  .p-faq-sec__image {
    margin: -10.6666666667vw auto 0;
    width: 100vw;
    height: auto;
  }
  .u-mgn-30 {
    margin: -8vw auto 0;
  }
  .p-faq-grid {
    margin: 10.6666666667vw 6.4vw 0;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 6.4vw;
  }
  .p-faq-q {
    font-size: 4vw;
    -webkit-column-gap: 3.2vw;
       -moz-column-gap: 3.2vw;
            column-gap: 3.2vw;
  }
  .p-faq-q__icon {
    width: 16.5333333333vw;
    height: 7.4666666667vw;
  }
  .p-faq-a {
    font-size: 3.4666666667vw;
    margin-top: 3.2vw;
  }
  .p-faq-a__icon {
    width: 16.5333333333vw;
    height: 7.4666666667vw;
  }
  .p-page-cross-talk {
    padding-top: 36vw;
  }
  .c-page-head__inner:has(.c-page-head__title-img--cross-talk) {
    gap: 4.5333333333vw;
  }
  .c-page-head__inner:has(.c-page-head__title-img--cross-talk) .c-breadcrumb {
    margin-left: 0;
  }
  .c-page-head__title-img.c-page-head__title-img--cross-talk {
    aspect-ratio: 132/34;
    max-width: 35.2vw;
    margin-left: 0;
  }
  .c-loop-title--cross-talk .c-loop-title__imgs {
    top: 6.4vw;
  }
  .c-loop-title--cross-talk .c-loop-title__imgs img {
    width: 292.8vw;
    aspect-ratio: 2399/159;
  }
  .p-crosstalk__anchor {
    margin: 16.5333333333vw auto 64.9333333333vw;
  }
  .p-crosstalk__anchor-item {
    width: 44.8vw;
    height: auto;
  }
  .p-crosstalk__sec {
    padding-top: 10.6666666667vw;
  }
  .p-crosstalk__sec .p-crosstalk__title-image {
    width: 27.7333333333vw;
    height: auto;
  }
  .p-crosstalk__sec .p-crosstalk__title-text {
    font-size: 6.4vw;
  }
  .p-crosstalk__sec p {
    font-size: 3.4666666667vw;
  }
  .p-crosstalk__sec picture img {
    margin: 5.6vw 0 32vw;
    width: 100%;
    height: auto;
    max-height: none;
  }
  .crosstalk-vol1 {
    padding-top: 10.6666666667vw;
    margin-bottom: 0;
  }
  .p-page-women {
    padding-top: 36vw;
  }
  .p-page-women .u-sp-only {
    display: inline;
  }
  .c-page-head__inner:has(.c-page-head__title-img--women) {
    gap: 4.5333333333vw;
  }
  .c-page-head__inner:has(.c-page-head__title-img--women) .c-breadcrumb {
    margin-left: 0;
  }
  .c-page-head__title-img.c-page-head__title-img--women {
    aspect-ratio: 198/34;
    max-width: 52.8vw;
    margin-left: 0;
  }
  .c-loop-title--women .c-loop-title__imgs {
    top: 6.4vw;
  }
  .c-loop-title--women .c-loop-title__imgs img {
    width: 574.6666666667vw;
    aspect-ratio: 2155/68;
  }
  .p-women__anchor {
    margin: 16.5333333333vw auto 64.9333333333vw;
  }
  .p-women__anchor-item {
    width: 44.8vw;
    height: auto;
  }
  .p-women__sec {
    padding-top: 10.6666666667vw;
  }
  .p-women__sec .p-women__title-image {
    width: 27.7333333333vw;
    height: auto;
  }
  .p-women__sec .p-women__title-text {
    font-size: 6.4vw;
  }
  .p-women__sec p {
    font-size: 3.4666666667vw;
  }
  .p-women__sec picture img {
    margin: 5.6vw 0 32vw;
    width: 100%;
    height: auto;
    max-height: none;
  }
  .women-vol1 {
    padding-top: 10.6666666667vw;
    margin-bottom: 0;
  }
  .c-page-head__inner:has(.c-page-head__title-img--carrier) {
    gap: 4.5333333333vw;
  }
  .c-page-head__title-img {
    aspect-ratio: 112/36;
    max-width: 29.8666666667vw;
    margin-left: 6.4vw;
  }
  .c-page-catchcopy__flex--carrier {
    padding-bottom: 0vw;
    -webkit-box-pack: initial;
    -webkit-justify-content: initial;
        -ms-flex-pack: initial;
            justify-content: initial;
    display: block;
  }
  .c-page-catchcopy__flex--carrier .c-page-catchcopy__img-area {
    right: initial;
    left: 0;
  }
  .c-page-catchcopy__flex--carrier .c-page-catchcopy__text {
    font-size: 8.5333333333vw;
    margin-left: auto;
    -webkit-transform: none;
            transform: none;
    margin-top: 15.7333333333vw;
    margin-right: 4.2666666667vw;
  }
  .c-page-catchcopy__inner--carrier::before {
    width: 153.3333333333vw;
    height: 72vw;
    background: url(../img/carrier/catchcopy-bg_sp.png) center center/cover no-repeat;
    top: 13.3333333333vw;
    left: 25%;
    right: initial;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .c-page-catchcopy__loop-area.c-page-catchcopy__loop-area--carrier {
    top: 38.1333333333vw;
  }
  .c-page-head__inner:has(.c-page-head__title-img--carrier) .c-breadcrumb {
    margin-left: 0;
  }
  .c-page-head__title-img.c-page-head__title-img--carrier {
    aspect-ratio: 120/36;
    max-width: 32vw;
  }
  .c-page-anchor-link--carrier {
    width: 100%;
    margin-top: 31.7333333333vw;
    padding-bottom: 2.6666666667vw;
    width: 100vw;
    margin-inline: calc(50% - 50vw);
  }
  .c-page-anchor-link--carrier .c-page-anchor-link__items {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 1.0666666667vw 8vw;
    padding-inline: 5.8666666667vw;
    width: 100%;
    margin-left: 88.2666666667vw;
    margin-inline: auto;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 8vw 1fr 8vw 1fr;
    grid-template-columns: repeat(3, 1fr);
  }
  .c-page-anchor-link--carrier .c-page-anchor-link__items {
    margin-left: 4.2666666667vw;
  }
  .c-page-anchor-link--carrier .c-page-anchor-link__item {
    height: 14.4vw;
  }
  .c-page-anchor-link--carrier .c-page-anchor-link__item a {
    white-space: nowrap;
    font-size: 3.7333333333vw;
    line-height: 1.4285714286;
  }
  .c-page-anchor-link--carrier .c-page-anchor-link__item--lh a {
    line-height: 1.1428571429;
  }
  .c-page-anchor-link__item a:before {
    width: 19.7333333333vw;
    height: 11.4666666667vw;
    top: 3.2vw;
    left: -4.2666666667vw;
  }
  .p-page-carrier {
    padding-left: 0vw;
    gap: 6.4vw;
  }
  .p-page-carrier__cards {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 5.3333333333vw;
  }
  .p-page-carrier__card {
    max-width: 85.3333333333vw;
    margin-inline: auto;
  }
  .p-page-carrier__card-body {
    padding: 6.4vw 5.3333333333vw;
  }
  .p-page-carrier__card-title {
    font-size: 5.3333333333vw;
  }
  .p-page-carrier__card-salary {
    font-size: 3.4666666667vw;
  }
  .p-page-carrier__card-salary-icon {
    margin-right: 0.5333333333vw;
    font-size: 4.2666666667vw;
  }
  .p-page-carrier__card-divider {
    margin-top: 0.5333333333vw;
  }
  .p-page-carrier__card-divider::after {
    margin-top: 0.5333333333vw;
  }
  .p-page-carrier__card-details {
    margin-top: 0.5333333333vw;
  }
  .p-page-carrier__card-detail-title {
    font-size: 3.4666666667vw;
  }
  .p-page-carrier__card-detail-desc {
    font-size: 3.4666666667vw;
    line-height: 1.5384615385;
  }
  .p-page-carrier__card-summary {
    margin-top: 3.2vw;
    gap: 3.2vw;
  }
  .p-page-carrier__card-summary-item {
    gap: 1.6vw;
  }
  .p-page-carrier__card-summary-label {
    font-size: 3.2vw;
  }
  .p-page-carrier__card-summary-text {
    font-size: 3.2vw;
  }
  .p-page-carrier::before {
    height: 216.5333333333vw;
  }
  .p-page-carrier__inner {
    max-width: initial;
    padding: 0 4.2666666667vw;
  }
  .p-page-carrier__items {
    margin-top: 26.6666666667vw;
    padding-bottom: 29.8666666667vw;
    gap: 20.2666666667vw 5.3333333333vw;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 5.3333333333vw 1fr 5.3333333333vw 1fr;
    grid-template-columns: repeat(3, 1fr);
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    max-width: 74.6666666667vw;
  }
  .p-page-carrier__contents {
    display: block;
    margin-top: 20.2666666667vw;
  }
  .p-new-graduate-requirements--carrier {
    margin-top: 10.6666666667vw;
    width: 100%;
    padding-inline: 2.1333333333vw;
  }
  .p-new-graduate-requirements--carrier:not(:first-child) {
    margin-top: 6.4vw;
  }
  .p-new-graduate-requirements--carrier .p-new-graduate-requirements__items {
    padding: 5.3333333333vw 2.1333333333vw 6.4vw;
    max-width: initial;
  }
  .p-new-graduate-requirements--carrier .p-new-graduate-requirements__items:not(:first-child) {
    margin-top: 6.4vw;
    padding-top: 6.4vw;
  }
  .p-new-graduate-requirements--carrier .p-new-graduate-requirements__term {
    font-size: 4.8vw;
    line-height: 1.2777777778;
    width: 100%;
  }
  .p-new-graduate-requirements--carrier .p-new-graduate-requirements__desc {
    font-size: 3.4666666667vw;
    line-height: 1.4615384615;
    margin-top: 2.1333333333vw;
    width: 100%;
  }
  .p-new-graduate-requirements--carrier .p-new-graduate-requirements__item-title {
    font-size: 5.3333333333vw;
    line-height: 1.45;
    padding-bottom: 2.1333333333vw;
  }
  .p-new-graduate-requirements--carrier .p-new-graduate-requirements__item-title::after {
    bottom: -0.8vw;
  }
  .p-new-graduate-requirements__item-category {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0.5333333333vw;
    padding: 6.4vw 2.1333333333vw;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .p-new-graduate-requirements__item-category-item {
    font-size: 3.4666666667vw;
    line-height: 1.4615384615;
    gap: 1.0666666667vw;
  }
  .p-new-graduate-requirements__item-category-item::before {
    width: 3.4666666667vw;
    height: 3.4666666667vw;
    -webkit-transform: translateY(0vw);
            transform: translateY(0vw);
  }
  .p-new-graduate-requirements__btn--carrier {
    margin-top: 0vw;
  }
  .p-new-graduate-requirements__btn--carrier .p-new-graduate-entry__btn {
    max-width: 64vw;
    line-height: 3.0769230769;
    text-align: center;
  }
  .p-new-graduate-requirements__btn--carrier .p-new-graduate-entry__btn::before {
    right: 3.4666666667vw;
  }
  .c-page-head--notfound .c-page-head__subtitle--bottom span {
    font-size: 3.2vw;
    line-height: 1.3;
  }
  .c-page-head__title-img.c-page-head__title-img--notfound {
    margin-left: 0;
    aspect-ratio: 88/32;
    max-width: 23.4666666667vw;
  }
  .p-page-404 {
    padding-top: 32vw;
    padding-bottom: 25.6vw;
  }
  .p-page-404__inner {
    max-width: initial;
    padding: 0 4.2666666667vw;
  }
  .p-page-404__message {
    margin-top: 14.9333333333vw;
  }
  .p-page-404__headline {
    font-size: 7.4666666667vw;
    line-height: 1.2857142857;
    margin-bottom: 6.4vw;
  }
  .p-page-404__lead,
.p-page-404__description {
    font-size: 3.7333333333vw;
    line-height: 1.7142857143;
    text-align: left;
  }
  .p-page-404__description {
    margin-top: 4.2666666667vw;
  }
  .p-page-404__actions {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 4.2666666667vw;
    margin-top: 10.6666666667vw;
  }
  .p-page-404__btn {
    min-width: initial;
    width: 100%;
    padding: 4.2666666667vw 8.5333333333vw;
    font-size: 3.7333333333vw;
  }
  .p-page-404__suggest {
    margin-top: 19.2vw;
  }
  .p-page-404__suggest-title {
    font-size: 4.2666666667vw;
    margin-bottom: 6.4vw;
  }
  .p-page-404__links {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 3.2vw;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p-page-404__link-item a {
    font-size: 4.2666666667vw;
    padding-bottom: 1.0666666667vw;
  }
  .p-page-404__link-item a::after {
    height: 0.2666666667vw;
  }
  .c-page-head--reason .c-page-head__inner {
    gap: 2.5333333333vw;
  }
  .c-page-head__title-img.c-page-head__title-img--reason {
    aspect-ratio: 182/34;
    max-width: 48.5333333333vw;
    margin-left: 0;
  }
  .c-loop-title--reason .c-loop-title__title {
    -webkit-transform: none;
            transform: none;
  }
  .c-loop-title--reason .c-loop-title__imgs {
    top: 9.8666666667vw;
  }
  .c-loop-title--reason .c-loop-title__imgs img {
    width: 387.5653333333vw;
    aspect-ratio: 1453.37/69.56;
  }
  .p-page-reason {
    padding-top: 24vw;
  }
  .p-reason-anchor {
    width: 92vw;
    margin: 24vw auto;
  }
  .p-reason-anchor__items {
    row-gap: 10.6666666667vw;
  }
  .p-reason-anchor__item {
    width: 44.8vw;
  }
  .p-reason-anchor__item a::after {
    left: 3.7333333333vw;
    bottom: -3.7333333333vw;
    width: 1.3333333333vw;
    height: 9.0666666667vw;
  }
  .p-reason-type::after {
    height: 26.6666666667vw;
    background: black;
  }
  .p-reason-type__persons {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    gap: 0;
    padding: 0;
  }
  .p-reason-type__person .e-year {
    width: 20.2666666667vw;
    height: 15.4666666667vw;
    font-size: 3.7333333333vw;
  }
  .p-reason-type__person .e-department {
    left: 5.3333333333vw;
    bottom: 3.7333333333vw;
    font-size: 3.4666666667vw;
  }
  .p-reason-modal__close {
    width: 10.6666666667vw;
    height: 10.6666666667vw;
  }
  .p-reason-modal__content {
    background: url("../img/reason/modal_bg_sp.png") center center/cover no-repeat;
  }
  .p-reason-modal__content {
    width: 84vw;
  }
  .p-reason-modal__content .type-person .e-year {
    width: 20.2666666667vw;
    height: 15.4666666667vw;
    font-size: 3.7333333333vw;
  }
  .p-reason-modal__content .type-person .e-text {
    padding: 19.2vw 5.3333333333vw 66.6666666667vw;
  }
  .p-reason-modal__content .type-person .e-text dt {
    margin-bottom: 1.8666666667vw;
    font-size: 4.8vw;
  }
  .p-reason-modal__content .type-person .e-text dd {
    font-size: 3.7333333333vw;
  }
  .c-page-head__inner:has(.c-page-head__title-img--dna) {
    gap: 4.5333333333vw;
  }
  .c-page-head__inner:has(.c-page-head__title-img--work) .c-breadcrumb {
    margin-left: 0;
  }
  .c-page-head__title-img.c-page-head__title-img--dna {
    aspect-ratio: 83/34;
    max-width: 22.1333333333vw;
    margin-left: 0;
  }
  .p-page-work__inner {
    max-width: initial;
    padding: 0 4.2666666667vw;
  }
  .p-dna-visual__bg {
    height: calc(100% - 24vw);
  }
  .p-dna-visual__bg span {
    background-image: url("../img/dna/visual-bg_sp.webp");
  }
  .p-dna-visual__title {
    height: calc(100% - 24vw);
  }
  .p-dna-visual__title picture {
    width: 78.6666666667vw;
    height: 0;
    -webkit-transition-duration: 0.8s;
            transition-duration: 0.8s;
  }
  .p-dna-visual__title picture img {
    width: 100%;
    height: 62.4vw;
  }
  .p-dna-visual__title.-show picture {
    width: 78.6666666667vw;
    height: 62.4vw;
  }
  .p-dna-philosophy {
    margin-top: 6.4vw;
    margin-bottom: 21.3333333333vw;
  }
  .p-dna-philosophy__head {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    position: relative;
    top: auto;
    right: auto;
    margin-left: 21.3333333333vw;
    margin-bottom: 13.8666666667vw;
  }
  .p-dna-philosophy__head .e-en {
    font-size: 2.9333333333vw;
  }
  .p-dna-philosophy__head .e-title {
    margin-right: 1.0666666667vw;
  }
  .p-dna-philosophy__head .e-title span {
    font-size: 4.2666666667vw;
  }
  .p-dna-philosophy__head .e-copy {
    padding-top: 13.3333333333vw;
    margin-right: 3.2vw;
  }
  .p-dna-philosophy__head .e-copy span {
    font-size: 16vw;
  }
  .p-dna-philosophy__body-image {
    width: 68.8vw !important;
  }
  .p-dna-philosophy__body-image picture {
    display: block;
    width: 100%;
    height: 40vw;
  }
  .p-dna-philosophy__body-image picture img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .p-dna-philosophy__body-image p {
    display: none;
  }
  .p-dna-philosophy__body-summary::before {
    top: 8.8vw;
    left: 5.3333333333vw;
    width: 13.8666666667vw;
    height: 31.4666666667vw;
  }
  .p-dna-philosophy__body-summary .e-num {
    font-size: 10.6666666667vw;
  }
  .p-dna-philosophy__body-summary .e-title {
    margin-left: 10.6666666667vw;
    margin-bottom: 2.1333333333vw;
    font-size: 7.4666666667vw;
  }
  .p-dna-philosophy__body-summary .e-en {
    margin-left: 18.6666666667vw;
    margin-bottom: 2.1333333333vw;
    font-size: 3.2vw;
  }
  .p-dna-philosophy__body-summary .e-text {
    width: 69.3333333333vw;
    padding: 2.6666666667vw 3.2vw;
    padding-right: 0;
    margin-left: 18.6666666667vw;
    font-size: 3.7333333333vw;
    line-height: 5.8666666667vw;
    text-align: justify;
  }
  .p-dna-philosophy__body#philosophy-01 {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    width: auto;
    margin-bottom: 10.6666666667vw;
  }
  .p-dna-philosophy__body#philosophy-01 .p-dna-philosophy__body-text .e-text {
    white-space: nowrap;
  }
  .p-dna-philosophy__body#philosophy-01 .p-dna-philosophy__body-image {
    margin-left: auto;
    margin-bottom: -8vw;
  }
  .p-dna-philosophy__body#philosophy-02 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin-bottom: 10.6666666667vw;
  }
  .p-dna-philosophy__body#philosophy-02 .p-dna-philosophy__body-summary {
    margin-top: 0;
  }
  .p-dna-philosophy__body#philosophy-03 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    width: 100%;
  }
  .p-dna-philosophy__body#philosophy-03 .p-dna-philosophy__body-summary {
    margin-left: 0;
  }
  .p-dna-philosophy__body#philosophy-03 .p-dna-philosophy__body-summary .e-text {
    width: 71.4666666667vw;
  }
  .p-dna-philosophy__body#philosophy-03 .p-dna-philosophy__body-image {
    width: 64vw;
    margin-top: 0;
    margin-left: auto;
    margin-bottom: -8vw;
  }
  .c-page-head--data .c-page-head__inner {
    gap: 1.6vw;
  }
  .c-page-head__title-img.c-page-head__title-img--data {
    aspect-ratio: 196/34;
    max-width: 52.2666666667vw;
    margin-left: 0;
  }
  .c-page-head--data .c-page-head__subtitle--bottom span {
    font-size: 2.6666666667vw;
    line-height: 1.3;
  }
  .c-loop-title--data .c-loop-title__imgs {
    top: 0;
  }
  .c-loop-title--data .c-loop-title__imgs img {
    width: 180.0373333333vw;
    aspect-ratio: 675.14/54.6;
  }
  .p-data-visual {
    padding-top: 24vw;
  }
  .p-data-visual__loop {
    margin-top: -8vw;
    margin-bottom: 8vw;
  }
  .p-data-visual__anchor {
    gap: 11.2vw;
    padding-bottom: 17vw;
  }
  .p-data-visual__anchor a {
    width: 15.4666666667vw;
    height: 53.3333333333vw;
    padding-left: 4vw;
  }
  .p-data-visual__anchor a::before {
    top: 16vw;
    width: 25.0666666667vw;
    height: 11.2vw;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    -webkit-transform-origin: left bottom;
            transform-origin: left bottom;
  }
  .p-data-visual__anchor a::after {
    top: 40vw;
    left: 2.1333333333vw;
    width: 1.3333333333vw;
    height: 10.6666666667vw;
  }
  .p-data-visual__anchor a span {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-size: 7.4666666667vw;
  }
  .p-data-section {
    padding-top: 10.6666666667vw;
    padding-bottom: 13.3333333333vw;
  }
  .p-data-section__head {
    margin-bottom: 9.3333333333vw;
  }
  .p-data-section__head-title {
    font-size: 8.5333333333vw;
  }
  .p-data-section__head-image {
    width: 200vw;
    top: 2.6666666667vw;
    height: 14.1333333333vw;
  }
  .p-data-section__content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    width: 96vw;
    padding: 2.1333333333vw;
  }
  .p-data-section__content .data-column {
    width: 100%;
  }
  .p-data-section__content .data-column .column-title {
    font-size: 4.8vw;
  }
  .p-data-section__content .data-column .chart-title {
    top: 4vw;
    left: 5.3333333333vw;
  }
  .p-data-section__content .data-column .chart-title h3 {
    font-size: 4.2666666667vw;
  }
  .p-data-section__content .data-column .chart-title .number .number-counter {
    font-size: 11.2vw;
  }
  .p-data-section__content .data-column .chart-title .number .unit {
    margin-left: 0.2em;
    line-height: 1.2;
    font-size: 5.3333333333vw;
  }
  .p-data-section__content .data-column .chart-title > span {
    margin-top: 0.6em;
    font-size: 3.4666666667vw;
  }
  .p-data-section__content .data-column .chart-canvas {
    width: 91.4666666667vw;
    height: 91.4666666667vw;
    padding-top: 16vw;
    padding-bottom: 12vw;
  }
  .p-data-section__content .data-column .chart-canvas canvas {
    width: 91.4666666667vw;
  }
  .p-data-section__content .data-column .chart-text {
    bottom: 0;
    padding-bottom: 3.2vw;
    font-size: 3.4666666667vw;
  }
  .p-data-modal__close {
    width: 10.6666666667vw;
    height: 10.6666666667vw;
  }
  .p-data-modal__content {
    width: 90.6666666667vw;
    padding-top: 13.3333333333vw;
  }
  .p-data-result-list {
    width: 100%;
  }
  .p-data-result-list .date {
    font-size: 3.7333333333vw;
  }
  .p-data-result-list .date span {
    font-size: 2.9333333333vw;
  }
  .p-data-result-list .item {
    padding-right: 7px;
    margin-bottom: 0.8vw;
    font-size: 2.9333333333vw;
  }
  .p-data-result-list .item-date {
    width: 18.6666666667vw;
  }
  .p-data-result-list .item-label span {
    padding-bottom: 0.2em;
  }
  #Content1 {
    row-gap: 2.1333333333vw;
    margin-bottom: 4vw;
  }
  #Content1 .data-column {
    width: 100%;
    height: 91.4666666667vw;
  }
  #Content2 {
    row-gap: 2.1333333333vw;
    margin-bottom: 0;
    padding-bottom: 0;
  }
  #Content2 .data-column {
    width: 100%;
  }
  #Content3 {
    row-gap: 2.1333333333vw;
  }
  #Content3 .data-column {
    width: 100%;
  }
  #Content4 .data-group {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    row-gap: 2.1333333333vw;
    width: 100%;
    height: auto;
  }
  #Content4 .data-group .data-column {
    width: 100%;
  }
  #Content5 {
    row-gap: 2.1333333333vw;
  }
  #Content5 .data-group {
    width: 100%;
    row-gap: 2.1333333333vw;
  }
  #Data4 .chart-canvas {
    padding-top: 18.6666666667vw;
  }
  #Data5 {
    height: 69.3333333333vw;
  }
  #Data5 .e-reluxia-text {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    height: 22.6666666667vw;
    padding-top: 0.45em;
    font-size: 5.8666666667vw;
    text-align: center;
  }
  #Data5 .e-data {
    height: 45.3333333333vw;
    background-position: center 11.2vw;
  }
  #Data5 .e-data h3 {
    padding-top: 3.2vw;
    font-size: 4.8vw;
  }
  #Data5 .e-data .number {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    gap: 1.6vw;
    margin-top: 6.4vw;
    margin-left: 5.3333333333vw;
  }
  #Data5 .e-data .number .number-counter {
    width: 29.3333333333vw;
    font-size: 22.9333333333vw;
  }
  #Data5 .e-data .number span {
    line-height: 1.15;
    font-size: 8.5333333333vw;
  }
  #Data6 {
    height: 97.6vw;
  }
  #Data6 .e-chart {
    width: 78.9333333333vw;
  }
  #Data6 .e-chart .chart-text {
    top: 2.1333333333vw;
    right: 1.0666666667vw;
    width: 72.8vw;
  }
  #Data6 .e-chart .chart-pie {
    top: 8.5333333333vw;
    right: 11.2vw;
    width: 42.9333333333vw;
    height: 42.9333333333vw;
  }
  #Data6 .e-map {
    bottom: 1.6vw;
    left: 0vw;
    width: 53.3333333333vw;
    height: 58.6666666667vw;
    background-image: url("../img/data/data6-map_sp.png");
  }
  #Data6 .e-map span {
    font-size: 5.3333333333vw;
  }
  #Data6 .e-map .number-1 {
    top: 6.1333333333vw;
    left: 4vw;
  }
  #Data6 .e-map .number-1 .number-counter {
    width: auto;
    font-size: 10.6666666667vw;
  }
  #Data6 .e-map .number-2 {
    gap: 1.0666666667vw;
    right: 0.2666666667vw;
    bottom: 2.1333333333vw;
  }
  #Data6 .e-map .number-2 .number-counter {
    font-size: 10.6666666667vw;
  }
  #Data7 {
    height: 115.4666666667vw;
    padding-top: 1.3333333333vw;
  }
  #Data7 .e-title {
    height: 19.4666666667vw;
    margin: 0 auto 3.7333333333vw;
    padding: 3.2vw 0 0 28.5333333333vw;
  }
  #Data7 .e-title h3 {
    font-size: 5.6vw;
    line-height: 8vw;
  }
  #Data7 .e-list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    gap: 3.2vw 0;
  }
  #Data7 .e-list .item {
    width: 50%;
  }
  #Data7 .e-list .item h4 {
    margin-bottom: 1.0666666667vw;
    font-size: 3.2vw;
  }
  #Data7 .e-list .item picture {
    height: 19.2vw;
  }
  #Data7 .e-list .item .number .number-counter {
    font-size: 12.8vw;
  }
  #Data7 .e-list .item .number span {
    font-size: 6.4vw;
  }
  #Data7 .e-list .item .reluxia {
    padding: 0.2em 0.6em;
    font-size: 2.6666666667vw;
  }
  #Data7 .e-list .item .note {
    margin-top: 0.75em;
    font-size: 2.9333333333vw;
  }
  #Data7 .e-list .item-1 picture {
    width: 16.5333333333vw;
  }
  #Data7 .e-list .item-2 picture {
    width: 23.7333333333vw;
  }
  #Data7 .e-list .item-3 picture {
    width: 20.2666666667vw;
  }
  #Data7 .e-list .item-4 picture {
    padding-top: 1.3333333333vw;
    width: 11.2vw;
  }
  #Data9 {
    padding: 4.2666666667vw 1.6vw;
  }
  #Data9 .e-text {
    margin-bottom: 2.6666666667vw;
    font-size: 4.2666666667vw;
    line-height: 6.9333333333vw;
  }
  #Data9 .e-result {
    height: 72vw;
    margin-bottom: 4vw;
  }
  #Data9 .e-more {
    padding: 0 2.6666666667vw;
    margin-bottom: 4vw;
  }
  #Data9 .e-more a {
    height: 16vw;
    font-size: 4.2666666667vw;
  }
  #Data9 .e-more a span {
    right: 3.2vw;
    font-size: 4.2666666667vw;
  }
  #Data9 .e-message {
    gap: 1.3333333333vw;
  }
  #Data9 .e-message span {
    font-size: 7.2vw;
  }
  #Data10 {
    height: 79.4666666667vw;
    padding-top: 6.1333333333vw;
  }
  #Data10 .column-title {
    margin-bottom: 2.6666666667vw;
  }
  #Data10 .e-chart {
    width: 41.3333333333vw;
    margin: 17.0666666667vw auto 0.4166666667vw;
  }
  #Data10 .e-data {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    position: absolute;
    top: 16vw;
    width: 100%;
    padding: 0 6.4vw;
  }
  #Data10 .e-data .data {
    font-size: 4vw;
  }
  #Data10 .e-data .number .number-counter {
    font-size: 11.2vw;
  }
  #Data10 .e-data .number > span {
    font-size: 6.4vw;
  }
  #Data11 {
    height: 82.1333333333vw;
    padding-top: 4.2666666667vw;
    padding-left: 12.8vw;
  }
  #Data11 .column-title {
    margin-bottom: 4.8vw;
  }
  #Data11 .e-data {
    margin-bottom: 8vw;
  }
  #Data11 .e-data .data {
    font-size: 6.4vw;
  }
  #Data11 .e-data .number {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  #Data11 .e-data .number .number-counter {
    font-size: 16vw;
  }
  #Data11 .e-data .pic-1 {
    width: 24.5333333333vw;
    margin-left: 8.8vw;
  }
  #Data11 .e-data .pic-2 {
    width: 17.0666666667vw;
  }
  #Data12 {
    padding-top: 4.8vw;
    padding-bottom: 2.6666666667vw;
  }
  #Data12 .column-title {
    margin-bottom: 9.3333333333vw;
  }
  #Data12 .e-chart {
    margin-left: 4.8vw;
  }
  #Data12 .e-chart .chart-bar {
    height: 9.3333333333vw;
    margin-bottom: 4.2666666667vw;
  }
  #Data12 .e-chart .chart-bar .label {
    width: 14.6666666667vw;
    font-size: 5.6vw;
  }
  #Data12 .e-chart .chart-bar .bar {
    width: 44.8vw;
  }
  #Data12 .e-chart .chart-bar .number .number-counter {
    font-size: 8vw;
  }
  #Data12 .e-chart .chart-bar .number > span {
    font-size: 4vw;
  }
  #Data13 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-column-gap: 6.6666666667vw;
       -moz-column-gap: 6.6666666667vw;
            column-gap: 6.6666666667vw;
    height: 47.4666666667vw;
    padding-top: 4.8vw;
  }
  #Data13 .column-title {
    width: 100%;
    margin-bottom: 3.2vw;
  }
  #Data13 .e-chart {
    margin-bottom: 5.3333333333vw;
  }
  #Data13 .e-chart .pic {
    width: 32vw;
    padding-left: 0.8vw;
    margin-bottom: 0.5333333333vw;
  }
  #Data13 .e-chart .chart-ratio {
    gap: 1.3333333333vw;
  }
  #Data13 .e-chart .chart-ratio .data .label {
    font-size: 2.4vw;
  }
  #Data13 .e-chart .chart-ratio .data .number {
    font-size: 8.5333333333vw;
  }
  #Data13 .e-chart .chart-ratio .colon {
    font-size: 4.8vw;
  }
  #Data14 {
    height: 98.6666666667vw;
    padding-top: 5.3333333333vw;
  }
  #Data14 .column-title {
    margin-bottom: 0vw;
  }
  #Data14 .e-chart {
    padding: 0 2.6666666667vw;
    margin-bottom: 5.3333333333vw;
  }
  #Data14 .e-chart .data {
    font-size: 3.4666666667vw;
  }
  #Data14 .e-chart .data .label {
    margin-bottom: 0.2em;
  }
  #Data14 .e-chart .number .number-counter {
    padding-left: 0.3em;
    font-size: 8.2666666667vw;
  }
  #Data14 .e-chart .chart {
    width: 59.2vw;
    margin: -5.3333333333vw auto 0;
  }
  #Data15 {
    height: auto;
    padding-top: 5.3333333333vw;
  }
  #Data15 .column-title {
    margin-bottom: 3.2vw;
  }
  #Data15 .e-chart {
    position: relative;
    width: 74.6666666667vw;
  }
  #Data15 .e-data {
    padding: 0 2.6666666667vw;
    margin-top: -12vw;
  }
  #Data15 .e-data .data {
    font-size: 3.2vw;
  }
  #Data15 .e-data .data .label {
    margin-bottom: 2.6666666667vw;
    font-size: 1.8666666667vw;
  }
  #Data15 .e-data .number .number-counter {
    font-size: 7.2vw;
  }
  #Data15 .e-data .number > span {
    font-size: 2.9333333333vw;
  }
  #Data16 {
    height: auto;
    padding-top: 5.3333333333vw;
    padding-bottom: 5.3333333333vw;
  }
  #Data16 .column-title {
    margin-bottom: 4.2666666667vw;
  }
  #Data16 .e-map {
    position: relative;
    right: auto;
    bottom: auto;
    width: 85.8666666667vw;
    margin: 0 auto 4.8vw;
    padding-right: 6.9333333333vw;
  }
  #Data16 .e-map .data-1 {
    top: 6.4vw;
    left: 38.1333333333vw;
  }
  #Data16 .e-map .data-2 {
    top: 50.6666666667vw;
    left: 73.0666666667vw;
  }
  #Data16 .e-map .data-3 {
    top: 32vw;
    left: 38.9333333333vw;
  }
  #Data16 .e-map .data-4 {
    top: 66.6666666667vw;
    left: 46.9333333333vw;
  }
  #Data16 .e-map .data-5 {
    top: 41.8666666667vw;
    left: 21.8666666667vw;
  }
  #Data16 .e-map .data-6 {
    top: 44.2666666667vw;
    left: 0;
  }
  #Data16 .e-map .number .number-counter {
    font-size: 5.6vw;
  }
  #Data16 .e-map .number > span {
    font-size: 2.9333333333vw;
  }
  #Data16 .e-graduate {
    margin-left: 4vw;
  }
  #Data16 .e-graduate .title {
    font-size: 4.2666666667vw;
  }
  #Data16 .e-graduate .list {
    font-size: 3.4666666667vw;
  }
  #Data16 .e-graduate .note {
    font-size: 3.2vw;
  }
  #Data17 {
    width: 44.8vw;
    height: 35.7333333333vw;
    padding-top: 4vw;
    padding-left: 1.6vw;
  }
  #Data17 .column-title {
    margin-bottom: 1.8666666667vw;
    text-align: left;
  }
  #Data17 .e-data {
    gap: 2.6666666667vw;
  }
  #Data17 .e-data .data {
    margin-left: -1.3333333333vw;
  }
  #Data17 .e-data .data .label {
    margin-top: -1.0666666667vw;
    margin-bottom: 1.0666666667vw;
    font-size: 3.4666666667vw;
  }
  #Data17 .e-data .number .number-counter {
    font-size: 14.6666666667vw;
  }
  #Data17 .e-data .number .number-counter span {
    margin-left: 0;
    letter-spacing: -0.05em;
    font-size: 12vw;
  }
  #Data17 .e-data .number > span {
    margin-left: 0.05em;
    line-height: 0.95;
    font-size: 6.4vw;
  }
  #Data17 .e-data .pic {
    width: 14.1333333333vw;
  }
  #Data17 .e-data .pic p {
    margin-top: 0.5333333333vw;
    font-size: 2.9333333333vw;
    white-space: nowrap;
    text-indent: -0.8em;
  }
  #Data18 {
    width: 44.8vw;
    height: 35.7333333333vw;
    padding-top: 4vw;
    padding-left: 1.6vw;
  }
  #Data18 .column-title {
    margin-bottom: 1.8666666667vw;
    text-align: left;
  }
  #Data18 .e-data {
    position: relative;
    padding: 0;
  }
  #Data18 .e-data .data .label {
    margin-top: -0.5333333333vw;
    margin-bottom: 1.3333333333vw;
    font-size: 3.2vw;
  }
  #Data18 .e-data .number .number-counter {
    font-size: 12.5333333333vw;
  }
  #Data18 .e-data .number > span {
    padding-bottom: 0.1em;
    margin-left: 0.1em;
    line-height: 0.95;
    font-size: 4vw;
  }
  #Data18 .e-data .pic {
    position: absolute;
    top: -0.5333333333vw;
    right: 4vw;
    width: 12vw;
  }
  #Data18 .e-data .note {
    margin-top: 0.8vw;
    font-size: 2.9333333333vw;
    text-align: center;
    font-weight: 700;
  }
  #Data19 {
    height: auto;
    padding-top: 5.3333333333vw;
    padding-bottom: 2.6666666667vw;
  }
  #Data19 .column-title {
    margin-bottom: 5.3333333333vw;
  }
  #Data19 .e-chart {
    margin-left: 3.2vw;
  }
  #Data19 .e-chart .chart-bar {
    height: 7.7333333333vw;
    margin-bottom: 4vw;
  }
  #Data19 .e-chart .chart-bar .label {
    width: 14.4vw;
    font-size: 3.2vw;
  }
  #Data19 .e-chart .chart-bar .bar {
    width: 49.0666666667vw;
  }
  #Data19 .e-chart .chart-bar .number .number-counter {
    font-size: 6.9333333333vw;
  }
  #Data19 .e-chart .chart-bar .number > span {
    font-size: 4vw;
    font-weight: 800;
  }
  #Data20 {
    width: 45.0666666667vw;
    height: 30.4vw;
    padding-top: 4.2666666667vw;
  }
  #Data20 .e-data {
    gap: 2.6666666667vw;
    padding: 0 2.6666666667vw;
  }
  #Data20 .e-data .data .label {
    margin-bottom: 4.8vw;
    font-size: 4.8vw;
  }
  #Data20 .e-data .number .number-counter {
    font-size: 11.4666666667vw;
  }
  #Data20 .e-data .number > span {
    font-size: 3.7333333333vw;
  }
  #Data20 .e-data .pic {
    width: 13.3333333333vw;
    padding-top: 2.1333333333vw;
  }
  #Data20 .e-data .pic p {
    font-size: 3.4666666667vw;
  }
  #Data21 {
    width: 45.0666666667vw;
    height: 30.4vw;
    padding-top: 4.2666666667vw;
  }
  #Data21 .e-data {
    gap: 2.6666666667vw;
    padding: 0 2.6666666667vw;
  }
  #Data21 .e-data .data .label {
    margin-bottom: 4.8vw;
    font-size: 4.8vw;
    white-space: nowrap;
  }
  #Data21 .e-data .number .number-counter {
    font-size: 11.4666666667vw;
  }
  #Data21 .e-data .number > span {
    font-size: 3.7333333333vw;
  }
  #Data21 .e-data .pic {
    padding-top: 0vw;
    margin-top: -0.5333333333vw;
  }
  #Data21 .e-data .pic picture {
    width: 6.1333333333vw;
  }
  #Data21 .e-data .pic p {
    margin-top: 1.0666666667vw;
    font-size: 3.4666666667vw;
    line-height: 1.25;
    white-space: nowrap;
  }
  #Data22 {
    width: 100%;
    height: auto;
    padding-top: 4.2666666667vw;
    padding-bottom: 8vw;
  }
  #Data22 .column-title {
    margin-bottom: 2.6666666667vw;
  }
  #Data22 .e-chart {
    padding-left: 7.4666666667vw;
  }
  #Data22 .e-chart .chart-pie {
    width: 69.8666666667vw;
  }
  #Data22 .e-chart .chart-center {
    top: 40vw;
    left: 29.3333333333vw;
    width: 40vw;
  }
  #Data22 .e-chart .chart-center .label {
    margin-bottom: 0.5333333333vw;
    font-size: 2.6666666667vw;
  }
  #Data22 .e-chart .chart-center .number .number-counter {
    font-size: 12vw;
  }
  #Data22 .e-chart .chart-center .number > span {
    padding-bottom: 0.5333333333vw;
    padding-left: 1.3333333333vw;
    font-size: 3.4666666667vw;
  }
  #Data22 .e-chart .data {
    font-size: 3.4666666667vw;
  }
  #Data22 .e-chart .data-1 {
    top: 19.2vw;
    left: 53.3333333333vw;
  }
  #Data22 .e-chart .data-1 .number .number-counter {
    font-size: 11.4666666667vw;
  }
  #Data22 .e-chart .data-2 {
    top: 62.4vw;
    left: 5.3333333333vw;
  }
  #Data22 .e-chart .data-2 .number .number-counter {
    font-size: 11.2vw;
  }
  #Data22 .e-chart .data-3 {
    top: 22.6666666667vw;
    left: 1.6vw;
  }
  #Data22 .e-chart .data-3 .number .number-counter {
    font-size: 10.1333333333vw;
  }
  #Data22 .e-chart .data-4 {
    display: block;
    top: 12vw;
    left: 20vw;
  }
  #Data22 .e-chart .data-4 .number .number-counter {
    font-size: 8vw;
  }
  #Data22 .e-chart .number {
    position: relative;
    z-index: 2;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  #Data22 .e-chart .number .number-counter {
    font-size: 2.6388888889vw;
  }
  #Data22 .e-chart .number > span {
    margin-left: 0.2em;
    line-height: 0.95;
  }
  #Data22 .e-note {
    right: 4vw;
    font-size: 2.9333333333vw;
  }
  #Data23 {
    width: 100%;
    height: auto;
    padding-bottom: 15.4666666667vw;
  }
  #Data23 .column-title {
    margin-bottom: 13.3333333333vw;
  }
  #Data23 .e-chart {
    width: 84.2666666667vw;
  }
  #Data23 .e-chart .chart-bar {
    height: 9.6vw;
  }
  #Data23 .e-chart .chart-bar .bar span {
    font-size: 3.2vw;
  }
  #Data23 .e-chart .data .number .number-counter {
    font-size: 7.2vw;
  }
  #Data23 .e-chart .data .number > span {
    font-size: 2.9333333333vw;
  }
  #Data23 .e-chart .data > span {
    font-size: 2.9333333333vw;
  }
  #Data23 .e-chart .data-1 {
    top: 11.2vw;
    left: 0vw;
  }
  #Data23 .e-chart .data-2 {
    bottom: 11.2vw;
    left: 3.2vw;
  }
  #Data23 .e-chart .data-3 {
    top: 11.2vw;
    left: 41.8666666667vw;
  }
  #Data23 .e-chart .data-4 {
    bottom: 11.2vw;
    left: 66.6666666667vw;
  }
  #Data24 {
    width: 100%;
    height: auto;
    padding-top: 6.4vw;
    padding-bottom: 5.3333333333vw;
  }
  #Data24 .column-title {
    margin-left: 0;
    margin-bottom: 7.4666666667vw;
    font-size: 4.8vw;
    text-align: center;
  }
  #Data24 .e-data {
    gap: 2.6666666667vw;
    padding: 0 12vw;
  }
  #Data24 .e-data .number .number-counter {
    font-size: 34.1333333333vw;
  }
  #Data24 .e-data .number > span {
    line-height: 1.2;
    font-size: 11.7333333333vw;
  }
  #Data24 .e-data .pic {
    width: 29.3333333333vw;
    padding-bottom: 1.0666666667vw;
  }
  .c-page-head__inner:has(.c-page-head__title-img--person) {
    gap: 4.5333333333vw;
  }
  .c-page-head__inner:has(.c-page-head__title-img--person) .c-breadcrumb {
    margin-left: 0;
  }
  .c-page-head__title-img.c-page-head__title-img--person {
    aspect-ratio: 170/36;
    max-width: 45.3333333333vw;
  }
  .p-page-person {
    padding-top: 24vw;
    overflow-x: hidden;
  }
  .p-page-person__inner {
    max-width: initial;
    padding: 0 4.2666666667vw;
  }
  .p-page-person__lead {
    margin-top: 4.6666666667vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-width: 100%;
    font-size: 3.7333333333vw;
    line-height: 1.5714285714;
  }
  .p-page-person__lead__left {
    width: 100%;
    padding: 2.1333333333vw 0 0 4.2666666667vw;
  }
  .p-page-person__lead__text {
    font-size: 3.7333333333vw;
  }
  .p-page-person__lead__right {
    width: 100%;
    padding: 0 0 2.1333333333vw 4.2666666667vw;
  }
  .p-page-person__categories {
    max-width: 100%;
    margin-top: 10.6666666667vw;
    margin-bottom: 10.6666666667vw;
  }
  .p-page-person__categories__head {
    padding: 0 0.8vw;
  }
  .p-page-person__categories__title {
    font-size: 6.4vw;
    line-height: 1;
  }
  .p-page-person__categories__text {
    font-size: 3.7333333333vw;
  }
  .p-page-person__categories__text::before {
    width: 2.6666666667vw;
    height: 2.6666666667vw;
    left: -3.7333333333vw;
  }
  .p-page-person__categories__list {
    padding: 4.2666666667vw 4vw 0 2.1333333333vw;
    -webkit-column-gap: get-sp-under(16);
       -moz-column-gap: get-sp-under(16);
            column-gap: get-sp-under(16);
  }
  .p-page-person__categories__link {
    font-size: 3.7333333333vw;
    padding-left: 4.2666666667vw;
  }
  .p-page-person__categories__link::before {
    width: 2.6666666667vw;
    height: 2.6666666667vw;
  }
  .p-page-person__body {
    max-width: 100%;
    padding-bottom: 10.6666666667vw;
  }
  .p-page-person__body__list {
    gap: 2.1333333333vw;
  }
  .p-page-person__body__item {
    width: 44.5333333333vw;
  }
  .p-page-person__body__cat {
    width: 9.6vw;
    height: 9.6vw;
    font-size: 2.1333333333vw;
  }
  .p-page-person__body__cat.career {
    font-size: 2.1333333333vw;
  }
  .p-page-person__body__cat.new-graduate {
    padding: 0 2.6666666667vw;
  }
  .p-page-person__recommend {
    padding: 10.6666666667vw 4.2666666667vw 21.3333333333vw;
    max-width: initial;
  }
  .p-page-person__recommend__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .p-page-person__recommend__list--archive {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .p-page-person__recommend__item {
    width: 100%;
    height: auto;
  }
  .p-page-person__recommend__link {
    height: 45.8666666667vw;
  }
  .p-page-person__recommend__link::before {
    height: 4vw;
  }
  .p-page-person__recommend__title {
    font-size: 8.5333333333vw;
    line-height: 1.25;
    margin-bottom: 3.2vw;
  }
  .p-page-person__recommend__link__text {
    line-height: 1;
  }
  .p-page-person__recommend__link__text-lg {
    font-size: 6.4vw;
    line-height: 1.2;
  }
  .p-page-person__recommend__link__text-sm:before {
    border-width: 1.0666666667vw 0 1.0666666667vw 1.6vw;
    right: -2.6666666667vw;
  }
  .p-page-person__recommend__link__text-sm {
    font-size: 2.9333333333vw;
    line-height: 1;
  }
  .single .c-breadcrumb {
    right: inherit;
    left: 4.2666666667vw;
    top: 5.8666666667vw;
  }
  .p-page-person-detail__fv {
    min-height: inherits;
    background: url(../img/person-detail/fv_bg_sp.webp) no-repeat center center/cover;
  }
  .p-page-person-detail__fv__left {
    padding-top: 15.2vw;
  }
  .p-page-person-detail__fv__cat {
    font-size: 2.9333333333vw;
    padding: 0.5333333333vw 1.2vw 0.5333333333vw 4.8vw;
  }
  .p-page-person-detail__fv__box {
    margin-left: 0;
    padding-left: 4.2666666667vw;
    margin-top: 2.6666666667vw;
    width: 100%;
  }
  .p-page-person-detail__fv__title {
    font-size: 6.9333333333vw;
  }
  .p-page-person-detail__fv__sub {
    font-size: 4vw;
    margin-top: 1.3333333333vw;
  }
  .p-page-person-detail__fv__wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding-left: 10.6666666667vw;
    margin-top: 4.2666666667vw;
    gap: 2.1333333333vw;
  }
  .p-page-person-detail__fv__wrap__body {
    gap: 2.1333333333vw;
  }
  .p-page-person-detail__fv__head {
    width: 14.9333333333vw;
    height: 14.9333333333vw;
    font-size: 3.7333333333vw;
    line-height: 1.2;
  }
  .p-page-person-detail__fv__head.career {
    font-size: 3.4666666667vw;
  }
  .p-page-person-detail__fv__head.new-graduate {
    padding: 0 2.6666666667vw;
  }
  .p-page-person-detail__fv__wrap__text-sm {
    font-size: 3.4666666667vw;
  }
  .p-page-person-detail__fv__wrap__text-md {
    font-size: 4vw;
  }
  .p-page-person-detail__fv__wrap__text-lg {
    font-size: 6.4vw;
  }
  .p-page-person-detail__fv__wrap__body {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .p-page-person-detail__fv__arrow {
    display: none;
  }
  .p-page-person-detail__fv__img {
    position: relative;
    width: 100%;
  }
  .p-page-person-detail__contents {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    margin-top: 20.2666666667vw;
  }
  .p-page-person-detail__contents .c-flow-list {
    display: block;
    position: relative;
    width: 100%;
  }
  .p-page-person-detail__contents .c-flow-list__title {
    font-size: 9.6vw;
  }
  .p-page-person-detail__contents .c-flow-list__item {
    font-size: 3.7333333333vw;
  }
  .p-page-person-detail__content__right {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 12vw;
  }
  .p-page-person-detail__content__head::before {
    width: 17.6vw;
    height: 17.6vw;
    top: -5.3333333333vw;
    z-index: 0;
  }
  .p-page-person-detail__content {
    height: 100%;
    width: calc(100% - 9.6vw);
    margin: 0 0 0 9.6vw;
    padding: 0 0 7.4666666667vw 7.4666666667vw;
    border: solid 0.2666666667vw #CECECE;
  }
  .p-page-person-detail__content:nth-of-type(1) .p-page-person-detail__content__body__text {
    height: 101.3333333333vw;
  }
  .p-page-person-detail__content:nth-of-type(3) .p-page-person-detail__content__body__text--02 {
    height: 101.3333333333vw;
  }
  .p-page-person-detail__content:nth-child(even) {
    padding: 0 0 41.6vw 7.4666666667vw;
    margin: 0 0 19.4666666667vw 0;
  }
  .p-page-person-detail__content:nth-child(even) .p-page-person-detail__content__body__wrap {
    position: absolute;
    left: 0;
  }
  .p-page-person-detail__content:nth-child(even) .p-page-person-detail__content__head::before {
    right: -2.1333333333vw;
  }
  .p-page-person-detail__content__box {
    padding-right: 7.4666666667vw;
    overflow: hidden;
  }
  .p-page-person-detail__content__head__wrap {
    z-index: 1;
  }
  .p-page-person-detail__content__head__num {
    font-size: 10.6666666667vw;
  }
  .p-page-person-detail__content__head__text {
    font-size: 3.4666666667vw;
  }
  .p-page-person-detail__content__head__title {
    font-size: 5.8666666667vw;
  }
  .p-page-person-detail__content__body__img {
    width: 82.4vw;
    margin-top: 10.6666666667vw;
  }
  .p-page-person-detail__content__body {
    margin-right: 3.2vw;
    margin-top: 21.3333333333vw;
    width: 100%;
    display: block;
  }
  .p-page-person-detail__content__body__text {
    font-size: 3.7333333333vw;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    overflow-wrap: break-word;
  }
  .p-page-person-detail__content__body__text--02 {
    height: 93.3333333333vw;
    margin-left: auto;
  }
  .p-page-person-detail__content__body__text--03 {
    height: 93.3333333333vw;
    margin-left: auto;
  }
  .p-page-person-detail__content__body__text-en {
    display: block;
    font-size: 2.9333333333vw;
    margin-top: 4.2666666667vw;
    margin-right: 7.4666666667vw;
  }
  .p-page-person-detail__time {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 12vw;
    background-image: url(../img/person-detail/time_bg_sp.webp);
  }
  .p-page-person-detail__time__left {
    width: 100%;
    overflow: hidden;
  }
  .p-page-person-detail__time__title {
    font-size: 16.8vw;
    margin-top: 10.6666666667vw;
  }
  .p-page-person-detail__time__right {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 86.5%;
    top: -35px;
  }
  .p-page-person-detail__time__right__text {
    font-size: 13.6vw;
    bottom: -9.0666666667vw;
    right: -6.4vw;
  }
  .p-page-person-detail__time__box__wrap {
    position: relative;
    top: 5.3333333333vw;
    text-align: center;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 92%;
  }
  .p-page-person-detail__time__box {
    background-image: url(../img/person-detail/time_box_bg_sp.webp);
    background-size: cover;
    top: -14.6666666667vw;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    padding: 17.3333333333vw 4.2666666667vw 5.3333333333vw;
    width: 94%;
  }
  .p-page-person-detail__time__box__head {
    font-size: 9.3333333333vw;
  }
  .p-page-person-detail__time__box__text {
    font-size: 3.7333333333vw;
  }
}
@media (min-width: 1520px) {
  .c-page-catchcopy__inner {
    z-index: 3;
  }
  .c-page-anchor-link {
    margin-top: min(13.8888888889vw, 200px);
  }
  .c-page-anchor-link--carrier {
    margin-top: min(2.7777777778vw, 40px);
  }
  .c-page-catchcopy__flex--carrier .c-page-catchcopy__text {
    -webkit-transform: translateX(max(-6.9444444444vw, -100px));
            transform: translateX(max(-6.9444444444vw, -100px));
    margin-left: 2%;
  }
}
@media (min-width: 1560px) {
  .c-page-catchcopy__img-area {
    z-index: 2;
    max-width: min(51.3888888889vw, 740px);
  }
  .c-page-catchcopy__img-area--new-graduate {
    aspect-ratio: 800/660;
    left: max(-6.9444444444vw, -100px);
  }
  .c-page-catchcopy__img-area--new-graduate {
    left: initial;
  }
  .c-page-catchcopy__img-area--carrier {
    aspect-ratio: initial;
    left: initial;
  }
  .c-page-catchcopy__img-area img {
    aspect-ratio: 800/656;
  }
}
@media screen and (min-width: 1520px) {
  .p-new-graduate-process__step {
    height: min(13.4722222222vw, 194px);
  }
  .p-new-graduate-process__step-title {
    margin-top: min(1.1111111111vw, 16px);
  }
  .p-new-graduate-process__step-detail {
    margin-top: min(1.6666666667vw, 24px);
  }
  .c-page-catchcopy__inner--carrier::before {
    right: 40%;
  }
}
@media screen and (min-width: 1441px) {
  .p-page-work__contents {
    gap: 11.1111111111vw;
  }
}
@media screen and (max-width: 767px) {
  .p-page-faq__mv {
    padding-top: 24vw;
    padding-bottom: 28.513889vw;
  }
  .p-data-modal .only-sp-modal-br {
    display: initial !important;
  }
}
@media (min-width: 1524px) {
  .c-page-anchor-link--carrier .c-page-anchor-link__items {
    max-width: min(55.9722222222vw, 806px);
    margin-left: min(4.1666666667vw, 60px);
  }
}
@media (min-width: 1900px) {
  .p-page-carrier__cards {
    height: 100%;
  }
}
@media screen and (min-width: 768px) {
  .p-data-modal .only-pc-modal-br {
    display: initial !important;
  }
}
@media screen and (min-width: 1500px) {
  #Content1 .data-column {
    height: 40.2777777778vw;
  }
}
@media screen and (min-width: 2000px) {
  #Content1 .data-column {
    height: 40.9722222222vw;
  }
}
/*# sourceMappingURL=maps/style.css.map */