@charset "UTF-8";
a:hover {
  filter: brightness(0.7);
}

.skyperPc {
  width: 980px;
  display: block;
  margin: 30px auto 0;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .skyperPc {
    display: none;
  }
}

.skyperSp {
  display: none;
}

@media screen and (max-width: 768px) {
  .skyperSp {
    display: block;
    text-align: center;
    margin: 0 20px;
  }
  .skyperSp.dvd {
    margin: 0 20px 20px;
  }
}

#tokusetsu-footer .common_inner {
  box-sizing: border-box;
}

.popup {
  background: url("../img/popup_bg.png") repeat;
  background-size: 100% 100%;
  padding: 20px 30px 30px;
  position: relative;
  margin: 0 auto;
  transition: .3s;
  -webkit-transition: .3s;
  -ms-transition: .3s;
  max-width: 800px;
}

.popup__name {
  text-align: right;
  font-size: 40px;
  font-weight: bold;
}

@media (max-width: 768px) {
  .popup__name {
    font-size: 28px;
    text-align: center;
    line-height: 1;
  }
}

.popup__name__sub {
  font-size: 26px;
}

@media (max-width: 768px) {
  .popup__name__sub {
    font-size: 20px;
  }
}

.popup__contents {
  display: flex;
  align-items: center;
  font-size: 18px;
}

@media (max-width: 768px) {
  .popup__contents {
    flex-flow: column;
    padding-top: 20px;
  }
}

.popup img {
  margin-right: 30px;
  height: 100%;
  width: 45%;
}

@media screen and (max-width: 768px) {
  .popup img {
    margin: 0 auto 20px;
    display: block;
    height: 100% !important;
    width: auto;
  }
}

.popup dl {
  margin: 0;
}

.popup dl .popupSp {
  display: none;
}

.popup dl dd {
  min-height: 323px;
  /* background:url(../img/bg_flower.png) no-repeat right bottom; */
  font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "MacHiramin", "YuMincho", "HG明朝B", "HG明朝E", "MS PMincho", "MS Mincho", serif;
  font-size: 16px;
  line-height: 1.7;
  letter-spacing: 2px;
}

@media screen and (max-width: 768px) {
  .popup {
    padding: 30px 15px 50px;
    display: block;
  }
  .popup dl {
    position: relative;
    z-index: 1;
  }
  .popup dl dt {
    display: none;
  }
  .popup dl .popupSp {
    display: block;
    margin-bottom: 17px;
  }
  .popup dl dd {
    min-height: auto;
    background-size: contain;
    font-size: 13px;
    line-height: 1.4;
    letter-spacing: 1px;
  }
}

#popup_kitaoji {
  display: none;
}

@media screen and (max-width: 768px) {
  #popup_kitaoji {
    display: block;
  }
  #popup_kitaoji dl dt {
    padding: 7px 0 3px;
  }
}

.inlineblock {
  display: inline-block;
}

.wrapper {
  width: 100%;
  font-family: "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "MacHiramin", "HG明朝B", "HG明朝E", "MS PMincho", "MS Mincho", serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 16px;
  font-weight: 400;
  /* text-align: justify; */
  text-justify: inter-ideograph;
  line-height: 1.7;
  letter-spacing: 1.5px;
  margin-top: 107px;
  background-color: black;
}

@font-face {
  .wrapper {
    font-family: "YuMincho";
    font-weight: normal;
    src: local("Yu Mincho");
  }
}

@font-face {
  .wrapper {
    font-family: "WindowsYuGothic";
    font-weight: normal;
    src: local("YuGothic-Medium"), local("Yu Gothic Medium"), local("Yu Gothic"), local("YuGothic-Regular");
  }
}

@font-face {
  .wrapper {
    font-family: "WindowsYuGothicM";
    font-weight: bold;
    src: local("YuGothic-Bold"), local("Yu Gothic");
  }
}

@font-face {
  .wrapper {
    font-family: "MacHiramin";
    font-weight: normal;
    src: local("HiraMinProN-W3");
  }
}

@font-face {
  .wrapper {
    font-family: "MacHiramin";
    font-weight: bold;
    src: local("HiraMinProN-W6");
  }
}

@font-face {
  .wrapper {
    font-family: "MacHirakaku";
    font-weight: normal;
    src: local("HiraKakuProN-W3");
  }
}

@font-face {
  .wrapper {
    font-family: "MacHirakaku";
    font-weight: bold;
    src: local("HiraKakuProN-W6");
  }
}

@media screen and (max-width: 768px) {
  .wrapper {
    font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 13px;
    font-weight: normal;
    line-height: 1.6;
    margin-top: 64px;
  }
  .wrapper * {
    box-sizing: border-box;
  }
}

.wrapper .mainArea {
  padding: 0;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .wrapper .mainArea {
    border-bottom: none;
    max-height: none;
  }
}

.wrapper .mainArea .mainContentsArea {
  margin: 0 auto;
}

.wrapper .mainContents img {
  height: auto;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents img {
    margin: 0 auto;
    display: block;
  }
  .wrapper .mainContents .summaryArea h5 img {
    width: 25%;
  }
  .wrapper .mainContents .castArea h5 img {
    width: 25%;
  }
  .wrapper .mainContents .staffArea h5 img {
    width: 25%;
  }
  .wrapper .mainContents .fujisawaArea h5 img {
    width: 15%;
  }
  .wrapper .mainContents .fujisawaArea h5 img.ttl_fujisawabook {
    width: 20%;
  }
}

.wrapper .mainArea .movie {
  position: absolute;
  left: 50%;
  bottom: 35px;
  margin-left: 140px;
}

.wrapper .mainArea .movie a {
  width: 225px;
  height: 127px;
  background: url(../img/movie_thumb.jpg) no-repeat center top;
  background-size: contain;
  display: block;
}

@media screen and (max-width: 768px) {
  .wrapper .mainArea .movie {
    width: 86%;
    background-size: contain;
    position: static;
    margin: 25px auto 0;
  }
  .wrapper .mainArea .movie a {
    width: 100%;
    height: 0;
    padding-bottom: 56.63%;
  }
}

.wrapper .mainContents .navArea {
  font-size: 0;
  text-align: center;
  padding: 27px 0 60px;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .navArea {
    display: flex;
    justify-content: left;
    flex-wrap: wrap;
    padding: 0 0 20px;
  }
}

.wrapper .mainContents .navArea li {
  border-right: 1px solid #876d56;
  display: inline-block;
  width: 155px;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .navArea li {
    width: 50%;
    margin-bottom: 5px;
  }
  .wrapper .mainContents .navArea li:nth-child(2n) {
    border: none;
  }
}

.wrapper .mainContents .navArea li a {
  display: inline-block;
  width: 100%;
}

.wrapper .mainContents .navArea li a img {
  display: inline-block;
  padding: 15px 0;
}

.wrapper .mainContents .navArea li.nav01 {
  border-left: 1px solid #876d56;
  width: 184px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .navArea li.nav01 {
    border-left: none;
    width: 50%;
  }
}

.wrapper .mainContents .navAreaSp {
  display: none;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .navAreaSp {
    display: block;
    font-size: 0;
    text-align: center;
    padding: 20px 0 10px;
  }
  .wrapper .mainContents .navAreaSp li {
    background: url(../img/anc_nav01_sp_off.png) no-repeat center;
    background-size: cover;
    border-right: 1px solid #cba56b;
    display: inline-block;
    margin-bottom: 8px;
    vertical-align: top;
    width: 44%;
  }
  .wrapper .mainContents .navAreaSp li:hover {
    background-image: url(../img/anc_nav01_sp_off.png);
  }
  .wrapper .mainContents .navAreaSp li a {
    height: 0;
    display: block;
  }
  .wrapper .mainContents .navAreaSp li.nav01 {
    width: 48%;
  }
  .wrapper .mainContents .navAreaSp li.nav01 a {
    padding-top: 22.34%;
  }
  .wrapper .mainContents .navAreaSp li.nav02 {
    width: 48%;
    background-image: url(../img/anc_nav02_sp_off.png);
    border-right: none;
  }
  .wrapper .mainContents .navAreaSp li.nav02 a {
    padding-top: 22.34%;
  }
  .wrapper .mainContents .navAreaSp li.nav02:hover {
    background-image: url(../img/anc_nav02_sp_off.png);
  }
  .wrapper .mainContents .navAreaSp li.nav03 {
    background-image: url(../img/anc_nav03_sp_off.png);
  }
  .wrapper .mainContents .navAreaSp li.nav03 a {
    padding-top: 28.01%;
  }
  .wrapper .mainContents .navAreaSp li.nav03:hover {
    background-image: url(../img/anc_nav03_sp_off.png);
  }
  .wrapper .mainContents .navAreaSp li.nav04 {
    background-image: url(../img/anc_nav04_sp_off.png);
    border-right: none;
  }
  .wrapper .mainContents .navAreaSp li.nav04 a {
    padding-top: 28.01%;
  }
  .wrapper .mainContents .navAreaSp li.nav04:hover {
    background-image: url(../img/anc_nav04_sp_off.png);
  }
  .wrapper .mainContents .navAreaSp li.nav05 {
    background-image: url(../img/anc_nav05_sp_off.png);
  }
  .wrapper .mainContents .navAreaSp li.nav05 a {
    padding-top: 28.01%;
  }
  .wrapper .mainContents .navAreaSp li.nav5:hover {
    background-image: url(../img/anc_nav05_sp_off.png);
  }
  .wrapper .mainContents .navAreaSp li.nav06 {
    background-image: url(../img/anc_nav06_sp_off.png);
    border-right: none;
  }
  .wrapper .mainContents .navAreaSp li.nav06 a {
    padding-top: 28.01%;
  }
  .wrapper .mainContents .navAreaSp li.nav06:hover {
    background-image: url(../img/anc_nav06_sp_off.png);
  }
}

.wrapper .mainContents .bnr_4k {
  text-align: center;
  padding: 0 20px 10px;
  margin-bottom: 10px;
}

.wrapper .mainContents .bnr_4k img.pc {
  width: 900px;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .bnr_4k {
    padding: 0 20px 20px;
  }
}

.wrapper .mainContents .bnr_4k a {
  display: inline-block;
}

.wrapper .mainContents .bnr_4k small {
  font-size: 12px;
  display: block;
  width: 100%;
  text-align: center;
  margin-top: 10px;
  line-height: 1.5em;
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ＭＳ ゴシック", "MS Gothic", "HiraKakuProN-W3", sans-serif;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .bnr_4k small {
    text-align: left;
  }
}

.wrapper .mainContents .contents {
  max-width: 980px;
  padding: 120px 0 0;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.wrapper .mainContents .staffArea .contents {
  position: relative;
  padding: 80px 0 0;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .staffArea::before {
    top: -100px;
    width: 40%;
  }
}

.wrapper .mainContents .summaryArea::before {
  position: absolute;
  display: block;
  content: "";
  width: 488px;
  height: 624px;
  background: url(../img/inaho2.png) no-repeat right top;
  background-size: contain;
  right: 0;
  top: -210px;
}

.wrapper .mainContents .contents#introduction {
  padding: 120px 0 0;
  margin-top: -60px;
}

.wrapper .mainContents .contents h5 {
  text-align: center;
  margin-bottom: 50px;
  position: relative;
}

.wrapper .mainContents .contents .ttlSp {
  display: none;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .contents {
    width: 100%;
    padding: 70px 0 0;
  }
  .wrapper .mainContents .contents h5 {
    display: none;
    position: relative;
    margin: 0;
    z-index: 1;
  }
  .wrapper .mainContents .contents .ttlSp {
    display: block;
    padding: 0 20px 30px;
  }
  .wrapper .mainContents .contents#introduction {
    padding: 100px 0 0;
    margin-top: -60px;
  }
}

.wrapper .mainContents .introductionArea {
  width: 100%;
  background: url(../img/bg_intro.png) no-repeat center top;
  margin: 0 auto;
  position: relative;
  background-position-y: -100px;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .introductionArea {
    background: url(../img/bg_intro_sp.png) no-repeat center top;
    background-position-y: -13vw;
    background-size: cover;
  }
}

.detailIntroduction {
  display: flex;
  padding-bottom: 44px;
  letter-spacing: initial;
}

@media screen and (max-width: 768px) {
  .detailIntroduction {
    padding-bottom: 0;
  }
}

.detailIntroduction > div:first-child {
  flex-shrink: 0;
}

.detailIntroduction > div:last-child {
  /* max-width: 489px; */
  line-height: 1.6;
}

.detailIntroduction-margin-top {
  margin-top: 30px;
}

.detailIntroduction-img {
  display: block;
  height: auto;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .introductionArea .detailIntroduction {
    display: block;
  }
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .introductionArea .detailIntroduction img {
    max-width: 100%;
    margin: 0 auto;
    display: block;
    height: auto;
  }
}

.wrapper .mainContents .introductionArea .detailIntroduction p {
  margin-left: 34px;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .introductionArea .detailIntroduction p {
    margin: 20px 0 0;
    padding: 0 20px;
  }
  .detailIntroduction2 {
    margin: 20px 0 0;
    padding: 0 20px;
  }
}

.wrapper .mainContents .summaryArea {
  background: url(../img/bg_story.png);
  background-size: auto, auto;
  background-repeat: no-repeat, no-repeat;
  background-position: center 50px;
  position: relative;
}

@media screen and (max-width: 1590px) {
  .wrapper .mainContents .summaryArea {
    background: url(../img/bg_story.png);
    background-size: auto;
    background-repeat: no-repeat, no-repeat;
    background-position: center top;
  }
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .summaryArea {
    background: url(../img/bg_story_sp.png);
    background-size: 100%, 100%;
    background-repeat: no-repeat, no-repeat;
    background-position: center top;
    padding-bottom: 150px;
    padding-top: 95px;
    margin-top: 20px;
  }
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .summaryArea::before {
    width: 40%;
    top: -120px;
  }
}

.wrapper .mainContents .summaryArea .contents {
  box-sizing: border-box;
  padding: 280px 10px 10px;
}

.summaryArea .detailSummary01,
.wrapper .mainContents .summaryArea .detailSummary02 {
  display: flex;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .summaryArea .detailSummary01,
  .wrapper .mainContents .summaryArea .detailSummary02 {
    display: block;
  }
  .wrapper .mainContents .summaryArea .detailSummary01 img,
  .wrapper .mainContents .summaryArea .detailSummary02 img {
    display: block;
    max-width: 100%;
    margin: 0 auto;
  }
}

.wrapper .mainContents .summaryArea .detailSummary01,
.wrapper .mainContents .summaryArea .detailSummary02 {
  display: flex;
  margin-bottom: 30px;
  max-width: 980px;
  align-items: center;
}

.detailSummary02 .bg_green {
  background: rgba(177, 212, 155, 0.5);
}

.wrapper .mainContents .summaryArea .detailSummary01 > div:first-child {
  max-width: 480px;
  margin-right: 60px;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .summaryArea .detailSummary01 > div:first-child {
    max-width: initial;
    margin-right: 0;
  }
}

.wrapper .mainContents .summaryArea .detailSummary01 > div:last-child {
  flex-shrink: 0;
}

.wrapper .mainContents .summaryArea .detailSummary02 > div:first-child {
  flex-shrink: 0;
}

.wrapper .mainContents .summaryArea .detailSummary02 .detailSummary__text {
  margin-left: 40px;
  padding: 15px 50px 15px 30px;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .summaryArea .detailSummary02 .detailSummary__text {
    margin-left: 0px;
    padding: 15px 30px;
  }
}

.wrapper .mainContents .summaryArea .detailSummary03 {
  text-align: center;
  padding: 20px 0 215px;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .summaryArea .detailSummary03 {
    text-indent: 1em;
  }
}

.wrapper .mainContents .summaryArea .detailSummary03 .bold {
  font-weight: bold;
  font-size: 26px;
  margin-top: 40px;
  display: block;
}

@media screen and (max-width: 768px) {
  /*  .wrapper .mainContents .summaryArea {
    background-size:200%;
	  padding-top:70px;
  }*/
  .wrapper .mainContents .summaryArea::after {
    width: 100%;
    height: 352px;
    background-size: contain;
    content: '';
    display: block;
    position: absolute;
    top: -30px;
    z-index: 0;
  }
  .wrapper .mainContents .summaryArea .contents {
    padding: 0;
  }
  .wrapper .mainContents .summaryArea .detailSummary01 {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column-reverse;
    margin-bottom: 10px;
  }
  .wrapper .mainContents .summaryArea .detailSummary02 {
    display: block;
    margin-bottom: 10px;
  }
  .wrapper .mainContents .summaryArea .detailSummary03 {
    padding: 0;
    text-align: center;
  }
  .wrapper .mainContents .summaryArea .detailSummary03 img {
    width: 75%;
  }
  .wrapper .mainContents .summaryArea .detailSummary03 p {
    padding: 0 20px 0;
    text-align: left;
  }
  .wrapper .mainContents .summaryArea .detailSummary03 .bold {
    font-weight: bold;
    font-size: 18px;
    margin-top: 10px;
  }
}

.wrapper .mainContents .castArea {
  background-repeat: no-repeat;
  background-size: auto;
  background-position: center top;
  position: relative;
  padding-bottom: 120px;
  margin-top: -60px;
}

.wrapper .mainContents .castStaffArea {
  background: url(../img/bg_cast_staff.png);
  background-repeat: no-repeat;
  background-size: auto;
  background-position: center top;
  position: relative;
}

.wrapper .mainContents .castArea::before {
  position: absolute;
  display: block;
  content: "";
  width: 488px;
  height: 624px;
  background: url(../img/inaho.png) no-repeat left top;
  background-size: contain;
  left: 0;
  top: -400px;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .castArea::before {
    width: 40%;
    top: -120px;
  }
  .wrapper .mainContents .castStaffArea {
    background: none;
    background-size: cover;
  }
  .wrapper .mainContents .castArea {
    margin-top: -100px;
  }
}

.wrapper .mainContents .castArea .contents {
  box-sizing: border-box;
  padding: 165px 10px 0;
}

.wrapper .mainContents .castArea h5 {
  margin-bottom: 70px;
}

.wrapper .mainContents .castArea .mainCast {
  font-size: 0;
  display: flex;
  margin-bottom: 90px;
}

.wrapper .mainContents .castArea .mainCast p {
  display: inline-block;
  margin-right: 30px;
  vertical-align: top;
}

.wrapper .mainContents .castArea .mainCast .popup_kitaoji {
  display: none;
}

.wrapper .mainContents .castArea .mainCast dl {
  width: 446px;
  font-size: 16px;
  display: inline-block;
  letter-spacing: 0;
  vertical-align: top;
}

.wrapper .mainContents .castArea .mainCast dl dt {
  margin-bottom: 23px;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .castArea .mainCast dl {
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .castArea {
    background-size: cover;
    padding-top: 100px;
    background: url(../img/bg_cast_sp.png);
    background-size: contain;
    background-repeat: no-repeat;
    padding-bottom: 60px;
  }
  .wrapper .mainContents .castArea::after {
    width: 100%;
    height: 297px;
    /* background:url(../img/bg_contents02_sp.png) no-repeat center top;*/
    background-size: contain;
    content: '';
    display: block;
    position: absolute;
    top: -25px;
    z-index: 0;
  }
  .wrapper .mainContents .castArea .contents {
    padding: 0 10px 10px;
  }
  .wrapper .mainContents .castArea .ttlSp {
    margin-bottom: 0;
  }
  .wrapper .mainContents .castArea .mainCast {
    display: none;
  }
}

.wrapper .mainContents .castArea .subCast {
  margin: 28px 0 0;
}

.wrapper .mainContents .castArea .subCast ul {
  font-size: 0;
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  justify-content: center;
  gap: 10px;
}

.wrapper .mainContents .castArea .subCast ul li {
  width: calc((100% / 4) - 10px);
  margin-bottom: 20px;
  transition: all .3s;
  -webkit-transition: all .3s;
  -ms-transition: all .3s;
}

.wrapper .mainContents .castArea .subCast ul li:nth-child(3n) {
  margin-right: 0;
}

.wrapper .mainContents .castArea .subCast ul li a {
  display: block;
  text-align: center;
}

.wrapper .mainContents .castArea .subCast ul li a img:first-child {
  margin-bottom: 10px;
}

.wrapper .mainContents .castArea .subCast ul li.adjust {
  margin-left: 120px;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .castArea .subCast {
    display: none;
  }
}

.wrapper .mainContents .castArea .subCastSp {
  display: none;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .castArea .subCastSp {
    display: block;
    position: relative;
    z-index: 1;
  }
  .wrapper .mainContents .castArea .subCastSp ul {
    max-width: 601px;
    margin: 0 auto;
  }
  .wrapper .mainContents .castArea .subCastSp ul li {
    width: 50%;
    /* border-bottom:1px solid #fff; */
    float: left;
    box-sizing: border-box;
  }
  .wrapper .mainContents .castArea .subCastSp ul li.adjust {
    clear: both;
    float: none;
    margin: 0 auto;
  }
  .wrapper .mainContents .castArea .subCastSp ul li a {
    display: block;
  }
  .wrapper .mainContents .castArea .subCastSp ul li.kitaoji {
    width: 100%;
  }
}

.wrapper .mainContents .staffArea {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  position: relative;
  margin-top: -65px;
  background-repeat: no-repeat;
  background-size: auto;
  background-position: center top;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .staffArea {
    margin-bottom: 50px;
    background: url(../img/bg_staff_sp.png) right;
    background-repeat: no-repeat;
    padding-top: 60px;
    margin-top: -100px;
    background-size: contain;
  }
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .staffArea .contents {
    padding-top: 120px;
  }
}

.wrapper .mainContents .staffArea h5 {
  margin-bottom: 83px;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .staffArea h5 {
    margin-bottom: 0;
  }
}

.wrapper .mainContents .staffArea ul {
  font-size: 0;
  letter-spacing: -1px;
  margin-bottom: 50px;
  display: flex;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .staffArea ul {
    margin-bottom: 0;
    display: block;
  }
}

.wrapper .mainContents .staffArea ul li {
  width: 270px;
  font-size: 13px;
  font-weight: normal;
  display: inline-block;
  margin-right: 88px;
  line-height: 1.9;
  letter-spacing: normal;
  vertical-align: top;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .staffArea ul li {
    width: 100%;
    font-size: 11px;
    line-height: 1.9;
    letter-spacing: 1px;
    margin-right: 0;
    margin-bottom: 30px;
    padding: 0 20px;
  }
  .wrapper .mainContents .staffArea ul {
    padding-top: 0;
  }
}

.wrapper .mainContents .staffArea ul li.music {
  margin-right: 0;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .staffArea ul li.music {
    padding: 0 20px;
    margin-bottom: 30px;
  }
}

.wrapper .mainContents .staff_name {
  padding-bottom: 14px;
  margin-bottom: 20px;
  border-bottom: 1px solid #876d56;
  display: block;
  text-align: center;
}

.wrapper .mainContents .staffArea .producer {
  display: flex;
  z-index: 1;
  position: relative;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .staffArea .producer {
    display: block;
  }
}

.wrapper .mainContents .staffArea .producer img {
  height: 100%;
  display: block;
  margin: 0 auto;
}

.wrapper .mainContents .staffArea .producer p {
  width: 508px;
  font-size: 13px;
  font-weight: normal;
  line-height: 1.9;
  margin-right: 92px;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .staffArea .producer p {
    width: 100%;
    padding: 0 20px;
    margin: 0 0 20px 0;
  }
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .staffArea .director {
    margin-bottom: 30px;
  }
  .wrapper .mainContents .staffArea .director p {
    width: 100%;
    background: url(../img/ttl_yamashita_sp.png) no-repeat center top;
    background-size: contain;
    font-size: 11px;
    padding-top: 40px;
    margin-top: 0;
    letter-spacing: 1px;
  }
  .wrapper .mainContents .staffArea .director {
    height: auto;
  }
}

.wrapper .mainContents .fujisawaArea {
  background: url(../img/bg_originaru.png) no-repeat center top;
  position: relative;
  padding-bottom: 40px;
  margin-top: -50px;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .fujisawaArea {
    background-size: cover;
    padding-bottom: 120px;
    padding-top: 60px;
  }
}

.wrapper .mainContents .fujisawaArea .fujisawaContents .contents {
  padding-top: 215px;
  margin: 100px auto 0px;
  padding-bottom: 160px;
}

.wrapper .mainContents .fujisawaArea::before {
  position: absolute;
  display: block;
  content: "";
  width: 490px;
  height: 655px;
  background: url(../img/inaho2.png) no-repeat right top;
  background-size: contain;
  right: 0px;
  top: -340px;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .fujisawaArea::before {
    width: 40%;
    top: 0px;
  }
  .wrapper .mainContents .fujisawaArea::after {
    position: absolute;
    display: block;
    content: "";
    width: 40%;
    height: 30vw;
    background: url(../img/ichou.png) no-repeat left top;
    background-size: contain;
    top: 180px;
    left: -5px;
    transform: translateY(-50%) translateX(0%);
  }
}

.wrapper .mainContents .fujisawaArea .fujisawaContents .contents h5 {
  margin-bottom: 65px;
}

.wrapper .mainContents .fujisawaArea .fujisawaContents .contents .txtFujisawa {
  display: flex;
  justify-content: flex-end;
  flex-direction: row-reverse;
  box-sizing: border-box;
  font-size: 15px;
  line-height: 1.7;
  margin: 0 auto 75px;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .fujisawaArea .fujisawaContents .contents .txtFujisawa {
    display: block;
    margin: 0 auto 40px;
  }
}

.wrapper .mainContents .fujisawaArea .fujisawaContents .contents .txtFujisawa img {
  margin-left: 62px;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .fujisawaArea .fujisawaContents .contents .txtFujisawa img {
    margin: 0 auto 20px;
    display: block;
    max-width: 100%;
  }
  .wrapper .mainContents .fujisawaArea .fujisawaContents .contents .txtFujisawa span {
    display: block;
    padding: 0 20px;
  }
}

.wrapper .mainContents .fujisawaArea .fujisawaContents .contents .txtFujisawa .fujisawa_name {
  margin: 0;
  padding-bottom: 25px;
  display: block;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .fujisawaArea .fujisawaContents .contents .txtFujisawa .fujisawa_name {
    margin: 0 auto;
  }
}

.detailFujisawa {
  font-size: 14px;
  text-align: center;
  display: flex;
  justify-content: space-between;
  max-width: 980px;
  gap: 80px;
}

@media screen and (max-width: 768px) {
  .detailFujisawa {
    display: block;
    padding: 20px 20px 0;
  }
}

.detailFujisawa li {
  display: flex;
  width: 50%;
}

.detailFujisawa li div {
  width: 47%;
}

.detailFujisawa li .text {
  width: 53%;
}

.detailFujisawa li img {
  margin-top: 20px;
  margin-left: 20px;
}

@media screen and (max-width: 768px) {
  .detailFujisawa li {
    max-width: initial;
  }
}

.txtOriginal p {
  text-align: left;
  font-size: 14px;
}

.txtOriginal p.title {
  font-weight: bold;
  font-size: 20px;
  margin: 20px 0;
}

@media screen and (max-width: 768px) {
  .txtOriginal p.title {
    font-size: 18px;
    margin: 0;
  }
}

.txtOriginal p.title span {
  display: block;
  font-size: 12px;
  margin-top: -5px;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .fujisawaArea .fujisawaContents .contents {
    padding: 20% 0 10px;
    margin: 75px auto 0px;
  }
  .wrapper .mainContents .fujisawaArea .fujisawaContents .contents h5 {
    padding: 0;
    margin-bottom: 20px;
  }
  .wrapper .mainContents .fujisawaArea .fujisawaContents .contents .detailFujisawa {
    padding-bottom: 0;
  }
  .detailFujisawa li {
    height: auto;
    display: flex;
    flex-shrink: 0;
    flex-direction: column-reverse;
    align-items: center;
    width: 100%;
  }
  .detailFujisawa li:last-child {
    padding-top: 40px;
  }
  .detailFujisawa li > div:first-child {
    padding-top: 20px;
    flex-shrink: 0;
    width: 100%;
  }
  .detailFujisawa li > div:last-child {
    width: 60%;
    padding-right: 10px;
  }
  .detailFujisawa img {
    display: block;
    width: auto;
  }
}

.wrapper .mainContents .fujisawaArea .commentArea {
  /* background:url(../img/bg_contents06.png) no-repeat center 30px;*/
  padding-top: 100px;
}

.wrapper .mainContents .fujisawaArea .commentArea .detailComment {
  width: 480px;
  margin: 0 auto;
}

.wrapper .mainContents .fujisawaArea .commentArea .detailComment h5 {
  text-align: center;
}

.wrapper .mainContents .fujisawaArea .commentArea .detailComment .ttlSp {
  display: none;
}

.wrapper .mainContents .fujisawaArea .commentArea .detailComment .commentName {
  width: 470px;
  border-bottom: 1px solid #a96768;
  text-align: center;
  padding: 50px 0 33px;
  margin: 0 auto 27px;
}

.wrapper .mainContents .fujisawaArea .commentArea .detailComment .commentNameSp {
  display: none;
}

.wrapper .mainContents .fujisawaArea .commentArea .detailComment .commentIntro {
  font-size: 13px;
  text-align: center;
  padding: 35px 0 70px;
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents .fujisawaArea .commentArea {
    /*background:url(../img/bg_contents06_sp.png) no-repeat center 20px;*/
    background-size: contain;
    padding-top: 41px;
  }
  .wrapper .mainContents .fujisawaArea .commentArea .detailComment {
    width: 100%;
    padding: 0 10px;
  }
  .wrapper .mainContents .fujisawaArea .commentArea .detailComment h5 {
    display: none;
  }
  .wrapper .mainContents .fujisawaArea .commentArea .detailComment .ttlSp {
    display: block;
  }
  .wrapper .mainContents .fujisawaArea .commentArea .detailComment .commentName {
    display: none;
  }
  .wrapper .mainContents .fujisawaArea .commentArea .detailComment .commentNameSp {
    display: block;
    margin: 41px 0 7px;
  }
  .wrapper .mainContents .fujisawaArea .commentArea .detailComment .commentIntro {
    font-size: 12px;
    line-height: 1.5;
    padding: 30px 0;
  }
}


.italic {
  font-style: italic;
}


/* Sns
------------------------------------------------------------- */
.sns_area {
  margin: 0 auto 0 auto;
  color: #000;
  padding-top: 20px;
  padding-bottom: 10px;
  color: white;
}

@media screen and (max-width: 768px) {
  .sns_area {
    padding-top: 40px;
    padding-bottom: 0;
  }
}

.sns_area .area_inner {
  position: relative;
  margin: 0 auto;
  max-width: 980px;
  padding-bottom: 40px;
}

.sns_area .sns_title {
  text-align: center;
  font-size: 22px;
  font-weight: bold;
}

.sns_area .btnList {
  overflow: hidden;
  font-size: 0;
  text-align: center;
}

.sns_area .btnList > li {
  display: inline-block;
  width: 78px;
  height: 78px;
  margin: 2% 35px 0;
  font-size: 14px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .sns_area .btnList > li {
    display: inline-block;
    margin: 0 5px;
    max-width: 78;
    width: 50px;
    height: 50px;
  }
}

.sns_area .btnList > li:first-child {
  margin-top: 0;
}

.sns_area .btnList > li a {
  overflow: hidden;
  display: block;
  width: 100%;
  height: 0;
  background: 0 0 no-repeat;
  background-size: 100% auto;
  text-indent: -9999px;
  padding-top: 100%;
  border-radius: 50%;
}

.sns_area .btnList > li a:hover {
  filter: alpha(opacity=70);
  -moz-opacity: 0.7;
  opacity: 0.7;
  transition: 0.2s;
}

.credit {
  text-align: center;
  color: #000;
  padding-bottom: 20px;
  font-size: 10px;
}

.copyright {
  text-align: center;
  background-color: #000;
  padding: 15px;
  color: white;
  font-size: 10px;
}

.popup dl dt {
  font-size: 20px;
  color: #886d56;
  margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
  .popup dl dt {
    margin-bottom: 20px;
  }
}

.popup dl dt span.name {
  line-height: 1em;
  display: inline-block;
  width: 100%;
  font-size: 38px;
  font-weight: bold;
  padding: 0 0 12px;
  color: #000;
  border-bottom: 1px solid #886d56;
}

@media screen and (max-width: 768px) {
  .popup dl dt {
    display: block;
  }
  .popup dl dt {
    font-size: 16px;
    text-align: center;
  }
  .popup dl dt span.name {
    font-size: 24px;
  }
}

/* youtube   */
.movie {
  text-align: center;
  padding-bottom: 80px;
  background: url(../img/bg_sub2.jpg) repeat left top;
}

.movie h5 {
  padding-top: 20px;
  margin-bottom: 65px;
  display: block;
}

@media screen and (max-width: 768px) {
  .movie h5 {
    padding-top: 10px;
    margin-bottom: 20px;
  }
  .movie {
    margin-bottom: 0;
    padding-bottom: 40px;
  }
}

.youtube_area {
  display: flex;
  width: 100%;
  max-width: 1200px;
  margin: auto;
}

.youtube_area .youtube p {
  font-weight: bold;
  margin-top: 10px;
  font-size: 18px;
}

.youtube_area.single {
  margin-top: 30px;
}

.youtube_area.single .youtube {
  margin-left: 20px;
}

@media screen and (max-width: 768px) {
  .youtube_area {
    display: block;
    width: 100%;
    max-width: initial;
    margin: auto;
  }
  .youtube_area div:first-child {
    margin-bottom: 20px;
  }
  .youtube_area.single {
    margin-top: 20px;
  }
  .youtube_area.single .youtube {
    margin-left: 0;
  }
}

.youtube {
  width: 100%;
  max-width: 560px;
  margin: auto;
}

.youtube2 {
  position: relative;
  width: 100%;
  height: auto;
  padding-top: 56.25%;
}

.youtube2 iframe {
  position: absolute;
  top: 0 !important;
  right: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

.bunko_main .banner a {
  margin-top: 60px;
}

.youtubeTitle {
  font-size: 1.6em;
  font-weight: bold;
  padding-bottom: 20px;
  /* text-shadow: 2px 1px 4px rgba(0, 0, 0, 0.15);*/
  position: relative;
}

.partners_area {
  text-align: center;
  font-size: 14px;
  padding: 0 20px 60px;
  color: white;
}

@media screen and (max-width: 768px) {
  .partners_area {
    padding: 0 20px 30px;
  }
}

.partners {
  text-align: center;
  font-size: 14px;
}

.partners_area .production {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 10px;
  max-width: 1200px;
}

@media screen and (max-width: 768px) {
  .partners_area .production {
    display: block;
    text-align: center;
  }
}

.partners_area .logo_jidai {
  padding: 0 10px 20px;
  display: block;
}

@media screen and (max-width: 768px) {
  .partners_area .logo_jidai {
    padding: 0 0 10px;
  }
}

.partners_area .logo_jcom {
  padding: 0 10px;
}

@media screen and (max-width: 768px) {
  .partners_area .logo_jcom {
    padding: 10px 0;
    display: block;
    max-width: 100%;
    margin: 0 auto;
  }
}

@media screen and (max-width: 768px) {
  .partners {
    text-align: center;
    font-size: 14px;
  }
}

.partners_credit {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  /*
  font-family: "游ゴシック", "游ゴシック体", YuGothicMedium, YuGothic, "Yu Gothic", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ ゴシック", "MS Gothic", "HiraKakuProN-W3", "TakaoExゴシック", TakaoExGothic, "MotoyaLCedar", "Droid Sans Japanese", sans-serif;
  */
  font-size: 10px;
  /*  margin-top: 50px;*/
  margin-top: 15px;
}

/*ポップアップ*/
.popupsp {
  display: none;
}

#cboxOverlay {
  background: #000;
  opacity: 0.8 !important;
}

#cboxLoadedContent,
#cboxContent {
  margin-top: 0;
  background: none;
}

#cboxContent {
  padding: 0 74px;
}
@media screen and (max-width: 768px) {
  #cboxContent {
    padding: 32px 37px;
  }
}

#colorbox #cboxClose {
  background: url(../img/close.svg) no-repeat 0px 0px;
  background-size: contain;
  width: 50px;
  height: 50px;
  right: 0;
}

@media screen and (max-width: 768px) {
  #colorbox #cboxClose {
    width: 25px;
    height: 25px;
  }
  /* colorboxの横幅  */
  #colorbox #cboxClose{
    top: 7px !important;
  }
  #cboxContent{
    padding: 40px 0;
  }
}

#cboxClose:hover,
#cboxPrevious:hover,
#cboxNext:hover {
  background-position: center;
  opacity: 0.7;
}

#cboxPrevious,
#cboxNext {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 50px;
  height: 50px;
}


#cboxPrevious {
  background-image: url(../img/arrow-left.svg);
  left: 0;
}

#cboxNext {
  background-image: url(../img/arrow-right.svg);
  right: 0;
  left: auto;
}

@media screen and (max-width: 768px) {
  #cboxPrevious,
  #cboxNext {
    width: 25px;
    height: 25px;
  }
  #cboxNext{
    right: 0;
    transform: translateX(100%);
  }
  #cboxPrevious{
    left: 0;
    transform: translateX(-100%);
  }
}

#cboxWrapper {
  font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "MacHiramin", "YuMincho", "HG明朝B", "HG明朝E", "MS PMincho", "MS Mincho", serif;
}

.skyper-area {
  margin: 0 auto 40px;
  text-align: center;
}

.skyper-area:last-child {
  margin-bottom: 0px;
}

@media screen and (max-width: 768px) {
  .skyper-area {
    padding: 0 20px;
  }
}

.hatashiai {
  margin-top: 50px;
  font-size: 18px;
}

@media screen and (max-width: 768px) {
  .hatashiai {
    margin-top: 30px;
    font-size: 16px;
  }
}

.hatashiai a {
  color: #000;
  text-decoration: underline;
}

/* modalmovie */
.modalmovie_overlay {
  width: 100vw;
  height: 100vh;
  background: #000;
  position: fixed;
  top: 0;
  left: 0;
  opacity: 0.8;
  z-index: 10000;
}

.modalmovie_inner {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
}

.modalmovie_inner .iframe_wrap {
  width: 70%;
  padding-top: 39.375%;
  position: relative;
}

@media screen and (max-width: 768px) {
  .modalmovie_inner .iframe_wrap {
    width: 90%;
    padding-top: 50.625%;
  }
}

.modalmovie_inner iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 100;
}

.modalmovie_inner .iframe_wrap::after {
  width: 48px;
  height: 48px;
  background: url(../img/btn_close.svg);
  content: "";
  display: block;
  right: 0px;
  top: -48px;
  position: absolute;
  transition: all 0.3s;
  cursor: pointer;
}

.modalmovie_inner .iframe_wrap:hover::after {
  opacity: 0.7;
  transition: all 0.3s;
}

.modalmovie {
  display: none;
}

.preopen {
  margin-bottom: 20px;
}

.btn_movie,
.btn_movie2 {
  cursor: pointer;
}

.margin-top40px {
  margin-top: 40px;
}

.inlineBlock {
  display: inline-block !important;
}

.link_none:hover {
  opacity: 1;
  cursor: none;
  pointer-events: none;
}

.link_none {
  cursor: none;
  pointer-events: none;
}

.sp-only {
  display: none;
}

@media screen and (max-width: 768px) {
  .sp-only {
    display: block;
  }
}

.detailSummary__text {
  padding: 15px 30px;
}

.detailSummary__text__01 {
  background-color: rgba(198, 206, 114, 0.7);
}

.wrapper .mainContents #bnr .contents {
  position: relative;
  padding: 20px 0 0;
}

.wrapper .mainContents #bnr .contents::before {
  position: absolute;
  display: block;
  content: "";
  width: 213px;
  height: 206px;
  background: url(../img/ichou.png) no-repeat right top;
  background-size: contain;
  top: -120px;
  right: -180px;
  transform: translateY(-50%) translateX(0%);
}

@media screen and (max-width: 768px) {
  .wrapper .mainContents #bnr .contents::before {
    top: -80px;
    right: 0px;
    width: 40%;
    height: 30vw;
  }
}

#cboxContent {
  text-indent: unset;
  color: unset;
}

.partners_credit_2 {
  font-family: serif, "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "MacHiramin", "HG明朝B", "HG明朝E", "MS PMincho", "MS Mincho";
  margin-top: 35px;
  font-size: 16px;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .partners_credit_2 {
    margin-top: 20px;
    font-size: 14px;
  }
}

.main {
  background-size: cover;
  background-position: center;
}

.main__thoughts {
  background-image: url(../img/bg1.jpg);
  background-size: 877px auto;
  padding: 80px 20px 118px;
  background-position: center top;
  background-repeat: repeat;
  position: relative;
}

@media (max-width: 768px) {
  .main__thoughts {
    padding: 28px 20px 60px;
    background-size: 438px auto;
  }
}

.main__thoughts::before,
.main__thoughts::after {
  content: '';
  display: block;
  position: absolute;
  background-size: contain;
}
.main__thoughts::before {
  width: 384px;
  height: 650px;
  background-image: url(../img/bg_thoughts1.png);
  top: 0;
  left: 38px;
}
@media (max-width: 768px) {
  .main__thoughts::before {
    display: none;
  }
}
.main__thoughts::after {
  width: 520px;
  height: 570px;
  background-image: url(../img/bg_thoughts2.png);
  bottom: 25px;
  right: -57px;
}
@media (max-width: 768px) {
  .main__thoughts::after {
    /* width: 135px;
    height: 148px;
    bottom: 215px;
    right: 0; */
    display: none;
  }
}

.main__movie__bnr {
  max-width: 980px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.main__movie__bnr + .main__movie__bnr {
  margin: 40px auto 0px;
}

@media (max-width: 768px) {
  .main__movie__bnr + .main__movie__bnr {
    margin: 20px auto 0px;
  }
  .main__movie__item {
    margin-bottom: 20px;
    padding-top: 0px;
  }
}

.main__mv {
  width: 100%;
  max-width: 1920px;
}

.main__cast {
  max-width: 1230px;
  margin: 120px auto;
  padding-inline: 15px;
  position: relative;
  z-index: 1;
}
@media (max-width: 768px) {
  .main__cast {
    margin-block: 60px;
    padding-inline: 20px;
  }
}

.main__cast::before,
.main__cast::after {
  content: '';
  display: block;
  position: absolute;
  background-size: contain;
}
.main__cast::before {
  width: 1055px;
  height: 1236px;
  background-image: url(../img/bg_cast2.png);
  top: 350px;
  right: -433px;
}
.main__cast::after {
  width: 1174px;
  height: 1156px;
  background-image: url(../img/bg_cast3.png);
  bottom: -20px;
  left: -522px;
}

.main__cast__container {
  background-image: url(../img/bg2.jpg);
  background-size: cover;
  padding: 4px;
  position: relative;
  z-index: 1;
}
@media (max-width: 768px) {
  .main__cast__container {
    padding: 2px;
  }
}

.main__cast__inner {
  border: #E1BB71 1px solid;
  padding-bottom: 120px;
  padding-inline: 60px;
}
@media (max-width: 768px) {
  .main__cast__inner {
    padding-bottom: 28px;
    padding-inline: 15px;
  }
}

.main__cast .m-heading {
  margin-bottom: 56px;
}

@media (max-width: 768px) {
  .main__cast .m-heading {
    margin-bottom: 28px;
  }
}

.main__cast__heading {
  position: relative;
}

@media (max-width: 768px) {
  .main__cast__heading {
    max-width: 400px;
    margin: 0 auto 20px;
  }
}

.main__cast__contents__01 {
  display: flex;
  gap: 50px;
  justify-content: center;
  margin-top: 70px;
}

@media (max-width: 768px) {
  .main__cast__contents__01 {
    margin-top: 10px;
    gap: 20px;
  }
}

@media (max-width: 768px) {
  .main__cast__contents__01__item__wrap {
    width: calc((100% / 2) - 7vw);
  }
}

.main__cast__contents__02 {
  margin-top: 60px;
  display: flex;
  gap: 30px 20px;
  flex-wrap: wrap;
  justify-content: center;
  padding-right: 30px;
}

@media (max-width: 768px) {
  .main__cast__contents__02 {
    margin-top: 10px;
    gap: 15px 5px;
    padding-right: 0px;
  }
}

.main__cast__contents__02::before {
  content: '';
  width: 92%;
  height: 1px;
  position: absolute;
  top: 25px;
  left: 50%;
  transform: translateY(0%) translateX(-50%);
  background-color: #6B6642;
}

@media (max-width: 768px) {
  .main__cast__contents__02::before {
    top: 10px;
  }
}

.main__cast__contents__02__wrap {
  display: flex;
  align-items: flex-start;
  gap: 25px;
  position: relative;
  max-width: 835px;
  margin: 60px auto 0px;
}

@media (max-width: 768px) {
  .main__cast__contents__02__wrap {
    flex-flow: column;
    gap: 5px;
    margin: 30px auto 0px;
  }
}

.main__cast__contents__02__heading {
  position: relative;
  z-index: 1;
}

@media (max-width: 768px) {
  .main__cast__contents__02__heading {
    width: 30%;
  }
}

.main__cast__contents__02__item__wrap {
  width: calc((100% / 3) - 15px);
}

@media (max-width: 768px) {
  .main__cast__contents__02__item__wrap {
    width: calc((100% / 3) - 5px);
  }
}

.main__cast__contents__03 {
  margin-top: 80px;
  display: flex;
  gap: 30px 20px;
  flex-wrap: wrap;
  justify-content: center;
  width: 87%;
}

@media (max-width: 768px) {
  .main__cast__contents__03 {
    margin-top: 10px;
    gap: 15px 5px;
    width: 100%;
  }
}

.main__cast__contents__03::before {
  content: '';
  width: 92%;
  height: 1px;
  position: absolute;
  top: 35px;
  left: 50%;
  transform: translateY(0%) translateX(-50%);
  background-color: #6B6642;
}

@media (max-width: 768px) {
  .main__cast__contents__03::before {
    top: 10px;
  }
}

.main__cast__contents__03__wrap {
  display: flex;
  align-items: flex-start;
  gap: 25px;
  position: relative;
  max-width: 835px;
  margin: 40px auto 0px;
}

@media (max-width: 768px) {
  .main__cast__contents__03__wrap {
    flex-flow: column;
    gap: 10px;
    margin: 30px auto 0px;
  }
}

.main__cast__contents__03__heading {
  position: relative;
  z-index: 1;
}

@media (max-width: 768px) {
  .main__cast__contents__03__heading {
    width: 41%;
  }
}

.main__cast__contents__03__item__wrap {
  width: calc((100% / 3) - 15px);
}

@media (max-width: 768px) {
  .main__cast__contents__03__item__wrap {
    width: calc((100% / 3) - 5px);
  }
}

.main__bnr {
  max-width: 980px;
  margin: 55px auto 0px;
  padding-inline: 15px;
  position: relative;
  z-index: 2;
}
.main__bnr--toho {
  padding-top: 120px;
  margin: 0 auto;
  padding-inline: 0;
}

@media (max-width: 768px) {
  .main__bnr {
    margin-top: 28px;
    padding-inline: 20px;
  }
  .dokusen__inner .main__bnr {
    padding-inline: 0px;
  }
  .main__bnr--toho{
    margin: 0 auto;
    padding-inline: 0px;
    padding-top: 60px;
  }
}

.main__bnr__text {
  margin-bottom: 20px;
}

#dokusen .banners {
  padding: 0px 20px 85px;
  z-index: 1;
  position: relative;
  box-sizing: content-box;
}

.banners {
  max-width: 900px;
  margin: 0 auto;
}

.dokusen {
  background-image: url(../img/bg1.jpg);
  background-size: 877px auto;
  padding-bottom: 120px;
}
.dokusen__inner{
  max-width: 1200px;
  margin: 120px auto 0px;
  padding-inline: 15px;
  position: relative;
  z-index: 1;
  padding-bottom: 120px;
  border: 4px solid #DDDAC1;
  background-image: url(../img/bg_dokusen.jpg);
  background-size: cover;
}

.dokusen.contents__wrap {
  padding: 0px 15px 120px;
}

@media (max-width: 768px) {
  .dokusen.contents__wrap {
    padding: 0 20px 60px;
  }
}

@media (max-width: 768px) {
  .dokusen__title {
    width: 75%;
  }
  .dokusen__inner {
    margin: 60px auto 0px;
    padding-inline: 15px;
    padding-bottom: 25px;
  }
}

.dokusen__title__wrap {
  position: relative;
}

.dokusen__title__bg__left {
  position: absolute;
  top: 55%;
  left: calc(50% - 735px);
  transform: translateY(-50%) translateX(-50%);
}

@media (max-width: 768px) {
  .dokusen__title__bg__left {
    left: -43%;
  }
}

.dokusen__title__bg__right {
  position: absolute;
  top: 55%;
  left: calc(50% + 750px);
  transform: translateY(-50%) translateX(-50%);
}

@media (max-width: 768px) {
  .dokusen__title__bg__right {
    left: 143%;
  }
}

.dokusen__tv-series {
  border-bottom: 1px solid #A79336;
}

@media (min-width: 769px) {
  .dokusen__tv-series {
    margin-top: 60px;
  }
}

.dokusen__tv-series__intro {
  padding: 95px 50px 50px;
  position: relative;
  display: flex;
  gap: 60px;
  align-items: flex-start;
}

@media (max-width: 768px) {
  .dokusen__tv-series__intro {
    padding: 35px 0px 10px;
    gap: 15px;
  }
}

.dokusen__tv-series__contents {
  display: none;
  background-color: #25262A;
  padding: 60px 40px;
  z-index: 1;
  position: relative;
}

@media (max-width: 768px) {
  .dokusen__tv-series__contents {
    padding: 25px 20px;
  }
}

.dokusen__tv-series__contents.is-active {
  display: block;
}

/*
.dokusen__tv-series__contents__heading__01 {
  width: 70%;
  max-width: 427px;
}

.dokusen__tv-series__contents__heading__02 {
  width: 70%;
  max-width: 427px;
}
*/
.dokusen__tv-series__tab {
  display: flex;
  color: white;
  justify-content: center;
  align-items: flex-end;
}

.dokusen__tv-series__tab__item {
  width: 50%;
  padding: 5px 20px 10px 20px;
  border-bottom: 1px solid #A79336;
  background-color: #37383C;
  position: relative;
  font-size: 26px;
  line-height: 1.2;
}

@media (max-width: 768px) {
  .dokusen__tv-series__tab__item {
    font-size: 13px;
    padding: 5px 10px 8px 10px;
  }
}

.dokusen__tv-series__tab__item__sub {
  font-size: 18px;
}

@media (max-width: 768px) {
  .dokusen__tv-series__tab__item__sub {
    font-size: 10px;
  }
}

.dokusen__tv-series__tab__item:hover {
  cursor: pointer;
}

.dokusen__tv-series__tab__item::after {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  border-top: 3px solid #A79336;
  border-right: 3px solid #A79336;
  margin-left: 30px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(135deg);
}

@media (max-width: 768px) {
  .dokusen__tv-series__tab__item::after {
    width: 6px;
    height: 6px;
    border-top: 2px solid #A79336;
    border-right: 2px solid #A79336;
    margin-left: 0px;
  }
}

.dokusen__tv-series__tab__item:nth-child(1).is-active {
  border-right: 1px solid #A79336;
}

.dokusen__tv-series__tab__item:nth-child(2).is-active {
  border-left: 1px solid #A79336;
}

.dokusen__tv-series__tab__item.is-active {
  background-color: #25262A;
  border-top: 1px solid #A79336;
  border-bottom: none;
  padding: 15px 20px 10px 20px;
}

@media (max-width: 768px) {
  .dokusen__tv-series__tab__item.is-active {
    padding: 10px 10px 8px 10px;
  }
}

.dokusen__tv-series__tab__item.is-active::after {
  display: none;
}

.dokusen__tv-series__tab__item.is-active:hover {
  cursor: unset;
}

.contents__wrap {
  padding: 120px 20px;
}

.contents__inner {
  max-width: 980px;
  margin: 0 auto;
}

.staff {
  position: relative;
}

.staff .m-heading {
  color: #214814;
}
.staff .m-heading::before {
  background-color: #336B40;
}

.staff.contents__wrap {
  background-image: url(../img/bg1.jpg);
  background-size: 877px auto;
  padding: 0 20px 120px;
}
@media (max-width: 768px) {
  .staff.contents__wrap {
    padding: 0px 20px 60px;
  }
}

.staff.contents__wrap::after {
  background-image: url(../img/bg_staff.png);
  background-size: contain;
  background-repeat: no-repeat;
  content: '';
  width: 960px;
  height: 489px;
  position: absolute;
  bottom: 0;
  left: 0;
}
@media (max-width: 768px) {
  .staff.contents__wrap::after {
    width: 299px;
    height: 152px;
  }
}

.staff__contents {
  position: relative;
  z-index: 1;
}

.staff__contents__items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 32px;
  max-width: 980px;
  margin: 56px auto 0;
}
@media (max-width: 768px) {
  .staff__contents__items {
    gap: 16px;
    margin-top: 28px;
  }
}

.staff__contents__item__detail {
  display: none;
}

.staff__contents__item__detail__content {
  background-image: url(../img/bg_modal.jpg);
  background-size: 170px 224px;
  padding: 56px;
  max-width: 700px;
}
@media (max-width: 768px) {
  .staff__contents__item__detail__content {
    background-size: 85px 112px;
    padding: 28px;
    max-width: 600px;
  }
}

.staff__contents__item__detail__content h4 {
  align-items: baseline;
  color: #214814;
  display: flex;
  font-size: 32px;
  font-weight: 500;
  gap: 12px;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media (max-width: 768px) {
  .staff__contents__item__detail__content h4 {
    font-size: 18px;
    gap: 6px;
  }
}

.staff__contents__item__detail__content h4 span {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0.02em;
}
@media (max-width: 768px) {
  .staff__contents__item__detail__content h4 span {
    font-size: 12px;
  }
}

.staff__contents__item__detail__content p {
  margin-top: 16px;
  color: #000000;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.02em;
}
@media (max-width: 768px) {
  .staff__contents__item__detail__content p {
    font-size: 12px;
    margin-top: 8px;
  }
}

.staff__contents .main__movie__bnr {
  margin-top: 120px;
}
@media (max-width: 768px) {
  .staff__contents .main__movie__bnr {
    margin-top: 60px;
  }
}


.original {
  background-color: black;
  position: relative;
  background-image: url(../img/bg_contents.jpg);
  background-size: 170px 224px;
}
@media (max-width: 768px) {
  .original {
    background-size: 85px 112px;
  }
}

.original.contents__wrap {
  padding: 0 20px 80px;
}

@media (max-width: 768px) {
  .original.contents__wrap {
    padding: 0 20px 40px;
  }
}

.original .m-heading {
  color: #214814;
  font-size: 40px;
  margin-left: -0.075em;
}
@media (max-width: 768px) {
  .original .m-heading {
    font-size: 20px;
  }
}

.original .m-heading::before {
  background-color: #336B40;
}

.original .m-heading span {
  font-size: 32px;
}
@media (max-width: 768px) {
  .original .m-heading span {
    font-size: 18px;
  }
}

.original__contents {
  margin-top: 56px;
}
@media (max-width: 768px) {
  .original__contents {
    margin-top: 28px;
  }
}

.original__contents__text {
  color: #000000;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.02em;
}
@media (max-width: 768px) {
  .original__contents__text {
    font-size: 10px;
  }
}

.original__contents__text__wrap {
  text-align: left;
}

@media (max-width: 768px) {
  .original__contents__text__wrap {
    width: 100%;
  }
}

@media (max-width: 768px) {
  .original__contents__photo {
    width: 40%;
  }
}

.original__contents__photo__note {
  font-size: 10px;
  text-align: right;
  color: white;
  margin-top: 8px;
}

.original__contents__photo__img {
  margin-top: 15px;
}

@media (max-width: 768px) {
  .original__contents__photo__img {
    margin-top: 0px;
  }
}

.bnr {
  background-color: #191919;
}

.bnr.contents__wrap {
  padding: 80px 20px 100px;
}

@media (max-width: 768px) {
  .bnr.contents__wrap {
    padding: 45px 15px 45px;
  }
}

.bnr__contents {
  max-width: 980px;
  margin: 0 auto;
}

.bnr__contents__text {
  margin-bottom: 50px;
}

@media (max-width: 768px) {
  .bnr__contents__text {
    margin-bottom: 20px;
  }
}

@media (min-width: 769px) {
  .recom__item {
    width: calc((100% / 3) - 20px);
  }
}

.recom_area {
  width: 100%;
  background: #747474;
  text-align: center;
  padding: 40px 0;
  box-sizing: border-box;
  margin-top: 0;
  font-family: "游ゴシック", "游ゴシック体", YuGothicMedium, YuGothic, "Yu Gothic", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ ゴシック", "MS Gothic", "HiraKakuProN-W3", "TakaoExゴシック", TakaoExGothic, "MotoyaLCedar", "Droid Sans Japanese", sans-serif;
}

.recom_area p.title {
  display: inline-block;
  color: #fff;
  font-size: 30px;
  font-weight: 500;
  position: relative;
}

.recom_area p.title span {
  display: inline-block;
}

.recom_area p.title:before {
  content: "";
  position: absolute;
  border-color: #fff;
  border-style: solid;
  border-width: 0 0 0 3px;
  height: 1em;
  top: 1.3em;
  left: -0.64em;
  margin-top: -1em;
  transform: rotate(-35deg);
  width: 0;
}

.recom_area p.title:after {
  content: "";
  position: absolute;
  border-color: #fff;
  border-style: solid;
  border-width: 0 0 0 3px;
  height: 1em;
  top: 1.3em;
  right: -0.44em;
  margin-top: -1em;
  transform: rotate(35deg);
  width: 0;
}

@media screen and (max-width: 768px) {
  .recom_area p.title {
    font-size: 26px;
    padding: 0 20px;
  }
  .recom_area p.title:before {
    content: "";
    position: absolute;
    border-color: #fff;
    border-style: solid;
    border-width: 0 0 0 2px;
    height: 2.6em;
    top: 1.2em;
    left: 0em;
    margin-top: -1em;
    transform: rotate(-25deg);
    width: 0;
  }
  .recom_area p.title:after {
    content: "";
    position: absolute;
    border-color: #fff;
    border-style: solid;
    border-width: 0 0 0 2px;
    height: 2.6em;
    top: 1.2em;
    right: 0em;
    margin-top: -1em;
    transform: rotate(23deg);
    width: 0;
  }
}

@media screen and (orientation: landscape) {
  .recom_area p.title:before {
    content: "";
    position: absolute;
    border-color: #fff;
    border-style: solid;
    border-width: 0 0 0 3px;
    height: 1em;
    top: 1.3em;
    left: -0.64em;
    margin-top: -1em;
    transform: rotate(-35deg);
    width: 0;
  }
  .recom_area p.title:after {
    content: "";
    position: absolute;
    border-color: #fff;
    border-style: solid;
    border-width: 0 0 0 3px;
    height: 1em;
    top: 1.3em;
    right: -0.44em;
    margin-top: -1em;
    transform: rotate(35deg);
    width: 0;
  }
}

.recom_area .flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 912px;
  margin: 30px auto 0;
}

.recom_area .flex > a {
  background: #fff;
}

.recom_area .flex > a div {
  text-align: left;
  font-size: 14px;
  max-width: 285px;
}

.recom_area .flex > a div > div {
  background: #fff;
  color: #000;
  padding: 16px;
  box-sizing: border-box;
}

.recom_area .flex > a div p {
  font-size: 16px;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .recom_area .flex {
    display: block;
    padding: 0 20px;
    max-width: initial;
    margin: 30px auto 0;
  }
  .recom_area .flex > a div {
    font-size: 16px;
    max-width: initial;
  }
  .recom_area .flex > a div p {
    font-size: 18px;
  }
  .recom_area .flex > a div img {
    max-width: initial;
    width: 100%;
  }
  .recom_area .flex > a div > div {
    width: 100%;
  }
  .recom_area .flex > a div {
    margin-bottom: 30px;
  }
  .recom_area .flex > a:last-child div {
    margin-bottom: 0;
  }
}

#cboxCurrent {
  display: none !important;
}

.dokusen__guest {
  padding: 85px 100px 85px;
  position: relative;
  gap: 60px;
  align-items: flex-start;
  z-index: 1;
  /* margin-top: 80px; */
}

.dokusen__guest__2 {
  margin-top: 20px;
  padding: 85px 100px 85px;
}

.dokusen__guest__3 {
  padding: 85px 100px 45px;
}

.dokusen__guest__3 .banners {
  margin-top: 45px;
}

@media (max-width: 768px) {
  .dokusen__guest {
    padding: 40px 20px;
    gap: 15px;
    margin-top: 0px;
  }
  .dokusen__guest__3 {
    padding: 40px 20px;
    gap: 15px;
    margin-top: 0px;
  }
}

@media (max-width: 768px) {
  .dokusen__guest__inner {
    display: flex;
    gap: 15px;
    align-items: flex-start;
  }
}

.dokusen__guest__slide .slick-prev,
.dokusen__guest__slide .slick-next {
  top: 160px;
}

.dokusen__guest__slide__2 .slick-prev,
.dokusen__guest__slide__2 .slick-next {
  top: 160px;
}

.dokusen__guest__slide__3 .slick-prev,
.dokusen__guest__slide__3 .slick-next {
  top: 160px;
}

.dokusen__guest__slide__4 .slick-prev,
.dokusen__guest__slide__4 .slick-next {
  top: 160px;
}

.dokusen__guest__slide__5 .slick-prev,
.dokusen__guest__slide__5 .slick-next {
  top: 160px;
}

@media (max-width: 768px) {
  .dokusen__guest__slide .slick-prev,
  .dokusen__guest__slide .slick-next {
    top: 95px;
  }
  .dokusen__guest__slide__2 .slick-prev,
  .dokusen__guest__slide__2 .slick-next {
    top: 95px;
  }
  .dokusen__guest__slide__3 .slick-prev,
  .dokusen__guest__slide__3 .slick-next {
    top: 95px;
  }
  .dokusen__guest__slide__4 .slick-prev,
  .dokusen__guest__slide__4 .slick-next {
    top: 95px;
  }
  .dokusen__guest__slide__5 .slick-prev,
  .dokusen__guest__slide__5 .slick-next {
    top: 95px;
  }
}

.dokusen__guest__slide .slick-prev {
  left: 5px;
}

.dokusen__guest__slide__2 .slick-prev {
  left: 5px;
}

.dokusen__guest__slide__3 .slick-prev {
  left: 5px;
}

.dokusen__guest__slide__4 .slick-prev {
  left: 5px;
}

.dokusen__guest__slide__5 .slick-prev {
  left: 5px;
}

.dokusen__guest__slide .slick-next {
  right: -20px;
}

.dokusen__guest__slide__2 .slick-next {
  right: -20px;
}

.dokusen__guest__slide__3 .slick-next {
  right: -20px;
}

.dokusen__guest__slide__4 .slick-next {
  right: -20px;
}

.dokusen__guest__slide__5 .slick-next {
  right: -20px;
}

@media (max-width: 768px) {
  .dokusen__guest__slide .slick-next {
    right: 15px;
  }
  .dokusen__guest__slide__2 .slick-next {
    right: 15px;
  }
  .dokusen__guest__slide__3 .slick-next {
    right: 15px;
  }
  .dokusen__guest__slide__4 .slick-next {
    right: 15px;
  }
  .dokusen__guest__slide__5 .slick-next {
    right: 15px;
  }
}

@media (max-width: 768px) {
  .dokusen__guest__slide .slick-prev:before {
    width: 10px;
    height: 10px;
    border-top: 3px solid #615432;
    border-right: 3px solid #615432;
  }
  .dokusen__guest__slide__2 .slick-prev:before {
    width: 10px;
    height: 10px;
    border-top: 3px solid #615432;
    border-right: 3px solid #615432;
  }
  .dokusen__guest__slide__3 .slick-prev:before {
    width: 10px;
    height: 10px;
    border-top: 3px solid #615432;
    border-right: 3px solid #615432;
  }
  .dokusen__guest__slide__4 .slick-prev:before {
    width: 10px;
    height: 10px;
    border-top: 3px solid #615432;
    border-right: 3px solid #615432;
  }
  .dokusen__guest__slide__5 .slick-prev:before {
    width: 10px;
    height: 10px;
    border-top: 3px solid #615432;
    border-right: 3px solid #615432;
  }
  .dokusen__guest__slide .slick-next:before {
    width: 10px;
    height: 10px;
    border-top: 3px solid #615432;
    border-right: 3px solid #615432;
  }
  .dokusen__guest__slide__2 .slick-next:before {
    width: 10px;
    height: 10px;
    border-top: 3px solid #615432;
    border-right: 3px solid #615432;
  }
  .dokusen__guest__slide__3 .slick-next:before {
    width: 10px;
    height: 10px;
    border-top: 3px solid #615432;
    border-right: 3px solid #615432;
  }
  .dokusen__guest__slide__4 .slick-next:before {
    width: 10px;
    height: 10px;
    border-top: 3px solid #615432;
    border-right: 3px solid #615432;
  }
  .dokusen__guest__slide__5 .slick-next:before {
    width: 10px;
    height: 10px;
    border-top: 3px solid #615432;
    border-right: 3px solid #615432;
  }
}

.dokusen__guest__slide__item {
  display: flex;
  z-index: 1;
  position: relative;
  padding: 0px 50px 60px;
  align-items: flex-start;
}

@media (max-width: 768px) {
  .dokusen__guest__slide__item {
    flex-flow: column;
    padding: 15px 15px 15px;
    align-items: center;
    min-height: 360px;
  }
  /* .dokusen__guest__slide__2 .dokusen__guest__slide__item {
    min-height: 400px;
  }

  .dokusen__guest__slide__3 .dokusen__guest__slide__item {
    min-height: 400px;
  } */
}

.dokusen__guest__slide__item__wrap {
  position: relative;
}

@media (min-width: 769px) {
  .dokusen__guest__slide__item__text--short {
    line-height: 1.4;
    font-size: 14px;
  }
}

@media (max-width: 768px) {
  .dokusen__guest__slide__item__text--short {
    line-height: 1;
    font-size: 12px;
  }
}

@media (max-width: 768px) {
  .dokusen__guest__slide__item__text {
    padding: 0px 5px;
  }
}

.dokusen__guest__slide__item__text__name {
  color: #8D760C;
  /*  font-size: 26px;*/
  font-size: 24px;
  margin-bottom: 15px;
  line-height: 1;
}

@media (max-width: 768px) {
  .dokusen__guest__slide__item__text__name {
    text-align: center;
    /*    font-size: 22px;*/
    font-size: 20px;
  }
}

.dokusen__guest__slide__item__text__name__sub {
  font-size: 18px;
}

@media (max-width: 768px) {
  .dokusen__guest__slide__item__text__name__sub {
    display: block;
    margin-top: 10px;
    font-size: 14px;
  }
}

.dokusen__guest__slide__item__text__name--black {
  color: black;
}

.dokusen__guest__slide__item__text__wrap {
  text-align: left;
  margin-left: 40px;
  margin-top: 65px;
}

@media (max-width: 768px) {
  .dokusen__guest__slide__item__text__wrap {
    margin-left: 0px;
    margin-top: 15px;
  }
}

.dokusen__guest__slide__item__text__wrap__mb0 {
  margin-bottom: 0px;
}

.dokusen__guest__slide__item__bg {
  position: absolute;
  top: 30px;
  right: 5px;
  transform: translateY(0%) translateX(0%);
  width: 82%;
  height: 85%;
  z-index: 0;
}

@media (min-width: 769px) {
  .dokusen__guest__slide__item__bg {
    min-height: 272px;
  }
  /* .dokusen__guest__slide__2 .dokusen__guest__slide__item__bg {
    min-height: 350px;
  }

  .dokusen__guest__slide__3 .dokusen__guest__slide__item__bg {
    min-height: 350px;
  } */
}

@media (max-width: 768px) {
  .dokusen__guest__slide__item__bg {
    top: 0px;
    right: 0px;
    width: 99%;
    height: 100%;
  }
}

.dokusen__guest__slide__item__bg--long {
  height: 88%;
}

.dokusen__guest__slide__item__img {
  max-width: 203px;
}

@media (max-width: 768px) {
  .dokusen__guest__slide__item__img {
    width: 56%;
  }
}

.dokusen__guest__slide__wrap {
  position: relative;
  display: inline-block;
  max-width: 600px;
  width: 82%;
}

@media (max-width: 768px) {
  .dokusen__guest__slide__wrap {
    width: calc(95% - 24px);
    max-width: 265px;
    margin: 0 auto;
  }
}

.dokusen__guest__slide__bg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  width: 100%;
  max-width: 500px;
}

.dokusen__guest__heading {
  color: #918135;
  font-size: 53px;
  position: relative;
  float: left;
}

.dokusen__guest__heading__img {
  max-width: 50px;
}

@media (max-width: 768px) {
  .dokusen__guest__heading__img {
    width: 100%;
  }
}

@media (max-width: 768px) {
  .dokusen__guest__heading {
    width: 24px;
    font-size: 24px;
    line-height: 1;
  }
}

.dokusen__guest__heading::before {
  content: '';
  width: 1px;
  height: 65px;
  background-color: #918135;
  position: absolute;
  top: -85px;
  left: 50%;
  transform: translateY(0%) translateX(-50%);
}

@media (max-width: 768px) {
  .dokusen__guest__heading::before {
    height: 35px;
    top: -40px;
  }
}

.dokusen__guest__thumbnail {
  color: #C3B15E;
  margin: 0px 10px 0px;
  border-right: 1px solid #C3B15E;
  position: relative;
  z-index: 1;
}

.dokusen__guest__thumbnail__2 {
  color: #C3B15E;
  margin: 0px 10px 0px;
  border-right: 1px solid #C3B15E;
  position: relative;
  z-index: 1;
}

.dokusen__guest__thumbnail__3 {
  color: #C3B15E;
  margin: 0px 10px 0px;
  /* border-right: 1px solid #C3B15E; */
  position: relative;
  z-index: 1;
}

.dokusen__guest__thumbnail__4 {
  color: #C3B15E;
  margin: 0px 10px 0px;
  /* border-right: 1px solid #C3B15E; */
  position: relative;
  z-index: 1;
}

.dokusen__guest__thumbnail__5 {
  color: #C3B15E;
  margin: 20px 10px 0px;
  border-right: 1px solid #C3B15E;
  position: relative;
  z-index: 1;
}

@media (min-width: 769px) {
  .dokusen__guest__thumbnail {
    background-color: #242629;
  }
  .dokusen__guest__thumbnail__2 {
    background-color: #242629;
  }
}

@media (max-width: 768px) {
  .dokusen__guest__thumbnail {
    border-right: none;
    max-width: 400px;
    margin: 20px auto 0px;
  }
  .dokusen__guest__thumbnail__2 {
    border-right: none;
    max-width: 400px;
    margin: 20px auto 0px;
  }
  .dokusen__guest__thumbnail__3 {
    border-right: none;
    max-width: 400px;
    margin: 20px auto 0px;
  }
  .dokusen__guest__thumbnail__4 {
    border-right: none;
    max-width: 400px;
    margin: 20px auto 0px;
  }
  .dokusen__guest__thumbnail__5 {
    border-right: none;
    max-width: 400px;
    margin: 20px auto 0px;
  }
}

.dokusen__guest__thumbnail .slick-track {
  transform: unset !important;
  display: flex;
}

.dokusen__guest__thumbnail__2 .slick-track {
  transform: unset !important;
  display: flex;
}

.dokusen__guest__thumbnail__3 .slick-track {
  transform: unset !important;
  display: flex;
}

.dokusen__guest__thumbnail__4 .slick-track {
  transform: unset !important;
  display: flex;
}

.dokusen__guest__thumbnail__5 .slick-track {
  transform: unset !important;
  display: flex;
}

@media (max-width: 768px) {
  .dokusen__guest__thumbnail .slick-track {
    flex-wrap: wrap;
  }
  .dokusen__guest__thumbnail__2 .slick-track {
    flex-wrap: wrap;
  }
  .dokusen__guest__thumbnail__3 .slick-track {
    flex-wrap: wrap;
  }
  .dokusen__guest__thumbnail__4 .slick-track {
    flex-wrap: wrap;
  }
  .dokusen__guest__thumbnail__5 .slick-track {
    flex-wrap: wrap;
  }
}

.m-bnr {
  max-width: 900px;
  display: block;
  margin: 0 auto;
}

.m-bnr + .m-bnr {
  margin-top: 30px;
}

@media (max-width: 768px) {
  .m-bnr + .m-bnr {
    margin-top: 20px;
  }
}

.thoughts {
  background-image: url(../img/bg2.jpg);
  background-size: cover;
  padding: 120px 20px;
}

@media (max-width: 768px) {
  .thoughts {
    padding: 50px 20px 60px;
  }
}

.thoughts__box {
  background-image: url(../img/bg1.jpg);
  background-size: 877px auto;
  max-width: 1200px;
  margin: 0 auto;
  padding: 120px 15px 80px;
  margin-top: 80px;
}
@media (max-width: 768px) {
  .thoughts__box {
    padding: 60px 17px 28px;
    margin-top: 45px;
  }
}

.thoughts__box__heading {
  margin-top: -200px;
  margin-inline: auto;
  max-width: 793px;
}
@media (max-width: 768px) {
  .thoughts__box__heading {
    margin-top: -105px;
    max-width: 100%;
  }
}

.thoughts__box__inner {
  max-width: 760px;
  margin: 80px auto 0;
}
@media (max-width: 768px) {
  .thoughts__box__inner {
    max-width: 100%;
    margin-top: 20px;
  }
}

.thoughts__box__2col {
  display: flex;
  justify-content: center;
  gap: 40px;
}

@media (max-width: 768px) {
  .thoughts__box__2col {
    flex-flow: column;
    gap: 20px;
    margin-top: 20px;
  }
}

.thoughts__box__2col__item {
  width: 50%;
  border: 1px solid #336B40;
}

@media (max-width: 768px) {
  .thoughts__box__2col__item {
    width: 100%;
  }
}

.thoughts__box__2col__item__text {
  color: #000000;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.02em;
}

@media (max-width: 768px) {
  .thoughts__box__2col__item__text {
    font-size: 16px;
  }
}

.thoughts__box__2col__item__text--center {
  text-align: center;
}

.thoughts__box__2col__item__text__wrap {
  padding: 30px 15px;
}

@media (max-width: 768px) {
  .thoughts__box__2col__item__text__wrap {
    padding: 16px;
  }
}

.thoughts__box__2col__item__text--underline {
  color: #214814;
  text-decoration: underline;
  text-decoration-thickness: 16px;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
  text-underline-offset: -8px;
  -webkit-text-decoration-color: #FFED64;
  text-decoration-color: #FFED64;
  display: inline-block;
}
@media (max-width: 768px) {
  .thoughts__box__2col__item__text--underline {
    text-decoration-thickness: 8px;
    text-underline-offset: -4px;
  }
}

.thoughts__box__2col__item__text--big {
  font-size: 24px;
}

@media (max-width: 768px) {
  .thoughts__box__2col__item__text--big {
    font-size: 18px;
  }
}

.thoughts__box__2col__item__mds {
  color: #214814;
  font-size: 32px;
  background-color: #E2E5CF;
  padding: 16px;
  line-height: 1.5;
  letter-spacing: 0.02em;
}

@media (max-width: 768px) {
  .thoughts__box__2col__item__mds {
    font-size: 18px;
    padding: 8px;
  }
}

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

.thoughts__box__2col__item__mds--kakko {
  font-size: 28px;
}

@media (max-width: 768px) {
  .thoughts__box__2col__item__mds--kakko {
    font-size: 18px;
  }
}

.thoughts__box__2col__item__btn {
  padding: 13px 15px;
  background: #214814;
  display: inline-block;
  color: white;
  font-size: 24px;
  letter-spacing: 0.02em;
  text-align: center;
  position: relative;
  width: 100%;
  max-width: 260px;
}

@media (max-width: 768px) {
  .thoughts__box__2col__item__btn {
    padding: 5px 15px;
    width: 80%;
    font-size: 20px;
  }
}

.thoughts__box__2col__item__btn__wrap {
  text-align: center;
  margin-top: 16px;
}
@media (max-width: 768px) {
  .thoughts__box__2col__item__btn__wrap {
    margin-top: 8px;
  }
}

.thoughts__box__note {
  color: #000000;
  font-size: 14px;
  margin-top: 40px;
  line-height: 1.7;
  letter-spacing: 0.02em;
  text-align: left;
}

@media (max-width: 768px) {
  .thoughts__box__note {
    font-size: 10px;
    margin-top: 20px;
  }
}

.thoughts__box__note__link {
  text-decoration: underline;
  color: unset;
}

.aftertalk {
  letter-spacing: 0px;
  padding: 20px 20px 85px;
}

@media (max-width: 768px) {
  .aftertalk {
    padding: 7px 7px 2px 6px;
    margin: 0px 20px 20px;
    background-image: url(../img/aftertalk_box_bg_sp.jpg);
    background-size: cover;
  }
}

.aftertalk__box {
  background-image: url(../img/aftertalk_box_bg.jpg);
  background-size: 100% 100%;
  padding: 50px 50px;
  max-width: 790px;
  margin: 0 auto;
}

@media (max-width: 768px) {
  .aftertalk__box {
    padding: 20px 20px 35px;
    background-image: unset;
    border-image-source: url(../img/aftertalk_box_bg_border_sp.png);
    border-image-slice: 200;
    border-image-width: 100px;
    border-image-outset: 0px;
    border-image-repeat: round;
  }
}

.aftertalk__box__flex {
  display: flex;
  align-items: start;
  justify-content: center;
  gap: 20px;
}

@media (max-width: 768px) {
  .aftertalk__box__flex {
    flex-flow: column;
    gap: 10px;
  }
}

.aftertalk__box__flex__img {
  width: 45%;
}

@media (max-width: 768px) {
  .aftertalk__box__flex__img {
    width: 100%;
  }
}

.aftertalk__box__flex__text {
  width: 61%;
}

@media (max-width: 768px) {
  .aftertalk__box__flex__text {
    width: 100%;
  }
}

.aftertalk__box__flex__text__title {
  font-size: 28px;
  font-weight: bold;
  margin-top: 5px;
  line-height: 1.5;
}

@media (max-width: 768px) {
  .aftertalk__box__flex__text__title {
    font-size: 18px;
    margin-top: 10px;
    line-height: 1.6;
  }
}

.aftertalk__box__flex__text__cast {
  display: flex;
  gap: 10px;
  margin-top: 15px;
  align-items: center;
}

@media (max-width: 768px) {
  .aftertalk__box__flex__text__cast {
    margin-top: 10px;
    gap: 5px;
  }
}

.aftertalk__box__flex__text__cast__mds {
  background-color: #444444;
  padding: 8px 1px;
  color: white;
  font-size: 0px;
}

.aftertalk__box__flex__text__cast__mds img {
  max-width: 27px;
  padding: 0px 4px;
}

@media (max-width: 768px) {
  .aftertalk__box__flex__text__cast__mds img {
    max-width: 22px;
  }
}

.aftertalk__box__flex__text__cast__list {
  line-height: 1.5;
}

@media (max-width: 768px) {
  .aftertalk__box__flex__text__cast__list {
    text-align: left;
  }
}

.aftertalk__box__waku {
  padding: 15px 20px;
  text-align: center;
  border-image-source: url(../img/aftertalk_waku.png);
  border-image-slice: 50;
  border-image-width: 100px;
  border-image-outset: 0px;
  border-image-repeat: round;
  margin-top: 20px;
  font-size: 18px;
  line-height: 1.5;
}

@media (max-width: 768px) {
  .aftertalk__box__waku {
    border-image-slice: 100;
    border-image-width: 150px;
    font-size: 14px;
    padding: 15px 15px;
  }
}

.aftertalk__box__waku--red {
  color: #9a3214;
}

.aftertalk__box__text--big {
  text-decoration: underline;
  text-decoration-thickness: 8px;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
  text-underline-offset: -2px;
  -webkit-text-decoration-color: #C8B660;
  text-decoration-color: #C8B660;
  font-weight: bold;
  font-size: 30px;
  margin-top: 20px;
  letter-spacing: 0px;
}

@media (max-width: 768px) {
  .aftertalk__box__text--big {
    font-size: 18px;
    margin-top: 15px;
    line-height: 1.4;
  }
}

.aftertalk__box__note {
  font-size: 18px;
  margin-top: 5px;
}

@media (max-width: 768px) {
  .aftertalk__box__note {
    font-size: 13px;
    margin-top: 10px;
  }
}

.no-wrap {
  text-wrap: nowrap;
}

.intro_kv {
  margin-bottom: 40px;
  position: relative;
  z-index: 3;
  width: 100%;
}

@media (min-width: 769px) {
  .intro_kv {
    position: absolute;
    top: -495px;
    left: 50%;
    transform: translateY(0%) translateX(-50%);
  }
}

@media screen and (max-width: 1000px) {
  .intro_kv {
    top: -40vw;
  }
}

@media (max-width: 768px) {
  .intro_kv {
    margin-bottom: 0px;
    position: relative;
    z-index: 3;
    top: 0px;
  }
}


@media (max-width: 768px) {
  .m-heading__date {
    width: 75%;
    max-width: 210px;
  }
}

@media (max-width: 768px) {
  .intro_kv__chigasira {
    margin-top: 25px;
  }
  .intro_kv__deku {
    margin-top: 25px;
  }
  .intro_kv__honjo {
    margin-top: 25px;
  }
}

@media (max-width: 768px) {
  .aftertalk__routou {
    padding: 7px 4px 7px 7px;
  }
}

.aftertalk__routou .aftertalk__box__flex__text {
  text-align: left;
}

@media (max-width: 768px) {
  .aftertalk__routou .aftertalk__box__waku {
    border-image-slice: 85;
  }
}

@media (min-width: 769px) {
  .aftertalk__routou .aftertalk__box {
    background-image: url(../img/aftertalk_box_bg_routou.jpg);
  }
}

@media (max-width: 768px) {
  .aftertalk__ketto {
    padding: 7px 4px 7px 7px;
  }
}

.aftertalk__ketto .aftertalk__box__flex__text {
  text-align: left;
}

.aftertalk__ketto .aftertalk__box__waku {
  border-image-width: 60px;
}

@media (max-width: 768px) {
  .aftertalk__ketto .aftertalk__box__waku {
    border-image-slice: 50;
    border-image-width: 50px;
  }
}

@media (min-width: 769px) {
  .aftertalk__ketto .aftertalk__box {
    background-image: url(../img/aftertalk_box_bg_ketto.jpg);
  }
}

@media (max-width: 768px) {
  .aftertalk__chigashira {
    padding: 7px 4px 7px 7px;
  }
}

@media (min-width: 769px) {
  .aftertalk__chigashira .aftertalk__box {
    background-image: url(../img/aftertalk_box_bg_chigashira.jpg);
  }
}

.routou_bnr {
  margin-bottom: 40px;
  padding: 0px 20px;
}

@media (max-width: 768px) {
  .routou_bnr {
    margin-bottom: 20px;
  }
}

@media (min-width: 769px) {
  .mv__announcement {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateY(0%) translateX(-50%);
    width: 78%;
  }
}

@media screen and (max-width: 1514px) {
  .mv__announcement {
    width: 90vw;
    bottom: 15px;
  }
}

@media screen and (max-width: 900px) {
  .mv__announcement {
    width: 80vw;
    bottom: 15px;
  }
}

@media (max-width: 768px) {
  .mv__announcement {
    width: 100%;
  }
}

.mv__wrap {
  position: relative;
}
.mv__bottom {
  position: relative;
  z-index: 1;
}
.mv__bottom__bnr {
  padding: 31px 10px;
  background: url(../img/bnr_premiere_bg.jpg) no-repeat top center / cover;;
  display: flex;
  justify-content: center;
}
.mv__bottom__link {
  max-width: 850px;
}

@media (max-width: 767px) {
  .mv__bottom__bnr {
    padding: 0;
    background: url(../img/bnr_premiere_sp_bg.jpg) no-repeat top center / cover;
  }
}

.nav {
  background-color: #163106;
  border-width: 0px 0px 6px 0px;
  border-style: solid;
  border-color: #E1BB71;
  position: relative;
  z-index: 1;
}

.nav__contents {
  display: flex;
  max-width: 1120px;
  padding: 28px 0px;
  margin: 0 auto;
  font-size: 24px;
  gap: 40px;
  justify-content: center;
}

@media (max-width: 768px) {
  .nav__contents {
    flex-flow: wrap;
    gap: 0px;
    padding: 1px 0px;
    font-size: 4vw;
  }
}

.nav__item {
  color: white;
  letter-spacing: 0.02em;
}

@media (max-width: 768px) {
  .nav__item {
    width: 50%;
    padding: 8px 5px;
  }
  .nav__item:nth-child(2n) {
    border-left: 1px solid #545B51;
  }
  .nav__item:nth-child(n + 3) {
    border-top: 1px solid #545B51;
  }
  .nav__item:last-child:nth-child(odd) {
    width: 100%;
  }
}

.mainContentsArea {
  font-family: 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.m-heading {
  color: #E1BB71;
  font-size: 56px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.02em;
  position: relative;
  padding-top: 156px;
}

@media (max-width: 768px) {
  .m-heading {
    font-size: 24px;
    padding-top: 78px;
  }
}

.m-heading::before {
  content: '';
  width: 1px;
  height: 100px;
  background-color: #E1BB71;
  position: absolute;
  top: 0%;
  left: 50%;
  transform: translateY(0%) translateX(-50%);
}

@media (max-width: 768px) {
  .m-heading::before {
    height: 50px;
  }
}

.summary {
  background-color: #375101;
  background-image: url(../img/bg3.jpg);
  background-size: cover;
  padding-bottom: 120px;
  z-index: 1;
  position: relative;
}
@media (max-width: 768px) {
  .summary {
    padding-bottom: 60px;
  }
}

.summary::before {
  content: '';
  width: 100%;
  height: 100%;
  background-image: url(../img/bg_summary.png);
  background-size: 728px 540px;
  background-position: left top;
  opacity: 0.6;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
@media (max-width: 768px) {
  .summary::before {
    background-size: 364px 270px;
  }
}

.summary__inner {
  padding-inline: 15px;
  position: relative;
  z-index: 1;
}
@media (max-width: 768px) {
  .summary__inner {
    padding-inline: 20px;
  }
}

.summary__text {
  color: #FFFFFF;
  line-height: 2.4;
  letter-spacing: 0.02em;
  margin-top: 56px;
  font-size: 20px;
  font-weight: 600;
  display: inline-block;
}

@media (max-width: 768px) {
  .summary__text {
    margin-top: 28px;
    font-size: 12px;
    text-align: left;
  }
}

.main__contents {
  background-image: url(../img/bg1.jpg);
  background-size: 877px auto;
  position: relative;
}
@media (max-width: 768px) {
  .main__contents {
    background-size: 438px auto;
  }
}

.summary__img {
  width: calc(100% / 3);
}

.summary__img__wrap {
  display: flex;
  max-width: 1200px;
  margin: 80px auto 0px;
  align-items: center;
  justify-content: center;
}

@media (max-width: 768px) {
  .summary__img__wrap {
    margin-top: 40px;
  }
}

.main__cast__big {
  display: grid;
  grid-template-columns: 55% auto;
  padding: 40px;
  background-image: url(../img/bg_cast1.jpg);
  background-size: 62px 46px;
  background-position: left top;
  gap: 32px;
  max-width: 980px;
  margin-inline: auto;
  align-items: flex-start;
}
@media (max-width: 768px) {
  .main__cast__big {
    background-size: 31px 23px;
    grid-template-columns: 1fr;
    padding: 20px;
    gap: 16px;
  }
}

div + .main__cast__big {
  margin-top: 40px;
}
@media (max-width: 768px) {
  div + .main__cast__big {
    margin-top: 20px;
  }
}

.main__cast__big__img {
  border: 1px solid #E1BB71;
}

.main__cast__big__img img {
  width: 100%;
}

.main__cast__big__text {
  color: white;
  text-align: left;
}

.main__cast__big__text__actor {
  font-size: 40px;
  font-weight: 500;
  color: #FFFFFF;
  line-height: 1.4;
  letter-spacing: 0.02em;
  margin-bottom: 24px;
  padding-bottom: 13px;
  border-bottom: 1px solid #E1BB71;
}

@media (max-width: 768px) {
  .main__cast__big__text__actor {
    font-size: 20px;
    margin-bottom: 12px;
    padding-bottom: 8px;
  }
}

.main__cast__big__text__character {
  font-size: 24px;
  font-weight: 600;
  color: #FFFFFF;
  line-height: 1.5;
  letter-spacing: 0.02em;
}

@media (max-width: 768px) {
  .main__cast__big__text__character {
    font-size: 16px;
  }
}

.main__cast__big__text__detail {
  font-size: 20px;
  font-weight: 600;
  margin-top: 40px;
  line-height: 1.6;
  letter-spacing: 0.02em;
}

@media (max-width: 768px) {
  .main__cast__big__text__detail {
    font-size: 12px;
    margin-top: 20px;
  }
}

.main__cast__contents {
  display: flex;
  gap: 32px;
  justify-content: center;
  max-width: 980px;
  margin-top: 40px;
  margin-inline: auto;
}

@media (max-width: 768px) {
  .main__cast__contents {
    flex-flow: wrap;
    justify-content: center;
    gap: 20px 16px;
    margin-top: 20px;
  }
}

.main__cast__contents__actor {
  color: #FFFFFF;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.02em;
  margin-top: 16px;
}

@media (max-width: 768px) {
  .main__cast__contents__actor {
    font-size: 16px;
    margin-top: 8px;
  }
}

.main__cast__contents__character {
  border-top: 2px solid #336B40;
  color: #FFFFFF;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0.02em;
  margin-top: 6px;
  padding-top: 4px;
}

@media (max-width: 768px) {
  .main__cast__contents__character {
    border-top-width: 1px;
    font-size: 12px;
    margin-top: 8px;
    padding-top: 4px;
  }
}

.main__cast__contents__01__item__wrap {
  width: calc((100% / 3) - 25px);
  text-align: left;
  color: white;
  display: block;
}

@media (max-width: 768px) {
  .main__cast__contents__01__item__wrap {
    width: calc((100% / 2) - 10px);
  }
}

.main__aftertalk {
  max-width: 1230px;
  margin: 120px auto 0px;
  padding-inline: 15px;
  position: relative;
  z-index: 1;
}

@media (max-width: 768px) {
  .main__aftertalk {
    margin-top: 60px;
    padding-inline: 20px;
  }
}

.main__aftertalk::before {
  aspect-ratio: 2432 / 1146;
  content: '';
  width: calc(2432 / 1920 * 100vw);
  background-image: url(../img/bg_aftertalk.png);
  background-size: contain;
  position: absolute;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
}

.main__aftertalk__inner {
  padding-bottom: 120px;
  border: 4px solid #336B40;
  background-image: url(../img/bg4.jpg);
  background-size: cover;
  position: relative;
  z-index: 1;
}
@media (max-width: 768px) {
  .main__aftertalk__inner {
    border-width: 2px;
    padding-bottom: 26px;
  }
}

.main__aftertalk .m-heading {
  color: #214814;
}
.main__aftertalk .m-heading::before {
  background-color: #336B40;
}

.main__aftertalk__detail {
  background-image: url(../img/bg2.jpg);
  background-size: cover;
  display: flex;
  gap: 32px;
  padding: 56px;
  max-width: 980px;
  align-items: flex-start;
  margin-top: 40px;
  margin-inline: 15px;
}

@media (max-width: 768px) {
  .main__aftertalk__detail {
    flex-flow: column;
    margin-top: 20px;
    padding: 20px;
    gap: 16px;
  }
}

.main__aftertalk__detail__img {
  width: 33%;
  max-width: 270px;
}

@media (max-width: 768px) {
  .main__aftertalk__detail__img {
    width: auto;
    max-width: 100%;
  }
}

.main__aftertalk__detail__text {
  text-align: left;
  width: 67%;
}

@media (max-width: 768px) {
  .main__aftertalk__detail__text {
    width: 100%;
  }
}

.main__aftertalk__detail__text__title {
  color: #FFFFFF;
  font-size: 24px;
  font-weight: 600;
  margin-top: 16px;
  line-height: 1.5;
  letter-spacing: 0.02em;
}

@media (max-width: 768px) {
  .main__aftertalk__detail__text__title {
    font-size: 16px;
    margin-top: 8px;
  }
}

.main__aftertalk__detail__text__cast {
  margin-top: 16px;
  display: flex;
  gap: 20px;
  align-items: flex-start;
}

@media (max-width: 768px) {
  .main__aftertalk__detail__text__cast {
    margin-top: 6px;
    gap: 12px;
  }
}

@media (max-width: 768px) {
  .main__aftertalk__detail__text__cast__wrap {
    margin-top: 8px;
  }
}

.main__aftertalk__detail__text__cast__category {
  padding-inline: 12px 10px;
  background-color: #9E7C00;
  color: white;
  font-size: 16px;
  font-weight: 500;
  min-width: 80px;
  line-height: 1.8;
  letter-spacing: 0.02em;
  text-align: center;
}

@media (max-width: 768px) {
  .main__aftertalk__detail__text__cast__category {
    padding-inline: 7px 5px;
    font-size: 12px;
    min-width: 50px;
  }
}

.main__aftertalk__detail__text__cast__name {
  color: #ffffff;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.02em;
}

@media (max-width: 768px) {
  .main__aftertalk__detail__text__cast__name {
    font-size: 12px;
  }
}

.main__aftertalk__detail__text__mds {
  width: 100%;
}

@media (max-width: 768px) {
  .main__aftertalk__detail__text__mds {
    max-width: 520px;
    margin: 0 auto;
    display: block;
  }
}

.main__aftertalk__lead {
  color: #214814;
  display: block;
}

@media (max-width: 768px) {
  .main__aftertalk__lead {
    font-size: 12px;
    font-weight: 600;
    margin-top: 28px;
    text-align: center;
  }
}

.main__aftertalk__flex {
  display: flex;
  justify-content: center;
  gap: 40px;
  margin-top: 56px;
  align-items: center;
}

@media (max-width: 768px) {
  .main__aftertalk__flex {
    flex-flow: column;
    margin-top: 0;
    gap: 15px;
  }
}

.main__aftertalk__flex__img {
  width: 25%;
}

@media (max-width: 768px) {
  .main__aftertalk__flex__img {
    width: 100%;
  }
}

@media (max-width: 768px) {
  .main__aftertalk__flex__text {
    width: 100%;
  }
}

.main__aftertalk__flex__text__item {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0.02em;
}

@media (max-width: 768px) {
  .main__aftertalk__flex__text__item {
    font-size: 12px;
  }
}

.main__aftertalk__flex__text__item__2 {
  margin-top: 50px;
  font-size: 30px;
  text-decoration: underline;
  text-decoration-thickness: 8px;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
  text-underline-offset: -2px;
  -webkit-text-decoration-color: #FBEF2C;
  text-decoration-color: #FBEF2C;
  display: inline-block;
  text-align: left;
  font-weight: bold;
}

@media (max-width: 768px) {
  .main__aftertalk__flex__text__item__2 {
    text-align: center;
    font-size: 20px;
    margin-top: 25px;
  }
}

@media (max-width: 768px) {
  .main__aftertalk__flex__text__item__note {
    margin-top: 5px;
  }
}

.main__aftertalk__contents {
  margin-top: 80px;
  position: relative;
  padding: 75px 50px 50px;
  background-color: white;
  max-width: 980px;
  margin: 80px auto 0px;
}

@media (max-width: 768px) {
  .main__aftertalk__contents {
    margin: 50px auto 0px;
    padding: 55px 15px 30px;
  }
}

.main__aftertalk__contents__mds {
  position: absolute;
  top: -40px;
  left: 50%;
  transform: translateY(0%) translateX(-50%);
}

@media (max-width: 768px) {
  .main__aftertalk__contents__mds {
    top: -6vw;
    width: 85%;
    max-width: 400px;
  }
}

.main__aftertalk__contents__inner {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  justify-content: center;
}

@media (max-width: 768px) {
  .main__aftertalk__contents__inner {
    gap: 5px;
  }
}

.main__aftertalk__contents__img {
  width: 15%;
}

@media (max-width: 768px) {
  .main__aftertalk__contents__img {
    width: 25%;
  }
}

.main__aftertalk__contents__link {
  margin-top: 40px;
  font-size: 26px;
  font-weight: bold;
  color: #9c004d;
  text-decoration: underline;
  display: inline-block;
}

@media (max-width: 768px) {
  .main__aftertalk__contents__link {
    margin-top: 30px;
    font-size: 16px;
  }
}

.main__aftertalk__contents__text {
  text-align: center;
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media (max-width: 768px) {
  .main__aftertalk__contents__text {
    width: 100%;
    margin-top: 0px;
  }
}

.main__aftertalk__contents__text__item {
  margin-top: 15px;
  font-size: 20px;
  line-height: 2;
  margin-bottom: 30px;
  margin-top: 30px;
}

@media (max-width: 768px) {
  .main__aftertalk__contents__text__item {
    margin-top: 10px;
    font-size: 14px;
    line-height: 1.8;
    margin-bottom: 25px;
    margin-left: 0%;
  }
}

.main__aftertalk__contents__text__heading {
  font-size: 38px;
  line-height: 1;
}

@media (max-width: 768px) {
  .main__aftertalk__contents__text__heading {
    font-size: 16px;
    line-height: 1.6;
    text-align: center;
  }
}

.main__aftertalk__contents__text__heading__sub {
  font-size: 24px;
}

@media (max-width: 768px) {
  .main__aftertalk__contents__text__heading__sub {
    font-size: 12px;
    text-align: center;
  }
}

.main__aftertalk__contents__text__heading__big {
  font-size: 56px;
}

@media (max-width: 768px) {
  .main__aftertalk__contents__text__heading__big {
    font-size: 30px;
    text-align: center;
  }
}

.main__aftertalk__contents__text__dl {
  display: flex;
  gap: 20px;
  align-items: flex-start;
}

@media (max-width: 768px) {
  .main__aftertalk__contents__text__dl {
    flex-flow: column;
    gap: 10px;
  }
}

.main__aftertalk__contents__text__dl + .main__aftertalk__contents__text__dl {
  margin-top: 15px;
}

@media (max-width: 768px) {
  .main__aftertalk__contents__text__dl + .main__aftertalk__contents__text__dl {
    margin-top: 15px;
  }
}

.main__aftertalk__contents__text__dl__wrap {
  display: flex;
  justify-content: center;
  word-break: break-all;
}

.main__aftertalk__contents__text__yotei {
  color: #9C004D;
  font-size: 12px;
  line-height: 1;
  margin-top: 5px;
}

@media (max-width: 768px) {
  .main__aftertalk__contents__text__yotei {
    text-align: right;
  }
}

.main__aftertalk__contents__text__dt {
  background-color: #9C004D;
  color: white;
  padding: 3px 10px;
  min-width: 75px;
  text-align: center;
}

@media (max-width: 768px) {
  .main__aftertalk__contents__text__dt {
    width: 100%;
    font-size: 14px;
    padding: 0px 10px;
  }
}

@media (max-width: 768px) {
  .main__aftertalk__contents__text__dt__wrap {
    width: 100%;
  }
}

.main__aftertalk__contents__text__dd {
  line-height: 1.5;
  text-align: left;
}

@media (max-width: 768px) {
  .main__aftertalk__contents__text__dd {
    line-height: 1.6;
  }
}

.main__aftertalk__contents__text__dd th {
  width: 180px;
}

@media (max-width: 768px) {
  .main__aftertalk__contents__text__dd th {
    width: 120px;
  }
}

.main__aftertalk__contents__text__dd a {
  color: #333;
}

.routou__staff {
  margin-bottom: 40px;
  position: absolute;
  top: -105px;
  left: 49%;
  transform: translateY(0%) translateX(-50%);
}

@media (max-width: 768px) {
  .routou__staff {
    position: relative;
    top: 0px;
    margin: 20px auto 10px;
    width: 90%;
    transform: unset;
    left: unset;
  }
}

.dokusen .m-heading {
  color: #214814;
}
.dokusen .m-heading::before {
  background-color: #336B40;
}

ruby[data-ruby] {
  position: relative;
  display: inline-table;
  line-height: 1.3;
}

ruby[data-ruby]::before {
  content: attr(data-ruby);
  position: absolute;
  line-height: 100%;
  text-align: center;
  left: -3em;
  right: -3em;
  transform-origin: bottom center;
  transform: scale(0.5);
  bottom: 105%;
}

ruby[data-ruby] rt {
  display: none;
}

.m-no-wrap {
  white-space: nowrap;
}

.trailer {
  margin-top: 120px;
  position: relative;
  z-index: 1;
}
@media (max-width: 768px) {
  .trailer {
    margin-top: 60px;
  }
}

.trailer__contents {
  line-height: 1;
}

.trailer__contents h3 {
  color: #000000;
  font-size: 40px;
  font-weight: 500;
  line-height: 1.4;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .trailer__contents h3 {
    font-size: 20px;
    margin-bottom: 20px;
  }
}

.trailer__contents iframe {
  aspect-ratio: 16 / 9;
  height: auto;
  width: 100%;
  max-width: 928px;
}
