@charset "UTF-8";
html {
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden;
}

h1, h2, h3, h4, h5, dl, dt, dd, ul, ol, li {
  font-size: 100%;
  line-height: 1;
  margin: 0;
  padding: 0;
}

p {
  margin: 0;
  padding: 0;
}

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

/* =======================================
 base style
======================================= */
body {
  line-height: 1;
  margin: auto;
  /*max-width: 2000px;*/
  font-family: "メイリオ", Meiryo, "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "MS ゴシック", sans-serif;
}

img {
  width: 100%;
  backface-visibility: hidden;
}

.main-wrapper {
  background: url("../img/main_bg.jpg"), #000;
  background-position: top center, center center;
  background-size: 100%;
  background-attachment: fixed;
  min-width: 750px;
  margin: 0 auto;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  .main-wrapper {
    background: #000;
  }
}

.contents {
  width: 750px;
  margin: 0 auto;
}

section {
  position: relative;
  box-sizing: border-box;
}

a {
  text-decoration: underline;
}

a:hover {
  opacity: 0.8;
}

.top {
  cursor: pointer;
  position: fixed;
  top: 0;
  z-index: 99;
  width: 750px;
  height: 80px;
  background: rgba(0, 0, 0, 0.7);
}

.top .hidden {
  display: none;
}

.top__icon {
  position: absolute;
  top: 0;
  right: 0;
  width: 80px;
  height: 80px;
}

.top__icon img {
  width: 80px;
}

.top__menu ul {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 750px;
  padding-top: 70px;
  padding-bottom: 20px;
  background: rgba(0, 0, 0, 0.9);
}

.top__menu ul li {
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 95px;
}
.top__menu ul li a {
  color: #fff;
  font-size: 1.4em;
}

.top__menu ul li img {
  width: 582px;
}

.top__menu ul li::after {
  content: "";
  display: inline-block;
  border-top: 1px solid #ffffff;
  width: 660px;
  position: relative;
  top: 16px;
}

.top__menu ul li:last-child:after {
  content: none;
}

.top__title {
  display: flex;
  align-items: center;
  padding: 25px 20px;
}
.top__title_item {
  margin: 0 15px;
}

.kv {
  position: relative;
  background: #000;
}

.point {
  margin: -1px 0 0;
  padding: 0;
}

.about {
  margin: 0;
  position: relative;
}
.about_k {
  position: absolute;
  top: 35%;
  left: 0;
  width: 70%;
  height: 3%;
}

.event {
  background: #000;
  position: relative;
  margin: -3px 0 0 0;
}
.event .l_quest {
  position: absolute;
  cursor: pointer;
  display: block;
  width: 46%;
  height: 2.1%;
  top: 93%;
  left: 33.5%;
}

.qna {
  padding: 40px 0;
}
.qna_ttl h2 {
  width: 90%;
  margin: 0 auto;
  padding: 0;
}

.qna .qna-container {
  padding: 0 40px 30px;
  width: 90%;
  margin: -3px auto 0;
  background-image: url("../img/qa_bg.png");
}

.qna .qna-wrapper {
  font-size: 1.4em;
  padding-top: 43px;
}

.qna .qna-question {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 22px;
}

.qna .qna-question::after {
  content: "";
  display: inline-block;
  background-image: url("../img/qna-line.png");
  background-size: contain;
  background-repeat: no-repeat;
  width: 400px;
  height: 3px;
}

.qna .qna-question-inner {
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 2px dotted #222968;
  padding: 7px 20px 20px 75px;
  position: relative;
  width: 100%;
}
.qna .qna-question-inner::before {
  content: "";
  display: block;
  width: 63px;
  height: 71px;
  background-image: url("../img/icon_q.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: -15px;
  left: 0;
}

.qna .qna-question-inner h2 {
  font-size: 28px;
  width: 90%;
  line-height: 1.3;
}

.qna .qna-question-inner span {
  display: block;
}

.qna .qna-question-inner span img {
  width: 32px;
}

.qna .qna-answer {
  padding: 7px 20px 20px 75px;
  line-height: 1.3;
  position: relative;
}
.qna .qna-answer::before {
  content: "";
  display: block;
  width: 63px;
  height: 71px;
  background-image: url("../img/icon_a.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 0;
}

.qna .arrow-rotate {
  transform: scaleY(-1);
  transition: all 0.2s ease-in-out;
}

.not {
  text-align: center;
}

.not_ttl {
  width: 100%;
  margin: -20px auto 0;
  padding: 20px 0 0;
}

.not .not-container {
  padding: 12px 10px 50px;
  margin: -2px 0 0;
  background: #000;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.not .not-button {
  position: relative;
  cursor: pointer;
  padding-bottom: 30px;
  margin-top: 10px;
}

.not .not-button img {
  width: 300px;
}

.not .not-button .not-arrow {
  position: absolute;
  width: 21px;
  right: 16px;
  top: 30px;
}

.not .not-detail {
  width: 90%;
  background-image: url("../img/qa_bg.png");
  margin: 0 5% 50px;
  text-align: left;
  font-size: 20px;
  padding: 30px 30px 50px;
}
.not .not-detail li {
  margin: 15px;
  line-height: 1.4;
  padding: 10px 10px 30px 50px;
  position: relative;
  border-bottom: 2px dotted #333;
}
.not .not-detail li a {
  color: #444;
}
.not .not-detail li::before {
  content: "";
  display: block;
  width: 34px;
  height: 34px;
  background-image: url("../img/att_icon.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 10px;
  left: 0;
}

.not .arrow-rotate {
  transform: scaleY(-1);
  transition: all 0.2s ease-in-out;
}

.for_event {
  padding: 50px 0;
  background: #222968;
  position: relative;
}
.for_event_img {
  width: 90%;
  margin: 0 5%;
}
.for_event_link {
  display: inline-block;
  position: absolute;
  top: 64%;
  left: 13%;
  width: 72%;
  height: 16%;
}

.share {
  background: url("../img/sns_bg.png"), url("../img/bg.jpg") no-repeat top center;
  background-size: 100%;
  background-position: bottom;
  height: 480px;
  padding-top: 70px;
  position: relative;
}

.share ul {
  position: absolute;
  top: 46%;
  left: 1%;
  display: flex;
  width: 60%;
  padding: 20px;
  justify-content: center;
}

.share ul img {
  width: 90px;
  margin: 10px 15px;
}

.label {
  background: #000;
  margin-top: -2px;
  padding-bottom: 80px;
}
.label .about {
  width: 100%;
  margin: 0;
  position: relative;
}
.label .l_nanica {
  position: absolute;
  display: block;
  width: 80%;
  height: 15%;
  top: 74%;
  left: 10%;
}
.label .shusai {
  padding: 20px 50px;
  font-size: 20px;
  line-height: 1.4;
  color: #fff;
}

.fixed-nav {
  background-color: rgba(0, 0, 0, 0.7);
  position: fixed;
  bottom: 0;
  width: 750px;
  z-index: 99;
  display: none;
}/*# sourceMappingURL=styles.css.map */