/* soraru CSS (home.css) */
.clearfix:before, .clearfix:after {
  content: "";
  display: table;
}
.clearfix:after {
  clear: both;
}

/* ============================================
 main_visual
============================================ */
#main_visual {
  position: relative;
  padding: 80px 10% 10%;
}
#main_visual .logo {
  margin-bottom: 5%;
}
#main_visual div {
  margin: 10px auto;
  position: relative;
}
#main_visual div .btn_entry {
  position: absolute;
  bottom: 7%;
  width: 90%;
  left: 5%;
}
#main_visual div.btn_wrap2 {
  margin-top: -25%;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#main_visual div .url_disc01 {
  position: absolute;
  display: block;
  background: #fff;
  opacity: 0;
  height: 4%;
  top: 34.3%;
  left: 50%;
  width: 46%;
}
#main_visual div .url_disc02 {
  position: absolute;
  display: block;
  background: #fff;
  opacity: 0;
  height: 4%;
  top: 60.3%;
  left: 50%;
  width: 46%;
}
#main_visual div .url_disc03 {
  position: absolute;
  display: block;
  background: #fff;
  opacity: 0;
  height: 4%;
  top: 91.3%;
  left: 50%;
  width: 46%;
}
#main_visual::after {
  content: "";
  position: absolute;
  left: 0;
  background: linear-gradient(45deg, #008c4f 50%, transparent 52%), linear-gradient(315deg, #008c4f 50%, transparent 52%);
  background-size: 30px 30px;
  height: 14px;
  width: 100%;
  bottom: 0;
}
#main_visual .url01 {
  position: absolute;
  top: 47.9%;
  left: 4%;
  width: 55%;
}
#main_visual .url02 {
  position: absolute;
  top: 58.5%;
  left: 38%;
  width: 35%;
}

/* ============================================
 main_visual
============================================ */
#main_visual2 {
  position: relative;
  padding: 80px 10% 10%;
}
#main_visual2 .logo {
  margin-bottom: 5%;
}
#main_visual2 .inner {
  margin: 0 auto;
  max-width: 800px;
}
#main_visual2 div {
  margin: 20px auto;
  position: relative;
}
#main_visual2 div .btn_entry {
  position: absolute;
  bottom: 7%;
  width: 90%;
  left: 5%;
}
#main_visual2 div.btn_wrap2 {
  margin-top: -25%;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#main_visual2 .url01 {
  position: absolute;
  top: 47.9%;
  left: 4%;
  width: 55%;
}
#main_visual2 .url02 {
  position: absolute;
  top: 58.5%;
  left: 38%;
  width: 35%;
}
#main_visual2 .url03 {
  position: absolute;
  display: block;
  background: #fff;
  opacity: 0;
  height: 1%;
  top: 53.3%;
  left: 3%;
  width: 76%;
}
#main_visual2 .url04 {
  position: absolute;
  display: block;
  background: #fff;
  opacity: 0;
  height: 1%;
  top: 56%;
  left: 3%;
  width: 62%;
}

section.attention {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding: 10% 3%;
}
section.attention .inner {
  margin: 0 auto;
  width: 84%;
}

#attention01 {
  background-color: #008c4f;
  background-image: radial-gradient(#00a24f 8%, transparent 11%), radial-gradient(#00a24f 8%, transparent 11%);
  background-position: 0 0, 25px 25px;
  background-size: 50px 50px;
}
#attention01::after {
  content: "";
  position: absolute;
  left: 0;
  background: linear-gradient(45deg, #866092 50%, transparent 52%), linear-gradient(315deg, #866092 50%, transparent 52%);
  background-size: 30px 30px;
  height: 14px;
  width: 100%;
  bottom: 0;
}

#attention02 {
  background-color: #866092;
  background-image: radial-gradient(#8c8997 8%, transparent 11%), radial-gradient(#8c8997 8%, transparent 11%);
  background-position: 0 0, 25px 25px;
  background-size: 50px 50px;
}
#attention02::after {
  content: "";
  position: absolute;
  left: 0;
  background: linear-gradient(45deg, #df4a52 50%, transparent 52%), linear-gradient(315deg, #df4a52 50%, transparent 52%);
  background-size: 30px 30px;
  height: 14px;
  width: 100%;
  bottom: 0;
}

#attention03 {
  background-color: #df4a52;
  background-image: radial-gradient(#df6166 8%, transparent 11%), radial-gradient(#df6166 8%, transparent 11%);
  background-position: 0 0, 25px 25px;
  background-size: 50px 50px;
}
#attention03::after {
  content: "";
  position: absolute;
  left: 0;
  background: linear-gradient(45deg, #f47e45 50%, transparent 52%), linear-gradient(315deg, #f47e45 50%, transparent 52%);
  background-size: 30px 30px;
  height: 14px;
  width: 100%;
  bottom: 0;
}

#attention04 {
  background-color: #f47e45;
  background-image: radial-gradient(#fca445 8%, transparent 11%), radial-gradient(#fca445 8%, transparent 11%);
  background-position: 0 0, 25px 25px;
  background-size: 50px 50px;
}
#attention04::after {
  content: "";
  position: absolute;
  left: 0;
  background: linear-gradient(45deg, #f4b300 50%, transparent 52%), linear-gradient(315deg, #f4b300 50%, transparent 52%);
  background-size: 30px 30px;
  height: 14px;
  width: 100%;
  bottom: 0;
}

#attention05 {
  background-color: #f4b300;
  background-image: radial-gradient(#ffd200 8%, transparent 11%), radial-gradient(#ffd200 8%, transparent 11%);
  background-position: 0 0, 25px 25px;
  background-size: 50px 50px;
}
#attention05::after {
  content: "";
  position: absolute;
  left: 0;
  background: linear-gradient(45deg, #f4b300 50%, transparent 52%), linear-gradient(315deg, #f4b300 50%, transparent 52%);
  background-size: 30px 30px;
  height: 14px;
  width: 100%;
  bottom: 0;
}

/* ============================================
 contents
============================================ */
#main {
  width: 100%;
  margin-top: 30px;
}

section {
  width: 90%;
  position: relative;
  margin: 10% auto;
  padding: 0px 3%;
}
section h2 {
  position: relative;
  text-align: center;
  line-height: 1;
  letter-spacing: 0.5px;
  color: #0028e4;
  font-size: 24px;
  font-size: 2rem;
  padding: 1.5rem 1rem;
  margin-bottom: 0;
}
section h2 img {
  width: 100%;
}
section .inner {
  position: relative;
  padding: 5px 0;
  margin-top: 10px;
}

.bg {
  width: 100%;
  height: auto;
}

.btn_info {
  width: 82%;
  position: relative;
  margin: 70px auto -30px;
  text-align: center;
  max-width: 700px;
}

/*-----------------------------------------------------------------
  schedule
------------------------------------------------------------------*/
#schedule01 h3, #schedule02 h3 {
  font-size: 18px;
  font-size: 1.5rem;
  font-weight: bold;
  margin-bottom: 50px;
  line-height: 1.5;
}
#schedule01 .box_schedule, #schedule02 .box_schedule {
  position: relative;
  text-align: center;
}
#schedule01 .box_schedule .info_url, #schedule02 .box_schedule .info_url {
  width: 45%;
}
#schedule01 .btn, #schedule02 .btn {
  position: absolute;
  top: 86%;
  width: 82%;
  left: 9%;
}
#schedule01 p.info, #schedule02 p.info {
  font-size: 11px;
  font-size: 0.9166666667rem;
  margin-top: 15px;
  text-align: center;
}
#schedule01 .box_ticket, #schedule02 .box_ticket {
  margin-top: 40px;
  position: relative;
  padding: 0;
}
#schedule01 .box_ticket .url, #schedule02 .box_ticket .url {
  position: absolute;
  top: 47.3%;
  left: 33%;
  width: 57%;
}

@keyframes fuwa {
  0% {
    transform: translate(0, 0px);
  }
  100% {
    transform: translate(0, -15px);
  }
}
/*-----------------------------------------------------------------
  top
------------------------------------------------------------------*/
label {
  cursor: pointer;
}

#top .top_contents {
  margin-bottom: 10%;
}
#top .btn_list {
  position: absolute;
  top: 57%;
  left: 5%;
}
#top .btn_list ul {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 0 -2% -2%;
}
#top .btn_list ul li {
  margin: 0 0 2% 2%;
}
#top .btn_list ul li:nth-child(1) {
  width: 22%;
}
#top .btn_list ul li:nth-child(2) {
  width: 37%;
}
#top .btn_list ul li:nth-child(3) {
  width: 37%;
}
#top .btn_list ul li:nth-child(4) {
  width: 23%;
}
#top .btn_list ul li:nth-child(5) {
  width: 23%;
}
#top .btn_list ul li:nth-child(6) {
  width: 23%;
}
#top .btn_list ul li:nth-child(7) {
  width: 23%;
}

/*-----------------------------------------------------------------
  notice
------------------------------------------------------------------*/
#caution_popup {
  padding: 30px;
}
#caution_popup .popup_inner {
  width: 100%;
  height: 100%;
  margin: 0 auto;
  max-width: 720px;
  background: #000;
  padding: 0px 0px;
  overflow-y: scroll;
}
#caution_popup .popup_content {
  position: relative;
}
#caution_popup .popup_content .btn_iphone {
  position: absolute;
  left: 10.5%;
  top: 22.1%;
  width: 33%;
}
#caution_popup .popup_content .btn_and {
  position: absolute;
  left: 45%;
  top: 22.1%;
  width: 45%;
}
#caution_popup .popup_content .url_iphone {
  position: absolute;
  left: 16%;
  top: 63.1%;
  width: 56%;
}
#caution_popup .popup_content .url_android {
  position: absolute;
  left: 16%;
  top: 65.6%;
  width: 75%;
}
#caution_popup .popup_content .url_joukyo {
  position: absolute;
  left: 18%;
  top: 73.2%;
  width: 28%;
}
#caution_popup .popup_content .wakuchin01 {
  position: absolute;
  left: 16.6%;
  top: 92.5%;
  width: 61%;
}
#caution_popup .popup_content .wakuchin02 {
  position: absolute;
  left: 16.6%;
  top: 95.9%;
  width: 72%;
}

/* ============================================
 Media Queries
============================================ */
@media screen and (min-width: 768px) {
  /* ============================================
   main_visual
  ============================================ */
  #main_visual {
    padding: 100px 0 10%;
    margin: 0 auto;
  }
  #main_visual .inner {
    max-width: 800px;
    margin: 0 auto;
  }
  #main_visual div {
    margin: 20px auto;
  }
  #main_visual .logo {
    margin-bottom: 5%;
  }
  #main_visual2 div {
    margin: 40px auto;
  }
  #main_visual2 .url01 {
    position: absolute;
    top: 48.3%;
    left: 4%;
    width: 55%;
  }
  #main_visual2 .url02 {
    position: absolute;
    top: 59.3%;
    left: 38%;
    width: 35%;
  }
  #main_visual2 .url03 {
    position: absolute;
    display: block;
    background: #fff;
    opacity: 0;
    height: 1%;
    top: 53.3%;
    left: 3%;
    width: 76%;
  }
  #main_visual2 .url04 {
    position: absolute;
    display: block;
    background: #fff;
    opacity: 0;
    height: 1%;
    top: 56%;
    left: 3%;
    width: 62%;
  }

  /* ============================================
   slider
  ============================================ */
  #main_slick {
    padding-bottom: 0;
  }
  #main_slick .wrapper {
    width: 100%;
    padding: 0;
  }
  #main_slick .full div {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    height: auto;
    margin: 0;
  }
  #main_slick .full div a:hover {
    opacity: 1 !important;
  }
  #main_slick .full div.img01 {
    background: url(https://d20dfxyuz7q532.cloudfront.net/tag2023/221215/bg01.jpg) no-repeat center;
    background-size: cover;
  }
  #main_slick .full div.img02 {
    background: url(https://d20dfxyuz7q532.cloudfront.net/tag2023/221215/bg02.jpg) no-repeat center;
    background-size: cover;
  }
  #main_slick .full .slick-dots {
    bottom: 2%;
    z-index: 1;
  }
  #main_slick .full .logo {
    position: relative;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
  }
  #main_slick .full .logo img {
    width: 100%;
    left: auto;
    right: auto;
    position: relative;
    bottom: 0;
    max-width: 1200px;
  }

  .slick_wrapper {
    margin: 0 auto;
    width: 90%;
    max-width: 1000px;
  }

  .slick_inner {
    position: relative;
  }

  #arrows {
    display: block;
  }

  #slick_preview, #slick_next {
    position: absolute;
    display: block;
    height: 80px;
    width: 35px;
    line-height: 0;
    font-size: 35px;
    cursor: pointer;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    padding: 0;
    outline: none;
  }

  #slick_preview {
    left: -80px;
  }

  #slick_next {
    right: -80px;
  }

  .slick-dots {
    bottom: -35px;
  }

  .slick-slide img {
    max-width: none;
    width: 100%;
  }

  .slick-dotted.slick-slider {
    margin: 0;
  }

  /* ============================================
   contents
  ============================================ */
  #main {
    width: 100%;
    margin-top: 30px;
  }

  section {
    width: 100%;
    position: relative;
    margin: 80px auto;
    padding: 0px 0%;
  }
  section h2 {
    position: relative;
    text-align: center;
    line-height: 1;
    letter-spacing: 0.5px;
    color: #0028e4;
    font-size: 24px;
    font-size: 2rem;
    padding: 1.5rem 1rem;
    margin-bottom: 0;
  }
  section h2 img {
    width: 100%;
  }
  section .inner {
    max-width: 800px;
    position: relative;
    padding: 5px 0;
    margin-top: 10px;
  }

  .bg {
    width: 100%;
    height: auto;
  }

  .btn_info {
    width: 82%;
    position: relative;
    margin: 70px auto -30px;
    text-align: center;
    max-width: 700px;
  }

  /*-----------------------------------------------------------------
    schedule
  ------------------------------------------------------------------*/
  #schedule01 h3, #schedule02 h3 {
    font-size: 18px;
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 50px;
    line-height: 1.5;
  }
  #schedule01 .box_schedule, #schedule02 .box_schedule {
    position: relative;
    text-align: center;
  }
  #schedule01 .box_schedule .info_url, #schedule02 .box_schedule .info_url {
    margin-top: 5px;
    width: 40%;
  }
  #schedule01 .btn, #schedule02 .btn {
    position: absolute;
    top: 86%;
    width: 82%;
    left: 9%;
  }
  #schedule01 p.info, #schedule02 p.info {
    font-size: 11px;
    font-size: 0.9166666667rem;
    margin-top: 15px;
    text-align: center;
  }
  #schedule01 .box_ticket, #schedule02 .box_ticket {
    margin-top: 60px;
    position: relative;
    padding: 0;
  }
  #schedule01 .box_ticket .url, #schedule02 .box_ticket .url {
    position: absolute;
    top: 47.8%;
    left: 33%;
    width: 57%;
  }

  #caution_popup {
    padding: 0;
  }
  #caution_popup .popup_inner {
    width: 100%;
    height: 80vh;
    margin: 0 auto;
    max-width: none;
    background: #000;
    padding: 0px 100px;
    overflow-y: scroll;
  }
  #caution_popup .popup_content img {
    max-width: 600px;
    margin: 0 auto;
  }
}

/*# sourceMappingURL=home.css.map */
