/*スマホ表示時のみに適用する設定CSS*/

@media screen and (max-width: 800px) {
  /*まずpcクラスがついてるものは全部表示を切っておく*/
  .pc {
    display: none;
  }

  /*内容表示幅の設定*/
  .display_width {
    width:min(335px, 100vw);
  }

  /*以下各種背景の設定*/
  .back_intro {
    background-image: url(img/parts/sp/sp_bg_intro.jpg);
    background-size: cover;
    background-position: center;
  }
  
/*全体の共通設定*/
  header {
    padding: 20px 20px;
  }

  body{
    font-size: 14px;
    font-weight:bold;
  }

  .content {
    padding-top: 50px;
    padding-bottom: 50px;
  }

  .link_button {
    width:min(335px, 100vw);
  }
  
  .icon_title{  
   margin: 0px auto 35px 0px;
   max-width: 92%;
   width: 200px;
  }

  /*ここから個別設定*/
  .intro {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .about_text{
    max-width: 335px;
    font-size: 12px;
  }

.comment_box{
  max-width: 335px;
  font-size: 14px;
  margin-top:20px;
}

  .comment_image{
    margin: 0 auto 20px 0;
    width: 335px;
  }

  .comment_text{
    font: normal normal bold 14px/24px Shippori Mincho;
    text-align: left;
    width: min(300px,95vw);
  }
  
  .story_text{
    max-width:335px;
    font: normal normal 800 16px/32px Shippori Mincho;
    margin-bottom:35px;
  }

  .cast_image{
    width:min(335px, 100vw);
  }

  .icon_infotitle {
    margin-bottom: 20px;
    width: 180px;
  }

  .info_box{
    margin-bottom:50px;
  }

  .info_xmas_box{
    border: dashed 1.5px #904E43;  
  }

  .info_xmassp{
    font-size:12px;
  }

  .info_ticketstart{
    font-size:20px;
    font-weight:800;
  }

  .info_format_icon{
    width:min(120px, 100vw);
  }

  .notes_title_box {
    max-width: 335px;
  }

  .notes_text_box{
    font-size:14px;
    font-weight:800;
    margin: 0 auto 35px 0;
  }
  
  .notes_text_box ul{
    font-size:12px;
    font-weight:bold;
  }
  
  /*アコーディオンメニュー設定（今回はNOTES用）*/
.toggle_btn {
  width: max(20px, min(40px, 40px + (100vw - 335px) / 10));
  height: 40px;
  right:0px;
}

.toggle_btn:before, .toggle_btn:after {
  width: max(8px, min(16px, 16px + (100vw - 335px) / 16));
  height: 2px;
}

.toggle_btn:before {
  width: 2px;
  height: max(8px, min(16px, 16px + (100vw - 335px) / 16));
}

/*ハンバーガーメニュー*/
  .sp-nav {
    z-index: 1;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    display: block;
    background: rgba(0, 0, 0, 0.8);
    opacity: 0;
    transform: translateX(100%);
    transition: all 0.3s ease-in-out;
  }
  .sp-nav ul {
    list-style: none;
    margin: auto;
    font-size: 20px;
    font-weight: bold;
    padding: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
  }
  .sp-nav li {
    margin: 0;
    padding: 0;
  }
  .sp-nav li span {
    font-size: 15px;
    color: #F7F0DD;
  }
  .sp-nav li a, .sp-nav li span {
    display: block;
    padding: 20px;
    color: #F7F0DD;
  }
  .toggle {
    transform: translateY(0);
    opacity: 1;
  }
  .ham-button {
    z-index: 2;
    display: block;
    position: relative;
    width: 28px;
    height: 20px;
    margin: 10px 10px auto auto;
  }
  .ham-button div {
    display: block;
    width: 100%;
    height: 2px;
    background-color: #fff;
    position: absolute;
    transition: transform 0.5s, opacity 0.5s;
  }
  .ham-button div:nth-child(1) {
    top: 0;
  }
  .ham-button div:nth-child(2) {
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .ham-button div:nth-child(3) {
    bottom: 0;
  }
  .ham-button.show div:nth-child(1) {
    transform: translateY(9px) rotate(-135deg);
  }
  .ham-button.show div:nth-child(2) {
    opacity: 0;
  }
  .ham-button.show div:nth-child(3) {
    transform: translateY(-9px) rotate(135deg);
  }
  /*マップの設定*/
  .map_block ul {
    list-style-position: inside;
  }
  .map_block {
    height: auto;
  }
  .map_block_1 {
    height: 450px;
  }
  .map_block_2 {
    margin: 0px;
    padding: 0px;
  }
  .map_block_end {
    margin: 0px;
    padding: 0px;
  }
}