@charset "UTF-8";
/* Reset styles */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap");
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

html, body {
  font-family: "Yu Gothic", "游ゴシック体", "YuGothic", "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(3.7333333333vw, 22.4px);
  line-height: 1.7;
}
@media (min-width: 601px) {
  html, body {
    font-size: min(3.7333333333vw, 15.4933333333px);
  }
}

body {
  position: relative;
}
body.is-fixed {
  overflow: hidden;
  position: fixed;
  width: 100%;
}

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

h1, h2, h3, h4, h5, h6 {
  font-family: "Yu Mincho", "游明朝体", "YuMincho", "Noto Serif JP", serif;
  font-weight: 400;
  line-height: 1.5em;
}

.height-self {
  line-height: 1em;
}

.h1 {
  font-size: min(10.6666666667vw, 64px);
}
@media (min-width: 601px) {
  .h1 {
    font-size: min(10.6666666667vw, 44.2666666667px);
  }
}

.h2 {
  font-size: min(8.5333333333vw, 51.2px);
}
@media (min-width: 601px) {
  .h2 {
    font-size: min(8.5333333333vw, 35.4133333333px);
  }
}

.h3 {
  font-size: min(6.4vw, 38.4px);
}
@media (min-width: 601px) {
  .h3 {
    font-size: min(6.4vw, 26.56px);
  }
}

.c-header {
  z-index: 100;
  position: fixed;
  width: 100%;
  padding: 2rem 0;
  display: none;
  transition: 0.3s;
}
.c-header__inner {
  width: 90%;
  margin: 0 auto;
}
.c-header__logo {
  width: min(53.3333333333vw, 221.3333333333px);
  display: block;
}
@media (min-width: 1200px) {
  .c-header {
    display: block;
  }
}

.l-body {
  position: relative;
  height: 100vh;
}
.l-body__bg {
  z-index: -1;
  background-color: #F2EEE4;
  position: fixed;
  width: 100%;
  height: 100%;
}
.l-body__bg::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(../img/bg-pc.webp);
  background-size: 50%;
  background-position: left;
  z-index: -1;
  opacity: 0.03;
}

@media (min-width: 601px) {
  .l-content {
    max-width: 415px;
    margin: 0 auto;
  }
}
.l-content--main {
  background-color: #F2EEE4;
}
@media (min-width: 601px) {
  .l-content--main {
    filter: drop-shadow(0 0 30px rgba(0, 0, 0, 0.1));
  }
}

.l-container {
  margin: 0 auto;
  width: min(93.3333333333vw, 560px);
}
@media (min-width: 601px) {
  .l-container {
    width: min(93.3333333333vw, 387.3333333333px);
  }
}

.l-section {
  padding: min(21.3333333333vw, 128px) 0;
}
@media (min-width: 601px) {
  .l-section {
    padding: min(21.3333333333vw, 88.5333333333px) 0;
  }
}

section {
  position: relative;
}

.c-thum {
  border-radius: min(6.4vw, 38.4px);
  overflow: hidden;
}
@media (min-width: 601px) {
  .c-thum {
    border-radius: min(6.4vw, 26.56px);
  }
}

.c-section-title {
  text-align: center;
  margin-bottom: min(21.3333333333vw, 128px);
}
@media (min-width: 601px) {
  .c-section-title {
    margin-bottom: min(21.3333333333vw, 88.5333333333px);
  }
}
.c-section-title h2 {
  font-size: min(17.0666666667vw, 102.4px);
  line-height: 1.1em;
}
@media (min-width: 601px) {
  .c-section-title h2 {
    font-size: min(17.0666666667vw, 70.8266666667px);
  }
}
.c-section-title span {
  margin-top: 1em;
  display: block;
  font-size: min(3.7333333333vw, 22.4px);
  font-weight: bold;
}
@media (min-width: 601px) {
  .c-section-title span {
    font-size: min(3.7333333333vw, 15.4933333333px);
  }
}

.c-btn {
  font-weight: bold;
  height: min(14.9333333333vw, 89.6px);
  border-radius: min(8vw, 48px);
  border: min(0.5333333333vw, 3.2px) solid #000;
  background: #000;
  color: #fff;
  display: block;
  width: 100%;
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: 0.5s;
  max-width: min(80vw, 480px);
  margin-right: auto;
  margin-left: auto;
  font-size: min(5.3333333333vw, 32px);
}
@media (min-width: 601px) {
  .c-btn {
    height: min(14.9333333333vw, 61.9733333333px);
    font-size: min(5.3333333333vw, 22.1333333333px);
    border-radius: min(8vw, 33.2px);
    border: min(0.5333333333vw, 2.2133333333px) solid #000;
  }
}
.c-btn span {
  line-height: 1.2em;
  text-align: center;
}
.c-btn:hover {
  background: transparent;
  color: #000;
  border-color: #000;
}
.c-btn--mtop {
  margin-top: min(16vw, 96px);
}
@media (min-width: 601px) {
  .c-btn--mtop {
    margin-top: min(16vw, 66.4px);
  }
}
.c-btn--arrow {
  position: relative;
}
.c-btn--arrow::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.5em;
  width: 0.45em;
  height: 0.45em;
  border: solid currentColor;
  border-width: 0 min(0.5333333333vw, 3.2px) min(0.5333333333vw, 3.2px) 0;
  transform: translateY(-50%) rotate(-45deg);
  box-sizing: border-box;
  transition: 0.3s;
}
@media (min-width: 601px) {
  .c-btn--arrow::after {
    border-width: 0 min(0.5333333333vw, 2.2133333333px) min(0.5333333333vw, 2.2133333333px) 0;
  }
}
.c-btn__newtab::after {
  font-family: "Font Awesome 6 Free";
  content: "\f35d";
  font-weight: 900;
  display: inline-block;
  margin-left: 1em;
}
.c-btn__blue {
  border-color: #022F40;
  color: #022F40;
}
.c-btn__blue:hover {
  background: #022F40;
  color: #fff;
}
.c-btn__mail::after {
  font-family: "Font Awesome 6 Free";
  content: "\f0e0";
  font-weight: 900;
  display: inline-block;
  margin-left: 1em;
}
.c-btn__tel::after {
  font-family: "Font Awesome 6 Free";
  content: "\f095";
  font-weight: 900;
  display: inline-block;
  margin-left: 1em;
}

.c-hr {
  height: min(0.2666666667vw, 1.6px);
  width: 100%;
  background: #000;
}
@media (min-width: 601px) {
  .c-hr {
    height: min(0.2666666667vw, 1.1066666667px);
  }
}

.fade-zoom {
  overflow: hidden;
}
.fade-zoom img {
  opacity: 0.5;
  transform: scale(1.2);
  transition: none;
}

.fade-in {
  opacity: 0;
}

.fade-up {
  opacity: 0;
  transform: translateY(30px);
}

.c-hamburger {
  cursor: pointer;
  opacity: 0;
  transition: 0.5s;
  pointer-events: none;
  filter: drop-shadow(0 0 10px rgba(12, 57, 61, 0.1));
  width: min(16vw, 96px);
  height: min(16vw, 96px);
  top: min(3.2vw, 19.2px);
  right: min(3.2vw, 19.2px);
  position: fixed;
  z-index: 1001;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  padding: min(5.3333333333vw, 32px) min(4.2666666667vw, 25.6px);
  box-sizing: border-box;
}
@media (min-width: 601px) {
  .c-hamburger {
    width: min(16vw, 66.4px);
    height: min(16vw, 66.4px);
    top: min(3.2vw, 13.28px);
    right: min(3.2vw, 13.28px);
    padding: min(5.3333333333vw, 22.1333333333px) min(4.2666666667vw, 17.7066666667px);
    top: min(3.2vw, 13.28px);
    right: auto;
    left: calc(50% + min(29.8666666667vw, 123.9466666667px));
  }
}
.c-hamburger span {
  display: block;
  background: #000;
  width: 100%;
  height: min(0.5333333333vw, 3.2px);
  position: relative;
  transition: 0.5s;
}
.c-hamburger span:nth-child(2) {
  display: none;
}
@media (min-width: 601px) {
  .c-hamburger span {
    height: min(0.5333333333vw, 2.2133333333px);
  }
}
.c-hamburger.is-active span {
  position: absolute;
  width: 50%;
  height: min(0.8vw, 4.8px);
  background: #fff;
}
.c-hamburger.is-active span:nth-child(1) {
  transform: translateY(min(2.6666666667vw, 16px)) rotate(225deg);
}
.c-hamburger.is-active span:nth-child(2) {
  transform: translateY(min(2.6666666667vw, 16px)) rotate(-225deg);
  opacity: 0;
}
.c-hamburger.is-active span:nth-child(3) {
  transform: translateY(min(2.6666666667vw, 16px)) rotate(-225deg);
}
@media (min-width: 601px) {
  .c-hamburger.is-active span {
    height: min(0.8vw, 3.32px);
  }
  .c-hamburger.is-active span:nth-child(1) {
    transform: translateY(min(2.6666666667vw, 11.0666666667px)) rotate(225deg);
  }
  .c-hamburger.is-active span:nth-child(2) {
    transform: translateY(min(2.6666666667vw, 11.0666666667px)) rotate(-225deg);
    opacity: 0;
  }
  .c-hamburger.is-active span:nth-child(3) {
    transform: translateY(min(2.6666666667vw, 11.0666666667px)) rotate(-225deg);
  }
}

.c-hamburger.is-visible {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.c-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  height: 100dvh;
  background: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(10px);
  z-index: 1000;
  transition: 0.5s;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 601px) {
  .c-modal {
    transform: translateX(-50%);
    left: 50%;
  }
}

#modalMenu {
  visibility: hidden;
  opacity: 0;
}
#modalMenu.is-open {
  visibility: visible;
  opacity: 1;
}

.c-menu {
  font-family: "Yu Mincho", "游明朝体", "YuMincho", serif;
  text-align: center;
}
.c-menu .c-header__logo {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: min(10.6666666667vw, 64px);
  filter: invert(1);
}
@media (min-width: 601px) {
  .c-menu .c-header__logo {
    margin-bottom: min(10.6666666667vw, 44.2666666667px);
  }
}
.c-menu ul {
  display: grid;
  gap: 1.7em;
  list-style: none;
}
.c-menu a {
  color: #fff;
  display: block;
  text-decoration: none;
}
.c-menu a span {
  display: block;
}
.c-menu__link--en {
  font-size: min(8.5333333333vw, 51.2px);
}
@media (min-width: 601px) {
  .c-menu__link--en {
    font-size: min(8.5333333333vw, 35.4133333333px);
  }
}
.c-menu__link--ja {
  font-weight: bold;
  font-family: "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: min(3.7333333333vw, 22.4px);
}
@media (min-width: 601px) {
  .c-menu__link--ja {
    font-size: min(3.7333333333vw, 15.4933333333px);
  }
}

.c-pc-logo {
  position: fixed;
  width: calc((100vw - 415px) / 2);
  transform: translateY(-50%);
  top: 50%;
  left: 0%;
  display: none;
}
@media (min-width: 1200px) {
  .c-pc-logo {
    display: block;
  }
}
.c-pc-logo h2 {
  font-size: max(24px, 1.4vw);
  margin-bottom: 1em;
}
.c-pc-logo img {
  object-fit: contain;
  margin: 0 auto;
  display: block;
  width: clamp(180px, 16vw, 240px);
  max-height: 70vh;
}

.c-pc-right {
  position: fixed;
  width: calc(50vw - min(110.6666666667vw, 459.2666666667px) / 2);
  height: 100%;
  right: 0;
  top: 0;
  display: none;
  align-items: center;
  justify-content: center;
}
@media (min-width: 1200px) {
  .c-pc-right {
    display: flex;
  }
}
.c-pc-right .c-btn {
  width: min(80vw, 332px);
}

.c-fv {
  position: relative;
  z-index: 0;
}
.c-fv__logo {
  position: absolute;
  top: min(59.7333333333vw, 358.4px);
  left: 50%;
  z-index: 1;
  transform: translateX(-50%);
  width: min(80vw, 480px);
}
@media (min-width: 601px) {
  .c-fv__logo {
    top: min(59.7333333333vw, 247.8933333333px);
    width: min(80vw, 332px);
  }
}

.c-about {
  position: relative;
  z-index: 0;
}
.c-about__bg {
  top: 0;
  left: 0;
  position: absolute;
  z-index: -1;
  opacity: 0.14;
  width: 100%;
  height: 100%;
}
.c-about__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-about__content p {
  font-size: min(4.2666666667vw, 25.6px);
  line-height: 2em;
  font-weight: bold;
}
@media (min-width: 601px) {
  .c-about__content p {
    font-size: min(4.2666666667vw, 17.7066666667px);
  }
}
.c-about__content p:not(:last-child) {
  margin-bottom: 2em;
}
.c-about__image {
  margin: 2em 0;
}

.c-details .c-section-title {
  padding-top: min(21.3333333333vw, 128px);
  margin-top: 0;
}
@media (min-width: 601px) {
  .c-details .c-section-title {
    padding-top: min(21.3333333333vw, 88.5333333333px);
    margin-top: 0;
  }
}
.c-details__list {
  border: 1px dotted #000;
}
.c-details__item {
  padding: min(10.6666666667vw, 64px) min(6.6666666667vw, 40px);
  display: grid;
  gap: min(6.4vw, 38.4px);
}
@media (min-width: 601px) {
  .c-details__item {
    padding: min(10.6666666667vw, 44.2666666667px) min(6.6666666667vw, 27.6666666667px);
    gap: min(6.4vw, 26.56px);
  }
}
.c-details__item:not(:last-child) {
  border-bottom: 1px dotted #000;
}
.c-details__item__title {
  display: flex;
  justify-content: space-between;
  font-weight: bold;
  align-items: center;
}
.c-details__item__title span {
  display: block;
  line-height: 1em;
  font-size: min(10.6666666667vw, 64px);
}
@media (min-width: 601px) {
  .c-details__item__title span {
    font-size: min(10.6666666667vw, 44.2666666667px);
  }
}
.c-details__item__title h3 {
  font-weight: bold;
  font-family: "Yu Gothic", "游ゴシック体", "YuGothic", "Noto Sans JP";
  font-size: min(6.4vw, 38.4px);
}
@media (min-width: 601px) {
  .c-details__item__title h3 {
    font-size: min(6.4vw, 26.56px);
  }
}
.c-details__item__title--small h3 {
  font-size: min(5.6vw, 33.6px);
}
@media (min-width: 601px) {
  .c-details__item__title--small h3 {
    font-size: min(5.6vw, 23.24px);
  }
}
.c-details__item__text h4 {
  font-size: min(5.6vw, 33.6px);
  font-weight: bold;
  font-family: "Yu Gothic", "游ゴシック体", "YuGothic", "Noto Sans JP";
  margin-bottom: 1em;
}
@media (min-width: 601px) {
  .c-details__item__text h4 {
    font-size: min(5.6vw, 23.24px);
  }
}

.c-bg-white {
  background: #fff;
}

.c-item-box {
  display: grid;
  gap: min(6.4vw, 38.4px);
}
@media (min-width: 601px) {
  .c-item-box {
    gap: min(6.4vw, 26.56px);
  }
}
.c-item-box__text h2 {
  margin-bottom: min(5.3333333333vw, 32px);
}
.c-item-box__text h2 span:nth-child(1) {
  display: block;
  font-size: min(9.6vw, 57.6px);
  margin-bottom: 0.2em;
  line-height: 1.1em;
  font-weight: bold;
}
.c-item-box__text h2 span:nth-child(2) {
  font-size: min(5.8666666667vw, 35.2px);
}
@media (min-width: 601px) {
  .c-item-box__text h2 {
    margin-bottom: min(5.3333333333vw, 22.1333333333px);
  }
  .c-item-box__text h2 span:nth-child(1) {
    font-size: min(9.6vw, 39.84px);
  }
  .c-item-box__text h2 span:nth-child(2) {
    font-size: min(5.8666666667vw, 24.3466666667px);
  }
}
.c-item-box__text p {
  font-size: min(4.2666666667vw, 25.6px);
}
@media (min-width: 601px) {
  .c-item-box__text p {
    font-size: min(4.2666666667vw, 17.7066666667px);
  }
}
.c-item-box__meta {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.c-item-box__price span {
  display: block;
  line-height: 1;
  font-size: min(8.5333333333vw, 51.2px);
  font-weight: bold;
}
@media (min-width: 601px) {
  .c-item-box__price span {
    font-size: min(8.5333333333vw, 35.4133333333px);
  }
}
.c-item-box__price span small {
  font-size: 0.5em;
  font-weight: normal;
}
.c-item-box .c-btn {
  margin-top: min(4.2666666667vw, 25.6px);
}
@media (min-width: 601px) {
  .c-item-box .c-btn {
    margin-top: min(4.2666666667vw, 17.7066666667px);
  }
}

.c-why {
  background: #000;
  position: relative;
  z-index: 0;
}
.c-why__bg {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.c-why__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-why__bg::after {
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  background: rgba(0, 0, 0, 0.55);
  display: block;
  position: absolute;
}
.c-why__text {
  color: #fff;
}
.c-why__text h2 {
  font-size: min(10.6666666667vw, 64px);
  margin-bottom: 0.5em;
}
@media (min-width: 601px) {
  .c-why__text h2 {
    font-size: min(10.6666666667vw, 44.2666666667px);
  }
}
.c-why__text p {
  font-size: min(4.2666666667vw, 25.6px);
  line-height: 2em;
  font-weight: bold;
}
@media (min-width: 601px) {
  .c-why__text p {
    font-size: min(4.2666666667vw, 17.7066666667px);
  }
}
.c-why__text p:not(:last-child) {
  margin-bottom: 2em;
}

.c-howto {
  background: #fff;
}
.c-howto__list {
  display: grid;
  gap: min(21.3333333333vw, 128px);
}
@media (min-width: 601px) {
  .c-howto__list {
    gap: min(21.3333333333vw, 88.5333333333px);
  }
}
.c-howto__item {
  display: grid;
  gap: min(10.6666666667vw, 64px);
}
@media (min-width: 601px) {
  .c-howto__item {
    gap: min(10.6666666667vw, 44.2666666667px);
  }
}
.c-howto__item__body p {
  font-size: min(4.2666666667vw, 25.6px);
}
@media (min-width: 601px) {
  .c-howto__item__body p {
    font-size: min(4.2666666667vw, 17.7066666667px);
  }
}
.c-howto__item__title {
  height: min(10.6666666667vw, 64px);
  margin: 0 auto;
}
@media (min-width: 601px) {
  .c-howto__item__title {
    height: min(10.6666666667vw, 44.2666666667px);
  }
}
.c-howto__item__title img {
  display: block;
  width: auto;
  height: 100%;
}
.c-howto__item__top {
  width: 100%;
  position: relative;
}
.c-howto__item__top--mt60 {
  margin-top: min(5.3333333333vw, 32px);
}
@media (min-width: 601px) {
  .c-howto__item__top--mt60 {
    margin-top: min(5.3333333333vw, 22.1333333333px);
  }
}
.c-howto__item__top .c-howto__item__image {
  width: 100%;
  height: 100%;
}
.c-howto__item__heading {
  position: absolute;
  width: fit-content;
  top: min(5.3333333333vw, 32px);
  display: flex;
  flex-direction: row-reverse;
  gap: min(1.0666666667vw, 6.4px);
  font-weight: bold;
  align-items: flex-start;
  height: max-content;
}
@media (min-width: 601px) {
  .c-howto__item__heading {
    top: min(5.3333333333vw, 22.1333333333px);
    gap: min(1.0666666667vw, 4.4266666667px);
  }
}
.c-howto__item__heading--right {
  right: min(6.9333333333vw, 41.6px);
}
@media (min-width: 601px) {
  .c-howto__item__heading--right {
    right: min(6.9333333333vw, 28.7733333333px);
  }
}
.c-howto__item__heading--left {
  left: min(6.9333333333vw, 41.6px);
}
@media (min-width: 601px) {
  .c-howto__item__heading--left {
    left: min(6.9333333333vw, 28.7733333333px);
  }
}
.c-howto__item__heading--rightbottom {
  right: min(6.9333333333vw, 41.6px);
  bottom: min(10.6666666667vw, 64px);
  top: auto;
}
@media (min-width: 601px) {
  .c-howto__item__heading--rightbottom {
    right: min(6.9333333333vw, 28.7733333333px);
    bottom: min(10.6666666667vw, 44.2666666667px);
  }
}
.c-howto__item__heading__line {
  display: inline-block;
  position: relative;
  z-index: 1;
}
.c-howto__item__heading__line span {
  writing-mode: vertical-lr;
  font-size: min(8.5333333333vw, 51.2px);
  position: relative;
  z-index: 1;
  line-height: 1.1em;
  padding: 0.2em 0;
  display: block;
  width: 1.1em;
  height: max-content;
}
@media (min-width: 601px) {
  .c-howto__item__heading__line span {
    font-size: min(8.5333333333vw, 35.4133333333px);
  }
}
.c-howto__item__heading__line--small span {
  font-size: min(8vw, 48px);
}
@media (min-width: 601px) {
  .c-howto__item__heading__line--small span {
    font-size: min(8vw, 33.2px);
  }
}
.c-howto__item__heading__line--bg {
  background: #fff;
  position: absolute;
  inset: 0;
  z-index: 0;
  /* Safari 対策で初期状態も明示しておく */
  transform-origin: top center;
  transform: scaleY(0);
}
.c-howto__item__image__row {
  position: relative;
}
.c-howto__item__image__row__image {
  width: min(53.3333333333vw, 320px);
}
@media (min-width: 601px) {
  .c-howto__item__image__row__image {
    width: min(53.3333333333vw, 221.3333333333px);
  }
}
.c-howto__item__image__row__image--rightbottom {
  margin-top: calc(-1 * min(40vw, 240px));
  margin-left: auto;
}
@media (min-width: 601px) {
  .c-howto__item__image__row__image--rightbottom {
    margin-top: calc(-1 * min(40vw, 166px));
  }
}
.c-howto__item__image__row__image--leftbottom {
  margin-top: calc(-1 * min(40vw, 240px));
  margin-right: auto;
}
@media (min-width: 601px) {
  .c-howto__item__image__row__image--leftbottom {
    margin-top: calc(-1 * min(40vw, 166px));
  }
}
.c-howto__item__image__row__image--right {
  margin-left: auto;
}
.c-howto__item__deco {
  position: absolute;
}
.c-howto__item__deco--01 {
  right: min(3.2vw, 19.2px);
  top: min(10.6666666667vw, 64px);
  width: min(40vw, 240px);
  transform: rotate(-13deg);
}
@media (min-width: 601px) {
  .c-howto__item__deco--01 {
    right: min(3.2vw, 13.28px);
    top: min(10.6666666667vw, 44.2666666667px);
    width: min(40vw, 166px);
  }
}
.c-howto__item__deco--02 {
  left: min(1.6vw, 9.6px);
  top: calc(-1 * min(5.3333333333vw, 32px));
  width: min(64vw, 384px);
  transform: rotate(-9deg);
}
@media (min-width: 601px) {
  .c-howto__item__deco--02 {
    left: min(1.6vw, 6.64px);
    top: calc(-1 * min(5.3333333333vw, 22.1333333333px));
    width: min(64vw, 265.6px);
  }
}
.c-howto__item__deco--03 {
  right: min(1.0666666667vw, 6.4px);
  bottom: min(0vw, 0px);
  width: min(80vw, 480px);
  transform: rotate(-9deg);
}
@media (min-width: 601px) {
  .c-howto__item__deco--03 {
    right: min(1.0666666667vw, 4.4266666667px);
    bottom: min(0vw, 0px);
    width: min(80vw, 332px);
  }
}
.c-howto__item__deco--04 {
  left: min(0vw, 0px);
  bottom: min(2.6666666667vw, 16px);
  width: min(80vw, 480px);
  transform: rotate(7deg);
}
@media (min-width: 601px) {
  .c-howto__item__deco--04 {
    left: min(0vw, 0px);
    bottom: min(2.6666666667vw, 11.0666666667px);
    width: min(80vw, 332px);
  }
}
.c-howto__item__text {
  position: absolute;
}
.c-howto__item__text--01 {
  width: min(3.2vw, 19.2px);
  bottom: 0;
  left: min(34.1333333333vw, 204.8px);
}
@media (min-width: 601px) {
  .c-howto__item__text--01 {
    width: min(3.2vw, 13.28px);
    bottom: 0;
    left: min(34.1333333333vw, 141.6533333333px);
  }
}
.c-howto__item__text--02 {
  width: min(29.8666666667vw, 179.2px);
  bottom: 45%;
  transform: translateY(-50%);
  left: min(2.6666666667vw, 16px);
}
@media (min-width: 601px) {
  .c-howto__item__text--02 {
    width: min(29.8666666667vw, 123.9466666667px);
    left: min(2.6666666667vw, 11.0666666667px);
  }
}
.c-howto__item__text--03 {
  width: min(25.3333333333vw, 152px);
  top: min(34.1333333333vw, 204.8px);
  left: min(0vw, 0px);
}
@media (min-width: 601px) {
  .c-howto__item__text--03 {
    width: min(25.3333333333vw, 105.1333333333px);
    top: min(34.1333333333vw, 141.6533333333px);
    left: min(0vw, 0px);
  }
}
.c-howto__item__text--04 {
  width: min(25.3333333333vw, 152px);
  top: min(34.1333333333vw, 204.8px);
  right: min(0vw, 0px);
}
@media (min-width: 601px) {
  .c-howto__item__text--04 {
    width: min(25.3333333333vw, 105.1333333333px);
    top: min(34.1333333333vw, 141.6533333333px);
    right: min(0vw, 0px);
  }
}

footer {
  background: #000;
  padding: min(2.1333333333vw, 12.8px) 0;
  color: #fff;
  text-align: center;
}
@media (min-width: 601px) {
  footer {
    padding: min(2.1333333333vw, 8.8533333333px) 0;
  }
}

/*# sourceMappingURL=style.css.map */
