@charset "UTF-8";
/* CSS INFORMATION -====================================================
File name : top.css
Description : トップ
===================================================================== */
/* =====================================================================
    共通
======================================================================*/
@media screen and (max-width: 767px) {
  .news,
  .nextstory,
  .music,
  .comics {
    overflow: hidden;
  }
  .news .sec-ttl,
  .nextstory .sec-ttl,
  .music .sec-ttl,
  .comics .sec-ttl {
    margin: 0 calc(-55 / 640 * 100%) 0 auto;
    padding: 0 0.65em 0 0;
    width: -webkit-min-content;
    width: -moz-min-content;
    width: min-content;
  }
  .news .sec-ttl::before,
  .nextstory .sec-ttl::before,
  .music .sec-ttl::before,
  .comics .sec-ttl::before {
    left: auto;
    right: 0;
    -webkit-transform: scale(-1, 1);
            transform: scale(-1, 1);
  }
  .news .sec-ttl::after,
  .nextstory .sec-ttl::after,
  .music .sec-ttl::after,
  .comics .sec-ttl::after {
    margin-left: -1.5em;
  }
}
.staff .sec-ttl::after,
.sns .sec-ttl::after {
  background-image: url(../images/common/img_grunge01_skyBlue.png);
  opacity: 0.5;
}
.staff .sec-ttl .ja,
.sns .sec-ttl .ja {
  color: #0082aa;
}
.staff .sec-ttl .en,
.sns .sec-ttl .en {
  color: #52bccc;
}

.slider-wrap {
  position: relative;
  padding-top: 2em;
  z-index: 1;
}

.slider-arrows {
  position: absolute;
  top: -1.5em;
  right: 0;
  padding: 0 1.6em;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
  z-index: 1;
}
.slider-arrows .slick-arrow {
  position: absolute;
  top: 0;
  left: 0;
  width: 0.8em;
  height: 0.8em;
  cursor: pointer;
}
.slider-arrows .slick-arrow::after {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" fill="%2332CD32" viewBox="0 0 30 30"><polygon style="stroke-width: 0px;" points="23.6 15.9 26.5 19 23.2 22.1 20.3 19 8.8 30 5.5 26.8 17.3 15.7 5.5 3 8.8 0 20.5 12.6 23.3 10 26.5 13.2 23.6 15.9"/></svg>');
          mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" fill="%2332CD32" viewBox="0 0 30 30"><polygon style="stroke-width: 0px;" points="23.6 15.9 26.5 19 23.2 22.1 20.3 19 8.8 30 5.5 26.8 17.3 15.7 5.5 3 8.8 0 20.5 12.6 23.3 10 26.5 13.2 23.6 15.9"/></svg>');
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #ffffff;
  -webkit-transition: background-color 0.5s ease;
  transition: background-color 0.5s ease;
}
.slider-arrows .slick-arrow.prev::after {
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
.slider-arrows .slick-arrow.next {
  left: auto;
  right: 0;
}
.slider-arrows .slick-arrow.slick-disabled {
  pointer-events: none;
}
.slider-arrows .slick-arrow.slick-disabled::after {
  background-color: #0f171f;
}
.slider-arrows .slick-dots {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 0.15em;
  width: 100%;
}
.slider-arrows .slick-dots li {
  display: inline-block;
  margin: 0 0.5em;
  width: 0.5em;
  height: 0.5em;
}
.slider-arrows .slick-dots li button {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  color: transparent;
}
.slider-arrows .slick-dots li button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #ffffff;
  border-radius: 50%;
  -webkit-transition: background-color 0.5s ease;
  transition: background-color 0.5s ease;
}
.slider-arrows .slick-dots li.slick-active button::before {
  background-color: #52bccc;
}

@media screen and (min-width: 768px) {
  .main > section:not(.mv) .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .main > section:not(.mv) .inner .sec-ttl {
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  .intro .sec-ttl,
  .staff .sec-ttl,
  .movie .sec-ttl,
  .comics .sec-ttl,
  .sns .sec-ttl {
    padding: 0 0.65em 0 0;
  }
  .intro .sec-ttl::before,
  .staff .sec-ttl::before,
  .movie .sec-ttl::before,
  .comics .sec-ttl::before,
  .sns .sec-ttl::before {
    left: auto;
    right: 0;
    -webkit-transform: scale(-1, 1);
            transform: scale(-1, 1);
  }
  .intro .sec-ttl::after,
  .staff .sec-ttl::after,
  .movie .sec-ttl::after,
  .comics .sec-ttl::after,
  .sns .sec-ttl::after {
    margin-left: -1.5em;
  }
  .slider-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    padding-top: 0;
  }
  .slider-arrows {
    position: relative;
    top: auto;
    font-size: 2.8rem;
  }
}
/* =====================================================================
    mv
======================================================================*/
.mv h1 {
  position: absolute;
  top: 0;
  left: 50%;
  margin-top: calc(733 / 750 * 100%);
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: calc(600 / 750 * 100%);
}
.mv-slider-thumbnail .slick-track {
  -webkit-transform: translate3d(0, 0, 0) !important;
          transform: translate3d(0, 0, 0) !important;
}
.mv-slider-thumbnail .slick-slide {
  position: relative;
}
.mv-slider-thumbnail .slick-slide::after {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 13, 26, 0.8);
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  z-index: 1;
}
.mv-slider-thumbnail .slick-slide.slick-current::after {
  opacity: 0;
}
.mv-onair {
  position: relative;
  margin-top: calc(-100 / 750 * 100%);
  padding: 4rem 0;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(65%, #21303f), color-stop(98%, transparent));
  background: linear-gradient(to top, #21303f 65%, transparent 98%);
  z-index: 1;
}
.mv-onair::before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 51, 102, 0.8);
  mix-blend-mode: overlay;
  z-index: -1;
}
.mv-onair img {
  margin: 0 auto;
  width: calc(660 / 750 * 100%);
}

@media screen and (min-width: 768px) {
  .mv {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .mv-left {
    width: calc(1152 / 1920 * 100%);
  }
  .mv-right {
    position: sticky;
    top: 0;
    padding-top: 6.4rem;
    padding-top: 68px;
    width: calc(768 / 1920 * 100%);
  }
  .mv h1 {
    position: relative;
    margin-top: 0;
    width: 75.5208333333%;
  }
  .mv-slider-thumbnail .slick-slide {
    cursor: pointer;
  }
  .mv-onair {
    margin-top: 0;
    padding: 6rem 0;
    background: transparent;
  }
  .mv-onair::before {
    display: none;
  }
  .mv-onair img {
    width: 77.4739583333%;
  }
  .mv-sns-inner {
    margin-bottom: 3.5rem;
  }
  .mv-sns-inner dt {
    text-align: center;
    margin-bottom: 1.2em;
    font-size: 2.5rem;
    color: #91d2dc;
  }
  .mv-sns-inner dt span {
    color: #ffffff;
  }
  .mv-sns-list {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .mv-sns-list li {
    margin: 0 1.171875%;
    width: 30.2083333333%;
  }
  .mv-sns-list li a {
    text-align: center;
    padding: 2.3rem 0;
    font-size: 1.8rem;
    color: #91d2dc;
    border: 1px solid #ffffff;
    -webkit-transition: border-color 0.3s ease;
    transition: border-color 0.3s ease;
  }
  .mv-sns-list li a span {
    margin-left: 0.3em;
    font-family: "Jost", sans-serif;
    color: #ffffff;
  }
  .mv-sns-list li a:hover {
    -webkit-transform: scale(1);
            transform: scale(1);
    border-color: #52bccc;
  }
  .mv-snsShare-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .mv-snsShare-list li {
    margin: 0 6%;
  }
  .mv-snsShare-list li a {
    width: 3rem;
    height: 3rem;
  }
  .mv-snsShare-list li a svg {
    width: 100%;
    height: 100%;
    fill: #ffffff;
  }
  .mv-snsShare-list li a:hover {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
/* =====================================================================
    banner
======================================================================*/
.banner1,
.banner2 {
  padding: 6.4rem 0;
}

/* =====================================================================
    news
======================================================================*/
.news {
  padding: 10rem 0 0;
}
.news .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.news .sec-content {
  margin-left: calc(-55 / 640 * 100%);
  width: calc(536 / 640 * 100%);
}
.news-list li a {
  position: relative;
  padding: 6.4rem 0;
  padding-left: 10.2611940299%;
}
.news-list li a::before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 0.8rem;
  background: url(../images/common/img_scrap_blue.png) no-repeat top left/100% 100%;
}
.news-list li a[tabindex="-1"] {
  pointer-events: none;
}
.news-list li time {
  display: block;
  margin-bottom: 2rem;
  font-family: "Jost", sans-serif;
  font-weight: 500;
  font-size: 80%;
  color: #91d2dc;
}
.news-list li h3 {
  line-height: 1.333;
}
.news-btn {
  text-align: center;
  margin: 1em auto 0;
  padding: 0.8em;
  width: 83.9552238806%;
  border: 1px solid currentColor;
}

@media screen and (min-width: 768px) {
  .news .inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .news .sec-content {
    margin-left: 0;
    width: calc(920 / 1240 * 100%);
  }
  .news-list li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 4rem 0;
    padding-left: 4.347826087%;
  }
  .news-list li a:hover {
    -webkit-transform: translateX(1em) scale(1);
            transform: translateX(1em) scale(1);
  }
  .news-list li time {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 3.3em;
    margin: 0 2em 0 0;
    font-size: 100%;
    line-height: 1.333;
    word-wrap: break-word;
  }
  .news-list li h3 {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
  .news-btn {
    width: 300px;
    -webkit-transition-property: border-color;
    transition-property: border-color;
  }
  .news-btn:hover {
    -webkit-transform: scale(1);
            transform: scale(1);
    border-color: #52bccc;
  }
}
/* =====================================================================
    intro
======================================================================*/
.intro {
  padding: 10rem 0;
}
@media screen and (max-width: 767px) {
  .intro-slider-list {
    margin: 0 calc(50% - 50vw);
  }
}

@media screen and (min-width: 768px) {
  .intro .inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .intro .sec-ttl {
    position: absolute;
    top: 0;
    right: 0;
  }
  .intro .sec-content {
    width: 100%;
  }
  .intro .intro-slider-list {
    width: calc(1000 / 1240 * 100%);
  }
}
/* =====================================================================
    nextstory
======================================================================*/
.nextstory {
  padding: 0 0 16rem;
}
.nextstory::before {
  content: "";
  position: absolute;
  display: block;
  bottom: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 26rem);
  background: url(../images/top/bg_pattern_blue_slant-sp.png) no-repeat top center/100% 100%;
}
.nextstory-head {
  margin: -7em 0 5rem;
  width: calc(480 / 640 * 100%);
}
.nextstory-date {
  margin-bottom: 0.5em;
  font-family: "Jost", sans-serif;
  font-weight: 500;
  font-size: 80%;
  color: #91d2dc;
}
.nextstory-ttl {
  font-size: 133%;
  line-height: 1.5;
}
.nextstory-ttl dt span {
  font-size: 200%;
  font-weight: 700;
  color: #91d2dc;
  letter-spacing: 0.075em;
}
.nextstory-movie {
  margin-bottom: 6rem;
}
.nextstory-text {
  line-height: 1.666;
}

@media screen and (min-width: 768px) {
  .nextstory::before {
    background-image: url(../images/top/bg_pattern_blue_slant-pc.png);
  }
  .nextstory .sec-content {
    width: calc(880 / 1240 * 100%);
  }
  .nextstory-grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .nextstory-head {
    margin: 0 0 3rem;
    width: 100%;
  }
  .nextstory-date {
    font-size: 100%;
  }
  .nextstory-ttl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    font-size: 166%;
  }
  .nextstory-ttl dt {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    margin-right: 1em;
  }
  .nextstory-ttl dt span {
    position: relative;
    top: 0.04em;
    line-height: 0.9;
  }
  .nextstory-movie {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
    margin-bottom: 2.4rem;
  }
  .nextstory-movie a:hover {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
/* =====================================================================
    staff
======================================================================*/
.staff {
  padding: 16rem 0;
  background: url(../images/common/bg_pattern01_lightBlue.jpg) repeat top center/36rem auto;
}
.staff::before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../images/top/bg_shibuki01-sp.png) no-repeat center/100% 100%;
}
.staff .sec-ttl {
  margin-bottom: 12rem;
}
.staff-group:not(:last-child) {
  margin-bottom: 16rem;
}
.staff-subttl {
  margin-bottom: 6rem;
  font-family: "Jost", sans-serif;
  font-size: 200%;
  color: #0082aa;
  letter-spacing: 0.075em;
}
.staff-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.staff-list li {
  min-width: 50%;
  padding-left: 1.8em;
}
.staff-list li:not(:last-child) {
  margin-bottom: 2em;
}
.staff-list li dl:not(.accordion) dt {
  margin-bottom: 0.4em;
  color: #52bccc;
  line-height: 1.1;
}
.staff-list li dl:not(.accordion) dd {
  font-size: 133%;
  color: #003366;
  line-height: 1.333;
}

@media screen and (min-width: 768px) {
  .staff::before {
    background-image: url(../images/top/bg_shibuki01-pc.png);
  }
  .staff .inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .staff .sec-ttl {
    margin-bottom: 0;
  }
  .staff .sec-content {
    width: calc(880 / 1240 * 100%);
  }
  .staff-group:not(:last-child) {
    margin-bottom: 8rem;
  }
  .staff-subttl {
    margin-bottom: 4rem;
    font-size: 250%;
  }
  .staff-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-left: 6.25%;
  }
  .staff-list li {
    min-width: 33.3333333333%;
    padding: 0 1em 0 0;
  }
  .staff-list li:not(:last-child) {
    margin-bottom: 1.4em;
  }
  .staff-list li dl:not(.accordion) dt {
    font-size: 122%;
  }
  .staff-list li dl:not(.accordion) dd {
    font-size: 166%;
  }
}
/* =====================================================================
    music
======================================================================*/
.music {
  padding: 16rem 0;
  background: url(../images/common/bg_pattern01_cobaltBlue.jpg) repeat top center/36rem auto;
}
.music .sec-ttl {
  margin-bottom: 6.55rem;
}
.music-list li {
  line-height: 1.333;
}
@media screen and (max-width: 767px) {
  .music-list li:not(:last-child) {
    margin-bottom: 12rem;
  }
}
.music-subttl {
  margin-bottom: 1em;
  font-family: "Jost", sans-serif;
  font-size: 200%;
  color: #91d2dc;
  letter-spacing: 0.075em;
}
.music-desc {
  position: relative;
  padding-left: 1.8em;
  line-height: 1.333;
  border-left: 0.1em solid #91d2dc;
}
.music-desc::before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 0.25em;
  height: 100%;
  background: url(../images/common/img_scrap02_skyBlue.png) no-repeat top center/contain;
}
.music-desc dt {
  font-weight: normal;
}
.music-desc-artist {
  margin-bottom: 0.2em;
  font-size: 133%;
}
.music-desc-song {
  margin-bottom: 0.7em;
  font-size: 173%;
  color: #91d2dc;
}
.music-desc-label {
  font-size: 80%;
}
.music-btn {
  margin-top: 8rem;
}

@media screen and (min-width: 768px) {
  .music .sec-ttl {
    margin-bottom: 0;
  }
  .music .sec-content {
    width: calc(880 / 1240 * 100%);
  }
  .music-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .music-list li {
    margin-bottom: 6rem;
    width: 46.5909090909%;
  }
  .music-subttl {
    margin-bottom: 0.7em;
    font-size: 250%;
  }
  .music-desc-label {
    font-size: 88%;
  }
  .music-btn {
    margin-top: 2rem;
  }
}
/* =====================================================================
    movie
======================================================================*/
.movie {
  padding: 16rem 0 0;
}
.movie .sec-ttl {
  margin-bottom: 10rem;
}
.movie-slider-arrows {
  left: 0;
  width: 4em;
  margin: 0 auto;
}
.movie-slider-list {
  margin: 0 auto;
  width: calc(560 / 640 * 100%);
}
.movie-slider-list h3 {
  text-align: center;
  margin-top: 0.8em;
  font-size: 133%;
  line-height: 1.333;
}

@media screen and (min-width: 768px) {
  .movie .sec-ttl {
    position: absolute;
    top: 0;
    right: 0;
    margin-bottom: 0;
  }
  .movie .sec-content {
    width: 100%;
  }
  .movie-slider-list {
    margin: 0;
    width: calc(880 / 1240 * 100%);
  }
  .movie-slider-list a:hover {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  .movie-slider-list h3 {
    font-size: 166%;
  }
}
/* =====================================================================
    comics
======================================================================*/
.comics {
  padding: 16rem 0;
  overflow: hidden;
}
.comics-grid {
  position: relative;
  z-index: 2;
}
.comics-grid.comics02 {
  margin-top: 12rem;
  z-index: 1;
}
.comics-grid.comics02::before {
  content: "";
  position: absolute;
  display: block;
  bottom: -43rem;
  left: 0;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  height: 112rem;
  background: url(../images/top/bg_pattern_blue_slant-sp.png) no-repeat top center/100% auto;
  z-index: -1;
}
.comics-list {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  width: calc(460 / 640 * 100%);
}
.comics-list li {
  position: relative;
  margin: 0 4% 4% 0;
  width: 22%;
}
@media screen and (max-width: 767px) {
  .comics-list li:nth-child(4n), .comics-list li:last-child {
    margin-right: 0;
  }
}
.comics-desc {
  text-align: right;
  width: calc(460 / 640 * 100%);
  line-height: 1.333;
}
.comics-desc dt {
  font-weight: normal;
}
.comics-desc-ttl {
  margin-bottom: 0.3em;
  font-size: 200%;
}
.comics-desc-author {
  margin-bottom: 1em;
  font-size: 133%;
  color: #91d2dc;
}
.comics-desc-publisher {
  margin-bottom: 1.2em;
  font-size: 80%;
  color: #91d2dc;
}
.comics-desc-new {
  font-size: 133%;
}
.comics-author {
  position: relative;
  padding-top: 16rem;
  z-index: 1;
}
.comics-author-illust {
  margin: 0 0 6rem auto;
  width: calc(464 / 640 * 100%);
}
.comics-author-comment {
  line-height: 1.666;
}
.comics-author-comment .name {
  display: block;
  text-align: right;
}

@media screen and (min-width: 768px) {
  .comics .sec-ttl {
    position: absolute;
    top: 0;
    right: 0;
  }
  .comics .sec-content {
    width: 100%;
  }
  .comics-grid.comics02 {
    margin-top: 8rem;
  }
  .comics-grid.comics02::before {
    height: 102rem;
    background-image: url(../images/top/bg_pattern_blue_slant-pc.png);
  }
  .comics-list {
    width: calc(880 / 1240 * 100%);
  }
  .comics-list li {
    position: relative;
    margin: 0 2% 2% 0;
    width: 15%;
  }
  .comics-list li:nth-child(6n), .comics-list li:last-child {
    margin-right: 0;
  }
  .comics-desc {
    margin-bottom: 1.2%;
    width: calc(880 / 1240 * 100%);
  }
  .comics-desc-ttl {
    font-size: 250%;
  }
  .comics-desc-author {
    font-size: 166%;
  }
  .comics-desc-publisher {
    font-size: 100%;
  }
  .comics-desc-new {
    font-size: 166%;
  }
  .comics-btn {
    width: calc(880 / 1240 * 100%);
  }
  .comics-btn a {
    margin-left: auto;
  }
  .comics-author {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding-top: 8rem;
  }
  .comics-author-illust {
    margin: 0;
    width: calc(464 / 1240 * 100%);
  }
  .comics-author-comment {
    width: calc(700 / 1240 * 100%);
  }
}
/* =====================================================================
    sns
======================================================================*/
.sns {
  padding: 16rem 0;
  background: url(../images/common/bg_pattern01_lightBlue.jpg) repeat top center/36rem auto;
}
.sns::before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../images/top/bg_shibuki02-sp.png) no-repeat top center/100% auto;
}
.sns .sec-ttl {
  margin-bottom: 12rem;
}
.sns .tiktok-embed {
  margin: 0;
}
.sns-list {
  margin: 6rem 0 0 auto;
  width: calc(480 / 640 * 100%);
}
.sns-list li:not(:last-child) {
  margin-bottom: 3rem;
}
.sns-list li a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1em;
  padding-right: 1.5em;
  z-index: 1;
}
.sns-list li a::before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../images/common/bg_btn1_2.jpg) no-repeat center/cover;
  -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;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  z-index: -1;
}
.sns-list li a::after {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  bottom: 0;
  right: 0.5em;
  margin: auto;
  width: 0.6em;
  height: 0.6em;
  -webkit-mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" fill="%2332CD32" viewBox="0 0 30 30"><polygon style="stroke-width: 0px;" points="23.6 15.9 26.5 19 23.2 22.1 20.3 19 8.8 30 5.5 26.8 17.3 15.7 5.5 3 8.8 0 20.5 12.6 23.3 10 26.5 13.2 23.6 15.9"/></svg>');
          mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" fill="%2332CD32" viewBox="0 0 30 30"><polygon style="stroke-width: 0px;" points="23.6 15.9 26.5 19 23.2 22.1 20.3 19 8.8 30 5.5 26.8 17.3 15.7 5.5 3 8.8 0 20.5 12.6 23.3 10 26.5 13.2 23.6 15.9"/></svg>');
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #ffffff;
}
.sns-list li a svg {
  margin-right: 1em;
  width: 1em;
  height: 1em;
  fill: #ffffff;
}
.sns-list li a p::after {
  content: "FOLLOW";
  display: block;
  margin-top: 1em;
  font-family: "Jost", sans-serif;
  font-size: 66%;
  color: #91d2dc;
}

@media screen and (min-width: 768px) {
  .sns::before {
    background-image: url(../images/top/bg_shibuki02-pc.png);
    background-position: top right;
  }
  .sns .inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .sns .sec-ttl {
    margin-bottom: 0;
  }
  .sns .sec-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    width: calc(1070 / 1240 * 100%);
  }
  .sns-widget {
    width: 62.8971962617%;
  }
  .sns-list {
    margin: 0;
    width: 33.6448598131%;
  }
  .sns-list li:not(:last-child) {
    margin-bottom: 2rem;
  }
  .sns-list li a {
    font-size: 2.2rem;
  }
  .sns-list li a:hover {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  .sns-list li a:hover::before {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
}
/* =====================================================================
    popup-feature
======================================================================*/
@media screen and (max-width: 767px) {
  .popup-feature .popup-close {
    position: relative;
    top: 0;
    margin: 0 calc(55 / 640 * 100%) 0 auto;
  }
}
.popup-feature-tab {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  margin: 0 auto;
  width: calc(640 / 750 * 100%);
}
.popup-feature-tab li {
  text-align: center;
  margin-bottom: 1rem;
  padding: 2.5rem 0;
  width: calc(200 / 640 * 100%);
  font-size: 93%;
  color: #91d2dc;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
  background: url(../images/common/bg_pattern01_blue.jpg) repeat top center/36rem auto;
}
.popup-feature-tab li.is-active {
  color: #ffffff;
}
.popup-feature-list {
  margin-top: 1rem;
}
.popup-feature-list > li {
  display: none;
}
.popup-feature-sub {
  margin: 9rem auto 0;
  width: calc(640 / 750 * 100%);
}
.popup-feature-sub > li {
  text-align: center;
  margin-bottom: 4rem;
  padding: 3.5rem;
  font-size: 93%;
  line-height: 1.3;
  border: 1px solid currentColor;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}
.popup-feature-sub > li.is-active {
  color: #52bccc;
}

@media screen and (min-width: 768px) {
  .popup-feature .popup-close {
    top: -0.4em;
  }
  .popup-feature-tab {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: calc(100% - 7em);
  }
  .popup-feature-tab li {
    margin: 0 calc(20 / 1560 * 100%) 1rem;
    padding: 2rem 0;
    width: calc(150 / 1560 * 100%);
    min-width: 150px;
    font-size: 116%;
    cursor: pointer;
  }
  .popup-feature-tab li:hover {
    color: #ffffff;
  }
  .popup-feature-sub {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    margin-top: 4rem;
    width: 100%;
  }
  .popup-feature-sub > li {
    margin-bottom: 4rem;
    padding: 2.8rem;
    min-width: calc(480 / 1560 * 100%);
    font-size: 116%;
    cursor: pointer;
  }
  .popup-feature-sub > li:hover {
    color: #52bccc;
  }
}/*# sourceMappingURL=top.css.map */