html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  font-size: 62.5%;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
input,
textarea,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
  font-style: normal;
  font-weight: normal;
}

ol,
ul {
  list-style: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal;
  line-height: 1.2;
}

* {
  box-sizing: border-box;
}

body {
  max-height: 100%;
  padding-top: 80px;
}

@media (max-width: 767px) {
  body {
    padding-top: 70px;
  }
}
p {
  line-height: 1.8;
  font-weight: 300;
  margin-bottom: 3%;
}

@media (max-width: 767px) {
  p {
    font-size: 1.5rem;
    margin-bottom: 5%;
    line-height: 2;
  }
}
dl dt,
dl dd {
  line-height: 1.8;
}

a {
  text-decoration: none;
  color: #fff;
}

img {
  vertical-align: bottom;
  max-width: 100%;
}

.clr {
  clear: both;
}

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  display: block;
}

.animate {
  animation-name: fadein;
  animation-duration: 1s;
}

@keyframes fadein {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.sp_only {
  display: none;
}

@media (max-width: 767px) {
  .pc_only {
    display: none;
  }
  .sp_only {
    display: block;
  }
}
figure {
  margin: 0;
}

.text_b {
  font-weight: bold;
}

/* header */
header {
  height: 80px;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1;
  background: #fff;
  margin: 0;
}

@media (min-width: 768px) {
  header {
    justify-content: space-between;
  }
}
@media (max-width: 767px) {
  header {
    height: 70px;
  }
}
header .h_inner {
  width: calc(100% - 300px);
  display: flex;
  align-items: center;
  margin: 18px auto;
}

@media (max-width: 767px) {
  header .h_inner {
    width: 100%;
    margin: 15px auto 0;
  }
}
h1 {
  width: 140px;
}

@media (max-width: 767px) {
  h1 {
    margin-left: 20px;
  }
}
h1 img {
  width: 100%;
  height: auto;
}

nav {
  display: flex;
  display: -ms-flexbox;
  flex-wrap: nowrap;
  margin-left: auto;
  font-size: 1.3rem;
  font-weight: bold;
}

nav ul {
  display: flex;
}

nav ul li {
  margin: 10px 20px 0 0;
}

nav ul li:last-child {
  margin-right: 0;
}

nav ul li a {
  text-decoration: none;
  color: #222222;
}

nav ul li a .fa-instagram:before {
  color: #222;
}

nav ul li.nolink {
  color: #ccc;
}

nav .nav_sns {
  margin: -6px 0 0 30px;
}

@media (max-width: 767px) {
  nav {
    position: fixed;
    top: -670px;
    width: 100%;
    height: 640px;
    padding-top: 50px;
    background: #333;
    font-size: 1.7rem;
    box-sizing: border-box;
    z-index: 2;
    opacity: 0.98;
  }
  nav ul {
    display: block;
    width: 100%;
  }
  nav ul li {
    display: block;
    padding: 20px 28px;
    margin: 0;
  }
  nav ul li a {
    text-decoration: none;
    color: #fff;
  }
  .btn-gnav {
    position: absolute;
    top: 25px;
    right: 20px;
    width: 30px;
    height: 24px;
    z-index: 3;
    box-sizing: border-box;
    cursor: pointer;
    transition: all 400ms;
  }
  .btn-gnav span {
    position: absolute;
    width: 30px;
    height: 2px;
    background: #222;
    border-radius: 10px;
    transition: all 400ms;
  }
  .btn-gnav span:nth-child(1) {
    top: 0;
  }
  .btn-gnav span:nth-child(2) {
    top: 10px;
  }
  .btn-gnav span:nth-child(3) {
    top: 20px;
  }
  .btn-gnav.open {
    transform: rotate(180deg);
  }
  .btn-gnav.open span {
    background: #fff;
  }
  .btn-gnav.open span {
    width: 24px;
  }
  nav .contents section p {
    position: absolute;
    top: 50%;
    width: 30%;
    line-height: 1.4;
    font-size: 20px;
    color: #fff;
    text-shadow: 0 0 6px #666;
  }
  nav .contents section:nth-child(odd) p {
    left: 10%;
  }
  nav .contents section:nth-child(even) p {
    right: 10%;
  }
  nav .nav_sns {
    position: absolute;
    bottom: 30px;
    left: 0;
    margin: 0 0 0 28px;
  }
  nav .nav_sns li {
    display: inline-block;
    padding: 0;
    margin-right: 20px;
  }
  nav .nav_sns li i,
  nav ul li a .fa-instagram:before {
    color: #fff;
  }
  nav ul li.nolink {
    color: #555;
  }
}
/* wrapper */
#wrapper {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  color: #222222;
  line-height: 1;
  position: relative;
  overflow: hidden;
  background: #ffffff;
}

#wrapper .en {
  font-family: "Oswald", sans-serif;
  font-weight: 600;
  letter-spacing: 0.5rem;
}

#wrapper .en02 {
  font-family: "Oswald", sans-serif;
  font-weight: 400;
  letter-spacing: 0.3rem;
}

/* main */
.h_logo {
  margin: 0 auto 30px;
  width: 29%;
}

@media (max-width: 1024px) {
  .h_logo {
    width: 49%;
    margin-bottom: 20px;
  }
}
.main_img.seeyou {
  background: url(../images/main_seeyou.jpg) 0 0 no-repeat;
  background-position: center 60%;
}

@media (max-width: 1024px) {
  .main_img {
    background-position: top;
    background-size: cover;
    margin: 0 auto;
    padding: 60px 0 110px;
  }
  .main_img.seeyou {
    background-position: center 60%;
    background-size: cover;
  }
}
@media (max-width: 767px) {
  .main_img {
    padding: 30px 0 40px;
    background-position: center 54%;
    background-size: cover;
  }
}
@media (max-width: 1024px) {
  .area_schedule {
    width: 100%;
    margin: 0 auto;
  }
  .area_schedule .sp_only {
    width: 80%;
    margin: 0 auto;
  }
}
.main_img {
  width: 100%;
  text-align: center;
  padding: 70px 0 100px;
  background-position: center;
  background-repeat: no-repeat;
}

.main_copy {
  margin: 0 auto;
  width: 40%;
}

.main_copy_text {
  margin: 0 auto;
  font-size: 3.7rem;
  font-weight: bold;
  line-height: 1.6;
  letter-spacing: 0.3rem;
  color: #fff;
}

.main_title {
  margin: 0 auto 50px;
  width: 20%;
}

@media (max-width: 767px) {
  .main_copy {
    width: 80%;
    margin-bottom: 0;
  }
  .main_title {
    width: 34%;
    margin-bottom: 20px;
  }
  .main_copy_text {
    font-size: 1.9rem;
    width: 85%;
  }
}
.linkarea {
  text-align: center;
  background: #2b2b2b;
  color: #fff;
}

.linkarea p {
  margin-bottom: 0;
  font-weight: bold;
  font-size: 3rem;
  text-align: center;
}

.linkarea .area_schedule {
  font-size: 4.5rem;
}

.linkarea .area_schedule span {
  font-size: 2.5rem;
  margin: 0 10px;
}

.linkarea .area_schedule span.f1 {
  margin-left: 0;
}

@media (max-width: 767px) {
  .linkarea .area_schedule {
    font-size: 2.3rem;
    letter-spacing: 0.2rem;
  }
  .linkarea .area_schedule span {
    font-size: 1.8rem;
    margin: 0 5px;
  }
  .linkarea .area_place {
    font-size: 1.6rem;
    margin: -5px 0 0;
  }
}
.linkarea .area_text {
  font-size: 2.5rem;
  margin-top: 10px;
  color: #fff;
}

@media (max-width: 767px) {
  .linkarea .area_text {
    font-size: 2.2rem;
    line-height: 1.5;
  }
}
section.sec_box {
  margin: 5% auto;
  max-width: 720px;
}

@media (max-width: 1059px) {
  section.sec_box {
    width: 88%;
    max-width: none;
    margin: 15% auto;
  }
}
.sec_box h2 {
  text-align: center;
  padding-bottom: 50px;
  font-weight: bold;
  font-size: 3rem;
  line-height: 1.8;
}

@media (max-width: 767px) {
  .sec_box h2 {
    font-size: 1.8rem;
    padding-bottom: 30px;
  }
}
.attention {
  background: #2b2b2b;
  color: #fff;
}

.attention .subcopy {
  font-size: 3rem;
}

@media (max-width: 767px) {
  .attention .topcopy {
    font-size: 3rem;
    line-height: 1.6;
    margin-bottom: 10px;
  }
  .attention .subcopy {
    font-size: 2.3rem;
    line-height: 1.4;
  }
}
.sec_box.message {
  margin-bottom: 80px;
}

@media (max-width: 767px) {
  .sec_box.message {
    margin-bottom: 15%;
  }
}
.sec_box.message p {
  line-height: 2.2;
}

.sec_box.message p span {
  text-decoration: underline;
  font-weight: bold;
}

.sec_box.headliner {
  padding-bottom: 150px;
  text-align: center;
}

@media (max-width: 767px) {
  .sec_box.headliner {
    padding-bottom: 50px;
  }
}
.sec_box.comment h3 {
  text-align: center;
  font-size: 3rem;
  font-weight: bold;
  margin-bottom: 50px;
  line-height: 1.8;
}

@media (max-width: 767px) {
  .sec_box.comment h3 {
    font-size: 2.2rem;
    margin-bottom: 30px;
  }
}
.sec_box.comment p span {
  text-decoration: underline;
  font-weight: bold;
}

.sec_box.comment .from {
  font-size: 22px;
  text-align: right;
  margin-bottom: 3%;
}

@media (max-width: 767px) {
  .sec_box.comment .from {
    font-size: 1.6rem;
  }
}
.headliner {
  background: #eee;
}

.headliner .sec_box_inner {
  padding: 80px 0;
  text-align: center;
}

@media (max-width: 767px) {
  .headliner .sec_box_inner {
    padding: 15% 0;
  }
}
.headliner h3 {
  font-size: 4rem;
  font-weight: bold;
  margin-bottom: 20px;
  letter-spacing: 0.1em;
  display: inline-block;
}

@media (max-width: 767px) {
  .headliner h3 {
    display: block;
    font-size: 2.5rem;
    line-height: 1.5;
  }
}
.headliner .h3_subtxt {
  text-align: center;
  font-size: 1.5rem;
}

.headliner .ttl_box {
  margin-top: 60px;
  display: block;
}

@media (max-width: 767px) {
  .headliner .ttl_box {
    margin-top: 0;
  }
}
.headliner .hl_ttl {
  font-size: 3rem;
  padding-bottom: 50px;
  position: relative;
  display: inline-block;
  padding: 0 15px;
  margin-bottom: 60px;
  font-weight: bold;
  background: #000;
  color: #fff;
}

@media (max-width: 767px) {
  .headliner .hl_ttl {
    margin-bottom: 8%;
    font-size: 2.3rem;
    display: block;
    text-align: center;
  }
}
.headliner .hl_ttl02 {
  font-size: 2.3rem;
  text-align: center;
  font-weight: bold;
}

@media (max-width: 767px) {
  .headliner .hl_ttl {
    margin-bottom: 8%;
    font-size: 2.3rem;
  }
}
/*.headliner .hl_ttl:before,
.headliner .hl_ttl:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 10px;
    height: 2px;
    background-color: #000;
}
.headliner .hl_ttl:before {
    left: 0;
}
.headliner .hl_ttl:after {
    right: 0;
}*/
.headliner .hl_img {
  width: 46%;
  float: left;
}

.headliner .hl_prof {
  width: 50%;
  float: right;
  text-align: left;
}

.headliner .hl_prof dl {
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 20px;
}

.headliner .hl_prof dl:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: inline-block;
  width: 15px;
  height: 1px;
  background-color: #000;
}

@media (max-width: 1024px) {
  .headliner .hl_prof dl {
    text-align: center;
    margin-bottom: 30px;
  }
  .headliner .hl_prof dl:after {
    left: 48%;
  }
}
.headliner .hl_prof dd.hl_name {
  font-size: 3rem;
  font-weight: bold;
}

@media (max-width: 1024px) {
  .headliner .hl_img,
  .headliner .hl_prof {
    width: 100%;
    float: none;
  }
  .headliner .hl_prof {
    margin-top: 50px;
  }
}
@media (max-width: 1024px) {
  .headliner .hl_sns {
    margin-top: 30px;
  }
}
.headliner .hl_sns li {
  display: inline-block;
  margin-right: 20px;
  line-height: 2;
}

.headliner .hl_sns li i {
  margin-right: 10px;
}

.headliner .hl_sns li a {
  color: #000;
}

@media (max-width: 767px) {
  .headliner .hl_sns li.sns_youtube {
    display: block;
  }
}
.fa-youtube:before {
  color: #ff0102;
}

.fa-instagram:before {
  color: #f75d3e;
}

.headliner .text_next {
  font-weight: bold;
  text-align: center;
  font-size: 2.2rem;
  margin-top: 60px;
}

.hl_other ul {
  margin-top: 40px;
}

.hl_other ul li {
  display: inline-block;
  width: 30%;
  margin-right: 4%;
  vertical-align: top;
  line-height: 1.5;
  font-size: 1.5rem;
}

@media (max-width: 767px) {
  .hl_other ul li {
    display: block;
    width: 100%;
    margin-right: 0;
    margin-bottom: 25px;
  }
}
.hl_other ul li:last-child {
  margin-right: 0;
}

.hl_other ul li img {
  margin-bottom: 15px;
}

.sec_box_inner {
  max-width: 950px;
  margin: 0 auto;
  padding: 20px 0;
}

@media (max-width: 767px) {
  .sec_box_inner {
    padding: 20px 0;
    width: 86%;
  }
  .linkarea .sec_box_inner {
    padding: 20px 0 30px;
  }
}
#contact {
  background: #2b2b2b;
  max-width: none;
}

@media (max-width: 767px) {
  #contact {
    margin: 0 0 10%;
  }
}
#contact p {
  color: #fff;
}

#contact .sec_box_inner {
  padding: 70px 0 50px;
  text-align: center;
}

@media (max-width: 767px) {
  #contact .sec_box_inner {
    padding: 10% 0;
  }
}
#contact .sec_box_inner .contact_ttl {
  color: #f29600;
  font-size: 3rem;
}

@media (max-width: 767px) {
  #contact .sec_box_inner .contact_ttl {
    font-size: 2.2rem;
    margin-bottom: 20px;
  }
}
#contact .sec_box_inner .contact_ttl i {
  margin-bottom: 20px;
}

#contact .sec_box_inner .line_text {
  margin-bottom: 1%;
}

@media (max-width: 767px) {
  #contact .sec_box_inner .line_text {
    font-size: 2rem;
    margin-bottom: 20px;
  }
}
#contact .sec_box_inner p {
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
}

@media (max-width: 767px) {
  #contact .sec_box_inner p {
    font-size: 1.6rem;
  }
}
.linkarea a.link_btn {
  padding: 30px 100px;
  margin: 3% auto;
  color: #000;
  font-weight: bold;
  background-color: #f1c751;
  text-decoration: none;
  display: inline-block;
  width: auto;
  font-size: 2rem;
}

.linkarea a.link_btn:hover {
  background: #f7d573;
  cursor: pointer !important;
}

.linkarea .ticket_open {
  margin-top: 15px;
}

.linkarea .ticket_open a.link_btn.pass {
  margin-top: 0;
  background-color: #e8472f;
  color: #fff;
}

.linkarea .ticket_open a.link_btn.pass:hover {
  background: #ff6e5f;
}

.linkarea .ticket_open .ticket_linetext {
  font-size: 130%;
}

.linkarea .ticket_open a.link_btn.line_btn {
  margin-top: 2%;
}

@media (max-width: 767px) {
  .linkarea a.link_btn {
    width: 100%;
    margin: 10px 0 0;
    padding: 20px 20px;
    font-size: 1.6rem;
  }
  .linkarea .ticket_open .ticket_linetext {
    font-size: 90%;
    margin: 20px 0 10px;
  }
}
.linkarea a.link_btn.attention {
  background-color: #e9553a;
  font-size: 2.2rem;
  color: #fff;
}

#contact a.link_btn {
  padding: 30px 100px;
  margin: 3% auto;
  color: #000;
  font-weight: bold;
  background-color: #f1c751;
  text-decoration: none;
  display: inline-block;
  width: auto;
  font-size: 2rem;
}

#contact a.link_btn:hover {
  background: #f7d573;
  cursor: pointer !important;
}

@media (max-width: 767px) {
  #contact a.link_btn {
    width: 100%;
    margin: 10px 0 0;
    padding: 20px 20px;
    font-size: 1.6rem;
  }
}
#contact .sec_box_inner p.caution {
  font-size: 1.5rem;
}

@media (max-width: 767px) {
  #contact .sec_box_inner p.caution {
    font-size: 1.3rem;
  }
}
.support dl {
  margin: 0 auto;
  margin-bottom: 35px;
  text-align: center;
}

.support dl dt {
  font-weight: bold;
  margin-bottom: 12px;
}

.support dl dd {
  display: inline-block;
  margin: 0 3%;
  vertical-align: middle;
  margin-bottom: 24px;
}

@media (max-width: 767px) {
  .support dl dd {
    display: block;
    margin: 0 0 30px 0;
  }
}
.support dl dd img {
  width: 150px;
}

.support dl dd a {
  color: #222;
}

.support dl dd span {
  font-size: 1.2rem;
}

.support dl dd.sponsor01 img {
  width: 200px;
}

.support dl dd.sponsor02 img {
  width: 130px;
}

.sec_box.entry p {
  text-align: center;
  line-height: 1.8;
  margin-bottom: 0;
}

.sec_box.entry h3 {
  text-align: center;
  font-size: 2.3rem;
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 1.8;
}

@media (max-width: 767px) {
  .sec_box.entry h3 {
    font-size: 2rem;
  }
}
.sec_box.rental p {
  text-align: center;
  line-height: 1.8;
}

.sec_box.rental h3 {
  text-align: center;
  font-size: 2.3rem;
  font-weight: bold;
  margin-bottom: 40px;
  line-height: 1.8;
}

@media (max-width: 767px) {
  .sec_box.rental h3 {
    font-size: 2rem;
    margin-bottom: 30px;
  }
}
.rental_bnr,
.entry_bnr {
  text-align: center;
}

.rental_bnr a.link_btn,
.entry_bnr a.link_btn {
  padding: 20px 40px;
  margin: 3% auto;
  color: #222;
  font-weight: bold;
  background-color: #fff;
  border: 1px solid #222;
  text-decoration: none;
  display: inline-block;
  width: auto;
}

.rental_bnr a.link_btn:hover,
.entry_bnr a.link_btn:hover {
  background: #eee;
  cursor: pointer !important;
}

@media (max-width: 767px) {
  .rental_bnr,
  .entry_bnr {
    width: 100%;
    margin: 0;
    padding: 20px 20px;
    font-size: 1.6rem;
  }
}
/* ticket */
.cont h2 {
  font-size: 5rem;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.4rem;
  margin: 5% 0;
}

@media (max-width: 767px) {
  .cont h2 {
    font-size: 3.5rem;
    margin: 20px 0 40px;
  }
}
.cont .cont_box {
  background: #fff;
  max-width: none;
}

.ticket .ticket_link {
  margin-bottom: 80px;
}

@media (max-width: 767px) {
  .ticket .ticket_link {
    margin-bottom: 0;
  }
}
.ticket .ticket_link li {
  display: inline-block;
  margin-right: 3%;
  margin-bottom: 35px;
}

@media (max-width: 767px) {
  .ticket .ticket_link li {
    margin-bottom: 15px;
    margin-right: 0;
  }
}
.ticket .ticket_link li a {
  color: #222;
}

.ticket .ticket_link li i {
  margin-left: 5px;
}

.ticket .ticket_release {
  margin-bottom: 80px;
}

@media (max-width: 767px) {
  .ticket .ticket_release {
    border-bottom: 2px dotted #222;
    padding-bottom: 30px;
    margin-bottom: 50px;
  }
}
.ticket .ticket_release .ticket_text {
  text-align: center;
  font-size: 2.5rem;
  color: #e8472f;
  font-weight: bold;
}

.ticket .ticket_release .ticket_text_coming {
  color: #222;
}

@media (max-width: 767px) {
  .ticket .ticket_release .ticket_text {
    font-size: 2rem;
  }
}
.ticket .ticket_release li {
  margin-bottom: 5px;
  line-height: 1.8;
}

@media (max-width: 767px) {
  .ticket .ticket_release li {
    margin-bottom: 5px;
  }
}
.ticket .ticket_release li a {
  color: #222;
}

.ticket .ticket_box {
  padding: 100px 0 150px;
  margin-top: -100px;
}

@media (max-width: 767px) {
  .ticket .ticket_box {
    padding: 150px 0 50px;
  }
}
.ticket .ticket_box h3 {
  text-align: center;
  margin: 0 auto 50px;
}

@media (max-width: 767px) {
  .ticket .ticket_box h3 {
    margin-bottom: 30px;
  }
}
.ticket .ticket_box h3 span {
  display: inline-block;
  border-bottom: 4px solid #222;
  padding: 0 5px 10px;
  font-size: 2.5rem;
  font-weight: bold;
}

@media (max-width: 767px) {
  .ticket .ticket_box h3 span {
    font-size: 2.2rem;
    border-bottom: 3px solid #222;
    padding-bottom: 15px;
  }
}
.ticket .ticket_box table {
  border-top: 1px solid #222;
  margin: 30px 0 50px;
  border-spacing: 0;
  border-collapse: collapse;
  width: 100%;
}

.ticket .ticket_box table th,
.ticket .ticket_box table td {
  border: 1px solid #222;
  padding: 20px;
}

@media (max-width: 767px) {
  .ticket .ticket_box table th,
  .ticket .ticket_box table td {
    border: none;
    border-bottom: 1px solid #222;
    padding: 20px 0;
  }
}
.ticket .ticket_box table th {
  background: #fff;
  font-weight: normal;
}

.ticket .ticket_box table th.th01 {
  width: 75%;
}

@media (max-width: 767px) {
  .ticket .ticket_box table th.th01 {
    width: 65%;
  }
}
.ticket .ticket_box table td.price {
  text-align: right;
}

.ticket .ticket_box table td {
  line-height: 1.8;
}

.ticket .ticket_box table td span {
  font-weight: bold;
}

.ticket .ticket_box .ticket_attention div {
  background: #eee;
  padding: 30px;
}

@media (max-width: 767px) {
  .ticket .ticket_box .ticket_attention div {
    padding: 20px 10px;
  }
}
.ticket .ticket_box .ticket_attention ul {
  margin-left: 20px;
}

.ticket .ticket_box .ticket_attention li {
  list-style: disc;
  line-height: 1.8;
  margin-bottom: 10px;
  font-size: 1.5rem;
}

.ticket .ticket_rulu h3 {
  text-align: left;
  font-weight: bold;
  font-size: 2rem;
}

.ticket .link_ticket {
  text-align: center;
  margin-bottom: 50px;
}

.ticket .link_ticket a.link_btn {
  padding: 30px 100px;
  margin: 0 auto;
  color: #fff;
  font-weight: bold;
  background-color: #e8472f;
  text-decoration: none;
  display: inline-block;
  width: auto;
  font-size: 2rem;
}

.ticket .link_ticket a.link_btn:hover {
  background: #ff6e5f;
  cursor: pointer !important;
}

.ticket .link_ticket a.line_btn {
  margin-top: 0;
  background-color: #f1c751;
  color: #000;
}

.ticket .link_ticket a.line_btn:hover {
  background: #f7d573;
}

.ticket .link_ticket .ticket_linetext {
  font-size: 110%;
  text-align: center;
  margin: 15px 0 10px;
  font-weight: bold;
}

@media (max-width: 767px) {
  .ticket .link_ticket a.link_btn {
    width: 100%;
    margin: 10px 0 0;
    padding: 20px 20px;
    font-size: 1.6rem;
  }
  .ticket .link_ticket .ticket_linetext {
    font-size: 90%;
    margin: 25px 0 0;
  }
}
.ticket .limit {
  color: #ff0000;
}

.ticket .h_setbox .hinataarea_img {
  margin-bottom: 30px;
}

.ticket .h_setbox .hinataarea_img img {
  width: 30%;
  margin: 0 1% 2%;
  display: inline-block;
}

@media (max-width: 767px) {
  .ticket .h_setbox .hinataarea_img img {
    width: 47%;
    margin: 0 1% 3%;
  }
}
/* stage */
.stage_info {
  margin-bottom: 100px;
}

@media (max-width: 767px) {
  .stage_info {
    margin-bottom: 0;
  }
}
.stage_info .stage_cont h3 {
  text-align: center;
  margin: 150px auto 50px;
}

@media (max-width: 767px) {
  .stage_info .stage_cont h3 {
    margin-bottom: 30px;
  }
}
.stage_info .stage_cont h3 span {
  display: inline-block;
  border-bottom: 4px solid #222;
  padding: 0 5px 10px;
  font-size: 2.5rem;
  font-weight: bold;
}

@media (max-width: 767px) {
  .stage_info .stage_cont h3 span {
    font-size: 2.2rem;
    border-bottom: 3px solid #222;
    padding-bottom: 15px;
  }
}
.stage_guest {
  margin: 60px 0 100px;
}

.stage_guest .hl_img {
  width: 46%;
  float: left;
}

.stage_guest .hl_prof {
  width: 50%;
  float: right;
  text-align: left;
}

.stage_guest .hl_prof dl {
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 20px;
}

.stage_guest .hl_prof dl:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: inline-block;
  width: 15px;
  height: 1px;
  background-color: #000;
}

@media (max-width: 1024px) {
  .stage_guest .hl_prof dl {
    text-align: center;
    margin-bottom: 30px;
  }
  .stage_guest .hl_prof dl:after {
    left: 48%;
  }
}
.stage_guest .hl_prof dd.hl_name {
  font-size: 3rem;
  font-weight: bold;
}

@media (max-width: 1024px) {
  .stage_guest .hl_img,
  .stage_guest .hl_prof {
    width: 100%;
    float: none;
  }
  .stage_guest .hl_prof {
    margin-top: 50px;
  }
  .stage_guest .hl_sns {
    margin-top: 30px;
  }
  .stage_guest .hl_prof dd.hl_name {
    font-size: 2.7rem;
  }
}
.stage_guest .hl_sns li {
  display: inline-block;
  margin-right: 20px;
  line-height: 2;
}

.stage_guest .hl_sns li i {
  margin-right: 10px;
}

.stage_guest .hl_sns li a {
  color: #000;
}

@media (max-width: 767px) {
  .stage_guest .hl_sns li.sns_youtube {
    display: block;
  }
}
/* contents */
.contents .contents_all {
  padding: 30px 0 50px;
}

.contents .contents_all h3 {
  text-align: center;
  margin: 0 auto 50px;
}

@media (max-width: 767px) {
  .contents .contents_all h3 {
    margin-bottom: 30px;
  }
}
.contents .contents_text {
  margin-bottom: 80px;
}

@media (max-width: 767px) {
  .contents .contents_text {
    margin-bottom: 50px;
  }
}
.contents .contents_all h3 span {
  display: inline-block;
  border-bottom: 4px solid #222;
  padding: 0 5px 10px;
  font-size: 2.5rem;
  font-weight: bold;
}

@media (max-width: 767px) {
  .contents .contents_all h3 span {
    font-size: 2.2rem;
    border-bottom: 3px solid #222;
    padding-bottom: 15px;
  }
}
.contents .contents_thum div {
  display: inline-block;
  width: 47%;
  margin: 0 5% 5% 0;
  vertical-align: top;
}

@media (max-width: 767px) {
  .contents .contents_thum div {
    display: block;
    width: 100%;
    margin: 0 0 40px 0;
  }
}
.contents .contents_thum div:nth-child(2n) {
  margin-right: 0;
}

.contents .contents_thum figure {
  margin: 0 0 20px 0;
}

.contents .contents_item dl dt {
  font-weight: bold;
  margin-bottom: 10px;
}

.contents .contents_item dl dd {
  margin-bottom: 10px;
}

.contents .contents_item dl dd a {
  color: #777;
  font-size: 1.5rem;
}

.contents .program_item dl {
  display: inline-block;
  width: 47%;
  margin: 0 5% 5% 0;
  vertical-align: top;
}

.contents .program_item dt {
  margin-bottom: 10px;
}

@media (max-width: 767px) {
  .contents .program_item dl {
    display: block;
    width: 100%;
    margin: 0 0 40px 0;
  }
}
.contents .program_item dl:nth-child(2n) {
  margin-right: 0;
}

/* access */
.access .access_cont h3 {
  text-align: center;
  margin: 0 auto 50px;
}

@media (max-width: 767px) {
  .access .access_cont h3 {
    margin-bottom: 30px;
  }
}
.access .access_cont h3 span {
  display: inline-block;
  border-bottom: 4px solid #222;
  padding: 0 5px 10px;
  font-size: 2.5rem;
  font-weight: bold;
}

@media (max-width: 767px) {
  .access .access_cont h3 span {
    font-size: 2.2rem;
    border-bottom: 3px solid #222;
    padding-bottom: 15px;
  }
}
.access .access_cont dl dt {
  font-weight: bold;
  font-size: 2rem;
  margin-bottom: 10px;
}

.access .access_cont .gmap {
  margin: 30px 0 80px;
  height: 500px;
}

@media (max-width: 767px) {
  .access .access_cont .gmap {
    height: 300px;
  }
}
/* guideline */
.guideline .guideline_cont {
  margin: 0 0 8% 0;
}

.guideline .guideline_cont h3 {
  text-align: center;
  font-size: 2.3rem;
  font-weight: bold;
  margin-bottom: 10px;
  line-height: 1.8;
}

@media (max-width: 767px) {
  .guideline .guideline_cont h3 {
    font-size: 2rem;
    margin-bottom: 30px;
  }
}
.guideline .guideline_cont .subtxt {
  text-align: center;
}

@media (max-width: 767px) {
  .guideline .guideline_cont .subtxt {
    text-align: left;
  }
}
.guideline .guideline_box {
  margin: 80px 0 0 0;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

.guideline .guideline_box a {
  color: #222;
}

.guideline .guideline_box h4 {
  font-weight: bold;
  margin-bottom: 20px;
  font-size: 1.8rem;
  line-height: 1.8;
}

.guideline .guideline_box ul {
  margin-left: 20px;
}

.guideline .guideline_box ul li {
  list-style: disc;
  line-height: 1.8;
  margin-bottom: 10px;
  font-size: 1.5rem;
}

.guideline .guideline_box .textlink a {
  padding: 20px 70px;
  margin: 0 0 2%;
  color: #222;
  font-weight: bold;
  background-color: #fff;
  border: 1px solid #222;
  text-decoration: none;
  display: inline-block;
  width: auto;
}

.guideline .guideline_box .textlink a:hover {
  background: #eee;
  cursor: pointer !important;
}

@media (max-width: 767px) {
  .guideline .guideline_box .textlink a {
    width: 100%;
    padding: 20px;
    margin-bottom: 30px;
    text-align: center;
  }
}
.guideline .guideline_box .guideline_subbox {
  margin-top: 30px;
}

.guideline .guideline_box .guideline_subbox .sub {
  margin-bottom: 15px;
}

.guideline .guideline_box .guideline_subbox ol {
  margin-left: 0;
}

.guideline .guideline_box .guideline_subbox ol li {
  list-style: none;
  line-height: 1.8;
  margin-bottom: 10px;
  font-size: 1.5rem;
}

.guideline .guideline_box .qa span {
  margin-right: 5px;
}

.guideline .guideline_box .qa dt {
  margin-bottom: 5px;
}

.guideline .guideline_box .qa dd {
  margin-bottom: 30px;
}

.guideline .guideline_box.second {
  margin-top: 40px;
}

.guideline .guideline_topic {
  margin: 50px 0 100px;
  background: #fdf6e4;
  padding: 70px 70px;
  width: 100%;
}

@media (max-width: 767px) {
  .guideline .guideline_topic {
    margin-bottom: 80px;
    padding: 30px 20px;
  }
}
.guideline .guideline_topic .topic_ttl {
  font-weight: bold;
  text-align: center;
  font-size: 2.2rem;
  line-height: 1.8;
}

@media (max-width: 767px) {
  .guideline .guideline_topic .topic_ttl {
    font-size: 1.8rem;
    margin-bottom: 30px;
  }
}
.guideline .guideline_topic .topic_img {
  text-align: center;
  margin: 40px 0 60px;
  width: 100%;
}

.guideline .guideline_topic .topic_img img {
  width: 90%;
}

@media (max-width: 767px) {
  .guideline .guideline_topic .topic_img {
    display: none;
  }
}
.guideline .guideline_topic .topic_txt {
  background: #fff;
  padding: 50px 40px 10px;
  margin-bottom: 60px;
  font-size: 1.5rem;
}

@media (max-width: 767px) {
  .guideline .guideline_topic .topic_txt {
    padding: 20px 20px 10px;
  }
}
.guideline .guideline_topic .topic_txt dt {
  font-weight: bold;
  margin-bottom: 15px;
}

@media (max-width: 767px) {
  .guideline .guideline_topic .topic_txt dt {
    text-align: center;
  }
  .guideline .guideline_topic .topic_txt dt img {
    display: inline-block;
    width: 50%;
    padding-bottom: 15px;
  }
  .guideline .guideline_topic .topic_txt dt span {
    display: block;
  }
}
.guideline .guideline_topic .topic_txt dd {
  margin-bottom: 40px;
}

.guideline .guideline_topic .topic_message .me_ttl {
  font-weight: bold;
  text-align: center;
  font-size: 2.2rem;
  line-height: 1.8;
  margin-bottom: 40px;
  padding-bottom: 20px;
  border-bottom: 1px #222 solid;
}

@media (max-width: 767px) {
  .guideline .guideline_topic .topic_message .me_ttl {
    font-size: 1.8rem;
    margin-bottom: 30px;
    padding-bottom: 20px;
  }
}
.guideline .guideline_topic .topic_message .from {
  text-align: right;
}

@media (max-width: 767px) {
  .guideline .guideline_topic .topic_message .from {
    margin-bottom: 0;
  }
}
.guideline .cont_box a {
  color: #666;
  text-decoration: underline;
}

/* news */
.news .news_cont {
  padding-top: 30px;
}

@media (max-width: 767px) {
  .news .news_cont {
    padding-top: 0;
  }
}
.news .news_cont h3 {
  text-align: center;
  font-size: 2.3rem;
  font-weight: bold;
  margin-bottom: 60px;
  line-height: 1.8;
}

@media (max-width: 767px) {
  .news .news_cont h3 {
    font-size: 2rem;
    margin-bottom: 30px;
  }
}
.news .news_cont .from {
  text-align: right;
  margin-top: 40px;
}

/* areamap */
.areamap .guideline_box {
  margin: 80px 0 100px 0;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

.areamap .guideline_box a {
  color: #222;
}

.areamap .guideline_box h4 {
  font-weight: bold;
  margin-bottom: 20px;
  font-size: 1.8rem;
  line-height: 1.8;
}

.areamap .guideline_box ul {
  margin-left: 20px;
}

.areamap .guideline_box ul li {
  list-style: disc;
  line-height: 1.8;
  margin-bottom: 10px;
  font-size: 1.5rem;
}

.areamap .guideline_box .textlink a {
  padding: 20px 70px;
  margin: 0 0 2%;
  color: #222;
  font-weight: bold;
  background-color: #fff;
  border: 1px solid #222;
  text-decoration: none;
  display: inline-block;
  width: auto;
}

.areamap .guideline_box .textlink a:hover {
  background: #eee;
  cursor: pointer !important;
}

.areamap .guideline_box .attention_text {
  color: #ff0000;
}

/* goods */
.goods .goods_all {
  padding: 30px 0 50px;
}

.goods .goods_all h3 {
  text-align: center;
  margin: 0 auto 50px;
}

@media (max-width: 767px) {
  .goods .goods_all h3 {
    margin-bottom: 30px;
  }
}
.goods .goods_text {
  margin-bottom: 60px;
}

@media (max-width: 767px) {
  .goods .goods_text {
    margin-bottom: 0;
  }
}
.goods .goods_info_text {
  margin-bottom: 5px;
}

.goods .goods_info_text span {
  color: #ff0000;
}

.goods .goods_all h3 span {
  display: inline-block;
  border-bottom: 4px solid #222;
  padding: 0 5px 10px;
  font-size: 2.5rem;
  font-weight: bold;
}

@media (max-width: 767px) {
  .goods .goods_all h3 span {
    font-size: 2.2rem;
    border-bottom: 3px solid #222;
    padding-bottom: 15px;
  }
}
.goods .goods_thum div {
  display: inline-block;
  width: 47%;
  margin: 0 5% 5% 0;
  vertical-align: top;
}

@media (max-width: 767px) {
  .goods .goods_thum div {
    display: block;
    width: 100%;
    margin: 0 0 40px 0;
  }
}
.goods .goods_p {
  display: inline-block;
  width: 47%;
  margin: 0 5% 5% 0;
  vertical-align: top;
}

.goods .goods_p figure {
  margin: 0 auto 20px;
  width: 100%;
}

.goods .goods_p dl dt {
  font-weight: bold;
  margin-bottom: 10px;
}

@media (max-width: 767px) {
  .goods .goods_p {
    display: block;
    width: 100%;
    margin: 0 0 40px 0;
  }
}
.goods .goods_p:nth-child(2n) {
  margin-right: 0;
}

.goods .goods_other {
  margin-top: 30px;
  font-size: 90%;
}

.goods .goods_other li {
  margin-bottom: 5px;
  line-height: 1.8;
}

.goods .goods_illust {
  margin-top: 50px;
}

.goods .goods_illust h3 {
  text-align: left;
  font-weight: bold;
  font-size: 2rem;
  margin-bottom: 50px;
}

.goods .illust_prof {
  background: #fcfcfc;
  padding: 20px;
}

.goods .illust_prof div {
  display: inline-block;
  width: 47%;
  margin: 0 5% 0 0;
  vertical-align: top;
}

.goods .illust_prof .illust_prof_text {
  margin-right: 0;
}

@media (max-width: 767px) {
  .goods .illust_prof div {
    display: block;
    width: 100%;
    margin: 0 0 40px 0;
  }
  .goods .illust_prof .illust_prof_text {
    margin-right: 0;
    margin-bottom: 0;
  }
}
.goods .illust_prof dl {
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 20px;
}

.goods .illust_prof dl:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: inline-block;
  width: 15px;
  height: 1px;
  background-color: #000;
}

.goods .illust_prof dl dt {
  font-weight: bold;
  font-size: 3rem;
}

.goods .illust_prof .hl_sns a {
  color: #000;
  font-size: 1.5rem;
}

.goods .illust_prof .hl_sns a i {
  margin-right: 10px;
}

.goods .goods_info h3 {
  text-align: left;
  font-weight: bold;
  font-size: 2rem;
  margin-bottom: 50px;
}

.goods .goods_info {
  margin-top: 100px;
}

.goods .goods_info .goods_info_area h4 {
  font-weight: bold;
  margin-bottom: 15px;
}

.goods .goods_info .goods_attention {
  margin-bottom: 40px;
}

.goods .goods_info .goods_attention ul {
  margin-left: 25px;
}

.goods .goods_info .goods_attention li {
  list-style: disc;
  line-height: 1.8;
  margin-bottom: 10px;
  font-size: 1.5rem;
}

.goods .goods_info .goods_attention .goods_table {
  margin: 10px 40px 10px 0;
  display: inline-block;
  width: auto;
}

@media (max-width: 767px) {
  .goods .goods_info .goods_attention .goods_table {
    width: 100%;
    margin: 10px 0;
    display: block;
  }
}
.goods .goods_info .goods_attention .goods_table table {
  margin: 15px 0 0 0;
  border: 1px solid #222;
  text-align: center;
  border-spacing: 0;
  border-collapse: collapse;
}

.goods .goods_info .goods_attention .goods_table table p {
  margin: 0;
}

.goods .goods_info .goods_attention .goods_table table th,
.goods .goods_info .goods_attention .goods_table table td {
  border: 1px solid #222;
  padding: 10px 15px;
}

@media (max-width: 767px) {
  .goods .goods_info .goods_attention .goods_table table th,
  .goods .goods_info .goods_attention .goods_table table td {
    padding: 10px;
  }
}
.goods .goods_info .goods_attention .goods_table table th {
  font-weight: bold;
  background-color: #ddd;
}

.goods .goods_info .goods_attention .goods_table table .td01 {
  font-weight: bold;
  background-color: #eee;
}

.goods .goods_info .goods_attention .goods_table .table_comment {
  font-size: 85%;
  text-align: right;
}

.goods .link_goods {
  text-align: center;
  margin-bottom: 100px;
  margin-top: 80px;
}

@media (max-width: 767px) {
  .goods .link_goods {
    margin-top: 10px;
    margin-bottom: 50px;
  }
}
.goods .link_goods a.link_btn {
  padding: 30px 100px;
  margin: 0 auto;
  color: #fff;
  font-weight: bold;
  background-color: #e8472f;
  text-decoration: none;
  display: inline-block;
  width: auto;
  font-size: 2rem;
}

.goods .link_goods a.link_btn:hover {
  background: #ff6e5f;
  cursor: pointer !important;
}

@media (max-width: 767px) {
  .goods .link_goods a.link_btn {
    width: 100%;
    margin: 10px 0 0;
    padding: 20px 20px;
    font-size: 1.6rem;
  }
}
/* footer */
footer {
  width: auto;
  margin: 0 auto;
  padding: 100px 0 100px;
  text-align: center;
}

@media (max-width: 1024px) {
  footer {
    width: 88%;
    padding-top: 50px;
  }
}
.index footer {
  padding-top: 20px;
}

footer p {
  text-align: center;
}

footer .caution {
  font-size: 1.3rem;
}

@media (max-width: 767px) {
  footer .caution {
    font-size: 1.2rem;
  }
}
footer .copy {
  width: 80%;
  margin: 0 auto;
  font-size: 1.2rem;
}

@media (max-width: 767px) {
  footer .copy {
    text-align: center;
    font-size: 1.2rem;
    margin-top: 40px;
  }
}
footer .flink {
  font-size: 1.3rem;
  margin: 30px 0;
}

@media (max-width: 767px) {
  footer .flink {
    margin-top: 40px;
  }
}
footer .flink a {
  color: #222;
}

footer .snslink li {
  margin: 0 8px;
  display: inline-block;
}

footer .snslink a i,
footer .snslink a .fa-instagram:before {
  color: #222;
}

@media (max-width: 767px) {
  footer .snslink {
    margin-top: 30px;
  }
}
.fix_btn {
  display: none;
}

@media (max-width: 767px) {
  .fix_btn {
    position: fixed;
    bottom: 0;
    width: 100%;
    text-align: center;
    background: #fff;
  }
  .fix_btn a {
    color: #000;
    font-weight: bold;
    background-color: #f1c751;
    text-decoration: none;
    display: inline-block;
    width: 100%;
    padding: 20px 20px;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
  }
  .fix_btn a:hover {
    opacity: 0.8;
  }
}
.sec_box.message h2 {
  font-size: 3rem;
  position: relative;
  margin: 0 auto 60px;
  font-weight: bold;
  text-align: center;
  padding: 0;
}

@media (max-width: 767px) {
  .sec_box.message h2 {
    font-size: 2.2rem;
    margin-bottom: 40px;
    line-height: 1.5;
    padding: 0;
  }
}
section.sec_box.message {
  margin: 80px auto;
  max-width: 750px;
}

.sec_box.message p {
  line-height: 1.8;
}

@media (max-width: 767px) {
  .sec_box.message p {
    font-size: 1.5rem;
    margin-bottom: 5%;
    line-height: 2;
  }
}
.attention .sec_box_inner {
  padding: 70px 0 50px;
  text-align: center;
  max-width: 750px;
}

.attention .sec_box_inner .font_orange {
  color: #f29600;
  text-align: center;
  font-size: 2rem;
  margin-bottom: 40px;
}

.attention .sec_box_inner .font_orange p {
  font-weight: bold;
}

@media (max-width: 767px) {
  .attention .sec_box_inner .font_orange {
    font-size: 1.6rem;
  }
}
.attention .sec_box_inner .contact_ttl {
  font-size: 3.3rem;
  margin-bottom: 10px;
}

@media (max-width: 767px) {
  .attention .sec_box_inner .contact_ttl {
    font-size: 3rem;
    line-height: 1.6;
    margin-bottom: 10px;
  }
  .attention .sec_box_inner .contact_subttl {
    font-size: 2.3rem;
    line-height: 1.4;
  }
}
.attention .ul01 {
  margin: 0px auto 18px auto;
  padding: 0px;
  color: #fff;
}

.attention .ul01 li {
  margin: 0px auto 0px 1em;
  padding: 0px;
  list-style-type: disc;
  list-style-position: outside;
  text-align: left;
  line-height: 1.8;
  font-weight: 300;
  margin-bottom: 3%;
}

.sec_box.comment {
  padding: 70px 0 50px;
  max-width: 750px;
  margin: 0 auto;
}

.sec_box.comment h3 {
  font-size: 3rem;
  position: relative;
  margin: 0 auto 60px;
  font-weight: bold;
  text-align: center;
}

@media (max-width: 767px) {
  .sec_box.comment h3 {
    font-size: 2.2rem;
    margin-bottom: 40px;
    line-height: 1.5;
    padding: 0;
  }
}
.menu-item-non-link.grey {
  color: grey !important;
  pointer-events: none;
}

@media screen and (max-width: 767px) {
  .main_img.pc {
    display: none;
  }
}
@media screen and (min-width: 767px) {
  .main_img.sp {
    display: none;
  }
}
.gold_sponsor_wrapper a, .area_sponsor_wrapper a {
  width: 50%;
}
.gold_sponsor_wrapper a img, .area_sponsor_wrapper a img {
  max-width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .gold_sponsor_wrapper a, .area_sponsor_wrapper a {
    width: 100%;
  }
}

.sponsor_wrapper a {
  width: 25%;
}
.sponsor_wrapper a img {
  max-width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .sponsor_wrapper a {
    width: 50%;
  }
}

.contents_thum.goldsponsor, .contents_thum.areasponsor {
  display: flex;
  justify-content: center;
  margin-bottom: 50px;
}
.contents_thum.goldsponsor .contents_item, .contents_thum.areasponsor .contents_item {
  margin: 0;
}/*# sourceMappingURL=style.css.map */