@charset "UTF-8";
/*** The new CSS reset - version 1.5.1 (last updated 1.3.2022) ***/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap");
body {
  margin: 0;
  padding: 0;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

a,
button {
  cursor: revert;
  color: inherit;
}

h1, h2, h3, h4, h5, h6, p {
  margin: 0;
}

ol,
ul,
menu {
  list-style: none;
  padding: 0;
  margin: 0;
}

img {
  width: 100%;
  max-width: 100%;
  height: auto;
}

table {
  border-collapse: collapse;
}

textarea {
  white-space: revert;
}

meter {
  -webkit-appearance: revert;
  appearance: revert;
}

::placeholder {
  color: unset;
}

:where([hidden]) {
  display: none;
}

:where([contenteditable]) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
}

:where([draggable=true]) {
  -webkit-user-drag: element;
}

/*------------------------------

  開発環境の初期化

------------------------------*/
html {
  scroll-behavior: smooth;
  overflow-x: hidden;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  body {
    width: 540px;
  }
}
@media screen and (max-width: 767px) {
  body {
    width: 100vw;
  }
}
body a {
  text-decoration: none;
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  body a:hover:hover {
    opacity: 0.7;
  }
}

@media screen and (min-width: 768px) {
  .p-header {
    padding-top: 19.2366412214px;
  }
}
@media screen and (max-width: 767px) {
  .p-header {
    padding-top: 3.5623409669vw;
  }
}
@media screen and (min-width: 768px) {
  .p-header {
    padding-bottom: 13.7404580153px;
  }
}
@media screen and (max-width: 767px) {
  .p-header {
    padding-bottom: 2.5445292621vw;
  }
}
@media screen and (min-width: 768px) {
  .p-header {
    padding-left: 82.4427480916px;
  }
}
@media screen and (max-width: 767px) {
  .p-header {
    padding-left: 15.2671755725vw;
  }
}
@media screen and (min-width: 768px) {
  .p-header img {
    width: 412.213740458px;
  }
}
@media screen and (max-width: 767px) {
  .p-header img {
    width: 76.3358778626vw;
  }
}

.p-kv {
  background-color: #E85732;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .p-kv {
    padding-top: 27.4809160305px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv {
    padding-top: 5.0890585242vw;
  }
}
@media screen and (min-width: 768px) {
  .p-kv {
    padding-bottom: 41.2213740458px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv {
    padding-bottom: 7.6335877863vw;
  }
}
.p-kv__lead {
  text-align: center;
  line-height: 1;
  letter-spacing: -0.03em;
  font-weight: 700;
  font-family: "Zen Maru Gothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .p-kv__lead {
    font-size: 32.9770992366px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__lead {
    font-size: 6.106870229vw;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__lead {
    margin-bottom: 21.9847328244px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__lead {
    margin-bottom: 4.0712468193vw;
  }
}
.p-kv__title {
  text-align: center;
  line-height: 1.263;
  font-weight: 700;
  font-family: "Zen Maru Gothic", sans-serif;
  letter-spacing: 0.11em;
}
@media screen and (min-width: 768px) {
  .p-kv__title {
    font-size: 54.9618320611px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__title {
    font-size: 10.1781170483vw;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__title {
    margin-bottom: 27.4809160305px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__title {
    margin-bottom: 5.0890585242vw;
  }
}
.p-kv__title .small {
  font-size: 70%;
}
.p-kv__title .ls-s {
  letter-spacing: -0.04em;
}
.p-kv__movie {
  background-color: #fff;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .p-kv__movie {
    width: 497.4045801527px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__movie {
    width: 92.1119592875vw;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__movie {
    border-radius: 27.4809160305px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__movie {
    border-radius: 5.0890585242vw;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__movie {
    margin-bottom: 19.2366412214px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__movie {
    margin-bottom: 3.5623409669vw;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__movie {
    padding-top: 20.6106870229px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__movie {
    padding-top: 3.8167938931vw;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__movie {
    padding-bottom: 20.6106870229px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__movie {
    padding-bottom: 3.8167938931vw;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__movie {
    padding-left: 17.8625954198px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__movie {
    padding-left: 3.3078880407vw;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__movie {
    padding-right: 17.8625954198px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__movie {
    padding-right: 3.3078880407vw;
  }
}
.p-kv__movie img {
  display: block;
}
@media screen and (min-width: 768px) {
  .p-kv__movie img {
    width: 434.1984732824px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__movie img {
    width: 80.4071246819vw;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__movie img {
    margin-bottom: 6.8702290076px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__movie img {
    margin-bottom: 1.272264631vw;
  }
}
.p-kv__movie iframe {
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}
.p-kv__txt {
  margin-left: auto;
  margin-right: auto;
  color: #fff;
  line-height: 1.8666666667;
  font-weight: 700;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-kv__txt {
    width: 482.2900763359px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__txt {
    width: 89.3129770992vw;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__txt {
    font-size: 20.6106870229px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__txt {
    font-size: 3.8167938931vw;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__txt {
    margin-bottom: 32.9770992366px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__txt {
    margin-bottom: 6.106870229vw;
  }
}
.p-kv__list {
  margin-left: auto;
  margin-right: auto;
  color: #fff;
  list-style-type: disc;
  padding-left: 2em;
}
@media screen and (min-width: 768px) {
  .p-kv__list {
    width: 482.2900763359px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__list {
    width: 89.3129770992vw;
  }
}
.p-kv__list-item {
  text-decoration: underline;
  font-weight: 700;
  line-height: 1.8888888889;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-kv__list-item {
    font-size: 24.7328244275px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__list-item {
    font-size: 4.5801526718vw;
  }
}

@media screen and (min-width: 768px) {
  .p-booth {
    padding-top: 27.4809160305px;
  }
}
@media screen and (max-width: 767px) {
  .p-booth {
    padding-top: 5.0890585242vw;
  }
}
@media screen and (min-width: 768px) {
  .p-booth {
    padding-bottom: 27.4809160305px;
  }
}
@media screen and (max-width: 767px) {
  .p-booth {
    padding-bottom: 5.0890585242vw;
  }
}

@media screen and (max-width: 767px) {
  .is-pc {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .is-sp {
    display: none;
  }
}