:root {
  --color-bg-header: #F0EDE5;
}

@font-face {
  font-family: var(--font-ja);
  src: local("Noto Sans JP Thin");
  font-weight: 100;
}
@font-face {
  font-family: var(--font-effra);
  src: local("Effra Medium");
  font-weight: 500;
}
@-webkit-keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeup {
  0% {
    opacity: 0;
    -webkit-transform: translateY(3rem);
            transform: translateY(3rem);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes fadeup {
  0% {
    opacity: 0;
    -webkit-transform: translateY(3rem);
            transform: translateY(3rem);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.fadeup {
  opacity: 0;
  -webkit-transform: translateY(3rem);
          transform: translateY(3rem);
}
.fadeup.animate {
  -webkit-animation: fadeup 1s forwards;
          animation: fadeup 1s forwards;
}
.fadeup[data-animation-delay="1"] {
  -webkit-animation-delay: 0ms;
          animation-delay: 0ms;
}
.fadeup[data-animation-delay="2"] {
  -webkit-animation-delay: 0.25s;
          animation-delay: 0.25s;
}
.fadeup[data-animation-delay="3"] {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}
.fadeup[data-animation-delay="4"] {
  -webkit-animation-delay: 0.75s;
          animation-delay: 0.75s;
}

@media screen and (min-width: 376px) and (max-width: 767px) {
  html {
    font-size: 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) and (max-width: 1399px) {
  html {
    font-size: 0.7142857143vw;
  }
}
@media screen and (min-width: 768px) {
  .hidden-desktop {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .hidden-mobile {
    display: none;
  }
}

#Contents {
  position: relative;
  padding-top: 0 !important;
}

.c-breadcrumb {
  color: var(--color-white);
}
@media screen and (max-width: 767px) {
  .c-breadcrumb {
    position: absolute;
    top: 0;
    left: 0;
    padding-top: 9.6rem;
  }
}
@media screen and (min-width: 768px) {
  .c-breadcrumb {
    position: absolute;
    left: 0;
    right: 0;
    z-index: 1;
  }
}
.c-breadcrumb .c-breadcrumb__text, .c-breadcrumb > ol > li:last-child, .c-breadcrumb > ol > li:last-child > * {
  color: var(--color-white) !important;
}

@media screen and (max-width: 767px) {
  .jk-p-about {
    padding-top: 9.6rem;
  }
}
@media screen and (max-width: 767px) {
  .jk-p-about .jk-about__mv {
    height: calc(1000 * 100vw / 750);
    background-size: cover;
    background-image: url("../img/about_mv_sp.jpg");
    background-repeat: no-repeat;
    background-position: top center;
  }

  /* 2025/07/09 追加 */
  .jk-p-about .jk-about__mv.JK250709 {
    background-image: url("../img/JK250709_about_mv_sp.jpg");
  }
}
@media screen and (min-width: 768px) {
  .jk-p-about .jk-about__mv {
    height: 50rem;
    background-size: cover;
    background-image: url("../img/about_mv_pc.jpg");
    background-repeat: no-repeat;
    background-position: top center;
  }

  /* 2025/07/09 追加 */
  .jk-p-about .jk-about__mv.JK250709 {
    background-image: url("../img/JK250709_about_mv_pc.jpg");
  }
}
@media screen and (max-width: 767px) {
  .jk-p-about .jk-about__mv--heading {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 100%;
    font-family: var(--font-orpheus);
    font-weight: var(--fw-regular);
    font-size: calc(82 * 100vw / 750);
    color: var(--color-white);
  }
}
@media screen and (min-width: 768px) {
  .jk-p-about .jk-about__mv--heading {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 100%;
    font-family: var(--font-orpheus);
    font-weight: var(--fw-regular);
    font-size: 4.1rem;
    color: var(--color-white);
  }
}
@media screen and (max-width: 767px) {
  .jk-p-about .jk-about__contents {
    padding: 0 calc(32 * 100vw / 750) calc(160 * 100vw / 750);
  }
}
@media screen and (min-width: 768px) {
  .jk-p-about .jk-about__contents {
    padding: 3rem 3.1rem 10rem;
    margin: 0 auto;
    display: grid;
    grid-gap: 3rem;
    width: min(95%, 133.8rem);
  }
}
@media screen and (max-width: 767px) {
  .jk-p-about .jk-about__contents--block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: calc(32 * 100vw / 750);
    padding-top: calc(32 * 100vw / 750);
  }
}
@media screen and (min-width: 768px) {
  .jk-p-about .jk-about__contents--block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 3rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
@media screen and (min-width: 768px) {
  .jk-p-about .jk-about__contents--block:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
.jk-p-about .jk-about__contents--text {
  display: grid;
  text-align: center;
  background-color: var(--color-bg-1);
}
@media screen and (max-width: 767px) {
  .jk-p-about .jk-about__contents--text {
    padding: calc(80 * 100vw / 750) 0 calc(68 * 100vw / 750);
    grid-gap: calc(56 * 100vw / 750);
  }
}
@media screen and (min-width: 768px) {
  .jk-p-about .jk-about__contents--text {
    -ms-flex-line-pack: center;
        align-content: center;
    grid-gap: 3.7rem;
    width: min(50% - 1.5rem, 65.4rem);
  }
}
.jk-p-about .jk-about__contents--heading {
  display: grid;
  grid-gap: calc(28 * 100vw / 750);
}
@media screen and (min-width: 768px) {
  .jk-p-about .jk-about__contents--heading {
    grid-gap: 2.3rem;
    font-size: 4.1rem;
  }
}
.jk-p-about .jk-about__contents--heading .heading-en {
  font-family: var(--font-orpheus);
  font-weight: var(--fw-regular);
}
@media screen and (max-width: 767px) {
  .jk-p-about .jk-about__contents--heading .heading-en {
    font-size: calc(60 * 100vw / 750);
  }
}
@media screen and (min-width: 768px) {
  .jk-p-about .jk-about__contents--heading .heading-en {
    font-size: 4.1rem;
  }
}
.jk-p-about .jk-about__contents--heading .heading-ja {
  font-family: var(--font-ja);
  font-weight: var(--fw-medium);
  letter-spacing: 0.09em;
}
@media screen and (max-width: 767px) {
  .jk-p-about .jk-about__contents--heading .heading-ja {
    font-size: calc(27 * 100vw / 750);
  }
}
@media screen and (min-width: 768px) {
  .jk-p-about .jk-about__contents--heading .heading-ja {
    font-size: 1.5rem;
  }
}
.jk-p-about .jk-about__contents--description {
  font-family: var(--font-main);
  font-weight: var(--fw-medium);
  letter-spacing: 0.09em;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .jk-p-about .jk-about__contents--description {
    font-size: calc(24 * 100vw / 750);
  }
}
@media screen and (min-width: 768px) {
  .jk-p-about .jk-about__contents--description {
    padding: 0 9.5rem;
    font-size: 1.3rem;
    letter-spacing: 0.06em;
  }
}
.jk-p-about .jk-about__contents--description .description-en {
  font-weight: var(--fw-medium);
}
@media screen and (min-width: 768px) {
  .jk-p-about .jk-about__contents--image {
    width: min(50% - 1.5rem, 65.4rem);
  }
}
.jk-p-about .jk-about__contents--image img {
  width: 100%;
}