@charset "UTF-8";
/*--変数設定--*/
/*色指定*/
:root {
  --main-color1:#ffffff;
  --main-color2:#221815;
  --main-color3:#ffc136;
  --main-color4:#ee780c;
  --main-color5:#e5005a;
  --main-color6:#00a0e9;
  --main-color7:#009e9f;
  --main-color8:#ffde97;
  --main-color9:#5e3005;
  --main-accent:#ffffff;
  --main-gray1:#dfdfdf;
  --main-gray2:#c2c2c2;
  --footer-color1:#f2f7fb;
}

/*横幅*/
/*ブレイクポイント設定*/
/*角丸*/
/*--mixin設定--*/
/*レスポンシブル*/
/*フォントサイズを調整*/
/*Elementor又はAstaraの影響でsp表示でflexが崩れるのを防ぐ*/
@media (max-width: 767px) {
  .e-con.e-flex {
    flex-wrap: nowrap;
  }
}
/*影*/
div, p, li, a, h1, h2, h3, h4, h5 {
  font-family: "Noto Sans JP", sans-serif;
}

.list-1 {
  list-style-type: disc;
}
.list-1 li::marker {
  color: var(--main-color3);
  font-size: 1.1em;
}

.sticky-container .main-header {
  position: sticky;
  align-self: flex-start;
  top: 7%;
}
@media screen and (max-width: 922px) {
  .sticky-container .main-header {
    top: 70px;
  }
}
@media screen and (max-width: 540px) {
  .sticky-container .main-header {
    position: static;
  }
}
.sticky-container .main-content {
  padding-left: 5%;
}
@media screen and (max-width: 922px) {
  .sticky-container .main-content {
    padding-left: 0;
  }
}

a.webbtn {
  display: inline-block;
  text-align: center;
  font-size: 1.3em;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1;
  color: var(--main-color1);
  padding: 0.8em 2em;
  min-width: 230px;
  transition: 0.2s all;
  border: 3px solid var(--main-color4);
  background-color: var(--main-color4);
  border-radius: 40px;
  text-decoration: none !important;
}
a.webbtn:hover {
  background-color: var(--main-color1);
  color: var(--main-color4);
}

/*--カスタム：テキストブロック--*/
/*表デザインnormal*/
table.table_normal {
  border-collapse: collapse;
  width: 100%;
}
table.table_normal th, table.table_normal td {
  border-top: 1px solid var(--main-gray2);
  border-bottom: 1px solid var(--main-gray2);
  padding: 0.5em 0.5em 0.5em 1em;
  min-width: 5.5em;
}
@media screen and (max-width: 922px) {
  table.table_normal th, table.table_normal td {
    display: block;
    padding: 0.4em 0.4em;
    font-size: 0.9em;
  }
}
table.table_normal th {
  color: var(--main-color2);
  text-align: left;
  min-width: 25%;
  background-color: var(--main-gray1);
}
@media screen and (max-width: 922px) {
  table.table_normal th {
    border-bottom: none;
    width: 100%;
  }
}
table.table_normal td {
  background-color: var(--main-color1);
}
@media screen and (max-width: 922px) {
  table.table_normal td {
    border-top: none;
    border-bottom: 1px solid var(--main-gray1);
  }
}

table.table_normal.white th, table.table_normal.white td {
  background-color: var(--main-color1);
}
@media screen and (max-width: 922px) {
  table.table_normal.white th {
    padding-bottom: 0;
  }
}
@media screen and (max-width: 922px) {
  table.table_normal.white td {
    padding-top: 0.25em;
  }
}

/*表デザイン01*/
table.table_design01 {
  border-collapse: collapse;
  width: 100%;
}
table.table_design01 th, table.table_design01 td {
  border: 2px solid var(--main-gray1);
  background-color: var(--main-color1);
  padding: 0.7em 1em;
}
@media screen and (max-width: 922px) {
  table.table_design01 th, table.table_design01 td {
    display: block;
    padding: 0.4em 0.4em;
    border: none;
    font-size: 0.9em;
  }
}
table.table_design01 th {
  background-color: var(--main-color3);
  color: var(--main-color1);
  font-weight: 500;
  text-align: center;
  width: 20%;
  font-weight: 500;
}
@media screen and (max-width: 922px) {
  table.table_design01 th {
    text-align: left;
    width: 100%;
  }
}
@media screen and (max-width: 922px) {
  table.table_design01 td {
    border-bottom: 2px solid var(--main-gray1);
  }
}

.parallax__bg {
  position: absolute;
  inset: 0;
  background-image: url();
  background-size: cover;
  background-position: center;
}

header.site-header {
  position: fixed;
  top: 5px;
  right: 5px;
  border-radius: 30px;
  overflow: hidden;
  border: 3px solid var(--main-color4);
}
@media screen and (max-width: 922px) {
  header.site-header {
    width: 100%;
    top: 0;
    right: auto;
    left: 0;
    overflow: visible;
    border-radius: 0px;
  }
}

footer table.footer-table {
  max-width: 600px;
  margin: 0 auto;
  font-size: 0.95em;
  border-color: #221815;
  border-collapse: collapse;
}
footer table.footer-table th, footer table.footer-table td {
  padding: 0.5em 1em;
  border-color: #221815;
}

/*mv*/
#page-bg-splite {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: var(--main-color8);
  background: repeating-linear-gradient(-45deg, var(--main-color8) 0, var(--main-color8) 50px, #ffe7b3 50px, #ffe7b3 100px, var(--main-color8) 100px, var(--main-color8) 200px, #ffe7b3 200px, #ffe7b3 300px);
  z-index: -1;
}

#mv .box {
  padding: 70px 0 50px 0;
  text-align: center;
}
.oshirase ul {
  list-style: none;
}
.oshirase ul li {
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 540px) {
  .oshirase ul li {
    flex-direction: column-reverse;
  }
}
.oshirase ul li a {
  text-decoration: none !important;
  font-weight: 500;
}
.oshirase ul li .post-date {
  padding-right: 2em;
  font-weight: 600;
}

/*参加・応募の流れ*/
.flow-grid-area {
  display: grid !important;
  grid-template-columns: 1fr 0.25fr 1fr 0.25fr 1fr;
}

/*テキストのアニメーション*/
.text-anime-area {
  overflow-x: hidden;
  overflow-x: clip;
}
.text-anime-area .box {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100%;
  height: 1px;
}
.text-anime-area .box .item {
  font-size: 9.5em;
  font-weight: 400;
  line-height: 1;
  color: #e4e4e4;
  opacity: 0.3;
  width: -moz-max-content;
  width: max-content;
  pointer-events: none;
  white-space: nowrap;
  padding: 0 1em;
  mix-blend-mode: multiply;
  font-family: "Inter", sans-serif;
  z-index: 1;
  animation: textAnime 35s linear 0s infinite normal none;
}
.text-anime-area .box .item span {
  color: transparent;
  -webkit-text-stroke: 2px #c5c5c5;
}

@keyframes textAnime {
  0% {
    transform: translate(0);
  }
  100% {
    transform: translate(-100%);
  }
}
@keyframes textAnime-sp {
  0% {
    left: 100%;
  }
  100% {
    left: -350%;
  }
}
/*トップページの見出し*/
h2.toppage {
  font-size: 2.3em !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
  line-height: 1.5 !important;
}
@media screen and (max-width: 922px) {
  h2.toppage {
    font-size: 1.75em !important;
  }
}
h2.toppage span {
  color: var(--main-color4);
}

h3.toppage {
  font-size: 1.5em !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
  line-height: 1.3 !important;
}

.h-eng {
  font-family: "Inter", sans-serif;
  font-size: 1.2em !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  line-height: 1.3 !important;
  margin-bottom: 0.5em !important;
  color: var(--main-color4);
}
.h-eng span {
  color: var(--main-color3);
}

/*目立つテキスト*/
.text-message {
  text-align: center;
}
.text-message p {
  font-size: 1.2rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 2;
  margin-bottom: 1em;
  color: var(--main-color9);
  text-shadow: 2px 0 0 #fff, -2px 0 0 #fff, 0 2px 0 #fff, 0 -2px 0 #fff, 1px 1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, -1px -1px 0 #fff;
}
.text-message span.marker {
  background: linear-gradient(transparent 72%, rgba(255, 255, 255, 0.9) 72%, rgba(255, 255, 255, 0.9) 100%);
}
.text-message strong {
  color: var(--main-color5);
}

/*スライダー*/
.slider {
  width: 100%;
  overflow: hidden;
}
.slider .slider-track {
  display: flex;
  align-items: center;
  width: -moz-max-content;
  width: max-content;
}
.slider .slider-track img {
  display: block;
  border-radius: 10px;
  margin-right: 40px;
}
@media screen and (max-width: 922px) {
  .slider .slider-track img {
    margin-right: 20px;
  }
}
@media screen and (max-width: 540px) {
  .slider .slider-track img {
    margin-right: 10px;
  }
}
.slider .slider-track img.yoko1 {
  width: 40vw;
}
.slider .slider-track img.yoko2 {
  width: 40vw;
  margin-top: 80px;
}
.slider .slider-track img.yoko3 {
  width: 40vw;
}
.slider .slider-track img.tate1 {
  width: 17vw;
}
.slider .slider-track img.tate2 {
  width: 17vw;
  margin-top: 240px;
}
.slider .slider-track img.tate3 {
  width: 17vw;
  margin-top: 50px;
}

/*◇子ページ*/
#sub-h {
  overflow: hidden;
}
#sub-h .eng {
  font-size: 6em;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.3;
  font-family: "Inter", sans-serif;
  color: var(--main-color3);
  white-space: nowrap;
}
@media screen and (max-width: 540px) {
  #sub-h .eng {
    font-size: 4em;
  }
}
#sub-h .eng > div {
  font-family: "Inter", sans-serif;
}
#sub-h h1 {
  font-size: 2em;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.3;
}

.sub-h-bar {
  background: linear-gradient(to right, var(--main-color3) 30%, var(--main-color4) 30%);
  width: 80px;
  height: 8px;
  margin-bottom: 1.1em;
}

/**/
.h2-num {
  position: relative;
}
.h2-num > div {
  position: absolute;
  top: 0;
  right: 0;
  color: var(--main-gray1);
  font-family: "Inter", sans-serif;
  font-weight: 700;
  font-size: 17em;
  white-space: nowrap;
  line-height: 1;
}

/*表*/
table.com-table {
  border: none;
}
table.com-table tr th, table.com-table tr td {
  padding: 1.4em 0em;
  text-align: left;
  border: none;
  border-top: 1px solid var(--main-gray1);
}
@media screen and (max-width: 922px) {
  table.com-table tr th, table.com-table tr td {
    display: block;
    width: 100%;
    padding: 1em 0.5em;
  }
}
table.com-table tr th {
  width: 25%;
  max-width: 300px;
  min-width: 100px;
}
@media screen and (max-width: 922px) {
  table.com-table tr th {
    width: 100%;
    max-width: none;
  }
}
table.com-table tr td {
  padding-left: 1em;
}
@media screen and (max-width: 922px) {
  table.com-table tr td {
    padding-left: 0.5em;
  }
}
table.com-table tr:last-child th, table.com-table tr:last-child td {
  border-bottom: 1px solid var(--main-gray1);
}

/*子ページ*/
h1.sub-page {
  font-size: 3em;
  letter-spacing: 0.1em;
  color: var(--main-color7);
  margin-bottom: 0.2em;
}

.sub-page-eng {
  color: var(--main-color4);
  font-size: 1.3em;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1;
  text-align: center;
}

h2.sub-page {
  position: relative;
  padding: 0.2em 0.2em 0.2em 0.25em;
  border-left: 8px solid var(--main-color4);
  background-color: #ffffff;
  color: var(--main-color2);
  border-bottom: 2px solid var(--main-color4);
}

h2.hukuromoji {
  color: var(--main-color7);
  text-shadow: 2px 0 0 #fff, -2px 0 0 #fff, 0 2px 0 #fff, 0 -2px 0 #fff, 1px 1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, -1px -1px 0 #fff;
}
h2.hukuromoji span.marker {
  background: linear-gradient(transparent 60%, var(--main-color3) 60%, var(--main-color3) 100%);
}

.faq-area {
  overflow: hidden;
}/*# sourceMappingURL=machibura.css.map */