/*
  Josh's Custom CSS Reset
  https://www.joshwcomeau.com/css/custom-css-reset/
*/
*, *::before, *::after {
  box-sizing: border-box;
}

* {
  margin: 0;
}

html, body {
  height: 100%;
}

body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
}

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

p, h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word;
}

#root, #__next {
  isolation: isolate;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 0;
  line-height: 1.3;
  font-size: 16px;
  color: #000000;
  overflow-x: clip;
}

*::-webkit-scrollbar {
  display: none;
}

button {
  cursor: pointer;
}

button:disabled {
  cursor: auto;
}

@media all and (-ms-high-contrast: none) {
  * {
    min-height: 0;
  }
}
a {
  text-decoration: none;
  color: inherit;
}

p {
  margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}

button {
  color: inherit;
  background-color: inherit;
}

ul, ol {
  padding: 0;
  margin: 0;
}

li {
  list-style: none;
}

picture {
  max-width: none;
}

img {
  width: 100%;
  object-fit: cover;
  height: auto;
  vertical-align: middle;
  font-style: italic;
  background-repeat: no-repeat;
  background-size: cover;
  shape-margin: 0.75rem;
  image-rendering: -webkit-optimize-contrast;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

button {
  border: none;
  padding: 0;
}

input {
  border: none;
}

body {
  -webkit-text-size-adjust: 100%;
}

*:focus {
  outline: none;
}

a {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  cursor: pointer;
}

.site-wrapper {
  overflow-x: hidden;
}

.main {
  margin-top: calc(68 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .main {
    margin-top: min(159px, calc(159 / 1400 * 100vw));
  }
}

@media screen and (min-width: 768px) {
  .home .main {
    margin-top: 0;
  }
}

.u-hidden {
  display: none !important;
}

.u-visible {
  display: block !important;
}

@media screen and (min-width: 400px) {
  .u-hidden-xs-up {
    display: none !important;
  }
}

@media screen and (max-width: 399px) {
  .u-hidden-xs-down {
    display: none !important;
  }
}

.u-visible-xs-up {
  display: none !important;
}
@media screen and (min-width: 400px) {
  .u-visible-xs-up {
    display: block !important;
  }
}

.u-visible-xs-down {
  display: none !important;
}
@media screen and (max-width: 399px) {
  .u-visible-xs-down {
    display: block !important;
  }
}

@media screen and (min-width: 576px) {
  .u-hidden-sm-up {
    display: none !important;
  }
}

@media screen and (max-width: 575px) {
  .u-hidden-sm-down {
    display: none !important;
  }
}

.u-visible-sm-up {
  display: none !important;
}
@media screen and (min-width: 576px) {
  .u-visible-sm-up {
    display: block !important;
  }
}

.u-visible-sm-down {
  display: none !important;
}
@media screen and (max-width: 575px) {
  .u-visible-sm-down {
    display: block !important;
  }
}

@media screen and (min-width: 768px) {
  .u-hidden-md-up {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  .u-hidden-md-down {
    display: none !important;
  }
}

.u-visible-md-up {
  display: none !important;
}
@media screen and (min-width: 768px) {
  .u-visible-md-up {
    display: block !important;
  }
}

.u-visible-md-down {
  display: none !important;
}
@media screen and (max-width: 767px) {
  .u-visible-md-down {
    display: block !important;
  }
}

@media screen and (min-width: 992px) {
  .u-hidden-lg-up {
    display: none !important;
  }
}

@media screen and (max-width: 991px) {
  .u-hidden-lg-down {
    display: none !important;
  }
}

.u-visible-lg-up {
  display: none !important;
}
@media screen and (min-width: 992px) {
  .u-visible-lg-up {
    display: block !important;
  }
}

.u-visible-lg-down {
  display: none !important;
}
@media screen and (max-width: 991px) {
  .u-visible-lg-down {
    display: block !important;
  }
}

@media screen and (min-width: 1200px) {
  .u-hidden-xl-up {
    display: none !important;
  }
}

@media screen and (max-width: 1199px) {
  .u-hidden-xl-down {
    display: none !important;
  }
}

.u-visible-xl-up {
  display: none !important;
}
@media screen and (min-width: 1200px) {
  .u-visible-xl-up {
    display: block !important;
  }
}

.u-visible-xl-down {
  display: none !important;
}
@media screen and (max-width: 1199px) {
  .u-visible-xl-down {
    display: block !important;
  }
}

@media screen and (min-width: 1440px) {
  .u-hidden-xxl-up {
    display: none !important;
  }
}

@media screen and (max-width: 1439px) {
  .u-hidden-xxl-down {
    display: none !important;
  }
}

.u-visible-xxl-up {
  display: none !important;
}
@media screen and (min-width: 1440px) {
  .u-visible-xxl-up {
    display: block !important;
  }
}

.u-visible-xxl-down {
  display: none !important;
}
@media screen and (max-width: 1439px) {
  .u-visible-xxl-down {
    display: block !important;
  }
}

.u-display-inline-block {
  display: inline-block !important;
}

.u-display-block {
  display: block !important;
}

.u-text-left {
  text-align: left !important;
}

.u-text-center {
  text-align: center !important;
}

.u-text-right {
  text-align: right !important;
}

.u-text-lowercase {
  text-transform: lowercase !important;
}

.u-text-uppercase {
  text-transform: uppercase !important;
}

.u-text-capitalize {
  text-transform: capitalize !important;
}

.u-font-weight-normal {
  font-weight: 400 !important;
}

.u-font-weight-bold {
  font-weight: 700 !important;
}

.u-font-italic {
  font-style: italic !important;
}

.u-position-relative {
  position: relative !important;
}

.u-position-absolute {
  position: absolute !important;
}

.u-position-fixed {
  position: fixed !important;
}

.u-position-sticky {
  position: sticky !important;
  position: -webkit-sticky !important;
}

.u-m-0 {
  margin: 0 !important;
}

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

.u-mr-0 {
  margin-right: 0 !important;
}

.u-mb-0 {
  margin-bottom: 0 !important;
}

.u-ml-0 {
  margin-left: 0 !important;
}

.u-mx-0 {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.u-my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.u-p-0 {
  padding: 0 !important;
}

.u-pt-0 {
  padding-top: 0 !important;
}

.u-pr-0 {
  padding-right: 0 !important;
}

.u-pb-0 {
  padding-bottom: 0 !important;
}

.u-pl-0 {
  padding-left: 0 !important;
}

.u-px-0 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.u-py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.header {
  background-color: #171717;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: calc(18 / 750 * 100vw) calc(20 / 750 * 100vw);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  height: calc(96 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .header {
    padding: min(10px, calc(10 / 1400 * 100vw)) min(20px, calc(20 / 1400 * 100vw));
    height: min(84px, calc(84 / 1400 * 100vw));
  }
}
.header__logo {
  width: calc(120 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .header__logo {
    width: min(85px, calc(85 / 1400 * 100vw));
  }
}
@media screen and (min-width: 768px) {
  .header__right {
    display: flex;
    align-items: center;
    gap: min(20px, calc(20 / 1400 * 100vw));
  }
}
.header__banner-wrapper {
  display: none;
}
@media screen and (min-width: 768px) {
  .header__banner-wrapper {
    display: flex;
    gap: min(10px, calc(10 / 1400 * 100vw));
  }
}
@media screen and (min-width: 768px) {
  .header__banner {
    width: auto;
    height: min(58px, calc(58 / 1400 * 100vw));
  }
}
.header__banner img {
  width: auto;
  height: 100%;
}
.header__hamburger-wapper {
  padding: calc(4 / 750 * 100vw);
  width: calc(56 / 750 * 100vw);
  height: calc(43 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .header__hamburger-wapper {
    padding: min(4px, calc(4 / 1400 * 100vw));
    width: min(42px, calc(42 / 1400 * 100vw));
    height: min(34px, calc(34 / 1400 * 100vw));
  }
}
.header__hamburger {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.header__hamburger-line {
  position: absolute;
  left: 50%;
  width: 100%;
  height: calc(2 / 750 * 100vw);
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .header__hamburger-line {
    height: min(2px, calc(2 / 1400 * 100vw));
  }
}
.header__hamburger-line:nth-child(1) {
  top: 0;
  transform: translate(-50%, 0);
}
.header__hamburger-line:nth-child(2) {
  top: 50%;
  transform: translate(-50%, -50%);
}
.header__hamburger-line:nth-child(3) {
  top: 100%;
  transform: translate(-50%, -100%);
}
.header__nav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  background-color: #171717;
  color: #fff;
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
  opacity: 0;
  visibility: hidden;
}
.header__nav.is-active {
  opacity: 1;
  visibility: visible;
}
.header__nav-inner {
  position: relative;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 768px) {
  .header__nav-inner {
    margin: 0 auto;
    max-width: 1100px;
  }
}
.header__nav-logo {
  width: calc(150 / 750 * 100vw);
  position: absolute;
  top: calc(60 / 750 * 100vw);
  left: calc(45 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .header__nav-logo {
    top: min(20px, calc(20 / 1400 * 100vw));
    left: min(10px, calc(10 / 1400 * 100vw));
    width: min(85px, calc(85 / 1400 * 100vw));
  }
}
.header__close-button {
  position: absolute;
  top: calc(40 / 750 * 100vw);
  right: calc(20 / 750 * 100vw);
  width: calc(57 / 750 * 100vw);
  padding: calc(10 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .header__close-button {
    top: min(30px, calc(30 / 1400 * 100vw));
    right: 0;
    width: min(57px, calc(57 / 1400 * 100vw));
    padding: min(10px, calc(10 / 1400 * 100vw));
  }
}
.header__nav-list {
  display: flex;
  flex-direction: column;
  gap: calc(20 / 750 * 100vw);
  padding: calc(140 / 750 * 100vw) calc(40 / 750 * 100vw) calc(100 / 750 * 100vw) calc(40 / 750 * 100vw);
  align-items: flex-end;
}
@media screen and (min-width: 768px) {
  .header__nav-list {
    gap: min(22px, calc(22 / 1400 * 100vw));
    padding: min(120px, calc(120 / 1400 * 100vw)) min(10px, calc(10 / 1400 * 100vw)) min(100px, calc(100 / 1400 * 100vw)) min(10px, calc(10 / 1400 * 100vw));
  }
}
.header__nav-link {
  display: block;
  font-size: calc(32 / 750 * 100vw);
  font-weight: 700;
  line-height: 1.5;
  text-align: right;
  padding: calc(10 / 750 * 100vw) 0;
}
@media screen and (min-width: 768px) {
  .header__nav-link {
    font-size: min(22px, calc(22 / 1400 * 100vw));
    padding: min(10px, calc(10 / 1400 * 100vw)) 0;
  }
}

.kv {
  margin-top: calc(96 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .kv {
    margin-top: min(84px, calc(84 / 1400 * 100vw));
  }
}
.kv__header-wrapper {
  display: none;
}
@media screen and (min-width: 768px) {
  .kv__header-wrapper {
    display: block;
    position: relative;
  }
}
.kv__header-bg {
  width: 100%;
  height: min(50px, calc(50 / 1400 * 100vw));
  object-fit: fill;
}
.kv__header-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(214px, calc(214 / 1400 * 100vw));
}
.kv__image-wrapper {
  padding-bottom: calc(44 / 750 * 100vw);
  background-color: #171717;
}
@media screen and (min-width: 768px) {
  .kv__image-wrapper {
    padding: min(40px, calc(40 / 1400 * 100vw)) 0 min(32px, calc(32 / 1400 * 100vw));
  }
}
@media screen and (min-width: 768px) {
  .kv__image {
    margin: 0 auto;
    width: min(1100px, calc(1100 / 1400 * 100vw));
  }
}
.kv__cta-wrapper {
  display: grid;
  gap: calc(80 / 750 * 100vw);
  justify-items: center;
}
@media screen and (min-width: 768px) {
  .kv__cta-wrapper {
    margin: min(22px, calc(22 / 1400 * 100vw)) auto 0;
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: min(24px, calc(24 / 1400 * 100vw));
    width: min(1100px, calc(1100 / 1400 * 100vw));
  }
}
.kv__cta-image {
  display: block;
}
.kv__cta-image--button {
  width: calc(650 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .kv__cta-image--button {
    width: min(490px, calc(490 / 1400 * 100vw));
  }
}
.kv__recommend-wrapper {
  margin-top: calc(140 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .kv__recommend-wrapper {
    margin-top: min(110px, calc(110 / 1400 * 100vw));
  }
}
.kv__recommend-title-wrapper {
  display: grid;
  justify-items: center;
  gap: calc(40 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .kv__recommend-title-wrapper {
    gap: min(24px, calc(24 / 1400 * 100vw));
  }
}
.kv__recommend-sub-title {
  width: calc(245 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .kv__recommend-sub-title {
    width: min(262px, calc(262 / 1400 * 100vw));
  }
}
.kv__recommend-title {
  font-size: calc(70 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  font-family: "Noto Serif JP", serif;
}
@media screen and (min-width: 768px) {
  .kv__recommend-title {
    font-size: min(56px, calc(56 / 1400 * 100vw));
  }
}
.kv__recommend-slide-wrapper {
  margin-top: calc(40 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .kv__recommend-slide-wrapper {
    margin: min(100px, calc(100 / 1400 * 100vw)) auto 0;
    width: min(960px, calc(960 / 1400 * 100vw));
  }
}
.kv__recommend-arrow {
  width: calc(20 / 750 * 100vw) !important;
  background: none !important;
  top: calc(225 / 750 * 100vw) !important;
}
@media screen and (min-width: 768px) {
  .kv__recommend-arrow {
    width: min(20px, calc(20 / 1400 * 100vw)) !important;
    top: min(172px, calc(172 / 1400 * 100vw)) !important;
  }
}
@media screen and (min-width: 768px) {
  .kv__recommend-arrow--prev {
    left: max(-70px, calc(-70 / 1400 * 100vw)) !important;
  }
}
@media screen and (min-width: 768px) {
  .kv__recommend-arrow--next {
    right: max(-70px, calc(-70 / 1400 * 100vw)) !important;
  }
}
.kv__recommend-item-title {
  margin-top: calc(30 / 750 * 100vw);
  font-size: calc(50 / 750 * 100vw);
  text-align: center;
}
@media screen and (min-width: 768px) {
  .kv__recommend-item-title {
    margin-top: min(24px, calc(24 / 1400 * 100vw));
    font-size: min(40px, calc(40 / 1400 * 100vw));
  }
}
.kv__recommend-item-price {
  font-size: calc(40 / 750 * 100vw);
  text-align: center;
}
@media screen and (min-width: 768px) {
  .kv__recommend-item-price {
    font-size: min(30px, calc(30 / 1400 * 100vw));
  }
}
.kv__scroll-wrapper {
  margin-top: calc(40 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .kv__scroll-wrapper {
    margin-top: min(30px, calc(30 / 1400 * 100vw));
  }
}
.kv__scroll-item {
  width: calc(190 / 750 * 100vw);
  aspect-ratio: 1/1;
}
@media screen and (min-width: 768px) {
  .kv__scroll-item {
    width: min(174px, calc(174 / 1400 * 100vw));
  }
}
.kv__scroll-item-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.premium {
  margin-top: calc(180 / 750 * 100vw);
  position: relative;
}
@media screen and (min-width: 768px) {
  .premium {
    margin-top: min(100px, calc(100 / 1400 * 100vw));
  }
}
.premium__bg {
  display: none;
}
@media screen and (min-width: 768px) {
  .premium__bg {
    display: block;
    width: 100%;
    height: min(500px, calc(500 / 1400 * 100vw));
    object-fit: fill;
  }
}
.premium__box {
  display: none;
}
@media screen and (min-width: 768px) {
  .premium__box {
    display: block;
    position: absolute;
    left: calc(50% + min(400px, calc(400 / 1400 * 100vw)) / 2);
    bottom: 0;
    width: min(430px, calc(430 / 1400 * 100vw));
  }
}
@media screen and (min-width: 768px) {
  .premium__image {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: min(980px, calc(980 / 1400 * 100vw));
  }
}

.consider {
  margin-top: calc(120 / 750 * 100vw);
  position: relative;
}
@media screen and (min-width: 768px) {
  .consider {
    margin-top: min(180px, calc(180 / 1400 * 100vw));
  }
}
.consider__bg {
  display: none;
}
@media screen and (min-width: 768px) {
  .consider__bg {
    display: block;
    width: 100%;
    height: min(795px, calc(795 / 1400 * 100vw));
    object-fit: fill;
  }
}
.consider__box {
  display: none;
}
@media screen and (min-width: 768px) {
  .consider__box {
    display: block;
    position: absolute;
    left: calc(50% + min(400px, calc(400 / 1400 * 100vw)) / 2);
    bottom: 0;
    width: min(430px, calc(430 / 1400 * 100vw));
  }
}
@media screen and (min-width: 768px) {
  .consider__image {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: min(1000px, calc(1000 / 1400 * 100vw));
  }
}

.merit {
  position: relative;
  overflow-y: clip;
}
@media screen and (min-width: 768px) {
  .merit {
    margin-top: min(150px, calc(150 / 1400 * 100vw));
  }
}
.merit__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .merit__bg {
    max-width: 1400px;
    left: 50%;
    transform: translateX(-50%);
  }
}
.merit__title-wrapper {
  padding-top: calc(110 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .merit__title-wrapper {
    padding-top: min(70px, calc(70 / 1400 * 100vw));
  }
}
.merit__title-image {
  margin: 0 auto;
  width: calc(470 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .merit__title-image {
    width: min(870px, calc(870 / 1400 * 100vw));
  }
}
.merit__list {
  margin-top: calc(100 / 750 * 100vw);
  display: grid;
  gap: calc(56 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .merit__list {
    margin-top: min(100px, calc(100 / 1400 * 100vw));
    gap: min(56px, calc(56 / 1400 * 100vw));
    justify-content: center;
  }
}
@media screen and (min-width: 768px) {
  .merit__item {
    width: min(1100px, calc(1100 / 1400 * 100vw));
  }
}

.benefit {
  margin-top: calc(100 / 750 * 100vw);
  padding-bottom: calc(100 / 750 * 100vw);
  position: relative;
  overflow-y: clip;
  background-color: #412200;
}
@media screen and (min-width: 768px) {
  .benefit {
    margin-top: min(150px, calc(150 / 1400 * 100vw));
    padding-bottom: min(100px, calc(100 / 1400 * 100vw));
  }
}
.benefit__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
}
@media screen and (min-width: 768px) {
  .benefit__bg {
    max-width: 1184px;
    left: 50%;
    transform: translateX(-50%);
  }
}
.benefit__title-wrapper {
  padding-top: calc(70 / 750 * 100vw);
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .benefit__title-wrapper {
    padding-top: min(84px, calc(84 / 1400 * 100vw));
  }
}
.benefit__title-image {
  margin: 0 auto;
  width: calc(400 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .benefit__title-image {
    width: min(590px, calc(590 / 1400 * 100vw));
  }
}
.benefit__list {
  margin: calc(110 / 750 * 100vw) auto 0;
  display: grid;
  gap: calc(100 / 750 * 100vw);
  width: calc(700 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .benefit__list {
    margin-top: min(90px, calc(90 / 1400 * 100vw));
    gap: min(64px, calc(64 / 1400 * 100vw));
    justify-content: center;
    width: min(1000px, calc(1000 / 1400 * 100vw));
  }
}
.benefit__item--last {
  margin: 0 auto;
  width: calc(650 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .benefit__item--last {
    width: min(650px, calc(650 / 1400 * 100vw));
  }
}

.problem {
  position: relative;
  overflow-y: clip;
  margin-top: calc(130 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .problem {
    margin-top: 0;
  }
}
.problem__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.problem__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.problem__list {
  margin: 0 auto;
  padding: calc(90 / 750 * 100vw) 0;
  display: grid;
  gap: calc(55 / 750 * 100vw);
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .problem__list {
    padding: min(94px, calc(94 / 1400 * 100vw)) 0;
    gap: min(64px, calc(64 / 1400 * 100vw));
    width: min(930px, calc(930 / 1400 * 100vw));
  }
}
.problem__item {
  width: calc(725 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .problem__item {
    width: min(725px, calc(725 / 1400 * 100vw));
  }
}
@media screen and (min-width: 768px) {
  .problem__item:nth-of-type(even) {
    margin-left: auto;
  }
}

.voice__title-wrapper {
  margin: calc(150 / 750 * 100vw) auto 0;
  width: calc(400 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .voice__title-wrapper {
    margin: min(117px, calc(117 / 1400 * 100vw)) auto 0;
    width: min(490px, calc(490 / 1400 * 100vw));
  }
}
.voice__slide-wrapper {
  margin-top: calc(74 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .voice__slide-wrapper {
    margin: min(65px, calc(65 / 1400 * 100vw)) auto 0;
    width: min(1100px, calc(1100 / 1400 * 100vw));
  }
}
.voice__item {
  background-color: #1f303c;
  padding: calc(4 / 750 * 100vw) calc(8 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .voice__item {
    padding: min(4px, calc(4 / 1400 * 100vw));
  }
}
.voice__item-inner {
  height: 100%;
  border: calc(1 / 750 * 100vw) solid #c6a359;
}
.voice__item-num {
  width: calc(247 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .voice__item-num {
    width: min(190px, calc(190 / 1400 * 100vw));
  }
}
@media screen and (min-width: 768px) {
  .voice__person-wrapper {
    display: grid;
    align-items: center;
    gap: min(24px, calc(24 / 1400 * 100vw));
    padding: 0 min(24px, calc(24 / 1400 * 100vw));
  }
}
.voice__item-image-wrapper {
  margin: calc(50 / 750 * 100vw) auto 0;
  width: calc(350 / 750 * 100vw);
  aspect-ratio: 1/1;
  border-radius: 50%;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .voice__item-image-wrapper {
    margin: min(20px, calc(20 / 1400 * 100vw)) auto 0;
    width: min(200px, calc(200 / 1400 * 100vw));
  }
}
.voice__item-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.voice__item-title {
  margin-top: calc(40 / 750 * 100vw);
  padding: 0 calc(16 / 750 * 100vw);
  font-size: calc(48 / 750 * 100vw);
  color: #ffffff;
  text-align: center;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .voice__item-title {
    margin-top: 0;
    padding: 0;
    font-size: min(32px, calc(32 / 1400 * 100vw));
  }
}
.voice__item-text {
  margin-top: calc(50 / 750 * 100vw);
  padding: 0 calc(16 / 750 * 100vw);
  font-size: calc(32 / 750 * 100vw);
  color: #ffffff;
  font-weight: 500;
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  .voice__item-text {
    margin-top: min(20px, calc(20 / 1400 * 100vw));
    padding: 0 min(18px, calc(18 / 1400 * 100vw));
    font-size: min(22px, calc(22 / 1400 * 100vw));
  }
}
.voice__item-profile {
  margin-top: calc(20 / 750 * 100vw);
  padding: 0 calc(16 / 750 * 100vw) calc(24 / 750 * 100vw);
  font-size: calc(24 / 750 * 100vw);
  color: #ffffff;
  text-align: right;
}
@media screen and (min-width: 768px) {
  .voice__item-profile {
    margin-top: min(20px, calc(20 / 1400 * 100vw));
    padding: 0 min(18px, calc(18 / 1400 * 100vw)) min(24px, calc(24 / 1400 * 100vw));
    font-size: min(22px, calc(22 / 1400 * 100vw));
  }
}
.voice__arrow {
  width: calc(20 / 750 * 100vw) !important;
  background: none !important;
  top: 50% !important;
}
@media screen and (min-width: 768px) {
  .voice__arrow {
    width: min(20px, calc(20 / 1400 * 100vw)) !important;
  }
}
@media screen and (min-width: 768px) {
  .voice__arrow--prev {
    left: max(-36px, calc(-36 / 1400 * 100vw)) !important;
  }
}
@media screen and (min-width: 768px) {
  .voice__arrow--next {
    right: max(-36px, calc(-36 / 1400 * 100vw)) !important;
  }
}

.flow {
  margin-bottom: calc(80 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .flow {
    margin-bottom: min(120px, calc(120 / 1400 * 100vw));
  }
}
.flow__title-wrapper {
  margin: calc(100 / 750 * 100vw) auto 0;
  width: calc(340 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .flow__title-wrapper {
    margin: min(117px, calc(117 / 1400 * 100vw)) auto 0;
    width: min(240px, calc(240 / 1400 * 100vw));
  }
}
.flow__image {
  margin-top: calc(40 / 750 * 100vw);
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .flow__image {
    margin: min(70px, calc(70 / 1400 * 100vw)) auto 0;
    max-width: 1100px;
  }
}
.flow__last-image {
  margin-top: calc(-180 / 750 * 100vw);
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .flow__last-image {
    margin: min(45px, calc(45 / 1400 * 100vw)) auto 0;
    width: min(1100px, calc(1100 / 1400 * 100vw));
  }
}

.faq {
  margin-top: calc(160 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .faq {
    margin-top: min(140px, calc(140 / 1400 * 100vw));
  }
}
.faq__title {
  margin: 0 auto;
  width: calc(400 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .faq__title {
    width: min(287px, calc(287 / 1400 * 100vw));
  }
}
.faq__list {
  margin: calc(80 / 750 * 100vw) auto 0;
  display: grid;
  gap: calc(32 / 750 * 100vw);
  width: calc(700 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .faq__list {
    margin: min(60px, calc(60 / 1400 * 100vw)) auto 0;
    width: min(1100px, calc(1100 / 1400 * 100vw));
    gap: min(24px, calc(24 / 1400 * 100vw));
  }
}
.faq__item {
  border: calc(1 / 750 * 100vw) solid #000000;
}
@media screen and (min-width: 768px) {
  .faq__item {
    border: min(1px, calc(1 / 1400 * 100vw)) solid #000000;
  }
}
.faq__item-question {
  font-size: calc(34 / 750 * 100vw);
  font-weight: 600;
  color: #ffffff;
  background-color: #1f303c;
  padding: calc(28 / 750 * 100vw) calc(24 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .faq__item-question {
    font-size: min(28px, calc(28 / 1400 * 100vw));
    padding: min(28px, calc(28 / 1400 * 100vw)) min(55px, calc(55 / 1400 * 100vw));
  }
}
.faq__item-answer-wrapper {
  padding: calc(28 / 750 * 100vw) calc(24 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .faq__item-answer-wrapper {
    padding: min(28px, calc(28 / 1400 * 100vw)) min(55px, calc(55 / 1400 * 100vw));
  }
}
.faq__item-answer-title {
  font-size: calc(32 / 750 * 100vw);
  color: #c63727;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  .faq__item-answer-title {
    font-size: min(22px, calc(22 / 1400 * 100vw));
  }
}
.faq__item-answer {
  font-size: calc(32 / 750 * 100vw);
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  .faq__item-answer {
    font-size: min(22px, calc(22 / 1400 * 100vw));
  }
}

.company {
  margin-top: calc(160 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .company {
    margin-top: min(140px, calc(140 / 1400 * 100vw));
  }
}
.company__title {
  margin: 0 auto;
  width: calc(278 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .company__title {
    width: min(194px, calc(194 / 1400 * 100vw));
  }
}
.company__contents {
  margin: calc(44 / 750 * 100vw) auto 0;
  width: calc(700 / 750 * 100vw);
  border: calc(1 / 750 * 100vw) solid #8f8f8f;
}
@media screen and (min-width: 768px) {
  .company__contents {
    margin: min(60px, calc(60 / 1400 * 100vw)) auto 0;
    width: min(1100px, calc(1100 / 1400 * 100vw));
    border: none;
  }
}
.company__list {
  display: grid;
  grid-template-columns: auto 1fr;
}
.company__list:not(:first-of-type) {
  border-top: calc(1 / 750 * 100vw) solid #8f8f8f;
}
@media screen and (min-width: 768px) {
  .company__list:not(:first-of-type) {
    border-top: min(2px, calc(2 / 1400 * 100vw)) solid #8f8f8f;
  }
}
.company__list-title {
  width: calc(170 / 750 * 100vw);
  padding: calc(16 / 750 * 100vw);
  background-color: #1f303c;
  display: grid;
  place-items: center;
  border-right: calc(1 / 750 * 100vw) solid #8f8f8f;
}
@media screen and (min-width: 768px) {
  .company__list-title {
    width: min(221px, calc(221 / 1400 * 100vw));
    padding: min(30px, calc(30 / 1400 * 100vw)) min(30px, calc(30 / 1400 * 100vw));
    border-right: min(2px, calc(2 / 1400 * 100vw)) solid #8f8f8f;
  }
}
.company__list-title-text {
  font-size: calc(32 / 750 * 100vw);
  font-weight: 600;
  color: #ffffff;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .company__list-title-text {
    font-size: min(24px, calc(24 / 1400 * 100vw));
  }
}
.company__list-data {
  padding: calc(40 / 750 * 100vw) calc(16 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .company__list-data {
    padding: min(30px, calc(30 / 1400 * 100vw)) min(30px, calc(30 / 1400 * 100vw));
  }
}
.company__list-data-text {
  font-size: calc(26 / 750 * 100vw);
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  .company__list-data-text {
    font-size: min(20px, calc(20 / 1400 * 100vw));
  }
}
.company__image {
  margin-top: calc(60 / 750 * 100vw);
  width: 100%;
  height: auto;
}
@media screen and (min-width: 768px) {
  .company__image {
    margin: min(40px, calc(40 / 1400 * 100vw)) auto 0;
    max-width: 1100px;
  }
}

.footer {
  margin-top: calc(40 / 750 * 100vw);
  padding: calc(48 / 750 * 100vw) 0 calc(20 / 750 * 100vw);
  background-color: #171717;
  color: #ffffff;
}
@media screen and (min-width: 768px) {
  .footer {
    margin-top: min(50px, calc(50 / 1400 * 100vw));
    padding: min(80px, calc(80 / 1400 * 100vw)) 0 min(60px, calc(60 / 1400 * 100vw));
  }
}
.footer__logo-link {
  display: block;
  margin: 0 auto;
  width: calc(168 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .footer__logo-link {
    width: min(168px, calc(168 / 1400 * 100vw));
  }
}
.footer__list {
  display: grid;
  margin: calc(48 / 750 * 100vw) auto 0;
  width: calc(650 / 750 * 100vw);
  grid-template-columns: repeat(2, 1fr);
  gap: calc(24 / 750 * 100vw) 0;
}
@media screen and (min-width: 768px) {
  .footer__list {
    margin: min(56px, calc(56 / 1400 * 100vw)) auto 0;
    width: min(650px, calc(650 / 1400 * 100vw));
    display: flex;
    flex-wrap: wrap;
    gap: min(24px, calc(24 / 1400 * 100vw)) min(40px, calc(40 / 1400 * 100vw));
    justify-content: center;
  }
}
.footer__link {
  display: block;
  font-size: calc(30 / 750 * 100vw);
  font-weight: 600;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .footer__link {
    font-size: min(20px, calc(20 / 1400 * 100vw));
  }
}
.footer__other-list {
  display: grid;
  margin: calc(55 / 750 * 100vw) auto 0;
  width: calc(650 / 750 * 100vw);
  grid-template-columns: repeat(2, 1fr);
  gap: calc(24 / 750 * 100vw) 0;
}
@media screen and (min-width: 768px) {
  .footer__other-list {
    margin: min(50px, calc(50 / 1400 * 100vw)) auto 0;
    display: flex;
    gap: 0 min(60px, calc(60 / 1400 * 100vw));
    justify-content: center;
  }
}
.footer__other-link {
  display: block;
  font-size: calc(26 / 750 * 100vw);
  font-weight: 500;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .footer__other-link {
    font-size: min(16px, calc(16 / 1400 * 100vw));
  }
}
.footer__copyright {
  margin-top: calc(16 / 750 * 100vw);
  font-size: calc(26 / 750 * 100vw);
  font-weight: 500;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .footer__copyright {
    margin-top: min(20px, calc(20 / 1400 * 100vw));
    font-size: min(16px, calc(16 / 1400 * 100vw));
  }
}

.fixed-banner {
  position: sticky;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: calc(20 / 750 * 100vw) calc(25 / 750 * 100vw);
  gap: calc(20 / 750 * 100vw);
  background-color: #1f303c;
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
  opacity: 0;
  visibility: hidden;
}
@media screen and (min-width: 768px) {
  .fixed-banner {
    display: none;
  }
}
.fixed-banner.is-active {
  opacity: 1;
  visibility: visible;
}
.fixed-banner__link {
  display: block;
  width: auto;
  height: calc(110 / 750 * 100vw);
}
.fixed-banner__image {
  width: auto;
  height: 100%;
}