@charset "UTF-8";
/* CSS Document */
/*SP,PC共通*/
@media screen and (min-width: 768px) {
  body#pageTop {
    background-color: #83cdd1;
    /*overflow: hidden;*/
  }
}
/*body_SP*/
@media screen and (max-width: 767px) {
  body#pageTop {
    min-width: 100% !important;
    overflow: visible;
    box-sizing: border-box !important;
    background-color: #83cdd1 !important;
  }
}
/*メインビジュアル_PC*/
.main_contents {
  font-family: 'じゅん 501';
  color: #000 !important;
}
.main_contents .bg {
  background-color: #83cdd1;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  z-index: -10;
}
.main_contents .wrap {
  margin: 0 auto;
  text-align: center;
  width: 960px;
}
img.kv {
  width: 90%;
  padding: 0 5%;
  margin-top: 5%;
  margin-bottom: 25px;
}
h1 {
  text-align: center;
}
#outline {
  background-image: url(../../img/top/bg_sakura1_pc.png), url(../../img/top/bg_sakura2_pc.png);
  background-repeat: no-repeat, no-repeat;
  background-position: left top, right bottom;
  background-size: 350px;
  padding-top: 75px;
  padding-bottom: 75px;
}
.lead {
  text-align: center;
  font-size: 24px !important;
  margin: 50px 0 0 !important;
}
p.en {
  font-size: 12px;
  text-align: center !important;
}
.main_visual {
  bottom: 0 !important;
}
/*メインビジュアル_SP*/
@media screen and (max-width: 767px) {
  img.kv {
    padding: 0;
    width: 100%;
    margin-top: 0;
    margin-bottom: 25px;
  }
  .main_visual {
    background-color: #83cdd1;
    height: 600px;
  }
  .showTittle img {
    width: 90%;
  }
  p.lead {
    width: 90%;
    text-align: left;
    font-size: 16px !important;
    padding: 0 5%;
    margin: 25px 0 0 !important;
  }
  .main_contents .wrap {
    width: 100%;
  }
  #outline {
    background-image: url(../../img/top/bg_sakura1_sp.png), url(../../img/top/bg_sakura2_sp.png);
    background-repeat: no-repeat, no-repeat;
    background-position: left top, right bottom;
    background-size: 120px;
    padding-top: 25px;
    padding-bottom: 50px;
  }
}
/*ナビゲーション_PC*/
@media screen and (min-width: 768px) {
  .fixed_nav {
    font-size: 12px !important;
    color: #000 !important;
  }
  .nav_wrap {
    /*padding-top: 90px !important;*/
    /*background-color: #83cdd1 !important;*/
    /*opacity: 8;*/
  }
  .navB {
    font-size: 18px !important;
    color: #ff005a;
    text-shadow: 0.1px 0.1px 0 #ff005a;
  }
  .navC {
    font-size: 15px !important;
    color: #ff005a;
  }
  .main_contents .nav li {
    float: left;
    border-right: 1px solid #000;
  }
  ul.hoverCo li a:hover {
    background-color: #fff !important;
    opacity: 0.9;
  }
}
/*アイコンフォント*/
i.fa.fa-language {
  font-size: 32.5px;
  margin-top: 5px;
}
/*　アコーディオンパネル_PC
参考：https://saruwakakun.com/html-css/reference/accordion　*/
.accbox {
  width: 100%;
  margin-top: -80px !important;
}
.accbox_inner {
  overflow: hidden;
}
.label_wrap, .acc_lang {
  /*width: 960px;*/
  margin: 0 auto !important;
}
.acc_lang a:hover {
  color: #ff005a;
}
.accbox label {
  float: right;
  width: 80px;
  height: 80px;
  display: block;
  /* margin: 1.5px 0; */
  /* padding: 11px 12px; */
  /* font-weight: bold; */
  cursor: pointer;
  transition: all 0.5s;
  /* text-align: right; */
  /*background-color: #fff;*/
}
.accbox label:hover {
  background: #85baef;
}
.accbox input {
  display: none;
}
.accbox .accshow {
  height: 0;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  /*transition: 0.8s;*/
}
.cssacc:checked + .accshow {
  height: auto;
  /* padding: 5px; */
  background: #fff;
  opacity: 1;
  text-align: center;
  margin-top: 80px;
}
.accshow a {
  display: -webkit-inline-box !important;
  padding: 10px 0 !important;
}
.acc_lang {
  text-align: right;
}
.acc_lang a {
  padding: 0 !important;
  margin: 0 !important;
}
.label_wrap p {
  margin-top: 5px !important;
}
.acc_lang {
  width: 960px;
  margin: 0 auto !important;
}
/*ナビゲーション_PC*/
/*@media screen and (min-width: 768px){
a.sp_menu.sp_only {
display: none;
}
}*/
/*ナビゲーション_SP*/
@media screen and (max-width: 767px) {
  .navB {
    font-size: 20px !important;
    color: #ff005a;
    text-shadow: 1px 1px 0 #000, -1px 1px 0 #000, 1px -1px 0 #000, -1px -1px 0 #000;
  }
  .navC {
    font-size: 15px !important;
    color: #ff005a;
  }
  .main_contents .fixed_nav, .main_contents .fixed_nav_naka {
    background: rgba(0, 0, 0, 0.95) !important;
  }
  .main_contents .nav a {
    display: block;
    padding: 16px 8px;
    color: #000;
  }
  /*モーダルナビゲーション*/
  .nav_wrap.forSP ul li a {
    color: #fff !important;
    padding: 0 !important;
    padding: 10px 0 !important;
  }
  a.ribon_kazari::before {
    content: "";
    display: inline-block;
    width: 2.5em;
    height: 2.5em;
    background: url(../../img/common/ribon_menu.png) no-repeat;
    background-size: contain;
    position: absolute;
    margin-left: 5%;
  }
  .nav_wrap.forSP ul li a p {
    padding-left: 6em;
  }
  .nav_wrap.forSP ul li a .navB, .nav_wrap.forSP ul li a .navC {
    color: #fff;
  }
  .nav_wrap.forSP ul li a .navB {
    font-size: 16px !important;
  }
  .modal_lang a {
    display: initial !important;
    font-size: 16px !important;
  }
  p.modal_lang {
    width: 100%;
    padding: 10px 6em;
    color: #fff;
  }
  .modal_lang_text {
    color: #fff;
  }
  .nav_wrap.forSP ul li:hover {
    background-color: #000 !important;
    opacity: 0.5;
  }
  .nav_wrap.forSP {
    margin-top: -20px;
  }
}
/*コピーライト_PC*/
#copyright {
  margin-top: 50px;
  text-align: center;
}
#sbs {
  margin-top: 25px;
  text-align: center;
}
small {
  font-size: 14px;
  line-height: 2em;
}
/*コピーライト_SP*/
@media screen and (max-width: 767px) {
  #copyright {
    padding-top: 50px;
    width: 90% !important;
    margin: 0 auto !important
  }
  #copyright img {
    width: 70%;
  }
  small {
    font-size: 10px !important;
  }
  #sbs {
    width: 90%;
    margin: 0 auto;
    margin-top: 25px;
  }
  #sbs img {
    width: 70%;
  }
}
/*フッター_PC*/
@media screen and (min-width: 768px) {
  #footer2 {
    position: relative;
    z-index: -10;
  }
  #footer2 img {
    width: 100%;
  }
  #footerArea {
    margin: 0;
    margin-top: -118px;
  }
  div#btn_line_pc {
    display: block;
    margin-left: 5px;
    padding-top: 60px;
    float: left;
  }
  div#gg-sharebar1 {
    display: block;
    padding-top: 60px;
    line-height: 0;
    float: left;
  }
}
/*フッター_SP*/
@media screen and (max-width: 767px) {
  #footer2, #footer2_story {
    background-image: url("../../img/common/footer2_sp.png");
    background-size: 100%;
  }
  #nav_SP {
    text-align: center;
    width: 90%;
    margin: 0 auto;
  }
  #nav_SP li {
    padding: 10px 0;
    border-bottom: 1px dotted #ff005a;
  }
  #nav_SP li:first-child {
    border-top: 1px dotted #ff005a;
  }
  #nav_SP li a {
    display: block;
    color: #000;
  }
  #nav_SP li:hover {
    background-color: #fff !important;
    opacity: 0.5 !important;
  }
  #footerWrap img {
    width: 100%;
    vertical-align: bottom;
  }
  .action.clearfix {
    background-image: url("../../img/common/footer2_sp.png");
    background-size: 100%;
  }
  /*ピューロランドフッター上書き*/
  a.string {
    display: inline-block !important;
    color: #ff005a !important;
    font-size: 16px !important;
  }
  .contact p, #footerArea footer .warning, #footerArea footer .copyright {
    font-size: 1.4rem !important;
    line-height: 1.75 !important;
  }
  .contact p.annotation {
    font-size: 1.2rem !important;
  }
}
/*iphoneSE*/
@media screen and (max-width: 320px) {
  /*横ずれ止めのため、フォントサイズ変更*/
  #footerArea .linkBlock .siteLink .language ul {
    font-size: 10px;
  }
  img.kv_sub {
    margin-top: 30px;
  }
}
/*表示_PC*/
@media screen and (min-width: 768px) {
  .forSP {
    display: none;
  }
}
/*表示_SP*/
@media screen and (max-width: 767px) {
  .forPC {
    display: none;
  }
}
/*モーダルメニュー_SP*/
@media screen and (max-width: 767px) {
  .main_contents .sp_menu {
    background-image: url(../../img/common/menu_SP.png);
    background-size: 120px;
    background-repeat: no-repeat;
    background-position: top right;
    z-index: 1000;
    display: block;
    position: fixed;
    width: 120px;
    padding: 40px;
    right: 5px;
    top: 15px;
  }
  .main_contents .sp_menu.hide {
    right: -120px;
  }
  .main_contents .sp_menu.active {
    -moz-transition: 0.25s linear;
    -webkit-transition: 0.25s linear;
    -ms-transition: 0.25s linear;
    o-transition: 0.25s linear;
    transition: 0.25s linear;
    background-image: url(../../img/common/menu_SP_active.png);
    background-size: 120px;
    background-repeat: no-repeat;
    background-position: top right;
    z-index: 2000;
    display: block;
    position: fixed;
    width: 120px;
    padding: 40px;
    right: 5px;
    /*top: 72px;*/
  }
}
/*スケジュール・PUROPASS*/
#link_info {
  width: 660px;
  margin: 0 auto;
  margin-top: 50px;
}
#link_info ul {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
}
#link_info ul li {
  width: 49%;
  text-align: center;
}
#link_info ul li:hover {
  opacity: 0.5;
}
#link_info ul li img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  #link_info {
    width: 80%;
  }
  #link_info ul {
    display: inherit;
  }
  #link_info ul li {
    width: 100%;
  }
  #link_info ul li:first-child {
    margin-bottom: 20px;
  }
}
/* //////////////////////////////////////////
story
////////////////////////////////////////// */
img.kv_sub {
  width: 100%;
  vertical-align: bottom;
}
.ichimatsu_pink {
  background-image: url(../../img/story/bg_pink.jpg) !important;
  background-repeat: repeat;
  background-size: 5% !important;
  padding-top: 100px !important;
  position: relative;
  z-index: -1;
}
.main_contents .iframe {
  margin: 0 auto;
  max-width: 760px;
  height: 510px;
  background-color: #fff;
  padding: 50px 50px 0 50px;
  margin-bottom: 50px;
  position: relative;
  z-index: 1;
}
.main_contents .iframe iframe {
  width: 100%;
  height: 47vh;
}
.iframe p {
  font-size: 20px;
}
.main_contents_story {}
#story_text {
  width: 860px;
  margin: 0 auto;
  margin-top: 100px;
  background-color: #fff;
  background-image: url(../../img/story/story_bg.jpg);
  border: 3px solid;
}
#story_text p {
  font-size: 20px;
  padding: 40px;
}
#story_text img {
  width: 100%;
}
img.line_top {
  vertical-align: top;
}
img.line_bottom {
  vertical-align: bottom;
}
/*story_SP*/
@media screen and (max-width: 767px) {
  #headerArea .logo {
    background-color: #83cdd1;
  }
  .ichimatsu_pink {
    background-size: 10% !important;
    padding-top: 25px !important;
  }
  .main_contents .iframe {
    width: 90%;
    height: auto;
    background-color: #fff;
    padding: 0;
  }
  .main_contents .iframe iframe {
    width: 90%;
    height: 24vh;
    padding: 5% 5% 0 5%;
    /* margin-top: 0px; */
  }
  #story_text {
    width: 90%;
    margin: 0 auto;
    margin-top: 50px;
    /*background-image: url(../../img/story/story_bg.jpg);
border: 3px solid;*/
  }
  #story_text p {
    font-size: 16px;
    padding: 20px;
    text-align: justify;
  }
}
/* //////////////////////////////////////////
cast/staff
////////////////////////////////////////// */
.ichimatsu_yellow {
  background-image: url(../../img/cast/bg_yellow.jpg) !important;
  background-repeat: repeat;
  background-size: 5% !important;
  padding-top: 100px !important;
  position: relative;
  z-index: -1;
}
.field_wrap {
  width: 960px;
  margin: 0 auto !important;
  text-align: center;
}
.field {
  font-size: 20px !important;
  width: 100px !important;
  height: 100px !important;
  border-radius: 50% !important;
  color: #fff;
  background: #ff005a !important;
  line-height: 100px !important;
  text-align: center;
  margin: 0 auto !important;
  margin-bottom: 20px !important;
  margin-top: -40px !important;
}
.field_voice {
  font-size: 20px !important;
  width: 100px !important;
  height: 100px !important;
  border-radius: 50% !important;
  color: #fff;
  background: #ff005a !important;
  text-align: center;
  margin: 0 auto !important;
  margin-bottom: 20px !important;
  line-height: 1em;
}
.field_voice2 {
  font-size: 20px !important;
  width: 100px !important;
  height: 100px !important;
  border-radius: 50% !important;
  color: #fff;
  background: #ff005a !important;
  text-align: center;
  margin: 0 auto !important;
  margin-bottom: 20px !important;
  line-height: 100px;
}
.field_voice span {
  position: relative;
  top: 24px;
  line-height: 1.2em;
}
.chara {
  overflow: hidden !important;
  line-height: 1em;
  margin-bottom: 50px !important;
}
.chara li {
  float: left !important;
  margin-bottom: 40px !important;
}
.chara li:nth-child(2), .chara li:nth-child(5) {
  margin: 0 15px;
}
.chara p {
  line-height: 1.4em;
}
.chara_name1 {
  font-size: 20px;
  margin: 0 !important;
}
.chara_name2 {
  font-size: 20px !important;
  font-family: Kanteiryu;
  margin: 0 !important;
}
.chara_name3 {
  font-size: 28px !important;
  font-family: Kanteiryu;
  margin: 0 !important;
}
.cast_dancer a {
  color: #000;
}
.line_b {
  border-top: 1px solid #000 !important;
  height: 8px;
  background-color: #000 !important;
  margin: 0 !important;
}
.line_s {
  border-top: 1px solid #000 !important;
  height: 2px;
  background-color: #000;
  margin: 3px 0 !important;
}
.cast_dancer p {
  background-color: #000;
  color: #fff;
  height: 150px;
  padding: 20px 0 !important;
  margin: 0 10px;
}
.cast_dancer_name li a:hover {
  color: #ff005a;
}
.voice {
  margin-top: 100px !important;
}
.voice_cast {
  width: 680px;
  margin: 0 auto !important;
  overflow: hidden;
}
.voice_cast li {
  /*display: inline-block !important;*/
  float: left;
  width: 310px;
}
.voice_cast li:first-child {
  margin-right: 60px;
}
.voice_cast p {
  line-height: 1.4em;
}
.staff {
  margin-top: 100px !important;
}
.profile_cast {
  margin: 0 auto !important;
  text-align: left;
  font-family: "じゅん 34";
  margin: 0 !important;
}
.profile_cast2 {
  width: 560px;
  margin: 0 auto !important;
  text-align: left;
  font-family: "じゅん 34";
  margin-bottom: 100px !important;
  line-height: 1.4em !important;
}
/*キャスト_PC_only*/
@media screen and (min-width: 768px) {
  .cast_dancer {
    font-family: Kanteiryu;
    font-size: 18px !important;
    text-align: left;
    width: 100%;
    line-height: 1.3em;
    padding: 20px 0 10px 0 !important;
  }
  .cast_dancer_nemae_box {
    writing-mode: vertical-rl;
    margin-left: auto !important;
  }
  /*キャストの名前・行間調整*/
  .cast_dancer_name a {
    line-height: 1.3em;
    font-size: 110%;
  }
  .staff_name {
    writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-family: Kanteiryu;
    font-size: 24px !important;
    text-align: left;
    padding: 20px 0 !important;
    overflow: hiddn;
    margin: 0 auto !important;
  }
  .staff_name dt {
    background-color: #000;
    color: #fff;
    height: 190px;
    padding: 0 2.5px;
    font-size: 22px;
    margin-bottom: 10px;
    text-align: center;
  }
  .staff_name dt, .staff_name dt dd {
    float: left;
  }
  dl.staff_name dd {
    margin-left: 15px !important;
    height: 31em;
  }
  dl.staff_name dd:last-child {
    margin-left: 0px !important;
  }
  .staff_name_long {
    margin-top: 200px !important;
  }
  #player {
    width: 95px;
    line-height: 100px;
  }
  .shamisen {
    margin-right: -10px !important;
  }
}
/*キャスト_SP*/
@media screen and (max-width: 767px) {
  .ichimatsu_yellow {
    background-size: 10% !important;
    padding-top: 50px !important;
  }
  .field_wrap {
    width: 100%;
    margin-top: 50px !important;
  }
  .field {
    font-size: 16px !important;
    width: 80px !important;
    height: 80px !important;
    border-radius: 50% !important;
    color: #fff;
    background: #ff005a !important;
    line-height: 80px !important;
    text-align: center;
    margin: 0 auto !important;
    margin-bottom: 20px !important;
    margin-top: -75px !important;
  }
  .field_voice {
    font-size: 16px !important;
    width: 80px !important;
    height: 80px !important;
    border-radius: 50% !important;
    color: #fff;
    background: #ff005a !important;
    text-align: center;
    margin: 0 auto !important;
    margin-bottom: 20px !important;
    line-height: 1em;
  }
  .field_voice2 {
    font-size: 16px !important;
    width: 80px !important;
    height: 80px !important;
    border-radius: 50% !important;
    color: #fff;
    background: #ff005a !important;
    text-align: center;
    margin: 0 auto !important;
    margin-bottom: 20px !important;
    line-height: 80px;
  }
  .chara {
    width: 90%;
    margin: 0 auto !important;
  }
  .chara li {
    width: 46%;
  }
  .chara li img {
    width: 100%;
  }
  .chara li:nth-child(2), .chara li:nth-child(5) {
    margin: 0;
  }
  .chara li:nth-child(odd) {
    margin-right: 8%;
  }
  .chara_name1 {
    font-size: 14px;
    margin: 0 !important;
  }
  .chara_name2 {
    font-size: 14px !important;
    font-family: Kanteiryu;
    margin: 0 !important;
  }
  .chara_name3 {
    font-size: 16px !important;
    font-family: Kanteiryu;
    margin: 0 !important;
  }
  .cast_dancer_wrap {
    width: 90%;
    margin: 0 auto !important;
  }
  .cast_dancer_name_wrap p {
    font-size: 16px !important;
    font-family: Kanteiryu;
    background-color: #000;
    color: #fff;
    padding: 0 10px !important;
    margin-left: 0;
    width: 30%;
    margin: 0 auto;
    margin-bottom: 10px;
    text-align: center;
    height: auto;
  }
  .cast_dancer {
    width: 100% !important;
    margin: 0 auto !important;
    font-family: Kanteiryu;
    font-size: 16px !important;
    text-align: left;
    line-height: 1em;
    padding: 0 !important;
    overflow: hidden;
  }
  .cast_dancer p {
    color: #fff;
    margin-top: 20px;
  }
  .cast_dancer:first-child p {
    margin-top: 0;
  }
  .cast_dancer li {
    float: left;
    padding-right: 0.5em;
    margin-bottom: 10px;
  }
  .cast_dancer_name {
    overflow: hidden;
  }
  .line_b, .line_s {
    width: 100%;
    margin: 0 auto !important;
  }
  .line_b {
    height: 6px;
  }
  .line_s {
    height: 2px;
  }
  .dancer_top {
    background-color: #000 !important;
    color: #fff;
    padding-top: 10px !important;
    font-size: 16px !important;
    margin-left: 10px !important;
  }
  .voice {
    margin-top: 25px !important;
  }
  .voice_cast {
    width: 90%;
    margin: 0 auto !important;
  }
  .voice_cast li {
    width: 100%;
    width: 46%;
  }
  .voice_cast li img {
    width: 100%;
    vertical-align: top;
    margin-bottom: 5px;
  }
  .voice_cast li:first-child {
    margin-right: 8%;
  }
  .nakamura_wrap {
    width: 90%;
    margin: 0 auto !important;
  }
  .nakamura_wrap img {
    width: 42%;
  }
  .staff {
    width: 90%;
    margin: 0 auto !important;
    padding: 100px 0 0 0 !important;
  }
  .staff img {
    width: 42%;
  }
  .profile_cast2 {
    width: 100%;
    margin: 0 auto !important;
  }
  .staff_name {
    font-family: Kanteiryu;
    font-size: 16px !important;
    text-align: left;
    margin-top: 50px !important;
  }
  .staff_name dt {
    background-color: #000;
    color: #fff;
    padding: 2.5px 10px;
    margin-bottom: 10px;
    text-align: center;
    width: 80%;
    margin: 0 auto !important
  }
  .staff_name dd {}
  dl.staff_name dd {
    text-align: center;
    margin-bottom: 12.5px;
  }
  dl.staff_name dd:last-child, dl.staff_name2 dd:last-child {
    margin-left: 0 !important;
  }
  dl.staff_name2 dd {
    margin-left: 15px !important;
    height: 25em;
  }
  .line_c {
    width: 100%;
    border-top: 1px solid #000;
    margin-bottom: 20px;
  }
  .seishiro {
    margin-top: 40% !important;
  }
}
/* //////////////////////////////////////////
goods
////////////////////////////////////////// */
.ichimatsu_blue {
  background-image: url(../../img/goods/bg_blue.jpg) !important;
  background-repeat: repeat;
  background-size: 5% !important;
  padding-top: 100px !important;
  position: relative;
  z-index: -1;
}
.goodsItem_title {
  color: #fff;
  text-align: center;
  font-size: 30px !important;
  text-shadow: 1px 0 0 #000, 0 1px 0 #000, -1px 0 0 #000, 0 -1px 0 #000 !important;
  line-height: 1em !important;
}
#inline-wrap h1, .mfp-content p {
  /*font-family:"じゅん 501", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";*/
  font-family: "じゅん 501" !important;
}
a.popup-modal h2 {
  color: #000;
}
.price {
  color: #000;
}
.price {
  font-size: 120%;
}
.shop {
  text-align: center;
  font-size: 18px !important;
  padding-bottom: 20px !important;
  margin-top: 0 !important;
}
.hatsubaiyotei {
  font-size: 90% !important;
}
html.js.borderimage {
  margin-right: 0 !important;
}
.main_contents_goods .main_visual {
  position: relative;
  z-index: -1;
}
ul.goodsCont {
  margin: 0 auto;
  overflow: hidden;
}
.goodsCont li {
  background-color: #fff !important;
}
.goodsCont .thumb {
  width: 100%;
  border: 1px solid #ccc;
}
.mfp-content p {
  max-width: 600px;
  margin: 0 auto;
  text-align: left;
}
.goodsCont li:hover {
  opacity: 0.5;
}
.goodsCaution {
  text-indent: -1em;
  padding-left: 1em;
}
.goodsBox {
  padding: 20px !important;
}
.image img {
  border: 1px solid #000;
}
.icon_original, .icon_notoriginal {
  font-size: 9px !important;
  padding: 2.5px 2.5px !important;
  display: inline-block;
  line-height: 1.2em !important;
  color: #fff;
  letter-spacing: -0.1em;
  text-align: center;
}
.icon_original {
  background-color: #ff005a !important;
}
.icon_notoriginal {
  background-color: #000 !important;
}
a.popup-modal h2 {
  color: #000;
  letter-spacing: -0.05em;
}
.release_date {
  color: #ff005a;
  font-size: 12px !important;
}
/*グッズ_SP*/
@media screen and (max-width: 767px) {
  .ichimatsu_blue {
    background-size: 10% !important;
    padding-top: 25px !important;
  }
  .goods_tittle {
    font-size: 16px !important;
    line-height: 1.2em !important;
    padding: 0 0 5% 5% !important;
  }
  .special_date {
    font-size: 14px !important;
    color: #767676;
  }
  .dancer_top {
    background-color: #000 !important;
    color: #fff;
    padding-top: 10px !important;
    font-size: 14px !important;
    margin-left: 10px !important;
  }
  .goodsItem_title {
    font-size: 20px !important;
  }
  .shop {
    font-size: 12px !important;
  }
  .price {
    line-height: 1.4em !important;
  }
  ul.goodsCont {
    width: 90%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
  }
  .goodsCont li {
    padding: 10px;
    width: 41%;
    margin-bottom: 3%;
  }
  .goodsCont li:nth-child(odd) {
    margin-right: 3%;
  }
  .goodsBox {
    padding: 0 !important;
  }
  .icon_original, .icon_notoriginal {
    /*width: 100%;*/
    padding: 2.5px 2.5px !important;
  }
}
@media screen and (min-width: 768px) {
  ul.goodsCont {
    width: 960px;
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
  }
  .goodsBox {
    padding: 20px !important;
  }
  .goodsCont li {
    width: 32%;
    margin-bottom: 2%;
  }
  .goodsCont li:nth-child(3n-1) {
    margin-left: 2%;
    margin-right: 2%;
  }
}
/* //////////////////////////////////////////
special
////////////////////////////////////////// */
.ichimatsu_purple {
  background-image: url(../../img/special/bg_purple.jpg) !important;
  background-repeat: repeat;
  background-size: 5% !important;
  padding-top: 100px !important;
  position: relative;
  z-index: -1;
}
.movie_tittle {
  line-height: 1.4em !important;
}
.special_date {
  font-size: 14px !important;
  color: #767676;
}
/*スペシャル_SP*/
@media screen and (max-width: 767px) {
  .ichimatsu_purple {
    background-size: 10% !important;
    padding-top: 25px !important;
  }
  .movie_tittle {
    font-size: 16px !important;
    line-height: 1.2em !important;
    padding: 0 0 5% 5% !important;
  }
}
.main_contents_special .main_visual {
  position: relative;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .main_contents .iframe {
    margin-bottom: 5%;
    position: relative;
    z-index: 1;
  }
}
/* //////////////////////////////////////////
gallery
////////////////////////////////////////// */
.main_contents_gallery .main_visual {
  position: relative;
  z-index: -1;
}
.ichimatsu_green {
  background-image: url(../../img/gallery/bg_green.jpg) !important;
  background-repeat: repeat;
  background-size: 5% !important;
  padding-top: 100px !important;
  position: relative;
  z-index: -1;
}
.photogallery ul {
  width: 100%;
  overflow: hidden;
}
.photogallery ul li {
  float: left;
  margin-bottom: 5%;
}
.photogallery ul li a img {
  width: 100%;
  vertical-align: bottom;
}
.photogallery ul li a:hover {
  opacity: 0.5;
}
.photogallery p {
  font-family: "じゅん 34";
  font-size: 100%;
  line-height: 1.2em;
  margin-top: 5px;
}
@media screen and (min-width: 768px) {
  .main_contents_gallery #headerArea {
    z-index: 2000;
  }
  .photogallery {
    width: 960px;
    margin: 0 auto !important;
  }
  .photogallery ul li {
    width: 23.5%;
    display: flex;
    flex-wrap: wrap;
  }
  .photogallery ul li:not(:first-child) {
    margin-left: 2%;
  }
  .photogallery ul li:nth-child(5), .photogallery ul li:nth-child(9), .photogallery ul li:nth-child(13) {
    margin-left: 0 !important;
  }
}
@media screen and (max-width: 767px) {
  .main_contents_gallery #headerArea {
    z-index: 1000;
  }
  .ichimatsu_green {
    background-size: 10% !important;
    padding-top: 25px !important;
  }
  .photogallery {
    width: 90%;
    margin: 0 auto !important;
  }
  .photogallery ul li {
    width: 47%;
    /*margin-bottom: 5%;*/
  }
  .photogallery ul li:nth-child(odd) {
    margin: 0 5% 5% 0 !important;
  }
}
/* //////////////////////////////////////////
共通
////////////////////////////////////////// */
/*comming soon*/
.commingsoon p {
  font-size: 40px !important;
  text-align: center;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .commingsoon p {
    font-size: 30px !important;
  }
}
/*caution*/
.caution {
  width: 90%;
  margin: 0 auto !important;
  font-family: "じゅん 201";
  text-align: center;
}
@media screen and (max-width: 767px) {
  .caution {
    text-align: left;
    text-indent: -1em;
    padding-left: 1em !important;
  }
}
/*バナー追加*/
.web_coupon {
  text-align: center;
  margin: 50px 0 25px 0 !important;
}
@media screen and (max-width: 767px) {
  .web_coupon img {
    width: 100%;
    text-align: center;
  }
  .web_coupon {
    width: 90%;
    margin: 25px auto 12.5px auto !important;
  }
}
/*バナー追加_0620*/
.omotenashi {
  width: 100%;
  text-align: center;
  margin-top: -20px !important;
  margin-bottom: 30px !important;
}
.omotenashi img {
  vertical-align: bottom;
}
@media screen and (max-width: 767px) {
  .omotenashi {
    margin-bottom: 20px !important;
  }
  .omotenashi img {
    width: 90%;
  }
}
/*バナー追加_0821*/
.btn_app {
  display: flex;
  justify-content: center;
  margin-top: 20px !important;
  position: relative;
  z-index: 1;
}
.btn_app li {
  display: block;
}
.btn_app li:hover {
  opacity: 0.5;
}
.btn_app li:first-child {
  margin-right: 20px;
}
@media screen and (max-width: 767px) {
  .btn_app {
    width: 90%;
    margin: 0 auto 20px auto !important;
  }
  .btn_app li img {
    width: 100%;
  }
}
/*20181120荻原　イラスト位置修正*/
@media screen and (min-width: 768px) {
  #footerArea footer .footerBG {
    margin: 0 auto;
    width: 960px;
    min-height: 140px;
    padding-top: 15px;
    background: url(/common_v2/img/bg_footer.png) no-repeat 732px bottom !important;
  }
}
/*20231026*/
div#headerArea {
  display: none;
}
div#footerArea {
  display: none;
}
@media screen and (min-width: 768px) {
  #footerArea {
    display: none;
  }
}
div#footer2 img {
  vertical-align: bottom;
}
div#corporate_logo img {
  width: 100%;
}
div#corporate_logo {
  width: 250px;
  margin: 0 auto;
  padding: 15px 0;
}
div#corporate_logo a {
  padding: 0;
}
.accbox_inner {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}
.sanrio_copy {
  display: block;
  position: absolute;
  bottom: 10px;
  color: #fff;
  width: 100%;
  text-align: center;
  font-size: 80% !important;
}
@media screen and (max-width: 767px) {
  .sanrio_copy_sp {
    text-align: center;
    color: #fff;
    padding: 5%;
  }
}