@charset "UTF-8";
/* ==========================================================
  フォント
========================================================== */
/* ==========================================================
  EXTEND
========================================================== */
/* ===================================================================
CSS information
 file name  :topics.css
 style info :トピックスのスタイル
=================================================================== */
#topics {
  position: relative;
}
#topics #wrap .btn {
  display: inline-block;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 100px;
  color: #6d2000;
  font-weight: 700;
  background: #f0debe url(../img/shared/bg_arrow_r.svg) no-repeat right 1em center/0.5em;
  border: solid 0.2em #c8b5a7;
}
#topics #wrap .btn.btnTop {
  position: absolute;
}
@media screen and (min-width: 768px) {
  #topics #wrap .btn.btnTop {
    font-size: 0.9375rem;
    bottom: 1.25rem;
    right: 0;
  }
}
@media screen and (max-width: 767px) {
  #topics #wrap .btn.btnTop {
    font-size: 2.6vw;
    bottom: 2vw;
    right: 2vw;
  }
}
#topics #wrap .btn.btnTop:lang(ja) {
  padding: 0.4em 2em 0.5em 1em;
}
#topics #wrap .btn.btnTop:lang(en) {
  padding: 0.4em 2em 0.6em 1em;
}
@media screen and (min-width: 768px) {
  #topics #wrap .btn.btnIn {
    font-size: 1.125rem;
    width: 25rem;
    padding: 1em 1em 1.2em;
  }
}
@media screen and (max-width: 767px) {
  #topics #wrap .btn.btnIn {
    padding: 1em 3em;
    margin: 0 auto 2em;
  }
}
@media screen and (min-width: 768px) {
  :lang(en) #topics #wrap .btn.btnIn {
    width: 33.75rem;
  }
}
#topics #wrap .content {
  position: relative;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  #topics #wrap .content {
    width: min(67.5rem, 96%);
    padding-bottom: 11.25rem;
  }
}
@media screen and (max-width: 767px) {
  #topics #wrap .content {
    padding-bottom: 32vw;
  }
}
#topics #wrap .content .inner {
  color: #000;
  background-color: rgba(255, 255, 255, 0.95);
}
@media screen and (min-width: 768px) {
  #topics #wrap .content .inner {
    border-radius: 1.25rem;
    padding: 6.25rem;
  }
}
@media screen and (max-width: 767px) {
  #topics #wrap .content .inner {
    padding: 8vw 4vw;
  }
}
@media screen and (min-width: 768px) {
  #topics #wrap .content .inner .sec {
    margin-bottom: 5rem;
  }
}
#topics #wrap .content .inner .sec:last-of-type {
  margin-bottom: 0;
}
#topics #wrap .content .inner .sec.main h2 {
  color: #8c0000;
  font-weight: 900;
  margin-bottom: 1em;
}
@media screen and (min-width: 768px) {
  #topics #wrap .content .inner .sec.main h2 {
    font-size: 2.125rem;
  }
}
@media screen and (max-width: 767px) {
  #topics #wrap .content .inner .sec.main h2 {
    font-size: 5.2vw;
  }
}
#topics #wrap .content .inner .sec.main h2 span {
  line-height: 1.6;
  display: block;
  margin-bottom: 0.5rem;
}
@media screen and (min-width: 768px) {
  #topics #wrap .content .inner .sec.main h2 span {
    font-size: 1.25rem;
  }
}
@media screen and (max-width: 767px) {
  #topics #wrap .content .inner .sec.main h2 span {
    font-size: 3.4vw;
  }
}
#topics #wrap .content .inner .sec h3 {
  background: #6d2000;
  border: solid 0.125rem #6d2000;
  border-radius: 0.625rem;
  -webkit-box-shadow: 0 0.25rem 0 rgba(0, 0, 0, 0.25);
          box-shadow: 0 0.25rem 0 rgba(0, 0, 0, 0.25);
  margin-bottom: 2em;
}
#topics #wrap .content .inner .sec h3 span {
  display: block;
  color: #fff;
  font-weight: 900;
  border: solid 0.125rem #fff;
  border-radius: 0.5rem;
  text-shadow: 2px 2px 3px #5a0202, -2px 2px 3px #5a0202, 2px -2px 3px #5a0202, -2px -2px 3px #5a0202, 2px 0px 3px #5a0202, 0px 2px 1px #5a0202, -2px 0px 3px #5a0202, 0px -2px 3px #5a0202;
  padding: 0.4em 1em 0.6em;
}
@media screen and (min-width: 768px) {
  #topics #wrap .content .inner .sec h3 span {
    font-size: 1.875rem;
  }
}
@media screen and (max-width: 767px) {
  #topics #wrap .content .inner .sec h3 span {
    font-size: 4.8vw;
  }
}
#topics #wrap .content .inner .sec h3.heightS span {
  padding: 0.2em 1em 0.4em;
}
@media screen and (min-width: 768px) {
  #topics #wrap .content .inner .sec h3.heightS span {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  #topics #wrap .content .inner .sec h3.heightS span {
    font-size: 4vw;
  }
}
#topics #wrap .content .inner .sec .change p {
  text-align: center;
}
@media screen and (min-width: 768px) {
  #topics #wrap .content .inner .sec .change p {
    font-size: 1.25rem;
  }
}
@media screen and (max-width: 767px) {
  #topics #wrap .content .inner .sec .change p {
    font-size: 4.4vw;
  }
}
#topics #wrap .content .inner .sec .change p.before {
  margin-bottom: 1em;
}
#topics #wrap .content .inner .sec .change p.before:after {
  display: block;
  content: "";
  margin: 1em auto;
  background: url(../img/shared/img_arrow_down.svg) no-repeat center center/100%;
}
@media screen and (min-width: 768px) {
  #topics #wrap .content .inner .sec .change p.before:after {
    width: 4.25rem;
    height: 2.375rem;
  }
}
@media screen and (max-width: 767px) {
  #topics #wrap .content .inner .sec .change p.before:after {
    width: 12vw;
    height: 7vw;
  }
}
#topics #wrap .content .inner .sec .change p.after {
  color: #e60012;
}
#topics #wrap .content .inner .sec figure {
  margin-bottom: 1em;
}
#topics #wrap .content .inner .sec p {
  font-weight: 700;
  text-align: left;
  margin-bottom: 2em;
}
@media screen and (min-width: 768px) {
  #topics #wrap .content .inner .sec p {
    font-size: 1.125rem;
  }
}
#topics #wrap .content .inner .sec .wrapBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (min-width: 768px) {
  #topics #wrap .content .inner .sec .wrapBox {
    margin-bottom: 2em;
  }
}
@media screen and (max-width: 767px) {
  #topics #wrap .content .inner .sec .wrapBox {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
@media screen and (min-width: 768px) {
  #topics #wrap .content .inner .sec .wrapBox figure {
    width: 20%;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  #topics #wrap .content .inner .sec .wrapBox figure {
    padding: 0 30%;
  }
}
@media screen and (min-width: 768px) {
  #topics #wrap .content .inner .sec .wrapBox p {
    width: 76%;
    margin-bottom: 0;
  }
}
#topics #wrap .content .inner .sec .btnBox {
  text-align: center;
}
#topics #wrap .content .inner .sec .movie li {
  margin: 0 auto;
  width: 80%;
}
#topics #wrap .content .inner .sec .movie li a figure {
  position: relative;
}
#topics #wrap .content .inner .sec .movie li a figure img {
  width: 100%;
  border: solid 2px #7f6a44;
}
@media screen and (min-width: 1921px) {
  #topics #wrap .content .inner .sec .movie li a figure img {
    border: solid 0.2vw #7f6a44;
  }
}
#topics #wrap .content .inner .sec .movie li a figure:before {
  display: block;
  content: "";
  position: absolute;
  background: url(../img/shared/icn_play.png) no-repeat center center/100%;
  pointer-events: none;
  z-index: 2;
  width: 20%;
  top: 50%;
  left: 50%;
  height: 100%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .guestBox .cast {
    margin-bottom: 2.5rem;
  }
}
@media screen and (max-width: 767px) {
  .guestBox .cast {
    margin-bottom: 10vw;
  }
}
.guestBox .cast h4 {
  color: #8c0000;
  font-weight: 900;
  margin-bottom: 0.6em;
}
@media screen and (min-width: 768px) {
  .guestBox .cast h4 {
    font-size: 1.75rem;
  }
}
@media screen and (max-width: 767px) {
  .guestBox .cast h4 {
    font-size: 4.8vw;
  }
}
.guestBox .cast .in {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .guestBox .cast .in {
    width: 60%;
  }
}
.guestBox .cast .in dl {
  text-align: center;
  width: 48%;
}
.guestBox .cast .in dl dt {
  border: solid 0.125rem #7f6a44;
}
.guestBox .cast .in dl dd {
  font-weight: 900;
  margin-top: 0.5em;
}
@media screen and (min-width: 768px) {
  .guestBox .cast .in dl dd {
    font-size: 1.125rem;
  }
}
.guestBox .cast.cast2 figure {
  border: solid 0.125rem #7f6a44;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .guestBox .cast.cast2 figure {
    width: 80%;
  }
}

.box {
  background: #f0debe;
  border-radius: 0.5rem;
  padding-bottom: 1rem;
  margin-bottom: 2rem;
}
.box dl dt {
  color: #fff;
  font-size: 1.125rem;
  font-weight: 700;
  background: #cc3017;
  border-radius: 0.5rem 0.5rem 0 0;
  padding: 0.5rem;
  margin-bottom: 1rem;
}
.box dl dd {
  font-size: 1.125rem;
  font-weight: 700;
}
.box .txtNote {
  font-size: 0.875rem;
  font-weight: 500;
  padding: 0 1rem;
  margin-top: 1rem;
}
@media screen and (max-width: 767px) {
  .box .txtNote li {
    text-align: left;
    padding-left: 1em;
    text-indent: -1em;
  }
}

@media screen and (min-width: 768px) {
  .slideArea {
    margin-bottom: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .slideArea {
    margin-bottom: 6vw;
  }
}
.slideArea .slider-for figure {
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .slideArea .slider-for figure {
    margin-bottom: 1rem;
  }
}
.slideArea .slider-for figure img {
  outline: solid 0.0625rem #6d2000;
  outline-offset: -0.0625rem;
}
.slideArea .slider-nav {
  margin: 0.4em auto 0;
}
@media screen and (min-width: 768px) {
  .slideArea .slider-nav {
    width: min(50vw, 40rem);
  }
}
@media screen and (max-width: 767px) {
  .slideArea .slider-nav {
    width: 70%;
  }
}
.slideArea .slider-nav .slick-slide {
  cursor: pointer;
  position: relative;
}
@media screen and (min-width: 768px) {
  .slideArea .slider-nav .slick-slide {
    margin: 0 0.5rem;
  }
}
@media screen and (max-width: 767px) {
  .slideArea .slider-nav .slick-slide {
    margin: 0 1vw;
  }
}
.slideArea .slider-nav .slick-slide.slick-current img {
  outline: solid 0.1875rem #6d2000;
  outline-offset: -0.1875rem;
}
@media screen and (min-width: 768px) {
  .slideArea .slider-nav .slick-prev,
  .slideArea .slider-nav .slick-next {
    width: 21px;
    height: 41px;
  }
}
@media screen and (max-width: 767px) {
  .slideArea .slider-nav .slick-prev,
  .slideArea .slider-nav .slick-next {
    width: 5vw;
    height: 9.6vw;
  }
}
.slideArea .slider-nav .slick-prev:before,
.slideArea .slider-nav .slick-next:before {
  display: none;
}
.slideArea .slider-nav .slick-prev {
  background: url(../img/shared/icon_arrow_left.png) no-repeat 0 0/100%;
}
@media screen and (min-width: 768px) {
  .slideArea .slider-nav .slick-prev {
    left: -34px;
  }
}
@media screen and (max-width: 767px) {
  .slideArea .slider-nav .slick-prev {
    left: -7vw;
  }
}
.slideArea .slider-nav .slick-next {
  background: url(../img/shared/icon_arrow_right.png) no-repeat 0 0/100%;
}
@media screen and (min-width: 768px) {
  .slideArea .slider-nav .slick-next {
    right: -34px;
  }
}
@media screen and (max-width: 767px) {
  .slideArea .slider-nav .slick-next {
    right: -7vw;
  }
}