/* top */

.p-home {}

/* top - kv */

.p-kv {
  background-color: #000A19;
  position: relative;
}

.p-kv__catch {
  position: absolute;
}

.p-kv__text {
  position: absolute;
  text-align: center;
  font-weight: 500;
  /* letter-spacing: 0.5em; */
}

@media screen and (min-width: 769px) {
  .p-kv__catch {
    width: 44.375vw;
    right: 6.171875vw;
    top: 8.4375vw;
  }

  .p-kv__text {
    font-size: 1.09375vw;
    right: 15.9375vw;
    top: 16.5625vw;
    line-height: 3;
  }
}

@media screen and (max-width: 768px) {
  .p-kv {
    padding: 0 0 50vw 0;
  }

  .p-kv__catch {
    width: 68vw;
    right: 0;
    left: 0;
    top: 88vw;
    margin: 0 auto;
  }

  .p-kv__text {
    font-size: 3.2vw;
    width: 100%;
    top: 108.8vw;
    line-height: 2.71;
  }
}


/* top - intro */

.p-intro {
  background-color: #000A19;
}

.p-intro__title .-icon {
  display: block;
  margin: 0 auto;
}

.p-intro__text {
  text-align: center;
  line-height: 2.375;
}

@media screen and (min-width: 769px) {
  .p-intro__inner {
    padding: 87px 0 90px 0;
  }

  .p-intro__title {
    margin: 0 0 25px 0;
  }

  .p-intro__title .-icon {
    width: 91px;
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 768px) {
  .p-intro__inner {
    padding: 12.1vw 0 9.33vw 0;
  }

  .p-intro__title {
    margin: 0 0 25px 0;
  }

  .p-intro__title .-icon {
    width: 24.66vw;
    margin-bottom: 9.86vw;
  }

  .p-intro__text {
    font-size: 3.73vw;
    line-height: 2.71;
  }
}


/* top - keyword */

.p-keyword {}

.p-keyword__title .-catch {
  background-color: rgba(112, 112, 112, 0.3);
  text-align: center;
  display: block;
  margin: 0 auto;
  line-height: 1;
  font-weight: 500;
  border-radius: 30px;
}

.p-keyword__title .-text {
  margin: 0 auto;
}

.p-keyword__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.p-keyword__list__item {
  position: relative;
}

.p-keyword__list__item .-no {
  position: absolute;
}

.p-keyword__list__text {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.p-keyword__list__item .-arrow {
  display: block;
  margin: 0 auto;
  position: absolute;
}

.p-keyword__list__text .-small {
  color: rgba(249, 249, 249, 0.7);
  line-height: 1;
  font-weight: 500;
  margin: 0 0 5% 0;
}

.p-keyword__list__text .-large {
  font-weight: bold;
  line-height: 1;
}

.p-keyword__list__item.is-inactive {
  pointer-events: none;
}

.p-keyword__list__item.is-inactive:after {
  content: "COMING SOON";
  position: absolute;
  font-family: 'Barlow',
    sans-serif;
  font-weight: bold;
  width: 100%;
  text-align: center;
  top: 50%;
  transform: translateY(-50%);
  line-height: 1;
}

.p-keyword__list__item.is-inactive .p-keyword__list__text,
.p-keyword__list__item.is-inactive .-arrow {
  opacity: 0.14;
}

.p-keyword__list__item.is-inactive .-bg {
  opacity: 0.6;
}

@media screen and (min-width: 769px) {
  .p-keyword {
    background-image: url(../img/common/bg_head01.jpg), url(../img/common/bg_bottom01.jpg);
    background-size: 100% auto;
    background-position: top center, bottom center;
  }

  .p-keyword__inner {
    padding: 12.26vw 0 17.98vw 0;
  }

  .p-keyword__title {
    margin: 0 0 40px 0;
  }

  .p-keyword__title .-catch {
    font-size: 16px;
    padding: 8px 0;
    width: 222px;
  }

  .p-keyword__title .-text {
    width: 280px;
  }

  .p-keyword__list {
    background-image: url(../img/top/keyword_bar.png);
    background-position: top center;
    background-repeat: no-repeat;
    background-size: 100% auto;
  }

  .p-keyword__list__item {
    width: 18%;
    margin: 0 9.189% 4.954% 0;
  }

  .p-keyword__list__item:nth-child(4) {
    margin-right: 0;
  }

  .p-keyword__list__item:nth-child(7) {
    margin-right: 0;
  }

  .p-keyword__list__item .-no {
    width: 50%;
    top: -10%;
    left: -10%;
  }

  .p-keyword__list__item .-arrow {
    width: 7.5%;
    left: 0;
    right: 0;
    bottom: 15%;
    transition: 0.3s;
  }

  .p-keyword__list__item:hover .-arrow {
    transform: translateX(5px);
  }

  .p-keyword__list__item .-bg {
    transition: 0.3s;
  }

  .p-keyword__list__item:hover .-bg {
    filter: brightness(1.4);
  }

  .p-keyword__list__text .-small {}

  .p-keyword__list__text .-large {
    font-size: 28px;
  }

  .p-keyword__list__item.is-inactive:after {
    font-size: 18px;
  }
}

@media screen and (max-width: 1110px) {
  .p-keyword__list__text .-large {
    font-size: 2.52vw;
  }

  .p-keyword__list__item .-small {
    font-size: 1.4vw;
  }

  .p-keyword__list__item.is-inactive:after {
    font-size: 1.62vw;
  }
}

@media screen and (max-width: 768px) {
  .p-keyword {
    background-image: url(../img/common/bg_head01_sp.jpg), url(../img/common/bg_bottom01_sp.jpg);
    background-size: 100% auto;
    background-position: top center, bottom center;
  }

  .p-keyword__inner {
    padding: 12.26vw 0 17.98vw 0;
  }

  .p-keyword__title .-catch {
    font-size: 4vw;
    padding: 2.1vw 0;
    width: 57.6vw;
  }

  .p-keyword__title .-text {
    width: 70vw;
  }

  .p-keyword__inner {
    padding: 26.66vw 0 18.66vw 0;
  }

  .p-keyword__title {
    margin: 0 0 40px 0;
  }

  .p-keyword__title .-catch {
    font-size: 16px;
    padding: 8px 0;
    width: 222px;
  }

  .p-keyword__title .-text {
    width: 280px;
  }

  .p-keyword__list {
    background-image: url(../img/top/keyword_bar_sp.png);
    background-position: top center;
    background-repeat: no-repeat;
    background-size: 100% auto;
    justify-content: space-between;
  }

  .p-keyword__list__item {
    width: 41.5vw;
    margin: 0 0 17vw 0;
  }

  .p-keyword__list__item:nth-child(even) {
    transform: translateY(22.4vw);
  }

  .p-keyword__list__item .-no {
    width: 20vw;
    top: -10%;
  }

  .p-keyword__list__item:nth-child(odd) .-no {
    left: -10%;
  }

  .p-keyword__list__item:nth-child(even) .-no {
    right: -10%;
  }

  .p-keyword__list__item .-arrow {
    width: 7.5%;
    left: 0;
    right: 0;
    bottom: 15%;
  }

  .p-keyword__list__text .-small {
    font-size: 3.73vw;
  }

  .p-keyword__list__text .-large {
    font-size: 6.4vw;
  }

  .p-keyword__list__item.is-inactive:after {
    font-size: 4.8vw;
  }
}


/* top - movie */

.p-movie {
  background-color: #000A19;
}

.p-movie__box {
  margin: 0 auto;
  position: relative;
}

.p-movie__box__item:last-child {
  margin: 0;
}

.p-movie__box .-wrap {
  padding: 56.25% 0 0 0;
  position: relative;
  display: block;
}

.p-movie__box .-wrap img,
.p-movie__box .-wrap iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

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

.p-movie__box .-arrow {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin: 0 auto;
  transform: translateY(-50%);
}

.p-movie__box.is-inactive .-arrow {
  display: none;
}

.p-movie__box.is-inactive .-wrap:after {
  content: "COMING SOON";
  color: #fff;
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  z-index: 10;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Barlow', sans-serif;
}

.p-movie__comingsoon {
  text-align: center;
  font-family: 'Barlow', sans-serif;
  font-weight: bold;
  background-image: linear-gradient(150deg, rgba(0, 0, 0, 1), rgba(26, 43, 65, 1) 75%);
  box-shadow: 0 0 80px rgb(191 236 250 / 11%) inset;
  border: 2px solid rgba(198, 208, 232, 0.12);
  line-height: 1;
  position: relative;
}

@media screen and (min-width: 769px) {
  .p-movie__inner {
    padding: 0 0 100px 0;
  }

  .p-movie__title {
    margin: 0 0 40px 0;
  }

  .p-movie__box {
    max-width: 730px;
    width: 100%;
  }

  .p-movie__box__item {
    margin: 0 0 5% 0;
  }

  .p-movie__box .-arrow {
    width: 80px;
  }

  .p-movie__box.is-inactive .-wrap:after {
    font-size: 30px;
  }

  .p-movie__comingsoon {
    font-size: 30px;
    max-width: 730px;
    width: 100%;
    margin: 0 auto;
    padding: 13% 0;
  }
}

@media screen and (max-width: 768px) {
  .p-movie__inner {
    padding: 11.7vw 0 25.86vw 0;
    width: 100%;
  }

  .p-movie__title {
    margin: 0 0 10.66vw 0;
  }

  .p-movie__box {
    width: 89.33vw;
    margin: 0 auto;
  }

  .p-movie__box__item {
    margin: 0 0 10vw 0;
  }

  .p-movie__box .-arrow {
    width: 12vw;
  }

  .p-movie__box.is-inactive .-wrap:after {
    font-size: 6vw;
  }

  .p-movie__comingsoon {
    font-size: 6vw;
    width: 89.33vw;
    margin: 0 auto;
    padding: 15vw 0;
  }
}


/* top > news */

.p-news {}

.p-news__list__item {
  display: flex;
  justify-content: space-between;
}

.p-news__list__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.p-news__list__header__date {
  font-weight: bold;
  line-height: 1;
  font-family: 'Barlow', sans-serif;
}

.p-news__list__header__cat {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #1A2B41;
  border-radius: 50px;
  border: 1px solid rgba(198, 208, 232, 0.12);
}

.p-news__list__header__cat .-no {
  font-weight: bold;
  font-family: 'Barlow', sans-serif;
  line-height: 1;
}

.p-news__list__header__cat .-text {
  font-weight: 500;
  line-height: 1;
}

@media screen and (min-width: 769px) {
  .p-news {
    background-image: url(../img/common/bg_head02.jpg);
    background-size: 100% auto;
    background-position: top center;
  }

  .p-news__inner {
    padding: 12.26vw 0 92px 0;
  }
}

@media screen and (max-width: 768px) {
  .p-news {
    background-image: url(../img/common/bg_head02_sp.jpg);
    background-size: 100% auto;
    background-position: top center;
  }

  .p-news__inner {
    padding: 28vw 0 11.73vw 0;
  }
}


/* list > pickup */

.p-list__pickup {
  position: relative;
}

.p-list__pickup__item {
  position: relative;
}

.p-list__pickup__info {
  position: absolute;
  background-color: rgba(1, 3, 6, 0.86);
}

.p-list__pickup__info__date {
  font-family: 'Barlow', sans-serif;
  font-weight: bold;
  line-height: 1;
}

.p-list__pickup__cat {}

.p-list__pickup__cat .-no {
  display: block;
  margin: 0 auto 0 0;
}

.p-list__pickup__cat__text .-wrap {
  display: flex;
  align-items: flex-end;
}

.p-list__pickup__cat__text .-small {
  color: rgba(249, 249, 249, 0.7);
  line-height: 1;
}

.p-list__pickup__cat__text .-large {
  font-weight: bold;
  line-height: 1;
}

.p-list__pickup__cat .-bar {
  display: block;
  background-color: #fff;
  margin: auto;
}

.p-list__pickup__control__prev {
  display: block;
}

.p-list__pickup__control__next {
  display: block;
}

.p-list__pickup__control__pager {
  display: flex;
  align-items: center;
  justify-content: center;
}

.p-list__pickup__control__pager .swiper-pagination-bullet {
  background-color: #636872;
  opacity: 1;
}

.p-list__pickup__control__pager .swiper-pagination-bullet-active {
  background-color: #fff;
}

.p-list__pickup__inner {
  position: relative;
}

@media screen and (min-width: 769px) {
  .p-list__pickup__item {
    padding: 5.2% 0 0 0;
    transition: 0.3s;
  }

  .p-list__pickup__item:hover {
    opacity: 0.8;
  }

  .p-list__pickup__cat {
    top: 110px;
    position: absolute;
    z-index: 10;
    left: 8px;
  }

  .p-list__pickup__cat .-no {
    width: 60px;
    transform: translateX(-10px);
  }

  .p-list__pickup__thumb {
    width: 75.22%;
    margin: 0 0 0 auto;
  }

  .p-list__pickup__info {
    bottom: 54px;
    width: 390px;
    padding: 23px 15px;
    left: 8px;
  }

  .p-list__pickup__info__date {
    font-size: 18px;
    margin: 0 0 10px 0;
  }

  .p-list__pickup__info .-wrap {
    margin: 0 26px 0 0;
  }

  .p-list__pickup__info .-large {
    font-size: 25px;
  }

  .p-list__pickup__cat__text {
    display: flex;
    align-items: center;
  }

  .p-list__pickup__cat__text .-small {
    font-size: 20px;
    margin: 0 6px 0 0;
  }

  .p-list__pickup__cat__text .-large {
    font-size: 25px;
    margin: 0 26px 0 0;
  }

  .p-list__pickup__cat .-bar {
    width: 60px;
    height: 1px;
  }

  .p-list__pickup__control {
    max-width: 1096px;
    margin: 0 auto;
    width: 85%;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 1.8%;
    z-index: 10;
  }

  .p-list__pickup__control__inner {
    width: 190px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 5;
  }

  .p-list__pickup__control__prev {
    width: 15px;
    display: block;
  }

  .p-list__pickup__control__next {
    width: 15px;
    display: block;
  }

}

@media screen and (max-width: 768px) {
  .p-list__pickup__inner {
    padding: 6.66vw 0 7.4vw 0;
    width: 100%;
  }

  .p-list__pickup__item {
    padding: 0 0 14.4vw 0;
  }

  .p-list__pickup__thumb {
    width: 89.33vw;
    margin: 0 auto;
  }

  .p-list__pickup__info {
    bottom: 0;
    width: 77.33vw;
    padding: 5.33vw;
  }

  .p-list__pickup__info__date {
    font-size: 4.8vw;
    margin: 0 0 3.2vw 0;
  }

  .p-list__pickup__info__title {
    font-size: 4vw;
  }

  .p-list__pickup__info .-large {
    font-size: 25px;
    margin: 0 26px 0 0;
  }

  .p-list__pickup__cat {
    margin: 0 0 8vw 0;
  }

  .p-list__pickup__cat .-no {
    width: 18.66vw;
    margin: 0 auto 1.33vw auto;
  }

  .p-list__pickup__cat__text {
    flex-wrap: wrap;
  }

  .p-list__pickup__cat__text .-wrap {
    margin: 0 0 2.66vw 0;
  }

  .p-list__pickup__cat__text .-small {
    font-size: 5.33vw;
    margin: 0 0.8vw 0 auto;
  }

  .p-list__pickup__cat__text .-large {
    font-size: 6.66vw;
    margin: 0 auto 0 0;
  }

  .p-list__pickup__cat .-bar {
    width: 1px;
    height: 6.66vw;
    margin: 0 auto;
  }

  .p-list__pickup__control__prev {
    width: 4vw;
    position: absolute;
    top: 69.8vw;
    z-index: 10;
    left: 2.6vw;
  }

  .p-list__pickup__control__next {
    width: 4vw;
    position: absolute;
    top: 69.8vw;
    z-index: 10;
    right: 2.6vw;
  }
}


/* list > about */

.p-list__about__item {
  line-height: 1.75;
  margin: 0 0 1.5em 0;
}

.p-list__about__item:last-child {
  margin: 0;
}

@media screen and (min-width: 769px) {
  .p-list__about__inner {
    padding: 80px 0;
    max-width: 730px;
    width: 90%;
  }
}

@media screen and (max-width: 768px) {
  .p-list__about__inner {
    padding: 8vw 0;
  }

  .p-list__about__item {
    font-size: 4.26vw;
  }
}


/* list > news */

.p-list__news__item {
  line-height: 1.75;
  margin: 0 0 1.5em 0;
}

.p-list__news__item:last-child {
  margin: 0;
}

@media screen and (min-width: 769px) {
  .p-list__news__inner {
    padding: 0 0 60px 0;
  }

  .p-list__news__title {
    margin: 0 0 40px 0;
  }
}

@media screen and (max-width: 768px) {
  .p-list__news__inner {
    padding: 8.53vw 0 16vw 0;
  }

  .p-list__news__title {
    margin: 0 0 9vw 0;
  }
}


/* detail > article */

.p-detail__article {}

.p-detail__article__cat .-bar {
  width: 1px;
  /* background-color: #fff; */
  margin: 0 auto;
}

.p-detail__article__cat .-no {
  display: block;
  margin: 0 auto;
}

.p-detail__article__cat__text {}

.p-detail__article__cat__text .-wrap {
  display: flex;
  justify-content: center;
  align-items: flex-end;
}

.p-detail__article__cat__text .-bar {
  /* background-color: #fff; */
  width: 1px;
  margin: 0 auto;
  display: block;
}

.p-detail__article__cat__text .-small {
  color: rgba(249, 249, 249, 0.7);
  font-weight: 500;
}

.p-detail__article__cat__text .-large {
  font-weight: bold;
}

.p-detail__article__header__date {
  font-weight: bold;
  font-family: 'Barlow',
    sans-serif;
}

.p-detail__article__body h1,
.p-detail__article__body h2,
.p-detail__article__body h3,
.p-detail__article__body h4,
.p-detail__article__body h5,
.p-detail__article__body h6 {
  font-weight: bold;
  border-bottom: 2px solid #fff;
}

.p-detail__article__body .-btn {
  text-align: center;
  background-image: linear-gradient(150deg, rgba(0, 0, 0, 0.2), rgba(26, 43, 65, 1) 45%);
  box-shadow: 0 0 80px rgb(191, 236, 250, 0.15) inset, 5px 5px 10px #0A2333;
  /* border: 2px solid rgba(198, 208, 232, 0.12); */
  margin: 0 auto;
  display: block;
  font-weight: bold;
  text-decoration: none;
  position: relative;
  text-decoration: none;
}

.p-detail__article__body a+.-btn,
.p-detail__article__body .-btn a {
  text-decoration: none;
}

.p-detail__article__body .-btn:after {
  content: "";
  display: block;
  border: 2px solid rgba(198, 208, 232, 0.12);
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}


.p-detail__article__body a {
  text-decoration: underline;
}

.p-detail__article__body a:hover {
  text-decoration: none;
}

@media screen and (min-width: 769px) {
  .p-detail__article__inner {
    padding: 40px 0 20px 0;
    max-width: 730px;
  }

  .p-detail__article__cat {
    margin: 0 0 20px 0;
  }

  .p-detail__article__cat .-no {
    width: 74px;
    margin-bottom: 8px;
  }

  .p-detail__article__cat__text .-bar {
    height: 35px;
  }

  .p-detail__article__cat__text .-wrap {
    margin: 0 0 9px 0;
  }

  .p-detail__article__cat__text .-small {
    font-size: 20px;
  }

  .p-detail__article__cat__text .-large {
    font-size: 25px;
  }

  .p-detail__article__thumb {
    margin: 0 0 30px 0;
  }

  .p-detail__article__header {
    margin: 0 0 46px 0;
  }

  .p-detail__article__header__date {
    margin: 0 0 8px 0;
  }

  .p-detail__article__header__title {
    font-size: 26px;
  }

  .p-detail__article__body p {
    line-height: 1.75;
    margin: 0 0 1.75em 0;
  }

  .p-detail__article__body img {
    margin: 0 0 40px 0;
  }

  .p-detail__article__body h1,
  .p-detail__article__body h2,
  .p-detail__article__body h3,
  .p-detail__article__body h4,
  .p-detail__article__body h5,
  .p-detail__article__body h6 {
    padding: 0 0 8px 0;
    margin: 0 0 18px 0;
  }

  .p-detail__article__body .-btn {
    width: 330px;
    padding: 18px 0;
    margin-bottom: 46px;
  }

}

@media screen and (max-width: 768px) {
  .p-detail__article__inner {
    padding: 8.53vw 0 0 0;
  }

  .p-detail__article__cat {
    margin: 0 0 5.33vw 0;
  }

  .p-detail__article__cat .-no {
    width: 19.73vw;
    margin-bottom: 2.13vw;
  }

  .p-detail__article__cat__text .-bar {
    height: 9.3vw;
  }

  .p-detail__article__cat__text .-wrap {
    margin: 0 0 2.4vw 0;
  }

  .p-detail__article__cat__text .-small {
    font-size: 5.33vw;
  }

  .p-detail__article__cat__text .-large {
    font-size: 6.66vw;
  }

  .p-detail__article__thumb {
    margin: 0 0 8vw 0;
  }

  .p-detail__article__header {
    margin: 0 0 8vw 0;
  }

  .p-detail__article__header__date {
    margin: 0 0 2.13vw 0;
  }

  .p-detail__article__header__title {
    font-size: 5.33vw;
  }

  .p-detail__article__body p {
    line-height: 1.75;
    margin: 0 0 1.75em 0;
    font-size: 4.26vw;
  }

  .p-detail__article__body img {
    margin: 0 0 10.66vw 0;
  }

  .p-detail__article__body h1,
  .p-detail__article__body h2,
  .p-detail__article__body h3,
  .p-detail__article__body h4,
  .p-detail__article__body h5,
  .p-detail__article__body h6 {
    padding: 0 0 2.13vw 0;
    margin: 0 0 4.8vw 0;
  }

  .p-detail__article__body .-btn {
    width: 100%;
    padding: 4vw 0;
    margin-bottom: 12.2vw;
    font-size: 4.26vw;
  }
}