@charset "UTF-8";
.u-en {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
}

@media only screen and (max-width: 767px) {
  .u-hidden-sp {
    display: none !important;
  }
}

@media only screen and (min-width: 768px), print {
  .u-hidden-pc {
    display: none !important;
  }
}

@media (max-width: 1085px) {
  .u-hidden-header_sp {
    display: none !important;
  }
}

@media (min-width: 1086px) {
  .u-hidden-header_pc {
    display: none !important;
  }
}

.inview {
  opacity: 0;
  -webkit-transition: 0.6s;
  transition: 0.6s;
}

.inview.-fadein {
  opacity: 1;
}

.inview.-blur {
  filter: blur(0.75em);
  /* Safari 用の描画最適化 */
  transform: translateZ(0);
  will-change: transform;
}

.inview.-blur.-fadein {
  filter: blur(0);
}

.inview.-blur2 {
  filter: blur(0.25em);
  /* Safari 用の描画最適化 */
  transform: translateZ(0);
  will-change: transform;
}

.inview.-blur2.-fadein {
  filter: blur(0);
}

.inview.-inviewUp {
  transform: translate(0, 1em);
  -webkit-transform: translate(0, 1em);
}

.inview.-inviewUp.-fadein {
  transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
}

.inview.-inviewDelay01 {
  transition-delay: 0.2s;
}

.inview.-inviewDelay01_5 {
  transition-delay: 0.3s;
}

.inview.-inviewDelay02 {
  transition-delay: 0.4s;
}

.inview.-inviewDelay02_5 {
  transition-delay: 0.5s;
}

.inview.-inviewDelay03 {
  transition-delay: 0.6s;
}

.inview.-inviewDelay03_5 {
  transition-delay: 0.7s;
}

.inview.-inviewDelayonline {
  transition-delay: 1.2s;
}

.inview.-inviewLeft {
  transform: translate(-0.75em, 0);
  -webkit-transform: translate(-0.75em, 0);
}

.inview.-inviewLeft.-fadein {
  transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
}

.inview.-inviewRight {
  transform: translate(2rem, 0);
  -webkit-transform: translate(2rem, 0);
}

.inview.-inviewRight.-fadein {
  transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
}

/* ローディング中はスクロールさせたくない場合 */
body:not(.is-loaded) {
  overflow: hidden;
}

/* 全画面ローディング背景 */
.loading-screen {
  position: fixed;
  inset: 0;
  /* top:0 right:0 bottom:0 left:0 と同じ */
  background: linear-gradient(128deg, rgba(255, 255, 255, 0.1) 3.79%, rgba(70, 191, 13, 0.1) 92.74%), var(--wh, #fff);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  opacity: 1;
  visibility: visible;
  transition: opacity 1s ease 1.5s, visibility 0s linear 2.5s;
  /* フェード後に非表示にする */
}

@media only screen and (min-width: 768px), print {
  .loading-screen {
    font-size: clamp(1.3rem, calc(100vw / 90), 1.8rem);
  }
}

/* ローディング中のロゴ */
.loading-screen__logo img {
  display: block;
  width: 10em;
  transform: scale(1);
  transition: transform 1s ease;
}

/* is-loaded が body に付いたらロゴを少し大きく */
body.is-loaded .loading-screen__logo img {
  transform: scale(1.1);
}

/*背景もフェードアウト＆消去 */
body.is-loaded .loading-screen {
  opacity: 0;
  visibility: hidden;
}

.loading-screen.is-skip {
  display: none;
}

.i-mv {
  position: relative;
  margin-top: 7em;
}

@media only screen and (min-width: 768px), print {
  .i-mv {
    font-size: clamp(1.3rem, calc(100vw / 90), 1.8rem);
  }
}

@media only screen and (min-width: 768px), print {
  .i-mv {
    margin-top: 7em;
  }
}

@media (min-width: 1086px) {
  .i-mv {
    padding: 0 3em;
    margin-top: 7em;
    max-width: 1500px;
    margin-left: auto;
    margin-right: auto;
  }
}

.i-mv__txts {
  position: absolute;
  z-index: 4;
  letter-spacing: 0.2625em;
  left: 1.5em;
  top: 47vw;
}

@media only screen and (min-width: 768px), print {
  .i-mv__txts {
    left: 6em;
    top: 15em;
  }
}

.i-mv__txts p {
  font-size: 2em;
  color: #fff;
  font-weight: 700;
  line-height: 1.2;
  overflow: hidden;
}

.i-mv__txts p span {
  display: inline-block;
  text-shadow: 0 0 16px rgba(0, 0, 0, 0.25);
}

.i-mv__txts p span.-t1 {
  transition: 1.4s cubic-bezier(0.58, -0.6, 0.32, 1.2) 1s !important;
}

.i-mv__txts p span.-t2 {
  transition: 1.5s cubic-bezier(0.58, -0.6, 0.32, 1.2) 1.4s !important;
}

@media only screen and (min-width: 768px), print {
  .i-mv__txts p {
    line-height: 1.4;
    font-size: 3.75em;
  }
}

.i-mv__mark {
  position: absolute;
}

@media (max-width: 1085px) {
  .i-mv__mark {
    display: none;
  }
}

.i-mv__mark.-m1 {
  top: 15em;
  left: -3em;
  z-index: 4;
  width: 12em;
  transition-delay: 1.8s;
  transform: translateY(1.5em);
}

@media (max-width: 1085px) {
  .i-mv__mark.-m1 {
    z-index: 3;
  }
}

@media (min-width: 1086px) {
  .i-mv__mark.-m1 {
    top: 28em;
    left: 1em;
    width: min(25.5625em, 25vw);
  }
}

.i-mv__mark.-m1.-fadein {
  transform: translateY(0);
}

.i-mv__mark.-m2 {
  z-index: 2;
  top: 29em;
  right: 5em;
  width: min(19.375em ,20vw);
  transform: translateY(1.5em);
}

.i-mv__mark.-m2.-fadein {
  transform: translateY(0);
}

.i-mv__mark.-m3 {
  z-index: 4;
  bottom: -6em;
  left: -2em;
  width: 15.1375em;
  opacity: 0.8;
  filter: blur(2px);
  transform: translateY(1.5em);
}

.i-mv__mark.-m3.-fadein {
  transform: translateY(0);
}

.i-mv__mark-sp {
  position: absolute;
}

@media (min-width: 1086px) {
  .i-mv__mark-sp {
    display: none;
  }
}

.i-mv__mark-sp.-m1 {
  opacity: 0.8;
  top: 8em;
  left: -3em;
  z-index: 4;
  width: 12em;
  transition-delay: 1.8s;
  transform: translateY(1.5em);
}

.i-mv__mark-sp.-m1.-fadein {
  transform: translateY(0);
}

.i-mv__mark-sp.-m2 {
  z-index: 2;
  top: 15em;
  right: -2em;
  width: 10em;
  transform: translateY(1.5em);
}

.i-mv__mark-sp.-m2.-fadein {
  transform: translateY(0);
}

.i-mv__mark-sp.-m3 {
  z-index: 4;
  bottom: -2em;
  left: -2em;
  width: 10em;
  opacity: 0.8;
  transform: translateY(1.5em);
}

.i-mv__mark-sp.-m3.-fadein {
  transform: translateY(0);
}

.i-slide {
  aspect-ratio: 16/9;
  z-index: 2 !important;
}

@media only screen and (min-width: 768px), print {
  .i-slide {
    width: calc(100% - 12em);
    margin-right: 3em !important;
  }
}

@media (min-width: 1086px) {
  .i-slide {
    width: calc(100% - 17em);
    margin-right: 3em !important;
  }
}

@media only screen and (max-width: 767px) {
  .i-slide {
    margin-left: 1.25em !important;
  }
}

.i-slide video {
  border-radius: 2em 0 0 2em;
  width: 100%;
  height: 100%;
  object-fit: cover;
  aspect-ratio: 16/9;
  pointer-events: none;
}

@media only screen and (min-width: 768px), print {
  .i-slide video {
    border-radius: 2em;
  }
}

.i-slide__slide {
  border-radius: 2em 0 0 2em;
  width: 100%;
  height: 100%;
  aspect-ratio: 16/9;
}

.i-slide__slide.-img {
  background-position: 50%;
  background-size: cover;
}

.i-slide__slide.-link:hover {
  filter: brightness(1.05);
}

.i-slide__slide.-dark {
  filter: brightness(0.95);
}

@media only screen and (min-width: 768px), print {
  .i-slide__slide {
    border-radius: 2em;
  }
}

.i-slide__pagination {
  position: relative !important;
  top: 0.125em !important;
  left: 0 !important;
  text-align: right !important;
  display: flex;
  width: auto !important;
}

@media only screen and (min-width: 768px), print {
  .i-slide__pagination {
    top: 0.25em !important;
  }
}

.i-slide__pagination .swiper-pagination-bullet-active {
  background: #fff;
}

.i-slide__navwrap {
  font-size: 1em;
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
  width: 8em;
  margin: 0 0 0 auto;
  justify-content: center;
  margin-top: 0.5em;
}

@media only screen and (min-width: 768px), print {
  .i-slide__navwrap {
    width: 12em;
    padding-right: 3em;
  }
}

@media only screen and (max-width: 767px) {
  .i-slide__navwrap {
    padding-right: 1em;
  }
}

.i-slide__button {
  position: static !important;
  color: #fff !important;
}

.i-slide__button::after {
  font-size: 1em !important;
  margin-top: 1.75em;
}

.i-concept {
  overflow: hidden;
  position: relative;
  z-index: 1;
  color: #fff;
  border-radius: 1em;
  background: linear-gradient(107deg, #0d8b3a 4.38%, #6cc05c 85.11%);
  margin-top: -35vw;
  padding-top: 40vw;
}

@media only screen and (min-width: 768px), print {
  .i-concept {
    border-radius: 2em;
  }
}

@media (min-width: 1086px) {
  .i-concept {
    margin-top: -27em;
    padding-top: 35em;
    border-radius: 4em;
    padding-bottom: 6em;
  }
}

@media only screen and (max-width: 767px) {
  .i-concept {
    padding-top: 15em;
  }
}

.i-concept__grid {
  position: relative;
  z-index: 4;
}

@media (min-width: 1086px) {
  .i-concept__grid {
    display: flex;
    justify-content: center;
    gap: 5.75em;
    padding-left: 10em;
  }
}

@media (max-width: 1085px) {
  .i-concept__grid {
    padding: 2rem;
  }
}

.i-concept__txts {
  letter-spacing: 0.07875em;
}

@media only screen and (min-width: 768px), print {
  .i-concept__txts {
    font-size: 1.125em;
    line-height: 2;
  }
}

.i-concept__txts p {
  margin-bottom: 2em;
}

.i-concept__img {
  border-radius: 1.5em;
}

@media only screen and (min-width: 768px), print {
  .i-concept__img {
    border-radius: 2em;
  }
}

@media (min-width: 1086px) {
  .i-concept__img {
    position: absolute;
    top: 0;
    left: 0;
  }
}

@media (max-width: 1085px) {
  .i-concept__img.-i1 {
    width: 80%;
    margin-bottom: 2em;
  }
}

@media (min-width: 1086px) {
  .i-concept__img.-i1 {
    left: 3em;
    width: 26em;
    top: 10em;
  }
}

@media (max-width: 1085px) {
  .i-concept__img.-i2 {
    width: 70%;
    display: block;
    margin: 0 0 2em auto;
  }
}

@media (min-width: 1086px) {
  .i-concept__img.-i2 {
    left: 15em;
    width: 16.5em;
    top: 30em;
  }
}

.i-h2 {
  margin-bottom: 3em;
  display: inline-block;
}

.i-h2:not(.-wh) .i-h2__jp,
.i-h2:not(.-wh) .i-h2__en {
  background: linear-gradient(90deg, #00853c 0%, #46bf0d 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.i-h2.-wh {
  color: #fff;
}

.i-h2.-center {
  text-align: center;
}

.i-h2__jp {
  font-size: 1.125em;
  line-height: 1.3;
  margin-top: 0.5em;
}

.i-h2__jp.-sm {
  font-size: 0.875em;
}

.i-h2__en {
  line-height: 1;
  font-size: 2.5em;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
}

@media only screen and (min-width: 768px), print {
  .i-h2__en {
    font-size: 3em;
  }
}

.i-special {
  padding: 4em 1rem;
}

@media (min-width: 1086px) {
  .i-special {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 6em 2em 10em;
  }
}

.i-special > .container {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4em;
}

.i-special__mark {
  position: absolute;
}

.i-special__mark.-m1 {
  top: 7em;
  right: 1em;
  width: min(20em ,30vw);
  transform: translateY(1.5em);
}

.i-special__mark.-m1.-fadein {
  filter: blur(6px);
  opacity: 0.4;
}

@media only screen and (min-width: 768px), print {
  .i-special__mark.-m1.-fadein {
    opacity: 0.7;
  }
}

@media only screen and (min-width: 768px), print {
  .i-special__mark.-m1 {
    right: 5em;
    width: min(9.5625em ,15vw);
  }
}

.i-special__mark.-m2 {
  z-index: 2;
  bottom: -2.5em;
  left: -1em;
  width: min(18em ,25vw);
}

@media only screen and (min-width: 768px), print {
  .i-special__mark.-m2 {
    width: min(9.5625em ,15vw);
  }
}

.i-special__mark.-m3 {
  top: 15em;
  left: -1em;
  width: min(10em ,15vw);
}

.i-special__mark.-m3.-fadein {
  filter: blur(2px);
  opacity: 0.2;
}

.i-special__mark.-m4 {
  top: -2em;
  right: 0em;
  width: min(10em ,15vw);
}

.i-special__mark.-m4.-fadein {
  filter: blur(3px);
  opacity: 0.3;
}

.i-special__mark.-m5 {
  bottom: -9em;
  left: 40%;
  width: min(20em ,30vw);
}

.i-special__mark.-m5.-fadein {
  filter: blur(3px);
  opacity: 0.3;
}

@media only screen and (min-width: 768px), print {
  .i-special__mark.-m5 {
    bottom: -13em;
    width: min(15em ,20vw);
  }
}

.i-special__h3 {
  background: #46bf0d;
  color: #fff;
  display: flex;
  align-items: center;
  gap: 0.625em;
  padding: 0.5em 2em;
  border-radius: 0.25em 2em 2em 0.25em;
  position: absolute;
  left: -0.5em;
  top: -1em;
  z-index: 2;
}

@media (min-width: 1086px) {
  .i-special__h3 {
    top: 2em;
  }
}

@media (min-width: 1086px) {
  .i-special__h3.-sm {
    top: 1em;
  }
}

.i-special__h3-no {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  line-height: 1;
}

.i-special__h3-jp {
  font-size: 1.5em;
  line-height: 1.3;
  font-weight: 600;
}

@media only screen and (min-width: 768px), print {
  .i-special__h3-jp {
    font-size: 2em;
  }
  .-sm .i-special__h3-jp {
    font-size: 1.5em;
  }
}

.i-special__box {
  position: relative;
  background: linear-gradient(128deg, rgba(255, 255, 255, 0.1) 3.79%, rgba(70, 191, 13, 0.1) 92.74%), var(--wh, #fff);
  border: 1px solid #46bf0d;
  max-width: 1700px;
  display: flex;
  flex-direction: column;
  gap: 1em;
  padding: 3em 1em 6em;
  border-bottom-right-radius: 2em;
}

@media (min-width: 1086px) {
  .i-special__box {
    gap: 4em;
    padding: 4em 4em 6em;
  }
}

.i-special__boxsm {
  display: flex;
  flex-direction: column;
  background: linear-gradient(128deg, rgba(255, 255, 255, 0.1) 3.79%, rgba(70, 191, 13, 0.1) 92.74%), var(--wh, #fff);
  border: 1px solid #46bf0d;
  position: relative;
  border-bottom-right-radius: 2em;
  gap: 1em;
  padding: 3em 1em 5em;
}

@media (min-width: 1086px) {
  .i-special__boxsm {
    padding: 3em 3em 5em;
    gap: 2em;
  }
  .i-special__boxsm:hover .i-special__imgsm img {
    transform: scale(1.1);
  }
  .i-special__boxsm:hover .i-special__h4 {
    opacity: 0.85;
    text-decoration: none;
  }
  .i-special__boxsm:hover .btn-link a {
    background: #46bf0d;
    color: #fff;
  }
  .i-special__boxsm:hover .btn-link .-arrow::after {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2213%22%20height%3D%2221%22%20viewBox%3D%220%200%2013%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M0.338249%202.01493L9.44099%2010.566L0.33825%2019.117C-0.103095%2019.5584%20-0.103095%2020.2204%200.283082%2020.6618C0.724427%2021.1031%201.38644%2021.1031%201.82779%2020.7169L11.758%2011.3383C11.9787%2011.1177%2012.0891%2010.8418%2012.0891%2010.5108C12.0891%2010.1798%2011.9787%209.90397%2011.758%209.68329L1.82779%200.304716C1.38644%20-0.136627%200.669257%20-0.081461%200.283081%200.359884C-0.103096%200.856398%20-0.103096%201.57358%200.338249%202.01493Z%22%20fill%3D%22%23ffffff%22%2F%3E%3C%2Fsvg%3E");
  }
}

@media (min-width: 1086px) {
  .i-special__boxsm.-b2 {
    top: 3em;
  }
}

.i-special__link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 3;
}

.i-special__grid1 {
  position: relative;
}

@media (min-width: 1086px) {
  .i-special__grid1 {
    display: grid;
    grid-template-columns: 0.4fr 0.6fr;
    grid-template-rows: auto 1fr;
    gap: 4em 7em;
  }
  .-rev .i-special__grid1 {
    direction: rtl;
  }
}

.i-special__h4 {
  line-height: 1.4;
  color: #46bf0d;
  font-weight: 600;
  text-decoration: underline;
  font-size: 1.25em;
  text-align: left;
  direction: ltr;
  transition: 0.2s;
}

@media only screen and (min-width: 768px), print {
  .i-special__h4 {
    margin-top: 2.5em;
    font-size: 1.75em;
  }
}

.i-special__h4.-sm {
  text-align: center;
  margin-top: 0;
}

@media only screen and (min-width: 768px), print {
  .i-special__h4.-sm {
    font-size: 1.375em;
  }
}

.i-special__img {
  border-radius: 1em;
  border: 1px solid #46bf0d;
}

@media only screen and (min-width: 768px), print {
  .i-special__img {
    border-radius: 2em;
  }
}

@media (max-width: 1085px) {
  .i-special__img.-img1 {
    width: min(600px, 90%);
    margin: 1em auto;
    display: block;
  }
}

@media (min-width: 1086px) {
  .i-special__img.-img1 {
    grid-column: 2/3;
    grid-row: 1/3;
  }
}

@media (min-width: 1086px) {
  .i-special__img.-img2 {
    grid-row: 2/3;
    grid-column: 1/2;
  }
}

@media (max-width: 1085px) {
  .i-special__img.-img2 {
    width: min(500px, 70%);
    margin: 0 0 0 auto;
    display: block;
  }
}

.i-special__imgsm {
  overflow: hidden;
  border: 1px solid #46bf0d;
  border-radius: 1em;
}

@media only screen and (min-width: 768px), print {
  .i-special__imgsm {
    border-radius: 2em;
  }
}

.i-special__imgsm img {
  transition: 0.2s;
}

@media (max-width: 1085px) {
  .i-special__imgsm {
    width: min(600px, 90%);
    margin: 0 auto;
  }
}

.i-special__grid2 {
  display: grid;
  gap: 2em;
}

@media (min-width: 1086px) {
  .i-special__grid2 {
    gap: 3em;
    grid-template-columns: 0.6fr 0.4fr;
  }
  .-rev .i-special__grid2 {
    direction: rtl;
  }
}

.i-special__grid2-rgt {
  display: flex;
  flex-direction: column;
}

@media (min-width: 1086px) {
  .i-special__grid2-rgt {
    justify-content: center;
    direction: ltr;
  }
}

.i-special__grid3 {
  display: grid;
  gap: 3em;
  position: relative;
}

@media (min-width: 1086px) {
  .i-special__grid3 {
    max-width: 1700px;
    grid-template-columns: 1fr 1fr;
    gap: 4em;
    padding-left: 4em;
    padding-right: 4em;
  }
}

.i-special__movie {
  overflow: hidden;
  border: 2px solid #46bf0d;
  border-radius: 1em;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  object-fit: cover;
}

@media only screen and (min-width: 768px), print {
  .i-special__movie {
    border-radius: 2em;
  }
}

@media (min-width: 1086px) {
  .i-special__movie {
    grid-row: 1/2;
    border: 4px solid #46bf0d;
  }
}

.i-special__movie video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.i-special__cap {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  color: #46bf0d;
  font-size: 1.5em;
}

@media only screen and (min-width: 768px), print {
  .i-special__cap {
    font-size: 2em;
  }
}

.i-special__h5 {
  font-size: 1.125em;
  line-height: 1.4;
  margin-bottom: 1em;
}

.i-special__txt {
  line-height: 2;
}

.btn-link {
  bottom: -1px;
  right: -1px;
  position: absolute;
  display: flex;
  justify-content: flex-end;
}

.btn-link.-b2 {
  justify-content: flex-start;
}

.btn-link.-b2 a {
  border-radius: 2em !important;
}

.btn-link a,
.btn-link > span {
  background: #fff;
  color: #46bf0d;
  font-weight: 600;
  display: flex;
  align-items: stretch;
  border: 1px solid;
  border-bottom-right-radius: 2em;
}

.btn-link a:hover,
.btn-link > span:hover {
  opacity: 1;
  background: #46bf0d;
}

.btn-link a:hover p,
.btn-link > span:hover p {
  color: #fff;
}

.btn-link a:hover .-arrow::after,
.btn-link > span:hover .-arrow::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2213%22%20height%3D%2221%22%20viewBox%3D%220%200%2013%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M0.338249%202.01493L9.44099%2010.566L0.33825%2019.117C-0.103095%2019.5584%20-0.103095%2020.2204%200.283082%2020.6618C0.724427%2021.1031%201.38644%2021.1031%201.82779%2020.7169L11.758%2011.3383C11.9787%2011.1177%2012.0891%2010.8418%2012.0891%2010.5108C12.0891%2010.1798%2011.9787%209.90397%2011.758%209.68329L1.82779%200.304716C1.38644%20-0.136627%200.669257%20-0.081461%200.283081%200.359884C-0.103096%200.856398%20-0.103096%201.57358%200.338249%202.01493Z%22%20fill%3D%22%23ffffff%22%2F%3E%3C%2Fsvg%3E");
}

.btn-link a p,
.btn-link > span p {
  display: flex;
  align-items: center;
  border-right: 1px solid;
  padding: 0 2em;
}

.btn-link .-arrow::after {
  transition: 0.2s;
  content: '';
  width: 4em;
  height: 4em;
  display: block;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2213%22%20height%3D%2221%22%20viewBox%3D%220%200%2013%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M0.338249%202.01493L9.44099%2010.566L0.33825%2019.117C-0.103095%2019.5584%20-0.103095%2020.2204%200.283082%2020.6618C0.724427%2021.1031%201.38644%2021.1031%201.82779%2020.7169L11.758%2011.3383C11.9787%2011.1177%2012.0891%2010.8418%2012.0891%2010.5108C12.0891%2010.1798%2011.9787%209.90397%2011.758%209.68329L1.82779%200.304716C1.38644%20-0.136627%200.669257%20-0.081461%200.283081%200.359884C-0.103096%200.856398%20-0.103096%201.57358%200.338249%202.01493Z%22%20fill%3D%22%2346BF0D%22%2F%3E%3C%2Fsvg%3E") 50%/0.75em auto no-repeat;
}

.i-interview {
  position: relative;
  overflow: hidden;
  padding: 0 1em;
}

@media only screen and (min-width: 768px), print {
  .i-interview {
    padding: 0 2em;
  }
}

.i-interview__logo {
  position: absolute;
  left: 0;
}

@media (max-width: 1085px) {
  .i-interview__logo {
    width: min(25.5625em, 25vw);
    top: 4em;
  }
}

@media (min-width: 1086px) {
  .i-interview__logo {
    top: 22em;
  }
}

.i-interview__in {
  border-radius: 2em;
  padding: 3em 1em 10em;
  background: linear-gradient(139deg, #0d8b3a 3.73%, #6dc05d 96.94%);
}

@media only screen and (min-width: 768px), print {
  .i-interview__in {
    padding: 3em 2em 10em;
    border-radius: 4em;
  }
}

@media (min-width: 1086px) {
  .i-interview__in {
    padding: 6em 4em;
  }
}

@media (min-width: 1086px) {
  .i-interview__h2 {
    margin-top: 4em;
  }
}

.i-interview__container {
  margin: 0 auto;
}

@media (min-width: 1086px) {
  .i-interview__container {
    max-width: 1700px;
  }
}

.i-interview__grid {
  display: grid;
}

@media (min-width: 1086px) {
  .i-interview__grid {
    gap: 3em 8em;
    grid-template-columns: 0.35fr 0.65fr;
    grid-template-rows: auto auto 1fr;
  }
}

.i-interview__grid2 {
  display: grid;
  gap: 2em;
  margin-top: 3em;
}

@media (max-width: 1085px) {
  .i-interview__grid2 {
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (min-width: 1086px) {
  .i-interview__grid2 {
    gap: 1em;
    margin-top: 4em;
    grid-template-columns: 1fr 1fr 1fr;
  }
}

.i-interview__box {
  position: relative;
  border-radius: 1em;
  background: linear-gradient(128deg, rgba(255, 255, 255, 0.1) 3.79%, rgba(70, 191, 13, 0.1) 92.74%), var(--wh, #fff);
  display: flex;
  flex-direction: column;
  gap: 2em;
  padding-bottom: 5em;
  border: 1px solid #46bf0d;
}

@media (max-width: 1085px) {
  .i-interview__box .btn-link a {
    border-bottom-right-radius: 1em;
  }
}

@media (min-width: 1086px) {
  .i-interview__box.-lg {
    border-radius: 2em;
    grid-row: 1/4;
  }
}

.i-interview__box.-sm {
  gap: 1em;
  padding-bottom: 3.5em;
}

@media (min-width: 1086px) {
  .i-interview__box.-sm {
    padding-bottom: 5em;
  }
}

.i-interview__box.-sm .btn-link {
  font-size: 0.75em;
}

.i-interview__box.-sm .btn-link a {
  border-bottom-right-radius: 1em;
}

@media only screen and (min-width: 768px), print {
  .i-interview__box:hover .i-interview__cap,
  .i-interview__box:hover .i-interview__box2-h3 {
    opacity: 0.85;
  }
  .i-interview__box:hover .i-interview__img img {
    transform: scale(1.1);
  }
  .i-interview__box:hover .btn-link a {
    border: none;
    background: #46bf0d;
    color: #fff;
  }
  .i-interview__box:hover .btn-link .-arrow::after {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2213%22%20height%3D%2221%22%20viewBox%3D%220%200%2013%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M0.338249%202.01493L9.44099%2010.566L0.33825%2019.117C-0.103095%2019.5584%20-0.103095%2020.2204%200.283082%2020.6618C0.724427%2021.1031%201.38644%2021.1031%201.82779%2020.7169L11.758%2011.3383C11.9787%2011.1177%2012.0891%2010.8418%2012.0891%2010.5108C12.0891%2010.1798%2011.9787%209.90397%2011.758%209.68329L1.82779%200.304716C1.38644%20-0.136627%200.669257%20-0.081461%200.283081%200.359884C-0.103096%200.856398%20-0.103096%201.57358%200.338249%202.01493Z%22%20fill%3D%22%23ffffff%22%2F%3E%3C%2Fsvg%3E");
  }
}

.i-interview__box2-h3 {
  color: #46bf0d;
  font-size: 1.125em;
}

.i-interview__box2-h3 .-sm {
  font-size: 0.875em;
  margin-left: 0.25em;
}

.i-interview__box2-h4 {
  font-size: 0.875em;
  line-height: 1.6;
  font-weight: 600;
}

.i-interview__link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 3;
}

.i-interview__img {
  position: relative;
  overflow: hidden;
  border: 1px solid #46bf0d;
  border-radius: 1em;
}

@media only screen and (max-width: 767px) {
  .i-interview__img {
    border-radius: 1em 1em 0 0;
  }
}

.i-interview__img img {
  transition: 0.2s;
}

@media (min-width: 1086px) {
  .-lg .i-interview__img {
    border-radius: 2em;
  }
}

.i-interview__no {
  color: #46bf0d;
  position: absolute;
  top: 0.5em;
  left: 0.5em;
  background: #fff;
  border: 1px solid;
  padding: 1em;
  border-radius: 1em 0 0 0;
}

@media (min-width: 1086px) {
  .-lg .i-interview__no {
    padding: 2em;
    border-radius: 2em 0 0 0;
  }
}

.i-interview__no p {
  display: flex;
  flex-direction: column;
  line-height: 1;
  font-weight: 600;
}

@media only screen and (max-width: 767px) {
  .i-interview__no p {
    font-size: 0.75em;
  }
}

.-sm .i-interview__no p {
  font-size: 0.75em;
}

.i-interview__no .-no {
  font-size: 3em;
}

.i-interview__names {
  color: #fff;
  background: linear-gradient(107deg, #0d8b3a 4.38%, #6cc05c 85.11%);
  line-height: 1.2;
  font-weight: 600;
  padding: 1em 2em;
}

@media only screen and (min-width: 768px), print {
  .i-interview__names {
    position: absolute;
    bottom: 0.5em;
    right: 0.5em;
    border-radius: 0 0 2em 0;
    padding: 1.75em 2em;
  }
}

.i-interview__names-h3 {
  font-size: 1.125em;
  margin-bottom: 0.25em;
}

.i-interview__names-h3 .-sm {
  font-size: 0.75em;
  margin-left: 0.25em;
}

.i-interview__names-h4 {
  font-size: 0.875em;
}

.i-interview__txts {
  display: flex;
  flex-direction: column;
  padding: 0 1em;
}

@media (min-width: 1086px) {
  .i-interview__txts {
    padding: 0 3em;
  }
  .-sm .i-interview__txts {
    padding: 0 2em;
  }
}

.i-interview__cap {
  color: #46bf0d;
  font-weight: 600;
  font-size: 1.125em;
}

@media only screen and (min-width: 768px), print {
  .i-interview__cap {
    font-size: 1.75em;
  }
}

.i-interview__btn {
  bottom: 3em;
}

@media (max-width: 1085px) {
  .i-interview__btn {
    left: 0;
    right: 0;
    display: flex;
    justify-content: center !important;
  }
}

@media (min-width: 1086px) {
  .i-interview__btn {
    grid-column: 1/2;
    grid-row: 2/3;
    position: static;
  }
}

.i-meeting {
  padding: 3em 0;
}

@media (min-width: 1086px) {
  .i-meeting {
    padding: 6em 0;
  }
}

.i-meeting__head {
  margin: 0 0 0 auto;
  border-radius: 2em 0 0 2em;
  width: calc(100% - 2em);
  overflow: hidden;
}

@media (min-width: 1086px) {
  .i-meeting__head {
    width: calc(100% - 6em);
    border-radius: 4em 0 0 4em;
  }
}

.i-meeting__head img {
  width: 100%;
}

.i-meeting__in {
  border: 1px solid #46bf0d;
  border-radius: 2em;
  background: linear-gradient(92deg, rgba(0, 133, 60, 0.8) 0%, var(--main, rgba(70, 191, 13, 0.8)) 94.99%);
  backdrop-filter: blur(4px);
  margin: 0 auto;
  margin-top: -3em;
  width: calc(100% - 2em);
  padding: 2em 1em 5em;
}

@media (min-width: 1086px) {
  .i-meeting__in {
    margin-top: -7em;
    width: calc(100% - 6em);
    padding: 4em 4em 6em;
    max-width: 1700px;
  }
}

.i-meeting__grid {
  display: grid;
  gap: 1em;
}

@media (min-width: 1086px) {
  .i-meeting__grid {
    grid-template-columns: 0.4fr 0.6fr;
    grid-template-rows: auto 1fr;
    gap: 3em;
  }
}

.i-meeting__img {
  overflow: hidden;
  border-radius: 1em;
  aspect-ratio: 30/19;
  border: 1px solid #46bf0d;
}

@media only screen and (min-width: 768px), print {
  .i-meeting__img {
    border-radius: 2em;
  }
}

.i-meeting__img:hover {
  opacity: 1;
}

.i-meeting__img:hover img {
  transform: scale(1.1);
}

@media (max-width: 1085px) {
  .i-meeting__img {
    width: min(600px, 90%);
    margin-left: auto;
    margin-right: auto;
  }
}

@media (min-width: 1086px) {
  .i-meeting__img {
    grid-column: 1/2;
    grid-row: 1/3;
  }
}

.i-meeting__img img {
  width: calc(100% + 2px);
  max-width: none;
  transition: 0.2s;
}

.i-meeting__txt {
  color: #fff;
}

@media (min-width: 1086px) {
  .i-meeting__txt {
    line-height: 2;
    grid-template-rows: 2/3;
  }
}

.i-meeting__h2 {
  margin-bottom: 0;
}

.i-roop {
  overflow: hidden;
  width: 100%;
}

.i-roop__track {
  display: flex;
  width: max-content;
  will-change: transform;
  animation: i-roop-marquee 80s linear infinite;
}

.i-roop__group {
  display: flex;
  gap: 3em;
  padding-right: 3em;
  flex: 0 0 auto;
}

.i-roop__group img {
  height: 2em;
  width: auto;
  flex: 0 0 auto;
  display: block;
}

@media only screen and (min-width: 768px), print {
  .i-roop__group img {
    height: 2.75em;
  }
}

/* 無限ループ用アニメーション */
@keyframes i-roop-marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

/* 動きが苦手なユーザー配慮 */
@media (prefers-reduced-motion: reduce) {
  .i-roop__track {
    animation: none;
  }
}

.i-act {
  background: linear-gradient(180deg, #fff 0%, #e8e9d8 100%);
  padding: 3em 0;
}

@media (min-width: 1086px) {
  .i-act {
    padding: 6em 0;
  }
}

@media (max-width: 1085px) {
  .i-act .container {
    max-width: 600px;
  }
}

.i-act__grid {
  display: grid;
  gap: 2em;
}

@media (min-width: 1086px) {
  .i-act__grid {
    gap: 4em 5.5em;
    grid-template-columns: 1fr 1fr;
    grid-row: auto 1fr;
  }
  .i-act__grid.-g2 {
    direction: rtl;
  }
}

@media (min-width: 1086px) {
  .i-act__no.-n3 {
    margin-top: -8em;
  }
  .-g2 .i-act__no.-n3,
  .-g3 .i-act__no.-n3 {
    margin-top: -20em;
  }
}

.i-act__box {
  position: relative;
  background: linear-gradient(128deg, rgba(255, 255, 255, 0.1) 3.79%, rgba(70, 191, 13, 0.1) 92.74%), var(--wh, #fff);
  border-radius: 1em;
  box-shadow: 0 0 2em 0 rgba(0, 0, 0, 0.08);
  padding: 2em;
  direction: ltr;
}

@media (min-width: 1086px) {
  .i-act__box {
    border-radius: 2em;
  }
}

.i-act__box:hover .i-act__img img {
  transform: scale(1.1);
}

.i-act__box:hover .i-act__h4 {
  opacity: 0.85;
}

.i-act__box:hover .i-act__h4:after {
  transform: translateX(0.25em);
}

.i-act__link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.i-act__h3 {
  direction: ltr;
  font-size: 1.25em;
  font-weight: 600;
  line-height: 160%;
  /* 2.8rem */
  letter-spacing: 0.1225em;
}

@media only screen and (min-width: 768px), print {
  .i-act__h3 {
    font-size: 1.75em;
  }
}

.i-act__img {
  border-radius: 1em;
  overflow: hidden;
  margin-bottom: 1em;
  border: 1px solid #46bf0d;
}

.i-act__img img {
  transition: 0.2s;
}

@media only screen and (min-width: 768px), print {
  .i-act__img {
    border-radius: 2em;
    margin-bottom: 1.75em;
  }
}

.i-act__h4 {
  color: #46bf0d;
  font-size: 1.125em;
  margin-bottom: 0.125em;
  display: flex;
  align-items: center;
  gap: 0.5em;
}

@media only screen and (min-width: 768px), print {
  .i-act__h4 {
    font-size: 1.5em;
  }
}

.i-act__h4.-blank:after {
  transition: 0.2s;
  content: '';
  width: 0.75em;
  height: 0.75em;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M3%200V13H16V0H3ZM14.75%2011.75H4.25V1.25H14.75V11.75Z%22%20fill%3D%22%2346BF0D%22%2F%3E%3Cpath%20d%3D%22M1.25%2014.75V9.25V4.25V3H0V16H13V14.75H11.75H1.25Z%22%20fill%3D%22%2346BF0D%22%2F%3E%3Cpath%20d%3D%22M7.27538%209.77589L10.9585%206.09277V8.74267H12.2085V3.95898H7.42482V5.20898H10.0747L6.3916%208.89208L7.27538%209.77589Z%22%20fill%3D%22%2346BF0D%22%2F%3E%3C%2Fsvg%3E") 50%/100% auto no-repeat;
}

.i-act__txt {
  font-size: 0.875em;
}
