@charset "utf-8";
@media screen and (max-width: 768px) {
  body {
    font-size: 1rem;
  }
  .pc_only {
    display: none;
  }
  .pc_none {
    display: block;
  }
  .smp_only {
    display: block;
  }
  .br_pc {
    display: none;
  }
  .br_sp {
    display: block;
  }
  .sp_ta_c {
    text-align: center;
  }
  .footer_container {
    width: 100%;
    margin: 0 auto;
  }
  .container {
    padding: 3rem 1.5rem;
    border: none;
  }
  section {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }
  h2.heading {
    font-size: 3.5rem;
  }
  h4.ttl {
    font-size: 1.2rem;
  }
  .btn {
    font-size: 1rem;
  }
  .btn a {
    margin: 0 auto;
  }
  .btn.bann {
    max-width: 95%;
  }
  /*--------------------------------------
 * mainvisual
 * ---------------------------------------*/
  header {
    height: auto;
  }
  header .nav_container {
    background: #000000;
    width: 100%;
    position: absolute;
    top: 0;
  }
  header h1.logo img {
    vertical-align: middle;
  }
  .mv_heading {
    height: 60px;
    padding: 0 75px 0 1rem;
  }
  header h1.logo_s {
    z-index: 10;
  }
  header h1.logo_s img {
    width: 80%;
    height: auto;
  }
  .second {
    margin-top: 0;
  }
  /*--------------------------------------
 * HEADER
 * ---------------------------------------*/
  .smp-nav-list {
    width: 100%;
  }

  .smp-nav-list.active ul {
    font-size: 1.6rem;
    padding-top: 60px;
  }
  .smp-nav-list ul li a {
    text-align: center;
    padding-left: 0;
  }
  /*--------------------------------------
 * SNS
 * ---------------------------------------*/
  .top-sns a {
    font-size: 2rem;
    transition: .2s;
  }
  .top-sns a:hover {
    opacity: 1;
    color: #FFD700;
  }
	
.top-sns .xIcon {
	width: 28px;
    height: 28px;
	border-radius: 6px;
	background: #000 url(../images/common/x_icon.png) center center /19px no-repeat;
	}
	
.top-sns .xIcon:hover {
		background: #FFD700 url(../images/common/x_icon.png) center center /19px no-repeat;
	}
	

#news .container , #about .container , #ticket .container , #notice .container , #areamap .container , #food .container  {
	margin: 0 1rem 6rem 1rem ;
}	

	
  /*--------------------------------------
 * #blog
 * ---------------------------------------*/
  #blog .thum-lists {
    display: block;
  }
  #blog .thum-lists li {
    width: 80%;
    margin: 0 auto 2rem;
  }
  #blog .thum-lists li:last-child {
    margin: 0 auto 0rem;
  }
  /*--------------------------------------
 * MESSAGE
 * ---------------------------------------*/
  #message .inner .text {
    line-height: 2;
    letter-spacing: 0.06ex;
    font-size: 100%;
  }
  #message .inner .text.wb {
    word-break: normal;
  }
/*--------------------------------------
 *attention
 * ---------------------------------------*/
#attention .lead{
	font-size: 1.2rem;
	margin-top: 0;
}
	#attention .lead_ttl {
		font-size: 1.4rem;
	}
	
	#attention .lead_sec {
		margin-top: 2rem;
	}	
	
  /*--------------------------------------
 * NEWS
 * ---------------------------------------*/
	
	
	
  #news .news_lists li {
    display: block;
  }
  #news .news-data {
    display: inline-block;
    height: auto;
    margin-bottom: 1rem;
    width: 150px;
  }
  #news .news-title {
    width: 100%;
    display: block;
  }
  /*--------------------------------------
 * ABOUT
* ---------------------------------------*/
	
	
  dl.table {
    display: block;
    margin-bottom: 1.5rem;
    border: 2px solid;
  }
  dl.table dt {
    padding: 0.75rem;
    width: 100%;
    border-bottom: none;
  }
  dl.table dd {
    padding: 0.75rem;
  }
  #about dl {
    border: 2px solid;
    width: 100%;
  }
  #about dl.table dt {}
  #about .yokoari_img {
    width: 100px;
    position: absolute;
    bottom: 10px;
    right: 3%;
  }
  
  #about dl.table dd {
    border-bottom: none;
  }
  #about .yokoari .yokoari-kun01 {
    right: 0px;
    bottom: 0;
  }
  #about .yokoari .yokoari-kun01 img {
    height: auto;
    max-width: 180px;
  }
	
	#about dl.table:last-child dd {
		border-bottom: none;
	}
	
  /*--------------------------------------
 * Ticket
 * ---------------------------------------*/
	
	#ticket dl.table {
		border-right: 2px solid #000;
		border-left: 2px solid #000;
		border-bottom: 2px solid #000;
	}

	
  #ticket dl.border_t {
    border-top: none;
  }
	
  dl.table dd:not(.last) {
  border-bottom: none;
}
dl.table dd .last {
  border-bottom: none;
}
	
	#ticket dl.table:last-child dd {
		border-bottom: none;
	}

  
  #ticket .b_btn {
    margin: 0 auto;
  }
	
	#ticket .yokoarikun_d_icon {
		width: 68px;
	right: 10px;
	bottom:6%;
}

	
  /*--------------------------------------
 * Line up
* ---------------------------------------*/
  #lineup {
    margin-bottom: 0;
  }
  #lineup .tab_content {
    padding-top: 3rem;
  }
  #lineup .thum-lists li {
    width: 90%;
    margin-bottom: 1.5rem;
  }
  #lineup .image:before {
    border-top: 2.5rem solid #ff0000;
    border-right: 5rem solid transparent;
  }
  #lineup .tab_item {
    height: 70px;
    font-size: 2rem;
  }
  #lineup p.name {
    font-size: 0.95rem;
    padding: 10px;
    margin-top: 0.5rem;
  }
  #lineup .icon-new:before {
    top: -5px;
    right: -5px;
    padding: 0px 0.75rem;
    font-size: .85rem;
  }
  #lineup .andmore {
    font-size: 1.5rem;
  }
  #lineup .ate {
    margin-top: 2rem;
    font-size: 80%;
  }
	
	#lineup .kaijou {
		font-size: 1.5rem;
	}	
	
  /*--------------------------------------
 * TIME TABLE
* ---------------------------------------*/
  #timetable .thum-lists {
    width: 100%;
    transition: .2s;
    display: block;
  }
  #timetable .thum-lists li {
    width: 80%;
    margin: 0 auto 4rem;
  }
  /*--------------------------------------
 * goods 
 * ---------------------------------------*/
  #goods .b_btn {
    max-width: 95%;
  }
  #goods .b_btn a {
    font-size: 1.2rem;
  }
  #goods .block {
    font-size: 0.85rem;
  }
  #goods .lead {
    font-size: 1.2rem;
  }
  #goods p.name {
    font-size: 0.95rem;
  }
  #goods .text {
    font-size: .7rem;
  }
  #goods .ate {
    font-size: .8rem;
  }
  #goods .icon {
    font-size: .8rem;
    margin-bottom: 0.2rem;
  }
  #goods .thum-lists li {
    width: -webkit-calc((100% - 20px)/ 2);
    width: calc((100% - 20px)/ 2);
    margin-bottom: 2rem;
    margin: 0 0 2rem;
  }
  #goods .photo-img-cross {
    border-radius: 10px;
  }
  /*--------------------------------------
 * areamap
 * ---------------------------------------*/
  #areamap .block .ttl {
    font-size: 1.2rem;
  }
  /*--------------------------------------
 * food
 * ---------------------------------------*/
  #food .block .ttl, #food .block .ttl_wh {
    font-size: 1.2rem;
  }
  #food .lead {
    font-size: 1.1rem;
    line-height: 1.6;
  }
  #food .thum-lists li {
    width: -webkit-calc((100% - 20px)/ 2);
    width: calc((100% - 20px)/ 2);
    margin-right: 5px;
    margin-left: 5px;
    margin-bottom: 1rem;
  }
  #food .col2 li {
    width: 100%;
    margin-right: 0;
    margin-left: 0;
    margin-bottom: 1rem;
  }
  #food dl dt {
    float: left;
    width: 75%;
  }
  /*--------------------------------------
 * NOTICE
* ---------------------------------------*/
	#notice {
	
		margin-top: 6rem;
	}
	
  #notice h3 {
    font-size: 1.5rem;
  }
  #notice h4 {
    font-size: 1.3rem;
  }
  #notice .box {
    grid-template-columns: 70px 1fr;
    -ms-grid-columns: 70px 1fr;
    padding: 10px;
  }
  #notice .notice_list .excerpt:after {
    right: 20px;
    width: 10px;
    height: 10px;
  }
  #notice .border_box {
    padding: 1rem;
  }
  #notice .ate_box .text {
    padding-left: 1rem;
    font-size: 0.85rem;
  }
  #notice .b_btn {
    max-width: 100%;
  }
  #notice .b_btn a {
    font-size: 1.2rem;
  }
  #notice .tab-label {
    width: 100%;
    flex: none;
    margin-right: 0;
    border: 1px solid #ffffff;
    padding: 1rem;
  }
  #notice .tab-switch:checked + .tab-label {
    border: 1px solid #ffffff;
  }
  #notice .tab-wrap:after {
    display: none;
  }
	
	#notice .pg_head {
		font-size: 1.1rem;
	}
	
	#notice .pg_head:not(:first-of-type) {
		margin-top: 5rem;
	}
	
  /*--------------------------------------
 * HISTORY
 * ---------------------------------------*/
  #history ul li {
    width: 80%;
    margin: 0 auto;
  }
  #history .w60 {
    width: 80% !important;
  }
  #history ul li .btn a {
    font-size: 100%;
    padding: 1rem 0.5rem;
  }
  .pagetop img {
    max-width: 120px;
  }
  .pagetop {
    left: 10px;
    bottom: 10px;
  }
}
/*--------------------------------------
 * max-width: 480px
 * ---------------------------------------*/
@media screen and (max-width: 480px) {
  .container {
    padding: 2rem 4%;
    /* width: 93%; */
  }
  .mv_pc {
    display: none;
  }
  .mv_smp {
    display: block;
  }
	
 .br_sp_min {
		display: block;
	}	
	
  header h1.logo img {
    margin-bottom: 1rem;
    width: 100%;
    height: auto;
  }
  h2.heading {
    font-size: 3.5rem;
  }
  h3.heading {
    font-size: 1.5rem;
    padding-left: 0;
  }
  .smp-nav-list ul li a {
    font-size: 1.3rem;
    padding: 0.2rem;
    line-height: 1.7;
  }
		
  /*--------------------------------------
 * #about
 * ---------------------------------------*/
  #about .yokoari .yokoari-kun01 img {
    max-width: 150px;
  }
		
	
	
  /*--------------------------------------
 * MESSAGE
 * ---------------------------------------*/
  #message .inner .text {
    line-height: 2;
    letter-spacing: 0.02ex;
    font-size: .95rem;
  }
  #message .sp_ta_c {
    text-align: center;
  }
  .close-btn, .btn_news-more {
    text-align: center;
  }
  /*--------------------------------------
 * Line Up
 * ---------------------------------------*/
  #lineup .tab_item {
    font-size: 1.5rem;
    padding: 0 3px;
  }
  #lineup .thum-lists li {
    margin-right: 5px;
    margin-left: 5px;
    margin-bottom: 1.5rem;
  }
  #lineup .icon-new:before {
    top: -13px;
  }
	
#lineup .kaijou {
		font-size: 1.2rem;
	}	
	
	#lineup .kaijou span {
		font-size: 1rem;
	}
	
	
	#food .pkg {
	font-size: .6rem;
	
}
	
  /*--------------------------------------
 * About/Ticket
 * ---------------------------------------*/
  dl.table dt {
    font-size: 1.1rem;
  }
  dl.table dd {
    font-size: 0.95rem;
    letter-spacing: 0;
  }
  /*--------------------------------------
 * notice
 * ---------------------------------------*/
  #notice {
    font-size: .95rem;
  }
  #notice .box {
    grid-template-columns: 45px 1fr;
    -ms-grid-columns: 45px 1fr;
  }
  #notice h3 {
    font-size: 1.3rem;
  }
  #notice h4 {
    font-size: 1rem;
  }
  #notice .notice_lists {
    width: 100%;
  }
  /*--------------------------------------
 * HISTORY
 * ---------------------------------------*/
  #history ul li {
    width: 100%;
    margin: 0 auto;
  }
  #history .w60 {
    width: 100% !important;
  }
  #history ul li .btn a {
    font-size: 0.95rem;
    padding: 1rem 0.5rem;
  }
  .pagetop img {
    max-width: 90px;
  }
  .copyright {
    font-size: 0.75rem;
    padding: 0.5rem;
  }
}