@charset "UTF-8";
.d_none {
  display: none !important;
}

@media screen and (min-width: 769px) and (max-width: 1919px) {
  .for_sp {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .for_pc {
    display: none !important;
  }
}
/* --------------------------------------------------------- */
@font-face {
  font-family: "Kakugo_S";
  src: url("../fonts/Kakugo_SmallPr6N-M.otf") format("opentype");
  src: url("../fonts/Kakugo_SmallPr6N-M.woff") format("woff");
  src: url("../fonts/Kakugo_SmallPr6N-M.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Kakugo_S";
  src: url("../fonts/Kakugo_SmallPr6N-DB.otf") format("opentype");
  src: url("../fonts/Kakugo_SmallPr6N-DB.woff") format("woff");
  src: url("../fonts/Kakugo_SmallPr6N-DB.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "Kakugo_S";
  src: url("../fonts/Kakugo_SmallPr6N-B.otf") format("opentype");
  src: url("../fonts/Kakugo_SmallPr6N-B.woff") format("woff");
  src: url("../fonts/Kakugo_SmallPr6N-B.woff2") format("woff2");
  font-weight: 900;
  font-style: normal;
}
@font-face {
  font-family: "TunnelMin";
  src: url("../fonts/TunnelMin-Tightline.otf") format("opentype");
  src: url("../fonts/TunnelMin-Tightline.woff") format("woff");
  src: url("../fonts/TunnelMin-Tightline.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "TunnelMin";
  src: url("../fonts/TunnelMin-Wideline.otf") format("opentype");
  src: url("../fonts/TunnelMin-Wideline.woff") format("woff");
  src: url("../fonts/TunnelMin-Wideline.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
}
/* --------------------------------------------------------- */
* {
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-overflow-scrolling: touch;
}

/* --------------------------------------------------------- */
html, body, div, h1, h2, h3, h4, h5, h6, p, blockquote, pre, address, ul, ol, li, dl, dt, dd, table, th, td, form, fieldset {
  margin: 0;
  padding: 0;
  font-family: HelveticaNeue, Helvetica, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "MS Pゴシック", sans-serif;
  line-height: 160%;
  zoom: 1;
  -webkit-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -o-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -ms-font-smoothing: antialiased;
  -o-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
}

/* --------------------------------------------------------- */
#Wrapper {
  position: relative;
  z-index: 1;
  background: #E0DDDA;
}

/* --------------------------------------------------------- */
img {
  margin: 0px;
  padding: 0px;
}

a img {
  border: none;
  overflow: hidden;
  outline: none;
}

/* --------------------------------------------------------- */
a {
  outline: none;
}

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

/* IE6 */
* htm .clearfix {
  height: 1%;
}

/* IE7 */
*:first-child + html .clearfix {
  height: 1%;
}

.ie_hack {
  display: none;
}

@media all and (-ms-high-contrast: none) {
  .ie_hack {
    display: block;
  }
}
/* --------------------------------------------------------- */
a {
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

/* --------------------------------------------------------- */
.indent {
  text-indent: -1em;
  padding-left: 1em;
}

.bold {
  font-weight: 600;
}

.left {
  text-align: left !important;
}

.right {
  text-align: right !important;
}

.center {
  text-align: center !important;
}

ol, ul {
  list-style-type: none;
}

/*=========================================================================
MODAL BASIC
=========================================================================*/
@media screen and (min-width: 769px) and (max-width: 1919px) {
  .for_sp {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .for_pc {
    display: none !important;
  }
}
/* --------------------------------------------------------- */
#modalWrapper {
  background-color: #fff;
  max-width: 1240px;
  width: 100%;
  margin: 0 auto;
}

/* ---------------------------------------------------------------------- */
.btn_basic {
  line-height: 120%;
  text-align: right;
  font-size: 26px;
}
@media screen and (min-width: 769px) and (max-width: 1919px) {
  .btn_basic {
    font-size: 1.354vw;
  }
}
.btn_basic {
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .btn_basic {
    font-size: 3.385vw;
  }
}
.btn_basic a {
  display: inline-block;
  color: #391215;
  text-decoration: none;
  border-radius: 100vh;
  padding: 0.4rem 1.5rem;
  background: #fff363;
  border: 1px solid #391215;
}
.btn_basic a:hover {
  background: #391215;
  color: #ffde8f;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}

/* ---------------------------------------------------------------------- */
/* MAIN CONTENTS 
/* ---------------------------------------------------------------------- */
#modalContents {
  width: 92%;
  height: auto;
  margin: 0 auto;
}

/* ---------------------------------------------------------------------- */
dl#modalBody {
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 4% 0;
}
@media screen and (max-width: 768px) {
  dl#modalBody {
    display: block;
  }
}
dl#modalBody dt, dl#modalBody dd {
  height: auto;
}
dl#modalBody dt {
  width: 46%;
  margin-right: 3%;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  dl#modalBody dt {
    width: 100%;
    margin: 0 auto 3%;
  }
}
dl#modalBody.stage dt {
  padding-top: 3rem;
}
dl#modalBody dd {
  width: 51%;
}
@media screen and (max-width: 768px) {
  dl#modalBody dd {
    width: 100%;
    margin: 0 auto;
  }
}
dl#modalBody dd .one_period {
  padding: 0 1rem;
}

/* ---------------------------------------------------------------------- */
#modalPhoto {
  width: 100%;
  position: sticky;
  left: 0;
  top: 0rem;
  height: auto;
  display: block;
  padding: 0;
  margin: 0 auto;
}
#modalPhoto img {
  width: 100%;
  height: auto;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 20px;
  border: 2px solid #391215;
}

dl#modalBody dt #modalPhoto {
  top: 3rem;
}

#eventTitle {
  text-align: center;
  font-weight: 600;
  color: #391215;
  line-height: 160%;
  margin-bottom: 4%;
  font-size: 40px;
}
@media screen and (min-width: 769px) and (max-width: 1919px) {
  #eventTitle {
    font-size: 2.084vw;
  }
}
@media screen and (max-width: 1024px) {
  #eventTitle {
    font-size: 2.929vw;
  }
}
@media screen and (max-width: 768px) {
  #eventTitle {
    font-size: 4.687vw;
  }
}
#eventTitle span {
  font-size: 32px;
  display: block;
  line-height: 120%;
}
@media screen and (min-width: 769px) and (max-width: 1919px) {
  #eventTitle span {
    font-size: 1.667vw;
  }
}
@media screen and (max-width: 1024px) {
  #eventTitle span {
    font-size: 2.343vw;
  }
}
@media screen and (max-width: 768px) {
  #eventTitle span {
    font-size: 3.645vw;
  }
}

/* ---------------------------------------------------------------------- */
ul#event_notesList {
  list-style: none;
  width: 100%;
  height: auto;
  margin: 0 auto;
}
ul#event_notesList li {
  width: 100%;
  height: auto;
  padding: 6% 0;
  border-bottom: 1px solid #eeb877;
}
ul#event_notesList li:last-of-type {
  border-bottom: 0;
}
ul#event_notesList li p {
  margin-bottom: 1.4rem;
}
ul#event_notesList li p:last-of-type {
  margin-bottom: 0;
}
ul#event_notesList li p span.indent {
  display: block;
}
ul#event_notesList li p, ul#event_notesList li span {
  line-height: 160%;
  font-size: 26px;
}
@media screen and (min-width: 769px) and (max-width: 1919px) {
  ul#event_notesList li p, ul#event_notesList li span {
    font-size: 1.354vw;
  }
}
@media screen and (max-width: 1024px) {
  ul#event_notesList li p, ul#event_notesList li span {
    font-size: 1.562vw;
  }
}
@media screen and (max-width: 768px) {
  ul#event_notesList li p, ul#event_notesList li span {
    font-size: 3.385vw;
  }
}

/* ---------------------------------------------------------------------- */
.event_headline {
  line-height: 140%;
  font-weight: 600;
  margin-bottom: 3%;
  font-size: 32px;
}
@media screen and (min-width: 769px) and (max-width: 1080px) {
  .event_headline {
    font-size: 2.962vw;
  }
}
@media screen and (max-width: 768px) {
  .event_headline {
    font-size: 4.166vw;
  }
}

/* ---------------------------------------------------------------------- */
.icon_datelist {
  position: absolute;
  z-index: 2;
  top: -30px;
  left: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 480px) {
  .icon_datelist {
    top: -25px;
  }
}

.stage_date {
  margin-right: 0.4rem;
  font-family: "kei";
  background: #2d6cdf;
  color: #fff;
  padding: 0.2rem 0.4rem;
  border-radius: 10px;
  font-weight: 400;
  border: 1px solid #391215;
  font-size: 28px;
}
@media screen and (min-width: 769px) and (max-width: 1080px) {
  .stage_date {
    font-size: 2.592vw;
  }
}
@media screen and (max-width: 768px) {
  .stage_date {
    font-size: 3.645vw;
    padding: 0.4rem 0.6rem;
    border-radius: 16px;
  }
}
.stage_date:last-of-type {
  margin-right: 0;
}
.stage_date.red {
  background: #e53935;
}

/* ---------------------------------------------------------------------- */
#stage_linkList {
  margin: 9% auto 0;
  list-style: none;
  width: 100%;
  height: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
#stage_linkList.wide {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
#stage_linkList.wide .btn_basic {
  margin: 0 2% 2% 0;
}
#stage_linkList.wide .btn_basic a {
  text-align: center;
}
#stage_linkList .btn_basic {
  margin-left: 3%;
}
#stage_linkList .btn_basic a {
  letter-spacing: 0px;
  background: transparent;
  color: #391215;
  border-color: #391215;
}
#stage_linkList .btn_basic a:hover {
  background: #e53935;
  color: #ffde8f;
  border-color: #e53935;
}

/* ---------------------------------------------------------------------- */
.btnJoin a {
  display: inline-block;
  padding: 0.6rem 1rem;
  line-height: 120%;
  text-decoration: none;
  color: #fff;
  background: #663900;
  border: 2px solid #391215;
  border-radius: 8px;
  letter-spacing: 1px;
}
.btnJoin a:hover {
  background: #fff;
  color: #e53935;
  border-color: #e53935;
}

/* ---------------------------------------------------------------------- */
.modal_photo {
  width: 100%;
  height: auto;
  margin: 6% auto 0;
  padding: 0;
  display: block;
}
.modal_photo:last-of-type {
  margin-bottom: 0;
}
.modal_photo img {
  width: 100%;
  height: auto;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 12px;
}
.modal_photo p {
  margin-top: 0.4rem;
  font-size: 26px;
  line-height: 140%;
  text-align: center;
}
@media screen and (min-width: 769px) and (max-width: 1919px) {
  .modal_photo p {
    font-size: 1.354vw;
  }
}
@media screen and (max-width: 1024px) {
  .modal_photo p {
    font-size: 1.562vw;
  }
}
@media screen and (max-width: 768px) {
  .modal_photo p {
    font-size: 3.385vw;
  }
}