/*	article top line
============================== */
@media all and (min-width: 768px) {
  .bg_pink, .bg_blue, .bg_pink2 {
    padding-top: 13px;
  }

  .bg_pink>.inner {
    border-top: solid hsla(348, 78%, 80%, 0.7) 20px;
  }

  .bg_pink2>.inner {
    border-top: solid hsla(0, 0%, 100%, 0.6) 20px;
  }

  .bg_blue>.inner {
    border-top: solid hsla(0, 0%, 100%, 0.6) 20px;
    z-index: 1;
    position: relative;
  }
}

/*	poster slide
============================== */
@media all and (min-width: 768px) {
  .poster_slide {
    width: 980px;
    margin: 0 auto;
  }

  .btn {
    width: 540px;
  }
}

.rslides {
  position: relative;
  list-style: none;
  overflow: hidden;
  padding: 0;
  z-index: 1;
}

.rslides li {
  -webkit-backface-visibility: hidden;
  position: absolute;
  display: none;
  left: 0;
  top: 0;
}

.rslides li:first-child {
  position: relative;
  display: block;
  float: left;
}

.rslides span {
  display: block;
  height: 480px;
}

.rslides span,
.rslides span img {
  display: block;
  /* height: auto; */
  float: left;
  border: 0;
}

.rslides span {
  width: 980px;
  height: 693px;
  margin: 0 auto;
  overflow: hidden;
  text-indent: 110%;
  white-space: nowrap;
  position: relative;
  background-size: 100%;
  background-repeat: no-repeat;
}

.rslides,
.rslides li,
.rslides span,
.rslides span img {
  /* width: 100%; */
}

.rslides span {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-indent: 110%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  position: relative;
  height: 0;
  padding-top: calc((693 / 980)*100%);
  /* margin-bottom: 1.5vw; */
}

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

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

  .rslides,
  .rslides li,
  .rslides span,
  .rslides span img {
    width: 100%;
  }

  .rslides span {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-indent: 110%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100%;
    position: relative;
    height: 0;
    padding-top: calc((693 / 980)*100%);
    /* margin-bottom: 1.5vw; */
  }

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

/*	top story & topics & wnew & sns
============================== */
.t_story, .t_wnew {
  /* background-image: url(../img/bg_beige.jpg); */
  /* background-size: 7%; */
  /* padding-bottom: 1em; */
}

@media all and (min-width: 768px) {
  .t_story {
    background: -webkit-linear-gradient(100deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 50%, rgba(255, 255, 255, 0) 70%, rgba(255, 255, 255, 0) 100%);
    background: -o-linear-gradient(100deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 50%, rgba(255, 255, 255, 0) 70%, rgba(255, 255, 255, 0) 100%);
    background: -ms-linear-gradient(100deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 50%, rgba(255, 255, 255, 0) 70%, rgba(255, 255, 255, 0) 100%);
    background: -moz-linear-gradient(100deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 50%, rgba(255, 255, 255, 0) 70%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(340deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 50%, rgba(255, 255, 255, 0) 70%, rgba(255, 255, 255, 0) 100%);
  }

  .s_left {
    width: 510px;
    padding: 4em 0 2em;
  }

  .t_story::before, .t_story::after, .t_wnew::before, .t_wnew::after, .footer::before, .footer::after {
    content: "";
    display: block;
    background-image: url(../img/petal.png);
    width: 980px;
    height: 478px;
    background-size: 85%;
    left: 50%;
    position: absolute;
    background-repeat: no-repeat;
  }

  .t_story::before,
  .t_wnew::before {
    margin-left: -200px;
  }

  .t_story::after,
  .t_wnew::after,
  .footer::after {
    position: relative;
    margin-top: -478px;
    margin-left: -890px;
    z-index: 0;
  }

  .t_story::after {
    bottom: 410px;
  }

  .t_wnew::after {
    bottom: 0;
  }

  .footer::after {
    bottom: 20px;
  }
}

.t_topics {
  /* background-image: url(../img/bg_pink.png); */
  /* background-position: center; */
  /* background-size: 100%; */
  /* padding-top: 20px; */
}

.footer {
  /* background-color: #ededed; */
  /* background-image: url(../img/bg_pic.jpg); */
  /* background-size: 100%; */
  /* background-position: bottom; */
  /* background-repeat: no-repeat; */
}

.t_story .txt {
  margin: 0 auto;
  color: #434343;
  font-weight: bold;
}

.t_wnew .txt {
  letter-spacing: 0.1em;
}

@media all and (min-width: 768px) {
  .t_story h2 {
    background-image: url(../img/story.png?10);
  }

  .t_topics h2 {
    background-image: url(../img/topics.png);
  }

  .t_wnew h2 {
    background-image: url(../img/wnew.png);
  }

  .footer h2 {
    background-image: url(../img/sns.png);
  }

  .t_story2 .txt {
    width: 505px;
    padding: 65px 25px 0;
    font-size: 22.5px;
    letter-spacing: 0.1em;
    color: #000;
  }

  .t_story2 .btn {
    width: 350px;
    height: 70px;
  }

  .t_story2 .btn a span {
    font-size: normal;
    font-size: 23px;
    letter-spacing: 0.2em;
  }

  .t_wnew {
    /* margin-top: -1em; */
    padding-bottom: 1em;
  }

  .t_story h2 {
    /* width: 830px; */
    background-position: center;
    height: 234px;
    margin: 0 auto;
    z-index: 1;
    position: relative;
  }

  .t_topics h2 {
    width: 830px;
    background-position: center;
    height: 150px;
    margin: 0 auto;
  }

  .t_wnew h2 {
    width: 830px;
    background-position: center;
    height: 180px;
    margin: 0 auto;
  }

  .footer h2 {
    width: 830px;
    background-position: center;
    height: 180px;
    margin: 0 auto;
  }

  .t_story .txt {
    width: 770px;
    font-size: 22px;
    letter-spacing: 0.05em;
    margin: 0 auto 25px;
  }

  .t_story .more a {
    width: 440px;
    height: 70px;
    margin: 0 auto;
  }

  .t_story .more a span {
    line-height: 70px;
    letter-spacing: 0.2em;
    margin: 0 auto;
    font-size: 25px;
    font-weight: 400;
  }
}

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

  /*	top story & topics & wnew & sns
  ============================== */
  .Text {
    margin-top 20px;
    /*ãªãã¦ã‚‚OK*/
    position: relative;
    /* border: 1px solid #e2264d; */
    width: 120px;
    height: 48px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #e2264d;
    font-size: 20px;
  }

  .Text:before,
  .Text:after {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    height: 1px;
    background: #fff;
  }

  .Text:before {
    width: 60px;
    transform: translate(30px, 0px);
  }

  .Text:after {
    width: 15px;
    transform-origin: right center;
    transform: translate(30px, 0px) rotate(25deg);
  }

  .t_story {
    background: rgba(255, 255, 255, 0);
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 12%, rgba(255, 255, 255, 1) 33%, rgba(255, 255, 255, 1) 58%, rgba(255, 255, 255, 1) 67%, rgba(255, 255, 255, 0) 90%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(12%, rgba(255, 255, 255, 0)), color-stop(33%, rgba(255, 255, 255, 1)), color-stop(58%, rgba(255, 255, 255, 1)), color-stop(67%, rgba(255, 255, 255, 1)), color-stop(90%, rgba(255, 255, 255, 0)), color-stop(100%, rgba(255, 255, 255, 0)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 12%, rgba(255, 255, 255, 1) 33%, rgba(255, 255, 255, 1) 58%, rgba(255, 255, 255, 1) 67%, rgba(255, 255, 255, 0) 90%, rgba(255, 255, 255, 0) 100%);
    background: -o-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 12%, rgba(255, 255, 255, 1) 33%, rgba(255, 255, 255, 1) 58%, rgba(255, 255, 255, 1) 67%, rgba(255, 255, 255, 0) 90%, rgba(255, 255, 255, 0) 100%);
    background: -ms-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 12%, rgba(255, 255, 255, 1) 33%, rgba(255, 255, 255, 1) 58%, rgba(255, 255, 255, 1) 67%, rgba(255, 255, 255, 0) 90%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 12%, rgba(255, 255, 255, 1) 33%, rgba(255, 255, 255, 1) 58%, rgba(255, 255, 255, 1) 67%, rgba(255, 255, 255, 0) 90%, rgba(255, 255, 255, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#ffffff', GradientType=0);
  }

  .t_story h2 {
    background-image: url(../img/story_s.png?10);
  }

  .t_topics h2 {
    background-image: url(../img/topics_s.png);
  }

  .t_wnew h2 {
    background-image: url(../img/wnew_s.png);
  }

  .footer h2 {
    background-image: url(../img/sns_s.png);
  }

  .t_story2 {
    margin-top: -13vw;
    padding-top: 9vw;
    padding-bottom: 1.5em;
    filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.2));
  }

  .t_story2 .txt {
    padding: 1em 1em 0.5em;
  }

  .t_story {
    padding-bottom: 2em;
  }

  .t_topics {
    /* padding: 0.5em 0em 2em; */
  }

  .t_wnew {
    padding: 0 0 1em;
  }

  .t_story h2 {
    padding-top: calc((200 / 751)*100%);
  }

  .t_topics h2, .t_wnew h2, .footer h2 {
    padding-top: calc((174 / 750)*100%);
  }

  .t_story h2, .t_topics h2, .t_wnew h2, .footer h2 {
    position: relative;
    height: 0;
    background-position: center;
  }

  .t_story h2 span,
  .t_topics h2 span,
  .t_wnew h2 span,
  .footer h2 span {
    position: absolute;
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
  }

  .t_story .txt {
    width: 90%;
    /* letter-spacing: 0.02em; */
  }

  .t_story .more a {
    height: auto;
    width: 70%;
    margin: 0 auto;
    overflow: inherit;
  }

  .t_story .more a>span {
    padding: 0.4em 0;
    font-size: 110%;
    letter-spacing: 0.15em;
    line-height: normal;
    font-weight: 400;
  }
}

/*	sns
============================== */
#sns {
  /* background-color: hsla(0, 0%, 100%, 0.35); */
}

.tw-inner {
  background-color: #fff;
}

#sns h2 {
  background-image: url(../img/sns.png);
  background-position: center;
}

@media all and (min-width: 768px) {
  #sns {
    width: 350px;
    height: 400px;
    margin: 0 20px 0 0;
    float: left;
  }

  #sns h2 {
    width: 105px;
    height: 50px;
    /* margin: 0 auto; */
  }

  .tw-inner {
    /* margin: 0 10px 15px; */
    height: 340px;
  }
}

@media all and (max-width: 767px) {
  #sns {
    padding: 0 4%;
    margin: 0 4% 4%;
  }

  #sns h2 {
    width: 40%;
    position: relative;
    height: 0;
    padding-top: 15.286624203821656%;
    margin: 2% auto 1%;
  }

  #sns h2 span {
    position: absolute;
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
  }
}

/*	sns_btn
============================== */
#sns_btn h2 {
  margin: 0px auto 15px;
}

#sns_btn ul.sns_btn {
  /* display: flex; */
  /* justify-content: center; */
}

#sns_btn ul.sns_btn li.tw {
  background-image: url(../img/sns_btn_tw.png);
}

#sns_btn li.ig {
  background-image: url(../img/sns_btn_ig.png);
  /* background-size: 80%; */
  background-position: center;
}

#sns_btn li.ig2 {}

#sns_btn li.ig_rakuten {}

@media all and (min-width: 768px) {
  .t_sns .wrap {
    width: 980px;
    /* padding-top: 50px; */
    /* padding-bottom: 50px; */
  }

  #sns_btn {
    width: 270px;
  }

  #sns_btn h2 {
    width: 208px;
    height: 28px;
  }

  #sns_btn ul.sns_btn {
    margin: 0 auto;
  }

  #sns_btn ul.sns_btn li {
    width: 225px;
    height: 43.5px;
    margin: 0 auto 16px;
  }

  #sns_btn ul.sns_banner li {
    width: 300px;
    height: 50px;
    margin: 0 auto 0.5em;
  }

  #sns_btn li a {
    display: block;
    width: 100%;
    height: 100%;
  }

  .footer {
    margin-bottom: -1em;
  }
}

@media all and (max-width: 767px) {
  #sns_btn {
    padding: 0;
  }

  #sns_btn h2 {
    width: 50%;
    position: relative;
    height: 0;
    padding-top: 6.730769230769231%;
    margin: 2% auto 1%;
  }

  #sns_btn h2 span {
    position: absolute;
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
  }

  #sns_btn ul.sns_btn li {
    width: 60%;
    position: relative;
    height: 0;
    padding-top: calc((87 / 450)*60%);
    margin: 0 auto 1em;
  }

  #sns_btn ul.sns_banner {
    padding: 0 2% 2%;
  }

  #sns_btn ul.sns_banner li {
    width: 100%;
    position: relative;
    height: 0;
    padding-top: 16.666666666666667%;
    margin-bottom: 2%;
  }

  #sns_btn ul li a {
    position: absolute;
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
  }

  .footer {
    /* background-size: 340vw; */
    /* margin-bottom: 57px; */
    /* background-position: -50vw 130vw; */
    /* margin-top: -1em; */
  }

  .links {
    /* color: #fff; */
  }
}

/*	recta
============================== */
.recta {
  width: 300px;
  margin: 0 auto;
}

/*	instagram
============================== */
.ig-outer {
  padding: calc((4 / 340)*100%);
  box-sizing: border-box;
  background-color: #fff;
}

div.insta ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

div.insta ul::after {
  content: "";
  display: block;
  width: 30%;
}

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

div.insta ul li a, div.insta ul li a img {
  background-position: center center;
  background-repeat: no-repeat;
}

div.insta ul li a {
  background-size: cover;
  position: relative;
  height: 0;
  padding-top: 100%;
}

div.insta ul li a:hover img {
  background-color: hsla(216, 82%, 13%, 0.25);
}

div.insta ul li a img {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #ccc;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

div.insta ul li a img.icon-video {
  background-image: url(/um/img/play.png);
}

div.insta ul li {
  width: calc((102 / 320)*100%);
}

div.insta ul li:nth-child(-n+4) {
  margin-bottom: calc((7 / 320)*100%);
}

@media all and (min-width: 768px) {
  .ig-outer {
    width: 340px;
    height: 340px;
    float: left;
    /* margin-top: 50px; */
  }
}

@media all and (max-width: 767px) {
  .ig-outer {
    /* padding: 0 4% 4%; */
    /* margin: 4%; */
    width: 84%;
    margin: 0 auto 7%;
    padding: calc((9 / 340)*100%);
  }
}

/*	bn_l
============================== */
.bn_s {
  background-color: beige;
  background-size: 7%;
}

.bn_l ul,
.bn_s ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.bn_l li a span,
.bn_s li a span {
  background-size: 100%;
  width: 100%;
  height: 100%;
}

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

  .bn_l,
  .bn_s {
    /* padding: 40px 0 25px; */
    position: relative;
  }

  .hakusyo_btn {
    padding: 10px 0;
    position: relative;
  }

  .bn_l ul,
  .bn_s ul {
    justify-content: center;
    width: 980px;
    padding: 0;
  }

  .bn_l li a>span {
    width: 400px;
    height: 150px;
    margin: 0 15px 20px;
    box-shadow: 2px 2px 6px 0px rgb(0 0 0 / 10%);
  }

  .bn_l li.hakusyo a span {
    width: 475px;
    height: 85px;
    margin: 0 7px;
    box-shadow: 2px 2px 6px 0px rgb(0 0 0 / 10%);
  }

  .bn_s li a span {
    width: 306px;
    height: 120px;
    margin: 0 10px 20px;
    box-shadow: 2px 2px 6px 0px rgb(0 0 0 / 10%);
  }

  .bn_l li a span img,
  .bn_s li a span img {
    width: 100%;
    height: 100%;
    display: block;
  }
}

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

  .bn_l,
  .bn_s {
    padding-top: 1.5%;
  }

  .bn_l ul {
    padding: 0 1.5%;
  }

  .bn_s ul {
    padding: 1.5%;
  }

  .bn_l li a,
  .bn_s li a {
    display: block;
    width: 100%;
    height: 100%;
  }

  .bn_l li,
  .bn_s li {
    width: 100%;
    display: block;
    position: relative;
    height: 0;
    margin: 0 0 2%;
    border-radius: 1vw;
    /* margin-bottom: 11vw; */
    box-shadow: 2px 2px 6px 0px rgb(0 0 0 / 10%);
  }

  .bn_l li {
    padding-top: 37.5%;
  }

  .bn_l li.hakusyo {
    padding-top: calc((85 / 475)*100%);
  }

  .bn_s li {
    padding-top: 38.215686%;
  }

  .bn_l li a,
  .bn_s li a {
    display: block;
    position: absolute;
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
  }
}

/*	dvd link
============================== */
.dvd_link {
  cursor: pointer;
}

.dvd_link a {
  display: block;
  background-size: cover;
  margin: 0 auto;
}

.dvd_link a:hover {
  color: #fff;
  opacity: 0.9;
}

@media all and (min-width: 768px) {
  .dvd_link a {
    width: 980px;
    height: 70px;
    margin-bottom: 2em;
  }
}

@media all and (max-width: 767px) {
  .dvd_link a {
    position: relative;
    height: 0;
    padding-top: calc((140 / 730)*100%);
  }

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

/*	trailer
============================== */
.trailer {
  margin: 0 auto;
  z-index: 9;
  position: relative;
}

@media all and (min-width: 768px) {
  .trailer {
    height: 524px;
    border: 25px solid hsla(314, 75%, 93%, 0.4);
    width: 930px;
  }
}

@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%;
    z-index: 1;
    border: 3vw solid hsla(314, 75%, 93%, 0.4);
    margin-top: -3.3vw;
  }

  .trailer iframe, .trailer span {
    background-size: 100%;
    display: block;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
  }
}

@media all and (min-width: 768px) {
  .trailer iframe, .trailer span {
    width: 930px;
    height: 524px;
    background-size: 100%;
  }
}

/*	ep pic
============================== */
@media all and (min-width: 768px) {
  .ep_pic {
    border: none;
    float: right;
    margin: 0 0;
  }

  .ep_pic, .ep_pic span {
    width: 470px;
    height: 315px;
    background: none;
    box-shadow: none;
    background-size: contain;
    background-repeat: no-repeat;
    padding-top: 1.5em;
  }
}

@media all and (max-width: 767px) {
  .ep_pic {
    margin: 3vw auto;
    width: 90%;
    box-shadow: none;
    background-color: unset;
  }

  .ep_pic span {
    padding-top: 66%;
  }
}

/*	minogashi bg padding
============================== */
.t_minogashi aside {
  padding: 2em 0;
}

/*	bn
============================== */
@media all and (min-width: 768px) {
  li.paravi, li.dvd {
    padding: 2em 0 0;
  }
  li.goods {
    padding: 0 0 1em;
  }
}
/*	st
============================== */
.st {
  padding: 1em;
  background-color: hsla(0, 0%, 100%, 0.5);
  line-height: 1.5;
}
@media all and (min-width: 768px) {
  .st {
    margin-top: 2em;
  }
}
