/* =================================
	NIGEHAJI Top CSS
================================= */
/*	layout
============================== */
@media all and (min-width: 768px) {
  div.bg {
    background-image: -webkit-gradient(linear, left top, right top, from(hsla(0, 0%, 100%, 0.0)), color-stop(0.05, #fff), color-stop(0.95, #fff), to(hsla(0, 0%, 100%, 0.0)));
    background-image: -webkit-linear-gradient(left, hsla(0, 0%, 100%, 0.0), #fff 5%, #fff 95%, hsla(0, 0%, 100%, 0.0));
    background-image: linear-gradient(to right, hsla(0, 0%, 100%, 0.0), #fff 5%, #fff 95%, hsla(0, 0%, 100%, 0.0));
    min-width: 980px;
    padding-bottom: 30px;
  }
}

@media all and (min-width: 768px) and (max-width: 979px) {
  div.bg {
    background-color: #fff;
  }
}

.wrap {
  text-align: left;
}

@media all and (min-width: 768px) {
  .wrap {
    width: 924px;
    margin: 0 auto;
  }

  .col-clef {
    width: 612px;
    float: left;
  }

  .col-rig {
    width: 300px;
    float: right;
  }
}

/*	SNS (button and timeline)
============================== */
/* buttons */
div.col-rig div.sns-btns div.tw {
  float: left;
}

div.col-rig div.sns-btns div.fb {
  float: right;
}

@media all and (min-width: 768px) {

  /* buttons */
  div.col-rig div.sns-btns {
    background-color: #ffe0d6;
    box-sizing: border-box;
    height: 40px;
    padding-top: 10px;
  }

  div.col-rig div.sns-btns div.tw {
    padding-left: 40px;
  }

  div.col-rig div.sns-btns div.fb {
    padding-right: 0;
  }
}

@media all and (max-width: 767px) {

  /* buttons */
  div.col-rig div.sns-btns {
    padding: 12px 0 10px;
  }

  div.col-rig div.sns-btns div.tw {
    padding-left: 12%;
  }

  div.col-rig div.sns-btns div.fb {
    padding-right: 5%;
  }
}

/* timeline */
div.sns-timeline {
  background-color: #ffe0d6;
  background-image: url(../img/cmn_bg_dot_w.png);
  background-repeat: repeat;
}

div.sns-timeline p.btn-tw a {
  display: block;
}

div.sns-timeline div.inner {
  background-color: #fff;
}

@media all and (min-width: 768px) {
  aside.wrap div.col-clef {
    position: relative;
    padding-bottom: 12px;
  }

  div.sns-timeline {
    background-position: left top;
  }

  aside.wrap div.col-clef p.btn-tw a {
    width: 240px;
    height: 302px;
    background-image: url(../img/top_sns.png);
    background-repeat: no-repeat;
    background-position: 0 -100px;
  }

  div.sns-timeline div.inner {
    position: absolute;
    width: 370px;
    height: 298px;
    left: 240px;
    top: 2px;
    oberflow: hidden;
  }
}

@media all and (max-width: 767px) {
  div.sns-timeline {
    background-position: center top;
    padding: 0 0 10px;
  }

  div.sns-timeline p.btn-tw a {
    background-image: url(../img/cmn_rig.png);
    background-repeat: no-repeat;
    background-position: center top;
    height: 42px;
  }

  div.sns-timeline div.inner {
    width: 260px;
    height: 298px;
    margin: 0 auto;
  }
}

/*	sns banners
============================== */
div.sns-bnr ul li {
  /* float:left; */
  width: 430px;
  margin: 0 auto;
}

@media all and (max-width: 767px) {
  div.sns-bnr ul li {
    width: 100%;
  }
}

div.sns-bnr ul li a {
  display: block;
  text-decoration: none;
}

div.sns-bnr ul li.bn-fb a {
  background-color: #d6eaff;
}

div.sns-bnr ul li.bn-line a {
  background-color: #e0eaa4;
}

div.sns-bnr ul li.bn-ig a {
  background-color: #d9d9d9;
}

@media all and (min-width: 768px) {
  div.sns-bnr ul li {
    margin-bottom: 12px;
  }

  div.sns-bnr ul li:not(:last-child) {
    margin-right: 12px;
  }

  div.sns-bnr ul li a {
    background-image: url(../img/top_sns.png);
    background-repeat: no-repeat;
    /* width:300px; */
    width: 456px;
    height: 90px;
    text-indent: 110%;
    white-space: nowrap;
    overflow: hidden;
  }

  div.sns-bnr ul li.bn-fb a {
    background-position: center top;
  }

  div.sns-bnr ul li.bn-line a {
    /* background-position:0 -430px; */
    background-position: 78px -430px;
  }

  div.sns-bnr ul li.bn-ig a {
    background-position: 0 -530px;
  }
}

@media all and (max-width: 767px) {
  div.sns-bnr {
    background-image: url(../img/cmn_brd_bg.jpg);
    border-top: 5px solid #ebd3c0;
    border-bottom: 5px solid #ebd3c0;
    padding: 10px 0;
  }

  div.sns-bnr ul {
    width: 300px;
    margin: 0 auto;
  }

  /* div.sns-bnr ul li:nth-child(1) {
	margin:0 72px 10px;
}
div.sns-bnr ul li:nth-child(2) {
	margin-right:10px;
} */
  div.sns-bnr ul li:nth-child(1) {
    margin-right: 10px;
  }

  div.sns-bnr ul li a:before,
  div.sns-bnr ul li a span {
    display: block;
  }

  div.sns-bnr ul li a {
    /* width:145px; */
    width: 100%;
    font-family: Arial;
    font-weight: bold;
    text-decoration: none;
    padding: 8px 0;
  }

  div.sns-bnr ul li a:before {
    content: "";
    width: 25px;
    height: 25px;
    background-image: url(../img/sns_icons.svg);
    background-size: 100px 25px;
    border-radius: 4px;
    margin: 0 auto 5px;
  }

  div.sns-bnr ul li span {
    text-align: center;
    font-family: Arial;
    font-weight: bold;
    font-size: 120%;
  }

  div.sns-bnr ul li.bn-ig {
    color: #000;
  }

  div.sns-bnr ul li.bn-ig a {
    color: #000;
  }

  div.sns-bnr ul li.bn-fb a {
    color: #3b5998;
  }

  div.sns-bnr ul li.bn-line a {
    color: #00c300;
  }

  div.sns-bnr ul li.bn-fb a:before {
    background-position: left top;
  }

  div.sns-bnr ul li.bn-line a:before {
    background-position: -25px 0;
  }

  div.sns-bnr ul li.bn-ig a:before {
    background-position: -75px 0;
  }
}

/*	whats new
============================== */
section.whats-new {
  overflow: hidden;
  background-color: #ffdcc8;
}

section.whats-new p {
  float: left;
}

section.whats-new p a {
  display: block;
  background-image: url(../img/top_wnew.png);
  text-indent: 110%;
  white-space: nowrap;
  overflow: hidden;
}

section.whats-new div#listScroll {
  overflow: hidden;
}

div#listScroll ul, div#listScroll ul li, div#listScroll ul li a,
div#listScroll dl, div#listScroll dl dt, div#listScroll dl dd {
  display: inline;
  white-space: nowrap;
}

div#listScroll ul li {
  padding-right: 2em;
}

div#listScroll ul li a {
  text-decoration: none;
}

div#listScroll ul li a dl dt {
  padding-right: 1em;
}

@media all and (min-width: 768px) {
  section.whats-new {
    width: 924px;
    height: 50px;
    border-radius: 25px;
    overflow: hidden;
    margin-bottom: 20px;
  }

  section.whats-new p a {
    width: 180px;
    height: 50px;
  }

  section.whats-new div#listScroll {
    height: 50px;
  }

  div#listScroll ul li a:hover dl dd {
    text-decoration: underline;
  }

  div#listScroll ul, div#listScroll ul li a dl dt, div#listScroll ul li a dl dd {
    font-size: 100%;
    line-height: 50px;
  }
}

@media all and (max-width: 767px) {
  section.whats-new {
    padding-right: 5px;
    height: 35px;
  }

  section.whats-new p a {
    background-size: 126px 35px;
    background-position: right center;
    width: 126px;
    height: 35px;
  }

  section.whats-new div#listScroll {
    height: 35px;
  }

  div#listScroll ul, div#listScroll ul li a dl dt, div#listScroll ul li a dl dd {
    font-size: 87.5%;
    line-height: 35px;
  }
}

/*	Trailer
============================== */
/*	one
============================== */
@media all and (min-width: 768px) {
  div.bx-trailer {
    position: relative;
    width: 924px;
    height: 314px;
    margin-bottom: 12px;
  }

  section.mtrailer {
    background-image: url(../img/top_brd_video.jpg?1216);
    height: 314px;
  }

  section.mtrailer iframe {
    top: 59px;
  }

  section.mtrailer:first-child {
    left: 0;
    background-position: center top;
  }

  section.mtrailer:last-child {
    left: 468px;
    background-position: center bottom;
  }
}

@media all and (min-width: 768px) {
  div.menu {
    /* height:890px; */
    height: 384px;
  }

  div.menu ul li.mstory {
    left: 468px;
    top: 0;
  }

  div.menu ul li.mintro {
    left: 234px;
    top: 0;
  }

  div.menu ul li.mnews {
    left: 0;
    top: 0;
  }

  div.menu ul li.mchart {
    left: 468px;
    top: 0;
  }

  div.menu ul li.morig {
    left: 702px;
    top: 0;
  }

  div.menu ul li.mcast {
    right: 0;
    top: 0;
  }

  div.menu ul li.mstaff {
    right: 234px;
    top: 0;
  }

  div.menu ul li.mpres {
    left: 468px;
    top: 188px;
  }

  div.menu ul li.mbbs {
    left: 702px;
    top: 188px;
  }

  div.menu ul li.minter {
    left: 0;
    top: 564px;
  }

  div.menu ul li.mdance {
    left: 468px;
    top: 564px;
  }

  div.menu nav ul li.mintro a span img,
  div.menu nav ul li.mnews a span img {
    width: 222px;
    height: 176px;
  }
}

@media all and (min-width: 768px) {
  section.mtrailer {
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    width: 456px;
    border-radius: 10px;
  }

  section.mtrailer iframe {
    position: absolute;
    left: 10px;
    width: 436px;
    height: 245px;
  }
}

@media all and (max-width: 767px) {
  section.mtrailer {
    padding: 6px 8px 8px;
    margin-bottom: 10px;
    background-image: url(../img/cmn_bg_dot.png);
    background-repeat: repeat;
    border-radius: 6px;
  }

  section.trail-l {
    background-color: #ffd2e1;
  }

  section.trail-r {
    background-color: #ffdcc8;
  }

  section.mtrailer h2 {
    font-size: 87.5%;
    text-align: center;
    line-height: 1.5;
    text-shadow: 1px 1px 0 #fff, -1px 1px 0 #fff, -1px -1px 0 #fff, 1px -1px 0 #fff, 2px 2px 3px hsla(11, 100%, 27%, 0.3);
    margin-bottom: 0.25em;
  }

  section.trail-l h2 {
    color: #b20017;
  }

  section.trail-r h2 {
    color: #7b1700;
  }

  div.player-outer {
    position: relative;
    height: 0;
    padding-top: 56.25%;
  }

  div.player-outer>iframe {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
  }
}

/*	Menu
============================== */
div.menu nav ul li a, div.menu nav ul li b,
div.menu nav ul li a span, div.menu nav ul li b span,
div.menu nav ul li a span img, div.menu nav ul li b span img {
  display: block;
}

@media all and (min-width: 768px) {
  div.menu {
    position: relative;
    /* height:1078px; */
  }

  div.menu nav {
    position: relative;
  }

  div.menu nav ul li {
    position: absolute;
  }

  div.menu nav ul li a,
  div.menu nav ul li b {
    border-radius: 10px;
    overflow: hidden;
  }

  div.menu nav ul li.mstory a span img,
  div.menu nav ul li.minter a span img,
  div.menu nav ul li.mdance a span img, {
    width: 456px;
    height: 176px;
  }

  div.menu nav ul li.mpres a span img, div.menu nav ul li.mpres b span img,
  div.menu nav ul li.mcast a span img,
  div.menu nav ul li.mstaff a span img,
  div.menu nav ul li.mbbs a span img,
  div.menu nav ul li.mchart a span img,
  div.menu nav ul li.morig a span img {
    width: 222px;
    height: 176px;
  }

  div.menu nav ul li.morig a span {
    background-position: left center;
  }

  div.menu nav ul li.mchart a span {
    background-position: left bottom;
  }

  div.menu nav ul li.mcast a span, div.menu nav ul li.mnews a span {
    background-position: left top;
  }

  div.menu nav ul li.mstaff a span, div.menu nav ul li.mintro a span {
    background-position: -222px 0;
  }

  div.menu nav ul li.mbbs a span, div.menu nav ul li.mpres a span {
    background-position: -444px 0;
  }

  li.mrepo,
  li.mblog,
  li.mrepo a,
  li.mblog a,
  li.mrepo span,
  li.mblog span,
  li.mrepo img,
  li.mblog img {
    position: relative;
    background-image: url(../img/top_spmenu.jpg);
    width: 456px !important;
    height: 176px !important;
    border-radius: 10px;
    overflow: hidden;
  }

  li.mrepo span.lazy-done,
  li.mblog span.lazy-done,
  li.mrepo span,
  li.mblog span {
    background-image: none !important;
  }

  li.mrepo {
    background-position: left top;
    margin-right: 12px;
  }

  li.mblog img {
    background-position: bottom;
  }
}

@media all and (max-width: 767px) {
  div.menu {
    background-color: #fff;
    padding: 10px 10px 0;
    /* border-bottom:5px solid #ebd3c0; */
  }

  ul.mthree li {
    width: 33.33333%;
    float: left;
    margin-bottom: 6px;
  }

  ul.mthree li a>span,
  ul.mthree li b>span {
    position: relative;
    height: 0;
    padding-top: 79.279279%;
    background-size: 300% 100%;
    /**/
    border-radius: 6px;
    overflow: hidden;
  }

  ul.mthree li a>span img,
  ul.mthree li b>span img {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
  }

  ul.mthree li:nth-child(3n-2) a {
    margin-right: 4px;
  }

  ul.mthree li:nth-child(3n-1) a {
    margin-left: 2px;
    margin-right: 2px;
  }

  ul.mthree li:nth-child(3n) a,
  ul.mthree li:nth-child(3n) b {
    margin-left: 4px;
  }

  ul.mthree li:nth-child(3n-2) a span {
    background-position: left top;
  }

  ul.mthree li:nth-child(3n-1) a span {
    background-position: center top;
  }

  ul.mthree li:nth-child(3n) a span,
  ul.mthree li:nth-child(3n) b span {
    background-position: right top;
  }
}

@media all and (max-width: 767px) {
  ul.mwide li {
    margin-bottom: 6px;
  }

  ul.mwide li a span {
    position: relative;
    height: 0;
    padding-top: 38.596491%;
    background-size: cover;
    /**/
    border-radius: 6px;
    overflow: hidden;
  }

  ul.mwide li a span img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
  }

  li.mstory a span {
    background-position: left top;
  }

  li.mchart a span {
    background-position: left bottom;
    background-size: 200%;
  }

  li.morig a span {
    background-position: right top;
    background-size: 200%;
  }

  li.mrepo a span {
    background-position: left top;
    background-size: 200%;
  }

  li.mblog a span {
    background-position: right top;
    background-size: 200%;
  }
}

/*	SP Menu
============================== */
nav.spmenu ul li {
  float: left;
}

nav.spmenu ul li a {
  text-decoration: none;
}

nav.spmenu ul li a,
nav.spmenu ul li a>span,
nav.spmenu ul li a>b {
  display: block;
}

nav.spmenu ul li a>span {
  text-indent: 110%;
  white-space: nowrap;
  overflow: hidden;
}

@media all and (min-width: 768px) {
  nav.spmenu ul {
    margin-bottom: 20px;
  }

  nav.spmenu ul li a {
    position: relative;
    background-image: url(../img/top_spmenu.jpg);
    width: 456px;
    height: 176px;
    border-radius: 10px;
    overflow: hidden;
  }

  nav.spmenu ul li a>b {
    position: absolute;
    color: #000;
    text-shadow: 1px 1px 0 #fff, -1px 1px 0 #fff, -1px -1px 0 #fff, 1px -1px 0 #fff, 2px 2px 3px hsla(11, 100%, 27%, 0.3);
  }

  nav.spmenu ul li:first-child a>b {
    right: 25px;
    bottom: 10px;
  }

  nav.spmenu ul li:last-child a>b {
    right: 65px;
    bottom: 40px;
  }

  nav.spmenu ul li:first-child {
    margin-right: 12px;
  }

  nav.spmenu ul li:first-child a {
    background-position: left top;
  }

  nav.spmenu ul li:last-child a {
    background-position: left bottom;
  }
}

@media all and (max-width: 767px) {
  nav.spmenu ul li {
    float: left;
    width: 300px;
    background-image: url(../img/cmn_spmenu.jpg);
    background-repeat: no-repeat;
  }

  nav.spmenu ul li.mrepo {
    background-position: left top;
  }

  nav.spmenu ul li.mblog {
    background-position: -300px 0;
  }

  nav.spmenu ul li a>span {
    height: 60px;
    margin-bottom: 3px;
  }

  nav.spmenu {
    /* background-image:url(../img/cmn_bg_brown.jpg);
	background-position:center top; */
    padding: 10px 0;
  }

  nav.spmenu ul {
    width: 300px;
    margin: 0 auto;
  }

  nav.spmenu ul li:not(:last-child) {
    margin-bottom: 10px;
  }

  nav.spmenu ul li a>b {
    text-align: center;
    /* color:#fff; */
    line-height: 1.25;
    font-size: 75%;
  }
}

/*	BN Yokohama
============================== */
div.bn-yokohama {
  position: relative;
  overflow: hidden;
}

div.bn-yokohama p a,
div.bn-yokohama p a img {
  display: block;
}

div.bn-yokohama p a {
  background-repeat: no-repeat;
  background-position: center top;
  overflow: hidden;
}

@media all and (min-width: 768px) {
  div.bn-yokohama {
    margin-bottom: 20px;
  }

  div.bn-yokohama p,
  div.bn-yokohama p a img {
    width: 924px;
    height: 176px;
  }

  div.bn-yokohama p a {
    border-radius: 10px;
  }
}

@media all and (max-width: 767px) {
  div.bn-yokohama {
    background-color: #fff;
    padding: 10px 10px 0;
  }

  div.bn-yokohama p a {
    background-size: cover;
    position: relative;
    height: 0;
    padding-top: 25.7971%;
    padding-top: 26.9%;
    /**/
    border-radius: 6px;
  }

  div.bn-yokohama p a img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
  }
}

/*	banners
============================== */
div.bnrs {}

div.bnrs ul li {
  float: left;
}

div.bnrs ul li a span {
  background-repeat: no-repeat;
  background-size: cover;
}

div.bnrs ul li.mtbsfree a span {
  background-position: center top;
}

div.bnrs ul li.mondemand a span {
  background-position: center bottom;
}

div.bnrs ul li a, div.bnrs ul li a img {
  display: block;
}

@media all and (min-width: 768px) {
  div.bnrs ul li {
    margin-bottom: 12px;
  }

  div.bnrs ul li:nth-child(odd) {
    margin-right: 12px;
  }

  div.bnrs ul li a img {
    width: 456px;
    height: 176px;
  }
}

@media all and (max-width: 767px) {
  div.bnrs {
    width: 300px;
    margin: 0 auto;
    padding: 10px 0 5px;
  }

  div.bnrs ul li {
    border: 2px solid hsla(0, 0%, 100%, 0.7);
    margin-bottom: 5px;
  }

  div.bnrs ul li a img {
    width: 296px;
    height: 114px;
  }
}

/*	Menu Under
============================== */
div.menu-under {}

div.menu-under ul li {
  float: left;
}

div.menu-under ul li a, div.menu-under ul li a span, div.menu-under ul li a span img,
div.menu-under ul li b, div.menu-under ul li b span, div.menu-under ul li b span img {
  display: block;
}

div.menu-under ul li.minter a span {
  background-position: left top;
}

div.menu-under ul li.mgallery a span {
  background-position: right top;
}

div.menu-under ul li.mclean a span {
  background-position: left top;
}

div.menu-under ul li.mkitchen a span {
  background-position: center top;
}

div.menu-under ul li.mprvrb b span {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

div.menu-under ul li.mwife a span,
div.menu-under ul li.mwife b span {
  background-position: right top;
}

@media all and (min-width: 768px) {
  div.menu-under {
    padding-bottom: 8px;
    position: relative;
  }

  div.menu-under li>a, div.menu-under li>b {
    margin-bottom: 12px;
  }

  div.menu-under li:nth-child(3n-2)>a {
    /* margin-right:12px; */
  }

  div.menu-under li.minter>a,
  div.menu-under li.mgallery>a,
  div.menu-under li.mkitchen>a,
  div.menu-under li.mprvrb>b {
    margin-right: 12px;
  }

  div.menu-under li a>span,
  div.menu-under li b>span {
    border-radius: 10px;
    overflow: hidden;
  }

  div.menu-under li a,
  div.menu-under li b,
  div.menu-under li a>span,
  div.menu-under li b>span,
  div.menu-under li a>span img,
  div.menu-under li b>span img {
    width: 300px;
    height: 238px;
  }

  li.morig,
  li.mchart,
  li.morig a,
  li.mchart a,
  li.morig a>span,
  li.mchart a>span,
  li.morig a>span img,
  li.mchart a>span img {
    width: 222px !important;
    height: 176px !important;
    display: block;
    background-size: 200%;
    margin: 0 !important;
  }

  li.morig,
  li.mchart {
    position: absolute;
    top: -195px;
    left: 0;
    float: none !important;
  }

  li.morig, li.morig a, li.morig a>span img {
    left: 234px;
  }
	li.morig span {
		background-position: right top;
	}
  li.minter,
  li.mgallery,
  li.mclean {
    margin-top: 12px;
  }
}

@media all and (max-width: 767px) {
  div.menu-under {
    padding: 0 10px 4px;
    /* border-top:5px solid #ebd3c0; */
    border-bottom: 5px solid #ebd3c0;
    background-color: #fff;
  }

  div.menu-under ul li {
    width: 50%;
    margin-bottom: 6px;
  }

  div.menu-under li a>span,
  div.menu-under li b>span {
    position: relative;
    height: 0;
    padding-top: 79.279279%;
    /**/
    border-radius: 6px;
    overflow: hidden;
  }

  div.menu-under li.minter a>span,
  div.menu-under li.mgallery a>span {
    background-size: 200% 100%;
  }

  div.menu-under li.mclean a>span,
  div.menu-under li.mkitchen a>span,
  div.menu-under li.mwife b>span,
  div.menu-under li.mwife a>span {
    background-size: 300% 100%;
  }

  div.menu-under li a>span img,
  div.menu-under li b>span img {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
  }

  div.menu-under li:nth-child(odd) a,
  div.menu-under li.mprvrb b {
    margin-right: 3px;
  }

  div.menu-under li:nth-child(even) a,
  div.menu-under li.mwife b,
  div.menu-under li.mwife a {
    margin-left: 3px;
  }
}

/*	Instagram
============================== */
div.insta {
  background-color: #ead6e0;
  background-image: url(../img/cmn_bg_dot_w.png);
  background-repeat: repeat;
}

div.insta p a, div.insta p a span,
div.insta ul li a, div.insta ul li a span, div.insta ul li a span img {
  display: block;
}

div.insta ul li {
  float: left;
}

div.insta ul li a span {
  background-repeat: no-repeat;
  background-size: cover;
}

@media all and (min-width: 768px) {
  div.insta {
    padding: 15px 0 15px;
    margin-bottom: 12px;
  }

  div.insta p {
    float: left;
  }

  div.insta p a {
    background-image: url(../img/top_bg_insta.png);
    background-repeat: no-repeat;
    background-position: 0 -15px;
  }

  div.insta p a span {
    width: 289px;
    height: 146px;
    text-indent: 110%;
    white-space: nowrap;
    overflow: hidden;
  }

  div.insta ul li:not(:last-child) {
    margin-right: 12px;
  }

  div.insta ul li a span img {
    width: 146px;
    height: 146px;
  }
}

@media all and (max-width: 767px) {
  div.insta {
    border-top: 5px solid #ebd3c0;
    padding: 10px 0;
  }

  div.insta p a:before {
    display: block;
  }

  div.insta p a {
    width: 300px;
    font-family: Arial;
    font-weight: bold;
    text-decoration: none;
    padding: 0 0 10px;
    margin: 0 auto;
  }

  div.insta p a:before {
    content: "";
    width: 25px;
    height: 25px;
    background-image: url(../img/sns_icons.svg);
    background-position: -75px 0;
    background-size: 100px 25px;
    border-radius: 4px;
    margin: 0 auto 5px;
  }

  div.insta p a span {
    color: #000;
    text-align: center;
    font-family: Arial;
    font-weight: bold;
    font-size: 120%;
  }

  div.insta ul {
    width: 300px;
    margin: 0 auto;
  }

  div.insta ul li:not(:last-child) {
    margin-right: 4px;
  }

  div.insta ul li a span img {
    width: 72px;
    height: 72px;
  }
}

/*	BN LONG
============================== */
div.bn-long {
  position: relative;
  overflow: hidden;
}

div.bn-long p a,
div.bn-long p a img {
  display: block;
}

div.bn-long p a {
  background-repeat: no-repeat;
  background-position: center top;
  overflow: hidden;
}

@media all and (min-width: 768px) {
  div.bl-over {
    margin-bottom: 20px;
  }

  div.bl-under {
    margin-bottom: 10px;
  }

  div.bn-long p,
  div.bn-long p a img {
    width: 924px;
    height: 176px;
  }

  div.bn-long p a {
    border-radius: 10px;
  }
}

@media all and (max-width: 767px) {
  div.bl-over {
    background-color: #fff;
    padding: 10px 10px 1px;
  }

  div.bl-under {
    margin-bottom: 10px;
  }

  div.bn-long p a {
    background-size: cover;
    position: relative;
    height: 0;
    padding-top: 25.7971%;
    padding-top: 26.9%;
    /**/
    border-radius: 6px;
  }

  div.bn-long p a img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
  }
}

/*	BN sp2020
============================== */
div.bn-sp2020 {
  position: relative;
  overflow: hidden;
}

div.bn-sp2020 p a,
div.bn-sp2020 p a img {
  display: block;
}

div.bn-sp2020 p a {
  background-repeat: no-repeat;
  background-position: center top;
  overflow: hidden;
}

@media all and (min-width: 768px) {
  div.bl-over {
    margin-bottom: 20px;
  }

  div.bl-under {
    margin-bottom: 10px;
  }

  div.bn-sp2020 p,
  div.bn-sp2020 p a img,
  div.bn-2021sp_dvd p,
  div.bn-2021sp_dvd p a img {
    width: 924px;
    height: 176px;
  }
  div.bn-sp2020 p a,
  div.bn-2021sp_dvd p a {
    border-radius: 10px;
  }

}

@media all and (max-width: 767px) {
  div.bl-over {
    background-color: #fff;
    padding: 10px 10px 1px;
  }

  div.bl-under {
    margin-bottom: 10px;
  }

  div.bn-sp2020 p a,
  div.bn-2021sp_dvd p a {
    background-size: cover;
    position: relative;
    height: 0;
    padding-top: 19.047619047619%;
    border-radius: 6px;
    margin-bottom: 10px;
  }

  div.bn-sp2020 p a img,
  div.bn-2021sp_dvd p a img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
  }
}

/*	story
============================== */
.story h2 span {
  display: block;
  background-image: url(../img/top_trailer_wide_ttl.jpg);
  overflow: hidden;
  white-space: nowrap;
  text-indent: 110%;
}

@media all and (min-width: 768px) {
  .story h2 span {
    width: 456px;
    height: 72px;
    margin-bottom: 5px;
  }
}

@media all and (max-width: 767px) {
  .story h2 span {
    position: relative;
    height: 0;
    padding-top: 15.789473684210526%;
    background-size: cover;
    border-radius: 6px;
    overflow: hidden;
  }

  .story h2 span img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
  }
}

.story .btn {
  width: max-content;
  margin: 0;
  display: inline-block;
}

.story .btn span {
  padding: 0 1.5em 0 3em;
}

.story {
  background-color: #ffccdf;
  background-image: url(../img/top_trailer_bg.jpg);
  background-size: 456px 72px;
  border-radius: 2%;
}

.trailer {
  margin: 0 auto 3%;
}

.story .oa {
  text-align: center;
  /* color: #fff; */
  margin-bottom: 2em;
  font-family: urw-din, source-han-sans-japanese, sans-serif;
  font-weight: 900;
  font-style: normal;
  letter-spacing: 0.25em;
}

.story .ntxt {
  font-weight: 400;
  line-height: 1.5;
  margin-bottom: 1em;
  overflow: hidden;
}

.ntxt span {
  /* display: -webkit-box; */
  /* -webkit-box-orient: vertical; */
}

.story p.npic .lazy-done {
  -webkit-animation: fadeInUp 500ms;
  animation: fadeInUp 500ms;
}

.story p.nbtn a.lazy-done {
  -webkit-animation: bounceInRight 1100ms;
  animation: bounceInRight 1100ms;
  border-radius: 135px;
}

@media all and (min-width: 768px) {
  .ntxt span {
    -webkit-line-clamp: 7;
  }

  .story {
    padding-bottom: 4em;
    padding: 10px 10px 30px;
    text-align: center;
    margin-bottom: 20px;
  }

  .story .oa .ep {
    font-size: 50px;
    /* color: #f9e401; */
  }

  .story .oa .date {
    font-size: 50px;
  }

  .story .oa .time {
    font-size: 43px;
    font-family: source-han-sans-japanese, sans-serif;
    font-weight: 900;
    font-style: normal;
    display: inline-block;
    vertical-align: 2px;
  }

  .story .ntxt {
    /* color: #fff; */
    width: 312;
    height: 205px;
    /* float: left; */
    font-size: 18px;
    /* letter-spacing: 0.1em; */
    text-align: justify;
    line-height: 30px;
    overflow: hidden;
  }

  .story span.npic {
    display: block;
    width: 450px;
    height: 300px;
    float: left;
    white-space: nowrap;
    text-indent: 110%;
    overflow: hidden;
    margin-right: 38px;
    position: relative;
    background-size: cover;
  }

  .story a.nbtn {
    position: absolute;
    display: block;
    width: 314px;
    height: 60px;
    background-size: cover;
    float: left;
    white-space: nowrap;
    text-indent: 110%;
    overflow: hidden;
    bottom: 0;
    right: 0;
  }

  .story .ncont {
    width: 800px;
    margin: 0 auto;
    position: relative;
  }
}

@media all and (max-width: 767px) {
  .ntxt span {
    -webkit-line-clamp: 6;
  }

  .story {
    padding: 3% 2.5%;
    text-align: center;
  }

  .story .oa {
    margin-bottom: 3%;
    font-size: 7.2vw;
    letter-spacing: 0.1em;
    border-top: 0.5em solid #fff;
    border-bottom: 0.5em solid #fff;
    padding: 0.2em 0 0.33em;
  }

  .story .ntxt {
    /* color: #fff; */
    text-align: justify;
    height: 8.5em;
    overflow: hidden;
    font-size: 3.5vw;
    font-weight: bold;
  }

  .story span.npic {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-indent: 110%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100%;
    position: relative;
    float: left;
    width: 47%;
    height: 0;
    margin-right: 2%;
    padding-top: 32.000000000000016%;
  }

  .story span.npic span {
    display: block;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
  }

  .story a.nbtn {
    display: block;
    width: 100%;
    height: 60px;
    background-position: center right;
    background-size: cover;
    white-space: nowrap;
    text-indent: 110%;
    overflow: hidden;
  }
}

.trailer {
  margin: 0 auto 3%;
}

@media all and (max-width: 767px) {
  .trailer {
    white-space: nowrap;
    overflow: hidden;
    text-indent: 110%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100%;
    position: relative;
    height: 0;
    padding-top: 56.25%;
    %;
  }

  .trailer iframe {
    display: block;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
  }
}

@media all and (min-width: 768px) {

  .trailer,
  .trailer iframe {
    width: 700px;
    height: 394px;
    box-shadow: 10px 10px 0px 0px #fffaea;
    /* margin-bottom: 65px; */
  }

  .story .trailer,
  .story .trailer iframe {
    width: 800px;
    height: 450px;
  }
}

.story .oa {
  text-align: center;
  color: #fffaea;
  margin-bottom: 2em;
  font-family: urw-din, source-han-sans-japanese, sans-serif;
  font-weight: 900;
  font-style: normal;
  letter-spacing: 0.25em;
  text-shadow: 2px 1px 2px rgba(224, 11, 66, 0.1);
}

/*	wnew
============================== */
section.wnew {
  position: relative;
  text-align: left;
}

section.wnew h2 {
  position: relative;
  color: #fff;
  background-color: #e50065;
  height: 32px;
  line-height: 32px;
  padding-left: 44px;
  cursor: pointer;
}

section.wnew h2::before,
section.wnew h2::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  background-repeat: no-repeat;
  background-position: 0 0;
}

section.wnew h2::before {
  left: 9px;
  width: 32px;
  height: 32px;
  background-image: url(../img/top_wnew_icon.png);
  background-size: 32px;
}

section.wnew h2::after {
  right: 0;
  width: 48px;
  height: 32px;
  /* background-color:#000; */
  background-image: url(../img/arrow_wnew.svg);
  background-position: 8px 0;
  background-size: 32px 64px;
}

section.wnew h2.wnew-open::after {
  background-position: 8px -32px;
}

section.wnew h2.wnew-close::after {
  background-position: 8px 0;
}

section.wnew ul.wnew-ul {
  -webkit-transition-duration: 300ms;
  -webkit-transition-timing-function: ease-in-out;
  -webkit-transition-property: height;
  transition-duration: 300ms;
  transition-timing-function: ease-in-out;
  transition-property: height;
}

section.wnew ul li a {
  display: block;
  text-decoration: none;
  line-height: 1.5;
  padding: 5px 12px;
}

section.wnew ul li:nth-child(odd) a {
  background-color: hsla(0, 0%, 100%, 0.75);
}

section.wnew ul li:nth-child(even) a {
  background-color: hsla(0, 0%, 100%, 0.5);
}

section.wnew ul li:not(:last-child) {
  border-bottom: 1px solid #ccc;
}

@media all and (min-width: 768px) {
  section.wnew ul li a {
    font-size: 87.5%;
  }
}

@media all and (max-width: 767px) {
  section.wnew ul li a {
    font-size: 83%;
  }
}
