@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&display=swap');
/* ===========================================
 * TOP
 * ======================================== */
.topWrap {
  padding-top: 38px;
  padding-bottom: 20px;
  padding-left: 15px;
  background: center top / 100% auto no-repeat url(/img/event/pro-hv/top_kv_sp.jpg);
  background-color: #0F0E0E;
}
.kvLogo {
  width: calc(369px / 2);
}
.kvLogoIcon {
  line-height: 0;
  display: block;
}
.kvLogotext {
  margin-top: 5px;
  text-align: center;
  font: 700 16px / 1.5 "Noto Serif JP", serif;
  color: #FFFFFF;
}
.kvMessage {
  width: fit-content;
  margin-top: 40px;
}
.kvMessageTitle {
  margin-bottom: 10px;
  font: 700 19px / 1.3 "Noto Serif JP", serif;
  color: #FFFFFF;
  display: block;
}
.kvMessageText {
  font: 600 12px / 2.0 "Noto Sans JP", sans-serif;
  color: #FFFFFF;
}

/* ===========================================
 * SECTION 01
 * ======================================== */
.section01Wrap {
  padding: 30px 10px;
  background-color: #0F0E0E;
}
/* SYSTEM */
/* ======================================= */
.hacobune-app-container {
  width: 100%!important;
  padding: 0!important;
  background-color: #0F0E0E!important;
}
.hacobune-unit-video {
  margin: 0!important;
}
.hacobune-unit-video-outline {
  padding: 0!important;
}
.hacobune-readmore {
  margin: 0!important;
}
.hacobune-readmore-wrapper {
  margin: 0!important;
}

/* ===========================================
 * SECTION 02・SECTION 03
 * ======================================== */
.section02Wrap,
.section03Wrap {
  padding: 10px;
  background-color: #0F0E0E;
}
.section02Inner,
.section03Inner {
  width: 100%;
  margin-inline: auto;
}
.section02Title,
.section03Title {
  margin-bottom: 10px;
  font: 900 20px / 1.5 "Noto Sans JP", sans-serif;
  color: #FFFFFF;
  display: block;
}
.section02img,
.section03img {
  width: 100%;
}
.section02Text,
.section03Text {
  margin-top: 10px;
  text-align: right;
  font: 500 12px / 1.6 "Noto Sans JP", sans-serif;
  color: #FFFFFF;
}

/* ===========================================
 * SECTION 04
 * ======================================== */
.section04Wrap {
  padding-block: 20px 30px;
  padding-inline: 10px;
  background: center top / cover no-repeat url(/img/event/pro-hv/sec04_bg.jpg);
  background-color: #0F0E0E;
}
.section043Inner {
  width: 100%;
  margin-inline: auto;
}
.section04Title {
  margin-bottom: 10px;
  text-align: center;
  font: 900 20px / 1.5 "Noto Sans JP", sans-serif;
  color: #FFFFFF;
  display: block;
}
.section04Text {
  margin-bottom: 20px;
  text-align: center;
  font: 500 14px / 1.5 "Noto Sans JP", sans-serif;
  color: #FFFFFF;
  display: block;
}
.section04Contents {
  width: min(100%, 293px);
  margin-inline: auto;
  border: 1px solid #FFFFFF;
}
.section04ContentsText {
  width: 100%;
  height: 40px;
  font: 900 16px / 1.0 "Noto Sans JP", sans-serif;
  color: #FFFFFF;
  background-color: #0F0E0E;
  display: flex;
  align-items: center;
  justify-content: center;
  > span {
    width: fit-content;
    display: block;
  }
}
.section04ContentsImg {
  line-height: 0;
  display: block;
}

/* ===========================================
 * SECTION 05
 * ======================================== */
.section05Wrap {
  padding-block: 50px 60px;
  padding-inline: 10px;
  background-color: #0F0E0E;
}
.section05Inner {
  width: 100%;
  margin-inline: auto;
}
.section05Title {
  margin-bottom: 20px;
  text-align: center;
  font: 900 27px / 1.5 "Noto Sans JP", sans-serif;
  color: #FFFFFF;
  display: block;
}
.section05TextContainer {
  display: grid;
  gap: 30px;
}
.section05Text {
  text-align: center;
  font: 700 13px / 2.0 "Noto Sans JP", sans-serif;
  color: #FFFFFF;
  display: block;
}

/* ===========================================
 * SECTION 07
 * ======================================== */
.section07Wrap {
  padding-block: 0;
}
.section07Inner {
  width: 100%;
  margin-inline: auto;
}
.section07Title {
  width: 100%;
  height: 3em;
  margin-inline: auto;
  margin-bottom: 20px;
  text-align: center;
  font: 700 20px / 1.0 "Noto Sans JP", sans-serif;
  color: #FFFFFF;
  background-color: #0F0E0E;
  display: flex;
  align-items: center;
  justify-content: center;
  > span {
    width: fit-content;
    display: block;
  }
}

/* ===========================================
 * SYSTEM
 * ======================================== */
.block-thumbnail-t {
  padding-inline: 10px;
}
.block-event-page--goods {
  margin-top: 0;
}
.block-section {
  padding-block: 0;
}
.block-section + .block-section {
  margin-top: 0;
}
.block-link {
  display: none;
}
.block-top-event {
  padding-block: 0;
}
.block-section--header > span {
  display: none;
}
