@charset "UTF-8";
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

ul,
ol {
  padding: 0;
}

body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

html {
  scroll-behavior: smooth;
}

body {
  line-height: 1.5;
  min-height: 100vh;
  text-rendering: optimizeSpeed;
}

ul,
ol {
  list-style: none;
}

a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

a {
  text-decoration: none;
}

img {
  display: block;
  width: 100%;
  max-width: 100%;
}

article > * + * {
  margin-top: 1em;
}

input,
button,
textarea,
select {
  font: inherit;
}

img:not([alt]) {
  -webkit-filter: blur(10px);
          filter: blur(10px);
}

input,
button,
select,
textarea {
  font: inherit;
  border: none;
  border-radius: 0;
  outline: none;
  background: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

textarea {
  resize: none;
}

input[type=checkbox],
input[type=radio] {
  display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

/*****************************************
 * vwの計算
 * 参考
 * https://webdou.net/sass-vw/
 * Sassではmath.div関数の使用が推奨のため、スラッシュ(/)演算子から変更
******************************************/
/*****************************************
 * 数値から単位を取り除く
 * 参考
 * https://css-tricks.com/snippets/sass/
******************************************/
/*****************************************
 * px→remの計算
 * 参考
 * https://webdou.net/sass-rem/
 * Sassではmath.div関数の使用が推奨のため、スラッシュ(/)演算子から変更
******************************************/
html {
  scroll-behavior: smooth;
  scroll-padding-top: 9rem;
  font-size: 10px;
}
@media (max-width: 1260px) {
  html {
    font-size: 0.7936507937vw;
  }
}
@media screen and (max-width: 767px) {
  html {
    scroll-padding-top: 5.2rem;
    font-size: 2.5641025641vw;
  }
}

body {
  position: relative;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  color: #fff;
  line-height: 1.5;
}

body.no-scroll {
  overflow: hidden;
}

a {
  text-decoration: none;
  color: inherit;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

a:hover {
  opacity: 0.8;
}
@media screen and (max-width: 767px) {
  a:hover {
    -webkit-transition: none;
    transition: none;
  }
}

a[href^="tel:"] {
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  a[href^="tel:"] {
    pointer-events: auto;
  }
}

img {
  width: 100%;
}

.l-header {
  z-index: 500;
  position: fixed;
  top: 0;
  left: 0;
  padding-top: 4.2rem;
  width: 100%;
  -webkit-transition: 0.3s padding-top, 0.3s background-color, 0.3s height;
  transition: 0.3s padding-top, 0.3s background-color, 0.3s height;
  height: 11.8rem;
}
@media screen and (max-width: 767px) {
  .l-header {
    padding-top: initial;
    height: 8.9rem;
  }
}

.l-header.change-color {
  padding-top: initial;
  background-color: #000000;
  height: 9rem;
  -webkit-transition: 0.3s padding-top, 0.3s background-color, 0.3s height;
  transition: 0.3s padding-top, 0.3s background-color, 0.3s height;
}
@media screen and (max-width: 767px) {
  .l-header.change-color {
    background-color: transparent;
    height: 8.9rem;
  }
}

.l-header__inner {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.l-header__name {
  height: inherit;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.l-header__name-link {
  width: 16.5rem;
  aspect-ratio: 165/75;
  border-radius: 3.8rem;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
@media screen and (max-width: 767px) {
  .l-header__name-link {
    width: auto;
    height: 6.5rem;
  }
}

.l-header__name-link img {
  width: 100%;
  height: auto;
  border-radius: 3.8rem;
}
@media screen and (max-width: 767px) {
  .l-header__name-link img {
    width: auto;
    height: 100%;
  }
}

.l-header__name-link:hover {
  opacity: 1;
  -webkit-transform: translateY(-0.5rem);
          transform: translateY(-0.5rem);
}

.l-header__menu,
.l-header__nav {
  height: inherit;
}

.l-header__lists {
  height: inherit;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 3rem;
     -moz-column-gap: 3rem;
          column-gap: 3rem;
}
@media screen and (max-width: 1024px) {
  .l-header__lists {
    -webkit-column-gap: 2rem;
       -moz-column-gap: 2rem;
            column-gap: 2rem;
  }
}

.l-header__list {
  height: inherit;
}

/* ------------------------------------------------
hamburger
--------------------------------------------------- */
.l-hamburger {
  display: none;
}
@media screen and (max-width: 767px) {
  .l-hamburger {
    display: block;
    position: fixed;
    z-index: 6000;
    top: 1.2rem;
    right: 0.8rem;
    width: 6.5rem;
    height: 6.5rem;
    border-radius: 50%;
    background: rgb(184, 42, 0);
    background: radial-gradient(circle, rgb(184, 42, 0) 0%, rgb(253, 182, 14) 100%);
    cursor: pointer;
  }
}

.l-hamburger__inner {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 0.2rem;
}

.l-hamburger__icon-container {
  position: relative;
  width: 2rem;
  height: 2rem;
}

.l-hamburger__icon-body {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.l-hamburger__icon {
  width: 100%;
  height: 2px;
  border-radius: 10px;
  background-color: #000000;
}

.l-hamburger__icon:nth-child(1) {
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.l-hamburger__icon:nth-child(2) {
  margin-top: 0.6rem;
}

.l-hamburger__icon:nth-child(3) {
  margin-top: 0.6rem;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.l-hamburger.is-active .l-hamburger__icon:nth-child(1) {
  -webkit-transform: translateY(0.4rem) rotate(45deg);
          transform: translateY(0.4rem) rotate(45deg);
}

.l-hamburger.is-active .l-hamburger__icon:nth-child(2) {
  display: none;
}

.l-hamburger.is-active .l-hamburger__icon:nth-child(3) {
  -webkit-transform: translateY(-0.34rem) rotate(-45deg);
          transform: translateY(-0.34rem) rotate(-45deg);
}

.l-hamburger__text {
  position: relative;
  font-family: "RocknRoll One", sans-serif;
  font-size: 1rem;
  color: #000000;
  text-align: center;
  text-transform: uppercase;
}

.l-hamburger__text::before {
  content: "menu";
}

.l-hamburger.is-active .l-hamburger__text::before {
  content: "close";
}

/* ------------------------------------------------
drawer
--------------------------------------------------- */
.l-drawer {
  position: fixed;
  z-index: 5000;
  top: 1rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  padding-top: 7.4rem;
  padding-bottom: 2rem;
  width: 94.7%;
  max-height: 100vh;
  background-color: #fff;
  border-radius: 1rem;
  display: none;
  opacity: 0;
  overflow-y: auto;
  -webkit-transition: opacity 0.6s ease;
  transition: opacity 0.6s ease;
}

.l-drawer.is-open {
  display: block;
  opacity: 1;
}

.l-drawer__logo {
  position: absolute;
  top: 0.2rem;
  left: 1rem;
  width: 14rem;
  height: auto;
}

.l-drawer__logo-link {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 3.8rem;
  overflow: hidden;
}

.l-drawer__inner {
  padding-inline: 2rem;
}

.l-drawer__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  row-gap: 2rem;
}

.l-drawer__link.c-menu-link {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: #000000;
}

.l-drawer__sns {
  margin-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
}

.l-drawer__sns-link {
  display: block;
  width: 4rem;
}

.l-drawer__sns-link img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.l-drawer__character {
  margin-top: 3rem;
  margin-inline: auto;
  width: 31.7rem;
}

.l-drawer__staff-img {
  position: absolute;
  top: 7.3rem;
  right: 0;
  width: 7.9rem;
}

.l-drawer__main-img {
  position: absolute;
  top: 19.5rem;
  right: 1rem;
  width: 18.4rem;
}

.footer__main {
  z-index: 1;
  position: relative;
  padding-top: 3.7rem;
}

.footer__img-container {
  z-index: 5;
  position: relative;
  padding-left: 12%;
  padding-right: 14.3%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 1680px) {
  .footer__img-container {
    padding-left: 2rem;
    padding-right: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .footer__img-container {
    padding-left: initial;
    padding-right: initial;
  }
}

.footer__img {
  width: 18.4rem;
}
@media screen and (max-width: 767px) {
  .footer__img {
    width: 7.36rem;
  }
}

.footer__illust-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.footer__illust {
  height: 15.6rem;
}
@media screen and (max-width: 767px) {
  .footer__illust {
    height: 6.24rem;
  }
}

.footer__illust img {
  width: auto;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.footer__illust:nth-child(6) {
  margin-left: -1.8rem;
}
@media screen and (max-width: 767px) {
  .footer__illust:nth-child(6) {
    margin-left: -0.72rem;
  }
}

.footer__contents {
  z-index: 1;
  position: relative;
  margin-top: -0.5rem;
  padding-top: 6rem;
  padding-bottom: 6rem;
  background-image: repeating-linear-gradient(90deg, #FDB60E, #FDB60E 4px, transparent 4px, transparent 8px), repeating-linear-gradient(90deg, #FDB60E, #FDB60E 4px, transparent 4px, transparent 8px);
  background-position: left top, left bottom;
  background-repeat: repeat-x, repeat-x;
  background-size: 100% 1px, 100% 1px;
}
@media screen and (max-width: 767px) {
  .footer__contents {
    margin-top: -0.3rem;
    padding-top: 3rem;
  }
}

.footer__contents-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 767px) {
  .footer__contents-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

@media screen and (max-width: 767px) {
  .footer__contents-inner.l-inner {
    padding-inline: 1rem;
  }
}

.footer__info {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .footer__info {
    width: 100%;
  }
}

.footer__name-link {
  display: block;
  width: 16.5rem;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
@media screen and (max-width: 767px) {
  .footer__name-link {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    height: 6.5rem;
  }
}

.footer__name-link img {
  width: 100%;
  height: auto;
  border-radius: 3.8rem;
}
@media screen and (max-width: 767px) {
  .footer__name-link img {
    width: auto;
    height: 100%;
  }
}

.footer__name-link:hover {
  opacity: 1;
  -webkit-transform: translateY(-0.5rem);
          transform: translateY(-0.5rem);
}

.footer__info-text {
  margin-top: 2rem;
  font-size: 1.5rem;
  font-weight: 500;
}

.footer__sns {
  margin-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 1.2rem;
     -moz-column-gap: 1.2rem;
          column-gap: 1.2rem;
}
@media screen and (max-width: 767px) {
  .footer__sns {
    margin-top: 1.2rem;
    -webkit-column-gap: 1rem;
       -moz-column-gap: 1rem;
            column-gap: 1rem;
  }
}

.footer__sns-link {
  display: block;
  width: 5rem;
}
@media screen and (max-width: 767px) {
  .footer__sns-link {
    width: 4rem;
  }
}

.footer__sns-list:nth-child(1) .footer__sns-link {
  width: 4rem;
}
@media screen and (max-width: 767px) {
  .footer__sns-list:nth-child(1) .footer__sns-link {
    width: 3.4rem;
  }
}

.footer__sns-link img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.footer__menu {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .footer__menu {
    margin-top: 4rem;
    width: 100%;
  }
}

.footer__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 767px) {
  .footer__nav {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 1rem;
  }
}

.footer__menu-lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 2rem;
}
@media screen and (max-width: 767px) {
  .footer__menu-lists {
    row-gap: 1rem;
  }
}

.footer__menu-lists:nth-child(1) {
  width: 55.5%;
}
@media screen and (max-width: 767px) {
  .footer__menu-lists:nth-child(1) {
    width: 100%;
  }
}

.footer__menu-lists:nth-child(2) {
  width: 44.5%;
}
@media screen and (max-width: 767px) {
  .footer__menu-lists:nth-child(2) {
    width: 100%;
  }
}

.footer__link {
  margin-top: 4rem;
}

.footer__bottom {
  z-index: 1;
  position: relative;
  padding-top: min(10.4166666667vw, 200px);
  padding-bottom: min(2.0833333333vw, 40px);
  margin-inline: auto;
  width: 100%;
  max-width: 1920px;
}

.footer__bottom-text {
  z-index: 1;
  position: relative;
  margin-inline: auto;
  width: min(40.625vw, 780px);
}
@media screen and (max-width: 767px) {
  .footer__bottom-text {
    width: 30rem;
  }
}

.footer__bottom-imgBody {
  z-index: 2;
  position: absolute;
  bottom: 0;
  left: 0;
  padding-left: min(3.59375vw, 69px);
  padding-right: min(4.8958333333vw, 94px);
  width: 100%;
}
@media screen and (max-width: 767px) {
  .footer__bottom-imgBody {
    padding-left: 2rem;
    padding-right: 1rem;
  }
}

.footer__bottom-imgContainer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.footer__bottom-img:nth-child(1) {
  width: min(12.5vw, 240px);
}
@media screen and (max-width: 767px) {
  .footer__bottom-img:nth-child(1) {
    width: 4.68rem;
  }
}

.footer__bottom-img:nth-child(2) {
  margin-left: calc(-1 * min(2.8125vw, 54px));
  width: min(24.6354166667vw, 473px);
}
@media screen and (max-width: 767px) {
  .footer__bottom-img:nth-child(2) {
    margin-left: -1.053rem;
    width: 9.2235rem;
  }
}

.footer__bottom-img:nth-child(3) {
  margin-left: calc(-1 * min(4.0104166667vw, 77px));
  width: min(19.4791666667vw, 374px);
}
@media screen and (max-width: 767px) {
  .footer__bottom-img:nth-child(3) {
    margin-left: -1.5015rem;
    width: 7.293em;
  }
}

.footer__bottom-img:nth-child(4) {
  margin-left: min(1.25vw, 24px);
  width: min(8.6458333333vw, 166px);
}
@media screen and (max-width: 767px) {
  .footer__bottom-img:nth-child(4) {
    margin-left: 0.468rem;
    width: 3.237rem;
  }
}

.footer__bottom-img:nth-child(5) {
  margin-left: min(2.1354166667vw, 41px);
  width: min(11.7708333333vw, 226px);
}
@media screen and (max-width: 767px) {
  .footer__bottom-img:nth-child(5) {
    margin-left: 0.7995rem;
    width: 4.407rem;
  }
}

.footer__bottom-img:nth-child(6) {
  margin-left: calc(-1 * min(0.5208333333vw, 10px));
  width: min(18.5416666667vw, 356px);
}
@media screen and (max-width: 767px) {
  .footer__bottom-img:nth-child(6) {
    margin-left: -0.195rem;
    width: 6.942rem;
  }
}

.footer__copyright {
  z-index: 10;
  position: relative;
  margin-top: min(15.4166666667vw, 296px);
  display: block;
  font-size: 1.4rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .footer__copyright {
    margin-top: 3rem;
  }
}

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

.sp-only {
  display: none;
}
@media screen and (max-width: 767px) {
  .sp-only {
    display: block;
  }
}

.l-inner {
  width: 100%;
  max-width: 1260px;
  margin-inline: auto;
  padding-inline: 30px;
}
@media screen and (max-width: 767px) {
  .l-inner {
    padding-inline: 1.5rem;
  }
}

.l-inner02 {
  width: 100%;
  max-width: 1310px;
  margin-inline: auto;
  padding-inline: 55px;
}
@media screen and (max-width: 767px) {
  .l-inner02 {
    padding-inline: 1.5rem;
  }
}

.l-large-inner {
  margin-inline: auto;
  padding-inline: 30px;
  width: 100%;
  max-width: 1740px;
}
@media screen and (max-width: 767px) {
  .l-large-inner {
    padding-inline: 1.5rem;
  }
}

.l-small-inner {
  margin-inline: auto;
  width: 120rem;
}
@media screen and (max-width: 767px) {
  .l-small-inner {
    width: 100%;
  }
}

.l-xs-body {
  margin-inline: auto;
  width: 80rem;
}
@media screen and (max-width: 767px) {
  .l-xs-body {
    width: 100%;
  }
}

.l-wrapper {
  margin-inline: auto;
  width: 100%;
  max-width: 1920px;
  padding-inline: 12rem;
}
@media screen and (max-width: 1680px) {
  .l-wrapper {
    padding-inline: 30px;
  }
}
@media screen and (max-width: 767px) {
  .l-wrapper {
    padding-inline: 1.5rem;
  }
}

.l-page-top-body {
  z-index: 1;
  position: fixed;
  right: 50%;
  bottom: 2.4rem;
  -webkit-transform: translateX(50%);
          transform: translateX(50%);
  width: 120rem;
}
@media screen and (max-width: 767px) {
  .l-page-top-body {
    width: 100%;
  }
}

.l-page-top {
  z-index: 500;
  position: absolute;
  bottom: 0;
  right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 22.6rem;
  height: auto;
  cursor: pointer;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  opacity: 0;
  -webkit-transform: translateY(10rem);
          transform: translateY(10rem);
  -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, -webkit-transform 0.3s;
  transition: transform 0.3s, opacity 0.3s;
  transition: transform 0.3s, opacity 0.3s, -webkit-transform 0.3s;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .l-page-top {
    right: 1.5rem;
    width: 8rem;
  }
}

.l-page-top.is-show {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  pointer-events: auto;
  -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, -webkit-transform 0.3s;
  transition: transform 0.3s, opacity 0.3s;
  transition: transform 0.3s, opacity 0.3s, -webkit-transform 0.3s;
}

.l-page-top.is-show:hover {
  -webkit-animation: pageTopFloat 2.5s ease-in infinite;
          animation: pageTopFloat 2.5s ease-in infinite;
}

@-webkit-keyframes pageTopFloat {
  0% {
    -webkit-transform: translateY(0) rotate(0deg);
            transform: translateY(0) rotate(0deg);
  }
  25% {
    -webkit-transform: translateY(-0.3rem) rotate(5deg);
            transform: translateY(-0.3rem) rotate(5deg);
  }
  50% {
    -webkit-transform: translateY(0) rotate(0deg);
            transform: translateY(0) rotate(0deg);
  }
  75% {
    -webkit-transform: translateY(-0.3rem) rotate(-5deg);
            transform: translateY(-0.3rem) rotate(-5deg);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0deg);
            transform: translateY(0) rotate(0deg);
  }
}

@keyframes pageTopFloat {
  0% {
    -webkit-transform: translateY(0) rotate(0deg);
            transform: translateY(0) rotate(0deg);
  }
  25% {
    -webkit-transform: translateY(-0.3rem) rotate(5deg);
            transform: translateY(-0.3rem) rotate(5deg);
  }
  50% {
    -webkit-transform: translateY(0) rotate(0deg);
            transform: translateY(0) rotate(0deg);
  }
  75% {
    -webkit-transform: translateY(-0.3rem) rotate(-5deg);
            transform: translateY(-0.3rem) rotate(-5deg);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0deg);
            transform: translateY(0) rotate(0deg);
  }
}
.c-button {
  padding: 3.3rem 3rem 3.3rem 4rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-color: #F02B6A;
  border-radius: 4.7rem;
  -webkit-box-shadow: 0 1rem 0 #62001F;
          box-shadow: 0 1rem 0 #62001F;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 5.7rem;
     -moz-column-gap: 5.7rem;
          column-gap: 5.7rem;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.45;
  color: #fff;
  -webkit-transition: 0.3s -webkit-transform, 0.3s -webkit-box-shadow;
  transition: 0.3s -webkit-transform, 0.3s -webkit-box-shadow;
  transition: 0.3s transform, 0.3s box-shadow;
  transition: 0.3s transform, 0.3s box-shadow, 0.3s -webkit-transform, 0.3s -webkit-box-shadow;
}
@media screen and (max-width: 767px) {
  .c-button {
    padding: 2rem 2rem 2rem 3rem;
    width: 100%;
    -webkit-column-gap: 2rem;
       -moz-column-gap: 2rem;
            column-gap: 2rem;
    font-size: 1.8rem;
  }
}

.c-button.--reverse {
  background-color: #fff;
  -webkit-box-shadow: 0 1rem 0 #989898;
          box-shadow: 0 1rem 0 #989898;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  color: #000000;
}

.c-button::after {
  content: "";
  width: 1.5rem;
  height: auto;
  aspect-ratio: 10.17/8.9;
  background-image: url(../images/common/icon-arrow-right.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

.c-button.--reverse::after {
  background-image: url(../images/common/icon-arrow-left.svg);
}

.c-button:hover {
  opacity: 1;
  -webkit-transform: translateY(1rem);
          transform: translateY(1rem);
  -webkit-box-shadow: none;
          box-shadow: none;
}

.c-button.--no-arrow {
  padding: 2rem;
  width: 36rem;
  height: 8.2rem;
}
@media screen and (max-width: 767px) {
  .c-button.--no-arrow {
    width: 100%;
    height: auto;
  }
}

.c-button.--no-arrow::after {
  display: none;
}

.c-menu-link {
  position: relative;
  padding-left: 1.2rem;
  height: inherit;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.6rem;
  font-weight: 700;
  color: #fff;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.c-menu-link::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0.8rem;
  height: auto;
  aspect-ratio: 1;
  background: rgb(184, 42, 0);
  background: radial-gradient(circle, rgb(184, 42, 0) 0%, rgb(253, 182, 14) 100%);
  border-radius: 50%;
}

.c-menu-link::after {
  position: absolute;
  content: "";
  left: 0;
  bottom: 0;
  width: 0;
  height: 1px;
  background-color: #FDB60E;
  -webkit-transition: width 0.3s ease;
  transition: width 0.3s ease;
}

.l-header__link.c-menu-link::after {
  bottom: 2rem;
}

.c-menu-link:hover {
  color: #FDB60E;
  opacity: 1;
}

.c-menu-link:hover::after {
  opacity: 1;
  width: 100%;
}

.footer .c-menu-link {
  padding-left: 1.8rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.5rem;
}

.section-heading {
  font-family: "RocknRoll One", sans-serif;
  font-size: 6rem;
  line-height: 1.2667;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .section-heading {
    font-size: 2.4rem;
    text-align: center;
  }
}

.section-heading.--lower {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media screen and (max-width: 767px) {
  .section-heading.--lower {
    -webkit-column-gap: 2rem;
       -moz-column-gap: 2rem;
            column-gap: 2rem;
    text-align: left;
  }
}

.common-text {
  font-size: 2rem;
  font-weight: 500;
  line-height: 2.4;
}
@media screen and (max-width: 767px) {
  .common-text {
    font-size: 1.8rem;
    line-height: 1.8;
  }
}

.lower-common-text {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2.06;
}
@media screen and (max-width: 767px) {
  .lower-common-text {
    line-height: 1.8;
  }
}

.lower-large-text {
  font-size: 2rem;
  font-weight: 500;
  line-height: 2.18;
}
@media screen and (max-width: 767px) {
  .lower-large-text {
    font-size: 1.8rem;
    line-height: 1.8;
  }
}

/* ------------------------------------------------
スクロールアニメーション
--------------------------------------------------- */
/* ------------------------------------------------
FV
--------------------------------------------------- */
.scale-fv {
  opacity: 0;
  -webkit-animation: fvScale 0.8s ease-out 0s forwards;
          animation: fvScale 0.8s ease-out 0s forwards;
}

@-webkit-keyframes fvScale {
  0% {
    opacity: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes fvScale {
  0% {
    opacity: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
.fadeUp-fv {
  opacity: 0;
  -webkit-animation: fvFadeUp 0.8s ease-out 0.8s forwards;
          animation: fvFadeUp 0.8s ease-out 0.8s forwards;
}

@-webkit-keyframes fvFadeUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(3rem);
            transform: translateY(3rem);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes fvFadeUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(3rem);
            transform: translateY(3rem);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.fadeDown-fv > * {
  opacity: 0;
}

.fadeDown-fv > *:nth-child(1) {
  -webkit-animation: FadeDown 0.3s ease-out 1.6s forwards;
          animation: FadeDown 0.3s ease-out 1.6s forwards;
}

@-webkit-keyframes FadeDown {
  0% {
    -webkit-transform: translateY(-3rem);
            transform: translateY(-3rem);
    opacity: 0;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes FadeDown {
  0% {
    -webkit-transform: translateY(-3rem);
            transform: translateY(-3rem);
    opacity: 0;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.fadeDown-fv > *:nth-child(2) {
  -webkit-animation: FadeDown 0.3s ease-out 1.9s forwards;
          animation: FadeDown 0.3s ease-out 1.9s forwards;
}

.fadeDown-fv > *:nth-child(3) {
  -webkit-animation: FadeDown 0.3s ease-out 2.2s forwards;
          animation: FadeDown 0.3s ease-out 2.2s forwards;
}

.fadeDown-fv > *:nth-child(4) {
  -webkit-animation: FadeDown 0.3s ease-out 2.5s forwards;
          animation: FadeDown 0.3s ease-out 2.5s forwards;
}

.fadeDown-fv > *:nth-child(5) {
  -webkit-animation: FadeDown 0.3s ease-out 2.8s forwards;
          animation: FadeDown 0.3s ease-out 2.8s forwards;
}

/* ------------------------------------------------
下からふわっと
--------------------------------------------------- */
.fadeUp {
  opacity: 0;
}

.fadeUp.is-animated {
  opacity: 0;
  -webkit-animation: FadeUp 0.5s ease-out 0.5s forwards;
          animation: FadeUp 0.5s ease-out 0.5s forwards;
}

@-webkit-keyframes FadeUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(5rem);
            transform: translateY(5rem);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes FadeUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(5rem);
            transform: translateY(5rem);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
/* ------------------------------------------------
上からふわっと
--------------------------------------------------- */
.fadeDown > * {
  opacity: 0;
}

.fadeDown.is-animated > *:nth-child(1) {
  -webkit-animation: FadeDown 0.3s ease-out 0.5s forwards;
          animation: FadeDown 0.3s ease-out 0.5s forwards;
}

.fadeDown.is-animated > *:nth-child(2) {
  -webkit-animation: FadeDown 0.3s ease-out 0.8s forwards;
          animation: FadeDown 0.3s ease-out 0.8s forwards;
}

.fadeDown.is-animated > *:nth-child(3) {
  -webkit-animation: FadeDown 0.3s ease-out 1.1s forwards;
          animation: FadeDown 0.3s ease-out 1.1s forwards;
}

.fadeDown.is-animated > *:nth-child(4) {
  -webkit-animation: FadeDown 0.3s ease-out 1.4s forwards;
          animation: FadeDown 0.3s ease-out 1.4s forwards;
}

.fadeDown.is-animated > *:nth-child(5) {
  -webkit-animation: FadeDown 0.3s ease-out 1.7s forwards;
          animation: FadeDown 0.3s ease-out 1.7s forwards;
}

.fadeDown.is-animated > *:nth-child(6) {
  -webkit-animation: FadeDown 0.3s ease-out 2s forwards;
          animation: FadeDown 0.3s ease-out 2s forwards;
}

.fadeDown.is-animated > *:nth-child(7) {
  -webkit-animation: FadeDown 0.3s ease-out 2.3s forwards;
          animation: FadeDown 0.3s ease-out 2.3s forwards;
}

.fadeDown.is-animated > *:nth-child(8) {
  -webkit-animation: FadeDown 0.3s ease-out 2.6s forwards;
          animation: FadeDown 0.3s ease-out 2.6s forwards;
}

/* ------------------------------------------------
右からふわっと
--------------------------------------------------- */
.fadeRight > * {
  opacity: 0;
}

@-webkit-keyframes FadeRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(5rem);
            transform: translateX(5rem);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
  }
}

@keyframes FadeRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(5rem);
            transform: translateX(5rem);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
  }
}
.fadeRight.is-animated > * {
  opacity: 0;
}

.fadeRight.is-animated > *:nth-child(1) {
  -webkit-animation: FadeRight 0.3s ease-out 0.3s forwards;
          animation: FadeRight 0.3s ease-out 0.3s forwards;
}

.fadeRight.is-animated > *:nth-child(2) {
  -webkit-animation: FadeRight 0.3s ease-out 0.6s forwards;
          animation: FadeRight 0.3s ease-out 0.6s forwards;
}

.fadeRight.is-animated > *:nth-child(3) {
  -webkit-animation: FadeRight 0.3s ease-out 0.9s forwards;
          animation: FadeRight 0.3s ease-out 0.9s forwards;
}

.fadeRight.is-animated > *:nth-child(4) {
  -webkit-animation: FadeRight 0.3s ease-out 1.2s forwards;
          animation: FadeRight 0.3s ease-out 1.2s forwards;
}

.fadeRight.is-animated > *:nth-child(5) {
  -webkit-animation: FadeRight 0.3s ease-out 1.5s forwards;
          animation: FadeRight 0.3s ease-out 1.5s forwards;
}

/* ------------------------------------------------
会社について
--------------------------------------------------- */
.story-encounter__speech-img.fadeDown.is-animated {
  opacity: 0;
  -webkit-animation: FadeDownXY 0.5s ease-out 0.5s forwards;
          animation: FadeDownXY 0.5s ease-out 0.5s forwards;
}

@-webkit-keyframes FadeDownXY {
  0% {
    opacity: 0;
    -webkit-transform: translate(-50%, -5rem);
            transform: translate(-50%, -5rem);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
}

@keyframes FadeDownXY {
  0% {
    opacity: 0;
    -webkit-transform: translate(-50%, -5rem);
            transform: translate(-50%, -5rem);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
}
@media screen and (max-width: 767px) {
  .story-notice__head-img.fadeUp.is-animated {
    -webkit-animation: FadeUpR 0.5s ease-out 0.5s forwards;
            animation: FadeUpR 0.5s ease-out 0.5s forwards;
  }
}

@-webkit-keyframes FadeUpR {
  0% {
    opacity: 0;
    -webkit-transform: translate(50%, 5rem);
            transform: translate(50%, 5rem);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(50%, 0);
            transform: translate(50%, 0);
  }
}

@keyframes FadeUpR {
  0% {
    opacity: 0;
    -webkit-transform: translate(50%, 5rem);
            transform: translate(50%, 5rem);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(50%, 0);
            transform: translate(50%, 0);
  }
}
/* ------------------------------------------------
下層MV
--------------------------------------------------- */
.mv__img-container.fadeUp {
  -webkit-animation: FadeUp 0.5s ease-out 0s forwards;
          animation: FadeUp 0.5s ease-out 0s forwards;
}

.fadeDown-mv > * {
  opacity: 0;
}

.fadeDown-mv > *:nth-child(1) {
  -webkit-animation: FadeDown 0.3s ease-out 0.5s forwards;
          animation: FadeDown 0.3s ease-out 0.5s forwards;
}

.fadeDown-mv > *:nth-child(2) {
  -webkit-animation: FadeDown 0.3s ease-out 0.8s forwards;
          animation: FadeDown 0.3s ease-out 0.8s forwards;
}

.fadeDown-mv > *:nth-child(3) {
  -webkit-animation: FadeDown 0.3s ease-out 1.1s forwards;
          animation: FadeDown 0.3s ease-out 1.1s forwards;
}

.fadeDown-mv > *:nth-child(4) {
  -webkit-animation: FadeDown 0.3s ease-out 1.4s forwards;
          animation: FadeDown 0.3s ease-out 1.4s forwards;
}

.fadeDown-mv > *:nth-child(5) {
  -webkit-animation: FadeDown 0.3s ease-out 1.7s forwards;
          animation: FadeDown 0.3s ease-out 1.7s forwards;
}

/* ------------------------------------------------
Footer
--------------------------------------------------- */
.fadeUp-footer > * {
  opacity: 0;
}

.fadeUp-footer.is-animated > * {
  opacity: 0;
}

.fadeUp-footer.is-animated > *:nth-child(1) {
  -webkit-animation: FadeUp 0.3s ease-out 0.5s forwards;
          animation: FadeUp 0.3s ease-out 0.5s forwards;
}

.fadeUp-footer.is-animated > *:nth-child(2) {
  -webkit-animation: FadeUp 0.3s ease-out 0.8s forwards;
          animation: FadeUp 0.3s ease-out 0.8s forwards;
}

.fadeUp-footer.is-animated > *:nth-child(3) {
  -webkit-animation: FadeUp 0.3s ease-out 1.1s forwards;
          animation: FadeUp 0.3s ease-out 1.1s forwards;
}

.fadeUp-footer.is-animated > *:nth-child(4) {
  -webkit-animation: FadeUp 0.3s ease-out 1.4s forwards;
          animation: FadeUp 0.3s ease-out 1.4s forwards;
}

.fadeUp-footer.is-animated > *:nth-child(5) {
  -webkit-animation: FadeUp 0.3s ease-out 1.7s forwards;
          animation: FadeUp 0.3s ease-out 1.7s forwards;
}

.fadeUp-footer.is-animated > *:nth-child(6) {
  -webkit-animation: FadeUp 0.3s ease-out 2s forwards;
          animation: FadeUp 0.3s ease-out 2s forwards;
}

.upDown-footer > * {
  -webkit-animation: upDown1 2s ease-out 0s infinite;
          animation: upDown1 2s ease-out 0s infinite;
}

@-webkit-keyframes upDown1 {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-5rem);
            transform: translateY(-5rem);
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes upDown1 {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-5rem);
            transform: translateY(-5rem);
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@media screen and (max-width: 767px) {
  @-webkit-keyframes upDown1 {
    0% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
    }
    50% {
      -webkit-transform: translateY(-3rem);
              transform: translateY(-3rem);
    }
    100% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
    }
  }
  @keyframes upDown1 {
    0% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
    }
    50% {
      -webkit-transform: translateY(-3rem);
              transform: translateY(-3rem);
    }
    100% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
    }
  }
}
.upDown-footer > *:nth-child(1) {
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
}

.upDown-footer > *:nth-child(2) {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}

.upDown-footer > *:nth-child(3) {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}

.upDown-footer > *:nth-child(4) {
  -webkit-animation-delay: 0.6s;
          animation-delay: 0.6s;
}

.upDown-footer > *:nth-child(5) {
  -webkit-animation-delay: 0.8s;
          animation-delay: 0.8s;
}

.upDown-footer > *:nth-child(6) {
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
}

.poyooon1:hover {
  -webkit-animation: poyooon1 1s linear 0s infinite;
          animation: poyooon1 1s linear 0s infinite;
}

@-webkit-keyframes poyooon1 {
  0% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
  10% {
    -webkit-transform: scale(1.05, 0.9) translate(0%, 2%);
            transform: scale(1.05, 0.9) translate(0%, 2%);
  }
  20% {
    -webkit-transform: scale(1.05, 0.85) translate(0%, 10%);
            transform: scale(1.05, 0.85) translate(0%, 10%);
  }
  30% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
  40% {
    -webkit-transform: scale(0.9, 1.05) translate(0%, -20%);
            transform: scale(0.9, 1.05) translate(0%, -20%);
  }
  60% {
    -webkit-transform: scale(0.9, 1.05) translate(0%, -5%);
            transform: scale(0.9, 1.05) translate(0%, -5%);
  }
  70% {
    -webkit-transform: scale(1.05, 0.85) translate(0%, 10%);
            transform: scale(1.05, 0.85) translate(0%, 10%);
  }
  80% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
  100% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
}

@keyframes poyooon1 {
  0% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
  10% {
    -webkit-transform: scale(1.05, 0.9) translate(0%, 2%);
            transform: scale(1.05, 0.9) translate(0%, 2%);
  }
  20% {
    -webkit-transform: scale(1.05, 0.85) translate(0%, 10%);
            transform: scale(1.05, 0.85) translate(0%, 10%);
  }
  30% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
  40% {
    -webkit-transform: scale(0.9, 1.05) translate(0%, -20%);
            transform: scale(0.9, 1.05) translate(0%, -20%);
  }
  60% {
    -webkit-transform: scale(0.9, 1.05) translate(0%, -5%);
            transform: scale(0.9, 1.05) translate(0%, -5%);
  }
  70% {
    -webkit-transform: scale(1.05, 0.85) translate(0%, 10%);
            transform: scale(1.05, 0.85) translate(0%, 10%);
  }
  80% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
  100% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
}
.poyooon2:hover {
  -webkit-animation: poyooon2 1s linear 0s infinite;
          animation: poyooon2 1s linear 0s infinite;
}

@-webkit-keyframes poyooon2 {
  0% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
  10% {
    -webkit-transform: scale(1.1, 0.9) translate(0%, 5%);
            transform: scale(1.1, 0.9) translate(0%, 5%);
  }
  20% {
    -webkit-transform: scale(1.2, 0.8) translate(0%, 15%);
            transform: scale(1.2, 0.8) translate(0%, 15%);
  }
  30% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
  40% {
    -webkit-transform: scale(0.9, 1.2) translate(0%, -50%);
            transform: scale(0.9, 1.2) translate(0%, -50%);
  }
  60% {
    -webkit-transform: scale(0.9, 1.2) translate(0%, -10%);
            transform: scale(0.9, 1.2) translate(0%, -10%);
  }
  70% {
    -webkit-transform: scale(1.2, 0.8) translate(0%, 15%);
            transform: scale(1.2, 0.8) translate(0%, 15%);
  }
  80% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
  100% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
}

@keyframes poyooon2 {
  0% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
  10% {
    -webkit-transform: scale(1.1, 0.9) translate(0%, 5%);
            transform: scale(1.1, 0.9) translate(0%, 5%);
  }
  20% {
    -webkit-transform: scale(1.2, 0.8) translate(0%, 15%);
            transform: scale(1.2, 0.8) translate(0%, 15%);
  }
  30% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
  40% {
    -webkit-transform: scale(0.9, 1.2) translate(0%, -50%);
            transform: scale(0.9, 1.2) translate(0%, -50%);
  }
  60% {
    -webkit-transform: scale(0.9, 1.2) translate(0%, -10%);
            transform: scale(0.9, 1.2) translate(0%, -10%);
  }
  70% {
    -webkit-transform: scale(1.2, 0.8) translate(0%, 15%);
            transform: scale(1.2, 0.8) translate(0%, 15%);
  }
  80% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
  100% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
}
.purun:hover {
  -webkit-animation: purun 0.9s linear 0s 1;
          animation: purun 0.9s linear 0s 1;
}

@-webkit-keyframes purun {
  0% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
  15% {
    -webkit-transform: scale(0.9, 0.9) translate(0%, 5%);
            transform: scale(0.9, 0.9) translate(0%, 5%);
  }
  30% {
    -webkit-transform: scale(1.2, 0.8) translate(0%, 10%);
            transform: scale(1.2, 0.8) translate(0%, 10%);
  }
  50% {
    -webkit-transform: scale(0.8, 1.2) translate(0%, -10%);
            transform: scale(0.8, 1.2) translate(0%, -10%);
  }
  70% {
    -webkit-transform: scale(1.1, 0.9) translate(0%, 5%);
            transform: scale(1.1, 0.9) translate(0%, 5%);
  }
  100% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
}

@keyframes purun {
  0% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
  15% {
    -webkit-transform: scale(0.9, 0.9) translate(0%, 5%);
            transform: scale(0.9, 0.9) translate(0%, 5%);
  }
  30% {
    -webkit-transform: scale(1.2, 0.8) translate(0%, 10%);
            transform: scale(1.2, 0.8) translate(0%, 10%);
  }
  50% {
    -webkit-transform: scale(0.8, 1.2) translate(0%, -10%);
            transform: scale(0.8, 1.2) translate(0%, -10%);
  }
  70% {
    -webkit-transform: scale(1.1, 0.9) translate(0%, 5%);
            transform: scale(1.1, 0.9) translate(0%, 5%);
  }
  100% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
}
.column-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 767px) {
  .column-body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 4rem;
  }
}

@media screen and (max-width: 767px) {
  .column-body.--reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}

.column-body .img-area {
  z-index: 1;
  position: relative;
  width: 50%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .column-body .img-area {
    width: 100%;
    height: auto;
  }
}

.column-body .img {
  z-index: 1;
  position: absolute;
  top: 0;
  right: 0;
  width: 84rem;
}
@media screen and (max-width: 767px) {
  .column-body .img {
    position: initial;
    width: 100%;
  }
}

.column-body.--reverse .img {
  right: initial;
  left: 0;
}

.column-body .text-area {
  z-index: 1;
  position: relative;
  padding-left: 4rem;
  width: 50%;
}
@media screen and (max-width: 767px) {
  .column-body .text-area {
    padding-left: initial;
    width: 100%;
  }
}

.column-body.--reverse .text-area {
  padding-left: initial;
  padding-right: 4rem;
}
@media screen and (max-width: 767px) {
  .column-body.--reverse .text-area {
    padding-right: initial;
  }
}

/* ------------------------------------------------
共通背景
--------------------------------------------------- */
main {
  z-index: 1;
  position: relative;
  background-color: #000000;
  overflow: hidden;
}

section {
  z-index: 1;
  position: relative;
}

footer {
  z-index: 1;
  position: relative;
  background-color: #000000;
  overflow: hidden;
}

.bg-common {
  z-index: 1;
  position: absolute;
  top: 0;
  left: -17.6rem;
  width: 100%;
  height: auto;
}

.bg-common__img {
  width: 209.6rem;
  height: auto;
}
@media screen and (max-width: 1680px) {
  .bg-common__img {
    width: 110%;
  }
}
@media screen and (max-width: 767px) {
  .bg-common__img {
    width: 200%;
  }
}

.bg-common__img:not(:first-child) {
  margin-top: 10rem;
}

#top-main .bg-common__img:not(:first-child) {
  margin-top: 12rem;
}

#top-main .bg-common__img:nth-child(2) {
  margin-top: 39rem;
}

#top-main .bg-common__img:nth-child(3) {
  margin-top: 66.6rem;
}

/* ------------------------------------------------
mv
--------------------------------------------------- */
.mv {
  z-index: 1;
  position: relative;
  padding-top: 12rem;
  margin-bottom: -3.5rem;
}
@media screen and (max-width: 1680px) {
  .mv {
    padding-top: 15rem;
  }
}
@media screen and (max-width: 767px) {
  .mv {
    padding-top: 13rem;
  }
}

.mv__img-container {
  position: relative;
}
@media screen and (max-width: 767px) {
  .mv__img-container {
    width: 100%;
    height: auto;
    aspect-ratio: 375/124;
  }
}

.mv__bg-img.--wave {
  z-index: 10;
  position: relative;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .mv__bg-img.--wave {
    position: absolute;
    top: 0;
    left: 47%;
    width: 130%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.mv__bg-img.--staff {
  position: absolute;
}

.mv__bg-img.--staff:nth-child(1) {
  z-index: 1;
  top: calc(-1 * min(4.7395833333vw, 91px));
  left: min(14.6354166667vw, 281px);
  width: min(5.8333333333vw, 112px);
}
@media screen and (max-width: 767px) {
  .mv__bg-img.--staff:nth-child(1) {
    top: -5rem;
    left: 1rem;
    width: 4.48rem;
  }
}

.mv__bg-img.--staff:nth-child(2) {
  z-index: 15;
  top: min(7.0833333333vw, 136px);
  left: min(16.8229166667vw, 323px);
  width: min(9.1666666667vw, 176px);
}
@media screen and (max-width: 767px) {
  .mv__bg-img.--staff:nth-child(2) {
    top: 2rem;
    left: 3.4rem;
    width: 7.216rem;
  }
}

.mv__bg-img.--staff:nth-child(3) {
  z-index: 15;
  top: min(7.5520833333vw, 145px);
  left: min(42.1875vw, 810px);
  width: min(9.375vw, 180px);
}
@media screen and (max-width: 767px) {
  .mv__bg-img.--staff:nth-child(3) {
    top: 2.8rem;
    left: 14rem;
    width: 7.56rem;
  }
}

.mv__bg-img.--staff:nth-child(4) {
  z-index: 15;
  top: min(7.2916666667vw, 140px);
  right: min(18.75vw, 360px);
  width: min(13.125vw, 252px);
}
@media screen and (max-width: 767px) {
  .mv__bg-img.--staff:nth-child(4) {
    top: 1.6rem;
    right: 3rem;
    width: 10.332rem;
  }
}

.mv__bg-img.--staff:nth-child(5) {
  z-index: 1;
  top: calc(-1 * min(5.0520833333vw, 97px));
  right: min(14.1666666667vw, 272px);
  width: min(5.2604166667vw, 101px);
}
@media screen and (max-width: 767px) {
  .mv__bg-img.--staff:nth-child(5) {
    top: -5rem;
    right: 1rem;
    width: 4.04rem;
  }
}

.lower-heading {
  z-index: 20;
  position: absolute;
  top: min(1.9791666667vw, 38px);
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  padding-inline: 3rem;
  width: 100%;
  font-family: "RocknRoll One", sans-serif;
  font-size: min(4.1666666667vw, 80px);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .lower-heading {
    top: 2rem;
    padding-inline: 2rem;
    font-size: 3rem;
  }
}

.c-heading-opacity {
  opacity: 0;
}

.speech-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-column-gap: 3rem;
     -moz-column-gap: 3rem;
          column-gap: 3rem;
}
@media screen and (max-width: 767px) {
  .speech-body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    row-gap: 1rem;
  }
}

.speech-img {
  width: 19.7rem;
}
@media screen and (max-width: 767px) {
  .speech-img {
    width: 15rem;
  }
}

.speech-body.--large .speech-img {
  width: 41.8rem;
}
@media screen and (max-width: 767px) {
  .speech-body.--large .speech-img {
    width: 20rem;
  }
}

.speech-textArea {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-bottom: 2rem;
}

.speech-text {
  padding: 3.2rem 4rem 3.1rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 2rem;
  background-color: #fff;
  -webkit-box-shadow: 0.8rem 0.8rem 0 0 #8B8B8B;
          box-shadow: 0.8rem 0.8rem 0 0 #8B8B8B;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.958;
  color: #000000;
}
@media screen and (max-width: 767px) {
  .speech-text {
    padding: 2.4rem 2rem;
    width: 100%;
  }
}

.speech-body.--large .speech-text {
  border-radius: 3rem;
  font-family: "RocknRoll One", sans-serif;
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1.52;
}
@media screen and (max-width: 767px) {
  .speech-body.--large .speech-text {
    font-size: 2.2rem;
  }
}

/* ------------------------------------------------
空室クリーニング・マットレスクリーニング共通
--------------------------------------------------- */
#page-vacant-room .column-body .img,
#page-mattress .column-body .img {
  position: initial;
}

.lower-common-text:not(:first-child) {
  margin-top: 3.3rem;
}
@media screen and (max-width: 767px) {
  .lower-common-text:not(:first-child) {
    margin-top: 1rem;
  }
}

.compare__heading .lower-heading-img {
  width: 19.7rem;
}
@media screen and (max-width: 767px) {
  .compare__heading .lower-heading-img {
    width: 10rem;
  }
}

.compare__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 10rem;
}
@media screen and (max-width: 767px) {
  .compare__lists {
    row-gap: 6rem;
  }
}

.compare__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 4rem;
     -moz-column-gap: 4rem;
          column-gap: 4rem;
}
@media screen and (max-width: 767px) {
  .compare__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 4rem;
  }
}

.compare__list:nth-child(even) {
  padding-left: 8rem;
}
@media screen and (max-width: 767px) {
  .compare__list:nth-child(even) {
    padding-left: initial;
  }
}

.compare__item {
  width: 54rem;
}
@media screen and (max-width: 767px) {
  .compare__item {
    width: 100%;
  }
}

.compare__item:not(:first-child) {
  position: relative;
}

.compare__item:not(:first-child)::before {
  position: absolute;
  content: "";
  top: 18.6rem;
  left: -2.5rem;
  width: 1.5rem;
  height: auto;
  aspect-ratio: 15/28;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  background-color: #FDB60E;
}
@media screen and (max-width: 767px) {
  .compare__item:not(:first-child)::before {
    top: -3.6rem;
    left: 50%;
    -webkit-transform: translateX(-50%) rotate(90deg);
            transform: translateX(-50%) rotate(90deg);
  }
}

.compare__item-img {
  width: 100%;
  height: auto;
  border-radius: 1rem;
  overflow: hidden;
}

.compare__item-text {
  margin-top: 2rem;
}

.compare .speech-text {
  width: 60rem;
}
@media screen and (max-width: 767px) {
  .compare .speech-text {
    width: 100%;
  }
}

.service {
  padding-top: 5rem;
}
@media screen and (max-width: 767px) {
  .service {
    padding-top: 4rem;
  }
}

.service__heading .lower-heading-img {
  width: 20.7rem;
}
@media screen and (max-width: 767px) {
  .service__heading .lower-heading-img {
    width: 10rem;
  }
}

.service__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 10rem;
}
@media screen and (max-width: 767px) {
  .service__lists {
    row-gap: 5rem;
  }
}

.service__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 4rem;
     -moz-column-gap: 4rem;
          column-gap: 4rem;
}
@media screen and (max-width: 767px) {
  .service__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 2rem;
  }
}

.service__list:nth-child(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media screen and (max-width: 767px) {
  .service__list:nth-child(even) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.service__list-img {
  width: 58rem;
  border-radius: 1rem;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .service__list-img {
    width: 100%;
  }
}

.service__text-area {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.service__title {
  padding-bottom: 0.2rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: inline;
  font-size: 2.4rem;
  font-weight: 500;
  background: url(../images/common/underline-wave.svg) bottom repeat-x;
  background-size: 3.8rem;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

.service__text-container.lower-common-text:not(:first-child) {
  margin-top: 4.1rem;
}
@media screen and (max-width: 767px) {
  .service__text-container.lower-common-text:not(:first-child) {
    margin-top: 2rem;
  }
}

.service__text:not(:first-child) {
  margin-top: 3.1rem;
}
@media screen and (max-width: 767px) {
  .service__text:not(:first-child) {
    margin-top: 1.6rem;
  }
}

.service__text .--strong {
  color: #DF6C03;
}

.service .speech-text {
  width: 60rem;
}
@media screen and (max-width: 767px) {
  .service .speech-text {
    width: 100%;
  }
}

#page-vacant-room .service .speech-text {
  width: 62.4rem;
}
@media screen and (max-width: 767px) {
  #page-vacant-room .service .speech-text {
    width: 100%;
  }
}

.price {
  padding-top: 7rem;
}

.price__heading .lower-heading-img {
  margin-left: -1.9rem;
  width: 23.6rem;
}
@media screen and (max-width: 767px) {
  .price__heading .lower-heading-img {
    margin-left: initial;
    width: 13rem;
  }
}

.price .column-body {
  -webkit-column-gap: 4rem;
     -moz-column-gap: 4rem;
          column-gap: 4rem;
}

.price .column-body .img-area {
  width: 58rem;
}
@media screen and (max-width: 767px) {
  .price .column-body .img-area {
    width: 100%;
  }
}

.price .column-body .img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .price .column-body .img {
    margin-inline: auto;
    width: 25rem;
  }
}

.price .column-body .text-area {
  padding-left: initial;
  width: 58rem;
  min-height: 15.6rem;
}
@media screen and (max-width: 767px) {
  .price .column-body .text-area {
    width: 100%;
    min-height: initial;
  }
}

.price__link {
  margin-top: 15rem;
}
@media screen and (max-width: 767px) {
  .price__link {
    margin-top: 4rem;
  }
}

.area {
  padding-top: 16rem;
}
@media screen and (max-width: 767px) {
  .area {
    padding-top: 8rem;
  }
}

.area__heading .lower-heading-img {
  width: 19.7rem;
}
@media screen and (max-width: 767px) {
  .area__heading .lower-heading-img {
    width: 10rem;
  }
}

.area__contents {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.area .column-body.--reverse .text-area {
  padding-right: initial;
}

.area__text .--strong {
  font-size: 2.8rem;
  font-weight: 700;
  color: #DF6C03;
}
@media screen and (max-width: 767px) {
  .area__text .--strong {
    font-size: 2rem;
  }
}

.area .column-body.--reverse .img-area {
  padding-left: 5.8rem;
}

.area .column-body.--reverse .img {
  width: 44.9rem;
  height: auto;
}
@media screen and (max-width: 767px) {
  .area .column-body.--reverse .img {
    width: 80%;
  }
}

.area__speech-area {
  margin-top: -8rem;
}
@media screen and (max-width: 767px) {
  .area__speech-area {
    margin-top: 0;
  }
}

.cta {
  padding-top: 12rem;
  padding-bottom: 2.7rem;
}

.cta__head-bg {
  margin-inline: auto;
  width: 100%;
  max-width: 1920px;
}

@media screen and (max-width: 767px) {
  .cta__heading.section-heading {
    font-size: 2.3rem;
  }
}

.column-body .cta__img.img {
  width: 54.6rem;
}
@media screen and (max-width: 767px) {
  .column-body .cta__img.img {
    margin-inline: auto;
    width: 20rem;
  }
}

.cta__link {
  margin-top: 10rem;
}
@media screen and (max-width: 767px) {
  .cta__link {
    margin-top: 5rem;
  }
}

/* ------------------------------------------------
トップページ
--------------------------------------------------- */
main {
  background-color: #000000;
  position: relative;
}

/* ------------------------------------------------
fv
--------------------------------------------------- */
.fv {
  width: 100%;
  height: auto;
  overflow: hidden;
}
.fv__inner {
  margin-inline: auto;
  width: 100%;
  max-width: 1920px;
  padding-top: 18rem;
}
@media screen and (max-width: 767px) {
  .fv__inner {
    padding-top: 9.7rem;
  }
}

.fv__title-body {
  z-index: 1;
  position: relative;
  padding-bottom: min(23.9583333333vw, 460px);
}
@media screen and (max-width: 767px) {
  .fv__title-body {
    padding-bottom: 42.5rem;
  }
}

.fv__title {
  z-index: 2;
  position: relative;
  margin-inline: auto;
  width: min(55.1041666667vw, 1058px);
}
@media screen and (max-width: 767px) {
  .fv__title {
    width: 35rem;
  }
}

.fv__main-img-container {
  z-index: 1;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.fv__main-img {
  position: absolute;
  bottom: calc(-1 * min(7.4479166667vw, 143px));
  left: 31.77%;
  width: min(45.0520833333vw, 865px);
}
@media screen and (max-width: 767px) {
  .fv__main-img {
    bottom: 13.5rem;
    left: 0.6rem;
    width: 44.2rem;
  }
}

.fv__bg-img {
  position: absolute;
}
.fv__bg-img.--01 {
  bottom: min(19.0104166667vw, 365px);
  left: min(3.4375vw, 66px);
  width: min(15.7291666667vw, 302px);
}

.fv__bg-img.--02 {
  bottom: min(14.2708333333vw, 274px);
  left: calc(-1 * min(2.65625vw, 51px));
  width: min(15.15625vw, 291px);
}

.fv__bg-img.--03 {
  bottom: min(6.7708333333vw, 130px);
  left: min(18.75vw, 360px);
  width: min(12.3958333333vw, 238px);
}

.fv__bg-img.--04 {
  bottom: min(32.3958333333vw, 622px);
  right: min(4.0104166667vw, 77px);
  width: min(12.1875vw, 234px);
}

.fv__bg-img.--05 {
  bottom: min(12.9166666667vw, 248px);
  right: min(4.375vw, 84px);
  width: min(25.8854166667vw, 497px);
}

.fv__text-body {
  z-index: 10;
  position: relative;
  margin-top: calc(-1 * min(15vw, 288px));
  padding-top: min(14.7395833333vw, 283px);
  padding-bottom: min(14.3229166667vw, 275px);
  width: 100%;
}
@media screen and (max-width: 767px) {
  .fv__text-body {
    margin-top: initial;
    padding-top: initial;
    padding-bottom: initial;
  }
}

.fv__bg-wave {
  z-index: 10;
  position: absolute;
  bottom: 50%;
  left: 49.5%;
  -webkit-transform: translate(-50%, 50%) rotate(-10deg);
          transform: translate(-50%, 50%) rotate(-10deg);
  width: 109%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .fv__bg-wave {
    bottom: initial;
    top: -22.7rem;
    -webkit-transform: translateX(-50%) rotate(-10deg);
            transform: translateX(-50%) rotate(-10deg);
    width: 65.1rem;
  }
}

.fv__text-inner {
  position: relative;
  z-index: 20;
}

.fv__text-content {
  position: relative;
  margin-inline: auto;
  padding: min(2.0833333333vw, 40px);
  width: min(62.5vw, 1200px);
  background-color: #fff;
  border-radius: min(1.5625vw, 30px);
  color: #000000;
}
@media screen and (max-width: 767px) {
  .fv__text-content {
    padding: 2rem 1rem;
    width: 100%;
    border-radius: 3rem;
  }
}

.fv__sub-title {
  font-family: "RocknRoll One", sans-serif;
  font-size: min(3.125vw, 60px);
  line-height: 1.2667;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .fv__sub-title {
    font-size: 2.4rem;
  }
}

.fv__text {
  margin-top: min(0.625vw, 12px);
  font-size: min(1.0416666667vw, 20px);
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .fv__text {
    margin-top: 1.6rem;
    font-size: 1.6rem;
  }
}

.fv__text-img {
  position: absolute;
  bottom: 0;
  left: 0;
  width: min(11.1979166667vw, 215px);
  height: auto;
}
@media screen and (max-width: 767px) {
  .fv__text-img {
    bottom: initial;
    left: initial;
    top: -7rem;
    right: 0;
    width: 10rem;
  }
}

/* ------------------------------------------------
greeting
--------------------------------------------------- */
.greeting {
  margin-top: -10rem;
  padding-top: 18.5rem;
  padding-bottom: 12.2rem;
  margin-inline: auto;
  width: 100%;
  max-width: 1920px;
}
@media screen and (max-width: 767px) {
  .greeting {
    margin-top: initial;
    padding-top: 12rem;
    padding-bottom: initial;
  }
}

.greeting__head-body {
  position: relative;
}

.greeting__head-img {
  position: absolute;
  bottom: 0;
  left: 65.6rem;
  width: 68.3rem;
}
@media screen and (max-width: 1680px) {
  .greeting__head-img {
    left: 55%;
    width: 45%;
  }
}
@media screen and (max-width: 767px) {
  .greeting__head-img {
    bottom: 6.5rem;
    left: 0rem;
  }
}

.greeting__text-area {
  padding-left: 5.6rem;
}
@media screen and (max-width: 767px) {
  .greeting__text-area {
    padding-left: initial;
  }
}

.greeting__text-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-column-gap: 4rem;
     -moz-column-gap: 4rem;
          column-gap: 4rem;
}
@media screen and (max-width: 767px) {
  .greeting__text-container {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-column-gap: 2rem;
       -moz-column-gap: 2rem;
            column-gap: 2rem;
  }
}

.greeting__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 2.4rem;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  letter-spacing: 0.1em;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .greeting__text {
    row-gap: 1rem;
  }
}

@media screen and (max-width: 767px) {
  .greeting__text.common-text {
    font-size: 1.6rem;
  }
}

.greeting__text .--strong {
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
  font-size: 3rem;
  font-weight: 700;
  color: #FDB60E;
}
@media screen and (max-width: 767px) {
  .greeting__text .--strong {
    font-size: 1.8rem;
  }
}

.greeting__link {
  margin-top: 7.2rem;
  margin-left: auto;
}
@media screen and (max-width: 767px) {
  .greeting__link {
    margin-left: initial;
    margin-inline: auto;
    margin-top: 2rem;
  }
}

.greeting__bottom {
  z-index: 1;
  position: relative;
  padding-top: min(12.3958333333vw, 238px);
}
@media screen and (max-width: 767px) {
  .greeting__bottom {
    margin-top: 2rem;
    padding-top: 3.6rem;
  }
}

.greeting__road-img.--main {
  z-index: 1;
  width: 100%;
  height: auto;
}

.greeting__road-img.--01 {
  z-index: 2;
  position: absolute;
  bottom: min(6.7708333333vw, 130px);
  left: min(7.2916666667vw, 140px);
  width: min(20.9375vw, 402px);
}
@media screen and (max-width: 767px) {
  .greeting__road-img.--01 {
    bottom: 2.535rem;
    left: 2.73rem;
    width: 7.839rem;
  }
}

.greeting__road-img.--02 {
  z-index: 2;
  position: absolute;
  bottom: min(24.1666666667vw, 464px);
  left: min(34.1666666667vw, 656px);
  width: min(18.125vw, 348px);
}
@media screen and (max-width: 767px) {
  .greeting__road-img.--02 {
    bottom: 9.048rem;
    left: 12.792rem;
    width: 6.786rem;
  }
}

.greeting__road-img.--03 {
  z-index: 2;
  position: absolute;
  bottom: min(33.0208333333vw, 634px);
  left: min(53.0729166667vw, 1019px);
  width: min(28.125vw, 540px);
}
@media screen and (max-width: 767px) {
  .greeting__road-img.--03 {
    bottom: 12.363rem;
    left: 19.8705rem;
    width: 10.53rem;
  }
}

.greeting__road-img.--04 {
  z-index: 2;
  position: absolute;
  bottom: min(47.7083333333vw, 916px);
  left: min(82.4479166667vw, 1583px);
  width: min(7.96875vw, 153px);
}
@media screen and (max-width: 767px) {
  .greeting__road-img.--04 {
    bottom: 17.862rem;
    left: 30.8685rem;
    width: 2.9835rem;
  }
}

.greeting__road-img.--05 {
  z-index: 2;
  position: absolute;
  bottom: calc(-1 * min(0.9895833333vw, 19px));
  left: min(41.5625vw, 798px);
  width: min(41.6666666667vw, 800px);
}
@media screen and (max-width: 767px) {
  .greeting__road-img.--05 {
    bottom: -0.3705rem;
    left: 15.561rem;
    width: 15.6rem;
  }
}

/* ------------------------------------------------
about
--------------------------------------------------- */
.about {
  padding-top: 12rem;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .about {
    padding-top: 8rem;
  }
}

.about__text-area {
  padding-right: 4rem;
}

@media screen and (max-width: 767px) {
  .about__text {
    text-align: center;
  }
}

.about__link {
  margin-top: 31.7rem;
}
@media screen and (max-width: 767px) {
  .about__link {
    margin-inline: auto;
    margin-top: 4rem;
  }
}

.about__bottom {
  margin-top: min(5.6770833333vw, 109px);
}
@media screen and (max-width: 767px) {
  .about__bottom {
    margin-top: 5rem;
  }
}

.about__bottom-inner {
  margin-inline: auto;
  width: 100%;
  max-width: 1920px;
  padding-inline: 12rem;
}
@media screen and (max-width: 767px) {
  .about__bottom-inner {
    padding-inline: 1.5rem;
  }
}

.about__bottom-container {
  position: relative;
  width: 100%;
  height: auto;
  aspect-ratio: 1680/1116.86;
}
@media screen and (max-width: 767px) {
  .about__bottom-container {
    aspect-ratio: 375/360;
  }
}

.about__bottom-img {
  position: absolute;
}

.about__bottom-img.--01 {
  top: 0;
  left: min(21.875vw, 420px);
  width: min(17.65625vw, 339px);
}
@media screen and (max-width: 767px) {
  .about__bottom-img.--01 {
    left: 7.6rem;
    width: 10.17rem;
  }
}

.about__bottom-img.--02 {
  top: min(5.46875vw, 105px);
  left: 0;
  width: min(12.6041666667vw, 242px);
}
@media screen and (max-width: 767px) {
  .about__bottom-img.--02 {
    top: 3.15rem;
    width: 7.26rem;
  }
}

.about__bottom-img.--03 {
  top: min(3.125vw, 60px);
  right: min(17.7083333333vw, 340px);
  width: min(19.7395833333vw, 379px);
}
@media screen and (max-width: 767px) {
  .about__bottom-img.--03 {
    top: 1.8rem;
    right: 7rem;
    width: 11.37rem;
  }
}

.about__bottom-img.--04 {
  top: min(16.5625vw, 318px);
  left: min(32.5520833333vw, 625px);
  width: min(16.0416666667vw, 308px);
}
@media screen and (max-width: 767px) {
  .about__bottom-img.--04 {
    top: 9.5rem;
    left: 12.6rem;
    width: 9.24rem;
  }
}

.about__bottom-img.--05 {
  top: min(9.375vw, 180px);
  right: 0;
  width: min(10.6770833333vw, 205px);
}
@media screen and (max-width: 767px) {
  .about__bottom-img.--05 {
    top: 5.4rem;
    width: 6.15rem;
  }
}

.about__bottom-img.--06 {
  bottom: min(7.6041666667vw, 146px);
  left: 0;
  width: min(18.125vw, 348px);
}
@media screen and (max-width: 767px) {
  .about__bottom-img.--06 {
    width: 10.44rem;
    bottom: 6.4rem;
    left: -1rem;
  }
}

.about__bottom-img.--07 {
  bottom: 0;
  left: min(22.65625vw, 435px);
  width: min(17.7083333333vw, 340px);
}
@media screen and (max-width: 767px) {
  .about__bottom-img.--07 {
    left: 7.5rem;
    width: 10.2rem;
  }
}

.about__bottom-img.--08 {
  bottom: min(5.5729166667vw, 107px);
  right: min(20.2604166667vw, 389px);
  width: min(12.7083333333vw, 244px);
}
@media screen and (max-width: 767px) {
  .about__bottom-img.--08 {
    bottom: 3.21rem;
    right: 8.7rem;
    width: 7.32rem;
  }
}

/* ------------------------------------------------
news
--------------------------------------------------- */
.news {
  padding-top: 20rem;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .news {
    padding-top: 6rem;
  }
}

.news__large-wrapper {
  margin-inline: auto;
  width: 100%;
  max-width: 1920px;
}

.news__contents {
  overflow: hidden;
}

.news__swiper {
  padding-bottom: 8.2rem;
}
@media screen and (max-width: 767px) {
  .news__swiper {
    padding-bottom: 5rem;
  }
}

.news__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.news__list {
  margin-inline: min(1.0416666667vw, 20px);
  width: min(28.2291666667vw, 542px);
}
@media screen and (max-width: 767px) {
  .news__list {
    margin-inline: 1rem;
    width: 30rem;
  }
}

.news__article-link {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.news__article-link:hover {
  opacity: 1;
}

.news__img-body {
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  border-radius: min(0.5208333333vw, 10px);
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .news__img-body {
    border-radius: 1rem;
  }
}

.news__img-body img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.news__img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.news__article-link:hover .news__img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.news__date {
  margin-top: min(2.0833333333vw, 40px);
  font-family: "RocknRoll One", sans-serif;
  font-size: min(1.0416666667vw, 20px);
  line-height: 1.45;
  color: #FDB60E;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .news__date {
    margin-top: 2rem;
    font-size: 1.6rem;
  }
}

.news__title {
  margin-top: min(0.4166666667vw, 8px);
  font-family: "RocknRoll One", sans-serif;
  font-size: min(2.0833333333vw, 40px);
  line-height: 1.45;
  text-align: center;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
@media screen and (max-width: 767px) {
  .news__title {
    margin-top: 0.8rem;
    font-size: 2rem;
  }
}

.news__tabs {
  margin-top: min(0.625vw, 12px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: min(0.625vw, 12px);
     -moz-column-gap: min(0.625vw, 12px);
          column-gap: min(0.625vw, 12px);
  row-gap: min(0.4166666667vw, 8px);
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .news__tabs {
    margin-top: 1.2rem;
    -webkit-column-gap: 1rem;
       -moz-column-gap: 1rem;
            column-gap: 1rem;
    row-gap: 0.8rem;
  }
}

.news__tab {
  padding: min(0.2083333333vw, 4px) min(1.0416666667vw, 20px);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-color: #DF6C03;
  border-radius: min(0.8333333333vw, 16px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: min(0.8333333333vw, 16px);
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .news__tab {
    padding: 0.2rem 1.6rem;
    border-radius: 1.6rem;
    font-size: 1.4rem;
  }
}

.js-news-pagination {
  z-index: 500;
  position: absolute;
  top: initial !important;
  bottom: 0 !important;
  left: 0 !important;
  width: min(5.625vw, 108px);
  height: min(1.25vw, 24px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 767px) {
  .js-news-pagination {
    top: initial !important;
    left: 0 !important;
    width: 10.8rem;
    height: 2.4rem;
  }
}

.swiper-pagination-bullet {
  opacity: 1 !important;
}

.js-news-pagination .swiper-pagination-bullet {
  position: relative;
  margin: 0 !important;
  width: min(1.25vw, 24px);
  height: min(1.25vw, 24px);
}
@media screen and (max-width: 767px) {
  .js-news-pagination .swiper-pagination-bullet {
    width: 2.4rem;
    height: 2.4rem;
  }
}

.js-news-pagination .swiper-pagination-bullet::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: min(0.625vw, 12px);
  height: min(0.625vw, 12px);
  background-color: #cccccc;
  border-radius: 50%;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
@media screen and (max-width: 767px) {
  .js-news-pagination .swiper-pagination-bullet::before {
    width: 1.2rem;
    height: 1.2rem;
  }
}

.js-news-pagination .swiper-pagination-bullet:hover::before {
  opacity: 0.8;
}

.js-news-pagination .swiper-pagination-bullet-active {
  background: transparent;
}

.js-news-pagination .swiper-pagination-bullet-active::before {
  background-color: #B82A00;
}

.js-news-pagination .swiper-pagination-bullet-active:hover::before {
  opacity: 1;
}

.news__no-text {
  margin-top: 0.8rem;
  font-family: "RocknRoll One", sans-serif;
  font-size: 4rem;
  line-height: 1.45;
  text-align: center;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
@media screen and (max-width: 767px) {
  .news__no-text {
    font-size: 2rem;
  }
}

@media screen and (max-width: 767px) {
  .news__link-container {
    padding-inline: 1.5rem;
  }
}

.news__link {
  margin-inline: auto;
}

.news__bg-wave {
  z-index: 1;
  position: relative;
  width: 100%;
  height: auto;
  aspect-ratio: 1920/834;
}
@media screen and (max-width: 767px) {
  .news__bg-wave {
    aspect-ratio: 375/228;
  }
}

.news__bg-waveImg {
  z-index: 1;
  position: absolute;
  bottom: 50%;
  left: 50.5%;
  -webkit-transform: translate(-50%, 50%) rotate(10deg);
          transform: translate(-50%, 50%) rotate(10deg);
  width: 109%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .news__bg-waveImg {
    width: 65.1rem;
  }
}

/* ------------------------------------------------
contact
--------------------------------------------------- */
.contact {
  padding-bottom: 2.7rem;
}
@media screen and (max-width: 767px) {
  .contact {
    padding-bottom: 5rem;
  }
}

.column-body .contact__img.img {
  right: -14.5rem;
  width: 98.5rem;
}
@media screen and (max-width: 767px) {
  .column-body .contact__img.img {
    width: 100%;
  }
}

.contact__text-area {
  padding-top: 3.7rem;
  padding-left: 4rem;
}
@media screen and (max-width: 767px) {
  .contact__text-area {
    padding-top: initial;
    padding-left: initial;
  }
}

@media screen and (max-width: 767px) {
  .contact__text {
    text-align: center;
  }
}

.contact__text:not(:first-child) {
  margin-top: 4.8rem;
}
@media screen and (max-width: 767px) {
  .contact__text:not(:first-child) {
    margin-top: 2.4rem;
  }
}

.contact__link {
  margin-left: auto;
  margin-top: 22.4rem;
}
@media screen and (max-width: 767px) {
  .contact__link {
    margin-left: initial;
    margin-inline: auto;
    margin-top: 4rem;
  }
}

/* ------------------------------------------------
空室クリーニングページ
--------------------------------------------------- */
/* ------------------------------------------------
会社について
--------------------------------------------------- */
#page-company .speech-text {
  border-radius: 3rem;
  font-family: "Noto Serif JP", serif;
  font-size: 4.4rem;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  #page-company .speech-text {
    font-size: 2.4rem;
  }
}

#page-company .--strong .speech-text {
  font-size: 8rem;
}
@media screen and (max-width: 767px) {
  #page-company .--strong .speech-text {
    font-size: 5rem;
  }
}

#page-company .lower-large-text {
  line-height: 2.428;
}
@media screen and (max-width: 767px) {
  #page-company .lower-large-text {
    line-height: 1.8;
  }
}

#page-company .lower-large-text p:not(:first-child) {
  margin-top: 4rem;
}
@media screen and (max-width: 767px) {
  #page-company .lower-large-text p:not(:first-child) {
    margin-top: 3.2rem;
  }
}

#page-company .lower-large-text p .--strong {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.583;
  color: #FDB60E;
}
@media screen and (max-width: 767px) {
  #page-company .lower-large-text p .--strong {
    font-size: 2rem;
  }
}

/*
------------------------------------------------
ストーリー始まり
--------------------------------------------------- */
.story-start {
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .story-start {
    padding-bottom: 2.7rem;
  }
}

.story-start__bg-imgContainer {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
  max-width: 1934px;
  height: 85.6rem;
}
.story-start__bg-img:nth-child(1) {
  position: absolute;
  top: 0;
  right: 12rem;
  width: 8rem;
}
@media screen and (max-width: 767px) {
  .story-start__bg-img:nth-child(1) {
    top: 8rem;
    right: 1rem;
    width: 5rem;
  }
}

.story-start__bg-img:nth-child(2) {
  position: absolute;
  top: 4.4rem;
  right: 33.3rem;
  width: 18.2rem;
}
@media screen and (max-width: 767px) {
  .story-start__bg-img:nth-child(2) {
    top: 14.4rem;
    right: 6.8rem;
    width: 12.2rem;
  }
}

.story-start__bg-img:nth-child(3) {
  position: absolute;
  top: 26.3rem;
  left: 16.1rem;
  width: 17.6rem;
}
@media screen and (max-width: 1680px) {
  .story-start__bg-img:nth-child(3) {
    top: 12rem;
    left: 36rem;
  }
}
@media screen and (max-width: 767px) {
  .story-start__bg-img:nth-child(3) {
    top: 14rem;
    left: 8rem;
    width: 10.6rem;
  }
}

.story-start__bg-img:nth-child(4) {
  position: absolute;
  top: 54.7rem;
  left: -1.4rem;
  width: 12.4rem;
}
@media screen and (max-width: 1680px) {
  .story-start__bg-img:nth-child(4) {
    top: 22rem;
    left: 8.6rem;
  }
}
@media screen and (max-width: 767px) {
  .story-start__bg-img:nth-child(4) {
    top: 10rem;
    left: 0.6rem;
    width: 7.4rem;
  }
}

.story-start__inner {
  position: relative;
}

.story-start__head-speech {
  position: relative;
}

@media screen and (max-width: 1680px) {
  .story-start__head-speech.u-mt-80 {
    margin-top: 45.5rem;
  }
}
@media screen and (max-width: 767px) {
  .story-start__head-speech.u-mt-80 {
    margin-top: 35rem;
  }
}

.story-start__bottom-speech .speech-text {
  width: 100%;
}

.story-start__bottom-speech .speech-text .--inner {
  margin-inline: auto;
  display: block;
  width: 57.2rem;
}

/* ------------------------------------------------
ストーリー出会い
--------------------------------------------------- */
.story-encounter {
  z-index: 1;
  position: relative;
  padding-top: 16rem;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .story-encounter {
    padding-top: 10rem;
  }
}

.story-encounter__bg-imgContainer {
  z-index: 1;
  position: absolute;
  top: 22.1rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
  max-width: 1920px;
  height: 101.5rem;
}

.story-encounter__bg-img:nth-child(1) {
  z-index: 1;
  position: absolute;
  top: 0;
  right: 20rem;
  width: 44.2rem;
}
@media screen and (max-width: 1680px) {
  .story-encounter__bg-img:nth-child(1) {
    top: 5rem;
    right: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .story-encounter__bg-img:nth-child(1) {
    top: -7rem;
    right: 0rem;
    width: 12rem;
  }
}

.story-encounter__bg-img:nth-child(2) {
  z-index: 1;
  position: absolute;
  top: 58.3rem;
  left: 0;
  width: 44.2rem;
}
@media screen and (max-width: 1680px) {
  .story-encounter__bg-img:nth-child(2) {
    top: 40rem;
    left: -3rem;
  }
}
@media screen and (max-width: 767px) {
  .story-encounter__bg-img:nth-child(2) {
    top: 12rem;
    left: -1rem;
    width: 13rem;
  }
}

.story-encounter__heading {
  z-index: 5;
  position: relative;
}

.story-encounter__speech {
  z-index: 5;
  position: relative;
}

.story-encounter__speech-container {
  z-index: 5;
  position: relative;
}
@media screen and (max-width: 767px) {
  .story-encounter__speech-container {
    padding-top: 23rem;
  }
}

.story-encounter__speech-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.story-encounter__speech-area:nth-child(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.story-encounter__speech-area:nth-child(2) {
  margin-top: 2rem;
}

.story-encounter__speech-area:nth-child(3) {
  margin-top: 9.6rem;
}
@media screen and (max-width: 767px) {
  .story-encounter__speech-area:nth-child(3) {
    margin-top: 2rem;
  }
}

.story-encounter__speech-area .speech-block {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.story-encounter__speech-img {
  z-index: 10;
  position: absolute;
  top: 17.4rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 37.8rem;
}
@media screen and (max-width: 1680px) {
  .story-encounter__speech-img {
    top: 16rem;
  }
}
@media screen and (max-width: 767px) {
  .story-encounter__speech-img {
    top: 1rem;
    width: 18rem;
  }
}

.story-encounter__text-container {
  z-index: 5;
  position: relative;
}

/* ------------------------------------------------
ストーリー気付き
--------------------------------------------------- */
.story__notice {
  padding-top: 16rem;
  overflow: hidden;
}

.story-notice__head-speech {
  z-index: 1;
  position: relative;
}

#page-company .story-notice .speech-text {
  margin-inline: auto;
  -webkit-transform: translateX(-4rem);
          transform: translateX(-4rem);
  width: 128rem;
  font-size: 8rem;
}
@media screen and (max-width: 1680px) {
  #page-company .story-notice .speech-text {
    -webkit-transform: initial;
            transform: initial;
    width: 100%;
    font-size: 7.2rem;
  }
}
@media screen and (max-width: 767px) {
  #page-company .story-notice .speech-text {
    font-size: 2.4rem;
  }
}

.story-notice__head-img {
  position: absolute;
  bottom: -25.9rem;
  right: -6.8rem;
  width: 42rem;
}
@media screen and (max-width: 767px) {
  .story-notice__head-img {
    bottom: -22.9rem;
    right: 50%;
    width: 25rem;
    -webkit-transform: translateX(50%);
            transform: translateX(50%);
  }
}

.story-notice__scream {
  margin-top: 34.4rem;
}
@media screen and (max-width: 767px) {
  .story-notice__scream {
    margin-top: 28rem;
  }
}

.story-notice__scream-text:nth-child(1) {
  font-family: "Noto Serif JP", serif;
  font-size: 13.3rem;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 1440px) {
  .story-notice__scream-text:nth-child(1) {
    font-size: 12rem;
  }
}
@media screen and (max-width: 767px) {
  .story-notice__scream-text:nth-child(1) {
    font-size: 3.5rem;
  }
}

.story-notice__scream-text:nth-child(2) {
  margin-top: 30rem;
  font-family: "Noto Serif JP", serif;
  font-size: 20rem;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 1440px) {
  .story-notice__scream-text:nth-child(2) {
    font-size: 18rem;
  }
}
@media screen and (max-width: 767px) {
  .story-notice__scream-text:nth-child(2) {
    margin-top: 10rem;
    font-size: 5rem;
  }
}

.story-notice__scream-text:nth-child(2) .--strong {
  font-weight: 700;
  color: #FDB60E;
}
@media screen and (max-width: 767px) {
  .story-notice__scream-text:nth-child(2) .--strong {
    font-size: 6rem;
  }
}

/* ------------------------------------------------
ストーリー現在
--------------------------------------------------- */
.story-current {
  padding-top: 72rem;
}
@media screen and (max-width: 767px) {
  .story-current {
    padding-top: 22rem;
  }
}

.story-current__head-img {
  margin-inline: auto;
  width: 80.6rem;
}
@media screen and (max-width: 767px) {
  .story-current__head-img {
    width: 100%;
  }
}

.story-current__text .--strong {
  font-size: 3rem;
  font-weight: 700;
  color: #FDB60E;
}

.story-current__message {
  margin-top: 16rem;
}
@media screen and (max-width: 767px) {
  .story-current__message {
    margin-top: 10rem;
  }
}

#page-company .story-current .speech-text {
  padding: 3.2rem 8rem;
  width: 100%;
  font-family: "Noto Serif JP", serif;
  font-size: 8rem;
}
@media screen and (max-width: 1440px) {
  #page-company .story-current .speech-text {
    font-size: 7rem;
  }
}
@media screen and (max-width: 767px) {
  #page-company .story-current .speech-text {
    padding: 2.4rem 2rem;
    font-size: 3rem;
  }
}

.story-current__message-img {
  z-index: 1;
  position: relative;
  margin-inline: auto;
  width: 68rem;
}
@media screen and (max-width: 767px) {
  .story-current__message-img {
    width: 32rem;
  }
}

.story-current__message-name {
  z-index: 1;
  position: relative;
  margin-top: -8rem;
  font-family: "Noto Serif JP", serif;
  font-size: 6rem;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .story-current__message-name {
    margin-top: -6rem;
    font-size: 2.8rem;
  }
}

/* ------------------------------------------------
会社概要
--------------------------------------------------- */
.company-info {
  padding-top: 32rem;
}
@media screen and (max-width: 767px) {
  .company-info {
    padding-top: 12rem;
  }
}

.company-info__contents dl {
  padding-bottom: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid #505050;
}

.company-info__contents dl:not(:first-child) {
  padding-top: 2rem;
}

.company-info__contents dt {
  padding-left: 2.9rem;
  width: 28.3%;
  font-size: 1.6rem;
  font-weight: 700;
  color: #FDB60E;
}
@media screen and (max-width: 767px) {
  .company-info__contents dt {
    padding-left: 0.8rem;
  }
}

.company-info__contents dd {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 1.6rem;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .company-info__contents dd {
    padding-right: 0.8rem;
  }
}

/* ------------------------------------------------
アクセスマップ
--------------------------------------------------- */
.access {
  padding-top: 16rem;
}
@media screen and (max-width: 767px) {
  .access {
    padding-top: 8rem;
  }
}

.access__contents iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 1200/898;
}

/* ------------------------------------------------
お問い合わせ
--------------------------------------------------- */
/* ------------------------------------------------
共通
--------------------------------------------------- */
.required {
  padding: 0.4rem 0.8rem;
  background-color: #B82A00;
  border-radius: 0.4rem;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.423;
  color: #fff;
}

.optional {
  padding: 0.4rem 0.8rem;
  background-color: #919191;
  border-radius: 0.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.423;
  color: #fff;
}

/* ------------------------------------------------
入力ページ
--------------------------------------------------- */
.page-contact__contents-head .--text {
  margin-left: 0.4rem;
}

.form {
  margin-top: 6.2rem;
  padding-bottom: 2.7rem;
}
@media screen and (max-width: 767px) {
  .form {
    margin-top: 3rem;
  }
}

.form__field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 4rem;
     -moz-column-gap: 4rem;
          column-gap: 4rem;
}
@media screen and (max-width: 767px) {
  .form__field {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 1rem;
  }
}

.form__field:not(:first-child) {
  margin-top: 4rem;
}
@media screen and (max-width: 767px) {
  .form__field:not(:first-child) {
    margin-top: 2rem;
  }
}

.form__label {
  padding-top: 0.6rem;
  width: 38.8rem;
}
@media screen and (max-width: 767px) {
  .form__label {
    padding-top: initial;
    width: 100%;
  }
}

.form__label label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
}

.form__data {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (max-width: 767px) {
  .form__data {
    width: 100%;
  }
}

.form__input,
textarea.form__textarea {
  padding: 1rem;
  width: 100%;
  background-color: #f4f4f4;
  border: 1px solid #000000;
  border-radius: 0.6rem;
  font-size: 1.4rem;
  line-height: 1.43;
}

textarea.form__textarea {
  height: 12rem;
}

.form__input::-webkit-input-placeholder, textarea.form__textarea::-webkit-input-placeholder {
  color: #a3a3a3;
}

.form__input::-moz-placeholder, textarea.form__textarea::-moz-placeholder {
  color: #a3a3a3;
}

.form__input:-ms-input-placeholder, textarea.form__textarea:-ms-input-placeholder {
  color: #a3a3a3;
}

.form__input::-ms-input-placeholder, textarea.form__textarea::-ms-input-placeholder {
  color: #a3a3a3;
}

.form__input::placeholder,
textarea.form__textarea::placeholder {
  color: #a3a3a3;
}

.form__field.form__field-privacy {
  margin-top: 6rem;
  -webkit-column-gap: 2.4rem;
     -moz-column-gap: 2.4rem;
          column-gap: 2.4rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 767px) {
  .form__field.form__field-privacy {
    margin-top: 3rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: initial;
        -ms-flex-pack: initial;
            justify-content: initial;
  }
}

.form-data.form__privacy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 1.6rem;
     -moz-column-gap: 1.6rem;
          column-gap: 1.6rem;
}
@media screen and (max-width: 767px) {
  .form-data.form__privacy {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 0.8rem;
       -moz-column-gap: 0.8rem;
            column-gap: 0.8rem;
  }
}

.form__privacy .wpcf7-list-item-label {
  position: relative;
  padding-left: 4.4rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 767px) {
  .form__privacy .wpcf7-list-item-label {
    padding-left: 2.9rem;
  }
}

.form__privacy .wpcf7-list-item-label::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 2.8rem;
  height: auto;
  aspect-ratio: 1/1;
  background-color: #fff;
  border: 1px solid #000000;
  border-radius: 0.2rem;
}
@media screen and (max-width: 767px) {
  .form__privacy .wpcf7-list-item-label::before {
    width: 2.4rem;
  }
}

.form__privacy .wpcf7-list-item-label::after {
  position: absolute;
  top: 0.8rem;
  left: 1rem;
  width: 1.6rem;
  height: auto;
  aspect-ratio: 23/15;
  content: "";
  -webkit-transform: rotate(-45deg) translateY(-50%);
          transform: rotate(-45deg) translateY(-50%);
  opacity: 0;
  border-bottom: 0.2rem solid #000000;
  border-left: 0.2rem solid #000000;
}
@media screen and (max-width: 767px) {
  .form__privacy .wpcf7-list-item-label::after {
    top: 0.7rem;
    left: 0.9rem;
    width: 1.2rem;
  }
}

input[type=checkbox]:checked + .wpcf7-list-item-label::after {
  opacity: 1;
}

.wpcf7-list-item {
  margin: 0;
}

.form__privacy-text {
  font-size: 1.6rem;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .form__privacy-text {
    font-size: 1.5rem;
  }
}

.form__privacy-link {
  text-decoration: underline;
}

.wpcf7-not-valid-tip {
  color: #DF6C03;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.43;
}

@media screen and (max-width: 767px) {
  .form__privacy .wpcf7-not-valid-tip {
    position: absolute;
    bottom: -2.8rem;
    left: -3.6rem;
  }
}

.wpcf7-response-output {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.43;
}

.form__submit {
  margin-top: 16rem;
}
@media screen and (max-width: 767px) {
  .form__submit {
    margin-top: 10rem;
  }
}

.form__submit-button {
  z-index: 1;
  position: relative;
  margin-inline: auto;
  width: 36rem;
  background-color: #F02B6A;
  border-radius: 4.7rem;
  -webkit-box-shadow: 0 1rem 0 #62001F;
          box-shadow: 0 1rem 0 #62001F;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: 0.3s -webkit-transform, 0.3s -webkit-box-shadow;
  transition: 0.3s -webkit-transform, 0.3s -webkit-box-shadow;
  transition: 0.3s transform, 0.3s box-shadow;
  transition: 0.3s transform, 0.3s box-shadow, 0.3s -webkit-transform, 0.3s -webkit-box-shadow;
}
@media screen and (max-width: 767px) {
  .form__submit-button {
    width: 100%;
  }
}

.form__submit-button::after {
  z-index: 1;
  position: absolute;
  content: "";
  top: 50%;
  right: 3rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1rem;
  height: auto;
  aspect-ratio: 10.17/8.9;
  background-image: url(../images/common/icon-arrow-right.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

.form__submit-button:hover {
  opacity: 1;
  -webkit-transform: translateY(1rem);
          transform: translateY(1rem);
  -webkit-box-shadow: none;
          box-shadow: none;
}

.form__submit-input {
  z-index: 1;
  padding: 3.2rem 6rem 3.3rem 2rem;
  width: 100%;
  height: 100%;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.45;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .form__submit-input {
    padding: 2rem 3rem;
    font-size: 1.8rem;
  }
}

.wpcf7-spinner {
  position: absolute;
  bottom: 0;
  right: 0;
}

/* ------------------------------------------------
入力内容確認
--------------------------------------------------- */
.confirm__text {
  text-align: center;
}

.confirm .form__label {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
}

.confirm .form__data {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
}

.confirm__buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 3rem;
     -moz-column-gap: 3rem;
          column-gap: 3rem;
}
@media screen and (max-width: 767px) {
  .confirm__buttons {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 2rem;
  }
}

.form__submit-button.--reverse {
  background-color: #fff;
  -webkit-box-shadow: 0 1rem 0 #989898;
          box-shadow: 0 1rem 0 #989898;
  color: #F02B6A;
}

.form__submit-button.--reverse::after {
  right: initial;
  left: 3rem;
  background-image: url(../images/common/icon-arrow-left.svg);
}

.confirm__submit-input {
  z-index: 1;
  padding: 3.2rem 2rem 3.3rem 2rem;
  width: 100%;
  height: 100%;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.45;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .confirm__submit-input {
    padding: 2rem 3rem;
    font-size: 1.8rem;
  }
}

.confirm__back-button {
  z-index: 1;
  padding: 3.2rem 2rem 3.3rem 2rem;
  width: 100%;
  height: 100%;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.45;
  color: #000000;
}
@media screen and (max-width: 767px) {
  .confirm__back-button {
    padding: 2rem 3rem;
    font-size: 1.8rem;
  }
}

/* ------------------------------------------------
thanks（問い合わせフォーム）
--------------------------------------------------- */
.thanks {
  padding-bottom: 16rem;
}
@media screen and (max-width: 767px) {
  .thanks {
    padding-bottom: 10rem;
  }
}

.thanks__heading {
  font-family: "RocknRoll One", sans-serif;
  font-size: 4rem;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .thanks__heading {
    font-size: 2.4rem;
  }
}

.thanks__text {
  margin-top: 5rem;
  font-size: 2rem;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .thanks__text {
    font-size: 1.6rem;
  }
}

.thanks__button {
  margin-top: 8rem;
  margin-inline: auto;
  width: 36rem;
}
@media screen and (max-width: 767px) {
  .thanks__button {
    margin-top: 6rem;
    width: 100%;
  }
}

/* ------------------------------------------------
プライバシーポリシー
--------------------------------------------------- */
.privacy {
  padding-bottom: 2.7rem;
}

.privacy__contents h2,
.privacy__contents p,
.privacy__contents li {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2;
}

.privacy__items,
.privacy__item:not(:first-child),
.privacy__text-area,
.privacy__text-area p:not(:first-child),
.privacy__item-lists,
.privacy__date {
  margin-top: 3.2rem;
}

/* ------------------------------------------------
オモブロ
--------------------------------------------------- */
/* ------------------------------------------------
オモブロ共通
--------------------------------------------------- */
.category-tabs {
  margin-top: 1.2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 2rem;
     -moz-column-gap: 2rem;
          column-gap: 2rem;
  row-gap: 1rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .category-tabs {
    -webkit-column-gap: 1rem;
       -moz-column-gap: 1rem;
            column-gap: 1rem;
    row-gap: 1rem;
  }
}

.tab-link {
  padding: 0.4rem 2rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-color: #fff;
  border-radius: 1.6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.2;
  color: #DF6C03;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .tab-link {
    padding: 0.4rem 1.6rem;
    font-size: 1.4rem;
  }
}

.tab-link.is-active {
  background-color: #DF6C03;
  color: #fff;
}

.article-link {
  z-index: 1;
  position: relative;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.tab-new {
  z-index: 10;
  position: absolute;
  top: -5.25rem;
  left: -5.25rem;
  width: 10.5rem;
  height: 10.5rem;
  background-color: #B82A00;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 767px) {
  .tab-new {
    top: -3.5rem;
    left: -3.5rem;
    width: 7rem;
    height: 7rem;
  }
}

.tab-new__text {
  font-family: "RocknRoll One", sans-serif;
  font-size: 2.8rem;
  line-height: 1;
  color: #fff;
  text-transform: uppercase;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .tab-new__text {
    font-size: 2rem;
  }
}

.article-link:hover {
  opacity: 1;
}

.article-img {
  border-radius: 1rem;
  overflow: hidden;
}

.article-img__img {
  z-index: 1;
  position: relative;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1;
  border-radius: 1rem;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.article-link:hover .article-img__img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.article-date {
  margin-top: 4rem;
  font-family: "RocknRoll One", sans-serif;
  font-size: 2rem;
  line-height: 1.45;
  color: #FDB60E;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .article-date {
    margin-top: 2rem;
    font-size: 1.6rem;
  }
}

.article-title {
  margin-top: 0.8rem;
  font-family: "RocknRoll One", sans-serif;
  font-size: 4rem;
  line-height: 1.45;
  text-align: center;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
@media screen and (max-width: 767px) {
  .article-title {
    font-size: 2rem;
  }
}

.article-tabs {
  margin-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 1.2rem;
     -moz-column-gap: 1.2rem;
          column-gap: 1.2rem;
  row-gap: 0.8rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .article-tabs {
    margin-top: 1.2rem;
    -webkit-column-gap: 1rem;
       -moz-column-gap: 1rem;
            column-gap: 1rem;
  }
}

.article-tab {
  padding: 0.4rem 2rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-color: #DF6C03;
  border-radius: 10rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .article-tab {
    padding: 0.4rem 1.6rem;
    font-size: 1.4rem;
  }
}

.screen-reader-text {
  display: none;
}

.nav-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 2rem;
     -moz-column-gap: 2rem;
          column-gap: 2rem;
  row-gap: 1rem;
}
@media screen and (max-width: 767px) {
  .nav-links {
    -webkit-column-gap: 1rem;
       -moz-column-gap: 1rem;
            column-gap: 1rem;
    row-gap: 0.8rem;
  }
}

.page-numbers {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 4.8rem;
  height: 4.8rem;
  background-color: #fff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
  color: #000000;
}
@media screen and (max-width: 767px) {
  .page-numbers {
    width: 3.2rem;
    height: 3.2rem;
    font-size: 1.4rem;
  }
}

.page-numbers.current {
  background-color: #DF6C03;
  color: #fff;
}

.page-numbers.dots,
.page-numbers.prev,
.page-numbers.next {
  border: none;
}

.pagination__prev,
.pagination__arrow {
  width: 1rem;
}

/* ------------------------------------------------
オモブロ一覧
--------------------------------------------------- */
.news-list {
  padding-bottom: 2.7rem;
}

.news-list__contents {
  margin-top: 12rem;
}
@media screen and (max-width: 767px) {
  .news-list__contents {
    margin-top: 7rem;
  }
}

.news-list__lists {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -webkit-column-gap: 3rem;
     -moz-column-gap: 3rem;
          column-gap: 3rem;
  row-gap: 8rem;
}
@media screen and (max-width: 767px) {
  .news-list__lists {
    margin-inline: auto;
    width: 30rem;
    grid-template-columns: repeat(1, 1fr);
    row-gap: 5rem;
  }
}

.news-list__pagination {
  margin-top: 16rem;
}
@media screen and (max-width: 767px) {
  .news-list__pagination {
    margin-top: 8rem;
  }
}

.news-list__no-text {
  font-family: "RocknRoll One", sans-serif;
  font-size: 4rem;
  line-height: 1.45;
  text-align: center;
}

/* ------------------------------------------------
オモブロ個別記事
--------------------------------------------------- */
.detail {
  padding-bottom: 2.7rem;
}

.detail__article-title {
  text-align: left;
}

.detail__article-tabs {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.detail__article-body {
  margin-top: 8rem;
}
@media screen and (max-width: 767px) {
  .detail__article-body {
    margin-top: 4rem;
  }
}

.detail__article-img {
  border-radius: 1rem;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

.detail__content {
  margin-top: 6rem;
  font-size: 1.6rem;
}

.detail__content h2 {
  margin-bottom: 1.6rem;
  padding-bottom: 0.8rem;
  font-family: "RocknRoll One", sans-serif;
  font-size: 4rem;
  border-bottom: 0.5rem solid #DF6C03;
}
@media screen and (max-width: 767px) {
  .detail__content h2 {
    font-size: 3rem;
  }
}

.detail__content h3 {
  margin-bottom: 1.6rem;
  padding-bottom: 0.8rem;
  padding-left: 1rem;
  font-family: "RocknRoll One", sans-serif;
  font-size: 3.2rem;
  border-left: 0.5rem solid #DF6C03;
}
@media screen and (max-width: 767px) {
  .detail__content h3 {
    font-size: 2.4rem;
  }
}

.detail__content h4,
.detail__content h5,
.detail__content h6 {
  margin-bottom: 1.6rem;
  padding-bottom: 0.8rem;
  font-family: "RocknRoll One", sans-serif;
  font-size: 3.2rem;
  border-left: 0.1rem solid #DF6C03;
}
@media screen and (max-width: 767px) {
  .detail__content h4,
  .detail__content h5,
  .detail__content h6 {
    font-size: 2.4rem;
  }
}

.detail__content p + h2 {
  margin-top: 4rem;
}

.detail__content p + h3,
.detail__content p + h4,
.detail__content p + h5,
.detail__content p + h6 {
  margin-top: 5.6rem;
}

.detail__content p {
  margin-bottom: 2.4rem;
}

.detail__content a {
  color: #FDB60E;
}

.detail__content ul {
  margin-bottom: 2.4rem;
}

.detail__content .wp-block-image {
  margin-top: 3.6rem;
  margin-bottom: 2.4rem;
}

.detail__other {
  margin-top: 16rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.detail__prev.c-button.--no-arrow,
.detail__next.c-button.--no-arrow {
  width: 16rem;
}

.detail__next {
  margin-left: auto;
}

.detail__link {
  margin-top: 8rem;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .detail__link {
    margin-top: 6rem;
  }
}

/* ------------------------------------------------
キャラクター紹介
--------------------------------------------------- */
.character {
  padding-bottom: 4.8rem;
}

.character__lists {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -webkit-column-gap: 8rem;
     -moz-column-gap: 8rem;
          column-gap: 8rem;
  row-gap: 6rem;
}
@media screen and (max-width: 767px) {
  .character__lists {
    grid-template-columns: repeat(1, 1fr);
  }
}

.character__list-img {
  width: 100%;
}

.character__detail {
  margin-top: 4rem;
}
@media screen and (max-width: 767px) {
  .character__detail {
    margin-top: 2.4rem;
  }
}

.character__items {
  margin-top: 2rem;
}
@media screen and (max-width: 767px) {
  .character__items {
    margin-top: 1.2rem;
  }
}

.character__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
}

.character__item dt {
  position: relative;
  padding-left: 1em;
  width: 6.2rem;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.9;
  color: #FDB60E;
}

.character__item dt::before {
  position: absolute;
  content: "・";
  top: 0;
  left: 0;
}

.character__item dd {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.9;
}

/* ------------------------------------------------
404
--------------------------------------------------- */
.error {
  padding-bottom: 16rem;
}
@media screen and (max-width: 767px) {
  .error {
    padding-bottom: 10rem;
  }
}

.error__heading {
  font-family: "RocknRoll One", sans-serif;
  font-size: 4rem;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .error__heading {
    font-size: 2.4rem;
  }
}

.error__text {
  margin-top: 5rem;
  font-size: 2rem;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .error__text {
    font-size: 1.6rem;
  }
}

.error__button {
  margin-top: 8rem;
  margin-inline: auto;
  width: 36rem;
}
@media screen and (max-width: 767px) {
  .error__button {
    margin-top: 6rem;
    width: 100%;
  }
}

.u-mt-80 {
  margin-top: 8rem;
}
@media screen and (max-width: 767px) {
  .u-mt-80 {
    margin-top: 4rem;
  }
}

.u-mt-100 {
  margin-top: 10rem;
}
@media screen and (max-width: 767px) {
  .u-mt-100 {
    margin-top: 5rem;
  }
}

@media screen and (max-width: 767px) {
  .u-pt-lower {
    padding-top: 4rem;
  }
}/*# sourceMappingURL=style.css.map */