/* ---------------------
  common
--------------------- */
.tab {
  display: none;
}
@media screen and (max-width: 834px) {
  .tab {
    display: block;
  }
}

.fwsb {
  font-weight: 600;
}

.lh-1_75 {
  line-height: 1.75;
}

.f30 {
  font-size: 3rem;
}
@media screen and (max-width: 600px) {
  .f30 {
    font-size: 6vw;
  }
}

.f130 {
  font-size: 13rem;
}
@media screen and (max-width: 834px) {
  .f130 {
    font-size: 8rem;
  }
}

.fc-blue {
  color: #01184d;
}

.w-600 {
  max-width: 60rem;
  margin: 0 0 0 auto;
}
@media screen and (max-width: 834px) {
  .w-600 {
    max-width: 100%;
    margin: 0 auto 0 0;
  }
}

/* ---------------------
  ci
--------------------- */
.c-ci__sec .inner:not(.-s) {
  padding: 18rem 0;
}
@media screen and (max-width: 1100px) {
  .c-ci__sec .inner:not(.-s) {
    padding: 10rem 0;
  }
}
@media screen and (max-width: 834px) {
  .c-ci__sec .inner:not(.-s) {
    padding: 5rem 0;
  }
}
.c-ci__sec:not(:last-child) .inner:not(.-s) {
  border-bottom: 1px solid #eee;
}

.c-ci__ttl {
  font-size: 1.5rem;
  font-weight: 500;
}

.ci-intro {
  padding: 14.5rem 0 19rem;
  color: #fff;
  background: url(../img/ci/ci-intro_bg.webp) no-repeat top center/cover;
  overflow: hidden;
}
@media screen and (max-width: 1100px) {
  .ci-intro {
    padding: 10rem 0;
  }
}
@media screen and (max-width: 834px) {
  .ci-intro {
    padding: 5rem 0;
  }
}
.ci-intro__flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 3rem;
}
@media screen and (max-width: 1100px) {
  .ci-intro__flex {
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 5rem;
  }
}
@media screen and (max-width: 834px) {
  .ci-intro__flex {
    gap: 3rem;
  }
}
@media screen and (max-width: 450px) {
  .ci-intro__flex {
    gap: 2rem;
  }
}
.ci-intro__flex .c-txt {
  max-width: 55rem;
  width: 46%;
  margin-top: 10rem;
}
@media screen and (max-width: 1100px) {
  .ci-intro__flex .c-txt {
    max-width: 100%;
    width: 100%;
    margin-top: 0;
  }
}
@media screen and (max-width: 450px) {
  .ci-intro__flex .c-txt br {
    display: none;
  }
}
.ci-intro__cont {
  max-width: 56rem;
}
.ci-intro__cont .f32 {
  margin-top: 4rem;
}
@media screen and (max-width: 834px) {
  .ci-intro__cont .f32 {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 450px) {
  .ci-intro__cont .f32 {
    font-size: 1.9rem;
  }
  .ci-intro__cont .f32 br {
    display: none;
  }
}
.ci-intro__txt {
  position: relative;
  left: -10rem;
  max-width: 55.2rem;
}
@media screen and (max-width: 1420px) {
  .ci-intro__txt {
    left: -3%;
  }
}
@media screen and (max-width: 834px) {
  .ci-intro__txt {
    max-width: 40rem;
    width: 90%;
  }
}
.ci-intro__slider-wrap {
  margin-top: 19rem;
  width: 300%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 1100px) {
  .ci-intro__slider-wrap {
    margin-top: 10rem;
  }
}
@media screen and (max-width: 834px) {
  .ci-intro__slider-wrap {
    margin-top: 5rem;
    width: 500%;
  }
}
@media screen and (max-width: 450px) {
  .ci-intro__slider-wrap {
    margin-top: 3rem;
    width: 600%;
  }
}
.ci-intro__slider {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.ci-intro__slider:first-child {
  animation: slide01 280s -140s infinite linear;
}
@media screen and (max-width: 1100px) {
  .ci-intro__slider:first-child {
    animation: slide01 200s -100s infinite linear;
  }
}
.ci-intro__slider:last-child {
  animation: slide02 200s infinite linear;
}
.ci-intro__slider li {
  padding: 0 3.5rem;
}
@media screen and (max-width: 1100px) {
  .ci-intro__slider li {
    padding: 0 1rem;
  }
}
@media screen and (max-width: 450px) {
  .ci-intro__slider li {
    padding: 0 0.5rem;
  }
}
.ci-intro__slider li:first-child, .ci-intro__slider li:nth-child(5) {
  margin-top: 10rem;
}
@media screen and (max-width: 1100px) {
  .ci-intro__slider li:first-child, .ci-intro__slider li:nth-child(5) {
    margin-top: 5rem;
  }
}
@media screen and (max-width: 450px) {
  .ci-intro__slider li:first-child, .ci-intro__slider li:nth-child(5) {
    margin-top: 3rem;
  }
}
.ci-intro__slider li:nth-child(3) {
  margin-top: 26rem;
}
@media screen and (max-width: 1100px) {
  .ci-intro__slider li:nth-child(3) {
    margin-top: 10rem;
  }
}
@media screen and (max-width: 450px) {
  .ci-intro__slider li:nth-child(3) {
    margin-top: 7rem;
  }
}

.ci-mind .c-ci__ttl {
  margin: 8.5rem 0 2rem;
}
@media screen and (max-width: 834px) {
  .ci-mind .c-ci__ttl {
    margin: 4rem 0 1rem;
  }
}
@media screen and (max-width: 450px) {
  .ci-mind .c-ci__ttl {
    margin-top: rem;
  }
}
@media screen and (max-width: 834px) {
  .ci-mind .f50 {
    font-size: max(2rem, 5vw);
  }
}
@media screen and (max-width: 450px) {
  .ci-mind .f50 br {
    display: none;
  }
}
.ci-mind .w-600 {
  margin-top: 2rem;
}

.ci-beha__list {
  margin-top: 7rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media screen and (max-width: 834px) {
  .ci-beha__list {
    margin-top: 3rem;
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.ci-beha__item {
  position: relative;
  padding: 4rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom center;
  overflow: hidden;
  width: 50%;
}
@media screen and (max-width: 834px) {
  .ci-beha__item {
    padding: 2rem;
    width: 100%;
  }
}
.ci-beha__item:first-child {
  border-radius: 1rem 0 0 1rem;
  -webkit-border-radius: 1rem 0 0 1rem;
  background-image: url(../img/ci/ci-beha__bg01.webp);
}
@media screen and (max-width: 834px) {
  .ci-beha__item:first-child {
    border-radius: 1rem 1rem 0 0;
    -webkit-border-radius: 1rem 1rem 0 0;
  }
}
.ci-beha__item:last-child {
  border-radius: 0 1rem 1rem 0;
  -webkit-border-radius: 0 1rem 1rem 0;
  background-image: url(../img/ci/ci-beha__bg02.webp);
}
@media screen and (max-width: 834px) {
  .ci-beha__item:last-child {
    border-radius: 0 0 1rem 1rem;
    -webkit-border-radius: 0 0 1rem 1rem;
  }
}
.ci-beha__cont {
  margin-top: 37.8rem;
}
@media screen and (max-width: 834px) {
  .ci-beha__cont {
    margin-top: 20rem;
  }
}
@media screen and (max-width: 450px) {
  .ci-beha__cont {
    margin-top: 10rem;
  }
  .ci-beha__cont .f24 {
    font-size: 1.8rem;
  }
}
.ci-beha__cont .f16 {
  margin-top: 2rem;
}
@media screen and (max-width: 450px) {
  .ci-beha__cont .f16 br {
    display: none;
  }
}
.ci-beha__flex {
  margin-top: 8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3rem;
}
@media screen and (max-width: 834px) {
  .ci-beha__flex {
    margin-top: 5rem;
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2rem;
  }
}
@media screen and (max-width: 450px) {
  .ci-beha__flex {
    margin-top: 3rem;
  }
}

.ci-visual .inner:not(.-s) {
  padding-bottom: 0;
}
.ci-visual__logo {
  margin: -1.5rem auto 7.4rem;
  max-width: 63.6rem;
  width: fit-content;
}
@media screen and (max-width: 1300px) {
  .ci-visual__logo {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 834px) {
  .ci-visual__logo {
    width: 70%;
    margin-bottom: 3rem;
  }
}
.ci-visual__list {
  margin-top: 3rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-column-gap: 4.4rem;
  grid-row-gap: 2.5rem;
}
@media screen and (max-width: 1300px) {
  .ci-visual__list {
    grid-column-gap: 2.5rem;
  }
}
@media screen and (max-width: 1100px) {
  .ci-visual__list {
    grid-column-gap: 2rem;
  }
}
@media screen and (max-width: 834px) {
  .ci-visual__list {
    grid-template-columns: repeat(1, 1fr);
    grid-row-gap: 2rem;
  }
}
.ci-visual__item {
  padding: 3rem 3rem 5.5rem 5rem;
  background-color: #f7f7f7;
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
}
@media screen and (max-width: 1100px) {
  .ci-visual__item {
    padding: 2rem;
  }
}
@media screen and (max-width: 550px) {
  .ci-visual__item .f32 {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 450px) {
  .ci-visual__item .f16 br {
    display: none;
  }
}
.ci-visual__flex {
  margin-bottom: 6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 3rem;
}
@media screen and (max-width: 834px) {
  .ci-visual__flex {
    margin-bottom: 2rem;
  }
}
.ci-visual__flex hgroup {
  margin-top: 2rem;
}
.ci-visual__flex .f14 {
  margin-top: 1rem;
}
.ci-visual__img {
  max-width: 10rem;
  width: calc(100% - 13.6rem);
  aspect-ratio: 1/1;
}