@import url("https://fonts.googleapis.com/css2?family=Grape+Nuts&family=Noto+Sans+JP:wght@100..900&family=Sawarabi+Mincho&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Grape+Nuts&family=Noto+Sans+JP:wght@100..900&family=Sawarabi+Mincho&display=swap");
body {
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

.d-relative {
  position: relative;
}

.d-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.d-block {
  display: block;
}

.flex-wrap {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.flex-row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}

.flex-column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.flex-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

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

.flex-end {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.flex-between {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

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

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

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

.mt-15 {
  margin-top: 15px;
}

.mt-50 {
  margin-top: 50px;
}

.ml-15 {
  margin-left: 15px;
}

.color1 {
  color: #D4A849;
}

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

html {
  scroll-behavior: smooth;
}
@media (min-width: 1921px) {
  html {
    font-size: 1px;
  }
}
@media (max-width: 1920px) {
  html {
    font-size: 0.05vw;
  }
}
@media (max-width: 1440px) {
  html {
    font-size: 0.07vw;
  }
}
@media (max-width: 768px) {
  html {
    font-size: 0.27vw;
  }
}

body {
  position: relative;
  font-family: "Noto Sans JP", serif;
  font-size: 16px;
  color: #4D4D4D;
  overflow-x: hidden;
  z-index: 0;
  background-color: white;
  letter-spacing: 0.1em;
  line-height: 1.6;
  letter-spacing: 0.07em;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

img {
  max-width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

button {
  letter-spacing: 0;
  cursor: pointer;
  font-family: "Noto Sans JP", sans-serif;
}

figure,
picture {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

a {
  text-decoration: none;
  color: black;
}

.c-object.-stroke01 {
  height: min(46.5306122449vw + 206.5102040816px, 951px);
  left: 0;
  margin-top: max(-23.2653061224vw - 103.2551020408px, -475.5px);
  top: 60%;
  width: min(46.5306122449vw + 206.5102040816px, 951px);
}

.c-object.-stroke01 .inner {
  -webkit-transform: translateX(-45%);
  transform: translateX(-45%);
}

.c-object.-stroke01 svg .g g {
  -webkit-animation-name: wave;
  animation-name: wave;
}

.c-object.-stroke01 svg .g g:first-child {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}

.c-object.-stroke01 svg .g g {
  -webkit-animation-duration: 60s;
  animation-duration: 60s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-transform-origin: center center;
  transform-origin: center center;
  will-change: transform;
}

.c-object {
  opacity: 0.6;
  pointer-events: none;
  position: absolute;
}

.c-object__container {
  height: 100%;
  overflow: hidden;
  width: 100%;
}

.c-object .inner {
  height: 100%;
  position: relative;
  width: 100%;
  display: unset;
}

.c-object svg {
  display: block;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
}

.c-object.-fill01 svg {
  -webkit-animation-duration: 27s;
  animation-duration: 27s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}

.c-object.-fill01 svg,
.c-object.-fill02 svg {
  -webkit-animation-name: wave-large;
  animation-name: wave-large;
  -webkit-transform-origin: center center;
  transform-origin: center center;
}

.c-object.-fill02 svg {
  -webkit-animation-delay: -1s;
  animation-delay: -1s;
  -webkit-animation-duration: 28s;
  animation-duration: 28s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}

.c-object.-fill03 svg {
  -webkit-animation-delay: -2s;
  animation-delay: -2s;
  -webkit-animation-duration: 29s;
  animation-duration: 29s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-name: wave-large;
  animation-name: wave-large;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-transform-origin: center center;
  transform-origin: center center;
}

.c-object.-fill03 .inner {
  display: unset;
}

.c-object.-fill03 svg path {
  fill: #fff;
}

.c-object.-fill03 svg .grad {
  mix-blend-mode: overlay;
}

.c-object.-fill04 .inner {
  display: unset;
}

.c-object.-fill04 svg {
  -webkit-animation-delay: -3s;
  animation-delay: -3s;
  -webkit-animation-duration: 30s;
  animation-duration: 30s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-name: wave-large;
  animation-name: wave-large;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-transform-origin: center center;
  transform-origin: center center;
}

.c-object.-fill04 svg path {
  fill: #fff;
}

.c-object.-fill04 svg .grad {
  mix-blend-mode: overlay;
}

.c-object.-stroke01 {
  height: min(46.5306122449vw + 206.5102040816px, 951px);
  left: 0;
  margin-top: max(-23.2653061224vw - 103.2551020408px, -475.5px);
  top: 60%;
  width: min(46.5306122449vw + 206.5102040816px, 951px);
}

.c-object.-stroke01 .inner {
  -webkit-transform: translateX(-45%);
  transform: translateX(-45%);
}

.c-object.-stroke02 {
  height: min(42.4897959184vw + 188.6632653061px, 868.5px);
  margin-top: max(-21.2448979592vw - 94.3316326531px, -434.25px);
  right: 0;
  top: 40%;
  width: min(42.4897959184vw + 188.6632653061px, 868.5px);
}

.c-object.-stroke02 .inner {
  -webkit-transform: translateX(15%);
  transform: translateX(15%);
}

.c-object.-fill01 {
  height: min(6.1224489796vw + 52.0408163265px, 150px);
  left: 0;
  margin-top: max(-3.0612244898vw - 26.0204081633px, -75px);
  top: 90%;
  width: min(6.1224489796vw + 52.0408163265px, 150px);
}

.c-object.-fill01 .inner {
  -webkit-transform: translateX(-30%);
  transform: translateX(-30%);
  display: unset;
}

.c-object.-fill02 {
  height: min(6.1224489796vw + 52.0408163265px, 150px);
  margin-top: max(-3.0612244898vw - 26.0204081633px, -75px);
  right: 0;
  top: 10%;
  width: min(6.1224489796vw + 52.0408163265px, 150px);
}

.c-object.-fill02 .inner {
  -webkit-transform: translateX(20%);
  transform: translateX(20%);
  display: unset;
}

.c-object.-fill03 {
  height: min(15.7959183673vw + 69.7653061224px, 322.5px);
  left: 7.8125%;
  margin-top: max(-7.8979591837vw - 34.8826530612px, -161.25px);
  top: 30%;
  width: min(15.7959183673vw + 69.7653061224px, 322.5px);
}

.c-object.-fill04 {
  height: min(13.1020408163vw + 57.3673469388px, 267px);
  margin-top: max(-6.5510204082vw - 28.6836734694px, -133.5px);
  right: 10.625%;
  top: 70%;
  width: min(13.1020408163vw + 57.3673469388px, 267px);
}

.c-object.-stroke01 svg .g g {
  -webkit-animation-name: wave;
  animation-name: wave;
}

.c-object.-stroke01 svg .g g {
  -webkit-animation-duration: 60s;
  animation-duration: 60s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-transform-origin: center center;
  transform-origin: center center;
  will-change: transform;
}

.c-object.-stroke01 svg .g g:first-child {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}

.c-object.-stroke01 svg .g g:nth-child(2) {
  -webkit-animation-delay: -0.3125s;
  animation-delay: -0.3125s;
}

.c-object.-stroke01 svg .g g:nth-child(3) {
  -webkit-animation-delay: -0.625s;
  animation-delay: -0.625s;
}

.c-object.-stroke01 svg .g g:nth-child(4) {
  -webkit-animation-delay: -0.9375s;
  animation-delay: -0.9375s;
}

.c-object.-stroke01 svg .g g:nth-child(5) {
  -webkit-animation-delay: -1.25s;
  animation-delay: -1.25s;
}

.c-object.-stroke01 svg .g g:nth-child(6) {
  -webkit-animation-delay: -1.5625s;
  animation-delay: -1.5625s;
}

.c-object.-stroke01 svg .g g:nth-child(7) {
  -webkit-animation-delay: -1.875s;
  animation-delay: -1.875s;
}

.c-object.-stroke01 svg .g g:nth-child(8) {
  -webkit-animation-delay: -2.1875s;
  animation-delay: -2.1875s;
}

.c-object.-stroke01 svg .g g:nth-child(9) {
  -webkit-animation-delay: -2.5s;
  animation-delay: -2.5s;
}

.c-object.-stroke01 svg .g g:nth-child(10) {
  -webkit-animation-delay: -2.8125s;
  animation-delay: -2.8125s;
}

.c-object.-stroke01 svg .g g:nth-child(11) {
  -webkit-animation-delay: -3.125s;
  animation-delay: -3.125s;
}

.c-object.-stroke01 svg .g g:nth-child(12) {
  -webkit-animation-delay: -3.4375s;
  animation-delay: -3.4375s;
}

.c-object.-stroke01 svg .g g:nth-child(13) {
  -webkit-animation-delay: -3.75s;
  animation-delay: -3.75s;
}

.c-object.-stroke01 svg .g g:nth-child(14) {
  -webkit-animation-delay: -4.0625s;
  animation-delay: -4.0625s;
}

.c-object.-stroke01 svg .g g:nth-child(15) {
  -webkit-animation-delay: -4.375s;
  animation-delay: -4.375s;
}

.c-object.-stroke01 svg .g g:nth-child(16) {
  -webkit-animation-delay: -4.6875s;
  animation-delay: -4.6875s;
}

.c-object.-stroke01 svg .g g:nth-child(17) {
  -webkit-animation-delay: -5s;
  animation-delay: -5s;
}

.c-object.-stroke01 svg .g g:nth-child(18) {
  -webkit-animation-delay: -5.3125s;
  animation-delay: -5.3125s;
}

.c-object.-stroke01 svg .g g:nth-child(19) {
  -webkit-animation-delay: -5.625s;
  animation-delay: -5.625s;
}

.c-object.-stroke01 svg .g g:nth-child(20) {
  -webkit-animation-delay: -5.9375s;
  animation-delay: -5.9375s;
}

.c-object.-stroke01 svg .g g:nth-child(21) {
  -webkit-animation-delay: -6.25s;
  animation-delay: -6.25s;
}

.c-object.-stroke01 svg .g g:nth-child(22) {
  -webkit-animation-delay: -6.5625s;
  animation-delay: -6.5625s;
}

.c-object.-stroke01 svg .g g:nth-child(23) {
  -webkit-animation-delay: -6.875s;
  animation-delay: -6.875s;
}

.c-object.-stroke01 svg .g g:nth-child(24) {
  -webkit-animation-delay: -7.1875s;
  animation-delay: -7.1875s;
}

.c-object.-stroke01 svg .g g:nth-child(25) {
  -webkit-animation-delay: -7.5s;
  animation-delay: -7.5s;
}

.c-object.-stroke01 svg .g g:nth-child(26) {
  -webkit-animation-delay: -7.8125s;
  animation-delay: -7.8125s;
}

.c-object.-stroke01 svg .g g:nth-child(27) {
  -webkit-animation-delay: -8.125s;
  animation-delay: -8.125s;
}

.c-object.-stroke01 svg .g g:nth-child(28) {
  -webkit-animation-delay: -8.4375s;
  animation-delay: -8.4375s;
}

.c-object.-stroke01 svg .g g:nth-child(29) {
  -webkit-animation-delay: -8.75s;
  animation-delay: -8.75s;
}

.c-object.-stroke01 svg .g g:nth-child(30) {
  -webkit-animation-delay: -9.0625s;
  animation-delay: -9.0625s;
}

.c-object.-stroke01 svg .g g:nth-child(31) {
  -webkit-animation-delay: -9.375s;
  animation-delay: -9.375s;
}

.c-object.-stroke01 svg .g g:nth-child(32) {
  -webkit-animation-delay: -9.6875s;
  animation-delay: -9.6875s;
}

.c-object.-stroke01 svg circle,
.c-object.-stroke01 svg path {
  fill: none;
  stroke-width: 0.25;
  stroke-miterlimit: 10;
}

.c-object.-stroke02 svg .g g {
  -webkit-animation-name: wave;
  animation-name: wave;
}

.c-object.-stroke02 svg .g g {
  -webkit-animation-duration: 60s;
  animation-duration: 60s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-transform-origin: center center;
  transform-origin: center center;
  will-change: transform;
}

.c-object.-stroke02 svg .g g:first-child {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}

.c-object.-stroke02 svg .g g:nth-child(2) {
  -webkit-animation-delay: -0.3125s;
  animation-delay: -0.3125s;
}

.c-object.-stroke02 svg .g g:nth-child(3) {
  -webkit-animation-delay: -0.625s;
  animation-delay: -0.625s;
}

.c-object.-stroke02 svg .g g:nth-child(4) {
  -webkit-animation-delay: -0.9375s;
  animation-delay: -0.9375s;
}

.c-object.-stroke02 svg .g g:nth-child(5) {
  -webkit-animation-delay: -1.25s;
  animation-delay: -1.25s;
}

.c-object.-stroke02 svg .g g:nth-child(6) {
  -webkit-animation-delay: -1.5625s;
  animation-delay: -1.5625s;
}

.c-object.-stroke02 svg .g g:nth-child(7) {
  -webkit-animation-delay: -1.875s;
  animation-delay: -1.875s;
}

.c-object.-stroke02 svg .g g:nth-child(8) {
  -webkit-animation-delay: -2.1875s;
  animation-delay: -2.1875s;
}

.c-object.-stroke02 svg .g g:nth-child(9) {
  -webkit-animation-delay: -2.5s;
  animation-delay: -2.5s;
}

.c-object.-stroke02 svg .g g:nth-child(10) {
  -webkit-animation-delay: -2.8125s;
  animation-delay: -2.8125s;
}

.c-object.-stroke02 svg .g g:nth-child(11) {
  -webkit-animation-delay: -3.125s;
  animation-delay: -3.125s;
}

.c-object.-stroke02 svg .g g:nth-child(12) {
  -webkit-animation-delay: -3.4375s;
  animation-delay: -3.4375s;
}

.c-object.-stroke02 svg .g g:nth-child(13) {
  -webkit-animation-delay: -3.75s;
  animation-delay: -3.75s;
}

.c-object.-stroke02 svg .g g:nth-child(14) {
  -webkit-animation-delay: -4.0625s;
  animation-delay: -4.0625s;
}

.c-object.-stroke02 svg .g g:nth-child(15) {
  -webkit-animation-delay: -4.375s;
  animation-delay: -4.375s;
}

.c-object.-stroke02 svg .g g:nth-child(16) {
  -webkit-animation-delay: -4.6875s;
  animation-delay: -4.6875s;
}

.c-object.-stroke02 svg .g g:nth-child(17) {
  -webkit-animation-delay: -5s;
  animation-delay: -5s;
}

.c-object.-stroke02 svg .g g:nth-child(18) {
  -webkit-animation-delay: -5.3125s;
  animation-delay: -5.3125s;
}

.c-object.-stroke02 svg .g g:nth-child(19) {
  -webkit-animation-delay: -5.625s;
  animation-delay: -5.625s;
}

.c-object.-stroke02 svg .g g:nth-child(20) {
  -webkit-animation-delay: -5.9375s;
  animation-delay: -5.9375s;
}

.c-object.-stroke02 svg .g g:nth-child(21) {
  -webkit-animation-delay: -6.25s;
  animation-delay: -6.25s;
}

.c-object.-stroke02 svg .g g:nth-child(22) {
  -webkit-animation-delay: -6.5625s;
  animation-delay: -6.5625s;
}

.c-object.-stroke02 svg .g g:nth-child(23) {
  -webkit-animation-delay: -6.875s;
  animation-delay: -6.875s;
}

.c-object.-stroke02 svg .g g:nth-child(24) {
  -webkit-animation-delay: -7.1875s;
  animation-delay: -7.1875s;
}

.c-object.-stroke02 svg .g g:nth-child(25) {
  -webkit-animation-delay: -7.5s;
  animation-delay: -7.5s;
}

.c-object.-stroke02 svg .g g:nth-child(26) {
  -webkit-animation-delay: -7.8125s;
  animation-delay: -7.8125s;
}

.c-object.-stroke02 svg .g g:nth-child(27) {
  -webkit-animation-delay: -8.125s;
  animation-delay: -8.125s;
}

.c-object.-stroke02 svg .g g:nth-child(28) {
  -webkit-animation-delay: -8.4375s;
  animation-delay: -8.4375s;
}

.c-object.-stroke02 svg .g g:nth-child(29) {
  -webkit-animation-delay: -8.75s;
  animation-delay: -8.75s;
}

.c-object.-stroke02 svg .g g:nth-child(30) {
  -webkit-animation-delay: -9.0625s;
  animation-delay: -9.0625s;
}

.c-object.-stroke02 svg .g g:nth-child(31) {
  -webkit-animation-delay: -9.375s;
  animation-delay: -9.375s;
}

.c-object.-stroke02 svg .g g:nth-child(32) {
  -webkit-animation-delay: -9.6875s;
  animation-delay: -9.6875s;
}

.c-object.-stroke02 svg circle,
.c-object.-stroke02 svg path {
  fill: none;
  stroke-width: 0.5;
  stroke-miterlimit: 10;
}

.c-object.-stroke02 {
  height: min(42.4897959184vw + 188.6632653061px, 868.5px);
  margin-top: max(-21.2448979592vw - 94.3316326531px, -434.25px);
  right: 0;
  top: 40%;
  width: min(42.4897959184vw + 188.6632653061px, 868.5px);
}

@-webkit-keyframes appear {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes appear {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes wave {
  0% {
    -webkit-transform: translateY(-2.5%) scale(1);
    transform: translateY(-2.5%) scale(1);
  }
  25% {
    -webkit-transform: translateY(2.5%) scale(1.05);
    transform: translateY(2.5%) scale(1.05);
  }
  50% {
    -webkit-transform: translateY(-2.5%) scale(1.1);
    transform: translateY(-2.5%) scale(1.1);
  }
  75% {
    -webkit-transform: translateY(2.5%) scale(1.05);
    transform: translateY(2.5%) scale(1.05);
  }
  to {
    -webkit-transform: translateY(-2.5%) scale(1);
    transform: translateY(-2.5%) scale(1);
  }
}
@keyframes wave {
  0% {
    -webkit-transform: translateY(-2.5%) scale(1);
    transform: translateY(-2.5%) scale(1);
  }
  25% {
    -webkit-transform: translateY(2.5%) scale(1.05);
    transform: translateY(2.5%) scale(1.05);
  }
  50% {
    -webkit-transform: translateY(-2.5%) scale(1.1);
    transform: translateY(-2.5%) scale(1.1);
  }
  75% {
    -webkit-transform: translateY(2.5%) scale(1.05);
    transform: translateY(2.5%) scale(1.05);
  }
  to {
    -webkit-transform: translateY(-2.5%) scale(1);
    transform: translateY(-2.5%) scale(1);
  }
}
@-webkit-keyframes wave-large {
  0% {
    -webkit-transform: translateY(-5%) scale(1);
    transform: translateY(-5%) scale(1);
  }
  25% {
    -webkit-transform: translateY(5%) scale(1.1);
    transform: translateY(5%) scale(1.1);
  }
  50% {
    -webkit-transform: translateY(-5%) scale(1.2);
    transform: translateY(-5%) scale(1.2);
  }
  75% {
    -webkit-transform: translateY(5%) scale(1.1);
    transform: translateY(5%) scale(1.1);
  }
  to {
    -webkit-transform: translateY(-5%) scale(1);
    transform: translateY(-5%) scale(1);
  }
}
@keyframes wave-large {
  0% {
    -webkit-transform: translateY(-5%) scale(1);
    transform: translateY(-5%) scale(1);
  }
  25% {
    -webkit-transform: translateY(5%) scale(1.1);
    transform: translateY(5%) scale(1.1);
  }
  50% {
    -webkit-transform: translateY(-5%) scale(1.2);
    transform: translateY(-5%) scale(1.2);
  }
  75% {
    -webkit-transform: translateY(5%) scale(1.1);
    transform: translateY(5%) scale(1.1);
  }
  to {
    -webkit-transform: translateY(-5%) scale(1);
    transform: translateY(-5%) scale(1);
  }
}
@media only screen and (max-width: 1023px) {
  .c-object.-stroke01 {
    top: 80%;
  }
  .c-object.-stroke02 {
    top: 30%;
  }
  .c-object.-stroke02 .inner {
    -webkit-transform: translateX(20%);
    transform: translateX(20%);
  }
  .c-object.-fill01 {
    top: 100%;
  }
  .c-object.-fill02 .inner {
    -webkit-transform: translateX(35%);
    transform: translateX(35%);
  }
  .c-object.-fill02 {
    top: 5%;
  }
  .c-object.-fill03 {
    left: 4.6875%;
  }
  .c-object.-fill03 .inner {
    -webkit-transform: translateX(-15%);
    transform: translateX(-15%);
  }
  .c-object.-fill04 {
    right: 7.5%;
    top: 57.5%;
  }
}
@media only screen and (max-width: 767px) {
  .c-object.-stroke01 .inner {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .c-object.-stroke02 {
    top: 25%;
  }
  .c-object.-stroke02 .inner {
    -webkit-transform: translateX(35%);
    transform: translateX(35%);
  }
  .c-object.-fill01 {
    display: none;
  }
  .c-object.-fill02 .inner {
    -webkit-transform: translateX(50%);
    transform: translateX(50%);
  }
  .c-object.-fill02 {
    top: 13%;
  }
  .c-object.-fill03 {
    left: 1.5625%;
    top: 50%;
  }
  .c-object.-fill03 .inner {
    -webkit-transform: translateX(-30%);
    transform: translateX(-30%);
  }
  .c-object.-fill04 {
    right: 3.75%;
    top: 45%;
  }
  .c-object.-stroke01 .inner {
    display: unset;
  }
  .c-object.-stroke02 .inner {
    display: unset;
  }
}
@media only screen and (max-width: 567px) {
  .c-object.-stroke01 svg .g g,
  .c-object.-stroke02 svg .g g {
    -webkit-animation-name: none;
    animation-name: none;
  }
  .c-object.-stroke02 .inner {
    -webkit-transform: translateX(40%);
    transform: translateX(40%);
  }
  .c-object.-fill02 .inner {
    -webkit-transform: translateX(65%);
    transform: translateX(65%);
  }
  .c-object.-fill03 {
    left: 0;
    top: 60%;
  }
  .c-object.-fill03 .inner {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .c-object.-fill04 {
    right: 0;
    top: 42.5%;
  }
}
.head {
  padding-right: 38px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
}
.head-contact {
  position: fixed;
  top: 41px;
  right: 38px;
}
.head-contact .c-btn_area {
  width: 280px;
  height: 58px;
  border-radius: 50px;
}
.head-contact .c-btn::after {
  width: 280px;
  border-radius: 50px;
  height: 58px;
}

.footer {
  background-color: #98303A;
  padding: 49px 0 44px;
  position: relative;
}
.footer .copyright {
  text-align: center;
  color: white;
  font-size: 16px;
}
.footer .policy {
  position: absolute;
  top: 49px;
  right: 87px;
  color: white;
}
.footer-logo {
  position: absolute;
  top: 23px;
  left: 207px;
}

.c-btn {
  position: relative;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  z-index: 0;
}
.c-btn_area {
  width: 335px;
  height: 58px;
  border-radius: 6px;
  background-color: #98303A;
  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;
  color: white;
  font-size: 20px;
  position: relative;
}
.c-btn_area span:last-child {
  position: absolute;
  top: calc(50% - 8px);
  right: 20px;
}
.c-btn::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 335px;
  height: 58px;
  border-radius: 10px;
  top: 5px;
  left: 0;
  background-color: #790611;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.c-btn:hover {
  padding-top: 5px;
}

.c-ttl_en {
  font-size: 16px;
  color: #98303A;
}
.c-ttl_jp {
  font-size: 28px;
  font-weight: bold;
  margin-top: 15px;
}

.cta {
  margin: 100px 0;
}

.c-free {
  max-width: 1120px;
  margin: 80px auto 0;
  background-color: white;
  -webkit-box-shadow: 0 4px 18px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 18px rgba(0, 0, 0, 0.1);
  padding: 74px 40px 54px;
  border-radius: 15px;
}
.c-free_ttl {
  font-size: 37px;
  font-weight: bold;
  text-align: center;
  line-height: 1;
}
.c-free_txt {
  font-size: 20px;
  text-align: center;
  line-height: 1.75;
  margin: 30px 0 39px;
}

@media (max-width: 1440px) {
  .c-free {
    width: 88%;
    padding: 74rem 40rem 54rem;
  }
  .c-free_ttl {
    font-size: 37rem;
  }
  .c-free_txt {
    font-size: 20rem;
  }
  .c-btn_area {
    font-size: 14px;
  }
  .footer-logo {
    left: 50rem;
  }
  .footer .policy {
    right: 50rem;
  }
}
@media (max-width: 768px) {
  .head_logo img {
    width: 200px;
  }
  .head-contact {
    display: none;
  }
  .c-free {
    padding: 40px 20px;
  }
  .c-free_ttl {
    font-size: 20px;
    line-height: 1.7;
  }
  .c-free_txt {
    font-size: 16px;
    margin: 20px 0 20px;
    text-align: left;
  }
  .c-free_btn .c-btn {
    width: 100%;
  }
  .c-free_btn .c-btn_area {
    width: 100%;
  }
  .c-free_btn .c-btn::after {
    width: 100%;
  }
  .c-ttl_jp {
    font-size: 24px;
  }
  .cta {
    margin: 80px 0;
  }
  .footer {
    padding: 50px 0 20px;
  }
  .footer-logo {
    position: relative;
    top: unset;
    right: unset;
    left: unset;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .footer .policy {
    position: relative;
    top: unset;
    right: unset;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 40px;
  }
  .footer .copyright {
    font-size: 14px;
    margin-top: 20px;
  }
}
.fv {
  background: #C65F5F;
  background: -webkit-gradient(linear, left top, left bottom, from(rgb(198, 95, 95)), to(rgb(255, 255, 255)));
  background: linear-gradient(180deg, rgb(198, 95, 95) 0%, rgb(255, 255, 255) 100%);
  position: relative;
  z-index: 0;
}
.fv .inner {
  position: relative;
  max-width: 1280rem;
  margin: 0 auto;
  padding: 218px 0 80px;
}
.fv .inner .area {
  max-width: 820rem;
}
.fv .inner .area_ttl {
  font-size: 55rem;
  color: #4D4D4D;
  line-height: 1;
  font-weight: bold;
}
.fv .inner .area_en {
  font-size: 119rem;
  color: #98303A;
  line-height: 1;
  margin: 10px 0 40px;
  font-weight: bold;
}
.fv .inner .area_bottom {
  font-size: 32rem;
  color: #4D4D4D;
  font-weight: bold;
}
.fv .inner .area_row {
  margin-top: 20px;
}
.fv .inner .area_img img {
  width: 257rem;
}
.fv_img {
  position: absolute;
  bottom: 50px;
  right: -230rem;
}
.fv_img img {
  width: 786rem;
}
.fv_abs1 {
  position: absolute;
  top: 210px;
  left: calc(50% - 182rem);
  z-index: -1;
}
.fv_abs1 img {
  width: 366rem;
}
.fv_abs2 {
  position: absolute;
  bottom: 0;
  left: 95rem;
  z-index: -1;
}
.fv_abs2 img {
  width: 184rem;
}

.message {
  max-width: 700px;
  margin: 150px auto;
}
.message .inner {
  position: relative;
}
.message_txt {
  line-height: 1.5625;
  text-align: center;
  margin-top: 44px;
}
.message_abs1 {
  position: absolute;
  top: -21px;
  left: -430px;
}
.message_abs2 {
  position: absolute;
  top: 60px;
  right: -450px;
}

.worry {
  margin-bottom: 120px;
}
.worry .inner {
  max-width: 1250px;
  margin: 0 auto;
}
.worry .item {
  background-color: #F5F5F5;
  padding: 54px 80px 40px;
  border-radius: 20px;
}
.worry .item_ttl {
  font-size: 42px;
  font-family: "Sawarabi Mincho", serif;
  text-align: center;
}
.worry .item .area {
  margin-top: 35px;
}
.worry .item .area_img {
  margin-right: 35px;
}
.worry .item .check_row {
  padding-bottom: 10px;
  padding-top: 10px;
  border-bottom: 1px dotted #C3C3C3;
}
.worry .item .check_row span {
  font-size: 18px;
}
.worry .item .check_row span:first-child {
  width: 25px;
  height: 25px;
  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;
  border-radius: 50%;
  -webkit-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.1);
  margin-right: 35px;
}

.solution {
  background-color: #FDF8F8;
  padding: 113px 0 80px;
}
.solution .inner {
  max-width: 1250px;
  margin: 0 auto;
}
.solution_ttl {
  font-size: 37px;
  font-weight: bold;
  text-align: center;
}
.solution_ttl span {
  font-size: 58px;
  color: #98303A;
}
.solution_txt {
  text-align: center;
  font-size: 28px;
  line-height: 1.7142857143;
  margin-top: 40px;
}
.solution .item {
  background-color: white;
  margin-top: 70px;
  border-radius: 20px;
  padding: 27px 50px;
}
.solution .item_area {
  max-width: 680px;
}
.solution .item_ttl {
  font-size: 35px;
  font-weight: bold;
  line-height: 1.5714285714;
  color: #98303A;
}
.solution .item_txt {
  font-size: 28px;
  line-height: 1.7142857143;
  margin-top: 38px;
}

.available {
  margin-top: 92px;
}
.available_txt {
  text-align: center;
  line-height: 1.6666666667;
  margin-top: 38px;
  font-size: 18px;
}
.available .inner {
  max-width: 1370px;
  margin: 0 auto;
}
.available .inner .item {
  margin-top: 40px;
}
.available .inner .item.reset .area {
  margin-top: 30px;
}
.available .inner .item.reset .area_group {
  width: 18%;
}
.available .inner .item_ttl {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}
.available .inner .item .area {
  max-width: 810px;
  margin: 30px auto 0;
}
.available .inner .item .area_group {
  width: 23%;
  margin-bottom: 70px;
}
.available .inner .item .area_txt {
  margin-top: 17px;
  font-size: 18px;
}
.available .inner .table {
  margin: 30px 0;
  position: relative;
}
.available .inner .table::after {
  content: "";
  display: none;
  width: 18px;
  height: 24px;
  background-image: url(../img/arrow_icon.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  bottom: 0;
  left: 0px;
  -webkit-animation-name: arrow_swipe, arrow_opacity;
          animation-name: arrow_swipe, arrow_opacity;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-timing-function: cubic-bezier(0.54, 0.08, 0.25, 0.97);
          animation-timing-function: cubic-bezier(0.54, 0.08, 0.25, 0.97);
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
}
.available .inner .table_one, .available .inner .table_two, .available .inner .table_three {
  -webkit-box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.15);
          box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.15);
  border-radius: 10px;
}
.available .inner .table_one {
  width: 348px;
}
.available .inner .table .row {
  min-height: 104px;
  height: 104px;
  max-height: 104px;
  border-bottom: 1px solid #DCDCDC;
  padding: 10px 20px;
}
.available .inner .table .row:last-child {
  border-bottom: unset;
}
.available .inner .table .row_txt {
  text-align: center;
}
.available .inner .table_two {
  width: 390px;
  margin: 0 15px;
}
.available .inner .table_two .row {
  color: #D64C19;
  background-color: #FFF4F0;
}
.available .inner .table_two .row:first-child {
  height: 91px;
  min-height: 91px;
  background-color: #D64C19;
  color: white;
  border-bottom: unset;
  border-radius: 10px 10px 0 0;
}
.available .inner .table_three {
  width: 597px;
}
.available .inner .table_three .row {
  color: #245BE6;
  background-color: #F3F6FF;
}
.available .inner .table_three .row:first-child {
  height: 91px;
  min-height: 91px;
  background-color: #245BE6;
  color: white;
  border-bottom: unset;
  border-radius: 10px 10px 0 0;
}
.available .c-free {
  margin-top: 110px;
  margin-bottom: 100px;
}

.reason {
  background-color: #FDF8F8;
  padding: 80px 0 120px;
}
.reason .inner {
  max-width: 1250px;
  margin: 0 auto;
}
.reason .inner .item {
  margin-top: 60px;
}
.reason .inner .item .box {
  background-color: white;
  border-radius: 15px;
  -webkit-box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.05);
          box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.05);
  margin-bottom: 33px;
  padding: 26px 40px;
}
.reason .inner .item .box:last-child {
  margin-bottom: unset;
}
.reason .inner .item .area {
  max-width: 660px;
}
.reason .inner .item .area_num {
  font-size: 35px;
  font-weight: bold;
  color: #98303A;
}
.reason .inner .item .area_en {
  font-size: 13px;
  color: #98303A;
}
.reason .inner .item .area_ttl {
  font-size: 22px;
  font-weight: 500;
  line-height: 1.8181818182;
  margin: 33px 0 26px;
}
.reason .inner .item .area_txt {
  font-size: 16px;
  line-height: 1.6875;
}

.voice {
  background-color: #FDF8F8;
  padding: 80px 0 100px;
}
.voice .inner {
  max-width: 1250px;
  margin: 0 auto;
}
.voice .inner .item {
  margin-top: 80px;
}
.voice .inner .item .box {
  border: 1px solid #B2B2B2;
  background-color: white;
  border-radius: 10px;
  position: relative;
  padding: 40px 25px;
  max-width: 388px;
  width: 32%;
}
.voice .inner .item .box_abs {
  position: absolute;
  top: -29px;
  left: -21px;
}
.voice .inner .item .box_ttl {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.65;
  margin-left: 20px;
}
.voice .inner .item .box_txt {
  margin-top: 20px;
  font-size: 16px;
  line-height: 1.75;
}

.flow {
  padding: 80px 0 110px;
}
.flow .inner {
  max-width: 1360px;
  margin: 0 auto;
}
.flow .item {
  margin-top: 72px;
}
.flow .item .step {
  position: relative;
  background-color: white;
  border-radius: 10px;
  -webkit-box-shadow: 0px 4px 13px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 4px 13px rgba(0, 0, 0, 0.1);
  max-width: 250px;
  padding: 32px 13px 20px;
}
.flow .item .step_head {
  width: 131px;
  height: 33px;
  color: white;
  background-color: #98303A;
  border-radius: 40px;
  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;
  position: absolute;
  top: -16.5px;
  left: calc(50% - 65.5px);
}
.flow .item .step_ttl {
  font-size: 18px;
  color: #98303A;
  font-weight: 500;
  margin: 17px 0 14px;
}
.flow .item .step_txt {
  line-height: 1.5625;
}
.flow .item .step:nth-child(3) {
  padding-top: 58px;
}
.flow .item .step:nth-child(4) {
  padding-top: 28px;
}
.flow .item .step:nth-child(5) {
  padding-top: 58px;
}
.flow .item .step:nth-child(5) .step_ttl {
  margin-top: 30px;
}
.flow .item .step::after {
  content: "";
  border-top: 45px solid transparent;
  border-bottom: 45px solid transparent;
  border-right: unset;
  border-left: 16px solid #98303A;
  position: absolute;
  right: -23px;
  top: calc(50% - 45px);
}
.flow .item .step:last-child::after {
  content: unset;
}

.join {
  padding: 80px 0 0;
}
.join .inner {
  max-width: 1250px;
  margin: 0 auto;
}
.join_ttl {
  text-align: center;
  font-size: 28px;
  font-weight: bold;
}
.join_ttl span {
  font-size: 40px;
  color: #98303A;
}
.join_txt {
  text-align: center;
  font-size: 24px;
  font-weight: 500;
  margin-top: 22px;
}
.join_img {
  background-color: white;
  padding: 35px;
  margin-top: 52px;
}
.join .item {
  margin-top: 100px;
}
.join .item_ttl {
  font-size: 24px;
  font-weight: 500;
  text-align: center;
}
.join .item_step {
  margin-top: 50px;
}
.join .item_step .box {
  width: 19%;
  margin-bottom: 80px;
}
.join .item_step .box_ttl {
  margin-top: 24px;
  color: #98303A;
  text-align: center;
}

.faq {
  margin-bottom: 100px;
}
.faq .inner {
  max-width: 1059px;
  margin: 87px auto 0;
}
.faq .inner .item {
  margin-top: 68px;
}
.faq .inner .item .box {
  background-color: white;
  -webkit-box-shadow: 0px 4px 18px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 4px 18px rgba(0, 0, 0, 0.1);
  padding: 23px 20px;
  margin-bottom: 30px;
}
.faq .inner .item .box:last-child {
  margin-bottom: unset;
}
.faq .inner .item .box_lead {
  border-bottom: 1px solid #D6D6D6;
  padding-bottom: 12px;
  padding-left: 10px;
  padding-right: 10px;
}
.faq .inner .item .box_en {
  color: #193089;
  font-size: 27px;
  font-weight: bold;
  margin-right: 12px;
}
.faq .inner .item .box_ttl {
  font-size: 22px;
}
.faq .inner .item .box_content {
  padding-top: 12px;
  padding-left: 10px;
  padding-right: 10px;
}
.faq .inner .item .box_an {
  font-size: 27px;
  color: #98303A;
  margin-right: 12px;
  font-weight: bold;
}
.faq .inner .item .box_txt {
  line-height: 1.6875;
}

.company {
  background-color: #F7F7F7;
  padding: 87px 0 140px;
}
.company .inner {
  max-width: 1380px;
  margin: 0 auto;
}
.company .inner .item {
  margin-top: 110px;
}
.company .inner .item .area {
  max-width: 730px;
}
.company .inner .item .area .row {
  border-bottom: 1px solid #CACACA;
  padding: 16px 20px;
  width: 100%;
}
.company .inner .item .area .row .category {
  min-width: 160px;
  font-size: 20px;
  font-weight: 500;
}
.company .inner .item .area .row .txt {
  font-size: 20px;
}
.company .inner .item .area .row .link {
  color: #006E93;
  font-size: 20px;
  text-decoration: underline;
}
.company_img img {
  border-radius: 10px;
}
.contact_fixed {
  display: none;
}
@-webkit-keyframes arrow_swipe {
  0% {
    -webkit-transform: translate(100px, 0);
            transform: translate(100px, 0);
  }
  5% {
    -webkit-transform: translate(100px, 0);
            transform: translate(100px, 0);
  }
  80% {
    -webkit-transform: translate(0);
            transform: translate(0);
  }
  100% {
    -webkit-transform: translate(0);
            transform: translate(0);
  }
}

@keyframes arrow_swipe {
  0% {
    -webkit-transform: translate(100px, 0);
            transform: translate(100px, 0);
  }
  5% {
    -webkit-transform: translate(100px, 0);
            transform: translate(100px, 0);
  }
  80% {
    -webkit-transform: translate(0);
            transform: translate(0);
  }
  100% {
    -webkit-transform: translate(0);
            transform: translate(0);
  }
}
@-webkit-keyframes arrow_opacity {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 1;
  }
  65% {
    opacity: 1;
  }
  90% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes arrow_opacity {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 1;
  }
  65% {
    opacity: 1;
  }
  90% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@media (max-width: 1440px) {
  .fv .inner {
    max-width: 1220rem;
  }
  .fv .inner .area {
    max-width: 660rem;
  }
  .fv .inner .area_ttl {
    font-size: 45rem;
  }
  .fv .inner .area_en {
    font-size: 96rem;
  }
  .fv .inner .area_bottom {
    font-size: 27rem;
  }
  .fv .inner .area_img img {
    width: 215rem;
  }
  .fv_img {
    right: -50rem;
  }
  .fv_img img {
    width: 660rem;
  }
  .fv_abs1 {
    left: calc(50% - 135rem);
  }
  .fv_abs1 img {
    width: 270rem;
  }
  .fv_abs2 {
    left: 0;
  }
  .fv_abs2 img {
    width: 100rem;
  }
  .message {
    margin: 150rem auto;
    width: 88%;
  }
  .message_abs1 {
    left: -260rem;
    top: -44px;
  }
  .message_abs1 img {
    width: 407rem;
  }
  .message_abs2 {
    top: -96px;
    right: -240rem;
  }
  .message_abs2 img {
    width: 399rem;
  }
  .worry .inner {
    width: 88%;
  }
  .worry .inner .item_ttl {
    font-size: 42rem;
  }
  .solution {
    padding: 113rem 0 80px;
  }
  .solution_ttl {
    font-size: 37rem;
  }
  .solution_ttl span {
    font-size: 58rem;
  }
  .solution_txt {
    font-size: 28rem;
    margin-top: 40rem;
  }
  .solution .inner {
    width: 88%;
  }
  .solution .item {
    margin-top: 70rem;
    border-radius: 20rem;
    padding: 27rem 50rem;
  }
  .solution .item_area {
    max-width: 680rem;
  }
  .solution .item_ttl {
    font-size: 35rem;
  }
  .solution .item_txt {
    font-size: 28rem;
    margin-top: 38rem;
  }
  .solution .item_img img {
    width: 400rem;
  }
  .available .inner {
    width: 88%;
  }
  .reason .inner {
    width: 88%;
  }
  .reason .inner .item {
    margin-top: 60rem;
  }
  .reason .inner .item .area {
    max-width: 660rem;
    margin-right: 20px;
  }
  .voice {
    padding: 80rem 0 100rem;
  }
  .voice .inner {
    width: 88%;
  }
  .flow .inner {
    width: 88%;
  }
  .flow .item {
    margin-top: 72rem;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .flow .item .step {
    width: 31%;
    max-width: unset;
    margin-right: 3.5%;
    margin-bottom: 30px;
  }
  .flow .item .step:nth-child(3), .flow .item .step:last-child {
    margin-right: unset;
  }
  .flow .item .step:nth-child(3)::after, .flow .item .step:last-child::after {
    content: unset;
  }
  .join {
    padding: 80rem 0 110rem;
  }
  .join .inner {
    width: 88%;
  }
  .faq .inner {
    width: 88%;
  }
  .company {
    padding: 87rem 0 140rem;
  }
  .company .inner {
    width: 88%;
  }
  .company .inner .item {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    margin-top: 110rem;
  }
  .company .inner .item .area {
    margin-right: 30rem;
    max-width: 700rem;
  }
  .company .inner .item .area .row .category {
    font-size: 20rem;
  }
  .company .inner .item .area .row .txt {
    font-size: 20rem;
  }
  .company .inner .item .area .row .link {
    font-size: 20rem;
  }
}
@media (max-width: 1200px) {
  .voice .inner .item {
    -webkit-box-orient: unset;
    -webkit-box-direction: unset;
        -ms-flex-direction: unset;
            flex-direction: unset;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .voice .inner .item .box {
    width: 42%;
    max-width: unset;
    margin-right: 3%;
    margin-bottom: 3%;
  }
  .voice .inner .item .box:nth-child(2), .voice .inner .item .box:last-child {
    margin-right: unset;
  }
}
@media (max-width: 1280px) {
  .worry .inner .item .check_row span {
    font-size: 16px;
  }
}
@media (max-width: 768px) {
  .fv {
    background: unset;
    position: relative;
    z-index: 0;
  }
  .fv::before {
    content: "";
    width: 100%;
    height: 50vh;
    background: -webkit-gradient(linear, left top, left bottom, from(rgb(198, 95, 95)), to(rgb(255, 255, 255)));
    background: linear-gradient(180deg, rgb(198, 95, 95) 0%, rgb(255, 255, 255) 100%);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
  }
  .fv .inner {
    padding: 150px 0 60px;
    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;
  }
  .fv .inner .area {
    max-width: unset;
    width: 88%;
    margin-left: auto;
    margin-right: auto;
  }
  .fv .inner .area_ttl {
    font-size: 24rem;
  }
  .fv .inner .area_en {
    font-size: 49rem;
    margin: 10px 0 20px;
  }
  .fv .inner .area_bottom {
    font-size: 14rem;
  }
  .fv .inner .area_img img {
    width: 105rem;
  }
  .fv_img {
    position: relative;
    bottom: unset;
    right: unset;
    width: 100%;
  }
  .fv_img img {
    width: 100%;
  }
  .fv_abs1 {
    left: calc(50% - 100rem);
  }
  .fv_abs1 img {
    width: 200rem;
  }
  .message {
    margin: 80px auto;
  }
  .message_abs1 {
    display: none;
  }
  .message_abs2 {
    display: none;
  }
  .message_txt {
    font-size: 16px;
    margin-top: 30px;
    text-align: left;
  }
  .message .c-ttl_jp {
    font-size: 22rem;
  }
  .worry {
    margin-bottom: 80px;
  }
  .worry .inner .item {
    padding: 40px 20px;
  }
  .worry .inner .item_ttl {
    font-size: 20px;
  }
  .worry .inner .item .area {
    -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;
  }
  .worry .inner .item .area_img {
    margin-right: unset;
    margin-bottom: 20px;
  }
  .worry .inner .item .check_row span:first-child {
    margin-right: 15px;
  }
  .solution {
    padding: 80px 0;
  }
  .solution_ttl {
    font-size: 20px;
  }
  .solution_ttl span {
    font-size: 28px;
  }
  .solution_txt {
    font-size: 18px;
  }
  .solution .item {
    margin-top: 40px;
    border-radius: 10px;
    padding: 40px 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .solution .item_ttl {
    font-size: 17rem;
  }
  .solution .item_txt {
    font-size: 16px;
    margin-top: 20px;
  }
  .solution .item_img {
    margin-top: 20px;
  }
  .solution .item_img img {
    width: unset;
  }
  .available {
    margin-top: 80px;
  }
  .available .inner .item .area_group {
    width: 45%;
    margin-bottom: 40px;
  }
  .available .inner .item.reset {
    margin-top: 30px;
  }
  .available .inner .item.reset .area_group {
    width: 45%;
  }
  .available .inner .table {
    overflow-x: auto;
  }
  .available .inner .table::after {
    display: block;
  }
  .available .inner .table_item {
    width: 800px;
  }
  .available_txt {
    font-size: 16px;
    line-height: 2;
  }
  .available .c-free {
    margin: 60px auto;
  }
  .reason {
    padding: 80px 0;
  }
  .reason .c-ttl_jp {
    text-align: center;
  }
  .reason .inner .item {
    margin-top: 40px;
  }
  .reason .inner .item .box {
    border-radius: 10px;
    padding: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .reason .inner .item .area {
    padding: 20px;
    margin-right: unset;
    max-width: unset;
  }
  .reason .inner .item .area_ttl {
    margin: 20px 0;
    font-size: 15rem;
  }
  .reason .inner .item .area_img {
    max-height: 301px;
    width: 100%;
  }
  .reason .inner .item .area_img img {
    border-radius: 10px 10px 0 0;
    max-height: 301px;
    width: 100%;
  }
  .voice {
    padding: 80px 0 30px;
  }
  .voice .inner .item {
    margin-top: 60px;
  }
  .voice .inner .item .box {
    width: 100%;
    padding: 30px 15px;
    margin-bottom: 50px;
  }
  .voice .inner .item .box_abs {
    top: -19px;
    left: -3px;
  }
  .voice .inner .item .box_abs img {
    width: 50px;
  }
  .voice .inner .item .box_ttl {
    font-size: 18px;
  }
  .flow {
    padding: 80px 0 20px;
  }
  .flow .item {
    margin-top: 60px;
  }
  .flow .item .step {
    width: 80%;
    margin-bottom: 60px;
  }
  .flow .item .step::after {
    content: "";
    border-right: 45px solid transparent;
    border-left: 45px solid transparent;
    border-bottom: unset;
    border-top: 16px solid #98303A;
    right: unset;
    top: unset;
    left: calc(50% - 45px);
    bottom: -25px;
  }
  .flow .item .step:nth-child(3)::after {
    content: "";
    border-right: 45px solid transparent;
    border-left: 45px solid transparent;
    border-bottom: unset;
    border-top: 16px solid #98303A;
    right: unset;
    top: unset;
    left: calc(50% - 45px);
    bottom: -25px;
  }
  .join {
    padding: 20px 0 30px;
  }
  .join_ttl {
    font-size: 18rem;
    line-height: 1.5;
  }
  .join_txt {
    font-size: 18px;
  }
  .join_img {
    padding: 15px;
  }
  .join .item_step .box {
    width: 48%;
    margin-bottom: 40px;
  }
  .faq {
    margin-bottom: 80px;
  }
  .faq .c-free {
    margin-top: 20px;
  }
  .faq .inner .item {
    margin-top: 40px;
  }
  .faq .inner .item .box {
    padding: 30px 15px;
  }
  .faq .inner .item .box_lead {
    padding-left: unset;
    padding-right: unset;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .faq .inner .item .box_ttl {
    font-size: 18px;
  }
  .faq .inner .item .box_en {
    line-height: 1;
  }
  .faq .inner .item .box_content {
    padding-left: unset;
    padding-right: unset;
  }
  .faq .inner .item .box_an {
    line-height: 1;
  }
  .company {
    padding: 80px 0;
  }
  .company .inner .item {
    margin-top: 40px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .company .inner .item .area {
    margin-right: unset;
    max-width: unset;
    margin-top: 30px;
    width: 100%;
  }
  .company .inner .item .area .row {
    padding: 15px 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .company .inner .item .area .row .category {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 15px;
  }
  .company .inner .item .area .row .txt {
    font-size: 16px;
  }
  .company .inner .item .area .row .link {
    font-size: 16px;
  }
  .company_img {
    width: 100%;
  }
  .company_img img {
    width: 100%;
    max-height: 350px;
  }
  .contact_fixed {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100vw;
    height: 58px;
    background-color: #98303A;
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    font-size: 16px;
  }
  .contact_fixed_arrow {
    position: absolute;
    top: calc(50% - 8px);
    right: 20px;
  }
}
.contact {
  padding: 277px 0 106px;
  position: relative;
  z-index: 0;
}
.contact_thanks {
  height: calc(100vh - 119px);
}
.contact::before {
  content: "";
  background: #C65F5F;
  background: -webkit-gradient(linear, left top, left bottom, from(rgb(198, 95, 95)), to(rgb(255, 255, 255)));
  background: linear-gradient(180deg, rgb(198, 95, 95) 0%, rgb(255, 255, 255) 100%);
  width: 100%;
  height: 640px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.contact_thanks::before {
  height: 400px;
}
.contact_ttl {
  font-size: 37px;
  font-weight: normal;
  color: #4D4D4D;
  text-align: center;
}
.contact_text {
  margin-top: 40px;
  text-align: center;
  font-size: 16px;
  line-height: 32px;
}
.link_top_page {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 240px;
  height: 48px;
  text-align: center;
  margin: 80px auto;
  color: #FFF;
  border: 1px solid #FFF;
  box-shadow: 2px 2px 0 #CCC;
  background-color: #98303A;
  transition: all 0.5s;
}
.link_top_page:hover {
  box-shadow: none;
  transform: translate(2px, 2px);
}
.link_top_page .link_arrow {
  position: absolute;
  top: 50%;
  right: 24px;
  width: 12px;
  height: 2px;
  border-radius: 1px;
  transform: translateY(-50%);
  background-color: #FFF;
}
.link_top_page .link_arrow::before {
  content: '';
  position: absolute;
  display: block;
  top: 0;
  right: 0;
  width: 8px;
  height: 2px;
  border-radius: 1px;
  background-color: #FFF;
  transform-origin: right center;
  transform: translateY(30%) rotate(45deg);
}
.link_top_page .link_arrow::after {
  content: '';
  position: absolute;
  display: block;
  top: 0;
  right: 0;
  width: 8px;
  height: 2px;
  border-radius: 1px;
  background-color: #FFF;
  transform-origin: right center;
  transform: translateY(-30%) rotate(-45deg);
}
.contact .inner {
  max-width: 970px;
  margin: 150px auto 0;
}
.contact .inner .item .row {
  padding: 23px;
  border-bottom: 1px solid #EBEBEB;
}
.contact .inner .item .row:last-child {
  border-bottom: unset;
}
.contact .inner .item .row .category {
  font-size: 18px;
  color: #111111;
  font-weight: 500;
}
.contact .inner .item .row .need {
  font-size: 14px;
  color: white;
  background-color: #EE1414;
  line-height: 1;
  padding: 3px 8px;
  border-radius: 5px;
  margin-left: 15px;
}
.contact .inner .item .row input[type=text],
.contact .inner .item .row input[type=email],
.contact .inner .item .row input[type=number] {
  margin-top: 20px;
  width: 100%;
  height: 62px;
  border-radius: 13px;
  border: 1px solid #cccccc;
  background-color: #FBFAF7;
  padding: 15px 20px;
  font-size: 18px;
}
.contact .inner .item .row input[type=text]:focus,
.contact .inner .item .row input[type=email]:focus,
.contact .inner .item .row input[type=number]:focus {
  outline: unset;
}
.contact .inner .item .row input[type=text]::-webkit-input-placeholder, .contact .inner .item .row input[type=email]::-webkit-input-placeholder, .contact .inner .item .row input[type=number]::-webkit-input-placeholder {
  font-size: 18px;
  color: #DCDCDC;
}
.contact .inner .item .row input[type=text]::-moz-placeholder, .contact .inner .item .row input[type=email]::-moz-placeholder, .contact .inner .item .row input[type=number]::-moz-placeholder {
  font-size: 18px;
  color: #DCDCDC;
}
.contact .inner .item .row input[type=text]:-ms-input-placeholder, .contact .inner .item .row input[type=email]:-ms-input-placeholder, .contact .inner .item .row input[type=number]:-ms-input-placeholder {
  font-size: 18px;
  color: #DCDCDC;
}
.contact .inner .item .row input[type=text]::-ms-input-placeholder, .contact .inner .item .row input[type=email]::-ms-input-placeholder, .contact .inner .item .row input[type=number]::-ms-input-placeholder {
  font-size: 18px;
  color: #DCDCDC;
}
.contact .inner .item .row input[type=text]::placeholder,
.contact .inner .item .row input[type=email]::placeholder,
.contact .inner .item .row input[type=number]::placeholder {
  font-size: 18px;
  color: #DCDCDC;
}
.contact .inner .item .row textarea {
  margin-top: 20px;
  width: 100%;
  border-radius: 13px;
  border: 1px solid #cccccc;
  background-color: #FBFAF7;
  padding: 15px 20px;
  font-size: 18px;
}
.contact .inner .item .row textarea:focus {
  outline: unset;
}
.contact .inner .item .row textarea::-webkit-input-placeholder {
  font-size: 18px;
  color: #DCDCDC;
}
.contact .inner .item .row textarea::-moz-placeholder {
  font-size: 18px;
  color: #DCDCDC;
}
.contact .inner .item .row textarea:-ms-input-placeholder {
  font-size: 18px;
  color: #DCDCDC;
}
.contact .inner .item .row textarea::-ms-input-placeholder {
  font-size: 18px;
  color: #DCDCDC;
}
.contact .inner .item .row textarea::placeholder {
  font-size: 18px;
  color: #DCDCDC;
}
.contact_btn {
  margin-top: 50px;
}
.c-btn_area {
  cursor: pointer;
}
.c-btn_rtn {
  margin-left: 20px;
  border: 1px solid #7a7a7a;
  border-radius: 6px;
  padding: 4px 16px;
  cursor: pointer;
}

@media (max-width: 768px) {
  .contact_thanks {
    height: auto;
  }
  .contact_ttl {
    font-size: 37px;
    font-weight: normal;
    color: #4D4D4D;
    text-align: center;
  }
  .contact_text {
    font-size: 12px;
    line-height: 24px;
  }
  .link_top_page {
    transform: scale(0.8);
  }
  .link_top_page:hover {
    transform: scale(0.8);
  }
  .contact {
    padding: 200px 0 80px;
  }
  .contact_ttl {
    font-size: 24px;
  }
  .contact_thanks .contact_ttl {
    font-size: 18px;
  }
  .contact .inner {
    margin-top: 60px;
  }
  .contact .inner .item .row {
    padding: 20px;
  }
  .contact .inner .item .row:first-child {
    padding-top: unset;
  }
  .contact .inner .item .row .category {
    font-size: 16px;
  }
  .contact .inner .item .row input[type=text],
  .contact .inner .item .row input[type=email],
  .contact .inner .item .row input[type=number] {
    font-size: 16px;
  }
  .contact .inner .item .row input[type=text]::-webkit-input-placeholder, .contact .inner .item .row input[type=email]::-webkit-input-placeholder, .contact .inner .item .row input[type=number]::-webkit-input-placeholder {
    font-size: 16px;
  }
  .contact .inner .item .row input[type=text]::-moz-placeholder, .contact .inner .item .row input[type=email]::-moz-placeholder, .contact .inner .item .row input[type=number]::-moz-placeholder {
    font-size: 16px;
  }
  .contact .inner .item .row input[type=text]:-ms-input-placeholder, .contact .inner .item .row input[type=email]:-ms-input-placeholder, .contact .inner .item .row input[type=number]:-ms-input-placeholder {
    font-size: 16px;
  }
  .contact .inner .item .row input[type=text]::-ms-input-placeholder, .contact .inner .item .row input[type=email]::-ms-input-placeholder, .contact .inner .item .row input[type=number]::-ms-input-placeholder {
    font-size: 16px;
  }
  .contact .inner .item .row input[type=text]::placeholder,
  .contact .inner .item .row input[type=email]::placeholder,
  .contact .inner .item .row input[type=number]::placeholder {
    font-size: 16px;
  }
  .contact .inner .item .row textarea {
    font-size: 16px;
  }
  .contact .inner .item .row textarea::-webkit-input-placeholder {
    font-size: 16px;
  }
  .contact .inner .item .row textarea::-moz-placeholder {
    font-size: 16px;
  }
  .contact .inner .item .row textarea:-ms-input-placeholder {
    font-size: 16px;
  }
  .contact .inner .item .row textarea::-ms-input-placeholder {
    font-size: 16px;
  }
  .contact .inner .item .row textarea::placeholder {
    font-size: 16px;
  }
  .contact_btn {
    margin-top: 20px;
  }
}
.faq-item {
  margin-top: 40px;
}

.faq__item {
  background-color: #FFFFFF;
  margin-top: 20px;
  border-radius: 15px;
  -webkit-box-shadow: 0 4px 18px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 18px rgba(0, 0, 0, 0.1);
}

.collapsible {
  background-color: #FFFFFF;
  cursor: pointer;
  padding: 23px 22px;
  width: 100%;
  border: none;
  text-align: left;
  outline: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  position: relative;
  border-radius: 8px;
  letter-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 500;
  color: #333333;
}

.collapsible span:first-child {
  color: #193089;
  margin-right: 9px;
  font-size: 30px;
  font-weight: bold;
  line-height: 1;
}

.collapsible span:last-child {
  font-size: 22px;
  font-family: "Noto Sans JP", serif;
  color: #4D4D4D;
}

.collapsible::after {
  content: "";
  background: url("../img/accord_plus.svg") no-repeat;
  display: inline-block;
  width: 20px;
  height: 18px;
  position: absolute;
  top: calc(50% - 9px);
  right: 20px;
  background-size: contain;
}

.collapsible.active::after {
  content: "";
  background: url("../img/accord_minus.svg") no-repeat;
  background-size: contain;
  display: inline-block;
  width: 20px;
  height: 18px;
  top: calc(50% - 1px);
  position: absolute;
  right: 20px;
}

.content {
  max-height: 0;
  overflow: hidden;
  -webkit-transition: max-height 0.5s ease-out;
  transition: max-height 0.5s ease-out;
  width: 100%;
  padding-left: 22px;
  padding-right: 22px;
}
.content-en {
  font-size: 27px;
  font-weight: bold;
  margin-right: 15px;
}
.content-en span {
  color: #98303A;
}
.content-other {
  border-top: 1px solid #FFF6EE;
  padding: 23px 0px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding-top: 18px;
}
.content-other a {
  text-decoration: underline;
  color: #DF8969;
}

.content p {
  padding: 0 0 20px 0;
}

@media (max-width: 1280px) {
  .collapsible span:last-child {
    font-size: 18px;
  }
}
@media (max-width: 768px) {
  .collapsible {
    padding-left: 15px;
    padding-right: 35px;
  }
  .collapsible span:first-child {
    font-size: 24px;
  }
  .content-en {
    font-size: 22px;
  }
}
.u-sp-block {
  display: none;
}

.u-pc-block {
  display: block;
}

.u-mt-20 {
  margin-top: 20px !important;
}

.u-mt-30 {
  margin-top: 30px;
}

@media (max-width: 768px) {
  .u-sp-block {
    display: block;
  }
  .u-pc-block {
    display: none;
  }
}
/*# sourceMappingURL=style.css.map */
